:root{
  --bg:#070a12;
  --ink:rgba(255,255,255,.92);
  --muted:rgba(255,255,255,.70);
  --rule:rgba(255,255,255,.12);
  --card:rgba(255,255,255,.06);
  --card2:rgba(255,255,255,.09);
  --accent:#7aa8ff;
  --gold:#d7c7a2;
  --shadow:0 30px 120px rgba(0,0,0,.62);
  --shadow2:0 14px 38px rgba(0,0,0,.44);
  --radius:18px;
  --max:1140px;
}
html[data-theme="light"]{
  --bg:#fbfbfd;
  --ink:rgba(15,23,42,.92);
  --muted:rgba(15,23,42,.62);
  --rule:rgba(15,23,42,.10);
  --card:rgba(15,23,42,.04);
  --card2:rgba(15,23,42,.06);
  --accent:#0b3b8f;
  --gold:#7a6335;
  --shadow:0 20px 70px rgba(15,23,42,.12);
  --shadow2:0 10px 28px rgba(15,23,42,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  line-height:1.62;
  font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 18px}
a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:4px}
a:hover{text-decoration-thickness:2px}
a:focus{outline:2px solid var(--accent);outline-offset:3px;border-radius:12px}
.skip{position:absolute;left:-999px;top:10px;background:var(--bg);border:1px solid var(--rule);color:var(--ink);padding:10px 12px;border-radius:12px;z-index:999}
.skip:focus{left:10px}

/* ambient */
.fx{position:fixed;inset:0;pointer-events:none;z-index:-1}
.fx__aurora{
  position:absolute;inset:-40%;
  background:
    radial-gradient(circle at 16% 24%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 58%),
    radial-gradient(circle at 80% 34%, color-mix(in srgb, var(--gold) 14%, transparent), transparent 62%),
    radial-gradient(circle at 58% 86%, color-mix(in srgb, var(--accent) 10%, transparent), transparent 60%);
  filter:blur(36px);
  opacity:.88;
}
.fx__vignette{position:absolute;inset:0;background:radial-gradient(circle at 50% 35%, transparent 0%, rgba(0,0,0,.26) 58%, rgba(0,0,0,.58) 100%);opacity:.55}
html[data-theme="light"] .fx__vignette{background:radial-gradient(circle at 50% 35%, transparent 0%, rgba(15,23,42,.06) 62%, rgba(15,23,42,.10) 100%);opacity:1}
.fx__grain{position:absolute;inset:0;opacity:.065;background-image:radial-gradient(circle, rgba(255,255,255,.30) 1px, transparent 1px);background-size:6px 6px;mix-blend-mode:overlay}

/* cursor */
.cursor{
  position:fixed;width:26px;height:26px;border-radius:999px;
  border:1px solid color-mix(in srgb, var(--rule) 70%, transparent);
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.16), transparent 60%);
  pointer-events:none;transform:translate3d(-999px,-999px,0);
  transition:width .18s ease,height .18s ease,opacity .18s ease;
  opacity:.55;z-index:1000;
}

/* header */
.header{position:sticky;top:0;z-index:50;backdrop-filter:blur(14px);background:color-mix(in srgb, var(--bg) 78%, transparent);border-bottom:1px solid var(--rule)}
.header__inner{display:flex;align-items:center;gap:16px;padding:14px 0}
.brand{text-decoration:none;display:flex;align-items:center;gap:12px;min-width:280px}
.mark{width:40px;height:40px;display:grid;place-items:center;border-radius:14px;border:1px solid var(--rule);background:color-mix(in srgb, var(--card) 90%, transparent);box-shadow:var(--shadow2)}
.brand__text{display:flex;flex-direction:column;gap:2px}
.brand__name{font-weight:980;letter-spacing:.2px;font-size:14px}
.brand__tag{font-size:12px;color:var(--muted)}

.nav{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap;position:relative;padding:4px;border-radius:999px}
.nav__link{text-decoration:none;color:var(--muted);font-size:13px;padding:8px 10px;border-radius:999px;transition:color .16s ease,transform .16s ease;position:relative;z-index:2}
.nav__link:hover{color:var(--ink);transform:translateY(-1px)}
.nav__indicator{
  position:absolute;
  left: 0;
  top: 0;
  height: 0;
  width: 0;
  border-radius: 999px;
  background: color-mix(in srgb, var(--card2) 76%, transparent);
  border: 1px solid var(--rule);
  box-shadow: var(--shadow2);
  transition: transform .22s cubic-bezier(.2,.8,.2,1),
              width .22s cubic-bezier(.2,.8,.2,1),
              height .22s cubic-bezier(.2,.8,.2,1),
              opacity .22s ease;
  opacity: 0;
  z-index: 1;
}

.toggle{border:1px solid var(--rule);background:color-mix(in srgb, var(--card) 88%, transparent);color:var(--ink);border-radius:999px;padding:9px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .16s ease,transform .16s ease}
.toggle:hover{background:var(--card2);transform:translateY(-1px)}
.toggle__dot{width:10px;height:10px;border-radius:999px;background:var(--accent);opacity:.85}
.toggle__label{font-size:13px;color:var(--muted)}

.main{padding:34px 0 62px}

/* hero */
.hero{border:1px solid var(--rule);background:linear-gradient(180deg, color-mix(in srgb, var(--card2) 55%, transparent), transparent);border-radius:calc(var(--radius) + 10px);padding:28px;box-shadow:var(--shadow)}
.kicker{margin:0 0 10px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.h1{margin:0 0 12px;font-size:clamp(30px,4vw,54px);line-height:1.05;letter-spacing:-.04em;font-weight:1000;font-family:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif}
.lede{margin:0;font-size:16px;color:var(--muted);max-width:78ch}
.hero__cta{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}

.btn{border:1px solid var(--rule);background:color-mix(in srgb, var(--card) 92%, transparent);color:var(--ink);border-radius:14px;padding:11px 14px;font-size:14px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:transform .16s ease,background .16s ease,border-color .16s ease;will-change:transform}
.btn:hover{background:color-mix(in srgb, var(--card2) 86%, transparent);border-color:color-mix(in srgb, var(--rule) 86%, transparent);transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn--primary{background:color-mix(in srgb, var(--accent) 14%, var(--card));border-color:color-mix(in srgb, var(--accent) 34%, var(--rule))}
.btn--primary:hover{background:color-mix(in srgb, var(--accent) 18%, var(--card2))}
.btn--ghost{background:transparent}

.hero__grid{margin-top:18px;display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:960px){.hero__grid{grid-template-columns:repeat(3,1fr)}}
.tile{border:1px solid var(--rule);background:color-mix(in srgb, var(--card) 92%, transparent);border-radius:18px;padding:14px;box-shadow:var(--shadow2)}
.tile__top{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:8px}
.tile__main{font-weight:1000;letter-spacing:.1px}
.tile__sub{margin-top:6px;color:var(--muted);font-size:13.5px}

.trustbar{margin-top:14px;border:1px solid var(--rule);background:transparent;border-radius:18px;padding:14px 16px}
.trustbar__label{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.trustbar__text{color:var(--muted);font-size:14px}

/* sections */
.section{margin-top:18px;border:1px solid var(--rule);background:linear-gradient(180deg, color-mix(in srgb, var(--card) 94%, transparent), transparent);border-radius:18px;padding:20px;box-shadow:var(--shadow2)}
.section__head{max-width:80ch}
.h2{margin:0 0 8px;font-size:18px;font-weight:1000}
.h3{margin:0 0 6px;font-size:16px;font-weight:980}
.p{margin:0}
.muted{color:var(--muted)}

.cards{margin-top:14px;display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:960px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{border:1px solid var(--rule);background:color-mix(in srgb, var(--card) 92%, transparent);border-radius:18px;padding:16px;min-height:170px}

.chips{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}
.chip{border:1px solid var(--rule);background:transparent;color:var(--muted);padding:6px 10px;border-radius:999px;font-size:12.5px}

.grid2{margin-top:14px;display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:960px){.grid2{grid-template-columns:repeat(2,1fr)}}
.panel{border:1px solid var(--rule);background:color-mix(in srgb, var(--card) 92%, transparent);border-radius:18px;padding:16px;box-shadow:var(--shadow2)}
.panel__title{font-weight:1000;margin-bottom:8px}
.panel__text{margin:0;color:var(--muted);font-size:14px;max-width:78ch}

/* steps */
.steps{margin-top:12px;display:grid;gap:10px}
.step{border:1px solid var(--rule);background:color-mix(in srgb, var(--card) 92%, transparent);border-radius:18px;padding:14px;display:flex;gap:14px;align-items:flex-start}
.step__num{width:44px;height:44px;border-radius:16px;border:1px solid var(--rule);display:grid;place-items:center;font-weight:1000;color:var(--muted)}
.step__title{font-weight:1000;margin-bottom:4px}
.step__text{color:var(--muted);font-size:14px}

/* contact */
.contact{margin-top:12px;display:grid;gap:12px}
@media (min-width:960px){.contact{grid-template-columns:1.2fr .8fr}}
.contact__box{border:1px solid var(--rule);background:color-mix(in srgb, var(--card) 92%, transparent);border-radius:18px;padding:16px}
.contact__row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--rule)}
.contact__row:last-child{border-bottom:none}
.contact__label{color:var(--muted);font-size:13px}
.contact__value{font-weight:1000}
.contact__actions{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.status{color:var(--muted);font-size:13px;min-height:18px}
.mini{border:1px solid var(--rule);background:transparent;border-radius:18px;padding:16px}
.mini__title{font-weight:1000;margin-bottom:8px}
.mini__text{color:var(--muted);font-size:14px}

/* hover */
.interactive{transition:transform .18s cubic-bezier(.2,.8,.2,1),background .18s ease,border-color .18s ease;will-change:transform}
.interactive:hover{transform:translateY(-3px);background:color-mix(in srgb, var(--card2) 86%, transparent);border-color:color-mix(in srgb, var(--rule) 86%, transparent)}

/* footer */
.footer{margin-top:22px;padding:0 6px}
.footer__rule{height:1px;background:var(--rule);margin:18px 0 12px}
.footer__grid{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.footer__text,.footer__fine{margin:0;color:var(--muted);font-size:13px}

/* reveal */
.reveal{opacity:0;transform:translateY(12px);transition:opacity .65s ease,transform .65s ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}

/* reduced motion */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .reveal,.interactive,.btn{transition:none!important}
  .cursor{display:none}
}
