/* Calm, readable legal pages and low-profile links across Drift Awhile. */
.legal-footer { min-height:110px; gap:24px; }
.legal-footer-nav { display:flex; align-items:center; justify-content:center; gap:clamp(13px,2vw,30px); flex-wrap:wrap; }
.legal-footer-nav a { color:#a5b9b5; font-size:11px; transition:color .2s; white-space:nowrap; }
.legal-footer-nav a:hover,.legal-footer-nav a:focus-visible { color:#f2f5ed; }
.legal-footer .footer-note { color:#7e9694; white-space:nowrap; font-size:11px; }

.legal-page .site-shell { min-height:100vh; }
.legal-page .site-header { border-bottom:1px solid var(--line); }
.legal-page .top-nav .nav-cta { display:inline-block; }
.legal-main { width:min(1130px,100%); margin:0 auto; padding:100px 0 135px; }
.legal-hero { position:relative; padding:0 0 78px; border-bottom:1px solid var(--line); }
.legal-kicker { color:#b7cbc4; font-size:10px; letter-spacing:2.7px; font-weight:600; }
.legal-hero h1 { font:400 clamp(58px,8vw,106px)/1.02 var(--serif); letter-spacing:-3.6px; color:#f0f2eb; margin:28px 0 25px; }
.legal-hero h1 em { font-weight:400; color:#c5d9cf; }
.legal-hero p { max-width:690px; color:#a9bdba; font-size:16px; line-height:1.85; margin:0; }
.legal-updated { display:block; margin-top:28px; color:#7e9c98; font-size:10px; letter-spacing:1.2px; text-transform:uppercase; }
.legal-grid { display:grid; grid-template-columns:minmax(180px,225px) minmax(0,1fr); gap:clamp(45px,7vw,115px); padding-top:70px; }
.legal-toc { align-self:start; position:sticky; top:35px; }
.legal-toc strong { display:block; font-size:10px; color:#89aaa3; letter-spacing:2px; margin-bottom:23px; font-weight:600; }
.legal-toc a { display:block; color:#98aeaa; padding:10px 0; font-size:12px; line-height:1.45; transition:color .2s; }
.legal-toc a:hover,.legal-toc a:focus-visible { color:#f0f2eb; }
.legal-article section { scroll-margin-top:40px; border-top:1px solid rgba(213,230,225,.14); padding:31px 0 39px; }
.legal-article section:first-child { border-top:0; padding-top:0; }
.legal-article h2 { margin:0 0 19px; color:#e6ece4; font:400 clamp(29px,3.2vw,40px)/1.2 var(--serif); letter-spacing:-.7px; }
.legal-article p,.legal-article li { font-size:14px; line-height:1.9; color:#aebfbc; }
.legal-article p { margin:0 0 17px; }
.legal-article p:last-child { margin-bottom:0; }
.legal-article ul { margin:12px 0 0; padding-left:22px; }
.legal-article li { padding-left:4px; margin:6px 0; }
.legal-article a,.legal-related a { color:#c9e1d6; text-decoration:underline; text-underline-offset:4px; }
.legal-related { border:1px solid rgba(204,225,216,.2); background:rgba(174,207,192,.035); padding:29px 32px; margin-top:32px; }
.legal-related strong { display:block; color:#e1eae2; font:400 25px var(--serif); margin-bottom:12px; }
.legal-related p { margin:0; font-size:13px; color:#acbdb9; line-height:1.8; }
.legal-related a+a { margin-left:15px; }

@media(max-width:850px) {
  .legal-main { padding:76px 0 110px; }
  .legal-grid { grid-template-columns:1fr; gap:0; padding-top:45px; }
  .legal-toc { display:none; }
  .legal-hero { padding-bottom:58px; }
  .legal-hero h1 { letter-spacing:-2.5px; }
  .legal-footer { flex-wrap:wrap; justify-content:center; padding:25px 0; }
  .legal-footer .footer-brand { width:100%; text-align:center; }
  .legal-footer-nav { width:100%; }
  .legal-footer .footer-note { width:100%; text-align:center; }
}
@media(max-width:600px) {
  .legal-page .top-nav a:not(.nav-cta) { display:none; }
  .legal-page .top-nav .nav-cta { font-size:10px; padding:10px 12px; }
  .legal-page .top-nav .nav-cta span { font-size:14px; padding-left:8px; }
  .legal-main { padding:61px 0 85px; }
  .legal-hero h1 { font-size:clamp(51px,12vw,68px); }
  .legal-hero p { font-size:14px; }
  .legal-article h2 { font-size:30px; }
  .legal-article p,.legal-article li { font-size:13px; }
  .legal-related { padding:23px; }
  .legal-footer-nav { gap:15px 22px; }
  .legal-footer-nav a { font-size:10px; }
}
.wellness-notice { display:flex; align-items:center; justify-content:center; gap:18px; min-height:34px; padding:7px 0; color:#9eb4b0; border-bottom:1px solid rgba(223,236,235,.07); text-align:center; font-size:11px; letter-spacing:.09em; }
.wellness-notice a { color:#bdceca; letter-spacing:.02em; text-decoration:underline; text-decoration-color:rgba(189,206,202,.34); text-underline-offset:4px; transition:color .2s; }
.wellness-notice a:hover { color:#f2f5ed; }
.wellness-notice a span { display:inline-block; padding-left:4px; text-decoration:none; }
body.focused .wellness-notice { display:none; }
@media(max-width:580px) { .wellness-notice { flex-direction:column; gap:3px; font-size:9px; letter-spacing:.09em; padding:8px 0; } }
