:root{
  --paper: #ece8e0;
  --card: #f6f2ea;
  --ink: #2c362b;
  --ink-soft: #4a5648;
  --mute: #6a7464;
  --line: #d0cbc0;
  --accent: #3d4a3a;
  --accent-dark: #2a3428;
  --accent-hot: #8a9a62;
  --glow: rgba(138,154,98,.2);
  --wrap: 1180px;
  --serif: 'Newsreader', Georgia, 'Times New Roman', serif;
  --sans: 'Figtree', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth; color-scheme: light;}
[id]{scroll-margin-top:80px;}
body{
  margin:0;
  background:
    radial-gradient(ellipse 70% 45% at 90% -8%, rgba(138,154,98,.16), transparent 52%),
    radial-gradient(ellipse 55% 40% at 0% 12%, rgba(61,74,58,.08), transparent 50%),
    var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:var(--serif); font-weight:500; line-height:1.15; margin:0; letter-spacing:-.01em;}
p{margin:0;}
a{color:inherit;}
img{max-width:100%; display:block;}
::selection{background:rgba(138,154,98,.38); color:#2c362b;}

.wrap{max-width:var(--wrap); margin:0 auto; padding:0 24px;}

/* Nav */
.nav{
  position:sticky; top:0; z-index:20;
  background:rgba(236,232,224,.94);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.nav-inner{display:flex; align-items:center; justify-content:space-between; gap:24px; height:64px;}
.brand{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--sans); font-size:22px; font-weight:650;
  text-decoration:none; letter-spacing:-.04em; color:var(--ink);
}
.brand img{width:28px; height:28px; border-radius:7px;}
.brand:hover{color:var(--accent);}
.navlinks{display:flex; gap:28px; font-size:15px;}
.navlinks a{text-decoration:none; color:var(--ink-soft);}
.navlinks a:hover{color:var(--accent); text-decoration:underline; text-underline-offset:4px;}
.nav-actions{display:flex; align-items:center; gap:12px;}
.lang-switch{display:flex; align-items:center; gap:4px; font-size:14px; color:var(--mute);}
.lang-btn{
  border:0; background:none; padding:4px 2px; cursor:pointer;
  font:inherit; color:var(--mute);
}
.lang-btn.active{color:var(--accent); font-weight:600;}
.burger{display:none; flex-direction:column; gap:6px; background:none; border:0; padding:8px; cursor:pointer;}
.burger span{width:20px; height:1.5px; background:var(--ink);}
.mobile-menu{display:none; flex-direction:column; padding:8px 24px 16px; border-top:1px solid var(--line); background:var(--paper);}
.mobile-menu a{padding:10px 0; text-decoration:none; font-size:17px;}
.mobile-menu.open{display:flex;}

/* Buttons */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 20px; border-radius:6px;
  background:linear-gradient(180deg, var(--accent) 0%, var(--accent-dark) 100%);
  color:var(--paper); border:1px solid var(--accent);
  font:600 16px/1.2 var(--sans); text-decoration:none; cursor:pointer;
  transition:filter .15s, transform .15s;
}
.btn:hover{filter:brightness(1.08); transform:translateY(-1px);}
.btn:focus-visible, a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
  outline:2px solid var(--accent-hot); outline-offset:2px;
}
.btn-quiet{background:transparent; color:var(--ink); border-color:var(--line); font-weight:500;}
.btn-quiet:hover{background:rgba(138,154,98,.12); border-color:var(--accent); filter:none;}
.btn[disabled]{opacity:.6; pointer-events:none;}
.link{color:var(--accent); text-underline-offset:4px;}
.link:hover{color:var(--accent-hot);}

/* Hero */
.hero{
  display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1.28fr);
  gap:40px; align-items:start;
  padding-top:40px; padding-bottom:48px;
}
.hero-intro .lead{margin-top:16px; font-size:18px; color:var(--ink-soft); max-width:34em;}
.hero h1{font-size:clamp(32px, 4vw, 46px);}
.hero-cta{display:flex; align-items:center; gap:24px; margin-top:28px; flex-wrap:wrap;}
.hero-stage{min-width:0;}
.kicker{font-size:13px; color:var(--accent-dark); font-weight:700; margin-bottom:10px; letter-spacing:.16em; text-transform:uppercase;}
.letter{margin-top:8px; max-width:38em; font-size:18px; color:var(--ink-soft);}
.letter p + p{margin-top:14px;}
.letter-sign{margin-top:22px; font-family:var(--serif); font-size:26px; color:var(--ink);}

.offer-viewport{
  position:relative;
  width:100%;
  aspect-ratio:16 / 9;
  overflow:visible;
}
.offer-track{position:relative; height:100%;}
.offer-slide{
  position:absolute; inset:0;
  opacity:0; pointer-events:none;
  transition:opacity .45s ease;
  overflow:visible;
  background:transparent;
}
.offer-slide.is-on{opacity:1; pointer-events:auto;}
.offer-slide img{
  width:100%; height:100%; object-fit:cover; object-position:center 35%;
  display:block; border-radius:10px; border:2px solid var(--accent);
  background:#2c362b;
  filter:contrast(1.08) saturate(1.12);
}
.offer-price{
  margin:0; flex-shrink:0;
  padding:6px 10px; border-radius:4px;
  border:1px solid var(--accent-hot);
  background:rgba(138,154,98,.18);
  font-family:var(--sans); font-size:16px; font-weight:700;
  color:var(--accent-dark); white-space:nowrap;
}
.offer-cap{
  position:absolute; left:0; right:0; top:calc(100% + 14px);
  padding:0; background:none; color:var(--ink);
}
.offer-row{display:flex; align-items:baseline; justify-content:space-between; gap:12px;}
.offer-cap h3{margin:0; font-size:clamp(20px, 2.2vw, 26px); color:var(--ink);}
.offer-cap > p{margin:8px 0 0; font-size:15px; color:var(--ink-soft); max-width:100%;}
.offer-price span{font-size:11px; font-weight:500; color:var(--mute);}
.offer-nav{
  position:absolute; top:50%; z-index:3; transform:translateY(-50%);
  width:40px; height:40px; border-radius:50%;
  border:1px solid rgba(247,241,230,.3);
  background:rgba(20,16,12,.45); color:#f7f1e6;
  font-size:22px; line-height:1; cursor:pointer;
}
.offer-nav.prev{left:10px;}
.offer-nav.next{right:10px;}
.offer-nav:hover{background:rgba(20,16,12,.75); border-color:var(--accent);}
.offer-dots{display:flex; flex-wrap:wrap; gap:6px; margin-top:140px;}
.offer-dots button{
  padding:5px 9px; border:1px solid var(--line); border-radius:999px;
  background:transparent; color:var(--mute); font:500 11px/1.2 var(--sans); cursor:pointer;
}
.offer-dots button.on{background:var(--accent); color:var(--paper); border-color:var(--accent);}

.idea{max-width:720px; margin-bottom:40px;}
.idea h2{font-size:clamp(30px, 3.8vw, 44px); margin-bottom:16px;}
.idea p{color:var(--ink-soft); font-size:18px;}
.idea-lead{margin-bottom:14px;}
.who-grid, .more-grid{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:20px;}
.who-card, .more-card{
  background:var(--card); border:2px solid var(--line); border-radius:10px; overflow:hidden;
  box-shadow:0 10px 28px rgba(12,34,18,.08);
}
.who-card img, .more-card img{width:100%; height:auto; aspect-ratio:3/2; object-fit:cover;}
.who-card h3, .more-card h3{font-size:24px; padding:16px 18px 0;}
.who-card p, .more-card p{padding:8px 18px 18px; color:var(--ink-soft); font-size:15px;}
.more-price{padding:0 18px 18px !important; margin:0; font-family:var(--serif); font-size:22px; color:var(--accent-dark); font-weight:500;}
.more-price span{font-family:var(--sans); font-size:13px; color:var(--mute);}
.bundle{margin-top:56px;}
.bundle-head{max-width:720px; margin-bottom:24px;}
.bundle-head h3{font-size:clamp(26px, 3vw, 34px); margin-bottom:10px;}
.bundle-head p{color:var(--ink-soft); font-size:17px;}
.more-card.is-gift{border-color:rgba(138,154,98,.55);}
.gift-flag{
  display:inline-block !important;
  margin:14px 18px 0 !important;
  padding:4px 10px !important;
  border-radius:999px;
  background:rgba(138,154,98,.22);
  color:var(--accent-dark);
  font:600 12px/1.2 var(--sans);
  width:fit-content;
}
.gift-flag.quiet{background:transparent; border:1px solid var(--line); color:var(--ink-soft); font-weight:500;}
.plan-photo{margin:-28px -28px 18px;}
.plan-photo img{width:100%; height:160px; object-fit:cover; border-radius:5px 5px 0 0;}

/* Sections */
.section{padding-top:72px; padding-bottom:72px; border-top:1px solid var(--line);}
.section-head{max-width:640px; margin-bottom:40px;}
.section-head h2{font-size:clamp(30px, 3.6vw, 40px);}
.section-head p{margin-top:12px; color:var(--ink-soft);}

/* Steps */
.steps{list-style:none; padding:0; margin:0; counter-reset:step; display:grid; grid-template-columns:repeat(5, 1fr); gap:28px;}
.steps li{counter-increment:step; padding-top:16px; border-top:2px solid var(--ink);}
.steps li::before{content:counter(step); display:block; font-family:var(--serif); font-size:15px; color:var(--mute); margin-bottom:6px;}
.steps h3{font-size:22px; margin-bottom:6px;}
.steps p{font-size:15px; color:var(--ink-soft);}

/* Plans */
.plans{display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; align-items:start;}
.plan{
  display:flex; flex-direction:column; gap:0;
  padding:28px; background:var(--card);
  border:1px solid var(--line); border-radius:6px;
  transition:border-color .2s, box-shadow .2s;
}
.plan:hover{border-color:rgba(138,154,98,.5); box-shadow:0 12px 32px rgba(61,74,58,.08);}
.plan-main{border-color:var(--accent); box-shadow:inset 0 3px 0 var(--accent), 0 12px 32px rgba(138,154,98,.12);}
.plan-for{font-size:14px; color:var(--mute);}
.plan-main .plan-for{color:var(--accent); font-weight:500;}
.plan h3{font-size:28px; margin-top:4px;}
.price{font-family:var(--serif); font-size:34px; margin-top:12px;}
.price span{font-family:var(--sans); font-size:14px; color:var(--mute); margin-left:4px;}
.plan ul{list-style:none; padding:0; margin:20px 0 24px; font-size:15px; color:var(--ink-soft);}
.plan li{padding:8px 0 8px 22px; border-top:1px solid var(--line); position:relative;}
.plan li::before{content:''; position:absolute; left:2px; top:17px; width:9px; height:5px; border-left:1.5px solid var(--accent); border-bottom:1.5px solid var(--accent); transform:rotate(-45deg);}
.plan .btn{margin-top:auto;}

/* Extras / monthly rows */
.sub{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:40px; margin-top:64px;}
.extras-block{display:block;}
.extras-block .sub-head{max-width:640px; margin-bottom:28px;}
.extras-grid{margin-top:0;}
.sub-head h3{font-size:26px;}
.sub-head p{margin-top:8px; color:var(--ink-soft); font-size:15px;}
.rows{margin:0; border-top:1px solid var(--line);}
.rows > div{
  display:grid; grid-template-columns:1fr auto; column-gap:24px;
  padding:14px 0; border-bottom:1px solid var(--line);
}
.rows dt{font-weight:500;}
.rows dd{margin:2px 0 0; grid-column:1; font-size:15px; color:var(--mute);}
.rows b{grid-column:2; grid-row:1 / span 2; align-self:center; font-weight:600; white-space:nowrap; color:var(--accent);}

/* Contact */
.contact{display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:56px; align-items:start;}
.form select{font:inherit; font-size:16px; color:var(--ink); padding:11px 12px; border:1px solid var(--line); border-radius:6px; background:var(--card);}
.form select:focus{border-color:var(--accent);}
.contact-body h2{font-size:clamp(30px, 3.6vw, 40px);}
.contact-lead{margin-top:14px; color:var(--ink-soft); max-width:32em;}
.channels{list-style:none; padding:0; margin:28px 0 0; border-top:1px solid var(--line);}
.channels a{
  display:flex; justify-content:space-between; align-items:baseline; gap:16px;
  padding:16px 4px; border-bottom:1px solid var(--line); text-decoration:none;
  transition:background-color .15s;
}
.channels a:hover{background:rgba(138,154,98,.1);}
.ch-label{font-size:14px; color:var(--mute);}
.ch-value{font-family:var(--serif); font-size:22px; white-space:nowrap; color:var(--ink);}
.channels a:hover .ch-value{color:var(--accent);}
.form-title{font-size:22px; margin:40px 0 16px;}
.form{display:flex; flex-direction:column; gap:16px;}
.form label{display:flex; flex-direction:column; gap:6px; font-size:14px; color:var(--ink-soft);}
.form input, .form textarea{
  font:inherit; font-size:16px; color:var(--ink);
  padding:11px 12px; border:1px solid var(--line); border-radius:6px; background:var(--card);
}
.form textarea{resize:vertical;}
.form input:focus, .form textarea:focus{border-color:var(--accent);}
.form .btn{align-self:flex-start;}
.hp-field{position:absolute; left:-9999px;}
.form-status{font-size:15px; min-height:1.4em;}
.form-status.ok{color:var(--accent);}
.form-status.err{color:#9a4a3a;}

/* Footer */
.footer{border-top:1px solid var(--line); padding:28px 0; font-size:14px; color:var(--mute);}
.footer-inner{display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap;}
.footer nav{display:flex; gap:20px;}
.footer a{text-decoration:none;}
.footer a:hover{color:var(--ink); text-decoration:underline;}

/* Responsive */
@media (max-width: 960px){
  .steps{grid-template-columns:repeat(2, 1fr);}
  .plans{grid-template-columns:1fr; max-width:520px;}
  .sub{grid-template-columns:1fr; gap:20px;}
}
@media (max-width: 820px){
  .hero{grid-template-columns:1fr; gap:28px; padding-top:28px;}
  .offer-dots{margin-top:148px;}
  .contact{grid-template-columns:1fr; gap:32px;}
  }
@media (max-width: 640px){
  body{font-size:16px;}
  .wrap{padding:0 16px;}
  .offer-copy{max-width:none;}
  .navlinks{display:none;}
  .burger{display:flex;}
  .section{padding-top:56px; padding-bottom:56px;}
  .steps{grid-template-columns:1fr; gap:20px;}
  .plan{padding:22px;}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
}

/* Photos */
.photo{margin:0;}
.photo img{width:100%; height:auto; object-fit:cover; border-radius:4px; background:#e8e2d6;}
.section-head.with-photo{
  max-width:none; display:grid; grid-template-columns:minmax(0,3fr) minmax(0,2fr);
  gap:48px; align-items:end;
}
.section-head.with-photo > div{max-width:560px;}
.section-head.with-photo .photo img{aspect-ratio:16/11;}
.sub-head .photo{margin-top:24px;}
.sub-head .photo img{aspect-ratio:13/10;}
@media (max-width: 960px){
  .sub-head .photo{max-width:420px;}
}
@media (max-width: 820px){
  .section-head.with-photo{grid-template-columns:1fr; gap:28px;}
}

/* Trust points */
.trust{list-style:none; padding:0; margin:32px 0 0; display:grid; gap:10px; font-size:15px; color:var(--ink-soft);}
.trust li{position:relative; padding-left:26px;}
.trust li::before{content:''; position:absolute; left:3px; top:7px; width:10px; height:5px; border-left:1.5px solid var(--accent); border-bottom:1.5px solid var(--accent); transform:rotate(-45deg);}

/* Services */
.services{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:20px;}
.service{padding:28px; background:var(--card); border:1px solid var(--line); border-radius:6px; transition:border-color .2s, transform .2s;}
.service:hover{border-color:rgba(138,154,98,.55); transform:translateY(-2px);}
.service-num{display:block; font-family:var(--serif); font-size:15px; color:var(--accent-hot); margin-bottom:10px;}
.service h3{font-size:28px;}
.service-sub{margin-top:6px; color:var(--mute); font-size:15px;}
.service ul{list-style:none; padding:0; margin:18px 0 0; font-size:16px;}
.service li{padding:9px 0 9px 22px; border-top:1px solid var(--line); position:relative;}
.service li::before{content:''; position:absolute; left:2px; top:18px; width:9px; height:5px; border-left:1.5px solid var(--accent); border-bottom:1.5px solid var(--accent); transform:rotate(-45deg);}
.services-note{margin-top:24px; color:var(--ink-soft); font-size:16px;}
.services-note .link{margin-left:6px; white-space:nowrap;}

/* Audience */
.audience{list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:0; border-top:1px solid var(--line); border-left:1px solid var(--line);}
.audience li{padding:22px 20px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(61,74,58,.04); transition:background-color .2s;}
.audience li:hover{background:rgba(138,154,98,.12);}
.audience h3{font-size:20px;}
.audience p{margin-top:6px; font-size:15px; color:var(--ink-soft);}

/* Bio */
.bio{display:grid; grid-template-columns:minmax(0,6fr) minmax(0,5fr); gap:28px 64px; align-items:start;}
.bio-head{display:flex; align-items:center; gap:12px; margin-bottom:18px;}
.bio-head .kicker{margin-bottom:4px;}
.bio-head h2{font-size:clamp(28px, 3.4vw, 38px);}
.bio-photo{width:72px; height:72px; flex:none; border-radius:50%; object-fit:cover; object-position:50% 22%; border:1px solid var(--line);}
.bio-text p{color:var(--ink-soft); max-width:36em;}
.bio-text p + p{margin-top:14px;}
.bio-hint{margin:-8px 0 16px; font-size:15px; color:var(--mute);}
.bio-contact{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:8px;
  padding:24px;
}
.bio-contact .form-title{margin-top:0;}
.bio-contact .channels{margin-top:20px;}
.form-compact{gap:12px;}
.form-compact textarea{min-height:84px;}

@media (max-width: 960px){
  .who-grid, .more-grid{grid-template-columns:1fr;}
  .services{grid-template-columns:1fr;}
  .bio{grid-template-columns:1fr;}
}
@media (max-width: 640px){
  .service{padding:22px;}
  .bio-photo{width:52px; height:52px;}
  .who-card img, .more-card img{height:180px;}
  .plan-photo{margin:-22px -22px 16px;}
}

/* Review fixes */
#fuer-wen .who-grid{grid-template-columns:repeat(4, minmax(0,1fr));}
#fuer-wen .who-card h3{font-size:21px;}
.sub + .sub{margin-top:48px;}
@media (max-width: 960px){ #fuer-wen .who-grid{grid-template-columns:repeat(2, minmax(0,1fr));} }
@media (max-width: 640px){ #fuer-wen .who-grid{grid-template-columns:1fr;} }

/* Legal pages */
.legal{max-width:760px; padding-top:48px; padding-bottom:80px;}
.legal h1{font-size:clamp(34px, 5vw, 48px);}
.legal-intro{margin-top:14px; color:var(--ink-soft); font-size:18px;}
.legal h2{font-size:24px; margin:40px 0 10px;}
.legal p{color:var(--ink-soft); line-height:1.7;}
.legal p + p{margin-top:12px;}
.legal a{color:var(--accent); text-underline-offset:3px;}
.legal-list{margin:0; border-top:1px solid var(--line);}
.legal-list > div{display:grid; grid-template-columns:200px 1fr; gap:16px; padding:10px 0; border-bottom:1px solid var(--line);}
.legal-list dt{font-weight:500;}
.legal-list dd{margin:0; color:var(--ink-soft);}
.legal-bullets{margin:10px 0 12px; padding-left:20px; color:var(--ink-soft); line-height:1.7;}
.legal-date{margin-top:48px !important; font-size:14px; color:var(--mute) !important;}
mark.todo{background:#fff1b8; color:#5b4a00; padding:0 4px; border-radius:3px;}
.form-privacy{font-size:13px; color:var(--mute);}
.form-privacy a{color:inherit;}
@media (max-width: 640px){ .legal-list > div{grid-template-columns:1fr; gap:2px;} }

/* Offers, bundles */
.hero-deal{display:inline-block; margin-top:22px; padding:10px 14px; border-radius:8px; background:#f3ead2; color:var(--ink); text-decoration:none; font-size:15px; border:1px solid #e6d7ac;}
.hero-deal:hover{background:#efe2bf;}
.hero-deal strong{font-weight:600; color:var(--accent-dark);}
.deals{display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:16px; margin-top:40px;}
.deal{padding:22px 24px; border:1px solid var(--line); border-radius:10px; background:var(--card);}
.deal-main{background:var(--accent-dark, #2f3a2c); border-color:transparent;}
.deal-main h3, .deal-main p{color:#f6f2ea !important;}
.deal-main .deal-tag{color:#e8d9a8 !important;}
.deal-tag{font-size:13px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--accent); margin-bottom:6px;}
.deal h3{font-size:24px;}
.deal p:last-child{margin-top:8px; font-size:15px; color:var(--ink-soft);}
.bundles{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px;}
.bundle-card{display:flex; flex-direction:column; padding:22px; border:1px solid var(--line); border-radius:10px; background:var(--card);}
.bundle-main{border-color:var(--accent); box-shadow:inset 0 3px 0 var(--accent);}
.bundle-card h3{font-size:24px; margin-top:2px;}
.bundle-card ul{list-style:none; padding:0; margin:14px 0 16px; font-size:15px; color:var(--ink-soft);}
.bundle-card li{padding:6px 0 6px 20px; position:relative; border-top:1px solid var(--line);}
.bundle-card li::before{content:''; position:absolute; left:2px; top:14px; width:8px; height:4px; border-left:1.5px solid var(--accent); border-bottom:1.5px solid var(--accent); transform:rotate(-45deg);}
.bundle-price{margin-top:auto; font-family:var(--serif); font-size:30px;}
.bundle-price s{font-family:var(--sans); font-size:14px; color:var(--mute); margin-left:6px;}
.bundle-card .link{margin-top:10px; font-size:15px;}
#preise .sub{grid-template-columns:minmax(0,1fr) minmax(0,2fr);}
@media (max-width: 960px){
  .deals{grid-template-columns:1fr;}
  .bundles{grid-template-columns:1fr;}
  #preise .sub{grid-template-columns:1fr;}
}
#preise .sub-wide{grid-template-columns:1fr; gap:20px;}
#preise .sub-wide .sub-head{max-width:640px;}

/* Mobile polish */
.form input, .form textarea, .form select{width:100%; min-width:0; box-sizing:border-box;}
@media (max-width: 640px){
  .hero{padding-top:24px;}
  #fuer-wen .who-card{display:grid; grid-template-columns:112px 1fr; grid-template-rows:auto 1fr; column-gap:0; align-items:start;}
  #fuer-wen .who-card img{grid-row:1 / span 2; width:112px; height:100%; min-height:128px; aspect-ratio:auto;}
  #fuer-wen .who-card h3{font-size:19px; padding:14px 14px 0;}
  #fuer-wen .who-card p{font-size:14px; padding:6px 14px 14px;}
  #fuer-wen .who-grid{gap:12px;}
}

/* Branchen */
.branches{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:18px;}
.branch{background:var(--card); border:1px solid var(--line); border-radius:10px; overflow:hidden; display:flex; flex-direction:column;}
.branch img{width:100%; height:auto; aspect-ratio:16/10; object-fit:cover;}
.branch-body{padding:16px 18px 18px;}
.branch h3{font-size:22px;}
.chips{list-style:none; padding:0; margin:12px 0 0; display:flex; flex-wrap:wrap; gap:6px;}
.chips li{font-size:13px; line-height:1.2; padding:6px 10px; border-radius:999px; background:#efe9dd; color:var(--ink-soft);}

/* Sichtbarkeit */
.visibility{display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:56px; align-items:start;}
.visibility-intro h2{font-size:clamp(30px, 3.6vw, 40px);}
.visibility-intro .lead{margin-top:14px; color:var(--ink-soft);}
.vis-steps{list-style:none; counter-reset:v; padding:0; margin:24px 0 0;}
.vis-steps li{counter-increment:v; position:relative; padding:10px 0 10px 40px; border-top:1px solid var(--line); color:var(--ink-soft); font-size:15px;}
.vis-steps li::before{content:counter(v); position:absolute; left:0; top:10px; width:26px; height:26px; border-radius:50%; background:var(--accent); color:#fff; font-size:13px; display:grid; place-items:center;}
.vis-steps strong{display:block; color:var(--ink); font-weight:600;}
.vis-photo{margin-top:24px;}
.vis-photo img{aspect-ratio:3/2; border-radius:10px;}
.platforms{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px;}
.platform{padding:18px 20px; border:1px solid var(--line); border-radius:10px; background:var(--card);}
.platform h3{font-size:20px;}
.platform ul{list-style:none; padding:0; margin:10px 0 0; font-size:15px; color:var(--ink-soft);}
.platform li{padding:5px 0; border-top:1px solid var(--line);}
.bundles{grid-template-columns:repeat(auto-fit, minmax(230px, 1fr));}

@media (max-width: 960px){
  .branches{grid-template-columns:repeat(2, minmax(0,1fr));}
  .visibility{grid-template-columns:1fr; gap:32px;}
}
@media (max-width: 640px){
  .branches{grid-template-columns:1fr;}
  .platforms{grid-template-columns:1fr;}
  .branch img{aspect-ratio:2/1;}
}

/* Sichtbarkeits-Check */
.check{display:grid; grid-template-columns:minmax(0,6fr) minmax(0,5fr); gap:48px; padding:40px; border-radius:14px; background:#f3ead2; border:1px solid #e6d7ac;}
.check h2{font-size:clamp(28px, 3.4vw, 38px);}
.check .lead{margin-top:12px; color:var(--ink-soft);}
.check-list{list-style:none; padding:0; margin:20px 0 0;}
.check-list li{position:relative; padding:8px 0 8px 26px; border-top:1px solid #e6d7ac; font-size:15px;}
.check-list li::before{content:''; position:absolute; left:3px; top:16px; width:10px; height:5px; border-left:1.5px solid var(--accent); border-bottom:1.5px solid var(--accent); transform:rotate(-45deg);}
.check-form{background:var(--card); padding:24px; border-radius:10px; border:1px solid #e6d7ac;}
@media (max-width: 960px){ .check{grid-template-columns:1fr; gap:28px;} }
@media (max-width: 640px){ .check{padding:22px 18px;} .check-form{padding:18px;} }

/* Branchen-Pakete auf den Fotos */
.branch-media{position:relative;}
.branch-media img{display:block;}
.branch-price{position:absolute; left:12px; bottom:12px; padding:6px 12px; border-radius:999px; background:rgba(28,34,27,.82); color:#fff; font-family:var(--serif); font-size:20px; line-height:1.1; backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);}
.branch-price span{font-family:var(--sans); font-size:12px; color:#e6e1d6; margin-right:2px;}
.branch-offer{margin-top:14px; padding-top:12px; border-top:1px solid var(--line); font-size:14px; color:var(--ink-soft);}
.branch-offer strong{display:block; color:var(--ink); font-weight:600; font-size:15px;}
.branch-body{display:flex; flex-direction:column; flex:1;}
.branch-offer{margin-top:auto;}
.branch .chips{margin-bottom:14px;}
.price-note{margin-top:14px; font-size:14px; color:var(--mute);}

/* About page */
.about-hero{padding-top:56px; border-top:0;}
.about-hero h1{font-size:clamp(30px, 4vw, 46px); max-width:22ch; margin-top:6px;}
.about-intro{margin-top:22px; max-width:62ch; display:grid; gap:14px; font-size:18px; color:var(--ink-soft);}
.about-split{display:grid; grid-template-columns:minmax(0,4fr) minmax(0,7fr); gap:40px;}
.about-split h2{font-size:clamp(26px, 3vw, 34px);}
.about-text{display:grid; gap:14px; color:var(--ink-soft); max-width:62ch;}
.about-grid{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:16px;}
.about-card{padding:20px; border:1px solid var(--line); border-radius:10px; background:var(--card);}
.about-card h3{font-size:21px;}
.about-card p{margin-top:8px; font-size:15px; color:var(--ink-soft);}
.values{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:0 40px;}
.value{padding:18px 0; border-top:1px solid var(--line);}
.value h3{font-size:21px;}
.value p{margin-top:6px; color:var(--ink-soft);}
.founder{display:grid; grid-template-columns:minmax(0,4fr) minmax(0,7fr); gap:48px; align-items:start;}
.founder-photo{width:100%; max-width:360px; height:auto; aspect-ratio:4/5; object-fit:cover; object-position:50% 25%; border-radius:10px;}
.founder h2{font-size:clamp(26px, 3vw, 34px); margin-top:4px;}
.founder .letter{margin-top:16px; display:grid; gap:14px; color:var(--ink-soft); max-width:60ch;}
.about-cta{display:grid; grid-template-columns:minmax(0,6fr) minmax(0,5fr); gap:48px; padding:36px; border-radius:14px; background:#f3ead2; border:1px solid #e6d7ac; align-items:center;}
.about-cta h2{font-size:clamp(26px, 3vw, 34px);}
.about-cta p{margin:10px 0 20px; color:var(--ink-soft);}
.more-about{margin-top:16px;}
@media (max-width: 960px){
  .about-grid{grid-template-columns:repeat(2, minmax(0,1fr));}
  .about-split, .founder, .about-cta{grid-template-columns:1fr; gap:24px;}
}
@media (max-width: 640px){
  .about-grid, .values{grid-template-columns:1fr;}
  .about-cta{padding:22px 18px;}
  .founder-photo{max-width:260px;}
}

.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}
.contact-body .channels{margin-top:20px;}
