
  
  @font-face{
    font-family:'DM Sans'; font-style:normal; font-weight:400 700; font-display:swap;
    src:url(f78180b12b6a.woff2) format('woff2');
    unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
  }
  @font-face{
    font-family:'DM Sans'; font-style:normal; font-weight:400 700; font-display:swap;
    src:url(c57593e0adc4.woff2) format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
  }

  
  :root{
    --brand-1:#DBC4E6; --brand-2:#C5A7E1; --brand-3:#9364CC; --brand-4:#783CBD;
    --brand-5:#62269E; --brand-6:#5B2B82; --brand-7:#31006F; --brand-extra-dark:#281540;
    
    --dark-surface:#5B4873; --dark-surface-2:#6B5788;

    --action-primary:#D4F285; --action-secondary:#FFFFFF; --action-tertiary:#F1EBF8;

    --positive:#009F5C; --positive-light:#E5F5EF;
    --negative:#FF5139;  --negative-light:#FFEEEB;

    --white:#FFFFFF;
    --grey-50:#F7F5FA; --grey-100:#EFEDF2; --grey-200:#E2DEE8; --grey-400:#A9A2B4; --grey-600:#6B6377;

    
    --ink:var(--brand-7);
    --ink-2:rgba(49,0,111,.72);
    
    --ink-3:rgba(49,0,111,.78);
    --rule:rgba(49,0,111,.14);
    --rule-2:rgba(49,0,111,.28);

    
    --on-deep:#FFFFFF;
    --on-deep-2:rgba(255,255,255,.72);
    
    --on-deep-3:rgba(255,255,255,.72);
    --rule-deep:rgba(255,255,255,.18);
    --rule-deep-2:rgba(255,255,255,.34);

    --font-sans:'DM Sans', -apple-system, 'Segoe UI', Arial, sans-serif;

    
    --accent:var(--brand-4);

    
    --page:min(1720px, max(1340px, 86vw));
    --pad:clamp(20px,4vw,52px);

    
    --flow-cols:minmax(0,1fr) clamp(212px,23vw,330px) minmax(0,1fr);
  }

  
  @media (min-width:2000px){ :root{ --pad:64px } }

  *{box-sizing:border-box}
  html{scroll-behavior:smooth; -webkit-text-size-adjust:100%}
  @media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} }

  body{
    margin:0; font-family:var(--font-sans); font-size:15px; line-height:1.55;
    color:var(--ink); background:var(--brand-7); -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4,p,figure,ol,ul,dl,dd,dt{margin:0; padding:0}
  ol,ul{list-style:none}
  img,svg{display:block}
  a{color:inherit; text-decoration:none}
  button{font:inherit; color:inherit; background:none; border:0; cursor:pointer}

  :focus-visible{outline:2px solid var(--brand-4); outline-offset:3px; border-radius:3px}
  .on-deep :focus-visible, .on-lime :focus-visible{outline-color:var(--brand-7)}
  .on-deep :focus-visible{outline-color:var(--action-primary)}

  ::selection{background:var(--action-primary); color:var(--brand-7)}

  html{ scrollbar-color:var(--brand-5) var(--brand-7) }
  ::-webkit-scrollbar{ width:12px; height:12px }
  ::-webkit-scrollbar-track{ background:var(--brand-7) }
  ::-webkit-scrollbar-thumb{ background:var(--brand-5); border-radius:100px; border:3px solid var(--brand-7) }
  ::-webkit-scrollbar-thumb:hover{ background:var(--brand-4) }

  .wrap{max-width:var(--page); margin:0 auto; padding-inline:var(--pad)}

  
  .on-deep, .on-tint{
    color:var(--on-deep);
    --ink:var(--on-deep); --ink-2:var(--on-deep-2); --ink-3:var(--on-deep-3);
    --rule:var(--rule-deep); --rule-2:var(--rule-deep-2);
    --accent:var(--brand-2);
  }
  .on-deep{ background:var(--brand-7) }
  .on-tint{ background:var(--brand-extra-dark) }
  
  .on-lime{
    background:var(--action-primary); color:var(--brand-7);
    --ink:var(--brand-7);
    --ink-2:rgba(49,0,111,.72); --ink-3:rgba(49,0,111,.78);
    --rule:rgba(49,0,111,.14); --rule-2:rgba(49,0,111,.28);
    --accent:var(--brand-4);
  }
  .on-light{ background:var(--grey-50); color:var(--ink) }
  .on-white{ background:var(--white); color:var(--ink) }

  
  .card-light{
    color:var(--brand-7);
    --ink:var(--brand-7);
    --ink-2:rgba(49,0,111,.72); --ink-3:rgba(49,0,111,.78);
    --rule:rgba(49,0,111,.14); --rule-2:rgba(49,0,111,.28);
    --accent:var(--brand-4);
  }

  
  
  .xl{
    font-weight:700; font-size:clamp(2.375rem,5.9vw,4.75rem); line-height:1;
    letter-spacing:-.036em; text-wrap:balance;
  }
  .lg{
    font-weight:700; font-size:clamp(1.9375rem,4.7vw,3.5rem); line-height:1.04;
    letter-spacing:-.032em; text-wrap:balance;
  }
  
  .md{ font-weight:700; font-size:clamp(1.25rem,2vw,1.5625rem); line-height:1.27; letter-spacing:-.02em; text-wrap:balance }
  .sm{ font-weight:700; font-size:.9375rem; line-height:1.467 }
  .body{ font-size:1.0625rem; line-height:1.6; max-width:44ch; text-wrap:pretty }
  .tiny{ font-size:.8125rem; line-height:1.5 }
  
  .num{ font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:-.015em }

  .on-deep .body, .on-deep .tiny{ color:var(--on-deep-2) }
  .on-lime .body, .on-lime .tiny{ color:var(--ink-2) }
  .on-light .body, .on-white .body,
  .on-light .tiny, .on-white .tiny{ color:var(--ink-2) }

  
  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:7px;
    height:46px; padding:0 22px; border-radius:100px;
    font-weight:700; font-size:.875rem; white-space:nowrap;
    transition:filter .15s ease, transform .1s ease, background .15s ease, color .15s ease;
  }
  .btn:active{ transform:scale(.98) }
  .btn-lime{ background:var(--action-primary); color:var(--brand-7) }
  .btn-lime:hover{ filter:brightness(.95) }
  .btn-deep{ background:var(--brand-7); color:var(--action-primary) }
  .btn-deep:hover{ background:var(--brand-5) }
  .btn-white{ background:var(--white); color:var(--brand-7) }
  .btn-white:hover{ filter:brightness(.96) }
  .btn-ghost-deep{ border:1px solid var(--rule-deep-2); color:var(--on-deep) }
  .btn-ghost-deep:hover{ background:rgba(255,255,255,.09) }
  .btn-sm{ height:38px; padding:0 16px; font-size:.8125rem }
  .btn .ico{ width:16px; height:16px; flex-shrink:0 }

  .arrow-link{
    display:inline-flex; align-items:center; gap:6px; font-weight:700; font-size:.875rem;
  }
  .arrow-link svg{ width:14px; height:14px; transition:transform .2s ease }
  .arrow-link:hover svg{ transform:translateX(3px) }

  
  
  .nav{ position:fixed; top:0; left:0; right:0; z-index:60 }
  
  .nav{ transition:transform .3s cubic-bezier(.4,0,.2,1) }
  .nav--away{ transform:translateY(-100%) }
  
  .nav{ transition:transform .3s cubic-bezier(.4,0,.2,1), background-color .25s ease, box-shadow .25s ease }
  .nav--solid{ background:var(--brand-7); box-shadow:0 8px 24px rgba(12,0,30,.22) }
  @media (prefers-reduced-motion: reduce){ .nav{ transition:none } }
  .nav-inner{ display:flex; align-items:center; justify-content:space-between; gap:16px; height:96px }
  
  .brandmark{ display:flex; align-items:center; flex-shrink:0 }
  .brandmark svg{ height:42px; width:auto }
  .brandmark path{ transition:fill .2s ease }
  .nav--on-light .brandmark path{ fill:var(--brand-7) }
  @media (prefers-reduced-motion: reduce){ .brandmark path{ transition:none } }
  .brandmark path{ fill:var(--white) }
  .nav-right{ display:flex; align-items:center; gap:10px }

  
  .langsw{ position:relative; flex-shrink:0 }
  .lang-btn{
    display:inline-flex; align-items:center; gap:6px;
    height:38px; padding:0 10px 0 11px; border-radius:100px;
    font-weight:700; font-size:.8125rem; letter-spacing:.04em; color:var(--white);
    border:1px solid rgba(255,255,255,.3); background:rgba(255,255,255,.09);
    -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
    transition:background .18s ease, border-color .18s ease, color .2s ease, transform .1s ease;
  }
  .lang-btn:hover{ background:rgba(255,255,255,.18); border-color:rgba(255,255,255,.5) }
  .lang-btn:active{ transform:scale(.97) }
  .nav--on-light .lang-btn{ color:var(--brand-7); border-color:var(--rule-2); background:rgba(49,0,111,.04) }
  .nav--on-light .lang-btn:hover{ background:rgba(49,0,111,.08); border-color:var(--brand-7) }
  .langsw[data-open="true"] .lang-btn{ border-color:var(--action-primary); color:var(--action-primary) }
  
  .nav--on-light .langsw[data-open="true"] .lang-btn{ color:var(--brand-7); border-color:var(--brand-7) }
  
  .lang-globe{ width:15px; height:15px; flex-shrink:0; opacity:.92 }
  .lang-globe .mer{ transform-box:view-box; transform-origin:12px 12px; transition:transform .5s cubic-bezier(.34,1.15,.4,1) }
  .lang-btn:hover .lang-globe .mer,
  .langsw[data-open="true"] .lang-globe .mer{ transform:scaleX(.16) }
  .lang-caret{ width:11px; height:11px; flex-shrink:0; opacity:.7; transition:transform .25s ease }
  .langsw[data-open="true"] .lang-caret{ transform:rotate(180deg) }

  .lang-pop{
    position:absolute; top:calc(100% + 10px); right:0; width:236px; z-index:2;
    background:var(--brand-extra-dark); color:var(--on-deep);
    border:1px solid rgba(255,255,255,.13); border-radius:20px; padding:10px;
    box-shadow:0 18px 48px rgba(20,0,45,.45);
    opacity:0; visibility:hidden; transform:translateY(-8px) scale(.97); transform-origin:top right;
    transition:opacity .18s ease, transform .22s cubic-bezier(.2,.9,.3,1), visibility .22s;
  }
  .lang-pop[data-open="true"]{ opacity:1; visibility:visible; transform:none }
  
  .lang-head{ margin:2px 0 8px; padding-inline:8px; font-size:.8125rem; color:var(--on-deep-3) }
  .lang-opt{
    display:flex; align-items:center; gap:10px; width:100%; padding:7px 8px;
    border-radius:13px; text-align:left; color:var(--on-deep);
    transition:background .15s ease; opacity:0; transform:translateX(10px);
  }
  
  .lang-pop[data-open="true"] .lang-opt{ animation:langIn .3s cubic-bezier(.2,.9,.3,1) forwards }
  .lang-pop[data-open="true"] .lang-opt:nth-of-type(2){ animation-delay:.04s }
  .lang-pop[data-open="true"] .lang-opt:nth-of-type(3){ animation-delay:.08s }
  .lang-pop[data-open="true"] .lang-opt:nth-of-type(4){ animation-delay:.12s }
  .lang-pop[data-open="true"] .lang-opt:nth-of-type(5){ animation-delay:.16s }
  @keyframes langIn{ to{ opacity:1; transform:none } }
  .lang-opt:hover:not([disabled]){ background:rgba(255,255,255,.09) }
  .lang-chip{
    width:30px; height:30px; flex-shrink:0; border-radius:10px;
    display:flex; align-items:center; justify-content:center;
    font-size:.6875rem; font-weight:700; letter-spacing:.03em;
    background:var(--dark-surface); color:var(--on-deep);
    transition:transform .2s ease, background .15s ease;
  }
  .lang-opt:hover:not([disabled]) .lang-chip{ transform:translateX(2px) }
  .lang-opt.is-on .lang-chip{ background:var(--action-primary); color:var(--brand-7) }
  .lang-name{ flex:1; font-size:.875rem; font-weight:700 }
  .lang-opt[disabled]{ cursor:default }
  .lang-opt[disabled] .lang-name{ color:var(--on-deep-3); font-weight:600 }
  .lang-opt[disabled] .lang-chip{ background:rgba(255,255,255,.07); color:var(--on-deep-3) }
  
  .lang-tag{ font-size:.8125rem; color:var(--on-deep-3) }
  .lang-tick{ width:15px; height:15px; color:var(--action-primary); flex-shrink:0 }
  @media (max-width:620px){ .langsw{ display:none } }
  @media (prefers-reduced-motion: reduce){
    .lang-pop{ transition:opacity .01s ease, visibility .01s }
    .lang-pop[data-open="true"] .lang-opt{ animation:none; opacity:1; transform:none }
    .lang-globe .mer, .lang-caret, .lang-chip, .lang-btn{ transition:none }
  }

  
  .burger{
    width:42px; height:42px; border-radius:100px; background:var(--action-primary);
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; flex-shrink:0;
  }
  .burger i{ display:block; width:15px; height:1.8px; background:var(--brand-7); border-radius:2px }

  
  .menu{
    position:fixed; inset:0; z-index:70; background:var(--brand-7); color:var(--on-deep);
    display:flex; flex-direction:column; padding:var(--pad);
    opacity:0; visibility:hidden; transition:opacity .22s ease, visibility .22s ease;
    
    overflow-y:auto; overscroll-behavior:contain;
  }
  .menu[data-open="true"]{ opacity:1; visibility:visible }
  
  .menu-top{
    display:flex; justify-content:space-between; align-items:center; width:100%;
    height:76px; gap:16px; flex-wrap:wrap;
    
    flex-shrink:0;
  }
  
  .menu-lang{ display:flex; flex-direction:column; align-items:flex-start; gap:10px; margin-top:28px }
  .menu-lang h4{ margin:0; font-size:.9375rem; font-weight:700; color:var(--on-deep-3) }
  .mlang-seg{
    display:inline-flex; align-items:center; gap:2px; padding:4px;
    border-radius:100px; background:rgba(255,255,255,.07); border:1px solid var(--rule-deep);
  }
  .mlang{
    display:inline-flex; align-items:center; justify-content:center;
    min-width:54px; height:36px; padding:0 12px; border-radius:100px;
    font-weight:700; font-size:.8125rem; letter-spacing:.05em; color:var(--on-deep-3);
    transition:background .15s ease, color .15s ease;
  }
  .mlang:not(.is-on):not([disabled]):hover{ background:rgba(255,255,255,.11); color:var(--on-deep) }
  .mlang.is-on{ background:var(--action-primary); color:var(--brand-7) }
  .mlang[disabled]{ opacity:.52; cursor:default }
  .menu-lang .sr{
    position:absolute; width:1px; height:1px; overflow:hidden;
    clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap;
  }
  
  @media (max-width:860px){
    .menu-top{ height:auto; padding-block:14px; row-gap:12px }
    .menu-close{ order:2 }
    .mlang{ min-width:52px; height:44px; padding:0 10px; font-size:.875rem }
  }
  @media (prefers-reduced-motion: reduce){ .mlang{ transition:none } }
  
  @media (max-width:560px){ .mlang-seg{ padding:3px; gap:0 } .mlang{ min-width:0; height:40px; padding:0 6px; font-size:.75rem; letter-spacing:.02em } .mlang-note{ display:none } }
  .menu-close{
    width:42px; height:42px; border-radius:100px; background:var(--action-primary); color:var(--brand-7);
    display:flex; align-items:center; justify-content:center;
  }
  .menu-close svg{ width:16px; height:16px }
  
  
  .menu-home{
    display:inline-flex; align-items:center; flex-shrink:0;
    transition:opacity .18s ease, transform .18s ease;
  }
  .menu-home:hover{ opacity:.78; transform:translateY(-1px) }
  .menu-home:active{ transform:scale(.98) }
  .menu-home svg{ height:clamp(30px,3.4vw,40px); width:auto }
  .menu-home path{ fill:var(--white) }
  .menu-home .sr{
    position:absolute; width:1px; height:1px; overflow:hidden;
    clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap;
  }
  @media (prefers-reduced-motion: reduce){ .menu-home{ transition:none } }
  
  .menu-nav{
    
    display:grid; grid-template-columns:minmax(0,auto) repeat(2,minmax(0,1fr));
    gap:clamp(24px,3vw,54px);
    margin:clamp(12px,1.8vw,32px) 0 0; max-width:var(--page); width:100%;
    align-items:start;
    
    align-content:start;
  }

  
  .menu-cards{ display:grid; grid-template-columns:repeat(2,minmax(140px,268px)); gap:clamp(11px,1.2vw,18px) }
  
  .menu-cards a{
    display:flex; flex-direction:column; justify-content:space-between; gap:14px;
    aspect-ratio:1/1; padding:clamp(14px,1.3vw,19px); border-radius:16px;
    background:var(--brand-6); border:1px solid var(--rule-deep-2);
    transition:transform .18s ease, background-color .18s ease;
  }
  .menu-cards a:hover{ transform:translateY(-3px); background:var(--brand-5) }
  
  .menu-cards h3{
    margin:0; font-weight:700; font-size:clamp(1.0625rem,1.7vw,1.625rem);
    line-height:1.27; letter-spacing:-.024em; text-wrap:balance; max-width:11ch;
  }
  
  .menu-cards img{ width:clamp(48px,7vw,116px); height:auto; border-radius:24px; align-self:flex-start }

  
  
  .menu-col h4{
    margin:0 0 14px; padding-bottom:11px; font-size:1.0625rem; font-weight:700;
    line-height:1.4; letter-spacing:-.014em; color:var(--on-deep);
    border-bottom:1px solid var(--rule-deep);
  }
  .menu-col a{
    display:block; font-size:1rem; font-weight:500; line-height:1.4;
    padding-block:7px; color:var(--on-deep-2); transition:color .15s ease;
  }
  .menu-col a:hover{ color:var(--action-primary) }
  
  .menu-col--jump a{ display:flex; align-items:center; gap:9px }
  .menu-col--jump svg{ width:12px; height:12px; flex-shrink:0; color:var(--action-primary); opacity:.85 }
  
  .menu-social{ display:flex; gap:10px; margin-top:clamp(20px,2.2vw,30px) }
  .menu-social a{
    display:flex; align-items:center; justify-content:center;
    width:40px; height:40px; padding:0; border-radius:12px;
    background:var(--dark-surface); border:1px solid var(--rule-deep-2);
    color:var(--on-deep-2);
    transition:color .15s ease, background-color .15s ease, transform .15s ease;
  }
  .menu-social a:hover{
    color:var(--brand-7); background:var(--action-primary); transform:translateY(-2px);
  }
  .menu-social svg{ width:18px; height:18px; fill:currentColor; display:block }
  @media (prefers-reduced-motion: reduce){ .menu-social a{ transition:none } }
  
  .menu-note{
    grid-column:1 / -1; margin:clamp(26px,3vw,44px) 0 0; padding-top:16px;
    border-top:1px solid var(--rule-deep); font-size:.8125rem; color:var(--on-deep-3); max-width:70ch;
  }
  
  @media (max-width:1180px){
    .menu-nav{ grid-template-columns:repeat(2,minmax(0,1fr)) }
    .menu-cards{ grid-column:1 / -1; grid-template-columns:repeat(4,minmax(0,1fr)) }
  }
  @media (max-width:860px){
    .menu-nav{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px }
    .menu-cards{ grid-template-columns:repeat(2,minmax(0,1fr)) }
    
    .menu{ justify-content:flex-start }
  }
  
  @media (max-height:760px) and (min-width:861px){
    .menu-top{ height:58px }
    .menu-nav{ margin-top:12px }
    .menu-cards{ grid-template-columns:repeat(2,minmax(120px,196px)) }
    .menu-cards h3{ font-size:1.0625rem }
    .menu-cards img{ width:clamp(40px,4vw,64px); border-radius:16px }
    .menu-col a{ padding-block:5px }
  }


  footer{ background:var(--brand-extra-dark); color:var(--on-deep); padding-block:clamp(44px,5vw,68px) 26px }
  
  
  .foot-grid{ display:grid; grid-template-columns:minmax(0,1.2fr) repeat(4,minmax(0,1fr)); gap:34px; padding-bottom:34px }
  
  @media (max-width:1160px){
    .foot-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) }
    .foot-brand{ grid-column:1 / -1 }
  }
  @media (max-width:520px){ .foot-grid{ grid-template-columns:1fr } }
  
  .foot-logo path{ fill:var(--white) }
  .foot-brand .tags{ display:flex; align-items:center; gap:10px; margin:18px 0 10px }
  .foot-brand .b2c{
    font-size:.6875rem; font-weight:700; letter-spacing:.05em;
    background:var(--action-primary); color:var(--brand-7); padding:4px 9px; border-radius:100px;
  }
  .foot-brand .tags b{ font-weight:700; font-size:.875rem }
  .foot-brand p{ font-size:.8125rem; color:var(--on-deep-3); max-width:34ch }
  
  .foot-col h4{ font-size:.9375rem; font-weight:700; letter-spacing:-.01em; color:var(--on-deep-3); margin-bottom:13px }
  .foot-col a, .foot-col span{ display:block; font-size:.90625rem; color:var(--on-deep-2); padding-block:5px }
  .foot-col a:hover{ color:var(--on-deep) }
  
  .foot-col span{ color:var(--on-deep-3) }
  .foot-bottom{ border-top:1px solid var(--rule-deep); padding-top:20px; display:flex; justify-content:space-between; gap:14px 22px; flex-wrap:wrap }
  .foot-bottom > span{ font-size:.8125rem; color:var(--on-deep-3) }
  .foot-bottom > span:first-child{ flex:1 1 520px; max-width:80ch; line-height:1.55 }
  .foot-legal{ display:flex; gap:18px; flex-wrap:wrap }
  .foot-legal a{ color:var(--on-deep-3) }
  .foot-legal a:hover{ color:var(--on-deep-2) }
  
  .foot-eu{ display:flex; align-items:center; gap:18px 28px; flex-wrap:wrap; padding-top:28px; margin-top:28px; border-top:1px solid var(--rule-deep) }
  .foot-eu img{ height:48px; width:auto; display:block; flex:0 0 auto }
  .foot-eu p{ margin:0; font-size:.75rem; line-height:1.55; color:var(--on-deep-3); max-width:90ch; flex:1 1 320px }
  .foot-eu b{ color:var(--on-deep-2); font-weight:600 }
  .foot-funds{ display:grid; grid-template-columns:repeat(3,max-content); align-items:center; gap:24px 56px; padding-top:28px }
  .foot-funds img{ height:56px; width:auto; display:block }
  .foot-funds .fund-logo--gray{ height:72px }
  @media (max-width:860px){ .foot-funds{ grid-template-columns:repeat(2,max-content) } }
  @media (max-width:560px){ .foot-funds{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 20px } .foot-funds img{ height:auto; max-height:44px; max-width:100% } .foot-funds .fund-logo--gray{ max-height:56px } }
  
  .foot-spec{ padding-top:16px }
  
  .foot-spec a, .foot-spec span{ font-size:.6875rem; color:var(--on-deep-4,var(--on-deep-3)); opacity:.72 }
  .foot-spec a:hover{ opacity:1; color:var(--on-deep-2) }

  .legal-table{ max-width:100%; overflow-x:auto }
  .foot-social{ display:flex; justify-content:center; gap:12px; padding:26px 0 6px; border-top:1px solid var(--rule-deep) }
  .foot-social a{
    display:flex; align-items:center; justify-content:center; width:34px; height:34px;
    border-radius:100px; background:var(--rule-deep); color:var(--on-deep); transition:background .15s ease;
  }
  .foot-social a:hover{ background:var(--action-primary); color:var(--brand-7) }
  .foot-social svg{ width:16px; height:16px; fill:currentColor; display:block }
  @media (prefers-reduced-motion: reduce){ .foot-social a{ transition:none } }

  

  .sec{ padding-block:clamp(64px,9vw,120px) }
  .sec-head{ max-width:62ch; margin-bottom:clamp(32px,4.5vw,56px) }
  .eyebrow{
    display:inline-flex; align-items:center; gap:8px; font-weight:700; font-size:.8125rem;
    letter-spacing:.02em; color:var(--accent); margin-bottom:14px;
  }
  .eyebrow::before{ content:''; width:7px; height:7px; border-radius:50%; background:currentColor }

  
  .p-hero{ padding-block:clamp(148px,16vw,208px) clamp(56px,8vw,96px) }
  .p-hero .xl{ max-width:20ch }
  .p-hero .body{ max-width:52ch; font-size:1.0625rem; margin-top:18px }
  .p-hero-cta{ display:flex; flex-wrap:wrap; gap:12px; margin-top:30px }

  
  .feat-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2vw,24px) }
  @media (max-width:900px){ .feat-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) } }
  @media (max-width:620px){ .feat-grid{ grid-template-columns:1fr } }
  .feat-card{
    padding:clamp(22px,2.4vw,30px); border-radius:20px; display:flex; flex-direction:column; gap:14px;
  }
  .on-deep .feat-card, .on-tint .feat-card{ background:rgba(255,255,255,.06); border:1px solid var(--rule-deep) }
  .on-light .feat-card, .on-white .feat-card{ background:var(--white); border:1px solid var(--rule) }
  .feat-card .ico{ width:44px; height:44px; display:flex; align-items:center; justify-content:center }
  .feat-card .ico img{ width:100%; height:100%; object-fit:contain }
  .feat-card h3{ font-weight:700; font-size:1.0625rem; letter-spacing:-.01em; line-height:1.3 }

  
  .steps{ display:flex; flex-direction:column; gap:0; counter-reset:step }
  .step{
    display:grid; grid-template-columns:auto 1fr; gap:18px; padding-block:22px;
    border-top:1px solid var(--rule);
  }
  .on-deep .step, .on-tint .step{ border-color:var(--rule-deep) }
  .steps .step:last-child{ border-bottom:1px solid var(--rule) }
  .on-deep .steps .step:last-child, .on-tint .steps .step:last-child{ border-color:var(--rule-deep) }
  .step-num{
    counter-increment:step; width:34px; height:34px; border-radius:50%;
    display:flex; align-items:center; justify-content:center; font-weight:700; font-size:.875rem;
    background:var(--action-primary); color:var(--brand-7); flex-shrink:0;
  }
  .step-num::before{ content:counter(step) }
  .step h3{ font-weight:700; font-size:1rem; margin-bottom:4px }

  
  .stat-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(18px,2.4vw,28px) }
  @media (max-width:900px){ .stat-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) } }
  .stat b{ display:block; font-weight:700; font-size:clamp(1.75rem,3.4vw,2.5rem); letter-spacing:-.02em; line-height:1 }
  .stat span{ display:block; margin-top:8px; font-size:.8125rem; line-height:1.4 }
  .on-deep .stat span, .on-tint .stat span{ color:var(--on-deep-3) }
  .on-light .stat span, .on-white .stat span{ color:var(--ink-3) }

  
  .faq-list{ display:flex; flex-direction:column; gap:10px; max-width:74ch }
  .faq-item{ border-radius:16px; overflow:hidden }
  .on-deep .faq-item, .on-tint .faq-item{ background:rgba(255,255,255,.06) }
  .on-light .faq-item, .on-white .faq-item{ background:var(--white); border:1px solid var(--rule) }
  .faq-item summary{
    cursor:pointer; list-style:none; display:flex; align-items:center; justify-content:space-between;
    gap:14px; padding:18px 20px; font-weight:700; font-size:.9375rem;
  }
  .faq-item summary::-webkit-details-marker{ display:none }
  .faq-item summary::after{
    content:'+'; font-size:1.25rem; font-weight:400; flex-shrink:0; transition:transform .2s ease; line-height:1;
  }
  .faq-item[open] summary::after{ transform:rotate(45deg) }
  .faq-item .faq-a{ padding:0 20px 20px; max-width:60ch }

  
  .quote-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px }
  @media (max-width:900px){ .quote-grid{ grid-template-columns:1fr } }
  .quote-card{ padding:22px; border-radius:18px; display:flex; flex-direction:column; gap:14px }
  .on-deep .quote-card, .on-tint .quote-card{ background:rgba(255,255,255,.06); border:1px solid var(--rule-deep) }
  .on-light .quote-card, .on-white .quote-card{ background:var(--white); border:1px solid var(--rule) }
  .quote-card p{ font-size:.9375rem; line-height:1.55 }
  .quote-card span{ font-size:.8125rem; font-weight:700 }
  .on-deep .quote-card span, .on-tint .quote-card span{ color:var(--on-deep-3) }
  .on-light .quote-card span, .on-white .quote-card span{ color:var(--ink-3) }

  
  .cta-band{ padding:clamp(48px,6vw,72px) clamp(28px,5vw,64px); border-radius:28px; text-align:center }
  .cta-band .lg{ max-width:20ch; margin:0 auto }
  .cta-band .body{ max-width:44ch; margin:14px auto 0 }
  .cta-band .p-hero-cta{ justify-content:center }

  
  .split{ display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(32px,5vw,64px); align-items:center }
  @media (max-width:860px){ .split{ grid-template-columns:1fr } }

  
  .p-form{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; max-width:640px }
  .p-form .full{ grid-column:1 / -1 }
  @media (max-width:620px){ .p-form{ grid-template-columns:1fr } }
  .p-form label{ display:flex; flex-direction:column; gap:6px; font-size:.8125rem; font-weight:700 }
  .on-deep .p-form label, .on-tint .p-form label{ color:var(--on-deep-2) }
  .p-form input, .p-form textarea{
    font:inherit; font-size:.9375rem; padding:12px 14px; border-radius:12px; border:1px solid var(--rule-2);
    background:var(--white); color:var(--brand-7);
  }
  .on-deep .p-form input, .on-tint .p-form input,
  .on-deep .p-form textarea, .on-tint .p-form textarea{ background:rgba(255,255,255,.94) }
  .p-form textarea{ resize:vertical; min-height:110px }
  .p-form button{ margin-top:6px }

  .tag-row{ display:flex; flex-wrap:wrap; gap:8px }
  .tag-row span{
    display:inline-flex; padding:6px 14px; border-radius:100px; font-size:.8125rem; font-weight:700;
  }
  .on-deep .tag-row span, .on-tint .tag-row span{ background:rgba(255,255,255,.1); color:var(--on-deep) }
  .on-light .tag-row span, .on-white .tag-row span{ background:var(--action-tertiary); color:var(--brand-6) }

  @media (max-width:620px){
    .p-hero{ padding-block:120px 40px }
    .sec{ padding-block:48px }
    .stat-grid{ gap:20px }
  }

  
  .legal{ max-width:74ch }
  .legal h2{ font-weight:700; font-size:1.1875rem; letter-spacing:-.01em; margin-top:44px; margin-bottom:12px }
  .legal h2:first-child{ margin-top:0 }
  .legal h3{ font-weight:700; font-size:1rem; margin-top:26px; margin-bottom:8px }
  .legal p{ font-size:.9375rem; line-height:1.65; margin-bottom:14px }
  .on-light .legal p, .on-white .legal p{ color:var(--ink-2) }
  .legal ul{ list-style:disc; padding-left:22px; margin-bottom:14px }
  .legal li{ font-size:.9375rem; line-height:1.6; margin-bottom:6px }
  .on-light .legal li, .on-white .legal li{ color:var(--ink-2) }
  .legal .legal-meta{ font-size:.8125rem; margin-bottom:36px }
  .on-light .legal .legal-meta, .on-white .legal .legal-meta{ color:var(--ink-3) }

  

  
  .bento{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:minmax(140px,auto); gap:clamp(12px,1.6vw,18px) }
  .bento-lg{ grid-column:span 2; grid-row:span 2 }
  .bento-md{ grid-column:span 2 }
  .bento-sm{ grid-column:span 2 }
  @media (min-width:900px){ .bento-sm{ grid-column:span 1 } }
  .bento > div{ border-radius:20px; padding:clamp(18px,2vw,26px); display:flex; flex-direction:column; justify-content:flex-end; gap:8px }
  .on-deep .bento > div, .on-tint .bento > div{ background:rgba(255,255,255,.06); border:1px solid var(--rule-deep) }
  .on-light .bento > div, .on-white .bento > div{ background:var(--white); border:1px solid var(--rule) }
  .bento h3{ font-weight:700; font-size:1.0625rem; letter-spacing:-.01em; line-height:1.3 }
  .bento-lg h3{ font-size:clamp(1.25rem,2vw,1.625rem) }
  .bento p{ font-size:.875rem; line-height:1.5 }
  .on-deep .bento p, .on-tint .bento p{ color:var(--on-deep-3) }
  .on-light .bento p, .on-white .bento p{ color:var(--ink-3) }
  @media (max-width:620px){ .bento{ grid-template-columns:repeat(2,minmax(0,1fr)) } .bento-lg{ grid-column:span 2; grid-row:span 1 } }

  
  .icon-band{ display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:clamp(16px,2vw,24px) }
  .icon-band > div{ display:flex; flex-direction:column; align-items:flex-start; gap:10px }
  .icon-band img{ width:clamp(52px,6vw,72px); height:auto }
  .icon-band strong{ display:block; font-weight:700; font-size:.9375rem }
  .icon-band span{ display:block; font-size:.8125rem; line-height:1.45; margin-top:2px }
  .on-deep .icon-band span, .on-tint .icon-band span{ color:var(--on-deep-3) }
  .on-light .icon-band span, .on-white .icon-band span{ color:var(--ink-3) }

  
  .timeline{ position:relative; max-width:56ch; padding-left:38px }
  .timeline::before{ content:''; position:absolute; left:13px; top:6px; bottom:6px; width:1px; background:var(--rule) }
  .on-deep .timeline::before, .on-tint .timeline::before{ background:var(--rule-deep) }
  .timeline-item{ position:relative; padding-bottom:28px }
  .timeline-item:last-child{ padding-bottom:0 }
  .timeline-item::before{
    content:''; position:absolute; left:-38px; top:2px; width:26px; height:26px; border-radius:50%;
    background:var(--action-primary); box-shadow:0 0 0 4px var(--brand-7);
  }
  .on-light .timeline-item::before, .on-white .timeline-item::before{ box-shadow:0 0 0 4px var(--grey-50) }
  .on-white .timeline-item::before{ box-shadow:0 0 0 4px var(--white) }
  .timeline-item h3{ font-weight:700; font-size:1rem; margin-bottom:4px }

  
  .pull-quote{ max-width:34ch; margin-inline:auto; text-align:center }
  .pull-quote p{ font-weight:700; font-size:clamp(1.375rem,2.6vw,1.875rem); line-height:1.3; letter-spacing:-.02em; text-wrap:balance }
  .pull-quote cite{ display:block; margin-top:16px; font-style:normal; font-size:.8125rem; font-weight:700 }
  .on-deep .pull-quote cite, .on-tint .pull-quote cite{ color:var(--on-deep-3) }
  .on-light .pull-quote cite, .on-white .pull-quote cite{ color:var(--ink-3) }

  
  .phone-mock{
    width:min(260px,74vw); aspect-ratio:9/18.3; border-radius:38px; padding:10px;
    background:linear-gradient(160deg,var(--brand-4),var(--brand-7)); box-shadow:0 30px 60px rgba(8,2,20,.4);
    position:relative; margin-inline:auto;
  }
  .phone-mock::before{
    content:''; position:absolute; top:22px; left:50%; transform:translateX(-50%);
    width:64px; height:6px; border-radius:4px; background:rgba(255,255,255,.35);
  }
  .phone-mock-screen{
    width:100%; height:100%; border-radius:28px; background:var(--brand-6);
    display:flex; flex-direction:column; justify-content:flex-end; gap:10px; padding:22px 14px 26px; overflow:hidden;
  }
  .phone-card{
    background:var(--white); border-radius:16px; padding:14px; display:flex; flex-direction:column; gap:6px;
    box-shadow:0 10px 24px rgba(8,2,20,.28);
  }
  .phone-card b{ color:var(--brand-7); font-size:.8125rem; font-weight:700 }
  .phone-card span{ color:rgba(49,0,111,.6); font-size:.75rem }
  .phone-card.lime{ background:var(--action-primary) }
  .phone-card.lime b{ color:var(--brand-7) }

  
  .shot img{ display:block; margin-inline:auto; width:auto; max-width:100%; height:auto;
    filter:drop-shadow(0 30px 40px rgba(8,2,20,.5)) drop-shadow(0 8px 14px rgba(8,2,20,.35)) }
  .shot-hero img{ max-height:min(70vh,620px) }
  
  .on-light .shot img, .on-white .shot img, .on-tint .shot img{
    filter:drop-shadow(0 26px 34px rgba(49,0,111,.20)) drop-shadow(0 6px 12px rgba(49,0,111,.13)) }
  
  .split > .shot img{ max-height:min(62vh,540px) }

  .shots{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(24px,4vw,64px); max-width:900px; margin-inline:auto }
  @media (max-width:760px){ .shots{ grid-template-columns:1fr; gap:44px } }
  .shots .shot img{ max-height:520px }
  .shots figcaption{ margin-top:26px; text-align:center; max-width:38ch; margin-inline:auto }
  .shots figcaption strong{ display:block; font-weight:700; font-size:1.0625rem; margin-bottom:8px }
  .shots figcaption span{ font-size:.9375rem; line-height:1.6; color:var(--on-deep-2) }

  
  .coin-game{ position:fixed; inset:0; z-index:40; pointer-events:none; overflow:hidden }
  .coin{
    position:absolute; top:-112px; width:100px; height:100px; pointer-events:auto; cursor:pointer;
    -webkit-tap-highlight-color:transparent; touch-action:manipulation;
    display:flex; align-items:center; justify-content:center; border:0; background:none; padding:0;
    animation-name:coinFall; animation-timing-function:linear; animation-fill-mode:forwards;
    filter:drop-shadow(0 6px 14px rgba(20,3,44,.35));
    will-change:transform;
  }
  .coin img{ width:76px; height:auto; display:block; animation:coinSpin linear infinite; pointer-events:none }
  @keyframes coinFall{ to{ transform:translateY(calc(100svh + 96px)) } }
  @keyframes coinSpin{ 0%,100%{ transform:rotate(-8deg); animation-timing-function:ease-in-out } 50%{ transform:rotate(8deg); animation-timing-function:ease-in-out } }
  .coin[data-caught="true"]{ animation:none; transition:transform .32s cubic-bezier(.2,1.4,.4,1), opacity .32s ease }
  .coin[data-caught="true"] img{ animation:none }
  .coin[data-caught="true"]{ transform:scale(1.7); opacity:0 }
  @media (max-width:640px){ .coin{ width:84px; height:84px } .coin img{ width:64px; height:auto } }

  .coin-hud{
    position:fixed; z-index:41; right:16px; bottom:16px; pointer-events:none;
    display:flex; align-items:center; gap:8px; padding:9px 14px 9px 9px; border-radius:100px;
    background:var(--brand-7); color:var(--white); box-shadow:0 12px 30px rgba(20,3,44,.28);
    font-weight:700; font-size:.875rem; opacity:0; transform:translateY(8px);
    transition:opacity .3s ease, transform .3s ease;
    position:fixed; overflow:hidden;
  }
  
  .coin-hud-track{ position:absolute; left:0; right:0; bottom:0; height:3px; background:rgba(255,255,255,.18) }
  .coin-hud-bar{ position:absolute; left:0; bottom:0; height:3px; width:0%; background:var(--action-primary); transition:width .4s ease }
  .coin-hud[data-show="true"]{ opacity:1; transform:translateY(0) }
  .coin-hud img{ width:30px; height:auto; display:block }
  .coin-hud .num{ font-variant-numeric:tabular-nums }
  
  .coin-hint{
    position:fixed; z-index:42; right:16px; bottom:74px; max-width:min(260px,calc(100vw - 32px));
    padding:11px 15px; border-radius:16px; background:var(--action-primary); color:var(--brand-7);
    font-weight:700; font-size:.875rem; line-height:1.4; box-shadow:0 12px 30px rgba(20,3,44,.28);
    opacity:0; visibility:hidden; transform:translateY(8px) scale(.96); transform-origin:100% 100%;
    transition:opacity .3s ease, transform .35s cubic-bezier(.2,1.2,.4,1), visibility .35s;
    cursor:pointer;
  }
  .coin-hint::after{
    content:""; position:absolute; right:26px; bottom:-7px; width:14px; height:14px;
    background:inherit; transform:rotate(45deg); border-radius:0 0 3px 0;
  }
  .coin-hint[data-show="true"]{ opacity:1; visibility:visible; transform:none }
  body.rew-open .coin-hint{ opacity:0; visibility:hidden }
  @media (prefers-reduced-motion: reduce){
    .coin-game{ display:none }
    .coin-hud{ display:none }
    .coin-hint{ display:none }
    .rew{ display:none }
  }

  
  .rew{
    position:fixed; right:16px; bottom:16px; z-index:90;
    width:min(344px,calc(100vw - 32px));
    display:flex; flex-direction:column; align-items:flex-end;
    pointer-events:none; opacity:0; visibility:hidden;
    transform:translateY(calc(100% + 28px));
    transition:transform .5s cubic-bezier(.2,1.05,.3,1), opacity .3s ease, visibility .5s;
  }
  .rew > *{ pointer-events:auto }
  .rew[data-open="true"]{ opacity:1; visibility:visible; transform:none }
  
  .coin-hud{ transition:opacity .3s ease, transform .3s ease }
  body.rew-open .coin-hud{ opacity:0; transform:translateY(12px) }
  
  .qr-rail{ transition:opacity .3s ease }
  body.rew-open .qr-rail{ opacity:0; pointer-events:none }

  
  .rew-card{
    position:relative; width:100%;
    background:var(--brand-7); color:var(--on-deep);
    border:1px solid rgba(255,255,255,.14); border-radius:24px;
    padding:26px 20px 20px; box-shadow:0 24px 56px rgba(12,0,30,.5);
    opacity:0; transform:translateY(10px);
    transition:opacity .34s ease, transform .34s cubic-bezier(.2,.9,.3,1);
  }
  .rew[data-stage="3"] .rew-card{ opacity:1; transform:none }
  .rew-close{
    position:absolute; top:10px; right:10px; width:40px; height:40px; border-radius:50%;
    display:flex; align-items:center; justify-content:center; color:var(--on-deep);
    background:rgba(255,255,255,.1); transition:background .15s ease;
  }
  .rew-close:hover{ background:rgba(255,255,255,.2) }
  .rew-close svg{ width:13px; height:13px; display:block }
  .rew-say{ font-weight:700; font-size:1.0625rem; line-height:1.35; margin:0 34px 14px 0 }
  
  .rew-tip{
    background:var(--action-primary); color:var(--brand-7);
    border-radius:18px; padding:15px 16px 13px; margin-bottom:13px;
  }
  .rew-tip-t{ font-size:.9375rem; font-weight:700; line-height:1.42 }
  .rew-more{
    display:inline-block; margin-top:9px; font-size:.8125rem; font-weight:700;
    color:rgba(49,0,111,.78); border-bottom:1.5px solid rgba(49,0,111,.3); padding-bottom:1px;
  }
  .rew-more:hover{ color:var(--brand-7); border-color:var(--brand-7) }
  .rew .btn{ width:100% }
  .rew-foot{ font-size:.8125rem; color:var(--on-deep-3); margin-top:10px; line-height:1.45; text-align:center }

  @media (max-width:560px){
    .rew{ left:12px; right:12px; bottom:12px; width:auto; padding-bottom:env(safe-area-inset-bottom,0px) }
    .rew-card{ padding:24px 17px 18px }
  }
  @media (prefers-reduced-motion: reduce){
    .rew, .rew-card{ transition:none }
    .rew[data-stage="3"] .rew-card{ transform:none }
  }


  
  @media (max-width:640px){
    
    .foot-col a, .foot-col span{ padding-block:11px }
    .menu-col a{ padding-block:12px }
    
    .foot-social a, .menu-social a{ width:44px; min-width:44px; height:44px }
    
    .tag-row a, nav.jump a{ display:inline-block; padding-block:11px }
    .calc-chips button{ min-height:44px }
    .foot-spec a{ padding-block:12px }
    
    .rew-close{ width:40px; height:40px; top:10px; right:10px }
    .rew-more{ padding-block:10px; margin-top:6px }
    .menu-home{ min-height:44px }
    .arrow-link{ padding-block:11px }
    .foot-legal a, .foot-spec a{ display:inline-block; padding-block:10px }
    
    .btn-sm{ height:44px }
    .burger{ width:44px; height:44px }
  }

  
  .qr-rail{
    --qr-peek:58px;
    position:fixed; z-index:40; right:0; top:50%;
    display:flex; align-items:center; gap:14px;
    padding:14px 18px 14px 14px; border-radius:22px 0 0 22px;
    background:var(--white); color:var(--brand-7);
    border:1px solid rgba(49,0,111,.09); border-right:0;
    box-shadow:-16px 20px 48px rgba(12,3,28,.44);
    transform:translate(100%,-50%); opacity:0; visibility:hidden;
    transition:transform .52s cubic-bezier(.2,.75,.25,1), opacity .32s ease, visibility .32s;
  }
  .qr-rail.is-live{
    transform:translate(calc(100% - var(--qr-peek)),-50%);
    opacity:1; visibility:visible;
  }
  .qr-rail.is-live:hover, .qr-rail.is-live:focus-visible{ transform:translate(0,-50%) }
  
  .qr-rail.is-docking{
    transition:transform .92s cubic-bezier(.16,1.03,.29,1), opacity .18s ease;
    border-radius:22px; border-right:1px solid rgba(49,0,111,.09);
    box-shadow:0 22px 52px rgba(12,3,28,.4);
  }
  .qr-rail.is-handoff{ opacity:0 }
  .qr-rail.is-parked{ opacity:0; visibility:hidden; transition:none; pointer-events:none }
  
  .qr-rail.is-measure{ transition:none !important; transform:none !important }
  .qr-rail:focus-visible{ outline:2px solid var(--brand-4); outline-offset:-4px }
  
  .qr-rail img{ width:112px; height:112px; display:block; image-rendering:pixelated; flex-shrink:0 }
  .qr-rail-t{
    font-size:.8125rem; font-weight:700; line-height:1.3; letter-spacing:-.012em;
    width:auto; white-space:nowrap; overflow:hidden;
    transition:max-width .46s ease, opacity .26s ease;
  }
  .qr-rail.is-docking .qr-rail-t{ max-width:0; opacity:0 }
  .qr-rail-t small{ display:block; margin-top:4px; font-size:.8125rem; font-weight:600; color:var(--ink-3) }
  
  .qr-badge{
    position:absolute; z-index:2; top:-14px; left:-12px;
    display:flex; align-items:center; gap:5px;
    padding:5px 12px 5px 4px; border-radius:100px;
    background:var(--action-primary); color:var(--brand-7);
    font-size:.75rem; font-weight:700; white-space:nowrap;
    box-shadow:0 10px 22px rgba(12,3,28,.34);
    animation:qrBadgeBob 2.6s ease-in-out infinite;
  }
  .qr-badge img{ width:28px; height:auto; display:block }
  @keyframes qrBadgeBob{
    0%,100%{ transform:translateY(0) rotate(-6deg) }
    50%{ transform:translateY(-5px) rotate(5deg) }
  }
  
  .qr-rail.is-docking .qr-badge{ opacity:0; transition:opacity .18s ease }
  @media (max-width:1100px){ .qr-badge{ top:-11px; left:-9px; padding:4px 10px 4px 3px } .qr-badge img{ width:24px } }
  @media (prefers-reduced-motion: reduce){ .qr-badge{ animation:none } }
  
  @media (max-width:1100px){
    .qr-rail{ --qr-peek:44px; padding:12px 15px 12px 12px }
    .qr-rail img{ width:96px; height:96px }
  }
  @media (max-width:900px){ .qr-rail{ display:none } }

  
  .dl-rail{ display:none }
  @media (max-width:900px){
    .dl-rail{
      position:fixed; z-index:45; left:0; right:0; bottom:0;
      display:flex; gap:9px; align-items:stretch;
      padding:10px 14px calc(10px + env(safe-area-inset-bottom, 0px));
      background:rgba(28,10,52,.86);
      -webkit-backdrop-filter:blur(16px) saturate(140%);
      backdrop-filter:blur(16px) saturate(140%);
      border-top:1px solid rgba(255,255,255,.16);
      
      transform:translateY(102%);
      transition:transform .44s cubic-bezier(.2,.75,.25,1);
    }
    .dl-rail.is-live{ transform:none }
    
    
    .dl-rail .store-badge{
      flex:1; height:48px; padding:0 12px;
      justify-content:center; gap:9px;
    }
    .dl-rail .store-badge .sb-txt small{ font-size:.5rem }
    .dl-rail .store-badge .sb-txt b{ font-size:.9375rem }
    .dl-rail .store-badge:hover{ transform:none }
  }
  @media (max-width:900px) and (prefers-reduced-motion: reduce){
    .dl-rail{ transition:none }
  }
  @media (prefers-reduced-motion: reduce){ .qr-rail{ transition:opacity .32s ease, visibility .32s } }

  .store-badge{
    display:inline-flex; align-items:center; gap:clamp(9px,1vw,12px);
    height:clamp(48px,4.7vw,58px); padding:0 clamp(15px,1.5vw,20px);
    background:#000; border:1px solid #A6A6A6; border-radius:9px;
    transition:transform .18s ease, opacity .18s ease;
  }
  .store-badge .sb-ico{ display:block; width:auto; flex-shrink:0; fill:#fff }
  
  .store-badge .sb-apple{ height:56% }
  .store-badge .sb-play{ height:50% }
  
  .store-badge .sb-txt{ display:flex; flex-direction:column; justify-content:center; line-height:1 }
  .store-badge .sb-txt small{
    font-size:clamp(.5rem,.62vw,.5625rem); font-weight:500; letter-spacing:.03em;
    color:#fff; opacity:.92;
  }
  .store-badge .sb-txt b{
    margin-top:.3em; font-size:clamp(.9375rem,1.15vw,1.1875rem); font-weight:600;
    letter-spacing:-.022em; color:#fff;
  }
  .store-badge:hover{ transform:translateY(-2px) }
  .store-badge:focus-visible{ outline:2px solid var(--action-primary); outline-offset:3px }
  @media (prefers-reduced-motion: reduce){ .store-badge{ transition:none } }

  
  .qr-rail.is-open{
    transform:translate(0,-50%) !important;
    opacity:1 !important; visibility:visible !important;
    animation:qrRing .9s ease-out 1;
  }
  
  @keyframes qrRing{
    0%{ box-shadow:-18px 22px 60px rgba(12,3,28,.52), 0 0 0 0 rgba(198,255,74,.85) }
    100%{ box-shadow:-18px 22px 60px rgba(12,3,28,.52), 0 0 0 22px rgba(198,255,74,0) }
  }
  @media (prefers-reduced-motion: reduce){ .qr-rail.is-open{ animation:none } }
  
  .qr-rail .qr-hint{
    display:block; margin-top:7px; font-size:.6875rem; font-weight:600;
    color:var(--brand-4); opacity:0; max-height:0; overflow:hidden;
    transition:opacity .2s ease .12s, max-height .3s ease;
  }
  .qr-rail.is-open .qr-hint{ opacity:1; max-height:3em }
  
  .qr-rail.is-open .qr-rail-t{ width:auto }
  .qr-rail-t .qr-hint{ white-space:normal; max-width:17ch }
