@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.e310b55a7fd9.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}

:root{color-scheme:dark;--bg:#091116;--surface:#101d26;--ink:#f3f8fb;--muted:#aac3d4;--line:#29404e;--field-border:#547387;--accent:#20cdf5;--brand:#06b7e8;--button:#08bde9;--button-ink:#03151d;--radius:6px;--max:1240px;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-synthesis:none}

:root[data-theme=light]{color-scheme:light;--bg:#f5f9fc;--surface:#edf4f8;--ink:#14232e;--muted:#506779;--line:#ccdae4;--field-border:#788c9b;--accent:#00739c;--button:#0074b9;--button-ink:#fff}

/* Shared design vocabulary. Page styles own composition, these tokens own appearance. */
:root{
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;
  --space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;
  --space-11:44px;--space-12:48px;--space-13:52px;--space-14:56px;--space-15:60px;
  --space-16:64px;--space-18:72px;--space-19:76px;--space-20:80px;--space-24:96px;
  --text-meta:11px;--text-caption:12px;--text-small:13px;--text-control:14px;
  --text-body:15px;--text-base:16px;--text-lead:18px;--text-intro:20px;
  --type-display:clamp(42px,5.8vw,78px);--type-page:clamp(34px,4.2vw,50px);
  --type-hero:clamp(46px,4.65vw,67px);--type-product:clamp(44px,5vw,72px);
  --type-feature:clamp(39px,4.5vw,58px);--type-section:clamp(27px,3vw,40px);
  --type-subsection:clamp(23px,2.1vw,28px);--type-item:22px;
  --leading-title:1.15;--leading-copy:1.6;--leading-body:1.65;
  --tracking-title:-.04em;--tracking-display:-.05em;
  --weight-regular:400;--weight-book:500;--weight-medium:600;--weight-heading:650;
  --weight-bold:700;--weight-strong:750;--weight-brand:800;
  --radius-sm:4px;--radius-lg:8px;--radius-round:50%;
  --shadow-popover:0 12px 28px #0002;--shadow-raised:0 10px 40px #0002;
  --shadow-media:0 20px 50px #1226330b;
  --control-size:44px;--header-height:82px;--button-height:52px;--field-height:48px;
  --gutter:48px;--section-space:96px;--prose-section-space:48px;--prose-subsection-space:36px;
  --hero-bg:#091116;--hero-ink:#f3f8fb;--hero-muted:#c4d6df;--hero-accent:#77ddf5;
  --hero-button:#08bde9;--hero-button-ink:#03151d;
  --motion-fast:160ms;--motion-response:200ms;--motion-feedback:420ms;
  --motion-enter:760ms;--motion-reveal:900ms;--motion-draw:1000ms;--motion-hero:1100ms;
  --motion-stagger:100ms;--motion-slide-mobile:26px;--motion-rise-mobile:20px;--motion-rise:40px;--motion-slide:48px;--motion-image-rise:32px;
  --ease-standard:ease;--ease-out:ease-out;--ease-enter:cubic-bezier(.2,.7,.2,1);
}
/* Heading roles are independent of HTML level. All pages use this same scale. */
.title-display{font-size:var(--type-display);line-height:1.08;letter-spacing:var(--tracking-display)}
.title-page{font-size:var(--type-page);line-height:1.1;letter-spacing:var(--tracking-display)}
.title-hero{font-size:var(--type-hero);line-height:1.08;letter-spacing:var(--tracking-display)}
.title-product{font-size:var(--type-product);line-height:1.02;letter-spacing:-.065em}
.title-feature{font-size:var(--type-feature);letter-spacing:var(--tracking-display)}
.title-section{font-size:var(--type-section)}
.title-subsection{font-size:var(--type-subsection)}
.title-item{font-size:var(--type-item);line-height:1.25}
.title-small{font-size:var(--text-lead);line-height:1.3;letter-spacing:-.025em}
.title-label{font-size:var(--text-caption);line-height:1.5;letter-spacing:.09em;text-transform:uppercase}
@media(max-width:1100px){:root{--gutter:32px;--type-hero:52px}}
@media(max-width:900px){:root{--section-space:76px}}
@media(max-width:900px) and (min-width:681px){:root{--type-hero:46px}}
@media(max-width:760px){:root{--type-page:36px;--type-product:43px}}
@media(max-width:680px){:root{--gutter:20px;--header-height:74px;--section-space:64px;--button-height:48px;--type-display:42px;--type-hero:clamp(33px,8.8vw,48px);--type-feature:41px;--type-section:29px;--type-subsection:24px;--type-item:20px;--prose-section-space:36px;--prose-subsection-space:28px}}
@media(max-width:640px){:root{--type-product:50px}}
@media(max-width:480px){:root{--type-page:34px}}
@media(max-width:360px){:root{--gutter:16px;--type-display:36px;--type-page:31px;--type-hero:30px;--type-section:27px}}
@media print{:root{--type-hero:30px}}

*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:28px}
body{margin:0;background:var(--bg);color:var(--ink);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}
button,input,select,textarea{font:inherit}
button,a,input,summary,select,textarea{-webkit-tap-highlight-color:transparent}
button,summary{cursor:pointer}
button{color:inherit}
a:hover{color:var(--accent)}
a,button,summary{touch-action:manipulation}
img,svg{max-width:100%;display:block}
img{height:auto}
p,h1,h2,h3,h4,figure{margin:0}
p+p{margin-top:1em}
h1,h2,h3{font-weight:var(--weight-heading);letter-spacing:var(--tracking-title);line-height:var(--leading-title);text-wrap:balance;overflow-wrap:anywhere}
h1{font-size:var(--type-page)}
h2{font-size:var(--type-section)}
h3{font-size:var(--type-item)}
ul,ol{margin:0;padding-left:1.2em}
li+li{margin-top:.4em}
:focus-visible{outline:3px solid var(--accent);outline-offset:5px;border-radius:var(--radius-sm)}
::selection{background:var(--accent);color:var(--bg)}
.container{width:min(var(--max),calc(100% - 2 * var(--gutter)));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{background:var(--bg);position:relative;z-index:20}
.header-inner{height:var(--header-height);display:flex;align-items:center;border-bottom:1px solid var(--line);gap:var(--space-7)}
.brand{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;white-space:nowrap;flex-shrink:0;font-size:23px;font-weight:var(--weight-brand);letter-spacing:-1px}

.desktop-nav{display:flex;gap:var(--space-7);margin-left:auto;align-items:center}
.desktop-nav a{font-size:var(--text-small);text-decoration:none;padding-block:var(--space-4);white-space:nowrap;position:relative}
.desktop-nav a[aria-current=page]::after{content:'';height:2px;position:absolute;bottom:8px;left:0;right:0;background:var(--accent)}
.header-controls{display:flex;align-items:center;gap:var(--space-2);padding-left:var(--space-5);border-left:1px solid var(--line)}
.header-dropdown{position:relative}
.header-dropdown summary{list-style:none;display:flex;align-items:center;justify-content:center;min-height:var(--control-size);min-width:var(--control-size)}
.header-dropdown summary::-webkit-details-marker{display:none}
.mobile-menu{display:none}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-8);min-height:var(--button-height);padding:var(--space-3) var(--space-6);font-size:var(--text-control);font-weight:var(--weight-strong);text-decoration:none;border:1px solid transparent;border-radius:var(--radius);line-height:1.35}
.button span{font-size:25px;font-weight:var(--weight-regular);line-height:1}
.button-primary{background:var(--button);color:var(--button-ink)}
.button-primary:hover{background:var(--ink);color:var(--bg)}
.button:disabled,.control-button:disabled{cursor:not-allowed;opacity:.65}
.control-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-size);padding:var(--space-3) var(--space-4);border:1px solid var(--field-border);border-radius:var(--radius);background:transparent;color:var(--ink);font:inherit;font-size:var(--text-control);font-weight:var(--weight-heading);line-height:1.4}
.control-button:hover{background:var(--surface);border-color:var(--accent)}
.control-button[aria-pressed=true]{background:var(--button);border-color:var(--button);color:var(--button-ink)}
.text-link{display:inline-flex;align-items:center;gap:var(--space-5);font-size:var(--text-body);text-decoration:none;line-height:1.5;padding:var(--space-2) 0}
.text-link::after{content:'→';color:var(--accent);font-size:22px}
.text-link[href^="https://"]::after{content:'↗'}
.text-link:has(span)::after{display:none}
.text-link span{color:var(--accent);font-size:22px}
.hero-actions .text-link{border-bottom:1px solid var(--line);padding:0 0 var(--space-1)}
.section{padding:var(--section-space) 0}
.section-tinted{background:var(--surface)}
.eyebrow{color:var(--accent);font-size:var(--text-meta);letter-spacing:.13em;text-transform:uppercase;font-weight:var(--weight-brand);margin-bottom:var(--space-4)}
.section-cta{border-top:1px solid var(--line);padding:var(--space-19) 0}
.closing-cta{display:flex;align-items:center;gap:var(--space-18);justify-content:space-between}
.closing-cta>div{max-width:670px}
.closing-cta h2{margin-bottom:var(--space-4)}
.closing-cta p:not(.eyebrow){color:var(--muted);max-width:600px}
.closing-cta .button{flex-shrink:0}
.page-hero{padding:var(--space-20) 0 var(--space-19);border-bottom:1px solid var(--line)}
.page-hero h1{max-width:1030px;margin-bottom:var(--space-7)}
.page-hero .intro{font-size:var(--text-lead);max-width:700px;color:var(--muted)}
.faq-list details{border-top:1px solid var(--line);padding:var(--space-5) 0}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:var(--space-6);font-size:var(--text-lead);font-weight:var(--weight-heading)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{font-size:24px;color:var(--accent);font-weight:var(--weight-regular)}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details p{font-size:var(--text-control);color:var(--muted);padding-top:var(--space-5)}
.contact-form{position:relative}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}
.form-field{margin-bottom:var(--space-6)}
.form-field label{display:block;font-size:var(--text-small);font-weight:var(--weight-bold);margin-bottom:var(--space-2)}
.form-field input,.form-field select,.form-field textarea{width:100%;display:block;border:1px solid var(--field-border);border-radius:var(--radius-sm);background:var(--bg);padding:var(--space-3) var(--space-3);color:var(--ink);font-size:var(--text-base);min-height:var(--field-height)}
.form-field textarea{resize:vertical;min-height:160px}
.form-note{font-size:var(--text-small)!important;line-height:var(--leading-body);color:var(--muted);margin:var(--space-5) 0}
.form-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.contact-form .button{margin-top:3px}
#contact-status{font-size:var(--text-control);line-height:var(--leading-copy);margin-top:var(--space-5);color:var(--ink)}
#contact-status:empty{display:none}
.legal-content{max-width:820px}
.prose>h2{margin:var(--prose-section-space) 0 var(--space-5)}
.prose>:first-child{margin-top:0}
.prose>h3{margin:var(--prose-subsection-space) 0 var(--space-4)}
.prose h3+.legal-facts{margin-top:0}
.prose>p{font-size:var(--text-body)}
.prose a{overflow-wrap:anywhere}
.legal-facts{margin:var(--space-6) 0 var(--space-7)}
.legal-facts>div{display:grid;grid-template-columns:1fr 1.6fr;gap:var(--space-7);border-bottom:1px solid var(--line);padding:var(--space-4) 0;font-size:var(--text-control)}
.legal-facts dt{color:var(--muted)}
.legal-facts dd{margin:0}
.site-footer{border-top:1px solid var(--line);padding:var(--space-14) 0 var(--space-6)}
.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:var(--space-14);align-items:start}
.footer-brand .brand{display:inline-flex;margin-bottom:var(--space-5)}
.footer-brand p{font-size:var(--text-small);color:var(--muted);max-width:290px}
.footer-nav{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-small);align-items:flex-start}
.footer-nav a{text-decoration:none}
.footer-contact{font-size:var(--text-small);color:var(--muted)}
.footer-contact>a{display:inline-block;font-size:var(--text-lead);color:var(--ink);margin-bottom:var(--space-3)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:var(--space-11);padding-top:var(--space-5);gap:var(--space-5);font-size:var(--text-meta);color:var(--muted)}
.footer-legal{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5)}
.footer-legal a{text-decoration:none}
.not-found{min-height:55vh}
.not-found>h1{margin-bottom:var(--space-6)}
.not-found>.button,.not-found>.hero-actions{margin-top:var(--space-7)}
.not-found-secondary{margin-top:var(--space-9);color:var(--muted)}
.not-found-secondary>h2{margin-bottom:var(--space-4)}
.form-result{display:none}
.form-result:target{display:block;margin-bottom:var(--space-7);padding:var(--space-5) var(--space-6);border-left:3px solid var(--accent);background:var(--bg);font-size:var(--text-control)}
.form-result h3{margin-bottom:var(--space-2)}

@media(max-width:1100px){

.desktop-nav{gap:var(--space-5)}

.button{gap:var(--space-6);padding-inline:var(--space-5)}
.closing-cta{gap:var(--space-11)}
.closing-cta>div{max-width:58%}
}

@media(max-width:900px){.desktop-nav{display:none}
.header-controls{margin-left:auto;border:0;padding:0}
.mobile-menu{display:block}
.mobile-menu summary{width:var(--control-size);min-width:var(--control-size)}
.menu-lines,.menu-lines::before{display:block;width:23px;height:1px;background:var(--ink);content:'';position:relative}
.menu-lines::before{top:7px}
.mobile-menu summary .menu-lines{transform:translateY(-4px)}
.mobile-menu[open] .menu-lines{transform:rotate(45deg)}
.mobile-menu[open] .menu-lines::before{top:0;transform:rotate(-90deg)}
.mobile-nav{position:absolute;right:-1px;top:58px;width:min(360px,calc(100vw - 40px));background:var(--bg);border:1px solid var(--line);padding:var(--space-4) var(--space-6);box-shadow:var(--shadow-popover)}
.mobile-nav a{display:flex;padding:var(--space-4) 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:var(--text-lead)}
.mobile-nav a:last-child{border:0}
.mobile-nav a[aria-current=page]{color:var(--accent)}
.hero-actions .text-link{font-size:var(--text-caption)}

.closing-cta{align-items:flex-start;flex-direction:column;gap:var(--space-6)}
.closing-cta>div{max-width:100%}
.form-row{display:block}
.footer-main{gap:var(--space-7)}
.footer-contact>a{font-size:var(--text-control)}
}

@media(max-width:680px){body{font-size:var(--text-body)}

.hero-actions .text-link{font-size:var(--text-small);gap:var(--space-3)}

.eyebrow{font-size:var(--text-meta);margin-bottom:var(--space-3)}
.closing-cta p{font-size:var(--text-control)}
.closing-cta .button{width:100%;font-size:var(--text-control)}
.page-hero{padding:var(--space-12) 0 var(--space-11)}
.page-hero h1{margin-bottom:var(--space-6)}
.page-hero .intro{font-size:var(--text-base)}
.form-row{display:grid;grid-template-columns:1fr;gap:0}
.contact-form .button{width:100%}

.legal-facts>div{grid-template-columns:1fr;gap:var(--space-1);padding:var(--space-4) 0}
.prose>p{font-size:var(--text-control)}
.footer-main{grid-template-columns:1fr 1fr;gap:var(--space-8) var(--space-5)}
.footer-brand{grid-column:1/-1}
.footer-brand p{max-width:100%}
.footer-nav{font-size:var(--text-caption);gap:var(--space-3)}
.footer-contact{font-size:var(--text-caption)}
.footer-contact>a{font-size:var(--text-small)}
.footer-bottom{display:block;margin-top:var(--space-7);padding-top:var(--space-5);font-size:var(--text-meta)}
.footer-legal{margin-top:var(--space-4);gap:var(--space-3) var(--space-6);font-size:var(--text-caption)}
.site-footer{padding-top:var(--space-9)}
.not-found-secondary{font-size:var(--text-control)}
}

@media(max-width:360px){
.brand{font-size:var(--text-lead)}

.hero-actions .text-link{font-size:var(--text-caption)}
.footer-main{grid-template-columns:1fr}
.footer-brand{grid-column:auto}
}

@media(prefers-reduced-motion:no-preference){a,button{transition:color var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}
.faq-list summary span{transition:transform var(--motion-fast) var(--ease-standard)}
}

@media print{.site-header,.site-footer,.hero-actions,.section-cta,.contact-form{display:none}
:root{--bg:#fff;--ink:#000;--muted:#333;--line:#ccc;--accent:#000;--surface:#fff}
.container{width:100%}
.section{padding:var(--space-6) 0}
.page-hero{padding:var(--space-4) 0}
.button{border:1px solid #000}
a{text-decoration:underline}
}

/* Shared header controls and their responsive composition. */

.brand-emblem{display:block;flex-shrink:0}
.brand .brand-mark-day,.brand .brand-mark-night{width:36px;height:36px}
.brand .brand-mark-day{display:none}
.brand .brand-mark-night{display:block}
:root[data-theme=light] .brand .brand-mark-day{display:block}
:root[data-theme=light] .brand .brand-mark-night{display:none}

.language-summary{gap:var(--space-2);padding-inline:var(--space-3);border:1px solid var(--line);border-radius:var(--radius);font-size:var(--text-caption);font-weight:var(--weight-strong);letter-spacing:.04em;color:var(--ink)}
.language-chevron{flex:none;transition:transform var(--motion-fast) var(--ease-standard)}
.language-dropdown[open] .language-chevron{transform:rotate(180deg)}
.language-dropdown[open] .language-summary{border-color:var(--accent);color:var(--accent)}
.language-options{position:absolute;right:0;top:calc(100% + 8px);width:176px;padding:var(--space-1);background:var(--bg);border:1px solid var(--line);box-shadow:var(--shadow-popover);border-radius:var(--radius)}
.language-options a{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);min-height:var(--control-size);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-small);text-decoration:none}
.language-options a:hover,.language-options a[aria-current]{background:var(--surface);color:var(--accent)}
.language-options a[aria-current]{font-weight:var(--weight-strong)}
.language-option-code{font-size:var(--text-meta);letter-spacing:.06em;color:var(--muted)}
.theme-toggle{display:flex;align-items:center;justify-content:center;flex:none;width:var(--control-size);height:var(--control-size);padding:0;border:1px solid var(--line);border-radius:var(--radius-round);background:transparent;color:var(--ink)}
.theme-toggle[hidden]{display:flex;visibility:hidden;pointer-events:none}
.theme-toggle:hover{border-color:var(--accent);color:var(--accent)}
.theme-toggle svg{width:20px;height:20px}
@media(max-width:1100px){.header-inner{gap:var(--space-5)}.brand{font-size:21px}.brand .brand-mark-day,.brand .brand-mark-night{width:32px;height:32px}.header-controls{gap:var(--space-3);padding-left:var(--space-4)}}
@media(max-width:900px){.header-controls{padding-left:0}.language-options{right:0}}
@media(max-width:680px){.header-inner{height:var(--header-height);gap:var(--space-2)}.brand{font-size:var(--text-intro);gap:var(--space-2)}.brand .brand-mark-day,.brand .brand-mark-night{width:30px;height:30px}.header-controls{gap:var(--space-2)}.language-summary{font-size:var(--text-meta);padding-inline:var(--space-2);gap:var(--space-1)}.mobile-nav{top:54px}.language-options{width:170px}}
@media(max-width:360px){.header-inner{gap:var(--space-2)}.brand{font-size:var(--text-lead);gap:var(--space-2)}.brand .brand-mark-day,.brand .brand-mark-night{width:26px;height:26px}.header-controls{gap:var(--space-1)}.language-summary{padding-inline:var(--space-2);gap:var(--space-1)}}
@media(prefers-reduced-motion:reduce){.language-chevron{transition:none}}

/* Compact interior compositions and accessible process diagrams. */
.inner-opening{padding:var(--space-11) 0 var(--space-8)}
.inner-opening h1{max-width:850px;margin:0 0 var(--space-4)}
.inner-opening .intro{max-width:740px;margin:0;font-size:var(--text-lead);line-height:var(--leading-copy);color:var(--muted)}
.interior-section{padding:var(--space-13) 0}

@media(max-width:760px){
.inner-opening{padding:var(--space-8) 0 var(--space-7)}.inner-opening .intro{font-size:var(--text-base)}
}
@media(max-width:480px){.interior-section{padding:var(--space-9) 0}}

/* Interior editorial pages: compact offers, useful process diagrams, clear principles. */
.section.service-offers-section{padding-top:var(--space-2);padding-bottom:var(--space-14)}
.service-offer{display:grid;grid-template-columns:52px minmax(0,1.1fr) minmax(0,1fr);gap:var(--space-7);align-items:start;padding:var(--space-8) 0;border-top:1px solid var(--line);scroll-margin-top:112px}
.service-offer:last-child{border-bottom:1px solid var(--line)}
.service-offer-symbol,.company-principle-symbol,.company-product-symbol{color:var(--accent)}
.service-offer-symbol{padding-top:var(--space-1)}
.service-offer-symbol svg{width:34px;height:34px}
.service-offer-copy h2{max-width:490px;margin:0 0 var(--space-3)}
.service-offer-copy p{max-width:450px;margin:0;color:var(--muted);font-size:var(--text-base);line-height:1.55}
.service-offer-deliverables h3{margin:1px 0 var(--space-3);color:var(--muted);text-transform:uppercase}
.service-offer-deliverables ul{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}
.service-offer-deliverables li{position:relative;padding-left:var(--space-5);font-size:var(--text-body);line-height:1.55}
.service-offer-deliverables li::before{position:absolute;top:.64em;left:0;width:6px;height:6px;border:1.5px solid var(--accent);border-radius:var(--radius-round);content:""}
.section.service-examples-section{padding-top:var(--space-14);padding-bottom:var(--space-14)}
.service-examples-heading h2,.service-faq-layout>h2,.company-section-title,.interior-compact-cta h2{margin:0}
.service-examples-heading>p:last-child{margin:var(--space-4) 0 0;color:var(--muted);font-size:var(--text-base)}
.section.service-faq-section{padding-top:var(--space-14);padding-bottom:var(--space-14)}
.service-faq-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:var(--space-16)}
.service-faq-layout>h2{max-width:340px}
.service-faq-layout .faq-list details:first-child{border-top:1px solid var(--line)}
.service-faq-layout .faq-list summary{font-size:var(--text-lead)}
.service-faq-layout .faq-list p{font-size:var(--text-base);line-height:1.6}
.section.services-company-cta{padding-top:var(--space-10);padding-bottom:var(--space-10)}
.interior-compact-cta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}
.interior-compact-cta .button{flex:none}
.section.company-principles-section{padding-top:var(--space-2);padding-bottom:var(--space-14)}
.company-section-title{margin-bottom:var(--space-7)}
.company-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-9)}
.company-principle{padding-top:var(--space-6);border-top:1px solid var(--line)}
.company-principle-symbol{margin-bottom:var(--space-4)}
.company-principle-symbol svg{width:32px;height:32px}
.company-principle h3{margin:0 0 var(--space-2)}
.company-principle p{max-width:310px;margin:0;color:var(--muted);font-size:var(--text-base);line-height:1.6}
.section.company-product-section{padding-top:var(--space-12);padding-bottom:var(--space-12)}
.company-own-product{display:grid;grid-template-columns:64px minmax(0,700px);gap:var(--space-7);align-items:start}
.company-product-symbol{padding-top:var(--space-1)}
.company-product-symbol svg{width:46px;height:46px}
.company-own-product h2{margin:0 0 var(--space-3)}
.company-own-product p:not(.eyebrow){max-width:610px;margin:0 0 var(--space-5);color:var(--muted);font-size:var(--text-lead);line-height:1.6}
@media(max-width:1000px){
  .service-offer{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr);gap:var(--space-5)}
  .service-faq-layout{gap:var(--space-9)}
  .company-principles{gap:var(--space-7)}
}
@media(max-width:760px){
  .service-offer{grid-template-columns:38px minmax(0,1fr);gap:var(--space-4) var(--space-5);padding:var(--space-7) 0}
  .service-offer-deliverables{grid-column:2}
  .service-offer-deliverables h3{margin-bottom:var(--space-2)}
  .service-faq-layout{grid-template-columns:1fr;gap:var(--space-6)}
  .company-principles{grid-template-columns:1fr;gap:var(--space-6)}
  .company-principle{display:grid;grid-template-columns:36px minmax(0,1fr);gap:var(--space-2) var(--space-5);padding-top:var(--space-6)}
  .company-principle-symbol{grid-row:1 / 3;margin:0}
  .company-principle h3{margin:0}
  .company-principle p{grid-column:2;max-width:none}
  .interior-compact-cta{align-items:flex-start;flex-direction:column;gap:var(--space-6)}
}
@media(max-width:480px){
  .section.service-offers-section{padding-bottom:var(--space-9)}
  .service-offer{grid-template-columns:29px minmax(0,1fr);gap:var(--space-4)}
  .service-offer-symbol svg{width:27px;height:27px}
  .service-offer-copy p,.service-offer-deliverables li{font-size:var(--text-body)}
  .section.service-examples-section,.section.service-faq-section{padding-top:var(--space-10);padding-bottom:var(--space-10)}
  .section.company-principles-section{padding-bottom:var(--space-10)}
  .company-own-product{grid-template-columns:36px minmax(0,1fr);gap:var(--space-4)}
  .company-product-symbol svg{width:31px;height:31px}
  .company-own-product p:not(.eyebrow){font-size:var(--text-base)}
  .section.company-product-section{padding-top:var(--space-9);padding-bottom:var(--space-9)}
  .section.services-company-cta{padding-top:var(--space-8);padding-bottom:var(--space-9)}
}

/* Compact contact page. */
.contact-page{padding:var(--space-12) 0 var(--space-16)}
.contact-page-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:"intro form" "help form";column-gap:88px;row-gap:var(--space-9);align-items:start}
.contact-heading{grid-area:intro}
.contact-heading .eyebrow{margin-bottom:var(--space-4)}
.contact-heading h1{max-width:440px;margin-bottom:var(--space-6)}
.contact-direct-label{font-size:var(--text-control);color:var(--muted);margin:0 0 var(--space-2)}
.contact-heading .contact-direct-email{margin:0;font-size:var(--text-intro);font-weight:var(--weight-heading);letter-spacing:-.025em;overflow-wrap:anywhere}
.contact-direct-email a{text-decoration-color:var(--line);text-underline-offset:6px}
.contact-form-wrap{grid-area:form;position:relative;min-width:0;scroll-margin-top:24px}
.contact-anchor{position:absolute;top:0;left:0;scroll-margin-top:24px}
.contact-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}
.contact-page .form-field{margin-bottom:var(--space-4)}
.contact-page .form-field textarea{min-height:130px;padding:var(--space-3) var(--space-3)}
.contact-message-hint{font-size:var(--text-small);line-height:var(--leading-copy);color:var(--muted);margin:var(--space-2) 0 0}
.contact-page .form-note{font-size:var(--text-small)!important;line-height:var(--leading-body);margin:var(--space-4) 0 var(--space-4);max-width:600px}
.contact-page .form-note a{white-space:nowrap}
.contact-page .contact-form .button{margin-top:0}
.contact-page .form-result:target{margin-bottom:var(--space-6);padding:var(--space-4) var(--space-5)}
.contact-orientation{grid-area:help;display:grid;gap:0;align-self:start;margin-top:0}
.contact-purpose{display:grid;grid-template-columns:44px minmax(0,1fr) 16px;align-items:start;gap:var(--space-3);padding:var(--space-5) 0;border-top:1px solid var(--line);text-decoration:none}
.contact-purpose-icon{color:var(--accent);padding-top:2px}
.contact-purpose-icon svg{width:38px;height:38px}
.contact-purpose strong{display:block;font-size:var(--text-body);line-height:1.5;letter-spacing:-.02em;margin-bottom:var(--space-1)}
.contact-purpose>span>span{display:block;font-size:var(--text-caption);line-height:var(--leading-copy);color:var(--muted)}
.contact-purpose-arrow{font-size:var(--text-intro);line-height:1.5;color:var(--accent)}
@media(max-width:1100px){.contact-page-grid{column-gap:var(--space-12);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.contact-heading .contact-direct-email{font-size:var(--text-lead)}}
@media(max-width:800px){.contact-page{padding:var(--space-8) 0 var(--space-12)}.contact-page-grid{grid-template-columns:1fr;grid-template-areas:"intro" "form";gap:var(--space-7);max-width:640px}.contact-heading h1{max-width:100%;margin-bottom:var(--space-3)}.contact-heading .eyebrow{margin-bottom:var(--space-3)}.contact-direct-label{font-size:var(--text-small);margin-bottom:var(--space-1)}.contact-heading .contact-direct-email{font-size:var(--text-lead)}.contact-orientation{display:none}}
@media(max-width:480px){.contact-page{padding-top:var(--space-6)}.contact-page-grid{gap:var(--space-6)}.contact-page .form-row{grid-template-columns:1fr;gap:0}.contact-page .form-field{margin-bottom:var(--space-4)}.contact-page .contact-form .button{width:100%}}

/* Accessible contact feedback; use field-specific borders instead of changing decorative rules. */
.form-field-error{color:var(--ink);font-size:var(--text-small);font-weight:var(--weight-heading);line-height:1.5;margin:var(--space-2) 0 0}
.form-field-error[hidden]{display:none}
.form-field [aria-invalid=true]{border-width:2px;border-color:var(--accent)}
#contact-message-limits{margin-top:var(--space-1)}

/* Optional audience measurement: equal choices and a persistent preference control. */
.cookie-settings{border:0;padding:0;background:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;cursor:pointer;font-size:inherit;color:inherit}
.cookie-settings:hover{color:var(--accent)}
.analytics-consent{position:fixed;z-index:80;bottom:20px;left:24px;right:24px;max-width:1192px;margin-inline:auto;background:var(--bg);color:var(--ink);border:1px solid var(--field-border);border-radius:var(--radius);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-raised);display:flex;align-items:center;gap:var(--space-8)}
.analytics-consent[hidden],.cookie-settings[hidden],.analytics-close[hidden]{display:none}
.analytics-copy{flex:1}
.analytics-copy h2{margin-bottom:var(--space-2)}
.analytics-copy p{font-size:var(--text-small);line-height:var(--leading-copy);color:var(--muted);max-width:730px}
.analytics-copy a{white-space:nowrap}
.analytics-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);flex-shrink:0}
.analytics-actions button{min-width:92px}

.analytics-actions .analytics-close{grid-column:1/-1;border-color:transparent;min-height:var(--control-size);padding:0;font-size:var(--text-caption);text-decoration:underline}
@media(max-width:760px){.analytics-consent{bottom:12px;left:12px;right:12px;display:block;padding:var(--space-4);max-height:calc(100dvh - 24px);overflow-y:auto}.analytics-actions{margin-top:var(--space-3)}.analytics-copy a{white-space:normal}}

/* Small directional feedback, without moving the layout. */
@media(prefers-reduced-motion:no-preference){
.button>span[aria-hidden],.text-link>span[aria-hidden],.text-link::after{transition:transform var(--motion-fast) var(--ease-standard)}
.button:is(:hover,:focus-visible)>span[aria-hidden],.text-link:is(:hover,:focus-visible)>span[aria-hidden],.text-link:is(:hover,:focus-visible)::after{transform:translateX(3px)}
}

.language-entry .hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:var(--space-3)}
