:root {
  --summer-sky: #31c7dc;
  --summer-deep: #073a57;
  --summer-water: #079db8;
  --summer-mint: #58e2c2;
  --summer-sun: #ffd166;
  --summer-coral: #ff7a66;
  --summer-sand: #e8bd79;
  --summer-night: #07131f;
}

body.summer-theme {
  --background: #08131d;
  --main-color: #22c7d9;
  --secondary-color: #ff8b73;
  --glass-scrollbar-track: rgba(5, 34, 48, 0.68);
  background:
    radial-gradient(circle at 14% 8%, rgba(255, 177, 92, 0.12), transparent 28rem),
    radial-gradient(circle at 84% 22%, rgba(45, 211, 204, 0.11), transparent 34rem),
    linear-gradient(180deg, #07131f 0%, #081821 38%, #07131f 100%);
}

body.summer-theme::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  opacity: 0.28;
  background:
    radial-gradient(circle at 16% 10%, rgba(255,196,119,.16), transparent 24rem),
    radial-gradient(circle at 84% 24%, rgba(61,217,209,.14), transparent 31rem),
    radial-gradient(ellipse at 50% 78%, rgba(20,125,146,.1), transparent 38rem);
  mask-image: linear-gradient(to bottom, black, transparent 76%);
}

.summer-atmosphere {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 2;
  overflow: hidden;
}

.summer-glint {
  --size: 5px;
  position: absolute;
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  background: rgba(255,255,255,0.76);
  box-shadow: 0 0 12px rgba(255, 209, 102, 0.65);
  opacity: 0;
  animation: summerGlint 7s ease-in-out infinite;
  animation-delay: var(--delay);
}

@keyframes summerGlint {
  0%, 74%, 100% { opacity: 0; transform: translateY(10px) scale(.45); }
  80% { opacity: .82; transform: translateY(0) scale(1); }
  88% { opacity: .18; transform: translateY(-12px) scale(.65); }
}

#summer-sparkles {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10002;
}

body.summer-theme .navbar-container {
  position: relative;
  border-color: rgba(127, 231, 223, 0.28);
  background:
    linear-gradient(135deg, rgba(255,255,255,.23), rgba(24,131,153,.12) 44%, rgba(255,143,105,.12)),
    rgba(4, 26, 39, .58);
  box-shadow:
    0 16px 48px rgba(2, 21, 31, .45),
    inset 0 1px rgba(255,255,255,.3),
    0 0 34px rgba(34,199,217,.09);
}

.summer-sun-charm {
  position: absolute;
  left: 50%;
  bottom: -25px;
  width: 43px;
  height: 43px;
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,225,153,.72);
  border-radius: 50%;
  color: #7b4d17;
  background:
    radial-gradient(circle at 36% 30%, #fff8c7 0 7%, #ffd66d 28%, #ff9f55 72%, #df6d48 100%);
  box-shadow:
    0 0 0 6px rgba(255,190,95,.08),
    0 7px 22px rgba(255,139,83,.38),
    inset 0 1px 4px rgba(255,255,255,.75);
  cursor: pointer;
  z-index: 4;
  transition: transform .25s ease, filter .25s ease, box-shadow .25s ease;
}

.summer-sun-charm::before {
  content: "";
  position: absolute;
  inset: -10px;
  border-radius: 50%;
  background: repeating-conic-gradient(from 0deg, rgba(255,202,98,.9) 0deg 5deg, transparent 5deg 30deg);
  -webkit-mask: radial-gradient(circle, transparent 0 57%, #000 59% 100%);
  mask: radial-gradient(circle, transparent 0 57%, #000 59% 100%);
  animation: summerRays 18s linear infinite;
}

.summer-sun-charm svg {
  width: 19px;
  height: 19px;
  position: relative;
  z-index: 1;
}

.summer-sun-charm:hover,
.summer-sun-charm:focus-visible {
  transform: translateX(-50%) translateY(-3px) scale(1.08);
  filter: saturate(1.16) brightness(1.06);
  box-shadow: 0 0 0 9px rgba(255,190,95,.11), 0 10px 28px rgba(255,139,83,.5);
}

.summer-sun-charm:focus-visible {
  outline: 2px solid #fff3c4;
  outline-offset: 5px;
}

@keyframes summerRays { to { transform: rotate(360deg); } }

body.summer-theme .hero-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 100svh;
  background:
    linear-gradient(180deg, rgba(2,15,25,.18), rgba(2,19,28,.08) 38%, rgba(5,24,34,.28) 61%, rgba(3,23,34,.9) 82%, #081821 100%),
    radial-gradient(circle at 68% 19%, rgba(255,205,112,.23), transparent 14rem),
    linear-gradient(180deg, #0b415b 0%, #126f80 38%, #a86e69 55%, #6b6769 59%, #285f6b 63%, #0a5365 68%, #07384f 100%);
}

body.summer-theme .hero-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 48% 68%, rgba(255,225,174,.1) 0%, rgba(255,225,174,.035) 28%, transparent 58%),
    radial-gradient(ellipse at 9% 38%, rgba(55,214,210,.11), transparent 32%),
    radial-gradient(ellipse at 91% 44%, rgba(255,130,106,.08), transparent 30%),
    linear-gradient(108deg, transparent 22%, rgba(255,232,184,.055) 46%, transparent 68%);
  opacity: .72;
  animation: summerWaterShift 18s ease-in-out infinite alternate;
}

body.summer-theme .hero-section::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 26%;
  z-index: -1;
  background:
    linear-gradient(180deg, transparent, rgba(5,31,44,.76)),
    radial-gradient(ellipse at 18% 32%, rgba(113,234,221,.08), transparent 28%),
    radial-gradient(ellipse at 76% 52%, rgba(58,183,195,.075), transparent 32%);
  pointer-events: none;
}

@keyframes summerWaterShift {
  from { transform: translate3d(-.8%, 0, 0) scale(1.015); }
  to { transform: translate3d(.8%, -.4%, 0) scale(1.025); }
}

.summer-scenery {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}

.summer-sun {
  position: absolute;
  top: 14%;
  left: 68%;
  width: clamp(92px, 11vw, 154px);
  aspect-ratio: 1;
  transform: translateX(-50%);
  border-radius: 50%;
  background: radial-gradient(circle at 38% 32%, #fffbd3 0 8%, #ffd36d 30%, #ff9b65 72%, #ef7269 100%);
  box-shadow:
    0 0 45px rgba(255,217,123,.54),
    0 0 120px rgba(255,138,98,.35),
    0 0 220px rgba(255,154,104,.18);
  opacity: .78;
  transition: transform .55s ease, filter .55s ease;
}

.summer-sun::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 104%;
  width: 46%;
  height: min(25vh, 210px);
  transform: translateX(-50%);
  border-radius: 50%;
  background: linear-gradient(180deg, rgba(255,219,145,.18), rgba(255,194,120,.04) 58%, transparent);
  filter: blur(24px);
}

.summer-birds {
  position: absolute;
  left: 24%;
  top: 24%;
  width: 110px;
  height: 50px;
  opacity: .55;
}

.summer-birds span {
  position: absolute;
  width: 18px;
  height: 8px;
  border-top: 2px solid rgba(7,39,55,.8);
  border-radius: 50%;
  transform: rotate(10deg);
}

.summer-birds span::after {
  content: "";
  position: absolute;
  left: 14px;
  top: -2px;
  width: 18px;
  height: 8px;
  border-top: 2px solid rgba(7,39,55,.8);
  border-radius: 50%;
  transform: rotate(-20deg);
}

.summer-birds span:nth-child(2) { left: 54px; top: 24px; transform: scale(.72) rotate(7deg); }
.summer-birds span:nth-child(3) { left: 88px; top: 4px; transform: scale(.55) rotate(14deg); }

.summer-palm {
  position: absolute;
  bottom: -4px;
  width: clamp(160px, 23vw, 330px);
  height: auto;
  opacity: .68;
  filter: drop-shadow(0 16px 20px rgba(0,0,0,.38));
}

.summer-palm--left { left: -48px; transform-origin: bottom left; }
.summer-palm--right { right: -58px; transform: scaleX(-1) scale(.82); transform-origin: bottom right; opacity: .5; }

.summer-horizon {
  position: absolute;
  left: 0;
  right: 0;
  top: 57%;
  height: 34px;
  transform: translateY(-50%);
  background: radial-gradient(ellipse at center, rgba(255,221,162,.18), rgba(255,188,137,.07) 42%, transparent 72%);
  filter: blur(9px);
}

body.summer-theme .hero-content {
  position: relative;
  z-index: 2;
}

body.summer-theme .hero-text {
  position: relative;
  isolation: isolate;
}

body.summer-theme .hero-text::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -52px -10% -38px;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(3,28,38,.38) 0%, rgba(3,28,38,.2) 40%, transparent 72%);
  filter: blur(16px);
  pointer-events: none;
}

.summer-season-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0 auto 18px;
  padding: 7px 13px;
  border: 1px solid rgba(255,238,194,.34);
  border-radius: 999px;
  color: rgba(255,249,226,.9);
  background: linear-gradient(90deg, rgba(5,80,98,.58), rgba(103,83,73,.48));
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 10px 28px rgba(0,28,40,.2), inset 0 1px rgba(255,255,255,.15);
  font-size: 11px;
  letter-spacing: .16em;
  line-height: 1;
  text-transform: uppercase;
}

.summer-season-label::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--summer-sun);
  box-shadow: 0 0 12px rgba(255,209,102,.75);
}

body.summer-theme .hero-title {
  text-shadow: 0 3px 6px rgba(0,16,24,.48), 0 14px 46px rgba(0,18,29,.82);
}

body.summer-theme .title-line-1 {
  color: #fffef8;
  letter-spacing: .025em;
}

body.summer-theme .title-line-2 {
  color: transparent;
  background: linear-gradient(90deg, #8ff4dc 4%, #ffe3a6 50%, #ffa08b 96%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-stroke: .35px rgba(255,255,255,.15);
  filter: brightness(1.13) saturate(1.06) drop-shadow(0 3px 10px rgba(0,29,38,.58)) drop-shadow(0 0 18px rgba(58,214,210,.14));
}

body.summer-theme .hero-subtitle .text-secondary {
  color: #ffd2bb;
  text-shadow: 0 2px 4px rgba(0,24,36,.78), 0 6px 20px rgba(0,20,29,.65);
}

body.summer-theme .hero-social-proof {
  padding: 8px 15px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  background: rgba(3,35,47,.52);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

body.summer-theme .hero-social-proof__stars {
  color: var(--summer-sun);
  filter: drop-shadow(0 0 10px rgba(255,209,102,.38));
}

body.summer-theme .pill-button:not(.version-premium):not(.version-ultimate):not(.version-unreal),
body.summer-theme .cta-button {
  border-color: rgba(255,238,199,.46);
  background:
    linear-gradient(135deg, rgba(14,185,201,.94), rgba(24,154,178,.88) 48%, rgba(255,126,102,.88));
  box-shadow:
    0 8px 28px rgba(5,134,158,.32),
    inset 0 1px rgba(255,255,255,.5);
}

body.summer-theme .cta-button:hover {
  box-shadow:
    0 0 0 7px rgba(85,224,210,.09),
    0 10px 30px rgba(0,178,198,.43),
    0 3px 20px rgba(255,118,96,.26),
    inset 0 1px rgba(255,255,255,.68);
}

body.summer-theme .gradient-border {
  background: linear-gradient(120deg, #59e3ce, #ffe09a 48%, #ff7c69);
  box-shadow: 0 20px 64px rgba(1,32,45,.56);
}

body.summer-theme .showcase-content {
  box-shadow:
    -8px -8px 28px rgba(62,218,210,.25),
    8px 8px 28px rgba(255,128,103,.22),
    inset 0 1px rgba(255,255,255,.1);
}

.summer-wave-divider {
  position: relative;
  height: 74px;
  margin: -28px 0 -45px;
  overflow: hidden;
  pointer-events: none;
  z-index: 3;
}

.summer-wave-divider::before,
.summer-wave-divider::after {
  content: "";
  position: absolute;
  left: -5%;
  width: 110%;
  height: 82px;
  border-radius: 50%;
}

.summer-wave-divider::before {
  top: 25px;
  background: rgba(20,165,184,.15);
  box-shadow: 0 -8px 32px rgba(70,225,213,.12);
}

.summer-wave-divider::after {
  top: 39px;
  left: -12%;
  background: #081821;
  opacity: .98;
}

body.summer-theme .features-section,
body.summer-theme .pricing-section {
  position: relative;
}

body.summer-theme .features-section {
  background:
    radial-gradient(circle at 10% 28%, rgba(26,190,195,.1), transparent 27rem),
    radial-gradient(circle at 88% 62%, rgba(255,131,102,.08), transparent 28rem);
}

body.summer-theme .pricing-section {
  background:
    linear-gradient(180deg, transparent, rgba(10,95,109,.06) 48%, transparent),
    radial-gradient(circle at 50% 48%, rgba(255,198,105,.07), transparent 34rem);
}

body.summer-theme .engine-tabs,
body.summer-theme .pricing-card-inner,
body.summer-theme .video-frame {
  border-color: rgba(103,222,215,.17);
  background:
    linear-gradient(165deg, rgba(17,62,73,.54), rgba(8,23,32,.72) 55%, rgba(52,35,41,.28));
  box-shadow: 0 22px 54px rgba(0,12,19,.35), inset 0 1px rgba(255,255,255,.08);
}

body.summer-theme .engine-tabs__tabs {
  background: linear-gradient(90deg, rgba(8,78,94,.18), rgba(255,134,105,.08));
}

body.summer-theme .engine-tabs__tab.is-active {
  border-color: rgba(93,229,216,.42);
  background: linear-gradient(135deg, rgba(25,187,199,.28), rgba(255,132,104,.16));
  box-shadow: 0 0 24px rgba(29,198,207,.13);
}

body.summer-theme .section-title .text-primary,
body.summer-theme .section-title .text-secondary {
  color: transparent;
  background: linear-gradient(90deg, #55ddcf, #f5d38a 52%, #ff8b73);
  -webkit-background-clip: text;
  background-clip: text;
}

body.summer-theme .underline-glow::after,
body.summer-theme .underline-glow-purple::after {
  background: linear-gradient(90deg, transparent, #4fddd0, #ffd080, #ff8370, transparent);
  box-shadow: 0 0 14px rgba(77,221,209,.32);
}

body.summer-theme .pricing-card-inner::after {
  content: "";
  position: absolute;
  inset: -55% auto auto -42%;
  width: 58%;
  height: 190%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.035), transparent);
  pointer-events: none;
  transition: transform .8s ease;
}

body.summer-theme .pricing-card:hover .pricing-card-inner::after {
  transform: translateX(245%) rotate(18deg);
}

body.summer-theme .plan-badge {
  color: #153d48;
  background: linear-gradient(120deg, #e9fff8, #ffe2a7 52%, #ffc2ae);
  border: 1px solid rgba(255,255,255,.72);
  box-shadow: 0 7px 20px rgba(0,35,46,.32);
}

body.summer-theme .footer {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(7,26,36,.96), rgba(6,17,25,1)),
    #07131f;
  border-top: 1px solid rgba(89,217,207,.12);
}

body.summer-theme .footer::before {
  content: "";
  position: absolute;
  top: -80px;
  left: 50%;
  width: 70%;
  height: 130px;
  transform: translateX(-50%);
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(234,188,118,.12), transparent 70%);
  pointer-events: none;
}

.summer-launcher {
  position: fixed;
  left: 20px;
  bottom: 18px;
  width: 58px;
  height: 58px;
  z-index: 1001;
  border: 1px solid rgba(255,255,255,.62);
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
  background: conic-gradient(from 25deg, #ff7b67 0 16.66%, #fff6df 16.66% 33.32%, #23bfd0 33.32% 49.98%, #ffd064 49.98% 66.64%, #fff6df 66.64% 83.3%, #ff7b67 83.3%);
  box-shadow: 0 10px 26px rgba(0,17,26,.46), inset -5px -7px 12px rgba(0,74,95,.22), inset 5px 5px 10px rgba(255,255,255,.45);
  animation: summerBallFloat 3.2s ease-in-out infinite;
  transition: filter .2s ease, box-shadow .2s ease;
}

.summer-launcher::before {
  content: "";
  position: absolute;
  inset: 16px;
  border-radius: 50%;
  border: 2px solid rgba(7,91,114,.25);
}

.summer-launcher::after {
  content: "SUMMER RALLY";
  position: absolute;
  left: 68px;
  top: 50%;
  transform: translateY(-50%) translateX(-8px);
  width: max-content;
  padding: 7px 11px;
  border: 1px solid rgba(102,225,216,.2);
  border-radius: 999px;
  color: rgba(255,255,255,.9);
  background: rgba(5,32,43,.82);
  backdrop-filter: blur(12px);
  font-size: 11px;
  letter-spacing: .1em;
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
}

.summer-launcher:hover::after,
.summer-launcher:focus-visible::after { opacity: 1; transform: translateY(-50%) translateX(0); }
.summer-launcher:hover { filter: saturate(1.15) brightness(1.06); box-shadow: 0 13px 30px rgba(0,17,26,.52), 0 0 0 7px rgba(60,219,211,.09); }
.summer-launcher:focus-visible { outline: 2px solid #fff3be; outline-offset: 5px; }

@keyframes summerBallFloat {
  0%, 100% { transform: translateY(0) rotate(-4deg); }
  50% { transform: translateY(-8px) rotate(7deg); }
}

.summer-game-overlay {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(2,13,20,.78);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  opacity: 0;
  visibility: hidden;
  transition: opacity .25s ease, visibility .25s ease;
}

.summer-game-overlay.is-visible { opacity: 1; visibility: visible; }

.summer-game-card {
  position: relative;
  width: min(720px, 96vw);
  border: 1px solid rgba(112,231,221,.3);
  border-radius: 26px;
  padding: 26px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 50% -10%, rgba(255,210,107,.25), transparent 45%),
    linear-gradient(160deg, rgba(16,87,104,.92), rgba(7,25,36,.97) 58%, rgba(71,39,46,.9));
  box-shadow: 0 32px 90px rgba(0,0,0,.58), inset 0 1px rgba(255,255,255,.13);
  transform: translateY(18px) scale(.96);
  transition: transform .3s cubic-bezier(.2,.8,.2,1);
}

.summer-game-overlay.is-visible .summer-game-card { transform: translateY(0) scale(1); }

.summer-game-close {
  position: absolute;
  right: 16px;
  top: 16px;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  color: rgba(255,255,255,.8);
  background: rgba(255,255,255,.07);
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
}

.summer-game-close:hover { background: rgba(255,126,103,.18); color: #fff; }
.summer-game-kicker { color: #ffd987; letter-spacing: .16em; font-size: 12px; text-transform: uppercase; }
.summer-game-title { margin: 2px 45px 3px 0; font-size: clamp(27px, 5vw, 42px); line-height: 1.12; }
.summer-game-copy { color: rgba(234,250,248,.74); margin-bottom: 15px; }

.summer-game-stats {
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
}

.summer-stat {
  min-width: 92px;
  padding: 7px 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(0,0,0,.16);
}

.summer-stat span { display: block; color: rgba(255,255,255,.52); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.summer-stat strong { font-size: 21px; color: #fff2c1; }

.summer-playfield {
  position: relative;
  height: min(45vh, 330px);
  min-height: 260px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(43,187,210,.56) 0 50%, rgba(255,170,113,.54) 50.5% 64%, rgba(8,101,121,.78) 64.5% 100%);
  box-shadow: inset 0 0 50px rgba(2,18,27,.32);
}

.summer-playfield::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 62%;
  height: 25%;
  background: repeating-radial-gradient(ellipse at 50% 0, rgba(255,255,255,.21) 0 2px, transparent 3px 18px);
  opacity: .5;
}

.summer-game-ball {
  position: absolute;
  left: 50%;
  top: 63%;
  width: 66px;
  height: 66px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255,255,255,.75);
  border-radius: 50%;
  background: conic-gradient(from 20deg, #ff7565 0 16.6%, #fff9e9 16.6% 33.2%, #21bfd0 33.2% 49.8%, #ffd166 49.8% 66.4%, #fff9e9 66.4% 83%, #ff7565 83%);
  box-shadow: 0 15px 20px rgba(0,45,59,.3), inset -6px -7px 12px rgba(0,70,90,.2), inset 5px 5px 10px rgba(255,255,255,.5);
  cursor: pointer;
  transition: left .24s cubic-bezier(.2,.8,.2,1), top .24s cubic-bezier(.2,.8,.2,1), transform .16s ease;
  z-index: 3;
}

.summer-game-ball:disabled { cursor: default; filter: grayscale(.2); }
.summer-game-ball.is-hit { transform: translate(-50%, -50%) scale(.84) rotate(22deg); }

.summer-game-start {
  display: block;
  width: 100%;
  margin-top: 14px;
  padding: 13px 18px;
  border: 1px solid rgba(255,244,211,.42);
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(120deg, #12a9bb, #19b6ad 52%, #ef8068);
  box-shadow: 0 9px 25px rgba(0,88,106,.3), inset 0 1px rgba(255,255,255,.35);
  cursor: pointer;
  font-size: 16px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.summer-game-start:hover { filter: brightness(1.08); transform: translateY(-1px); }

.summer-toast {
  position: fixed;
  left: 50%;
  top: 48%;
  z-index: 100002;
  transform: translate(-50%, -50%) scale(.75);
  padding: 14px 22px;
  border: 1px solid rgba(255,238,188,.55);
  border-radius: 999px;
  color: #fff8d9;
  background: rgba(4,48,60,.9);
  box-shadow: 0 20px 55px rgba(0,0,0,.38), 0 0 30px rgba(255,194,92,.2);
  font-size: clamp(19px, 4vw, 32px);
  letter-spacing: .05em;
  pointer-events: none;
  animation: summerToast 2s ease forwards;
}

@keyframes summerToast {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.68); }
  18%, 72% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
  100% { opacity: 0; transform: translate(-50%, -58%) scale(1.05); }
}

body.summer-theme.summer-golden-hour .hero-section {
  background:
    linear-gradient(180deg, rgba(14,10,26,.12), rgba(16,12,26,.22) 48%, rgba(6,24,37,.88) 78%, #081821 100%),
    radial-gradient(circle at 68% 19%, rgba(255,189,91,.27), transparent 15rem),
    linear-gradient(180deg, #33346f 0%, #b25e78 34%, #fb9368 55%, #215269 57%, #0b354c 100%);
}

body.summer-theme.summer-golden-hour .summer-sun { filter: saturate(1.2); transform: translateX(-50%) translateY(22px) scale(1.06); }

@media (max-width: 768px) {
  body.summer-theme .navbar { width: calc(100% - 18px); }
  body.summer-theme .navbar-container { height: 58px; padding: 9px 12px; }
  body.summer-theme .navbar-actions { gap: 6px; }
  body.summer-theme .navbar-icon { padding: 4px; }
  body.summer-theme .navbar-actions .pill-button { height: 38px; padding-inline: 14px; }
  .summer-sun-charm { left: 50%; width: 38px; height: 38px; bottom: -23px; }
  .summer-sun { left: 76%; top: 16%; width: 102px; opacity: .68; }
  .summer-palm--left { left: -78px; width: 220px; opacity: .48; }
  .summer-palm--right { right: -85px; width: 220px; opacity: .34; }
  .summer-birds { left: 18%; top: 23%; transform: scale(.66); opacity: .38; }
  body.summer-theme .hero-section { padding-top: 9rem; }
  body.summer-theme .hero-content { width: 100%; min-width: 0; }
  body.summer-theme .hero-title { max-width: 100%; font-size: clamp(2.15rem, 10.5vw, 3rem); letter-spacing: -.01em; }
  body.summer-theme .title-line-1,
  body.summer-theme .title-line-2 { max-width: 100%; overflow-wrap: anywhere; }
  body.summer-theme .hero-subtitle { padding-inline: 6px; font-size: clamp(.95rem, 4.5vw, 1.15rem); }
  body.summer-theme .hero-social-proof { max-width: calc(100vw - 28px); gap: 7px; padding-inline: 11px; }
  body.summer-theme .hero-social-proof__text { font-size: clamp(.7rem, 3vw, .86rem); letter-spacing: .02em; }
  body.summer-theme .hero-social-proof__stars { gap: 2px; }
  .summer-season-label {
    max-width: calc(100vw - 32px);
    justify-content: center;
    padding: 7px 11px;
    font-size: 9px;
    line-height: 1.35;
    letter-spacing: .1em;
    text-align: center;
    white-space: normal;
    background: linear-gradient(90deg, rgba(4,68,85,.68), rgba(88,71,67,.58));
  }
  .summer-launcher { left: 13px; bottom: 13px; width: 49px; height: 49px; }
  .summer-launcher::after { display: none; }
  .summer-game-card { padding: 22px 16px 17px; border-radius: 21px; }
  .summer-game-copy { font-size: 14px; }
  .summer-playfield { min-height: 240px; }
}

@media (max-width: 520px) {
  body.summer-theme .navbar-link { display: none; }
  body.summer-theme .logo-text { font-size: .98rem; }
  body.summer-theme .navbar-logo { gap: 8px; }
  body.summer-theme .lang-switcher-trigger { gap: 5px; padding: 4px; }
  body.summer-theme .current-lang { font-size: .78rem; }
  body.summer-theme .navbar-actions > div[style] { width: 2px !important; }
}

@media (max-width: 380px) {
  body.summer-theme .logo-text { display: none; }
  body.summer-theme .navbar-actions .pill-button { padding-inline: 11px; }
  body.summer-theme .hero-title { font-size: 2.05rem; }
}

@media (prefers-reduced-motion: reduce) {
  .summer-glint,
  .summer-sun-charm::before,
  .summer-launcher,
  body.summer-theme .hero-section::before {
    animation: none !important;
  }
  .summer-game-ball,
  .summer-game-card,
  .summer-game-overlay,
  body.summer-theme .summer-sun {
    transition-duration: .01ms !important;
  }
}
