/* ── Shared policy/status page styles ─────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:#040404;color:#fff;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;
  line-height:1.65;
}
body::before{
  content:'';position:fixed;inset:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity:.025;pointer-events:none;z-index:9999;
}

:root{
  --bg:#040404;--bg2:#0A0A0A;
  --blue:#4DA2FF;--blue-d:#2D88E8;
  --t1:#fff;--t2:rgba(255,255,255,.62);--t3:rgba(255,255,255,.32);
  --br:rgba(255,255,255,.08);--br2:rgba(255,255,255,.16);
  --nav:74px;
  --ease:cubic-bezier(0.16,1,0.3,1);
}
[data-theme="light"]{
  --bg:#ffffff;--bg2:#f6f7fa;
  --blue:#1e6fd9;--blue-d:#1856aa;
  --t1:#0a0a0a;--t2:rgba(10,10,12,.62);--t3:rgba(10,10,12,.38);
  --br:rgba(0,0,0,.08);--br2:rgba(0,0,0,.16);
}

/* Theme toggle button shared across standalone pages */
.theme-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;flex-shrink:0;
  background:transparent;
  border:1px solid var(--br);border-radius:100px;
  color:var(--t2);font-size:.95rem;cursor:pointer;
  margin-right:.5rem;
  transition:color .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease);
}
.theme-toggle:hover{color:var(--t1);border-color:var(--br2);background:rgba(127,127,127,.06)}
.theme-toggle .theme-sun{display:none}
[data-theme="light"] .theme-toggle .theme-sun{display:inline}
[data-theme="light"] .theme-toggle .theme-moon{display:none}

/* ── LIGHT THEME — component overrides for standalone pages ── */
[data-theme="light"] body{background:var(--bg);color:var(--t1)}
[data-theme="light"] body::before{opacity:.04;mix-blend-mode:multiply}
/* Dark nav (matches homepage) */
[data-theme="light"] .nav{background:rgba(6,10,28,.92);border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:blur(28px) saturate(180%)}
[data-theme="light"] .nav-logo img{filter:brightness(0) invert(1)}
[data-theme="light"] .nav-logo-r{color:#fff}
[data-theme="light"] .nav-logo-b{color:rgba(255,255,255,.7)}
[data-theme="light"] .nav-back{color:rgba(255,255,255,.62);border-color:rgba(255,255,255,.16)}
[data-theme="light"] .nav-back:hover{color:#fff;border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.08)}
[data-theme="light"] .theme-toggle{color:rgba(255,255,255,.62);border-color:rgba(255,255,255,.16)}
[data-theme="light"] .theme-toggle:hover{color:#fff;border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.08)}

[data-theme="light"] .page-hero{
  background:radial-gradient(ellipse 80% 60% at 50% 0%, rgba(77,162,255,.22) 0%, rgba(77,162,255,.06) 35%, transparent 70%),#ffffff;
}
[data-theme="light"] .page-lbl{color:#1e6fd9}
[data-theme="light"] .page-h{color:#0a0a0a}
[data-theme="light"] .page-sub{color:rgba(0,0,0,.62)}
[data-theme="light"] .page-updated{color:rgba(0,0,0,.4)}

[data-theme="light"] .page-body h2{color:#0a0a0a;border-top-color:var(--br)}
[data-theme="light"] .page-body h3{color:#0a0a0a}
[data-theme="light"] .page-body p{color:rgba(0,0,0,.7)}
[data-theme="light"] .page-body strong{color:#0a0a0a}
[data-theme="light"] .page-body ul li{color:rgba(0,0,0,.7)}
[data-theme="light"] .page-body .note{background:rgba(77,162,255,.06);border-color:rgba(77,162,255,.25);color:rgba(0,0,0,.75)}
[data-theme="light"] .page-body .note strong{color:#0a0a0a}

[data-theme="light"] .page-toc-l{color:rgba(0,0,0,.45)}
[data-theme="light"] .page-toc a{color:rgba(0,0,0,.6)}
[data-theme="light"] .page-toc a:hover{color:#0a0a0a;border-left-color:var(--br2)}
[data-theme="light"] .page-toc a.active{color:#0a0a0a;border-left-color:#1e6fd9}

/* Status page */
[data-theme="light"] .status-summary{background:rgba(74,222,128,.06);border-color:rgba(74,222,128,.32)}
[data-theme="light"] .status-summary-h{color:#0a0a0a}
[data-theme="light"] .status-summary-p{color:rgba(0,0,0,.6)}
[data-theme="light"] .status-summary-updated{color:rgba(0,0,0,.4)}
[data-theme="light"] .status-row{background:#ffffff;border-color:rgba(0,0,0,.1)}
[data-theme="light"] .status-row-name{color:#0a0a0a}
[data-theme="light"] .status-row-desc{color:rgba(0,0,0,.45)}
[data-theme="light"] .status-metric{background:#fafafa;border-color:rgba(0,0,0,.08)}
[data-theme="light"] .status-metric-l{color:rgba(0,0,0,.45)}
[data-theme="light"] .status-metric-v{color:#0a0a0a}
[data-theme="light"] .status-metric-s{color:rgba(0,0,0,.6)}

/* Office cards (contact page) */
[data-theme="light"] .office-card{background:#ffffff;border-color:rgba(0,0,0,.08)}
[data-theme="light"] .office-card-head{border-bottom-color:rgba(0,0,0,.08)}
[data-theme="light"] .office-flag{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.1)}
[data-theme="light"] .office-name{color:#0a0a0a}
[data-theme="light"] .office-tag{color:#1e6fd9}
[data-theme="light"] .office-item-v{color:rgba(0,0,0,.78)}
[data-theme="light"] .office-item-v a{color:rgba(0,0,0,.78);border-bottom-color:rgba(0,0,0,.15)}
[data-theme="light"] .office-item-v a:hover{color:#1e6fd9;border-bottom-color:#1e6fd9}
[data-theme="light"] .office-item-l{color:rgba(0,0,0,.4)}

/* Contact form on standalone contact page */
[data-theme="light"] .contact-form-sec{background:var(--bg);border-top-color:var(--br)}
[data-theme="light"] .contact-form-h{color:#0a0a0a}
[data-theme="light"] .contact-form-sub{color:rgba(0,0,0,.62)}
[data-theme="light"] .cf{background:#ffffff;border-color:rgba(0,0,0,.1)}
[data-theme="light"] .cf-label{color:rgba(0,0,0,.5)}
[data-theme="light"] .cf-input,
[data-theme="light"] .cf-textarea,
[data-theme="light"] .cf-select{background:#fafafa;border-color:rgba(0,0,0,.12);color:#0a0a0a}
[data-theme="light"] .cf-input:focus,
[data-theme="light"] .cf-textarea:focus,
[data-theme="light"] .cf-select:focus{background:rgba(77,162,255,.04);border-color:#1e6fd9}
[data-theme="light"] .cf-input::placeholder,
[data-theme="light"] .cf-textarea::placeholder{color:rgba(0,0,0,.35)}
[data-theme="light"] .cf-select option{background:#fff;color:#0a0a0a}
[data-theme="light"] .cf-fineprint{color:rgba(0,0,0,.4)}
[data-theme="light"] .cf-fineprint a{color:rgba(0,0,0,.65)}
[data-theme="light"] .cf-success-h{color:#0a0a0a}
[data-theme="light"] .cf-success-p{color:rgba(0,0,0,.6)}

/* Docs page */
[data-theme="light"] .docs-search{background:#ffffff;border-color:rgba(0,0,0,.1)}
[data-theme="light"] .docs-search:focus-within{border-color:#1e6fd9}
[data-theme="light"] .docs-search i{color:rgba(0,0,0,.35)}
[data-theme="light"] .docs-search input{color:#0a0a0a}
[data-theme="light"] .docs-search input::placeholder{color:rgba(0,0,0,.35)}
[data-theme="light"] .docs-search-kbd{color:rgba(0,0,0,.4);border-color:rgba(0,0,0,.12)}
[data-theme="light"] .docs-card{background:#ffffff;border-color:rgba(0,0,0,.1)}
[data-theme="light"] .docs-card:hover{background:rgba(77,162,255,.04);border-color:rgba(77,162,255,.4)}
[data-theme="light"] .docs-card-h{color:#0a0a0a}
[data-theme="light"] .docs-card-p{color:rgba(0,0,0,.6)}
[data-theme="light"] .docs-card-meta{border-top-color:rgba(0,0,0,.08);color:rgba(0,0,0,.45)}
[data-theme="light"] .docs-cta{background:linear-gradient(135deg, rgba(77,162,255,.08) 0%, rgba(0,0,0,.02) 100%);border-color:rgba(77,162,255,.3)}
[data-theme="light"] .docs-cta-h{color:#0a0a0a}
[data-theme="light"] .docs-cta-p{color:rgba(0,0,0,.6)}

/* Page footer */
[data-theme="light"] .page-footer{background:#f6f7fa;border-top-color:var(--br)}
[data-theme="light"] .page-footer-row{color:rgba(0,0,0,.5)}
[data-theme="light"] .page-footer-links a{color:rgba(0,0,0,.6)}
[data-theme="light"] .page-footer-links a:hover{color:#0a0a0a}

.wrap{width:100%;margin:0 auto;padding:0 1.5rem;max-width:1240px}

/* ── Nav ────────────────────────────────────── */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  height:var(--nav);display:flex;align-items:center;
  background:rgba(4,4,4,.88);backdrop-filter:blur(28px) saturate(180%);
  border-bottom:1px solid var(--br);
}
.nav-row{display:flex;align-items:center;justify-content:space-between;width:100%}
.nav-logo{
  display:flex;align-items:center;gap:.6rem;
  text-decoration:none;color:#fff;font-size:1.15rem;
  letter-spacing:-.02em;line-height:1;
}
.nav-logo img{height:30px;filter:brightness(0) invert(1)}
.nav-logo-text{display:inline-flex;align-items:baseline;gap:.28em;white-space:nowrap}
.nav-logo-r{font-weight:800;color:#fff}
.nav-logo-b{font-weight:400;color:rgba(255,255,255,.72)}
.nav-back{
  display:inline-flex;align-items:center;gap:.5rem;
  color:var(--t2);text-decoration:none;
  font-size:.92rem;font-weight:500;
  padding:.5rem .85rem;border-radius:100px;
  border:1px solid var(--br);
  transition:color .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease);
}
.nav-back:hover{color:#fff;border-color:var(--br2);background:rgba(255,255,255,.04)}

/* ── Page hero ──────────────────────────────── */
.page-hero{
  padding:calc(var(--nav) + 5rem) 0 4rem;
  position:relative;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(18,55,180,.32) 0%, rgba(18,55,180,.06) 35%, transparent 70%),
    var(--bg);
}
.page-hero .wrap{max-width:880px}
.page-lbl{
  display:inline-flex;align-items:center;gap:.45rem;
  font-size:.62rem;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;
  color:rgba(77,162,255,.85);
  margin-bottom:1.25rem;
}
.page-lbl::before{
  content:'';width:6px;height:6px;border-radius:50%;
  background:var(--blue);
  box-shadow:0 0 8px rgba(77,162,255,.7);
}
.page-h{
  font-size:clamp(2.5rem,6vw,4rem);
  font-weight:800;letter-spacing:-.04em;line-height:.98;
  color:#fff;margin-bottom:1rem;
}
.page-sub{
  font-size:1.05rem;color:var(--t2);
  line-height:1.65;max-width:640px;
}
.page-updated{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:.75rem;color:var(--t3);
  margin-top:2rem;font-weight:500;letter-spacing:-.005em;
}
.page-updated i{color:var(--blue)}

/* ── Page body ──────────────────────────────── */
.page-body{padding:5rem 0 7rem}
.page-body .wrap{max-width:880px}
.page-body h2{
  font-size:1.5rem;font-weight:800;letter-spacing:-.025em;line-height:1.2;
  color:#fff;margin:3rem 0 1rem;
  padding-top:2rem;
  border-top:1px solid var(--br);
}
.page-body h2:first-child{padding-top:0;border-top:none;margin-top:0}
.page-body h3{
  font-size:1.05rem;font-weight:700;letter-spacing:-.015em;
  color:#fff;margin:2rem 0 .75rem;
}
.page-body p{
  font-size:.95rem;color:var(--t2);
  line-height:1.75;margin-bottom:1rem;
}
.page-body strong{color:#fff;font-weight:600}
.page-body a{color:var(--blue);text-decoration:none;border-bottom:1px solid rgba(77,162,255,.3);transition:border-color .2s var(--ease)}
.page-body a:hover{border-color:var(--blue)}
.page-body ul{
  list-style:none;padding:0;margin:.5rem 0 1.25rem;
  display:flex;flex-direction:column;gap:.55rem;
}
.page-body ul li{
  font-size:.95rem;color:var(--t2);line-height:1.65;
  padding-left:1.4rem;position:relative;
}
.page-body ul li::before{
  content:'';position:absolute;left:0;top:.65em;
  width:6px;height:6px;
  background:var(--blue);
  box-shadow:0 0 6px rgba(77,162,255,.5);
}
.page-body .note{
  background:rgba(77,162,255,.04);
  border:1px solid rgba(77,162,255,.18);
  border-left:3px solid var(--blue);
  padding:1.1rem 1.25rem;
  margin:1.5rem 0;
  font-size:.88rem;
  color:rgba(255,255,255,.78);
}
.page-body .note strong{color:#fff}

/* ── TOC sidebar (privacy/terms) ────────────── */
.page-toc-wrap{
  display:grid;
  grid-template-columns:200px 1fr;
  gap:4rem;
  max-width:1100px;
  margin:0 auto;
  align-items:flex-start;
}
.page-toc{
  position:sticky;top:calc(var(--nav) + 2rem);
  font-size:.82rem;
}
.page-toc-l{
  font-size:.6rem;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--t3);margin-bottom:1rem;
}
.page-toc ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:.5rem}
.page-toc a{
  color:var(--t2);text-decoration:none;
  display:block;padding:.3rem 0 .3rem 0;
  border-left:2px solid transparent;padding-left:.85rem;margin-left:-.85rem;
  transition:color .2s var(--ease),border-color .2s var(--ease);
}
.page-toc a:hover{color:#fff;border-left-color:var(--br2)}
.page-toc a.active{color:#fff;border-left-color:var(--blue)}

/* ── Status page specifics ──────────────────── */
.status-summary{
  display:flex;align-items:center;gap:1rem;
  padding:1.5rem 1.75rem;
  background:rgba(74,222,128,.05);
  border:1px solid rgba(74,222,128,.25);
  margin-top:2rem;
}
.status-summary-dot{
  width:14px;height:14px;border-radius:50%;
  background:#4ADE80;
  box-shadow:0 0 14px rgba(74,222,128,.85);
  flex-shrink:0;
  animation:statusPulse 1.6s ease-in-out infinite;
}
@keyframes statusPulse{0%,100%{opacity:1}50%{opacity:.5}}
.status-summary-text{flex:1}
.status-summary-h{font-size:1.1rem;font-weight:700;color:#fff;letter-spacing:-.015em}
.status-summary-p{font-size:.82rem;color:var(--t2);margin-top:.2rem}
.status-summary-updated{font-size:.7rem;color:var(--t3);font-variant-numeric:tabular-nums}

.status-grid{display:flex;flex-direction:column;gap:.5rem;margin-top:2rem}
.status-row{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:1rem;
  padding:1.1rem 1.5rem;
  background:rgba(3,3,11,.5);
  border:1px solid var(--br);
  transition:border-color .2s var(--ease);
}
.status-row:hover{border-color:var(--br2)}
.status-row-name{font-size:.95rem;font-weight:600;color:#fff;letter-spacing:-.005em}
.status-row-desc{font-size:.72rem;color:var(--t3);margin-top:.2rem;font-weight:500}
.status-row-pill{
  display:inline-flex;align-items:center;gap:.45rem;
  font-size:.7rem;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  padding:.4rem .75rem;
  color:#4ADE80;
  background:rgba(74,222,128,.08);
  border:1px solid rgba(74,222,128,.3);
}
.status-row-pill::before{
  content:'';width:7px;height:7px;border-radius:50%;
  background:#4ADE80;
  box-shadow:0 0 8px rgba(74,222,128,.7);
}
.status-row-pill.deg{color:#FFC864;background:rgba(255,200,100,.08);border-color:rgba(255,200,100,.3)}
.status-row-pill.deg::before{background:#FFC864;box-shadow:0 0 8px rgba(255,200,100,.7)}
.status-row-pill.out{color:#FF5A1F;background:rgba(255,90,31,.08);border-color:rgba(255,90,31,.3)}
.status-row-pill.out::before{background:#FF5A1F;box-shadow:0 0 8px rgba(255,90,31,.7)}

.status-metrics{
  display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem;
  margin-top:2rem;
}
.status-metric{
  padding:1.4rem 1.5rem;
  background:rgba(3,3,11,.5);
  border:1px solid var(--br);
}
.status-metric-l{font-size:.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--t3);margin-bottom:.5rem}
.status-metric-v{font-size:1.6rem;font-weight:800;color:#fff;letter-spacing:-.025em;font-variant-numeric:tabular-nums;line-height:1}
.status-metric-s{font-size:.72rem;color:var(--t2);margin-top:.4rem;font-weight:500}

/* ── Office cards (Contact page) ────────────── */
.office-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:1.5rem;
  margin-top:1rem;
}
.office-card{
  background:rgba(3,3,11,.55);
  border:1px solid var(--br);
  position:relative;
  overflow:hidden;
  transition:border-color .25s var(--ease), background .25s var(--ease), transform .25s var(--ease);
}
.office-card::before{
  content:'';position:absolute;top:0;left:0;
  width:3px;height:100%;
  background:linear-gradient(to bottom, var(--blue), transparent);
  opacity:.6;
}
.office-card:hover{
  border-color:rgba(77,162,255,.3);
  background:rgba(77,162,255,.03);
  transform:translateY(-2px);
}
.office-card-head{
  display:flex;align-items:center;gap:1.1rem;
  padding:1.6rem 1.75rem 1.4rem;
  border-bottom:1px solid var(--br);
}
.office-flag{
  width:50px;height:50px;flex-shrink:0;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.12);
  font-size:1.55rem;
  overflow:hidden;
  line-height:1;
}
.office-name{
  font-size:1.45rem;font-weight:800;
  color:#fff;letter-spacing:-.025em;line-height:1;
}
.office-tag{
  font-size:.6rem;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--blue);margin-top:.4rem;
}
.office-body{
  padding:1.5rem 1.75rem 1.75rem;
  display:flex;flex-direction:column;gap:1.1rem;
}
.office-item{
  display:flex;gap:.85rem;align-items:flex-start;
}
.office-item-ic{
  width:30px;height:30px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(77,162,255,.08);
  border:1px solid rgba(77,162,255,.22);
  color:var(--blue);font-size:.85rem;
}
.office-item-content{
  flex:1;min-width:0;
  display:flex;flex-direction:column;gap:.2rem;
}
.office-item-l{
  font-size:.58rem;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--t3);
}
.office-item-v{
  font-size:.88rem;font-weight:500;
  color:rgba(255,255,255,.85);
  line-height:1.55;word-break:break-word;
  letter-spacing:-.005em;
}
.office-item-v a{
  color:rgba(255,255,255,.85);
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.15);
  transition:color .2s var(--ease),border-color .2s var(--ease);
}
.office-item-v a:hover{
  color:var(--blue);
  border-bottom-color:var(--blue);
}

/* Contact form (light version of v4 contact form for standalone page) */
.contact-form-sec{padding:5rem 0 6rem;background:var(--bg);border-top:1px solid var(--br)}
.contact-form-wrap{
  max-width:780px;margin:0 auto;
  text-align:center;
}
.contact-form-h{
  font-size:clamp(1.75rem,3.5vw,2.5rem);
  font-weight:800;letter-spacing:-.03em;line-height:1.08;
  color:#fff;margin-bottom:1rem;
}
.contact-form-h em{font-style:normal;color:var(--blue)}
.contact-form-sub{
  font-size:1rem;color:var(--t2);line-height:1.6;
  margin-bottom:2.5rem;
}
.cf{
  position:relative;
  background:rgba(3,3,11,.55);
  border:1px solid rgba(255,255,255,.1);
  padding:2.25rem;
  text-align:left;
}
.cf::before{
  content:'';position:absolute;top:0;left:0;width:3px;height:100%;
  background:linear-gradient(to bottom, var(--blue), transparent);
  opacity:.7;
}
.cf-form{display:flex;flex-direction:column;gap:1rem}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cf-field{display:flex;flex-direction:column;gap:.4rem}
.cf-label{font-size:.62rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.cf-label .req{color:var(--blue);margin-left:.2rem}
.cf-input,.cf-textarea,.cf-select{
  width:100%;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.1);
  color:#fff;font-family:inherit;
  font-size:.9rem;font-weight:500;
  padding:.75rem .9rem;letter-spacing:-.005em;
  transition:border-color .2s var(--ease),background .2s var(--ease);
  outline:none;
}
.cf-input:focus,.cf-textarea:focus,.cf-select:focus{
  border-color:var(--blue);
  background:rgba(77,162,255,.04);
}
.cf-input::placeholder,.cf-textarea::placeholder{color:rgba(255,255,255,.32);font-weight:400}
.cf-textarea{resize:vertical;min-height:120px;font-family:inherit}
.cf-select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%234DA2FF'><path d='M4 6l4 4 4-4z'/></svg>");background-repeat:no-repeat;background-position:right 1rem center;background-size:14px;padding-right:2.5rem;cursor:pointer}
.cf-select option{background:#0a0a0a;color:#fff}
.cf-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.5rem;flex-wrap:wrap}
.cf-fineprint{font-size:.66rem;color:rgba(255,255,255,.32);line-height:1.5;max-width:300px}
.cf-fineprint a{color:rgba(255,255,255,.6);text-decoration:underline;text-decoration-color:rgba(255,255,255,.2);text-underline-offset:2px}
.cf-fineprint a:hover{color:#fff}
.cf-submit{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--blue);color:#fff;
  border:none;cursor:pointer;
  padding:.85rem 1.6rem;border-radius:100px;
  font-size:.9rem;font-weight:600;letter-spacing:-.005em;
  transition:background .25s var(--ease),transform .25s var(--ease),opacity .25s var(--ease);
  font-family:inherit;
}
.cf-submit:hover{background:var(--blue-d);transform:translateY(-1px)}
.cf-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}
.cf-submit .cf-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:cfSpin .8s linear infinite;display:none}
.cf.is-loading .cf-submit .cf-spinner{display:inline-block}
.cf.is-loading .cf-submit .cf-arrow{display:none}
@keyframes cfSpin{to{transform:rotate(360deg)}}
.cf-message{display:none;padding:1rem 1.25rem;font-size:.85rem;font-weight:500;line-height:1.5;margin-bottom:1rem;align-items:flex-start;gap:.7rem}
.cf-message.is-show{display:flex}
.cf-message.is-success{background:rgba(74,222,128,.08);border:1px solid rgba(74,222,128,.3);color:rgba(180,250,210,.95)}
.cf-message.is-error{background:rgba(255,90,31,.08);border:1px solid rgba(255,90,31,.3);color:rgba(255,180,150,.95)}
.cf-message i{font-size:1.1rem;flex-shrink:0;margin-top:.05rem}
.cf-message.is-success i{color:#4ADE80}
.cf-message.is-error i{color:#FF5A1F}
.cf-success{display:none;text-align:center;padding:2rem 1rem;flex-direction:column;align-items:center;gap:1.25rem}
.cf.is-success .cf-form{display:none}
.cf.is-success .cf-success{display:flex}
.cf-success-ic{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:rgba(74,222,128,.1);border:1px solid rgba(74,222,128,.35);color:#4ADE80;font-size:1.8rem;border-radius:50%;animation:cfPop .5s cubic-bezier(0.16,1,0.3,1)}
@keyframes cfPop{0%{transform:scale(.5);opacity:0}100%{transform:scale(1);opacity:1}}
.cf-success-h{font-size:1.4rem;font-weight:800;color:#fff;letter-spacing:-.02em}
.cf-success-p{font-size:.9rem;color:var(--t2);line-height:1.6;max-width:340px}
.cf-success-again{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:var(--blue);background:none;border:none;cursor:pointer;padding:.5rem .8rem;border-radius:100px;transition:background .2s var(--ease);font-family:inherit}
.cf-success-again:hover{background:rgba(77,162,255,.08)}

@media(max-width:900px){
  .office-grid{grid-template-columns:1fr}
}

/* ── Docs page — category cards + early-access notice ─── */
.docs-search{
  display:flex;align-items:center;gap:.7rem;
  margin-top:2rem;max-width:560px;
  background:rgba(3,3,11,.6);
  border:1px solid var(--br);
  padding:.85rem 1.1rem;
  transition:border-color .2s var(--ease);
}
.docs-search:focus-within{border-color:var(--blue)}
.docs-search i{color:var(--t3);font-size:1rem}
.docs-search input{
  flex:1;background:none;border:none;outline:none;
  color:#fff;font-family:inherit;font-size:.95rem;
  font-weight:500;letter-spacing:-.005em;
}
.docs-search input::placeholder{color:var(--t3);font-weight:400}
.docs-search-kbd{
  font-size:.6rem;font-weight:700;color:var(--t3);
  font-family:'SF Mono',monospace;letter-spacing:.05em;
  padding:.2rem .45rem;border:1px solid var(--br);
}

.docs-grid{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:1rem;
  margin-top:1rem;
}
.docs-card{
  position:relative;
  background:rgba(3,3,11,.5);
  border:1px solid var(--br);
  padding:1.6rem;
  text-decoration:none;color:inherit;
  display:flex;flex-direction:column;gap:.85rem;
  transition:border-color .25s var(--ease),background .25s var(--ease),transform .25s var(--ease);
}
.docs-card:hover{
  border-color:rgba(77,162,255,.35);
  background:rgba(77,162,255,.03);
  transform:translateY(-2px);
}
.docs-card-head{
  display:flex;align-items:center;gap:.85rem;
}
.docs-card-ic{
  width:38px;height:38px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(77,162,255,.1);
  border:1px solid rgba(77,162,255,.25);
  color:var(--blue);font-size:1.05rem;
}
.docs-card-h{
  font-size:1.05rem;font-weight:700;color:#fff;
  letter-spacing:-.015em;line-height:1.2;
}
.docs-card-p{
  font-size:.85rem;color:var(--t2);
  line-height:1.55;margin:0;
}
.docs-card-meta{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:.25rem;padding-top:.85rem;
  border-top:1px solid var(--br);
  font-size:.7rem;color:var(--t3);font-weight:600;
  letter-spacing:-.005em;
}
.docs-card-cta{
  display:inline-flex;align-items:center;gap:.35rem;
  color:var(--blue);font-weight:600;
  transition:transform .2s var(--ease);
}
.docs-card:hover .docs-card-cta{transform:translateX(2px)}
.docs-tag{
  display:inline-flex;align-items:center;gap:.3rem;
  font-size:.55rem;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;
  padding:.25rem .5rem;
  background:rgba(255,200,100,.08);
  border:1px solid rgba(255,200,100,.25);
  color:#FFC864;
}
.docs-tag.is-live{background:rgba(74,222,128,.08);border-color:rgba(74,222,128,.25);color:#4ADE80}
.docs-tag.is-soon{background:rgba(255,200,100,.08);border-color:rgba(255,200,100,.25);color:#FFC864}

.docs-cta{
  margin-top:2.5rem;
  padding:2rem 2.25rem;
  background:linear-gradient(135deg, rgba(77,162,255,.06) 0%, rgba(255,255,255,.015) 100%);
  border:1px solid rgba(77,162,255,.2);
  position:relative;overflow:hidden;
  display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;
}
.docs-cta::before{
  content:'';position:absolute;top:0;left:0;width:3px;height:100%;
  background:linear-gradient(to bottom, var(--blue), transparent);
}
.docs-cta-h{font-size:1.2rem;font-weight:700;color:#fff;letter-spacing:-.015em;margin-bottom:.5rem}
.docs-cta-p{font-size:.88rem;color:var(--t2);line-height:1.6;margin:0;max-width:560px}
/* Higher specificity than `.page-body a { color: var(--blue) }` so the white text
   isn't washed out by the default page-body link styling. Same for the card links. */
.page-body .docs-cta-btn,
.page-body .docs-cta-btn:hover{
  display:inline-flex;align-items:center;gap:.45rem;
  background:var(--blue);color:#fff;text-decoration:none;
  padding:.75rem 1.4rem;border-radius:100px;
  font-size:.85rem;font-weight:600;letter-spacing:-.005em;
  transition:background .2s var(--ease),transform .2s var(--ease);
  white-space:nowrap;
  border-bottom:none;
}
.page-body .docs-cta-btn:hover{background:var(--blue-d);transform:translateY(-1px);color:#fff}

/* Same override for the card links — keep their layout color, drop the default underline border */
.page-body .docs-card,
.page-body .docs-card:hover{
  color:inherit;border-bottom:none;
}

@media(max-width:768px){
  .docs-grid{grid-template-columns:1fr;gap:.75rem}
  .docs-card{padding:1.25rem}
  .docs-cta{grid-template-columns:1fr;gap:1.25rem;padding:1.5rem 1.4rem}
  .docs-cta-btn{justify-self:start}
}

/* ── Footer minimal ─────────────────────────── */
.page-footer{
  padding:2rem 0;
  border-top:1px solid var(--br);
  background:var(--bg);
}
.page-footer-row{
  display:flex;align-items:center;justify-content:space-between;
  font-size:.72rem;color:var(--t3);font-weight:500;flex-wrap:wrap;gap:1rem;
}
.page-footer-links{display:flex;align-items:center;gap:1.4rem}
.page-footer-links a{color:var(--t2);text-decoration:none;transition:color .2s var(--ease)}
.page-footer-links a:hover{color:#fff}

/* ── Responsive ─────────────────────────────── */
@media(max-width:768px){
  :root{--nav:60px}
  .wrap{padding:0 1.25rem}
  .nav-logo{font-size:1rem;gap:.55rem}
  .nav-logo img{height:26px}
  .nav-back{font-size:.78rem;padding:.4rem .7rem;gap:.35rem}

  .page-hero{padding:calc(var(--nav) + 3rem) 0 2.5rem}
  .page-h{font-size:clamp(2rem,8vw,2.75rem)}
  .page-sub{font-size:.92rem}
  .page-updated{font-size:.7rem;margin-top:1.25rem}

  .page-body{padding:3rem 0 5rem}
  .page-body h2{font-size:1.2rem;margin:2rem 0 .75rem;padding-top:1.5rem}
  .page-body h3{font-size:.95rem}
  .page-body p,.page-body ul li{font-size:.88rem}
  .page-body .note{padding:.85rem 1rem;font-size:.82rem}

  /* Office cards on contact page */
  .office-card-head{padding:1.25rem 1.25rem 1rem;gap:.85rem}
  .office-flag{width:42px;height:42px;font-size:1.3rem}
  .office-name{font-size:1.2rem}
  .office-tag{font-size:.55rem;margin-top:.3rem}
  .office-body{padding:1.25rem 1.25rem 1.5rem;gap:.85rem}
  .office-item-v{font-size:.82rem}

  /* Contact form on contact page */
  .contact-form-sec{padding:3.5rem 0 4.5rem}
  .contact-form-h{font-size:clamp(1.5rem,6vw,2rem)}
  .contact-form-sub{font-size:.92rem;margin-bottom:2rem}
  .cf{padding:1.75rem 1.25rem}
  .cf-row{grid-template-columns:1fr;gap:.85rem}
  .cf-actions{flex-direction:column;align-items:stretch}
  .cf-fineprint{max-width:none;text-align:center}
  .cf-submit{width:100%;justify-content:center}

  /* Status page tweaks */
  .status-summary{padding:1.15rem 1.25rem;gap:.75rem;flex-wrap:wrap}
  .status-summary-h{font-size:.95rem}
  .status-summary-p{font-size:.75rem}
  .status-summary-updated{flex-basis:100%;font-size:.66rem}
  .status-row{grid-template-columns:1fr;gap:.6rem;padding:1rem 1.15rem}
  .status-row-pill{font-size:.62rem;padding:.32rem .6rem;align-self:flex-start}
  .status-metric{padding:1.15rem 1.25rem}
  .status-metric-v{font-size:1.35rem}

  /* Page footer */
  .page-footer-row{flex-direction:column;text-align:center;gap:.6rem}
  .page-footer-links{gap:1.1rem}
}
@media(max-width:900px){
  .page-toc-wrap{grid-template-columns:1fr;gap:2rem}
  .page-toc{position:static}
  .status-metrics{grid-template-columns:1fr}
}
