/* Local concept refinement, 6 September 2026. Keeps the 2.2 visual identity. */
.gg-skip { position:fixed; top:12px; left:12px; z-index:100; padding:14px 20px; background:#fff; color:#07080c; transform:translateY(-160%); }
.gg-skip:focus { transform:translateY(0); }
.gg22 :focus-visible { outline:3px solid var(--blue); outline-offset:5px; }
.gg22 [id] { scroll-margin-top:24px; }
.gg22-hero-bar>a,.gg22-ticket>a,.gg22-end>a { font-size:.875rem; white-space:normal; line-height:1.5; }
.gg22-ticket small { font-size:.875rem; color:#b9c1cc; line-height:1.65; }
.gg22-ticket>span,.gg22 .section-label { font-size:.875rem; line-height:1.6; }
.gg22-facts { margin:26px 0; border-top:1px solid var(--line); }
.gg22-facts>div { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 20px; padding:16px 0; border-bottom:1px solid var(--line); }
.gg22-facts dt { color:var(--muted); }
.gg22-facts dd { margin:0; color:var(--blue); font-weight:600; }
.gg22-questions { max-width:1160px; padding:0 24px 90px; margin:auto; }
.gg22-questions h2 { font:600 clamp(2rem,4vw,3.5rem)/1.15 "Space Grotesk",sans-serif; letter-spacing:-.04em; margin:16px 0 32px; }
.gg22-questions details { border-top:1px solid var(--line); }
.gg22-questions details:last-child { border-bottom:1px solid var(--line); }
.gg22-questions summary { cursor:pointer; padding:24px 0; font-size:1.125rem; font-weight:600; line-height:1.5; }
.gg22-questions p { max-width:760px; margin:0 0 24px; font-size:1rem; line-height:1.8; color:var(--muted); }
.gg22-questions p a { text-decoration:underline; text-underline-offset:4px; color:var(--blue); }
.gg22 .gg-nav { height:auto; min-height:76px; flex-wrap:wrap; padding-block:16px; gap:16px 24px; }
.gg22 .gg-brand { max-width:45%; }
.gg22 .gg-back { font-size:.875rem; white-space:normal; }
@media (min-width:801px) and (max-width:1100px) {
 .gg22-membership { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; }
 .gg22-steps article { grid-template-columns:32px 1fr; }
 .gg22-steps span { grid-column:2; }
}
@media (max-width:800px) {
 .gg22-ticket { min-width:0; }
 .gg22-hero-bar>a { max-width:100%; }
}


/* LC 2.2 — official GuitarGym logo lockups */
.gg22-hero-brand{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.gg22-brand-logo{display:block;width:clamp(118px,12vw,190px);height:auto;filter:drop-shadow(0 8px 20px rgba(0,0,0,.36))}
.gg22-hero-brand>span{white-space:nowrap}
.gg22-ticket-logo{display:block;width:min(100%,310px);height:auto;margin:22px 0 18px;filter:drop-shadow(0 10px 26px rgba(0,0,0,.35))}
@media(max-width:800px){
  .gg22-hero-brand{gap:10px}
  .gg22-brand-logo{width:150px}
  .gg22-ticket-logo{width:min(92%,290px)}
}

/* LC 2.3 — trailer + confirmed weekly schedule */
.gg22-trailer{max-width:1440px;margin:0 auto;padding:clamp(80px,9vw,130px) clamp(24px,6vw,96px) clamp(100px,11vw,160px);display:grid;grid-template-columns:minmax(260px,.55fr) minmax(0,1.45fr);gap:clamp(36px,6vw,90px);align-items:center}
.gg22-trailer-head h2{margin:14px 0 24px;font:600 clamp(44px,5vw,78px)/.9 "Space Grotesk";letter-spacing:-.06em}.gg22-trailer-head h2 em{font-family:"Newsreader";font-weight:500;color:var(--pink)}.gg22-trailer-head>p:last-child{color:var(--muted);font-size:clamp(16px,1.3vw,20px);line-height:1.7}.gg22-video-frame{position:relative;background:#030405;border:1px solid rgba(80,216,255,.24);box-shadow:0 30px 90px rgba(0,0,0,.5),0 0 50px rgba(80,216,255,.05);overflow:hidden}.gg22-video-frame:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}.gg22-video-frame video{display:block;width:100%;height:auto;aspect-ratio:4096/2160;background:#000}
@media(max-width:800px){.gg22-trailer{grid-template-columns:1fr;padding-top:70px}.gg22-trailer-head h2{font-size:clamp(42px,13vw,64px)}}

/* LC 2.12.1 HOTFIX — Trailer Transmission visibility */
.gg22-video-frame.gg212-transmission{
  overflow:visible !important;
  isolation:isolate;
  position:relative;
}
.gg22-video-frame.gg212-transmission video{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
}
.gg22-video-frame.gg212-transmission:before{
  z-index:3;
  pointer-events:none;
}
.gg212-transmission-id,
.gg212-transmission-time,
.gg212-corner,
.gg212-levels,
.gg22-video-frame.gg212-transmission .gg26-meter{
  z-index:6 !important;
}
.gg212-transmission-id,
.gg212-transmission-time{
  display:block !important;
  opacity:.78;
}
.gg212-corner{display:block !important;opacity:.82}
.gg212-levels{display:flex !important;opacity:.46}
.gg22-trailer.gg26-in .gg212-transmission-id,
.gg22-trailer.gg26-in .gg212-transmission-time{opacity:1}
.gg22-trailer.gg26-in .gg212-transmission:before{
  opacity:1 !important;
  filter:drop-shadow(0 0 7px rgba(80,216,255,.12));
}
.gg22-trailer:after{
  content:"REAL PRACTICE / REAL PEOPLE / REAL PROGRESS";
  position:absolute;
  right:4.2vw;
  bottom:2.2vw;
  color:rgba(255,255,255,.08);
  font:600 8px/1 "Space Grotesk";
  letter-spacing:.22em;
  text-transform:uppercase;
  pointer-events:none;
}
@media (max-width:1280px){
  .gg212-transmission-id,.gg212-transmission-time,.gg212-corner,.gg212-levels{display:none !important}
  .gg22-video-frame.gg212-transmission{overflow:hidden !important}
  .gg22-trailer:after{display:none}
}

/* LC 2.13 — Hero editorial polish (from LC 2.12.2 master)
   Scope: desktop hero logo + headline/CTA composition only. */
@media (min-width:1281px){
  /* Requested: GuitarGym brush mark at 2x the previous desktop scale. */
  .gg271-hero-logo{
    width:clamp(470px,29vw,630px) !important;
    left:clamp(48px,5.2vw,104px);
    top:clamp(28px,3.8vh,48px);
    filter:drop-shadow(0 12px 28px rgba(0,0,0,.68));
  }

  /* Calm local contrast behind the editorial message, without changing the photo. */
  .gg22-hero-bar::before{
    content:"";
    position:absolute;
    z-index:-1;
    left:-34px;
    top:-34px;
    width:min(650px,43vw);
    height:calc(100% + 68px);
    pointer-events:none;
    background:radial-gradient(ellipse at 32% 54%,rgba(5,6,9,.48),rgba(5,6,9,.22) 48%,transparent 76%);
    filter:blur(2px);
  }
  .gg22-hero-bar{
    width:clamp(430px,34vw,620px);
    gap:17px;
    bottom:clamp(42px,5.8vh,70px);
  }
  .gg22-hero-bar>div{gap:6px}
  .gg22-hero-bar>div>span{
    margin-bottom:1px;
    opacity:.96;
  }
  .gg22-hero-bar strong{
    max-width:620px;
    font-size:clamp(42px,3.55vw,62px);
    line-height:.92;
    letter-spacing:-.045em;
  }
  .gg22-hero-bar strong .gg213-line1,
  .gg22-hero-bar strong .gg213-line2{
    display:block;
    white-space:nowrap;
  }
  .gg22-hero-bar strong .gg213-line1{color:#fff}
  .gg22-hero-bar strong .gg213-line2{
    margin-top:4px;
    font-family:"Newsreader";
    font-weight:500;
    color:var(--blue);
  }
  .gg22-hero-bar>a{
    padding:13px 18px;
    font-size:.78rem;
    border-color:rgba(80,216,255,.42);
    background:rgba(5,6,9,.48);
    box-shadow:0 10px 30px rgba(0,0,0,.24),0 0 22px rgba(80,216,255,.045);
    transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;
  }
  .gg22-hero-bar>a:hover,.gg22-hero-bar>a:focus-visible{
    transform:translateY(-2px);
    border-color:rgba(80,216,255,.86);
    background:linear-gradient(90deg,rgba(80,216,255,.11),rgba(255,78,184,.07));
    box-shadow:0 14px 34px rgba(0,0,0,.3),0 0 26px rgba(80,216,255,.08);
  }
}
@media (min-width:1281px) and (max-height:760px){
  .gg271-hero-logo{width:clamp(400px,25vw,540px) !important;top:22px}
  .gg22-hero-bar{bottom:26px;gap:12px}
  .gg22-hero-bar strong{font-size:clamp(36px,3.05vw,52px)}
}

/* ============================================================
   LC 2.13.1 — HERO COPY SCALE HOTFIX
   Fixes the nested span inheriting the generic 10px hero-label rule.
   Keeps the LC2.13 composition, but restores the intended editorial impact.
   ============================================================ */
@media (min-width:1281px){
  .gg22-hero-bar{
    width:clamp(500px,38vw,700px);
    gap:20px;
  }
  .gg22-hero-bar>div{
    gap:8px;
  }
  .gg22-hero-bar>div>span{
    font-size:clamp(11px,.72vw,13px);
    letter-spacing:.24em;
  }
  .gg22-hero-bar strong{
    max-width:700px;
    font-size:clamp(50px,4.15vw,74px);
    line-height:.91;
    letter-spacing:-.048em;
  }
  .gg22-hero-bar strong .gg213-line1,
  .gg22-hero-bar strong .gg213-line2{
    font-size:inherit !important;
    letter-spacing:inherit;
    line-height:inherit;
  }
  .gg22-hero-bar strong .gg213-line2{
    font-size:1.08em !important;
    margin-top:6px;
  }
  .gg22-hero-bar>a{
    padding:15px 21px;
    font-size:.88rem;
    letter-spacing:.13em;
  }
}
@media (min-width:1281px) and (max-height:760px){
  .gg22-hero-bar{width:clamp(450px,35vw,620px);gap:15px}
  .gg22-hero-bar strong{font-size:clamp(43px,3.55vw,61px)}
  .gg22-hero-bar>a{padding:13px 18px;font-size:.82rem}
}

/* ============================================================
   LC 2.14.1 — MOBILE MOTION & COMPOSITION HOTFIX
   Phone/tablet only. Desktop is intentionally untouched.
   ============================================================ */
@media (max-width:800px){
  /* Compact navigation while preserving the approved brand treatment. */
  .gg-nav{height:64px!important;padding:0 14px!important;gap:10px!important}
  .gg-nav .gg-brand-mainmatch{width:min(172px,45vw)!important}
  .gg-back{font-size:7px!important;letter-spacing:.10em!important;padding:7px 8px!important}

  /* Hero: treat copy as one intentional mobile lockup. */
  .gg22-hero-bar{padding:22px 18px 28px!important;gap:15px!important}
  .gg22-hero-bar>div{gap:7px!important;width:100%}
  .gg22-hero-bar>div>span{font-size:10px!important;letter-spacing:.20em!important}
  .gg22-hero-bar strong{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:baseline!important;
    gap:.12em!important;
    font-size:clamp(38px,11vw,54px)!important;
    line-height:.92!important;
    letter-spacing:-.045em!important;
  }
  .gg22-hero-bar strong .gg213-line1,
  .gg22-hero-bar strong .gg213-line2{
    display:inline!important;
    font-size:inherit!important;
    line-height:inherit!important;
    letter-spacing:inherit!important;
    white-space:normal!important;
    margin:0!important;
  }
  .gg22-hero-bar strong .gg213-line1{color:#fff!important}
  .gg22-hero-bar strong .gg213-line2{color:var(--blue)!important;font-family:"Newsreader"!important;font-weight:500!important}
  .gg22-hero-bar>a{padding:12px 14px!important;font-size:10px!important;letter-spacing:.12em!important}

  /* Pull sections together: desktop negative space was too large on phones. */
  .gg22-trailer{padding-top:58px!important;padding-bottom:70px!important;gap:30px!important}
  .gg22-intro{padding-top:64px!important;padding-bottom:72px!important}
  .gg22-session{padding-bottom:76px!important;gap:42px!important}
  .gg22-membership{padding-top:76px!important;padding-bottom:78px!important;gap:36px!important}
  .gg22-questions{padding-top:24px!important;padding-bottom:68px!important}
  .gg22-end{padding-top:72px!important;padding-bottom:78px!important}
  .gg22-end h2{margin:20px auto 30px!important;font-size:clamp(64px,18vw,92px)!important}
  .gg22-end>a{padding:13px 12px!important;font-size:10px!important;letter-spacing:.10em!important}

  /* Restore the Transmission identity around the trailer instead of hiding it. */
  .gg22-video-frame.gg212-transmission{overflow:visible!important;margin-top:20px}
  .gg212-transmission-id,.gg212-transmission-time{display:block!important;top:-20px!important;font-size:6px!important;letter-spacing:.14em!important;opacity:.62!important}
  .gg212-transmission-id{left:0!important}
  .gg212-transmission-time{right:0!important}
  .gg212-corner{display:block!important;width:4px!important;height:4px!important;opacity:.60!important}
  .gg212-c1{left:-7px!important;top:-7px!important}.gg212-c2{right:-7px!important;top:-7px!important}.gg212-c3{left:-7px!important;bottom:-7px!important}.gg212-c4{right:-7px!important;bottom:-7px!important}
  .gg212-levels{display:flex!important;top:-21px!important;left:calc(50% - 12px)!important;width:24px!important;height:7px!important;gap:2px!important;opacity:.38!important}
  .gg212-transmission:before{
    inset:-6px!important;
    opacity:.66!important;
    transform:scale(.99)!important;
  }
  .gg22-trailer.gg26-in .gg212-transmission:before{opacity:.92!important;transform:scale(1)!important}
  .gg22-video-frame .gg26-meter{display:block!important;left:0!important;right:0!important;bottom:-9px!important}

  /* A subtle moving signal line gives black space life without adding clutter. */
  .gg22-trailer:before{
    display:block!important;
    z-index:0!important;
    left:18px!important;
    right:18px!important;
    top:auto!important;
    bottom:26px!important;
    height:1px!important;
    opacity:.30!important;
    transform:scaleX(.25)!important;
  }
  .gg22-trailer.gg26-in:before{transform:scaleX(1)!important;opacity:.58!important}
}

@media (max-width:430px){
  .gg-nav .gg-brand-mainmatch{width:min(158px,44vw)!important}
  .gg22-hero-bar{padding-left:16px!important;padding-right:16px!important}
  .gg22-hero-bar strong{font-size:clamp(35px,10.5vw,45px)!important}
  .gg22-trailer{padding-top:52px!important;padding-bottom:62px!important}
  .gg22-questions{padding-bottom:58px!important}
  .gg22-end{padding-top:64px!important;padding-bottom:68px!important}
}

@media (max-width:800px) and (prefers-reduced-motion:no-preference){
  .gg212-transmission.gg26-playing .gg212-levels{opacity:.82!important}
  .gg212-transmission.gg26-playing .gg212-levels i:nth-child(1){animation:gg212Level .62s ease-in-out infinite alternate!important}
  .gg212-transmission.gg26-playing .gg212-levels i:nth-child(2){animation:gg212Level .42s ease-in-out -.18s infinite alternate!important}
  .gg212-transmission.gg26-playing .gg212-levels i:nth-child(3){animation:gg212Level .78s ease-in-out -.3s infinite alternate!important}
  .gg22-video-frame.gg26-playing .gg26-meter:after{animation:gg26Meter 1.65s linear infinite!important;opacity:.75!important}
}

/* ============================================================
   LC 2.14.2 — MOBILE SIGNAL EXPERIENCE
   A dedicated cyan/pink living Signal for phones/tablets.
   Desktop rails remain exactly as approved.
   ============================================================ */
.gg-mobile-signal{display:none}
@media (max-width:800px){
  .gg-mobile-signal{
    display:block;
    position:fixed;
    z-index:8;
    right:2px;
    top:64px;
    width:38px;
    height:calc(100dvh - 64px);
    pointer-events:none;
    overflow:visible;
    opacity:.72;
    mix-blend-mode:screen;
    filter:drop-shadow(0 0 10px rgba(80,216,255,.11));
  }
  .gg-mobile-signal path{fill:none;vector-effect:non-scaling-stroke}
  .gg-mobile-signal-bed{stroke:rgba(255,255,255,.07);stroke-width:.85}
  .gg-mobile-signal-live{
    stroke:url(#ggMobileSignalGradient);
    stroke-width:1.4;
    stroke-linecap:round;
    filter:drop-shadow(0 0 5px rgba(80,216,255,.40));
  }
  .gg-mobile-signal-spark{
    stroke:#ff66b8;
    stroke-width:1.05;
    stroke-linecap:round;
    stroke-dasharray:2 21;
    opacity:.9;
    filter:drop-shadow(0 0 5px rgba(255,47,159,.58));
  }
  .gg-mobile-signal-node{
    fill:#8cecff;
    filter:drop-shadow(0 0 8px rgba(80,216,255,.8));
  }
}
@media (max-width:800px) and (prefers-reduced-motion:no-preference){
  .gg-mobile-signal-spark{animation:gg2142SignalFlow 6.2s linear infinite}
  .gg-mobile-signal-node{animation:gg2142SignalNode 2.1s ease-in-out infinite}
}
@keyframes gg2142SignalFlow{to{stroke-dashoffset:-230}}
@keyframes gg2142SignalNode{50%{r:3.1;opacity:.55}}
@media (max-width:430px){
  .gg-mobile-signal{width:32px;opacity:.68}
}
@media (prefers-reduced-motion:reduce){
  .gg-mobile-signal-spark{animation:none!important}
  .gg-mobile-signal-node{animation:none!important}
}

/* ============================================================
   LC 2.14.3 — MOBILE GUITARGYM SIGNAL VISIBILITY HOTFIX
   Makes the mobile Signal unmistakably visible and alive on iOS
   without changing the approved desktop rails.
   ============================================================ */
@media (max-width:800px){
  .gg-mobile-signal{
    display:block!important;
    right:5px!important;
    top:62px!important;
    width:48px!important;
    height:calc(100dvh - 66px)!important;
    z-index:60!important;
    opacity:.96!important;
    mix-blend-mode:screen;
    filter:drop-shadow(0 0 8px rgba(80,216,255,.32)) drop-shadow(0 0 15px rgba(255,47,159,.14))!important;
  }
  .gg-mobile-signal-bed{
    stroke:rgba(130,226,255,.18)!important;
    stroke-width:1.15!important;
  }
  .gg-mobile-signal-live{
    stroke:url(#ggMobileSignalGradient)!important;
    stroke-width:2.25!important;
    stroke-linecap:round!important;
    opacity:1!important;
    filter:drop-shadow(0 0 4px rgba(80,216,255,.9)) drop-shadow(0 0 9px rgba(255,47,159,.38))!important;
  }
  .gg-mobile-signal-spark{
    stroke:#ff4daf!important;
    stroke-width:2.45!important;
    stroke-linecap:round!important;
    stroke-dasharray:34 92!important;
    opacity:1!important;
    filter:drop-shadow(0 0 4px rgba(255,47,159,1)) drop-shadow(0 0 10px rgba(255,47,159,.72))!important;
  }
  .gg-mobile-signal-node{
    r:3.2;
    fill:#dffcff!important;
    stroke:#50d8ff;
    stroke-width:.75;
    opacity:1!important;
    filter:drop-shadow(0 0 5px rgba(80,216,255,1)) drop-shadow(0 0 11px rgba(255,47,159,.55))!important;
  }
}
@media (max-width:800px) and (prefers-reduced-motion:no-preference){
  .gg-mobile-signal-spark{animation:gg2143SignalTravel 3.15s linear infinite!important}
  .gg-mobile-signal-live{animation:gg2143SignalBreathe 2.6s ease-in-out infinite!important}
  .gg-mobile-signal-node{animation:gg2143NodePulse 1.7s ease-in-out infinite!important}
}
@keyframes gg2143SignalTravel{to{stroke-dashoffset:-252}}
@keyframes gg2143SignalBreathe{0%,100%{opacity:.68}50%{opacity:1}}
@keyframes gg2143NodePulse{0%,100%{opacity:.7}50%{opacity:1;filter:drop-shadow(0 0 7px rgba(80,216,255,1)) drop-shadow(0 0 15px rgba(255,47,159,.9))}}
@media (max-width:430px){
  .gg-mobile-signal{width:43px!important;right:3px!important}
}


/* LC2.15 — Tim feedback integration */
.gg215-aspiration{position:relative;overflow:hidden;min-height:42vh;display:grid;place-content:center;text-align:center;padding:clamp(5rem,10vw,9rem) 1.5rem;background:radial-gradient(circle at 68% 55%,rgba(255,47,159,.12),transparent 30%),radial-gradient(circle at 34% 45%,rgba(80,216,255,.08),transparent 28%),#07080c;border-block:1px solid rgba(255,255,255,.08)}
.gg215-aspiration:before{content:"";position:absolute;inset:50% 8% auto;height:1px;background:linear-gradient(90deg,transparent,rgba(80,216,255,.65),rgba(255,255,255,.8),rgba(255,47,159,.65),transparent);box-shadow:0 0 22px rgba(80,216,255,.25)}
.gg215-aspiration span,.gg215-aspiration strong{position:relative;z-index:1;font-family:"Space Grotesk",sans-serif;line-height:.86;letter-spacing:-.055em;text-transform:uppercase}
.gg215-aspiration span{font-size:clamp(2.5rem,7vw,7.2rem);color:rgba(255,255,255,.28);font-weight:600}
.gg215-aspiration i{position:relative;z-index:2;display:block;margin:.55rem 0;font-family:"Newsreader",serif;font-size:clamp(1.3rem,2.3vw,2.5rem);color:#fff;font-weight:500}
.gg215-aspiration strong{font-size:clamp(3.5rem,9vw,9.5rem);color:#fff;text-shadow:-5px 0 28px rgba(80,216,255,.32),5px 0 34px rgba(255,47,159,.38)}
.gg215-habit{display:block;margin-top:.35rem;color:#fff;font-style:normal;font-weight:600}
.gg215-protocol{margin:1.5rem 0 2.25rem;padding:1.35rem 1.5rem;border:1px solid rgba(80,216,255,.25);background:linear-gradient(115deg,rgba(80,216,255,.06),rgba(255,47,159,.055));box-shadow:inset 3px 0 0 #50d8ff,inset -3px 0 0 #ff2f9f}
.gg215-protocol>span{display:block;margin-bottom:.7rem;font:600 .7rem/1 "Space Grotesk",sans-serif;letter-spacing:.18em;color:rgba(255,255,255,.55)}
.gg215-protocol strong{display:block;font:700 clamp(1.25rem,2.5vw,2rem)/1 "Space Grotesk",sans-serif;letter-spacing:.025em;color:#fff}.gg215-protocol strong em{font-style:normal;color:#50d8ff;text-shadow:0 0 16px rgba(80,216,255,.45)}
.gg215-protocol p{max-width:720px;margin:.7rem 0 0;color:rgba(255,255,255,.72)}
@media(max-width:700px){.gg215-aspiration{min-height:34vh;padding:4.5rem 1rem}.gg215-protocol{padding:1.1rem 1rem}.gg215-protocol strong{line-height:1.12}}


/* LC2.16 / MVP11 — Connected GuitarGym member access */
.gg-member-actions{display:flex;align-items:center;gap:12px}.gg-login-trigger,.gg-ticket-login,.gg-member-access-button{font:700 11px/1 'Space Grotesk',sans-serif;letter-spacing:.11em;text-transform:uppercase;cursor:pointer}.gg-login-trigger{border:1px solid rgba(80,216,255,.42);background:rgba(4,13,22,.66);color:#fff;padding:12px 16px;box-shadow:inset 0 0 0 1px rgba(255,47,159,.08),0 0 24px rgba(80,216,255,.06)}.gg-login-trigger:hover,.gg-login-trigger.is-authenticated{border-color:#50d8ff;background:rgba(80,216,255,.1)}.gg-ticket-login{width:100%;margin-top:9px;padding:13px 14px;border:1px solid rgba(255,255,255,.18);background:transparent;color:#fff}.gg-ticket-login:hover{border-color:#ff2f9f;color:#fff}.gg-member-access{margin:0 auto;max-width:1180px;padding:32px 34px;display:flex;justify-content:space-between;align-items:center;gap:30px;border:1px solid rgba(80,216,255,.24);border-left:3px solid #50d8ff;background:radial-gradient(circle at 85% 20%,rgba(255,47,159,.10),transparent 36%),rgba(8,11,18,.78)}.gg-member-access h2{font:600 clamp(30px,4vw,52px)/.98 'Space Grotesk',sans-serif;margin:5px 0 10px}.gg-member-access p:not(.section-label){max-width:690px;color:rgba(255,255,255,.68)}.gg-member-access-button{flex:none;border:1px solid #50d8ff;background:#50d8ff;color:#061019;padding:18px 22px;min-width:205px}.gg-member-access-button:hover{background:#ff2f9f;border-color:#ff2f9f;color:#fff}.gg-login-overlay[hidden]{display:none}.gg-login-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px;background:rgba(1,4,9,.88);backdrop-filter:blur(16px)}body.gg-login-open{overflow:hidden}.gg-login-card{width:min(560px,100%);position:relative;padding:34px;border:1px solid rgba(80,216,255,.35);background:radial-gradient(circle at 90% 6%,rgba(255,47,159,.17),transparent 29%),linear-gradient(145deg,#080b12,#0b1420 63%,#100816);box-shadow:0 35px 100px rgba(0,0,0,.65),0 0 70px rgba(80,216,255,.08)}.gg-login-card:before{content:'';position:absolute;left:0;top:0;width:5px;height:100%;background:linear-gradient(#50d8ff,#ff2f9f)}.gg-login-close{position:absolute;right:16px;top:14px;border:0;background:transparent;color:#fff;font-size:29px;cursor:pointer}.gg-login-brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}.gg-login-brand img{width:112px;height:auto}.gg-login-brand span{font:700 9px 'Space Grotesk';letter-spacing:.16em;color:#7d8999}.gg-login-card h2{font:600 clamp(38px,7vw,66px)/.9 'Space Grotesk',sans-serif;margin:8px 0 15px;text-transform:uppercase}.gg-login-intro{color:#9ba7b6;line-height:1.55;margin-bottom:22px}.gg-login-card form{display:grid;gap:13px}.gg-login-card label{display:grid;gap:7px;font:700 9px 'Space Grotesk';letter-spacing:.13em;text-transform:uppercase;color:#aab5c4}.gg-login-card input{width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.15);background:#05080e;color:#fff;padding:15px 14px;font:500 15px 'DM Sans';outline:none}.gg-login-card input:focus{border-color:#50d8ff;box-shadow:0 0 0 3px rgba(80,216,255,.08)}.gg-login-submit{margin-top:4px;border:0;background:linear-gradient(90deg,#50d8ff,#7de5ff);color:#041018;padding:16px;font:800 12px 'Space Grotesk';letter-spacing:.08em;cursor:pointer}.gg-login-submit:hover{background:linear-gradient(90deg,#ff2f9f,#ff6fc0);color:#fff}.gg-login-error{min-height:16px;color:#ff6f9f;font-size:11px}.gg-login-demo{border-top:1px solid rgba(255,255,255,.1);margin-top:22px;padding-top:18px}.gg-login-demo>span{display:block;font:700 8px 'Space Grotesk';letter-spacing:.15em;color:#707c8d;margin-bottom:10px}.gg-login-demo div{display:flex;gap:8px}.gg-login-demo button{flex:1;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035);color:#fff;padding:11px 10px;font:700 9px 'Space Grotesk';letter-spacing:.06em;cursor:pointer}.gg-login-demo button:hover{border-color:#ff2f9f}.gg-login-card>small{display:block;margin-top:16px;color:#657183;line-height:1.5}.gg22-ticket .gg-ticket-login{display:block}.gg-nav .gg-member-actions .gg-back{white-space:nowrap}
@media(max-width:900px){.gg-nav .gg-member-actions{gap:7px}.gg-login-trigger{padding:10px 11px;font-size:9px}.gg-member-access{margin-inline:18px;flex-direction:column;align-items:flex-start}.gg-member-access-button{width:100%}}
@media(max-width:650px){.gg-nav nav{display:none}.gg-nav .gg-member-actions .gg-back{display:none}.gg-member-access{padding:24px 20px}.gg-login-card{padding:28px 22px}.gg-login-demo div{flex-direction:column}}

/* MVP12.1.3 — Safari-safe trailer rendering.
   Keep the VIDEO itself out of all filter / transform / isolation compositing paths. */
.gg22-video-frame.gg-trailer-safe-frame{
  position:relative !important;
  overflow:hidden !important;
  isolation:auto !important;
  transform:none !important;
  filter:none !important;
  perspective:none !important;
  contain:none !important;
  background:#000 !important;
  border:1px solid rgba(80,216,255,.24) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.5),0 0 50px rgba(80,216,255,.05) !important;
}
.gg22-video-frame.gg-trailer-safe-frame::before,
.gg22-video-frame.gg-trailer-safe-frame::after{display:none !important;content:none !important}
.gg-trailer-safe-video{
  position:static !important;
  z-index:auto !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:16/9 !important;
  object-fit:contain !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  transform:none !important;
  mix-blend-mode:normal !important;
  backface-visibility:visible !important;
  will-change:auto !important;
  box-shadow:none !important;
  background:#000 !important;
}
.gg22-video-frame.gg-trailer-safe-frame:hover .gg-trailer-safe-video,
.gg22-video-frame.gg-trailer-safe-frame.gg26-playing .gg-trailer-safe-video{
  filter:none !important;
  transform:none !important;
  box-shadow:none !important;
}
.gg-trailer-safe-caption{
  position:absolute;
  left:0;right:0;bottom:0;
  display:flex;justify-content:space-between;gap:16px;
  padding:8px 10px;
  pointer-events:none;
  background:linear-gradient(transparent,rgba(0,0,0,.68));
  color:rgba(255,255,255,.55);
  font:600 8px/1 "Space Grotesk",sans-serif;
  letter-spacing:.14em;text-transform:uppercase;
}
@media(max-width:800px){.gg-trailer-safe-caption{display:none}}

/* ============================================================
   MVP12.1.4 — MOBILE MENU CONSISTENCY HOTFIX
   Match the main Tim Hutch site's mobile navigation pattern.
   ============================================================ */
.gg-mobile-menu-toggle{display:none}
.gg-mobile-main-link{display:none}

@media (max-width:1000px){
  .gg-nav{
    position:relative!important;
    z-index:1000!important;
    flex-wrap:nowrap!important;
    min-height:64px!important;
  }
  .gg-nav .gg-brand-mainmatch{position:relative;z-index:1003;flex:0 1 auto}
  .gg-nav .gg-member-actions{position:relative;z-index:1003;margin-left:auto;gap:8px}
  .gg-nav .gg-member-actions .gg-back{display:none!important}
  .gg-login-trigger{min-height:42px;padding:0 12px!important;white-space:nowrap}

  .gg-mobile-menu-toggle{
    display:grid;
    position:relative;
    z-index:1004;
    flex:0 0 46px;
    width:46px;
    height:46px;
    padding:0;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.035);
    place-content:center;
    gap:7px;
    color:#fff;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  .gg-mobile-menu-toggle span{
    display:block;
    width:19px;
    height:1px;
    background:currentColor;
    transition:transform .3s ease;
  }
  .gg-mobile-menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
  .gg-mobile-menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}

  .gg-nav nav#gg-primary-navigation{
    display:flex!important;
    position:fixed!important;
    inset:0!important;
    z-index:1001!important;
    width:100vw!important;
    height:100dvh!important;
    box-sizing:border-box!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:0!important;
    margin:0!important;
    padding:calc(84px + env(safe-area-inset-top)) 28px calc(30px + env(safe-area-inset-bottom))!important;
    background:linear-gradient(180deg,rgba(7,7,10,.985),rgba(10,8,13,.995))!important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-12px);
    transition:opacity .28s ease,transform .34s ease,visibility .28s;
  }
  .gg-nav.gg-menu-open nav#gg-primary-navigation{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }
  .gg-nav nav#gg-primary-navigation a{
    display:block!important;
    width:100%;
    padding:17px 0;
    border-bottom:1px solid rgba(255,255,255,.1);
    font:500 clamp(30px,9vw,46px)/1 "Space Grotesk",sans-serif!important;
    letter-spacing:-.045em!important;
    text-transform:none!important;
    color:#f2edf3!important;
  }
  .gg-nav nav#gg-primary-navigation a:hover{color:#50d8ff!important}
  .gg-nav nav#gg-primary-navigation .gg-mobile-main-link{display:block!important;color:rgba(255,255,255,.52)!important;margin-top:12px}
  body.gg-menu-open{overflow:hidden!important}
}

@media (max-width:430px){
  .gg-nav{padding-inline:12px!important;gap:7px!important}
  .gg-nav .gg-brand-mainmatch{width:min(142px,40vw)!important}
  .gg-login-trigger{font-size:8px!important;letter-spacing:.08em!important;padding:0 9px!important}
  .gg-mobile-menu-toggle{width:44px;height:44px;flex-basis:44px}
  .gg-nav nav#gg-primary-navigation{padding-left:22px!important;padding-right:22px!important}
}

/* ============================================================
   RC12.9.2.5 — CURRENT PRODUCT PREVIEW / FAITHFUL MEMBER HQ
   Mirrors the real RC12.10.16 Home visual language without exposing /gym.
   ============================================================ */
.gg-platform-hero-note{display:block;margin-top:7px;color:rgba(255,255,255,.52);font:700 8px/1.2 "Space Grotesk",sans-serif;letter-spacing:.14em;text-transform:uppercase}
.gg-platform{position:relative;isolation:isolate;overflow:hidden;padding:clamp(88px,9vw,150px) clamp(20px,5.6vw,88px) clamp(88px,8vw,132px);background:radial-gradient(circle at 50% 39%,rgba(80,216,255,.055),transparent 28%),radial-gradient(circle at 18% 72%,rgba(255,47,159,.045),transparent 25%),linear-gradient(180deg,#07080c 0%,#090b11 48%,#07080c 100%);border-top:1px solid rgba(255,255,255,.075);border-bottom:1px solid rgba(255,255,255,.075)}
.gg-platform:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent)}
.gg-platform:after{content:"03";position:absolute;right:-.025em;top:.06em;z-index:-1;font:700 clamp(180px,28vw,520px)/.72 "Space Grotesk",sans-serif;letter-spacing:-.12em;color:rgba(255,255,255,.018);pointer-events:none}
.gg-platform-intro{max-width:1440px;margin:0 auto clamp(58px,6vw,90px);display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:clamp(42px,7vw,110px);align-items:end}
.gg-platform-heading h2{margin:10px 0 0;font:600 clamp(52px,7vw,108px)/.82 "Space Grotesk",sans-serif;letter-spacing:-.075em;text-transform:uppercase}.gg-platform-heading h2 em{font-family:"Newsreader",serif;font-weight:500;color:#ff4eb8;text-transform:none;letter-spacing:-.045em}.gg-platform-copy{padding-left:clamp(20px,3vw,48px);border-left:1px solid rgba(255,255,255,.12)}.gg-platform-copy p{margin:0;color:#a1abb5;font-size:clamp(14px,1.25vw,18px);line-height:1.62}.gg-platform-copy strong{display:block;margin-top:24px;color:#fff;font:600 clamp(16px,1.45vw,21px)/1.35 "Space Grotesk",sans-serif;letter-spacing:-.02em}
.gg-real-stage{max-width:1500px;margin:0 auto clamp(54px,6vw,88px);position:relative;padding-top:34px}.gg-platform-preview-label{position:absolute;left:0;top:0;color:#82909c;font:700 8px/1 "Space Grotesk";letter-spacing:.15em}.gg-platform-preview-label span{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#54dfc6;box-shadow:0 0 12px rgba(84,223,198,.45)}
.gg-real-window{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:760px;border:1px solid rgba(178,202,214,.24);border-radius:13px;overflow:hidden;background:#0a0d10;box-shadow:0 48px 100px rgba(0,0,0,.54),inset 0 1px rgba(255,255,255,.06);transform:perspective(1600px) rotateX(.35deg);transform-origin:50% 0}
.gg-real-sidebar{display:flex;flex-direction:column;padding:18px 14px 16px;background:linear-gradient(100deg,#272c31,#191e23 82%);border-right:1px solid #43474b;box-shadow:inset -1px 0 rgba(167,201,215,.04)}.gg-real-brand{height:70px;display:flex;align-items:center;padding:3px 10px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.gg-real-brand img{width:134px;max-height:58px;object-fit:contain}.gg-real-member{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;padding:16px 7px;border-bottom:1px solid rgba(255,255,255,.07)}.gg-real-member-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#2e3943,#12171d);border:1px solid rgba(255,255,255,.18);font:700 10px "Space Grotesk"}.gg-real-member div{min-width:0}.gg-real-member b,.gg-real-member small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gg-real-member b{font:700 8px "Space Grotesk";letter-spacing:.05em}.gg-real-member small{margin-top:3px;color:#77828d;font:600 6px "Space Grotesk";letter-spacing:.08em}.gg-real-member i{color:#6a747d;font-style:normal;font-size:8px}
.gg-real-nav{display:grid;gap:2px;margin:16px 0}.gg-real-nav span{position:relative;display:grid;grid-template-columns:25px 1fr;align-items:center;min-height:39px;padding:0 9px;color:#818b94;font:700 7px "Space Grotesk";letter-spacing:.1em;border-radius:3px}.gg-real-nav span b{font:600 13px/1 monospace;color:#65717b}.gg-real-nav span.active{color:#fff;background:linear-gradient(90deg,rgba(101,216,223,.10),rgba(255,255,255,.02));border-left:2px solid #65d8df}.gg-real-nav span.active b{color:#77e5eb}.gg-real-sidefoot{margin-top:auto;padding:15px 9px 4px;border-top:1px solid rgba(255,255,255,.07)}.gg-real-sidefoot small,.gg-real-sidefoot b,.gg-real-sidefoot em{display:block}.gg-real-sidefoot small{color:#66717b;font:700 6px "Space Grotesk";letter-spacing:.12em}.gg-real-sidefoot b{margin:5px 0 14px;color:#d9e0e4;font:700 8px "Space Grotesk";letter-spacing:.08em}.gg-real-sidefoot em{color:#5f6870;font:700 5px "Space Grotesk";letter-spacing:.13em;font-style:normal;line-height:1.55}
.gg-real-main{min-width:0;padding:0 26px 34px;background:radial-gradient(circle at 26% 8%,rgba(101,216,223,.035),transparent 24%),#0a0d10}.gg-real-context{margin:0 -26px 18px;padding:7px 14px;text-align:center;background:#080a0d;border-bottom:1px solid rgba(255,255,255,.06);color:#5e6973;font:700 6px "Space Grotesk";letter-spacing:.12em}.gg-real-topline{display:flex;justify-content:space-between;padding:3px 0 12px;color:#6f7982;font:700 6px "Space Grotesk";letter-spacing:.14em}
.gg-real-hero{display:grid;grid-template-columns:1.04fr 1fr;min-height:355px;border:1px solid rgba(255,255,255,.14);border-radius:8px;overflow:hidden;background:radial-gradient(90% 130% at 2% 0,rgba(110,168,176,.08),transparent 50%),linear-gradient(137deg,#454d54 0%,#2a3137 22%,#191f25 67%,#24252e 100%);box-shadow:inset 0 1px rgba(241,251,255,.34),inset 0 -1px rgba(5,9,13,.8),0 18px 40px rgba(0,0,0,.32)}.gg-real-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:31px}.gg-real-eyebrow{display:flex;align-items:center;gap:8px;color:#b8c2c8;font:700 7px "Space Grotesk";letter-spacing:.12em}.gg-real-eyebrow i{width:6px;height:6px;border-radius:50%;background:#d66b9c}.gg-real-hero h3{margin:19px 0 17px;color:#f1f1ef;font:600 clamp(32px,3.4vw,58px)/.96 "Space Grotesk";letter-spacing:-.058em}.gg-real-hero h3 em{font:inherit;color:#ef85b1}.gg-real-hero p{margin:0;color:#aeb7bd;font-size:11px;line-height:1.65}.gg-real-actions{display:flex;align-items:center;gap:15px;margin-top:19px}.gg-real-actions span{padding:9px 11px;background:#f2eef0;color:#101216;font:800 6px "Space Grotesk";letter-spacing:.08em}.gg-real-actions b{color:#c3cbd0;font:700 6px "Space Grotesk";letter-spacing:.08em}.gg-real-footnote{display:flex;gap:11px;margin-top:auto;padding-top:24px;color:#778189;font:700 5px "Space Grotesk";letter-spacing:.12em}
.gg-real-tim{position:relative;margin:0;background:#121418;overflow:hidden}.gg-real-tim img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;background:#131017}.gg-real-tim:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,13,16,.12),transparent 30%),linear-gradient(0deg,rgba(0,0,0,.22),transparent 28%)}.gg-real-tim figcaption{position:absolute;z-index:2;left:15px;right:15px;bottom:13px;display:flex;justify-content:space-between;gap:10px;padding:10px 11px;background:rgba(15,17,20,.9);border-top:1px solid rgba(255,255,255,.14);color:#fff}.gg-real-tim figcaption span,.gg-real-tim figcaption b{font:700 6px "Space Grotesk";letter-spacing:.09em}.gg-real-tim figcaption b{color:#8f9aa3;font-weight:600}
.gg-real-homegrid{display:grid;grid-template-columns:1.25fr 1fr;gap:21px;margin:22px 0}.gg-real-next{position:relative;overflow:hidden;padding:5px 0 0}.gg-real-sectionlabel{display:flex;justify-content:space-between;color:#717c85;font:700 6px "Space Grotesk";letter-spacing:.12em}.gg-real-next h4{margin:13px 0 16px;font:600 25px/1 "Space Grotesk";letter-spacing:-.045em}.gg-real-mission{position:relative;padding:16px 18px;border:1px solid rgba(192,221,230,.16);border-radius:6px;background:linear-gradient(145deg,rgba(26,34,45,.74),rgba(7,11,17,.82));box-shadow:inset 0 1px rgba(255,255,255,.08),0 14px 30px rgba(0,0,0,.2)}.gg-real-mission>span{display:block;color:#79dfe5;font:700 6px "Space Grotesk";letter-spacing:.13em}.gg-real-mission strong{display:block;margin:10px 0 7px;color:#f0f2f3;font:700 15px/1.1 "Space Grotesk";letter-spacing:.015em}.gg-real-mission p{margin:0;color:#78848d;font-size:8px}.gg-real-destinations{margin-top:12px;border-top:1px solid rgba(255,255,255,.08)}.gg-real-destinations>div{display:grid;grid-template-columns:25px 1fr 15px;gap:8px;align-items:center;padding:10px 3px;border-bottom:1px solid rgba(255,255,255,.07)}.gg-real-destinations b{color:#56616a;font:700 6px "Space Grotesk"}.gg-real-destinations span strong,.gg-real-destinations span small{display:block}.gg-real-destinations span strong{font:700 8px "Space Grotesk"}.gg-real-destinations span small{margin-top:2px;color:#6f7b84;font-size:6px}.gg-real-destinations i{color:#7bdde4;font-style:normal;font-size:9px}
.gg-real-pass{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-height:305px;padding:21px;border:1px solid rgba(184,198,208,.5);border-radius:11px;background:repeating-linear-gradient(0deg,rgba(235,244,255,.018) 0 1px,transparent 1px 3px),linear-gradient(135deg,#64717a,#414d57 24%,#2e3842 58%,#282c35);box-shadow:inset 0 1px rgba(245,255,255,.5),inset 1px 0 rgba(226,245,255,.15),inset 0 -2px rgba(8,14,22,.65),0 12px 25px rgba(0,0,0,.38)}.gg-real-pass:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.09),transparent 23%,transparent 70%,rgba(228,142,186,.05));pointer-events:none}.gg-real-pass-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center}.gg-real-pass-top img{width:87px;filter:brightness(1.08)}.gg-real-pass-top span{color:#d0d6da;font:700 6px "Space Grotesk";letter-spacing:.1em}.gg-real-avatar-frame{position:absolute;right:18px;top:71px;width:34%;aspect-ratio:3/4;overflow:hidden;background:#0a1219;border:1px solid rgba(157,180,192,.39);border-radius:4px;padding:3px;box-shadow:0 0 0 3px rgba(11,17,27,.2),inset 0 1px 5px rgba(0,0,0,.6)}.gg-real-avatar-frame img{width:100%;height:100%;object-fit:contain}.gg-real-pass-copy{position:relative;z-index:2;max-width:56%;margin-top:29px}.gg-real-pass-copy>small{color:#d0d6da;font:700 6px "Space Grotesk";letter-spacing:.08em}.gg-real-pass-copy h4{margin:7px 0 18px;color:#f4f4ef;font:700 21px/1 "Space Grotesk";letter-spacing:.04em}.gg-real-rep{display:flex;align-items:center;gap:8px}.gg-real-rep strong{font:700 27px/1 ui-monospace,monospace}.gg-real-rep span{color:#b7c2c9;font:700 5px/1.45 "Space Grotesk";letter-spacing:.08em}.gg-real-passbar{height:3px;margin:12px 0 7px;border-radius:3px;background:rgba(16,26,37,.5);box-shadow:inset 0 1px 2px rgba(0,0,0,.4);overflow:hidden}.gg-real-passbar i{display:block;width:68%;height:100%;background:linear-gradient(#f9cadf,#d393b0)}.gg-real-edition{position:relative;z-index:2;margin-top:auto;padding-top:17px;color:#d1dce2;font:700 6px "Space Grotesk";letter-spacing:.1em}
.gg-real-rhythm{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 18px;border:1px solid rgba(192,221,230,.14);border-radius:6px;background:linear-gradient(145deg,rgba(20,27,34,.76),rgba(7,11,17,.82))}.gg-real-rhythm small,.gg-real-rhythm strong,.gg-real-rhythm p{display:block}.gg-real-rhythm small{color:#79dfe5;font:700 6px "Space Grotesk";letter-spacing:.12em}.gg-real-rhythm strong{margin-top:5px;font:700 10px "Space Grotesk"}.gg-real-rhythm p{margin:3px 0 0;color:#727e87;font-size:7px}.gg-real-rhythm>span{padding:8px 10px;border:1px solid rgba(255,255,255,.12);color:#c6cfd4;font:700 6px "Space Grotesk";letter-spacing:.08em}
.gg-platform-features{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09)}.gg-platform-features article{min-width:0;padding:25px clamp(16px,2vw,27px);display:grid;grid-template-columns:30px 1fr;gap:11px;border-right:1px solid rgba(255,255,255,.075)}.gg-platform-features article:last-child{border-right:0}.gg-platform-features article>b{color:rgba(255,255,255,.18);font:600 10px "Space Grotesk"}.gg-platform-features span{display:block;color:#50d8ff;font:700 7px "Space Grotesk";letter-spacing:.14em}.gg-platform-features article:nth-child(even) span{color:#ff4eb8}.gg-platform-features strong{display:block;margin:5px 0 8px;font:600 15px/1.14 "Space Grotesk";letter-spacing:-.025em}.gg-platform-features p{margin:0;color:#687584;font-size:11px;line-height:1.5}.gg-platform-statement{max-width:1440px;margin:clamp(40px,5vw,72px) auto 0;text-align:center}.gg-platform-statement>span{display:inline-block;margin:0 10px;color:#7d8995;font:700 8px "Space Grotesk";letter-spacing:.16em}.gg-platform-statement>span:nth-child(2){color:#50d8ff}.gg-platform-statement>span:nth-child(3){color:#ff4eb8}.gg-platform-statement strong{display:block;max-width:900px;margin:18px auto 0;font:600 clamp(27px,3vw,48px)/1 "Space Grotesk";letter-spacing:-.055em}
@media(max-width:1180px){.gg-real-window{grid-template-columns:155px minmax(0,1fr)}.gg-real-sidebar{padding-inline:10px}.gg-real-nav span{grid-template-columns:22px 1fr;padding-inline:6px}.gg-platform-features{grid-template-columns:1fr 1fr}.gg-platform-features article:nth-child(2){border-right:0}.gg-platform-features article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.075)}}
@media(max-width:900px){.gg-platform{padding-inline:18px}.gg-platform-intro{grid-template-columns:1fr;gap:28px}.gg-platform-copy{padding-left:20px}.gg-real-window{grid-template-columns:1fr;min-height:0}.gg-real-sidebar{display:none}.gg-real-main{padding:0 14px 20px}.gg-real-context{margin-inline:-14px}.gg-real-hero{grid-template-columns:1fr}.gg-real-tim{min-height:320px}.gg-real-homegrid{grid-template-columns:1fr}.gg-real-pass{min-height:320px}.gg-platform-hero-note{font-size:7px;letter-spacing:.1em}}
@media(max-width:620px){.gg-platform-heading h2{font-size:clamp(48px,15vw,68px);line-height:.84}.gg-platform-copy p{font-size:15px}.gg-real-stage{padding-top:30px}.gg-platform-preview-label{font-size:7px;letter-spacing:.1em}.gg-real-main{padding:0 9px 14px}.gg-real-context{margin-inline:-9px}.gg-real-topline span:last-child{display:none}.gg-real-hero-copy{padding:24px 20px}.gg-real-hero h3{font-size:42px}.gg-real-tim{min-height:285px}.gg-real-homegrid{gap:14px;margin-block:14px}.gg-real-next h4{font-size:23px}.gg-real-pass{min-height:300px}.gg-real-pass-copy h4{font-size:19px}.gg-real-rhythm{align-items:flex-start;flex-direction:column}.gg-platform-features{grid-template-columns:1fr}.gg-platform-features article,.gg-platform-features article:nth-child(2){border-right:0;border-bottom:1px solid rgba(255,255,255,.075)}.gg-platform-features article:last-child{border-bottom:0}.gg-platform-statement>span{display:block;margin:7px}.gg-platform-statement strong{font-size:30px;line-height:1.03}}
@media(prefers-reduced-motion:reduce){.gg-platform *{animation:none!important;transition:none!important}.gg-real-window{transform:none}}


/* RC12.9.2.6 — evolving platform horizon */
.gg-evolution{position:relative;isolation:isolate;overflow:hidden;padding:clamp(96px,10vw,168px) clamp(20px,5.6vw,88px);background:linear-gradient(180deg,#07080c 0%,#0a0c12 44%,#08090d 100%);border-bottom:1px solid rgba(255,255,255,.08)}
.gg-evolution:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 72% 28%,rgba(80,216,255,.09),transparent 25%),radial-gradient(circle at 26% 66%,rgba(255,47,159,.075),transparent 26%)}
.gg-evolution:after{content:"";position:absolute;left:50%;top:47%;width:min(1050px,82vw);height:1px;transform:translateX(-50%);z-index:-1;background:linear-gradient(90deg,transparent,rgba(80,216,255,.22) 20%,rgba(255,255,255,.14) 48%,rgba(255,47,159,.22) 80%,transparent);box-shadow:0 0 34px rgba(80,216,255,.08)}
.gg-evolution-orbit{position:absolute;right:-14vw;top:-28vw;width:min(760px,70vw);aspect-ratio:1;border:1px solid rgba(255,255,255,.035);border-radius:50%;pointer-events:none}.gg-evolution-orbit:before,.gg-evolution-orbit:after,.gg-evolution-orbit i{content:"";position:absolute;border:1px solid rgba(255,255,255,.03);border-radius:50%;inset:12%}.gg-evolution-orbit:after{inset:29%}.gg-evolution-orbit i:nth-child(1){inset:43%;border-color:rgba(80,216,255,.11)}.gg-evolution-orbit i:nth-child(2){width:7px;height:7px;inset:auto;left:14%;top:53%;border:0;background:#50d8ff;box-shadow:0 0 24px rgba(80,216,255,.65)}.gg-evolution-orbit i:nth-child(3){width:5px;height:5px;inset:auto;right:23%;bottom:24%;border:0;background:#ff4eb8;box-shadow:0 0 22px rgba(255,78,184,.55)}
.gg-evolution-head{max-width:1440px;margin:0 auto clamp(70px,7vw,110px);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(42px,7vw,110px);align-items:end}.gg-evolution-head h2{margin:11px 0 0;font:600 clamp(54px,7.2vw,112px)/.82 "Space Grotesk",sans-serif;letter-spacing:-.076em;text-transform:uppercase}.gg-evolution-head h2 em{font-family:"Newsreader",serif;font-weight:500;color:#50d8ff;text-transform:none;letter-spacing:-.045em}.gg-evolution-lead{padding-left:clamp(22px,3vw,48px);border-left:1px solid rgba(255,255,255,.13)}.gg-evolution-lead p{margin:0;color:#99a6b2;font-size:clamp(14px,1.22vw,18px);line-height:1.66}.gg-evolution-lead strong{display:block;margin-top:24px;color:#fff;font:600 clamp(17px,1.4vw,21px)/1.35 "Space Grotesk",sans-serif;letter-spacing:-.024em}
.gg-evolution-horizon{max-width:1440px;margin:0 auto;padding:clamp(30px,3vw,46px);border:1px solid rgba(255,255,255,.09);background:linear-gradient(150deg,rgba(255,255,255,.035),rgba(255,255,255,.012) 45%,rgba(80,216,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 24px 70px rgba(0,0,0,.28);position:relative}.gg-evolution-horizon:before{content:"FUTURE FLOOR";position:absolute;right:22px;top:17px;color:rgba(255,255,255,.1);font:700 8px "Space Grotesk";letter-spacing:.17em}.gg-evolution-now{display:grid;grid-template-columns:auto 190px 1fr;gap:20px;align-items:center}.gg-evolution-state{display:flex;align-items:center;gap:9px;color:#54dfc6;font:700 9px "Space Grotesk";letter-spacing:.16em}.gg-evolution-state i{width:7px;height:7px;border-radius:50%;background:#54dfc6;box-shadow:0 0 15px rgba(84,223,198,.65)}.gg-evolution-now>strong{font:600 17px "Space Grotesk";letter-spacing:.02em}.gg-evolution-now>p{margin:0;color:#7f8c99;font-size:12px}.gg-evolution-line{height:70px;position:relative;margin:5px 0 3px}.gg-evolution-line>span{position:absolute;left:5px;right:5px;top:50%;height:1px;background:linear-gradient(90deg,#54dfc6 0%,#50d8ff 38%,rgba(255,255,255,.22) 58%,#ff4eb8 100%);box-shadow:0 0 18px rgba(80,216,255,.18)}.gg-evolution-line i{position:absolute;top:50%;width:9px;height:9px;border-radius:50%;transform:translate(-50%,-50%);background:#090b10;border:1px solid rgba(255,255,255,.48);box-shadow:0 0 0 5px rgba(255,255,255,.025)}.gg-evolution-line i:nth-of-type(1){left:18%;border-color:#50d8ff}.gg-evolution-line i:nth-of-type(2){left:42%}.gg-evolution-line i:nth-of-type(3){left:68%;border-color:#ff4eb8}.gg-evolution-line i:nth-of-type(4){left:91%;border-color:#ff4eb8}
.gg-evolution-directions{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.075)}.gg-evolution-directions article{min-width:0;display:grid;grid-template-columns:31px 1fr;gap:10px;padding:26px clamp(15px,1.7vw,25px) 6px;border-right:1px solid rgba(255,255,255,.065)}.gg-evolution-directions article:last-child{border-right:0}.gg-evolution-directions article>span{color:rgba(255,255,255,.17);font:600 9px "Space Grotesk"}.gg-evolution-directions small{display:block;color:#50d8ff;font:700 7px "Space Grotesk";letter-spacing:.15em}.gg-evolution-directions article:nth-child(even) small{color:#ff4eb8}.gg-evolution-directions strong{display:block;margin:7px 0 9px;color:#f5f8fa;font:600 15px/1.18 "Space Grotesk";letter-spacing:-.025em}.gg-evolution-directions p{margin:0;color:#6f7d8b;font-size:11px;line-height:1.55}
.gg-evolution-close{max-width:1050px;margin:clamp(64px,7vw,106px) auto 0;text-align:center}.gg-evolution-close>p{max-width:750px;margin:0 auto 24px;color:#8b98a5;font-size:clamp(14px,1.2vw,18px);line-height:1.62}.gg-evolution-close h3{margin:0;color:#fff;font:600 clamp(33px,4.4vw,68px)/.94 "Space Grotesk";letter-spacing:-.058em}.gg-evolution-close h3 em{font-family:"Newsreader",serif;font-weight:500;color:#ff4eb8;letter-spacing:-.035em}.gg-evolution-close a{display:inline-flex;margin-top:34px;padding:15px 20px;border:1px solid rgba(80,216,255,.28);background:rgba(80,216,255,.055);color:#fff;text-decoration:none;font:700 9px "Space Grotesk";letter-spacing:.13em;transition:transform .2s ease,border-color .2s ease,background .2s ease}.gg-evolution-close a:hover{transform:translateY(-2px);border-color:rgba(80,216,255,.55);background:rgba(80,216,255,.09)}
@media(max-width:1000px){.gg-evolution-head{grid-template-columns:1fr;gap:30px}.gg-evolution-directions{grid-template-columns:1fr 1fr}.gg-evolution-directions article:nth-child(2){border-right:0}.gg-evolution-directions article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.065)}.gg-evolution-now{grid-template-columns:auto 1fr}.gg-evolution-now>p{grid-column:1/-1}}
@media(max-width:620px){.gg-evolution{padding-inline:18px}.gg-evolution-head h2{font-size:clamp(49px,15vw,68px);line-height:.84}.gg-evolution-lead{padding-left:19px}.gg-evolution-horizon{padding:24px 17px}.gg-evolution-horizon:before{display:none}.gg-evolution-now{grid-template-columns:1fr;gap:8px}.gg-evolution-line{height:48px}.gg-evolution-directions{grid-template-columns:1fr}.gg-evolution-directions article,.gg-evolution-directions article:nth-child(2){border-right:0;border-bottom:1px solid rgba(255,255,255,.065)}.gg-evolution-directions article:last-child{border-bottom:0}.gg-evolution-close h3{font-size:35px;line-height:.98}.gg-evolution-close a{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.gg-evolution *{transition:none!important;animation:none!important}}


/* RC12.9.2.6.1 — Hutch's Guitar Gym rebrand
   Artwork is the approved transparent logo; only layout sizing is adjusted. */
.gg271-hero-logo{
  width:clamp(255px,22vw,390px) !important;
  max-height:48%;
  object-fit:contain;
  object-position:left top;
}
.gg22-brand-logo{
  width:clamp(92px,9vw,145px);
  max-height:132px;
  object-fit:contain;
}
.gg-real-brand img{
  width:104px;
  max-height:60px;
  object-fit:contain;
}
.gg-real-pass-top img{
  width:68px;
  max-height:68px;
  object-fit:contain;
}
.gg22-ticket-logo{
  width:min(100%,225px);
  max-height:225px;
  object-fit:contain;
}
@media (max-width: 760px){
  .gg271-hero-logo{
    width:clamp(205px,48vw,300px) !important;
    max-height:42%;
  }
  .gg22-brand-logo{width:112px}
  .gg22-ticket-logo{width:min(82%,190px)}
}

/* RC12.9.2.6.13 — Early Access signup gate + mobile hero logo hotfix
   Baseline: RC12.9.2.6.12. No image assets are modified. */
.gg-early-downloads[hidden]{display:none!important}

/* Phone-only composition: keep the existing transparent logo prominent,
   but stop it before Tim's face. Tablet/desktop composition is unchanged. */
@media (max-width:760px){
  .gg271-hero-logo{
    left:16px!important;
    top:16px!important;
    width:clamp(150px,44vw,190px)!important;
    max-height:38%!important;
  }
}
@media (max-width:390px){
  .gg271-hero-logo{width:clamp(142px,43vw,168px)!important}
}

/* RC12.9.2.6.14 — Mobile hero logo composition fine-tune
   Approved existing artwork only: no image assets modified.
   Slightly larger and a touch farther upper-left while preserving clear space before Tim. */
@media (max-width:760px){
  .gg271-hero-logo{
    left:12px!important;
    top:12px!important;
    width:clamp(158px,46.5vw,202px)!important;
    max-height:39%!important;
  }
}
@media (max-width:390px){
  .gg271-hero-logo{width:clamp(150px,45.5vw,178px)!important}
}

/* RC12.9.2.6.15 — Mobile hero logo composition hotfix
   Existing approved logo artwork only; no image assets modified.
   Slightly smaller than .14 and shifted farther upper-left to keep Tim visually unobstructed. */
@media (max-width:760px){
  .gg271-hero-logo{
    left:6px!important;
    top:7px!important;
    width:clamp(152px,44vw,190px)!important;
    max-height:38%!important;
  }
}
@media (max-width:390px){
  .gg271-hero-logo{width:clamp(145px,43vw,170px)!important}
}
