
:root{
  --ink:#15181f; --soft:#46505e; --bg:#eef1f6; --card:#ffffff;
  --slate:#1d2430; --slate-d:#141a23; --slate-l:#2b3543;
  --crimson:#d63a4b; --crimson-d:#b22a3a; --gold:#e8b04b;
  --line:#d7deea; --shadow:0 8px 24px rgba(20,26,35,.10);
  --maxw:1140px;
}
*{box-sizing:border-box}
html,body{width:100%;overflow-x:hidden;margin:0;padding:0}
body{font-family:"Manrope",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink);background:var(--bg);line-height:1.64;font-size:17px}
img{max-width:100%;height:auto;display:block}
a{color:var(--crimson-d);text-decoration:none}
a:hover{text-decoration:underline}
.shell{max-width:var(--maxw);margin:0 auto;padding:0 26px;width:100%}
.skip-link{position:absolute;left:-999px;top:0;background:var(--gold);color:#1a1206;padding:8px 14px;z-index:80}
.skip-link:focus{left:8px;top:8px}

/* masthead */
.masthead{background:var(--slate-d);position:sticky;top:0;z-index:60;box-shadow:var(--shadow)}
.mast-row{display:flex;align-items:center;gap:18px;min-height:64px}
.wordmark{color:#fff;font-weight:800;font-size:1.18rem;letter-spacing:.2px;white-space:nowrap}
.wordmark:hover{text-decoration:none;color:var(--gold)}
.topnav{margin-left:auto;display:flex;align-items:center;gap:4px;flex-wrap:nowrap}
.topnav a{color:#cdd6e4;padding:8px 10px;border-radius:8px;font-size:.93rem;white-space:nowrap}
.topnav a:hover{background:rgba(255,255,255,.10);text-decoration:none;color:#fff}
.nav-cta{background:var(--crimson);color:#fff !important;font-weight:700}
.nav-cta:hover{background:var(--crimson-d)}
.navbtn{display:none;margin-left:auto;background:transparent;border:0;cursor:pointer;
  width:44px;height:44px;flex-direction:column;justify-content:center;gap:5px;padding:9px}
.navbtn span{display:block;height:3px;background:#fff;border-radius:2px}

/* promo rail */
.promo-rail{background:var(--slate);padding:14px 0}
.promo-track{position:relative;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.promo{display:none;position:relative}
.promo.on{display:block}
.promo img{width:100%;height:auto;object-fit:contain;object-position:center;background:#0b1118;display:block}
.promo-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;
  align-items:flex-start;gap:9px;padding:22px 28px;
  background:linear-gradient(90deg,rgba(11,17,24,.88) 0%,rgba(11,17,24,.58) 46%,rgba(11,17,24,0) 78%)}
.promo-head{color:#fff;font-size:1.34rem;font-weight:800;max-width:60%;text-shadow:0 2px 6px rgba(0,0,0,.45)}
.promo-sub{color:#e8eef7;font-size:1rem;max-width:54%}
.promo-btn{display:inline-block;background:var(--crimson);color:#fff;font-weight:700;
  padding:9px 18px;border-radius:9px}
.promo:hover{text-decoration:none}
.promo:hover .promo-btn{background:var(--crimson-d)}
.pdots{display:flex;gap:9px;justify-content:center;margin-top:11px}
.pdot{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.4);cursor:pointer}
.pdot.on{background:#fff}

/* crumbs */
.crumbs{background:#e2e8f2;border-bottom:1px solid var(--line);font-size:.9rem}
.crumbs .shell{padding-top:10px;padding-bottom:10px}
.crumbs a{color:var(--crimson-d)}
.crumb-sep{margin:0 8px;color:#8a96a8}
.crumbs span[aria-current]{color:var(--soft)}

/* main */
.page-main{padding-top:28px;padding-bottom:48px}
h1{font-size:2.05rem;line-height:1.2;margin:.15em 0 .5em;color:var(--ink)}
h2{font-size:1.46rem;margin:1.5em 0 .5em;color:var(--slate)}
h3{font-size:1.16rem;margin:1.1em 0 .4em}
p{margin:.72em 0}
.lede{font-size:1.13rem;color:var(--soft);background:var(--card);border-left:4px solid var(--crimson);
  padding:15px 19px;border-radius:10px;box-shadow:var(--shadow)}
main ul,main ol{margin:.7em 0 1em;padding-left:1.3em}
main li{margin:.34em 0}

.hero{margin:0 0 18px}
.hero-pic{width:100%;height:auto;border-radius:14px;box-shadow:var(--shadow)}

/* tables */
.xscroll{overflow-x:auto;margin:1.1em 0;border-radius:12px;box-shadow:var(--shadow);
  -webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;min-width:440px;background:var(--card)}
th,td{padding:11px 15px;text-align:left;border-bottom:1px solid var(--line);font-size:.97rem}
thead th{background:var(--slate);color:#fff;font-weight:700}
tbody tr:nth-child(even){background:#f1f5fb}

/* cta */
.cta{background:linear-gradient(135deg,var(--slate),var(--slate-l));color:#fff;border-radius:16px;
  padding:22px 26px;margin:24px 0;box-shadow:var(--shadow)}
.cta-line{margin:0 0 14px;font-size:1.08rem;color:#eef2f8}
.cta-btn{display:inline-block;background:var(--crimson);color:#fff;font-weight:800;
  padding:13px 28px;border-radius:10px}
.cta-btn:hover{background:var(--crimson-d);text-decoration:none}
.cta-fine{margin:12px 0 0;font-size:.82rem;color:#b9c4d4}

/* faq */
.faq{margin:28px 0}
.faq>h2{margin-bottom:.5em}
.qa{background:var(--card);border:1px solid var(--line);border-radius:11px;margin:10px 0;
  box-shadow:var(--shadow);overflow:hidden}
.qa summary{cursor:pointer;padding:15px 18px;font-weight:700;color:var(--slate);list-style:none}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";float:right;color:var(--crimson-d);font-weight:800}
.qa[open] summary::after{content:"–"}
.qa-body{padding:0 18px 15px}
.qa-body p{margin:.3em 0}

/* notfound */
.nf{padding:44px 0;text-align:center}

/* back to top */
.totop{position:fixed;right:20px;bottom:20px;width:48px;height:48px;border-radius:50%;
  background:var(--slate);color:#fff;border:0;font-size:1.3rem;cursor:pointer;box-shadow:var(--shadow);z-index:50}
.totop[hidden]{display:none}

/* footer */
.foot{background:#0f141c;color:#c4cdda;margin-top:32px;padding:32px 0 22px}
.foot-brand{font-size:1.18rem;font-weight:800;color:#fff;margin-bottom:16px}
.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:24px}
.foot-col h3{color:#fff;font-size:1rem;margin:0 0 9px}
.foot-col ul{list-style:none;padding:0;margin:0}
.foot-col li{margin:.34em 0}
.foot-col a{color:#b6c2d2}
.foot-note{font-size:.9rem;color:#9fb0c2;margin:.2em 0}
.foot-disc{font-size:.84rem;color:#8295a8;margin:22px 0 6px;border-top:1px solid #1e2733;padding-top:15px}
.foot-copy{font-size:.84rem;color:#74879a;margin:.3em 0 0}

@media (max-width:880px){
  body{font-size:16px}
  .shell{padding:0 22px}
  h1{font-size:1.6rem}
  h2{font-size:1.27rem}
  .navbtn{display:flex}
  .topnav{display:none;position:absolute;left:0;right:0;top:64px;flex-direction:column;
    align-items:stretch;gap:0;background:var(--slate-d);padding:8px 16px 16px;box-shadow:var(--shadow)}
  .topnav.open{display:flex}
  .topnav a{padding:13px 8px;border-radius:7px}
  .nav-cta{margin-top:8px;text-align:center}
  .promo img{min-height:130px}
  .promo-head{font-size:1.05rem;max-width:80%}
  .promo-sub{display:none}
  .promo-copy{padding:14px 16px}
  .promo-btn{padding:8px 14px;font-size:.9rem}
}
@media (max-width:480px){
  .promo-head{max-width:88%;font-size:.98rem}
}
