/* The public access page: floor, cities, feed and party, on the show's black and gold with the collage pink and green. */
:root{--pink:#e23a72;--moss:#16402f;--kraft:#c8a873}
.gate{margin:0;background:var(--sc-canvas);color:var(--sc-ink);font-family:var(--sc-font-text);line-height:1.5}
.gate *,.gate *::before,.gate *::after{box-sizing:border-box}
.gate img,.gate video{display:block;max-width:100%}
html{scroll-behavior:smooth;scroll-padding-top:72px}
.gate h1,.gate h2{font-family:var(--sc-font-display);font-weight:400;letter-spacing:-.015em;line-height:1.05;margin:0;text-wrap:balance}
.gate h1 em,.gate h2 em{color:var(--sc-accent);font-style:italic}
.gbar{position:fixed;z-index:30;inset:0 0 auto;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,3vw,40px);background:rgba(10,9,8,.86);backdrop-filter:blur(8px);border-bottom:1px solid rgba(246,240,226,.08)}
.gmark{font-family:var(--sc-font-display);font-size:1.3rem;color:var(--sc-ink);text-decoration:none}.gmark span{color:var(--sc-accent);font-style:italic;padding:0 2px}
.gbar nav{display:flex;align-items:center;gap:clamp(12px,2vw,26px)}.gbar nav a{color:var(--sc-ink);text-decoration:none;font-size:.86rem;min-height:44px;display:inline-flex;align-items:center}
.gbar .gbar__cta{color:var(--sc-accent);font-weight:600}
/* Hero */
.ghero{position:relative;display:grid;grid-template-columns:minmax(440px,46%) minmax(0,1fr);min-height:100vh;min-height:100svh;padding-top:60px}
.ghero__copy{position:relative;z-index:2;padding:clamp(20px,3.4vh,44px) clamp(20px,3.5vw,56px) 28px;display:flex;flex-direction:column;justify-content:center}
.ghero h1{font-size:clamp(2.3rem,1.2rem + 3.1vw,4.1rem)}
.ghero__sub{margin:14px 0 18px;max-width:46ch;color:var(--sc-ink-soft);font-size:1rem}
.gform{background:var(--ivory);color:var(--ivory-ink);padding:clamp(16px,2vw,24px);border-radius:2px;box-shadow:10px 10px 0 var(--pink);max-width:560px}
.gform h2{font-size:1.5rem;margin:0 0 8px}
.gform label{display:block;font-size:.78rem;font-weight:500;margin-top:9px}
.gform__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 12px;align-items:end}
.gform__row>label{min-width:0}
.gform{color-scheme:light}
.gform input{display:block;width:100%;min-width:0;box-sizing:border-box;-webkit-appearance:none;appearance:none;margin-top:4px;padding:10px 11px;background:#fffdf8;border:1px solid #bfb296;border-radius:2px;font:400 16px var(--sc-font-text);color:var(--ivory-ink)}
.gform input:focus-visible{outline:2px solid var(--gold-deep);outline-offset:1px}
.gform input[aria-invalid=true]{border-color:#a12b1c;box-shadow:inset 0 0 0 1px #a12b1c}
.gform__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.gbtn{display:inline-block;background:var(--ivory-ink);color:var(--ivory);border:0;border-radius:2px;font:600 1rem var(--sc-font-text);padding:14px 24px;margin-top:14px;cursor:pointer;text-decoration:none;width:100%;text-align:center}
.gbtn:hover{background:#3a2f1d}.gbtn:disabled{opacity:.6;cursor:default}
.gform__note{margin:9px 0 0;font-size:.76rem;line-height:1.4;color:var(--ivory-soft)}
.gform__err{margin:6px 0 0;font-size:.84rem;color:#a12b1c}.gform__err:empty{display:none}
.gdone{background:var(--ivory);color:var(--ivory-ink);padding:24px;box-shadow:10px 10px 0 var(--moss);max-width:560px;outline:0}.gdone[hidden]{display:none}
.gdone h2{font-size:1.9rem;margin:0 0 8px}.gdone p{margin:0;line-height:1.55}.gdone a{display:inline-block;margin-top:12px;color:var(--gold-deep);font-weight:600}
/* The moving wall */
.gwall{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;height:calc(100svh - 60px);overflow:hidden;position:sticky;top:60px;padding:0 8px 0 0;mask-image:linear-gradient(90deg,transparent,#000 7%)}
.gcol{overflow:hidden}.gtrack{display:flex;flex-direction:column;gap:8px;animation:gup 62s linear infinite;will-change:transform}
.gcol--b .gtrack{animation:gup 78s linear infinite reverse}.gcol--c .gtrack{animation-duration:54s}
.gtrack img{width:100%;height:auto;min-height:190px;object-fit:cover}
@keyframes gup{to{transform:translateY(-50%)}}
/* Floor */
.gfloor{position:relative;height:clamp(420px,86vh,860px);overflow:hidden}
.gfloor__bg{width:100%;height:100%;object-fit:cover}
.gfloor__over{position:absolute;inset:auto 0 0;padding:clamp(70px,14vh,150px) clamp(20px,5vw,72px) clamp(24px,5vh,56px);background:linear-gradient(transparent,rgba(10,9,8,.9) 62%)}
.gfloor blockquote{margin:0;font-family:var(--sc-font-display);font-style:italic;font-size:clamp(2.2rem,1.3rem + 4vw,5.4rem);line-height:1.04;max-width:17ch;text-wrap:balance}
.gfloor cite{display:block;margin-top:14px;font:400 .84rem var(--sc-font-text);color:var(--sc-ink-soft)}
.gstats{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,4vw,64px);padding:clamp(34px,6vw,70px) clamp(20px,5vw,72px)}
.gstats p{margin:0;font-size:.92rem;color:var(--sc-ink-soft);max-width:28ch;line-height:1.45}.gstats b{display:block;font-family:var(--sc-font-display);font-weight:400;color:var(--sc-accent);font-size:clamp(2.6rem,1.8rem + 3vw,4.6rem);line-height:1;margin-bottom:8px}
.gstrip{display:grid;grid-template-columns:1.25fr 1fr .78fr 1fr;gap:8px;padding:0 8px}
.gstrip figure{margin:0;height:clamp(240px,34vw,470px);overflow:hidden}.gstrip img{width:100%;height:100%;object-fit:cover}
/* Cities: the collage world */
.gcity{position:relative;margin-top:clamp(50px,8vw,100px);background:var(--kraft);color:#17130d;padding:clamp(44px,7vw,92px) clamp(20px,5vw,72px);overflow:hidden;clip-path:polygon(0 18px,7% 4px,19% 16px,33% 3px,48% 15px,62% 2px,77% 14px,90% 3px,100% 13px,100% calc(100% - 14px),91% calc(100% - 3px),76% calc(100% - 15px),60% calc(100% - 4px),44% calc(100% - 16px),28% calc(100% - 3px),13% calc(100% - 14px),0 calc(100% - 4px))}
.gcity__head{position:relative;z-index:2;display:grid;grid-template-columns:1.2fr 1fr;gap:20px clamp(20px,5vw,70px);align-items:end}
.gcity h2{font-size:clamp(2.5rem,1.5rem + 4vw,5.4rem)}.gcity h2 em{color:var(--pink)}
.gcity__head p{margin:0;font-size:1.02rem;line-height:1.5;max-width:40ch}
.gtix{position:relative;z-index:2;list-style:none;margin:clamp(26px,4vw,52px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,26px)}
.gtix li{background:#0f0d0b;color:var(--sc-ink);box-shadow:7px 7px 0 var(--moss)}.gtix li:nth-child(2){box-shadow:7px 7px 0 var(--pink)}
.gtix img{width:100%;height:clamp(190px,23vw,320px);object-fit:cover}.gtix div{padding:14px 16px 17px}
.gtix b{display:block;font-weight:600;font-size:1.02rem;line-height:1.25}.gtix span{display:block;margin-top:4px;font-size:.84rem;color:var(--sc-ink-soft)}
.gcity__scraps{display:flex;justify-content:center;gap:clamp(8px,2vw,26px);margin-top:clamp(26px,4vw,48px)}
.gcity__scraps img{width:clamp(96px,17vw,250px);box-shadow:0 8px 22px rgba(23,19,13,.32)}
.gcity__scraps img:nth-child(1){transform:rotate(-3deg)}.gcity__scraps img:nth-child(2){transform:rotate(2deg) translateY(10px)}.gcity__scraps img:nth-child(3){transform:rotate(-1.5deg)}
/* Feed */
.gfeed{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(24px,5vw,80px);align-items:center;padding:clamp(60px,9vw,120px) clamp(20px,5vw,72px)}
.gfeed h2{font-size:clamp(2.4rem,1.4rem + 3.4vw,4.8rem)}
.gfeed__head>p{margin:16px 0 0;color:var(--sc-ink-soft);max-width:38ch}
.gfeed__num{font-size:.92rem}.gfeed__num b{display:block;font-family:var(--sc-font-display);font-weight:400;color:var(--sc-accent);font-size:clamp(2.2rem,1.6rem + 2vw,3.6rem);line-height:1.05}
.gphones{display:grid;grid-template-columns:1fr 1.16fr 1fr;align-items:center;gap:clamp(6px,1.2vw,16px)}
.gphone{margin:0;background:#050505;border:1px solid #3a342b;border-radius:clamp(16px,2vw,28px);padding:clamp(5px,.6vw,9px);overflow:hidden}
.gphone img,.gphone video{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:clamp(11px,1.5vw,21px)}
.gphone--tilt-l{transform:rotate(-3deg)}.gphone--tilt-r{transform:rotate(3deg)}.gphone--main{position:relative;z-index:2;box-shadow:0 18px 50px rgba(0,0,0,.6);border-color:var(--sc-accent)}
/* Fun */
.gfun__big{position:relative;height:clamp(400px,92vh,900px);overflow:hidden}
.gfun__big img{width:100%;height:100%;object-fit:cover}
.gfun__big h2{position:absolute;left:clamp(20px,5vw,72px);bottom:clamp(20px,6vh,60px);font-size:clamp(3.2rem,2rem + 7vw,9rem);text-shadow:0 2px 34px rgba(0,0,0,.75)}
.gfun__big::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(10,9,8,.8))}.gfun__big h2{z-index:1}
.gfun__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:8px}
.gfun__grid figure{margin:0;height:clamp(220px,27vw,400px);overflow:hidden}.gfun__grid img{width:100%;height:100%;object-fit:cover}
/* End */
.gend{text-align:center;padding:clamp(70px,11vw,150px) 20px}
.gend h2{font-size:clamp(2.7rem,1.6rem + 4.6vw,6.4rem);max-width:15ch;margin:0 auto}
.gbtn--big{width:auto;background:var(--sc-accent);color:var(--sc-accent-ink);margin-top:clamp(22px,3vw,34px);padding:18px 40px;font-size:1.08rem}.gbtn--big:hover{background:#ecc562}
.gend p{margin:18px auto 0;color:var(--sc-ink-soft);font-size:.86rem}
.gfoot{display:flex;flex-wrap:wrap;gap:6px 22px;justify-content:center;align-items:center;padding:18px 16px 26px;font-size:.8rem;color:var(--sc-ink-soft);border-top:1px solid rgba(246,240,226,.1)}.gfoot a{color:inherit;min-height:32px;display:inline-flex;align-items:center}
.gfloat{display:none}
@media (max-width:1000px){
  .ghero{grid-template-columns:1fr;min-height:0}
  .ghero__copy{order:2;padding:0 16px 34px}
  .gwall{order:1;position:relative;top:0;height:34svh;min-height:190px;grid-template-columns:repeat(3,1fr);padding:0;mask-image:linear-gradient(transparent 70%,var(--sc-canvas)),linear-gradient(#000,#000);mask-image:linear-gradient(#000 74%,transparent)}
  .ghero h1{font-size:clamp(2.3rem,1.5rem + 4vw,3.4rem)}
  .gform{box-shadow:6px 6px 0 var(--pink);max-width:none}.gdone{max-width:none}
  .gstrip{grid-template-columns:1fr 1fr}.gstrip figure{height:44vw}
  .gcity__head,.gfeed{grid-template-columns:1fr}.gtix{grid-template-columns:1fr}.gtix img{height:52vw;max-height:340px}
  .gphones{max-width:560px;margin:0 auto;width:100%}
  .gfun__grid{grid-template-columns:1fr 1fr}.gfun__grid figure{height:46vw}
  .gfloat{position:fixed;z-index:25;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));display:block;padding:15px;background:var(--sc-accent);color:var(--sc-accent-ink);font-weight:600;text-align:center;text-decoration:none;border-radius:2px;box-shadow:0 8px 24px rgba(0,0,0,.45)}.gfloat[hidden]{display:none}
}
@media (max-width:520px){.gstats{grid-template-columns:1fr}}
@media (max-width:340px){.gform__row{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.gtrack{animation:none!important}html{scroll-behavior:auto}}
/* Short laptop screens: keep the whole form, button included, on the first screen. */
@media (min-width:1001px) and (max-height:860px){
  .ghero__copy{padding-top:12px;padding-bottom:12px}
  .ghero h1{font-size:clamp(2rem,1.2rem + 1.9vw,2.9rem)}
  .ghero__sub{margin:8px 0 10px;font-size:.9rem}
  .gform{padding:12px 16px}.gform h2{font-size:1.25rem;margin-bottom:2px}
  .gform label{margin-top:5px;font-size:.74rem}.gform input{padding:7px 10px;margin-top:2px}
  .gbtn{margin-top:9px;padding:11px 20px}.gform__note{margin-top:6px}
}
