/* Swiss minimalist: strict grid, generous space, oversized type, asymmetry. Layout: .stat-cards, three columns of cards with metric headers, copy and footer links; no media slots. Images: six lead images, one per editorial page. */
:root{--s4:4px;--s8:8px;--s12:12px;--s16:16px;--s24:24px;--s32:32px;--s40:40px;--s64:64px;--base:#1e1612;--surface:#2a201a;--text:#f5ecdf;--muted:#cbbcaf;--muted-dark:#cbbcaf;--accent:#f59e0b;--line:#685044;--card-line:#3d2f26;--max:1200px;--radius:20px}
*{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:16px;line-height:1.65}
a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}
a:hover{text-decoration-color:var(--accent)}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
p,h1,h2,h3,li,dd,address{overflow-wrap:anywhere}
h1,h2,h3,p,figure,dl{margin:0}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.1}
h1{font-size:clamp(2.6rem,6vw,5.5rem);letter-spacing:-.045em;max-width:16ch}
h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.025em}
h3{font-size:1.6rem}
p+p{margin-top:var(--s16)}
img{display:block;width:100%;height:auto;object-fit:cover}
ul,ol{padding-left:var(--s24);margin-block:var(--s16)}
li+li{margin-top:var(--s8)}
.container{width:min(calc(100% - var(--s32)),var(--max));margin-inline:auto}
.skip-link{position:absolute;left:var(--s16);top:var(--s8);z-index:20;transform:translateY(-160%);padding:var(--s8) var(--s16);background:var(--accent);color:var(--base)}
.skip-link:focus{transform:translateY(0)}
.site-header{height:64px;border-bottom:1px solid var(--card-line);position:relative;z-index:10}
.header-row{height:100%;display:flex;align-items:center;gap:var(--s24)}
.header-row>*{min-width:0}
.brand{display:flex;align-items:center;gap:var(--s8);text-decoration:none;font-size:1rem;font-weight:650;flex-shrink:1;min-width:0;overflow-wrap:anywhere;line-height:1.2}
.brand svg{width:25px;height:25px;flex-shrink:0;color:var(--accent)}
.desktop-nav{display:none;align-items:center;justify-content:center;gap:var(--s16);flex:1 1 auto}
.desktop-nav a{font-size:.875rem;white-space:nowrap;text-decoration:none;border-bottom:1px solid transparent}
.desktop-nav a:hover,.desktop-nav a[aria-current="page"]{border-bottom-color:var(--accent)}
.button{display:inline-flex;justify-content:center;align-items:center;gap:var(--s8);padding:var(--s12) var(--s24);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--base);font-weight:650;text-decoration:none;cursor:pointer;line-height:1.3}
.button:hover{background:var(--text);color:var(--base);border-color:var(--text)}
.header-cta{display:none;white-space:nowrap;flex-shrink:0;padding:var(--s8) var(--s16);font-size:.875rem}
.menu-toggle{margin-left:auto;flex-shrink:0;width:44px;height:40px;border:1px solid var(--line);border-radius:var(--s8);background:var(--surface);color:var(--text);cursor:pointer}
.menu-toggle svg{width:22px;height:22px;vertical-align:middle}
.mobile-menu{position:fixed;inset:64px 0 0;background:var(--surface);color:var(--text);overflow-y:auto;padding:var(--s32) var(--s24)}
.mobile-menu[hidden]{display:none}
.mobile-menu nav{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s24);max-width:var(--max);margin-inline:auto}
.mobile-menu a{font-size:1.25rem;overflow-wrap:anywhere}
.mobile-menu .button{margin-top:var(--s16)}
.site-footer :focus-visible,.mobile-menu :focus-visible{outline-color:var(--accent)}
main{padding-block:var(--s64)}
.eyebrow{font-size:.875rem;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s12)}
.lead{font-size:1.2rem;color:var(--muted);max-width:55ch;margin-top:var(--s24)}
.hero{display:grid;grid-template-columns:1fr;gap:var(--s40);padding:var(--s32);border:1px solid var(--card-line);border-radius:var(--radius);background-color:var(--base);background-image:radial-gradient(var(--line) .6px,transparent .6px);background-size:24px 24px}
.hero>*{min-width:0}
.hero-copy{background:var(--base);color:var(--text)}
.hero .button{margin-top:var(--s32)}
.hero-media{align-self:end}
.hero-media img{aspect-ratio:4/3;border-radius:var(--radius)}
.fact-panel{position:relative;margin-top:var(--s16);padding:var(--s24);background:var(--surface);color:var(--text);border:1px solid var(--card-line);border-radius:var(--radius)}
.facts{display:grid;grid-template-columns:1fr;gap:var(--s16)}
.facts>*{min-width:0}
.facts dt,.metric-strip dt{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.facts dd,.metric-strip dd{margin:var(--s4) 0 0;font-size:.875rem}
.section{margin-top:var(--s64)}
.section-heading{display:grid;grid-template-columns:1fr;gap:var(--s24);margin-bottom:var(--s32)}
.section-heading>*{min-width:0}
.section-heading p{max-width:56ch;color:var(--muted)}
.stat-cards{display:grid;grid-template-columns:1fr;gap:var(--s24)}
.stat-cards>*{min-width:0}
.service-card{display:flex;flex-direction:column;border:1px solid var(--card-line);border-radius:var(--radius);background:var(--surface);color:var(--text)}
.service-card>*{min-width:0}
.metric-strip{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16);padding:var(--s24);border-bottom:1px solid var(--card-line)}
.metric-strip>*{min-width:0}
.card-copy{padding:var(--s24);flex:1}
.card-copy p{color:var(--muted);margin-top:var(--s16)}
.card-footer{padding:var(--s24);border-top:1px solid var(--card-line)}
.text-link{text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:var(--s4);transition:border-color .15s}
.text-link:hover{border-color:var(--text)}
.split-section{display:grid;grid-template-columns:1fr;gap:var(--s32);padding:var(--s32);border:1px solid var(--card-line);border-radius:var(--radius);background:var(--surface);color:var(--text)}
.split-section>*{min-width:0}
.split-section p{color:var(--muted)}
.split-section ol{margin-bottom:0}
.page-intro{display:grid;grid-template-columns:1fr;gap:var(--s32);align-items:end;margin-bottom:var(--s64)}
.page-intro>*{min-width:0}
.page-intro img{aspect-ratio:4/3;border-radius:var(--radius)}
.article{max-width:78ch;margin-inline:auto}
.article section+section{margin-top:var(--s40)}
.article h2{font-size:2rem;margin-bottom:var(--s24)}
.article h3{font-size:1.4rem;margin-block:var(--s24) var(--s12)}
.article p,.article li{color:var(--muted)}
.article .button{margin-top:var(--s24)}
.article ol li{padding-left:var(--s4)}
.note{padding:var(--s24);border-left:3px solid var(--accent);background:var(--surface);color:var(--text);margin-block:var(--s32)}
.note p{color:var(--text)}
.table-scroll{overflow-x:auto;margin-block:var(--s24)}
table{width:100%;border-collapse:collapse;font-size:.9375rem}
th,td{text-align:left;vertical-align:top;padding:var(--s16);border-bottom:1px solid var(--line)}
th{background:var(--surface);color:var(--text);font-weight:650}
td{color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1fr;gap:var(--s40);margin-top:var(--s64)}
.contact-grid>*{min-width:0}
.contact-panel{padding:var(--s24);border:1px solid var(--card-line);border-radius:var(--radius);background:var(--surface);color:var(--text)}
.contact-panel h2{font-size:2rem;margin-bottom:var(--s24)}
.contact-panel address{font-style:normal;color:var(--muted);margin-block:var(--s24)}
form{display:grid;gap:var(--s24)}
form>*{min-width:0}
.field{display:flex;flex-direction:column;gap:var(--s8)}
label{font-size:.9375rem;font-weight:600}
input,select,textarea{width:100%;min-width:0;padding:var(--s12) var(--s16);border:1px solid var(--line);border-radius:var(--s8);background:var(--base);color:var(--text)}
textarea{resize:vertical;min-height:160px}
input[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:var(--accent)}
.help,.form-status{font-size:.875rem;color:var(--muted)}
.form-status:not(:empty){padding:var(--s16);border:1px solid var(--line)}
.legal-intro{margin-bottom:var(--s64)}
.legal-intro h1{font-size:clamp(2.6rem,5vw,4rem)}
.site-footer{padding-block:var(--s64);border-top:1px solid var(--line);background:var(--surface);color:var(--text)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--s32)}
.footer-grid>*{min-width:0}
.footer-title{font-size:.875rem;font-weight:650;margin-bottom:var(--s12);color:var(--text)}
.site-footer p,.site-footer address{font-size:.875rem;color:var(--muted-dark)}
.site-footer address{font-style:normal;margin-block:var(--s12)}
.site-footer a{overflow-wrap:anywhere}
.footer-links{list-style:none;padding:0;margin:0;font-size:.875rem}
.footer-links li+li{margin-top:var(--s8)}
.footer-bottom{margin-top:var(--s40);padding-top:var(--s24);border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:var(--s16);justify-content:space-between}
.footer-bottom>*{min-width:0}
@media(max-width:479px){.site-header{height:52px}.mobile-menu{top:52px}.hero{padding:var(--s24)}.brand{font-size:.875rem}.split-section{padding:var(--s24)}.contact-panel .button{width:100%}}
@media(min-width:400px){.facts{grid-template-columns:1fr 1fr}}
@media(min-width:480px){.facts{grid-template-columns:repeat(3,1fr)}}
@media(min-width:768px){.container{width:min(calc(100% - var(--s64)),var(--max))}.hero{grid-template-columns:1.15fr 1fr;padding:var(--s40)}.hero-media{padding-top:var(--s64)}.fact-panel{margin-top:calc(var(--s32) * -1);margin-left:calc(var(--s32) * -1);margin-right:var(--s32)}.facts{grid-template-columns:1fr}.section-heading{grid-template-columns:1fr 1fr}.stat-cards{grid-template-columns:repeat(2,1fr)}.split-section{grid-template-columns:1fr 1fr;padding:var(--s40)}.page-intro{grid-template-columns:1.15fr 1fr}.contact-grid{grid-template-columns:1.3fr 1fr}.footer-grid{grid-template-columns:2fr 1fr 1fr}}
@media(min-width:1024px){.brand{flex-shrink:0;white-space:nowrap}.desktop-nav{display:flex}.header-cta{display:inline-flex}.menu-toggle{display:none}.mobile-menu{display:none}.stat-cards{grid-template-columns:repeat(3,1fr)}.facts{grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}