@font-face{font-family:"Familjen Grotesk";src:url(fonts/familjen.woff2) format("woff2");font-weight:400 700;font-display:swap}
:root{--bg:#000;--ink:#fff;--mint:#8FF7A7;--blue:#2F66F6;--peach:#F5C4A5;--dark:#2B2B2B;--line:rgba(255,255,255,.24);--h:68px;--fd:"Familjen Grotesk","Helvetica Neue",Helvetica,Arial,sans-serif;--fb:"Helvetica Neue",Helvetica,Arial,sans-serif;--r:32px;--pad:clamp(16px,5vw,80px)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 var(--fb);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:inherit}.mint{color:var(--mint)}
h1,h2,h3{font-family:var(--fd);font-weight:500;letter-spacing:-.02em;margin:0}
:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.skip{position:absolute;left:-999px;top:10px}.skip:focus{left:16px;z-index:99;background:#fff;color:#000;padding:8px 14px;border-radius:99px}
.hdr{position:fixed;inset:0 0 auto;height:var(--h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(16px,2.4vw,36px);z-index:50;transition:background .35s}
.hdr.on{background:rgba(43,43,43,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.logo{font:500 clamp(22px,2vw,30px)/1 var(--fd);text-decoration:none}
.nav{display:flex;gap:30px}.nav a{text-decoration:none;font-size:16px}.nav a:hover,.nav a[aria-current]{color:var(--mint)}
.hdr-r{justify-self:end;display:flex;gap:12px;align-items:center}
.pill-o{border:1.5px solid rgba(255,255,255,.85);border-radius:99px;padding:9px 18px;text-decoration:none;font-size:15px;transition:.25s;display:inline-block}.pill-o:hover{background:#fff;color:#000}
.prog{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--blue);transform-origin:0 50%;transform:scaleX(0)}
.burger{display:none;background:none;border:0;width:44px;height:44px;position:relative;cursor:pointer}.burger span{position:absolute;left:10px;right:10px;height:2px;background:#fff;transition:.3s}.burger span:first-child{top:17px}.burger span:last-child{top:25px}
.menu-open .burger span:first-child{top:21px;transform:rotate(45deg)}.menu-open .burger span:last-child{top:21px;transform:rotate(-45deg)}
.mnav{position:fixed;inset:0;background:#000;z-index:45;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:0 28px;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.mnav a{font:500 46px/1.2 var(--fd);text-decoration:none}.mnav a.pill{font:400 17px var(--fb);margin-top:24px;align-self:flex-start}.menu-open .mnav{opacity:1;visibility:visible}.menu-open{overflow:hidden}
@media(max-width:860px){.nav,.hdr-r .pill-o{display:none}.burger{display:block}.hdr{grid-template-columns:1fr auto}}
.pill{display:inline-flex;align-items:center;gap:.4em;border-radius:99px;padding:12px 24px;font:400 16px var(--fb);text-decoration:none;border:0;cursor:pointer;color:#000;background:#fff;transition:transform .25s,box-shadow .25s,background .25s}
.pill:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.28)}.pill.mint{background:var(--mint)}.pill.black{background:#000;color:#fff}
.hero{height:250vh;position:relative}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.htext{position:absolute;left:0;right:0;top:calc(var(--h) + 10vh);text-align:center;z-index:2}
.htext h1{font-size:clamp(66px,12.4vw,230px);line-height:.86;letter-spacing:-.045em}.htext h1 span{display:block}
.htext p{font-size:clamp(17px,2vw,34px);margin:3.4vh 16px 0;letter-spacing:-.01em}
.emblem,.rings{position:absolute;left:50%;top:50%}
.emblem{--w:min(118vmin,1300px);width:var(--w);margin:calc(var(--w)/-2) 0 0 calc(var(--w)/-2);z-index:1}
.rings i{position:absolute;left:0;top:0;border:1px solid var(--line);border-radius:50%;transform:translate(-50%,-50%)}
.rings i:nth-child(1){width:132vmin;height:132vmin}.rings i:nth-child(2){width:184vmin;height:184vmin}.rings i:nth-child(3){width:250vmin;height:250vmin}
.fl{position:absolute;z-index:3}[data-m]{will-change:transform,opacity}
.f-explore{left:7.3%;top:25%}.cur{width:46px;height:46px}.f-c1{left:13%;top:29.5%;color:var(--mint)}.f-c2{left:72.5%;top:56%;color:var(--blue)}.f-forbes{right:3.2%;top:68.5%}.f-forbes .pill{cursor:default}
.tile{width:clamp(62px,6.3vw,124px);aspect-ratio:1;border-radius:22%;display:grid;place-items:center;box-shadow:0 22px 50px rgba(0,0,0,.35)}
.tile img{width:84%}.tile.blue{background:var(--blue)}.tile.mint{background:var(--mint)}.tile.peach{background:var(--peach)}
.t1{left:26%;top:77%}.t2{left:2.2%;top:42%}.t3{left:27.6%;top:45%}.t4{left:86%;top:47%}
@media(max-width:700px){.htext{top:calc(var(--h) + 13vh)}.f-explore{left:7%;top:60%}.f-c1{left:31%;top:63.5%}.f-c2{left:78%;top:52%}.f-forbes{right:4%;top:72%}.cur{width:34px;height:34px}.t1{left:9%;top:80%}.t3{left:60%;top:30%}.t4{left:74%;top:62%}}
.flow{position:relative}
.stack{position:relative;z-index:4;width:min(680px,92vw);margin:-48vh auto 0;padding-bottom:8vh}
.card{position:sticky;top:calc(var(--h) + 10px);margin-bottom:10vh;border-radius:var(--r);overflow:hidden;background:#111;transform-origin:50% 0;will-change:transform,filter;box-shadow:0 -20px 60px rgba(0,0,0,.35)}
.card:last-child{margin-bottom:0}
.card-h{display:flex;align-items:center;gap:20px;padding:24px 30px;color:#000}
.card-h h3{font-size:clamp(26px,2.7vw,38px);line-height:1.04}
.card-h .tile{width:74px;border-radius:18px;box-shadow:none;background:rgba(0,0,0,.07);flex:none}
.card.peach .card-h{background:var(--peach)}.card.mint .card-h{background:var(--mint)}
.media{aspect-ratio:1.1/1;overflow:hidden;position:relative;background:#0c0c0c}
.media img,.media video{width:100%;height:100%;object-fit:cover}
.media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.45));pointer-events:none}
.kb{animation:kb 16s ease-in-out infinite alternate;transform-origin:60% 40%}
@keyframes kb{from{transform:scale(1.02)}to{transform:scale(1.18) translate3d(-2%,-1.5%,0)}}
.float-cta{position:sticky;bottom:22px;height:0;display:flex;justify-content:center;z-index:8;pointer-events:none}
.float-cta a{pointer-events:auto;transform:translateY(-100%);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.sec{padding:clamp(80px,13vh,160px) var(--pad)}
.wrap{max-width:1280px;margin:0 auto}
.level{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,80px);align-items:center}
.level h2,.big{font-size:clamp(50px,7.4vw,130px);line-height:.9;letter-spacing:-.045em}
.lead{font-size:clamp(17px,1.35vw,20px);color:rgba(255,255,255,.82);max-width:580px;margin:28px 0 34px}
.frame{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5}.frame img{width:100%;height:100%;object-fit:cover}
.frame-wrap{position:relative}.frame-wrap .tile{position:absolute;left:-28px;bottom:9%;z-index:2}
.head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:36px}
.arrows{display:flex;gap:10px;flex:none}.arrow{width:52px;height:52px;border-radius:50%;border:1.5px solid rgba(255,255,255,.6);background:none;color:#fff;cursor:pointer;font-size:20px;transition:.25s}.arrow:hover{background:#fff;color:#000}
.rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 var(--pad);padding:0 var(--pad) 10px;scrollbar-width:none;overscroll-behavior-x:contain}.rail::-webkit-scrollbar{display:none}
.co{flex:0 0 clamp(250px,26vw,380px);aspect-ratio:4/5;border-radius:28px;overflow:hidden;position:relative;scroll-snap-align:start;background:#141414}
.co img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.co:hover img{transform:scale(1.05)}.co.contain img{object-fit:contain;padding:16%}
.co .pill{position:absolute;left:18px;bottom:18px}
.ach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ach{background:#101010;border:1px solid #232323;border-radius:28px;padding:30px;display:flex;flex-direction:column;gap:22px;min-height:320px}
.ach h3{font-size:clamp(24px,2.1vw,32px);line-height:1.1}.ach .tile{box-shadow:none;width:88px}
.yr{margin-top:auto;font:500 clamp(46px,5vw,76px)/1 var(--fd);color:var(--mint);letter-spacing:-.04em}
.center{text-align:center;margin-top:44px}
.news{background:var(--blue);position:relative;overflow:hidden;min-height:100vh;display:grid;place-items:center;padding:14vh 16px}
.sphere{position:absolute;--w:min(112vh,1000px);width:var(--w);right:-7vw;top:50%;margin-top:calc(var(--w)/-2);will-change:transform}
.ncard{position:relative;background:#fff;color:#000;border-radius:28px;padding:30px 28px;width:min(600px,100%);box-shadow:0 30px 80px rgba(0,0,0,.25)}
.ncard h2{font-size:clamp(26px,2.4vw,34px);margin-bottom:22px}
label{display:block;font-size:14px;margin:0 0 8px}
input,textarea{width:100%;font:inherit;font-size:16px;padding:12px 14px;border:1.5px solid #000;border-radius:10px;background:#fff;color:#000}textarea{min-height:140px;resize:vertical}
.check{display:flex;gap:10px;align-items:flex-start;margin:18px 0 22px;font-size:15px;cursor:pointer}.check input{width:18px;height:18px;flex:none;margin:2px 0 0}
.btn-block{width:100%;justify-content:center;background:#000;color:#fff;padding:15px}
.form-msg{margin-top:12px;font-size:15px;min-height:1.4em}.hp{position:absolute;left:-9999px;opacity:0}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fields .full{grid-column:1/-1}@media(max-width:600px){.fields{grid-template-columns:1fr}}
.press .big{text-align:center;margin-bottom:44px}
.logo-tile{flex:0 0 clamp(220px,24vw,370px);aspect-ratio:1.4;border-radius:22px;overflow:hidden;scroll-snap-align:start;border:1px solid #232323}
.logo-tile img{width:100%;height:100%;object-fit:contain}
.press .arrows{justify-content:center;margin-top:26px}
.foot{background:var(--blue);padding:40px clamp(16px,2.4vw,40px)}
.fgrid{display:grid;grid-template-columns:1fr .9fr 2fr;gap:30px;max-width:1920px;margin:0 auto}
.fcard{border-radius:44px;padding:30px 32px;position:relative;overflow:hidden}
.f1{background:var(--mint);color:#000;display:flex;flex-direction:column;gap:12px;min-height:540px}.f1 .tile{width:84px;border-radius:18px;background:rgba(0,0,0,.08);box-shadow:none}
.flinks{margin-top:18px}.flinks a{display:block;text-decoration:none;font-size:18px;padding:5px 6px}.flinks a:hover,.legal a:hover{text-decoration:underline}
.legal{margin-top:auto}.legal a{display:block;text-decoration:none;font-size:14px;line-height:1.6}.f1 .pill{align-self:flex-start;margin-top:14px}
.fmid{display:grid;grid-template-rows:1fr auto;gap:30px}
.f2{background:var(--mint);color:#000;display:grid;place-items:center;min-height:300px}
.circle{width:min(100%,360px);aspect-ratio:1;border:1.5px solid #000;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:18px;transition:.3s}.circle:hover{background:#000;color:var(--mint)}
.f3{background:var(--peach);color:#000;display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;padding:40px 24px}
.soc{background:#000;color:#fff;border-radius:99px;padding:12px 18px;text-decoration:none;font-size:15px;transition:.25s}.soc:hover{background:#fff;color:#000}
.f4{background:var(--dark);min-height:540px;display:flex;flex-direction:column}.f4 h2{font-size:clamp(34px,3vw,50px);margin-bottom:22px}.f4 p{margin:0;font-size:15px;position:relative;z-index:1}
.f4 .em{position:absolute;right:-16%;top:8%;width:74%;pointer-events:none}.f4 .copy{margin-top:auto;font-size:15px;position:relative}
@media(max-width:1000px){.fgrid{grid-template-columns:1fr}.f1,.f4{min-height:440px}.f4 .em{width:78%;right:-24%;top:auto;bottom:-10%}}
.rv{opacity:0;transform:translate3d(0,44px,0);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.7,.2,1)}.rz{opacity:0;transform:scale(.88);transition:opacity 1s ease,transform 1.2s cubic-bezier(.2,.7,.2,1)}.rv.in,.rz.in{opacity:1;transform:none}
@media(max-width:860px){.level,.ach-grid{grid-template-columns:1fr}.head-row{flex-direction:column;align-items:flex-start}.frame-wrap .tile{left:auto;right:12px;bottom:-24px}}
.phero{min-height:92vh;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden;padding:calc(var(--h) + 40px) 16px 70px}
.phero>*{position:relative;z-index:2}.phero .bg{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover}
.phero .em-bg{position:absolute;z-index:0;--w:min(96vmin,980px);width:var(--w);left:50%;top:54%;margin:calc(var(--w)/-2) 0 0 calc(var(--w)/-2);opacity:.5}
.phero h1{font-size:clamp(54px,9vw,156px);line-height:.9;letter-spacing:-.045em}.phero .lead{margin:26px auto 34px}
.phero .tile{position:absolute;z-index:1}
.spaced{letter-spacing:.3em!important;font-size:clamp(40px,6vw,96px)!important;margin-bottom:10px!important}
.feat{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:center;margin-bottom:14vh}.feat:last-child{margin-bottom:0}
.feat.flip .fmedia{order:-1}
.feat h2{font-size:clamp(42px,5vw,84px);line-height:.95;letter-spacing:-.04em}
.fmedia{border-radius:var(--r);overflow:hidden;aspect-ratio:1.1;position:relative;display:grid;place-items:center}.fmedia>img.cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fmedia.blue{background:var(--blue)}.fmedia.mint{background:var(--mint)}.fmedia.peach{background:var(--peach)}.fmedia .shape{width:62%;animation:bob 7s ease-in-out infinite}
@keyframes bob{50%{transform:translate3d(0,-14px,0) rotate(6deg)}}
@media(max-width:860px){.feat{grid-template-columns:1fr}.feat.flip .fmedia{order:0}}
.prose{max-width:780px;margin:0 auto;padding:calc(var(--h) + 70px) 20px 110px}.prose h1{font-size:clamp(46px,6vw,88px);line-height:.95;letter-spacing:-.04em;margin-bottom:12px}
.prose h2{font-size:25px;margin:38px 0 8px}.prose p,.prose li{color:rgba(255,255,255,.85)}.prose .muted{color:rgba(255,255,255,.55);font-size:15px}.prose a{color:var(--mint)}
.client{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,80px);align-items:start;padding-top:calc(var(--h) + 70px)}
.client .ncard{width:100%}@media(max-width:860px){.client{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.kb,.fmedia .shape{animation:none}.rv,.rz{opacity:1;transform:none;transition:none}.hero{height:auto}.stage{position:relative;height:100vh}}
.cw{display:block}.fi{will-change:transform}
.f-c1 .fi{animation:cur1 4.8s cubic-bezier(.45,0,.2,1) infinite}.f-explore .fi{animation:press 4.8s ease-in-out infinite}.f-c2 .fi{animation:cur2 7s ease-in-out infinite}.f-forbes .fi{animation:float 5.5s ease-in-out infinite}
.t1 .fi{animation:bob1 6.5s ease-in-out infinite}.t2 .fi{animation:bob2 7.5s ease-in-out infinite}.t3 .fi{animation:bob1 8s ease-in-out -2s infinite}.t4 .fi{animation:bob2 6.8s ease-in-out -3s infinite}
@keyframes float{50%{transform:translate3d(0,-12px,0)}}
@keyframes bob1{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(6px,-18px,0) rotate(-8deg)}}
@keyframes bob2{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(-8px,-16px,0) rotate(9deg)}}
@keyframes cur1{0%,100%{transform:translate(64px,56px)}36%,50%{transform:translate(-18px,-24px)}43%{transform:translate(-18px,-24px) scale(.8)}72%{transform:translate(8px,-4px)}}
@keyframes press{0%,38%,54%,100%{transform:scale(1)}43%{transform:scale(.9)}48%{transform:scale(1.06)}}
@keyframes cur2{0%,100%{transform:translate(0,0) rotate(0)}25%{transform:translate(-46px,20px) rotate(-8deg)}50%{transform:translate(-14px,52px) rotate(5deg)}75%{transform:translate(30px,16px) rotate(-4deg)}}
.vid{display:block;width:100%;height:100%;object-fit:cover;background:#0c0c0c}.frame video,.fmedia video{position:absolute;inset:0}
@media(prefers-reduced-motion:reduce){.fi{animation:none!important}}
