/* BBG | Be the GOAT. */
:root{--bg:#171924;--bg2:#1d2030;--ink:#c1c4d0;--dim:#c1c4d0b3;--line:#c1c4d024;--gold:#c9a96b;--serif:"Inria Serif",Georgia,serif;--sans:"DM Sans",system-ui,sans-serif;--p:url("../images/founders.jpg");color-scheme:dark;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{background:var(--bg);color:var(--ink);font:300 17px/1.75 var(--sans);overflow-x:hidden}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.mk{height:34px;width:auto;color:var(--ink)}.m{fill:currentColor}.e{fill:var(--bg)}
.cg{position:fixed;left:-260px;top:-260px;width:520px;height:520px;border-radius:50%;background:radial-gradient(#c9a96b14,transparent 65%);pointer-events:none;z-index:1;will-change:transform}
nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:calc(14px + env(safe-area-inset-top,0px)) 5vw 14px;transition:background .4s,border-color .4s;border-bottom:1px solid transparent}
nav.s{background:#171924e0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:var(--line)}
.lk{display:flex;gap:34px;align-items:center;font-size:15px}
.lk a:not(.bt){position:relative;padding:4px 0}
.lk a:not(.bt)::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .45s}
.lk a:not(.bt):hover::after{transform:scaleX(1);transform-origin:left}
.mb{display:none;background:none;border:0;color:var(--ink);font:500 15px var(--sans);cursor:pointer}
.bt{position:relative;display:inline-block;overflow:hidden;border:1px solid var(--gold);padding:11px 26px;font-size:15px;color:var(--ink);transition:color .5s;isolation:isolate}
.bt::before{content:"";position:absolute;inset:0;background:var(--gold);transform:translateY(101%);transition:transform .5s cubic-bezier(.2,.7,.2,1);z-index:-1}
.bt:hover{color:var(--bg)}.bt:hover::before{transform:none}
.hero{position:relative;min-height:100svh;overflow:hidden;display:flex;align-items:center;justify-content:center;isolation:isolate}
.photo{position:absolute;inset:-3%;background:var(--p) center 18%/cover no-repeat;transform:translate3d(calc(var(--mx,0)*-14px),calc(var(--my,0)*-10px),0) scale(1.04);transition:transform .8s ease-out;animation:ph 2.4s cubic-bezier(.2,.7,.2,1) both}
.photo::before{content:"";position:absolute;inset:0;background:var(--bg);mix-blend-mode:lighten}
.photo::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,var(--bg) 98%)}
.lock{position:relative;z-index:2;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px;transform:translate3d(calc(var(--mx,0)*10px),calc(var(--my,0)*8px),0);transition:transform .8s ease-out;margin-top:-4vh}
.lock::before{content:"";position:absolute;inset:-90px -70px;background:radial-gradient(#c9a96b17,transparent 65%);z-index:-1;animation:gl 7s ease-in-out infinite}
.lock>*{opacity:0;animation:up 1.3s cubic-bezier(.2,.7,.2,1) forwards}
.lock .mk{height:clamp(70px,9vw,118px);animation-delay:.5s,0s}
.lock i{width:1px;height:46px;background:linear-gradient(var(--gold),transparent);transform-origin:top;animation-name:dr;animation-delay:.9s}
.lock p{font:300 clamp(26px,3vw,40px)/1.1 var(--serif);animation-delay:1.2s}
.caps{position:absolute;z-index:2;left:5vw;right:5vw;bottom:7vh;display:flex;justify-content:space-between;gap:20px;animation:up 1.2s 1.8s both}
.caps div{display:grid;gap:2px}.caps b{font:400 clamp(20px,2vw,28px)/1.2 var(--serif)}.caps span{font-size:14px;color:var(--gold)}.caps div:last-child{text-align:right}
.sc{position:absolute;z-index:2;bottom:2.2vh;left:50%;width:1px;height:38px;background:linear-gradient(var(--gold),transparent);animation:sc 2.2s ease-in-out infinite}
.mq{border-block:1px solid var(--line);overflow:hidden;white-space:nowrap;padding:20px 0;font:300 22px var(--serif)}
.mq div{display:inline-block;animation:mq 40s linear infinite}.mq:hover div{animation-play-state:paused}
.mq span{margin:0 26px}.mq i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--gold);vertical-align:middle}
section{max-width:1280px;margin:auto;padding:clamp(80px,11vw,140px) 5vw}
.lb{color:var(--gold);font-size:15px;letter-spacing:.06em;margin-bottom:18px;display:flex;align-items:center;gap:14px}
.lb::before{content:"";width:34px;height:1px;background:var(--gold)}
h2{font:300 clamp(36px,5.6vw,72px)/1.06 var(--serif);max-width:15em}
h3{font:400 24px/1.25 var(--serif)}
.ab{display:grid;grid-template-columns:1fr 1fr;gap:6vw;margin-top:50px}.ab p+p{margin-top:22px}.ab p{color:var(--dim);max-width:36em}
.vl{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;margin-top:70px;border-top:1px solid var(--line)}
.vl div{padding:34px 30px 10px 0;transition:transform .5s}.vl div:hover{transform:translateX(8px)}
.vl b{font:300 clamp(34px,4vw,52px)/1 var(--serif);display:block;transition:color .4s}.vl div:hover b{color:var(--gold)}.vl span{color:var(--dim);font-size:15px;display:block;margin-top:8px}
.st{display:flex;flex-wrap:wrap;gap:40px 90px;margin-top:70px}
.st b{display:block;font:300 clamp(54px,7vw,92px)/1 var(--serif)}.st span{color:var(--dim);font-size:15px}
.cd{position:relative;overflow:hidden;border:1px solid var(--line);background:linear-gradient(160deg,var(--bg2),var(--bg));transition:transform .55s cubic-bezier(.2,.7,.2,1),border-color .5s}
.cd::before{content:"";position:absolute;inset:0;background:radial-gradient(380px circle at var(--x,50%) var(--y,0),#c9a96b1f,transparent 60%);opacity:0;transition:opacity .4s;pointer-events:none}
.cd::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.cd:hover{transform:translateY(-7px);border-color:#c9a96b59}.cd:hover::before{opacity:1}.cd:hover::after{transform:none}
.fd{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));gap:28px;margin-top:56px}
.fd .cd{background:var(--bg)}
.ph{position:relative;aspect-ratio:5/4;overflow:hidden;isolation:isolate}
.ph i{position:absolute;inset:0;background:var(--p) var(--pos)/auto 135% no-repeat;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.cd:hover .ph i{transform:scale(1.06)}
.ph::before{content:"";position:absolute;inset:0;background:var(--bg);mix-blend-mode:lighten;z-index:1}
.ph::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 60%,var(--bg));z-index:2}
.ph em{position:absolute;z-index:3;left:28px;bottom:20px;font:400 14px var(--sans);font-style:normal;color:var(--gold);border:1px solid #c9a96b66;padding:4px 14px;border-radius:99px;background:#171924b3;transition:background .4s,color .4s}
.cd:hover .ph em{background:var(--gold);color:var(--bg)}
.bd{padding:12px 32px 36px}.bd h3{font-size:clamp(30px,3vw,40px);font-weight:300}.bd .rl{color:var(--gold);font-size:15px;margin:2px 0 18px}
.bd p{color:var(--dim);font-size:16px;line-height:1.7}.bd p+p{margin-top:12px}
.tg{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.tg span{border:1px solid var(--line);padding:3px 13px;border-radius:99px;font-size:13px;transition:border-color .3s,color .3s,transform .3s}.tg span:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.sv{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;margin-top:56px}
.sv .cd{padding:38px 32px 40px}.sv h3{margin-bottom:12px;transition:color .4s,transform .5s}.sv p{color:var(--dim);font-size:16px;line-height:1.65}
.sv .cd:hover h3{color:var(--gold);transform:translateX(6px)}
.sv svg{width:34px;height:34px;stroke:var(--ink);fill:none;stroke-width:1.2;margin-bottom:26px;transition:transform .7s cubic-bezier(.2,.7,.2,1),stroke .4s}.sv .cd:hover svg{transform:rotate(90deg) scale(1.1);stroke:var(--gold)}
.hub{display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;margin-top:56px;padding:clamp(34px,5vw,64px);border:1px solid #c9a96b59;background:linear-gradient(135deg,#c9a96b12,transparent 55%)}
.hub h3{font:300 clamp(34px,4.4vw,58px)/1.08 var(--serif);margin-bottom:20px}.hub p{color:var(--dim);max-width:30em;margin-bottom:30px}
.hub ul{list-style:none;padding:0;align-self:center}
.hub li{padding:17px 0;border-bottom:1px solid var(--line);display:flex;gap:16px;align-items:baseline;transition:padding .5s,color .4s,border-color .4s}
.hub li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--gold);transform:scale(.6);transition:transform .4s}
.hub li:hover{padding-left:16px;color:#fff;border-color:var(--gold)}.hub li:hover::before{transform:scale(1.3)}
.pr{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:36px;margin-top:56px}
.pr div{position:relative;padding-top:30px}
.pr div::before{content:"";position:absolute;top:0;left:0;height:1px;width:0;background:var(--gold);transition:width 1.4s cubic-bezier(.2,.7,.2,1) var(--d,0s)}.pr .in::before{width:100%}
.pr b{font:300 15px var(--serif);color:var(--gold);display:block;margin-bottom:8px}.pr p{color:var(--dim);font-size:16px;margin-top:8px;line-height:1.65}
.ct{text-align:center;border-top:1px solid var(--line)}
.ct .lb{justify-content:center}.ct .lb::before{display:none}
.ct h2{max-width:none;font-size:clamp(56px,13vw,190px);line-height:1;background:linear-gradient(100deg,var(--ink) 38%,#ead7a8 50%,var(--ink) 62%) 0 0/250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sh 7s linear infinite}
.ct p{color:var(--dim);max-width:30em;margin:26px auto 40px}
.ct .bt{font-size:clamp(18px,2.4vw,26px);padding:18px 44px}
footer{max-width:1280px;margin:auto;padding:36px 5vw calc(40px + env(safe-area-inset-bottom,0px));display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;border-top:1px solid var(--line);font-size:14px;color:var(--dim)}
footer a:hover{color:var(--gold)}footer .mk{height:28px}
.js .r{opacity:0;transform:translateY(26px);transition:opacity 1s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform 1s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.js .r.in{opacity:1;transform:none}
.js .cd.r.in{transition:opacity 1s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .6s cubic-bezier(.2,.7,.2,1),border-color .5s}.js .bt.r.in{transition:opacity 1s var(--d,0s),transform 1s var(--d,0s),color .5s}
@keyframes up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes dr{from{opacity:0;transform:scaleY(0)}to{opacity:1;transform:none}}
@keyframes ph{from{opacity:0;filter:blur(14px)}to{opacity:1;filter:none}}
@keyframes gl{50%{opacity:.4;transform:scale(1.12)}}
@keyframes mq{to{transform:translateX(-50%)}}
@keyframes sh{to{background-position:-150% 0}}
@keyframes sc{0%,100%{opacity:.3;transform:scaleY(.4);transform-origin:top}50%{opacity:1;transform:scaleY(1)}}
@media(max-width:900px){
.lk{position:fixed;inset:0;background:var(--bg);flex-direction:column;justify-content:center;gap:26px;font-size:26px;font-family:var(--serif);opacity:0;pointer-events:none;transition:opacity .4s}
nav.o .lk{opacity:1;pointer-events:auto}.mb{display:block;position:relative;z-index:2}
.hero{flex-direction:column;justify-content:flex-start;padding-top:120px}
.photo{position:relative;inset:auto;order:2;width:100%;aspect-ratio:16/9;background-position:center;margin-top:36px;transform:none}
.lock{margin:0}.caps{position:static;order:3;padding:0 5vw}.sc{display:none}
.ab,.hub{grid-template-columns:1fr}}
@media(hover:none){.cg{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .r,.lock>*,.caps{opacity:1!important;transform:none!important}}
