/* Moos & Mauer: landscape first, practical garden craftsmanship. */
:root{--ink:#20392a;--ink-2:#274432;--ink-3:#14281d;--moss:#315c3e;--moss-2:#396848;--fern:#607956;--paper:#f5f6ef;--paper-2:#e8eddf;--sand:#dfe7d7;--clay:#315c3e;--clay-ink:#315c3e;--clay-soft:#c8db9b;--lime:#d3e6a5;--muted:#5c695e;--muted-on-dark:#c8d3c4;--font-display:var(--font-body);--fs-h2:clamp(36px,4.2vw,64px);--section-y:clamp(64px,7vw,110px);--radius:3px;--radius-lg:3px;--header-h:80px}
html{scroll-behavior:auto}
body{font-size:16px}
.site-header{position:sticky;background:var(--paper);border-bottom:1px solid var(--line)}
.site-header::before{display:none}
.site-header.is-hidden{transform:none}
.brand-word{font-family:var(--font-body);font-weight:650;font-size:21px;letter-spacing:-1px}
.brand-word i{font-style:normal;font-weight:400;color:var(--moss)}
.brand-mark{width:28px}
.nav-list a{font-size:13px}
.btn{border-radius:3px;box-shadow:none;font-weight:600}
.btn--clay{background:var(--moss);border-color:var(--moss)}
.section-title{font-weight:550;letter-spacing:-.055em;line-height:1.07}
.section-title em{font-style:normal;font-weight:550;color:var(--fern)}
.section-label{font-size:11px;letter-spacing:.14em;font-weight:650}
.section-label::before,.section-label::after{display:none}
.section-intro{font-size:17px;line-height:1.65}
.landscape-hero{padding:0;position:relative;isolation:isolate;color:#fff;min-height:670px;display:flex;flex-direction:column;justify-content:flex-end;background:var(--ink)}
.landscape-image{position:absolute;inset:0;width:100%;height:calc(100% - 104px);object-fit:cover;object-position:50% 55%;z-index:-2}
.landscape-shade{position:absolute;inset:0 0 104px;z-index:-1;background:linear-gradient(180deg,#13241715 25%,#132417bf 100%)}
.landscape-content{padding-top:32px;padding-bottom:42px;display:flex;flex-direction:column;justify-content:space-between;min-height:566px;width:100%}
.landscape-label{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#fff}
.landscape-bottom{display:grid;grid-template-columns:1fr 290px;gap:40px;align-items:end}
.landscape-bottom h1{font-family:var(--font-body);font-size:clamp(45px,6.4vw,94px);font-weight:500;letter-spacing:-.045em;line-height:1.02;margin:0 0 22px;max-width:12em}
.landscape-bottom p{font-size:17px;line-height:1.6;color:#fff;margin:0}
.garden-cta{display:grid;grid-template-columns:1fr auto;gap:22px 8px;padding:27px;background:var(--lime);color:var(--ink);text-decoration:none;border-radius:3px}
.garden-cta>span:first-child{font-size:20px;line-height:1.3;font-weight:550;letter-spacing:-.025em}
.garden-cta-arrow{font-size:40px;line-height:1}
.garden-cta small{font-size:12px;border-top:1px solid #20392a40;padding-top:15px;grid-column:1/-1}
.garden-cta:hover{background:#e5f3c7}
.garden-paths{display:grid;grid-template-columns:repeat(3,1fr);background:var(--ink);min-height:104px;padding-inline:var(--gutter)}
.garden-paths a{display:grid;grid-template-columns:1fr auto;align-content:center;gap:9px;padding:20px 28px;border-right:1px solid #ffffff25;font-size:16px;color:#fff;text-decoration:none}
.garden-paths a:first-child{padding-left:0}.garden-paths a:last-child{border:0}
.garden-paths a>span:first-child{grid-column:1/-1;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--lime)}
.garden-path-short{display:none}
.garden-paths a:hover{color:var(--lime)}
.projekte{background:var(--paper)}
.projekte>.container>.section-head{display:grid;grid-template-columns:1.3fr 1fr;column-gap:7vw;align-items:end;margin-bottom:40px}
.projekte .section-label{grid-column:1/-1;margin-bottom:22px}
.projekte .section-intro{margin-top:0}
.compare{border-radius:3px;box-shadow:none}
.compare-hint{position:absolute;bottom:16px;left:50%;translate:-50% 0;padding:7px 12px;background:var(--ink);color:var(--paper);border-radius:3px;font-size:12px;font-weight:500;white-space:nowrap;pointer-events:none}
.contact-demo-note{margin-top:16px;font-size:14px;color:var(--muted-on-dark)}
.compare-caption{border-bottom:1px solid var(--line)}
.project-grid{gap:32px;margin-top:48px}
.project-card{background:none;border:0;box-shadow:none}
.project-media,.project-media img{border-radius:3px}
.project-title{font-size:25px;font-weight:550;letter-spacing:-.03em}
.leistungen{background:var(--paper-2)}
.leistungen .section-head{display:grid;grid-template-columns:1fr 1fr;gap:20px 8vw;align-items:end;margin-bottom:44px}
.leistungen .section-label{grid-column:1/-1}
.leistungen .section-intro{margin:0}
.service-name{font-size:clamp(22px,2.4vw,32px);font-weight:500;letter-spacing:-.035em}
.service-num{color:var(--fern);font-family:monospace;font-size:12px}
.service-price{font-size:13px}
.service-icon{border-radius:3px}
.service-media img{border-radius:3px}
.service-toggle{padding-block:24px}
.jahreskreis{background:var(--ink)}
.jahreskreis .section-title em{color:var(--lime)}
.season-tabs{border-radius:3px}
.season-tabs [role=tab]{border-radius:2px;font-size:12px;min-height:44px}
.season-media,.season-media img{border-radius:3px}
.season-body h3{font-weight:500;font-size:28px;letter-spacing:-.03em}
.preise{background:#e8eddf}
.preise .section-title em{color:var(--fern)}
.plan{border-radius:3px;box-shadow:none;border:1px solid #ffffff2b}
.plan-name{font-weight:600;font-size:26px}
.plan-price{font-weight:550;letter-spacing:-.05em}
.plan--featured{transform:none}
.calc{border:1px solid var(--line);border-radius:3px;background:var(--paper);box-shadow:none}
.calc-title{font-weight:550;letter-spacing:-.04em}
.calc-result{border-radius:3px}
.segmented,.segmented label{border-radius:3px}
.haltung{background:var(--paper)}
.haltung-figure img{border-radius:3px}
.statement{font-family:"Fraunces",Georgia,serif;font-size:clamp(28px,3.5vw,48px);line-height:1.25}
.principle h3{font-weight:600;letter-spacing:-.025em}
.ablauf{background:var(--paper-2)}
.step-title{font-weight:550}
.step-num{border-radius:3px}
.stimmen{background:var(--moss)}
.quote{border-radius:3px;box-shadow:none;border:1px solid var(--line)}
.quote blockquote{font-size:23px;line-height:1.4}
.faq{background:var(--paper)}
.faq-item{border-radius:0}
.kontakt{background:var(--ink)}
.kontakt .section-title em{color:var(--lime)}
.contact-form,.contact-card,input:not([type=range]),select,textarea{border-radius:3px}
.site-footer{background:var(--ink-3)}
.footer-word{font-family:var(--font-body);font-weight:600;letter-spacing:-.07em}
.seal,.marquee{display:none}
.js .reveal,.js .line-inner{opacity:1;transform:none;clip-path:none}
@media(max-width:959px){.landscape-hero{min-height:660px}.landscape-content{min-height:556px}.landscape-bottom{grid-template-columns:1fr 240px;gap:25px}.garden-cta{padding:22px}.garden-cta>span:first-child{font-size:18px}.garden-paths a{padding:20px 16px;font-size:14px}.projekte>.container>.section-head,.leistungen .section-head{grid-template-columns:1fr;gap:18px}.projekte .section-label{margin-bottom:0}.landscape-bottom h1{font-size:64px}}
@media(max-width:650px){.landscape-hero{min-height:0}.landscape-image{height:560px;object-position:62% 50%}.landscape-shade{inset:0 0 auto;height:560px;background:linear-gradient(180deg,#13241722,#132417c9)}.landscape-content{min-height:560px;padding:25px 22px 28px}.landscape-bottom{grid-template-columns:1fr;gap:25px}.landscape-bottom h1{font-size:49px;margin-bottom:18px}.landscape-bottom p{font-size:15px}.garden-cta{grid-template-columns:1fr auto;padding:16px 18px;gap:8px}.garden-cta>span:first-child{font-size:16px}.garden-cta br{display:none}.garden-cta small{padding-top:0;border:0;grid-column:1}.garden-cta-arrow{grid-column:2;grid-row:1/3;font-size:32px;align-self:center}.garden-paths{grid-template-columns:1fr;padding-inline:22px}.garden-paths a,.garden-paths a:first-child{padding:19px 0;border:0;border-bottom:1px solid #ffffff25;font-size:15px;gap:6px}.landscape-label{font-size:9px;letter-spacing:.1em}.desktop-break{display:none}.service-toggle{padding-block:20px}.service-price{font-size:12px}.section-title{font-size:36px}.brand-word{font-size:18px}.plan--featured{transform:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Keep the mobile path from the garden photo to the comparison short. */
@media(max-width:650px){
  .garden-paths{grid-template-columns:repeat(3,minmax(0,1fr));min-height:64px;padding-inline:22px}
  .garden-paths a,.garden-paths a:first-child{display:flex;align-items:center;justify-content:center;gap:8px;min-height:64px;padding:12px 8px;border-bottom:0;border-right:1px solid #ffffff25;font-size:14px;line-height:1.25;white-space:nowrap}
  .garden-paths a:last-child{border-right:0}
  .garden-paths .garden-path-detail{display:none}
  .garden-path-short{display:inline;font-weight:600}
  .garden-paths a:focus-visible{outline-color:var(--lime);outline-offset:-4px}
  .projekte{padding-top:32px}
  .projekte>.container>.section-head{gap:10px;margin-bottom:20px}
  .projekte .section-title{font-size:30px;line-height:1.12}
  .projekte .section-intro{max-width:32rem;font-size:15px;line-height:1.5}
  .compare-hint{bottom:12px}
  .compare-meta dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}
  .compare-meta dl>div:last-child{grid-column:1/-1}
  .legal h2{font-size:clamp(26px,7vw,36px)}
}

.menu-open .site-header{background:var(--ink);border-color:var(--line-on-dark)}
.menu-open .brand-word{color:var(--paper)}
.mobile-menu:not(.is-open){pointer-events:none}
.mobile-menu.is-open{pointer-events:auto}

.kontakt-info,.contact-form{min-width:0}
@media(max-width:959px){.kontakt-grid{grid-template-columns:minmax(0,1fr)}.contact-list li{grid-template-columns:minmax(0,1fr)}}
@media(max-width:500px){.contact-list a{font-size:17px}.contact-list address,.contact-list li>span{font-size:14px;overflow-wrap:anywhere}.contact-form{padding:22px}.section-title{letter-spacing:-.04em}}

/* Compact footer: navigation and contact stay in focus. */
.site-footer{padding-block:55px 30px}
.site-footer .footer-grid{border-top:1px solid var(--line-on-dark);padding-top:30px}
.site-footer .footer-claim{font-size:clamp(24px,2.7vw,38px);line-height:1.2}
