:root { --navy: #04132e; --ink: #092044; --text: #354b69; --line: #dce7f2; --blue: #0a66b7; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: #f4f8fc; color: var(--ink); font: 400 16px/1.75 "Cairo", sans-serif; }
a { color: var(--blue); text-underline-offset: 3px; }
a:hover { color: #079a7e; }
.container { width: min(100% - 40px, 900px); margin-inline: auto; }
.skip-link { position: absolute; left: 16px; top: -70px; z-index: 2; padding: 9px 14px; background: white; color: var(--ink); border-radius: 8px; }
.skip-link:focus { top: 12px; }
.site-header { background: var(--navy); }
.header-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 86px; }
.header-inner img { display: block; width: 166px; height: auto; }
.back-link { color: #c1d4eb; font-size: .9rem; font-weight: 700; text-decoration: none; }
.back-link:hover, .site-footer a:hover { color: #10d6ad; }
.legal-content { margin: 48px 0 72px; padding: clamp(28px, 5vw, 64px); background: white; border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 18px 50px rgba(3, 25, 58, .06); overflow-wrap: anywhere; }
.legal-content h1, .legal-content h2, .legal-content h3 { font-family: "Cairo", sans-serif; line-height: 1.3; letter-spacing: -.025em; }
.legal-content h1 { margin: 0 0 8px; font-size: clamp(1.8rem, 4vw, 2.55rem); }
.legal-content h2 { margin: 44px 0 14px; padding-top: 12px; border-top: 1px solid var(--line); font-size: 1.34rem; }
.legal-content h3 { margin: 28px 0 12px; font-size: 1.09rem; }
.legal-content p { margin: 0 0 18px; color: var(--text); }
.legal-content h1 + p { color: #657b97; font-size: .9rem; }
.legal-content ul { margin: 0 0 22px; padding-left: 24px; color: var(--text); }
.legal-content li { padding-left: 4px; margin: 4px 0; }
.legal-content li::marker { color: #079a7e; }
.legal-content strong { color: var(--ink); }
.site-footer { padding: 25px 0; background: var(--navy); color: #a5b9d2; font-size: .8rem; }
.footer-inner, .site-footer nav { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.site-footer a { color: inherit; text-decoration: none; }
@media (max-width: 600px) { .container { width: min(100% - 28px, 900px); } .header-inner { min-height: 72px; } .header-inner img { width: 140px; } .legal-content { margin: 20px 0 40px; border-radius: 14px; } .footer-inner { align-items: flex-start; flex-direction: column; } }
