/* TRIM VISUALS / legal and FAQ pages — uses existing Geist asset + brand palette */
html { color-scheme: dark; }
body.legal-page {
  margin:0;min-height:100vh;
  color:#f6f7f6;
  background:radial-gradient(ellipse at 75% -12%,rgba(199,255,0,.11),transparent 43%),
    radial-gradient(ellipse at 5% 60%,rgba(255,255,255,.025),transparent 42%),#08090a;
  font-family:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.legal-page::before {display:none}
.legal-page a:focus-visible,.legal-page summary:focus-visible {outline:2px solid #c7ff00;outline-offset:5px}
.legal-wrap {width:min(1210px,calc(100% - 80px));margin-inline:auto;position:relative}
.legal-topbar {display:flex;align-items:center;justify-content:space-between;gap:15px;padding:31px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.legal-topbar .wordmark {font-size:clamp(1.2rem,2.5vw,1.65rem);white-space:nowrap;gap:6px;letter-spacing:-.07em;color:#fff}
.legal-topbar .brand-mark {font-size:.86em;color:#c7ff00}
.legal-back {font-size:.76rem;color:#dbdee1;border:1px solid rgba(255,255,255,.17);padding:11px 16px;border-radius:99px;white-space:nowrap;transition:color .2s,border-color .2s,background .2s}
.legal-back:hover {color:#c7ff00;border-color:rgba(199,255,0,.45);background:rgba(199,255,0,.04)}
.legal-hero {padding:clamp(65px,9vw,128px) 0 clamp(45px,7vw,80px);max-width:930px}
.legal-kicker {display:flex;align-items:center;gap:13px;color:#c7ff00;font-size:.68rem;letter-spacing:.18em;font-weight:750}
.legal-kicker:before {content:"";width:28px;height:1px;background:#c7ff00}
.legal-hero h1 {font-size:clamp(3.45rem,8.5vw,7.8rem);line-height:1.01;font-weight:700;letter-spacing:-.08em;margin:29px 0 25px;max-width:900px}
.legal-hero h1 em {font-style:normal;color:#c7ff00;text-shadow:0 0 65px rgba(199,255,0,.11)}
.legal-hero .legal-lead {max-width:700px;color:#bcc0c5;font-size:clamp(1rem,1.55vw,1.19rem);line-height:1.85}
.legal-date {display:inline-flex;gap:11px;align-items:center;margin-top:32px;color:#90969c;font-size:.75rem;letter-spacing:.03em}
.legal-date:before {content:"✳";color:#c7ff00;font-size:1rem}
.legal-content {display:grid;grid-template-columns:210px minmax(0,1fr);gap:clamp(40px,6.5vw,115px);border-top:1px solid rgba(255,255,255,.11);padding:48px 0 135px}
.legal-aside {align-self:start;position:sticky;top:24px}
.legal-aside-label {display:block;font-size:.64rem;letter-spacing:.19em;color:#858d92;font-weight:700;margin-bottom:20px}
.legal-aside nav {display:flex;flex-direction:column;gap:14px}
.legal-aside nav a {font-size:.8rem;color:#a9afb5;line-height:1.5;transition:color .2s}
.legal-aside nav a:hover {color:#c7ff00}
.legal-doc {min-width:0}
.legal-section {padding:0 0 35px;margin:0 0 35px;border-bottom:1px solid rgba(255,255,255,.10);scroll-margin-top:28px}
.legal-section:last-child {border-bottom:0}
.legal-num {color:#b5ec3a;font-size:.68rem;font-weight:700;letter-spacing:.12em;display:block;margin-bottom:11px}
.legal-section h2 {font-size:clamp(1.35rem,2.3vw,2.05rem);font-weight:670;letter-spacing:-.045em;margin:0 0 16px;line-height:1.23}
.legal-section p,.legal-section li {color:#b8bec3;line-height:1.88;font-size:.96rem}
.legal-section p+p {margin-top:13px}
.legal-section strong {color:#f3f5f4;font-weight:650}
.legal-section ul {margin:12px 0 0;padding-left:19px}
.legal-section li+li {margin-top:9px}
.legal-section a,.legal-note a {color:#d8ff78;text-decoration:underline;text-underline-offset:4px}
.legal-note {margin:38px 0 0;border:1px solid rgba(199,255,0,.22);border-radius:19px;padding:24px 25px;background:linear-gradient(130deg,rgba(199,255,0,.085),rgba(255,255,255,.015));color:#c8ced0;font-size:.91rem;line-height:1.85}
.legal-note b {color:#f3f4f4}
.legal-footer {padding:25px 0 48px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;color:#989ea2}
.legal-footer p {color:#989ea2;font-size:.75rem}
.legal-footer nav {display:flex;gap:9px 18px;flex-wrap:wrap}
.legal-footer nav a {font-size:.74rem;color:#d2d5d6;transition:color .2s}
.legal-footer nav a:hover {color:#c7ff00}
.faq-stack {display:grid;gap:11px}
.faq-item {border:1px solid rgba(255,255,255,.12);border-radius:17px;overflow:hidden;background:linear-gradient(125deg,rgba(255,255,255,.055),rgba(255,255,255,.014));transition:border-color .2s}
.faq-item[open] {border-color:rgba(199,255,0,.31)}
.faq-item summary {list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:22px 25px;color:#f4f5f3;font-size:1rem;font-weight:650;line-height:1.45}
.faq-item summary::-webkit-details-marker {display:none}
.faq-item summary:after {content:"+";display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;font-size:1.5rem;font-weight:300;color:#c7ff00;transition:transform .2s}
.faq-item[open] summary:after {content:"−"}
.faq-answer {padding:0 25px 24px;color:#b8bec3;font-size:.93rem;line-height:1.8}
.faq-answer a {color:#d8ff78;text-decoration:underline;text-underline-offset:3px}
.legal-contact-card {padding:30px 32px;margin-top:35px;border:1px solid rgba(199,255,0,.19);border-radius:22px;background:radial-gradient(ellipse at 100% 0%,rgba(199,255,0,.12),transparent 62%),linear-gradient(125deg,rgba(255,255,255,.07),rgba(255,255,255,.018))}
.legal-contact-card .legal-contact-overline {color:#c7ff00;letter-spacing:.14em;font-size:.65rem;font-weight:700}
.legal-contact-card h2 {font-size:clamp(1.4rem,3vw,2rem);margin:16px 0 9px;letter-spacing:-.045em}
.legal-contact-card p {color:#bbc0c3;font-size:.94rem;line-height:1.75;max-width:530px}
.legal-contact-card a {display:inline-flex;gap:12px;align-items:center;margin-top:23px;padding-bottom:8px;border-bottom:1px solid rgba(199,255,0,.47);color:#c7ff00;font-size:.76rem;letter-spacing:.08em;font-weight:750}
@media(max-width:820px) {.legal-content {grid-template-columns:1fr;gap:29px;padding-top:35px}.legal-aside {position:static}.legal-aside nav {display:flex;flex-direction:row;flex-wrap:wrap;gap:10px}.legal-aside nav a {border:1px solid rgba(255,255,255,.12);padding:7px 10px;border-radius:999px;font-size:.74rem}.legal-hero {padding:68px 0 45px}}
@media(max-width:570px) {.legal-wrap {width:calc(100% - 36px)}.legal-topbar {padding:22px 0}.legal-topbar .wordmark {font-size:1.11rem}.legal-back {padding:9px 12px;font-size:.72rem}.legal-hero h1 {font-size:clamp(2.85rem,11.5vw,4.2rem)}.legal-section p,.legal-section li {font-size:.91rem}.legal-content {padding-bottom:78px}.legal-footer {padding-bottom:95px}.faq-item summary {padding:19px 18px;font-size:.94rem}.faq-answer {padding:0 18px 21px}.legal-contact-card {padding:25px 21px}}
@media(prefers-reduced-motion:reduce) {* {scroll-behavior:auto!important;transition:none!important}}


/* ===== TRIM VISUALS · Theme continuity v4 =====
   Theme state is read by the SAME /theme.js used on the homepage. These styles
   opt the policy pages into the existing data-theme="light" contract.
   Scoped to legal and privacy pages; main site and Admin are untouched.
*/
.legal-topbar-actions {display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
.legal-topbar-actions .theme-toggle {width:39px;height:39px;flex:none}
.privacy-topbar .legal-topbar-actions .theme-toggle {width:39px;height:39px}
.legal-topbar-actions .theme-toggle:hover {transform:rotate(18deg)}
.legal-topbar-actions .theme-toggle:focus-visible {outline:2px solid var(--lime);outline-offset:3px}
@media(max-width:570px) {
  .legal-topbar,.privacy-topbar {flex-wrap:wrap;gap:12px}
  .legal-topbar-actions {gap:8px}
  .legal-topbar-actions .theme-toggle {width:36px;height:36px}
  .legal-back,.privacy-return {font-size:.69rem;padding:9px 10px}
}

:root[data-theme="light"] body.legal-page {
  color:#172019;
  background:
    radial-gradient(ellipse at 75% -15%, rgba(165,198,85,.18), transparent 42%),
    radial-gradient(ellipse at 5% 68%, rgba(215,232,190,.28), transparent 44%),
    #f6f8f3;
}
:root[data-theme="light"] .legal-topbar {border-bottom-color:rgba(30,47,24,.15)}
:root[data-theme="light"] .legal-topbar .wordmark {color:#1d281a}
:root[data-theme="light"] .legal-topbar .brand-mark {color:#526d00}
:root[data-theme="light"] .legal-back,
:root[data-theme="light"] .privacy-return {
  color:#425141;border-color:rgba(29,55,22,.19);background:rgba(255,255,255,.75);
}
:root[data-theme="light"] .legal-back:hover,
:root[data-theme="light"] .privacy-return:hover {
  color:#405c00;border-color:rgba(82,109,0,.43);background:#fff;
}
:root[data-theme="light"] .legal-kicker {color:#526d00}
:root[data-theme="light"] .legal-kicker:before {background:#526d00}
:root[data-theme="light"] .legal-hero h1 {color:#172019}
:root[data-theme="light"] .legal-hero h1 em {color:#526d00;text-shadow:none}
:root[data-theme="light"] .legal-hero .legal-lead {color:#526052}
:root[data-theme="light"] .legal-date {color:#667261}
:root[data-theme="light"] .legal-date:before {color:#526d00}
:root[data-theme="light"] .legal-content {border-top-color:rgba(30,47,24,.16)}
:root[data-theme="light"] .legal-aside-label {color:#697768}
:root[data-theme="light"] .legal-aside nav a {color:#576557}
:root[data-theme="light"] .legal-aside nav a:hover {color:#425c00}
:root[data-theme="light"] .legal-section {border-bottom-color:rgba(30,47,24,.14)}
:root[data-theme="light"] .legal-num {color:#526d00}
:root[data-theme="light"] .legal-section h2 {color:#1e2a20}
:root[data-theme="light"] .legal-section p,
:root[data-theme="light"] .legal-section li {color:#4d5b50}
:root[data-theme="light"] .legal-section strong {color:#19261d}
:root[data-theme="light"] .legal-section a,
:root[data-theme="light"] .legal-note a,
:root[data-theme="light"] .faq-answer a {color:#476300}
:root[data-theme="light"] .legal-note {
  color:#4d5c4f;
  background:linear-gradient(138deg,rgba(227,239,207,.72),rgba(255,255,255,.78));
  border-color:rgba(82,109,0,.2);
}
:root[data-theme="light"] .legal-note b {color:#243222}
:root[data-theme="light"] .legal-footer {border-top-color:rgba(30,47,24,.15);color:#6a766b}
:root[data-theme="light"] .legal-footer p {color:#6a766b}
:root[data-theme="light"] .legal-footer nav a {color:#445044}
:root[data-theme="light"] .legal-footer nav a:hover {color:#526d00}
:root[data-theme="light"] .faq-item {
  background:linear-gradient(130deg,rgba(255,255,255,.94),rgba(245,249,239,.83));
  border-color:rgba(45,70,31,.16);
  box-shadow:0 8px 28px rgba(37,62,27,.04);
}
:root[data-theme="light"] .faq-item[open] {border-color:rgba(82,109,0,.41)}
:root[data-theme="light"] .faq-item summary {color:#1d2b20}
:root[data-theme="light"] .faq-item summary:after {color:#526d00}
:root[data-theme="light"] .faq-answer {color:#526052}
:root[data-theme="light"] .legal-contact-card {
  background:radial-gradient(ellipse at 100% 0%,rgba(168,201,100,.20),transparent 62%),
    linear-gradient(133deg,rgba(255,255,255,.99),rgba(241,247,234,.95));
  border-color:rgba(82,109,0,.23);
  box-shadow:0 12px 40px rgba(51,74,30,.06);
}
:root[data-theme="light"] .legal-contact-card .legal-contact-overline,
:root[data-theme="light"] .legal-contact-card a {color:#526d00}
:root[data-theme="light"] .legal-contact-card h2 {color:#1e2a20}
:root[data-theme="light"] .legal-contact-card p {color:#4c594e}
:root[data-theme="light"] .legal-contact-card a {border-bottom-color:rgba(82,109,0,.42)}
@media(max-width:820px) {
  :root[data-theme="light"] .legal-aside nav a {
    border-color:rgba(30,47,24,.17);background:rgba(255,255,255,.68)
  }
}

/* Privacy has its own existing design; it now respects the same theme state. */
:root[data-theme="light"] body.privacy-page {
  color:#172019;
  background:radial-gradient(ellipse at 70% -20%,rgba(165,198,85,.2),transparent 49%),#f6f8f3;
}
:root[data-theme="light"] .privacy-topbar {border-bottom-color:rgba(30,47,24,.16)}
:root[data-theme="light"] .privacy-topbar .wordmark {color:#1c271c}
:root[data-theme="light"] .privacy-topbar .brand-mark {color:#526d00}
:root[data-theme="light"] .privacy-kicker {color:#526d00}
:root[data-theme="light"] .privacy-main h1 {color:#172019}
:root[data-theme="light"] .privacy-main h1 .lime {color:#526d00;text-shadow:none}
:root[data-theme="light"] .privacy-lead {color:#526052}
:root[data-theme="light"] .privacy-updated {color:#697567}
:root[data-theme="light"] .privacy-section {border-top-color:rgba(30,47,24,.16)}
:root[data-theme="light"] .privacy-section h2 {color:#1e2a20}
:root[data-theme="light"] .privacy-section p,
:root[data-theme="light"] .privacy-section li {color:#4d5b50}
:root[data-theme="light"] .privacy-section strong {color:#1c2b20}
:root[data-theme="light"] .privacy-section a {color:#476300}
:root[data-theme="light"] .privacy-foot {border-top-color:rgba(30,47,24,.16);color:#6b766c}
:root[data-theme="light"] .privacy-foot a {color:#445044}
:root[data-theme="light"] .privacy-foot a:hover {color:#526d00}
