:root{--font-display:Georgia,"Times New Roman",serif;--font-body:system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:ui-monospace,monospace;--step--1:.78rem;--step-0:1rem;--step-1:1.2rem;--step-2:clamp(1.8rem,3vw,2.65rem);--step-3:clamp(2.75rem,7.5vw,6.5rem);--leading-tight:1.02;--leading-body:1.65;--weight-normal:400;--weight-semibold:650;--tracking-wide:.18em;--content:76rem;--form-width:42rem;--gutter:clamp(1rem,4vw,3rem);--section:clamp(3rem,8vw,7rem);--gap:clamp(1rem,2.5vw,2rem);--header-height:5rem;--hero-height:44rem;--mobile-hero-size:3.2rem;--panel-opacity:.94;--vault-intensity:.92;--shadow-strength:.72;--radius-sm:.35rem;--radius-md:.55rem;--radius-lg:.8rem;--radius-pill:999px;--input-radius:.35rem;--border:1px solid var(--color-border);--program-columns:4;--heading-scale:1.06;--crm-sidebar:18rem;--shadow:0 1.5rem 4rem var(--color-shadow);--duration-fast:150ms;--duration:260ms;--ease:cubic-bezier(.2,.8,.2,1)}

*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,p,ul{margin:0}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit}a{color:inherit}button{cursor:pointer}[hidden]{display:none!important}

body{font-family:var(--font-body);font-size:var(--step-0);line-height:var(--leading-body);color:var(--color-text);text-rendering:optimizeLegibility}h1,h2,h3{font-family:var(--font-display);line-height:var(--leading-tight);font-weight:var(--weight-normal);text-wrap:balance}h1{font-size:calc(var(--step-3) * var(--heading-scale));max-width:13ch;letter-spacing:-.025em}h2{font-size:calc(var(--step-2) * var(--heading-scale))}h3{font-size:calc(var(--step-1) * var(--heading-scale))}p+p{margin-top:1em}.lede{font-size:var(--step-1);color:var(--color-muted);max-width:60ch}.eyebrow{text-transform:uppercase;letter-spacing:var(--tracking-wide);font-size:var(--step--1);font-weight:var(--weight-semibold);color:var(--color-gold)}code{font-family:var(--font-mono)}a{text-underline-offset:.22em;text-decoration-thickness:.08em}a:hover{color:var(--color-gold-bright)}

html {
  background: var(--color-bg);
  font-size: clamp(14.5px, calc(6px + 0.46875vw), 18px);
}
body {
  position: relative;
  min-width: 20rem;
  min-height: 100vh;
  background: var(--page-background);
  overflow-x: hidden;
}
body:not(.page-kind-home)::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: calc(var(--header-height) + 2rem) 0 auto;
  height: min(42rem, 70vh);
  background-image:
    linear-gradient(var(--interior-scrim), var(--interior-scrim)),
    url("/assets/media/approved/vault-hero-desktop.webp");
  background-size: cover;
  background-position: center right;
  opacity: var(--vault-intensity);
  pointer-events: none;
}
.page-shell {
  position: relative;
  z-index: 1;
  width: min(100% - 2 * var(--gutter), var(--content));
  margin: auto;
  padding-block: var(--section);
}
.page-shell > section + section {
  margin-top: var(--section);
}
.site-header {
  position: relative;
  z-index: 20;
  min-height: var(--header-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: min(100% - 2 * var(--gutter), var(--content));
  margin: auto;
  gap: var(--gap);
  border-inline: 1px solid transparent;
}
.site-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(0.7rem, 1.4vw, 1.25rem);
  font-size: 0.88rem;
}
.site-footer {
  position: relative;
  z-index: 1;
  padding: var(--section) max(var(--gutter), calc((100vw - var(--content)) / 2));
  border-top: 1px solid var(--color-border-secondary);
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: var(--gap);
  background: var(--surface-soft);
}
.site-footer nav,
.link-list {
  display: grid;
  gap: 0.6rem;
}
.site-footer .disclosure {
  grid-column: 1/-1;
}
.hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  min-height: var(--hero-height);
  overflow: hidden;
  border: 1px solid var(--color-border-secondary);
  border-radius: var(--radius-lg);
  background: var(--color-bg);
  box-shadow: var(--shadow);
}
.hero > div {
  position: relative;
  z-index: 3;
  width: min(52%, 43rem);
  padding: clamp(2rem, 6vw, 5rem);
}
.hero::after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  background: linear-gradient(
    90deg,
    var(--hero-scrim) 0%,
    var(--hero-scrim) 38%,
    transparent 72%
  );
  pointer-events: none;
}
.hero-media {
  position: absolute;
  z-index: 1;
  inset: 0;
  margin: 0;
  opacity: var(--vault-intensity);
}
.hero-media picture,
.hero-media img {
  width: 100%;
  height: 100%;
}
.hero-media img {
  object-fit: cover;
  object-position: center;
}
.hero[data-align="center"] > div {
  width: min(100%, 62rem);
  margin: auto;
  text-align: center;
}
.hero[data-align="center"] h1,
.hero[data-align="center"] .lede {
  margin-inline: auto;
}
.hero[data-align="center"] .actions {
  justify-content: center;
}
.hero h1 {
  margin-block: 1rem;
}
.actions,
.form-actions {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}
.program-grid,
.content-grid,
.journey-grid {
  display: grid;
  grid-template-columns: repeat(var(--program-columns), 1fr);
  gap: var(--gap);
  margin-top: 2rem;
}
.content-grid {
  grid-template-columns: repeat(2, 1fr);
}
.journey-grid {
  grid-template-columns: repeat(3, 1fr);
}
.narrow,
.auth-shell {
  width: min(100%, var(--form-width));
  margin: auto;
}
.field-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--gap);
}
body:not(.page-kind-home) .page-shell > .eyebrow {
  margin-bottom: 0.9rem;
}
body:not(.page-kind-home) .page-shell > h1 {
  padding-bottom: 1.5rem;
  background: var(--silver-gradient);
  background-clip: text;
  color: transparent;
}
body:not(.page-kind-home) .page-shell > .lede,
body:not(.page-kind-home) .page-shell > p {
  max-width: 68ch;
}
.page-kind-legal .page-shell {
  max-width: 72rem;
}
.page-kind-legal .link-list {
  margin-top: 2rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.page-kind-join .narrow,
.page-kind-verify .narrow,
.auth-shell {
  padding: clamp(1rem, 3vw, 2rem);
  border: 1px solid var(--color-border-secondary);
  border-radius: var(--radius-lg);
  background: var(--surface-soft);
  box-shadow: var(--shadow);
}
@media (max-width: 1100px) {
  .site-nav {
    display: none;
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 0;
    right: 0;
    padding: 1rem;
    background: var(--color-elevated);
    border: var(--border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow);
    flex-direction: column;
    align-items: stretch;
    z-index: 30;
  }
  .site-nav.is-open {
    display: flex;
  }
  .nav-toggle {
    display: grid;
  }
  .hero > div {
    width: min(60%, 40rem);
  }
  .program-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 800px) {
  html {
    font-size: 16px;
  }
  .hero {
    min-height: 0;
  }
  .hero > div {
    width: 100%;
    padding: clamp(2rem, 8vw, 4rem);
  }
  .hero::after {
    background: linear-gradient(
      180deg,
      var(--hero-scrim) 0%,
      var(--hero-scrim) 48%,
      transparent 78%
    );
  }
  .hero-media {
    position: relative;
    height: clamp(18rem, 74vw, 30rem);
    grid-row: 2;
    border-top: 1px solid var(--color-border-secondary);
  }
  .hero-media img {
    object-position: center;
  }
  .site-footer {
    grid-template-columns: 1fr;
  }
  .program-grid,
  .journey-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  body:not(.page-kind-home)::before {
    height: 26rem;
    background-image:
      linear-gradient(var(--interior-scrim), var(--interior-scrim)),
      url("/assets/media/approved/vault-hero-mobile.webp");
    background-position: center top;
  }
  .page-shell {
    padding-block: clamp(2.5rem, 12vw, 4rem);
  }
  .hero h1 {
    font-size: var(--mobile-hero-size);
  }
  .program-grid,
  .content-grid,
  .journey-grid,
  .field-grid,
  .page-kind-legal .link-list {
    grid-template-columns: 1fr;
  }
  .actions .button,
  .form-actions .button {
    width: 100%;
  }
}
.page-kind-join .page-shell {
  padding-block: clamp(1.5rem, 4vw, 3.5rem);
}
.page-kind-join .narrow {
  width: min(100%, 46rem);
  padding: clamp(1rem, 2.5vw, 1.75rem);
}
.page-kind-join h1 {
  font-size: clamp(2.75rem, 7vw, 4.75rem);
  max-width: none;
}
.page-kind-join .flow-form h2 {
  font-size: clamp(1.65rem, 4vw, 2.35rem);
}
@media (max-width: 600px) {
  .page-kind-join .page-shell {
    padding-block: 1.25rem;
  }
  .page-kind-join h1 {
    font-size: clamp(2.4rem, 13vw, 3.25rem);
  }
}

.mode-banner{position:relative;z-index:25;text-align:center;padding:.42rem var(--gutter);font-size:var(--step--1);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);background:var(--metal-gradient);color:var(--color-on-gold);border-bottom:1px solid var(--color-gold-deep)}.brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}.brand picture,.brand img{width:clamp(12rem,18vw,17rem);height:auto}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.72rem 1.25rem;border:1px solid var(--color-gold);border-radius:var(--radius-sm);background:var(--metal-gradient);color:var(--color-on-gold);text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;font-weight:var(--weight-semibold);box-shadow:0 .5rem 1.5rem var(--color-shadow);transition:transform var(--duration-fast) var(--ease),filter var(--duration-fast)}.button:hover{transform:translateY(-1px);filter:brightness(1.08);color:var(--color-on-gold)}.button.secondary{background:var(--surface-soft);color:var(--color-gold-bright);box-shadow:none}.button.disabled,.button:disabled{opacity:.48;cursor:not-allowed;transform:none;filter:none}.small{min-height:2.75rem;padding-inline:1rem}.panel,.card,.state-card{position:relative;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);background:var(--surface-glass);box-shadow:var(--shadow);overflow:hidden}.panel::before,.card::before,.state-card::before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:var(--metal-gradient)}.panel a[href^="mailto:"]{overflow-wrap:anywhere}.program-card{min-height:20rem;display:flex;flex-direction:column;border-color:var(--color-border)}.program-card h3{font-size:2.25rem;background:var(--silver-gradient);background-clip:text;color:transparent}.program-card .price{font-family:var(--font-display);font-size:3rem;color:var(--color-gold-highlight);margin-block:1rem}.program-card .button,.program-card .button.disabled{margin-top:auto}.disclosure{margin-top:var(--section);color:var(--color-muted)}.status-badge{display:inline-block;padding:.3rem .75rem;border-radius:var(--radius-pill);background:var(--color-info-surface);color:var(--color-info);border:1px solid var(--color-border-secondary)}.feature-strip{margin-top:1.5rem}.feature-strip ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.feature-strip li{min-height:4.5rem;padding:.7rem 1.25rem;border-right:1px solid var(--color-border-secondary);display:flex;align-items:center}.feature-strip li:last-child{border-right:0}.feature-strip>a{display:inline-block;margin-top:1rem}.faq details{border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);padding:1.2rem 1.35rem;background:var(--surface-soft)}.faq details+details{margin-top:.75rem}.faq summary{font-weight:var(--weight-semibold);cursor:pointer;color:var(--color-text)}.faq summary::marker{color:var(--color-gold)}.faq details p{margin-top:.8rem;color:var(--color-muted)}.alert{padding:.8rem;border-radius:var(--radius-sm)}.alert.error{color:var(--color-error);background:var(--color-error-surface)}.alert.success{color:var(--color-success);background:var(--color-success-surface)}.alert.info{color:var(--color-info);background:var(--color-info-surface)}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:99;transform:translateY(-200%);padding:.6rem;background:var(--color-text);color:var(--color-bg)}.skip-link:focus{transform:none}.nav-toggle{display:none;width:2.75rem;height:2.75rem;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-gold)}.nav-toggle>span[aria-hidden]{position:relative;width:1.25rem;height:2px;background:currentColor}.nav-toggle>span[aria-hidden]::before,.nav-toggle>span[aria-hidden]::after{content:"";position:absolute;left:0;width:100%;height:2px;background:currentColor}.nav-toggle>span[aria-hidden]::before{top:-.4rem}.nav-toggle>span[aria-hidden]::after{top:.4rem}.preview-environment-banner{position:fixed;right:.75rem;bottom:.75rem;z-index:90;padding:.35rem .65rem;border:var(--border);border-radius:var(--radius-pill);background:var(--color-elevated);color:var(--color-muted);font-size:var(--step--1);box-shadow:var(--shadow)}.legal-metadata{margin-block:2rem}.legal-metadata dl{display:grid;gap:.75rem}.legal-metadata dl div{display:grid;grid-template-columns:minmax(8rem,.4fr) 1fr;gap:1rem}.legal-metadata dt{color:var(--color-muted)}.legal-metadata dd{min-width:0;margin:0;font-weight:var(--weight-semibold);overflow-wrap:anywhere}.affiliate-banner{display:grid;grid-template-columns:minmax(17rem,.75fr) minmax(0,1.25fr);margin-top:var(--section);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--surface-glass);overflow:hidden;box-shadow:var(--shadow)}.affiliate-art{min-height:24rem;background:var(--color-bg)}.affiliate-art img{width:100%;height:100%;object-fit:cover}.affiliate-copy{padding:clamp(1.5rem,4vw,3rem);align-self:center}.referral-code{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-block:1.5rem;padding:1rem;border:1px solid var(--color-border-secondary);background:var(--color-bg)}.referral-code span{color:var(--color-muted)}.referral-code code{color:var(--color-gold-highlight);font-size:1.05rem}.referral-code button{min-height:2.75rem;margin-left:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-elevated);color:var(--color-text);padding:.5rem .8rem}.affiliate-banner.is-preview{border-style:dashed}@media(max-width:800px){.feature-strip ul{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-strip li:nth-child(2){border-right:0}.feature-strip li:nth-child(-n+2){border-bottom:1px solid var(--color-border-secondary)}.affiliate-banner{grid-template-columns:1fr}.affiliate-art{min-height:18rem}}@media(max-width:480px){.brand picture,.brand img{width:10.5rem}.legal-metadata dl div{grid-template-columns:1fr;gap:0}.feature-strip ul{grid-template-columns:1fr}.feature-strip li{border-right:0;border-bottom:1px solid var(--color-border-secondary)}.feature-strip li:last-child{border-bottom:0}}
@media(max-width:1100px){.site-header .nav-toggle{display:grid}}
.checkout-price-options{display:grid;gap:.5rem;margin:1rem 0;padding:1rem;border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);background:var(--surface-soft)}
.checkout-price-options p{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:0;color:var(--color-muted)}
.checkout-price-options strong{color:var(--color-gold-highlight);font-family:var(--font-display);font-size:1.65rem;line-height:1}
@media(max-width:480px){.checkout-price-options p{align-items:flex-start;flex-direction:column;gap:.3rem}}

.page-kind-home .site-header::after,
.page-kind-404 .site-header::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--color-border-secondary) 18%, var(--color-border-secondary) 82%, transparent);
}

.page-kind-home .site-nav,
.page-kind-404 .site-nav {
  gap: clamp(.35rem, .75vw, .7rem);
  font-size: .79rem;
}

.page-kind-home .site-nav > a:not(.button),
.page-kind-404 .site-nav > a:not(.button) {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  padding: .55rem .52rem;
  color: var(--color-muted);
  font-weight: var(--weight-semibold);
  letter-spacing: .075em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  transition: color var(--duration-fast) var(--ease);
}

.page-kind-home .site-nav > a:not(.button)::after,
.page-kind-404 .site-nav > a:not(.button)::after {
  content: "";
  position: absolute;
  inset: auto .52rem .34rem;
  height: 1px;
  background: var(--metal-gradient);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform var(--duration-fast) var(--ease);
}

.page-kind-home .site-nav > a:not(.button):hover,
.page-kind-home .site-nav > a:not(.button):focus-visible,
.page-kind-404 .site-nav > a:not(.button):hover,
.page-kind-404 .site-nav > a:not(.button):focus-visible {
  color: var(--color-text);
}

.page-kind-home .site-nav > a:not(.button):hover::after,
.page-kind-home .site-nav > a:not(.button):focus-visible::after,
.page-kind-404 .site-nav > a:not(.button):hover::after,
.page-kind-404 .site-nav > a:not(.button):focus-visible::after {
  transform: scaleX(1);
}

.page-kind-home .site-nav > a[href="/login/"],
.page-kind-404 .site-nav > a[href="/login/"] {
  margin-left: .3rem;
  padding-inline: .9rem;
  border: 1px solid var(--color-border-secondary);
  border-radius: var(--radius-pill);
  color: var(--color-gold-bright);
  background: var(--surface-soft);
}

.page-kind-home .site-nav > a[href="/login/"]::after,
.page-kind-404 .site-nav > a[href="/login/"]::after {
  display: none;
}

.page-kind-home .site-nav > a[href="/login/"]:hover,
.page-kind-404 .site-nav > a[href="/login/"]:hover {
  border-color: var(--color-gold);
  background: var(--color-elevated);
  color: var(--color-gold-highlight);
}

@media (max-width: 1340px) {
  .site-header .nav-toggle {
    display: grid;
  }

  .page-kind-home .site-nav,
  .page-kind-404 .site-nav {
    display: none;
    position: absolute;
    top: calc(100% + .5rem);
    left: 0;
    right: 0;
    z-index: 30;
    padding: 1rem;
    border: var(--border);
    border-radius: var(--radius-md);
    background: var(--color-elevated);
    box-shadow: var(--shadow);
    flex-direction: column;
    align-items: stretch;
  }

  .page-kind-home .site-nav.is-open,
  .page-kind-404 .site-nav.is-open {
    display: flex;
  }

  .page-kind-home .site-nav > a:not(.button),
  .page-kind-404 .site-nav > a:not(.button) {
    width: 100%;
    padding: .75rem 1rem;
  }

  .page-kind-home .site-nav > a:not(.button)::after,
  .page-kind-404 .site-nav > a:not(.button)::after {
    inset: auto 1rem .45rem;
    transform-origin: left;
  }

  .page-kind-home .site-nav > a[href="/login/"],
  .page-kind-404 .site-nav > a[href="/login/"] {
    margin-left: 0;
    border-radius: var(--radius-sm);
  }
}

.flow-form{margin-top:1.25rem;padding:clamp(1rem,3vw,1.75rem);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--surface-glass);box-shadow:var(--shadow)}.flow-form section{min-height:13rem}.flow-form h2{margin-block:1rem;color:var(--color-text)}label{display:grid;gap:.35rem;margin-block:.8rem;font-weight:var(--weight-semibold)}label span,.hint{font-weight:var(--weight-normal);color:var(--color-muted)}input,select,textarea{width:100%;min-height:2.75rem;padding:.8rem;border:1px solid var(--color-border-secondary);border-radius:var(--input-radius);background:var(--color-input);color:var(--color-text);box-shadow:inset 0 1px 0 var(--color-shadow)}textarea{min-height:6rem;resize:vertical}.check{grid-template-columns:1.15rem 1fr;align-items:start;font-size:.95rem;line-height:1.45;font-weight:var(--weight-normal)}.check input,input[type="checkbox"]{width:1.05rem;height:1.05rem;min-height:1.05rem;padding:0;margin-top:.18rem}.stepper{display:grid;gap:.4rem}.stepper progress{width:100%;height:.55rem;accent-color:var(--color-gold)}.turnstile-placeholder{padding:1rem;border:var(--border);border-radius:var(--radius-sm);color:var(--color-muted)}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}

.page-kind-auth .page-shell {
  padding-block: clamp(1rem, 2.5vh, 2rem);
}

.auth-shell {
  width: min(100%, 40rem);
  min-height: calc(100svh - var(--header-height) - 4rem);
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.auth-card {
  width: 100%;
  padding: clamp(1.35rem, 3vw, 2.4rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--surface-glass);
  box-shadow: var(--shadow);
}

.auth-card::before {
  content: "";
  display: block;
  width: 4rem;
  height: 2px;
  margin-bottom: 1.25rem;
  background: var(--metal-gradient);
}

.auth-card h1 {
  margin-block: 0.55rem;
  background: var(--silver-gradient);
  background-clip: text;
  color: transparent;
}

.auth-card > .button {
  margin-block: 1.25rem 0.75rem;
}

.auth-card-login {
  max-width: 38rem;
  padding: clamp(1.25rem, 2.5vw, 2.15rem);
  text-align: center;
  backdrop-filter: blur(1.2rem);
}

.auth-card-login::before {
  width: 5.5rem;
  margin: 0 auto 0.9rem;
}

.auth-brand {
  display: grid;
  justify-items: center;
  gap: 0.25rem;
}

.auth-brand .auth-brand-lockup {
  width: clamp(10rem, 15vw, 13.25rem);
  height: auto;
  object-fit: contain;
}

.auth-brand .eyebrow {
  margin: 0;
}

.auth-card-login h1 {
  font-family: var(--font-body);
  font-size: clamp(2.15rem, 3.5vw, 3rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

.auth-intro {
  max-width: 34rem;
  margin: 0 auto 1.2rem;
  color: var(--color-muted);
}

.social-signin {
  display: grid;
  gap: 0.7rem;
}

.provider-button {
  min-height: 3.35rem;
  display: grid;
  grid-template-columns: 2.2rem 1fr 2.2rem;
  align-items: center;
  width: 100%;
  padding: 0.55rem 0.85rem;
  border: 1px solid var(--color-border);
  border-radius: var(--input-radius);
  background: var(--color-elevated);
  color: var(--color-text);
  font: inherit;
  font-weight: var(--weight-semibold);
  cursor: pointer;
  transition:
    transform var(--duration-fast) var(--ease),
    border-color var(--duration-fast) var(--ease),
    background var(--duration-fast) var(--ease);
}

.provider-button:hover {
  transform: translateY(-1px);
  border-color: var(--color-gold-bright);
  background: var(--color-surface);
}

.provider-button:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
}

.provider-mark {
  grid-column: 1;
  width: 2rem;
  height: 2rem;
  display: grid;
  place-items: center;
  border: 1px solid var(--color-border-secondary);
  border-radius: var(--radius-pill);
  font-size: 1.1rem;
  font-weight: 800;
}

.provider-mark-google {
  overflow: hidden;
  border: 0;
  background: var(--color-text);
}

.provider-mark-google img {
  width: 1.5rem;
  height: 1.5rem;
}

.provider-button > span:last-child {
  grid-column: 2;
}

.provider-mark-microsoft {
  grid-template-columns: repeat(2, 0.42rem);
  grid-template-rows: repeat(2, 0.42rem);
  gap: 0.12rem;
}

.provider-mark-microsoft i {
  display: block;
  width: 0.42rem;
  height: 0.42rem;
  background: currentColor;
}

.provider-mark-apple {
  font-family: Arial, sans-serif;
  font-size: 1.55rem;
}

.auth-divider {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 1.1rem 0;
  color: var(--color-muted);
  font-size: var(--step--1);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
}

.auth-divider::before,
.auth-divider::after {
  content: "";
  height: 1px;
  flex: 1;
  background: var(--color-border-secondary);
}

.email-signin {
  display: grid;
  gap: 0.65rem;
  text-align: left;
}

.email-signin > label:first-child {
  font-size: var(--step--1);
  font-weight: var(--weight-semibold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.email-signin input[type="email"] {
  min-height: 3.35rem;
}

.auth-remember {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  margin: 0.1rem 0 0.3rem;
  color: var(--color-muted);
  font-size: 0.88rem;
}

.auth-remember input {
  width: 1.15rem;
  height: 1.15rem;
  margin: 0;
  accent-color: var(--color-gold);
}

.auth-submit {
  width: 100%;
  margin: 0;
  min-height: 3.35rem;
}

.auth-links {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 0.85rem;
  font-size: 0.88rem;
}

.auth-security-note {
  max-width: 52ch;
  margin: 1rem auto 0;
}

.auth-card-login [data-auth-error] {
  margin-top: 0.8rem;
  text-align: left;
}

@media (max-width: 600px) {
  .page-kind-auth .page-shell {
    padding-block: 0.75rem 1.5rem;
  }

  .auth-shell {
    min-height: auto;
    padding: 0;
  }

  .auth-card-login {
    padding: 1.15rem;
  }

  .auth-brand .auth-brand-lockup {
    width: 9.5rem;
  }

  .auth-links {
    flex-direction: column;
  }

  .provider-button {
    grid-template-columns: 2rem 1fr 0.25rem;
  }
}

@media (min-width: 801px) and (max-height: 900px) {
  .page-kind-auth .page-shell {
    padding-block: 0.75rem 1.25rem;
  }

  .auth-shell {
    min-height: auto;
  }

  .auth-card-login {
    max-width: 36rem;
    padding: 1.25rem 1.75rem;
  }

  .auth-brand .auth-brand-lockup {
    width: 9.75rem;
  }

  .auth-card-login h1 {
    font-size: 2.35rem;
  }

  .auth-intro,
  .auth-security-note {
    font-size: 0.9rem;
  }
}

.crm-shell{display:grid;grid-template-columns:var(--crm-sidebar) 1fr;min-height:100vh}.crm-sidebar{border-right:var(--border);background:var(--color-surface)}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-muted{color:var(--color-muted)}.stack>*+*{margin-top:1rem}.section-heading{max-width:56rem}.spinner{width:2rem;aspect-ratio:1;border:3px solid var(--color-border);border-top-color:var(--color-gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}

html[data-theme="black-vault-premium-vault"]{color-scheme:dark;--bv-black-950:#050505;--bv-black-900:#0a0a0a;--bv-charcoal-850:#101112;--bv-charcoal-800:#151617;--bv-surface:#121212;--bv-surface-raised:#1a1b1d;--bv-gold-primary:#c5a852;--bv-gold-deep:#8f7123;--bv-gold-light:#e1c56b;--bv-gold-highlight:#f3d77d;--bv-silver-primary:#d6d8db;--bv-silver-mid:#aeb3b9;--bv-silver-dark:#777d84;--bv-white:#f1f1f1;--bv-border-gold:#6b5a2d;--bv-border-silver:#343638;--bv-shadow-black:#000000;--color-bg:var(--bv-black-950);--color-surface:var(--bv-surface);--color-elevated:var(--bv-surface-raised);--color-input:var(--bv-black-900);--color-border:var(--bv-border-gold);--color-border-secondary:var(--bv-border-silver);--color-gold:var(--bv-gold-primary);--color-gold-deep:var(--bv-gold-deep);--color-gold-bright:var(--bv-gold-light);--color-gold-highlight:var(--bv-gold-highlight);--color-on-gold:var(--bv-black-950);--color-text:var(--bv-white);--color-muted:var(--bv-silver-mid);--color-silver-dark:var(--bv-silver-dark);--color-success:#87c59a;--color-success-surface:#102319;--color-warning:#e1b96f;--color-error:#ff8b84;--color-error-surface:#2d1212;--color-info:#b8c6d8;--color-info-surface:#151b22;--color-focus:var(--bv-gold-highlight);--color-shadow:#000000b8;--surface-glass:#121212f0;--surface-soft:#0a0a0acc;--hero-scrim:#050505d9;--interior-scrim:#050505eb;--page-background:radial-gradient(circle at 15% 0%,#241f13 0%,transparent 30%),linear-gradient(145deg,var(--bv-black-950),var(--bv-black-900));--metal-gradient:linear-gradient(135deg,var(--bv-gold-highlight),var(--bv-gold-primary) 48%,var(--bv-gold-deep));--silver-gradient:linear-gradient(180deg,var(--bv-white),var(--bv-silver-mid));}

:root{--content:76rem;--form-width:42rem;--gutter:clamp(1rem, 4vw, 3rem);--section:clamp(3rem, 8vw, 7rem);--gap:clamp(1rem, 2.5vw, 2rem);--header-height:5rem;--radius-lg:0.8rem;--radius-sm:0.35rem;--input-radius:0.35rem;--border:1px solid var(--color-border);--program-columns:4;--step-0:1rem;--leading-body:1.65;--heading-scale:1.06;--tracking-wide:0.14em;--weight-semibold:650;--hero-height:44rem;--mobile-hero-size:3.2rem;--panel-opacity:0.94;--vault-intensity:0.92;--shadow-strength:0.72;--surface-glass:rgb(from var(--color-surface) r g b / var(--panel-opacity));--color-shadow:rgb(from var(--bv-shadow-black) r g b / var(--shadow-strength));--font-display:Georgia, 'Times New Roman', serif;--font-body:system-ui, -apple-system, 'Segoe UI', sans-serif}
html[data-theme="black-vault-premium-vault"]{--bv-black-950:#050505;--bv-black-900:#0a0a0a;--bv-charcoal-850:#121212;--bv-charcoal-800:#1a1b1d;--bv-gold-primary:#c5a852;--bv-gold-deep:#8f7123;--bv-gold-light:#e1c56b;--bv-gold-highlight:#f3d77d;--bv-silver-primary:#f1f1f1;--bv-silver-mid:#aeb3b9;--bv-silver-dark:#777d84;--bv-border-gold:#514a32;--bv-border-silver:#343638;--bv-shadow-black:#000000;--color-bg:var(--bv-black-950);--color-surface:var(--bv-charcoal-850);--color-elevated:var(--bv-charcoal-800);--color-gold:var(--bv-gold-primary);--color-gold-bright:var(--bv-gold-light);--color-text:var(--bv-silver-primary);--color-muted:var(--bv-silver-mid);--color-border:var(--bv-border-gold);--color-success:#87c59a;--color-warning:#e1b96f;--color-error:#ff8b84;--color-link:#d0b878;--color-focus:#f2d68e}
