/* Legal pages (/privacy, /terms, /data-deletion, /business-contact-notice) on the site template. */
.route-legal .page-hero{grid-template-columns:minmax(0,1fr);min-height:auto;padding-bottom:72px}
.route-legal .page-hero h1{font-size:clamp(3.5rem,6.6vw,6.6rem);max-width:1100px}
.route-legal .page-intro{max-width:760px}
.route-legal .page-intro a{text-decoration:underline;text-underline-offset:4px}
.route-legal .page-intro strong{color:var(--white)}
.legal-nav{display:flex;flex-wrap:wrap;gap:8px 32px;margin-top:40px;padding-top:20px;border-top:1px solid #ffffff33;font-size:15px;font-weight:700}
.legal-nav a{display:inline-flex;align-items:center;min-height:32px;color:#e3e0db;text-underline-offset:5px}
.legal-nav a:hover,.legal-nav a[aria-current="page"]{color:var(--white);text-decoration:underline}
.route-legal .detail-section{padding-top:56px;padding-bottom:56px}
.route-legal .detail-heading h2{font-size:clamp(2.1rem,2.9vw,3rem);line-height:1.04}
.legal-content{font-size:18px;line-height:1.65}
.legal-content>*+*{margin-top:20px}
.legal-content p,.legal-content ul,.legal-content ol,.legal-content address,.legal-content h3{max-width:760px}
.legal-content ul,.legal-content ol{padding-left:1.3em}
.legal-content ul{list-style:disc}
.legal-content ol{list-style:decimal}
.legal-content li+li{margin-top:10px}
.legal-content li>ul{margin-top:10px}
.legal-content h3{font-size:28px;line-height:1.15;text-transform:none;margin-top:44px}
.legal-content>h3:first-child{margin-top:0}
.legal-content h3+*{margin-top:14px}
.legal-content a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;overflow-wrap:anywhere}
.legal-content a:hover{text-decoration-thickness:2px}
.legal-content strong{font-weight:700}
.legal-content address{font-style:normal;line-height:1.75}
.legal-content table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.55}
.legal-content th{font-size:14px;font-weight:700;letter-spacing:.04em;text-align:left;vertical-align:bottom;padding:0 20px 12px 0;border-bottom:1px solid var(--ink)}
.legal-content td{text-align:left;vertical-align:top;padding:16px 20px 16px 0;border-bottom:1px solid #0a0a0a2e}
.legal-content td:first-child{font-weight:700}
.dark .legal-content th{border-color:var(--white)}
.dark .legal-content td{border-color:#ffffff40}
@media(max-width:699px){
  .route-legal .page-hero{padding-bottom:40px}
  .route-legal .page-hero h1{font-size:clamp(2.6rem,11.5vw,4.5rem)}
  .legal-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin-top:28px;padding-top:12px}
  .legal-nav a{min-height:44px}
  .route-legal .detail-section{padding-top:40px;padding-bottom:40px;gap:20px}
  .route-legal .detail-heading h2{font-size:clamp(2rem,9vw,2.6rem)}
  .legal-content{font-size:16px}
  .legal-content h3{font-size:24px;margin-top:36px}
  .legal-content table,.legal-content tbody,.legal-content tr,.legal-content td{display:block}
  .legal-content thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .legal-content tr{padding:14px 0;border-bottom:1px solid #0a0a0a2e}
  .legal-content td{border:0;padding:3px 0}
  .legal-content td[data-label]::before{content:attr(data-label);display:block;font-size:13px;font-weight:700;letter-spacing:.04em;color:#55514d}
  .dark .legal-content tr{border-color:#ffffff40}
  .dark .legal-content td[data-label]::before{color:#ccc8c4}
}
