:root {
  --font-family: "Orbitron", sans-serif;
  --font-size-base: 13.7px;
  --line-height-base: 1.38;

  --max-w: 1080px;
  --space-x: 0.45rem;
  --space-y: 0.87rem;
  --gap: 0.52rem;
  --space-section-y: calc(var(--space-y) * 2.4);
  --space-section-x: var(--space-x);
  --space-block: calc(var(--gap) * 1.5);
  --space-card: calc(var(--space-y) * .75);
  --font-size-sm: calc(var(--font-size-base) * .875);
  --font-size-md: var(--font-size-base);
  --font-size-lg: calc(var(--font-size-base) * 1.125);
  --font-size-h3: calc(var(--font-size-base) * 1.35);
  --font-size-h2: calc(var(--font-size-base) * 2);
  --font-size-h1: calc(var(--font-size-base) * 2.65);
  --motion-distance: calc(var(--gap) * var(--random-number));

  --radius-xl: 0.82rem;
  --radius-lg: 0.47rem;
  --radius-md: 0.3rem;
  --radius-sm: 0.16rem;

  --shadow-sm: 0 1px 3px rgba(0,0,0,0.04);
  --shadow-md: 0 2px 8px rgba(0,0,0,0.05);
  --shadow-lg: 0 14px 30px rgba(0,0,0,0.07);

  --overlay: rgba(10, 25, 47, 0.6);
  --anim-duration: 140ms;
  --anim-ease: cubic-bezier(0.22,1,0.36,1);
  --random-number: 1;

  --brand: #0A192F;
  --brand-contrast: #FFFFFF;
  --accent: #008080;
  --accent-contrast: #FFFFFF;

  --neutral-0: #FFFFFF;
  --neutral-100: #F5F7FA;
  --neutral-300: #CBD5E1;
  --neutral-600: #64748B;
  --neutral-800: #1E293B;
  --neutral-900: #0F172A;

  --page-bg: #FFFFFF;
  --page-fg: #1E293B;
  --muted-bg: #F0F4F8;
  --muted-fg: #1E293B;
  --card-bg: #FFFFFF;
  --card-fg: #1E293B;
  --card-border: #E2E8F0;
  --inverse-bg: #0A192F;
  --inverse-fg: #FFFFFF;
  --primary-bg: #0A192F;
  --primary-fg: #FFFFFF;
  --primary-hover: #1E3A5F;
  --accent-bg: #008080;
  --accent-fg: #FFFFFF;
  --accent-hover: #00695C;
  --gradient-hero-bg: linear-gradient(135deg, #0A192F 0%, #1E3A5F 100%);
  --gradient-hero-fg: #FFFFFF;
  --gradient-accent-bg: linear-gradient(135deg, #008080 0%, #004D40 100%);
  --gradient-accent-fg: #FFFFFF;

  --ring: #008080;

  --link: #0A192F;
  --link-hover: #008080;

  --btn-ghost-bg: transparent;
  --btn-ghost-bg-hover: color-mix(in srgb, currentColor 10%, transparent);
  --input-placeholder: rgba(255,255,255,0.55);
}
body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
*{box-sizing:border-box;}
a{color:inherit;}
.btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
.btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
.btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
.btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
.bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
.text-primary{color:var(--primary-bg)!important;}
.border-primary{border-color:var(--primary-bg)!important;}
.bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
.bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}

header {
    background-color: var(--page-bg);
    border-bottom: 1px solid var(--muted-bg);
    width: 100%;
  }
  .header-wrapper {
    max-width: var(--max-w);
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--space-y) var(--space-x);
    gap: var(--gap);
  }
  .logo {
    font-size: var(--font-size-h3);
    font-weight: 700;
    color: var(--page-fg);
    text-decoration: none;
    white-space: nowrap;
  }
  .nav-menu {
    display: flex;
    gap: var(--gap);
    align-items: center;
  }
  .nav-menu a {
    color: var(--page-fg);
    text-decoration: none;
    font-size: var(--font-size-md);
    padding: 0.25rem 0.5rem;
    transition: color var(--anim-duration) var(--anim-ease);
  }
  .nav-menu a:hover {
    color: var(--link-hover);
  }
  .cta-button {
    background-color: var(--primary-bg);
    color: var(--primary-fg);
    padding: 0.5rem 1.25rem;
    border-radius: var(--radius-md);
    text-decoration: none;
    font-size: var(--font-size-md);
    font-weight: 600;
    transition: background-color var(--anim-duration) var(--anim-ease);
    white-space: nowrap;
  }
  .cta-button:hover {
    background-color: var(--primary-hover);
  }
  .burger {
    display: none;
    flex-direction: column;
    gap: 4px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.25rem;
  }
  .burger span {
    display: block;
    width: 24px;
    height: 2px;
    background-color: var(--page-fg);
    border-radius: 2px;
    transition: all var(--anim-duration) var(--anim-ease);
  }
  .burger.active span:nth-child(1) {
    transform: rotate(45deg) translate(4px, 4px);
  }
  .burger.active span:nth-child(2) {
    opacity: 0;
  }
  .burger.active span:nth-child(3) {
    transform: rotate(-45deg) translate(4px, -4px);
  }
  @media (max-width: 767px) {
    .nav-menu {
      display: none;
      flex-direction: column;
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      background-color: var(--page-bg);
      border-bottom: 1px solid var(--muted-bg);
      padding: var(--space-y) var(--space-x);
      gap: var(--gap);
      z-index: 100;
    }
    .nav-menu.open {
      display: flex;
    }
    .cta-button {
      display: none;
    }
    .burger {
      display: flex;
    }
    .header-wrapper {
      position: relative;
    }
  }

footer {
    background-color: var(--page-bg, #ffffff);
    color: var(--page-fg, #1a1a1a);
    font-family: var(--font-family, 'Helvetica Neue', Arial, sans-serif);
    font-size: var(--font-size-base, 1rem);
    line-height: var(--line-height-base, 1.6);
    padding: var(--space-section-y, 3rem) var(--space-section-x, 1.5rem);
    border-top: 1px solid var(--card-border, #e0e0e0);
  }

  .footer-container {
    max-width: var(--max-w, 1200px);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: var(--gap, 1.5rem);
  }

  .footer-contact address {
    font-style: normal;
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap, 1rem);
    justify-content: center;
    align-items: center;
    padding: var(--space-block, 1rem) 0;
  }

  .contact-item {
    display: inline-block;
    font-size: var(--font-size-sm, 0.875rem);
    color: var(--muted-fg, #555555);
  }

  .contact-item.address {
    color: var(--page-fg, #1a1a1a);
  }

  .contact-item.phone,
  .contact-item.email {
    color: var(--link, #0056b3);
    text-decoration: none;
    transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
  }

  .contact-item.phone:hover,
  .contact-item.email:hover {
    color: var(--link-hover, #003d80);
    text-decoration: underline;
  }

  .footer-brand {
    text-align: center;
    padding: var(--space-block, 1rem) 0;
  }

  .logo {
    font-size: var(--font-size-h2, 1.75rem);
    font-weight: 700;
    color: var(--primary-bg, #1a3a5c);
    letter-spacing: 0.02em;
  }

  .footer-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--gap, 1.5rem);
    padding: var(--space-block, 1rem) 0;
  }

  .footer-nav a {
    color: var(--link, #0056b3);
    text-decoration: none;
    font-size: var(--font-size-md, 1rem);
    font-weight: 500;
    transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
  }

  .footer-nav a:hover {
    color: var(--link-hover, #003d80);
    text-decoration: underline;
  }

  .footer-legal {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--gap, 1.5rem);
    padding: var(--space-block, 0.75rem) 0;
    border-top: 1px solid var(--card-border, #e0e0e0);
    border-bottom: 1px solid var(--card-border, #e0e0e0);
  }

  .footer-legal a {
    color: var(--muted-fg, #555555);
    text-decoration: none;
    font-size: var(--font-size-sm, 0.875rem);
    transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
  }

  .footer-legal a:hover {
    color: var(--link-hover, #003d80);
    text-decoration: underline;
  }

  .footer-disclaimer {
    text-align: center;
    padding: var(--space-block, 0.75rem) 0;
  }

  .footer-disclaimer p {
    font-size: var(--font-size-sm, 0.875rem);
    color: var(--muted-fg, #555555);
    line-height: var(--line-height-base, 1.6);
    margin: 0;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }

  .footer-copyright {
    text-align: center;
    padding: var(--space-block, 0.5rem) 0;
  }

  .footer-copyright p {
    font-size: var(--font-size-sm, 0.875rem);
    color: var(--muted-fg, #555555);
    margin: 0;
  }

  @media (min-width: 768px) {
    .footer-container {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-template-rows: auto auto auto auto;
      gap: var(--gap, 1.5rem);
    }

    .footer-contact {
      grid-column: 1 / 2;
      grid-row: 1 / 2;
    }

    .footer-contact address {
      justify-content: flex-start;
    }

    .footer-brand {
      grid-column: 2 / 3;
      grid-row: 1 / 2;
      text-align: right;
    }

    .footer-nav {
      grid-column: 1 / 3;
      grid-row: 2 / 3;
      justify-content: center;
    }

    .footer-legal {
      grid-column: 1 / 3;
      grid-row: 3 / 4;
      justify-content: center;
    }

    .footer-disclaimer {
      grid-column: 1 / 3;
      grid-row: 4 / 5;
    }

    .footer-copyright {
      grid-column: 1 / 3;
      grid-row: 5 / 6;
    }
  }

  @media (min-width: 1024px) {
    .footer-container {
      grid-template-columns: 1fr 2fr 1fr;
      grid-template-rows: auto auto auto;
    }

    .footer-contact {
      grid-column: 1 / 2;
      grid-row: 1 / 2;
    }

    .footer-brand {
      grid-column: 2 / 3;
      grid-row: 1 / 2;
      text-align: center;
    }

    .footer-nav {
      grid-column: 3 / 4;
      grid-row: 1 / 2;
      justify-content: flex-end;
    }

    .footer-legal {
      grid-column: 1 / 4;
      grid-row: 2 / 3;
      justify-content: center;
    }

    .footer-disclaimer {
      grid-column: 1 / 4;
      grid-row: 3 / 4;
    }

    .footer-copyright {
      grid-column: 1 / 4;
      grid-row: 4 / 5;
    }
  }

.cookies{position:fixed;right:var(--space-section-x);bottom:var(--space-y);z-index:1200}
.cookies .shell{width:min(31rem,calc(100vw - var(--space-section-x)*2));padding:var(--space-y);border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:var(--radius-lg);background:#fff;color:#0a0f1a;box-shadow:var(--shadow-lg)}
.cookies strong{display:block;font-size:var(--font-size-h3);line-height:1.12}
.cookies p{margin:var(--space-card) 0 0;color:#2a3040;line-height:var(--line-height-base)}
.cookies .actions{display:flex;flex-wrap:wrap;gap:var(--space-card);margin-top:var(--space-y)}
.cookies .actions>*{min-width:0;flex:1 1 10rem}
.cookies button{border:1px solid color-mix(in srgb,currentColor 16%,transparent);border-radius:var(--radius-sm);background:#f7f7f7;color:#0a0f1a;font:inherit;padding:var(--space-card) var(--space-y);cursor:pointer}
.cookies button[data-choice="accept"]{background:var(--primary-bg);color:var(--primary-fg);border-color:var(--primary-bg)}

.intro_strip{padding:calc(var(--space-y)*3.2) var(--space-x);background:var(--neutral-900);color:var(--neutral-0);}
.intro_strip .nightledger-wrap{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.25fr .75fr;gap:var(--gap);align-items:end;}.intro_strip h1{margin:0;font-size:clamp(2.6rem,7vw,6.2rem);line-height:.92;}.intro_strip .aside{border-left:1px solid rgba(255,255,255,.24);padding-left:1rem;}.intro_strip span{display:block;color:var(--neutral-300);}.intro_strip .nav{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.1rem;}.intro_strip a{color:var(--accent-fg);background:var(--accent-bg);text-decoration:none;border-radius:999px;padding:.72rem .95rem;font-weight:700;}
@media (max-width:760px){.intro_strip .nightledger-wrap{grid-template-columns:1fr;}.intro_strip .aside{border-left:0;padding-left:0;}}

.brand---bio-profile {
  background: var(--page-bg);
  color: var(--page-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.brand---bio-profile .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .58fr) minmax(14rem, .34fr);
  gap: var(--gap);
}
.brand---bio-profile h2,
.brand---bio-profile h3,
.brand---bio-profile p { margin: 0; }
.brand---bio-profile h2 { font-size: var(--font-size-h2); line-height: 1.08; }
.brand---bio-profile h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.brand---bio-profile p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.brand---bio-profile .copy {
  display: grid;
  gap: var(--space-y);
  align-content: center;
}
.brand---bio-profile .item span { color: var(--muted-fg); }
.brand---bio-profile .note {
  display: grid;
  gap: var(--space-y);
  padding: var(--space-y);
  border-radius: var(--radius-xl);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}
.brand---bio-profile .list {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-card);
}
.brand---bio-profile .item {
  min-height: 13rem;
  display: grid;
  gap: var(--space-card);
  padding: var(--space-y);
  border-radius: var(--radius-lg);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
}
@media (max-width: 820px) {
  .brand---bio-profile .wrap,
  .brand---bio-profile .list { grid-template-columns: 1fr; }
}

.minimal_-privacy-safety {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
  overflow: hidden;
}
.minimal_-privacy-safety .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
}
.minimal_-privacy-safety h2,
.minimal_-privacy-safety h3,
.minimal_-privacy-safety p { margin: 0; }
.minimal_-privacy-safety h2 { font-size: var(--font-size-h2); line-height: 1.08; }
.minimal_-privacy-safety h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.minimal_-privacy-safety p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.minimal_-privacy-safety a { color: inherit; text-decoration: none; }
.minimal_-privacy-safety .tone { background: var(--gradient-accent-bg); color: var(--gradient-accent-fg); }
.minimal_-privacy-safety .surface { background: color-mix(in srgb, var(--card-bg) 84%, var(--accent-bg) 16%); color: var(--card-fg); border: 1px solid var(--card-border); }
.minimal_-privacy-safety .muted { color: var(--muted-fg); }
.minimal_-privacy-safety .action {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  min-height: 2.65rem;
  padding: calc(var(--space-card) * .72) var(--space-y);
  border-radius: var(--radius-md);
  background: var(--primary-bg);
  color: var(--primary-fg);
  transition: transform var(--anim-duration) var(--anim-ease), box-shadow var(--anim-duration) var(--anim-ease);
}
.minimal_-privacy-safety .action:hover { transform: translateY(-2px); box-shadow: var(--shadow-sm); }
.minimal_-privacy-safety [data-soft] {
  animation: securitysignalmosaicIn calc(var(--anim-duration) * 2.6) var(--anim-ease) both;
  animation-delay: var(--d, 0ms);
}
@keyframes securitysignalmosaicIn {
  from { opacity: .18; transform: translateY(calc(var(--motion-distance) * .18)); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 760px) {
  .minimal_-privacy-safety h2 { font-size: clamp(var(--font-size-h3), 11vw, var(--font-size-h2)); }
}
.minimal_-privacy-safety .signal-mosaic { display: grid; gap: var(--gap); }
.minimal_-privacy-safety .signal-banner { border-radius: var(--radius-xl); padding: var(--space-block); display: flex; flex-wrap: wrap; gap: var(--gap); align-items: end; }
.minimal_-privacy-safety .signal-banner>* { flex: 1 1 min(100%,16rem); }
.minimal_-privacy-safety .signal-pieces { display: flex; flex-wrap: wrap; gap: var(--space-card); }
.minimal_-privacy-safety .signal-piece { flex: 1 1 min(100%,18rem); border-radius: var(--radius-md); padding: var(--space-y); min-height: 13rem; display: flex; flex-direction: column; gap: var(--space-card); }
.minimal_-privacy-safety .signal-piece:nth-child(3n+1) { flex-basis: min(100%,24rem); }
.minimal_-privacy-safety .signal-piece:nth-child(4n) { min-height: 16rem; }
.minimal_-privacy-safety .signal-piece div { display: flex; justify-content: space-between; gap: var(--space-card); color: var(--muted-fg); }
@media (max-width: 900px) { .minimal_-privacy-safety .signal-banner, .minimal_-privacy-safety .signal-pieces { display: block; } .minimal_-privacy-safety .signal-banner>*+*, .minimal_-privacy-safety .signal-piece+.signal-piece { margin-top: var(--space-card); } .minimal_-privacy-safety .signal-piece { min-height: auto; } }

.wide___pathway{padding:var(--space-section-y) var(--space-section-x);background:var(--muted-bg);color:var(--muted-fg)}
.wide___pathway .wrap{max-width:var(--max-w);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--gap);background:var(--card-bg);color:var(--card-fg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:var(--gap);box-shadow:var(--shadow-sm)}
.wide___pathway h2{margin:0;font-size:var(--font-size-h2);line-height:1.08}
.wide___pathway p{max-width:54rem;margin:var(--space-card) 0 0;color:var(--muted-fg);line-height:var(--line-height-base)}
.wide___pathway a{flex:0 0 auto;border:1px solid currentColor;border-radius:var(--radius-sm);padding:var(--space-card) var(--space-y);color:var(--primary-bg);background:var(--primary-bg);color:var(--primary-fg);text-decoration:none;transition:background var(--anim-duration) var(--anim-ease)}
.wide___pathway a:hover{background:var(--primary-hover)}
@media(max-width:720px){.wide___pathway .wrap{display:block}.wide___pathway a{display:inline-flex;margin-top:var(--space-y)}}

.screen_-answer-bank {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
  overflow: hidden;
}
.screen_-answer-bank .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--space-block);
}
.screen_-answer-bank h2,
.screen_-answer-bank h3,
.screen_-answer-bank p { margin: 0; }
.screen_-answer-bank h2 { font-size: var(--font-size-h1); line-height: 1.02; }
.screen_-answer-bank h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.screen_-answer-bank p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.screen_-answer-bank .headline {
  max-width: 76rem;
  display: flex;
  flex-direction: column;
  gap: var(--space-y);
}
.screen_-answer-bank .item span { color: var(--muted-fg); }
.screen_-answer-bank .bar {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  align-items: center;
  padding: var(--space-y);
  border-radius: var(--radius-xl);
  background: var(--gradient-accent-bg);
  color: var(--gradient-accent-fg);
}
.screen_-answer-bank .bar strong { font-size: var(--font-size-h3); }
.screen_-answer-bank .scroll {
  display: flex;
  gap: var(--space-card);
  overflow-x: auto;
  scroll-snap-type: x proximity;
  padding-bottom: var(--space-card);
}
.screen_-answer-bank .item {
  flex: 0 0 min(17rem, 78vw);
  scroll-snap-align: start;
  min-height: 15rem;
  display: flex;
  flex-direction: column;
  align-content: space-between;
  gap: var(--space-y);
  padding: var(--space-y);
  border-radius: var(--radius-lg);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
  text-decoration: none;
}
@media (max-width: 760px) {
  .screen_-answer-bank h2 { font-size: clamp(var(--font-size-h2), 13vw, var(--font-size-h1)); }
  .screen_-answer-bank .bar { display: block; }
  .screen_-answer-bank .bar p { margin-top: var(--space-card); }
}

.badge__account {
  background: var(--page-bg);
  color: var(--page-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.badge__account .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .38fr) minmax(0, 1fr);
  gap: var(--gap);
}
.badge__account h2,
.badge__account h3,
.badge__account p { margin: 0; }
.badge__account h2 { font-size: var(--font-size-h2); line-height: 1.08; }
.badge__account h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.badge__account p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.badge__account .caption {
  display: grid;
  gap: var(--space-y);
  align-content: start;
}
.badge__account .line span { color: var(--muted-fg); }
.badge__account .ledger {
  display: grid;
  border-top: 1px solid var(--card-border);
}
.badge__account .line {
  display: grid;
  grid-template-columns: minmax(5rem, .14fr) minmax(10rem, .32fr) minmax(0, 1fr);
  gap: var(--space-y);
  padding: var(--space-y) 0;
  border-bottom: 1px solid var(--card-border);
}
.badge__account .foot {
  grid-column: 1 / -1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--gap);
  padding: var(--space-y);
  border-radius: var(--radius-lg);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
}
.badge__account .foot a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}
@media (max-width: 800px) {
  .badge__account .wrap,
  .badge__account .line { grid-template-columns: 1fr; }
  .badge__account .foot { flex-direction: column; align-items: flex-start; }
}

.detail__routine {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
  overflow: hidden;
}
.detail__routine .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: grid;
  gap: var(--space-block);
}
.detail__routine h2,
.detail__routine h3,
.detail__routine p { margin: 0; }
.detail__routine h2 { font-size: var(--font-size-h1); line-height: 1.02; }
.detail__routine h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.detail__routine p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.detail__routine .headline {
  max-width: 74rem;
  display: grid;
  gap: var(--space-y);
}
.detail__routine .headline span { color: var(--muted-fg); }
.detail__routine .ribbon {
  display: grid;
  grid-template-columns: minmax(10rem, .24fr) minmax(0, 1fr);
  gap: var(--gap);
  padding: var(--space-y);
  border-radius: var(--radius-xl);
  background: var(--gradient-accent-bg);
  color: var(--gradient-accent-fg);
}
.detail__routine .ribbon strong { font-size: var(--font-size-h3); }
.detail__routine .snap {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(17rem, .32fr);
  gap: var(--space-card);
  overflow-x: auto;
  scroll-snap-type: x proximity;
  padding-bottom: var(--space-card);
}
.detail__routine .surface {
  min-height: 16rem;
  scroll-snap-align: start;
  display: grid;
  align-content: space-between;
  gap: var(--space-y);
  padding: var(--space-y);
  border-radius: var(--radius-lg);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
  text-decoration: none;
  transition: transform var(--anim-duration) var(--anim-ease);
}
.detail__routine .surface:hover { transform: translateY(calc(var(--space-card) * -.35)); }
.detail__routine .surface span { color: var(--muted-fg); }
@media (max-width: 760px) {
  .detail__routine h2 { font-size: clamp(var(--font-size-h2), 13vw, var(--font-size-h1)); }
  .detail__routine .ribbon { grid-template-columns: 1fr; }
}

.user-settings---stamp {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
  overflow: hidden;
}
.user-settings---stamp .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
}
.user-settings---stamp h2,
.user-settings---stamp h3,
.user-settings---stamp p { margin: 0; }
.user-settings---stamp h2 { font-size: var(--font-size-h2); line-height: 1.08; }
.user-settings---stamp h3 { font-size: var(--font-size-h3); line-height: 1.16; }
.user-settings---stamp p { font-size: var(--font-size-md); line-height: var(--line-height-base); }
.user-settings---stamp a { color: inherit; text-decoration: none; }
.user-settings---stamp .tone { background: var(--gradient-accent-bg); color: var(--gradient-accent-fg); }
.user-settings---stamp .surface { background: color-mix(in srgb, var(--card-bg) 84%, var(--accent-bg) 16%); color: var(--card-fg); border: 1px solid var(--card-border); }
.user-settings---stamp .muted { color: var(--muted-fg); }
.user-settings---stamp .action {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  min-height: 2.65rem;
  padding: calc(var(--space-card) * .72) var(--space-y);
  border-radius: var(--radius-md);
  background: var(--primary-bg);
  color: var(--primary-fg);
  transition: transform var(--anim-duration) var(--anim-ease), box-shadow var(--anim-duration) var(--anim-ease);
}
.user-settings---stamp .action:hover { transform: translateY(-2px); box-shadow: var(--shadow-sm); }
.user-settings---stamp [data-soft] {
  animation: settingstogglematrixIn calc(var(--anim-duration) * 2.6) var(--anim-ease) both;
  animation-delay: var(--d, 0ms);
}
@keyframes settingstogglematrixIn {
  from { opacity: .18; transform: translateY(calc(var(--motion-distance) * .18)); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 760px) {
  .user-settings---stamp h2 { font-size: clamp(var(--font-size-h3), 11vw, var(--font-size-h2)); }
}
.user-settings---stamp .toggle-matrix { display: flex; gap: var(--gap); align-items: stretch; }
.user-settings---stamp .toggle-lead { flex: 0 1 26rem; }
.user-settings---stamp .toggle-lead { border-radius: var(--radius-xl); padding: var(--space-block); display: grid; align-content: space-between; gap: var(--space-block); min-height: clamp(19rem, 42vw, 34rem); }
.user-settings---stamp .toggle-lead span { width: fit-content; padding: calc(var(--space-card) * .45) var(--space-card); border-radius: var(--radius-sm); background: color-mix(in srgb, currentColor 12%, transparent); }
.user-settings---stamp .toggle-deck { flex: 1 1 30rem; display: flex; flex-wrap: wrap; gap: var(--space-card); }
.user-settings---stamp .toggle-cell { flex: 1 1 min(100%,18rem); }
.user-settings---stamp .toggle-cell { border-radius: var(--radius-lg); padding: var(--space-y); min-height: 12rem; display: grid; gap: var(--space-card); align-content: start; }
.user-settings---stamp .toggle-cell:nth-child(2n) { margin-top: var(--space-y); }
.user-settings---stamp .toggle-cell b { color: var(--muted-fg); font-size: var(--font-size-sm); }
.user-settings---stamp .action { align-self: flex-start; margin-left: auto; }
@media (max-width: 780px) { .user-settings---stamp .toggle-matrix { display: block; } .user-settings---stamp .toggle-deck { display: block; margin-top: var(--space-block); } .user-settings---stamp .toggle-lead { min-height: auto; } .user-settings---stamp .toggle-cell:nth-child(2n) { margin-top: 0; } .user-settings---stamp .toggle-cell+.toggle-cell { margin-top: var(--space-card); } .user-settings---stamp .action { margin-left: 0; } }

.surface_details{padding:var(--space-section-y) var(--space-section-x);background:var(--page-bg);color:var(--page-fg)}
.surface_details .wrap{max-width:var(--max-w);margin:0 auto}
.surface_details h2{max-width:15ch;margin:0;font-size:var(--font-size-h2);line-height:1.08}
.surface_details .context{max-width:40rem;margin:var(--space-y) 0 var(--space-block);color:var(--muted-fg);line-height:var(--line-height-base)}
.surface_details .notes>div{max-width:48rem;padding:var(--space-y) 0}
.surface_details .notes>div:nth-child(even){margin-left:auto}
.surface_details h3{margin:0;font-size:var(--font-size-h3);line-height:1.18}
.surface_details .notes p{margin:var(--space-card) 0 0;color:var(--muted-fg);line-height:var(--line-height-base)}
@media(max-width:720px){.surface_details .notes>div:nth-child(even){margin-left:0}}

.choices_-frame {
  background: var(--gradient-hero-bg);
  color: var(--gradient-hero-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.choices_-frame .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: flex;
  gap: var(--gap);
  align-items: flex-start;
}
.choices_-frame h2,
.choices_-frame p { margin: 0; }
.choices_-frame .lead {
  flex: 0 0 min(26rem, 36%);
  display: flex;
  flex-direction: column;
  gap: var(--space-y);
}
.choices_-frame h2 {
  font-size: var(--font-size-h1);
  line-height: 1;
}
.choices_-frame .lead p {
  color: var(--muted-fg);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-base);
}
.choices_-frame .rail {
  flex: 1 1 0;
  display: flex;
  gap: var(--space-card);
  overflow-x: auto;
  padding-bottom: var(--space-card);
  scroll-snap-type: x mandatory;
}
.choices_-frame .item {
  flex: 0 0 min(24rem, 82vw);
  min-height: 15rem;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--space-y);
  padding: var(--space-y);
  border-radius: var(--radius-lg);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
  text-decoration: none;
}
.choices_-frame strong {
  font-size: var(--font-size-h3);
  line-height: 1.14;
}
.choices_-frame span {
  color: var(--muted-fg);
  line-height: var(--line-height-base);
}
@media (max-width: 840px) {
  .choices_-frame .wrap { display: block; }
  .choices_-frame .rail { margin-top: var(--space-block); }
}

.inquiry-entry{padding:var(--space-section-y) var(--space-section-x);background:#f5f5f5;color:#0a0f1a}
.inquiry-entry .wrap{max-width:var(--max-w);margin:0 auto}
.inquiry-entry .intro{display:flex;justify-content:space-between;gap:var(--gap);align-items:flex-start;margin-bottom:var(--space-block)}
.inquiry-entry h2{margin:0;max-width:16ch;font-size:var(--font-size-h2);line-height:1.08}
.inquiry-entry .intro p{max-width:44rem;margin:0;color:var(--neutral-600);font-size:var(--font-size-lg);line-height:var(--line-height-base)}
.inquiry-entry .flow{display:flex;flex-wrap:wrap;gap:var(--space-block)}
.inquiry-entry .flow>*{min-width:0;flex:1 1 17rem}
.inquiry-entry ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-y)}
.inquiry-entry li{background:#fff;color:#0a0f1a;border-radius:var(--radius-md);padding:var(--space-y);box-shadow:var(--shadow-sm)}
.inquiry-entry li span{font-size:var(--font-size-sm);color:var(--neutral-600)}
.inquiry-entry li p{margin:var(--space-card) 0 0;line-height:var(--line-height-base)}
.inquiry-entry form{display:flex;flex-wrap:wrap;gap:var(--space-y)}
.inquiry-entry form>*{min-width:0;flex:1 1 20rem}
.inquiry-entry label span{display:block;margin-bottom:var(--space-card);font-size:var(--font-size-sm);color:var(--neutral-600)}
.inquiry-entry input{width:100%;border:0;border-radius:var(--radius-md);background:#fff;color:#0a0f1a;font:inherit;padding:var(--space-card);outline:1px solid color-mix(in srgb,var(--inverse-fg) 12%,transparent)}
.inquiry-entry input:focus{outline-color:var(--ring)}
.inquiry-entry .submit{flex:2 1 26rem;display:flex;align-items:center;gap:var(--gap)}
.inquiry-entry button{border:0;border-radius:var(--radius-sm);background:var(--primary-bg);color:var(--primary-fg);font:inherit;padding:var(--space-card) var(--space-y);cursor:pointer}
.inquiry-entry small{font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--neutral-600)}
@media(max-width:820px){.inquiry-entry .intro,.inquiry-entry .flow,.inquiry-entry form{display:block}.inquiry-entry .intro p,.inquiry-entry form,.inquiry-entry label,.inquiry-entry .submit{margin-top:var(--space-y)}.inquiry-entry .submit{display:block}.inquiry-entry small{display:block;margin-top:var(--space-card)}}

.contact--matrix {
  overflow: hidden;
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--primary-bg);
  color: var(--primary-fg);
}
.contact--matrix .wrap {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-y) var(--gap);
  max-width: var(--max-w);
  margin: 0 auto;
}
.contact--matrix h2 {
  grid-column: 1 / 8;
  margin: 0;
  font-size: var(--font-size-h1);
  line-height: 1.02;
}
.contact--matrix .summary {
  grid-column: 9 / -1;
  align-self: end;
  margin: 0;
  font-size: var(--font-size-lg);
  line-height: var(--line-height-base);
}
.contact--matrix .phone,
.contact--matrix .email,
.contact--matrix .address,
.contact--matrix .hours {
  padding: var(--space-y) 0;
  border-top: 1px solid color-mix(in srgb, currentColor 38%, transparent);
  animation: contactCatalogRise calc(var(--anim-duration) * 2.6) var(--anim-ease) both;
}
.contact--matrix .phone {
  grid-column: 1 / 7;
  margin-top: var(--space-block);
}
.contact--matrix .address {
  grid-column: 8 / -1;
  margin-top: var(--space-y);
  animation-delay: calc(var(--anim-duration) * .35);
}
.contact--matrix .email {
  grid-column: 3 / 9;
  animation-delay: calc(var(--anim-duration) * .7);
}
.contact--matrix .hours {
  grid-column: 9 / -1;
  animation-delay: calc(var(--anim-duration) * 1.05);
}
.contact--matrix .phone,
.contact--matrix .email {
  color: inherit;
  text-decoration: none;
}
.contact--matrix span {
  display: block;
  margin-bottom: var(--space-card);
  font-size: var(--font-size-sm);
  opacity: .68;
}
.contact--matrix strong {
  font-size: var(--font-size-h3);
  overflow-wrap: anywhere;
}
.contact--matrix .address p,
.contact--matrix .hours p {
  margin: 0;
  line-height: var(--line-height-base);
}
.contact--matrix .channels {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  padding-top: var(--space-y);
  border-top: 1px solid color-mix(in srgb, currentColor 38%, transparent);
}
.contact--matrix .channels a {
  color: inherit;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.contact--matrix .channels a span {
  display: inline;
  margin: 0 0 0 var(--space-card);
}
@keyframes contactCatalogRise {
  from { opacity: 0; transform: translateY(calc(var(--motion-distance) * .12)); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 760px) {
  .contact--matrix .wrap {
    display: block;
  }
  .contact--matrix .summary,
  .contact--matrix .phone,
  .contact--matrix .address,
  .contact--matrix .email,
  .contact--matrix .hours {
    margin-top: var(--space-y);
  }
  .contact--matrix .channels {
    margin-top: var(--space-y);
  }
}
@media (prefers-reduced-motion: reduce) {
  .contact--matrix .phone,
  .contact--matrix .email,
  .contact--matrix .address,
  .contact--matrix .hours { animation: none; }
}

body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
  *{box-sizing:border-box;}
  a{color:inherit;}
  .btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
  .btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
  .btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
  .btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .text-primary{color:var(--primary-bg)!important;}
  .border-primary{border-color:var(--primary-bg)!important;}
  .bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
  .bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}
.privacy-list--table {
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.privacy-list--table .wrap {
  max-width: var(--max-w);
  margin: 0 auto;
}

.privacy-list--table .top {
  max-width: 56rem;
  margin-bottom: var(--space-block);
}

.privacy-list--table .top span {
  color: var(--accent-bg);
  font-size: var(--font-size-sm);
}

.privacy-list--table h2 {
  margin: var(--space-card) 0 0;
  font-size: var(--font-size-h2);
  line-height: 1.08;
}

.privacy-list--table .ledger {
  border-top: 1px solid var(--neutral-800);
}

.privacy-list--table .row {
  display: grid;
  grid-template-columns: minmax(10rem, .45fr) minmax(0, 1fr) minmax(7rem, .25fr);
  gap: var(--space-card);
  padding: var(--space-card) 0;
  border-bottom: 1px solid var(--neutral-800);
}

.privacy-list--table .row strong {
  font-size: var(--font-size-h3);
}

.privacy-list--table .row p {
  margin: 0;
  color: var(--neutral-300);
}

.privacy-list--table .row small {
  color: var(--neutral-600);
  font-size: var(--font-size-sm);
}

@media (max-width: 760px) {
  .privacy-list--table .row {
    grid-template-columns: 1fr;
  }
}

body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
  *{box-sizing:border-box;}
  a{color:inherit;}
  .btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
  .btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
  .btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
  .btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .text-primary{color:var(--primary-bg)!important;}
  .border-primary{border-color:var(--primary-bg)!important;}
  .bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
  .bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}

.conditions-tint{padding:var(--space-section-y) var(--space-section-x);background:var(--inverse-bg);color:var(--inverse-fg)}
.conditions-tint .copy{max-width:min(var(--max-w),62rem);margin:0 auto}
.conditions-tint h2{margin:0;font-size:var(--font-size-h1);line-height:1.05}
.conditions-tint .lead{margin:var(--space-y) 0 var(--space-block);font-size:var(--font-size-lg);color:color-mix(in srgb,currentColor 72%,transparent)}
.conditions-tint ul{margin:0;padding-left:var(--gap)}
.conditions-tint li{padding:0 0 var(--gap)}
.conditions-tint li::marker{color:color-mix(in srgb,currentColor 58%,transparent)}
.conditions-tint h3{margin:0 0 var(--space-card);font-size:var(--font-size-h3);line-height:1.2}
.conditions-tint li p{margin:0;color:color-mix(in srgb,currentColor 72%,transparent)}

.detail--finish {
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.detail--finish .wrap {
  max-width: min(var(--max-w), 50rem);
  margin: 0 auto;
}

.detail--finish h2 {
  margin: 0;
  font-size: var(--font-size-h2);
  line-height: 1.08;
}

.detail--finish .wrap > p {
  margin: var(--space-card) 0 var(--space-block);
  color: var(--neutral-300);
  font-size: var(--font-size-lg);
}

.detail--finish .note {
  padding-top: var(--space-card);
  border-top: 1px solid var(--neutral-800);
}

.detail--finish .note strong,
.detail--finish .note span {
  display: block;
}

.detail--finish .note strong {
  font-size: var(--font-size-h3);
}

.detail--finish .note span {
  margin-top: calc(var(--space-card) * .5);
  color: var(--neutral-300);
}

.key---return-page{position:relative;overflow:hidden;padding:var(--space-section-y) var(--space-section-x);background:var(--accent-bg);color:var(--accent-fg)}
.key---return-page:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 14%,color-mix(in srgb,currentColor 7%,transparent) 14% 14.1%);animation:nfFloor calc(var(--anim-duration)*42) linear infinite alternate}
.key---return-page .wrap{position:relative;z-index:1;max-width:var(--max-w);margin:0 auto}
.key---return-page p{max-width:34rem;margin:0;font-size:var(--font-size-lg);line-height:var(--line-height-base)}
.key---return-page h1{max-width:14ch;margin:var(--space-block) 0;font-size:var(--font-size-h1);line-height:1}
.key---return-page a{align-self:flex-end;color:inherit;font-size:var(--font-size-lg);text-underline-offset:.24em}
@keyframes nfFloor{from{transform:translateX(-2%)}to{transform:translateX(2%)}}
@media(max-width:560px){.key---return-page a{align-self:flex-start}}
@media(prefers-reduced-motion:reduce){.key---return-page:after{animation:none}}