/* Otatva legal pages — page-specific styles; shared header/footer remain in styles.css */
.legal-page { background: #fffaf2; }
.legal-hero {
  position: relative; isolation: isolate; overflow: hidden; min-height: 390px;
  display: flex; align-items: flex-end; padding: 220px 0 58px;
  background: linear-gradient(115deg, #fff8ed, #f4e7f1 65%, #e9d7eb);
}
.legal-hero-image { position:absolute; inset:0; z-index:-3; width:100%; height:100%; object-fit:cover; object-position:center; }
.legal-hero-wash { position:absolute; z-index:-2; inset:0; background:linear-gradient(90deg,rgba(255,250,241,.96) 0%,rgba(255,250,241,.88) 36%,rgba(255,250,241,.34) 63%,rgba(55,19,69,.06) 100%),linear-gradient(0deg,rgba(255,250,241,.12),transparent 38%); }
.legal-hero-inner { position:relative; z-index:1; }
.legal-breadcrumb { display:flex; align-items:center; gap:10px; margin:0 0 12px; color:#6f5a74; font-size:13px; font-weight:600; }
.legal-breadcrumb a { color:#80558b; text-decoration:underline; text-decoration-color:rgba(128,85,139,.35); text-underline-offset:3px; }
.legal-hero .section-kicker { margin:0 0 7px; color:#a87820; }
.legal-hero h1 { max-width:720px; margin:0 0 8px; color:#32113f; font:700 clamp(43px,5.8vw,72px)/.98 var(--serif); letter-spacing:-.025em; }
.legal-hero-subtitle { max-width:610px; margin:0; color:#52425d; font-size:clamp(15px,1.25vw,18px); line-height:1.65; }
.legal-updated { margin:12px 0 0; color:#75677b; font-size:12px; font-weight:600; letter-spacing:.02em; }
.legal-main-section { position:relative; padding:clamp(34px,5vw,68px) 0; background:linear-gradient(180deg,#fffdf8 0%,#fff8ee 100%); }
.legal-page-grid { display:grid; grid-template-columns:minmax(210px,260px) minmax(0,1fr); align-items:start; gap:clamp(26px,4vw,54px); }
.legal-toc { position:sticky; top:24px; display:flex; flex-direction:column; gap:0; padding:21px 19px 22px; border:1px solid rgba(173,132,62,.2); border-radius:14px; background:rgba(255,255,255,.72); box-shadow:0 10px 30px rgba(49,19,59,.045); }
.legal-toc-title { margin:0 0 11px; color:#351440; font:700 22px/1.2 var(--serif); }
.legal-toc a { display:block; padding:7px 0; color:#67566f; border-bottom:1px solid rgba(143,100,155,.11); font-size:13px; line-height:1.4; transition:color .2s,transform .2s; }
.legal-toc a:last-child { border-bottom:0; }
.legal-toc a:hover { color:#7a368d; transform:translateX(3px); }
.legal-article { min-width:0; padding:clamp(22px,3vw,40px); border:1px solid rgba(176,139,75,.19); border-radius:17px; background:rgba(255,255,255,.8); box-shadow:0 16px 40px rgba(49,19,59,.055); }
.legal-intro { padding:0 0 26px; margin:0 0 8px; border-bottom:1px solid rgba(176,139,75,.24); scroll-margin-top:24px; }
.legal-kicker { display:inline-block; margin:0 0 7px; color:#a87820; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.legal-intro h2 { margin:0 0 12px; color:#32113f; font:700 clamp(29px,3vw,40px)/1.08 var(--serif); }
.legal-intro p { margin:8px 0 0; color:#554960; font-size:15px; line-height:1.85; }
.legal-intro strong { color:#4c2359; }
.legal-section { display:grid; grid-template-columns:38px minmax(0,1fr); gap:15px; padding:25px 0; border-bottom:1px solid rgba(176,139,75,.19); scroll-margin-top:25px; }
.legal-section:last-child { border-bottom:0; padding-bottom:0; }
.legal-number { display:grid; place-items:center; width:34px; height:34px; border:1px solid rgba(184,134,44,.48); border-radius:50%; color:#7b4b14; background:#fff8e8; font:700 13px/1 var(--sans); }
.legal-section h2 { margin:0 0 9px; color:#3b1749; font:700 clamp(22px,2.1vw,28px)/1.15 var(--serif); }
.legal-section p { margin:0 0 11px; color:#5e5264; font-size:14.5px; line-height:1.8; }
.legal-section p:last-child { margin-bottom:0; }
.legal-section ul { margin:8px 0 13px; padding-left:21px; color:#5e5264; }
.legal-section li { margin:0 0 8px; padding-left:3px; font-size:14.5px; line-height:1.72; }
.legal-section li::marker { color:#b8862c; }
.legal-section strong { color:#44224f; }
.legal-section a:not(.legal-contact-card a) { color:#713581; text-decoration:underline; text-underline-offset:3px; }
.legal-warning { margin:15px -8px; padding:24px 15px; border:1px solid rgba(184,134,44,.3); border-radius:12px; background:linear-gradient(125deg,#fff9ea,#fbf1f7); }
.legal-warning .legal-number { background:#f8edcf; }
.legal-contact-card { display:flex; flex-direction:column; align-items:flex-start; gap:7px; margin:15px 0 12px; padding:18px 20px; border-left:3px solid #bd9140; border-radius:0 10px 10px 0; background:#faf3e8; }
.legal-contact-card strong { color:#3c1a49; font-size:15px; }
.legal-contact-card a { color:#653075; font-size:14px; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.legal-contact-card p { margin:0; font-size:13.5px; }
.legal-contact-card small { color:#746676; font-size:12px; line-height:1.65; }
.legal-note { color:#786b7e !important; font-size:13px !important; }
.legal-end-cta { padding:27px 0; background:linear-gradient(100deg,#f6ebdc,#f8eef6); border-top:1px solid rgba(184,134,44,.15); }
.legal-end-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.legal-end-inner .section-kicker { margin:0 0 3px; }
.legal-end-inner h2 { margin:0 0 3px; color:#32113f; font:700 31px/1.1 var(--serif); }
.legal-end-inner p { margin:0; color:#67586e; font-size:14px; }
.legal-end-inner .button { flex-shrink:0; }
.legal-page .site-footer { margin-top:0; }
.legal-page a:focus-visible { outline:3px solid #c89b48; outline-offset:3px; border-radius:4px; }
@media (max-width:1100px) {
  .legal-hero { padding-top:205px; min-height:360px; }
  .legal-page-grid { grid-template-columns:220px minmax(0,1fr); gap:25px; }
  .legal-toc { padding:18px 15px; }
}
@media (max-width:920px) {
  .legal-hero { padding-top:190px; min-height:340px; }
  .legal-page-grid { grid-template-columns:1fr; }
  .legal-toc { position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
  .legal-toc-title { grid-column:1/-1; }
}
@media (max-width:760px) {
  .legal-hero { min-height:310px; padding:165px 0 34px; }
  .legal-hero-image { object-position:63% center; }
  .legal-hero-wash { background:linear-gradient(90deg,rgba(255,250,241,.97),rgba(255,250,241,.83) 62%,rgba(255,250,241,.42)); }
  .legal-hero h1 { font-size:clamp(39px,10vw,54px); }
  .legal-hero-subtitle { max-width:95%; font-size:14px; }
  .legal-main-section { padding:28px 0; }
  .legal-toc { grid-template-columns:1fr 1fr; padding:16px; }
  .legal-toc a { font-size:12px; }
  .legal-article { padding:21px 17px; border-radius:13px; }
  .legal-intro p,.legal-section p,.legal-section li { font-size:14px; line-height:1.75; }
  .legal-section { grid-template-columns:30px minmax(0,1fr); gap:10px; padding:21px 0; }
  .legal-number { width:28px; height:28px; font-size:11px; }
  .legal-section h2 { font-size:23px; }
  .legal-warning { margin:12px -5px; padding:18px 11px; }
  .legal-contact-card { padding:15px; }
  .legal-end-inner { flex-direction:column; align-items:flex-start; gap:14px; }
  .legal-end-inner h2 { font-size:28px; }
}
@media (max-width:420px) {
  .legal-page .wrap { width:calc(100% - 28px); }
  .legal-toc { grid-template-columns:1fr; }
  .legal-hero { padding-top:155px; }
}
@media (prefers-reduced-motion:reduce) {
  .legal-toc a { transition:none; }
}
