@font-face{font-family:Manrope;src:url("Schrift/Manrope.ttf") format("truetype");font-weight:200 800;font-display:swap}
@font-face{font-family:Sora;src:url("Schrift/Sora/Sora-SemiBold.ttf") format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:Sora;src:url("Schrift/Sora/Sora-Bold.ttf") format("truetype");font-weight:700;font-display:swap}
@font-face{font-family:Sora;src:url("Schrift/Sora/Sora-ExtraBold.ttf") format("truetype");font-weight:800;font-display:swap}

:root{
  --lime:#8cc63f;
  --ink:#192921;
  --moss:#386523;
  --mist:#f5f7f2;
  --paper:#fff;
  --line:#cdd6ce;
  --muted:#526257;
  --error:#a52222;
  --frame:clamp(16px,2.25vw,32px);
  --section:clamp(104px,10vw,152px);
  --display:clamp(56px,6.2vw,88px);
  --heading:clamp(40px,4.5vw,64px);
  --subhead:clamp(22px,2vw,30px);
  --lead:clamp(19px,1.55vw,23px);
  --body:17px;
  --small:13px;
  --ease:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-color:var(--moss) var(--mist)}
html::-webkit-scrollbar{width:12px}
html::-webkit-scrollbar-track{background:var(--mist)}
html::-webkit-scrollbar-thumb{background:var(--moss);border:3px solid var(--mist)}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--body)/1.55 Manrope,Arial,sans-serif;overflow-wrap:anywhere}
img{display:block;max-width:100%}
figure,dl,dd{margin:0}
a{color:inherit;text-decoration-thickness:1.5px;text-underline-offset:4px}
a:hover{text-decoration-thickness:3px}
button,input,textarea{font:inherit}
input,textarea{caret-color:var(--moss)}
button{cursor:pointer}
::selection{background:var(--lime);color:var(--ink)}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 6px var(--lime)} /* taste-skill-ignore: accessibility focus ring, never a resting shadow */
h1,h2,h3{margin:0;font-family:Sora,Manrope,Arial,sans-serif;font-weight:600;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:normal;word-break:normal}
h2{font-size:var(--heading);line-height:1.02}
h3{font-size:var(--subhead);line-height:1.12}
p{text-wrap:pretty}
section[id]{scroll-margin-top:108px}

.skip-link{position:fixed;left:var(--frame);top:8px;z-index:1000;padding:12px 18px;background:var(--lime);color:var(--ink);font-weight:700;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.hero{position:relative;background:var(--ink)}
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:88px;padding:0 var(--frame);display:flex;align-items:center;justify-content:space-between;gap:28px;background:rgba(25,41,33,.97);color:var(--paper)}
.brand img{width:clamp(150px,13vw,190px);height:auto}
.site-header nav{display:flex;gap:clamp(14px,1.65vw,26px);font-size:14px;font-weight:700}
.site-header nav a{text-decoration:none}
.site-header nav a:hover{text-decoration:underline;text-underline-offset:7px}
.hero-grid{min-height:calc(100svh - 46px);display:grid;grid-template-columns:54% 46%}
.hero-copy{position:relative;z-index:2;padding:clamp(148px,18vh,190px) var(--frame) 44px;display:flex;flex-direction:column;align-items:flex-start;background:var(--ink);color:var(--paper)}
.hero-copy::after{content:"";position:absolute;z-index:3;top:0;bottom:0;right:-112px;width:112px;pointer-events:none;background:linear-gradient(90deg,var(--ink),rgba(25,41,33,0))} /* taste-skill-ignore: user-requested functional blend between copy and photograph */
.hero h1{max-width:none;font-size:var(--display);line-height:.98}
.hero-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.hero-line>span{display:block;white-space:nowrap}
.hero-lead{max-width:43ch;margin:34px 0 26px;color:#e5ebe7;font-size:var(--lead);line-height:1.45}
.primary-action,.contact-form button{min-height:54px;padding:15px 24px;border:0;border-radius:8px;background:var(--lime);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-weight:700;text-decoration:none;transition:transform 180ms var(--ease),background-color 180ms ease,color 180ms ease}
.primary-action:hover,.contact-form button:hover{background:var(--paper);color:var(--ink);transform:translateY(-2px)}
.primary-action:active,.contact-form button:active{transform:translateY(1px)}
.hero-facts{width:100%;margin-top:auto;padding-top:52px;display:grid;grid-template-columns:1fr .7fr 1.25fr;gap:24px}
.hero-facts dt{margin-bottom:5px;color:#b9c8be;font-size:var(--small)}
.hero-facts dd{font-size:15px;font-weight:700}
.hero-visual{position:relative;min-width:0;overflow:hidden;background:var(--moss)}
.hero-photo{width:100%;height:100%;object-fit:cover;object-position:58% center}
.hero-abbinder{height:46px;padding:0 var(--frame);display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px;background:var(--mist);color:var(--muted);font-size:var(--small);font-weight:700}
.hero-signal{width:27px;height:27px}
.hero-signal,.signal-mark{overflow:visible;fill:var(--lime)}
.signal-bar{transform-box:fill-box;transform-origin:center bottom}

.section-shell{position:relative;padding:var(--section) var(--frame);overflow:hidden}
.section-heading{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,7fr) minmax(260px,5fr);align-items:end;gap:clamp(40px,7vw,110px);margin-bottom:clamp(72px,7vw,112px)}
.section-heading h2{max-width:14ch}
.section-heading>p{max-width:42ch;margin:0;color:var(--muted);font-size:var(--lead)}
.section-heading-single{grid-template-columns:1fr}
.section-arc{position:absolute;pointer-events:none}
.section-arc-pale{right:-190px;top:12%;width:min(39vw,540px);opacity:.1;transform:rotate(-90deg)}

.profile{min-height:84svh;background:var(--paper)}
.profile-body{position:relative;z-index:1;display:grid;grid-template-columns:7fr 5fr;gap:clamp(40px,7vw,110px);align-items:start}
.profile-statement{max-width:34ch;margin:0;font:600 clamp(24px,2.1vw,30px)/1.3 Sora,Manrope,sans-serif;letter-spacing:-.025em}
.profile-rail{position:relative;display:grid;gap:30px;padding-left:30px}
.profile-rail::before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--lime)}
.profile-rail p{margin:0}
.profile-rail strong,.profile-rail span{display:block}
.profile-rail strong{margin-bottom:5px;font-size:14px}
.profile-rail span{color:var(--muted)}

.section-dark{background:var(--ink);color:var(--paper)}
.section-heading-light>p{color:#c9d5cd}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px clamp(52px,8vw,120px)}
.field-item{position:relative;padding-top:24px}
.field-item::before{content:"";position:absolute;left:0;top:0;width:clamp(84px,30%,160px);height:4px;background:var(--lime)}
.field-item:nth-child(2)::before,.field-item:nth-child(3)::before{background:#6fae36}
.field-item h3{max-width:18ch}
.field-item>p:not(.terms){max-width:44ch;margin:24px 0 18px;color:#e2e9e4}
.field-item .terms{margin:0;color:#b9cbbf;font-size:var(--small)}
.fields-signal{position:absolute;right:var(--frame);bottom:32px;width:31px;height:31px}

.process{background:var(--mist)}
.process-track{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.process-track::before{content:"";position:absolute;top:11px;left:0;right:0;height:1px;background:var(--line)} /* taste-skill-ignore: functional process connection */
.process-step{position:relative;padding:48px clamp(18px,2.2vw,34px) 0 0}
.process-mark{position:absolute;z-index:1;top:0;left:0;width:23px;height:23px;background:var(--lime)}
.process-step h3{max-width:13ch;font-size:clamp(21px,1.8vw,27px)}
.process-step p{max-width:27ch;margin:18px 0 0;color:var(--muted)}

.image-system{background:var(--paper)}
.image-feature{min-height:86svh;display:grid;grid-template-columns:60% 40%;background:var(--ink);color:var(--paper)}
.image-feature-media{min-width:0;overflow:hidden;border-radius:0 210px 0 0}
.image-feature-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.image-feature-copy{position:relative;padding:clamp(70px,8vw,124px) var(--frame);display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.image-feature-copy h2{max-width:14ch;font-size:clamp(42px,4vw,58px)}
.image-feature-copy p{position:relative;z-index:1;max-width:35ch;margin:36px 0 0;color:#dce5df;font-size:var(--lead)}
.image-feature-copy>img{position:absolute;right:-62px;top:-18px;width:min(31vw,420px);opacity:.35}
.image-stage{position:relative;min-height:78svh;padding:clamp(64px,7vw,108px) var(--frame);overflow:hidden;background:var(--ink)}
.image-secondary{position:relative;min-width:0;overflow:hidden}
.image-secondary img{width:100%;height:100%;object-fit:cover}
.image-secondary-building{width:76%;height:clamp(500px,63vw,820px);border-radius:0 210px 0 0}
.image-secondary-map{position:absolute;right:var(--frame);bottom:clamp(38px,5vw,76px);width:43%;height:clamp(390px,38vw,560px);border-radius:160px 0 0 0;background:var(--moss)}
.image-secondary-map::after{content:"";position:absolute;inset:0;z-index:1;background:var(--ink);-webkit-mask:url("Marke/Abbinder.svg") 88% 82%/48% auto no-repeat;mask:url("Marke/Abbinder.svg") 88% 82%/48% auto no-repeat}
.map-statement{position:absolute;z-index:2;left:clamp(22px,3vw,44px);top:36%;max-width:12ch;color:var(--paper);font:700 clamp(24px,2.6vw,38px)/1.08 Sora,Manrope,sans-serif;letter-spacing:-.03em}

.contact{display:grid;grid-template-columns:42% 58%;background:var(--mist)}
.contact-copy{position:relative;min-height:840px;padding:var(--section) var(--frame);overflow:hidden;background:var(--lime);color:var(--ink)}
.contact-copy h2{max-width:8ch}
.contact-copy>p{max-width:34ch;margin:34px 0;font-size:var(--lead)}
.contact-arc{position:absolute;right:-92px;bottom:-30px;width:min(32vw,430px);opacity:.55}
.contact-form{padding:var(--section) clamp(32px,7vw,112px);display:grid;grid-template-columns:1fr 1fr;gap:28px 24px;align-content:start;background:var(--ink);color:var(--paper)}
.form-intro{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:24px;margin-bottom:36px}
.form-intro h3{max-width:12ch;font-size:clamp(28px,3vw,42px)}
.form-intro p{max-width:38ch;margin:0;color:#c9d5cd}
.form-field{display:grid;gap:10px;align-content:start}
.form-field:nth-of-type(5),.mailto-note,.contact-form button,.form-status{grid-column:1/-1}
.form-field label{font-weight:700;color:var(--paper)}
.form-field label span{font-weight:400}
.form-field input,.form-field textarea{width:100%;border:0;border-bottom:3px solid #73857a;border-radius:0;background:#22372d;color:var(--paper);padding:16px 14px;transition:border-color 180ms ease,background-color 180ms ease} /* impeccable-disable-line: square form controls explicitly use radius 0 */
.form-field input{min-height:58px}
.form-field textarea{min-height:170px;resize:vertical}
.form-field input:hover,.form-field textarea:hover{background:#294336}
.form-field input:focus,.form-field textarea:focus{border-bottom-color:var(--lime);background:#294336}
.form-field input[aria-invalid="true"],.form-field textarea[aria-invalid="true"]{border-color:var(--error)}
.form-error{min-height:22px;color:#ffaaa0;font-size:14px;font-weight:700}
.mailto-note{max-width:64ch;margin:8px 0 0;color:#dce5df;font-size:14px}
.contact-form button{justify-self:start;background:var(--lime);color:var(--ink)}
.contact-form button:hover{background:var(--paper);color:var(--ink)}
.form-status{min-height:24px;margin:0;font-weight:700}

.document{background:var(--paper)}
.legal{background:var(--mist)}
.document-heading{margin-bottom:72px}
.document-heading h2 span{display:block}
.legal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.legal-grid h3,.privacy-copy h2{font-size:20px;letter-spacing:-.02em}
.legal-grid p{margin:16px 0 0}
.legal-warning{max-width:70ch;margin:64px 0 0;padding:24px;background:#e7eee4}
.privacy-copy{max-width:64ch;margin-left:auto}
.privacy-copy h2{margin:46px 0 12px}
.privacy-copy h2:first-child{margin-top:0}
.privacy-copy p{margin:0 0 18px}
.privacy-copy code{font-family:inherit;font-weight:700}

.site-footer{position:relative;padding:clamp(80px,9vw,136px) var(--frame) 30px;background:var(--paper);color:var(--muted);scroll-margin-top:108px}
.footer-brand-row{display:flex;align-items:start;justify-content:space-between;gap:32px;margin-bottom:84px}
.footer-brand-row img{width:clamp(170px,16vw,220px);height:auto}
.back-to-top{width:56px;height:56px;display:grid;place-items:center;border-radius:8px;background:var(--ink);color:var(--paper);text-decoration:none}
.back-to-top svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.back-to-top:hover{background:var(--lime);color:var(--ink)}
.footer-title{margin:0 0 34px;font-size:clamp(22px,2.2vw,30px)}
.footer-contact-row,.footer-data{display:grid;grid-template-columns:1.28fr .9fr .82fr;gap:clamp(24px,5vw,72px)}
.footer-contact-row{align-items:end;min-height:44px;padding-bottom:18px;margin-bottom:24px;border-bottom:1px solid var(--line);font-size:15px} /* taste-skill-ignore: direct letterhead hierarchy rule */
.footer-contact-row a{text-decoration:none}
.footer-web{justify-self:start;padding:7px 11px;border-radius:8px;background:var(--ink);color:var(--lime);font-family:Sora,Manrope,sans-serif;font-weight:800;line-height:1.2}
.footer-signal{justify-self:end;width:31px;height:31px}
.footer-data{font-size:14px;line-height:1.6}
.footer-data p{margin:0}
.footer-data strong{color:var(--ink)}
.footer-group{display:block}
.footer-group+.footer-group{margin-top:18px}
.footer-final-row{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-top:62px;font-size:13px}
.footer-final-row nav{display:flex;gap:24px}
.footer-final-row p{margin:0}
.compact-footer{padding-top:84px}

.subpage-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:88px;padding:0 var(--frame);display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--ink);color:var(--paper)}
.subpage-header nav{display:flex;gap:clamp(14px,1.65vw,26px);font-size:14px;font-weight:700}
.subpage-header nav a{text-decoration:none}
.legal-page .document-heading h1{max-width:15ch;font-size:var(--heading);line-height:1.02}
.legal-page .privacy{background:var(--mist)}
.legal-page main{padding-top:88px}

@media(prefers-reduced-motion:no-preference){
  .js .site-header .brand img,.legal-page .subpage-header .brand img{transform:translateX(-18px) scale(.96);opacity:0;animation:logo-arrive 780ms var(--ease) 120ms forwards}
  .js .hero-signal .signal-bar,.js .signal-mark .signal-bar{opacity:0;transform:scaleY(.12)}
  .js .hero-signal.is-visible .signal-bar,.js .signal-mark.is-visible .signal-bar{animation:signal-send 620ms var(--ease) forwards}
  .js .hero-signal.is-visible .signal-bar-2,.js .signal-mark.is-visible .signal-bar-2{animation-delay:80ms}
  .js .hero-signal.is-visible .signal-bar-3,.js .signal-mark.is-visible .signal-bar-3{animation-delay:160ms}
  .js .hero-visual{clip-path:inset(0 100% 0 0);animation:hero-shutter 1050ms var(--ease) 100ms forwards}
  .js .hero-photo{transform:scale(1.1);animation:hero-settle 1200ms var(--ease) 80ms forwards,hero-drift 16s ease-in-out 1300ms infinite alternate}
  .js .hero-line>span{transform:translateY(110%);animation:line-up 850ms var(--ease) 160ms forwards}
  .js .hero-line:nth-child(2)>span{animation-delay:250ms}
  .js [data-motion="profile"] .section-heading,.js [data-motion="profile"] .profile-body{opacity:0;transform:translateY(24px);transition:opacity 700ms var(--ease),transform 850ms var(--ease)}
  .js [data-motion="profile"] .profile-body{transition-delay:90ms}
  .js [data-motion="profile"].is-in .section-heading,.js [data-motion="profile"].is-in .profile-body{opacity:1;transform:none}
  .js [data-motion="fields"] .field-item{opacity:0;transform:translateY(28px);transition:opacity 650ms var(--ease),transform 850ms var(--ease)}
  .js [data-motion="fields"] .field-item:nth-child(2){transition-delay:70ms}.js [data-motion="fields"] .field-item:nth-child(3){transition-delay:140ms}.js [data-motion="fields"] .field-item:nth-child(4){transition-delay:210ms}
  .js [data-motion="fields"].is-in .field-item{opacity:1;transform:none}
  .js [data-motion="process"] .process-step{opacity:0;transform:translateX(-24px);transition:opacity 600ms var(--ease),transform 820ms var(--ease)}
  .js [data-motion="process"] .process-step:nth-child(2){transition-delay:70ms}.js [data-motion="process"] .process-step:nth-child(3){transition-delay:140ms}.js [data-motion="process"] .process-step:nth-child(4){transition-delay:210ms}
  .js [data-motion="process"].is-in .process-step{opacity:1;transform:none}
  .js [data-motion="imagery"] .image-feature-copy,.js [data-motion="imagery"] .image-stage{opacity:0;transform:translateY(30px);transition:opacity 700ms var(--ease),transform 900ms var(--ease)}
  .js [data-motion="imagery"] .image-stage{transition-delay:100ms}
  .js [data-motion="imagery"].is-in .image-feature-copy,.js [data-motion="imagery"].is-in .image-stage{opacity:1;transform:none}
  .js [data-motion="contact"] .contact-copy{transform:translateX(-28px);opacity:0;transition:opacity 650ms var(--ease),transform 850ms var(--ease)}
  .js [data-motion="contact"] .contact-form{transform:translateY(24px);opacity:0;transition:opacity 700ms 80ms var(--ease),transform 900ms 80ms var(--ease)}
  .js [data-motion="contact"].is-in .contact-copy,.js [data-motion="contact"].is-in .contact-form{opacity:1;transform:none}
}

@keyframes hero-shutter{to{clip-path:inset(0)}}
@keyframes hero-settle{to{transform:scale(1)}}
@keyframes line-up{to{transform:none}}
@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.035)}}
@keyframes logo-arrive{to{transform:none;opacity:1}}
@keyframes signal-send{0%{opacity:0;transform:scaleY(.12)}72%{opacity:1;transform:scaleY(1.12)}100%{opacity:1;transform:scaleY(1)}}

@media(max-width:1000px){
  .site-header{width:100%;background:var(--ink)}
  .hero-grid{grid-template-columns:1fr 1fr}
  .hero-copy{padding-top:150px}
  .hero-facts{grid-template-columns:1fr 1fr}.hero-facts div:last-child{grid-column:1/-1}
  .section-heading,.profile-body{grid-template-columns:1fr 1fr;gap:48px}
  .field-grid{gap:60px 42px}
  .image-feature{grid-template-columns:55% 45%}
  .contact{grid-template-columns:1fr}
  .contact-copy{min-height:auto;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:48px}
  .contact-copy>p{margin:0}
  .contact-form{padding-block:100px}
  .legal-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:900px){
  .site-header{position:fixed;width:100%;background:var(--ink)}
  .hero-grid{min-height:auto;display:flex;flex-direction:column}
  .hero-visual{order:1;height:44svh;min-height:330px;margin-top:88px}
  .hero-copy{order:2;min-height:570px;padding:64px var(--frame) 42px}
  .hero-copy::after{display:none}
  .hero-facts{margin-top:56px}
}

@media(max-width:680px){
  :root{--section:84px;--display:clamp(40px,10.8vw,46px);--heading:clamp(34px,9.2vw,44px);--body:16px}
  .hero{background:var(--paper)}
  section[id]{scroll-margin-top:136px}
  .site-header{position:fixed;width:100%;height:118px;padding-block:10px;display:grid;grid-template-columns:minmax(0,1fr);align-content:center;gap:8px;background:var(--ink);color:var(--paper)}
  .brand img{width:122px}
  .site-header nav{width:100%;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;font-size:11px}
  .site-header nav a{text-align:center;white-space:nowrap}
  .hero-grid{min-height:auto;display:flex;flex-direction:column}
  .hero-visual{order:1;height:34svh;min-height:260px;margin-top:118px}
  .hero-copy{order:2;min-height:510px;padding:52px var(--frame) 38px}
  .hero h1{max-width:none}
  .hero-lead{margin:26px 0 22px;font-size:18px}
  .primary-action{width:100%}
  .hero-facts{padding-top:38px;gap:20px 14px}
  .hero-abbinder{grid-template-columns:1fr auto;height:42px}
  .section-heading,.profile-body{grid-template-columns:1fr;gap:28px;margin-bottom:58px}
  .section-heading h2{max-width:12ch}
  .section-heading>p{font-size:18px}
  .section-arc-pale{width:82vw;right:-220px;top:24%}
  .profile{min-height:auto}
  .profile-statement{font-size:22px}
  .profile-rail{padding-left:20px}
  .field-grid{grid-template-columns:1fr;gap:48px}
  .field-item{padding-top:18px}
  .process-track{grid-template-columns:1fr;gap:42px}
  .process-track::before{top:0;bottom:0;left:10px;width:1px;height:auto}
  .process-step{padding:0 0 0 48px}
  .process-mark{top:2px;width:21px;height:21px}
  .process-step h3{font-size:24px}
  .image-feature{min-height:auto;grid-template-columns:1fr}
  .image-feature-media{height:58svh;min-height:430px;border-radius:0 110px 0 0}
  .image-feature-copy{min-height:500px;padding:76px var(--frame)}
  .image-feature-copy h2{max-width:12ch}
  .image-feature-copy>img{width:75vw;right:-92px;top:-12px}
  .image-stage{min-height:760px;padding:72px var(--frame) 116px}
  .image-secondary-building{width:94%;height:54svh;min-height:390px;border-radius:0 100px 0 0}
  .image-secondary-map{right:var(--frame);bottom:70px;width:76%;height:42svh;min-height:330px;border-radius:90px 0 0 0}
  .image-secondary-map::after{-webkit-mask-position:92% 86%;mask-position:92% 86%;-webkit-mask-size:45% auto;mask-size:45% auto}
  .map-statement{max-width:10ch;font-size:24px}
  .contact-copy{min-height:500px;display:block;padding-bottom:170px}
  .contact-copy>p{margin:34px 0}
  .contact-copy h2{max-width:8ch}
  .contact-arc{width:80vw;right:-105px}
  .contact-form{padding:84px var(--frame);grid-template-columns:1fr}
  .form-intro{grid-column:auto;grid-template-columns:1fr;margin-bottom:24px}
  .form-field:nth-of-type(5),.mailto-note,.contact-form button,.form-status{grid-column:auto}
  .contact-form button{width:100%}
  .document-heading{margin-bottom:54px}
  .legal-grid{grid-template-columns:1fr;gap:36px}
  .legal-warning{margin-top:48px}
  .privacy-copy{margin:0}
  .site-footer{padding-top:84px}
  .footer-brand-row{margin-bottom:70px}.footer-brand-row img{width:160px}
  .footer-contact-row,.footer-data{grid-template-columns:1fr;gap:18px}
  .footer-contact-row{padding-bottom:18px}
  .footer-signal{justify-self:start}
  .footer-data{gap:28px}
  .footer-final-row{align-items:start;flex-direction:column;margin-top:48px}
  .subpage-header{position:fixed;height:auto;min-height:132px;align-items:flex-start;flex-direction:column;padding-block:20px}
  .subpage-header nav{width:100%;justify-content:space-between;gap:8px;font-size:12px}
  .legal-page main{padding-top:132px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

@media print{
  .site-header nav,.primary-action,.contact-form{display:none}
  .hero-grid{min-height:auto}
  .hero-copy{padding-block:120px 48px}
  .image-system{break-inside:avoid}
}
