:root{--paper: #f3f6f0;--paper-deep: #dfe8d8;--ink: #17251b;--muted: #526054;--line: #c9d4c4;--stone: #9b9384;--earth: #74644f;--moss: #1f432b;--moss-deep: #12311d;--moss-soft: #527b43;--leaf: #b5cf00;--sand: #c7b99f;--white: #fffaf1;--max: 1180px;--gutter: clamp(20px, 4vw, 56px);font-family:Segoe UI,Inter,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper);color:var(--ink)}body{margin:0;font-size:17px;line-height:1.65;background:var(--paper);text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:clamp(208px,19vw,280px) auto minmax(0,1fr);column-gap:clamp(14px,1.8vw,26px);align-items:center;min-height:96px;padding:14px var(--gutter);background:#f3f6f0f0;border-bottom:1px solid rgba(201,212,196,.9);backdrop-filter:blur(16px)}.header-phone{position:static;grid-column:2;display:inline-flex;gap:8px;align-items:baseline;color:var(--moss-deep);font-size:.78rem;font-weight:720;letter-spacing:.025em}.header-phone span{color:var(--muted);font-size:.7rem;font-weight:600;text-transform:uppercase}.header-phone:hover{text-decoration:underline;text-underline-offset:3px}.brand--circle{position:absolute;top:0;left:0;z-index:2;display:block;width:clamp(208px,19vw,280px);line-height:0}.brand--circle img{width:100%;height:auto}.main-nav{grid-column:3;min-width:0;display:flex;justify-content:flex-end;gap:clamp(16px,2.2vw,30px);padding-top:0;padding-right:0;color:var(--muted);font-size:.86rem;font-weight:650;letter-spacing:.03em}.main-nav a,.footer-links a{border-bottom:1px solid transparent}.main-nav a.is-active,.main-nav .service-nav__trigger.is-active{color:var(--moss-deep);border-color:currentColor}.service-nav{position:relative}.service-nav__trigger{display:flex;align-items:center;gap:6px;padding-bottom:1px;border:0;cursor:pointer;background:transparent;color:inherit;font:inherit;border-bottom:1px solid transparent}.service-nav__trigger:after{content:"↓";font-size:.78em;line-height:1}.service-nav__trigger[aria-expanded=true]:after{transform:rotate(180deg)}.service-nav__links{position:absolute;top:100%;right:-16px;z-index:12;display:grid;min-width:265px;padding:8px 0;border:1px solid var(--line);background:var(--white);box-shadow:0 14px 28px #12311d24;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}.service-nav:hover .service-nav__links,.service-nav:focus-within .service-nav__links,.service-nav:has(.service-nav__trigger[aria-expanded=true]) .service-nav__links{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.service-nav__links a{padding:10px 16px;border:0;color:var(--moss-deep);font-size:.82rem;font-weight:620;letter-spacing:0}.service-nav__links a:first-child{border-bottom:1px solid var(--line);font-weight:720}.service-nav__links a:hover,.service-nav__links a.is-active{background:var(--paper-deep)}.mobile-nav{display:none}.main-nav a:hover,.footer-links a:hover{border-color:currentColor}main{min-height:70vh}.section,.hero,.page-hero,.site-footer{padding-left:var(--gutter);padding-right:var(--gutter)}.hero{display:grid;grid-template-columns:minmax(0,.78fr) minmax(360px,1.22fr);gap:clamp(28px,5vw,70px);max-width:calc(var(--max) + var(--gutter) * 2);margin:0 auto;padding-top:clamp(50px,7.5vw,96px);padding-bottom:clamp(54px,7.5vw,96px);align-items:end}.hero-copy{padding-bottom:clamp(10px,3vw,46px)}.hero--home{max-width:none;grid-template-columns:minmax(480px,.9fr) minmax(0,1.1fr);align-items:start;padding-left:max(var(--gutter),calc((100vw - var(--max)) / 2));padding-right:max(var(--gutter),calc((100vw - var(--max)) / 2));color:var(--white);background:radial-gradient(circle at 10% 105%,rgba(181,207,0,.18),transparent 30%),linear-gradient(122deg,var(--moss-deep),var(--moss) 65%,#295236)}.hero--home .kicker{color:var(--leaf)}.hero--home h1{color:var(--white);max-width:none;font-size:clamp(3.35rem,4.3vw,4.6rem);line-height:.98}.hero--home .lead{color:#fbfdf9c7}.kicker{margin:0 0 18px;color:var(--moss-soft);font-size:.78rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3{margin:0;color:var(--ink);font-weight:700;line-height:1.02;letter-spacing:0}h1{max-width:8.5em;font-size:clamp(3rem,5.4vw,6rem)}h2{max-width:11em;font-size:clamp(2.1rem,5vw,4.8rem)}h3{font-size:clamp(1.25rem,2.3vw,2rem)}p{margin:0}.lead{max-width:620px;margin-top:26px;color:var(--muted);font-size:clamp(1.05rem,1.6vw,1.28rem)}.meta-line{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:32px;color:#fbfdf9c2;font-size:.82rem;font-weight:700}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 24px;margin-top:30px}.hero-actions .button{min-width:190px}.meta-line span{white-space:nowrap}.hero--home .meta-line{color:#fbfdf9c2}.hero--home .meta-line span+span:before{content:"·";padding-right:18px;color:var(--leaf)}.button--ghost{border-color:#fbfdf9b8;color:var(--white);background:transparent}.button--ghost:hover{border-color:var(--white);background:#fbfdf91a}.material-image{position:relative;min-height:clamp(360px,52vw,640px);margin:0;overflow:hidden;background:var(--stone)}.material-image:before{content:"";position:absolute;inset:0;opacity:.72;background:linear-gradient(115deg,rgba(32,35,31,.72),transparent 54%),repeating-linear-gradient(90deg,transparent 0 28px,rgba(255,250,241,.08) 28px 29px),linear-gradient(150deg,var(--sand),var(--earth))}.material-image--forest:before{background:linear-gradient(115deg,rgba(21,30,22,.78),transparent 58%),repeating-linear-gradient(0deg,transparent 0 38px,rgba(255,250,241,.06) 38px 39px),linear-gradient(145deg,#1f2a1f,#53613d 56%,#9b8d67)}.material-image--earth:before{background:linear-gradient(115deg,rgba(40,30,22,.7),transparent 58%),repeating-linear-gradient(45deg,rgba(255,250,241,.06) 0 1px,transparent 1px 32px),linear-gradient(145deg,#5b4938,#9b8768 58%,#c8b99a)}.material-grid{position:absolute;inset:24px;display:grid;grid-template-columns:1fr .7fr;grid-template-rows:1fr .46fr;gap:14px;opacity:.34}.material-grid span{border:1px solid rgba(255,250,241,.58)}.material-grid span:first-child{grid-row:span 2}.material-image figcaption{position:absolute;left:24px;bottom:22px;max-width:280px;color:var(--white);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.photo-panel{position:relative;margin:0;overflow:hidden;background:var(--paper-deep)}.photo-panel img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease}.photo-panel:hover img{transform:scale(1.025)}.photo-panel--wide{aspect-ratio:16 / 10}.photo-panel--portrait{aspect-ratio:4 / 5}.photo-panel--square{aspect-ratio:1}.photo-panel figcaption{position:absolute;left:18px;bottom:16px;max-width:calc(100% - 36px);padding:8px 10px;color:var(--paper);background:#20231fb8;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.magazine-lead{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:end}.magazine-stack{display:grid;gap:18px}.image-strip{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:stretch;margin-top:34px}.welcome-section{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(0,1fr);gap:clamp(28px,7vw,110px);align-items:center;padding-top:clamp(42px,5vw,68px);padding-bottom:clamp(42px,5vw,68px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.welcome-section__mark{color:var(--leaf);font-size:clamp(4.2rem,10vw,8rem);font-weight:760;line-height:.8;letter-spacing:-.07em}.welcome-section h2{max-width:10em}.welcome-section>div:last-child>p:not(.kicker){max-width:610px;margin-top:20px;color:var(--muted);font-size:1.1rem}.editorial-link{display:grid;grid-template-columns:.72fr 1fr;gap:clamp(24px,5vw,60px);align-items:center;padding:clamp(28px,5vw,58px) 0;border-top:1px solid var(--line)}.editorial-link:last-child{border-bottom:1px solid var(--line)}.editorial-link p{color:var(--muted)}.editorial-link .button{width:fit-content;margin-top:24px}.section{max-width:calc(var(--max) + var(--gutter) * 2);margin:0 auto;padding-top:clamp(48px,7vw,94px);padding-bottom:clamp(48px,7vw,94px)}.section--tint{max-width:none;background:var(--paper-deep)}.section--tint>*{max-width:var(--max);margin-left:auto;margin-right:auto}.section.welcome-section{padding-top:clamp(42px,5vw,68px);padding-bottom:clamp(42px,5vw,68px)}.split{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:clamp(34px,7vw,96px)}.company-profile{align-items:start}.company-image{margin:0;aspect-ratio:3 / 2;overflow:hidden;background:var(--paper-deep)}.company-image img{width:100%;height:100%;object-fit:cover;object-position:58% center}.section-intro p:not(.kicker){max-width:570px;margin-top:22px;color:var(--muted);font-size:1.05rem}.section-intro h2{font-weight:760;letter-spacing:-.03em}.service-index{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:48px minmax(0,1fr) minmax(260px,340px);gap:clamp(18px,3vw,42px);align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.service-number,.service-arrow,.project-card small,.fact-list dt{color:var(--moss-soft);font-size:.78rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.service-row strong{display:block;font-size:clamp(1.25rem,2.4vw,2.1rem);line-height:1.15}.service-row small{display:block;max-width:650px;margin-top:8px;color:var(--muted);font-size:.98rem;line-height:1.5}.service-preview{display:grid;grid-template-columns:minmax(172px,1fr) auto;gap:16px;align-items:center}.service-preview img{width:100%;aspect-ratio:16 / 9;object-fit:cover;filter:saturate(.9)}.service-row:hover .service-preview img{filter:saturate(1)}.home-service-index{margin-top:32px}.home-service-list{display:grid;grid-template-columns:1fr;border-top:1px solid var(--line)}.home-service-card{display:grid;grid-template-columns:42px minmax(0,1fr) clamp(150px,16vw,196px) 18px;gap:18px;align-items:center;min-height:142px;padding:22px;border-right:0;border-bottom:1px solid var(--line)}.home-service-card:nth-child(2n){border-right:0}.home-service-card:last-child{border-right:0}.home-service-card:hover{background:var(--paper-deep)}.home-service-card__number,.home-service-card__arrow{color:var(--moss-soft);font-size:.8rem;font-weight:750;letter-spacing:.09em}.home-service-card strong,.home-service-card small{display:block}.home-service-card__copy{min-width:0}.home-service-card__thumb{width:100%;overflow:hidden;background:var(--paper-deep)}.home-service-card__thumb img{width:100%;aspect-ratio:16 / 9;object-fit:cover;filter:saturate(.9);transition:transform .5s ease,filter .5s ease}.home-service-card:hover .home-service-card__thumb img{transform:scale(1.025);filter:saturate(1)}.home-service-card__arrow{justify-self:end}.home-service-card strong{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.15}.home-service-card small{margin-top:10px;color:var(--muted);font-size:.94rem;line-height:1.5}.quote-panel{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(26px,5vw,70px);padding:clamp(26px,5vw,56px);border:1px solid var(--line);background:var(--white)}.quote-panel blockquote{margin:0;color:var(--ink);font-size:clamp(1.28rem,2vw,1.8rem);line-height:1.35}.quote-panel cite{display:block;margin-top:20px;color:var(--muted);font-style:normal}.fact-list{display:grid;gap:18px;margin:0}.fact-list div{display:grid;grid-template-columns:140px 1fr;gap:24px;padding-top:18px;border-top:1px solid var(--line)}.fact-list dd{margin:0;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{display:grid;gap:18px}.project-card .material-image{min-height:330px}.project-card h3{font-size:1.35rem}.project-card p{color:var(--muted)}.reference-project{display:grid;gap:clamp(34px,5vw,62px)}.reference-project__header{display:grid;gap:16px}.reference-project__header .kicker{margin:0}.reference-project__intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:clamp(28px,7vw,112px);align-items:start}.reference-project__intro h2{max-width:8.8em}.reference-project__intro>div:last-child>p{color:var(--muted);font-size:1.06rem}.reference-facts{display:grid;gap:10px;margin:24px 0 0;padding:0;list-style:none;color:var(--moss);font-size:.9rem;font-weight:700}.reference-facts li{padding-top:10px;border-top:1px solid var(--line)}.reference-gallery{display:grid;grid-template-columns:.74fr 1fr .74fr;gap:clamp(12px,2vw,24px);align-items:end}.reference-gallery .photo-panel--portrait{aspect-ratio:4 / 4.7}.page-hero{max-width:calc(var(--max) + var(--gutter) * 2);margin:0 auto;padding-top:clamp(54px,5.5vw,78px);padding-bottom:clamp(26px,3.5vw,42px)}.page-hero h1{max-width:10.8em;font-size:clamp(2.75rem,4.7vw,5.15rem)}.page-hero .lead{max-width:760px}.page-hero+.section{padding-top:clamp(24px,3vw,42px)}.project-page-hero{max-width:none;padding-left:max(var(--gutter),calc((100vw - var(--max)) / 2));padding-right:max(var(--gutter),calc((100vw - var(--max)) / 2));color:var(--white);background:var(--moss-deep)}.project-page-hero .kicker{color:var(--leaf)}.project-page-hero h1{color:var(--white)}.project-page-hero .lead{color:#fbfdf9c7}.section--services{padding-bottom:clamp(32px,4vw,52px)}.section--contact{padding-top:clamp(20px,2.5vw,34px)}.company-hero{padding-bottom:clamp(22px,2.5vw,34px)}.company-hero h1{margin-bottom:clamp(26px,3.5vw,44px)}.company-hero__intro{padding-top:20px;border-top:1px solid var(--line)}.company-hero__intro .lead{max-width:none;margin-top:0}.company-profile-section{padding-top:clamp(20px,2.5vw,34px)}.company-profile .text-columns>p:first-child{margin-top:0}.service-detail{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:clamp(34px,7vw,86px);align-items:start}.service-photo:before,.service-photo .material-grid{display:none}.service-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.detail-list{display:grid;gap:14px;margin:0;padding:0;list-style:none}.detail-list li{padding:18px 0;border-top:1px solid var(--line)}.quality-note{margin-top:36px;padding:28px;color:var(--paper);background:var(--moss)}.text-columns{columns:2 320px;column-gap:clamp(32px,5vw,72px);color:var(--muted)}.text-columns p+p{margin-top:18px}.company-statement{break-inside:avoid;color:var(--ink);font-weight:720}.contact-band{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(250px,.78fr) minmax(190px,.56fr);gap:0;padding:0;overflow:hidden;background:var(--white);border:1px solid var(--line)}.contact-band>h2{max-width:10em;align-self:center;margin:0;padding:clamp(34px,4vw,54px);color:var(--moss-deep);font-size:clamp(2.2rem,3.25vw,3.45rem);font-weight:720;line-height:.98}.contact-band__action{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:22px;margin:clamp(30px,3.5vw,48px) 0;padding:0 clamp(26px,3vw,42px);border-left:1px solid var(--line)}.contact-band__action p{max-width:28ch;margin:0;color:var(--muted)}.contact-band__image{min-height:238px;margin:0;overflow:hidden;background:var(--paper-deep)}.contact-band__image img{width:100%;height:100%;object-fit:cover;object-position:73% center}.request-form{display:grid;gap:clamp(16px,2vw,20px);padding:clamp(24px,4vw,44px);border:1px solid rgba(82,96,84,.28);background:var(--white)}.direct-contact{display:grid;grid-template-columns:minmax(210px,.62fr) minmax(0,1.38fr);gap:clamp(20px,3vw,42px);align-items:center;margin-bottom:clamp(22px,3vw,34px);padding:clamp(18px,2.5vw,28px);border:1px solid var(--line);background:var(--paper-deep)}.direct-contact h2{max-width:none;font-size:clamp(1.45rem,2.2vw,2rem)}.direct-contact__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.direct-contact__links a{display:grid;gap:3px;min-width:0;padding:12px 14px;border:1px solid rgba(82,96,84,.28);color:var(--moss-deep);background:var(--white);font-weight:720;overflow-wrap:anywhere}.direct-contact__links a:hover{border-color:var(--moss-deep)}.direct-contact__links span{color:var(--muted);font-size:.72rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px 18px}.request-form label{display:grid;gap:8px;color:var(--moss);font-size:.82rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.request-form input,.request-form textarea{width:100%;border:1px solid #bdcbbd;border-radius:0;padding:11px 13px;color:var(--ink);background:#f7faf4;font:inherit}.request-form input::placeholder,.request-form textarea::placeholder{color:#758176;opacity:1}.request-form input:focus-visible,.request-form textarea:focus-visible{outline:2px solid var(--moss-deep);outline-offset:1px;border-color:var(--moss-deep)}.form-grid--address{grid-template-columns:minmax(0,1.6fr) minmax(120px,.55fr) minmax(100px,.55fr) minmax(0,1fr)}.form-section-heading{padding-top:8px;border-top:1px solid var(--line)}.form-section-heading .kicker{margin:0}.form-heading{padding:18px 20px 22px;border-bottom:1px solid var(--line);text-align:center}.form-heading h2{margin:0;max-width:none;color:var(--moss-deep);font-size:clamp(1.45rem,3vw,2rem);font-weight:760}.form-heading p{margin:8px 0 0;color:var(--muted);font-size:.88rem}.form-heading span,.field-label>span,.choice-fieldset legend span,.privacy-check span span{color:#f00000}.field-label small{color:var(--muted);font-size:.84em;font-weight:560;letter-spacing:0;text-transform:none}.choice-fieldset{min-width:0;margin:0;padding:0;border:0}.choice-fieldset legend{margin-bottom:8px;color:var(--moss);font-size:.82rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.choice-grid label{display:flex!important;align-items:center;gap:9px!important;min-height:44px;padding:8px 11px;border:1px solid #bdcbbd;background:#f7faf4;font-size:.9rem!important;letter-spacing:0!important;text-transform:none!important}.choice-grid input{width:16px!important;height:16px;margin:0;padding:0!important;accent-color:var(--moss-deep)}.choice-grid small{margin-left:auto;color:var(--moss-deep);font-size:inherit;font-weight:inherit}.price-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);gap:18px 34px;padding:clamp(20px,3vw,30px);border:1px solid var(--line);background:#e7eee0}.price-summary .kicker,.price-summary__note,.delivery-status{margin:0}.price-summary__note,.delivery-status{color:var(--muted);line-height:1.5}.price-summary__note{margin-top:9px;max-width:32ch}.price-summary dl{display:grid;margin:0}.price-summary dl>div{display:flex;justify-content:space-between;gap:24px;padding:8px 0;border-bottom:1px solid var(--line)}.price-summary dt,.price-summary dd{margin:0}.price-summary dd{font-weight:720;text-align:right}.price-summary__total{color:var(--moss-deep);font-size:1.08rem}.delivery-status{grid-column:1 / -1;padding-top:14px;border-top:1px solid var(--line)}.delivery-status[data-state=inside]{color:var(--moss-deep)}.delivery-status[data-state=outside],.delivery-status[data-state=unclear],.delivery-status[data-state=offline]{color:#7a4e26}.delivery-status[data-state=unclear],.delivery-status[data-state=offline]{padding:14px 16px;border:1px solid rgba(122,78,38,.28);border-left:4px solid #9a6431;background:#fff8ef}.request-form input[aria-invalid=true],.request-form.was-validated input:invalid,.request-form.was-validated textarea:invalid{border:2px solid #f00000;background:#fff0f0;box-shadow:0 0 0 2px #f0000024}.request-form.was-validated .choice-grid label:has(input:invalid),.request-form.was-validated .privacy-check:has(input:invalid){border:2px solid #f00000;background:#fff0f0}.routing-attribution{grid-column:1 / -1;margin:-4px 0 0;color:var(--muted);font-size:.76rem}.routing-attribution a{text-decoration:underline;text-underline-offset:2px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.kaminholz-image img{width:100%;height:100%;object-fit:cover}.kaminholz-price-column{display:grid;grid-template-rows:auto 1fr;gap:clamp(22px,3vw,34px)}.kaminholz-price-card{display:flex;flex-direction:column;justify-content:space-between;padding:24px;border:1px solid rgba(82,96,84,.28);background:var(--white)}.kaminholz-price-card .kicker{margin-bottom:10px;color:var(--leaf)}.kaminholz-price-card__from{margin:0;color:var(--moss-deep);font-size:clamp(1.35rem,2.2vw,1.72rem);font-weight:560;line-height:1.25}.kaminholz-price-card__from strong{font-size:1.18em;font-weight:650}.kaminholz-price-card dl{display:grid;gap:12px;margin:20px 0}.kaminholz-price-card dl>div{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-top:10px;border-top:1px solid rgba(82,96,84,.24);color:var(--muted);font-size:.9rem}.kaminholz-price-card dt,.kaminholz-price-card dd{margin:0}.kaminholz-price-card dd{display:grid;gap:4px;color:var(--moss-deep);font-size:1rem;font-weight:650;text-align:right}.kaminholz-price-card__note{margin:0;padding-top:13px;border-top:1px solid rgba(82,96,84,.24);color:var(--muted);font-size:.84rem;line-height:1.45}.kaminholz-hero{padding-bottom:clamp(20px,3vw,36px)}.kaminholz-hero .button{margin-top:26px}.kaminholz-overview{padding-top:clamp(30px,4vw,50px);padding-bottom:clamp(28px,4vw,48px)}.kaminholz-overview .service-detail{align-items:stretch}.kaminholz-form-section{padding-top:0}.request-form textarea{min-height:120px;resize:vertical}.privacy-check{display:flex!important;align-items:flex-start;gap:10px!important;color:var(--muted)!important;font-size:.9rem!important;font-weight:500!important;letter-spacing:0!important;line-height:1.45;text-transform:none!important}.consent-stack{display:grid;gap:12px;padding:14px 16px;border:1px solid var(--line);background:var(--paper)}.routing-notice{margin:-2px 0 18px;padding:10px 12px;border-left:2px solid var(--moss-soft);color:var(--muted);font-size:.82rem;line-height:1.45}.routing-notice a{color:var(--moss-deep);text-decoration:underline;text-underline-offset:2px}.privacy-check input{width:16px;height:16px;flex:0 0 auto;margin:3px 0 0;accent-color:var(--moss-deep)}.privacy-check a{color:var(--moss-deep);text-decoration:underline;text-underline-offset:3px}.legal-hero{padding-bottom:clamp(24px,4vw,44px)}.danke-redirect{margin-top:18px;color:var(--muted);font-size:.92rem}.danke-redirect strong{color:var(--moss-deep)}.legal-section{padding-top:clamp(30px,5vw,62px)}.legal-content{max-width:760px;color:var(--muted)}.legal-content h2{margin:42px 0 12px;color:var(--moss-deep);font-size:clamp(1.25rem,2vw,1.55rem);font-weight:720;letter-spacing:-.015em}.legal-content h2:first-child{margin-top:0}.legal-content p{margin:0}.legal-content p+p{margin-top:18px}.legal-content a{color:var(--moss-deep);text-decoration:underline;text-underline-offset:3px}.legal-status{margin-top:48px!important;color:var(--muted);font-size:.9rem}.checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.checkbox-grid label{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-height:46px;padding:10px 12px;border:1px solid #bdcbbd;background:#f7faf4;color:var(--moss-deep);font-size:.92rem;font-weight:560;letter-spacing:0;line-height:1;text-transform:none;white-space:nowrap}.checkbox-grid input{width:15px;height:15px;margin:0;flex:0 0 auto;accent-color:var(--moss-deep)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:1px solid currentColor;font-size:.86rem;font-weight:720}.button:disabled{cursor:wait;opacity:.68}.button--solid{border-color:var(--leaf);color:var(--moss-deep);background:var(--leaf)}.button--solid:hover{background:#cce500}.button--cta{min-height:56px;padding:0 26px;flex:0 0 auto;gap:14px;border-color:var(--leaf);color:var(--moss-deep);background:var(--leaf);box-shadow:none}.button--cta:hover{border-color:#cce500;background:#cce500;transform:translate(-1px,-1px)}.site-footer{display:grid;grid-template-columns:1fr auto;gap:30px;padding-top:38px;padding-bottom:38px;color:#fbfdf9bd;background:var(--moss-deep)}.footer-mark{color:var(--white);font-weight:720}.footer-links{display:flex;gap:22px;align-items:start;font-size:.88rem}.footer-contact{display:flex;flex-wrap:wrap;gap:4px 22px;margin-top:12px;color:var(--white);font-size:.92rem}.footer-contact a{text-decoration:underline;text-decoration-color:#fbfdf959;text-underline-offset:3px}.error-page__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.error-page__phone{margin-top:22px;color:var(--muted)}.error-page__phone a{color:var(--moss-deep);font-weight:720;text-decoration:underline;text-underline-offset:3px}@media(min-width:861px)and (max-width:1120px){.site-header{grid-template-columns:clamp(208px,19vw,230px) auto minmax(0,1fr);column-gap:12px;padding-right:24px}.header-phone span{display:none}.header-phone{font-size:.72rem}.main-nav{gap:clamp(11px,1.5vw,18px);font-size:.76rem;letter-spacing:.015em}}@media(max-width:860px){.site-header{position:relative;display:flex;justify-content:flex-end;min-height:84px}.header-phone{position:static;transform:none;margin-right:14px;font-size:.82rem}.header-phone span,.main-nav--desktop{display:none}.form-grid--address,.choice-grid,.price-summary{grid-template-columns:1fr}.service-nav{display:none}.mobile-nav{position:relative;display:block;z-index:4}.mobile-nav summary{position:relative;display:block;width:38px;height:38px;padding:0;cursor:pointer;list-style:none;color:var(--moss-deep)}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary>span{position:absolute;left:9px;display:block;width:20px;height:1px;background:currentColor}.mobile-nav summary>span:nth-child(1){top:11px}.mobile-nav summary>span:nth-child(2){top:18px}.mobile-nav summary>span:nth-child(3){top:25px}.mobile-nav[open] summary{color:var(--leaf)}.mobile-nav__links{position:absolute;top:calc(100% + 8px);right:0;display:grid;min-width:220px;padding:8px 0;border:1px solid var(--line);background:var(--white);box-shadow:0 14px 28px #12311d29}.mobile-nav__links a{padding:12px 16px;color:var(--moss-deep);font-weight:680}.mobile-nav__links a:hover{background:var(--paper-deep)}.mobile-nav__service-group{border-top:1px solid var(--line)}.mobile-nav__service-group summary{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;list-style:none;color:var(--moss-deep);font-weight:680}.mobile-nav__service-group summary::-webkit-details-marker{display:none}.mobile-nav__service-group summary:after{content:"↓";font-size:.82em}.mobile-nav__service-group[open] summary:after{transform:rotate(180deg)}.mobile-nav__service-group summary.is-active{color:var(--leaf)}.mobile-nav__service-links{display:grid;padding:0 0 8px}.mobile-nav__service-links a{padding:9px 16px 9px 30px;font-size:.92rem;font-weight:610}.mobile-nav__links a.is-active{color:var(--moss-deep);background:var(--paper-deep)}.mobile-nav__service-group{display:grid;margin:4px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mobile-nav__service-group>a:first-child{font-weight:720}.mobile-nav__service-group>a:not(:first-child){padding-left:28px;font-size:.9rem;font-weight:560}.brand--circle{width:clamp(142px,30vw,208px)}.hero,.split,.quote-panel,.service-detail,.contact-band,.site-footer,.magazine-lead,.image-strip,.editorial-link,.form-grid,.direct-contact,.direct-contact__links{grid-template-columns:1fr}.welcome-section{grid-template-columns:1fr;gap:24px}.home-service-list{grid-template-columns:1fr}.home-service-card{grid-template-columns:34px minmax(0,1fr) 18px;gap:14px;padding:20px 0}.home-service-card strong,.home-service-card small{overflow-wrap:anywhere}.home-service-card__thumb{grid-column:2 / 4;grid-row:2;width:min(100%,300px)}.home-service-card__arrow{grid-column:3;grid-row:1}.contact-band__action{align-items:flex-start;margin:0;padding:0 var(--gutter) 34px;border-left:0}.contact-band>h2{padding:34px var(--gutter) 24px}.contact-band__image{min-height:220px}.home-service-card,.home-service-card:nth-child(2n),.home-service-card:last-child{border-right:0}.reference-project__intro,.reference-gallery{grid-template-columns:1fr}.kaminholz-price-column{gap:20px}.reference-gallery .photo-panel--portrait{aspect-ratio:4 / 3}.hero{padding-top:38px}.hero--home{grid-template-columns:1fr;padding-left:var(--gutter);padding-right:var(--gutter)}h1{font-size:clamp(2.55rem,13vw,3.55rem)}.project-grid{grid-template-columns:1fr}.service-row{grid-template-columns:38px 1fr}.service-preview{grid-column:2;grid-template-columns:minmax(150px,220px) auto;justify-content:start}.fact-list div{grid-template-columns:1fr;gap:4px}}@media(max-width:520px){body{font-size:16px}.brand img{width:142px}.main-nav{overflow:visible;gap:10px 18px}.header-phone{font-size:.76rem}.page-hero h1{font-size:clamp(2.35rem,11vw,3rem);overflow-wrap:anywhere}.material-image{min-height:300px}.service-row{grid-template-columns:1fr;gap:14px}.service-number,.service-preview{grid-column:auto}.service-preview{grid-template-columns:1fr auto}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:430px){.checkbox-grid{grid-template-columns:1fr}}
