body{font-family:var(--font-sans);background:var(--bone);color:var(--ink);overflow-x:hidden;font-size:var(--t-body);font-weight:400}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad-x)}
.eyebrow{font-family:var(--font-mono);font-size:var(--t-eyebrow);letter-spacing:.28em;text-transform:uppercase;color:var(--accent-ink)}
section.dark .eyebrow{color:var(--accent-2)}
h1,h2,h3{font-family:var(--font-display);font-weight:500;line-height:1.1;letter-spacing:-.02em}
h1{font-weight:500}
h1 em,h2 em,h3 em{font-style:normal;color:var(--accent-ink)}
section.dark h1 em,section.dark h2 em{color:var(--accent-2)}
p{max-width:60ch}
.mono{font-family:var(--font-mono)}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;gap:11px;font-size:.92rem;font-weight:500;letter-spacing:.01em;padding:16px 32px;border-radius:60px;background:var(--ink);color:var(--bone);overflow:hidden;isolation:isolate;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;z-index:1;background:linear-gradient(100deg,transparent,rgba(255,255,255,.18),transparent);transform:skewX(-18deg);transition:left .7s var(--ease)}
.btn span{position:relative;z-index:2}
.btn:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(15,16,18,.24)}
.btn:hover::after{left:130%}
section.dark .btn{background:var(--bone);color:var(--ink)}
.tlink{display:inline-flex;align-items:center;gap:11px;font-size:.92rem;color:currentColor;padding-bottom:5px;position:relative}
.tlink::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;opacity:.35;transform-origin:left;transition:transform .5s var(--ease)}
.tlink:hover::after{transform:scaleX(0);transform-origin:right}
.tlink .ar{transition:transform .5s var(--ease)}
.tlink:hover .ar{transform:translateX(6px)}

/* ---------- header ---------- */
.hdr{position:fixed;inset:0 0 auto 0;z-index:80;transition:background .6s var(--ease),border-color .6s,backdrop-filter .6s}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:96px}
.brand{display:flex;align-items:center;gap:15px;color:var(--bone);z-index:90}
.brand .mark{display:block}
.brand .mark img{height:40px;width:auto;display:block}
.brand .mark .m-ink{display:none}
.hdr.solid.light .brand .mark .m-gold{display:none}
.hdr.solid.light .brand .mark .m-ink{display:block}
.brand b{font-family:var(--font-display);font-weight:600;font-size:1rem;letter-spacing:.4em;text-indent:.4em}
.nav{display:flex;align-items:center;gap:34px}
.nav .links{display:flex;align-items:center;gap:30px}
.nav a.link{font-size:.82rem;letter-spacing:.01em;color:var(--bone);opacity:.74;transition:opacity .3s}
.nav a.link:hover{opacity:1}
.nav .div{width:1px;height:15px;background:currentColor;opacity:.25;color:var(--bone)}
.lang{display:flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;color:var(--bone)}
.lang button{padding:4px 5px;opacity:.45;transition:opacity .3s;color:inherit}
.lang button.on{opacity:1;color:var(--accent-2)}
.hdr.solid{background:rgba(13,14,16,.8);backdrop-filter:blur(18px);border-bottom:1px solid var(--line-dark)}
.hdr.solid.light{background:rgba(245,243,237,.86);border-bottom:1px solid var(--line)}
.hdr.solid.light .brand,.hdr.solid.light .nav a.link,.hdr.solid.light .lang,.hdr.solid.light .burger span{color:var(--ink)}
.hdr.solid.light .nav .div{color:var(--ink)}
.burger{display:none;flex-direction:column;gap:5px;padding:8px;z-index:90}
.burger span{width:24px;height:1.5px;background:var(--bone);transition:.35s var(--ease)}
.nav-ov{position:fixed;inset:0;z-index:75;background:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:0 var(--pad-x);transform:translateY(-100%);transition:transform .6s var(--ease);pointer-events:none}
.nav-ov.open{transform:none;pointer-events:auto}
.nav-ov a{font-family:var(--font-display);font-size:clamp(1.7rem,7vw,2.6rem);font-weight:500;color:var(--bone);padding:12px 0;letter-spacing:-.02em}
.nav-ov a:hover{color:var(--accent-2)}
body.menu-open{overflow:hidden}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;display:grid;align-content:center;color:var(--bone);background:var(--ink);overflow:hidden}
.hero-media{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center right}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,12,14,.9) 0%,rgba(11,12,14,.55) 44%,rgba(11,12,14,.1) 74%,rgba(11,12,14,.34) 100%)}
.hero-in{position:relative;z-index:3;padding-top:150px;max-width:none;margin-inline:0;padding-left:clamp(24px,4vw,64px)}
.hero .eyebrow{display:block;margin-bottom:40px}
.hero h1{font-size:var(--t-hero);font-weight:500;max-width:17ch;letter-spacing:-.02em;line-height:1.14}
.hero .lede{margin-top:30px;font-size:var(--t-lead);font-weight:300;color:rgba(245,243,237,.74);max-width:40ch;line-height:1.65}
.hero .act{display:flex;align-items:center;gap:36px;margin-top:52px;flex-wrap:wrap}
.hero-foot{position:absolute;left:var(--pad-x);right:var(--pad-x);bottom:38px;z-index:3;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(245,243,237,.42)}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(22px)}
.reveal.is-in{opacity:1;transform:none;transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}

/* ---------- statement ---------- */
.statement{padding-block:var(--sect)}
.statement .grid{display:grid;grid-template-columns:1fr;gap:clamp(28px,4vw,60px)}
@media(min-width:960px){.statement .grid{grid-template-columns:4fr 7fr;align-items:start}}
.statement h2{font-size:var(--t-h2);font-weight:500;max-width:22ch}
.statement .body{font-size:var(--t-lead);font-weight:300;color:#3b3e43;line-height:1.75;max-width:54ch}
.statement .body p+p{margin-top:1.3em}

/* ---------- domains ---------- */
.domains{background:var(--paper);border-top:1px solid var(--line);padding-block:var(--sect)}
.domains .head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:80px;flex-wrap:wrap}
.domains h2{font-size:var(--t-h2);font-weight:500}
.row{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,64px);align-items:baseline;padding:clamp(34px,3.6vw,52px) 0;border-top:1px solid var(--line);transition:padding-left .55s var(--ease)}
.row:last-child{border-bottom:1px solid var(--line)}
.row:hover{padding-left:16px}
.row .no{font-family:var(--font-mono);font-size:.78rem;color:var(--accent-ink);letter-spacing:.1em}
.row .rc{display:grid;grid-template-columns:1fr;gap:14px}
@media(min-width:820px){.row .rc{grid-template-columns:5fr 6fr;align-items:baseline;gap:clamp(24px,4vw,60px)}}
.row h3{font-size:var(--t-h2);font-weight:500}
.row p{color:var(--stone);font-size:var(--t-body);max-width:46ch;line-height:1.6}

/* ---------- band ---------- */
.band{position:relative;height:clamp(400px,64vh,680px);overflow:hidden;background:var(--ink)}
.band img{width:100%;height:118%;object-fit:cover;object-position:center}
.band .cap{position:absolute;left:var(--pad-x);bottom:40px;color:var(--bone);z-index:2}
.band .cap .eyebrow{color:var(--accent-2)}
.band .cap .t{font-family:var(--font-display);font-size:var(--t-h3);font-weight:500;margin-top:16px;max-width:26ch}
.band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,12,14,.32),transparent 42%,rgba(11,12,14,.58))}

/* ---------- presence ---------- */
.presence{position:relative;overflow:hidden;isolation:isolate;background:var(--ink);color:var(--bone);padding-block:var(--sect)}
.presence-bg{position:absolute;inset:0;z-index:0}
.presence-bg img{width:100%;height:118%;object-fit:cover;object-position:center;opacity:.55}
.presence::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(15,16,18,.62) 0%,rgba(15,16,18,.78) 55%,rgba(15,16,18,.92) 100%)}
.presence>.wrap{position:relative;z-index:2}
.presence h2{font-size:var(--t-h2);font-weight:500;max-width:20ch;margin:30px 0 80px}
.presence .stat{background:rgba(15,16,18,.72);backdrop-filter:blur(2px)}
.stats{display:grid;grid-template-columns:1fr;gap:1px;background:var(--line-dark);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
@media(min-width:760px){.stats{grid-template-columns:repeat(3,1fr)}}
.stat{padding:50px clamp(0px,2vw,30px) 50px 0;background:var(--ink)}
.stat .n{font-family:var(--font-display);font-size:clamp(2.2rem,3.6vw,3.2rem);font-weight:500;color:var(--bone);line-height:1;letter-spacing:-.02em}
.stat .l{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--stone-2);margin-top:20px}

/* ---------- contact ---------- */
.contact{padding-block:var(--sect)}
.contact .grid{display:grid;grid-template-columns:1fr;gap:clamp(40px,6vw,96px);align-items:start}
@media(min-width:960px){.contact .grid{grid-template-columns:5fr 6fr}}
.contact h2{font-size:var(--t-h2);font-weight:500;max-width:16ch}
.contact .sub{color:var(--stone);margin-top:24px;font-size:var(--t-body);line-height:1.75;max-width:42ch}
.contact .direct{margin-top:32px;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.05em;color:var(--ink)}
.contact .direct a{border-bottom:1px solid var(--accent);padding-bottom:2px}
.form .field{border-bottom:1px solid var(--line);padding:20px 0;transition:border-color .4s}
.form .field:focus-within{border-color:var(--ink)}
.form .field label{display:block;font-family:var(--font-mono);font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--stone-2);margin-bottom:10px}
.form .field input,.form .field textarea{width:100%;background:none;border:none;font-size:var(--t-lead);font-weight:300;color:var(--ink)}
.form .field textarea{resize:vertical;min-height:70px}
.form .field input:focus,.form .field textarea:focus{outline:none}
.form .field input::placeholder,.form .field textarea::placeholder{color:#b7bac0;font-weight:300}
.form .act{margin-top:42px}
.formok{display:none;margin-top:20px;font-family:var(--font-mono);font-size:.74rem;color:var(--accent-ink)}

/* ---------- footer ---------- */
footer{background:var(--ink);color:var(--bone);padding-top:clamp(80px,9vw,130px)}
.foot-top{display:grid;grid-template-columns:1fr;gap:46px;padding-bottom:64px;border-bottom:1px solid var(--line-dark)}
@media(min-width:820px){.foot-top{grid-template-columns:2fr 1fr 1fr}}
.foot-brand .fmark{height:104px;width:auto;display:block}
.foot-tag{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--stone-2);margin-top:22px}
.foot-col h4{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone-2);margin-bottom:20px;font-weight:400}
.foot-col a{display:block;color:rgba(245,243,237,.68);padding:8px 0;font-size:.9rem;transition:color .3s}
.foot-col a:hover{color:var(--accent-2)}
.foot-bot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;padding:30px 0 44px;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.06em;color:var(--stone)}

@media(max-width:940px){.nav .links,.nav .div{display:none}.burger{display:flex}}
@media(max-width:760px){.hero h1{max-width:100%}}

/* ---------- v1.0 premium polish ---------- */
:root{--io:cubic-bezier(.45,0,.25,1)}
.loader{position:fixed;inset:0;z-index:300;background:#0c0d0f;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:opacity .8s var(--io),visibility .8s var(--io),transform .8s var(--io)}
.loader-bg{position:absolute;inset:0;z-index:0;background:url('../assets/img/loader-bg.jpg') center/cover no-repeat;transform:scale(1.04);animation:kenburns 4.4s var(--io) forwards}
@keyframes kenburns{to{transform:scale(1.13)}}
.loader::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(120% 95% at 50% 44%,rgba(9,10,12,.5) 0%,rgba(9,10,12,.82) 55%,rgba(9,10,12,.96) 100%)}
.loader-in{position:relative;z-index:2}
.loader-in{display:flex;flex-direction:column;align-items:center;text-align:center}
.l-mark{height:86px;width:auto;opacity:0;transform:translateY(10px);animation:lIn 1s var(--io) .15s forwards}
.l-name{font-family:var(--font-display);font-weight:600;font-size:1.5rem;color:#EBE0C8;margin-top:26px;display:flex}
.l-name span{display:inline-block;opacity:0;transform:translateY(10px);margin-left:.5em;animation:lIn .7s var(--io) forwards}
.l-name span:first-child{margin-left:0}
.l-name span:nth-child(1){animation-delay:.95s}
.l-name span:nth-child(2){animation-delay:1.02s}
.l-name span:nth-child(3){animation-delay:1.09s}
.l-name span:nth-child(4){animation-delay:1.16s}
.l-name span:nth-child(5){animation-delay:1.23s}
.l-name span:nth-child(6){animation-delay:1.3s}
.l-name span:nth-child(7){animation-delay:1.37s}
.l-line{width:0;height:1px;background:var(--accent-2);opacity:.9;margin-top:22px;animation:lineIn 1.1s var(--io) 1.7s forwards}
@keyframes lineIn{to{width:70px}}
.l-tag{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.42em;text-transform:uppercase;color:var(--accent-2);margin-top:20px;opacity:0;transform:translateY(10px);animation:lIn 1s var(--io) 2s forwards}
@keyframes lIn{to{opacity:1;transform:none}}
.loader.done{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-24px)}
.nav-ov-logo{height:46px;width:auto;margin-bottom:44px;opacity:.95}
.foot-brand .fmark{height:78px;width:auto;display:block}

/* unify interactive transitions ~400ms ease-in-out */
.btn,.tlink,.tlink::after,.nav a.link,.lang button,.foot-col a,.row,.card,.field input,.field textarea,.brand,.navlink{transition-duration:.4s!important;transition-timing-function:var(--io)!important}
.btn::before,.btn::after{transition-duration:.45s!important;transition-timing-function:var(--io)!important}

/* contact form — more refined */
.contact .sub{max-width:40ch}
.form .field{padding:22px 0}
.form .field label{font-size:.62rem;letter-spacing:.2em;color:#9a9ea4}
.form .field input,.form .field textarea{font-size:1.12rem}
.form .field input::placeholder,.form .field textarea::placeholder{color:#c4c7cc}
.form .field:focus-within label{color:var(--accent-ink)}

@media(max-width:1024px){:root{--sect:clamp(96px,12vw,180px)}}
@media(max-width:600px){.hero-in{padding-left:24px}.hero .act{gap:22px}.foot-top{gap:36px}}
.foot-legal a{color:var(--stone)}
.foot-legal a:hover{color:var(--accent-2)}

/* ---------- legal pages ---------- */
.legal-page{background:var(--bone)}
.legal-page .hdr{position:static;background:rgba(13,14,16,.96);border-bottom:1px solid var(--line-dark)}
.legal-head{background:var(--ink);color:var(--bone);padding:clamp(60px,9vw,110px) 0 clamp(46px,6vw,74px)}
.legal-head .eyebrow{color:var(--accent-2);margin-bottom:20px;display:block}
.legal-head h1{font-family:var(--font-display);font-weight:500;font-size:var(--t-h2);letter-spacing:-.02em}
.legal{padding-block:clamp(56px,8vw,104px)}
.legal .wrap{max-width:840px}
.legal h2{font-family:var(--font-display);font-weight:500;font-size:var(--t-h3);margin:2.4em 0 .55em;letter-spacing:-.01em;color:var(--ink)}
.legal h2:first-of-type{margin-top:0}
.legal p,.legal li{color:#3c3f44;font-size:var(--t-body);line-height:1.85}
.legal p{margin-bottom:1em;max-width:none}
.legal ul{margin:0 0 1.1em 1.2em;list-style:disc}
.legal li{margin-bottom:.3em}
.legal a{color:var(--accent-ink);border-bottom:1px solid var(--line);transition:border-color .4s var(--io)}
.legal a:hover{border-color:var(--accent)}
.legal .ph{color:var(--accent-ink);font-style:italic}
.legal .note{margin-top:2.4em;padding:18px 22px;border-left:2px solid var(--accent);background:var(--paper);font-size:.9rem;color:var(--stone)}
.legal .back{display:inline-flex;align-items:center;gap:10px;margin-top:46px;font-size:.92rem;color:var(--ink);border-bottom:1px solid var(--accent);padding-bottom:3px}

/* ---------- subpages: head sub + CTA ---------- */
.legal-head h1 em{color:var(--accent-2)}
.legal-head .sub{margin-top:26px;max-width:56ch;color:var(--stone-2);font-size:var(--t-body);line-height:1.8}
.row-link{margin-top:14px}
.row-link a{color:var(--accent-ink);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--line);padding-bottom:3px;transition:border-color .4s var(--io)}
.row-link a:hover{border-color:var(--accent)}
.cta{padding-block:var(--sect)}
.cta.dark{background:var(--ink);color:var(--bone)}
.cta .eyebrow{color:var(--accent-2);display:block;margin-bottom:18px}
.cta h2{font-family:var(--font-display);font-weight:500;font-size:var(--t-h2);letter-spacing:-.02em;max-width:20ch}
.cta .sub{margin:26px 0 40px;max-width:52ch;color:var(--stone-2);font-size:var(--t-body);line-height:1.8}
.cta .fineprint{margin-top:34px;max-width:60ch;color:var(--stone);font-size:.78rem;line-height:1.7;opacity:.72}

/* ---------- capital-partner list ---------- */
.klist{list-style:none;display:flex;flex-wrap:wrap;gap:14px 32px;margin:34px 0 42px;padding:0}
.klist li{position:relative;padding-left:20px;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--stone-2)}
.klist li::before{content:"";position:absolute;left:0;top:.42em;width:6px;height:6px;border-radius:50%;background:var(--accent-2)}

.foot-bot{flex-wrap:wrap;gap:8px 22px}
.foot-mid{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone-2);opacity:.7}

/* ---------- founder quote ---------- */
.founder{margin:30px 0 18px;max-width:60ch;font-family:var(--font-display);font-weight:500;font-size:var(--t-h3);line-height:1.4;letter-spacing:-.01em;color:var(--ink)}
.sign{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink)}

/* ---------- roadmap ---------- */
.roadmap{background:var(--paper);border-top:1px solid var(--line);padding-block:var(--sect)}
.roadmap .head{margin-bottom:20px}
.roadmap .head .eyebrow{display:block;margin-bottom:16px}
.roadmap h2{font-size:var(--t-h2);font-weight:500;max-width:22ch}
.rmap{list-style:none;margin:52px 0 0;padding:0;border-left:1px solid var(--line);margin-left:6px}
.rstep{position:relative;padding:0 0 clamp(28px,3.4vw,44px) clamp(26px,3vw,40px)}
.rstep:last-child{padding-bottom:0}
.rstep::before{content:"";position:absolute;left:-5px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 0 4px var(--paper)}
.rstep .n{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.16em;color:var(--accent-ink)}
.rstep h3{font-family:var(--font-display);font-weight:500;font-size:var(--t-h3);letter-spacing:-.01em;margin:6px 0 6px}
.rstep p{color:var(--stone);font-size:var(--t-body);line-height:1.6;max-width:46ch}
.rmap-note{margin-top:34px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--stone-2);opacity:.75}
