/* ===== ADAPTIVE Intelligence - Shared Styles ===== */

/* Self-hosted fonts (DSGVO-konform, kein Google-Aufruf) */
@font-face{font-family:'Bebas Neue';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/bebas-neue-400.woff2') format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:300;font-display:swap;src:url('/fonts/cormorant-garamond-italic-300-500.woff2') format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url('/fonts/cormorant-garamond-italic-300-500.woff2') format('woff2');}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/cormorant-garamond-300.woff') format('woff');}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/dm-sans-300-400-500.woff2') format('woff2');}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/dm-sans-300-400-500.woff2') format('woff2');}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/dm-sans-300-400-500.woff2') format('woff2');}
@font-face{font-family:'DM Sans';font-style:italic;font-weight:300;font-display:swap;src:url('/fonts/dm-sans-italic-300.woff') format('woff');}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}

:root{
  --ink:#0d1f14;
  --forest:#142a1c;
  --moss:#1e4230;
  --canopy:#c4521a;
  --mist:#e8894a;
  --cream:#f2ede4;
  --warm:#e8e0d0;
  --mid:#4a6657;
}

html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--ink);overflow-x:hidden;}

/* --- Navigation --- */
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.6rem 5%;transition:background 0.4s,backdrop-filter 0.4s;}
nav.scrolled{background:rgba(14,28,19,0.96);backdrop-filter:blur(12px);}
nav.nav-solid{background:rgba(14,28,19,0.96);backdrop-filter:blur(12px);}
.logo{display:flex;align-items:center;text-decoration:none;}
.logo img{height:3.75rem;width:auto;display:block;}
.nav-links{display:flex;gap:2.5rem;list-style:none;align-items:center;}
.nav-links a{color:rgba(255,255,255,0.75);text-decoration:none;font-size:0.8rem;letter-spacing:0.1em;text-transform:uppercase;transition:color 0.2s;}
.nav-links a:hover,.nav-links a.active{color:#fff;}
.nav-cta{border:1px solid rgba(255,255,255,0.4)!important;padding:0.45rem 1.2rem;border-radius:1px;color:#fff!important;}
.nav-cta:hover{background:rgba(255,255,255,0.1)!important;}

/* --- Buttons --- */
.btn-p{background:var(--canopy);color:#fff;padding:0.9rem 2.2rem;font-size:0.82rem;letter-spacing:0.1em;text-transform:uppercase;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;font-weight:500;border-radius:1px;transition:background 0.2s;}
.btn-p:hover{background:#a34215;}
.btn-g{background:transparent;color:rgba(255,255,255,0.8);padding:0.9rem 2.2rem;font-size:0.82rem;letter-spacing:0.1em;text-transform:uppercase;border:1px solid rgba(255,255,255,0.3);cursor:pointer;font-family:'DM Sans',sans-serif;font-weight:400;border-radius:1px;transition:border-color 0.2s,color 0.2s;}
.btn-g:hover{border-color:rgba(255,255,255,0.7);color:#fff;}

/* --- Sections --- */
section{padding:8rem 5%;}
.section-label{font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--canopy);margin-bottom:1rem;font-weight:500;}
.section-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,5vw,5rem);line-height:0.92;color:var(--ink);margin-bottom:2rem;}
.section-lead{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.2rem,2vw,1.6rem);color:var(--mid);font-weight:300;line-height:1.5;margin-bottom:1.5rem;}
p.body{font-size:1rem;line-height:1.8;color:#3a4e41;font-weight:300;max-width:700px;}
.divider{width:40px;height:2px;background:var(--canopy);margin:3rem 0;}

/* --- Hero --- */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-start;overflow:hidden;clip-path:inset(0);}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;animation:zoomOut 18s ease-out forwards;}
@keyframes zoomOut{from{transform:scale(1.06);}to{transform:scale(1.0);}}
.hero-veil{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,22,14,0.2) 0%,rgba(10,22,14,0.05) 35%,rgba(10,22,14,0.7) 72%,rgba(10,22,14,0.95) 100%);}
.hero-content{position:relative;z-index:2;padding:clamp(5rem,18vh,22vh) 5% clamp(3rem,8vh,4rem);max-width:1000px;}
.hero-eyebrow{font-size:0.72rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--mist);margin-bottom:1.8rem;display:flex;align-items:center;gap:0.8rem;animation:fadeUp 1s 0.3s both;}
.hero-eyebrow::before{content:'';display:block;width:28px;height:1px;background:var(--mist);}
.hero-headline{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,6vw,6rem);line-height:0.88;color:#fff;letter-spacing:0.025em;margin-bottom:0.6rem;animation:fadeUp 1s 0.5s both;}
.hero-headline .accent{color:var(--mist);}
.hero-sub-head{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.2rem,2.5vw,1.9rem);color:rgba(255,255,255,0.65);font-weight:300;margin-bottom:2rem;animation:fadeUp 1s 0.65s both;line-height:1.4;}
.hero-body{font-size:1rem;color:rgba(255,255,255,0.6);max-width:560px;font-weight:300;line-height:1.75;margin-bottom:2.8rem;animation:fadeUp 1s 0.8s both;}
.hero-actions{display:flex;gap:1rem;animation:fadeUp 1s 1s both;}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
.scroll-hint{position:absolute;bottom:2.5rem;right:5%;z-index:2;display:flex;flex-direction:column;align-items:center;gap:0.5rem;color:rgba(255,255,255,0.4);font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase;animation:fadeUp 1s 1.4s both;}
.scroll-line{width:1px;height:48px;background:linear-gradient(to bottom,rgba(255,255,255,0.4),transparent);animation:scrollAnim 2s ease-in-out infinite;}
@keyframes scrollAnim{0%,100%{transform:scaleY(0);transform-origin:top;}50%{transform:scaleY(1);transform-origin:top;}}

/* --- Why Section --- */
.why-section{background:var(--forest);color:#fff;padding:8rem 5%;}
.why-section .section-label{color:var(--mist);}
.why-section .section-title{color:#fff;}
.why-section p.body{color:rgba(255,255,255,0.55);max-width:680px;}
.quote-block{border-left:2px solid var(--canopy);padding:1.5rem 0 1.5rem 2rem;margin:3rem 0;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.2rem,2vw,1.55rem);color:rgba(255,255,255,0.85);font-weight:300;line-height:1.5;max-width:680px;}
.why-inner{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;}
.why-text{min-width:0;}
.why-image{position:relative;min-width:0;}
.why-image img{width:100%;height:680px;object-fit:cover;object-position:center 30%;display:block;clip-path:polygon(8% 0%,100% 0%,92% 100%,0% 100%);}

/* --- Compare Section --- */
.compare-section{background:var(--warm);}
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:4rem;border:1px solid rgba(196,82,26,0.2);}
.compare-col{padding:3.5rem;}
.compare-col:first-child{border-right:1px solid rgba(196,82,26,0.2);}
.compare-col h3{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:0.05em;margin-bottom:0.6rem;}
.compare-col:first-child h3{color:var(--mid);}
.compare-col:last-child h3{color:var(--canopy);}
.compare-col .q{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.1rem;color:var(--mid);margin-bottom:1.5rem;padding:1rem;background:rgba(196,82,26,0.06);border-radius:2px;}
.compare-col p{font-size:0.95rem;line-height:1.75;color:#4a5e50;font-weight:300;}
.compare-pct{font-family:'Bebas Neue',sans-serif;font-size:3.5rem;color:var(--canopy);opacity:0.18;margin-bottom:0.3rem;}

/* --- Possible Section --- */
.possible-section{background:#fff;}
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:2rem;background:rgba(196,82,26,0.08);}
.card{background:#fff;padding:3rem 2.5rem;}
.card-num{font-family:'Bebas Neue',sans-serif;font-size:3rem;color:var(--canopy);opacity:0.2;line-height:1;margin-bottom:1.2rem;}
.card h3{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:300;font-style:italic;color:var(--ink);margin-bottom:1rem;line-height:1.3;}
.card p{font-size:0.9rem;line-height:1.75;color:#4a5e50;font-weight:300;}

/* --- Manifesto Section --- */
.manifesto-section{background:var(--forest);padding:8rem 5%;}
.manifesto-section-with-image{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
.manifesto-section-with-image .manifesto-text-wrap{min-width:0;}
.manifesto-section-with-image .manifesto-image{min-width:0;display:flex;align-items:center;justify-content:center;}
.manifesto-section-with-image .manifesto-image img{max-width:100%;height:auto;display:block;}
.manifesto-section-with-image .manifesto-text{max-width:100%;}
.manifesto-section-with-image .manifesto-body{grid-template-columns:1fr;}
.manifesto-section-with-image.manifesto-image-right .manifesto-image{order:2;}
.manifesto-text{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,6vw,6.5rem);line-height:0.9;color:#fff;letter-spacing:0.02em;max-width:900px;}
.manifesto-text em{font-style:normal;color:var(--mist);}
.manifesto-body{margin-top:3rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;}
.manifesto-body p{font-size:0.95rem;line-height:1.8;color:rgba(255,255,255,0.55);font-weight:300;}

/* --- Team Section --- */
.team-section{background:var(--cream);}
.team-inner{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start;}
.team-text{min-width:0;}
.team-image{position:relative;min-width:0;}
.team-image img{width:100%;height:450px;object-fit:cover;object-position:center 30%;display:block;}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:4rem;}
.member{border-top:2px solid var(--canopy);padding-top:2rem;}
.member-header{display:flex;align-items:center;gap:1.2rem;margin-bottom:1.2rem;}
.member-photo{width:144px;height:144px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.member-info{min-width:0;}
.member-role{font-size:0.7rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--canopy);margin-bottom:0.3rem;font-weight:500;}
.member h3{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:300;color:var(--ink);margin-bottom:0.2rem;}
.member-tagline{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1rem;color:var(--mid);margin-bottom:0;}
.member p{font-size:0.88rem;line-height:1.78;color:#4a5e50;font-weight:300;}
.member-link{color:var(--ink);text-decoration:none;transition:color 0.2s;}
.member-link:hover{color:var(--canopy);}
.member-socials{display:flex;gap:0.6rem;margin-top:0.6rem;align-items:center;}
.member-socials a{display:flex;align-items:center;opacity:0.5;transition:opacity 0.2s;}
.member-socials a:hover{opacity:1;}
.member-socials img,.member-socials svg{width:18px;height:18px;}

/* --- CTA Section --- */
.cta-section{background:var(--ink);padding:8rem 5%;display:flex;flex-direction:column;align-items:flex-start;gap:2rem;}
.cta-section .section-title{color:#fff;max-width:700px;}
.cta-section .section-lead{color:rgba(255,255,255,0.5);max-width:560px;}
.cta-contacts{color:rgba(255,255,255,0.45);font-size:0.9rem;font-weight:300;margin-top:1rem;}
.cta-contacts a{color:var(--mist);text-decoration:none;}
.cta-inner{display:grid;grid-template-columns:1fr auto;gap:4rem;align-items:center;width:100%;}
.cta-text{min-width:0;}
.cta-image{flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.cta-image img{width:546px;height:546px;border-radius:50%;object-fit:cover;opacity:1;}

/* --- Footer --- */
footer{background:var(--ink);border-top:1px solid rgba(255,255,255,0.08);padding:2rem 5%;display:flex;justify-content:space-between;align-items:center;}
footer p{font-size:0.8rem;color:rgba(255,255,255,0.55);letter-spacing:0.05em;}
footer a{color:rgba(255,255,255,0.55);text-decoration:none;font-size:0.8rem;margin-left:1.5rem;}
footer a:hover{color:rgba(255,255,255,0.85);}

/* --- Legal Pages (Impressum, Datenschutz) --- */
.legal-page{padding:10rem 5% 6rem;max-width:820px;margin:0 auto;}
.legal-page .kontakt-wrap{position:relative;left:50%;transform:translateX(-50%);width:90vw;max-width:1100px;}
.legal-page h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,5vw,5rem);line-height:0.92;color:var(--ink);margin-bottom:1rem;}
.legal-page .subtitle{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.1rem,2vw,1.4rem);color:var(--mid);font-weight:300;line-height:1.5;margin-bottom:3rem;}
.legal-divider{width:40px;height:2px;background:var(--canopy);margin-bottom:3rem;}
.legal-section{margin-bottom:3rem;}
.legal-section h2{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:0.05em;color:var(--canopy);margin-bottom:1rem;line-height:1.2;}
.legal-section h3{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:500;color:var(--ink);margin-bottom:0.6rem;margin-top:1.5rem;}
.legal-section p{font-size:0.95rem;line-height:1.8;color:#3a4e41;font-weight:300;margin-bottom:0.8rem;}
.legal-section a{color:var(--canopy);text-decoration:none;transition:color 0.2s;}
.legal-section a:hover{color:var(--mist);}
.legal-section ul{list-style:none;padding:0;margin-bottom:0.8rem;}
.legal-section ul li{font-size:0.95rem;line-height:1.8;color:#3a4e41;font-weight:300;padding-left:1.2rem;position:relative;}
.legal-section ul li::before{content:'';position:absolute;left:0;top:0.7em;width:6px;height:6px;background:var(--canopy);border-radius:50%;opacity:0.5;}
.legal-accent{border-left:2px solid var(--canopy);padding:1.2rem 0 1.2rem 1.5rem;margin:1.5rem 0;background:rgba(196,82,26,0.04);border-radius:0 2px 2px 0;}
.legal-accent p{margin-bottom:0.3rem;}
/* Also style flat markdown content directly under .legal-page (for markdown legal pages) */
.legal-page > h2,.legal-page > section h2{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:0.05em;color:var(--canopy);margin-top:3rem;margin-bottom:1rem;line-height:1.2;}
.legal-page > h3{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:500;color:var(--ink);margin-top:1.5rem;margin-bottom:0.6rem;}
.legal-page > p{font-size:0.95rem;line-height:1.8;color:#3a4e41;font-weight:300;margin-bottom:0.8rem;}
.legal-page > p > em:first-child{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.2rem;color:var(--mid);}
.legal-page > hr{border:none;height:2px;width:40px;background:var(--canopy);margin:0 0 3rem;}
.legal-page > ul{list-style:none;padding:0;margin-bottom:0.8rem;}
.legal-page > ul li{font-size:0.95rem;line-height:1.8;color:#3a4e41;font-weight:300;padding-left:1.2rem;position:relative;}
.legal-page > ul li::before{content:'';position:absolute;left:0;top:0.7em;width:6px;height:6px;background:var(--canopy);border-radius:50%;opacity:0.5;}
.legal-page > p a,.legal-page > ul a{color:var(--canopy);text-decoration:none;}
.legal-page > p a:hover,.legal-page > ul a:hover{color:var(--mist);}

/* --- Profile Pages --- */
.profile-page{padding:10rem 5% 6rem;max-width:820px;margin:0 auto;}
.profile-header{display:flex;align-items:center;gap:2rem;margin-bottom:2rem;}
.profile-photo{width:140px;height:140px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.profile-info{min-width:0;}
.profile-role{font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--canopy);margin-bottom:0.4rem;font-weight:500;}
.profile-page h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,5vw,5rem);line-height:0.92;color:var(--ink);margin-bottom:0.4rem;}
.profile-tagline{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.1rem,2vw,1.4rem);color:var(--mid);font-weight:300;line-height:1.5;}
.profile-divider{width:40px;height:2px;background:var(--canopy);margin-bottom:3rem;}
.profile-lead{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.1rem,2vw,1.4rem);color:var(--mid);font-weight:300;line-height:1.5;margin-bottom:2rem;}
.profile-text{margin-bottom:2rem;}
.profile-text p{font-size:0.95rem;line-height:1.8;color:#3a4e41;font-weight:300;margin-bottom:1rem;}
.profile-back{display:inline-flex;align-items:center;gap:0.5rem;color:var(--canopy);text-decoration:none;font-size:0.85rem;letter-spacing:0.05em;transition:color 0.2s;margin-top:1rem;}
.profile-back:hover{color:var(--mist);}
.profile-back::before{content:'\2190';font-size:1.1rem;}
.profile-contact{margin-top:1rem;display:grid;grid-template-columns:1fr 1fr auto;gap:1.5rem;align-items:start;font-size:0.85rem;line-height:1.6;color:var(--mid);font-weight:300;letter-spacing:0.02em;}
.profile-contact-col{min-width:0;}
.profile-contact-col p{margin:0;}
.profile-contact-line{display:flex;align-items:center;gap:0.5rem;}
.profile-contact-icon{width:15px;height:15px;opacity:0.5;flex-shrink:0;}

/* --- Hamburger Menu --- */
.hamburger{display:none;cursor:pointer;background:none;border:none;padding:0.5rem;z-index:300;}
.hamburger span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;transition:all 0.3s;}
.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.hamburger.active span:nth-child(2){opacity:0;}
.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}

/* --- Mobile --- */
@media(max-width:768px){
  .hamburger{display:block;}
  .nav-links{position:fixed;top:0;right:-100%;width:70%;height:100vh;flex-direction:column;background:rgba(14,28,19,0.98);padding:6rem 2rem 2rem;gap:1.5rem;transition:right 0.3s ease;z-index:250;}
  .nav-links.open{right:0;}
  .nav-links a{font-size:1rem;}
  .logo img{height:2.2rem;}
  nav{padding:1rem 5%;}
  section{padding:4rem 5%;}
  .hero{min-height:560px;}
  .hero-content{padding:16vh 5% 3rem;}
  .hero-headline{font-size:clamp(2.2rem,8vw,3.5rem);}
  .hero-sub-head{font-size:clamp(1rem,4vw,1.4rem);}
  .hero-body{font-size:0.9rem;}
  .hero-actions{flex-direction:column;gap:0.8rem;}
  .hero-actions .btn-p,.hero-actions .btn-g{width:100%;text-align:center;}
  .scroll-hint{display:none;}
  .why-inner{grid-template-columns:1fr;gap:2rem;}
  .why-image img{height:350px;}
  .compare-grid{grid-template-columns:1fr;}
  .compare-col{padding:2rem;}
  .compare-col:first-child{border-right:none;border-bottom:1px solid rgba(196,82,26,0.2);}
  .cards-grid{grid-template-columns:1fr;}
  .card{padding:2rem 1.5rem;}
  .manifesto-text{font-size:clamp(2rem,8vw,3.5rem);}
  .manifesto-body{grid-template-columns:1fr;gap:2rem;}
  .manifesto-section{padding:4rem 5%;}
  .manifesto-section-with-image{grid-template-columns:1fr;gap:2rem;}
  .team-inner{grid-template-columns:1fr;gap:2rem;}
  .team-image img{height:350px;}
  .team-grid{grid-template-columns:1fr;gap:2rem;}
  .blog-section #logbuch-posts{grid-template-columns:1fr!important;}
  .cta-section{padding:4rem 5%;}
  .cta-inner{grid-template-columns:1fr;gap:2rem;}
  .cta-image{display:none;}
  .cta-section .section-title{font-size:clamp(2rem,7vw,3rem);}
  footer{flex-direction:column;gap:1rem;text-align:center;}
  footer a{margin-left:0;margin-right:1.5rem;}
  .section-title{font-size:clamp(2rem,7vw,3rem);}
  .legal-page{padding:6rem 6% 4rem;}
  .profile-page{padding:6rem 6% 4rem;}
  .profile-header{flex-direction:column;text-align:center;gap:1.2rem;}
  .profile-photo{width:110px;height:110px;}
  .profile-contact{grid-template-columns:1fr;gap:0.6rem;text-align:left;}
}


/* ===== LOGBUCH (Expedition Blog) ===== */

/* Blog page header with compass watermark */
.logbuch-header{position:relative;padding:10rem 5% 4rem;max-width:900px;margin:0 auto;overflow:hidden;transition:max-width .3s ease;}
.logbuch-header.wide-mode{max-width:1600px;}

.logbuch-header h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,5vw,5rem);line-height:0.92;color:var(--ink);margin-bottom:0.5rem;}
.logbuch-header .logbuch-subtitle{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.1rem,2vw,1.4rem);color:var(--mid);font-weight:300;line-height:1.5;margin-bottom:2rem;}
.logbuch-header .logbuch-eyebrow{font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--canopy);font-weight:500;margin-bottom:1rem;display:flex;align-items:center;gap:0.8rem;}
.logbuch-header .logbuch-eyebrow::before{content:'';display:block;width:28px;height:1px;background:var(--canopy);}
.logbuch-divider{width:40px;height:2px;background:var(--canopy);margin-bottom:3rem;}

/* Timeline-style post list */
.logbuch-entries{max-width:1100px;margin:0 auto;padding:2rem 5% 6rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:3.5rem 2.5rem;}
.logbuch-entry{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:inherit;}

/* Polaroid card as logbuch entry */
.logbuch-entry .logbuch-entry-image.polaroid-frame{width:100%;max-width:340px;padding:10px 10px 6px;display:flex;flex-direction:column;}
.logbuch-entry .logbuch-entry-image.polaroid-frame img{width:100%;aspect-ratio:17/14;height:auto;object-fit:cover;margin-bottom:8px;}
.logbuch-entry .polaroid-caption{padding:0 4px 2px;text-align:center;max-height:3.6rem;overflow:hidden;}
.logbuch-entry .polaroid-caption h2{font-family:'Cormorant Garamond',serif;font-size:0.95rem;font-weight:500;color:var(--ink);line-height:1.2;margin-bottom:0.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.logbuch-entry .polaroid-caption p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:0.75rem;color:var(--mid);line-height:1.3;font-weight:300;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* Fallback when image style is 'original' (no polaroid frame) */
.logbuch-entry > .logbuch-entry-image:not(.polaroid-frame){width:100%;max-width:340px;height:220px;object-fit:cover;}

/* Meta below card */
.logbuch-entry-footer{margin-top:0.9rem;display:flex;flex-direction:column;align-items:center;gap:0.4rem;max-width:340px;width:100%;}
.logbuch-entry-date{font-size:0.68rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--canopy);font-weight:500;}
.logbuch-entry-meta{display:flex;align-items:center;gap:0.45rem;font-size:0.75rem;color:var(--mid);}
.logbuch-entry-meta img{width:20px;height:20px;border-radius:50%;object-fit:cover;}
.logbuch-entry-meta .meta-name{font-weight:400;color:var(--ink);}

/* Logbuch wide mode: more columns, proportional polaroid images */
.logbuch-entries.wide-mode{max-width:1600px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:2.5rem 2rem;}
.logbuch-entries.wide-mode .logbuch-entry .polaroid-caption h2{font-size:1rem;}
.logbuch-entries.wide-mode .logbuch-entry .polaroid-caption p{font-size:0.78rem;}

/* View toggle buttons */
.logbuch-view-toggle{display:flex;gap:2px;background:var(--warm);padding:2px;border-radius:4px;align-self:center;margin-left:auto;}
.logbuch-view-btn{padding:0.4rem 0.55rem;background:none;border:none;cursor:pointer;color:var(--mid);display:flex;align-items:center;justify-content:center;border-radius:3px;transition:all 0.15s;line-height:1;}
.logbuch-view-btn.active{background:#fff;color:var(--canopy);box-shadow:0 1px 3px rgba(0,0,0,0.1);}
.logbuch-view-btn:hover{color:var(--canopy);}

/* List view */
.logbuch-list{max-width:1100px;margin:0 auto;padding:1rem 5% 6rem;display:flex;flex-direction:column;gap:0;}
.logbuch-list-row{display:flex;gap:1rem;padding:0.8rem 0;border-bottom:1px solid var(--warm);text-decoration:none;color:inherit;align-items:flex-start;transition:background 0.15s;}
.logbuch-list-row:hover{background:rgba(196,82,26,0.03);}
.logbuch-list-thumb{width:60px;height:60px;border-radius:4px;object-fit:cover;flex-shrink:0;background:var(--warm);}
.logbuch-list-thumb-empty{width:60px;height:60px;border-radius:4px;background:var(--warm);flex-shrink:0;}
.logbuch-list-info{flex:1;min-width:0;}
.logbuch-list-title{font-family:'Bebas Neue',sans-serif;font-size:1.05rem;color:var(--ink);line-height:1.2;margin-bottom:0.15rem;}
.logbuch-list-teaser{font-size:0.82rem;color:var(--mid);line-height:1.4;margin-bottom:0.3rem;}
.logbuch-list-teaser-long{display:none;}
.logbuch-list-meta{display:flex;align-items:center;gap:0.4rem;font-size:0.7rem;color:var(--mid);}
.logbuch-list-meta img{width:16px;height:16px;border-radius:50%;object-fit:cover;}
.logbuch-list-date{color:var(--canopy);font-weight:500;letter-spacing:0.08em;text-transform:uppercase;font-size:0.65rem;}
.logbuch-list-author{color:var(--ink);}
.logbuch-list-cats{display:flex;flex-wrap:wrap;gap:0.2rem;margin-top:0.25rem;}
.cat-chip-sm{font-size:0.6rem;padding:0.1rem 0.4rem;}
/* List wide mode: bigger thumbs, show long teaser, show categories */
.logbuch-list.wide-mode{max-width:1600px;}
.logbuch-list.wide-mode .logbuch-list-thumb{width:90px;height:90px;}
.logbuch-list.wide-mode .logbuch-list-title{font-size:1.15rem;}
.logbuch-list.wide-mode .logbuch-list-teaser-short{display:none;}
.logbuch-list.wide-mode .logbuch-list-teaser-long{display:block;}

@media(max-width:600px){
.logbuch-list-thumb{width:48px;height:48px;}
.logbuch-list-title{font-size:0.95rem;}
}

/* Single post - expedition feel */
.logbuch-post{max-width:780px;margin:0 auto;padding:10rem 5% 4rem;}
.logbuch-post-eyebrow{font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--canopy);font-weight:500;margin-bottom:1rem;display:flex;align-items:center;gap:0.8rem;}
.logbuch-post-teaser{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.15rem;color:var(--mid);line-height:1.5;font-weight:300;margin:0.8rem 0 1.5rem;}
.logbuch-post-eyebrow::before{content:'';display:block;width:28px;height:1px;background:var(--canopy);}
.logbuch-post h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.4rem,5vw,4rem);line-height:0.95;color:var(--ink);margin-bottom:1.5rem;}
.logbuch-post-hero{max-width:100%;height:auto;margin-bottom:2rem;display:block;}
.logbuch-post-hero.img-size-original{width:100%;}
.logbuch-post-hero.img-size-mini{max-width:200px;width:auto;}
.logbuch-post-hero.img-size-small img{max-height:260px;width:auto;max-width:100%;}
.logbuch-post-hero.img-size-medium img{max-height:480px;width:auto;max-width:100%;}
.logbuch-post-hero.img-size-large img{max-height:700px;width:auto;max-width:100%;}
.logbuch-post-hero.img-size-large{max-width:1000px;width:100%;}
.logbuch-post-hero.img-size-medium{max-width:700px;width:100%;}
.logbuch-post-hero.img-size-small{max-width:400px;width:100%;}

.logbuch-post-header{margin-bottom:1rem;}
.logbuch-post-header-left,.logbuch-post-header-right{display:grid;gap:2rem;align-items:center;}
.logbuch-post-header-left{grid-template-columns:auto 1fr;}
.logbuch-post-header-right{grid-template-columns:1fr auto;}
.logbuch-post-header-left .logbuch-post-hero,
.logbuch-post-header-right .logbuch-post-hero{margin-bottom:0;width:auto;}
.logbuch-post-header-left .logbuch-post-hero,
.logbuch-post-header-right .logbuch-post-hero{flex-shrink:0;}
.logbuch-post-header-left .logbuch-post-hero.img-size-original,
.logbuch-post-header-right .logbuch-post-hero.img-size-original{width:340px;max-width:40vw;}
.logbuch-post-header-left .logbuch-post-hero.img-size-mini,
.logbuch-post-header-right .logbuch-post-hero.img-size-mini{width:150px;max-width:30vw;}
.logbuch-post-header-left .logbuch-post-hero.img-size-small,
.logbuch-post-header-right .logbuch-post-hero.img-size-small{width:250px;max-width:35vw;}
.logbuch-post-header-left .logbuch-post-hero.img-size-medium,
.logbuch-post-header-right .logbuch-post-hero.img-size-medium{width:400px;max-width:40vw;}
.logbuch-post-header-left .logbuch-post-hero.img-size-large,
.logbuch-post-header-right .logbuch-post-hero.img-size-large{width:550px;max-width:45vw;}
.logbuch-post-header-left .logbuch-post-hero img,
.logbuch-post-header-right .logbuch-post-hero img{width:100%;height:auto;display:block;}
.logbuch-post-header-text h1{margin-top:0;}
@media (max-width:768px){
  .logbuch-post-header-left,.logbuch-post-header-right{grid-template-columns:1fr;gap:1.2rem;}
  .logbuch-post-header-right .logbuch-post-hero{order:-1;}
  .logbuch-post-header-left .logbuch-post-hero,
  .logbuch-post-header-right .logbuch-post-hero{max-width:340px;}
  .logbuch-post-hero.polaroid-frame,
  .logbuch-post-hero.polaroid-frame.img-size-small,
  .logbuch-post-hero.polaroid-frame.img-size-medium,
  .logbuch-post-hero.polaroid-frame.img-size-large,
  .logbuch-post-hero.polaroid-frame.img-size-original{max-width:340px;width:auto;margin-left:auto;margin-right:auto;}
  .logbuch-post-hero.polaroid-frame img{max-height:260px;}
}
.logbuch-post-meta{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem;padding-bottom:0.8rem;border-bottom:1px solid var(--warm);}
.logbuch-post-meta img{width:48px;height:48px;border-radius:50%;object-fit:cover;}
.logbuch-post-meta .meta-info .meta-name{font-weight:500;color:var(--ink);font-size:0.95rem;}
.logbuch-post-meta .meta-info .meta-role{color:var(--mid);font-size:0.8rem;}
.logbuch-post-meta .meta-info .meta-date{color:var(--canopy);font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;}
.logbuch-post-meta .copy-link-btn{margin-left:auto;background:transparent;border:1px solid var(--warm);color:var(--mid);padding:0.4rem 1rem;font-family:'DM Sans',sans-serif;font-size:0.78rem;cursor:pointer;transition:all 0.2s;letter-spacing:0.05em;}
.logbuch-post-meta .copy-link-btn:hover{border-color:var(--canopy);color:var(--canopy);}

/* Post content */
.logbuch-content{font-size:0.95rem;line-height:1.8;color:#3a4e41;font-weight:300;}
.logbuch-content h2{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;color:var(--ink);margin:2.5rem 0 1rem;letter-spacing:0.03em;}
.logbuch-content h3{font-weight:500;font-size:1.1rem;color:var(--ink);margin:2rem 0 0.8rem;}
.logbuch-content p{margin-bottom:1.2rem;}
.logbuch-content a{color:var(--canopy);text-decoration:none;}
.logbuch-content a:hover{color:var(--mist);}
.logbuch-content blockquote{border-left:2px solid var(--canopy);padding:1rem 0 1rem 2rem;margin:2rem 0;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(1.1rem,2vw,1.4rem);color:var(--mid);font-weight:300;line-height:1.5;}
.logbuch-content ul,.logbuch-content ol{margin:1rem 0 1.2rem 1.5rem;}
.logbuch-content li{margin-bottom:0.4rem;}
.logbuch-content img{max-width:100%;margin:1.5rem 0;}
.logbuch-content code{background:var(--warm);padding:0.15em 0.4em;border-radius:3px;font-size:0.9em;}
.logbuch-content pre{background:var(--forest);color:var(--cream);padding:1.2rem;overflow-x:auto;margin:1.5rem 0;}
.logbuch-content pre code{background:none;padding:0;color:inherit;}
.logbuch-content strong{font-weight:500;color:var(--ink);}

/* Admin-Liste mit Spalten: Bild | Titel/Teaser | Autor | Kategorien | Status | Aktionen */
.admin-list{display:flex;flex-direction:column;gap:0;}
.admin-list-row{display:grid;grid-template-columns:80px 1fr 160px 180px 130px auto;gap:1.2rem;padding:0.9rem 0.5rem;border-bottom:1px solid var(--warm);align-items:center;transition:background 0.15s;}
.admin-list-row:hover{background:rgba(196,82,26,0.03);}
.admin-list-row .logbuch-list-thumb{width:80px;height:80px;}
.admin-list-row .logbuch-list-thumb-empty{width:80px;height:80px;}

.admin-list-main{min-width:0;}
.admin-list-title{font-family:'Bebas Neue',sans-serif;font-size:1.05rem;color:var(--ink);line-height:1.2;margin-bottom:0.3rem;letter-spacing:0.02em;}
.admin-list-teaser{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:0.85rem;color:var(--mid);line-height:1.4;margin-bottom:0.3rem;}
.admin-list-date{font-size:0.65rem;color:var(--canopy);font-weight:500;letter-spacing:0.1em;text-transform:uppercase;}

.admin-list-author{display:flex;align-items:center;gap:0.5rem;font-size:0.85rem;color:var(--ink);}
.admin-list-author img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0;}

.admin-list-cats{display:flex;flex-wrap:wrap;gap:0.25rem;align-items:flex-start;}

.admin-list-status{display:flex;flex-direction:column;gap:0.3rem;align-items:flex-start;}
.admin-list-status .badge,.admin-status-badge{font-size:0.62rem;padding:0.18rem 0.5rem;letter-spacing:0.05em;}

.admin-list-actions{flex-shrink:0;align-self:center;}

@media(max-width:1200px){
.admin-list-row{grid-template-columns:60px 1fr 140px 160px auto;}
.admin-list-status{display:none;}
}
@media(max-width:768px){
.admin-list-row{grid-template-columns:60px 1fr;gap:0.8rem;}
.admin-list-author,.admin-list-cats{grid-column:2;}
.admin-list-actions{grid-column:1 / -1;justify-self:start;}
}

/* Markdown editor toolbar */
.md-toolbar{display:inline-flex;gap:2px;background:var(--warm);padding:2px;border-radius:4px;align-items:center;}
.md-toolbar button{background:transparent;border:none;padding:0.35rem 0.55rem;cursor:pointer;color:var(--ink);font-size:0.85rem;border-radius:3px;line-height:1;min-width:30px;font-family:inherit;}
.md-toolbar button:hover{background:#fff;color:var(--canopy);}
.md-toolbar .md-sep{width:1px;height:18px;background:rgba(0,0,0,0.15);margin:0 3px;display:inline-block;}

/* Footnotes */
.logbuch-content sup.fn-ref{font-size:0.7em;line-height:0;vertical-align:super;}
.logbuch-content sup.fn-ref a{color:var(--canopy);text-decoration:none;padding:0 0.15em;font-weight:500;}
.logbuch-content sup.fn-ref a:hover{text-decoration:underline;}
.logbuch-content .footnotes{margin-top:3rem;font-size:0.85rem;color:var(--mid);}
.logbuch-content .footnotes hr{border:none;height:1px;background:var(--warm);margin-bottom:1rem;}
.logbuch-content .footnotes ol{margin-left:1.5rem;}
.logbuch-content .footnotes li{margin-bottom:0.5rem;line-height:1.5;}
.logbuch-content .footnotes li:target{background:rgba(196,82,26,0.08);padding:0.3rem 0.5rem;border-radius:3px;}
.logbuch-content .footnotes a.fn-back{color:var(--canopy);text-decoration:none;margin-left:0.3rem;}
.logbuch-content .footnotes a.fn-back:hover{text-decoration:underline;}
html{scroll-behavior:smooth;}

/* Author box at end of post */
.logbuch-author-box{display:flex;align-items:center;gap:1.2rem;padding:1.5rem;background:var(--warm);margin-top:3rem;border-top:2px solid var(--canopy);}
.logbuch-author-box img{width:64px;height:64px;border-radius:50%;object-fit:cover;}
.logbuch-author-box .ab-name{font-weight:500;color:var(--ink);}
.logbuch-author-box .ab-role{color:var(--mid);font-size:0.85rem;}
.logbuch-author-links{margin-top:0.3rem;display:flex;gap:0.8rem;}
.logbuch-author-links a{color:var(--canopy);font-size:0.82rem;text-decoration:none;}
.logbuch-author-links a:hover{color:var(--mist);}

/* Post navigation prev/next */
.logbuch-nav{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--warm);}
.logbuch-nav-card{padding:1.5rem;background:var(--warm);text-decoration:none;color:inherit;transition:transform 0.2s;}
.logbuch-nav-card:hover{transform:translateY(-3px);}
.logbuch-nav-direction{font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--canopy);font-weight:500;margin-bottom:0.5rem;display:block;}
.logbuch-nav-card h3{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:300;color:var(--ink);line-height:1.3;}

.logbuch-back{display:inline-flex;align-items:center;gap:0.5rem;color:var(--canopy);text-decoration:none;font-size:0.85rem;margin-top:2rem;transition:color 0.2s;}
.logbuch-back:hover{color:var(--mist);}
.logbuch-back::before{content:'\2190';font-size:1.1rem;}

/* Admin icon buttons */
.btn-group-icons{display:flex;gap:0.3rem;align-items:center;}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--warm);background:#fff;border-radius:4px;cursor:pointer;font-size:1rem;text-decoration:none;color:var(--ink);transition:all 0.15s;}
.icon-btn:hover{border-color:var(--canopy);background:var(--warm);color:var(--canopy);}
.icon-btn-danger:hover{border-color:#c0392b;color:#c0392b;background:rgba(192,57,43,0.06);}

/* Blog admin styles */
.admin-bar{background:var(--moss);padding:0.6rem 5%;display:flex;align-items:center;justify-content:space-between;font-size:0.8rem;color:rgba(255,255,255,0.7);margin-top:72px;}
.admin-bar a{color:var(--mist);text-decoration:none;margin-left:1rem;}
.admin-bar a:hover{color:#fff;}
.admin-content{max-width:1280px;margin:0 auto;padding:2rem 2rem;transition:max-width .3s ease;}
.admin-content.wide-mode{max-width:95vw;}
.admin-table{width:100%;border-collapse:collapse;margin-top:1.5rem;background:#fff;table-layout:auto;}
.admin-table th{background:var(--forest);color:#fff;padding:0.75rem 1rem;text-align:left;font-weight:400;font-size:0.8rem;letter-spacing:0.05em;text-transform:uppercase;}
.admin-table td{padding:0.75rem 1rem;border-bottom:1px solid var(--warm);font-size:0.9rem;}
.badge{display:inline-block;padding:0.15em 0.5em;font-size:0.75rem;font-weight:500;}
.badge-published{background:var(--moss);color:#fff;}
.badge-draft{background:var(--warm);color:var(--mid);}
.btn{display:inline-block;padding:0.5rem 1.2rem;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:0.82rem;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;transition:background 0.2s;}
.btn-primary{background:var(--canopy);color:#fff;}
.btn-primary:hover{background:#a34215;}
.btn-small{padding:0.3rem 0.7rem;font-size:0.75rem;}
.btn-outline{background:transparent;border:1px solid var(--mid);color:var(--mid);}
.btn-outline:hover{border-color:var(--canopy);color:var(--canopy);}
.btn-danger{background:#8b1a1a;color:#fff;}
.btn-danger:hover{background:#6b1515;}
.btn-group{display:flex;gap:0.4rem;}
.form-card{background:#fff;padding:2.5rem;max-width:780px;margin:1rem auto;transition:max-width .3s ease;}
.form-card.wide-mode{max-width:90vw;}
.form-section{margin-bottom:1.5rem;border:1px solid var(--warm);padding:1.2rem 1.5rem;background:#fafaf7;}
.form-section-header{font-family:'Bebas Neue',sans-serif;font-size:1.15rem;color:var(--canopy);margin-bottom:1rem;padding-bottom:0.4rem;border-bottom:2px solid var(--warm);letter-spacing:0.02em;}
.form-group{margin-bottom:1.2rem;}
.form-group label{display:block;font-size:0.8rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--canopy);margin-bottom:0.4rem;font-weight:500;}
.form-group input[type="text"],.form-group textarea,.form-group select{width:100%;padding:0.6rem 0.8rem;border:1px solid var(--warm);font-family:'DM Sans',sans-serif;font-size:0.95rem;background:#fff;color:var(--ink);transition:border-color 0.2s;}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--canopy);}
.form-group textarea{resize:vertical;}
.form-group .hint{font-size:0.78rem;color:var(--mid);margin-top:0.25rem;}
.checkbox-group{display:flex;align-items:center;gap:0.5rem;}
.checkbox-group input[type="checkbox"]{width:18px;height:18px;accent-color:var(--canopy);}
.current-image{margin-top:0.5rem;}
.current-image img{max-width:300px;border:1px solid var(--warm);}

/* Image library grid */
.image-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:0.75rem;margin-top:0.5rem;max-height:300px;overflow-y:auto;padding:0.5rem;border:1px solid var(--warm);background:#fafaf7;}
.lib-thumb{cursor:pointer;border:2px solid transparent;padding:4px;text-align:center;transition:border-color 0.2s;}
.lib-thumb:hover{border-color:var(--mist);}
.lib-thumb.selected{border-color:var(--canopy);background:rgba(196,82,26,0.06);}
.lib-thumb img{width:100%;height:80px;object-fit:cover;display:block;}
.lib-thumb span{display:block;font-size:0.65rem;color:var(--mid);margin-top:0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* Copy link button */
.copy-link-btn{margin-left:auto;background:transparent;border:1px solid var(--warm);color:var(--mid);font-family:'DM Sans',sans-serif;font-size:0.75rem;letter-spacing:0.05em;padding:0.35rem 0.8rem;cursor:pointer;transition:all 0.2s;white-space:nowrap;}
.copy-link-btn:hover{border-color:var(--canopy);color:var(--canopy);}
.copy-link-btn.copied{border-color:var(--moss);color:var(--moss);background:rgba(30,66,48,0.06);}

/* Admin UTM-Link generator */
.utm-widget{background:var(--warm);padding:1rem;border-left:3px solid var(--canopy);margin-bottom:1.5rem;}
.utm-widget > label{display:block;color:var(--canopy);font-weight:500;margin-bottom:0.4rem;}
.utm-widget .hint{margin-bottom:0.8rem;}
.utm-widget input[type=text]{width:100%;padding:0.5rem 0.7rem;font-family:"DM Sans",sans-serif;font-size:0.85rem;border:1px solid var(--mist);background:#fff;color:var(--ink);margin-bottom:0.8rem;box-sizing:border-box;}
.utm-buttons{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:0.7rem;}
.utm-buttons button{background:#fff;border:1px solid var(--mist);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:0.78rem;padding:0.4rem 0.9rem;cursor:pointer;transition:all 0.15s;letter-spacing:0.02em;}
.utm-buttons button:hover{border-color:var(--canopy);color:var(--canopy);}
.utm-buttons button.copied{border-color:var(--moss);color:var(--moss);background:rgba(30,66,48,0.06);}
.utm-buttons button.utm-private{font-style:italic;color:var(--mid);border-style:dashed;}
.utm-presets-label{font-size:0.68rem;color:var(--mid);text-transform:uppercase;letter-spacing:0.12em;margin-bottom:0.4rem;margin-top:0.5rem;}
.utm-fields{display:grid;grid-template-columns:1fr 1fr;gap:0.7rem 1rem;margin-top:1rem;margin-bottom:1rem;}
.utm-fields > div{display:flex;flex-direction:column;}
.utm-fields .utm-field-wide{grid-column:1/-1;}
.utm-fields label{font-size:0.7rem;color:var(--mid);margin-bottom:0.25rem;font-family:"DM Sans",sans-serif;letter-spacing:0.04em;text-transform:none;}
.utm-fields .utm-opt{opacity:0.6;font-style:italic;}
.utm-fields input[type=text]{width:100%;padding:0.45rem 0.65rem;font-family:monospace;font-size:0.82rem;border:1px solid var(--mist);background:#fff;color:var(--ink);margin-bottom:0;box-sizing:border-box;}
.utm-preview-row{display:flex;gap:0.8rem;align-items:stretch;margin-top:0.3rem;}
.utm-preview-row .utm-preview{flex:1;}
.utm-preview-row button{white-space:nowrap;}
.utm-preview{font-family:monospace;font-size:0.72rem;color:var(--mid);word-break:break-all;padding:0.5rem 0.7rem;background:#fff;border:1px dashed var(--mist);min-height:1.4em;display:flex;align-items:center;}
@media(max-width:768px){
  .utm-fields{grid-template-columns:1fr;}
  .utm-preview-row{flex-direction:column;}
}
/* Media Admin Page */
.media-admin-toolbar{display:flex;gap:0.8rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap;justify-content:space-between;}
.media-admin-toolbar-left{display:flex;gap:0.6rem;align-items:center;flex:1;min-width:0;}
.media-admin-toolbar-right{display:flex;gap:0.6rem;align-items:center;flex-shrink:0;}
.media-admin-search-wrap{position:relative;flex:1;min-width:180px;max-width:400px;}
.media-admin-search{width:100%;padding:0.5rem 2rem 0.5rem 0.8rem;border:1px solid var(--warm);font-family:'DM Sans',sans-serif;font-size:0.85rem;box-sizing:border-box;}
.media-admin-search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:0.85rem;color:var(--mid);cursor:pointer;padding:2px 4px;line-height:1;}
.media-admin-search-clear:hover{color:var(--canopy);}
.media-admin-status{font-size:0.82rem;color:var(--mid);white-space:nowrap;}
.media-admin-slider{width:100px;accent-color:var(--canopy);cursor:pointer;}
.media-picker-header-right{display:flex;gap:0.6rem;align-items:center;}
.media-picker-header-right .btn[disabled]{opacity:0.4;cursor:not-allowed;}
.media-admin-tabs{display:flex;gap:0;border-bottom:2px solid var(--warm);margin-bottom:1rem;}
.media-admin-tab{padding:0.5rem 1.2rem;cursor:pointer;font-size:0.85rem;border-bottom:2px solid transparent;margin-bottom:-2px;color:var(--mid);user-select:none;transition:all 0.15s;}
.media-admin-tab.active{color:var(--canopy);border-bottom-color:var(--canopy);font-weight:500;}
.media-admin-tab:hover{color:var(--ink);}
.media-admin{display:flex;gap:1.5rem;height:calc(100vh - 250px);min-height:400px;}
.media-admin-left{flex:1;min-width:0;overflow-y:auto;}
.media-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0.8rem;align-content:start;}
.media-admin-tile{position:relative;background:#fff;border:1px solid var(--warm);cursor:pointer;overflow:hidden;transition:border-color 0.15s;}
.media-admin-tile.active{border-color:var(--canopy);border-width:2px;}
.media-admin-tile:hover{border-color:var(--mist);}
.media-admin-tile img{width:100%;display:block;}
.media-admin-grid:not(.masonry):not(.masonry-js) .media-admin-tile img{aspect-ratio:1;object-fit:cover;}
/* In JS-Masonry: Bilder behalten ihr natürliches Seitenverhältnis */
.media-admin-grid.masonry-js .media-admin-tile img{aspect-ratio:auto;object-fit:contain;height:auto;}
.media-admin-grid.masonry .media-admin-tile{break-inside:avoid;margin-bottom:0.8rem;}
.media-admin-tile-label{font-size:0.68rem;padding:0.3rem 0.4rem;background:var(--cream);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink);}
.media-admin-badge{position:absolute;bottom:22px;left:4px;font-size:0.55rem;padding:2px 5px;border-radius:2px;color:#fff;text-transform:uppercase;letter-spacing:0.06em;opacity:0;transition:opacity 0.15s;}
.media-admin-tile:hover .media-admin-badge{opacity:1;}
.media-admin-badge-unsplash{background:rgba(0,0,0,0.6);}
.media-admin-upload-zone{border:2px dashed var(--warm);padding:2rem;text-align:center;color:var(--mid);margin-top:1rem;font-size:0.85rem;transition:all 0.2s;}
.media-admin-upload-zone.drag-over{border-color:var(--canopy);background:rgba(196,82,26,0.04);color:var(--canopy);}
.media-admin-load-more{text-align:center;margin-top:1rem;}
.media-admin-detail{width:340px;flex-shrink:0;background:#fff;border:1px solid var(--warm);padding:1rem;overflow-y:auto;max-height:80vh;position:sticky;top:1rem;transition:width 0.3s ease,padding 0.3s ease,opacity 0.3s ease,margin 0.3s ease;}
.media-admin-detail.collapsed{width:0;padding:0;opacity:0;overflow:hidden;border:none;margin:0;}
.media-detail-close{text-align:right;margin-bottom:0.3rem;}
.media-detail-close button{background:none;border:none;font-size:1.1rem;color:var(--mid);cursor:pointer;padding:2px 6px;line-height:1;}
.media-detail-close button:hover{color:var(--canopy);}
.media-detail-preview{margin-bottom:0.8rem;background:var(--warm);position:relative;}
.media-detail-preview img{max-height:260px;width:100%;object-fit:contain;}
.media-detail-info{display:flex;gap:0.6rem;flex-wrap:wrap;font-size:0.7rem;color:var(--mid);margin-bottom:1rem;padding-bottom:0.6rem;border-bottom:1px solid var(--warm);}
.media-detail-source{background:var(--canopy);color:#fff;padding:1px 5px;border-radius:2px;font-size:0.6rem;}
.media-detail-fields{display:flex;flex-direction:column;gap:0.6rem;}
.media-detail-field label{display:block;font-size:0.68rem;color:var(--mid);margin-bottom:0.2rem;text-transform:uppercase;letter-spacing:0.06em;}
.media-detail-field input,.media-detail-field textarea,.media-detail-field select{width:100%;padding:0.4rem 0.6rem;font-family:'DM Sans',sans-serif;font-size:0.85rem;border:1px solid var(--warm);box-sizing:border-box;}
.media-detail-field textarea{resize:vertical;min-height:3rem;}
.media-detail-actions{display:flex;gap:0.5rem;flex-wrap:wrap;}
.media-detail-preview-actions{display:flex;gap:0.4rem;margin:0.5rem 0 0.8rem;}
/* Usage list in detail panel */
.media-detail-usage{margin-top:1rem;padding-top:0.8rem;border-top:1px solid var(--warm);}
.media-usage-header{font-size:0.68rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--mid);margin-bottom:0.4rem;}
.media-usage-empty{font-size:0.78rem;color:var(--mid);font-style:italic;}
.media-usage-items{list-style:none;padding:0;margin:0;}
.media-usage-items li{font-size:0.78rem;padding:0.3rem 0;border-bottom:1px solid var(--warm);}
.media-usage-items li:last-child{border-bottom:none;}
.media-usage-items a{color:var(--canopy);text-decoration:none;}
.media-usage-items a:hover{color:var(--mist);}
.media-detail-actions-top{padding-bottom:0.7rem;margin-bottom:0.5rem;border-bottom:1px solid var(--warm);position:sticky;top:0;background:#fff;z-index:1;}
.media-admin-tile-unsplash{position:relative;break-inside:avoid;margin-bottom:0.8rem;}
.media-admin-tile-unsplash img{aspect-ratio:auto;height:auto;}
/* Masonry layout for Unsplash (CSS columns) */
/* JS-driven masonry: explicit columns, no reflow on append */
.media-admin-grid.masonry-js{display:flex;gap:0.8rem;align-items:flex-start;}
.media-admin-grid.masonry-js .masonry-col{flex:1;display:flex;flex-direction:column;gap:0.8rem;min-width:0;}
.media-admin-grid.masonry-js .media-admin-tile,
.media-admin-grid.masonry-js .media-admin-tile-unsplash{margin-bottom:0;break-inside:auto;}
/* Legacy fallback */
.media-admin-grid.masonry{display:block;columns:4;column-gap:0.8rem;}
@media(max-width:1200px){.media-admin-grid.masonry{columns:3;}}
@media(max-width:768px){.media-admin-grid.masonry{columns:2;}}
.media-admin-unsplash-credit{position:absolute;bottom:0;left:0;right:0;padding:4px 6px;background:linear-gradient(transparent,rgba(0,0,0,0.7));color:#fff;font-size:0.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
/* Tile hover action buttons */
.media-tile-actions{position:absolute;inset:0;display:flex;opacity:0;transition:opacity 0.15s;pointer-events:none;}
.media-admin-tile:hover .media-tile-actions{opacity:1;pointer-events:auto;}
.media-tile-action-btn{position:absolute;background:rgba(0,0,0,0.6);color:#fff;border:none;width:28px;height:28px;border-radius:4px;cursor:pointer;font-size:0.85rem;display:flex;align-items:center;justify-content:center;transition:background 0.15s;}
.media-tile-action-btn:hover{background:rgba(196,82,26,0.9);}
.media-tile-action-btn:first-child{top:4px;right:4px;}
.media-tile-select-btn{top:4px;left:4px;right:auto!important;font-size:1.1rem;font-weight:700;}
.media-tile-dl-btn{bottom:4px;right:4px;top:auto!important;}
.media-admin-tile.selected{outline:3px solid var(--canopy);outline-offset:-3px;}
.media-admin-tile.selected .media-tile-select-btn{background:var(--canopy);}
.focal-picker{position:relative;cursor:crosshair;display:inline-block;}
.focal-picker img{width:100%;display:block;}
.focal-marker{position:absolute;width:24px;height:24px;border:2px solid var(--canopy);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 0 2px rgba(255,255,255,0.8),inset 0 0 0 2px rgba(255,255,255,0.4);}
/* Lightbox */
.media-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,0.92);display:flex;align-items:center;justify-content:center;cursor:zoom-out;animation:fadeIn 0.15s ease;}
.media-lightbox img{max-width:92vw;max-height:92vh;object-fit:contain;box-shadow:0 8px 40px rgba(0,0,0,0.5);}

/* Bildnachweis (auto-generated image credits in Impressum) */
.bildnachweis{margin-top:1.5rem;padding-top:1rem;}
.bildnachweis table{width:100%;border-collapse:collapse;font-size:0.88rem;}
.bildnachweis th{text-align:left;font-size:0.72rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--mid);padding:0.5rem 0.8rem;border-bottom:2px solid var(--warm);font-weight:400;}
.bildnachweis td{padding:0.5rem 0.8rem;border-bottom:1px solid var(--warm);color:var(--ink);vertical-align:top;}
.bildnachweis tr:last-child td{border-bottom:none;}
.bildnachweis a{color:var(--canopy);text-decoration:none;}
.bildnachweis a:hover{color:var(--mist);}
.bildnachweis-id{font-family:monospace;font-size:0.75rem;color:var(--mid);}
@media(max-width:768px){
  .bildnachweis table{font-size:0.78rem;}
  .bildnachweis th,.bildnachweis td{padding:0.4rem 0.5rem;}
}

/* Media Picker Modal (reuses mediaAdmin.js in picker mode) */
.media-picker-overlay{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,0.6);align-items:center;justify-content:center;font-family:'DM Sans',sans-serif;}
.media-picker-modal{background:var(--cream,#f2ede4);width:92vw;max-width:1200px;height:85vh;display:flex;flex-direction:column;border-left:4px solid var(--canopy);overflow:hidden;}
.media-picker-header{display:flex;justify-content:space-between;align-items:center;padding:0.8rem 1.5rem;border-bottom:1px solid var(--warm);flex-shrink:0;}
.media-picker-header h2{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;margin:0;color:var(--ink);letter-spacing:0.05em;}
.media-picker-bar{display:flex;gap:0.5rem;align-items:center;padding:0.7rem 1rem;background:var(--cream);border-bottom:1px solid var(--warm);flex-shrink:0;flex-wrap:wrap;}
.media-picker-bar .media-admin-search-wrap{min-width:140px;max-width:220px;}
.media-picker-bar .media-admin-tabs{border:none;margin:0;gap:0;}
.media-picker-bar .media-admin-tab{padding:0.3rem 0.8rem;font-size:0.78rem;}
.media-picker-bar-sep{border-left:1px solid var(--warm);height:1.2rem;}
.media-picker-bar .btn{white-space:nowrap;}
.media-picker-modal .media-admin{padding:0 1rem 1rem;flex:1;overflow:hidden;}
.media-picker-modal .media-admin-left{overflow-y:auto;}
.media-picker-modal .media-admin-detail{max-height:100%;}
@media(max-width:768px){
  .media-admin{flex-direction:column;}
  .media-admin-detail{width:100%;position:static;max-height:none;}
  .media-admin-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));}
}

.empty-state{text-align:center;padding:4rem 2rem;color:var(--mid);}
.empty-state p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.2rem;}

/* Logbuch mobile */
@media(max-width:768px){
  .logbuch-header{padding:6rem 5% 3rem;}
  
  .logbuch-entries::before{left:calc(5% + 10px);}
  .logbuch-entry{gap:1.5rem;}
  .logbuch-entry-marker{width:22px;}
  .logbuch-post{padding:6rem 5% 3rem;}
  .logbuch-nav{grid-template-columns:1fr;}
  .admin-bar{margin-top:56px;flex-direction:column;gap:0.5rem;}
}

/* --- Markdown Extensions: Aside Box --- */
.logbuch-content .aside-box,
.aside-box{background:var(--warm);border-left:3px solid var(--canopy);padding:1.5rem 2rem;margin:2rem 0;}
.aside-box h4{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:400;color:var(--ink);margin-bottom:0.75rem;}
.aside-box p{font-size:0.92rem;line-height:1.7;color:var(--mid);margin-bottom:0.5rem;}
.aside-box p:last-child{margin-bottom:0;}

/* --- Markdown Extensions: Two Perspectives / Old-New Grid --- */
.logbuch-content .old-new-grid,
.old-new-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2.5rem 0;}
.old-new-col{padding:1.5rem;border-top:2px solid var(--warm);}
.old-new-col.old{background:rgba(0,0,0,0.02);}
.old-new-col.old h4{font-size:0.7rem;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;color:var(--mid);margin-bottom:0.75rem;}
.old-new-col.new{background:rgba(196,82,26,0.04);border-top-color:var(--canopy);}
.old-new-col.new h4{font-size:0.7rem;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;color:var(--canopy);margin-bottom:0.75rem;}
.old-new-col p{font-size:0.9rem;line-height:1.7;color:var(--mid);margin-bottom:0.5rem;}
.old-new-col ul{margin:0.5rem 0 0.5rem 1.2rem;font-size:0.9rem;line-height:1.7;color:var(--mid);}
.old-new-col li{margin-bottom:0.3rem;}

/* --- Markdown Extensions: Timeline --- */
.logbuch-content .logbuch-timeline,
.logbuch-timeline{margin:2.5rem 0;padding:0;}
.logbuch-timeline .timeline-item{display:grid;grid-template-columns:100px 2px 1fr;gap:1.2rem;margin-bottom:1.5rem;}
.logbuch-timeline .timeline-time{font-family:'Cormorant Garamond',serif;font-size:0.95rem;font-style:italic;color:var(--canopy);text-align:right;padding-top:0.15rem;}
.logbuch-timeline .timeline-line{background:var(--warm);position:relative;}
.logbuch-timeline .timeline-line::before{content:'';position:absolute;top:0.3rem;left:-4px;width:10px;height:10px;border-radius:50%;background:var(--canopy);}
.logbuch-timeline .timeline-content h4{font-size:0.95rem;font-weight:500;color:var(--ink);margin-bottom:0.3rem;}
.logbuch-timeline .timeline-content p{font-size:0.9rem;line-height:1.65;color:var(--mid);margin-bottom:0.3rem;}

/* --- Markdown Extensions: Cycle Visual --- */
.logbuch-content .cycle-visual,
.cycle-visual{background:var(--warm);padding:2.5rem;margin:2.5rem 0;text-align:center;}
.cycle-visual .cycle-title{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;color:var(--ink);margin-bottom:1.5rem;letter-spacing:0.03em;}
.cycle-items-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0.3rem;}
.cycle-item{display:inline-flex;align-items:center;gap:0.5rem;}
.cycle-item span:first-child{background:var(--forest);color:#fff;padding:0.5rem 1rem;font-size:0.8rem;font-weight:400;letter-spacing:0.03em;}
.cycle-arrow{color:var(--canopy);font-size:1.2rem;font-weight:300;padding:0 0.3rem;}
.cycle-return{color:var(--canopy);font-size:1rem;}
.cycle-caption{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1rem;color:var(--mid);margin-top:1.2rem;}

/* Mobile for extensions */
@media(max-width:768px){
  .old-new-grid{grid-template-columns:1fr;}
  .logbuch-timeline .timeline-item{grid-template-columns:70px 2px 1fr;gap:0.8rem;}
  .cycle-items-row{flex-direction:column;}
}

/* --- Hero section image sizes (scoped to hero sections only) --- */
.why-image .img-size-mini,.team-image .img-size-mini,.cta-image .img-size-mini,.manifesto-image .img-size-mini{max-width:150px;max-height:150px;width:auto;height:auto;}
.why-image .img-size-small,.team-image .img-size-small,.cta-image .img-size-small,.manifesto-image .img-size-small{max-width:300px;max-height:300px;width:auto;height:auto;}
.why-image .img-size-medium,.team-image .img-size-medium,.cta-image .img-size-medium,.manifesto-image .img-size-medium{max-width:500px;max-height:500px;width:auto;height:auto;}
.why-image .img-size-large,.team-image .img-size-large,.cta-image .img-size-large,.manifesto-image .img-size-large{max-width:800px;max-height:800px;width:auto;height:auto;}
/* Hero section images: styled images reset container defaults (e.g. why-image clip-path) */
.why-image img.hero-img-styled,.team-image img.hero-img-styled,.cta-image img.hero-img-styled,.manifesto-image img.hero-img-styled,.hero-section-image img.hero-img-styled{height:auto!important;}
/* Only reset clip-path for styles that DON'T use their own clip-path (rund, schraeg, quadratisch) */
.why-image img.img-style-rund,.why-image img.img-style-schraeg,.why-image img.img-style-quadratisch{clip-path:none!important;}
.team-image img.img-style-rund,.team-image img.img-style-schraeg,.team-image img.img-style-quadratisch{clip-path:none!important;}
/* Raute keeps its own clip-path — override container's clip-path with raute's */
.why-image img.img-style-raute,.team-image img.img-style-raute,.cta-image img.img-style-raute,.manifesto-image img.img-style-raute,.hero-section-image img.img-style-raute{clip-path:polygon(8% 0%,100% 0%,92% 100%,0% 100%)!important;height:auto!important;}
/* Polaroid resets */
.why-image .polaroid-frame,.team-image .polaroid-frame,.cta-image .polaroid-frame,.manifesto-image .polaroid-frame,.hero-section-image .polaroid-frame{clip-path:none!important;}
.why-image .polaroid-frame img,.team-image .polaroid-frame img,.cta-image .polaroid-frame img,.manifesto-image .polaroid-frame img,.hero-section-image .polaroid-frame img{clip-path:none!important;height:auto!important;}
/* Hero button position wrapper */
.hero-btn-wrap{margin:1.5rem 0 0.5rem;}
/* Generic hero section image container */
.hero-section-image{margin:2rem 0;}
.hero-section-image img{max-width:100%;height:auto;display:block;}
/* Position: left/right float for hero section images */
.hero-img-left{float:left;margin:0 2rem 1.5rem 0;}
.hero-img-right{float:right;margin:0 0 1.5rem 2rem;}
@media(max-width:768px){.hero-img-left,.hero-img-right{float:none;margin:1.5rem auto;}}
.hero-section-image .img-size-mini,.hero-section-image img.img-size-mini{max-width:150px!important;max-height:150px;width:auto;height:auto;}
.hero-section-image .img-size-small,.hero-section-image img.img-size-small{max-width:300px!important;max-height:300px;width:auto;height:auto;}
.hero-section-image .img-size-medium,.hero-section-image img.img-size-medium{max-width:500px!important;max-height:500px;width:auto;height:auto;}
.hero-section-image .img-size-large,.hero-section-image img.img-size-large{max-width:800px!important;max-height:800px;width:auto;height:auto;}

/* ============================================================
   Cookie-Consent-Banner
   ============================================================ */
.cc-overlay{
  position:fixed;left:0;right:0;bottom:0;z-index:9999;
  display:flex;justify-content:center;padding:1.5rem;
  pointer-events:none;
  opacity:0;transform:translateY(20px);
  transition:opacity .35s ease, transform .35s ease;
}
.cc-overlay.cc-visible{opacity:1;transform:translateY(0);pointer-events:auto;}
.cc-box{
  background:var(--forest);
  color:var(--cream);
  max-width:780px;width:100%;
  padding:2rem 2.2rem;
  border-top:3px solid var(--canopy);
  box-shadow:0 -20px 60px rgba(0,0,0,0.35);
  font-family:'DM Sans',sans-serif;
}
.cc-title{
  font-family:'Bebas Neue',sans-serif;
  font-size:1.6rem;letter-spacing:0.05em;
  color:var(--cream);
  margin:0 0 0.8rem;font-weight:400;
}
.cc-intro{
  font-size:0.9rem;line-height:1.6;
  color:rgba(242,237,228,0.85);
  margin:0 0 1.2rem;
}
.cc-link{color:var(--mist);text-decoration:underline;}
.cc-link:hover{color:var(--canopy);}

.cc-details{
  border-top:1px solid rgba(242,237,228,0.15);
  margin:1rem 0 1.2rem;
  padding-top:1rem;
}
.cc-cat{margin-bottom:1rem;}
.cc-cat:last-child{margin-bottom:0;}
.cc-cat-head{
  display:flex;justify-content:space-between;align-items:center;
  gap:1rem;margin-bottom:0.3rem;
}
.cc-cat-title{
  font-family:'Bebas Neue',sans-serif;
  font-size:1rem;letter-spacing:0.08em;
  color:var(--cream);cursor:pointer;
}
.cc-cat-desc{
  font-size:0.8rem;line-height:1.55;
  color:rgba(242,237,228,0.65);
  margin:0;
}
/* Toggle switch */
.cc-switch{
  position:relative;display:inline-block;width:42px;height:22px;
  cursor:pointer;flex-shrink:0;
}
.cc-switch input{opacity:0;width:0;height:0;position:absolute;}
.cc-slider{
  position:absolute;inset:0;background:rgba(242,237,228,0.2);
  border-radius:22px;transition:background .2s;
}
.cc-slider::before{
  content:'';position:absolute;left:3px;top:3px;
  width:16px;height:16px;background:var(--cream);
  border-radius:50%;transition:transform .2s;
}
.cc-switch input:checked + .cc-slider{background:var(--canopy);}
.cc-switch input:checked + .cc-slider::before{transform:translateX(20px);}
.cc-switch-locked{cursor:not-allowed;opacity:0.7;}
.cc-switch-locked .cc-slider{background:var(--mid);}

.cc-buttons{
  display:flex;flex-wrap:wrap;gap:0.6rem;
  justify-content:flex-end;
}
.cc-btn{
  font-family:'DM Sans',sans-serif;
  font-size:0.85rem;font-weight:500;
  letter-spacing:0.04em;
  padding:0.7rem 1.3rem;
  border:1px solid transparent;
  cursor:pointer;
  transition:background .2s, color .2s, border-color .2s;
}
.cc-btn-primary{
  background:var(--canopy);color:#fff;
}
.cc-btn-primary:hover{background:var(--mist);}
.cc-btn-ghost{
  background:transparent;
  color:var(--cream);
  border-color:rgba(242,237,228,0.3);
}
.cc-btn-ghost:hover{
  border-color:var(--cream);
  background:rgba(242,237,228,0.05);
}

@media (max-width:768px){
  .cc-overlay{padding:0;}
  .cc-box{padding:1.5rem 1.3rem;border-top-width:2px;}
  .cc-title{font-size:1.4rem;}
  .cc-intro{font-size:0.85rem;}
  .cc-buttons{justify-content:stretch;}
  .cc-btn{flex:1 1 45%;padding:0.8rem 0.5rem;font-size:0.8rem;}
  .cc-cat-head{flex-wrap:wrap;}
}

.profile-socials{display:flex;gap:0.6rem;margin-top:0.8rem;align-items:center;}
.profile-socials a{display:flex;align-items:center;opacity:0.5;transition:opacity 0.2s;}
.profile-socials a:hover{opacity:1;}
.profile-socials img,.profile-socials svg{width:20px;height:20px;}

/* ============================================================
   Categories
   ============================================================ */
.cat-chip{display:inline-block;background:var(--canopy);color:#fff;padding:0.2rem 0.7rem;font-size:0.7rem;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;}
a.cat-chip{transition:opacity .15s;}
a.cat-chip:hover{opacity:0.85;}

.logbuch-filter{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center;margin-top:1.2rem;}
.logbuch-filter-label{font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--mid);margin-right:0.3rem;}
.cat-filter-chip{display:inline-block;padding:0.35rem 0.9rem;font-size:0.78rem;font-weight:500;letter-spacing:0.04em;text-decoration:none;border:1px solid var(--warm);background:#fff;color:var(--mid);transition:all .15s;}
.cat-filter-chip:hover{background:var(--warm);}
.cat-filter-chip.active{background:var(--canopy);color:#fff;border-color:var(--canopy);}

.logbuch-entry-categories{display:flex;flex-wrap:wrap;gap:0.3rem;margin:0.4rem 0 0.6rem;}
.logbuch-post-categories{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:1rem;}

/* ============================================================
   Wide-Mode Toggle (full width for reading content pages)
   ============================================================ */
.logbuch-post.wide-mode,
.profile-page.wide-mode,
.legal-page.wide-mode{max-width:90vw;transition:max-width .3s ease;}
.logbuch-post,.profile-page,.legal-page{transition:max-width .3s ease;}

/* Logbuch Volltextsuche */
.logbuch-search{display:flex;align-items:center;gap:0.5rem;margin:1.2rem 0 0.8rem;max-width:520px;}
.logbuch-search input[type=search]{flex:1;padding:0.6rem 0.9rem;border:1px solid var(--warm);background:#fff;font-family:inherit;font-size:0.9rem;color:var(--ink);}
.logbuch-search input[type=search]:focus{outline:none;border-color:var(--canopy);}
.logbuch-search button{padding:0.6rem 0.9rem;background:var(--canopy);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.logbuch-search button:hover{background:var(--mist);}
.logbuch-search-clear{display:flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;color:var(--mid);text-decoration:none;font-size:1.4rem;line-height:1;border:1px solid var(--warm);background:#fff;transition:all .15s;}
.logbuch-search-clear:hover{color:var(--canopy);border-color:var(--canopy);}

/* ============================================================
   Polaroid image style
   ============================================================ */
.polaroid-frame{display:inline-block;background:#faf8f3;padding:12px 12px 60px;box-shadow:0 4px 8px rgba(0,0,0,0.08),0 14px 32px rgba(0,0,0,0.18);transition:transform .4s ease,box-shadow .4s ease;max-width:100%;}
.polaroid-frame img{display:block;max-width:100%;height:auto;}
.polaroid-frame.polaroid-voll img{filter:sepia(0.18) saturate(0.9) contrast(0.94) brightness(1.02);}
.polaroid-rotate-1{transform:rotate(-1.5deg);}
.polaroid-rotate-2{transform:rotate(1.2deg);}
.polaroid-rotate-3{transform:rotate(-0.6deg);}
.polaroid-rotate-4{transform:rotate(0.8deg);}
.polaroid-rotate-5{transform:rotate(-1.1deg);}
.polaroid-frame:hover{transform:rotate(0) translateY(-4px);box-shadow:0 8px 18px rgba(0,0,0,0.12),0 20px 44px rgba(0,0,0,0.22);}

/* Polaroid used as logbuch-post hero: keep image layout sizes */
.logbuch-post-hero.polaroid-frame{padding:12px 12px 60px;margin-bottom:2.5rem;margin-left:0;margin-right:auto;}
#logbuch-posts{justify-items:center;}
#logbuch-posts > a{width:100%;max-width:340px;}
#logbuch-posts .polaroid-frame{max-width:340px;margin-left:auto!important;margin-right:auto!important;}
#logbuch-posts .polaroid-frame img{width:100%;aspect-ratio:17/14;height:auto;object-fit:cover;display:block;}
.logbuch-post-hero.polaroid-frame.img-size-large{width:600px;max-width:100%;}
.logbuch-post-hero.polaroid-frame.img-size-medium{width:400px;max-width:100%;}
.logbuch-post-hero.polaroid-frame.img-size-small{width:260px;max-width:100%;}
.logbuch-post-hero.polaroid-frame.img-size-mini{width:160px;max-width:100%;}
.logbuch-post-hero.polaroid-frame.img-size-original{width:600px;max-width:100%;}

@media (max-width:768px){
  .polaroid-rotate-1,.polaroid-rotate-2,.polaroid-rotate-3,.polaroid-rotate-4,.polaroid-rotate-5{transform:rotate(0);}
  .polaroid-frame{padding:8px 8px 40px;}
}

/* Logbuch-Entry footer: single-line compact */
.logbuch-entry .logbuch-entry-date{color:var(--canopy);font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:500;}
.logbuch-entry .logbuch-entry-sep{opacity:0.5;}

/* Polaroid hero on single-post pages: straight, no hover tilt */
.logbuch-post-hero.polaroid-frame{transform:none;}
.logbuch-post-hero.polaroid-frame:hover{transform:translateY(-2px);}

/* Polaroid standard: forced square crop */
.polaroid-frame.polaroid-square img{aspect-ratio:1/1!important;object-fit:cover!important;height:auto!important;max-height:none!important;}
/* Polaroid angepasst: natural proportions, no forced crop */
.polaroid-frame.polaroid-natural img{aspect-ratio:auto!important;object-fit:contain;height:auto!important;max-height:none!important;}

/* Rund: circular image */
.logbuch-post-hero.img-style-rund{border-radius:50%;aspect-ratio:1/1;object-fit:cover;width:350px;max-width:100%;}
.logbuch-post-hero.img-style-rund.img-size-small{width:200px;}
.logbuch-post-hero.img-style-rund.img-size-medium{width:350px;}
.logbuch-post-hero.img-style-rund.img-size-large{width:500px;}
.logbuch-post-hero.img-style-rund.img-size-original{width:400px;}

/* Raute: parallelogram clip like Two-Column Hero */
.logbuch-post-hero.img-style-raute{clip-path:polygon(8% 0%,100% 0%,92% 100%,0% 100%);object-fit:cover;width:100%;max-width:100%;max-height:500px;filter:drop-shadow(0 4px 12px rgba(0,0,0,0.25));}
.logbuch-post-hero.img-style-raute.img-size-small{max-width:400px;max-height:300px;}
.logbuch-post-hero.img-style-raute.img-size-medium{max-width:700px;max-height:400px;}
.logbuch-post-hero.img-style-raute.img-size-large{max-width:1000px;max-height:600px;}
.logbuch-post-hero.img-style-raute.img-size-original{max-width:100%;max-height:500px;}
/* Raute for inline content images */
img.img-style-raute{clip-path:polygon(8% 0%,100% 0%,92% 100%,0% 100%);object-fit:cover;filter:drop-shadow(0 4px 12px rgba(0,0,0,0.25));}

/* Quadratisch: square crop */
.logbuch-post-hero.img-style-quadratisch{aspect-ratio:1/1;object-fit:cover;}
img.img-style-quadratisch{aspect-ratio:1/1;object-fit:cover;}

/* Leicht schraeg: slight tilt */
.img-style-schraeg{transform:rotate(-1.5deg);transition:transform 0.3s ease;}
.img-style-schraeg:hover{transform:rotate(0);}

/* Inline images in content: .img-left, .img-right, sizes */
.logbuch-content img[class*="img-"]{display:block;max-width:100%;height:auto;margin:1rem 0;}
.logbuch-content img.img-left{float:left;margin:0.3rem 1.5rem 1rem 0;}
.logbuch-content img.img-right{float:right;margin:0.3rem 0 1rem 1.5rem;}
.logbuch-content img.img-mini{max-width:150px;}
.logbuch-content img.img-small{max-width:250px;}
.logbuch-content img.img-medium{max-width:450px;}
.logbuch-content img.img-large{max-width:700px;}
/* Inline image styles */
img.img-style-rund{border-radius:50%;aspect-ratio:1/1;object-fit:cover;shape-outside:circle(50%);}
img.img-style-raute{shape-outside:polygon(8% 0%,100% 0%,92% 100%,0% 100%);}
img.img-style-schraeg{transform:rotate(-1.5deg);}
img.img-style-polaroid{background:#faf8f3;padding:8px 8px 28px;box-shadow:0 3px 8px rgba(0,0,0,0.12),0 8px 20px rgba(0,0,0,0.15);}
img.img-style-polaroid-voll{background:#faf8f3;padding:8px 8px 28px;box-shadow:0 3px 8px rgba(0,0,0,0.12),0 8px 20px rgba(0,0,0,0.15);filter:sepia(0.18) saturate(0.9) contrast(0.94) brightness(1.02);}
@media(max-width:600px){.logbuch-content img.img-left,.logbuch-content img.img-right{float:none;margin:1rem auto;display:block;}}
