@font-face{font-family:Manrope;src:url('assets/manrope.woff') format('woff');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/dm-sans.woff') format('woff');font-style:normal;font-weight:100 1000;font-display:swap}
:root{
  --brand:#683078;--accent:#c9a6e0;--ink:#281532;--muted:#685e70;
  --mineral:#faf8fc;--white:#fff;--line:#e5ddea;--partner:#f5f0f8;
  --brand-hover:#51235f;--brand-light:#e5c9f3;--on-brand:#f0e5f6;--brand-line:#a678b7;--partner-line:#d8c8e2;--brand-surface:#f0e8f5;--control-line:#88768f;
  --display:Manrope,Arial,sans-serif;--body:'DM Sans',Arial,sans-serif;
  --max:1440px;--gutter:clamp(24px,5.5vw,88px);--column-gap:clamp(28px,4.45vw,64px);
  --section-space:clamp(64px,6.67vw,96px);--panel-space:clamp(56px,5.56vw,80px);
  --block-space:clamp(28px,3vw,40px);--hero-frame:20px;--header-height:80px;--radius:4px;
  --type-section:clamp(34px,calc(28px + 1.67vw),52px);--type-feature:clamp(38px,calc(24px + 2.8vw),64px);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font:400 16px/1.7 var(--body);-webkit-font-smoothing:antialiased}
h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display)}
h1,h2{font-weight:550;letter-spacing:-.05em;line-height:1.12}h3{font-weight:600;letter-spacing:-.025em;line-height:1.35}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}button:disabled{cursor:default}svg,img{display:block}img{max-width:100%}ul,ol{margin:0;padding:0}
::selection{background:var(--accent);color:var(--ink)}
:focus-visible{outline:3px solid var(--brand);outline-offset:5px}
section[id]{scroll-margin-top:calc(var(--header-height) + 24px - var(--anchor-inset,var(--section-space)))}
#inhalt{scroll-margin-top:var(--header-height)}
.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:12px 20px;background:var(--brand);color:#fff;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.section{max-width:var(--max);margin-inline:auto;padding:var(--section-space) var(--gutter)}
/* One shared content rail, including navigation and supporting pages. */
.site-header{height:var(--header-height);width:100%;margin-inline:auto;padding-inline:max(var(--gutter),calc((100% - var(--max))/2 + var(--gutter)));display:flex;align-items:center;gap:32px;position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 1px 0 #2815320a}
.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand-logo{width:158px;height:auto}
.desktop-nav{display:flex;align-items:center;gap:28px;margin-left:auto;white-space:nowrap;font-size:14px;font-weight:500}
.desktop-nav a{padding:14px 0;position:relative}
.desktop-nav a::after{content:'';position:absolute;bottom:8px;left:0;width:100%;height:1px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.desktop-nav a:hover::after{transform:scaleX(1)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:14px 22px;border:1px solid transparent;border-radius:var(--radius);font-size:14px;font-weight:600;line-height:1.4;transition:background .2s,color .2s,transform .2s}
.button>span{font-size:21px;line-height:1;flex-shrink:0;transition:transform .2s}.button:hover>span{transform:translate(2px,-2px)}.button:active{transform:translateY(1px)}
.button-primary,.header-contact{background:var(--brand);color:#fff}.button-primary:hover,.header-contact:hover{background:var(--brand-hover)}
.header-contact{min-height:44px;padding:11px 17px;font-size:14px;gap:22px;white-space:nowrap}
.button-white{background:#fff;color:var(--brand)}.button-white:hover{background:var(--mineral)}
.menu-toggle,.mobile-nav{display:none}
/* Architecture stays the focal point; text always follows the content rail. */
.hero{width:calc(100% - var(--hero-frame)*2);max-width:1640px;margin-inline:auto;position:relative;overflow:hidden;isolation:isolate;height:calc(100svh - var(--header-height) - 24px);min-height:560px;max-height:790px;border-radius:var(--radius);background:#4e4446;color:#fff}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 50%;z-index:-3}
.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#18111db3 0%,#18111d6e 38%,#18111d0d 80%),linear-gradient(0deg,#140f1861,transparent 30%)}
.hero-content{height:100%;max-width:calc(var(--max) - var(--hero-frame)*2);margin-inline:auto;padding:48px calc(var(--gutter) - var(--hero-frame));display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.eyebrow{font-size:12px;font-weight:500;line-height:1.5;text-transform:uppercase;letter-spacing:.14em}
.hero .eyebrow{color:var(--on-brand);margin-bottom:24px}
.hero h1{font-size:clamp(42px,calc(16px + 7.8vw),112px);line-height:1.04;letter-spacing:-.06em;font-weight:500}.hero h1 span{font-weight:600}
.hero-description{font-size:16px;line-height:1.75;max-width:39ch;margin-top:24px;color:var(--on-brand)}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-top:32px}
.hero-secondary{display:inline-flex;align-items:center;gap:18px;min-height:48px;padding:12px 0;border-bottom:1px solid #ffffff80;font-size:14px}.hero-secondary:hover{border-color:#fff}.hero-secondary span{font-size:20px;line-height:1}
.hero :focus-visible{outline-color:#fff}.image-disclosure{position:absolute;right:24px;bottom:16px;color:#fff;font-size:12px;line-height:1.5}
/* The introduction has two voices on desktop and one clear reading order. */
.intro{padding-bottom:var(--section-space)}
.intro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap);align-items:end}
.intro h2{font-size:var(--type-feature);text-box:trim-start cap alphabetic}.intro h2 span{color:var(--brand)}
.intro-copy{font-size:18px;line-height:1.8;color:var(--muted);max-width:55ch}
.audiences{display:flex;align-items:center;gap:32px;border-top:1px solid var(--line);padding-top:24px;margin-top:48px;font-size:12px;font-weight:500;color:var(--muted)}
.audience-region{margin-left:auto;color:var(--muted)}
.services{--anchor-inset:0px;padding-top:0}
.section-heading{margin-bottom:var(--block-space)}.section-heading .eyebrow{color:var(--brand);margin-bottom:16px}
.section-heading h2{font-size:var(--type-section)}.section-heading h2 span{display:inline-block}
.service-layout{min-width:0}
.service-list{min-width:0}.service-item{border-bottom:1px solid var(--line)}.service-item:first-child{border-top:1px solid var(--line)}
.service-item>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;min-height:88px;cursor:pointer}
.service-item>summary::-webkit-details-marker{display:none}
.service-title{font:550 clamp(23px,calc(20px + .7vw),30px)/1.3 var(--display);letter-spacing:-.04em}.service-item[open] .service-title{color:var(--brand)}
.expand-icon{width:24px;height:24px;position:relative;flex-shrink:0;color:var(--brand)}
.expand-icon::before,.expand-icon::after{content:'';position:absolute;top:11px;left:5px;width:14px;height:1.5px;background:currentColor;transition:transform .2s}.expand-icon::after{transform:rotate(90deg)}.service-item[open] .expand-icon::after{transform:none}
.service-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap);padding:8px 0 32px}.service-copy{min-width:0}.service-copy>p{text-box:trim-start cap alphabetic;font-size:16px;line-height:1.8;color:var(--muted);max-width:43ch}
.service-body ul{list-style:none;margin:20px 0;font-size:14px;line-height:1.9}.service-body li{padding-left:16px;position:relative}.service-body li::before{content:'';position:absolute;left:0;top:.9em;width:5px;height:1px;background:var(--brand)}
.text-link{display:inline-flex;align-items:center;gap:24px;min-height:44px;padding:9px 0;color:var(--brand);font-size:14px;font-weight:600}.text-link span{font-size:20px;line-height:1}.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.service-picture{min-width:0}.service-picture img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius)}
.service-picture figcaption{font-size:12px;line-height:1.5;color:var(--muted);margin-top:12px}
.partner-section{background:var(--partner)}
.partner-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap);align-items:start;padding-block:var(--panel-space)}
.partner-copy h2{font-size:var(--type-section);text-box:trim-start cap alphabetic}.partner-copy h2 span{color:var(--brand)}
.partner-copy>p{margin-top:24px;font-size:16px;line-height:1.8;color:var(--muted);max-width:46ch}
.partner-services>a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px;padding:24px 0;border-bottom:1px solid var(--partner-line)}.partner-services>a:first-child{padding-top:0;min-height:64px}.partner-services>a:last-child{border-bottom:0;padding-bottom:0}
.partner-services strong{display:block;font:600 18px/1.5 var(--display);letter-spacing:-.025em}.partner-services small{display:block;font-size:13px;line-height:1.6;color:var(--muted);margin-top:4px}.partner-services>a>span:last-child{flex-shrink:0;font-size:23px;color:var(--brand);transition:transform .2s}.partner-services>a:hover>span:last-child{transform:translate(2px,-2px)}
/* Coupled exterior/interior composition; no independent picture heights. */
.about{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:'facade content' 'facade detail';gap:32px var(--column-gap);align-items:start}
.about-content{grid-area:content;min-width:0}.about h2{font-size:var(--type-section);text-box:trim-start cap alphabetic}.about h2 span{color:var(--brand)}
.about-content>p{font-size:16px;line-height:1.8;color:var(--muted);margin-top:24px;max-width:64ch}.about-content>p+p{margin-top:16px}
.about-facade{grid-area:facade;min-width:0;min-height:0;align-self:stretch;display:flex;flex-direction:column}
.about-facade img{width:100%;height:0;min-height:0;flex:1 1 0;object-fit:cover;object-position:57% center;border-radius:var(--radius)}
.about-detail{grid-area:detail;min-width:0}.about-detail img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center 64%;border-radius:var(--radius)}
.about figcaption{font-size:12px;color:var(--muted);margin-top:12px;line-height:1.5}
.process{--anchor-inset:0px;padding-top:0}.process>h2{font-size:var(--type-section)}
.process-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--column-gap);margin-top:var(--block-space);border-top:1px solid var(--line)}
.process-steps li{padding-top:24px}.step-number{display:block;font:500 12px/1.8 var(--display);color:var(--brand);margin-bottom:20px}
.process-steps h3{font-size:18px;margin-bottom:12px}.process-steps p{font-size:15px;line-height:1.8;color:var(--muted);max-width:34ch}
.contact{--anchor-inset:var(--panel-space);background:var(--brand);color:#fff}
.contact-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap);align-items:start;padding-block:var(--panel-space)}
.contact-intro h2{font-size:var(--type-feature);text-box:trim-start cap alphabetic}.contact-intro h2 span{color:var(--brand-light)}
.contact-intro>p:not(.email-copy-status){font-size:16px;color:var(--on-brand);line-height:1.8;margin-top:24px}
.contact-email{display:flex;align-items:center;justify-content:space-between;gap:24px;width:fit-content;margin-top:32px;font:500 clamp(27px,calc(22px + 1vw),38px)/1.3 var(--display);letter-spacing:-.04em}.contact-email span{font-size:30px;color:var(--brand-light)}.contact-email:hover{color:var(--brand-light)}
.contact-phone{display:block;width:fit-content;font-size:18px;margin-top:12px}.contact-phone:hover{text-decoration:underline;text-underline-offset:4px}
.copy-email{border:0;border-bottom:1px solid #d9bce8;padding:8px 0;min-height:44px;background:transparent;color:var(--on-brand);font-size:14px;margin-top:12px}.copy-email:hover{color:#fff}
.email-copy-status{font-size:12px;color:#fff;max-width:35ch;line-height:1.5;margin-top:8px}.email-copy-status:empty{margin:0}
.contact-intro :focus-visible,.site-footer :focus-visible,.ci-logo.dark :focus-visible{outline-color:#fff}
.contact-form{background:#fff;color:var(--ink);padding:32px;border-radius:var(--radius);min-width:0}
.contact-form h3{font-size:25px;font-weight:550;margin-bottom:12px}.form-required{font-size:12px;color:var(--muted);margin-bottom:24px}
.contact-form label{display:block;font-size:13px;font-weight:500;color:var(--ink);margin-bottom:20px;min-width:0}.contact-form label>span{color:var(--brand)}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;max-width:100%;min-height:48px;padding:10px 0;margin-top:4px;border:0;border-bottom:1px solid var(--control-line);border-radius:0;background:#fff;color:var(--ink);font-size:16px;line-height:1.5;resize:vertical}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted);opacity:1}.contact-form select{padding-right:24px;appearance:auto}.contact-form textarea{min-height:96px}
.contact-form input:user-invalid,.contact-form textarea:user-invalid{border-bottom:2px solid var(--brand);background:var(--mineral)}
.form-hint{font-size:12px;color:var(--muted);line-height:1.7;margin:4px 0 24px}.form-hint a{text-decoration:underline;text-underline-offset:3px}.contact-form .button{width:100%;gap:12px;padding:14px 16px;text-align:left}
.form-status{font-size:12px;line-height:1.6;color:var(--brand);margin-top:16px}.form-status:empty{margin:0}
.form-result{margin-top:16px;border-top:1px solid var(--line);padding-top:20px;font-size:13px;line-height:1.7}.form-result[hidden]{display:none}.form-result button{margin-top:16px;padding:10px 12px;min-height:44px;border:1px solid var(--brand);border-radius:var(--radius);background:#fff;color:var(--brand);font-size:12px;font-weight:500}.form-result #copy-status{margin:12px 0}.form-result label{margin-bottom:0}.form-result textarea{font-size:14px}
.site-footer{background:var(--brand);color:#fff;padding:0 var(--gutter) 24px}
.footer-top,.footer-bottom{max-width:calc(var(--max) - var(--gutter)*2);margin-inline:auto}
.footer-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap);padding-block:32px;border-top:1px solid var(--brand-line)}
.footer-brand>p{font-size:12px;line-height:1.8;color:var(--on-brand);margin-top:16px}.footer-meta{display:flex;justify-content:space-between;align-items:start;gap:24px}.footer-meta address{font-size:13px;line-height:1.8;color:var(--on-brand);font-style:normal}
.back-top{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:12px;white-space:nowrap}.back-top span{font-size:21px}
.footer-bottom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px var(--column-gap);border-top:1px solid var(--brand-line);padding-top:24px;font-size:12px;color:var(--on-brand);line-height:1.6}
.footer-bottom>div{display:flex;gap:24px}.footer-bottom a{display:inline-block;padding-block:4px;font-size:14px}.footer-bottom a:hover{text-decoration:underline;text-underline-offset:4px}.footer-note{grid-column:2;max-width:50ch}
.legal{min-height:calc(100svh - var(--header-height) - 120px);padding-block:var(--section-space)}
.legal h1{font-size:var(--type-feature);margin-bottom:40px}.legal h2{font-size:clamp(22px,2vw,28px);margin:40px 0 16px;max-width:38ch}
.legal p,.legal ul{max-width:72ch;font-size:16px;color:var(--muted);line-height:1.85;margin:16px 0}.legal ul{padding-left:24px}.legal a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.legal .return-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px;margin-bottom:32px}
/* The CI document uses the same rails and spacing as the website. */
.ci-wrap{max-width:var(--max);margin-inline:auto;padding:var(--section-space) var(--gutter)}
.ci-kicker{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ci-head{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap);align-items:end;margin-top:24px;margin-bottom:var(--section-space)}
.ci-head h1{font-size:clamp(46px,6vw,80px)}.ci-head h1 span{color:var(--brand)}.ci-head p{font-size:17px;color:var(--muted);max-width:48ch}
.ci-section{margin-block:var(--section-space)}.ci-section>h2{font-size:clamp(26px,2.8vw,38px);margin-bottom:24px}.ci-section>p{font-size:16px;color:var(--muted);max-width:72ch;margin:20px 0}
.ci-logos,.ci-type,.ci-rules,.ci-picture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.ci-logo{min-height:240px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:32px;background:var(--brand-surface);border-radius:var(--radius);min-width:0}.ci-logo.dark{background:var(--brand)}.ci-logo img{width:100%;max-width:340px}.ci-logo a{font-size:13px;line-height:1.6;margin-top:24px;text-decoration:underline;text-underline-offset:4px;color:var(--brand);text-align:center;overflow-wrap:anywhere}.ci-logo.dark a{color:#fff}
.ci-downloads{display:flex;flex-wrap:wrap;gap:16px 24px;font-size:13px;margin:24px 0}.ci-downloads a{text-decoration:underline;text-underline-offset:4px}
.swatches{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.swatch{padding:20px 16px;min-height:160px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--line);border-radius:var(--radius)}.swatch b{font-size:13px;font-weight:500}.swatch code{font:12px/1.7 var(--body)}
.ci-type{gap:var(--column-gap);padding-block:32px;border-block:1px solid var(--line)}.ci-type strong{display:block;font-size:13px;font-weight:500;margin-bottom:24px;color:var(--muted)}.ci-type .manrope{font:500 clamp(32px,3.4vw,46px)/1.2 var(--display);letter-spacing:-.04em}.ci-type .dmsans{font:400 clamp(30px,3vw,40px)/1.3 var(--body)}.ci-type small{display:block;margin-top:24px;font-size:13px;color:var(--muted)}
.ci-rule{padding:32px;background:var(--brand-surface);border-radius:var(--radius)}.ci-rule h3{font-size:20px;margin-bottom:16px}.ci-rule p{font-size:16px;color:var(--muted)}
.ci-picture-grid img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius)}.ci-picture-grid figcaption{font-size:12px;color:var(--muted);margin-top:12px;line-height:1.5}
.ci-banner{background:var(--brand);color:#fff;padding:var(--block-space);margin-top:var(--section-space);border-radius:var(--radius)}.ci-banner h2{font-size:var(--type-section)}.ci-banner h2 span{color:var(--brand-light)}.ci-banner p{font-size:14px;color:var(--on-brand);margin-top:24px}
.ci-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:12px;color:var(--muted);padding-top:32px;border-top:1px solid var(--line);margin-top:var(--section-space)}
@media(max-width:1200px) and (min-width:901px){.form-row{grid-template-columns:1fr}}
@media(max-width:1100px){.site-header{gap:24px}.desktop-nav{gap:20px}.brand-logo{width:148px}.header-contact{gap:16px}.contact-form{padding:28px}}
@media(max-width:1000px){
  :root{--header-height:76px}
  .site-header{justify-content:space-between}.desktop-nav,.header-contact{display:none}
  .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;background:transparent;border:1px solid var(--line);border-radius:var(--radius);width:44px;height:44px;padding:10px}
  .menu-toggle span{display:block;height:1px;width:20px;background:var(--brand);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .mobile-nav:not([hidden]){display:flex;flex-direction:column;position:absolute;left:var(--gutter);right:var(--gutter);top:calc(100% - 1px);padding:16px 20px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 32px #28153214;z-index:10}.mobile-nav a{padding:12px 0;font-size:15px}
  .intro-grid,.ci-head{grid-template-columns:1fr;gap:24px}.intro-copy{max-width:62ch;font-size:17px}
  .swatches{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:40px}.contact-intro>p br{display:none}.contact-form{padding:32px}}
@media(max-width:900px){
  .service-body{grid-template-columns:1fr;gap:24px}.service-copy{max-width:64ch}.service-picture img{aspect-ratio:16/10}
  .partner-panel{grid-template-columns:1fr;gap:32px}.partner-copy>p{max-width:64ch}
  .about{grid-template-areas:'content content' 'facade detail';gap:32px 16px}.about h2{font-size:var(--type-section)}.about-facade{display:block}.about-facade img,.about-detail img{height:auto;aspect-ratio:4/5;flex:none;object-position:55% center}.about-detail img{object-position:center 64%}
  .process-steps{grid-template-columns:1fr;border:0;gap:0;margin-top:32px}.process-steps li{border-top:1px solid var(--line);padding:24px 0;display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px 16px}.step-number{grid-row:1/3;margin:0;line-height:2}.process-steps h3{margin:0}.process-steps p{max-width:64ch}
  .ci-type,.ci-logos,.ci-rules{grid-template-columns:1fr}.ci-logo{min-height:220px}
}
@media(max-width:600px){
  :root{--gutter:24px;--hero-frame:0px;--header-height:72px;--section-space:64px;--panel-space:56px}
  .brand-logo{width:144px}.hero{border-radius:0;height:calc(100svh - var(--header-height));min-height:520px;max-height:760px}.hero-content{padding-block:36px 64px}.hero-image{object-position:63% center}.hero-shade{background:linear-gradient(90deg,#18111db3,#18111d59),linear-gradient(0deg,#18111d52,transparent 50%)}
  .hero .eyebrow{font-size:12px;margin-bottom:24px;letter-spacing:.12em}.hero h1{line-height:1.07}.hero-description{font-size:15px;max-width:34ch;margin-top:24px}.hero-actions{flex-direction:column;align-items:flex-start;gap:8px;margin-top:28px}.hero-actions .button{font-size:14px;padding:14px 18px;gap:20px}.hero-secondary{font-size:14px;text-decoration:none;border:0;border-bottom:1px solid #ffffff80}.image-disclosure{right:var(--gutter);bottom:16px}
  .intro-copy{font-size:16px;line-height:1.8}.audiences{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;margin-top:32px;font-size:12px}.audience-region{margin:0}
  .service-item>summary{padding-block:22px;min-height:80px}.service-body ul{font-size:14px}
  .partner-services strong{font-size:17px}.partner-services small{font-size:12px}.about-content>p{font-size:16px}.about figcaption{font-size:12px}
  .process-steps p{font-size:15px}.contact-intro>p{max-width:32ch}.contact-layout{gap:32px}.contact-phone{font-size:18px}.contact-form{padding:24px}.contact-form h3{font-size:23px}.form-row{grid-template-columns:1fr;gap:0}.contact-form .button{padding:14px 12px}
  .footer-top{grid-template-columns:1fr;gap:28px}.footer-meta{gap:20px}.footer-bottom{grid-template-columns:1fr;gap:16px}.footer-note{grid-column:1}.footer-bottom>div{gap:24px}
  .legal h1{margin-bottom:32px}.legal h2{margin-top:32px}.legal .return-link{margin-bottom:24px}
  .ci-head{margin-bottom:64px}.ci-head p{font-size:16px}.swatches{grid-template-columns:repeat(2,minmax(0,1fr))}.swatch{min-height:136px;padding:16px}.ci-rule,.ci-logo{padding:24px}.ci-type{gap:32px}.ci-picture-grid{gap:24px 16px}.ci-picture-grid img{aspect-ratio:4/5}.ci-banner{padding:28px}
}
@media(max-width:359px){:root{--gutter:20px}.contact-form{padding:20px}.contact-form .button{gap:8px}.ci-banner{padding:24px}.footer-meta address{font-size:12px}}
@media(max-height:680px) and (min-width:601px){.hero{min-height:460px}.hero-content{padding-block:28px}.hero h1{font-size:clamp(52px,6.8vw,80px)}.hero .eyebrow{margin-bottom:20px}.hero-description{margin-top:20px}.hero-actions{margin-top:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
@media print{.site-header,.ci-back{display:none}.ci-wrap{padding:15mm}.ci-section{break-inside:avoid}.ci-logos{grid-template-columns:1fr 1fr}.ci-logo,.swatch,.ci-banner{-webkit-print-color-adjust:exact;print-color-adjust:exact}a{text-decoration:none!important}}

.ci-tones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px var(--column-gap);margin:32px 0}.ci-tones>div{border-top:1px solid var(--line);padding-top:12px}.ci-tones dt{font-size:14px;color:var(--ink)}.ci-tones dd{margin:4px 0 0;font:12px/1.7 var(--body);color:var(--muted)}

.process>h2 span{display:inline-block}.site-footer--compact{padding-top:24px}.site-footer--compact .footer-bottom{border-top:0;padding-top:0}
