/* ============================================================
   澳门威斯人游 · 共享样式 /assets/site.css
   基础层：reset · 变量 · 排版 · 页头 · 页脚 · 通用组件
   ============================================================ */

:root{
  --ink:#070B0F;
  --ink-2:#101821;
  --cyan:#2FF3D0;
  --cyan-soft:#7FE7DA;
  --amber:#FFB733;
  --amber-soft:#FFD98A;
  --paper:#E8EDF2;
  --muted:#9AA7B4;
  --doc-bg:#F5F7FA;
  --doc-ink:#1B2430;
  --green:#3BE07A;
  --orange:#FF7A45;

  --line:rgba(47,243,208,.16);
  --line-soft:rgba(154,167,180,.22);
  --cyan-08:rgba(47,243,208,.08);
  --cyan-24:rgba(47,243,208,.24);
  --amber-24:rgba(255,183,51,.26);

  --u:8px;
  --maxw:1264px;
  --header-h:72px;
  --radius:14px;
  --radius-sm:8px;

  --font-display:"PingFang SC","Noto Sans SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;
  --font-body:ui-monospace,"SFMono-Regular","JetBrains Mono","Cascadia Mono","Noto Sans Mono CJK SC","PingFang SC",monospace;
  --font-narrow:"PingFang SC","Noto Sans SC",system-ui,-apple-system,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--header-h) + 24px);
}
body{
  margin:0;
  background:var(--ink);
  color:var(--paper);
  font-family:var(--font-body);
  font-size:15px;
  line-height:1.75;
  letter-spacing:.01em;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:
    repeating-linear-gradient(to right, var(--cyan-08) 0 1px, transparent 1px 96px),
    repeating-linear-gradient(to bottom, var(--cyan-08) 0 1px, transparent 1px 96px);
  opacity:.6;
}
img,svg,video{max-width:100%;display:block}
a{color:var(--cyan);text-decoration:none;transition:color .2s ease,border-color .2s ease}
a:hover{color:var(--cyan-soft)}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0 0 .5em}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0}
button{font:inherit;color:inherit}
time{font-variant-numeric:tabular-nums}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:4px}

/* ---------- 通用容器 ---------- */
.container{width:min(100% - 32px,var(--maxw));margin-inline:auto}
.container--narrow{max-width:840px}
.page-main{position:relative;z-index:1;display:block;padding-top:calc(var(--header-h) + var(--u)*4)}

/* ---------- 章节体系 ---------- */
.section{position:relative;padding:calc(var(--u)*7) 0}
.section-head{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:start;
  gap:calc(var(--u)*3);
  border-top:1px solid var(--line-soft);
  padding-top:calc(var(--u)*2);
  margin-bottom:calc(var(--u)*4);
}
.section-num{
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(26px,4.6vw,42px);
  line-height:.9;
  letter-spacing:-.04em;
  color:rgba(47,243,208,.26);
  transform:translateY(-4px);
}
.section-title{font-size:clamp(20px,2.6vw,30px);margin:0;color:var(--paper)}
.section-note{margin:6px 0 0;color:var(--muted);font-size:12.5px;letter-spacing:.04em}
.section-actions{margin-top:calc(var(--u)*2)}

/* ---------- 网格 ---------- */
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:calc(var(--u)*3)}
.col-3{grid-column:span 3}
.col-4{grid-column:span 4}
.col-6{grid-column:span 6}
.col-8{grid-column:span 8}
.col-12{grid-column:span 12}

/* ---------- 纸张叠层卡片 ---------- */
.panel{
  position:relative;
  background:var(--ink-2);
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  padding:calc(var(--u)*3);
  box-shadow:0 3px 0 rgba(0,0,0,.5);
  transition:border-color .2s ease,box-shadow .2s ease;
}
.panel:hover{border-color:var(--cyan);box-shadow:0 5px 0 rgba(0,0,0,.55)}
.panel--amber:hover{border-color:var(--amber)}
.panel__tag{
  position:absolute;
  top:0;
  left:0;
  padding:5px 12px;
  background:var(--cyan);
  color:var(--ink);
  font-family:var(--font-narrow);
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  border-radius:var(--radius) 0 10px 0;
}
.panel__tag--amber{background:var(--amber)}
.panel__title{font-size:17px;margin:calc(var(--u)*2) 0 calc(var(--u)*1)}
.panel__text{color:var(--muted);font-size:13.5px;margin:0}

/* ---------- 数字与状态 ---------- */
.stat{display:flex;flex-direction:column;gap:6px}
.stat__value{
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(28px,4vw,46px);
  line-height:1;
  letter-spacing:-.03em;
  color:var(--amber);
  text-shadow:0 0 14px rgba(255,183,51,.35);
}
.stat__label{font-size:11px;letter-spacing:.16em;color:var(--muted)}
.num-glow{
  display:inline-block;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(40px,9vw,96px);
  line-height:1;
  letter-spacing:-.03em;
  color:var(--amber);
  text-shadow:0 0 12px rgba(255,183,51,.45),0 0 2px var(--amber-soft);
  animation:pulse 2.4s ease-in-out infinite;
}
.num-glow--cyan{color:var(--cyan);text-shadow:0 0 12px rgba(47,243,208,.45),0 0 2px var(--cyan-soft)}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.72}}

.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 3px rgba(154,167,180,.12)}
.status-dot--cyan{background:var(--cyan);box-shadow:0 0 8px rgba(47,243,208,.7)}
.status-dot--green{background:var(--green);box-shadow:0 0 8px rgba(59,224,122,.7)}
.status-dot--orange{background:var(--orange);box-shadow:0 0 8px rgba(255,122,69,.7)}

.tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid var(--line-soft);
  color:var(--muted);
  font-family:var(--font-narrow);
  font-size:11px;
  letter-spacing:.1em;
  line-height:1.6;
}
.tag--cyan{color:var(--cyan);border-color:var(--cyan-24);background:rgba(47,243,208,.06)}
.tag--amber{color:var(--amber);border-color:var(--amber-24);background:rgba(255,183,51,.07)}
.tag--green{color:var(--green);border-color:rgba(59,224,122,.28);background:rgba(59,224,122,.06)}
.tag--orange{color:var(--orange);border-color:rgba(255,122,69,.3);background:rgba(255,122,69,.06)}

/* ---------- 文本工具 ---------- */
.lede{font-size:clamp(16px,1.6vw,19px);line-height:1.8;color:rgba(232,237,242,.86);max-width:62ch}
.meta{font-size:12px;color:var(--muted);letter-spacing:.08em}
.mono{font-family:var(--font-body);font-variant-numeric:tabular-nums}

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 20px;
  border-radius:999px;
  border:1px solid transparent;
  background:transparent;
  color:var(--paper);
  font-family:var(--font-narrow);
  font-weight:700;
  font-size:14px;
  letter-spacing:.02em;
  cursor:pointer;
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.btn--primary{background:var(--cyan);color:var(--ink);box-shadow:0 0 0 1px rgba(47,243,208,.5),0 6px 18px rgba(47,243,208,.18)}
.btn--primary:hover{background:var(--cyan-soft);color:var(--ink)}
.btn--ghost{border-color:var(--line-soft);color:var(--paper)}
.btn--ghost:hover{border-color:var(--cyan);color:var(--cyan)}
.btn--amber{border-color:var(--amber-24);color:var(--amber)}
.btn--amber:hover{background:var(--amber);color:var(--ink);border-color:var(--amber)}
.btn--sm{padding:8px 14px;font-size:12.5px}

.filter-bar{display:flex;flex-wrap:wrap;gap:8px}
.filter-btn{
  display:inline-flex;
  align-items:center;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid var(--line-soft);
  background:rgba(16,24,33,.6);
  color:var(--muted);
  font-family:var(--font-narrow);
  font-size:12.5px;
  font-weight:600;
  letter-spacing:.04em;
  cursor:pointer;
  transition:border-color .2s ease,color .2s ease,background .2s ease;
}
.filter-btn:hover{border-color:var(--cyan);color:var(--paper)}
.filter-btn[aria-pressed="true"]{background:var(--amber);border-color:var(--amber);color:var(--ink)}

.copy-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid var(--line-soft);
  background:rgba(7,11,15,.5);
  color:var(--paper);
  font-family:var(--font-narrow);
  font-size:12.5px;
  font-weight:600;
  cursor:pointer;
  transition:border-color .2s ease,color .2s ease,background .2s ease;
}
.copy-btn:hover{border-color:var(--cyan);color:var(--cyan)}
.copy-btn[data-copied="true"]{border-color:var(--amber);color:var(--amber);background:rgba(255,183,51,.08)}

/* ---------- 面包屑 ---------- */
.breadcrumb{font-size:12px;color:var(--muted);letter-spacing:.06em;margin-bottom:calc(var(--u)*3)}
.breadcrumb__list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.breadcrumb__item{display:flex;align-items:center;gap:8px}
.breadcrumb__sep{color:rgba(154,167,180,.45)}
.breadcrumb__link{color:var(--muted)}
.breadcrumb__link:hover{color:var(--cyan)}

/* ---------- 左侧固定索引 / 时间轴 ---------- */
.side-rail{position:sticky;top:calc(var(--header-h) + 24px);display:flex;flex-direction:column;gap:2px}
.side-rail__link{
  display:flex;
  gap:10px;
  align-items:baseline;
  padding:8px 12px;
  border-left:1px solid var(--line-soft);
  color:var(--muted);
  font-size:12.5px;
  letter-spacing:.06em;
  transition:color .2s ease,border-color .2s ease,background .2s ease;
}
.side-rail__link:hover{color:var(--paper);border-left-color:var(--cyan)}
.side-rail__link[aria-current="true"]{
  color:var(--amber);
  border-left-color:var(--amber);
  background:linear-gradient(90deg,rgba(255,183,51,.08),transparent);
}

.rail{position:relative;padding-left:20px;list-style:none;margin:0}
.rail::before{content:"";position:absolute;left:4px;top:6px;bottom:6px;width:1px;background:var(--line-soft)}
.rail__item{position:relative;padding:0 0 calc(var(--u)*3) 8px}
.rail__dot{
  position:absolute;
  left:-20px;
  top:8px;
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--ink);
  border:1.5px solid var(--cyan);
  box-shadow:0 0 8px rgba(47,243,208,.5);
}
.rail__item[aria-current="true"] .rail__dot{background:var(--amber);border-color:var(--amber-soft);box-shadow:0 0 10px rgba(255,183,51,.6)}

/* ---------- 图片容器 ---------- */
.media-frame{
  position:relative;
  overflow:hidden;
  aspect-ratio:16/9;
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  background:linear-gradient(160deg,var(--ink-2),#0a1119);
}
.media-frame--portrait{aspect-ratio:3/4}
.media-frame--wide{aspect-ratio:21/9}
.media-frame__img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.05)}
.media-frame__slot{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  text-align:center;
  color:rgba(154,167,180,.7);
  font-size:12px;
  letter-spacing:.14em;
  border:1px dashed rgba(154,167,208,.25);
  background:radial-gradient(circle at 50% 40%,rgba(47,243,208,.08),transparent 66%);
}
.media-frame__caption{
  position:absolute;
  left:12px;
  bottom:12px;
  padding:5px 10px;
  border-radius:6px;
  background:rgba(7,11,15,.78);
  border:1px solid var(--line);
  color:var(--muted);
  font-size:11px;
  letter-spacing:.06em;
}
.media-frame::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:repeating-linear-gradient(to bottom,rgba(232,237,242,.045) 0 1px,transparent 1px 4px);
}
.scan-overlay{
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:180px;
  pointer-events:none;
  background:linear-gradient(to bottom,rgba(47,243,208,0),rgba(47,243,208,.07),rgba(47,243,208,0));
  animation:scan 8s linear infinite;
}
@keyframes scan{from{transform:translateY(-200px)}to{transform:translateY(78vh)}}

/* ---------- 显现动画 / 工具类 ---------- */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.reveal.is-in{opacity:1;transform:none}
.is-hidden{display:none !important}
[data-reminder-row].is-armed{border-color:var(--amber);box-shadow:0 5px 0 rgba(0,0,0,.55)}

/* ---------- 返回顶部 ---------- */
.to-top{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:70;
  width:44px;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid var(--cyan-24);
  background:rgba(16,24,33,.88);
  color:var(--cyan);
  font-size:16px;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transition:opacity .24s ease,visibility .24s ease,border-color .2s ease;
}
.to-top[data-visible="true"]{opacity:1;visibility:visible}
.to-top:hover{border-color:var(--cyan)}

/* ---------- 阅读模式容器 ---------- */
.theme-doc{background:var(--doc-bg);color:var(--doc-ink);font-family:var(--font-narrow);line-height:1.9}
.theme-doc h1,.theme-doc h2,.theme-doc h3{color:var(--doc-ink)}
.theme-doc a{color:#0b6b5c}
.theme-doc .doc-rule{border-color:rgba(27,36,48,.14)}

/* ============================================================
   页头
   ============================================================ */
.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:80;
  padding:calc(var(--u)*1.5) 0;
  background:linear-gradient(to bottom,rgba(7,11,15,.94),rgba(7,11,15,.72) 72%,rgba(7,11,15,0));
  transition:padding .28s ease,background .28s ease;
}
.site-header[data-scrolled="true"]{padding:calc(var(--u)*.75) 0;background:rgba(7,11,15,.93)}
.header-grid{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:calc(var(--u)*2);
  width:min(100% - 32px,var(--maxw));
  margin-inline:auto;
}
.header-progress{
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:2px;
  transform:scaleX(0);
  transform-origin:left center;
  background:linear-gradient(90deg,var(--cyan),var(--amber));
  opacity:.9;
}

.skip-link{
  position:fixed;
  top:8px;
  left:8px;
  z-index:200;
  padding:10px 16px;
  border-radius:var(--radius-sm);
  background:var(--cyan);
  color:var(--ink);
  font-family:var(--font-narrow);
  font-weight:700;
  transform:translateY(-220%);
  transition:transform .2s ease;
}
.skip-link:focus{transform:translateY(0);color:var(--ink)}

.brand{display:inline-flex;align-items:center;gap:12px;color:var(--paper)}
.brand:hover{color:var(--paper)}
.brand__mark{
  flex:none;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--cyan);
  box-shadow:0 0 10px var(--cyan),0 0 22px rgba(47,243,208,.35);
  animation:pulse 2.4s ease-in-out infinite;
}
.brand__text{
  display:flex;
  flex-direction:column;
  font-family:var(--font-display);
  font-weight:800;
  font-size:18px;
  line-height:1.05;
  letter-spacing:-.01em;
}
.brand__sub{
  margin-top:5px;
  font-family:var(--font-body);
  font-style:normal;
  font-weight:400;
  font-size:9px;
  letter-spacing:.24em;
  color:var(--muted);
}

.nav-capsule{
  justify-self:center;
  padding:5px;
  border:1px solid var(--cyan-24);
  border-radius:999px;
  background:rgba(16,24,33,.74);
  backdrop-filter:blur(8px);
  transition:padding .28s ease,border-color .28s ease;
}
.nav-capsule__list{display:flex;align-items:center;gap:2px;list-style:none}
.nav-capsule__link{
  display:inline-flex;
  align-items:center;
  padding:9px 16px;
  border-radius:999px;
  color:var(--paper);
  font-family:var(--font-narrow);
  font-weight:600;
  font-size:14px;
  letter-spacing:.04em;
  white-space:nowrap;
  transition:background .2s ease,color .2s ease;
}
.nav-capsule__link:hover{background:rgba(47,243,208,.08);color:var(--cyan)}
.nav-capsule__link[aria-current="page"]{
  background:var(--cyan);
  color:var(--ink);
  font-weight:700;
  box-shadow:0 0 0 1px rgba(47,243,208,.45),0 0 18px rgba(47,243,208,.22);
}
.site-header[data-scrolled="true"] .nav-capsule{padding:3px}
.site-header[data-scrolled="true"] .nav-capsule__link{padding:7px 13px;font-size:13px}
.site-header[data-scrolled="true"] .brand__sub{display:none}
.site-header[data-scrolled="true"] .status-chip--stamp{display:none}
.site-header[data-scrolled="true"] .status-chip__label{display:none}

.header-status{display:flex;align-items:center;justify-self:end;gap:8px}
.status-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border:1px solid var(--line-soft);
  border-radius:999px;
  background:rgba(16,24,33,.62);
  color:var(--muted);
  font-size:11px;
  letter-spacing:.06em;
  white-space:nowrap;
}
.status-chip__dot{
  flex:none;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 8px var(--green);
  animation:pulse 2.4s ease-in-out infinite;
}
.status-chip__label{font-size:10px;letter-spacing:.18em;color:rgba(154,167,180,.75)}
.status-chip__value{color:var(--paper);font-family:var(--font-narrow);font-weight:600}
.status-chip--stamp .status-chip__value{color:var(--amber-soft)}

.nav-toggle{
  display:none;
  align-items:center;
  gap:8px;
  padding:9px 14px;
  border-radius:999px;
  border:1px solid var(--cyan-24);
  background:rgba(16,24,33,.78);
  color:var(--paper);
  font-family:var(--font-narrow);
  font-weight:600;
  font-size:13px;
  cursor:pointer;
}
.nav-toggle__bars{display:inline-flex;flex-direction:column;gap:4px;width:16px}
.nav-toggle__bars span{display:block;height:1.5px;background:var(--cyan);transition:transform .22s ease}
.site-header[data-open="true"] .nav-toggle__bars span:first-child{transform:translateY(2.75px) rotate(45deg)}
.site-header[data-open="true"] .nav-toggle__bars span:last-child{transform:translateY(-2.75px) rotate(-45deg)}

/* ============================================================
   页脚
   ============================================================ */
.site-footer{
  position:relative;
  z-index:1;
  margin-top:calc(var(--u)*10);
  border-top:1px solid var(--line-soft);
  background:linear-gradient(to bottom,rgba(16,24,33,.6),var(--ink) 58%);
}
.footer-inner{
  width:min(100% - 32px,var(--maxw));
  margin-inline:auto;
  padding:calc(var(--u)*5) 0 calc(var(--u)*4);
}
.footer-layer{padding:calc(var(--u)*3) 0;border-bottom:1px solid rgba(154,167,180,.12)}
.footer-layer:last-child{border-bottom:0;padding-bottom:0}
.footer-layer--quick{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  padding-top:0;
}
.quick-card{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:16px 18px;
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  background:rgba(7,11,15,.5);
  box-shadow:0 3px 0 rgba(0,0,0,.45);
  transition:border-color .2s ease,box-shadow .2s ease;
}
.quick-card:hover{border-color:var(--cyan);box-shadow:0 5px 0 rgba(0,0,0,.5)}
.quick-card__label{font-size:10px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase}
.quick-card__value{font-family:var(--font-display);font-weight:800;font-size:18px;color:var(--paper);line-height:1.3}
.quick-card__note{font-size:12px;color:var(--muted)}

.footer-layer--main{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr;
  gap:calc(var(--u)*3);
  align-items:start;
}
.footer-brand{display:flex;flex-direction:column;gap:8px}
.footer-brand__mark{width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan)}
.footer-brand__name{font-family:var(--font-display);font-weight:800;font-size:20px;color:var(--paper)}
.footer-brand__line{margin:0;max-width:32ch;color:var(--muted);font-size:12.5px}

.footer-nav__title{margin:0 0 10px;font-size:10px;letter-spacing:.2em;color:rgba(154,167,180,.7)}
.footer-nav__list{display:flex;flex-direction:column;gap:8px;list-style:none}
.footer-nav__link{color:var(--paper);font-size:13.5px}
.footer-nav__link:hover{color:var(--cyan);text-shadow:0 0 10px rgba(47,243,208,.35)}

.footer-layer--legal{
  display:flex;
  flex-wrap:wrap;
  gap:10px 24px;
  align-items:center;
  justify-content:space-between;
}
.footer-legal__list{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;color:var(--muted);font-size:11.5px;letter-spacing:.04em}
.footer-legal__item{color:var(--muted)}
.footer-legal__link{color:var(--muted)}
.footer-legal__link:hover{color:var(--cyan)}
.footer-note{margin:0;color:rgba(154,167,180,.65);font-size:11px;letter-spacing:.06em}

/* ============================================================
   响应式
   ============================================================ */
@media (max-width:1024px){
  .col-3{grid-column:span 6}
  .col-4{grid-column:span 6}
  .col-8{grid-column:span 12}
  .footer-layer--main{grid-template-columns:1fr 1fr;gap:24px}
}
@media (max-width:960px){
  :root{--header-h:64px}
  .header-grid{grid-template-columns:1fr auto;gap:12px}
  .brand__text{font-size:16px}
  .brand__sub{display:none}
  .header-status{display:none}
  .nav-toggle{display:inline-flex}
  .nav-capsule{
    position:absolute;
    left:0;
    right:0;
    top:calc(100% + 10px);
    justify-self:stretch;
    padding:8px;
    border-radius:var(--radius);
    background:rgba(16,24,33,.97);
    opacity:0;
    visibility:hidden;
    transform:translateY(-8px);
    transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
  }
  .site-header[data-open="true"] .nav-capsule{opacity:1;visibility:visible;transform:none}
  .nav-capsule__list{flex-direction:column;align-items:stretch;gap:2px}
  .nav-capsule__link{justify-content:space-between;padding:12px 14px;font-size:14px;border-radius:var(--radius-sm)}
  .site-header[data-scrolled="true"] .nav-capsule__link{padding:12px 14px;font-size:14px}
  .site-header[data-scrolled="true"] .nav-capsule{padding:8px}
}
@media (max-width:760px){
  .section{padding:calc(var(--u)*5) 0}
  .section-head{grid-template-columns:auto 1fr;gap:12px}
  .footer-layer--quick{grid-template-columns:1fr}
  .footer-layer--main{grid-template-columns:1fr}
  .footer-layer--legal{flex-direction:column;align-items:flex-start;gap:12px}
}
@media (max-width:640px){
  body{font-size:14.5px;line-height:1.78}
  .container,.header-grid,.footer-inner{width:min(100% - 24px,var(--maxw))}
  .grid{grid-template-columns:1fr;gap:16px}
  .col-3,.col-4,.col-6,.col-8,.col-12{grid-column:1/-1}
  .panel{padding:20px}
  .num-glow{font-size:clamp(36px,14vw,64px)}
  .to-top{right:14px;bottom:14px}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .reveal{opacity:1;transform:none}
  .scan-overlay{display:none}
}
