﻿:root {
  --bg:#0c1512;
  --bg-soft:#0f1d18;
  --panel:#13251f;
  --panel-2:#173128;
  --ink:#f0ecd9;
  --muted:#bcc8b2;
  --line:#2f4a3f;
  --bronze:#b88445;
  --bronze-2:#d5a96a;
  --jade:#38a06d;
  --jade-2:#70c68f;
  --danger:#d36b57;
  --radius-xl:28px;
  --radius-lg:18px;
  --radius-md:12px;
  --shadow:0 20px 44px rgba(0,0,0,.42);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Sora","Segoe UI",sans-serif;background:radial-gradient(1100px 560px at 10% -10%,#1a2d25,transparent 60%),linear-gradient(180deg,var(--bg),var(--bg-soft));color:var(--ink)}
main{
  position:relative;
}
.home-page main{
  background:url("/assets?p=%2F..%2Fimg%2Fbackground.jpg") center calc(50% + (var(--parallax-offset,0px) * .35)) / cover no-repeat fixed;
}
body:not(.home-page) main{
  background:url("/assets?p=%2F..%2Fimg%2Fbackground.jpg") center calc(50% + (var(--parallax-offset,0px) * .35)) / cover no-repeat fixed;
}
.home-page main::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:rgba(6,12,10,.52);
  z-index:0;
}
body:not(.home-page) main::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:rgba(6,12,10,.52);
  z-index:0;
}
main > *{
  position:relative;
  z-index:1;
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1160px,92vw);margin:0 auto}
h1,h2,h3,h4{margin:0 0 10px;font-family:"Spectral",serif;letter-spacing:.01em}
h1{font-size:clamp(2rem,5vw,4rem);line-height:1.05}
h2{font-size:clamp(1.4rem,2.7vw,2.3rem)}
.lead{font-size:1.03rem;line-height:1.7;color:#e4dfca}
.muted{color:var(--muted)}
.section{padding:64px 0}
@supports (content-visibility: auto){
  .section{
    content-visibility:auto;
    contain-intrinsic-size:1px 760px;
  }
}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:24px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--bronze-2);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700}
.eyebrow::before{content:"";width:24px;height:1px;background:linear-gradient(90deg,transparent,var(--bronze-2))}
.card{background:linear-gradient(180deg,var(--panel),var(--panel-2));border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow)}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.timeline-step{border:1px solid var(--line);border-radius:var(--radius-md);background:#10211b;padding:16px}
.site-header{position:sticky;top:0;z-index:120;padding:10px 0;background:linear-gradient(180deg,rgba(12,21,18,.92),rgba(12,21,18,.6));backdrop-filter:blur(10px)}
.header-capsule{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid #355346;border-radius:16px;background:rgba(17,33,28,.88)}
.brand{display:inline-flex;align-items:center;gap:10px}
.brand-logo{width:46px;height:46px;border-radius:12px;border:1px solid #4f6d60;object-fit:cover}
.brand-copy{display:grid;line-height:1}
.brand-copy strong{font-size:.9rem;color:#f1e8d0;text-transform:uppercase;letter-spacing:.08em}
.brand-copy small{font-size:.67rem;color:#adc2b1;letter-spacing:.07em;text-transform:uppercase}
.menu-toggle{display:none;width:42px;height:42px;border-radius:999px;border:1px solid #4f6d60;background:#13241e;color:#e9debf;align-items:center;justify-content:center;flex-direction:column;gap:4px}
.menu-toggle .bar{width:17px;height:2px;border-radius:999px;background:currentColor}
.menu-orbit{justify-self:center;display:inline-flex;gap:6px;align-items:center;border:1px solid #3d5e50;border-radius:999px;padding:6px;background:#13241e}
.menu-orbit a{padding:9px 12px;border-radius:999px;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c6d4c8}
.menu-orbit a:hover,.menu-orbit a.active{background:linear-gradient(140deg,#3f7d5d,#2d5c45);color:#f8f4e6}
.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:11px;border:1px solid #8b6b41;background:linear-gradient(140deg,#936b3d,#b88445);color:#0f1715;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.hero{position:relative;overflow:hidden;border-radius:var(--radius-xl);min-height:clamp(360px,66vh,680px);border:0;margin-top:10px;}

.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(6px 6px at 14% 20%,rgba(255,245,225,.22),transparent 70%),radial-gradient(5px 5px at 75% 26%,rgba(112,198,143,.26),transparent 70%),radial-gradient(4px 4px at 44% 74%,rgba(255,245,225,.2),transparent 70%);animation:floatDust 18s linear infinite}
@keyframes floatDust{from{transform:translate3d(0,0,0)}to{transform:translate3d(-30px,-40px,0)}}
.hero-grid{min-height:inherit;display:grid;place-items:center;position:relative;z-index:1}
.hero-card{width:min(900px,92%);text-align:center;padding:22px;background:rgba(7,14,12,.24);border:1px solid rgba(184,132,69,.36);border-radius:20px;backdrop-filter:blur(2px)}
.hero-card h1{margin-bottom:12px}
.control-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:16px 0}
.hero-center .control-row{justify-content:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:12px;border:1px solid transparent;font-family:inherit;font-size:.77rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(140deg,#986f3f,#d5a96a);border-color:#ad7f49;color:#111914;box-shadow:0 12px 24px rgba(184,132,69,.3)}
.btn-ghost{background:#13261f;border-color:#3e5f50;color:#d6e0ce}
.pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid #4f6f60;background:#12261f;color:#d9e2ce;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.badge-row{display:flex;flex-wrap:wrap;gap:8px}
.game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.game-card{display:grid;gap:12px;padding:16px;border-radius:16px;border:1px solid var(--line);background:linear-gradient(180deg,#12231d,#163127);box-shadow:var(--shadow);position:relative;overflow:hidden}
.game-card::after{content:"";position:absolute;inset:auto -40% -120% -40%;height:220px;background:radial-gradient(closest-side,rgba(112,198,143,.16),transparent);transform:rotate(-8deg);pointer-events:none}
.game-card img{width:100%;height:190px;object-fit:cover;border-radius:12px;border:1px solid #3c5f50}
.game-topline{display:flex;align-items:center;gap:10px}
.game-icon-wrap{width:34px;height:34px;border-radius:10px;border:1px solid #466858;background:#11231d;color:#d9b27a;display:inline-flex;align-items:center;justify-content:center}
.game-icon-wrap svg{width:18px;height:18px}
.game-tag{font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#e1bf8f}
.game-meta{display:flex;flex-wrap:wrap;gap:7px}
.game-meta span{padding:5px 8px;border-radius:999px;border:1px solid #496a5b;background:#10231c;color:#c6d7c8;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.game-hover-panel{border:1px solid #3c5d4e;border-radius:10px;padding:8px 10px;background:#0f1f1a;display:grid;gap:3px}
.highlight-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.highlight-chip{border:1px solid #476757;border-radius:12px;background:linear-gradient(180deg,#11231c,#19362b);padding:14px;text-align:center;box-shadow:var(--shadow)}
.highlight-chip strong{display:block;font-size:1.4rem;color:#f0ca94;font-family:"Spectral",serif}
.highlight-chip span{color:#c9d7c7;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.matrix-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.matrix-card{border:1px solid #446555;border-radius:14px;background:linear-gradient(180deg,#10231c,#173126);padding:16px;box-shadow:var(--shadow)}
.about-teaser-strip{margin:12px 0;padding:16px 0;background:linear-gradient(90deg,#183127,#0f211a,#183127);border-top:1px solid #3f624f;border-bottom:1px solid #3f624f}
.about-teaser-inner{display:flex;align-items:center;justify-content:space-between;gap:14px}
.about-teaser-text{margin:0;line-height:1.6;color:#d8e3d2}
.game-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
.game-panel{border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,#12231d,#173126);padding:18px;box-shadow:var(--shadow)}
.game-title{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.game-sidebar{display:grid;gap:12px}
.inline-stats{display:grid;gap:8px}
.stat{padding:10px;border-radius:10px;border:1px solid #3e5e50;background:#10221b}
.stat strong{display:block;color:#f3e8cc;font-size:1.06rem}
.stat span{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#9db2a4}
.output,.contact-status,.clash-feedback{border:1px solid #3e5d4f;border-radius:10px;padding:10px 12px;background:#0f1f19;color:#d9e6d5}
.clash-feedback.good{color:#91d8a5}
.clash-feedback.perfect{color:#f4cc92;font-weight:700}
.clash-feedback.risk{color:#ffc0b0}
.log{display:grid;gap:8px}
.log p{margin:0;padding:8px 10px;border-radius:8px;border-left:3px solid #587f6a;background:#10231c;color:#cfdbc8}
.notice{border:1px solid #577a6a;border-radius:12px;background:#10231c;color:#d4dfca;padding:12px 14px}
.list,.list-check{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.list li,.list-check li{padding:9px 12px;border-radius:10px;border:1px solid #3f6051;background:#10221b}
input,select,textarea{width:100%;border:1px solid #4b6c5c;border-radius:10px;background:#0f211a;color:#e9eddc;font-family:inherit;padding:10px 12px}
textarea{min-height:120px;resize:vertical}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form-grid .full{grid-column:1/-1}
.footer{margin-top:36px;padding:34px 0 20px;border-top:1px solid #335244;background:linear-gradient(180deg,#0f1f1a,#0b1713)}
.footer-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;align-items:center}
.footer-brand{display:inline-flex;align-items:center;gap:10px}
.footer-logo{width:52px;height:52px;border-radius:12px;border:1px solid #4b6f5d}
.footer-name{font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#f1e3c4}
.footer-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid #4a6b5b;background:#10231c;color:#c9d8c6;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700}
.footer-flow{margin-top:14px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}
.footer-rail,.footer-note{grid-column:span 3;border:1px solid #355445;border-radius:12px;padding:12px;background:#10211b}
.footer-rail a{display:block;padding:5px 0;color:#c2d3c6}
.footer-bottom{margin-top:14px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(3,8,7,.8);z-index:200}
.overlay.show{display:flex}
.overlay-card{width:min(560px,92vw);padding:22px;border-radius:16px;border:1px solid #4f705e;background:linear-gradient(180deg,#12231d,#173126);text-align:center}
.cookie-box{position:fixed;right:18px;bottom:18px;width:min(360px,92vw);display:none;border-radius:14px;border:1px solid #4e6f5f;background:#10211b;padding:12px;box-shadow:var(--shadow);z-index:130}
.cookie-box.show{display:block;animation:raise .28s ease}
@keyframes raise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.faq-list{display:grid;gap:10px}
.faq-item{border:1px solid #3e5f50;border-radius:12px;background:#10221b;overflow:hidden}
.faq-item button{width:100%;text-align:left;border:0;background:transparent;color:#edf2e2;padding:14px 16px;font-weight:700;cursor:pointer}
.faq-item .answer{display:none;padding:0 16px 14px;color:#c8d5c4}
.faq-item.open .answer{display:block}
.reveal{opacity:0;transform:translateY(14px);transition:.65s ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.pulse-dot{display:inline-flex;width:8px;height:8px;border-radius:50%;background:var(--jade-2);box-shadow:0 0 0 0 rgba(112,198,143,.5);animation:pulse 1.7s ease-out infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(112,198,143,.5)}100%{box-shadow:0 0 0 11px rgba(112,198,143,0)}}
/* Fortune grid game */
.fortune-stage{display:grid;grid-template-columns:1fr 290px;gap:12px;align-items:start}
.orb-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.orb{min-height:70px;border-radius:12px;border:1px solid #5b4b2e;background:radial-gradient(circle at 30% 20%,#ffe2a8,#b88445 62%,#7c5228);display:grid;place-items:center;color:#1d1308;font-weight:800;text-shadow:0 1px 0 rgba(255,245,220,.6);position:relative;overflow:hidden}
.orb .orb-icon{width:22px;height:22px;display:inline-flex}
.orb .orb-icon svg{width:100%;height:100%;fill:currentColor}
.orb .orb-label{display:block;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase}
.orb.small{background:radial-gradient(circle at 30% 20%,#cde9d6,#5ca87a 62%,#2f6f4b);color:#07120b;text-shadow:none}
.orb.rare{background:radial-gradient(circle at 30% 20%,#ffecc6,#d8a056 62%,#8f5e2b)}
.orb.flash{animation:orbFlash .5s ease}
@keyframes orbFlash{0%{filter:brightness(1)}50%{filter:brightness(1.5)}100%{filter:brightness(1)}}
.reel-shell{border:1px solid #557968;border-radius:12px;background:#0e1d18;padding:10px}
.reel-window{height:284px;overflow:hidden;border:1px solid #3c5e4f;border-radius:10px;background:#0a1612}
.reel-track{display:grid}
.reel-item{height:70px;display:flex;align-items:center;justify-content:center;gap:8px;border-bottom:1px solid #2f4d40;color:#f2dfba;font-weight:800;letter-spacing:.05em}
.reel-item .reel-icon{width:18px;height:18px;display:inline-flex}
.reel-item .reel-icon svg{width:100%;height:100%;fill:currentColor}
.reel-item.win{background:rgba(212,165,108,.18)}
.reel-pointer{margin-top:8px;border:1px solid #628874;border-radius:10px;padding:8px;text-align:center;color:#d8e8d6;background:#11231c}
/* Pulse game */
.clash-module-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}
.clash-module{border:1px solid #3e6050;border-radius:10px;background:#10231c;padding:10px}
.clash-module.active{border-color:#d1a166}
.clash-progress{height:8px;border:1px solid #3f6052;border-radius:999px;overflow:hidden;background:#0e1a16;margin:10px 0}
.clash-progress-fill{height:100%;width:0;background:linear-gradient(90deg,#3f7d5d,#d1a166)}
.clash-round-dots{display:flex;gap:6px;margin-bottom:10px}
.clash-round-dots i{width:10px;height:10px;border-radius:50%;background:#183128;border:1px solid #4c6e5e}
.clash-round-dots i.active{background:#d7ab72}
.clash-round-dots i.done{background:#5ca67b}
.heat-panel{display:grid;gap:10px}
.heat-bar{height:48px;border:1px solid #4b6f5e;border-radius:999px;background:#0d1915;position:relative;overflow:hidden}
.heat-target{position:absolute;top:7px;height:32px;border-radius:999px;background:rgba(112,198,143,.2);border:1px solid rgba(112,198,143,.4)}
.heat-perfect-zone{position:absolute;top:6px;height:18px;border-radius:999px;background:rgba(212,165,108,.45)}
.heat-marker{position:absolute;top:4px;width:14px;height:40px;border-radius:999px;background:#ecd0a3}
/* Runes game */
#ember-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.ember-tile{min-height:84px;border:1px solid #4b6d5c;border-radius:11px;background:#10231c;display:grid;place-items:center;cursor:pointer;transition:transform .16s ease}
.ember-tile:hover{transform:translateY(-2px)}
.ember-tile.active,.ember-tile.matched{background:#183329}
.ember-glyph{width:26px;height:26px;display:inline-flex}
.ember-glyph svg{width:100%;height:100%}
/* Achievement extras */
.achievement-shell{display:grid;gap:14px}
.achievement-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.achievement-stat{border:1px solid #456656;border-radius:12px;background:linear-gradient(180deg,#12261f,#193529);padding:12px}
.achievement-stat strong{display:block;font-size:1.28rem;color:#f0ca94}
.achievement-stat span{font-size:.73rem;text-transform:uppercase;letter-spacing:.07em;color:#b8cbb8}
.achievement-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.achievement-toolbar .btn.active{outline:2px solid rgba(212,165,108,.45)}
.achievement-progress{height:10px;border:1px solid #446656;border-radius:999px;background:#10211b;overflow:hidden}
.achievement-progress > i{display:block;height:100%;width:0;background:linear-gradient(90deg,#4b8c69,#d5a96a)}
.achievement-recent{border:1px solid #466757;border-radius:12px;background:#10211b;padding:12px;display:grid;gap:8px}
.achievement-recent p{margin:0;border-left:3px solid #5f826f;background:#14281f;border-radius:8px;padding:8px 10px;color:#cfdbc8}
@media (max-width:980px){
  .home-page main{background-attachment:scroll}
  body:not(.home-page) main{background-attachment:scroll}
  .header-capsule{grid-template-columns:auto auto}
  .menu-toggle{display:inline-flex;justify-self:end}
  .header-cta{display:none}
  .menu-orbit{position:absolute;top:calc(100% + 8px);left:0;right:0;display:none;flex-direction:column;align-items:stretch;border-radius:14px;padding:10px}
  .menu-orbit.show{display:flex}
  .menu-orbit a{text-align:center}
  .game-grid,.split,.timeline,.card-grid,.footer-hero,.game-layout,.fortune-stage,.clash-module-row,.footer-flow,#ember-grid{grid-template-columns:1fr}
  .highlight-band,.matrix-grid{grid-template-columns:1fr}
  .footer-rail,.footer-note{grid-column:span 12}
  .form-grid{grid-template-columns:1fr}
  .inline-stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .achievement-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero{min-height:56svh}
  .hero-card .btn{width:100%;max-width:360px}
  .about-teaser-inner{flex-direction:column;align-items:flex-start}
}
@media (min-width:1280px){
  .home-page .home-games-row{
    position:relative;
    left:50%;
    right:50%;
    width:100vw;
    margin-left:-50vw;
    margin-right:-50vw;
    padding:0 2.2vw;
  }
  .home-page .game-grid-home{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1.2vw;
  }
  .home-page .game-grid-home .game-card{
    min-height:100%;
    transform-style:preserve-3d;
    box-shadow:0 26px 44px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,235,199,.05);
  }
  .home-page .game-grid-home .game-card:nth-child(2){
    transform:translateY(-8px);
  }
}
@media (prefers-reduced-motion: reduce){*{animation:none !important;transition:none !important}}


/* Home V2 */
.home-v2-hero{padding-top:44px}
.home-v2-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:16px;align-items:stretch}
.home-v2-main{display:grid;align-content:center;gap:10px;background:linear-gradient(160deg,rgba(9,20,18,.78),rgba(26,48,40,.7));border-color:#4b7464}
.home-v2-main h1{font-size:clamp(2rem,4.6vw,4.1rem);line-height:1.03;max-width:15ch}
.home-v2-main .lead{max-width:62ch}
.home-v2-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}
.home-v2-kpis div{border:1px solid #4b7060;border-radius:12px;padding:10px;background:linear-gradient(160deg,#11241d,#17362b)}
.home-v2-kpis strong{display:block;color:#f2ca8f;font-size:1.04rem}
.home-v2-kpis span{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:#b9cabf}
.home-v2-visual{position:relative;overflow:hidden;background:linear-gradient(160deg,#0f221c,#1d3a30);border-color:#4d7463;padding:12px}
.home-v2-visual img{width:100%;height:100%;min-height:420px;object-fit:cover;border-radius:14px;border:1px solid #527a68}
.home-v2-glass{position:absolute;left:22px;right:22px;bottom:22px;border:1px solid rgba(155,203,177,.45);border-radius:14px;padding:12px;background:rgba(8,18,15,.68);backdrop-filter:blur(5px)}
.home-v2-glass p{margin:0 0 8px;color:#dce8dd}
.home-v2-glass p:last-child{margin:0}
.home-v2-value{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.home-v2-tile{background:linear-gradient(180deg,#122820,#193a2d)}
.home-v2-split{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.home-v2-panel{background:linear-gradient(180deg,#10241d,#17362a)}
.home-v2-note{margin-top:12px}
.home-v2-cta-wrap{padding-top:30px}
.home-v2-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(145deg,#10241d,#1d3d31);border-color:#4f7565}
@media (max-width:980px){
  .home-v2-grid,.home-v2-value,.home-v2-split{grid-template-columns:1fr}
  .home-v2-kpis{grid-template-columns:1fr 1fr}
  .home-v2-main h1{max-width:none}
  .home-v2-visual img{min-height:280px}
  .home-v2-cta{flex-direction:column;align-items:flex-start}
}
@media (max-width:560px){
  .home-v2-kpis{grid-template-columns:1fr}
}

/* Route V2 */
.route-v2-shell{padding-top:26px}
.route-v2-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:16px;align-items:stretch}
.route-v2-poster{position:relative;overflow:hidden;padding:12px;background:linear-gradient(160deg,#0f221c,#1b3a2f);border-color:#4c7464}
.route-v2-poster img{width:100%;height:100%;min-height:620px;object-fit:cover;border-radius:14px;border:1px solid #557d6c}
.route-v2-badge{position:absolute;left:22px;bottom:22px;padding:8px 12px;border-radius:999px;border:1px solid #6f9f89;background:rgba(8,17,14,.72);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#dff4e6}
.route-v2-story{display:grid;align-content:center;gap:10px;background:linear-gradient(165deg,#10251d,#1d3e31);border-color:#4e7565}
.route-v2-story h3{font-size:clamp(1.7rem,3.1vw,2.9rem);line-height:1.07;max-width:16ch;margin-bottom:6px}
.route-v2-story .muted{line-height:1.75}
.route-v2-tags{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 2px}
.route-v2-tags span{padding:6px 10px;border-radius:999px;border:1px solid #567d6c;background:#10231c;color:#d7e8dd;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;font-weight:700}
@media (max-width:980px){
  .route-v2-grid{grid-template-columns:1fr}
  .route-v2-poster img{min-height:420px}
}
@media (max-width:560px){
  .route-v2-poster img{min-height:340px}
}

/* Icy Theme Override */
:root {
  --bg:#061424;
  --bg-soft:#0a1d30;
  --panel:#0d243a;
  --panel-2:#12314c;
  --ink:#eaf7ff;
  --muted:#b9d7e8;
  --line:#2f5f82;
  --bronze:#71d5ff;
  --bronze-2:#a9ebff;
  --jade:#54c8ff;
  --jade-2:#88e1ff;
  --danger:#ff8fa0;
  --shadow:0 20px 44px rgba(0,10,22,.52);
}

body{
  background:
    radial-gradient(1200px 620px at 8% -8%,rgba(99,202,255,.2),transparent 62%),
    radial-gradient(980px 520px at 92% 8%,rgba(121,233,255,.12),transparent 58%),
    linear-gradient(180deg,var(--bg),var(--bg-soft));
  color:var(--ink);
}

.home-page main,
body:not(.home-page) main{
  background:
    radial-gradient(1200px 700px at 12% -20%,rgba(96,206,255,.14),transparent 60%),
    url("/assets?p=%2F..%2Fimg%2Fbackground.jpg") center calc(50% + (var(--parallax-offset,0px) * .35)) / cover no-repeat fixed;
}

.home-page main::before,
body:not(.home-page) main::before{
  background:rgba(3,14,24,.62);
}

.site-header{
  background:linear-gradient(180deg,rgba(6,20,33,.93),rgba(6,20,33,.68));
}

.header-capsule{
  border-color:#3c6f93;
  background:rgba(9,27,43,.88);
}

.brand-copy strong{color:#ecf9ff}
.brand-copy small{color:#b9d8ea}

.menu-toggle{
  border-color:#4f83a8;
  background:#0c2a42;
  color:#d6f3ff;
}

.menu-orbit{
  border-color:#41759a;
  background:#0b2941;
}

.menu-orbit a{color:#cae7f7}
.menu-orbit a:hover,.menu-orbit a.active{
  background:linear-gradient(140deg,#2f79a8,#1f5479);
  color:#effbff;
}

.header-cta,
.btn-primary{
  background:linear-gradient(140deg,#63cfff,#2c8fcb);
  border-color:#79d7ff;
  color:#042031;
  box-shadow:0 12px 24px rgba(83,196,255,.34);
}

.btn-ghost{
  background:#0c2b43;
  border-color:#3f7298;
  color:#d6f2ff;
}

.card,
.timeline-step,
.matrix-card,
.game-panel,
.notice,
.faq-item,
.cookie-box,
.overlay-card,
.footer-rail,
.footer-note,
.achievement-stat,
.achievement-recent,
.highlight-chip,
.game-card,
.home-v2-main,
.home-v2-visual,
.home-v2-tile,
.home-v2-panel,
.home-v2-cta,
.route-v2-poster,
.route-v2-story{
  border-color:#376a8e !important;
  background:linear-gradient(180deg,#0d243a,#12314c) !important;
  box-shadow:var(--shadow);
}

.game-card::after{
  background:radial-gradient(closest-side,rgba(122,227,255,.22),transparent);
}

.game-card img,
.home-v2-visual img,
.route-v2-poster img{
  border-color:#4f84a8 !important;
}

.game-icon-wrap{
  border-color:#4a7ea3;
  background:#0c2941;
  color:#9de9ff;
}

.game-tag,.highlight-chip strong,.achievement-stat strong{color:#9de9ff}
.highlight-chip span,.achievement-stat span,.muted{color:#b9d7e8}

.stat{
  border-color:#3a6d92;
  background:#0d2942;
}
.stat strong{color:#eaf8ff}
.stat span{color:#b8d5e8}

input,select,textarea{
  border-color:#4d7ea1;
  background:#0b253a;
  color:#e8f7ff;
}

.faq-item button{color:#ecfaff}
.faq-item .answer{color:#c6e1f0}

.pill,.footer-badge,.game-meta span,.route-v2-tags span,.home-v2-kpis div{
  border-color:#4f83a8 !important;
  background:#0d2a42 !important;
  color:#d5f1ff !important;
}

.overlay{background:rgba(2,9,16,.82)}

.footer{
  border-top-color:#386a8d;
  background:linear-gradient(180deg,#0b2236,#071827);
}
.footer-name{color:#e9f7ff}
.footer-rail a{color:#cce8f8}

.reel-shell,.reel-window,.reel-pointer,.reel-item{
  border-color:#45799f;
  background:#0b2338;
  color:#d6f3ff;
}
