@import url('https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible+Next:ital,wght@0,300..800;1,300..800&display=swap');

:root{
  --ink:#263028;
  --muted:#607064;
  --paper:#fffdf7;
  --cream:#f5efe4;
  --sand:#e5d8c4;
  --sage:#b6c5ab;
  --forest:#22382a;
  --moss:#536b4c;
  --clay:#9b674b;
  --line:rgba(38,48,40,.16);
  --soft-line:rgba(38,48,40,.09);
  --shadow:0 32px 90px rgba(38,48,40,.15);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:var(--cream);
  font-family:"Atkinson Hyperlegible Next","Atkinson Hyperlegible",Avenir,"Avenir Next","Segoe UI",Arial,system-ui,sans-serif;
  font-size:18px;
  line-height:1.74;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,253,247,.75),rgba(255,253,247,.2) 44%,rgba(182,197,171,.18));
}
a{color:inherit;text-underline-offset:.18em}
.site-header{
  position:sticky;top:0;z-index:20;
  display:flex;justify-content:space-between;align-items:center;
  padding:16px clamp(22px,5vw,72px);
  background:rgba(245,239,228,.88);
  border-bottom:1px solid var(--soft-line);
  backdrop-filter:blur(18px);
}
.brand{text-decoration:none;display:grid;line-height:1.12}.brand-name{font-weight:760}.brand-sub{font-size:.82rem;color:var(--muted);font-weight:640}.nav{display:flex;gap:28px;align-items:center;font-size:.95rem;font-weight:670}.nav a{text-decoration:none;padding:10px 0;border-bottom:2px solid transparent;color:var(--muted);transition:color .2s ease,border-color .2s ease}.nav a:hover,.nav a.active,.nav a[aria-current="page"]{color:var(--forest);border-bottom-color:var(--forest)}

.hero{
  min-height:calc(100vh - 74px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.78fr);
  gap:clamp(40px,6vw,96px);
  align-items:center;
  padding:clamp(46px,7vw,92px) clamp(22px,5vw,72px) clamp(70px,9vw,120px);
}
.hero-copy{max-width:850px}.eyebrow{margin:0 0 18px;color:var(--clay);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;font-weight:760}.hero h1{font-size:clamp(3.7rem,8vw,8.4rem);line-height:.98;letter-spacing:-.035em;font-weight:650;margin:0 0 34px;max-width:12ch}.lead{font-size:clamp(1.25rem,2.05vw,1.62rem);line-height:1.6;color:#455149;max-width:760px;margin:0 0 38px}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.button{border:0;border-radius:999px;padding:15px 24px;font:inherit;font-weight:730;text-decoration:none;cursor:pointer}.button.primary{background:var(--forest);color:white;box-shadow:0 12px 34px rgba(34,56,42,.18)}.text-link{font-weight:720;text-decoration-thickness:1px}.hero-portrait{margin:0;position:relative}.hero-portrait:before{content:"";position:absolute;inset:7% -8% -6% 12%;background:var(--sage);border-radius:48% 48% 36% 36%;z-index:-1;opacity:.55}.hero-portrait img{display:block;width:100%;height:min(78vh,820px);object-fit:cover;object-position:center 34%;border-radius:44px;box-shadow:var(--shadow)}

.quiet-intro{padding:clamp(64px,9vw,120px) clamp(22px,12vw,210px);background:var(--paper);border-top:1px solid var(--soft-line);border-bottom:1px solid var(--soft-line)}.quiet-intro p{font-size:clamp(1.55rem,3vw,3.1rem);line-height:1.32;font-weight:500;max-width:1180px;margin:0 auto;color:#2e3a31;text-align:left}

.editorial-section{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:clamp(38px,7vw,110px);padding:clamp(76px,10vw,140px) clamp(22px,5vw,72px);max-width:1380px;margin:auto}.section-title{max-width:560px}.sticky-title{position:sticky;top:110px;align-self:start}.section-title h2,.image-text h2,.topics h2,.contact h2{font-size:clamp(2.25rem,4.6vw,4.5rem);line-height:1.06;letter-spacing:-.025em;font-weight:630;margin:0 0 24px}.section-title p:not(.eyebrow),.contact-intro p{font-size:1.12rem;color:var(--muted);margin:0}.benefit-list{display:grid;gap:0;border-top:1px solid var(--line)}.benefit-list article{display:grid;grid-template-columns:72px 210px minmax(0,1fr);gap:26px;align-items:start;padding:34px 0;border-bottom:1px solid var(--line)}.benefit-list span{font-weight:760;color:var(--clay)}h3{font-size:1.28rem;line-height:1.25;font-weight:740;margin:0}.benefit-list p,.offer-row p,.text-column p,.image-text p{margin:0;color:var(--muted)}

.large-image-section{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(38px,7vw,98px);align-items:center;background:var(--forest);color:#fff8ec;padding:clamp(62px,8vw,100px) clamp(22px,5vw,72px)}.large-image-section figure{margin:0}.large-image-section img{width:100%;height:min(72vh,760px);object-fit:cover;object-position:center 30%;border-radius:34px;box-shadow:0 28px 80px rgba(0,0,0,.28)}.image-text{max-width:720px}.image-text p{font-size:1.18rem;color:rgba(255,248,236,.78)}.large-image-section .eyebrow{color:#e3b998}

.offer-content{border-top:1px solid var(--line)}.offer-row{padding:34px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:220px 1fr;gap:30px}.offer-note{margin-top:16px!important;color:var(--ink)!important}.offer-note strong{font-weight:760;color:var(--forest)}.price-block{margin-top:42px;padding:38px 42px;background:var(--paper);border:1px solid var(--line);border-radius:34px;box-shadow:0 20px 60px rgba(38,48,40,.09)}.price-block p{font-weight:760;color:var(--muted);margin:0}.price-block strong{display:block;font-size:clamp(4rem,8vw,7rem);line-height:.95;letter-spacing:-.04em;font-weight:650;color:var(--forest);margin:10px 0}.price-block span{display:block;color:var(--muted)}

.topics{background:var(--sand);padding:clamp(72px,10vw,128px) clamp(22px,5vw,72px)}.topics-inner{max-width:1180px;margin:auto}.topics h2{max-width:820px}.topic-list{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}.topic-list span{background:rgba(255,253,247,.64);border:1px solid rgba(38,48,40,.12);padding:10px 16px;border-radius:999px;font-weight:650;color:#435044}

.text-column{max-width:780px}.text-column p{font-size:1.13rem;margin:0 0 25px}.quote-band{padding:clamp(70px,11vw,150px) clamp(22px,12vw,220px);background:var(--forest);color:#fff8ec}.quote-band p{font-size:clamp(2rem,4.4vw,4.9rem);line-height:1.08;letter-spacing:-.03em;font-weight:600;margin:0;max-width:1160px}

.faq{grid-template-columns:.65fr 1.35fr}.faq-list{display:grid;gap:12px}.faq-list details{background:rgba(255,253,247,.62);border:1px solid var(--line);border-radius:22px;padding:23px 25px}.faq-list summary{font-size:1.12rem;font-weight:740;cursor:pointer}.faq-list p{margin:12px 0 0;color:var(--muted)}

.contact{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:clamp(38px,7vw,110px);padding:clamp(76px,10vw,140px) clamp(22px,5vw,72px);max-width:1280px;margin:auto}.contact-details{background:var(--paper);border:1px solid var(--line);border-radius:38px;padding:clamp(30px,4vw,48px);box-shadow:var(--shadow)}.contact-details h3{font-size:1.8rem;margin-bottom:18px}.contact-details>p{font-size:1.25rem;font-weight:760;margin:.2rem 0}.address-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:30px 0;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.address-grid p{margin:0;color:var(--muted)}.address-grid strong{color:var(--ink)}.form{display:grid;gap:14px}.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}.form label span{display:block;font-size:.88rem;color:#59645c;font-weight:760;margin-bottom:6px}.form input,.form textarea{width:100%;border:1px solid var(--line);border-radius:15px;background:#fff;padding:13px 14px;color:var(--ink);font:inherit}.form input:focus,.form textarea:focus{outline:3px solid rgba(182,197,171,.55);border-color:var(--moss)}.check{display:flex;gap:10px}.check input{width:auto;margin-top:8px}.check span{font-weight:520!important;color:var(--muted)!important}.form small{color:var(--muted)}
.footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:36px clamp(22px,5vw,72px);border-top:1px solid var(--line);color:var(--muted);font-size:.95rem}.footer p{margin:0}.footer nav{display:flex;gap:18px}.legal{max-width:900px;margin:auto;padding:70px 22px}.legal h1{font-size:clamp(2.4rem,5vw,4.2rem);font-weight:650;line-height:1.08}.legal h2{font-size:1.9rem;font-weight:650;margin-top:42px}.legal p,.legal li{color:#4e5a53}.notice{background:#fff8e9;border:1px solid #ebd7ad;border-radius:22px;padding:18px;margin:28px 0;color:#6c4c1f}
@media(max-width:980px){.nav{display:none}.hero,.editorial-section,.large-image-section,.contact{grid-template-columns:1fr}.hero{min-height:auto}.hero-portrait img{height:auto}.sticky-title{position:static}.benefit-list article,.offer-row{grid-template-columns:1fr;gap:10px}.section-title h2,.image-text h2,.topics h2,.contact h2{max-width:760px}.address-grid{grid-template-columns:1fr}.quote-band p{text-align:left}.footer{display:block}.footer nav{margin-top:12px}}
@media(max-width:560px){body{font-size:17px}.site-header{padding:14px 18px}.hero h1{font-size:3.45rem}.button{width:100%;text-align:center}.text-link{width:100%;text-align:center}.price-block{padding:30px 24px}.contact-details{border-radius:28px}}

/* Konzeptseite */
.concept-hero{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:clamp(38px,7vw,98px);
  align-items:end;
  padding:clamp(90px,12vw,165px) clamp(22px,5vw,72px) clamp(62px,8vw,100px);
  background:linear-gradient(135deg,var(--cream),var(--paper));
  border-bottom:1px solid var(--soft-line);
}
.concept-hero h1{font-size:clamp(3.3rem,8vw,7.8rem);line-height:.96;letter-spacing:-.045em;font-weight:650;margin:0 0 24px;color:var(--forest)}
.concept-hero p{font-size:clamp(1.18rem,2vw,1.55rem);color:var(--muted);max-width:760px;margin:0}
.concept-hero .concept-card{background:var(--paper);border:1px solid var(--line);border-radius:38px;padding:clamp(28px,4vw,48px);box-shadow:var(--shadow)}
.concept-card strong{display:block;font-size:clamp(2rem,4vw,4rem);line-height:1.05;letter-spacing:-.03em;color:var(--forest);font-weight:650;margin-bottom:20px}
.concept-body{max-width:1180px;margin:auto;padding:clamp(72px,10vw,130px) clamp(22px,5vw,72px)}
.concept-block{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(34px,7vw,95px);padding:clamp(48px,7vw,82px) 0;border-bottom:1px solid var(--line)}
.concept-block:first-child{padding-top:0}
.concept-block h2{font-size:clamp(2.2rem,4.6vw,4.4rem);line-height:1.06;letter-spacing:-.025em;font-weight:630;margin:0;color:var(--forest)}
.concept-text p,.concept-text li{font-size:1.14rem;color:var(--muted)}
.concept-text p:first-child{margin-top:0}
.concept-text ul{padding-left:1.2rem;margin:20px 0}
.concept-quote{margin:clamp(52px,8vw,90px) 0;padding:clamp(36px,6vw,70px);border-radius:42px;background:var(--forest);color:#fff8ec}
.concept-quote p{font-size:clamp(2rem,4.2vw,4.8rem);line-height:1.08;letter-spacing:-.03em;font-weight:600;margin:0}
.concept-teaser{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) auto;gap:clamp(24px,5vw,64px);align-items:center;max-width:1280px;margin:0 auto;padding:clamp(60px,8vw,96px) clamp(22px,5vw,72px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.concept-teaser h2{font-size:clamp(2rem,3.6vw,3.6rem);line-height:1.08;letter-spacing:-.025em;font-weight:630;margin:0;color:var(--forest)}
.concept-teaser p:not(.eyebrow){color:var(--muted);font-size:1.08rem;margin:0}.button.secondary{background:transparent;color:var(--forest);border:1px solid var(--forest)}
@media(max-width:980px){.concept-hero,.concept-block,.concept-teaser{grid-template-columns:1fr}.concept-hero{align-items:start}.concept-hero h1{font-size:3.8rem}.concept-teaser .button{width:auto;justify-self:start}}


/* Layout-Fix Konzeptseite: konsistente Innenabstände und Container wie auf der Startseite */
.concept-page{
  overflow:hidden;
}
.concept-container{
  width:min(1280px, calc(100% - 72px));
  margin-left:auto;
  margin-right:auto;
}
main.concept-page .concept-hero{
  padding:clamp(86px,11vw,150px) 0 clamp(56px,7vw,92px);
  background:transparent;
  border-bottom:0;
}
main.concept-page .concept-hero::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:74px;
  height:clamp(420px,58vw,720px);
  background:linear-gradient(135deg,var(--cream),var(--paper));
  border-bottom:1px solid var(--soft-line);
  z-index:-1;
}
main.concept-page .concept-hero{
  position:relative;
}
main.concept-page .concept-card{
  align-self:end;
}
main.concept-page .concept-body{
  padding:clamp(72px,10vw,130px) 0 clamp(80px,10vw,130px);
}
main.concept-page .concept-block{
  padding-left:0;
  padding-right:0;
}
main.concept-page .concept-text{
  max-width:760px;
}
main.concept-page .concept-actions{
  margin-top:48px;
}
@media(max-width:980px){
  .concept-container{width:min(100% - 44px, 1280px)}
  main.concept-page .concept-hero::before{top:66px;height:760px}
}
@media(max-width:560px){
  .concept-container{width:min(100% - 34px, 1280px)}
  main.concept-page .concept-hero h1{font-size:3.35rem}
}


/* Feinschliff: aktive Navigation und Konzept-Abschnitte */
.concept-preview{
  background:rgba(255,253,247,.42);
  border-top:1px solid var(--soft-line);
  border-bottom:1px solid var(--soft-line);
}
.concept-preview .button.secondary{
  display:inline-flex;
  margin-top:10px;
}
.concept-preview-text p{
  font-size:1.13rem;
}
.concept-preview-text p + p{
  margin-top:28px;
}
.concept-teaser{
  /* alte Teaser-Gestaltung deaktivieren, falls Browser-Cache alte Klassen enthält */
  font-family:inherit;
}
main.concept-page .concept-block{
  align-items:start;
}
main.concept-page .concept-text p,
main.concept-page .concept-text li{
  max-width:720px;
  line-height:1.72;
}
main.concept-page .concept-text p + p{
  margin-top:1.1rem;
}
.concept-note{
  max-width:920px;
  margin:clamp(42px,7vw,78px) auto;
  padding:clamp(30px,5vw,54px);
  border-radius:34px;
  background:var(--paper);
  border:1px solid var(--line);
  box-shadow:0 18px 60px rgba(38,48,40,.08);
}
.concept-note p{
  margin:0;
  color:var(--forest);
  font-size:clamp(1.45rem,2.8vw,2.65rem);
  line-height:1.28;
  letter-spacing:-.018em;
  font-weight:560;
}
@media(max-width:980px){
  .concept-preview{grid-template-columns:1fr;}
}


/* Feinschliff: Über-mich früher im Flow und zweites Bild zurückhaltender */
.about{
  background:var(--paper);
  border-top:1px solid var(--soft-line);
  border-bottom:1px solid var(--soft-line);
}

.compact-image-section{
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.18fr);
  padding:clamp(54px,7vw,86px) clamp(22px,5vw,72px);
}
.compact-image-section figure{
  max-width:480px;
  justify-self:center;
}
.compact-image-section img{
  height:min(54vh,520px);
  object-position:center 36%;
  border-radius:30px;
}
.compact-image-section .image-text{
  max-width:760px;
}

@media(max-width:980px){
  .compact-image-section{
    grid-template-columns:1fr;
  }
  .compact-image-section figure{
    max-width:560px;
    justify-self:start;
  }
  .compact-image-section img{
    height:auto;
  }
}
