body { margin: 0; background: #F8F6F1; color: #1C1F24; -webkit-font-smoothing: antialiased; }
  * { box-sizing: border-box; }
  h1, h2, h3, h4, p, ul, ol, li, dl, dd, dt { margin: 0; padding: 0; }
  ul, ol { list-style: none; }
  img { display: block; max-width: 100%; }
  figure { margin: 0; }
  a { color: #151F37; text-decoration: none; border-bottom: 1px solid #A8D331; }
  a:hover { color: #0D1526; border-bottom-color: #0D1526; }
  a:focus-visible, button:focus-visible { outline: 3px solid #A8D331; outline-offset: 2px; }
  button { font: inherit; cursor: pointer; }
  ::selection { background: #A8D331; color: #0D1526; }
  #gt-nav-list { display: none; }
  #gt-burger { display: flex; }
  #gt-role-panel, #gt-modes, #gt-hero, #gt-ex { grid-template-columns: minmax(0, 1fr); }
  [data-dwell] { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
  [data-dwell-status] { grid-column: 1 / -1; }
  @media (min-width: 560px) { [data-dwell] { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 1.1fr); } [data-dwell-status] { grid-column: auto; text-align: right; } }
  [data-leak-row] { display: grid; grid-template-columns: minmax(0, 1fr); }
  #gt-leak-head { display: none; }
  @media (min-width: 720px) {
    #gt-modes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #gt-role-panel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #gt-role-panel > *:last-child { grid-column: span 2; }
  }
  @media (min-width: 1000px) {
    #gt-nav-list { display: flex; }
    #gt-burger { display: none; }
    #gt-hero { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: center; }
    #gt-ex { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: center; }
    #gt-hero-fig { margin-right: calc(-1 * clamp(20px, 4vw, 72px)); }
    [data-leak-row] { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, 1fr); }
    [data-leak-head] { display: none; }
    #gt-leak-head { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, 1fr); gap: clamp(20px, 3vw, 48px); padding-bottom: 12px; }
  }
  @media (min-width: 1240px) {
    #gt-modes { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    #gt-role-panel { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    #gt-role-panel > *:last-child { grid-column: auto; }
  }
  @keyframes gt-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
  @keyframes gt-rise { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  }

/* Blocks toggled by assets/js; beats the inline display styles. */
[hidden] { display: none !important; }

/* hover / focus / active states */
.s1:hover { transform:translateY(-2px) !important; background:#A8D331 !important; color:#151F37 !important; border-color:#A8D331 !important; box-shadow:0 12px 24px -14px rgba(21,31,55,.6) !important; }
.s3:hover { transform:translateY(-2px) !important; background:#151F37 !important; color:#F8F6F1 !important; border-color:#151F37 !important; box-shadow:0 12px 24px -14px rgba(21,31,55,.6) !important; }
.s4:hover { transform:translateY(-2px) !important; background:#A8D331 !important; color:#151F37 !important; box-shadow:0 12px 28px -12px rgba(168,211,49,.7) !important; }
.s5:hover { transform:translateY(-2px) !important; background:#F8F6F1 !important; color:#151F37 !important; border-color:#F8F6F1 !important; box-shadow:0 12px 28px -14px rgba(0,0,0,.5) !important; }
.s6:hover { color:#A8D331 !important; }
.s2:active { transform:translateY(0) !important; box-shadow:none !important; }
