/* Legal Rights Now: pages.css (builder B pages: about, faq, contact, privacy, terms, sms-terms, thank-you, 404)
   Loaded after site.css on those pages only. Tokens and components come from site.css; this file only adds layouts.
   Light only, no italics, no uppercase labels, radius <= 6px, shadows only on paper objects. */

/* ---------- shared: hand notes in page heads ---------- */
.ph-note{margin:22px 0 0;max-width:32ch;font-size:clamp(17px,.4vw + 15px,19px);color:var(--ink)}
.ph-note>span{display:inline-block}
@media (min-width:900px){.page-head__aside .ph-note{margin:0 0 6px}}
/* a margin note set above the lead (about): right-aligned over the lead, its arrow drops into the first line */
.ph-note--over{max-width:26em;margin:14px 0 0;text-align:right;font-size:clamp(16.5px,.3vw + 15.5px,18.5px)}
.ph-note--over+.dek{margin-top:34px}

/* ---------- shared: small index card of the five guides (about head, thank-you, 404) ---------- */
.mini-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.mini-list li{border-bottom:1px solid var(--line)}
.mini-list a{display:grid;grid-template-columns:44px minmax(0,1fr) 18px;align-items:center;column-gap:14px;min-height:60px;padding:8px 4px 8px 0;text-decoration:none;color:var(--ink);transition:background-color .15s,padding .2s}
.mini-list a:hover,.mini-list a:focus-visible{background:var(--paper-2);padding-left:8px}
.mini-list .sk--mini{width:44px;height:44px}
.mini-list__t{display:block;font-family:var(--f-serif);font-weight:560;font-size:19px;line-height:1.25}
.mini-list__d{display:block;font-size:14.5px;line-height:1.4;color:var(--ink-3);margin-top:2px}
.mini-list .ar{width:18px;height:18px;color:var(--ink-3);transition:transform .25s var(--ease-out),color .2s}
.mini-list a:hover .ar,.mini-list a:focus-visible .ar{transform:translateX(4px);color:var(--pine-600)}
.mini-list a:hover .mini-list__t{text-decoration:underline;text-decoration-color:var(--pine-600);text-decoration-thickness:1.5px;text-underline-offset:.18em}
.pad .mini-list{border-top-color:transparent}
.pad .mini-list li{border-bottom-color:transparent}
.pad .mini-list a{min-height:56px}
.pad .mini-list a:hover,.pad .mini-list a:focus-visible{background:rgba(255,255,255,.45)}

/* ---------- shared: printed address ---------- */
.addr{font-style:normal;font-family:var(--f-serif);font-weight:440;font-size:clamp(19px,.4vw + 17px,22px);line-height:1.45;color:var(--ink);margin:0}
.addr span{display:block}
.pad .addr{line-height:28px}

/* ---------- about ---------- */
.about-head .page-head__grid{align-items:start}
.about-index{padding-top:34px;transform:rotate(1.2deg)}
.about-index .label{margin:0 0 4px;color:var(--ink-2);line-height:28px}
@media (min-width:900px){.about-head .page-head__aside{grid-column:8/span 5;padding-left:clamp(0px,2vw,32px)}}
@media (min-width:1100px){.about-head .page-head__aside{grid-column:9/span 4;padding-left:0}}
.about-is .split{align-items:start}
.about-is .split__text h3{margin:30px 0 10px}
.about-is .split__text h2+h3{margin-top:26px}
.about-is .btn--link{margin-top:6px}
@media (min-width:900px){
  .about-is .split__text{grid-column:1/span 5}
  .about-is .split__media{grid-column:7/-1;margin-right:calc(-1 * var(--bleed));position:sticky;top:calc(var(--hdr) + 32px)}
}
.about-not__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px var(--gap);align-items:start}
.about-not__grid h3{font-size:clamp(25px,1.2vw + 19px,34px);line-height:1.15;margin:0 0 16px;max-width:22ch}
.about-not__grid p{max-width:58ch;margin:0}
@media (min-width:900px){
  .about-not__grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .about-not__grid>h2{grid-column:1/span 5}
  .about-not__body{grid-column:7/-1}
}
.about-src__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px var(--gap)}
.about-src__text p{max-width:60ch}
.about-src__text h3{margin:26px 0 10px}
@media (min-width:900px){
  .about-src__grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .about-src__text{grid-column:1/span 6}
  .about-src__aside{grid-column:8/-1;padding-top:6px}
}
.res-list--3{margin-top:clamp(36px,4vw,56px)}
@media (min-width:700px){.res-list--3{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--gap)}}
@media (min-width:1100px){.res-list--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.res-list__abbr{display:inline-block;font-family:var(--f-serif);font-weight:500;font-size:15px;color:var(--pine-700);margin-bottom:2px;font-variant-numeric:lining-nums}
.about-reach__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px var(--gap);align-items:center}
.about-reach__grid p{max-width:46ch}
.addr-pad{padding-top:40px;padding-bottom:22px;transform:rotate(-1.4deg);max-width:440px}
.addr-pad .label{margin:0;line-height:28px}
@media (min-width:900px){
  .about-reach__grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .about-reach__text{grid-column:1/span 5}
  .about-reach__pad{grid-column:7/span 5}
}
.about-disc .disclaimer--full{max-width:74ch}

/* ---------- faq ---------- */
/* head: lead + note on the left, a documentary photo plate on the right (900+) */
.faq-head__plate{display:none;margin:0}
@media (min-width:900px){
  .faq-head__plate{display:block;grid-column:9/span 4}
  .faq-head__plate .photo{max-height:460px}
}
.faq-page .doc__main{min-width:0}
.faq-page .faq-group{scroll-margin-top:calc(var(--hdr) + 24px);margin-bottom:52px}
.faq-page .faq-group+.faq-group{margin-top:0}
.faq-page .faq-group__h{font-family:var(--f-serif);font-weight:560;font-size:clamp(22px,.6vw + 19px,27px);line-height:1.2;margin:0 0 12px;display:flex;align-items:baseline;gap:12px}
.faq-group__n{font-family:var(--f-serif);font-weight:400;font-size:.8em;color:var(--pine-600);font-variant-numeric:lining-nums tabular-nums}
.faq-page .tab-filter{border-bottom:1px solid var(--line);padding-bottom:6px;margin-bottom:36px}
.faq-side{display:grid;gap:32px;margin-top:56px}
@media (min-width:900px){.faq-side{margin-top:0;padding-top:4px}}
.faq-side .aside-pad h2{margin-bottom:8px}
.faq-side .aside-pad p{margin:0}
.faq-side .aside-pad .btn--link{margin-top:6px}
.faq-aid h2{font-family:var(--f-serif);font-weight:600;font-size:22px;line-height:1.25;margin:0 0 10px}
.faq-aid p{font-size:15.5px;line-height:1.55;margin:0}
.faq-page .faq__a p+p{margin-top:.8em}
.faq-page .faq summary{scroll-margin-top:calc(var(--hdr) + 24px)}

/* ---------- contact ---------- */
.contact{padding:clamp(36px,5vw,72px) 0 var(--section-y)}
.contact__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:36px var(--gap);align-items:start}
@media (min-width:900px){
  .contact__grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .contact__main{grid-column:1/span 7;grid-row:1}
  .contact__before{grid-column:9/span 4;grid-row:1;padding-top:18px}
}
/* the mail card sits in the page head (right column at 900+; compact, envelope at the side, below 900) */
.contact-head .page-head__grid{align-items:end}
.contact-head__note{margin-top:22px}
@media (max-width:899px){
  .contact-head .mail-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;align-items:end;max-width:520px;margin-top:4px}
  .contact-head .mail-card>*{grid-column:1/-1}
  .contact-head .mail-card .sk--envelope{grid-column:2;grid-row:1;width:96px;margin:0 -4px 8px 0}
  .contact-head .mail-card h2{grid-column:1;grid-row:1}
}
@media (min-width:900px){.contact-head .mail-card{margin-bottom:6px}}
.contact__before .aside-pad ul{padding-left:0;list-style:none}
.contact__before .aside-pad li{position:relative;padding-left:18px}
.contact__before .aside-pad li+li{margin-top:2px}
.contact__before .aside-pad li::before{content:"";position:absolute;left:0;top:13px;width:9px;height:2px;border-radius:2px;background:var(--pine-600);transform:rotate(-6deg)}
.mail-card{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--r-1);box-shadow:var(--sh-paper);padding:20px 22px 24px;transform:rotate(.7deg)}
.mail-card .sk--envelope{width:min(210px,72%);margin:0 0 12px -6px}
.mail-card h2{font-family:var(--f-sans);font-weight:650;font-size:16.5px;line-height:1.3;margin:0 0 8px;color:var(--ink)}
.mail-card .fine{margin-top:14px}
.form-card .form-intro{font-size:15px;color:var(--ink-3);margin:8px 0 0}

/* ---------- legal pages (privacy, terms, sms-terms) ---------- */
.legal-page .doc{padding-bottom:var(--section-y)}
.legal-page .doc__main>section{padding-top:0}
.legal .lead{font-family:var(--f-serif);font-weight:400;font-size:clamp(19px,.5vw + 16.5px,22px);line-height:1.5;color:var(--ink-2);margin:0 0 28px;max-width:44ch}
.legal .lsec{scroll-margin-top:calc(var(--hdr) + 20px)}
.lsec__n{display:flex;align-items:center;gap:10px;margin:56px 0 10px;font-family:var(--f-serif);font-weight:400;font-size:17px;line-height:1;color:var(--pine-600);font-variant-numeric:lining-nums tabular-nums}
.lsec__n::after{content:"";width:22px;height:2px;border-radius:2px;background:var(--pine-600);transform:rotate(-3deg)}
.legal .lsec h2{margin-top:0}
.legal .lsec>h2+h3{margin-top:22px}
.legal-sum{margin:0 0 12px;padding-top:36px;padding-bottom:22px;transform:rotate(-.5deg);max-width:640px}
.legal .legal-sum h2{font-size:22px;line-height:28px;font-weight:600;margin:0 0 0}
.legal .legal-sum ul{list-style:none;padding:0;margin:0}
.legal .legal-sum li{position:relative;line-height:28px;padding-left:20px;margin:0;color:var(--ink-2)}
.legal-sum li::before{content:"";position:absolute;left:0;top:13px;width:10px;height:2px;border-radius:2px;background:var(--pine-600);transform:rotate(-6deg)}
.legal .disclaimer--full{margin:18px 0 8px}
.legal .disclaimer--full h3{font-family:var(--f-serif);font-weight:600;font-size:22px;line-height:1.25;margin:0 0 10px;color:var(--ink)}
.legal .disclaimer--full p+p{margin-top:12px}
.legal .verbatim{margin:0 0 1em}
.legal .addr{font-size:19px;margin:6px 0 1em}
.legal .toc-details{margin-bottom:32px}
.legal-head .crumbs{margin-bottom:22px}
.legal-head .lead-row{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline}
.legal-page .doc__side .toc a span:last-child{text-wrap:pretty}

/* ---------- thank-you ---------- */
.ty-head .page-head__grid{align-items:center}
.ty-head .dek{max-width:42ch}
.ty-head .btn-row{margin-top:28px}
.ty-head p:not(.dek):not(.label){max-width:56ch;margin-top:16px}
.ty-art{width:100%;max-width:400px;padding:22px 16px 14px 36px;transform:rotate(-2deg)}
.ty-art .sk--thanks{width:100%;height:auto}
@media (max-width:899px){.ty-art{max-width:320px;margin:4px 0 0 auto}}
.ty-steps .sh{margin-bottom:32px}
@media (min-width:900px){.ty-steps .steps--row{grid-template-columns:repeat(3,minmax(0,1fr))}.ty-steps .steps--row .step{padding-right:clamp(8px,2vw,32px)}}
.ty-wait__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:32px var(--gap);align-items:start}
@media (min-width:900px){
  .ty-wait__grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .ty-wait__main{grid-column:1/span 6}
  .ty-wait__side{grid-column:8/-1}
}
.ty-wait .ticks li{padding-top:7px;padding-bottom:7px}
.ty-wait .ticks strong{color:var(--ink)}
.ty-wait .note-hand{margin:26px 0 0}
.ty-wait .label{margin-bottom:12px}
.ty-small{margin-top:28px}

/* ---------- 404 ---------- */
.nf{padding:clamp(24px,4vw,56px) 0 var(--section-y)}
.nf__art{width:min(300px,72vw);margin:0 auto clamp(20px,3vw,36px)}
.nf__art .sk--404{width:100%;height:auto}
.nf__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px var(--gap);align-items:start}
.nf__grid h1{max-width:18ch}
.nf__grid .dek{max-width:44ch}
.nf-links{position:relative;margin-top:26px}
.nf-note{margin:0 0 18px;font-size:19px;color:var(--ink);max-width:24ch}
.nf-note>span{display:inline-block}
@media (min-width:900px){.nf-note{position:absolute;left:calc(100% + clamp(48px,6vw,96px));top:6px;width:22ch;margin:0}}
.nf .btn-row{margin-top:30px}
.nf .fine{margin-top:16px}
.nf__plate{margin-top:clamp(48px,6vw,88px);display:none}
@media (min-width:900px){
  .nf__grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .nf__text{grid-column:1/span 7}
  .nf__plate{display:block}
}
