@import url('https://fonts.googleapis.com/css2?family=Bowlby+One&family=Inter+Tight:wght@400;500;600;700;800;900&family=Space+Mono:wght@400;700&display=swap');

:root{
  --ink:#07111d;
  --ink2:#0b1730;
  --ink3:#111f3e;
  --cream:#f6e9bd;
  --paper:#fff3c8;
  --blue:#56a8ff;
  --blue2:#2c7df2;
  --cyan:#8edfff;
  --green:#71e9b6;
  --orange:#ffb35f;
  --text:#f7fbff;
  --muted:#b5c5d9;
  --line:rgba(255,255,255,.13);
  --max:1320px;
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--text);font-family:"Inter Tight",Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none} img,video{display:block;max-width:100%} button{font:inherit;color:inherit}
::selection{background:var(--blue);color:#04101f}
.shell{width:min(var(--max),calc(100% - 44px));margin:0 auto}
.eyebrow{font:700 11px/1.2 "Space Mono",monospace;text-transform:uppercase;letter-spacing:.16em;color:var(--cyan)}
.display{font-family:"Bowlby One",Impact,sans-serif;text-transform:uppercase;letter-spacing:-.035em;line-height:.92}

.portal-header{position:fixed;top:0;left:0;right:0;height:82px;z-index:90;background:linear-gradient(180deg,rgba(6,14,26,.94),rgba(6,14,26,.72));backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.09)}
.portal-nav{height:82px;display:flex;align-items:center;gap:34px}
.portal-brand{display:flex;align-items:center;gap:10px;font-size:25px;font-weight:900;letter-spacing:-.05em;margin-right:auto}
.portal-brand img{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#fff;border:2px solid rgba(255,255,255,.75)}
.portal-links{display:flex;align-items:center;gap:30px}
.portal-links a{font-size:14px;font-weight:800;color:#d8e2f0;position:relative;padding:30px 0}
.portal-links a::after{content:"";position:absolute;height:2px;left:0;right:100%;bottom:18px;background:var(--cyan);transition:right .2s ease}
.portal-links a:hover::after,.portal-links a.active::after{right:0}.portal-links a.active{color:white}
.portal-play{display:inline-flex;align-items:center;gap:18px;background:var(--blue2);padding:14px 19px;border-radius:11px;font-weight:850;font-size:14px;box-shadow:0 10px 40px rgba(35,116,238,.24)}
.portal-play:hover{background:#438ff8}
.nav-toggle{display:none;border:1px solid var(--line);background:rgba(255,255,255,.04);width:46px;height:46px;border-radius:12px;position:relative}
.nav-toggle::before,.nav-toggle::after{content:"";position:absolute;width:20px;height:2px;left:12px;background:white;transition:.2s}.nav-toggle::before{top:17px}.nav-toggle::after{top:26px}.nav-toggle.open::before{top:21px;transform:rotate(45deg)}.nav-toggle.open::after{top:21px;transform:rotate(-45deg)}
.mobile-menu{display:none}

/* Home hero: designed to accept assets/media/gameplay-trailer.mp4 automatically when added. */
.portal-hero{position:relative;min-height:100svh;padding-top:82px;display:grid;align-items:end;overflow:hidden;background:#07111d}
.portal-hero-bg{position:absolute;inset:82px 0 0;background:url('./assets/media/brainrot-games-alpha.jpg') 58% 48%/cover no-repeat;transform:scale(1.025);animation:heroDrift 14s ease-in-out infinite alternate}
.portal-hero-video{position:absolute;inset:82px 0 0;width:100%;height:calc(100% - 82px);object-fit:cover;opacity:0;transition:opacity .8s ease}.has-trailer .portal-hero-video{opacity:1}
.portal-hero::after{content:"";position:absolute;inset:82px 0 0;background:linear-gradient(90deg,rgba(5,12,23,.95) 0%,rgba(5,12,23,.84) 30%,rgba(5,12,23,.28) 58%,rgba(5,12,23,.18) 100%),linear-gradient(180deg,rgba(5,12,23,.08) 45%,rgba(5,12,23,.90) 100%);z-index:1;pointer-events:none}
.hero-noise{position:absolute;inset:82px 0 0;z-index:2;opacity:.12;pointer-events:none;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='.72' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.23'/%3E%3C/svg%3E")}
.hero-stars{position:absolute;inset:0;z-index:2;pointer-events:none}.hero-stars i{position:absolute;width:4px;height:4px;border-radius:50%;background:#bfeaff;box-shadow:0 0 14px #77cfff;animation:floatStar 7s ease-in-out infinite}.hero-stars i:nth-child(1){left:62%;top:27%;animation-delay:-1s}.hero-stars i:nth-child(2){left:72%;top:58%;animation-delay:-4s}.hero-stars i:nth-child(3){left:88%;top:34%;animation-delay:-2s}.hero-stars i:nth-child(4){left:53%;top:68%;animation-delay:-6s}.hero-stars i:nth-child(5){left:93%;top:72%;animation-delay:-3s}
.hero-content{position:relative;z-index:4;padding:112px 0 98px;max-width:720px}
.hero-kicker{display:flex;align-items:center;gap:10px;margin:0 0 24px}.hero-kicker i{width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 0 6px rgba(113,233,182,.12),0 0 18px rgba(113,233,182,.45)}
.hero-title{margin:0;font-size:clamp(66px,8.3vw,132px);text-shadow:0 6px 25px rgba(0,0,0,.28)}
.hero-title .blue{color:var(--blue)}
.hero-lead{max-width:620px;margin:28px 0 0;font-size:20px;line-height:1.55;color:#d5e0ee;text-shadow:0 2px 15px rgba(0,0,0,.55)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.action{min-height:54px;padding:0 22px;border-radius:12px;display:inline-flex;align-items:center;gap:18px;justify-content:center;font-size:14px;font-weight:850;border:1px solid transparent}.action.primary{background:var(--blue2)}.action.primary:hover{background:#4a94ff}.action.ghost{background:rgba(9,20,38,.56);border-color:rgba(255,255,255,.24);backdrop-filter:blur(8px)}.action.ghost:hover{border-color:#fff}
.hero-stats{display:flex;gap:30px;flex-wrap:wrap;margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.2);max-width:650px}.hero-stats div{display:flex;flex-direction:column;gap:3px}.hero-stats strong{font-size:15px}.hero-stats span{font-size:12px;color:#9eb2ca}
.hero-corner{position:absolute;z-index:4;right:42px;bottom:94px;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.21em;font:700 10px/1 "Space Mono",monospace;color:rgba(255,255,255,.63)}
@keyframes heroDrift{to{transform:scale(1.065) translate3d(-.5%,-.4%,0)}}
@keyframes floatStar{50%{transform:translateY(-16px) scale(1.5);opacity:.4}}

.marquee{height:58px;overflow:hidden;background:var(--blue2);display:flex;align-items:center;border-block:1px solid rgba(255,255,255,.18)}
.marquee-track{display:flex;width:max-content;animation:marquee 28s linear infinite}.marquee span{font-family:"Bowlby One",sans-serif;text-transform:uppercase;font-size:15px;white-space:nowrap;padding-right:35px}.marquee span::after{content:"✦";padding-left:35px;color:#bfe7ff}@keyframes marquee{to{transform:translateX(-50%)}}

.intro{position:relative;padding:120px 0 115px;background:var(--paper);color:#452b15;overflow:hidden}
.intro::before{content:"";position:absolute;inset:0;opacity:.22;background:radial-gradient(circle at 15% 20%,#fff 0 2px,transparent 3px),radial-gradient(circle at 78% 72%,#d5a760 0 1px,transparent 2px);background-size:70px 70px,95px 95px}
.intro-grid{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.intro h2{margin:0;font-size:clamp(48px,5vw,78px);color:#5b3516}.intro-copy{font-size:20px;line-height:1.6;color:#6b4b2d;margin:0}.fact-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border:2px solid #6f4623;border-radius:20px;overflow:hidden;background:rgba(255,255,255,.22)}.fact{padding:26px 24px;border-right:2px solid #6f4623}.fact:last-child{border-right:0}.fact strong{display:block;font-family:"Bowlby One";font-size:34px;color:#4c2b13}.fact span{font-size:13px;font-weight:750;text-transform:uppercase;letter-spacing:.07em}

.section-dark{padding:110px 0;background:var(--ink2);position:relative}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:44px}.section-head h2{margin:7px 0 0;font-size:clamp(44px,5vw,72px)}.section-head p{max-width:520px;margin:0;color:var(--muted);line-height:1.6;font-size:17px}
.ecosystem-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.eco-card{min-height:370px;position:relative;overflow:hidden;border-radius:24px;border:1px solid var(--line);background:#111e35}.eco-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.eco-card:hover img{transform:scale(1.035)}.eco-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(5,13,25,.9) 100%)}.eco-card-copy{position:absolute;z-index:2;left:27px;right:27px;bottom:25px}.eco-card small{font:700 10px/1 "Space Mono";letter-spacing:.12em;text-transform:uppercase;color:#bfe4ff}.eco-card h3{font-family:"Bowlby One";font-size:36px;margin:7px 0 0;line-height:1;color:white}.eco-card p{margin:10px 0 0;color:#ccd8e7;max-width:460px;line-height:1.45}

.works{padding:110px 0;background:var(--cream);color:#513618;overflow:hidden}.works h2{font-size:clamp(50px,6vw,86px);margin:6px 0 35px;text-align:center;color:#5a3517}.works .eyebrow{text-align:center;color:#835320}.work-strip{display:flex;gap:18px;width:max-content;animation:workSlide 42s linear infinite}.work-card{width:min(520px,78vw);aspect-ratio:16/9;border-radius:22px;overflow:hidden;border:5px solid #5b381b;background:#fff;box-shadow:0 10px 0 #c69a58}.work-card img{width:100%;height:100%;object-fit:cover}@keyframes workSlide{to{transform:translateX(calc(-50% - 9px))}}

.home-split{padding:110px 0;background:#07111d}.split-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.split-art{position:relative;min-height:560px;border-radius:28px;overflow:hidden;background:#15243c}.split-art img{width:100%;height:560px;object-fit:cover}.split-art .float-character{position:absolute;width:42%;height:auto;right:3%;bottom:-1%;object-fit:contain;filter:drop-shadow(0 24px 30px rgba(0,0,0,.4))}.split-copy h2{font-size:clamp(52px,5.5vw,82px);margin:8px 0 22px}.split-copy p{font-size:18px;line-height:1.65;color:var(--muted)}

.big-cta{position:relative;padding:92px 0;background:var(--blue2);overflow:hidden}.big-cta::after{content:"";position:absolute;width:460px;height:460px;border:80px solid rgba(255,255,255,.08);border-radius:50%;right:-120px;top:-180px}.big-cta .shell{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:50px}.big-cta h2{font-size:clamp(45px,5vw,78px);margin:0}.big-cta .action{background:white;color:#134a96}

/* Inner pages */
.page-hero{min-height:650px;padding:150px 0 80px;position:relative;display:flex;align-items:end;overflow:hidden;background:#0a1730}.page-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,13,25,.92),rgba(5,13,25,.38) 60%,rgba(5,13,25,.1)),linear-gradient(180deg,rgba(5,13,25,.1),rgba(5,13,25,.86))}.page-hero .shell{position:relative;z-index:2}.page-hero h1{font-size:clamp(64px,8vw,122px);margin:10px 0 18px;max-width:1000px}.page-hero p{font-size:20px;line-height:1.55;max-width:650px;color:#d4dfed;margin:0}
.page-body{padding:100px 0;background:#0a1730}.page-grid{display:grid;grid-template-columns:320px 1fr;gap:70px}.side-title{position:sticky;top:120px;align-self:start}.side-title h2{font-size:45px;margin:8px 0}.story{max-width:820px}.story h3{font-family:"Bowlby One";font-size:40px;margin:0 0 18px;line-height:1.05}.story p{font-size:18px;line-height:1.7;color:#b8c8db;margin:0 0 28px}.story-block{padding:35px 0;border-top:1px solid var(--line)}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid figure{margin:0;border-radius:20px;overflow:hidden;aspect-ratio:1/1;background:#14233c}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.4s}.gallery-grid figure:hover img{transform:scale(1.03)}
.feature-stack{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.feature-box{padding:30px;border:1px solid var(--line);border-radius:20px;background:#0d1c37}.feature-box b{font:700 11px/1 "Space Mono";color:var(--cyan);letter-spacing:.12em}.feature-box h3{font-size:29px;margin:15px 0 10px}.feature-box p{color:#aebfd3;line-height:1.55;margin:0}

/* Merch */
.merch-page{background:#f4e4b8;color:#513418}.merch-page .portal-header{background:rgba(26,18,12,.88)}.merch-hero{min-height:720px;padding:150px 0 80px;background:#f4e4b8;display:flex;align-items:center;overflow:hidden}.merch-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.merch-copy h1{font-size:clamp(62px,7vw,105px);margin:8px 0 20px;color:#5d3618}.merch-copy p{font-size:19px;line-height:1.6;color:#735438}.merch-copy .eyebrow{color:#8b5426}.merch-visual{position:relative;background:#d9c18d;border-radius:36px;min-height:560px;overflow:hidden;border:4px solid #67411f;box-shadow:14px 14px 0 #bd9151}.merch-visual img{width:100%;height:560px;object-fit:cover}.sample-tag{position:absolute;left:20px;bottom:20px;background:#4c2c15;color:#fff;padding:11px 14px;border-radius:10px;font:700 10px/1 "Space Mono";text-transform:uppercase;letter-spacing:.08em}.merch-section{padding:100px 0;background:#fff0c5}.merch-section h2{font-size:clamp(48px,5vw,76px);margin:8px 0 40px}.merch-status{display:grid;grid-template-columns:repeat(3,1fr);border:3px solid #603b1d;border-radius:24px;overflow:hidden}.merch-status article{padding:30px;border-right:3px solid #603b1d}.merch-status article:last-child{border:0}.merch-status strong{font-family:"Bowlby One";font-size:30px}.merch-status p{color:#765334;line-height:1.5}.merch-gallery{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:55px}.merch-gallery img{width:100%;height:480px;object-fit:cover;border-radius:24px;border:3px solid #603b1d}

/* Token */
.token-hero{background:radial-gradient(circle at 80% 30%,rgba(70,119,255,.23),transparent 34%),#07111d}.token-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px}.token-copy h1{font-size:clamp(58px,7vw,105px);margin:8px 0 20px}.token-copy p{color:#b8c7d9;font-size:18px;line-height:1.65}.contracts{display:grid;gap:18px}.contract{border:1px solid var(--line);border-radius:22px;padding:28px;background:#0d1c35}.contract-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.contract-top strong{font-size:22px}.contract-top span{font:700 10px/1 "Space Mono";text-transform:uppercase;color:#8fa6c3}.contract button{margin-top:22px;width:100%;padding:16px;border:1px solid #29405f;border-radius:12px;background:#071225;color:white;text-align:left;display:flex;justify-content:space-between;gap:16px;cursor:pointer}.contract code{overflow-wrap:anywhere;font-size:12px}.contract-links{display:flex;gap:16px;flex-wrap:wrap;margin-top:17px}.contract-links a{font-size:13px;color:#aed1ff}.disclaimer{font-size:12px;color:#7188a5;line-height:1.6;margin-top:28px}

.portal-footer{padding:72px 0 30px;background:#050b13;border-top:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,.55fr);gap:50px}.footer-logo{font-size:34px;font-weight:900;letter-spacing:-.05em;display:flex;align-items:center;gap:12px}.footer-logo img{width:50px;height:50px;border-radius:50%}.footer-intro{max-width:390px;color:#8194ad;line-height:1.6;margin-top:18px}.footer-col strong{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#7f93ac}.footer-col a{display:block;margin-top:16px;font-weight:750;font-size:14px}.footer-character{position:absolute;right:5%;bottom:-35px;width:190px;opacity:.3;pointer-events:none}.footer-bottom{margin-top:65px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:30px;color:#61738b;font-size:11px}
.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,15px);opacity:0;background:white;color:#07111d;padding:11px 16px;border-radius:10px;font-weight:800;z-index:120;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:1000px){
  .portal-links,.portal-play{display:none}.nav-toggle{display:block}.mobile-menu{position:fixed;z-index:89;top:82px;left:0;right:0;padding:12px 22px 24px;background:#07111d;border-bottom:1px solid var(--line)}.mobile-menu.open{display:block}.mobile-menu a{display:block;padding:15px 4px;border-bottom:1px solid rgba(255,255,255,.07);font-weight:800}.mobile-menu .mobile-play{margin-top:14px;text-align:center;background:var(--blue2);border-radius:10px}
  .portal-hero::after{background:linear-gradient(90deg,rgba(5,12,23,.88),rgba(5,12,23,.44)),linear-gradient(180deg,rgba(5,12,23,.1),rgba(5,12,23,.91))}.hero-content{padding:100px 0 80px}.intro-grid,.split-grid,.page-grid,.token-layout,.merch-grid{grid-template-columns:1fr}.side-title{position:static}.ecosystem-grid{grid-template-columns:1fr 1fr}.fact-row{grid-template-columns:1fr}.fact{border-right:0;border-bottom:2px solid #6f4623}.fact:last-child{border-bottom:0}.feature-stack{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-character{display:none}
}
@media(max-width:680px){
  .shell{width:min(100% - 28px,var(--max))}.portal-header,.portal-nav{height:70px}.portal-brand img{width:36px;height:36px}.portal-brand{font-size:22px}.mobile-menu{top:70px}.portal-hero{padding-top:70px}.portal-hero-bg,.portal-hero-video,.portal-hero::after,.hero-noise{inset-top:70px}.portal-hero-bg{background-position:64% center}.portal-hero::after{inset:70px 0 0;background:linear-gradient(180deg,rgba(5,12,23,.2) 0%,rgba(5,12,23,.68) 44%,rgba(5,12,23,.98) 78%)}.hero-content{align-self:end;padding:330px 0 52px}.hero-title{font-size:clamp(54px,17vw,86px)}.hero-lead{font-size:17px}.hero-stats{gap:16px}.hero-corner{display:none}
  .intro,.section-dark,.works,.home-split,.page-body,.merch-section{padding:78px 0}.intro-grid{gap:28px}.section-head{display:block}.section-head p{margin-top:20px}.ecosystem-grid{grid-template-columns:1fr}.eco-card{min-height:300px}.split-grid{gap:32px}.split-art,.split-art img{min-height:410px;height:410px}.big-cta .shell{display:block}.big-cta .action{margin-top:28px}.page-hero{min-height:590px;padding:130px 0 60px}.gallery-grid{grid-template-columns:1fr 1fr}.merch-hero{padding:120px 0 70px}.merch-visual,.merch-visual img{min-height:430px;height:430px}.merch-status,.merch-gallery{grid-template-columns:1fr}.merch-status article{border-right:0;border-bottom:3px solid #603b1d}.merch-gallery img{height:350px}.footer-grid{grid-template-columns:1fr 1fr;gap:34px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}
}
@media(prefers-reduced-motion:reduce){.portal-hero-bg,.hero-stars i,.marquee-track,.work-strip{animation:none}}
