:root{--navy:#303330;--accent:#46624a;--cream:#f4f1e9;--line:#deded3;--muted:#646760}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--navy);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.75}
a{color:var(--navy);text-underline-offset:3px;overflow-wrap:anywhere}
a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.skip-link{position:absolute;top:-80px;left:16px;padding:10px;background:white;z-index:2}
.skip-link:focus{top:8px}
.legal-header{background:var(--navy);color:white;padding:22px 20px}
.header-inner{max-width:900px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:14px;color:white;text-decoration:none;font-weight:800;line-height:1.4}
.brand img{width:62px;height:62px;object-fit:contain}
.brand small{display:block;font-weight:500;font-size:.82rem;color:#e1e6ea}
.home-link{color:white;font-weight:650;white-space:nowrap}
main{max-width:900px;margin:32px auto 48px;padding:36px;background:white;border:1px solid var(--line);border-radius:18px}
h1{margin:0 0 8px;font-size:clamp(2rem,5vw,2.8rem);line-height:1.2}
h2{margin:34px 0 10px;font-size:1.35rem;line-height:1.4;scroll-margin-top:20px}
h3{margin:22px 0 8px;font-size:1.05rem}
p{margin:0 0 16px}
li{margin:8px 0}
ul,ol{padding-left:24px}
.updated{color:var(--muted);font-size:.9rem}
.policy-note{padding:12px 16px;margin:22px 0;border-left:4px solid var(--accent);background:#edf0e9;font-size:.9rem}
.contents{padding:18px 22px;margin:24px 0;background:#faf9f5;border:1px solid var(--line);border-radius:12px}
.contents h2{margin:0 0 10px;font-size:1rem}
.contents ol{margin:0;columns:2;column-gap:30px}
.contents li{break-inside:avoid}
.contact-box{padding:20px;background:#edf0e9;border-radius:12px}
.contact-box p:last-child{margin:0}
footer{max-width:900px;margin:0 auto;padding:0 20px 36px;text-align:center;color:var(--muted);font-size:.88rem}
footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 22px;margin-bottom:14px}
footer p{margin:0}
.legal-network-footer{display:grid;grid-template-columns:minmax(190px,1fr) minmax(240px,1.4fr) auto;align-items:center;gap:16px;text-align:left}
.legal-network-footer .footer-contact{font-style:normal;font-size:.76rem;line-height:1.4;color:var(--muted)}
.legal-network-footer .footer-contact-title{display:block;font-weight:700}
.legal-network-footer .footer-contact-links{display:flex;flex-wrap:wrap;gap:0 12px}
.legal-network-footer .footer-contact a,.legal-network-footer .footer-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted)}
.legal-network-footer .footer-brand{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--accent);font-size:.78rem;line-height:1.4;text-align:center}
.legal-network-footer .footer-brand img{width:42px;height:42px;object-fit:contain;flex-shrink:0}
.legal-network-footer .footer-links{justify-content:flex-end;gap:0 12px;margin:0;font-size:.76rem}
@media(max-width:760px){.legal-network-footer{grid-template-columns:1fr}.legal-network-footer .footer-brand{justify-content:flex-start;text-align:left}.legal-network-footer .footer-links{justify-content:flex-start}}
@media(max-width:600px){
  .header-inner{align-items:flex-start;flex-direction:column;gap:14px}
  .brand{font-size:.92rem}.brand img{width:52px;height:52px}
  main{margin:20px 12px 30px;padding:24px 20px}
  .contents ol{columns:1}
}
@media print{
  body{background:white;font-size:10pt}
  .legal-header{background:white;color:black;padding:0}
  .brand{color:black}.brand small{color:#333}
  .skip-link,.home-link,.contents,footer nav{display:none}
  main{margin:18px 0;padding:0;border:0;max-width:none}
  h2,h3{break-after:avoid}p,li{orphans:3;widows:3}
}
h1,h2,h3{color:var(--accent)}
.contents h2{color:var(--accent)}
.ownership-disclosure{color:#303330;font-size:1rem;line-height:1.6;font-weight:400}
.footer-ownership{grid-column:1/-1;grid-row:1;margin:0;text-align:left}

/* Inset rounded frame + charcoal headings */
body{background:#fff;padding:22px}
.legal-header{border-radius:24px}
body>main{margin:22px auto 22px;max-width:none;border-radius:24px;background:var(--cream);border:0;padding:32px max(20px,calc((100% - 900px)/2 + 36px))}
footer{background:var(--cream);border-radius:18px;padding:16px 20px;max-width:none}
h1,h2,h3,.contents h2{color:var(--navy)}
@media(max-width:600px){body{padding:11px}.legal-header{border-radius:16px}body>main{margin:11px 0;padding:24px 18px;border-radius:16px}footer{border-radius:14px}}
@media print{body{padding:0}body>main{padding:0;background:white}}
