:root{
  --ink:#0a0b0f;
  --paper:#f5f5f1;
  --white:#fff;
  --muted:#747781;
  --line:rgba(10,11,15,.14);
  --dark-line:rgba(255,255,255,.13);
  --acid:#c9ff36;
  --violet:#6f68ff;
  --cyan:#3df0d3;
  --radius:28px;
  --shadow:0 24px 80px rgba(13,16,25,.14);
  --header-h:62px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}
button,input,select,textarea{font:inherit}
button,a{color:inherit}
a{text-decoration:none}
button{cursor:pointer}
img,video{display:block;max-width:100%}
::selection{background:var(--acid);color:var(--ink)}
.noise{position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.cursor-dot{position:fixed;width:10px;height:10px;border-radius:50%;background:var(--acid);z-index:9999;pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:difference;transition:width .25s,height .25s,opacity .25s}
.section-shell{width:min(1500px,calc(100% - 48px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:fixed;z-index:1000;top:16px;left:50%;transform:translateX(-50%);width:min(1460px,calc(100% - 32px));height:var(--header-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 12px 0 22px;border:1px solid rgba(10,11,15,.09);border-radius:999px;background:rgba(249,249,245,.79);backdrop-filter:blur(16px);box-shadow:0 10px 40px rgba(20,23,34,.08)}
.brand{display:flex;align-items:center;gap:9px;font-size:12px;letter-spacing:.08em;width:max-content}
.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#31d67b;box-shadow:0 0 0 5px rgba(49,214,123,.12)}
.desktop-nav{display:flex;align-items:center;gap:30px;font-size:12px;color:#363840}
.desktop-nav a{position:relative}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--ink);transition:right .3s}
.desktop-nav a:hover:after{right:0}
.site-header>.pill{justify-self:end}
.pill{border:0;border-radius:999px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600;font-size:12px;line-height:1;transition:transform .3s,background .3s,color .3s,border-color .3s;white-space:nowrap}
.pill:hover{transform:translateY(-3px)}
.pill-dark{background:var(--ink);color:white}
.pill-light{background:white;color:var(--ink)}
.pill-outline{background:transparent;border:1px solid var(--line)}
.pill-ghost{background:transparent;border:1px solid var(--dark-line);color:white}
.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;position:relative}
.menu-toggle span{position:absolute;left:10px;right:10px;height:1px;background:var(--ink);transition:.3s}.menu-toggle span:first-child{top:17px}.menu-toggle span:last-child{top:24px}
.mobile-menu{position:fixed;inset:10px;z-index:999;background:var(--ink);color:white;border-radius:26px;padding:100px 26px 30px;display:flex;flex-direction:column;gap:14px;opacity:0;visibility:hidden;transform:translateY(-12px);transition:.35s}
.mobile-menu a{font-family:Manrope;font-size:32px;font-weight:600;border-bottom:1px solid var(--dark-line);padding:10px 0}.mobile-menu.open{opacity:1;visibility:visible;transform:none}
.hero{min-height:100vh;padding:150px 0 55px;display:flex;flex-direction:column;justify-content:center;position:relative}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;display:flex;align-items:center;gap:10px;width:max-content}
.hero-title{font-family:Manrope,sans-serif;font-size:clamp(72px,13.3vw,205px);line-height:.75;letter-spacing:-.09em;margin:45px 0 40px;position:relative;z-index:2}
.hero-title span{display:block;will-change:transform,opacity}
.outline-word{color:transparent;-webkit-text-stroke:2px var(--ink);padding-left:.015em}
.solid-word{text-align:right;padding-right:.05em}
.hero-grid{display:grid;grid-template-columns:1fr 1.25fr .65fr;gap:34px;align-items:end;min-height:320px}
.hero-copy{max-width:390px;padding-bottom:12px}.hero-copy .kicker{font-size:13px;font-weight:700;letter-spacing:.08em}.hero-copy>p:not(.kicker){font-size:15px;line-height:1.65;color:#61646d}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.hero-portrait{height:390px;position:relative;display:grid;place-items:center;isolation:isolate}
.portrait-card{width:285px;height:350px;border-radius:140px 140px 24px 24px;background:linear-gradient(145deg,#20232d,#08090d);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:var(--shadow);overflow:hidden}
.portrait-card:before{content:"";position:absolute;width:180px;height:180px;background:var(--violet);filter:blur(70px);opacity:.44;top:20px;right:-60px}.portrait-card:after{content:"";position:absolute;width:160px;height:160px;background:var(--acid);filter:blur(80px);opacity:.2;bottom:-40px;left:-40px}
.portrait-monogram{font-family:Manrope;font-size:88px;font-weight:800;color:white;letter-spacing:-.08em;z-index:1}.portrait-caption{position:absolute;z-index:1;bottom:19px;color:rgba(255,255,255,.55);font-size:10px;letter-spacing:.04em}
.portrait-ring{position:absolute;border:1px solid rgba(10,11,15,.22);border-radius:50%;z-index:-1}.ring-one{width:390px;height:390px;animation:spin 20s linear infinite}.ring-two{width:330px;height:330px;border-style:dashed;animation:spin 28s linear infinite reverse}
.orbit-tag{position:absolute;background:white;border:1px solid var(--line);padding:8px 12px;border-radius:99px;font-size:10px;font-weight:700;box-shadow:0 7px 25px rgba(10,10,15,.08)}.tag-one{top:45px;left:6%}.tag-two{right:4%;top:42%}.tag-three{bottom:30px;left:10%}
.hero-links{display:flex;flex-direction:column;gap:13px;align-items:flex-start;padding-bottom:14px;font-size:12px}.hero-links a{border-bottom:1px solid var(--line);padding-bottom:7px;width:100%;display:flex;justify-content:space-between}
.scroll-hint{position:absolute;bottom:34px;right:0;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.scroll-hint span{margin-left:8px}
@keyframes spin{to{transform:rotate(360deg)}}
.metrics{padding:50px 0 120px}.section-label{font-size:12px;font-weight:700;letter-spacing:.07em}.section-label span{color:var(--violet)}
.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:24px}.metric{padding:28px 22px 15px;border-right:1px solid var(--line)}.metric:first-child{padding-left:0}.metric:last-child{border-right:0}.metric strong{font-family:Manrope;font-size:clamp(44px,5vw,76px);letter-spacing:-.07em;display:block}.metric strong:after{content:"+";color:var(--violet);font-size:.52em;margin-left:3px}.metric span{color:var(--muted);font-size:13px}
.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-heading-row h2,.community-intro h2{font-family:Manrope;font-size:clamp(38px,5.5vw,82px);line-height:.98;letter-spacing:-.06em;margin:16px 0 0;max-width:900px}.section-heading-row>p{max-width:380px;line-height:1.65;color:var(--muted);font-size:14px}
.work{padding:105px 0}.filter-row{display:flex;gap:5px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:transparent;border-radius:999px;padding:8px 13px;font-size:11px}.filter.active{background:var(--ink);color:white}
.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project-card{transition:.45s;will-change:transform}.project-card.hidden{display:none}.project-card:hover{transform:translateY(-8px)}.project-wide{grid-column:auto}.project-art{height:clamp(300px,35vw,520px);border-radius:var(--radius);overflow:hidden;position:relative;background:#ddd;transition:.55s}.project-card:hover .project-art{transform:scale(.985)}
.project-meta{display:flex;justify-content:space-between;align-items:flex-start;margin-top:18px}.project-meta span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.project-meta h3{font-family:Manrope;font-size:22px;margin:6px 0 0;letter-spacing:-.03em}.project-meta b{font-size:24px;font-weight:400;transition:.3s}.project-card:hover .project-meta b{transform:rotate(-45deg)}.project-card>p{color:var(--muted);font-size:12px}
.art-dashboard{background:linear-gradient(135deg,#191b24,#0b0c12);display:grid;place-items:center}.mock-browser{width:78%;height:70%;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.05);backdrop-filter:blur(12px);padding:20px;position:relative;box-shadow:0 45px 80px rgba(0,0,0,.4);transform:perspective(900px) rotateX(8deg) rotateY(-8deg)}.mock-browser>i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#777;margin-right:5px}.mock-chart{position:absolute;left:28px;right:28px;bottom:30px;top:60px;display:flex;align-items:end;gap:8px}.mock-chart span{flex:1;background:linear-gradient(var(--acid),#48d9bd);border-radius:7px 7px 1px 1px}.mock-chart span:nth-child(1){height:38%}.mock-chart span:nth-child(2){height:63%}.mock-chart span:nth-child(3){height:48%}.mock-chart span:nth-child(4){height:82%}.mock-chart span:nth-child(5){height:68%}
.art-packaging{background:#e9ddd0;display:grid;place-items:center}.package-box{width:180px;height:235px;background:#0f1b2d;color:#c87a45;display:grid;place-items:center;font:700 30px Playfair Display;letter-spacing:.1em;transform:rotate(-6deg);box-shadow:20px 25px 50px rgba(60,33,18,.18)}.package-bottle{position:absolute;width:78px;height:190px;background:linear-gradient(#ba7141,#6d351f);border-radius:8px 8px 18px 18px;right:25%;bottom:18%;color:white;font-size:10px;display:grid;place-items:center;letter-spacing:.1em;transform:rotate(9deg)}.package-bottle:before{content:"";position:absolute;width:30px;height:28px;background:#151515;top:-28px;border-radius:4px 4px 0 0}
.art-mobile{background:linear-gradient(145deg,#dce3ef,#f6f7f9);display:flex;align-items:center;justify-content:center;gap:16px}.phone{width:170px;height:330px;background:#0a0b0f;border:7px solid #111;border-radius:32px;transform:rotate(-8deg);padding:10px;box-shadow:16px 25px 45px rgba(18,23,34,.2)}.phone.back{transform:rotate(10deg) translateY(30px);background:#f9f9f9}.phone-ui{height:100%;border-radius:20px;background:linear-gradient(155deg,#202331,#5b5fff);padding:25px 12px;color:white}.phone-ui>span{display:block;width:55%;height:7px;border-radius:6px;background:rgba(255,255,255,.4)}.phone-ui strong{font:800 42px Manrope;display:block;margin:40px 0}.phone-ui i{display:block;height:34px;border-radius:8px;background:rgba(255,255,255,.12);margin:8px 0}.phone-ui.alt{background:linear-gradient(155deg,#fbfbfb,#d7eadc);color:#111}.phone-ui.alt i{background:rgba(10,10,10,.09)}
.art-performance{background:#090b11;color:white}.data-orb{position:absolute;width:330px;height:330px;border-radius:50%;left:7%;top:9%;background:radial-gradient(circle at 35% 30%,var(--cyan),var(--violet) 40%,transparent 68%);filter:blur(2px);animation:pulse 4s ease-in-out infinite}.data-copy{position:absolute;right:10%;top:23%;font-size:12px;letter-spacing:.1em}.data-copy strong{font:800 clamp(70px,9vw,140px) Manrope;letter-spacing:-.08em}.sparkline{position:absolute;left:8%;right:8%;bottom:18%;height:2px;background:linear-gradient(90deg,transparent,var(--acid),var(--violet),transparent);transform:rotate(-4deg);box-shadow:0 0 20px var(--acid)}
@keyframes pulse{50%{transform:scale(1.08);filter:blur(10px)}}
.art-video{background:linear-gradient(135deg,#171821,#44485d);display:grid;place-items:center}.play-circle{width:110px;height:110px;border:1px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-items:center;color:white;font-size:24px;backdrop-filter:blur(15px)}.timeline{position:absolute;bottom:26px;left:25px;right:25px;display:flex;gap:5px}.timeline i{height:35px;flex:1;background:rgba(255,255,255,.18);border-radius:3px}.timeline i:nth-child(even){height:55px;transform:translateY(-20px)}
.art-commerce{background:#e8ff85}.commerce-card{position:absolute;width:38%;height:58%;background:white;border-radius:18px;box-shadow:0 20px 50px rgba(50,70,10,.15);display:grid;place-items:center;font:800 60px Manrope;color:#d9ddc5}.c1{left:7%;top:16%;transform:rotate(-11deg)}.c2{left:31%;top:21%;transform:rotate(3deg)}.c3{right:8%;top:13%;transform:rotate(13deg)}.commerce-title{position:absolute;bottom:9%;left:8%;font:800 clamp(24px,3vw,46px)/.9 Manrope;letter-spacing:-.06em}
.services{padding:110px 0}.service-list{border-top:1px solid var(--line)}.service-item{border-bottom:1px solid var(--line);position:relative;overflow:hidden;transition:background .35s,color .35s}.service-toggle{width:100%;min-height:100px;padding:20px 0;background:none;border:0;display:grid;grid-template-columns:72px 1fr auto;align-items:center;text-align:left}.service-number{font-size:11px;color:var(--muted)}.service-toggle h3{font:600 clamp(25px,3.3vw,49px) Manrope;letter-spacing:-.05em;margin:0}.service-arrow{font-size:26px;transition:.35s}.service-detail{display:grid;grid-template-columns:72px 1fr 300px;max-height:0;opacity:0;overflow:hidden;transition:max-height .55s,opacity .35s,padding .35s;padding:0}.service-item.open{background:var(--ink);color:white;padding-inline:24px;border-radius:18px;margin:7px 0}.service-item.open .service-toggle{min-height:90px}.service-item.open .service-number,.service-item.open .service-detail p{color:rgba(255,255,255,.58)}.service-item.open .service-arrow{transform:rotate(45deg)}.service-item.open .service-detail{max-height:300px;opacity:1;padding:0 0 28px}.service-detail p{max-width:670px;margin:0;line-height:1.65;color:var(--muted);font-size:14px}.service-preview{height:125px;border-radius:14px;background:linear-gradient(135deg,var(--violet),var(--cyan));display:flex;align-items:flex-end;padding:14px;color:#090a0e;font-size:10px;font-weight:700;letter-spacing:.08em;transform:rotate(2deg)}.service-actions{grid-column:2;display:flex;gap:9px;margin-top:20px}
.portal{height:240vh;background:var(--ink);color:white;position:relative}.portal-stage{height:100vh;position:sticky;top:0;overflow:hidden;display:grid;place-items:center}.portal-video-wrap{position:absolute;width:34vw;max-width:560px;min-width:310px;aspect-ratio:1;border-radius:50%;overflow:hidden;will-change:transform,border-radius;box-shadow:0 0 0 1px rgba(255,255,255,.16),0 0 120px rgba(101,96,255,.28)}.portal-video-wrap video{width:100%;height:100%;object-fit:cover}.portal-copy{position:absolute;z-index:2;font:600 clamp(38px,6vw,95px) Playfair Display;letter-spacing:-.055em;will-change:transform,opacity}.portal-left{left:7%}.portal-right{right:7%}.portal-final{text-align:center;opacity:0;transform:translateY(40px);z-index:3;pointer-events:none}.portal-final span{font-size:11px;letter-spacing:.16em;color:rgba(255,255,255,.55)}.portal-final h2{font:600 clamp(60px,10vw,160px)/.85 Manrope;letter-spacing:-.08em;margin:25px 0 35px}
.community{padding:120px 0}.community-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end}.community-intro p{color:var(--muted);line-height:1.7;max-width:550px}.talent-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:55px}.talent-card{min-height:390px;border:1px solid var(--line);border-radius:22px;padding:18px;display:flex;flex-direction:column;align-items:flex-start;transition:.4s}.talent-card:hover{transform:translateY(-8px);background:white;box-shadow:var(--shadow)}.avatar{width:100%;aspect-ratio:1;border-radius:16px;display:grid;place-items:center;font:800 64px Manrope;letter-spacing:-.08em;margin-bottom:18px}.avatar-a{background:#dae7ff}.avatar-b{background:#f0dfef}.avatar-c{background:#e2f6c8}.talent-card>span{font-size:10px;background:#e4f8eb;color:#267e48;padding:5px 8px;border-radius:99px}.talent-card h3{font:600 24px Manrope;margin:14px 0 3px}.talent-card p{margin:0;color:var(--muted);font-size:13px}.talent-card a{font-size:12px;margin-top:auto;border-bottom:1px solid var(--line);padding-bottom:5px}.join-card{background:var(--ink);color:white;justify-content:flex-end}.join-card small{margin-bottom:auto;color:rgba(255,255,255,.48)}.join-card h3{font-size:32px;line-height:1.05}.join-card button{border:0;background:var(--acid);border-radius:99px;padding:12px 16px;font-size:12px}.privacy-note{font-size:11px;color:var(--muted);margin-top:18px}
.reviews{padding:120px 0;background:#ededE8}.review-track{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-card{background:white;border-radius:22px;padding:28px;min-height:340px;display:flex;flex-direction:column}.stars{color:#f0a000;letter-spacing:.1em}.review-card blockquote{font:500 clamp(22px,2.2vw,34px)/1.25 Manrope;letter-spacing:-.035em;margin:35px 0}.review-card footer{margin-top:auto;display:flex;flex-direction:column;gap:4px}.review-card footer span{font-size:11px;color:var(--muted)}
.dispatch{padding:120px 0}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.article-visual{aspect-ratio:1.35;border-radius:22px;margin-bottom:19px;display:grid;place-items:center;overflow:hidden;position:relative}.article-visual:before,.article-visual:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.35);border-radius:50%}.article-visual:before{width:55%;height:75%}.article-visual:after{width:75%;height:100%}.article-visual span{font:800 80px Manrope;letter-spacing:-.08em;z-index:1}.av-one{background:#6b65ff;color:white}.av-two{background:#c9ff36}.av-three{background:#11141b;color:white}.article-card small{font-size:10px;color:var(--muted);letter-spacing:.08em}.article-card h3{font:600 24px/1.25 Manrope;letter-spacing:-.035em}.article-card a{font-size:12px;border-bottom:1px solid var(--line);padding-bottom:5px}.subscribe-bar{margin-top:65px;background:var(--ink);color:white;border-radius:24px;padding:22px;display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr auto;gap:10px;align-items:center}.subscribe-bar div{display:flex;flex-direction:column;gap:5px}.subscribe-bar small{color:rgba(255,255,255,.46);font-size:9px;letter-spacing:.1em}.subscribe-bar input,.subscribe-bar select{width:100%;border:1px solid var(--dark-line);background:rgba(255,255,255,.05);color:white;border-radius:99px;padding:13px 15px;outline:none}.subscribe-bar select option{color:#111}
.events{padding:120px 0}.event-list{border-top:1px solid var(--line)}.event-row{display:grid;grid-template-columns:130px 1fr auto;gap:30px;align-items:center;border-bottom:1px solid var(--line);padding:24px 0;transition:.35s}.event-row:hover{padding-inline:18px;background:white}.event-row time{display:flex;align-items:end;gap:8px}.event-row time strong{font:700 52px Manrope;letter-spacing:-.07em}.event-row time span{font-size:9px;color:var(--muted);margin-bottom:8px}.event-row small{font-size:9px;color:var(--muted);letter-spacing:.08em}.event-row h3{font:600 clamp(21px,2.3vw,34px) Manrope;letter-spacing:-.04em;margin:5px 0}
.final-cta{min-height:82vh;border-radius:34px;background:var(--ink);color:white;margin-bottom:24px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;position:relative;overflow:hidden;padding:100px 25px}.cta-glow{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,var(--violet),transparent 65%);opacity:.3;filter:blur(20px)}.final-cta>*:not(.cta-glow){z-index:1}.final-cta h2{font:700 clamp(64px,12vw,185px)/.78 Manrope;letter-spacing:-.09em;margin:45px 0 30px}.final-cta p{color:rgba(255,255,255,.58);max-width:550px;line-height:1.7}
.site-footer{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:30px;padding:50px 0 70px}.site-footer>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.site-footer small{font-size:9px;color:var(--muted);letter-spacing:.1em;margin-bottom:7px}.site-footer a,.site-footer span,.site-footer p{font-size:12px}.site-footer p,.site-footer span{color:var(--muted)}
.modal{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;opacity:0;visibility:hidden;transition:.3s}.modal.open{opacity:1;visibility:visible}.modal-backdrop{position:absolute;inset:0;background:rgba(3,4,7,.72);backdrop-filter:blur(10px)}.modal-panel{position:relative;width:min(680px,calc(100% - 28px));max-height:88vh;overflow:auto;background:var(--paper);border-radius:26px;padding:34px;transform:translateY(20px);transition:.35s}.modal.open .modal-panel{transform:none}.modal-close{position:absolute;right:18px;top:15px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:transparent;font-size:24px}.modal-kicker{font-size:10px;color:var(--violet);letter-spacing:.12em;font-weight:700}.modal-panel h2{font:700 clamp(38px,6vw,62px)/.95 Manrope;letter-spacing:-.06em;margin:18px 45px 15px 0}.modal-panel>div>p{color:var(--muted);line-height:1.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:10px;font-weight:700;letter-spacing:.07em}.field input,.field textarea,.field select{border:1px solid var(--line);background:white;border-radius:14px;padding:13px 14px;outline:none}.field textarea{min-height:105px;resize:vertical}.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.check{border:1px solid var(--line);border-radius:12px;padding:11px;display:flex;gap:8px;align-items:center;font-size:12px;background:white}.form-submit{grid-column:1/-1;margin-top:5px;justify-self:start}.form-note{grid-column:1/-1;font-size:10px;color:var(--muted)}
.toast{position:fixed;right:24px;bottom:24px;z-index:4000;background:var(--ink);color:white;border-radius:14px;padding:14px 18px;font-size:12px;opacity:0;transform:translateY(15px);transition:.3s;pointer-events:none}.toast.show{opacity:1;transform:none}
.reveal{opacity:1;transform:none;transition:opacity .7s,transform .7s}
.motion-ready .reveal{opacity:0;transform:translateY(24px)}
.motion-ready .reveal.in-view{opacity:1;transform:none}
.reveal-char{opacity:1;transform:none}
.motion-ready .reveal-char{opacity:0;transform:translateY(60px);animation:titleIn .9s cubic-bezier(.2,.8,.2,1) forwards}
.motion-ready .reveal-char:nth-child(2){animation-delay:.12s}
@keyframes titleIn{to{opacity:1;transform:none}}
@media(max-width:1050px){
  .desktop-nav{display:none}.site-header{grid-template-columns:1fr auto auto;gap:5px}.menu-toggle{display:block}.site-header>.pill{display:none}
  .hero-grid{grid-template-columns:1fr 1fr}.hero-links{display:none}.hero-portrait{height:340px}.portrait-card{height:310px;width:250px}.ring-one{width:340px;height:340px}.ring-two{width:295px;height:295px}
  .talent-grid{grid-template-columns:1fr 1fr}.subscribe-bar{grid-template-columns:1fr 1fr}.subscribe-bar div{grid-column:1/-1}.site-footer{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .cursor-dot{display:none}.section-shell{width:min(100% - 24px,1500px)}.site-header{top:9px;width:calc(100% - 18px);padding-left:16px}
  .hero{padding-top:120px;min-height:auto}.hero-title{font-size:clamp(58px,20vw,100px);line-height:.82;margin:40px 0}.solid-word{text-align:left}.hero-grid{grid-template-columns:1fr}.hero-copy{order:2}.hero-portrait{order:1;height:330px}.hero-links{display:none}.scroll-hint{display:none}
  .metrics{padding-bottom:80px}.metrics-grid{grid-template-columns:1fr 1fr}.metric:nth-child(2){border-right:0}.metric{border-bottom:1px solid var(--line);padding:20px 5px}.metric strong{font-size:47px}
  .section-heading-row{align-items:flex-start;flex-direction:column}.section-heading-row h2,.community-intro h2{font-size:45px}.project-grid{grid-template-columns:1fr}.project-art{height:340px}.project-meta h3{font-size:19px}.filter-row{overflow-x:auto;width:100%;padding-bottom:6px}
  .service-toggle{grid-template-columns:42px 1fr auto;min-height:83px}.service-toggle h3{font-size:25px}.service-detail{grid-template-columns:42px 1fr}.service-preview{grid-column:2;margin-top:15px}.service-actions{grid-column:2;flex-wrap:wrap}.service-item.open{padding-inline:13px}
  .portal{height:170vh}.portal-video-wrap{width:72vw;min-width:0}.portal-copy{font-size:38px;top:20%}.portal-left{left:8%}.portal-right{right:8%;top:auto;bottom:20%}.portal-final h2{font-size:64px}
  .community-intro{grid-template-columns:1fr;gap:28px}.talent-grid{grid-template-columns:1fr}.talent-card{min-height:355px}.review-track,.article-grid{grid-template-columns:1fr}.review-card{min-height:300px}.subscribe-bar{grid-template-columns:1fr}.subscribe-bar>*{grid-column:auto}.event-row{grid-template-columns:75px 1fr}.event-row .pill{grid-column:2;justify-self:start}.event-row time{display:block}.event-row time strong{font-size:42px}.event-row time span{display:block}.final-cta{min-height:70vh}.site-footer{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full,.form-submit,.form-note{grid-column:auto}.checkbox-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* FINAL PROFILE INTERACTION
   Uses Harshil's exact supplied PNG twice: grayscale base + cursor-revealed color layer. */
.skip-link{
  position:fixed;left:16px;top:12px;z-index:10000;background:var(--ink);color:white;
  border-radius:999px;padding:10px 14px;font-size:12px;transform:translateY(-180%);
  transition:transform .2s
}
.skip-link:focus{transform:none}

.portrait-card-photo{
  --lens-x:50%;
  --lens-y:50%;
  --lens-r:0px;
  --lens-d:0px;
  width:340px;
  height:425px;
  border-radius:172px 172px 30px 30px;
  align-items:flex-end;
  justify-content:center;
  cursor:none;
  transform-style:preserve-3d;
  transition:transform .32s cubic-bezier(.2,.75,.2,1),box-shadow .32s;
}
.portrait-card-photo:hover{box-shadow:0 30px 95px rgba(13,16,25,.2)}
.portrait-card-photo .portrait-photo{
  position:absolute;
  z-index:2;
  left:50%;
  bottom:-1px;
  transform:translateX(-50%) scale(var(--portrait-scale,1));
  width:111%;
  height:106%;
  max-width:none;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.24));
  pointer-events:none;
  user-select:none;
  transition:transform .35s cubic-bezier(.2,.75,.2,1),filter .25s;
}
.portrait-card-photo .portrait-photo-mono{
  filter:grayscale(1) contrast(1.035) brightness(.99) drop-shadow(0 18px 24px rgba(0,0,0,.24));
}
.portrait-card-photo .portrait-photo-color{
  z-index:3;
  clip-path:circle(var(--lens-r) at var(--lens-x) var(--lens-y));
  -webkit-clip-path:circle(var(--lens-r) at var(--lens-x) var(--lens-y));
  will-change:clip-path;
}
.portrait-card-photo.is-lens-active .portrait-photo{--portrait-scale:1.018}

.portrait-lens-ring{
  position:absolute;
  z-index:4;
  left:var(--lens-x);
  top:var(--lens-y);
  width:var(--lens-d);
  height:var(--lens-d);
  border-radius:50%;
  transform:translate(-50%,-50%);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 0 0 1px rgba(10,11,15,.16),0 10px 30px rgba(10,11,15,.16);
  opacity:0;
  transition:opacity .18s;
  pointer-events:none;
}
.portrait-card-photo.is-lens-active .portrait-lens-ring{opacity:1}
.portrait-lens-hint{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:14px;
  transform:translate(-50%,8px);
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  color:rgba(255,255,255,.65);
  opacity:0;
  transition:opacity .25s,transform .25s;
  pointer-events:none;
}
.portrait-card-photo:hover .portrait-lens-hint{opacity:1;transform:translate(-50%,0)}

.hero-portrait{height:455px}
.ring-one{width:465px;height:465px}
.ring-two{width:400px;height:400px}

.cursor-dot{
  width:9px;height:9px;
  transition:width .2s,height .2s,opacity .2s,background .2s,border .2s;
}
.cursor-dot.cursor-lens{
  width:24px;height:24px;
  background:rgba(201,255,54,.28);
  border:1px solid rgba(10,11,15,.55);
  mix-blend-mode:normal;
  backdrop-filter:blur(1px);
}

.review-awaiting .stars{opacity:.28;filter:grayscale(1)}
.review-awaiting blockquote{color:#5e616a;font-size:clamp(20px,1.9vw,28px)}
.event-row time strong{font-size:clamp(28px,3.1vw,52px)}
:focus-visible{outline:2px solid var(--violet);outline-offset:4px}
.project-card:focus-visible{border-radius:var(--radius)}
button:disabled{opacity:.55;cursor:not-allowed}

@keyframes portraitRise{
  from{opacity:0;transform:translateY(24px) scale(.97)}
  to{opacity:1;transform:none}
}
@keyframes tagFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-7px)}
}
.hero-portrait{animation:portraitRise .85s .2s both cubic-bezier(.2,.8,.2,1)}
.tag-one{animation:tagFloat 4.8s ease-in-out infinite}
.tag-two{animation:tagFloat 5.2s .7s ease-in-out infinite}
.tag-three{animation:tagFloat 4.4s 1.2s ease-in-out infinite}

@media(max-width:1050px){
  .hero-portrait{height:395px}
  .portrait-card-photo{width:295px;height:370px;border-radius:150px 150px 26px 26px}
  .ring-one{width:395px;height:395px}
  .ring-two{width:340px;height:340px}
}
@media(max-width:760px){
  .portrait-card-photo{width:min(84vw,300px);height:min(108vw,375px);cursor:auto}
  .portrait-card-photo .portrait-photo-mono{display:none}
  .portrait-card-photo .portrait-photo-color{clip-path:none;-webkit-clip-path:none}
  .portrait-card-photo .portrait-lens-ring,.portrait-card-photo .portrait-lens-hint{display:none}
  .hero-portrait{height:390px}
  .ring-one{width:min(92vw,350px);height:min(92vw,350px)}
  .ring-two{width:min(80vw,305px);height:min(80vw,305px)}
}
@media(hover:none),(pointer:coarse){
  .portrait-card-photo{cursor:auto}
  .portrait-card-photo .portrait-photo-mono{display:none}
  .portrait-card-photo .portrait-photo-color{clip-path:none;-webkit-clip-path:none}
  .portrait-card-photo .portrait-lens-ring,.portrait-card-photo .portrait-lens-hint{display:none}
}
@media(prefers-reduced-motion:reduce){
  .motion-ready .reveal,.motion-ready .reveal-char{opacity:1!important;transform:none!important;animation:none!important}
  .hero-portrait,.orbit-tag{animation:none!important}
  .portrait-card-photo,.portrait-card-photo .portrait-photo{transition:none!important}
}


/* =========================================================
   HERO PROFILE V4 — transparent PNG + full-head framing +
   WEB / ADS / AI orbit + cursor colour reveal.
   Uses the user's supplied PNG only; no generated background.
   ========================================================= */
.hero-portrait{
  height:520px;
  min-height:520px;
  overflow:visible;
  position:relative;
  display:grid;
  place-items:center;
  isolation:isolate;
}

.portrait-card-photo{
  --lens-x:50%;
  --lens-y:50%;
  --lens-r:0px;
  --lens-d:0px;
  width:390px;
  height:510px;
  border-radius:0;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
  align-items:flex-end;
  justify-content:center;
  z-index:4;
  cursor:none;
  transform-style:preserve-3d;
  transition:transform .32s cubic-bezier(.2,.75,.2,1);
}
.portrait-card-photo::before,
.portrait-card-photo::after{
  display:none !important;
  content:none !important;
}
.portrait-card-photo:hover{box-shadow:none !important}

.portrait-card-photo .portrait-photo{
  position:absolute;
  inset:auto auto 0 50%;
  transform:translateX(-50%) scale(var(--portrait-scale,1));
  width:100%;
  height:100%;
  max-width:none;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 22px 28px rgba(10,11,15,.16));
  pointer-events:none;
  user-select:none;
  transition:transform .35s cubic-bezier(.2,.75,.2,1),filter .25s;
}
.portrait-card-photo .portrait-photo-mono{
  z-index:2;
  filter:grayscale(1) contrast(1.035) brightness(.98) drop-shadow(0 22px 28px rgba(10,11,15,.16));
}
.portrait-card-photo .portrait-photo-color{
  z-index:3;
  clip-path:circle(var(--lens-r) at var(--lens-x) var(--lens-y));
  -webkit-clip-path:circle(var(--lens-r) at var(--lens-x) var(--lens-y));
  will-change:clip-path;
}
.portrait-card-photo.is-lens-active .portrait-photo{--portrait-scale:1.012}

.portrait-lens-ring{
  z-index:8;
  border:1px solid rgba(10,11,15,.42);
  box-shadow:0 0 0 1px rgba(255,255,255,.65),0 12px 36px rgba(10,11,15,.12);
}
.portrait-lens-hint{
  bottom:5px;
  color:#252831;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(10,11,15,.10);
  border-radius:999px;
  padding:6px 9px;
  backdrop-filter:blur(10px);
}

/* Decorative rings stay behind the PNG and never crop the portrait. */
.hero-portrait .portrait-ring{z-index:0;pointer-events:none}
.hero-portrait .ring-one{
  width:500px;
  height:500px;
  border-color:rgba(10,11,15,.18);
  animation:spin 26s linear infinite;
}
.hero-portrait .ring-two{
  width:438px;
  height:438px;
  border-color:rgba(10,11,15,.16);
  animation:spin 34s linear infinite reverse;
}

/* Rotating service labels around the complete portrait. */
.orbit-layer{
  position:absolute;
  z-index:7;
  width:500px;
  height:500px;
  border-radius:50%;
  pointer-events:none;
  animation:heroOrbitSpin 17s linear infinite;
  will-change:transform;
}
.orbit-node{
  position:absolute;
  transform:translate(-50%,-50%);
}
.orbit-node b{
  display:grid;
  place-items:center;
  min-width:58px;
  height:38px;
  padding:0 13px;
  border:1px solid rgba(10,11,15,.13);
  border-radius:999px;
  background:rgba(255,255,255,.93);
  box-shadow:0 10px 28px rgba(10,11,15,.10);
  color:#12141a;
  font:700 11px/1 Manrope, sans-serif;
  letter-spacing:.02em;
  backdrop-filter:blur(12px);
  animation:heroOrbitCounter 17s linear infinite;
}
.orbit-web{left:50%;top:0}
.orbit-ads{left:100%;top:50%}
.orbit-ai{left:14%;top:85%}

@keyframes heroOrbitSpin{
  to{transform:rotate(360deg)}
}
@keyframes heroOrbitCounter{
  to{transform:rotate(-360deg)}
}

/* Keep the custom cursor subtle while it is over the portrait. */
.cursor-dot.cursor-lens{
  width:20px;
  height:20px;
  background:rgba(198,255,48,.34);
  border:1px solid rgba(10,11,15,.48);
  box-shadow:0 0 0 5px rgba(198,255,48,.08);
}

@media(max-width:1200px){
  .hero-portrait{height:470px;min-height:470px}
  .portrait-card-photo{width:350px;height:465px}
  .hero-portrait .ring-one,.orbit-layer{width:450px;height:450px}
  .hero-portrait .ring-two{width:392px;height:392px}
}

@media(max-width:1050px){
  .hero-portrait{height:430px;min-height:430px}
  .portrait-card-photo{width:315px;height:420px}
  .hero-portrait .ring-one,.orbit-layer{width:405px;height:405px}
  .hero-portrait .ring-two{width:352px;height:352px}
  .orbit-node b{min-width:52px;height:34px;padding:0 11px;font-size:10px}
}

@media(max-width:760px){
  .hero-portrait{
    height:420px;
    min-height:420px;
    width:100%;
    overflow:visible;
  }
  .portrait-card-photo{
    width:min(82vw,330px);
    height:min(110vw,435px);
    max-height:435px;
    cursor:auto;
  }
  .portrait-card-photo .portrait-photo-mono{display:none}
  .portrait-card-photo .portrait-photo-color{
    clip-path:none;
    -webkit-clip-path:none;
  }
  .portrait-lens-ring,.portrait-lens-hint{display:none!important}
  .hero-portrait .ring-one,.orbit-layer{
    width:min(94vw,390px);
    height:min(94vw,390px);
  }
  .hero-portrait .ring-two{
    width:min(82vw,340px);
    height:min(82vw,340px);
  }
  .orbit-layer{animation-duration:23s}
  .orbit-node b{
    min-width:48px;
    height:32px;
    padding:0 10px;
    font-size:9px;
    animation-duration:23s;
  }
}

@media(hover:none),(pointer:coarse){
  .portrait-card-photo{cursor:auto}
  .portrait-card-photo .portrait-photo-mono{display:none}
  .portrait-card-photo .portrait-photo-color{
    clip-path:none;
    -webkit-clip-path:none;
  }
  .portrait-lens-ring,.portrait-lens-hint{display:none!important}
}

@media(prefers-reduced-motion:reduce){
  .orbit-layer,.orbit-node b{animation:none!important}
  .portrait-card-photo{transform:none!important}
}


/* =========================================================
   V6 MOBILE VIEWPORT LOCK
   Prevents accidental horizontal page swiping on phones.
   ========================================================= */
html,body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  overflow-x:clip;
}
body{position:relative;touch-action:pan-y pinch-zoom}
main,.hero,.metrics,.work,.services,.portal,.community,.reviews,.dispatch,.events,.final-cta,.site-footer{max-width:100%}
.hero{overflow-x:hidden;overflow-x:clip}
.hero-grid>* ,.metrics-grid>* ,.project-grid>* ,.article-grid>* ,.talent-grid>*{min-width:0}
.developed-credit{font-weight:600;color:var(--ink)!important}
@media(max-width:760px){
  .section-shell{width:calc(100% - 24px);max-width:calc(100% - 24px)}
  .hero-title{font-size:clamp(52px,17.2vw,76px);line-height:.84;letter-spacing:-.075em;max-width:100%;overflow:hidden}
  .hero-title span{max-width:100%}
  .hero-grid{width:100%;max-width:100%;overflow:visible}
  .hero-portrait{width:100%;max-width:100%;height:400px;min-height:400px}
  .portrait-card-photo{width:min(72vw,285px);height:min(96vw,380px);max-height:380px}
  .hero-portrait .ring-one,.orbit-layer{width:min(82vw,315px);height:min(82vw,315px)}
  .hero-portrait .ring-two{width:min(72vw,278px);height:min(72vw,278px)}
  .orbit-web{left:50%;top:1%}
  .orbit-ads{left:94%;top:50%}
  .orbit-ai{left:16%;top:83%}
  .button-row{max-width:100%}
  .button-row .pill{max-width:100%}
  .metrics-grid{width:100%;max-width:100%}
  .metric{min-width:0;overflow:hidden}
  .site-footer{width:calc(100% - 24px);max-width:calc(100% - 24px)}
}


/* V6 MOBILE HORIZONTAL LOCK */
html{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
  overscroll-behavior-x:none;
}
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
  overscroll-behavior-x:none;
  touch-action:pan-y pinch-zoom;
}
img,video,svg,canvas{max-width:100%;}
.footer,.site-footer{overflow-wrap:anywhere;}
@media(max-width:760px){
  body{min-width:0;}
  main,header,footer,section{max-width:100%;}
}

/* V8 homepage CMS image support */
.article-visual.cms-cover{overflow:hidden;padding:0}
.article-visual.cms-cover img{display:block;width:100%;height:100%;object-fit:cover}
