/* Legal pages use HUCO's shared navigation, typography and full footer. */
body.legal-page { background:#f7f6f2; color:#111; font-family:Inter,sans-serif; }
.legal-page .site-header { background:rgba(255,255,255,.97)!important; border-bottom:1px solid #e5e3dd!important; }
.legal-page .site-header .desktop-nav a { color:#171717!important; }
.legal-page .site-header .brand img { filter:none!important; }
.legal-page .site-header .header-icon-link { color:#171717!important; border-color:#ddd!important; }
.legal-page .site-header .header-icon-link svg { stroke:#171717!important; }
.legal-page .site-header .menu-toggle span { background:#171717!important; }
.legal-page main { padding-top:92px; }
.legal-page .legal-hero {
  padding:76px 0 52px;
  background:transparent;
  color:#111;
  border-bottom:1px solid #dedbd4;
}
.legal-page .legal-hero span { color:#b71e27; font-size:11px; letter-spacing:.16em; font-weight:600; }
.legal-page .legal-hero h1 {
  font-family:Manrope,sans-serif;
  font-size:clamp(44px,5.5vw,76px);
  font-weight:600;
  line-height:1.08;
  letter-spacing:-.055em;
  margin:24px 0;
}
.legal-page .legal-hero p { max-width:720px; font-size:17px; line-height:1.7; color:#62615b; margin:0; }
.legal-reading-layout {
  display:grid;
  grid-template-columns:240px minmax(0,760px);
  justify-content:space-between;
  align-items:start;
  gap:56px;
  padding-block:56px 88px;
}
.legal-toc { position:sticky; top:118px; border-top:2px solid #c2272e; padding-top:20px; }
.legal-toc>span { font-size:10px; font-weight:600; letter-spacing:.14em; color:#79776f; text-transform:uppercase; }
.legal-toc nav { display:grid; gap:16px; margin-top:24px; }
.legal-toc a { font-size:13px; line-height:1.5; color:#55544e; }
.legal-toc a:hover { color:#c2272e; }
body.legal-page .legal-content { min-width:0; width:100%; max-width:none; margin:0; padding:0!important; }
body.legal-page .legal-block { padding:28px 0; border-bottom:1px solid #dedbd4; scroll-margin-top:116px; }
body.legal-page .legal-block:first-child { padding-top:0; }
.legal-page .legal-block h2 { font-family:Manrope,sans-serif; font-size:28px; line-height:1.2; letter-spacing:-.035em; margin:0 0 16px; }
.legal-page .legal-block p { color:#62615b; font-size:16px; line-height:1.8; margin:0; }
.legal-page .legal-block a { color:#ac1e26; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-page a:focus-visible { outline:2px solid #c2272e; outline-offset:4px; }
@media(max-width:980px) {
  .legal-page main { padding-top:68px; }
  body.responsive-site.legal-page .legal-hero { padding:48px 0 36px!important; }
  .legal-reading-layout { grid-template-columns:minmax(0,1fr); gap:32px; padding-block:32px 48px; }
  .legal-toc { position:static; }
  .legal-toc nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 20px; margin-top:20px; }
  body.responsive-site.legal-page .legal-content { padding:0!important; }
}
@media(max-width:400px) { .legal-toc nav { grid-template-columns:minmax(0,1fr); } }
