/* ===========================================================
   Castaneda Group — legal pages (Privacy / Messaging Terms)
   Castaneda Group 2026 brand (navy/cream/periwinkle) + dark/light theming.
   =========================================================== */
:root{
  --ink:#081c38; --ink-2:#1e2c58; --steel:#2c3d66;
  --orange:#c56c00; --orange-600:#a85a00; --orange-700:#7c4300; --orange-300:#c0dbfb; --peri:#819fd3; --peri-deep:#5466a4;
  --line-dark:rgba(255,255,255,0.10);
  --font-disp:'Figtree',-apple-system,sans-serif;
  --font-body:'Lato',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-mono:Georgia,'Times New Roman',serif;
  /* swapping (LIGHT defaults — brand is cream-first) */
  --bg:#ffffff; --surface:#ecebe3; --card:#ffffff;
  --text:#22304e; --text-mid:#44506f; --text-dim:#5f6a8a;
  --heading:#081c38; --border:#d9d6ca;
  --link:#7c4300;
}
[data-theme="dark"]{
  --bg:#081c38; --surface:#0e2347; --card:#1e2c58;
  --text:#dfe6f5; --text-mid:#aebfe4; --text-dim:#8095c4;
  --heading:#ffffff; --border:rgba(255,255,255,0.12);
  --link:#c0dbfb;
}
[data-theme="light"]{
  --bg:#ffffff; --surface:#ecebe3; --card:#ffffff;
  --text:#22304e; --text-mid:#44506f; --text-dim:#5f6a8a;
  --heading:#081c38; --border:#d9d6ca;
  --link:#7c4300;
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);
  font-size:1.0625rem;line-height:1.7;-webkit-font-smoothing:antialiased;
  transition:background-color .3s ease,color .3s ease;}
a{color:var(--link);text-decoration:underline;text-underline-offset:2px;}
a:hover{color:var(--orange);}
h1,h2,h3{font-family:var(--font-disp);text-transform:uppercase;letter-spacing:-0.01em;
  color:var(--heading);line-height:1.05;margin:0;}
::selection{background:var(--orange);color:#fff;}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;}
.wrap{width:100%;max-width:820px;margin-inline:auto;padding-inline:24px;}

/* header */
.hazard{height:6px;background:linear-gradient(90deg,var(--ink) 0 64%,var(--peri-deep) 64% 82%,var(--peri) 82% 94%,var(--orange) 94% 100%);}
.lhead{background:var(--ink);border-bottom:1px solid var(--line-dark);position:sticky;top:0;z-index:10;}
.lhead .row{display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:16px;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;}
.brand-mark{width:36px;height:47px;flex-shrink:0;display:block;}
.brand-mark img{width:100%;height:100%;display:block;}
.brand-name{font-family:var(--font-disp);font-weight:700;font-size:1.15rem;color:#fff;line-height:1;}
.brand-name .g{color:var(--peri);font-weight:600;}
.brand-sub{font-family:var(--font-mono);font-style:italic;font-size:.6rem;letter-spacing:.05em;
  color:var(--orange-300);margin-top:4px;}
.lhead-actions{display:flex;align-items:center;gap:12px;}
.back-link{font-family:var(--font-disp);text-transform:uppercase;font-weight:700;font-size:.95rem;
  letter-spacing:.04em;color:#aebfe4;text-decoration:none;display:inline-flex;align-items:center;gap:7px;}
.back-link:hover{color:#fff;}
.back-link svg{width:16px;height:16px;}
.theme-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;
  border:2px solid var(--line-dark);color:#aebfe4;cursor:pointer;flex-shrink:0;
  border-radius:10px;transition:border-color .2s,color .2s;}
.theme-btn:hover{border-color:var(--orange);color:#fff;}
.theme-btn svg{width:20px;height:20px;}
.theme-btn .ic-moon{display:none;}
[data-theme="light"] .theme-btn .ic-sun{display:none;}
[data-theme="light"] .theme-btn .ic-moon{display:inline;}

/* document */
.doc{padding-block:56px 80px;}
.doc-eyebrow{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--orange-600);display:inline-flex;align-items:center;gap:12px;}
.doc-eyebrow::before{content:"";width:30px;height:2px;background:var(--orange);}
[data-theme="light"] .doc-eyebrow{color:var(--orange-700);}
.doc h1{font-size:clamp(1.9rem,4.6vw,2.8rem);font-weight:900;margin:18px 0 10px;}
.doc .updated{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.05em;color:var(--text-dim);text-transform:uppercase;}
.doc .lede{margin-top:22px;font-size:1.15rem;color:var(--text-mid);}
.doc h2{font-size:1.5rem;font-weight:800;margin:44px 0 12px;padding-top:24px;border-top:1px solid var(--border);
  display:flex;align-items:baseline;gap:12px;}
.doc h2 .n{font-family:var(--font-mono);font-size:.9rem;font-weight:700;color:var(--orange-600);}
[data-theme="light"] .doc h2 .n{color:var(--orange-700);}
.doc h3{font-size:1.12rem;font-weight:700;margin:26px 0 8px;letter-spacing:0;}
.doc p{margin:0 0 14px;}
.doc ul{margin:0 0 16px;padding-left:22px;}
.doc li{margin-bottom:8px;}
.doc strong{color:var(--heading);font-weight:700;}
.callout{background:var(--card);border:1px solid var(--border);border-left:4px solid var(--peri-deep);
  padding:18px 20px;margin:20px 0;font-size:1rem;border-radius:12px;box-shadow:0 10px 26px -22px rgba(8,28,56,.3);}
.callout strong{color:var(--heading);}
.contact-card{background:var(--card);border:1px solid var(--border);padding:22px 24px;margin-top:20px;border-radius:12px;box-shadow:0 10px 26px -22px rgba(8,28,56,.3);}
.contact-card div{margin-bottom:6px;}
.contact-card .k{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);}

/* footer */
.lfoot{background:#050f22;color:#8095c4;padding-block:40px;border-top:1px solid var(--line-dark);}
.lfoot .row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;align-items:center;
  font-family:var(--font-mono);font-size:.75rem;letter-spacing:.05em;}
.lfoot a{color:#aebfe4;}
.lfoot a:hover{color:var(--orange-300);}
.lfoot .foot-links{display:flex;gap:20px;flex-wrap:wrap;}

@media (max-width:560px){
  .back-link span{display:none;}
  .doc h2{flex-direction:column;gap:4px;}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important;scroll-behavior:auto !important;}}
