:root{--ink:#0b0809;--cream:#f4ead9;--acid:#d9ff3f;--violet:#9d64ff;--lilac:#cbb7ed;--gold:#efb73f;--muted:#b5aa9f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:"Space Grotesk",sans-serif}.grain{position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.13;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='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.36'/%3E%3C/svg%3E")}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,70px);border-bottom:1px solid rgba(244,234,217,.16);position:absolute;z-index:5;width:100%;top:0}.wordmark{color:var(--cream);font-family:"DM Mono",monospace;font-size:14px;font-weight:500;letter-spacing:.13em;text-decoration:none;white-space:nowrap}.wordmark-star{color:var(--acid);padding-right:4px}.site-nav{display:flex;gap:clamp(18px,3vw,43px);align-items:center}.site-nav a{color:var(--cream);font-size:14px;text-decoration:none}.site-nav a:hover,.site-nav a:focus-visible,.text-link:hover{color:var(--acid)}.site-nav .nav-shop{border:1px solid rgba(244,234,217,.42);border-radius:99px;padding:9px 14px}.menu-toggle{display:none}.hero{height:min(860px,100vh);min-height:680px;position:relative;display:flex;align-items:end;overflow:hidden}.hero-image{position:absolute;inset:0;background-image:url("https://img1.wsimg.com/isteam/ip/06022377-7dc8-4758-977a-d4a525076df2/instudio.png/:/cr=t:0%25,l:0%25,w:100%25,h:100%25/rs=w:1535,m");background-size:cover;background-position:center}.hero-shadow{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,6,8,.76) 0%,rgba(8,6,8,.46) 35%,rgba(8,6,8,.16) 70%,rgba(8,6,8,.04)),linear-gradient(0deg,rgba(8,6,8,.66),transparent 58%)}.hero-copy{position:relative;z-index:1;max-width:820px;margin:0 clamp(22px,9vw,150px) clamp(100px,11vw,150px)}.eyebrow{font-family:"DM Mono",monospace;font-size:12px;letter-spacing:.16em;color:var(--acid);margin:0 0 20px}.hero h1,.section h2{font-size:clamp(45px,6.2vw,96px);line-height:.94;letter-spacing:-.06em;margin:0}.hero h1 em,.section h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em}.hero-deck{max-width:500px;color:#eee3d4;font-size:clamp(16px,1.4vw,20px);line-height:1.55;margin:29px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{font-weight:600;text-decoration:none;font-size:14px;border-radius:99px;padding:14px 21px;display:inline-flex;gap:16px;align-items:center;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-gold{background:var(--acid);color:#101008}.button-ghost{border:1px solid rgba(244,234,217,.64);color:var(--cream)}.hero-foot{z-index:1;position:absolute;bottom:27px;left:clamp(22px,4vw,70px);right:clamp(22px,4vw,70px);font:11px "DM Mono",monospace;letter-spacing:.09em;color:#d7cabc;display:flex;justify-content:space-between}.section{padding:clamp(90px,12vw,185px) clamp(22px,9vw,150px)}.hand{background:#140d18;display:grid;grid-template-columns:minmax(250px,.75fr) minmax(450px,1.25fr);gap:clamp(50px,8vw,130px)}.section-intro{max-width:440px}.section-intro h2{font-size:clamp(43px,4.4vw,72px)}.section-intro>p:last-child{color:var(--muted);font-size:17px;line-height:1.55;margin-top:25px}.member-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:2px}.member{min-height:212px;padding:21px;background:#24172b;display:flex;flex-direction:column;justify-content:end;transition:background .3s,transform .3s}.member:hover{background:#59367a;transform:translateY(-5px)}.member:nth-child(2){background:#3a281c}.member:nth-child(3){background:#4b3766}.member:nth-child(4){background:#1d473d}.member:nth-child(5){background:#30274a;grid-column:span 2}.member span{font:12px "DM Mono",monospace;letter-spacing:.1em;color:var(--acid);margin-bottom:auto}.member h3{font-size:28px;line-height:.96;letter-spacing:-.055em;margin:0}.member p{margin:10px 0 0;color:#d5c7c6;font-size:14px}.invasion{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);gap:clamp(50px,10vw,160px);align-items:center;background:#e9e2d6;color:#1a1320}.invasion .eyebrow{color:#7253a6}.invasion h2{font-size:clamp(44px,4.8vw,80px)}.invasion-copy>p{font-size:18px;line-height:1.55;max-width:510px}.invasion-art{aspect-ratio:1;background:radial-gradient(circle at center,#ad74fb 0 4%,transparent 4.4%),radial-gradient(circle at center,#1a1320 0 24%,#4b276b 24.4% 25%,transparent 25.4%),#1a1320;position:relative;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 20px #7253a6}.invasion-art span{color:var(--cream);font:700 clamp(60px,9vw,140px)/1 "DM Mono",monospace;letter-spacing:-.18em;z-index:1}.orbit{position:absolute;border:1px solid var(--acid);border-radius:50%;inset:13%;transform:rotate(-28deg)}.orbit:after{content:"";position:absolute;width:13px;height:13px;background:var(--acid);border-radius:50%;top:13%;right:3%}.orbit-two{inset:28%;transform:rotate(47deg);border-color:#f0b34c}.dates{margin:36px 0 25px;border-top:1px solid #bcb3a8}.dates div{padding:13px 0;border-bottom:1px solid #bcb3a8;display:flex;gap:25px}.dates b{font:12px "DM Mono",monospace;letter-spacing:.08em;color:#7253a6;min-width:64px}.text-link{color:inherit;font-weight:700;text-decoration:none}.text-link span{color:#7253a6;margin-left:8px}.transmission{text-align:center;background:radial-gradient(circle at 50% 0,#40215c,transparent 48%),#0b0809;padding-block:clamp(105px,15vw,220px)}.transmission blockquote{font-size:clamp(38px,5vw,79px);letter-spacing:-.06em;line-height:1;margin:0 auto 23px;max-width:1000px}.transmission blockquote em{font-family:Georgia,serif;font-weight:400}.quote-source{font:12px "DM Mono",monospace;letter-spacing:.12em;color:var(--muted);margin:0 0 37px}footer{min-height:180px;border-top:1px solid rgba(244,234,217,.16);padding:38px clamp(22px,4vw,70px);display:flex;justify-content:space-between;align-items:center;gap:20px}footer p,footer a:not(.wordmark){font-size:13px;color:var(--muted);text-decoration:none}footer div{display:flex;gap:18px}@media (max-width:760px){.site-header{height:65px}.menu-toggle{display:block;background:transparent;color:var(--cream);border:0;text-transform:uppercase;font:12px "DM Mono",monospace;letter-spacing:.1em}.site-nav{display:none;position:absolute;top:65px;left:0;right:0;padding:25px;background:#17101b;border-bottom:1px solid rgba(244,234,217,.18);flex-direction:column;align-items:flex-start;gap:22px}.site-nav.open{display:flex}.hero{min-height:640px;height:100svh}.hero-image{background-position:58% center}.hero-copy{margin-bottom:96px}.hero-foot{bottom:22px}.hero-foot span:last-child{display:none}.hand,.invasion{grid-template-columns:1fr}.member-grid{grid-template-columns:1fr 1fr}.invasion-art{width:min(83vw,420px);justify-self:center}.section{padding-block:88px}footer{align-items:flex-start;flex-direction:column;gap:11px}.hero h1{font-size:clamp(43px,12.5vw,66px)}}
/* Tighter hero for the rebuilt canonical band portrait. */
.hero{height:clamp(550px,72svh,690px);min-height:550px}.hero-copy{margin-bottom:clamp(78px,9vw,112px)}.member span{display:none}.member{justify-content:flex-end}.member h3{margin-top:auto}@media (max-width:760px){.hero{height:74svh;min-height:540px}.hero-copy{margin-bottom:80px}}

/* Magazine-portrait treatment for the Hand. Temporary source crops will be replaced by the finalized canonical portrait set. */
.member{padding:0;min-height:300px;background:#1c151e!important;overflow:hidden}.member .portrait{height:210px;background-image:linear-gradient(0deg,rgba(11,8,9,.05),rgba(11,8,9,.05)),url("https://img1.wsimg.com/isteam/ip/06022377-7dc8-4758-977a-d4a525076df2/instudio.png/:/cr=t:0%25,l:0%25,w:100%25,h:100%25/rs=w:1535,m");background-size:500% auto;background-repeat:no-repeat;border-bottom:1px solid rgba(244,234,217,.14);filter:saturate(.9) contrast(1.07);transition:transform .35s}.member:hover .portrait{transform:scale(1.035)}.member h3,.member p{padding:0 20px}.member h3{margin:18px 0 0}.member p{margin:8px 0 20px}.member-shag .portrait{background-image:linear-gradient(0deg,rgba(11,8,9,.05),rgba(11,8,9,.05)),url("../assets/images/members/shag-fantastiq.jpg");background-size:cover;background-position:center}.member-bo .portrait{background-image:linear-gradient(0deg,rgba(11,8,9,.05),rgba(11,8,9,.05)),url("../assets/images/members/bodacious-scraggleton.jpg");background-size:cover;background-position:center}.member-luna .portrait{background-image:linear-gradient(0deg,rgba(11,8,9,.05),rgba(11,8,9,.05)),url("../assets/images/members/luna-voce.jpg");background-size:cover;background-position:center}.member-drumma .portrait{background-image:linear-gradient(0deg,rgba(11,8,9,.05),rgba(11,8,9,.05)),url("../assets/images/members/drumma-kaan.jpg");background-size:cover;background-position:center}.member-gnome .portrait{background-image:linear-gradient(0deg,rgba(11,8,9,.05),rgba(11,8,9,.05)),url("../assets/images/members/dj-astrognome.jpg");background-size:cover;background-position:center}@media(max-width:760px){.member{min-height:250px}.member .portrait{height:155px}}

/* Composition refinements. */
.member .portrait{filter:saturate(.96) contrast(1.04)}.member-shag .portrait{background-position:center 35%}.member-bo .portrait{background-position:center 34%}.member-luna .portrait{background-position:center 35%}.member-drumma .portrait{background-position:center 32%}.member-gnome .portrait{background-position:center 32%}

/* Gary does not join the Hand; he keeps it moving. */
.member:nth-child(5){grid-column:span 1!important}.member-gary .portrait{background-image:linear-gradient(0deg,rgba(11,8,9,.08),rgba(11,8,9,.08)),url("../assets/images/members/gary-road-guy.jpg");background-size:cover;background-position:center 28%}

.member-grid{grid-auto-flow:row dense}

@media (min-width:761px){.member-gnome{grid-column:1;grid-row:3}.member-gary{grid-column:2;grid-row:3}}

/* Meet the Hand editorial biography page. */
.site-header-solid{position:relative;background:#0b0809}.back-home{color:var(--cream);font:12px "DM Mono",monospace;letter-spacing:.08em;text-decoration:none}.back-home:hover{color:var(--acid)}.about-page{background:#0b0809}.about-hero{padding:clamp(95px,13vw,175px) clamp(22px,9vw,150px) clamp(78px,10vw,130px);max-width:1150px}.about-hero h1{font-size:clamp(52px,8vw,124px);line-height:.88;letter-spacing:-.07em;margin:0}.about-hero h1 em{font-family:Georgia,serif;font-weight:400}.about-hero>p:last-child{max-width:780px;color:#d5c7c6;font-size:clamp(17px,1.6vw,22px);line-height:1.6;margin:34px 0 0}.bio-list{padding:0 clamp(22px,9vw,150px) clamp(90px,13vw,180px)}.bio{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(300px,1.15fr);gap:clamp(40px,8vw,130px);align-items:center;padding:clamp(54px,8vw,112px) 0;border-top:1px solid rgba(244,234,217,.16);scroll-margin-top:24px}.bio:nth-child(even) .bio-photo{order:2}.bio-photo{min-height:clamp(340px,43vw,610px);background-size:cover;background-position:center 32%;border-radius:2px;box-shadow:0 20px 60px rgba(0,0,0,.35)}.bio-bo .bio-photo{background-image:url("../assets/images/members/bodacious-scraggleton.jpg");background-position:center 30%}.bio-shag .bio-photo{background-image:url("../assets/images/members/shag-fantastiq.jpg");background-position:center 32%}.bio-luna .bio-photo{background-image:url("../assets/images/members/luna-voce.jpg");background-position:center 34%}.bio-drumma .bio-photo{background-image:url("../assets/images/members/drumma-kaan.jpg");background-position:center 28%}.bio-gnome .bio-photo{background-image:url("../assets/images/members/dj-astrognome.jpg");background-position:center 29%}.bio-copy{max-width:660px}.bio-copy h2,.gary-note h2{font-size:clamp(44px,5vw,82px);line-height:.9;letter-spacing:-.065em;margin:0}.bio-copy>p:last-child,.gary-note>p:last-child{color:#d5c7c6;font-size:clamp(16px,1.4vw,20px);line-height:1.65;margin:28px 0 0}.gary-note{margin:0 clamp(22px,9vw,150px) clamp(90px,13vw,180px);padding:clamp(42px,6vw,80px);background:#21152a;border-left:2px solid var(--acid);max-width:980px}.gary-note h2{font-size:clamp(38px,4.5vw,68px)}.gary-note>p:last-child{max-width:650px}@media(max-width:760px){.site-header-solid{height:65px}.about-hero{padding-top:78px}.bio{grid-template-columns:1fr;gap:28px}.bio:nth-child(even) .bio-photo{order:0}.bio-photo{min-height:390px}.bio-copy h2{font-size:52px}.back-home{font-size:10px}}

.portrait-link{display:block;color:inherit;text-decoration:none}

.legal-video{width:min(850px,100%);aspect-ratio:16/9;margin:0 auto 34px;border:1px solid rgba(244,234,217,.24);box-shadow:0 18px 60px rgba(0,0,0,.35);background:#000}.legal-video iframe{width:100%;height:100%;display:block;border:0}

/* Solar gold buttons and the real Ghetto Wookie tour mark. */
.button-gold{background:#f3a237;color:#170d12;box-shadow:0 8px 24px rgba(243,162,55,.22)}.button-gold:hover{background:#ffc367}.tour-logo{background:#09070b url("../assets/images/ghetto-wookie-logo.jpg") center/cover no-repeat;border-radius:4px;box-shadow:0 20px 58px rgba(0,0,0,.34)}.tour-logo .orbit,.tour-logo span{display:none}

.gary-note{display:grid;grid-template-columns:minmax(200px,.62fr) minmax(280px,1.38fr);gap:clamp(28px,5vw,70px);align-items:center;max-width:1100px}.gary-photo{min-height:330px;background:url("../assets/images/members/gary-road-guy.jpg") center 28%/cover no-repeat}.gary-copy>p:last-child{color:#d5c7c6;font-size:clamp(16px,1.4vw,20px);line-height:1.65;margin:28px 0 0}@media(max-width:760px){.gary-note{grid-template-columns:1fr}.gary-photo{min-height:390px}}

/* Canonical backstage hero and editorial Gary portrait. */
.hero-image{background-image:url("../assets/images/ghetto-wookie-band-hero.jpg");background-position:center;background-size:cover}.hero-shadow{background:linear-gradient(90deg,rgba(8,6,8,.34) 0%,rgba(8,6,8,.16) 36%,rgba(8,6,8,.02) 72%),linear-gradient(0deg,rgba(8,6,8,.34),transparent 55%)}

/* Let the canonical hero image lead. */
@media (min-width:761px){.hero-copy{max-width:480px;margin-left:clamp(22px,7vw,118px)}.hero h1{font-size:clamp(46px,4.1vw,64px);line-height:.92}.hero-deck{max-width:400px;font-size:16px;margin:22px 0}.hero-actions{gap:10px}.button{padding:12px 18px}}

/* Keep the words in the left negative space; let the band own the frame. */
@media (min-width:761px){.hero-copy{max-width:360px;margin-left:clamp(22px,7vw,106px)}.hero h1{font-size:clamp(42px,3.5vw,54px);line-height:.94}.hero-deck{max-width:335px;font-size:15px}.hero-actions{flex-wrap:wrap}.hero-actions .button{padding:11px 16px}}

/* The hero copy deliberately occupies only the unused left third. */
@media (min-width:761px){.hero-copy{max-width:320px;margin-left:clamp(22px,6.5vw,92px)}.hero h1{font-size:clamp(40px,3.1vw,48px)}.hero-deck{max-width:310px}.hero-actions .button{padding:10px 14px;font-size:13px}}

/* Mobile uses a short editorial masthead above the photo, never copy on a face. */
@media (max-width:760px){.hero{height:650px;min-height:650px;display:block;background:#080608}.hero-image{top:312px;background-position:63% center}.hero-shadow{top:312px;background:linear-gradient(180deg,rgba(8,6,8,0) 50%,rgba(8,6,8,.42) 100%)}.hero-copy{position:absolute;top:96px;left:22px;right:22px;max-width:320px;margin:0}.hero h1{font-size:clamp(38px,11vw,46px);line-height:.95}.hero-deck{display:none}.hero-actions{margin-top:16px}.hero-actions .button{padding:10px 14px;font-size:13px}.hero-foot{bottom:18px}}


/* Media archive */
.media-page{background:#0a070d}.media-masthead{min-height:clamp(430px,57svh,620px);padding:clamp(150px,20vw,240px) clamp(22px,9vw,150px) clamp(76px,10vw,130px);background:radial-gradient(circle at 78% 44%,rgba(119,39,137,.32),transparent 28%),radial-gradient(circle at 90% 72%,rgba(231,140,41,.18),transparent 25%),#0a070d;border-bottom:1px solid rgba(244,234,217,.12)}.media-masthead h1{max-width:850px;font-size:clamp(54px,7.5vw,114px);line-height:.9;letter-spacing:-.065em;margin:0}.media-masthead h1 em{font-family:Georgia,serif;font-weight:400}.media-masthead>p:last-child{max-width:580px;color:#d7cabc;font-size:clamp(17px,1.7vw,23px);line-height:1.55;margin:30px 0 0}.album-feature{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(360px,1.2fr);gap:clamp(38px,8vw,120px);align-items:center;background:#120c16}.album-copy h2{font-size:clamp(44px,5vw,78px);line-height:.92;letter-spacing:-.055em;margin:0}.album-copy>p:not(.eyebrow){color:#d7cabc;font-size:18px;line-height:1.6;max-width:500px;margin:28px 0}.spotify-player{background:#09070b;border:1px solid rgba(244,234,217,.14);border-radius:14px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.3)}.spotify-player iframe{width:100%;height:352px;border:0;display:block}.media-heading{max-width:780px}.media-heading h2{font-size:clamp(46px,6vw,88px);line-height:.92;letter-spacing:-.06em;margin:0}.media-heading h2 em{font-family:Georgia,serif;font-weight:400}.media-heading>p:last-child{max-width:590px;color:#d7cabc;font-size:18px;line-height:1.6;margin:27px 0 0}.official-visuals{background:#0b080c}.video-rack{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(180px,.65fr) minmax(180px,.65fr);gap:22px;margin-top:58px;align-items:start}.video-frame{background:#000;overflow:hidden;box-shadow:0 18px 48px rgba(0,0,0,.32)}.video-frame.wide{aspect-ratio:16/9}.video-frame.short{aspect-ratio:9/16}.video-frame iframe{width:100%;height:100%;border:0;display:block}.video-meta{font:11px "DM Mono",monospace;letter-spacing:.12em;color:var(--acid);margin:16px 0 8px}.video-card h3{font-size:20px;line-height:1.1;margin:0}.wookiegrams{background:#17101b}.instagram-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:60px}.instagram-placeholder{min-height:280px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none;color:var(--cream);border:1px solid rgba(244,234,217,.2);background:linear-gradient(145deg,rgba(113,58,127,.55),rgba(11,8,12,.92) 64%);transition:transform .2s,border-color .2s}.instagram-placeholder:nth-child(2){background:linear-gradient(145deg,rgba(178,97,35,.48),rgba(11,8,12,.94) 64%)}.instagram-placeholder:nth-child(3){background:linear-gradient(145deg,rgba(39,97,122,.5),rgba(11,8,12,.94) 64%)}.instagram-placeholder:nth-child(4){background:linear-gradient(145deg,rgba(87,42,103,.53),rgba(11,8,12,.94) 64%)}.instagram-placeholder:hover{transform:translateY(-5px);border-color:var(--acid)}.instagram-placeholder span,.instagram-placeholder i{font:11px "DM Mono",monospace;letter-spacing:.09em;color:var(--acid);font-style:normal}.instagram-placeholder strong{font-size:clamp(21px,2vw,30px);line-height:1.02;margin:22px 0}.instagram-placeholder i{color:#d7cabc}
@media(max-width:760px){.media-masthead{min-height:390px;padding-top:128px}.media-masthead h1{font-size:clamp(48px,14vw,69px)}.album-feature{grid-template-columns:1fr}.spotify-player iframe{height:352px}.video-rack{grid-template-columns:1fr 1fr;gap:14px;margin-top:38px}.video-feature{grid-column:1/-1}.instagram-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:38px}.instagram-placeholder{min-height:220px;padding:18px}.instagram-placeholder strong{font-size:22px}}

/* Native Instagram vignettes: six responsive previews, no third-party embed overhead. */
.instagram-feed-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:26px 0 -26px}.instagram-feed-tools p{margin:0;color:#d7cabc;max-width:580px;line-height:1.5}.feed-refresh{appearance:none;border:1px solid rgba(244,234,217,.4);border-radius:99px;background:transparent;color:var(--cream);padding:11px 15px;font:12px "DM Mono",monospace;letter-spacing:.06em;white-space:nowrap;cursor:pointer}.feed-refresh:hover{border-color:var(--acid);color:var(--acid)}.instagram-grid{grid-template-columns:repeat(3,1fr)}.instagram-video{position:relative;display:block;aspect-ratio:9/16;overflow:hidden;border:1px solid rgba(244,234,217,.2);background:linear-gradient(145deg,rgba(113,58,127,.55),rgba(11,8,12,.94) 64%);color:var(--cream);text-decoration:none}.instagram-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s}.instagram-video.thumbnail-ready video{opacity:1}.instagram-video:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.74),transparent 55%);pointer-events:none}.instagram-video-meta{position:absolute;z-index:1;inset:auto 18px 18px;display:flex;flex-direction:column;gap:7px}.instagram-video-meta b,.instagram-video-meta i{font:10px "DM Mono",monospace;letter-spacing:.1em;color:var(--acid);font-style:normal}.instagram-video-meta strong{font-size:clamp(18px,2vw,27px);line-height:1.04}.instagram-video-meta i{color:#f3ead9}.instagram-noscript{color:#d7cabc}.instagram-noscript a{color:var(--acid)}@media(max-width:760px){.instagram-feed-tools{display:block;margin:20px 0 -18px}.instagram-feed-tools p{font-size:16px;margin-bottom:15px}.instagram-grid{grid-template-columns:1fr 1fr}.instagram-video-meta{inset:auto 13px 14px}.instagram-video-meta strong{font-size:18px}}

/* Local Wookiegram playback modal. */
.instagram-video{cursor:pointer}.instagram-video:focus-visible{outline:2px solid var(--acid);outline-offset:4px}.video-modal-open{overflow:hidden}.video-modal{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:30px;background:rgba(4,3,5,.9);backdrop-filter:blur(12px)}.video-modal-player{height:min(82svh,900px);max-width:min(92vw,620px);aspect-ratio:9/16;background:#000;box-shadow:0 28px 90px rgba(0,0,0,.7)}.video-modal-player video{display:block;width:100%;height:100%;object-fit:contain}.video-modal-close{position:absolute;z-index:1;top:22px;right:28px;width:42px;height:42px;border:1px solid rgba(244,234,217,.6);border-radius:50%;background:rgba(0,0,0,.25);color:var(--cream);font-size:32px;line-height:1;cursor:pointer}.video-modal-close:hover{border-color:var(--acid);color:var(--acid)}@media(max-width:760px){.video-modal{padding:16px}.video-modal-player{width:min(92vw,430px);height:auto;max-height:82svh}.video-modal-close{top:14px;right:14px}}

/* One official visual deserves the whole stage. */
.official-visuals .video-rack{grid-template-columns:minmax(0,1fr);max-width:1040px}.official-visuals .video-feature{max-width:1040px}@media(max-width:760px){.official-visuals .video-rack{grid-template-columns:1fr}}

/* Groove Invasion itinerary */
.invasions-page{background:#0a070d}.invasion-masthead{min-height:clamp(570px,78svh,820px);padding:clamp(130px,15vw,190px) clamp(22px,9vw,150px) clamp(70px,9vw,120px);display:grid;grid-template-columns:minmax(280px,1fr) minmax(260px,.72fr);gap:clamp(42px,10vw,150px);align-items:center;background:radial-gradient(circle at 78% 28%,rgba(229,138,35,.2),transparent 26%),radial-gradient(circle at 26% 84%,rgba(91,37,114,.25),transparent 34%),#0a070d}.invasion-masthead h1{font-size:clamp(54px,7.3vw,108px);line-height:.88;letter-spacing:-.07em;margin:0;max-width:800px}.invasion-masthead h1 em,.tour-heading h2 em{font-family:Georgia,serif;font-weight:400}.invasion-masthead>div>p:last-child{max-width:520px;color:#d7cabc;font-size:clamp(17px,1.7vw,22px);line-height:1.55;margin:30px 0 0}.tour-poster{margin:0;justify-self:end;width:min(100%,540px);filter:drop-shadow(0 30px 54px rgba(0,0,0,.46))}.tour-poster img{display:block;width:100%;height:auto;border:1px solid rgba(243,162,55,.48);box-shadow:0 0 0 7px rgba(243,162,55,.06)}.tour-itinerary{background:#140d18;display:grid;grid-template-columns:minmax(250px,.7fr) minmax(450px,1.3fr);gap:clamp(50px,9vw,150px);align-items:start}.tour-heading{position:sticky;top:100px}.tour-heading h2{font-size:clamp(48px,5.6vw,86px);line-height:.9;letter-spacing:-.06em;margin:0}.tour-heading>p:last-child{color:#d7cabc;line-height:1.6;font-size:17px;max-width:430px;margin:28px 0}.tour-month+ .tour-month{margin-top:60px}.tour-month h3{font:500 15px "DM Mono",monospace;letter-spacing:.14em;color:var(--acid);margin:0 0 12px}.tour-month h3 span{font-size:16px;letter-spacing:0;margin-left:7px}.tour-date{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:16px;align-items:baseline;padding:15px 0;border-top:1px solid rgba(244,234,217,.16)}.tour-date time,.tour-date b{font:11px "DM Mono",monospace;letter-spacing:.08em}.tour-date time{color:var(--acid)}.tour-date p{font-size:17px;line-height:1.25;margin:0}.tour-date p span{color:#bdaead;font-size:14px;margin-left:6px}.tour-date b{color:#f3a237;white-space:nowrap}.tour-date.past{opacity:.34}.tour-date.past time,.tour-date.past p,.tour-date.past b{text-decoration:line-through;text-decoration-thickness:1px}.tour-date.past b{color:#d7cabc}@media(max-width:760px){.invasion-masthead{grid-template-columns:1fr;padding-top:120px;min-height:0}.invasion-masthead h1{font-size:clamp(52px,15vw,72px)}.tour-poster{justify-self:center;max-width:390px}.tour-itinerary{grid-template-columns:1fr}.tour-heading{position:static}.tour-date{grid-template-columns:62px minmax(0,1fr);gap:12px}.tour-date b{grid-column:2;font-size:10px}.tour-date p{font-size:16px}.tour-date p span{display:block;margin:3px 0 0}.tour-month+ .tour-month{margin-top:42px}}

/* Desktop hero: preserve the band’s full upper silhouettes. */
@media (min-width:761px){.hero-image{background-position:center top}}
