/* Flat navigation, quieter company details and simple social marks. */
body #footer { background:var(--ink); border-radius:0; padding:72px 32px 40px; color:var(--white); }
#footer .sf-shell { max-width:1120px; margin:auto; }
#footer .sf-nav { display:grid; grid-template-columns:repeat(2,minmax(0,240px)); gap:64px; margin-bottom:64px; }
#footer .sf-nav h2 { color:var(--highlight); font-size:14px; font-weight:400; line-height:1.5; margin:0 0 16px; }
#footer .sf-nav ul { list-style:none; padding:0; margin:0; }
#footer .sf-nav a,#footer .sf-nav [data-form] { display:inline-flex; align-items:center; min-height:44px; padding:8px 0; margin:0; border:0; border-radius:0; background:transparent; color:var(--white); font:550 18px/1.5 var(--display); text-align:left; }
#footer .sf-nav a:hover,#footer .sf-nav [data-form]:hover { color:var(--highlight); background:transparent; }
#footer .sf-company { max-width:760px; color:var(--highlight); font-size:14px; line-height:1.8; overflow-wrap:anywhere; }
#footer .sf-company p { margin:0; color:inherit; font-weight:400; }
#footer .sf-separator { margin-inline:6px; }
#footer .sf-contact { display:flex; flex-wrap:wrap; gap:0 24px; }
#footer .sf-contact a { display:inline-flex; align-items:center; min-height:44px; color:inherit; }
#footer .sf-social { display:flex; gap:12px; margin:20px 0 28px; }
#footer .sf-social a { display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; padding:0; border:0; border-radius:0; background:transparent; color:var(--highlight); }
#footer .sf-social a:hover { color:var(--white); background:transparent; }
#footer .sf-social svg { display:block; width:20px; height:20px; }
#footer .sf-bottom { border-top:1px solid var(--line); padding-top:24px; color:var(--highlight); font-size:13px; line-height:1.7; }
#footer .sf-bottom p { margin:0 0 4px; color:inherit; font-weight:400; }
#footer .sf-policies { display:flex; flex-wrap:wrap; column-gap:24px; }
#footer .sf-policies a { display:inline-flex; align-items:center; min-height:44px; color:inherit; text-underline-offset:5px; }
#footer .sf-policies a:first-child { font-weight:650; }
#footer a:hover { text-decoration:underline; text-underline-offset:5px; }
#footer :focus-visible { outline:2px solid var(--highlight); outline-offset:4px; }
.legal-page { max-width:960px; margin:auto; padding:128px 32px 96px; min-height:75vh; color:var(--ink); }
.legal-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; align-items:center; font-size:14px; color:var(--body); }
.legal-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; }
.legal-heading { margin:44px 0 40px; }
.legal-heading>p { color:var(--accent); font-size:14px; font-weight:600; margin:0 0 12px; }
.legal-heading h1 { font-size:44px; line-height:1.3; margin:0; letter-spacing:-.02em; word-break:keep-all; }
.legal-empty { border-block:1px solid var(--line); padding:40px 0; }
.legal-empty>span { display:inline-block; padding:4px 12px; border-radius:6px; background:var(--wash); color:var(--accent); font-size:13px; font-weight:600; }
.legal-empty h2 { margin:20px 0 12px; font-size:24px; line-height:1.5; }
.legal-empty p,.legal-content p { color:var(--body); font-size:17px; line-height:1.8; word-break:keep-all; overflow-wrap:anywhere; }
.legal-return { display:inline-flex; align-items:center; min-height:44px; margin-top:28px; font-size:15px; }
.legal-content section { margin-bottom:40px; }
.legal-content h2 { font-size:24px; }
@media(max-width:600px) {
  body #footer { padding:48px 24px 28px; }
  #footer .sf-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-bottom:48px; }
  #footer .sf-nav a,#footer .sf-nav [data-form] { font-size:16px; }
  #footer .sf-company { font-size:13px; }
  #footer .sf-contact { gap:0 16px; }
  #footer .sf-policies { column-gap:20px; }
  .legal-page { padding:100px 24px 64px; }
  .legal-heading { margin:32px 0; }
  .legal-heading h1 { font-size:32px; }
  .legal-empty h2 { font-size:22px; }
}
