/* Video dialog, cookie banner, legal pages, footer legal links, consent checkbox */

/* ── videos ── */
.fcard .ph{position:relative}
.vplay{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px 0 12px;border:0;border-radius:99px;background:var(--gold);color:var(--ink);font:700 13px/1 var(--sans);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;box-shadow:0 10px 24px -10px rgba(0,0,0,.55);transition:transform .3s var(--ease)}
.vplay:hover{transform:translateY(-2px)}
.vplay svg{width:22px;height:22px;fill:currentColor}
.fcard.star .vplay{height:48px;font-size:14px}
dialog#video-dialog{width:min(980px,94vw);max-height:92vh;padding:0;border:0;border-radius:16px;background:#0a0a0a;color:#fff;overflow:hidden}
dialog#video-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(4px)}
.vd-close{position:absolute;right:10px;top:8px;z-index:2;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.vd-close:hover{background:var(--gold);color:var(--ink)}
.vd-title{margin:0;padding:18px 64px 14px 22px;font-family:var(--display);font-size:26px;text-transform:uppercase;letter-spacing:.01em}
.vd-stage{aspect-ratio:16/9;background:#000;display:flex;flex-direction:column}
.vd-stage iframe,.vd-stage video{width:100%;height:100%;border:0;flex:1;min-height:0;background:#000}
.vd-note{margin:0;padding:8px 22px;font-size:12px;color:#9a9a9a;background:#0a0a0a}

/* ── cookie banner ── */
#cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:90;max-width:720px;margin-inline:auto;background:#0a0a0a;color:#fff;border-radius:16px;padding:18px 20px;display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:0 24px 60px -16px rgba(0,0,0,.6);border:1px solid #2a2a2a}
#cookie-banner p{margin:4px 0 0;font-size:14px;color:#cfcfcf;line-height:1.5}
#cookie-banner a{color:var(--gold)}
.cb-actions{display:flex;gap:10px;flex-shrink:0}
.cb-actions button{height:44px;padding:0 22px;border-radius:99px;font:700 13px/1 var(--sans);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border:1.5px solid #fff;background:transparent;color:#fff}
.cb-actions .cb-ok{background:var(--gold);border-color:var(--gold);color:#0a0a0a}
.cb-actions button:hover{transform:translateY(-1px)}

/* ── footer legal links ── */
.legal-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.legal-links a,.legal-links button{color:#8a8a8a;background:none;border:0;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.legal-links a:hover,.legal-links button:hover{color:var(--gold)}

/* ── form consent ── */
.check{display:flex;gap:10px;align-items:flex-start;text-transform:none!important;letter-spacing:0!important;font-weight:500!important;font-size:13.5px!important;line-height:1.5;cursor:pointer}
.check input{width:20px;height:20px;margin-top:2px;accent-color:#0a0a0a;flex-shrink:0}
.check a{text-decoration:underline}

/* ── legal pages ── */
.legal-page{background:#fff}
.legal-nav{height:68px!important}
.legal-nav .brand{top:12px!important}
.legal-nav .brand .logo-img{width:170px!important;min-width:0!important}
.legal-nav .pill{top:13px!important;right:20px;height:42px;font-size:13px;background:var(--gold);color:var(--ink);padding:0 20px}
main.legal{padding-top:120px;padding-bottom:80px;max-width:860px}
main.legal h1{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(44px,6vw,80px);line-height:.95;margin:0 0 8px}
main.legal .meta{color:var(--muted);font-size:14px;margin:0 0 20px}
main.legal .lead{margin-bottom:36px}
.lsec{border-top:1px solid var(--line);padding:26px 0 6px}
.lsec h2{font-family:var(--sans);font-weight:800;font-size:19px;margin:0 0 12px}
.lsec p,.lsec li{font-size:16px;line-height:1.7;color:#222}
.lsec ul{padding-left:20px;margin:0 0 14px}
.lsec a{text-decoration:underline;text-decoration-color:var(--gold-deep);text-decoration-thickness:2px;text-underline-offset:3px}
.tbl{overflow-x:auto;margin:6px 0 16px}
.tbl table{border-collapse:collapse;width:100%;min-width:640px;font-size:14px}
.tbl th,.tbl td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.tbl th{background:var(--soft);font-weight:700}
.linkbtn{background:none;border:0;padding:0;font:inherit;font-weight:700;text-decoration:underline;text-decoration-color:var(--gold-deep);text-decoration-thickness:2px;cursor:pointer;color:inherit}
mark.todo{background:var(--gold);color:#0a0a0a;font-weight:700;padding:1px 6px;border-radius:4px}
.legal-page footer{margin-top:40px}
@media (max-width:640px){.cb-actions{width:100%}.cb-actions button{flex:1}.vd-title{font-size:20px}}

@media (max-width:640px){
  #cookie-banner{left:10px;right:10px;bottom:10px;padding:12px 14px;gap:10px;border-radius:14px}
  #cookie-banner p{font-size:12.5px;line-height:1.4;margin-top:2px}
  .cb-actions{width:100%}
  .cb-actions button{flex:1;height:40px;padding:0 12px}
}
