.legal-page { color:#5e6472; background:#fbf8f5; }
.legal-header { position:sticky; z-index:10; top:0; min-height:80px; padding:12px 5vw; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid #ddd8d3; background:rgba(251,248,245,.94); backdrop-filter:blur(16px); }
.legal-header .brand { display:flex; align-items:center; gap:12px; }
.legal-header .brand img { width:54px; height:54px; border-radius:50%; }
.legal-back { color:#5e6472; font-weight:800; text-decoration:none; }
.legal-back:hover { color:#9d7180; }
.legal-main { width:min(1100px,90vw); margin:0 auto; padding:70px 0 90px; }
.legal-hero { max-width:940px; padding-bottom:48px; }
.legal-kicker { margin:0 0 12px; color:#99727f; font-size:12px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.legal-hero h1 { max-width:1000px; margin:0; color:#545b69; font-family:"Comfortaa",sans-serif; font-size:clamp(40px,6.5vw,76px); line-height:1.03; letter-spacing:-.05em; }
.legal-lead { max-width:830px; margin:28px 0 0; font-size:clamp(18px,2vw,23px); line-height:1.55; }
.legal-meta { margin-top:30px; display:flex; flex-wrap:wrap; gap:10px; }
.legal-meta span { padding:8px 13px; border:1px solid #d8cdd0; border-radius:999px; background:#f4e8ec; font-size:13px; font-weight:800; }
.operator-card { padding:32px; display:grid; grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr); gap:40px; border:1px solid #cddbdd; border-radius:28px; background:#e7f0f1; box-shadow:0 16px 45px rgba(94,100,114,.08); }
.operator-card h2 { margin:0; color:#545b69; font-family:"Comfortaa",sans-serif; font-size:clamp(28px,3vw,42px); line-height:1.08; }
.operator-card dl { margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 24px; }
.operator-card dl div { min-width:0; }
.operator-card dt { margin-bottom:4px; color:#8c7b80; font-size:12px; font-weight:900; text-transform:uppercase; }
.operator-card dd { margin:0; overflow-wrap:anywhere; font-weight:800; }
.operator-card a,.legal-document a,.consent-document a,.legal-actions > a:not(.button),.legal-footer a { color:#7f5966; text-underline-offset:3px; }
.legal-nav { margin:34px 0 62px; padding:25px 28px; display:flex; flex-wrap:wrap; gap:10px; border-radius:24px; background:#fff; box-shadow:0 16px 45px rgba(94,100,114,.07); }
.legal-nav strong { width:100%; margin-bottom:5px; color:#545b69; font-family:"Comfortaa",sans-serif; font-size:20px; }
.legal-nav a { padding:9px 13px; border-radius:999px; color:#5e6472; background:#f3efec; font-size:14px; font-weight:700; text-decoration:none; }
.legal-nav a:last-child { color:#704c58; background:#f1dfe5; }
.legal-document { display:grid; gap:0; }
.legal-document > section { scroll-margin-top:110px; padding:46px 0; display:grid; grid-template-columns:70px minmax(0,760px); gap:24px; border-top:1px solid #ddd8d3; }
.section-number { color:#b88e9b; font-family:"Comfortaa",sans-serif; font-size:18px; font-weight:700; }
.legal-document h2,.consent-document h2 { margin:0 0 20px; color:#545b69; font-family:"Comfortaa",sans-serif; font-size:clamp(27px,3.5vw,40px); line-height:1.15; }
.legal-document p,.legal-document li,.consent-document p,.consent-document li { font-size:17px; line-height:1.72; }
.legal-document p { margin:0 0 17px; }
.legal-document ul,.consent-document ol { padding-left:24px; }
.legal-document li,.consent-document li { margin:7px 0; padding-left:4px; }
.legal-note { margin:28px 0 0; padding:24px 26px; border-left:5px solid #aecdd2; border-radius:0 20px 20px 0; background:#eaf2f3; }
.legal-note b { color:#545b69; font-family:"Comfortaa",sans-serif; font-size:18px; }
.legal-note p { margin:8px 0 0; }
.consent-document { scroll-margin-top:105px; margin-top:45px; padding:clamp(28px,5vw,60px); border:2px solid #d8cdd0; border-radius:32px; background:#f5e8ec; box-shadow:12px 12px 0 #dde9ea; }
.consent-document ol { margin:24px 0; }
.consent-version { margin:28px 0 0; padding-top:20px; border-top:1px solid #d4bdc5; font-weight:800; }
.legal-actions { margin-top:54px; display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.legal-actions > a:not(.button) { font-weight:800; }
.legal-footer { min-height:100px; padding:26px 5vw; display:flex; align-items:center; justify-content:center; gap:24px; flex-wrap:wrap; color:#fff; background:#5e6472; font-size:14px; }
.legal-footer a { color:#fff; }
@media (max-width:760px) {
  .legal-header { min-height:70px; padding:10px 18px; }
  .legal-header .brand img { width:46px; height:46px; }
  .legal-header .brand span { display:none; }
  .legal-back { font-size:14px; }
  .legal-main { width:min(100% - 32px,680px); padding:42px 0 70px; }
  .legal-hero { padding-bottom:36px; }
  .legal-hero h1 { font-size:clamp(30px,7.3vw,36px); letter-spacing:-.045em; overflow-wrap:normal; hyphens:manual; }
  .legal-lead { margin-top:22px; font-size:17px; }
  .operator-card { padding:24px 20px; grid-template-columns:1fr; gap:26px; border-radius:22px; }
  .operator-card dl { grid-template-columns:1fr; gap:14px; }
  .legal-nav { margin:24px 0 44px; padding:20px; }
  .legal-nav a { width:100%; border-radius:12px; }
  .legal-document > section { padding:34px 0; grid-template-columns:1fr; gap:10px; }
  .legal-document p,.legal-document li,.consent-document p,.consent-document li { font-size:16px; line-height:1.65; }
  .consent-document { margin-top:30px; border-radius:24px; box-shadow:7px 7px 0 #dde9ea; }
  .legal-actions { align-items:stretch; flex-direction:column; text-align:center; }
  .legal-actions .button { width:100%; }
  .legal-footer { align-items:flex-start; flex-direction:column; gap:12px; }
}
