@font-face{font-family:"Head Ubuntu";src:url("fonts/Ubuntu-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Body Jakarta";src:url("fonts/Jakarta-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Body Jakarta";src:url("fonts/Jakarta-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}

*,*::before,*::after{box-sizing:border-box}

:root{
  --bs-ink:#eef0f3;
  --bs-ink-soft:#9aa3af;
  --bs-bg:#0d0f14;
  --bs-bg-soft:#14171f;
  --bs-bg-soft-2:#191c25;
  --bs-line:rgba(255,255,255,.09);
  --bs-red-700:#b81328;
  --bs-red-600:#e0263a;
  --bs-red-500:#f2445a;
  --bs-red-tint:rgba(224,38,58,.14);
  --bs-glass:rgba(13,15,20,.72);
  --bs-r-sm:2px;
  --bs-r-md:6px;
  --bs-r-lg:14px;
  --bs-shell:min(70rem, 94vw);
  --bs-shadow:0 20px 50px -24px rgba(0,0,0,.6);
  --sp-1:.5rem;
  --sp-2:.9rem;
  --sp-3:1.5rem;
  --sp-4:2.75rem;
  --sp-5:4.5rem;
}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--bs-bg);
  color:var(--bs-ink);
  font-family:"Body Jakarta","Segoe UI",Arial,sans-serif;
  font-size:16px;
  line-height:1.66;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

h1,h2,h3{
  font-family:"Head Ubuntu","Segoe UI",Arial,sans-serif;
  font-weight:700;
  line-height:1.2;
  color:#fff;
  margin:0 0 var(--sp-2);
}
h1{font-size:clamp(2rem, 1.4rem + 2.6vw, 3.2rem)}
h2{font-size:clamp(1.35rem, 1.15rem + 1vw, 1.9rem)}
h3{font-size:clamp(1.05rem, .98rem + .4vw, 1.3rem)}

p{margin:0 0 var(--sp-3);color:var(--bs-ink)}
p:last-child{margin-bottom:0}
a{color:inherit}
img{max-width:100%;height:auto;display:block}

ul.bs-list,ol.bs-list{padding-left:1.2em;margin:0 0 var(--sp-3)}
.bs-list li{margin-bottom:.5em}
.bs-list li:last-child{margin-bottom:0}

.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-999px;top:0;background:var(--bs-red-600);color:#fff;padding:.8em 1.2em;z-index:999;border-radius:0 0 var(--bs-r-sm) 0}
.skip-link:focus{left:0}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--bs-red-500);outline-offset:2px}

.bs-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5em;
  padding:.85em 1.7em;
  border-radius:var(--bs-r-sm);
  font-family:"Head Ubuntu",sans-serif;
  font-weight:700;
  font-size:.92rem;
  text-decoration:none;
  border:1.5px solid transparent;
  cursor:pointer;
  transition:transform .15s ease, background-color .15s ease, border-color .15s ease;
}
.bs-btn--solid{background:var(--bs-red-600);color:#fff}
.bs-btn--solid:hover{background:var(--bs-red-700);transform:translateY(-1px)}
.bs-btn--outline{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.bs-btn--outline:hover{border-color:#fff}

/* header */
.bs-header{position:sticky;top:0;z-index:60;background:var(--bs-glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--bs-line)}
.bs-header__row{max-width:var(--bs-shell);margin-inline:auto;display:flex;align-items:center;gap:var(--sp-4);padding:14px 0}
.bs-brand{display:inline-flex;flex-shrink:0}
.bs-brand img{display:block}
.bs-nav ul{display:flex;list-style:none;margin:0;padding:0;gap:var(--sp-3)}
.bs-nav a{text-decoration:none;color:var(--bs-ink-soft);font-weight:500;font-size:.93rem;padding:.3em .1em;border-bottom:2px solid transparent}
.bs-nav a:hover{color:#fff;border-color:var(--bs-red-600)}
.bs-actions{margin-left:auto;display:flex;align-items:center;gap:.85rem;flex-shrink:0}
.bs-toggle{display:none;width:2.3rem;height:2.3rem;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;border:0;flex-shrink:0}
.bs-toggle span{width:21px;height:2px;background:#fff;border-radius:1px;transition:transform .2s ease, opacity .2s ease}
.bs-toggle.is-active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.bs-toggle.is-active span:nth-child(2){opacity:0}
.bs-toggle.is-active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.bs-mobile-nav{background:var(--bs-bg-soft);border-top:1px solid var(--bs-line);padding:var(--sp-3)}
.bs-mobile-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.bs-mobile-nav a{text-decoration:none;color:var(--bs-ink);font-weight:500;font-size:1rem}

/* hero */
.bs-hero{position:relative;padding-block:var(--sp-5) 0;overflow:hidden}
.bs-hero__bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0}
.bs-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg, rgba(9,10,13,.96) 30%, rgba(9,10,13,.72) 60%, rgba(9,10,13,.4) 100%)}
.bs-hero__inner{position:relative;z-index:1;max-width:var(--bs-shell);margin-inline:auto;padding-bottom:var(--sp-5)}
.bs-hero__lead{font-size:1.05rem;color:#cfd3da;margin-bottom:var(--sp-3);max-width:36rem}
.bs-hero__wave{display:block;width:100%;height:auto;position:relative;z-index:1;margin-top:-1px}

/* floating toc */
.bs-jump{position:fixed;right:22px;bottom:22px;z-index:70}
.bs-jump__btn{width:3.1rem;height:3.1rem;border-radius:50%;background:var(--bs-red-600);color:#fff;border:0;box-shadow:var(--bs-shadow);cursor:pointer;display:flex;align-items:center;justify-content:center}
.bs-jump__btn svg{width:20px;height:20px}
.bs-jump__panel{position:absolute;right:0;bottom:3.9rem;width:15.5rem;max-height:70vh;overflow-y:auto;background:var(--bs-bg-soft-2);border:1px solid var(--bs-line);border-radius:var(--bs-r-md);box-shadow:var(--bs-shadow);padding:.9rem}
.bs-jump__panel[hidden]{display:none}
.bs-jump__panel p{font-family:"Head Ubuntu";font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--bs-ink-soft);margin:0 0 .6rem}
.bs-jump__panel ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.bs-jump__panel a{text-decoration:none;color:var(--bs-ink);font-size:.87rem}
.bs-jump__panel a:hover{color:var(--bs-red-500)}

/* article */
.bs-main{max-width:58rem;margin-inline:auto;padding:0 24px}
.bs-section{padding-block:var(--sp-4);border-top:1px solid var(--bs-line)}
.bs-section:first-of-type{border-top:0;padding-top:0}

.bs-figure{margin:var(--sp-3) 0;border-radius:var(--bs-r-lg);overflow:hidden;box-shadow:var(--bs-shadow)}

.bs-table-wrap{margin:var(--sp-3) 0;border:1px solid var(--bs-line);border-radius:var(--bs-r-md);overflow:hidden}
table.bs-table{border-collapse:collapse;width:100%;font-size:.92rem}
.bs-table thead th{background:var(--bs-bg-soft-2);color:#fff;text-align:left;font-family:"Head Ubuntu";font-weight:700;font-size:.76rem;letter-spacing:.03em;text-transform:uppercase;padding:.8em 1em}
.bs-table tbody td{padding:.75em 1em;border-top:1px solid var(--bs-line)}
.bs-table tbody tr:nth-child(even){background:rgba(255,255,255,.02)}

.bs-steps{list-style:none;padding:0;margin:var(--sp-3) 0;display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.bs-steps li{background:var(--bs-bg-soft);border:1px solid var(--bs-line);border-radius:var(--bs-r-md);padding:1rem 1.1rem;counter-increment:bsstep}
.bs-steps__num{display:block;font-family:"Head Ubuntu";font-weight:700;color:var(--bs-red-500);font-size:.85rem;margin-bottom:.4em}

.bs-faq{border-top:1px solid var(--bs-line)}
.bs-faq details{border-bottom:1px solid var(--bs-line);padding:1.1em 0}
.bs-faq summary{cursor:pointer;list-style:none;font-family:"Head Ubuntu";font-weight:700;font-size:1.02rem;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.bs-faq summary::-webkit-details-marker{display:none}
.bs-faq summary::after{content:"+";font-size:1.4rem;color:var(--bs-red-500);flex-shrink:0;line-height:1}
.bs-faq details[open] summary::after{content:"–"}
.bs-faq .bs-faq__a{margin-top:.8em;color:var(--bs-ink-soft)}

.bs-callout{background:var(--bs-bg-soft);border-left:3px solid var(--bs-red-600);border-radius:0 var(--bs-r-sm) var(--bs-r-sm) 0;padding:var(--sp-3);margin:var(--sp-3) 0}

/* footer */
.bs-footer{background:var(--bs-bg-soft);border-top:1px solid var(--bs-line);margin-top:var(--sp-5)}
.bs-footer__inner{max-width:var(--bs-shell);margin-inline:auto;padding:var(--sp-4) 24px}
.bs-footer__top{display:grid;gap:var(--sp-3);padding-bottom:var(--sp-3);border-bottom:1px solid var(--bs-line)}
.bs-footer__top p{color:var(--bs-ink-soft);font-size:.9rem;max-width:30rem;margin:.5rem 0 0}
.bs-footer__row{display:grid;grid-template-columns:repeat(4, auto);gap:var(--sp-3) var(--sp-4);padding-top:var(--sp-3)}
.bs-footer__row a{text-decoration:none;color:var(--bs-ink);font-size:.9rem}
.bs-footer__row a:hover{color:var(--bs-red-500)}
.bs-footer__bottom{padding-top:var(--sp-3);font-size:.8rem;color:var(--bs-ink-soft)}

@media (max-width:900px){
  .bs-nav{display:none}
  .bs-toggle{display:inline-flex}
}
@media (max-width:700px){
  .bs-table thead{display:none}
  .bs-table,.bs-table tbody,.bs-table tr,.bs-table td{display:block;width:100%}
  .bs-table tr{border-top:1px solid var(--bs-line)}
  .bs-table tr:first-child{border-top:0}
  .bs-table tbody tr:nth-child(even){background:transparent}
  .bs-table td{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-2);padding:.55em 1em;border-top:1px solid var(--bs-line)}
  .bs-table td:first-child{border-top:0;padding-top:.9em}
  .bs-table td:last-child{padding-bottom:.9em}
  .bs-table td::before{content:attr(data-label);font-family:"Body Jakarta";font-weight:500;color:var(--bs-ink-soft);flex-shrink:0}
  .bs-footer__row{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .bs-steps{grid-template-columns:1fr}
}
@media (max-width:520px){
  .bs-actions .bs-btn--outline{display:none}
}
@media (max-width:380px){
  .bs-header__row{gap:.7rem}
  .bs-brand img{width:100px;height:auto}
  .bs-actions{gap:.5rem}
  .bs-header .bs-btn{padding:.55em .9em;font-size:.8rem}
  .bs-toggle{width:2rem;height:2rem}
  .bs-jump{right:14px;bottom:14px}
  .bs-jump__panel{width:calc(100vw - 28px)}
}
@media (prefers-reduced-motion:reduce){
  .bs-btn,.bs-toggle span{transition:none}
}
