/* ArtLash product design system. This file is deliberately last in the cascade. */
:root{
  color-scheme:dark;
  --bg:#090b0f;--bg-elevated:#0e1117;--panel:#11151c;--panel-2:#151a22;
  --border:#29313c;--border-soft:#20262e;--text:#f3f5f8;--text-muted:#a4afbe;
  --accent-blue:#71a5ff;--accent-pink:#eba8c4;--focus:#a9c8ff;
  --space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;
  --space-5:32px;--space-6:48px;--space-7:72px;--radius:10px;
  --max:1180px;--violet:var(--accent-blue);--warm:var(--accent-pink)
}
html{scroll-padding-top:100px}
body,.home-redesign,.hina-page{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}
body::before,body::after{content:none}
::selection{background:#427dd16e;color:#fff}
.container,.home-redesign .container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}
h1,h2,h3{font-family:inherit;font-weight:650;letter-spacing:-.045em;color:var(--text)}
a:focus-visible,button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.eyebrow,.home-label,.brand-overline,.catalog-meta,.teaser-number,.dna-index{color:var(--accent-blue);font-size:.76rem;line-height:1.5;letter-spacing:.13em;font-weight:650;text-transform:uppercase}
/* A quiet header shared by the studio and game routes. */
.site-header,.home-redesign .site-header{top:0;left:0;width:100%;transform:none;z-index:30;background:#090b0fe8;border-bottom:1px solid var(--border-soft)}
.nav-shell,.home-redesign .nav-shell,.is-scrolled .nav-shell,.home-redesign .is-scrolled .nav-shell{width:min(var(--max),calc(100% - 64px));margin:auto;min-height:76px;padding:0;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.wordmark,.home-redesign .wordmark{font-size:1rem;letter-spacing:.16em;font-weight:760;line-height:1.2;color:var(--text)}
.wordmark::before,.home-redesign .wordmark::before{width:30px;height:30px;margin-right:12px;background:center/contain no-repeat url('/assets/artlash-mark.svg');transform:none}
.wordmark::after{display:none}
.nav-items{gap:20px}
.nav-items a{color:#b3bdca;font-size:.875rem;font-weight:500;padding:10px 12px;margin:0;border-radius:7px}
.nav-items a:hover{color:#fff;background:#ffffff08}
.nav-items a[aria-current],.nav-items a:is([aria-current="page"],[aria-current="location"]){color:#e7efff;background:#172236;box-shadow:inset 0 0 0 1px #487dc439;animation:none}
.nav-items a:is([aria-current="page"],[aria-current="location"])::after{bottom:0;left:12px;right:12px;height:2px;background:var(--accent-blue);box-shadow:0 0 7px #5794fc55;animation:none}
.language-switch{color:var(--text-muted)}
.language-options a{border-radius:5px}
/* Consistent controls. No perpetual promotional glow. */
.button,.home-redesign .button,.home-redesign .brand-actions .button,.home-redesign .feature-button{min-height:46px;padding:10px 18px;gap:18px;border:1px solid #3b4758;border-radius:8px;background:#171d25;color:#e8eef8;font-size:.875rem;font-weight:600;line-height:1.4;box-shadow:none;filter:none;animation:none;transition:background .2s,border-color .2s,transform .2s}
.button::after,.button::before{animation:none;content:none}
.button:hover,.home-redesign .button:hover{background:#202936;border-color:#6684b2;box-shadow:none;filter:none;transform:translateY(-1px)}
.button:active{transform:none;background:#253247}
body.home-redesign .brand-actions .brand-primary,.button-primary{background:#377de8;border-color:#4c8ef1;color:#fff;box-shadow:none;animation:none}
body.home-redesign .brand-actions .brand-primary:hover,.button-primary:hover{background:#4689ed;border-color:#6ba6ff;box-shadow:none}
.home-redesign .feature-button,.button-warm,.hina-hero-actions .button-warm{background:#683c57;border-color:#985c7d;color:#fff;box-shadow:none;animation:none}
.home-redesign .feature-button:hover,.button-warm:hover,.hina-hero-actions .button-warm:hover{background:#7e4868;border-color:#bb7599;box-shadow:none}
.home-redesign .brand-secondary,.hina-hero-actions .brand-secondary{background:#141a22;border-color:var(--border);color:#e5ebf4;box-shadow:none}
.button svg{flex:none}
/* Brand first: typography and whitespace carry the hero. */
.brand-hero{min-height:620px;display:flex;align-items:center;padding:150px 0 85px;background:var(--bg);border-bottom:1px solid var(--border-soft)}
.brand-hero-art,.brand-hero-art::after,.brand-hero::before,.brand-hero::after{display:none}
.brand-hero-inner{padding:0;min-height:0}
.brand-overline{color:#92add3}
.brand-hero h1{margin:26px 0 22px;max-width:840px;font-size:clamp(4.2rem,8.2vw,7.5rem);line-height:.97;font-weight:670;letter-spacing:-.065em;text-shadow:none}
.brand-hero h1 span{display:block;color:#8399b8;font-weight:450;letter-spacing:-.065em}
.brand-intro{max-width:560px;font-size:1.125rem;line-height:1.65;color:var(--text-muted)}
.brand-actions{margin-top:32px;gap:12px}
.brand-hero-foot{margin-top:85px;border-color:var(--border-soft);color:#778599}
/* One featured project with one warm accent, grounded by the supplied render. */
.home-feature{background:#0e1117;border-bottom:1px solid var(--border-soft)}
.home-feature::before,.home-feature-visual::before{display:none}
.home-feature-inner{min-height:540px;grid-template-columns:1fr .9fr;gap:24px}
.home-feature-copy{padding:64px 0}
.home-feature .home-label{color:var(--accent-pink)}
.home-status{border:1px solid #86586b;background:#38242f;color:#f1c5d8;border-radius:5px}
.home-feature h2{margin:20px 0;font-size:clamp(3.3rem,5vw,5.1rem);font-weight:640;line-height:1.02}
.home-feature h2 span{color:#df9fbc;font-weight:510}
.feature-lead{color:var(--text);font-size:1.125rem}
.feature-small,.feature-platform{color:#b4b4c0}
.home-feature-visual{height:540px;background:linear-gradient(140deg,#171b24,#201923);border-inline:1px solid #5b4a5955}
.home-feature-visual img{height:100%;width:100%;filter:none}
.visual-caption{color:#d8b6c2a8}
.home-redesign .feature-button{margin-top:28px}
/* Studio surfaces are matte and follow one spacing scale. */
.home-teaser{padding:48px 0 72px}
.teaser-grid,.dna-grid{gap:16px}
.teaser-card,.dna-card,.catalog-game,.catalog-future,.featured-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:none;transition:border-color .2s,background .2s,transform .2s}
.teaser-card{min-height:220px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;isolation:auto}
.teaser-card img,.teaser-card::before,.teaser-number{display:none}
.teaser-icon,.dna-icon{display:block;width:28px;height:28px;fill:none;stroke:var(--accent-blue);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.teaser-card div{position:static;padding:0}
.teaser-card h3,.dna-card h3{margin:0 0 7px;font-size:1.25rem;font-weight:600;letter-spacing:-.02em}
.teaser-card p,.dna-card p{color:var(--text-muted);font-size:.95rem;line-height:1.55}
.teaser-card:hover,.dna-card:hover,.catalog-game:hover,.featured-panel:hover{transform:translateY(-1px);border-color:#536a89;box-shadow:none}
.home-dna,.home-about,.home-catalog,.home-closing{background:var(--bg);border-block:1px solid var(--border-soft)}
.home-dna{padding:72px 0}
.home-section-heading{margin-bottom:26px}
.home-section-heading h2,.home-about h2{font-size:clamp(2rem,3.6vw,3.6rem);font-weight:650}
.dna-card,.dna-card:nth-child(2),.dna-card:nth-child(3){min-height:220px;padding:28px;background:var(--panel)}
.dna-card::before{display:none}
.dna-icon{margin-bottom:42px}
.dna-index{display:none}
.dna-card h3{margin:0 0 7px}
.home-about{padding:88px 0}
.about-home-grid{gap:8%}
.home-about h2 em{color:var(--accent-blue)}
.about-home-lead{color:#e1e8f0;font-size:clamp(1.2rem,2vw,1.55rem)}
.about-home-detail{color:var(--text-muted);line-height:1.7}
.inline-link{color:var(--accent-blue);border-color:#6589bc}
.home-catalog{padding:78px 0}
.catalog-grid{gap:16px}
.catalog-game,.catalog-future{min-height:300px}
.catalog-game img{height:300px;filter:brightness(.78)}
.catalog-game::after{background:linear-gradient(0deg,#0b0f17f7,transparent 70%)}
.catalog-game-copy{padding:28px}
.catalog-game .catalog-meta{color:var(--accent-pink)}
.catalog-game h3,.catalog-future h3{font-weight:610}
.catalog-future{background:var(--panel);padding:28px}
.future-mark{color:#83a9ec0b}
.home-closing{margin:0;padding:76px 0 48px;text-align:left;background:var(--bg)}
.home-closing::before{display:none}
.closing-inner h2{font-size:clamp(2rem,4vw,3.5rem);font-weight:650}
.closing-inner>p:not(.home-label){color:var(--text-muted)}
.home-redesign .closing-button{background:#171d25;border-color:#3b4758;color:#e8eef8;box-shadow:none}
.closing-support{justify-content:flex-start;margin-top:64px;border-color:var(--border);color:var(--text-muted)}
.closing-support a{color:var(--text)}
/* Games is an honest single-project catalog. */
.page-intro{padding:155px 0 40px}
.page-intro h1{font-size:clamp(3.3rem,6vw,5.4rem);font-weight:650}
.games-list{padding-bottom:88px}
.featured-panel{grid-template-columns:1.05fr .95fr;min-height:480px;background:var(--panel)}
.featured-panel::before,.featured-panel::after,.character-stage::before{display:none}
.project-copy{padding:48px;align-self:center}
.project-copy .eyebrow{color:var(--accent-pink)}
.project-title{font-family:inherit;font-size:clamp(2.65rem,4.7vw,4.4rem);font-weight:650}
.project-title span{font-style:normal;color:#e3acc4}
.project-description{color:var(--text-muted);line-height:1.7}
.project-meta{color:#b9c4d0}
.status-dot{background:var(--accent-pink);animation:none}
.character-stage{min-height:480px;background:#171b25;border-left:1px solid var(--border)}
.character-stage img{height:100%;filter:none}
.future-note{color:var(--text-muted);text-align:left;margin-top:16px;padding:22px 24px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--bg-elevated)}
/* Hina: a product hero made from the real supplied character asset. */
.hina-page{--accent-pink:#eba8c4;--violet:var(--accent-pink)}
.hina-product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:40px;align-items:stretch;padding-top:128px}
.hina-product .hina-intro{display:flex;flex-direction:column;justify-content:center;gap:32px;padding:24px 0 32px;min-width:0}
.breadcrumb{color:#92a0b1;font-size:.8rem;margin-bottom:30px}
.breadcrumb a:hover{color:var(--accent-pink)}
.hina-intro h1{font-family:inherit;font-size:clamp(3.3rem,5.3vw,5.9rem);font-weight:650;line-height:1.03;letter-spacing:-.06em;max-width:650px}
.hina-intro .tagline{color:#c1c9d3;line-height:1.55;font-size:clamp(1.05rem,1.8vw,1.25rem);margin-top:24px}
.hina-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.hina-product .status-block{border:0;border-top:1px solid var(--border);padding:20px 0 0;min-width:0}
.status-block .state{color:var(--accent-pink);margin-bottom:4px}
.status-block .name{display:none}
.status-block .platform{color:var(--text-muted)}
.keyart{display:flex;align-items:end;justify-content:center;min-height:560px;margin:0;border:1px solid #34303a;border-radius:var(--radius);overflow:hidden;background:linear-gradient(145deg,#20202a,#181a23 62%,#211c27);box-shadow:none}
.keyart img{width:100%;height:100%;max-height:640px;aspect-ratio:auto;object-fit:contain;object-position:center bottom}
.hina-summary{border-color:var(--border);color:var(--text-muted);padding:22px 0}
.hina-summary .summary-tag{color:var(--accent-pink)}
.features{padding:12px 0 60px}
.feature,.feature.reverse{gap:64px;padding:72px 0;border-color:var(--border-soft)}
.feature-count{color:var(--accent-pink)}
.feature-count::after{background:#935d7a}
.feature h2{font-size:clamp(2rem,3.2vw,3.25rem);font-weight:630}
.feature p{color:var(--text-muted);line-height:1.7}
.feature-visual,.feature-visual.portrait{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}
.feature-visual.portrait{background:linear-gradient(145deg,#25202a,#11151b)}
.manga-preview::after{background:linear-gradient(transparent,#101318ed)}
.manga-open{background:#151b22;border-color:#5a6677;border-radius:7px;backdrop-filter:none;color:#e6edf5}
.game-outro{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius)}
.game-outro .store-label{color:#e9c1d1}
.game-outro .button{color:var(--text);border-color:var(--border)}
/* Footer and supporting page. */
.site-footer,.home-redesign .site-footer{padding:48px 0 28px;background:#0a0c10;border-top:1px solid var(--border-soft)}
.footer-logo{font-weight:720;letter-spacing:.12em}
.footer-logo::before{content:"";display:inline-block;width:23px;height:23px;margin-right:9px;vertical-align:middle;background:center/contain no-repeat url('/assets/artlash-mark.svg')}
.footer-logo small{color:#8192aa}
.footer-caption,.footer-contact,.footer-bottom{color:#8793a3}
.footer-nav{color:#bbc5d1}
.footer-nav a:hover,.footer-contact a:hover{color:var(--accent-blue)}
.footer-bottom{border-color:var(--border-soft)}
/* The temporary policy remains explicit and readable, without legal invention. */
body:has(.policy){background:var(--bg);color:var(--text)}
body:has(.policy) .header{position:sticky;top:0;border-bottom:1px solid var(--border-soft);background:#090b0ff2;backdrop-filter:none}
body:has(.policy) .wrap{width:min(900px,calc(100% - 64px))}
body:has(.policy) .nav{width:min(var(--max),calc(100% - 64px));max-width:none;height:76px}
body:has(.policy) .brand{color:var(--text);font-size:.88rem;letter-spacing:.13em}
body:has(.policy) .brand::before{content:"";display:inline-block;width:26px;height:26px;margin-right:10px;vertical-align:middle;background:center/contain no-repeat url('/assets/artlash-mark.svg')}
body:has(.policy) .links{gap:20px}
body:has(.policy) .links a{font-size:.875rem;color:#b3bdca}
body:has(.policy) .links a[aria-current]{color:var(--accent-blue);background:#172236;border-radius:6px;padding:8px 10px}
body:has(.policy) .policy{min-height:65svh;padding:90px 0 115px;max-width:900px}
body:has(.policy) .policy .eyebrow{color:var(--accent-blue)}
body:has(.policy) .policy h1{font-size:clamp(2.8rem,5vw,4.8rem);margin:20px 0 18px}
body:has(.policy) .policy h2{color:#c7d3e3;font-size:1.3rem;margin:0 0 36px}
body:has(.policy) .policy .notice{max-width:720px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);padding:28px;color:#d2d9e3;font-size:1.05rem;line-height:1.75}
body:has(.policy) .policy .updated{color:var(--text-muted);font-size:.95rem;line-height:1.7}
body:has(.policy) .policy .email{color:var(--accent-blue);overflow-wrap:anywhere}
body:has(.policy) .footer{border-top:1px solid var(--border-soft);background:#0a0c10}
body:has(.policy) .footer-inner{width:min(var(--max),calc(100% - 64px));color:var(--text-muted)}
body:has(.policy) .footer-brand{color:var(--text)}
body:has(.policy) .footer-links a{color:#bdc7d2}
/* Mobile is composed separately; the menu keeps its finger-follow gesture. */
@media(max-width:900px){
  .brand-hero h1{font-size:clamp(3.5rem,9vw,6rem)}
  .home-feature-inner{grid-template-columns:1fr .8fr}
  .home-feature-visual{height:480px}
  .hina-product{gap:22px}
  .keyart{min-height:490px}
}
@media(max-width:680px){
  html{scroll-padding-top:76px}
  .container,.home-redesign .container{width:calc(100% - 36px);margin-inline:auto}
  .site-header,.home-redesign .site-header{top:0;width:100%;padding:0;background:#0b0e13f7}
  .nav-shell,.is-scrolled .nav-shell,.home-redesign .nav-shell,.home-redesign .is-scrolled .nav-shell{width:100%;min-height:64px;padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));background:none;border:0;box-shadow:none}
  .nav-shell>.wordmark{font-size:.85rem;min-height:60px}
  .nav-shell>.wordmark::before{width:26px;height:26px;margin-right:8px}
  .nav-shell>.wordmark::after{content:"INTERACTIVE";display:block;inset:auto auto 6px 34px;font-size:7px;letter-spacing:.22em;color:#8da3bf}
  .language-toggle{color:#c9d5e6}
  .nav-shell>.nav-links,.js .nav-shell>.nav-links,.js .nav-shell>.nav-links.open{background:var(--bg-elevated);border-color:var(--border);border-radius:12px 0 0 12px;box-shadow:-16px 0 40px #0008}
  .site-header.menu-open .nav-shell{background:transparent}
  .menu-backdrop{background:#02050bc4}
  .menu-panel-head{background:#0e1117}
  .menu-panel-brand{color:var(--text);font-weight:720;letter-spacing:.14em}
  .menu-panel-brand small{color:#90a4c0}
  .menu-panel-brand-lines{display:none}
  .js .nav-shell>.nav-links .nav-items{margin-top:28px}
  .js .nav-shell>.nav-links .nav-items a,.js .nav-shell>.nav-links.open .nav-items a{font-size:clamp(21px,5.8vw,26px);color:#e8edf5;border-radius:8px}
  .nav-shell .nav-items a:is([aria-current="page"],[aria-current="location"]){background:#17253a;animation:active-rail 8s ease-in-out infinite alternate;box-shadow:inset 3px 0 var(--accent-blue)}
  .nav-shell .nav-items a:is([aria-current="page"],[aria-current="location"])::after{background:none;box-shadow:none;animation:none}
  .nav-shell .nav-items a:not([aria-current]){border-bottom:1px solid var(--border-soft)}
  .menu-section-title{color:#a9c6f4}
  .menu-language-slot .language-options a{background:#141a23;border-color:var(--border);color:#e5ebf4}
  .menu-language-slot .language-options a[aria-current]{background:#18253a;border-color:#4778b6;box-shadow:none}
  .menu-contact-link{color:#c5d0dd}
  .menu-panel-bottom{background:linear-gradient(#0e1117,#0b1018);border-color:var(--border-soft)}
  .home-redesign main{overflow:visible}
  .brand-hero{min-height:0;padding:136px 0 70px;background:var(--bg)}
  .brand-hero-inner{padding:0}
  .brand-hero h1{font-size:clamp(2.75rem,11vw,4.2rem);margin:16px 0 22px;overflow-wrap:anywhere}
  .brand-hero h1 span{color:#899bb1}
  .brand-intro{font-size:1rem;max-width:34ch;color:var(--text-muted)}
  .brand-actions{margin-top:26px}
  .home-redesign .brand-actions .brand-primary,.home-redesign .feature-button{min-height:48px;padding:11px 17px;border-radius:8px;font-size:.875rem;box-shadow:none}
  .brand-actions .brand-secondary{display:inline-flex}
  .brand-hero-foot{display:none}
  .home-feature{margin:0 18px;border:1px solid #4a3845;border-radius:var(--radius);overflow:hidden;background:var(--panel)}
  .home-feature .container{width:100%;margin:0}
  .home-feature-inner{display:flex;flex-direction:column;min-height:0;gap:0}
  .home-feature-visual{order:0;height:235px;margin:0;border:0;background:linear-gradient(140deg,#1c2029,#28202a)}
  .home-feature-visual img{right:0;bottom:-80px;width:70%;height:330px;max-width:none;object-position:right bottom}
  .home-feature-copy{order:1;padding:22px;max-width:none}
  .home-feature .home-label{font-size:.75rem;letter-spacing:.1em}
  .home-status{font-size:.72rem;margin-left:8px}
  .home-feature h2{font-size:clamp(2.3rem,9vw,3.2rem);margin:14px 0 12px}
  .feature-lead{font-size:1rem}
  .feature-small{font-size:.94rem;color:var(--text-muted)}
  .feature-platform{font-size:.8rem;color:#aeb8c5}
  .home-teaser{padding:24px 0 62px}
  .teaser-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .teaser-card{min-height:0;padding:16px 8px;display:grid;grid-template-rows:30px 1fr;text-align:center;background:var(--panel)}
  .teaser-icon{margin:auto}
  .teaser-card h3{font-size:.96rem}
  .teaser-card p{font-size:.84rem;line-height:1.45}
  .home-dna{padding:52px 0;background:var(--bg)}
  .home-section-heading h2,.home-about h2{font-size:clamp(2rem,7.6vw,2.8rem)}
  .dna-grid{grid-template-columns:1fr;gap:8px}
  .dna-card,.dna-card:nth-child(2),.dna-card:nth-child(3){display:grid;grid-template-columns:34px 1fr;align-content:center;column-gap:12px;min-height:90px;padding:15px 16px}
  .dna-icon{grid-row:1/3;margin:0}
  .dna-card h3{font-size:1rem;margin:0}
  .dna-card p{font-size:.875rem}
  .home-about{padding:60px 0;background:#0d1118}
  .about-home-grid{display:block}
  .about-home-lead{font-size:1.125rem}
  .about-home-detail{font-size:.95rem}
  .home-about .inline-link{display:inline-flex;margin-top:18px}
  .home-catalog{padding:60px 0}
  .catalog-grid{display:block}
  .catalog-game{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:stretch;min-height:112px}
  .catalog-game img{width:104px;height:100%;min-height:112px;filter:none}
  .catalog-game::after{display:none}
  .catalog-game-copy{position:static;padding:12px 14px;align-items:center}
  .catalog-game h3{font-size:1rem}
  .catalog-game .catalog-meta,.catalog-game p{font-size:.78rem}
  .catalog-future{display:none}
  .home-closing{margin:0;padding:60px 0 30px;border:0;border-top:1px solid var(--border-soft);border-radius:0;background:var(--bg)}
  .closing-inner h2{font-size:clamp(2rem,7vw,2.7rem)}
  .home-redesign .closing-button{display:inline-flex;margin-top:24px}
  .closing-support{margin-top:48px}
  .hina-product{display:flex;flex-direction:column;padding-top:104px;gap:0}
  .hina-product .hina-intro{gap:18px;padding:0 0 26px}
  .breadcrumb{margin-bottom:20px}
  .hina-intro h1{font-size:clamp(2.8rem,11vw,4rem)}
  .hina-intro .tagline{font-size:1rem;margin-top:18px}
  .hina-intro .tagline span{display:inline}
  .hina-hero-actions{margin-top:22px}
  .hina-product .status-block{padding:12px 0 0}
  .keyart{height:400px;min-height:0}
  .keyart img{height:100%;object-fit:contain}
  .hina-summary{padding:20px 0}
  .features{padding:6px 0 42px}
  .feature,.feature.reverse{gap:28px;padding:48px 0}
  .feature h2{font-size:clamp(2rem,8vw,2.6rem)}
  .feature p{font-size:1rem}
  .game-outro{margin-bottom:64px}
  .site-footer,.home-redesign .site-footer{padding-bottom:calc(26px + env(safe-area-inset-bottom))}
  .footer-nav a{display:inline-flex;align-items:center;min-height:44px}
  body:has(.policy) .wrap{width:calc(100% - 36px)}
  body:has(.policy) .nav{width:100%;height:auto;min-height:68px;gap:10px;flex-wrap:wrap;padding:12px 0}
  body:has(.policy) .links{order:3;width:100%;overflow-x:auto;white-space:nowrap;padding:6px 0}
  body:has(.policy) .links a{min-height:44px;display:inline-flex;align-items:center}
  body:has(.policy) .policy{padding:62px 0 90px}
  body:has(.policy) .policy .notice{padding:20px;font-size:1rem}
  body:has(.policy) .footer-inner{width:calc(100% - 36px)}
}
@media(max-width:340px){
  .brand-hero h1{font-size:2.55rem}
  .teaser-grid{grid-template-columns:1fr}
  .teaser-card{grid-template-columns:34px 1fr;grid-template-rows:auto;text-align:left;align-items:center;gap:12px;padding:14px}
  .teaser-icon{margin:0}
  .home-feature h2{font-size:2.1rem}
  .hina-hero-actions .button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .button,.teaser-card,.dna-card,.catalog-game,.featured-panel{animation:none;transition:none}
  .nav-shell .nav-items a:is([aria-current="page"],[aria-current="location"]){animation:none}
}
@keyframes active-rail{
  from{box-shadow:inset 3px 0 #6d9feb,inset 10px 0 14px #477ad215}
  to{box-shadow:inset 3px 0 #8fb9ff,inset 10px 0 14px #477ad230}
}
