
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
/* Warm ivory world — like opening a leather-bound book */
--bg:#FAF8F4;--bg2:#F3F0EA;--bg3:#EBE7DF;
--ink:#1A1714;--ink2:#2E2A24;--ink3:#4A4540;
--mid:#8C857B;--light:#B8B1A6;--faint:#D8D3CB;
/* Signal: deep burgundy — not alarm-red */
--accent:#8B2B1A;--accent-light:rgba(139,43,26,0.08);--accent-mid:rgba(139,43,26,0.15);
/* Swiss gold detail */
--gold:#A6935C;
/* Type */
--serif:'Playfair Display',Georgia,serif;
--sans:'Inter','Helvetica Neue',Arial,sans-serif;
--mono:'IBM Plex Mono','Courier New',monospace;
/* Space */
--gap:clamp(64px,8vh,100px);--max:1200px;
--ease:cubic-bezier(0.25,1,0.5,1);
}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body{font-family:var(--sans);background:var(--bg);color:var(--ink3);font-size:17px;line-height:1.75;overflow-x:hidden}
::selection{background:var(--accent);color:#fff}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none}ul,ol{list-style:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.ini{color:var(--accent);font-size:1.25em;font-weight:500}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(24px,5vw,72px)}
.wrap--w{max-width:1400px;margin:0 auto;padding:0 clamp(24px,5vw,72px)}

/* ═══ NAV — Thin, authoritative top bar ═══ */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:64px;display:flex;align-items:center;background:var(--bg);border-bottom:1px solid var(--faint);transition:all .5s var(--ease)}
.nav.sc{height:56px;box-shadow:0 1px 20px rgba(0,0,0,0.04)}
.nav__in{max-width:1400px;margin:0 auto;padding:0 clamp(24px,5vw,72px);width:100%;display:flex;align-items:center;justify-content:space-between}
.nav__brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.nav__brand-logo{height:38px;width:auto;transition:all .3s}
.nav.sc .nav__brand-logo{height:32px}
.nav__brand-text{display:flex;flex-direction:column}
.nav__brand-name{font-family:var(--sans);font-size:.8rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--ink)}
.nav__brand-sub{font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;color:var(--mid);margin-top:1px}
.nav__links{display:flex;align-items:center;gap:36px}
.nav__link{font-family:var(--sans);font-size:.78rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);transition:color .3s;padding:4px 0}
.nav__link:hover{color:var(--ink)}
.nav__cta{font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--ink);padding:10px 24px;transition:all .4s var(--ease);display:inline-flex;align-items:center;gap:8px}
.nav__cta:hover{background:var(--accent)}
/* Mobile */
.nav__ham{display:none;flex-direction:column;gap:5px;padding:12px;min-width:44px;min-height:44px;justify-content:center;align-items:center}
.nav__ham span{width:20px;height:1.5px;background:var(--ink);transition:all .3s var(--ease);transform-origin:center}
.nav__ham.open span:nth-child(1){transform:rotate(45deg) translate(3px,3px)}
.nav__ham.open span:nth-child(2){opacity:0}
.nav__ham.open span:nth-child(3){transform:rotate(-45deg) translate(3.5px,-3.5px)}
.nav__mob{display:none;position:fixed;inset:0;background:var(--bg);z-index:999;flex-direction:column;align-items:center;justify-content:center;gap:28px;opacity:0;pointer-events:none;transition:opacity .4s}
.nav__mob.open{opacity:1;pointer-events:all}
.nav__mob a{font-family:var(--serif);font-size:1.8rem;color:var(--ink);transition:color .3s;font-style:italic}
.nav__mob a:hover{color:var(--accent)}
@media(max-width:900px){.nav__links{display:none}.nav__ham{display:flex}.nav__mob{display:flex}}


/* ═══ HERO — Architectural silence ═══ */
.hero{min-height:100vh;min-height:100dvh;display:flex;align-items:center;position:relative;padding:calc(64px + 60px) 0 80px;background:var(--bg)}
.hero__inner{display:grid;grid-template-columns:1fr;max-width:900px;margin:0 auto;padding:0 clamp(24px,5vw,72px)}
.hero__eyebrow{font-family:var(--mono);font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--mid);margin-bottom:48px;display:flex;align-items:center;gap:16px;opacity:0;animation:fadeUp .8s .2s var(--ease) forwards}
.hero__eyebrow::before{content:'';width:40px;height:1px;background:var(--accent)}
.hero__headline{font-family:var(--serif);font-weight:400;font-size:clamp(2.8rem,5.5vw,4.8rem);line-height:1.1;color:var(--ink);letter-spacing:-.02em;margin-bottom:36px;opacity:0;animation:fadeUp 1s .35s var(--ease) forwards}
.hero__headline em{font-style:italic;color:var(--accent)}
.hero__sub{font-family:var(--sans);font-size:clamp(1rem,1.15vw,1.08rem);line-height:1.85;color:var(--ink3);max-width:600px;margin-bottom:48px;font-weight:300;opacity:0;animation:fadeUp .8s .55s var(--ease) forwards}
.hero__ctas{display:flex;align-items:center;gap:20px;flex-wrap:wrap;opacity:0;animation:fadeUp .8s .7s var(--ease) forwards}
.btn{font-family:var(--sans);font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:14px 32px;transition:all .4s var(--ease);display:inline-flex;align-items:center;gap:10px}
.btn--dark{background:var(--ink);color:#fff}
.btn--dark:hover{background:var(--accent)}
.btn--line{background:transparent;color:var(--ink3);border:1px solid var(--faint)}
.btn--line:hover{border-color:var(--ink);color:var(--ink)}
.btn__arr{transition:transform .3s;font-size:.85em}
.btn:hover .btn__arr{transform:translateX(4px)}
/* Subtle corner detail */
.hero__detail{position:absolute;bottom:48px;left:clamp(24px,5vw,72px);font-family:var(--mono);font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--light);writing-mode:vertical-lr;transform:rotate(180deg);opacity:0;animation:fadeUp .8s 1s var(--ease) forwards}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

/* ═══ THIN RULE ═══ */
.rule{height:1px;background:var(--faint)}

/* ═══ SECTION PATTERN ═══ */
.sec-tag{font-family:var(--mono);font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.sec-title{font-family:var(--serif);font-size:clamp(2rem,3.5vw,3.2rem);font-weight:400;color:var(--ink);line-height:1.15;letter-spacing:-.015em;max-width:680px}
.sec-title em{font-style:italic;color:var(--accent)}

/* ═══ METHOD — Three columns, book layout ═══ */
.method{padding:var(--gap) 0;background:var(--bg)}
.method__header{margin-bottom:64px}
.method__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--faint);border-bottom:1px solid var(--faint)}
.method__col{padding:clamp(28px,3.5vw,48px);border-right:1px solid var(--faint);transition:background .4s}
.method__col:last-child{border-right:none}
.method__col:hover{background:var(--accent-light)}
.method__num{font-family:var(--serif);font-size:3rem;font-style:italic;color:var(--faint);line-height:1;margin-bottom:20px}
.method__col:hover .method__num{color:var(--accent-mid)}
.method__col-title{font-family:var(--serif);font-size:1.2rem;font-weight:500;color:var(--ink);margin-bottom:14px;line-height:1.3}
.method__col-text{font-size:1rem;line-height:1.85;color:var(--ink3);font-weight:300}
.method__col-text .t{color:var(--mid);font-style:italic;font-size:.92em}

/* ═══ STATEMENT — centered editorial quote ═══ */
.stmt{padding:clamp(48px,7vh,80px) 0;text-align:center;background:var(--bg2)}
.stmt__q{font-family:var(--serif);font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:400;font-style:italic;color:var(--ink);line-height:1.3;max-width:720px;margin:0 auto;letter-spacing:-.01em}
.stmt__q .a{color:var(--accent)}
.stmt__attr{font-family:var(--mono);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mid);margin-top:28px}

/* ═══ FORMULA — Elegant, centered ═══ */
.formula{padding:var(--gap) 0;text-align:center;background:var(--bg)}
.formula__eq{font-family:var(--serif);font-weight:400;font-size:clamp(3.5rem,8vw,6rem);color:var(--ink);letter-spacing:.02em;line-height:1;margin:48px 0 12px;display:flex;align-items:center;justify-content:center;gap:12px}
.formula__eq .r{color:var(--accent);font-style:italic}
.formula__eq .eq{color:var(--light);font-size:.6em;font-style:normal}
.formula__eq .frac{display:inline-flex;flex-direction:column;align-items:center}
.formula__eq .fn{border-bottom:2px solid var(--faint);padding-bottom:6px;margin-bottom:6px;font-size:.5em}
.formula__eq .fd{font-size:.5em}
.formula__eq .sub{font-size:.45em;vertical-align:sub;font-style:italic;color:var(--mid)}
.formula__note{font-family:var(--mono);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mid);margin-bottom:40px}
.formula__vars{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--faint);max-width:860px;margin:0 auto}
.formula__v{padding:28px 24px;border-right:1px solid var(--faint);transition:background .3s}
.formula__v:last-child{border-right:none}
.formula__v:hover{background:var(--accent-light)}
.formula__v-l{font-family:var(--serif);font-size:1.6rem;font-style:italic;color:var(--ink);margin-bottom:8px}
.formula__v:hover .formula__v-l{color:var(--accent)}
.formula__v-n{font-family:var(--mono);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
.formula__v-d{font-size:.95rem;color:var(--mid);line-height:1.55;font-weight:300}
.formula__exp{max-width:660px;margin:36px auto 0;text-align:left;padding:24px 28px;border-left:3px solid var(--accent);background:var(--bg2)}
.formula__exp p{font-size:1rem;line-height:1.85;color:var(--ink3);font-weight:300}
.formula__exp strong{color:var(--ink);font-weight:500}


/* ═══ SOVEREIGNTY ═══ */
.sov{padding:var(--gap) 0;background:var(--bg2)}
.sov__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,120px);align-items:center;margin-top:48px}
.sov__prose p{font-size:1.02rem;line-height:1.9;color:var(--ink3);margin-bottom:16px;font-weight:300}
.sov__prose .t{color:var(--mid);font-style:italic;font-size:.9em}
.sov__q{font-family:var(--serif);font-size:clamp(1.25rem,1.8vw,1.6rem);font-style:italic;color:var(--ink);line-height:1.55;padding-left:24px;border-left:3px solid var(--accent)}

/* ═══ STAT ═══ */
.statb{padding:clamp(48px,7vh,80px) 0;text-align:center;background:var(--bg);border-top:1px solid var(--faint);border-bottom:1px solid var(--faint)}
.statb__n{font-family:var(--serif);font-size:clamp(4.5rem,11vw,9rem);font-weight:400;color:var(--ink);line-height:1;letter-spacing:-.03em;font-style:italic}
.statb__l{font-family:var(--mono);font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--mid);margin-top:16px}
.statb__s{font-size:1rem;color:var(--mid);max-width:400px;margin:18px auto 0;line-height:1.75;font-weight:300}

/* ═══ MANDATES ═══ */
.mandates{padding:var(--gap) 0;background:var(--bg)}
.mandates__hd{text-align:center;margin-bottom:64px}
.mandates__sub{font-size:clamp(.92rem,1vw,1.02rem);color:var(--ink3);max-width:480px;margin:18px auto 0;line-height:1.8;font-weight:300}
.mandates__grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--faint)}
.mc{padding:clamp(32px,4vw,52px);border-right:1px solid var(--faint);border-bottom:1px solid var(--faint);transition:background .4s;position:relative}
.mc:nth-child(2n){border-right:none}
.mc:nth-child(n+3){border-bottom:none}
.mc:hover{background:var(--accent-light)}
.mc__tag{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--light);margin-bottom:18px}
.mc__title{font-family:var(--serif);font-size:clamp(1.3rem,2vw,1.7rem);font-weight:500;color:var(--ink);margin-bottom:6px;line-height:1.2}
.mc__aud{font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mid);margin-bottom:18px}
.mc__desc{font-size:.98rem;color:var(--ink3);line-height:1.85;font-weight:300}

/* ═══ EVIDENCE ═══ */
.evidence{padding:var(--gap) 0;background:var(--bg2)}
.evidence__hd{text-align:center;margin-bottom:64px}
.evidence__sub{font-size:clamp(.92rem,1vw,1.02rem);color:var(--ink3);max-width:440px;margin:18px auto 0;line-height:1.8;font-weight:300}
.evidence__grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--faint)}
.ec{padding:clamp(28px,3.5vw,48px);border-right:1px solid var(--faint);border-bottom:1px solid var(--faint);transition:background .4s;background:var(--bg)}
.ec:nth-child(2n){border-right:none}
.ec:nth-child(n+3){border-bottom:none}
.ec:hover{background:var(--accent-light)}
.ec__sec{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
.ec__t{font-family:var(--serif);font-size:clamp(1.15rem,1.6vw,1.4rem);font-weight:500;color:var(--ink);margin-bottom:6px;line-height:1.2}
.ec__cl{font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;color:var(--mid);margin-bottom:16px}
.ec__desc{font-size:.98rem;color:var(--ink3);line-height:1.8;margin-bottom:16px;font-weight:300}
.ec__q{font-family:var(--serif);font-size:.9rem;font-style:italic;color:var(--ink);line-height:1.6;padding:14px 0 14px 18px;border-left:2px solid var(--accent-mid);margin-bottom:16px}
.ec__qs{display:block;font-family:var(--mono);font-size:.58rem;font-style:normal;letter-spacing:.1em;text-transform:uppercase;color:var(--mid);margin-top:6px}
.ec__sc{display:inline-flex;align-items:baseline;gap:10px;padding:8px 14px;border:1px solid var(--faint);transition:border-color .3s}
.ec:hover .ec__sc{border-color:var(--accent)}
.ec__sl{font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mid)}
.ec__sv{font-family:var(--serif);font-size:1.3rem;color:var(--accent);font-style:italic}

/* ═══ COMPARE ═══ */
.cmp{padding:var(--gap) 0;background:var(--bg)}
.cmp__hd{text-align:center;margin-bottom:52px}
.cmp__wrap{overflow-x:auto}
.cmp table{width:100%;border-collapse:collapse;border:1px solid var(--faint)}
.cmp th,.cmp td{text-align:left;padding:18px 24px;border-bottom:1px solid var(--faint);font-size:.95rem;font-weight:300}
.cmp th{font-family:var(--mono);font-size:.62rem;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--mid)}
.cmp td{color:var(--ink3)}
.cmp td:first-child{color:var(--ink);font-weight:500}
.cmp .hl{color:var(--ink);background:var(--accent-light);font-weight:400}
.cmp .hlh{color:var(--accent)!important;background:var(--accent-light)}
.cmp tr:hover td{background:var(--bg2)}.cmp tr:hover .hl{background:var(--accent-mid)}

/* ═══ FOUNDER ═══ */
.fdr{padding:var(--gap) 0;background:var(--bg2)}
.fdr__grid{display:grid;grid-template-columns:auto 1fr;gap:clamp(36px,5vw,72px);align-items:start}
.fdr__port{width:clamp(140px,16vw,200px);aspect-ratio:3/4;background:var(--bg3);overflow:hidden}
.fdr__port img{width:100%;height:100%;object-fit:cover;object-position:center 15%}
.fdr__name{font-family:var(--serif);font-size:clamp(2rem,3.5vw,2.8rem);font-weight:400;color:var(--ink);line-height:1.1;margin-bottom:6px}
.fdr__role{font-family:var(--mono);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:28px}
.fdr__bio{font-size:1rem;line-height:1.9;color:var(--ink3);margin-bottom:14px;font-weight:300}
.fdr__creds{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--faint);margin:28px 0}
.fdr__cred{padding:18px 16px;text-align:center;border-right:1px solid var(--faint);background:var(--bg)}
.fdr__cred:last-child{border-right:none}
.fdr__cred-v{font-family:var(--serif);font-size:1.1rem;color:var(--accent);font-style:italic;margin-bottom:8px;display:block}
.fdr__cred-l{font-family:var(--mono);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);line-height:1.5;display:block}
.fdr__q{font-family:var(--serif);font-size:1.05rem;font-style:italic;color:var(--ink);padding-left:20px;border-left:3px solid var(--accent);line-height:1.6}


/* ═══ CONTACT ═══ */
.contact{padding:var(--gap) 0;background:var(--bg);position:relative}
.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,6vw,96px);align-items:start}
.contact__hl{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.6rem);font-weight:400;color:var(--ink);line-height:1.15;margin-top:16px;margin-bottom:18px}
.contact__body{font-size:1rem;line-height:1.85;color:var(--ink3);margin-bottom:28px;font-weight:300}
.copts{display:flex;flex-direction:column;gap:16px}
.copt{padding:18px 22px;border:1px solid var(--faint);transition:border-color .3s;background:var(--bg2)}
.copt:hover{border-color:var(--accent-mid)}
.copt__t{font-family:var(--sans);font-size:1rem;font-weight:500;color:var(--ink);margin-bottom:6px}
.copt__tx{font-size:.95rem;color:var(--mid);line-height:1.65;font-weight:300}
.copt__pr{font-family:var(--mono);font-size:.75rem;color:var(--ink2);margin-top:8px;letter-spacing:.04em}
.cdata{margin-top:16px;padding:16px 20px;border:1px solid var(--faint);background:var(--bg2)}
.cdata__t{font-size:.95rem;font-weight:500;color:var(--ink);margin-bottom:4px}
.cdata__tx{font-size:.95rem;color:var(--mid);line-height:1.65;font-weight:300}
.contact__info{margin-top:24px;font-family:var(--mono);font-size:.7rem;letter-spacing:.05em;color:var(--light);line-height:2}
.contact__info strong{color:var(--mid);font-weight:500}
/* Form */
.cform{background:var(--bg2);border:1px solid var(--faint);padding:clamp(24px,3.5vw,40px)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.fgrp{margin-bottom:14px}
.flbl{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mid);margin-bottom:6px;display:block}
.finp,.fsel,.ftxt{width:100%;background:#fff;border:1px solid var(--faint);color:var(--ink);font-family:var(--sans);font-size:.95rem;padding:12px 16px;transition:all .3s;outline:none;-webkit-appearance:none;font-weight:300}
.finp:focus,.fsel:focus,.ftxt:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}
.finp::placeholder,.ftxt::placeholder{color:var(--light)}
.fsel{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23B8B1A6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:36px}
.ftxt{min-height:110px;resize:vertical}
.fsubmit{width:100%;background:var(--ink);color:#fff;font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:16px;border:none;cursor:pointer;transition:all .4s var(--ease);margin-top:6px}
.fsubmit:hover{background:var(--accent)}
.ffoot{font-family:var(--mono);font-size:.58rem;letter-spacing:.08em;color:var(--light);text-align:center;margin-top:14px}
#formMsg{display:none;padding:10px 14px;margin-bottom:14px;font-size:.85rem;line-height:1.6}

/* ═══ FAQ ═══ */
.faq{padding:var(--gap) 0;background:var(--bg2)}
.faq__hd{text-align:center;margin-bottom:52px}
.faq__list{max-width:760px;margin:0 auto}
.fq{border-bottom:1px solid var(--faint)}
.fq:first-child{border-top:1px solid var(--faint)}
.fq__btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;text-align:left;background:none;border:none;cursor:pointer}
.fq__q{font-family:var(--serif);font-size:clamp(1rem,1.3vw,1.15rem);font-weight:400;color:var(--ink);line-height:1.3}
.fq__ic{width:16px;height:16px;position:relative;flex-shrink:0}
.fq__ic::before,.fq__ic::after{content:'';position:absolute;top:50%;left:50%;background:var(--mid);transition:all .3s var(--ease)}
.fq__ic::before{width:12px;height:1px;transform:translate(-50%,-50%)}
.fq__ic::after{width:1px;height:12px;transform:translate(-50%,-50%)}
.fq.open .fq__ic::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
.fq__ans{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.fq__ans-inner{padding:0 0 22px;font-size:.98rem;line-height:1.85;color:var(--ink3);font-weight:300}

/* ═══ FOOTER ═══ */
.foot{padding:40px 0 calc(28px + env(safe-area-inset-bottom));border-top:1px solid var(--faint);background:var(--bg)}
.foot__in{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.foot__name{font-family:var(--sans);font-size:.7rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ink)}
.foot__loc{font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;color:var(--mid);margin-left:12px}
.foot__mid{font-family:var(--mono);font-size:.58rem;letter-spacing:.08em;color:var(--light);text-align:center}
.foot__links{display:flex;gap:24px}
.foot__a{font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);transition:color .3s}
.foot__a:hover{color:var(--ink)}
.foot__bot{text-align:center;margin-top:24px;font-family:var(--mono);font-size:.58rem;color:var(--light)}

/* ═══ SCROLL REVEAL ═══ */
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.v{opacity:1;transform:translateY(0)}
.rv1{transition-delay:.1s}.rv2{transition-delay:.2s}.rv3{transition-delay:.3s}.rv4{transition-delay:.4s}.rv5{transition-delay:.5s}

/* ═══ RESPONSIVE ═══ */
@media(max-width:960px){
.method__grid{grid-template-columns:1fr}
.method__col{border-right:none;border-bottom:1px solid var(--faint)}
.method__col:last-child{border-bottom:none}
.sov__grid,.evidence__grid,.mandates__grid,.contact__grid,.fdr__grid{grid-template-columns:1fr}
.mc{border-right:none!important}.mc:nth-child(n+3){border-bottom:1px solid var(--faint)}.mc:last-child{border-bottom:none}
.ec{border-right:none!important}.ec:nth-child(n+3){border-bottom:1px solid var(--faint)}.ec:last-child{border-bottom:none}
.fdr__port{max-width:160px;margin:0 auto}
.fdr__creds{grid-template-columns:1fr}.fdr__cred{border-right:none;border-bottom:1px solid var(--faint)}.fdr__cred:last-child{border-bottom:none}
.formula__vars{grid-template-columns:1fr 1fr}
.frow{grid-template-columns:1fr}
.contact__info{font-size:.82rem;line-height:2.2}
.foot__in{flex-direction:column;text-align:center}
.foot__name{font-size:.85rem}
.foot__loc{font-size:.75rem;display:block;margin-left:0;margin-top:4px}
.foot__mid{font-size:.72rem;line-height:1.8}
.foot__links{flex-wrap:wrap;justify-content:center;gap:16px}
.foot__a{font-size:.75rem}
.foot__bot{font-size:.72rem;letter-spacing:.04em}
.foot__bot p{line-height:1.6;margin:2px 0}
.foot__bot .foot__a{white-space:nowrap}
}
@media(max-width:600px){
.hero__detail{display:none}

.nav__link{padding:10px 0}
.blog-toc__chip{padding:12px 18px}
.nav__brand-sub{font-size:.72rem}
.ec__cl{font-size:.72rem}
.blog-highlight__title{font-size:.72rem}
.blog-related__title{font-size:.72rem}
.blog-related__card-cat{font-size:.68rem}
.ffoot{font-size:.72rem}

.testimonial__sector{font-size:.72rem}
.testimonial__quote{font-size:1.1rem}
.testimonial__source{font-size:.72rem;line-height:1.8}
.testimonial__score-label{font-size:.68rem}
.blog-article__cat{font-size:.72rem}
.blog-article__date{font-size:.72rem}
.blog-article__reading{font-size:.72rem}
.blog-article__tag{font-size:.7rem}
.blog-article__lead{font-size:1.05rem}
.blog-article p{font-size:1.02rem}
.blog-article h3{font-size:1.2rem}
.blog-toc__chip{font-size:.72rem}
.blog-hero__eyebrow{font-size:.72rem}
.sec-tag{font-size:.72rem}
.flbl{font-size:.72rem}
.fsubmit{font-size:.78rem;padding:18px}
.breadcrumb__list{font-size:.72rem}
.mc__tag{font-size:.72rem}
.mc__aud{font-size:.72rem}
.ec__sec{font-size:.72rem}
.ec__qs{font-size:.68rem}
.ec__sl{font-size:.72rem}
.stmt__attr{font-size:.72rem}
.formula__note{font-size:.72rem}
.formula__v-n{font-size:.72rem}
.cmp th{font-size:.72rem}
.fdr__role{font-size:.72rem}
.fdr__cred-l{font-size:.72rem}
.ffoot{font-size:.72rem}


.formula__vars{grid-template-columns:1fr}.formula__v{border-right:none;border-bottom:1px solid var(--faint)}.formula__v:last-child{border-bottom:none}
.hero__headline{font-size:2.2rem}
.hero__ctas{flex-direction:column;width:100%}.hero__ctas .btn{width:100%;justify-content:center}
.cmp th,.cmp td{padding:12px 14px;font-size:.78rem}
}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
.rv{opacity:1;transform:none}
}

.rv{opacity:1;transform:none}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
--bg:#FAF8F4;--bg2:#F3F0EA;--bg3:#EBE7DF;
--ink:#1A1714;--ink2:#2E2A24;--ink3:#4A4540;
--mid:#8C857B;--light:#B8B1A6;--faint:#D8D3CB;
--accent:#8B2B1A;--accent-light:rgba(139,43,26,0.08);--accent-mid:rgba(139,43,26,0.15);
--gold:#A6935C;
--serif:'Playfair Display',Georgia,serif;
--sans:'Inter','Helvetica Neue',Arial,sans-serif;
--mono:'IBM Plex Mono','Courier New',monospace;
--gap:clamp(64px,8vh,100px);--max:1200px;
--ease:cubic-bezier(0.25,1,0.5,1);
}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body{font-family:var(--sans);background:var(--bg);color:var(--ink3);font-size:17px;line-height:1.75;overflow-x:hidden}
::selection{background:var(--accent);color:#fff}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.ini{color:var(--accent);font-size:1.25em;font-weight:500}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(24px,5vw,72px)}
.wrap--w{max-width:1400px;margin:0 auto;padding:0 clamp(24px,5vw,72px)}

/* ═══ NAV ═══ */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:64px;display:flex;align-items:center;background:var(--bg);border-bottom:1px solid var(--faint);transition:all .5s var(--ease)}
.nav.sc{height:56px;box-shadow:0 1px 20px rgba(0,0,0,0.04)}
.nav__in{max-width:1400px;margin:0 auto;padding:0 clamp(24px,5vw,72px);width:100%;display:flex;align-items:center;justify-content:space-between}
.nav__brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.nav__brand-logo{height:38px;width:auto;transition:all .3s}
.nav.sc .nav__brand-logo{height:32px}
.nav__brand-text{display:flex;flex-direction:column}
.nav__brand-name{font-family:var(--sans);font-size:.8rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--ink)}
.nav__brand-sub{font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;color:var(--mid);margin-top:1px}
.nav__links{display:flex;align-items:center;gap:36px}
.nav__link{font-family:var(--sans);font-size:.78rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);transition:color .3s;padding:4px 0}
.nav__link:hover,.nav__link--active{color:var(--ink)}
.nav__link--active{border-bottom:1px solid var(--accent);padding-bottom:2px}
.nav__cta{font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--ink);padding:10px 24px;transition:all .4s var(--ease);display:inline-flex;align-items:center;gap:8px}
.nav__cta:hover{background:var(--accent)}
.nav__ham{display:none;flex-direction:column;gap:5px;padding:12px;min-width:44px;min-height:44px;justify-content:center;align-items:center}
.nav__ham span{width:20px;height:1.5px;background:var(--ink);transition:all .3s var(--ease);transform-origin:center}
.nav__ham.open span:nth-child(1){transform:rotate(45deg) translate(3px,3px)}
.nav__ham.open span:nth-child(2){opacity:0}
.nav__ham.open span:nth-child(3){transform:rotate(-45deg) translate(3.5px,-3.5px)}
.nav__mob{display:none;position:fixed;inset:0;background:var(--bg);z-index:999;flex-direction:column;align-items:center;justify-content:center;gap:28px;opacity:0;pointer-events:none;transition:opacity .4s}
.nav__mob.open{opacity:1;pointer-events:all}
.nav__mob a{font-family:var(--serif);font-size:1.8rem;color:var(--ink);transition:color .3s;font-style:italic}
.nav__mob a:hover{color:var(--accent)}
@media(max-width:900px){.nav__links{display:none}.nav__ham{display:flex}.nav__mob{display:flex}}

/* ═══ BLOG HERO ═══ */
.blog-hero{padding:calc(64px + 80px) 0 60px;background:var(--bg);position:relative}
.blog-hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--faint)}
.blog-hero__eyebrow{font-family:var(--mono);font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--mid);margin-bottom:24px;display:flex;align-items:center;gap:16px;opacity:0;animation:fadeUp .8s .2s var(--ease) forwards}
.blog-hero__eyebrow::before{content:'';width:40px;height:1px;background:var(--accent)}
.blog-hero__title{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,5vw,4rem);line-height:1.1;color:var(--ink);letter-spacing:-.02em;margin-bottom:24px;opacity:0;animation:fadeUp 1s .35s var(--ease) forwards}
.blog-hero__title em{font-style:italic;color:var(--accent)}
.blog-hero__desc{font-family:var(--sans);font-size:clamp(1rem,1.1vw,1.05rem);line-height:1.85;color:var(--ink3);max-width:640px;font-weight:300;opacity:0;animation:fadeUp .8s .55s var(--ease) forwards}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

/* ═══ BLOG NAV / TOC ═══ */
.blog-toc{padding:40px 0;background:var(--bg2);border-bottom:1px solid var(--faint);position:sticky;top:56px;z-index:100;transition:box-shadow .3s}
.blog-toc.shadow{box-shadow:0 4px 20px rgba(0,0,0,.04)}
.blog-toc__inner{display:flex;gap:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}
.blog-toc__inner::-webkit-scrollbar{display:none}
.blog-toc__chip{font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);padding:8px 18px;border:1px solid var(--faint);background:var(--bg);white-space:nowrap;transition:all .3s var(--ease);cursor:pointer;flex-shrink:0}
.blog-toc__chip:hover{border-color:var(--accent-mid);color:var(--ink)}
.blog-toc__chip--active{background:var(--accent);color:#fff;border-color:var(--accent)}

/* ═══ BLOG ARTICLES ═══ */
.blog-feed{padding:0 0 var(--gap)}

.blog-article{padding:var(--gap) 0;border-bottom:1px solid var(--faint);position:relative}
.blog-article:last-child{border-bottom:none}
.blog-article__inner{max-width:780px;margin:0 auto}
.blog-article__meta{display:flex;align-items:center;gap:20px;margin-bottom:28px}
.blog-article__cat{font-family:var(--mono);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);padding:5px 14px;border:1px solid var(--accent-mid);background:var(--accent-light)}
.blog-article__date{font-family:var(--mono);font-size:.6rem;letter-spacing:.12em;color:var(--light)}
.blog-article__reading{font-family:var(--mono);font-size:.6rem;letter-spacing:.12em;color:var(--light)}
.blog-article__reading::before{content:'·';margin-right:8px}
.blog-article h2{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.6rem);font-weight:400;color:var(--ink);line-height:1.15;letter-spacing:-.015em;margin-bottom:20px}
.blog-article h2 em{font-style:italic;color:var(--accent)}
.blog-article__lead{font-family:var(--sans);font-size:1.08rem;line-height:1.9;color:var(--ink2);font-weight:300;margin-bottom:32px;padding-left:20px;border-left:3px solid var(--accent)}
.blog-article h3{font-family:var(--serif);font-size:clamp(1.15rem,1.6vw,1.4rem);font-weight:500;color:var(--ink);margin:40px 0 16px;line-height:1.3}
.blog-article p{font-size:1rem;line-height:1.9;color:var(--ink3);margin-bottom:18px;font-weight:300}
.blog-article strong{color:var(--ink);font-weight:500}
.blog-article blockquote{font-family:var(--serif);font-size:1.15rem;font-style:italic;color:var(--ink);line-height:1.6;padding:20px 0 20px 24px;border-left:3px solid var(--accent);margin:32px 0;background:var(--accent-light);padding-right:24px}
.blog-article__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px;padding-top:24px;border-top:1px solid var(--faint)}
.blog-article__tag{font-family:var(--mono);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);padding:4px 12px;border:1px solid var(--faint);transition:all .3s}
.blog-article__tag:hover{border-color:var(--accent-mid);color:var(--accent)}

/* ═══ HIGHLIGHT BOX ═══ */
.blog-highlight{background:var(--bg2);border:1px solid var(--faint);padding:28px 32px;margin:28px 0}
.blog-highlight__title{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
.blog-highlight p{margin-bottom:10px}
.blog-highlight p:last-child{margin-bottom:0}

/* ═══ INLINE STAT ═══ */
.blog-stat{display:flex;align-items:baseline;gap:16px;padding:24px 0;margin:24px 0;border-top:1px solid var(--faint);border-bottom:1px solid var(--faint)}
.blog-stat__num{font-family:var(--serif);font-size:clamp(2.5rem,5vw,3.5rem);font-style:italic;color:var(--accent);line-height:1;flex-shrink:0}
.blog-stat__text{font-size:.95rem;color:var(--ink3);line-height:1.7;font-weight:300}

/* ═══ CTA BANNER ═══ */
.blog-cta{padding:clamp(48px,6vh,72px) 0;background:var(--ink);text-align:center}
.blog-cta__title{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:400;color:#fff;line-height:1.2;margin-bottom:16px}
.blog-cta__title em{font-style:italic;color:var(--gold)}
.blog-cta__text{font-size:1rem;color:rgba(255,255,255,.6);max-width:500px;margin:0 auto 28px;line-height:1.8;font-weight:300}
.blog-cta__btn{font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:#fff;padding:14px 36px;display:inline-flex;align-items:center;gap:10px;transition:all .4s var(--ease)}
.blog-cta__btn:hover{background:var(--gold);color:#fff}

/* ═══ FOOTER ═══ */
.foot{padding:40px 0 calc(28px + env(safe-area-inset-bottom));border-top:1px solid var(--faint);background:var(--bg)}
.foot__in{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.foot__name{font-family:var(--sans);font-size:.7rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ink)}
.foot__loc{font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;color:var(--mid);margin-left:12px}
.foot__mid{font-family:var(--mono);font-size:.58rem;letter-spacing:.08em;color:var(--light);text-align:center}
.foot__links{display:flex;gap:24px}
.foot__a{font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);transition:color .3s}
.foot__a:hover{color:var(--ink)}
.foot__bot{text-align:center;margin-top:24px;font-family:var(--mono);font-size:.58rem;color:var(--light)}

/* ═══ SCROLL REVEAL ═══ */
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.v{opacity:1;transform:translateY(0)}
.rv1{transition-delay:.1s}.rv2{transition-delay:.2s}.rv3{transition-delay:.3s}

/* ═══ RESPONSIVE ═══ */
@media(max-width:960px){
.blog-toc{top:56px;padding:24px 0}
}
@media(max-width:600px){
.blog-article__meta{flex-wrap:wrap;gap:10px}
.blog-stat{flex-direction:column;gap:8px}
.foot__in{flex-direction:column;text-align:center}
}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
.rv{opacity:1;transform:none}
}

/* ═══ BREADCRUMB ═══ */
.breadcrumb{padding:16px 0;background:var(--bg2);border-bottom:1px solid var(--faint)}
.breadcrumb__list{display:flex;align-items:center;gap:8px;list-style:none;font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--light)}
.breadcrumb__list li+li::before{content:'›';margin-right:8px;color:var(--faint)}
.breadcrumb__list a{color:var(--mid);transition:color .3s;text-decoration:none}
.breadcrumb__list a:hover{color:var(--accent)}
.breadcrumb__list [aria-current]{color:var(--ink3)}

/* ═══ BLOG SINGLE ARTICLE ═══ */
.blog-article-single{padding:var(--gap) 0}
.blog-article-single .blog-article__inner{max-width:780px;margin:0 auto}
.blog-article-single h1{font-family:var(--serif);font-size:clamp(2rem,4vw,3rem);font-weight:400;color:var(--ink);line-height:1.15;letter-spacing:-.015em;margin-bottom:24px}
.blog-article-single h1 em{font-style:italic;color:var(--accent)}
.blog-article-single h2{font-family:var(--serif);font-size:clamp(1.15rem,1.6vw,1.4rem);font-weight:500;color:var(--ink);margin:40px 0 16px;line-height:1.3}
.blog-article-single p{font-size:1rem;line-height:1.9;color:var(--ink3);margin-bottom:18px;font-weight:300}
.blog-article-single strong{color:var(--ink);font-weight:500}
.blog-article-single a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--accent-mid);transition:border-color .3s}
.blog-article-single a:hover{border-color:var(--accent)}
.blog-article-single blockquote{font-family:var(--serif);font-size:1.15rem;font-style:italic;color:var(--ink);line-height:1.6;padding:20px 24px;border-left:3px solid var(--accent);margin:32px 0;background:var(--accent-light)}

/* ═══ RELATED ARTICLES ═══ */
.blog-related{margin-top:48px;padding-top:32px;border-top:1px solid var(--faint)}
.blog-related__title{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:20px}
.blog-related__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.blog-related__card{display:flex;flex-direction:column;padding:20px;border:1px solid var(--faint);transition:all .3s;text-decoration:none!important;}
.blog-related__card:hover{border-color:var(--accent-mid);background:var(--accent-light)}
.blog-related__card-cat{font-family:var(--mono);font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mid);margin-bottom:8px}
.blog-related__card-title{font-family:var(--serif);font-size:.95rem;color:var(--ink);line-height:1.3}
@media(max-width:700px){.blog-related__grid{grid-template-columns:1fr}}

/* ═══ TESTIMONIALS PAGE ═══ */
.testimonials{padding:var(--gap) 0}
.testimonials__grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--faint);margin-top:48px}
.testimonial{padding:clamp(28px,3.5vw,48px);border-right:1px solid var(--faint);border-bottom:1px solid var(--faint);background:var(--bg);transition:background .3s}
.testimonial:nth-child(2n){border-right:none}
.testimonial:nth-child(n+5){border-bottom:none}
.testimonial:hover{background:var(--accent-light)}
.testimonial__sector{font-family:var(--mono);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
.testimonial__quote{font-family:var(--serif);font-size:1.05rem;font-style:italic;color:var(--ink);line-height:1.6;margin-bottom:16px}
.testimonial__source{font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;color:var(--mid)}
.testimonial__score{display:inline-flex;align-items:baseline;gap:8px;margin-top:12px;padding:6px 12px;border:1px solid var(--faint)}
.testimonial__score-label{font-family:var(--mono);font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mid)}
.testimonial__score-value{font-family:var(--serif);font-size:1.2rem;color:var(--accent);font-style:italic}
@media(max-width:960px){.testimonials__grid{grid-template-columns:1fr}.testimonial{border-right:none!important}}

/* Language Switcher */
.lang-sw{position:relative;display:flex;align-items:center;margin-left:8px}
.lang-sw__btn{font-family:var(--mono);font-size:.62rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--mid);background:none;border:1px solid var(--faint);padding:6px 12px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .3s var(--ease)}
.lang-sw__btn:hover{color:var(--ink);border-color:var(--mid)}
.lang-sw__btn svg{width:10px;height:10px;transition:transform .3s var(--ease)}
.lang-sw.open .lang-sw__btn svg{transform:rotate(180deg)}
.lang-sw.open .lang-sw__btn{color:var(--ink);border-color:var(--accent-mid)}
.lang-sw__drop{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg);border:1px solid var(--faint);box-shadow:0 8px 32px rgba(0,0,0,0.06);opacity:0;pointer-events:none;transform:translateY(-4px);transition:all .25s var(--ease);z-index:1001;min-width:140px}
.lang-sw.open .lang-sw__drop{opacity:1;pointer-events:all;transform:translateY(0)}
.lang-sw__opt{display:block;width:100%;padding:10px 16px;font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);text-decoration:none;transition:all .2s;text-align:left;border:none;background:none;cursor:pointer}
.lang-sw__opt:hover{color:var(--ink);background:var(--accent-light)}
.lang-sw__opt--active{color:var(--accent);font-weight:500}
.lang-sw__opt--active::after{content:' ✓';font-size:.5rem}
.nav__mob .lang-sw-mob{display:flex;gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid var(--faint)}
.nav__mob .lang-sw-mob a{font-family:var(--mono)!important;font-size:.8rem!important;font-style:normal!important;letter-spacing:.12em;text-transform:uppercase;color:var(--mid)!important;opacity:.7;transition:all .3s}
.nav__mob .lang-sw-mob a:hover{opacity:1;color:var(--ink)!important}
.nav__mob .lang-sw-mob a.active{color:var(--accent)!important;opacity:1}
@media(max-width:900px){.lang-sw{display:none}}
