/* PLAYFOUND — festival-inspired editorial redesign, 2026 */
:root{
  --ink:#151614;
  --paper:#f4f1e8;
  --white:#fffefa;
  --muted:#5d605b;
  --orange:#fa5b40;
  --acid:#d9f75e;
  --lilac:#bca6fd;
  --blue:#92c6f9;
  --line:rgba(21,22,20,.2);
  --heading:'Barlow Condensed','Arial Narrow',Impact,sans-serif;
  --body:'DM Sans',Arial,sans-serif;
  --pad:clamp(22px,5.1vw,94px);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:106px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open{overflow:hidden}
button,a{font:inherit}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
img{max-width:100%;display:block}
h1,h2,h3,p{margin-top:0}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #056bb9;outline-offset:4px}
::selection{background:var(--ink);color:var(--acid)}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip-link{position:fixed;left:18px;top:-110px;z-index:300;background:var(--acid);padding:12px 18px;font-weight:800}
.skip-link:focus{top:15px}
.section-wrap{padding:100px var(--pad) 110px;max-width:1720px;margin:0 auto}
.section-topline{display:flex;justify-content:space-between;gap:20px;padding:0 0 20px;border-bottom:1px solid var(--line);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.section-topline span:last-child{text-align:right}
.section-tag,.small-cap,.number-label,.contact-small,.small-visual-text{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.display-heading{font-family:var(--heading);font-size:clamp(72px,10.5vw,174px);font-weight:900;letter-spacing:-.045em;line-height:.77;text-transform:uppercase;margin:0}
.display-heading em{font-style:normal;color:var(--orange)}
.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:50px;margin:65px 0 50px}
.section-heading-row>p{width:min(340px,35%);line-height:1.55;font-size:16px;font-weight:500;margin:0 0 8px}
.section-heading-row .section-tag{display:block;margin-bottom:30px}
.btn{display:inline-flex;justify-content:space-between;gap:32px;align-items:center;min-height:56px;padding:18px 24px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.035em;transition:transform .2s,background .2s,color .2s}
.btn:hover{transform:translateY(-3px)}
.btn-dark{background:var(--ink);color:var(--white)}
.btn-dark:hover{background:#343732}
.btn-cream{background:var(--acid);color:var(--ink)}
.btn-cream:hover{background:#f2ffae}
.btn span,.arrow-link span,.social-follow span{font-size:21px;line-height:0}
.arrow-link{display:inline-flex;gap:60px;align-items:center;border-bottom:1px solid var(--ink);padding:10px 0;font-size:13px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}
.arrow-link:hover{color:#d13926}
/* Top strip + navigation */
.announcement{height:34px;display:flex;align-items:center;justify-content:center;gap:19px;padding:6px 18px;background:var(--ink);color:var(--white);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.announcement-dot,.pulse-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--acid);flex:none;box-shadow:0 0 0 3px rgba(217,247,94,.12)}
.announcement-separator{color:var(--orange);font-size:14px}
.announcement-arrow{font-size:16px;color:var(--acid)}
.site-header{position:sticky;top:0;z-index:100;height:80px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1.5px solid var(--ink);background:var(--paper)}
.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}
.brand-mark{width:43px;height:43px;background:var(--ink);display:grid;place-items:center;border-radius:50%;flex-shrink:0}
.brand-mark img{width:24px;height:26px;object-fit:contain}
.brand-name{font-family:var(--heading);font-size:36px;font-weight:900;letter-spacing:-.035em;line-height:1}
.brand-period{color:var(--orange)}
.primary-nav{display:flex;align-items:center;gap:clamp(10px,1.5vw,28px)}
.primary-nav>a{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}
.primary-nav>a:hover{color:#d03c2a}
.primary-nav .nav-cta{display:inline-flex;align-items:center;gap:25px;background:var(--orange);border:1px solid var(--ink);padding:15px 19px;color:var(--ink)}
.primary-nav .nav-cta:hover{background:var(--acid);color:var(--ink)}
.nav-cta span{font-size:18px}
.menu-toggle{display:none}
/* Hero */
.hero{position:relative;background:var(--orange);overflow:hidden}
.hero-main{display:grid;grid-template-columns:55% 45%;min-height:min(725px,75vw);border-bottom:1.5px solid var(--ink)}
.hero-copy{padding:clamp(55px,5.5vw,100px) 15px 65px var(--pad);position:relative;z-index:3}
.hero-eyebrow{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:900;letter-spacing:.13em;margin-bottom:44px}
.eyebrow-symbol{font-size:23px}
.hero h1{font-family:var(--heading);font-weight:900;font-size:clamp(86px,10.2vw,173px);letter-spacing:-.056em;line-height:.75;margin:0 0 36px;white-space:nowrap}
.hero-outline{-webkit-text-stroke:2px var(--ink);color:transparent;letter-spacing:-.05em}
.hero-punctuation{color:var(--ink);-webkit-text-stroke:0}
.hero-description{max-width:510px;font-size:clamp(17px,1.55vw,24px);line-height:1.34;font-weight:600;letter-spacing:-.02em;margin-bottom:34px}
.hero-actions{display:flex;align-items:center;gap:36px;flex-wrap:wrap}
.hero-actions .btn{background:var(--ink);color:#fff}
.text-action{font-size:12px;text-transform:uppercase;font-weight:900;display:inline-flex;align-items:center;gap:20px;border-bottom:2px solid var(--ink);padding:10px 0}
.text-action span{font-size:23px}
.hero-art{border-left:1.5px solid var(--ink);position:relative;min-height:630px;overflow:hidden;isolation:isolate;background:var(--lilac)}
.art-grid{position:absolute;inset:0;background-image:linear-gradient(to right,transparent calc(100% - 1px),rgba(21,22,20,.12) calc(100% - 1px)),linear-gradient(to bottom,transparent calc(100% - 1px),rgba(21,22,20,.12) calc(100% - 1px));background-size:52px 52px;z-index:0}
.art-sun{position:absolute;top:-11%;left:16%;width:75%;aspect-ratio:1;background:var(--acid);border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;transform:rotate(-16deg);box-shadow:19px 20px 0 var(--ink);z-index:1}
.art-sun span{font:900 clamp(78px,10vw,170px)/.76 var(--heading);text-align:center;letter-spacing:-.05em}
.art-tile{position:absolute;width:51%;aspect-ratio:1;border:2px solid var(--ink);transform:rotate(15deg);z-index:2}
.art-tile-back{right:-1%;bottom:8%;background:var(--orange);transform:rotate(-18deg);box-shadow:15px 15px 0 var(--ink)}
.art-tile-front{bottom:3%;left:4%;background:var(--blue);display:flex;align-items:center;justify-content:center;transform:rotate(12deg);box-shadow:15px 15px 0 var(--ink)}
.art-tile-front>span{font-family:var(--heading);font-weight:900;letter-spacing:-.08em;font-size:clamp(110px,17vw,250px);line-height:1}
.art-tile-front i{position:absolute;width:35px;height:35px;border:11px solid var(--ink);border-radius:50%;right:11%;top:12%}
.art-plus{position:absolute;right:1%;top:31%;font-family:var(--heading);font-size:180px;line-height:1;transform:rotate(18deg);z-index:2}
.art-sticker{position:absolute;right:5%;bottom:31%;background:var(--white);border:2px solid var(--ink);border-radius:50%;width:140px;height:140px;display:grid;place-items:center;text-align:center;font:900 23px/.85 var(--heading);transform:rotate(14deg);z-index:3}
.art-caption{position:absolute;bottom:20px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em;font-weight:900;z-index:4}
.hero-info-strip{display:grid;grid-template-columns:1fr 1.3fr 1.2fr 80px;min-height:103px;padding-left:var(--pad);background:var(--paper)}
.hero-info-strip>div{border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;gap:9px;padding:16px 30px 16px 0;margin-right:30px}
.hero-info-strip>div span{font-size:10px;font-weight:800;letter-spacing:.12em}
.hero-info-strip strong{font-size:13px;font-weight:900;letter-spacing:.04em}
.hero-info-strip .pulse-dot{margin-left:9px;background:var(--orange)}
.hero-info-strip>a{background:var(--acid);border-left:1px solid var(--ink);display:grid;place-items:center;font-size:36px;transition:background .2s}
.hero-info-strip>a:hover{background:var(--lilac)}
/* Seamless, horizontal-only, endless banner. The two groups have precisely
   matching widths; -50% lands on identical content with no blank or jump. */
.ticker{overflow:hidden;background:var(--ink);color:var(--acid);height:91px;border-bottom:1px solid var(--ink);display:flex;align-items:center;max-width:100%}
.ticker-track{display:flex;flex:0 0 auto;align-items:center;width:max-content;white-space:nowrap;animation:ticker-loop var(--ticker-duration,34s) linear infinite;will-change:transform}
.ticker-group{display:flex;flex:0 0 auto;align-items:center}
.ticker-set{display:flex;flex:0 0 auto;align-items:center;gap:30px;padding-right:30px}
.ticker-track span{font:900 66px/.9 var(--heading);letter-spacing:-.025em}
.ticker-track b{font:900 38px var(--body);color:var(--orange)}
@keyframes ticker-loop{to{transform:translate3d(-50%,0,0)}}
/* Intro */
.intro-layout{padding-top:70px;display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:30px}
.intro-layout h2{font-size:clamp(72px,9.4vw,154px)}
.intro-aside{padding:0 0 14px 17%;max-width:550px}
.intro-aside .spark-symbol{display:block;color:var(--orange);font-size:80px;line-height:1;margin-bottom:45px}
.intro-aside p{font-size:19px;font-weight:600;line-height:1.5;letter-spacing:-.02em}
.intro-aside p+p{font-size:15px;font-weight:500;color:var(--muted);margin-bottom:25px}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);margin-top:95px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.pillars>div{padding:24px 28px 32px 0;min-height:202px}
.pillars>div+div{border-left:1px solid var(--line);padding-left:30px}
.pillars>div>span{font-size:11px;font-weight:900}
.pillars h3{font:900 58px/.9 var(--heading);letter-spacing:-.035em;margin:30px 0 12px}
.pillars h3 span{color:var(--orange)}
.pillars p{color:var(--muted);max-width:280px;line-height:1.5;font-size:14px;margin:0}
/* Program */
.program{background:var(--white)}
.program .display-heading{font-size:clamp(75px,11vw,180px)}
.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px}
.filter{min-height:43px;background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:0;padding:10px 17px;font-size:12px;font-weight:800;transition:background .2s,color .2s}
.filter:hover{background:var(--acid)}
.filter.active{background:var(--ink);color:var(--white)}
.filter span{padding-left:10px;opacity:.65}
.program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.program-card{min-width:0;border:1.5px solid var(--ink);background:var(--paper);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.program-card:hover{transform:translateY(-5px);box-shadow:7px 7px 0 var(--ink)}
.program-visual{height:clamp(205px,21vw,325px);border-bottom:1.5px solid var(--ink);position:relative;overflow:hidden;isolation:isolate}
.visual-label,.visual-corner{position:absolute;top:16px;left:17px;font-size:10px;font-weight:900;letter-spacing:.1em;z-index:4}
.visual-corner{left:auto;right:17px;font-size:21px;letter-spacing:0}
.visual-play{background:var(--acid)}
.visual-controller{position:absolute;top:33%;left:21%;width:60%;height:43%;border:3px solid var(--ink);background:var(--lilac);border-radius:43% 43% 35% 35%;transform:rotate(-13deg);box-shadow:12px 13px 0 var(--ink);display:flex;justify-content:space-around;align-items:center;font-size:50px;font-weight:900}
.visual-controller span:last-child{letter-spacing:-.15em;font-size:24px}
.visual-talk{background:var(--lilac)}
.visual-mic{position:absolute;font-size:clamp(190px,25vw,380px);font-weight:900;line-height:1;top:-6%;left:28%;transform:rotate(-10deg);text-shadow:12px 15px 0 var(--ink);color:var(--orange)}
.visual-test{background:var(--blue)}
.visual-target{position:absolute;top:21%;left:33%;width:50%;aspect-ratio:1;border:25px solid var(--ink);border-radius:50%;transform:rotate(-15deg);box-shadow:13px 15px 0 var(--orange)}
.visual-target span{width:45%;aspect-ratio:1;background:var(--orange);border-radius:50%;display:block;position:absolute;left:28%;top:28%}
.visual-workshop{background:var(--orange)}
.visual-cubes{position:absolute;inset:25% 14%;display:flex;align-items:center;justify-content:center;transform:rotate(-18deg)}
.visual-cubes span{width:37%;aspect-ratio:1;border:3px solid var(--ink);background:var(--acid);box-shadow:9px 9px 0 var(--ink)}
.visual-cubes span:nth-child(2){background:var(--lilac);transform:translate(-15%,30%)}
.visual-cubes span:nth-child(3){background:var(--blue);transform:translate(-20%,-24%)}
.visual-people{background:#ffd2b5}
.visual-faces{position:absolute;inset:24% 10%;display:flex;align-items:center;justify-content:center;gap:0;transform:rotate(-9deg)}
.visual-faces span{width:33%;aspect-ratio:1;border:3px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:clamp(55px,7vw,110px);background:var(--acid);margin-left:-5%;line-height:1}
.visual-faces span:nth-child(2){background:var(--blue)}
.visual-faces span:nth-child(3){background:var(--lilac)}
.visual-found{background:#151614}
.visual-star{color:var(--acid);font-size:clamp(210px,27vw,440px);position:absolute;line-height:1;top:0;left:16%;transform:rotate(12deg);text-shadow:14px 12px 0 var(--orange)}
.visual-found .visual-label,.visual-found .visual-corner{color:var(--white)}
.program-content{padding:22px 25px 25px;display:flex;flex-direction:column;flex:1}
.program-meta{display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.09em;font-weight:900}
.program-meta span:last-child{color:var(--muted);text-align:right}
.program-content h3{font:900 clamp(42px,4.4vw,67px)/.84 var(--heading);letter-spacing:-.04em;margin:30px 0 19px}
.program-content p{font-size:14px;line-height:1.48;max-width:300px;color:#4c4d49;margin-bottom:32px}
.program-content a{border-top:1px solid var(--line);padding-top:15px;display:flex;align-items:center;justify-content:space-between;margin-top:auto;font-size:12px;font-weight:900;text-transform:uppercase}
.program-content a span{font-size:21px}
.program-content a:hover{color:#d93a2a}
.program-note{background:var(--acid);padding:21px 27px;display:flex;align-items:center;gap:20px;margin-top:25px;border:1.5px solid var(--ink)}
.program-note>span{font-size:29px}
.program-note p{font-size:14px;font-weight:700;margin:0;flex:1}
.program-note a{text-transform:uppercase;font-size:12px;font-weight:900;white-space:nowrap;border-bottom:1px solid var(--ink);padding-bottom:4px}
/* Event */
.feature-band{background:var(--ink);color:var(--paper);padding:30px var(--pad) 0}
.feature-band-top{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:18px;font-size:11px;font-weight:900;letter-spacing:.14em}
.feature-band-grid{display:grid;grid-template-columns:1.4fr 1fr}
.feature-band-main{padding:80px 12% 95px 0}
.feature-band-main h2{font:900 clamp(125px,17vw,270px)/.85 var(--heading);letter-spacing:-.055em;margin:32px 0}
.feature-band-main h2 span{color:var(--orange)}
.feature-band-main>p{font-size:20px;line-height:1.45;max-width:490px;margin-bottom:35px}
.feature-band-side{padding:80px 0 60px 12%;border-left:1px solid rgba(255,255,255,.3);display:flex;flex-direction:column;justify-content:space-between}
.date-circle{width:min(310px,100%);aspect-ratio:1;border-radius:50%;border:2px solid var(--acid);background:var(--orange);color:var(--ink);display:flex;justify-content:center;align-items:center;gap:10px;transform:rotate(14deg)}
.date-circle span{font:900 150px/.8 var(--heading)}
.date-circle strong{font:900 150px/.8 var(--heading)}
.date-details{margin-top:60px;display:grid;grid-template-columns:1fr 2.2fr;align-items:center;row-gap:17px;border-top:1px solid rgba(255,255,255,.3);padding-top:25px}
.date-details span{font-size:10px;font-weight:800;letter-spacing:.09em;color:#bfbeb5}
.date-details strong{font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.archive-note{border-top:1px solid rgba(255,255,255,.3);padding:20px 0;font-size:13px;color:#c6c6c0}
.archive-note summary{cursor:pointer;display:flex;justify-content:space-between;list-style:none}
.archive-note summary::-webkit-details-marker{display:none}
.archive-note summary span{font-size:20px;line-height:1}
.archive-note p{margin:16px 0 0;line-height:1.5;max-width:850px}
/* Games feature */
.games-heading .display-heading{font-size:clamp(83px,12vw,190px)}
.game-showcase{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--ink);min-height:570px;background:var(--acid)}
.game-showcase-art{min-height:550px;position:relative;background:var(--blue);border-right:2px solid var(--ink);overflow:hidden;isolation:isolate}
.game-showcase-art::before{content:"";position:absolute;inset:0;background-image:radial-gradient(var(--ink) 1px,transparent 1px);background-size:18px 18px;opacity:.13}
.small-visual-text{position:absolute;top:24px;left:25px;z-index:2}
.game-orbit{position:absolute;width:78%;aspect-ratio:1;border:3px solid var(--ink);border-radius:50%;top:7%;left:9%;display:grid;place-items:center;transform:rotate(12deg);background:var(--lilac);box-shadow:17px 18px 0 var(--ink)}
.game-orbit div{width:72%;aspect-ratio:1;background:var(--orange);border:3px solid var(--ink);transform:rotate(35deg);box-shadow:13px 12px 0 var(--ink)}
.game-art-center{position:absolute;left:16%;top:33%;font:900 clamp(90px,12vw,200px)/.72 var(--heading);letter-spacing:-.04em;transform:rotate(-12deg);text-align:center}
.game-art-center span{color:var(--acid);font-size:.4em;vertical-align:top}
.game-showcase-content{padding:55px 9%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.game-showcase-content h3{font:900 clamp(75px,8vw,138px)/.83 var(--heading);letter-spacing:-.044em;margin:38px 0}
.game-showcase-content h3 em{font-style:normal;color:#dc4833}
.game-showcase-content p{font-size:16px;line-height:1.5;max-width:400px;margin-bottom:35px}
/* Stage */
.stage-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:72px}
.stage-layout .display-heading{font-size:clamp(90px,12vw,185px)}
.stage-layout>div>p{margin:45px 0 35px;max-width:460px;font-size:19px;line-height:1.5}
.stage-list{padding-top:30px}
.stage-list>div{display:grid;grid-template-columns:55px 1fr 25px;gap:10px;align-items:center;min-height:108px;border-top:1px solid var(--ink)}
.stage-list>div:last-of-type{border-bottom:1px solid var(--ink)}
.stage-list>div>span{font-size:12px;font-weight:900}
.stage-list>div>span:last-child{font-size:24px}
.stage-list strong{font-family:var(--heading);font-size:clamp(33px,4.1vw,63px);font-weight:800;line-height:.97;text-transform:uppercase}
.stage-list p{font-size:13px!important;color:var(--muted);margin-top:25px!important}
/* Developer CTA */
.developer-section{background:var(--lilac);margin-top:10px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.developer-inner{padding:35px var(--pad) 40px;max-width:1720px;margin:0 auto}
.developer-main{display:grid;grid-template-columns:1.4fr .65fr;align-items:end;gap:5%;padding:65px 0 85px}
.developer-kicker{font-size:12px;font-weight:900;letter-spacing:.12em}
.developer-main h2{font:900 clamp(94px,12.9vw,205px)/.76 var(--heading);letter-spacing:-.05em;margin:28px 0 0}
.developer-main h2 i{font-style:normal;color:var(--orange);-webkit-text-stroke:1px var(--ink)}
.developer-aside{padding-bottom:15px}
.developer-aside p{font-size:19px;line-height:1.48;font-weight:600;margin-bottom:30px}
.developer-benefits{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink)}
.developer-benefits>span{font:900 clamp(23px,2.5vw,42px)/1 var(--heading);letter-spacing:-.02em;padding:30px 15px 7px 0;display:flex;justify-content:space-between;gap:8px}
.developer-benefits>span+span{border-left:1px solid var(--line);padding-left:18px}
.developer-benefits b{font:700 20px var(--body)}
/* Community */
.community-heading .display-heading{font-size:clamp(90px,12vw,180px)}
.community-caption{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:12px}
.community-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.community-grid>div,.community-grid>a{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:24px;min-height:250px;border:1.5px solid var(--ink);background:var(--white);transition:transform .2s}
.community-grid>div:nth-child(2){background:#e9dcfc}
.community-grid>div:nth-child(3){background:#d2e6ff}
.community-grid .community-join{background:var(--orange)}
.community-grid>a:hover{transform:translateY(-5px)}
.community-grid>div>span:first-child,.community-grid>a>span:first-child{font-size:10px;letter-spacing:.1em;font-weight:900}
.community-grid strong{font:900 clamp(25px,2.6vw,43px)/.91 var(--heading);letter-spacing:-.02em}
.community-arrow{align-self:flex-end;font-size:26px!important;letter-spacing:0!important}
/* Social */
.social{background:var(--white)}
.social-heading .display-heading{font-size:clamp(90px,12vw,180px)}
.social-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.social-card{min-width:0;border:1.5px solid var(--ink);background:var(--paper);display:flex;flex-direction:column}
.social-card-header{display:flex;gap:13px;align-items:center;border-bottom:1.5px solid var(--ink);min-height:68px;padding:14px 17px;font-size:10px;font-weight:900;letter-spacing:.06em}
.social-card-header>span:last-child{margin-left:auto;font-size:20px}
.social-icon{display:grid;place-items:center;width:35px;height:35px;background:var(--ink);color:var(--white);border-radius:50%;font-size:20px;font-weight:800;letter-spacing:-.1em}
.instagram-embed-shell{display:flex;align-items:center;justify-content:center;background:#dedbd3;padding:14px;min-height:340px;flex:1}
.instagram-embed-shell .instagram-media{max-width:100%!important;width:100%!important;min-width:0!important;border-radius:0!important;box-shadow:none!important}
.instagram-card .social-card-bottom{background:#efe8fb}
.community-social-card .social-card-bottom{background:#d9f75e}
.linkedin-art{height:340px;position:relative;background:var(--orange);overflow:hidden;border-bottom:1.5px solid var(--ink)}
.linkedin-art::before{content:"";width:75%;aspect-ratio:1;border:3px solid var(--ink);background:var(--acid);border-radius:50%;position:absolute;right:-17%;top:-27%;box-shadow:14px 12px 0 var(--ink)}
.linkedin-spark{position:absolute;top:6%;left:7%;font-size:105px;line-height:1;transform:rotate(-15deg)}
.linkedin-word{font:900 clamp(94px,9vw,145px)/.69 var(--heading);letter-spacing:-.045em;position:absolute;left:8%;bottom:20%;z-index:2}
.linkedin-word span{color:var(--white)}
.linkedin-corner{position:absolute;bottom:18px;right:18px;font-size:10px;font-weight:900;letter-spacing:.1em}
.social-card-bottom{padding:24px 23px;display:flex;flex-direction:column;align-items:flex-start;gap:20px;border-top:1.5px solid var(--ink);min-height:245px;margin-top:auto}
.social-card-bottom>div{display:flex;flex-direction:column;gap:10px}
.social-card-bottom strong{font:900 clamp(29px,2.8vw,43px)/.9 var(--heading);letter-spacing:-.02em}
.social-card-bottom>div>span{font-size:13px;line-height:1.45;color:#51544c}
.social-follow{margin-top:auto;display:inline-flex;align-items:center;gap:16px;border-bottom:1.5px solid var(--ink);padding-bottom:5px;text-transform:uppercase;font-size:11px;font-weight:900}
.social-follow:hover{color:#c44330}
/* Contact + footer */
.contact{background:var(--acid);border-top:2px solid var(--ink)}
.contact-main{padding:30px var(--pad) 80px;max-width:1720px;margin:auto}
.contact-small{display:block;margin:75px 0 15px}
.contact h2{font:900 clamp(125px,20vw,330px)/.72 var(--heading);letter-spacing:-.06em;margin:0 0 70px}
.contact h2 em{color:var(--orange);font-style:normal;-webkit-text-stroke:1px var(--ink)}
.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px;border-top:2px solid var(--ink);padding-top:25px}
.contact-bottom p{font-size:18px;line-height:1.45;max-width:400px;font-weight:600;margin:0}
.contact-mail{display:flex;gap:20px;align-items:center;font:900 clamp(25px,3.3vw,55px)/1 var(--heading);letter-spacing:-.03em;border-bottom:2px solid var(--ink);padding-bottom:10px;overflow-wrap:anywhere}
.contact-mail span{font-size:28px}
.site-footer{background:var(--ink);color:var(--white);padding:65px var(--pad) 20px}
.footer-top{max-width:1720px;margin:auto;display:flex;justify-content:space-between;gap:10%;padding-bottom:80px}
.footer-brand{flex:1}
.footer-brand .brand-mark{background:var(--orange);width:56px;height:56px;margin-bottom:16px}
.footer-brand strong{font:900 clamp(70px,8vw,126px)/.8 var(--heading);letter-spacing:-.045em}
.footer-brand p{font-size:11px;line-height:1.8;font-weight:900;letter-spacing:.09em;margin-top:20px}
.footer-nav{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:45px;flex:1}
.footer-nav>div{display:flex;flex-direction:column;align-items:flex-start;gap:15px}
.footer-nav>div>span{font-size:11px;font-weight:900;color:var(--acid);letter-spacing:.1em;margin-bottom:14px}
.footer-nav a{font-size:13px;color:#dfdfd5}
.footer-nav a:hover,.footer-bottom a:hover{color:var(--acid)}
.footer-bottom{max-width:1720px;margin:auto;border-top:1px solid #555;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;gap:25px;font-size:11px;font-weight:700;color:#ccc}
.footer-bottom>div{display:flex;gap:25px}
/* Responsive */
@media(max-width:1240px){
 .primary-nav{gap:14px}.primary-nav>a{font-size:10px}.primary-nav .nav-cta{padding:13px}
 .brand-name{font-size:32px}.hero h1{font-size:clamp(75px,10.1vw,140px)}
 .program-content h3{font-size:clamp(37px,4vw,60px)}
 .art-sun span{font-size:clamp(65px,10vw,135px)}
 .art-sticker{width:115px;height:115px;font-size:19px}
 .social-card-header{font-size:9px}.social-grid{gap:10px}
}
@media(max-width:960px){
 html{scroll-padding-top:76px}.site-header{height:72px}
 .menu-toggle{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;appearance:none;background:transparent;border:1.5px solid var(--ink);height:43px;width:47px;z-index:104}
 .menu-toggle span{display:block;width:23px;height:2px;background:var(--ink);transition:transform .2s}
 .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}
 .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
 .primary-nav{display:none;position:absolute;top:72px;left:0;right:0;max-height:calc(100dvh - 72px);overflow-y:auto;background:var(--paper);border-bottom:2px solid var(--ink);padding:24px var(--pad) 30px;box-shadow:0 30px 40px rgba(0,0,0,.14);flex-direction:column;align-items:stretch;gap:0}
 .primary-nav.is-open{display:flex}.primary-nav>a{display:block;padding:16px 5px;border-bottom:1px solid var(--line);font-size:18px}
 .primary-nav .nav-cta{margin-top:18px;display:flex;justify-content:space-between;padding:18px}
 .hero-main{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:60px var(--pad) 62px}.hero h1{font-size:clamp(96px,15vw,160px)}.hero-art{border-left:0;border-top:2px solid var(--ink);min-height:510px}
 .art-sun{width:53%;top:-20%;left:19%}.art-sun span{font-size:120px}.art-tile{width:33%}.art-tile-front>span{font-size:160px}.art-tile-front{left:26%;bottom:-9%}.art-tile-back{right:16%;bottom:-8%}.art-plus{right:13%}.art-sticker{bottom:27%}
 .hero-info-strip{grid-template-columns:1fr 1fr;gap:0;padding:0 var(--pad)}.hero-info-strip>div{border-bottom:1px solid var(--line);min-height:90px;margin-right:15px}.hero-info-strip>a{display:none}
 .intro-layout{grid-template-columns:1fr}.intro-aside{padding:0;max-width:620px}.intro-aside .spark-symbol{margin-bottom:15px}
 .program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.program-visual{height:290px}.program-content h3{font-size:63px}
 .feature-band-main h2{font-size:170px}.date-circle span,.date-circle strong{font-size:110px}
 .developer-main{grid-template-columns:1fr}.developer-aside{max-width:550px;margin-top:45px}
 .community-grid{grid-template-columns:repeat(2,1fr)}
 .social-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.social-card:last-child>.social-card-header{grid-column:1/-1}.social-card:last-child>.social-card-bottom{height:100%;border-top:0;border-left:1.5px solid var(--ink)}
 .footer-top{flex-direction:column;gap:65px}.footer-nav{max-width:750px;width:100%}
}
@media(max-width:650px){
 :root{--pad:20px}
 .announcement{gap:8px;font-size:8px;letter-spacing:.06em}.announcement-separator{display:none}.announcement-arrow{display:none}
 .brand-mark{width:37px;height:37px}.brand-name{font-size:31px}
 .hero-copy{padding-top:49px;padding-bottom:54px}.hero-eyebrow{margin-bottom:33px;font-size:10px}
 .hero h1{font-size:clamp(68px,14.3vw,99px);margin-bottom:28px}.hero-outline{-webkit-text-stroke:1.3px var(--ink)}
 .hero-description{font-size:17px}.hero-actions{gap:23px}.hero-art{min-height:350px}
 .art-sun{width:67%;top:-24%;left:15%;box-shadow:9px 10px 0 var(--ink)}.art-sun span{font-size:clamp(57px,13vw,96px)}
 .art-tile{width:49%;box-shadow:9px 10px 0 var(--ink)}.art-tile-front{left:9%;bottom:-6%}.art-tile-back{right:6%;bottom:-8%}.art-tile-front>span{font-size:clamp(110px,28vw,160px)}
 .art-plus{font-size:100px;right:0;top:29%}.art-sticker{width:98px;height:98px;font-size:17px;bottom:25%;right:7%}.art-caption{left:13px;right:13px;bottom:12px;font-size:8px}
 .hero-info-strip{grid-template-columns:1fr 1fr}.hero-info-strip>div{padding-right:3px;margin-right:12px;min-height:94px}.hero-info-strip strong{font-size:10px}.hero-info-strip>div span{font-size:9px}
 .ticker{height:63px}.ticker-set{gap:20px;padding-right:20px}.ticker-track span{font-size:46px}
 .section-wrap{padding-top:68px;padding-bottom:76px}.section-topline{font-size:9px;letter-spacing:.08em}.section-topline span:last-child{max-width:45%}
 .display-heading,.intro-layout h2{font-size:clamp(68px,13.1vw,100px)}
 .intro-layout{padding-top:52px;gap:30px}.intro-aside p{font-size:16px}.intro-aside .spark-symbol{font-size:51px}
 .pillars{margin-top:55px;grid-template-columns:1fr}.pillars>div{min-height:0;padding:19px 0 22px}.pillars>div+div{border-left:none;border-top:1px solid var(--line);padding-left:0}.pillars h3{margin:12px 0 9px;font-size:49px}
 .section-heading-row{margin:50px 0 32px;display:block}.section-heading-row .section-tag{margin-bottom:20px}.section-heading-row>p{width:100%;margin-top:28px;max-width:460px}
 .program .display-heading,.games-heading .display-heading,.community-heading .display-heading,.social-heading .display-heading{font-size:clamp(70px,13.8vw,105px)}
 .filters{gap:7px}.filter{min-height:40px;padding:10px 12px;font-size:11px}
 .program-grid{grid-template-columns:1fr;gap:15px}.program-visual{height:260px}.program-content h3{font-size:64px;margin-top:25px}
 .program-note{align-items:flex-start;flex-wrap:wrap;gap:10px;padding:17px}.program-note p{flex-basis:calc(100% - 55px)}.program-note a{margin-left:36px}
 .feature-band{padding:22px var(--pad) 0}.feature-band-top{font-size:9px}.feature-band-grid{grid-template-columns:1fr}.feature-band-main{padding:58px 0}.feature-band-main h2{font-size:clamp(112px,23vw,175px);margin:25px 0}.feature-band-main>p{font-size:17px}.feature-band-side{border-left:none;border-top:1px solid rgba(255,255,255,.3);padding:30px 0 40px;display:grid;grid-template-columns:120px 1fr;gap:25px;align-items:center}.date-circle{width:120px}.date-circle span,.date-circle strong{font-size:60px}.date-details{margin:0;grid-template-columns:1fr;gap:7px;padding:0;border:0}.date-details strong{font-size:11px;margin-bottom:5px}
 .game-showcase{grid-template-columns:1fr}.game-showcase-art{min-height:350px;border-right:0;border-bottom:2px solid var(--ink)}.game-art-center{font-size:clamp(83px,18vw,120px)}.game-showcase-content{padding:50px 25px}.game-showcase-content h3{font-size:clamp(69px,13vw,110px);margin:25px 0}
 .stage-layout{grid-template-columns:1fr;padding-top:52px;gap:35px}.stage-layout .display-heading{font-size:clamp(88px,19vw,132px)}.stage-layout>div>p{font-size:16px;margin:26px 0}.stage-list{padding-top:15px}.stage-list>div{min-height:87px}.stage-list strong{font-size:38px}
 .developer-inner{padding:24px var(--pad) 35px}.developer-main{padding:54px 0 48px}.developer-main h2{font-size:clamp(75px,14vw,112px)}.developer-aside p{font-size:16px}.developer-benefits{grid-template-columns:1fr 1fr}.developer-benefits>span{font-size:27px;border-bottom:1px solid var(--ink);padding:20px 10px 20px 0}.developer-benefits>span:nth-child(3){border-left:none;padding-left:0}.developer-benefits>span+span{padding-left:10px}
 .community-grid{grid-template-columns:1fr 1fr;gap:9px}.community-grid>div,.community-grid>a{min-height:185px;padding:14px}.community-grid strong{font-size:28px}
 .social-grid{grid-template-columns:1fr}.social-card:last-child{grid-column:auto;display:flex}.social-card:last-child>.social-card-bottom{border-top:1.5px solid var(--ink);border-left:0;height:auto}.instagram-embed-shell{min-height:280px}.social-card-bottom{min-height:205px}.social-card-bottom strong{font-size:41px}.linkedin-word{font-size:120px}
 .contact-main{padding:23px var(--pad) 65px}.contact-small{margin-top:65px}.contact h2{font-size:clamp(105px,22vw,170px);margin-bottom:55px}.contact-bottom{display:block}.contact-bottom p{font-size:16px;margin-bottom:34px}.contact-mail{font-size:clamp(28px,7.4vw,45px);gap:8px}
 .site-footer{padding:55px var(--pad) 22px}.footer-top{gap:55px;padding-bottom:55px}.footer-brand strong{font-size:92px}.footer-nav{gap:18px;grid-template-columns:1fr 1fr}.footer-nav>div:last-child{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column;gap:18px}
}
@media(max-width:360px){.hero h1{font-size:61px}.program-content h3{font-size:55px}.community-grid strong{font-size:23px}.contact-mail{font-size:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ======================================
   MULTI-PAGE / SEARCH-READY REDESIGN
   ====================================== */
.primary-nav a[aria-current="page"]:not(.nav-cta){color:#ce3f2f;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}

/* Short, meaningful page entrances for each dedicated destination */
.page-hero{position:relative;display:flex;align-items:center;min-height:350px;padding:75px var(--pad) 80px;border-bottom:2px solid var(--ink);overflow:hidden;isolation:isolate}
.page-hero>div{position:relative;z-index:2;max-width:1040px}
.page-hero--orange{background:var(--orange)}
.page-hero--lilac{background:var(--lilac)}
.page-hero--acid{background:var(--acid)}
.page-eyebrow{display:block;margin-bottom:30px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
.page-hero h1{font:900 clamp(72px,9.3vw,143px)/.82 var(--heading);letter-spacing:-.048em;margin:0 0 32px;text-transform:uppercase;overflow-wrap:normal}
.page-hero h1 em{font-style:normal;color:var(--paper);-webkit-text-stroke:1.5px var(--ink)}
.page-hero p{margin:0;max-width:740px;font-size:clamp(16px,1.8vw,22px);font-weight:600;line-height:1.4}
.page-hero-symbol{position:absolute;right:6vw;top:50%;transform:translateY(-50%) rotate(-12deg);font:900 clamp(150px,26vw,430px)/1 var(--heading);opacity:.19;z-index:0;pointer-events:none}

/* Homepage ends after a small directory of deep-linked destinations and update strip */
.home-entry{padding-top:70px;padding-bottom:95px}
.home-intro{display:flex;align-items:end;gap:8%;justify-content:space-between;padding:56px 0 55px}
.home-intro h2{font:900 clamp(64px,8vw,124px)/.82 var(--heading);letter-spacing:-.04em;margin:0;max-width:840px}
.home-intro h2 em{font-style:normal;color:var(--orange)}
.home-intro p{max-width:340px;min-width:220px;font-size:17px;font-weight:600;line-height:1.5;margin:0 0 5px}
.path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.path-card{display:flex;flex-direction:column;justify-content:space-between;min-height:330px;padding:28px;border:1.5px solid var(--ink);transition:transform .18s,box-shadow .18s}
.path-card:hover{transform:translateY(-4px);box-shadow:6px 6px 0 var(--ink)}
.path-orange{background:var(--orange)}.path-lilac{background:var(--lilac)}.path-acid{background:var(--acid)}
.path-card>span{font-size:11px;font-weight:900;letter-spacing:.12em}
.path-card strong{font:900 clamp(52px,5.3vw,83px)/.83 var(--heading);letter-spacing:-.035em;position:relative;margin:15px 0}
.path-card strong span{position:absolute;top:0;right:0;font:900 46px/1 var(--heading)}
.path-card p{max-width:270px;line-height:1.4;font-size:14px;font-weight:700;margin:0}
.home-updates{background:var(--ink);color:var(--white);padding:75px var(--pad);display:flex;align-items:end;justify-content:space-between;gap:40px}
.home-updates>div:first-child{max-width:780px}
.home-updates>div>span{font-size:11px;font-weight:900;letter-spacing:.12em;color:var(--acid)}
.home-updates h2{font:900 clamp(64px,8vw,125px)/.84 var(--heading);letter-spacing:-.04em;margin:23px 0}
.home-updates h2 em{font-style:normal;color:var(--orange)}
.home-updates p{max-width:490px;font-size:16px;line-height:1.5;color:#dbddd8}
.home-update-actions{display:flex;flex-direction:column;align-items:flex-start;gap:24px;flex-shrink:0;padding-bottom:10px}
.update-link{border-bottom:1px solid var(--acid);padding-bottom:5px;text-transform:uppercase;color:var(--acid);font-size:13px;font-weight:900}

/* Friendly, concise, crawlable FAQ rather than a long one-page homepage */
.faq-block{background:var(--paper)}
.faq-heading{display:flex;gap:35px;align-items:end;justify-content:space-between;margin:45px 0}
.faq-heading h2{font:900 clamp(72px,10vw,138px)/.84 var(--heading);letter-spacing:-.04em;margin:0}
.faq-heading h2 em{font-style:normal;color:var(--orange)}
.faq-heading p{font-size:16px;line-height:1.45;font-weight:600;max-width:290px}
.faq-list{max-width:1100px;margin:auto}
.faq-list details{border-bottom:1px solid var(--ink);padding:0 5px}
.faq-list details:first-child{border-top:1px solid var(--ink)}
.faq-list summary{padding:27px 40px 27px 0;font-size:clamp(17px,2vw,23px);font-weight:800;cursor:pointer;position:relative;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';position:absolute;right:3px;top:22px;font:700 29px var(--heading)}
.faq-list details[open] summary::after{content:'−'}
.faq-list details p{color:#4d4e4a;line-height:1.7;font-size:16px;max-width:800px;margin:0 0 24px}
.faq-list a,.about-operator a{color:#c8432d;text-decoration:underline;text-underline-offset:3px}

/* Deeper developer-specific content */
.dev-steps{background:var(--white)}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.steps-grid article{background:var(--paper);border:1.5px solid var(--ink);padding:28px 25px 34px;min-height:285px;display:flex;flex-direction:column}
.steps-grid article:nth-child(2){background:var(--lilac)}
.steps-grid article:nth-child(3){background:var(--acid)}
.steps-grid article>span{font-size:11px;font-weight:900;letter-spacing:.12em}
.steps-grid h3{font:900 clamp(45px,5vw,72px)/.84 var(--heading);margin:30px 0 18px;letter-spacing:-.035em}
.steps-grid p{font-size:14px;line-height:1.5;margin-top:auto}
.developer-small-cta{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-top:25px}
.developer-small-cta p{max-width:640px;margin:0;color:#474942;font-size:14px;line-height:1.5}
.developer-small-cta .btn{flex-shrink:0}
.about-operator{display:flex;align-items:start;gap:8%;border-top:1px solid var(--line);padding:36px 0 0;margin-top:45px}
.about-operator strong{font:900 46px/.95 var(--heading);text-transform:uppercase;min-width:230px}
.about-operator p{max-width:710px;font-size:17px;line-height:1.6;margin:0}

/* Cookie choices and settings; tags must still be configured to honor consent in GTM */
.cookie-settings{border:0;background:none;color:inherit;font-size:11px;font-weight:700;padding:0;cursor:pointer}
.cookie-settings:hover{text-decoration:underline;color:var(--acid)}
.cookie-banner{position:fixed;z-index:300;bottom:18px;left:18px;right:18px;background:#fffefa;border:2px solid var(--ink);box-shadow:8px 8px 0 rgba(21,22,20,.6);padding:18px 20px;max-width:1050px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:26px}
.cookie-banner[hidden]{display:none!important}
.cookie-banner strong{font-size:16px}
.cookie-banner p{font-size:12px;line-height:1.5;max-width:470px;margin:7px 0 0}
.cookie-banner p a{text-decoration:underline}
.cookie-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex-shrink:0}
.cookie-actions button{background:transparent;border:1.5px solid var(--ink);padding:10px 11px;font:800 11px var(--body);text-transform:uppercase;white-space:nowrap}
.cookie-actions button:hover{background:var(--paper)}
.cookie-actions button.cookie-accept{background:var(--ink);color:var(--white)}
.cookie-actions button.cookie-accept:hover{background:#393b37}

@media(max-width:1100px){
 .home-intro{align-items:start;flex-direction:column;gap:24px}.home-intro p{max-width:650px}
 .path-card{min-height:290px;padding:20px}.path-card strong{font-size:clamp(45px,6vw,70px)}
 .home-updates{align-items:start;flex-direction:column}
}
@media(max-width:850px){
 .cookie-banner{display:block}.cookie-actions{margin-top:14px}
 .steps-grid{grid-template-columns:1fr 1fr}.steps-grid article:last-child{grid-column:1/-1;min-height:205px}
 .page-hero{min-height:330px;padding-top:65px;padding-bottom:65px}.page-hero h1{font-size:clamp(68px,11vw,105px)}
}
@media(max-width:650px){
 .page-hero{padding:55px var(--pad) 60px;min-height:auto}.page-hero h1{font-size:clamp(63px,12.5vw,93px)}.page-hero p{font-size:16px}.page-hero-symbol{right:-18vw;opacity:.11}
 .home-entry{padding-top:55px;padding-bottom:65px}.home-intro{padding:42px 0}.home-intro h2{font-size:clamp(61px,11.6vw,85px)}.home-intro p{min-width:0;font-size:15px}
 .path-grid{grid-template-columns:1fr;gap:12px}.path-card{min-height:205px;padding:20px}.path-card strong{font-size:66px}.path-card p{font-size:13px}
 .home-updates{padding:55px var(--pad)}.home-updates h2{font-size:clamp(62px,13vw,92px)}
 .faq-heading{display:block}.faq-heading p{margin-top:20px}.faq-heading h2{font-size:72px}.faq-list summary{padding:23px 40px 23px 0}.faq-list summary::after{top:18px}
 .steps-grid{grid-template-columns:1fr}.steps-grid article:last-child{grid-column:auto}.steps-grid article{min-height:220px}
 .developer-small-cta{align-items:start;flex-direction:column;gap:22px}
 .about-operator{flex-direction:column;gap:20px}.about-operator strong{font-size:38px;min-width:0}
 .cookie-banner{left:8px;right:8px;bottom:8px;padding:15px}.cookie-actions button{font-size:10px;padding:10px 8px}
}
/* External social embeds load only at a visitor's request */
.embed-optin{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0 0}
.embed-optin p{max-width:520px;margin:0;color:var(--muted);font-size:13px;line-height:1.6}
.embed-optin .btn{flex-shrink:0}
@media(max-width:650px){.embed-optin{display:block}.embed-optin .btn{margin-top:15px}}

/* Final typography guards: festival-scale type without lateral mobile scrolling. */
.hero-main>*{min-width:0}
.hero h1{font-size:clamp(70px,8vw,137px)}
.path-card{min-width:0}
.path-card strong{font-size:clamp(40px,4vw,66px)}
.footer-brand strong{display:block;max-width:100%;font-size:clamp(56px,7.4vw,112px);overflow-wrap:normal}
@media(max-width:960px){.hero h1{font-size:clamp(65px,11vw,101px)}}
@media(max-width:650px){
  .hero h1{font-size:clamp(45px,11.7vw,69px);white-space:normal}
  .hero-main,.hero-copy,.hero-art{min-width:0}
  .path-grid{grid-template-columns:minmax(0,1fr)}
  .path-card strong{font-size:clamp(45px,13vw,54px)}
  .footer-brand strong{font-size:clamp(54px,13vw,74px)}
  .hero-info-strip{min-width:0}
}
/* Protect every grid child from its min-content width on narrow screens. */
.stage-layout>*,.game-showcase>*,.community-grid>*,.steps-grid>*,.social-grid>*,.developer-benefits>*{min-width:0}
@media(max-width:650px){
  .stage-layout{grid-template-columns:minmax(0,1fr)}
  .stage-layout .display-heading{font-size:clamp(66px,16vw,102px)}
  .game-showcase{grid-template-columns:minmax(0,1fr)}
  .game-showcase-content h3{font-size:clamp(60px,11.5vw,85px)}
  .community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .community-grid strong{font-size:clamp(22px,6vw,29px)}
  .steps-grid{grid-template-columns:minmax(0,1fr)}
  .steps-grid h3{font-size:clamp(45px,11vw,60px)}
  .developer-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
  .developer-benefits>span{font-size:clamp(18px,5.4vw,25px);white-space:normal}
  .contact h2{font-size:clamp(58px,15vw,90px)}
  .linkedin-word{font-size:clamp(72px,22vw,102px)}
}
@media(max-width:650px){
  .program-content h3{font-size:clamp(42px,11.3vw,56px)}
  .stage-list>div{grid-template-columns:35px minmax(0,1fr) 19px;gap:8px}
  .stage-list strong{font-size:clamp(26px,7.8vw,32px);min-width:0}
  .developer-main h2{font-size:clamp(61px,13.3vw,88px)}
}
@media(max-width:650px){
  .steps-grid h3{font-size:clamp(33px,9.5vw,52px);overflow-wrap:anywhere}
}
@media (min-width:651px) and (max-width:960px){
  .game-showcase{grid-template-columns:minmax(0,1fr)}
  .game-showcase-art{min-height:400px;border-right:0;border-bottom:2px solid var(--ink)}
  .game-showcase-content{padding:50px}
  .game-showcase-content h3{font-size:clamp(77px,10vw,105px)}
  .pillars{grid-template-columns:minmax(0,1fr)}
  .pillars>div{min-width:0}
  .pillars>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}
}
@media(max-width:360px){
  .footer-brand strong{font-size:44px}
  .path-card strong{font-size:38px}
  .hero h1{font-size:41px}
  .program .display-heading{font-size:61px}
  .games-heading .display-heading{font-size:58px}
  .game-showcase-content h3{font-size:55px}
  .page-hero h1{font-size:60px}
}
@media(min-width:651px) and (max-width:960px){
  .program-content h3{font-size:clamp(38px,5.2vw,52px)}
}
@media(max-width:360px){
  .program .display-heading{font-size:55px}
  .game-showcase-content h3{font-size:49px}
  .developer-main h2{font-size:56px}
}
@media(min-width:651px) and (max-width:960px){
  .stage-list>div{grid-template-columns:45px minmax(0,1fr) 25px;gap:10px}
  .stage-list strong{min-width:0;font-size:clamp(29px,4.6vw,37px)}
}
/* Final alignment adjustments */
@media(min-width:961px){.hero h1{font-size:clamp(68px,7.6vw,130px)}}
@media(min-width:651px) and (max-width:960px){
  .stage-layout{grid-template-columns:minmax(0,1fr)}
}

/* ── Launch-ready additions: active community, partner pathways, and verified status ── */
.announcement a{color:var(--acid);text-underline-offset:2px}
.announcement a:hover{text-decoration:underline}
.home-social-preview{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);background:var(--lilac)}
.home-social-heading{padding:70px var(--pad)}
.home-social-heading>span,.home-social-links a>span:first-child{font-size:11px;letter-spacing:.12em;font-weight:900}
.home-social-heading h2{font:900 clamp(57px,6.3vw,106px)/.83 var(--heading);letter-spacing:-.04em;margin:35px 0 20px}
.home-social-heading h2 em,.community-next h2 em,.partner-outro h2 em{color:var(--orange);font-style:normal}
.home-social-heading p{font-weight:600;line-height:1.55;max-width:450px;margin-bottom:27px}
.home-social-links{display:flex;flex-direction:column;border-left:2px solid var(--ink);min-width:0}
.home-social-links a{display:flex;flex-direction:column;justify-content:space-between;flex:1;position:relative;padding:27px 70px 28px 34px;border-bottom:1.5px solid var(--ink);min-height:150px;transition:background .2s}
.home-social-links a:nth-child(1){background:var(--acid)}
.home-social-links a:nth-child(2){background:var(--orange)}
.home-social-links a:nth-child(3){background:var(--paper);border-bottom:0}
.home-social-links a:hover{background:var(--white)}
.home-social-links strong{font:900 clamp(30px,3.5vw,55px)/.92 var(--heading);overflow-wrap:anywhere;margin-top:16px}
.home-social-links a>span:last-child{position:absolute;right:28px;top:40%;font:900 35px/1 var(--heading)}
.embed-optin--top{padding:25px;background:var(--acid);border:1.5px solid var(--ink);margin-bottom:20px;align-items:center}
.embed-optin--top>div{max-width:650px}
.embed-optin--top strong{font:900 24px/.95 var(--heading);text-transform:uppercase}
.embed-optin--top p{margin:7px 0 0;color:#353831}
.embed-fallback{min-height:335px;background:#fffefa;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;text-align:center;padding:20px;font-family:var(--body);color:var(--ink)}
.embed-fallback-mark{font-size:55px;line-height:1}
.embed-fallback strong{font:900 34px/.95 var(--heading)}
.embed-fallback>span:nth-child(3){font-size:13px;font-weight:700;color:var(--muted)}
.embed-fallback a{margin-top:18px;border:1px solid var(--ink);padding:13px 17px;font:800 12px var(--body);text-transform:uppercase}
.embed-fallback a:hover{background:var(--acid)}
.instagram-embed-shell{align-items:stretch;padding:12px}
.instagram-embed-shell blockquote.instagram-media{flex:1;display:flex;align-items:stretch;justify-content:center}
.social-note{font-size:12px;color:var(--muted);line-height:1.55;margin:19px 0 0}
.community-next,.partner-outro{background:var(--ink);color:var(--white);padding:70px var(--pad);display:flex;align-items:end;justify-content:space-between;gap:50px}
.community-next>div,.partner-outro>div{max-width:930px}
.community-next>div>span,.partner-outro>div>span{color:var(--acid);font-size:11px;letter-spacing:.1em;font-weight:900}
.community-next h2,.partner-outro h2{font:900 clamp(60px,7.8vw,120px)/.86 var(--heading);letter-spacing:-.04em;margin:23px 0}
.community-next p,.partner-outro p{color:#ddd;line-height:1.5;max-width:540px}
.community-next .btn,.partner-outro .btn{flex:none}
/* Verified status is a purposeful information panel, not a countdown placeholder */
.feature-band-main .attend-title{font-size:clamp(84px,9vw,155px);line-height:.85;letter-spacing:-.055em}
.feature-band-main .attend-title em{color:var(--orange);font-style:normal}
.feature-band-side.attend-status{display:flex;flex-direction:column;align-items:flex-start;gap:15px;justify-content:center;padding-top:54px;padding-bottom:60px}
.event-status-pill{background:var(--acid);color:var(--ink);font-size:11px;font-weight:900;letter-spacing:.12em;padding:11px 14px}
.attend-status h3{font:900 clamp(40px,4vw,65px)/.88 var(--heading);margin:13px 0 0;letter-spacing:-.02em}
.attend-status p{color:#d0d0ca;font-size:15px;line-height:1.6}
.status-links{display:flex;gap:23px;flex-wrap:wrap}
.status-links a{border-bottom:1px solid var(--acid);font-size:12px;font-weight:800;text-transform:uppercase;padding-bottom:5px}
/* Real outreach actions with meaningful subject lines, no nonfunctional forms */
.contact-route-grid,.partner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.contact-route-grid a{min-width:0;display:flex;flex-direction:column;gap:22px;min-height:260px;padding:25px;border:1.5px solid var(--ink);background:var(--lilac);transition:background .2s,transform .2s}
.contact-route-grid a:nth-child(2){background:var(--orange)}
.contact-route-grid a:nth-child(3){background:var(--acid)}
.contact-route-grid a:nth-child(4){background:var(--blue)}
.contact-route-grid a:hover{transform:translateY(-5px);background:var(--white)}
.contact-route-grid a>span:first-child{font-size:11px;letter-spacing:.12em;font-weight:900}
.contact-route-grid strong{font:900 clamp(40px,5vw,72px)/.83 var(--heading);letter-spacing:-.025em;margin:auto 0}
.contact-route-grid a>span:last-child{font-size:12px;font-weight:800;border-top:1px solid var(--ink);padding-top:14px;text-transform:uppercase}
.contact-privacy-note{font-size:13px;color:var(--muted);line-height:1.55;margin:22px 0 0}
.contact-privacy-note a{font-weight:800;text-decoration:underline;text-underline-offset:3px}
.partner-intro{background:var(--paper)}
.partner-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.partner-pillars article{padding:27px;background:var(--blue);border:1.5px solid var(--ink);min-height:280px;display:flex;flex-direction:column}
.partner-pillars article:nth-child(2){background:var(--acid)}
.partner-pillars article:nth-child(3){background:var(--lilac)}
.partner-pillars article>span,.partner-grid article>span{font-size:11px;letter-spacing:.11em;font-weight:900}
.partner-pillars h3{font:900 clamp(45px,5vw,75px)/.84 var(--heading);margin:35px 0 16px;letter-spacing:-.04em}
.partner-pillars p{line-height:1.55;font-size:14px;margin:auto 0 0}
.partner-paths{background:var(--white)}
.partner-section-title{font:900 clamp(65px,9vw,135px)/.82 var(--heading);letter-spacing:-.04em;margin:58px 0 40px}
.partner-section-title em{color:var(--orange);font-style:normal}
.partner-grid article{min-width:0;display:flex;flex-direction:column;border:1.5px solid var(--ink);padding:25px;min-height:330px;background:var(--paper)}
.partner-grid article:nth-child(2){background:#f5e4da}
.partner-grid article:nth-child(3){background:#ebdefa}
.partner-grid article:nth-child(4){background:#d9eddf}
.partner-grid h3{font:900 clamp(42px,4vw,64px)/.85 var(--heading);margin:28px 0 15px}
.partner-grid p{font-size:14px;line-height:1.6;margin-bottom:23px}
.partner-grid a{margin-top:auto;border-top:1px solid var(--ink);padding-top:15px;text-transform:uppercase;font-size:12px;font-weight:900}
.partner-grid a:hover{text-decoration:underline}
@media(max-width:1100px){
 .home-social-preview{grid-template-columns:1fr 1fr}
 .home-social-heading{padding:55px var(--pad)}
 .home-social-links a{padding-left:24px;min-height:140px}
 .partner-pillars h3{font-size:clamp(40px,4.7vw,65px)}
}
/* Expanded navigation gets a mobile menu before it starts wrapping. */
@media(max-width:1190px) and (min-width:961px){
 html{scroll-padding-top:76px}
 .site-header{height:72px}
 .menu-toggle{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;appearance:none;background:transparent;border:1.5px solid var(--ink);height:43px;width:47px;z-index:104}
 .menu-toggle span{display:block;width:23px;height:2px;background:var(--ink);transition:transform .2s}
 .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}
 .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
 .primary-nav{display:none;position:absolute;top:72px;left:0;right:0;max-height:calc(100dvh - 72px);overflow-y:auto;background:var(--paper);border-bottom:2px solid var(--ink);padding:24px var(--pad) 30px;box-shadow:0 30px 40px rgba(0,0,0,.14);flex-direction:column;align-items:stretch;gap:0}
 .primary-nav.is-open{display:flex}
 .primary-nav>a{display:block;padding:16px 5px;border-bottom:1px solid var(--line);font-size:18px}
 .primary-nav .nav-cta{margin-top:18px;display:flex;justify-content:space-between;padding:18px}
}
@media(max-width:800px){
 .home-social-preview{grid-template-columns:1fr}
 .home-social-links{border-left:0;border-top:2px solid var(--ink)}
 .home-social-links a{min-height:115px}
 .community-next,.partner-outro{flex-direction:column;align-items:start;gap:15px}
 .partner-pillars{grid-template-columns:1fr}
 .partner-pillars article{min-height:180px}
 .partner-pillars h3{font-size:60px;margin:22px 0 17px}
 .feature-band-side.attend-status{padding:30px 0 45px}
}
@media(max-width:650px){
 .home-social-heading{padding:50px var(--pad)}
 .home-social-heading h2{font-size:clamp(53px,13vw,76px)}
 .home-social-links a{min-height:110px;padding:20px 54px 20px 20px}
 .home-social-links strong{font-size:36px}
 .home-social-links a>span:last-child{right:20px;font-size:24px}
 .embed-optin--top{display:flex;flex-direction:column;align-items:stretch;padding:20px}
 .embed-optin--top .btn{margin-top:0;max-width:100%}
 .instagram-embed-shell{min-height:345px}
 .embed-fallback{min-height:320px}
 .social-card-bottom{min-height:180px}
 .community-next,.partner-outro{padding:55px var(--pad)}
 .community-next h2,.partner-outro h2{font-size:clamp(56px,12vw,79px)}
 .feature-band-main .attend-title{font-size:clamp(72px,17vw,115px)}
 .attend-status h3{font-size:50px}
 .contact-route-grid,.partner-grid{grid-template-columns:1fr}
 .contact-route-grid a{min-height:210px}
 .contact-route-grid strong{font-size:clamp(46px,11vw,60px)}
 .partner-grid article{min-height:260px}
 .partner-section-title{font-size:clamp(62px,12vw,94px)}
 .partner-pillars h3{font-size:55px}
}
/* Clip purely decorative oversize arrow art; never clip actual content. */
html{overflow-x:clip}
@media(max-width:650px){
 .partner-section-title{font-size:clamp(52px,10.5vw,80px)}
 .partner-pillars article{min-width:0}
 .partner-grid article{min-width:0}
 .partner-section-title em{overflow-wrap:normal}
}
/* Keep the LinkedIn wordmark fully within its graphic at all widths. */
.linkedin-art .linkedin-word{font-size:clamp(70px,6.4vw,115px);left:7%;bottom:21%;letter-spacing:-.055em}
@media(max-width:650px){.linkedin-art .linkedin-word{font-size:clamp(68px,18vw,106px)}}
.copy-email{border:1.5px solid var(--ink);background:transparent;padding:12px 17px;margin-top:24px;text-transform:uppercase;font-size:12px;font-weight:900;display:inline-flex;align-items:center;gap:12px}
.copy-email:hover{background:var(--paper)}
.copy-email span{font-size:18px}

/* Keep the ticker readable without motion for visitors requesting reduced motion. */
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none!important;will-change:auto}}
