.legal-shell{width:min(100% - var(--gutter)*2,1180px);margin:44px auto 88px}
.legal-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;line-height:1.5;margin-bottom:34px}
.legal-breadcrumb a{text-decoration:underline;color:var(--blue)}
.legal-heading{max-width:970px;margin-bottom:46px}
.legal-heading h1{font-size:clamp(38px,5vw,68px);max-width:20ch;letter-spacing:-.035em;line-height:1.05}
.legal-lead{font-size:20px;line-height:1.6;max-width:65ch;margin-top:24px}
.legal-date{font-size:14px;line-height:1.5;margin-top:22px}
.legal-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:clamp(36px,5vw,80px);align-items:start;border-top:1px solid var(--line);padding-top:32px}
.legal-index{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto;padding:0 8px 8px 0}
.legal-index summary{font-size:17px;font-weight:700;cursor:pointer;padding:4px 0 15px}
.legal-index ol{margin:0;padding-left:32px;display:grid;gap:12px}
.legal-index li{font-size:14px;line-height:1.5;padding-left:3px}
.legal-index a:hover,.legal-index a:focus-visible{color:var(--blue);text-decoration:underline}
.legal-article{min-width:0;max-width:74ch;font-size:17px}
.legal-section{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid var(--line);scroll-margin-top:30px}
.legal-section:last-child{margin-bottom:0}
.legal-section h2{font-size:clamp(25px,2.4vw,32px);line-height:1.2;letter-spacing:-.025em;margin-bottom:18px;font-weight:750;text-wrap:pretty}
.legal-section p,.legal-section li{line-height:1.7}
.legal-section p+p,.legal-section ul,.legal-section ol{margin-top:14px}
.legal-section ul,.legal-section ol{padding-left:24px;margin-bottom:0}
.legal-section li+li{margin-top:8px}
.legal-article a{color:var(--blue);text-decoration:underline;overflow-wrap:anywhere}
.legal-identity{display:grid;grid-template-columns:155px minmax(0,1fr);gap:12px 20px;margin:20px 0 0;font-size:16px;line-height:1.6}
.legal-identity dt{font-weight:700}.legal-identity dd{margin:0;overflow-wrap:anywhere}
.legal-contact{border-top:1px solid var(--line);margin-top:52px;padding-top:32px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.legal-contact h2{font-size:clamp(28px,3vw,40px);line-height:1.1;max-width:17ch}
.legal-contact p{margin-top:12px;line-height:1.6}
.legal-contact .button{font-size:17px;flex-shrink:0}
.legal-page .site-footer{padding-bottom:0}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr;gap:32px}.legal-index{position:static;max-height:none;border-bottom:1px solid var(--line);padding-bottom:26px}.legal-index ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px}.legal-heading{margin-bottom:32px}.legal-contact{align-items:flex-start;flex-direction:column}.legal-shell{margin-top:30px}.legal-article{max-width:74ch}}
@media(max-width:600px){.legal-shell{margin-bottom:52px}.legal-breadcrumb{margin-bottom:26px;font-size:13px}.legal-heading h1{font-size:38px}.legal-lead{font-size:18px;line-height:1.6;margin-top:20px}.legal-date{margin-top:18px}.legal-layout{padding-top:24px;gap:28px}.legal-index ol{grid-template-columns:1fr}.legal-article{font-size:16px}.legal-section{padding-bottom:26px;margin-bottom:26px}.legal-identity{grid-template-columns:1fr;gap:4px;font-size:15px}.legal-identity dd{margin-bottom:10px}.legal-contact{margin-top:36px;padding-top:26px}.legal-contact .button{width:100%}}
