.footer-legal button{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.consent-field a{color:var(--teal-700);text-decoration:underline;text-underline-offset:3px}
.legal-hero small{display:block;margin-top:22px;color:rgba(255,255,255,.62);font-size:13px}
.legal-copy>section{align-items:start}
.legal-copy p,.legal-copy li{color:var(--ink-soft);font-size:16px;line-height:1.75}
.legal-copy p{margin:0 0 14px}
.legal-copy ul{margin:0 0 18px;padding-left:22px}
.legal-copy li+li{margin-top:8px}
.legal-copy a{color:var(--teal-700);text-decoration:underline;text-underline-offset:3px}
.legal-review-note{padding:15px 17px;border-left:3px solid #d5a94f;background:#f8f3e8;color:var(--ink)!important}
.legal-table-wrap{min-width:0;width:100%;max-width:100%;margin:4px 0 20px;overflow-x:auto}
.legal-table-wrap table{width:100%;min-width:680px;border-collapse:collapse;background:#fff}
.legal-table-wrap th,.legal-table-wrap td{padding:14px;border:1px solid var(--line);font-size:14px;line-height:1.5;text-align:left;vertical-align:top}
.legal-table-wrap th{background:var(--teal-950);color:#fff}
.legal-table-wrap code{overflow-wrap:anywhere;color:var(--teal-800)}
.legal-action{min-height:44px;padding:0 18px;border:1px solid var(--teal-800);border-radius:999px;background:transparent;color:var(--teal-900);font:inherit;font-size:14px;font-weight:750;cursor:pointer}
.legal-action:hover,.legal-action:focus-visible{background:var(--teal-950);color:#fff}
.cookie-panel{
  --cookie-side-gap:max(14px,env(safe-area-inset-left,0px),env(safe-area-inset-right,0px));
  --cookie-top-gap:max(18px,env(safe-area-inset-top,0px));
  --cookie-bottom-gap:max(18px,env(safe-area-inset-bottom,0px));
  position:fixed;z-index:1500;left:var(--cookie-side-gap);right:var(--cookie-side-gap);bottom:var(--cookie-bottom-gap);
  box-sizing:border-box;width:auto;max-width:960px;margin-inline:auto;
  max-height:calc(100vh - var(--cookie-top-gap) - var(--cookie-bottom-gap));
  max-height:calc(100dvh - var(--cookie-top-gap) - var(--cookie-bottom-gap));
  overflow:auto;overscroll-behavior:contain;padding:24px;
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:28px;
  border:1px solid rgba(231,196,125,.42);border-radius:16px;background:#052f34;color:#fff;box-shadow:0 28px 90px rgba(1,18,21,.46)
}
.cookie-panel>div{min-width:0}
.cookie-panel :is(h2,p,a){overflow-wrap:anywhere}
.cookie-panel[hidden]{display:none}
.cookie-panel .eyebrow{margin:0 0 8px;color:#8debd3}
.cookie-panel h2{margin:0;font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.1}
.cookie-panel p:not(.eyebrow){max-width:650px;margin:10px 0 8px;color:rgba(255,255,255,.7);font-size:14px;line-height:1.55}
.cookie-panel a{color:#f0cf8b;font-size:13px;text-decoration:underline;text-underline-offset:3px}
.cookie-panel__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}
.cookie-panel__actions button{min-height:46px;max-width:100%;padding:8px 16px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:transparent;color:#fff;font:inherit;font-size:13px;font-weight:750;white-space:normal;overflow-wrap:anywhere;cursor:pointer}
.cookie-panel__actions button:last-child{border-color:#f0cf8b;background:#f0cf8b;color:#073f44}
.cookie-panel__actions button:focus-visible{outline:2px solid #85d9c7;outline-offset:3px}
.hero-video__consent{position:absolute;z-index:4;left:50%;top:50%;min-height:46px;padding:0 18px;border:1px solid rgba(255,255,255,.6);border-radius:999px;background:rgba(3,31,38,.88);color:#fff;font:inherit;font-size:13px;font-weight:750;transform:translate(-50%,-50%);cursor:pointer;backdrop-filter:blur(8px)}
.hero-video.is-playing .hero-video__consent{display:none}
@media(max-width:760px){
  .cookie-panel{--cookie-bottom-gap:calc(82px + env(safe-area-inset-bottom,0px));display:block;padding:20px}
  .cookie-panel__actions{margin-top:18px}
  .legal-copy p,.legal-copy li{font-size:15px}
}
/* A wide phone in landscape still needs a scrollable, single-column notice. */
@media(max-height:500px){
  .cookie-panel{display:block;padding:16px}
  .cookie-panel__actions{margin-top:12px}
}
