/* Swiss minimalist: strict grid, generous space, oversized type and asymmetry. Home layout: five stat-header cards, no media slots. Images: one home lead and one lead on each service page. */
:root{--base:#1e2530;--surface:#263140;--text:#fff;--accent:#a3e635;--muted:#c4cdd8;--muted-dark:#d0d8e2;--line:#526071;--ink:#18210f;--error:#ffb8b8;--s4:4px;--s8:8px;--s12:12px;--s16:16px;--s24:24px;--s32:32px;--s40:40px;--s64:64px;--max:1248px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background-color:var(--base);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;line-height:1.7}
[hidden]{display:none!important}
a{color:inherit;text-underline-offset:.22em}
a:hover{text-decoration-thickness:2px}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
h1,h2,h3,p,li{overflow-wrap:anywhere}
h1,h2,h3{line-height:1.08;letter-spacing:-.045em}
h1{font-size:clamp(2.7rem,6.5vw,6rem);font-weight:800;margin:var(--s16) 0 var(--s24)}
h2{font-size:clamp(1.8rem,3.4vw,3rem);font-weight:800;margin:0 0 var(--s24)}
h3{font-size:1.5rem;font-weight:800;margin:0 0 var(--s16)}
p{margin:0 0 var(--s24)}
ul,ol{margin:0 0 var(--s24);padding-left:var(--s24)}
li+li{margin-top:var(--s8)}
img{display:block;width:100%;height:auto;border-radius:0}
figure{margin:0}
.container{width:min(calc(100% - var(--s32)),var(--max));margin-inline:auto}
.skip-link{position:absolute;left:var(--s16);top:var(--s8);z-index:100;background-color:var(--accent);color:var(--ink);padding:var(--s12) var(--s16);transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
.site-header{height:52px;position:relative;z-index:30;background-color:transparent;color:var(--text)}
.site-header[data-scrolled="true"]{background-color:var(--base);color:var(--text)}
.header-row{height:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--s16)}
.header-row>*{min-width:0}
.brand{display:flex;align-items:center;gap:var(--s8);font-size:.9rem;font-weight:800;letter-spacing:-.025em;text-decoration:none;flex-shrink:1;min-width:0;overflow-wrap:anywhere;line-height:1.2}
.brand svg{width:23px;height:23px;flex-shrink:0;color:var(--accent)}
.desktop-nav,.header-cta{display:none}
.menu-toggle{width:44px;height:44px;flex-shrink:0;border:1px solid var(--line);background-color:var(--base);color:var(--text);display:grid;place-items:center;padding:var(--s8)}
.menu-toggle svg{width:22px;height:22px}
.mobile-menu{position:fixed;inset:52px 0 0;z-index:29;background-color:var(--base);color:var(--text);overflow-y:auto;padding:var(--s32) var(--s16);display:flex;flex-direction:column;justify-content:flex-start}
.mobile-menu nav{width:min(100%,var(--max));margin-block:auto;margin-inline:auto}
.mobile-menu ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--s16)}
.mobile-menu a{font-size:1.3rem;overflow-wrap:anywhere}
.mobile-menu .button{font-size:1rem}
.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s8);border:0;border-radius:999px;padding:var(--s12) var(--s24);background-color:var(--accent);color:var(--ink);font-weight:750;text-decoration:none;line-height:1.3;white-space:normal}
.button:hover{background-color:#b6f45a;color:var(--ink)}
.button.secondary{background-color:var(--surface);color:var(--text);border:1px solid var(--line)}
.hero{display:grid;grid-template-columns:1fr;gap:var(--s32);padding-block:var(--s64);align-items:start}
.hero>*{min-width:0}
.eyebrow{display:block;color:var(--accent);font-size:.875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:var(--s12)}
.hero-copy>p{font-size:1.125rem;color:var(--muted);max-width:55ch}
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--s16);align-items:center}
.hero-actions>*{min-width:0}
.hero-image{width:100%;aspect-ratio:4/3;object-fit:cover}
.image-note{display:block;font-size:.875rem;color:var(--muted);margin-top:var(--s12)}
.section{margin-block:0 var(--s64)}
.section-heading{display:grid;grid-template-columns:1fr;gap:var(--s24);padding-top:var(--s32);border-top:1px solid var(--line);margin-bottom:var(--s32)}
.section-heading>*{min-width:0}
.section-heading p{margin:0;color:var(--muted);max-width:60ch}
.stat-cards{display:grid;grid-template-columns:1fr;gap:var(--s24)}
.stat-cards>*{min-width:0}
.service-card{display:flex;flex-direction:column;background-color:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:0}
.metrics-strip{display:grid;grid-template-columns:1fr 1fr;gap:var(--s24);padding:var(--s24);border-bottom:1px solid var(--line)}
.metrics-strip>*{min-width:0}
.metric-value{display:block;font-size:1.05rem;font-weight:750;line-height:1.35;margin-bottom:var(--s12)}
.metric-label{display:block;font-size:.875rem;color:var(--muted);line-height:1.4}
.card-copy{padding:var(--s24);flex:1}
.card-copy h3{font-size:1.65rem}
.card-copy p{margin-bottom:0;color:var(--muted)}
.card-footer{padding:var(--s24);border-top:1px solid var(--line)}
.card-footer a{font-weight:750}
.support{display:grid;grid-template-columns:1fr;gap:var(--s32);padding-block:var(--s32);border-top:1px solid var(--line)}
.support>*{min-width:0}
.support p{color:var(--muted)}
.numbered-steps{list-style:none;padding:0;margin:0;counter-reset:steps}
.numbered-steps li{counter-increment:steps;border-top:1px solid var(--line);padding-block:var(--s24);display:grid;grid-template-columns:32px 1fr;gap:var(--s16)}
.numbered-steps li>*{min-width:0}
.numbered-steps li::before{content:counter(steps,decimal-leading-zero);color:var(--accent);font-weight:800}
.numbered-steps strong{display:block;margin-bottom:var(--s12)}
.numbered-steps p{margin:0}
.article-layout{display:grid;grid-template-columns:1fr;gap:var(--s32);margin-bottom:var(--s64)}
.article-layout>*{min-width:0}
.article-nav{border-top:1px solid var(--line);padding-top:var(--s24)}
.article-nav h2{font-size:1rem;letter-spacing:0;margin-bottom:var(--s16)}
.article-nav ol{font-size:.9375rem}
.article-body{max-width:76ch}
.article-body section{margin-bottom:var(--s64)}
.article-body section:last-child{margin-bottom:0}
.article-body h2{font-size:clamp(1.65rem,3vw,2.3rem)}
.article-body h3{font-size:1.25rem;letter-spacing:-.02em}
.article-body p,.article-body li{color:var(--muted)}
.article-body a{color:var(--text)}
.article-body .button{color:var(--ink)}
.callout{border-left:4px solid var(--accent);padding:var(--s24);background-color:var(--surface);color:var(--text)}
.callout p:last-child{margin-bottom:0}
.table-scroll{max-width:100%;overflow-x:auto;margin-bottom:var(--s24)}
table{width:100%;border-collapse:collapse;font-size:.9375rem}
th,td{text-align:left;vertical-align:top;padding:var(--s16);border:1px solid var(--line);overflow-wrap:anywhere}
th{background-color:var(--surface);color:var(--text)}
td{color:var(--muted)}
caption{text-align:left;font-weight:750;margin-bottom:var(--s12)}
.contact-grid{display:grid;grid-template-columns:1fr;gap:var(--s40);margin-bottom:var(--s64)}
.contact-grid>*{min-width:0}
.contact-panel{padding:var(--s24);background-color:var(--surface);color:var(--text);border:1px solid var(--line)}
.contact-panel h2{font-size:1.75rem}
.contact-panel p{color:var(--muted)}
.contact-panel address{font-style:normal;margin-bottom:var(--s24)}
.form-grid{display:grid;grid-template-columns:1fr;gap:var(--s24)}
.form-grid>*{min-width:0}
.field label{display:block;font-weight:700;margin-bottom:var(--s12)}
.field input,.field select,.field textarea{display:block;width:100%;border:1px solid var(--line);border-radius:0;padding:var(--s12) var(--s16);background-color:var(--base);color:var(--text)}
.field textarea{min-height:180px;resize:vertical}
.field small{display:block;color:var(--muted);margin-top:var(--s8)}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:var(--error)}
.form-notice{color:var(--muted);font-size:.9375rem;margin-top:var(--s24)}
.form-status{margin-top:var(--s24);border-left:4px solid var(--accent);padding-left:var(--s16)}
.form-status[data-error="true"]{color:var(--error);border-color:var(--error)}
.email-draft{margin-top:var(--s24)}
.legal-hero{padding-block:var(--s64);max-width:90ch}
.legal-hero h1{font-size:clamp(2.6rem,5vw,4.5rem)}
.legal-hero p{color:var(--muted);font-size:1.125rem}
.site-footer{background-color:#141b24;color:var(--text);padding-block:var(--s64);border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--s32)}
.footer-grid>*{min-width:0}
.site-footer h2{font-size:1rem;letter-spacing:0;margin-bottom:var(--s16)}
.site-footer p,.site-footer address{color:var(--muted-dark);font-size:.9375rem}
.site-footer address{font-style:normal;margin-bottom:var(--s16)}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li+li{margin-top:var(--s8)}
.footer-bottom{border-top:1px solid var(--line);margin-top:var(--s40);padding-top:var(--s24)}
.footer-bottom p:last-child{margin-bottom:0}
.footer-domain{display:inline-block;font-weight:750;margin-bottom:var(--s16);overflow-wrap:anywhere}
.site-footer :focus-visible{outline-color:var(--accent)}
.mobile-menu :focus-visible{outline-color:var(--accent)}
.contact-panel :focus-visible,.service-card :focus-visible,.callout :focus-visible{outline-color:var(--accent)}
@media(min-width:400px){.brand{font-size:1rem}}
@media(min-width:480px){.metrics-strip{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr 1fr}.field.full{grid-column:1/-1}}
@media(min-width:768px){.hero{grid-template-columns:7fr 5fr;gap:var(--s40);align-items:center}.hero-image{aspect-ratio:3/4}.section-heading{grid-template-columns:1fr 1fr}.stat-cards{grid-template-columns:1fr 1fr}.support{grid-template-columns:5fr 7fr;gap:var(--s64)}.article-layout{grid-template-columns:3fr 8fr;gap:var(--s64)}.contact-grid{grid-template-columns:7fr 4fr;gap:var(--s64)}.footer-grid{grid-template-columns:2fr 1fr 1fr}}
@media(min-width:1024px){.site-header{height:64px}.brand{font-size:.9rem;white-space:nowrap;flex-shrink:0}.desktop-nav{display:block;flex-shrink:1;min-width:0}.desktop-nav ul{display:flex;gap:var(--s16);list-style:none;margin:0;padding:0}.desktop-nav a{font-size:.875rem;white-space:nowrap;text-decoration:none}.desktop-nav a[aria-current="page"]{color:var(--accent);text-decoration:underline}.header-cta{display:inline-flex;white-space:nowrap;flex-shrink:0;font-size:.875rem;padding:var(--s8) var(--s16)}.menu-toggle{display:none}.mobile-menu{inset:64px 0 0}.hero{gap:var(--s64)}.stat-cards{grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}