/* ===========================================================
   Tower Rush 2 — Mediterranean "sunny harbour" theme
   Palette taken from the game key art: sky, sea, sandstone,
   terracotta roofs, candy-orange "TOWER" + blue "RUSH" + red "2"
   =========================================================== */

:root {
  /* sky & sea */
  --sky-1:        #2c96df;
  --sky-2:        #5db7ee;
  --sky-3:        #a9ddf8;
  --sky-4:        #d6f0fc;
  --sea-1:        #2fb0d6;
  --sea-2:        #1b93c4;
  --sea-3:        #127db0;
  --sea-deep:     #0a4c73;

  /* stone, wood, plaster */
  --sand:         #f7e6c8;
  --plaster:      #fffaf1;
  --plaster-2:    #fcefd6;
  --stone-1:      #f2c681;
  --stone-2:      #d4924e;
  --wood-1:       #d99555;
  --wood-2:       #b06a2e;
  --brown:        #6b3c16;
  --brown-deep:   #5a3214;
  --brown-ink:    #6b2f0c;

  /* logo colours */
  --orange-1:     #ffe066;
  --orange-2:     #ffb21e;
  --orange-3:     #ff7a0f;
  --orange-ink:   #7a3510;
  --blue-1:       #8fd3ff;
  --blue-2:       #3a9bff;
  --blue-3:       #1c62d6;
  --blue-ink:     #0c2f78;
  --red-1:        #ff8a6a;
  --red-2:        #f23b26;
  --red-ink:      #6a0f08;
  --terracotta:   #d2582c;
  --leaf:         #4f9a3a;

  --text:         #3d2a18;
  --text-strong:  #2b1b0e;

  --radius:       22px;
  --maxw:         1180px;
  --header-h:     80px;
  --font-head:    'Lilita One', 'Arial Rounded MT Bold', 'Trebuchet MS', sans-serif;
  --font-body:    'Nunito', -apple-system, Segoe UI, Roboto, sans-serif;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 16px); }

body {
  font-family: var(--font-body);
  font-weight: 500;
  color: var(--text);
  background: var(--sand);
  line-height: 1.7;
  font-size: 17px;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

img { max-width: 100%; display: block; }
a { color: var(--blue-3); text-decoration: none; font-weight: 700; }
a:hover { text-decoration: underline; }

.container-gya1z { width: 100%; max-width: var(--maxw); margin: 0 auto; padding: 0 20px; }

/* ---------- Candy buttons ---------- */
.btn-gya1z {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  font-family: var(--font-head); font-weight: 400; font-size: 17px; letter-spacing: .5px;
  padding: 11px 24px; border-radius: 16px; cursor: pointer;
  border: 3px solid transparent; color: #fff;
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
  text-decoration: none; white-space: nowrap; line-height: 1.1;
}
.btn-gya1z:hover { text-decoration: none; transform: translateY(-2px); filter: brightness(1.06); }
.btn-gya1z:active { transform: translateY(3px); }

.btn-primary-gya1z {
  background: linear-gradient(180deg, var(--orange-1) 0%, var(--orange-2) 45%, var(--orange-3) 100%);
  border-color: var(--orange-ink);
  box-shadow: 0 5px 0 var(--orange-ink), 0 10px 18px rgba(122,53,16,.28),
              inset 0 3px 0 rgba(255,255,255,.55), inset 0 -4px 0 rgba(200,70,0,.3);
  text-shadow: 0 2px 0 var(--orange-ink), 1.5px 0 0 var(--orange-ink), -1.5px 0 0 var(--orange-ink), 0 -1.5px 0 var(--orange-ink);
}
.btn-primary-gya1z:active { box-shadow: 0 2px 0 var(--orange-ink), inset 0 3px 0 rgba(255,255,255,.5); }

.btn-ghost-gya1z {
  background: linear-gradient(180deg, var(--blue-1) 0%, var(--blue-2) 45%, var(--blue-3) 100%);
  border-color: var(--blue-ink);
  box-shadow: 0 5px 0 var(--blue-ink), 0 10px 18px rgba(12,47,120,.25),
              inset 0 3px 0 rgba(255,255,255,.55), inset 0 -4px 0 rgba(10,40,120,.3);
  text-shadow: 0 2px 0 var(--blue-ink), 1.5px 0 0 var(--blue-ink), -1.5px 0 0 var(--blue-ink), 0 -1.5px 0 var(--blue-ink);
}
.btn-ghost-gya1z:active { box-shadow: 0 2px 0 var(--blue-ink), inset 0 3px 0 rgba(255,255,255,.5); }

.btn-lg-gya1z { font-size: 21px; padding: 15px 34px; border-radius: 20px; }

/* ---------- Header ---------- */
.site-header-gya1z {
  position: sticky; top: 0; z-index: 50;
  height: var(--header-h);
  display: flex; align-items: center;
  background: rgba(255,248,234,.94);
  backdrop-filter: blur(10px);
  transition: box-shadow .2s ease;
}
/* terracotta roof-tile edge */
.site-header-gya1z::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -12px; height: 12px;
  background: radial-gradient(circle at 10px 0, var(--terracotta) 0 8px, #8f3415 8px 10.5px, transparent 11px) 0 0 / 20px 12px repeat-x;
  pointer-events: none;
}
.site-header-gya1z.scrolled { box-shadow: 0 10px 26px rgba(20,70,110,.18); }
.header-inner-gya1z { display: flex; align-items: center; justify-content: space-between; width: 100%; }
.logo-gya1z img { filter: drop-shadow(0 3px 0 rgba(90,50,20,.25)); }
.header-actions-gya1z { display: flex; gap: 12px; }

/* ---------- Hero: sunny sky, coast, sea ---------- */
.hero-gya1z {
  position: relative; isolation: isolate;
  padding: 56px 0 210px;
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 6%, rgba(255,252,220,.95) 0, rgba(255,240,170,.55) 80px, rgba(255,240,170,0) 260px),
    linear-gradient(180deg, var(--sky-1) 0%, var(--sky-2) 38%, var(--sky-3) 72%, var(--sky-4) 100%);
}
/* hazy mountains + cliffs with little houses + sea horizon */
.hero-gya1z::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 200px; z-index: 0;
  pointer-events: none;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 380 240'%3E%3Crect x='10' y='34' width='28' height='34' fill='%23f6d9b0' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='7' y='29' width='34' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='19.5' y='43' width='9' height='10' rx='4' fill='%232b74db'/%3E%3Crect x='46' y='40' width='26' height='34' fill='%23f3a873' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='43' y='35' width='32' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='54.5' y='49' width='9' height='10' rx='4' fill='%232b74db'/%3E%3Crect x='80' y='52' width='24' height='36' fill='%23fff1d6' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='77' y='47' width='30' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='87.5' y='61' width='9' height='10' rx='4' fill='%232b74db'/%3E%3Crect x='112' y='66' width='28' height='38' fill='%23f2b8cf' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='109' y='61' width='34' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='121.5' y='75' width='9' height='10' rx='4' fill='%232b74db'/%3E%3Crect x='150' y='86' width='24' height='36' fill='%23f6d9b0' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='147' y='81' width='30' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='157.5' y='95' width='9' height='10' rx='4' fill='%232b74db'/%3E %3Cpath d='M0 60 C70 52 130 86 180 118 C230 150 300 180 380 196 V240 H0Z' fill='%235f9a4e'/%3E %3Cpath d='M0 70 C60 64 110 92 150 116 C190 140 230 160 280 176' stroke='%2384c060' stroke-width='6' fill='none' stroke-linecap='round'/%3E %3Cpath d='M0 104 C60 100 120 126 160 150 C200 172 250 188 300 198 V240 H0Z' fill='%23c79a6b'/%3E %3Cpath d='M0 140 C50 140 100 160 140 178 C170 192 210 202 240 208 V240 H0Z' fill='%23a77a50'/%3E%3Crect x='0' y='184' width='380' height='56' fill='%232fb0d6'/%3E%3Crect x='0' y='182' width='380' height='6' fill='%2389dbf0'/%3E%3Cpath d='M40 200 h40 M150 214 h50 M260 202 h40' stroke='%23ffffff' stroke-opacity='.6' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") left bottom / auto 100% no-repeat,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 380 240'%3E %3Crect x='238' y='4' width='16' height='54' fill='%23f1d3a6' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='235' y='0' width='22' height='8' rx='2' fill='%23d2582c'/%3E%3Crect x='242' y='14' width='8' height='12' rx='4' fill='%232b74db'/%3E %3Crect x='344' y='28' width='28' height='34' fill='%23f3a873' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='341' y='23' width='34' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='353.5' y='37' width='9' height='10' rx='4' fill='%232b74db'/%3E%3Crect x='308' y='36' width='26' height='34' fill='%23fff1d6' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='305' y='31' width='32' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='316.5' y='45' width='9' height='10' rx='4' fill='%232b74db'/%3E%3Crect x='274' y='50' width='26' height='36' fill='%23f6d9b0' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='271' y='45' width='32' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='282.5' y='59' width='9' height='10' rx='4' fill='%232b74db'/%3E%3Crect x='204' y='86' width='26' height='34' fill='%23f2b8cf' stroke='%236b3c16' stroke-width='1.5'/%3E%3Crect x='201' y='81' width='32' height='7' rx='2' fill='%23d2582c'/%3E%3Crect x='212.5' y='95' width='9' height='10' rx='4' fill='%232b74db'/%3E %3Cpath d='M380 54 C310 48 250 84 200 116 C150 148 80 180 0 196 V240 H380Z' fill='%235a9449'/%3E %3Cpath d='M380 64 C320 60 270 90 230 114 C190 138 150 158 100 174' stroke='%2384c060' stroke-width='6' fill='none' stroke-linecap='round'/%3E %3Cpath d='M380 92 C320 90 260 118 220 144 C180 168 130 184 80 194 V240 H380Z' fill='%23c4956a'/%3E %3Cpath d='M380 134 C330 134 280 156 240 174 C210 188 170 200 140 206 V240 H380Z' fill='%23a77a50'/%3E%3Crect x='0' y='184' width='380' height='56' fill='%232fb0d6'/%3E%3Crect x='0' y='182' width='380' height='6' fill='%2389dbf0'/%3E%3Cpath d='M80 204 h50 M200 216 h40 M300 200 h50' stroke='%23ffffff' stroke-opacity='.6' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") right bottom / auto 100% no-repeat,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 240' preserveAspectRatio='none'%3E %3Cpath d='M0 150 C120 112 220 118 330 138 C420 96 520 92 610 128 C700 148 800 118 900 132 C1000 98 1120 94 1210 128 C1300 146 1380 118 1440 122 V240 H0Z' fill='%23a9d6ec'/%3E %3Cpath d='M0 168 C160 150 300 160 420 170 C560 150 700 156 820 168 C960 150 1100 156 1240 168 C1320 160 1400 162 1440 166 V240 H0Z' fill='%2394c8df'/%3E %3Crect x='0' y='184' width='1440' height='56' fill='%232fb0d6'/%3E%3Crect x='0' y='182' width='1440' height='6' fill='%2389dbf0'/%3E %3Cpath d='M300 204 h60 M620 214 h90 M980 202 h70 M1180 222 h60 M480 228 h50' stroke='%23ffffff' stroke-opacity='.6' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat;
}

.hero-sky-gya1z { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.cloud-gya1z {
  position: absolute; width: 180px; height: 52px; background: #fff; border-radius: 999px;
  filter: drop-shadow(0 8px 0 rgba(150,205,240,.55));
  animation: drift-gya1z 38s ease-in-out infinite alternate;
}
.cloud-gya1z::before, .cloud-gya1z::after { content: ""; position: absolute; background: #fff; border-radius: 50%; }
.cloud-gya1z::before { width: 78px; height: 78px; left: 26px; top: -38px; }
.cloud-gya1z::after  { width: 100px; height: 100px; left: 68px; top: -54px; }
.cloud-1-gya1z { top: 70px;  left: -40px; transform: scale(1.1); }
.cloud-2-gya1z { top: 150px; left: 42%;   transform: scale(.7); opacity: .9; animation-duration: 46s; }
.cloud-3-gya1z { top: 40px;  right: 18%;  transform: scale(.85); animation-duration: 52s; }
.cloud-4-gya1z { top: 260px; right: -60px; transform: scale(1.2); opacity: .95; animation-duration: 60s; }
@keyframes drift-gya1z { from { translate: 0 0; } to { translate: 60px 0; } }
.birds-gya1z { position: absolute; top: 110px; left: 30%; width: 120px; opacity: .9; }

/* hanging house block on a rope */
.hanging-gya1z {
  position: absolute; top: 0; z-index: 3;
  right: max(16px, calc(50% - 580px));
  width: 112px;
  transform-origin: 50% 0;
  animation: swing-gya1z 4.5s ease-in-out infinite alternate;
  filter: drop-shadow(0 12px 14px rgba(20,70,110,.3));
  pointer-events: none;
}
.hanging-gya1z svg { display: block; width: 100%; height: auto; }
@keyframes swing-gya1z { from { transform: rotate(-4deg); } to { transform: rotate(4deg); } }

.hero-grid-gya1z {
  position: relative; z-index: 2;
  display: grid; grid-template-columns: 1.05fr .95fr; gap: 48px; align-items: center;
}
.hero-inner-gya1z { position: relative; }

.hero-gya1z .eyebrow-gya1z {
  display: inline-block;
  font-family: var(--font-head); letter-spacing: 1.2px; text-transform: uppercase; font-size: 15px;
  color: #fff; padding: 7px 18px; border-radius: 12px;
  background:
    repeating-linear-gradient(180deg, transparent 0 9px, rgba(90,45,15,.16) 9px 10px),
    linear-gradient(180deg, var(--wood-1), var(--wood-2));
  border: 3px solid var(--brown);
  box-shadow: 0 4px 0 var(--brown), inset 0 2px 0 rgba(255,255,255,.35);
  text-shadow: 0 2px 0 var(--brown);
  transform: rotate(-2deg);
}

/* stone plaque logo-style title */
.hero-gya1z h1 {
  display: inline-block; text-align: center; text-transform: uppercase;
  font-family: var(--font-head); font-weight: 400; letter-spacing: 1px; line-height: .98;
  font-size: clamp(52px, 7.2vw, 96px);
  margin: 22px 0 26px; padding: 14px 34px 24px;
  border-radius: 26px; border: 5px solid var(--brown);
  background:
    linear-gradient(115deg, transparent 0 30%, rgba(120,60,20,.14) 30% 30.6%, transparent 30.6% 70%, rgba(120,60,20,.12) 70% 70.5%, transparent 70.5%),
    linear-gradient(180deg, var(--stone-1), var(--stone-2));
  box-shadow: 0 10px 0 var(--brown-deep), 0 24px 38px rgba(20,70,110,.35),
              inset 0 4px 0 rgba(255,255,255,.45), inset 0 -8px 0 rgba(120,60,20,.22);
  transform: rotate(-1.5deg);
}
.hero-gya1z h1 span {
  display: inline-block;
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
.h1-tower-gya1z {
  display: block !important;
  background-image: linear-gradient(180deg, #fff27a 0%, #ffc21f 45%, #ff8a12 100%);
  filter: drop-shadow(3px 0 0 var(--brown-ink)) drop-shadow(-3px 0 0 var(--brown-ink))
          drop-shadow(0 3px 0 var(--brown-ink)) drop-shadow(0 -3px 0 var(--brown-ink))
          drop-shadow(0 6px 0 #4a1f06);
}
.h1-rush-gya1z {
  background-image: linear-gradient(180deg, #b6ecff 0%, #3aa0ff 45%, #1b5fd6 100%);
  filter: drop-shadow(3px 0 0 var(--blue-ink)) drop-shadow(-3px 0 0 var(--blue-ink))
          drop-shadow(0 3px 0 var(--blue-ink)) drop-shadow(0 -3px 0 var(--blue-ink))
          drop-shadow(0 6px 0 #061d50);
}
.h1-two-gya1z {
  font-size: 1.12em;
  background-image: linear-gradient(180deg, #ffb08a 0%, #f23b26 50%, #b51d12 100%);
  filter: drop-shadow(3px 0 0 var(--red-ink)) drop-shadow(-3px 0 0 var(--red-ink))
          drop-shadow(0 3px 0 var(--red-ink)) drop-shadow(0 -3px 0 var(--red-ink))
          drop-shadow(0 6px 0 #400703);
}

.hero-gya1z .lead-gya1z {
  background: rgba(255,251,242,.93);
  border: 3px solid #fff; border-radius: var(--radius);
  padding: 18px 22px;
  box-shadow: 0 8px 24px rgba(20,80,130,.18);
  color: var(--text-strong); font-size: 18px; font-weight: 600; line-height: 1.65;
}
.hero-cta-gya1z { display: flex; gap: 16px; flex-wrap: wrap; align-items: center; margin-top: 26px; }
.hero-note-gya1z {
  display: inline-block; margin-top: 20px;
  font-size: 13.5px; font-weight: 800; color: #0f4f7a;
  background: rgba(255,255,255,.75); border-radius: 999px; padding: 4px 14px;
}

.hero-visual-gya1z { position: relative; margin: 40px 0 0; }
.hero-frame-gya1z {
  padding: 12px; border-radius: 30px;
  border: 4px solid var(--brown);
  background:
    linear-gradient(115deg, transparent 0 40%, rgba(120,60,20,.12) 40% 40.6%, transparent 40.6%),
    linear-gradient(180deg, var(--stone-1), var(--stone-2));
  box-shadow: 0 10px 0 var(--brown-deep), 0 26px 42px rgba(20,70,110,.35), inset 0 3px 0 rgba(255,255,255,.45);
  transform: rotate(2deg);
}
.hero-visual-gya1z { max-width: 500px; width: 100%; justify-self: center; }
.hero-frame-gya1z img {
  width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 20px;
  border: 3px solid var(--brown-deep);
}
.hero-chips-gya1z { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 28px; }
.chip-gya1z {
  font-family: var(--font-head); font-size: 17px; letter-spacing: .4px; color: #fff;
  padding: 7px 16px; border-radius: 999px; border: 3px solid;
  box-shadow: inset 0 2px 0 rgba(255,255,255,.5);
}
.chip-orange-gya1z { background: linear-gradient(180deg, var(--orange-1), var(--orange-3)); border-color: var(--orange-ink); box-shadow: 0 4px 0 var(--orange-ink), inset 0 2px 0 rgba(255,255,255,.5); text-shadow: 0 2px 0 var(--orange-ink); }
.chip-blue-gya1z   { background: linear-gradient(180deg, var(--blue-1), var(--blue-3)); border-color: var(--blue-ink); box-shadow: 0 4px 0 var(--blue-ink), inset 0 2px 0 rgba(255,255,255,.5); text-shadow: 0 2px 0 var(--blue-ink); }
.chip-red-gya1z    { background: linear-gradient(180deg, var(--red-1), var(--red-2)); border-color: var(--red-ink); box-shadow: 0 4px 0 var(--red-ink), inset 0 2px 0 rgba(255,255,255,.5); text-shadow: 0 2px 0 var(--red-ink); }

/* ---------- Bonus strip: stone plaques floating on the sea ---------- */
.bonus-strip-gya1z {
  position: relative; z-index: 2;
  padding: 18px 0 96px;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='60'%3E%3Cpath d='M12 22 q10 -8 20 0 q10 8 20 0' stroke='%23ffffff' stroke-opacity='.35' stroke-width='2.5' fill='none' stroke-linecap='round'/%3E%3Cpath d='M92 46 q8 -6 16 0 q8 6 16 0' stroke='%23ffffff' stroke-opacity='.28' stroke-width='2.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") 0 0 / 160px 60px,
    linear-gradient(180deg, var(--sea-1) 0%, var(--sea-2) 55%, var(--sea-3) 100%);
}
/* white foam edge into the sand */
.bonus-strip-gya1z::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 70px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath d='M0 24 C120 4 240 4 360 24 C480 44 600 44 720 24 C840 4 960 4 1080 24 C1200 44 1320 44 1440 24 V70 H0Z' fill='%23ffffff' fill-opacity='.85'/%3E%3Cpath d='M0 34 C120 14 240 14 360 34 C480 54 600 54 720 34 C840 14 960 14 1080 34 C1200 54 1320 54 1440 34 V70 H0Z' fill='%23f7e6c8'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat;
}
.bonus-grid-gya1z { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.bonus-card-gya1z {
  position: relative; display: block;
  padding: 22px 24px 24px; border-radius: var(--radius);
  border: 4px solid var(--brown);
  background:
    linear-gradient(120deg, transparent 0 62%, rgba(120,60,20,.12) 62% 62.6%, transparent 62.6%),
    linear-gradient(180deg, var(--stone-1), var(--stone-2));
  box-shadow: 0 8px 0 var(--brown-deep), 0 20px 30px rgba(5,50,85,.35),
              inset 0 3px 0 rgba(255,255,255,.45), inset 0 -6px 0 rgba(120,60,20,.2);
  transition: transform .15s ease;
}
.bonus-card-gya1z:hover { transform: translateY(-4px) rotate(-.6deg); text-decoration: none; }
.bonus-card-gya1z .label-gya1z {
  display: inline-block; text-transform: uppercase; letter-spacing: 1.5px;
  font-size: 12px; font-weight: 900; color: var(--brown);
  background: rgba(255,255,255,.45); border-radius: 999px; padding: 3px 12px; margin-bottom: 10px;
}
.bonus-card-gya1z .big-gya1z {
  font-family: var(--font-head); font-size: clamp(24px, 2.3vw, 30px); line-height: 1.15; letter-spacing: .5px;
  color: #ffc531;
  text-shadow: 2px 0 0 var(--brown-ink), -2px 0 0 var(--brown-ink), 0 2px 0 var(--brown-ink), 0 -2px 0 var(--brown-ink),
               2px 2px 0 var(--brown-ink), -2px -2px 0 var(--brown-ink), 2px -2px 0 var(--brown-ink), -2px 2px 0 var(--brown-ink),
               0 5px 0 var(--brown-ink);
}
.bonus-card-gya1z:nth-child(2) .big-gya1z {
  color: #5cb8ff;
  text-shadow: 2px 0 0 var(--blue-ink), -2px 0 0 var(--blue-ink), 0 2px 0 var(--blue-ink), 0 -2px 0 var(--blue-ink),
               2px 2px 0 var(--blue-ink), -2px -2px 0 var(--blue-ink), 2px -2px 0 var(--blue-ink), -2px 2px 0 var(--blue-ink),
               0 5px 0 var(--blue-ink);
}
.bonus-card-gya1z:nth-child(3) .big-gya1z {
  color: #ff6a4d;
  text-shadow: 2px 0 0 var(--red-ink), -2px 0 0 var(--red-ink), 0 2px 0 var(--red-ink), 0 -2px 0 var(--red-ink),
               2px 2px 0 var(--red-ink), -2px -2px 0 var(--red-ink), 2px -2px 0 var(--red-ink), -2px 2px 0 var(--red-ink),
               0 5px 0 var(--red-ink);
}
.bonus-card-gya1z .desc-gya1z { font-size: 15px; font-weight: 700; color: #4a2a10; margin-top: 10px; line-height: 1.5; }

/* ---------- Generic sections & titles ---------- */
section { padding: 30px 0; }

.section-title-gya1z {
  font-family: var(--font-head); font-weight: 400; letter-spacing: .5px; line-height: 1.15;
  font-size: clamp(28px, 3.4vw, 40px); margin: 14px 0 24px;
  display: flex; align-items: center; gap: 14px;
  color: #ffa41c;
  text-shadow: 2px 0 0 var(--brown-ink), -2px 0 0 var(--brown-ink), 0 2px 0 var(--brown-ink), 0 -2px 0 var(--brown-ink),
               2px 2px 0 var(--brown-ink), -2px -2px 0 var(--brown-ink), 2px -2px 0 var(--brown-ink), -2px 2px 0 var(--brown-ink),
               0 5px 0 var(--brown-ink);
}

/* ---------- Article: plaster wall panel ---------- */
.article-gya1z { padding: 0 0 40px; position: relative; z-index: 3; }
.article-gya1z > .container-gya1z {
  width: calc(100% - 32px);
  margin-top: -18px;
  padding: 46px 54px 50px;
  background: var(--plaster);
  border: 4px solid #fff;
  border-radius: 32px;
  box-shadow: 0 0 0 3px #e9cfa3, 0 20px 44px rgba(140,90,30,.16);
}

.article-gya1z h2 {
  display: flex; align-items: center; gap: 14px;
  font-family: var(--font-head); font-weight: 400; letter-spacing: .5px; line-height: 1.15;
  font-size: clamp(27px, 3vw, 36px);
  margin: 46px 0 16px;
  color: #ffa41c;
  text-shadow: 2px 0 0 var(--brown-ink), -2px 0 0 var(--brown-ink), 0 2px 0 var(--brown-ink), 0 -2px 0 var(--brown-ink),
               2px 2px 0 var(--brown-ink), -2px -2px 0 var(--brown-ink), 2px -2px 0 var(--brown-ink), -2px 2px 0 var(--brown-ink),
               0 4px 0 var(--brown-ink);
}
.article-gya1z h2:first-child { margin-top: 0; }
.article-gya1z h3 {
  font-family: var(--font-head); font-weight: 400; letter-spacing: .4px;
  font-size: 24px; margin: 26px 0 10px; color: var(--blue-2);
  text-shadow: 1.5px 0 0 var(--blue-ink), -1.5px 0 0 var(--blue-ink), 0 1.5px 0 var(--blue-ink), 0 -1.5px 0 var(--blue-ink), 0 3px 0 var(--blue-ink);
}
.article-gya1z p { margin-bottom: 16px; color: var(--text); }
.article-gya1z p strong { color: var(--text-strong); }

/* brick bullets */
.article-gya1z ul, .article-gya1z ol { margin: 14px 0 20px; padding-left: 0; list-style: none; }
.article-gya1z li { position: relative; padding-left: 36px; margin-bottom: 10px; line-height: 1.65; }
.article-gya1z ul li::before {
  content: ""; position: absolute; left: 4px; top: .42em; width: 18px; height: 14px; border-radius: 4px;
  background: linear-gradient(180deg, #ff9a63, var(--terracotta));
  border: 2px solid var(--brown-ink); box-shadow: 0 2px 0 var(--brown-ink);
}
.article-gya1z ul li:nth-child(even)::before {
  background: linear-gradient(180deg, #7cc4ff, var(--blue-3));
  border-color: var(--blue-ink); box-shadow: 0 2px 0 var(--blue-ink);
}

/* ---------- Facts table: wooden sign + plaster rows ---------- */
.data-table-wrap-gya1z {
  margin: 28px 0 10px;
  background: var(--plaster);
  border: 4px solid var(--brown); border-radius: var(--radius);
  overflow: hidden;
  box-shadow: 0 8px 0 var(--brown-deep), 0 20px 32px rgba(110,60,20,.18);
}
.data-table-wrap-gya1z .tbl-head-gya1z {
  padding: 14px 24px;
  font-family: var(--font-head); font-size: 23px; letter-spacing: .6px; color: #fff;
  background:
    repeating-linear-gradient(180deg, transparent 0 15px, rgba(90,45,15,.2) 15px 17px),
    linear-gradient(180deg, var(--wood-1), var(--wood-2));
  border-bottom: 4px solid var(--brown);
  text-shadow: 2px 0 0 var(--brown), -2px 0 0 var(--brown), 0 2px 0 var(--brown), 0 -2px 0 var(--brown), 0 4px 0 var(--brown);
}
table.data-table-gya1z { width: 100%; border-collapse: collapse; }
table.data-table-gya1z th, table.data-table-gya1z td { text-align: left; padding: 13px 24px; font-size: 15.5px; }
table.data-table-gya1z tr { border-bottom: 2px dashed #ecd3a8; }
table.data-table-gya1z tr:last-child { border-bottom: none; }
table.data-table-gya1z tr:nth-child(even) { background: var(--plaster-2); }
table.data-table-gya1z th { color: #8a4a1c; font-weight: 800; width: 42%; vertical-align: top; }
table.data-table-gya1z td { color: var(--text-strong); font-weight: 700; }
/* multi-column table (Bonus Round example) */
table.data-table-cols-gya1z thead tr { background: #fde3b8; border-bottom: 3px solid #e0bd85; }
table.data-table-cols-gya1z thead th { width: auto; color: var(--brown); font-weight: 900; text-transform: uppercase; font-size: 13px; letter-spacing: 1px; }
table.data-table-cols-gya1z tbody td:first-child { width: 18%; color: #8a4a1c; font-weight: 900; }
table.data-table-cols-gya1z tbody td:nth-child(2) { width: 28%; font-family: var(--font-head); font-weight: 400; font-size: 18px; color: var(--blue-3); }

/* numbered list: orange step coins */
.article-gya1z ol { counter-reset: step-gya1z; }
.article-gya1z ol li { counter-increment: step-gya1z; padding-left: 44px; margin-bottom: 12px; }
.article-gya1z ol li::before {
  content: counter(step-gya1z);
  position: absolute; left: 0; top: .05em;
  display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; border-radius: 50%;
  font-family: var(--font-head); font-size: 16px; color: #fff;
  background: linear-gradient(180deg, var(--orange-1), var(--orange-3));
  border: 2.5px solid var(--orange-ink); box-shadow: 0 2px 0 var(--orange-ink);
  text-shadow: 0 1.5px 0 var(--orange-ink);
}
.article-gya1z li strong { color: var(--text-strong); font-weight: 900; }

/* ---------- Table of Contents (ToC) Accordion ---------- */
.toc-wrap-gya1z {
  margin: 0 0 38px;
}
.article-gya1z .toc-wrap-gya1z + h2 {
  margin-top: 36px;
}
.toc-accordion-gya1z {
  background: var(--plaster-2);
  border: 3px solid #e9cfa3;
  border-radius: var(--radius);
  box-shadow: 0 6px 0 #dcb57a, 0 16px 26px rgba(140,90,30,.10);
  overflow: hidden;
  transition: box-shadow .2s ease;
}
.toc-summary-gya1z {
  display: flex;
  align-items: center;
  gap: 12px;
  list-style: none;
  cursor: pointer;
  position: relative;
  padding: 16px 60px 16px 20px;
  font-family: var(--font-head);
  font-weight: 400;
  font-size: 21px;
  line-height: 1.3;
  color: var(--blue-3);
  user-select: none;
  transition: color .2s ease, background-color .2s ease;
}
.toc-summary-gya1z::-webkit-details-marker {
  display: none;
}
.toc-summary-gya1z:hover {
  color: var(--blue-ink);
  background-color: rgba(255, 255, 255, .45);
}
.toc-summary-gya1z .toc-icon-gya1z {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  color: #fff;
  flex-shrink: 0;
  background: linear-gradient(180deg, var(--orange-1), var(--orange-3));
  border: 2.5px solid var(--orange-ink);
  box-shadow: 0 2px 0 var(--orange-ink);
}
.toc-summary-gya1z .toc-icon-gya1z svg {
  display: block;
}
.toc-summary-gya1z .toc-title-gya1z {
  letter-spacing: .4px;
}
.toc-summary-gya1z::after {
  content: "+";
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  border-radius: 9px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #fff;
  background: linear-gradient(180deg, var(--blue-1), var(--blue-3));
  border: 2.5px solid var(--blue-ink);
  box-shadow: 0 2px 0 var(--blue-ink);
  transition: transform .2s ease;
}
.toc-accordion-gya1z[open] .toc-summary-gya1z::after {
  content: "–";
}
.toc-body-gya1z {
  border-top: 2px dashed #ecd3a8;
  padding: 18px 24px 22px;
  background: #fffdf9;
}
.article-gya1z ol.toc-list-gya1z {
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px 28px;
}
.article-gya1z ol.toc-list-gya1z li {
  padding-left: 36px;
  margin-bottom: 0;
  line-height: 1.45;
}
.article-gya1z ol.toc-list-gya1z li::before {
  width: 25px;
  height: 25px;
  font-size: 13.5px;
  top: 0;
  border-width: 2px;
  box-shadow: 0 1.5px 0 var(--orange-ink);
}
.toc-list-gya1z a {
  color: var(--text-strong);
  font-weight: 700;
  font-size: 15.5px;
  text-decoration: none;
  transition: color .15s ease;
}
.toc-list-gya1z a:hover {
  color: var(--blue-3);
  text-decoration: underline;
}
@media (max-width: 760px) {
  .article-gya1z ol.toc-list-gya1z {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .toc-summary-gya1z {
    font-size: 19px;
    padding: 14px 54px 14px 16px;
  }
  .toc-body-gya1z {
    padding: 14px 16px 18px;
  }
}

/* ---------- In-content promo banner ---------- */
.promo-banner-gya1z {
  position: relative; overflow: hidden;
  display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
  margin: 28px 0 24px; padding: 30px 34px 34px;
  border-radius: 26px; border: 4px solid var(--brown);
  background:
    radial-gradient(60px 26px at 86% 22%, #fff 98%, transparent 100%),
    radial-gradient(44px 22px at 80% 26%, #fff 98%, transparent 100%),
    radial-gradient(50px 22px at 92% 27%, #fff 98%, transparent 100%),
    linear-gradient(180deg, var(--sky-2) 0%, var(--sky-3) 62%, var(--sea-1) 62%, var(--sea-2) 100%);
  box-shadow: 0 8px 0 var(--brown-deep), 0 22px 34px rgba(20,70,110,.25);
}
.promo-text-gya1z { display: flex; flex-direction: column; gap: 6px; position: relative; z-index: 1; }
.promo-label-gya1z {
  align-self: flex-start;
  font-family: var(--font-head); font-size: 14px; letter-spacing: 1.2px; text-transform: uppercase; color: #fff;
  padding: 5px 14px; border-radius: 10px; border: 3px solid var(--brown);
  background: repeating-linear-gradient(180deg, transparent 0 9px, rgba(90,45,15,.16) 9px 10px), linear-gradient(180deg, var(--wood-1), var(--wood-2));
  box-shadow: 0 3px 0 var(--brown); text-shadow: 0 2px 0 var(--brown);
}
.promo-big-gya1z {
  font-family: var(--font-head); font-size: clamp(28px, 3.6vw, 42px); line-height: 1.1; color: #ffc531;
  text-shadow: 2.5px 0 0 var(--brown-ink), -2.5px 0 0 var(--brown-ink), 0 2.5px 0 var(--brown-ink), 0 -2.5px 0 var(--brown-ink),
               2px 2px 0 var(--brown-ink), -2px -2px 0 var(--brown-ink), 2px -2px 0 var(--brown-ink), -2px 2px 0 var(--brown-ink),
               0 6px 0 var(--brown-ink);
}
.promo-sub-gya1z {
  align-self: flex-start; font-weight: 800; color: #0d3f63;
  background: rgba(255,255,255,.85); border-radius: 999px; padding: 3px 14px; font-size: 15px;
}
.promo-banner-gya1z .btn-gya1z { position: relative; z-index: 1; }

/* ---------- Game cards: white window frames with blue trim ---------- */
.games-grid-gya1z { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; margin: 26px 0 12px; }
.game-card-gya1z {
  display: block; position: relative; overflow: hidden; text-decoration: none;
  background: #fff; border: 5px solid #fff; border-radius: 24px;
  box-shadow: 0 0 0 3px var(--blue-3), 0 7px 0 3px var(--blue-ink), 0 20px 28px rgba(12,47,120,.22);
  transition: transform .18s ease, box-shadow .18s ease;
}
.game-card-gya1z:hover { transform: translateY(-6px) rotate(-1deg); text-decoration: none; }
.game-card-gya1z img { aspect-ratio: 1/1; object-fit: cover; width: 100%; display: block; border-radius: 18px; }

.game-top-gya1z {
  position: absolute; top: 0; left: 0; right: 0;
  display: flex; align-items: center; justify-content: space-between;
  padding: 8px; gap: 6px;
}
.game-rating-gya1z {
  display: inline-flex; align-items: center; gap: 4px;
  background: linear-gradient(180deg, var(--orange-1), var(--orange-2));
  border: 2px solid var(--orange-ink); color: #5a2405;
  font-size: 12.5px; font-weight: 900; padding: 2px 9px; border-radius: 999px;
  box-shadow: 0 2px 0 var(--orange-ink);
}
.game-rating-gya1z .star-gya1z { color: var(--orange-ink); font-size: 11px; }
.game-players-gya1z {
  display: inline-flex; align-items: center; gap: 5px;
  background: rgba(255,255,255,.94); color: #163a5c;
  font-size: 11.5px; font-weight: 800; padding: 3px 9px; border-radius: 999px;
  box-shadow: 0 2px 0 rgba(12,47,120,.25);
}
.game-players-gya1z .dot-gya1z {
  width: 7px; height: 7px; border-radius: 50%; background: #32b85f;
  animation: pulse-gya1z 2s infinite;
}
@keyframes pulse-gya1z {
  0%   { box-shadow: 0 0 0 0 rgba(50,184,95,.55); }
  70%  { box-shadow: 0 0 0 7px rgba(50,184,95,0); }
  100% { box-shadow: 0 0 0 0 rgba(50,184,95,0); }
}
.game-name-gya1z {
  position: absolute; left: 0; right: 0; bottom: 0;
  padding: 7px 10px 8px; text-align: center;
  font-family: var(--font-head); font-size: 17px; letter-spacing: .4px; color: #fff;
  background: linear-gradient(180deg, #4aa8ff, var(--blue-3));
  border-top: 3px solid var(--blue-ink);
  text-shadow: 0 2px 0 var(--blue-ink);
  border-radius: 0 0 18px 18px;
}
.game-hover-gya1z {
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  background: rgba(255,190,60,.35); opacity: 0; transition: opacity .18s ease; border-radius: 18px;
}
.game-card-gya1z:hover .game-hover-gya1z { opacity: 1; }
.game-hover-gya1z .btn-gya1z { pointer-events: none; }

/* ---------- Payment badges: wooden crates ---------- */
.pay-row-gya1z { display: flex; flex-wrap: wrap; gap: 12px; margin: 18px 0 8px; }
.pay-badge-gya1z {
  font-family: var(--font-head); font-size: 16px; letter-spacing: .4px; color: #fff;
  padding: 8px 16px; border-radius: 10px;
  background:
    repeating-linear-gradient(180deg, transparent 0 11px, rgba(90,45,15,.28) 11px 12.5px),
    linear-gradient(180deg, #d0904e, #a8642b);
  border: 3px solid var(--brown);
  box-shadow: 0 4px 0 var(--brown), inset 0 2px 0 rgba(255,255,255,.3);
  text-shadow: 0 2px 0 var(--brown), 1px 0 0 var(--brown), -1px 0 0 var(--brown);
}

/* ---------- FAQ ---------- */
.faq-section-gya1z { padding: 34px 0 20px; }
.faq-list-gya1z { display: flex; flex-direction: column; gap: 16px; margin-top: 8px; }
.faq-list-gya1z .faq-item-gya1z {
  margin: 0; overflow: hidden;
  background: var(--plaster);
  border: 3px solid #e9cfa3; border-radius: var(--radius);
  box-shadow: 0 6px 0 #dcb57a, 0 16px 26px rgba(140,90,30,.12);
}
.faq-list-gya1z .faq-question-gya1z {
  display: flex; gap: 12px; align-items: center;
  list-style: none; cursor: pointer; position: relative;
  padding: 18px 60px 18px 20px;
  font-family: var(--font-head); font-weight: 400; letter-spacing: .3px;
  font-size: 20px; line-height: 1.3; color: var(--blue-3);
}
.faq-list-gya1z .faq-question-gya1z::-webkit-details-marker { display: none; }
.faq-list-gya1z .faq-question-gya1z::after {
  content: "+"; position: absolute; right: 18px; top: 50%; transform: translateY(-50%);
  width: 30px; height: 30px; border-radius: 9px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 22px; color: #fff;
  background: linear-gradient(180deg, var(--blue-1), var(--blue-3));
  border: 2.5px solid var(--blue-ink); box-shadow: 0 2px 0 var(--blue-ink);
  transition: transform .2s ease;
}
.faq-list-gya1z .faq-item-gya1z[open] .faq-question-gya1z::after { content: "–"; }
.faq-list-gya1z .faq-question-gya1z:hover { color: var(--blue-ink); }
.faq-list-gya1z .faq-question-gya1z::before {
  content: "?"; flex-shrink: 0;
  display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; border-radius: 50%;
  font-size: 18px; color: #fff;
  background: linear-gradient(180deg, var(--orange-1), var(--orange-3));
  border: 2.5px solid var(--orange-ink); box-shadow: 0 2px 0 var(--orange-ink);
  text-shadow: 0 1.5px 0 var(--orange-ink);
}
.faq-list-gya1z .faq-item-gya1z p { margin: 0; padding: 0 22px 20px 64px; color: var(--text); line-height: 1.65; }

/* legacy accordion markup support */
.faq-q { width: 100%; text-align: left; background: none; border: none; cursor: pointer; font: inherit; color: var(--blue-3); padding: 18px 52px 18px 20px; position: relative; }
.faq-a { max-height: 0; overflow: hidden; transition: max-height .3s ease; }

/* ---------- Footer: deep sea ---------- */
.site-footer-gya1z {
  position: relative; margin-top: 20px; padding: 104px 0 34px;
  color: #d9f2ff;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='60'%3E%3Cpath d='M12 22 q10 -8 20 0 q10 8 20 0' stroke='%23ffffff' stroke-opacity='.14' stroke-width='2.5' fill='none' stroke-linecap='round'/%3E%3Cpath d='M92 46 q8 -6 16 0 q8 6 16 0' stroke='%23ffffff' stroke-opacity='.1' stroke-width='2.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") 0 0 / 160px 60px,
    linear-gradient(180deg, var(--sea-2) 0%, #0f6f9e 45%, var(--sea-deep) 100%);
}
.site-footer-gya1z::before {
  content: ""; position: absolute; left: 0; right: 0; top: -1px; height: 70px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath d='M0 0 H1440 V40 C1320 62 1200 62 1080 44 C960 26 840 26 720 44 C600 62 480 62 360 44 C240 26 120 26 0 44Z' fill='%23ffffff' fill-opacity='.8'/%3E%3Cpath d='M0 0 H1440 V32 C1320 54 1200 54 1080 36 C960 18 840 18 720 36 C600 54 480 54 360 36 C240 18 120 18 0 36Z' fill='%23f7e6c8'/%3E%3C/svg%3E") center top / 100% 100% no-repeat;
}
.footer-inner-gya1z { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; justify-content: space-between; }
.footer-inner-gya1z img { height: 56px; filter: drop-shadow(0 4px 0 rgba(0,30,60,.35)); }
.footer-note-gya1z { display: flex; align-items: center; font-size: 14px; font-weight: 600; color: #d9f2ff; max-width: 720px; }
.age-badge-gya1z {
  display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
  width: 46px; height: 46px; border-radius: 50%; margin-right: 14px;
  font-family: var(--font-head); font-size: 17px; color: #fff;
  background: linear-gradient(180deg, var(--red-1), var(--red-2));
  border: 3px solid var(--red-ink); box-shadow: 0 3px 0 var(--red-ink);
  text-shadow: 0 2px 0 var(--red-ink);
}
.footer-bottom-gya1z { margin-top: 22px; padding-top: 18px; border-top: 2px dashed rgba(255,255,255,.25); font-size: 13px; color: #a9d8f0; }

/* ---------- Responsive ---------- */
@media (max-width: 1000px) {
  .hero-grid-gya1z { grid-template-columns: 1fr; gap: 10px; }
  .hero-visual-gya1z { max-width: 560px; width: 100%; margin: 26px auto 0; }
  .hanging-gya1z { width: 84px; }
  .bonus-grid-gya1z { grid-template-columns: 1fr; }
  .games-grid-gya1z { grid-template-columns: repeat(2, 1fr); }
  .faq-list-gya1z { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .hanging-gya1z { display: none; }
  .birds-gya1z { left: auto; right: 10%; top: 60px; width: 80px; }
}
@media (max-width: 560px) {
  :root { --header-h: 70px; }
  body { font-size: 16px; }
  .logo-gya1z img { height: 44px !important; }
  .btn-gya1z { padding: 9px 15px; font-size: 15px; border-radius: 14px; }
  .btn-lg-gya1z { padding: 13px 22px; font-size: 18px; }
  .header-actions-gya1z { gap: 8px; }
  .hero-gya1z { padding: 30px 0 140px; }
  .hero-gya1z::after { height: 130px; }
  .hero-gya1z h1 { padding: 10px 22px 18px; border-width: 4px; margin: 18px 0 22px; }
  .hero-gya1z .lead-gya1z { font-size: 16px; padding: 14px 16px; }
  .hero-frame-gya1z { padding: 8px; border-radius: 22px; }
  .hero-frame-gya1z img { border-radius: 14px; }
  .chip-gya1z { font-size: 15px; padding: 6px 12px; }
  .bonus-strip-gya1z { padding-bottom: 80px; }
  .article-gya1z > .container-gya1z { width: calc(100% - 20px); padding: 28px 18px 32px; border-radius: 24px; }
  .article-gya1z h2 { gap: 10px; }
  .games-grid-gya1z { gap: 16px; }
  .game-name-gya1z { font-size: 15px; }
  table.data-table-gya1z th, table.data-table-gya1z td { padding: 10px 14px; font-size: 14px; }
  .faq-list-gya1z .faq-item-gya1z p { padding-left: 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .cloud-gya1z, .hanging-gya1z, .game-players-gya1z .dot-gya1z { animation: none; }
  html { scroll-behavior: auto; }
}

/* main hero action: demo */
.btn-main-gya1z { font-size: 23px; padding: 17px 40px; }
@media (max-width: 560px) { .btn-main-gya1z { font-size: 20px; padding: 14px 26px; } }

/* bold button labels: Lilita One has a single heavy weight, so keep the glyphs crisp instead of faux-bolding */
.btn-gya1z strong { font-weight: inherit; }

/* fact cards are links: their text is wrapped in <strong>; keep the original weights */
.bonus-card-gya1z strong { font-weight: inherit; }

/* footer disclaimer */
.footer-inner-gya1z { align-items: flex-start; flex-wrap: nowrap; }
.footer-text-gya1z { display: flex; flex-direction: column; gap: 12px; max-width: 760px; }
.site-footer-gya1z .footer-note-gya1z { display: block; max-width: none; font-size: 14px; line-height: 1.6; }
.site-footer-gya1z .footer-age-gya1z { display: flex; align-items: center; }
.site-footer-gya1z a { color: #ffd27a; }
@media (max-width: 700px) { .footer-inner-gya1z { flex-wrap: wrap; } }

/* footer trust & responsible gambling logos */
.footer-logos-gya1z {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 18px 34px;
  margin-top: 26px; padding: 18px 20px;
  border-radius: 18px; background: rgba(0,0,0,.22); border: 2px solid rgba(255,255,255,.08);
}
.footer-logos-gya1z img { height: 40px; width: auto; opacity: .9; transition: opacity .15s ease; }
.footer-logos-gya1z img:hover { opacity: 1; }
@media (max-width: 560px) { .footer-logos-gya1z { gap: 14px 22px; } .footer-logos-gya1z img { height: 32px; } }

.footer-logo-gya1z { display: inline-flex; line-height: 0; }
.footer-logo-gya1z:hover img { opacity: 1; }

/* ---------- Demo modal ---------- */
button.btn-gya1z { font-family: var(--font-head); }
.demo-modal-gya1z { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; padding: 70px 24px 24px; }
.demo-modal-gya1z[hidden] { display: none; }
.demo-backdrop-gya1z { position: absolute; inset: 0; background: rgba(6,40,66,.82); backdrop-filter: blur(4px); cursor: pointer; }
.demo-dialog-gya1z {
  position: relative; width: min(1200px, 100%, calc((100dvh - 110px) * 16 / 9));
  aspect-ratio: 16 / 9;
  border-radius: 22px; border: 4px solid var(--brown);
  background: #0b2238;
  box-shadow: 0 10px 0 var(--brown-deep), 0 30px 60px rgba(0,0,0,.45);
}
.demo-frame-gya1z { position: absolute; inset: 0; border-radius: 18px; overflow: hidden; }
.demo-frame-gya1z iframe { display: block; width: 100%; height: 100%; border: 0; }
/* close icon sits outside the dialog so it never covers the game */
.demo-close-gya1z {
  position: absolute; top: -58px; right: -6px;
  width: 46px; height: 46px; border-radius: 50%; cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center; color: #fff;
  background: linear-gradient(180deg, var(--red-1), var(--red-2));
  border: 3px solid var(--red-ink); box-shadow: 0 4px 0 var(--red-ink), inset 0 2px 0 rgba(255,255,255,.45);
  transition: transform .12s ease;
}
.demo-close-gya1z:hover { transform: translateY(-2px) rotate(90deg); }
.demo-close-gya1z:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
body.demo-open-gya1z { overflow: hidden; }
@media (max-width: 700px), (orientation: portrait) and (max-width: 1000px) {
  .demo-modal-gya1z { padding: 66px 10px 10px; align-items: stretch; }
  .demo-dialog-gya1z { width: 100%; height: 100%; aspect-ratio: auto; border-width: 3px; border-radius: 16px; }
  .demo-frame-gya1z { border-radius: 12px; }
  .demo-close-gya1z { top: -56px; right: 0; }
}

/* in-article banners */
.article-figure-gya1z { margin: 26px 0 24px; }
.article-figure-gya1z img {
  width: 100%; height: auto; aspect-ratio: 960 / 536;
  border-radius: 24px; border: 4px solid var(--brown);
  box-shadow: 0 8px 0 var(--brown-deep), 0 20px 32px rgba(110,60,20,.18);
}
@media (max-width: 560px) { .article-figure-gya1z img { border-radius: 16px; border-width: 3px; } }

/* ---------- Trust pages ---------- */
.page-hero-gya1z { padding: 40px 0 150px; }
.page-hero-gya1z::after { height: 150px; }
.page-hero-inner-gya1z { position: relative; z-index: 2; max-width: 860px; }
.page-hero-gya1z h1 {
  display: inline-block; text-transform: none; color: #ffc531;
  font-size: clamp(40px, 5.4vw, 66px); padding: 12px 30px 18px; margin: 16px 0 22px;
  text-shadow: 3px 0 0 var(--brown-ink), -3px 0 0 var(--brown-ink), 0 3px 0 var(--brown-ink), 0 -3px 0 var(--brown-ink),
               2px 2px 0 var(--brown-ink), -2px -2px 0 var(--brown-ink), 2px -2px 0 var(--brown-ink), -2px 2px 0 var(--brown-ink),
               0 6px 0 var(--brown-ink);
}
.breadcrumbs-gya1z {
  display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap;
  font-size: 14px; font-weight: 700; color: #0f4f7a;
  background: rgba(255,255,255,.8); border-radius: 999px; padding: 5px 16px;
}
.breadcrumbs-gya1z a { color: var(--blue-3); }
.page-sea-gya1z { padding: 0 0 70px; }

/* visual section titles on trust pages are <div>, not headings */
.article-gya1z .section-heading-gya1z {
  font-family: var(--font-head); font-weight: 400; letter-spacing: .5px; line-height: 1.15;
  font-size: clamp(27px, 3vw, 36px); margin: 46px 0 16px; color: #ffa41c;
  text-shadow: 2px 0 0 var(--brown-ink), -2px 0 0 var(--brown-ink), 0 2px 0 var(--brown-ink), 0 -2px 0 var(--brown-ink),
               2px 2px 0 var(--brown-ink), -2px -2px 0 var(--brown-ink), 2px -2px 0 var(--brown-ink), -2px 2px 0 var(--brown-ink),
               0 4px 0 var(--brown-ink);
}
.article-gya1z > .container-gya1z > .section-heading-gya1z:first-child { margin-top: 0; }
.page-note-gya1z { margin-top: 26px; font-size: 14px; font-weight: 700; color: #8a4a1c; }
.trust-page-gya1z .article-gya1z p a { color: var(--blue-3); }

/* footer page navigation */
.footer-nav-gya1z {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 26px;
  margin-top: 28px; padding-top: 22px; border-top: 2px dashed rgba(255,255,255,.25);
}
.footer-nav-gya1z a { color: #fff; font-size: 15px; }
.footer-nav-gya1z a:hover { color: #ffd27a; }
.footer-nav-gya1z a[aria-current="page"] { color: #ffd27a; }
@media (max-width: 560px) {
  .page-hero-gya1z { padding: 26px 0 120px; }
  .page-hero-gya1z::after { height: 110px; }
  .page-hero-gya1z h1 { padding: 8px 20px 14px; }
}
.breadcrumbs-gya1z { display: flex; width: fit-content; }
.trust-page-gya1z table.data-table-cols-gya1z tbody td:nth-child(2) { font-family: var(--font-body); font-weight: 700; font-size: 15.5px; color: var(--text-strong); }
.trust-page-gya1z table.data-table-cols-gya1z tbody td:first-child { width: auto; }
.data-table-wrap-gya1z { margin-bottom: 24px; }
