/* The Meadow View — cookie consent.
   Drawn in the site's own material: the charcoal ink ground the footer and the
   nav sheet use, bone text, DM Sans for everything read, Cormorant for the one
   heading, the pool as the single accent, pill buttons that press on
   pointer-down. Every colour is set here rather than inherited, because the
   same file sits on the home page, the Arabic page and the plain legal pages,
   which do not share one stylesheet (an injected panel carries its own ground).

   Reject all and Accept all share ONE rule. They must never drift apart. */

.mv-ck{
  --ck-ink:#16171A; --ck-bone:#F2F0EA; --ck-pool:#2C8F86; --ck-pool-lit:#4FC4B6;
  --ck-line:rgba(242,240,234,.16); --ck-ease:cubic-bezier(.22,1,.36,1);
  position:fixed;left:16px;right:16px;bottom:16px;z-index:65;
  max-width:880px;margin:0 auto;
  font-family:'DM Sans',system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5;
  color:var(--ck-bone);text-align:start;
}
.mv-ck[hidden],.mv-ck [hidden]{display:none!important}
@keyframes mv-ck-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* The entrance runs on the card, and only fills BACKWARDS. A finished animation
   that keeps filling (or one on an ancestor) makes a backdrop root, and the
   card's blur then samples nothing: the hero headline read straight through. */
.mv-ck-card{animation:mv-ck-in .45s var(--ck-ease) backwards}
@media (prefers-reduced-motion:reduce){.mv-ck-card{animation:none}}
/* A nav sheet the visitor deliberately opened outranks the notice. */
body.nav-open .mv-ck{opacity:0;pointer-events:none;transition:opacity .2s var(--ck-ease)}

.mv-ck *,.mv-ck *::before{box-sizing:border-box}
.mv-ck-card{
  background:rgba(22,23,26,.97);border:1px solid var(--ck-line);border-radius:26px;
  padding:16px 16px 16px 22px;
  box-shadow:0 24px 70px -28px rgba(0,0,0,.75);
  -webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);
}
[dir=rtl] .mv-ck-card{padding:16px 22px 16px 16px}
@supports (corner-shape:squircle){.mv-ck-card,.mv-ck-cat,.mv-ck-btn{corner-shape:squircle}}

.mv-ck p.mv-ck-text{margin:0;font-size:.86rem;line-height:1.55;color:rgba(242,240,234,.82)}
.mv-ck-text a{color:var(--ck-pool-lit);text-decoration:underline;text-underline-offset:3px;
  text-decoration-thickness:1px;white-space:nowrap}
@media (hover:hover){.mv-ck-text a:hover{color:#fff}}

/* banner row */
.mv-ck-banner{display:flex;align-items:center;gap:14px 22px}
.mv-ck-banner .mv-ck-text{flex:1 1 auto;min-width:0}
.mv-ck-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.mv-ck-pair{display:flex;gap:8px}

/* the two equal buttons, and Save */
.mv-ck .mv-ck-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:0 1.25em;border-radius:100px;
  border:1px solid transparent;background:var(--ck-bone);color:var(--ck-ink);
  font-family:inherit;font-size:.88rem;font-weight:500;line-height:1.1;letter-spacing:0;
  white-space:nowrap;cursor:pointer;
  transition:transform .22s var(--ck-ease),background .25s,box-shadow .3s var(--ck-ease)}
.mv-ck-pair .mv-ck-btn{min-width:7.5em}
@media (hover:hover){.mv-ck .mv-ck-btn:hover{background:#fff}}
.mv-ck .mv-ck-btn:active{transform:scale(.96);transition-duration:.09s}
.mv-ck .mv-ck-btn.is-primary{background:var(--ck-pool);color:#fff}
@media (hover:hover){.mv-ck .mv-ck-btn.is-primary:hover{background:#237a72;box-shadow:0 14px 34px -14px rgba(44,143,134,.75)}}

.mv-ck .mv-ck-link{
  min-height:44px;padding:0 10px;background:none;border:0;border-radius:10px;
  font-family:inherit;font-size:.86rem;font-weight:500;color:var(--ck-pool-lit);
  cursor:pointer;white-space:nowrap;text-decoration:underline;text-decoration-color:transparent;
  text-underline-offset:4px;transition:text-decoration-color .2s,color .2s}
@media (hover:hover){.mv-ck .mv-ck-link:hover{color:#fff;text-decoration-color:currentColor}}

.mv-ck button:focus-visible,.mv-ck a:focus-visible,.mv-ck input:focus-visible{
  outline:2px solid var(--ck-pool-lit);outline-offset:3px}

/* manage */
.mv-ck-manage{padding:6px 6px 2px 0}
[dir=rtl] .mv-ck-manage{padding:6px 0 2px 6px}
.mv-ck h2.mv-ck-title{
  margin:0 0 6px;font-family:'Cormorant Garamond',Georgia,serif;font-weight:300;
  font-size:1.75rem;line-height:1.1;letter-spacing:-.014em;color:var(--ck-bone)}
.mv-ck h2.mv-ck-title:focus{outline:none}
[dir=rtl] .mv-ck h2.mv-ck-title{font-family:'DM Sans',system-ui,-apple-system,sans-serif;
  font-weight:500;font-size:1.3rem;letter-spacing:0;line-height:1.3}
.mv-ck-cats{list-style:none;margin:16px 0;padding:0;display:grid;gap:8px}
.mv-ck-cats li{margin:0}
.mv-ck-cat{display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:13px 14px 13px 16px;border-radius:14px;cursor:pointer;
  background:rgba(255,255,255,.045);border:1px solid rgba(242,240,234,.12);transition:background .2s}
[dir=rtl] .mv-ck-cat{padding:13px 16px 13px 14px}
@media (hover:hover){.mv-ck-cat:hover{background:rgba(255,255,255,.07)}}
.mv-ck-cat-t{display:grid;gap:2px;min-width:0}
.mv-ck-cat strong{font-size:.93rem;font-weight:500;color:var(--ck-bone)}
.mv-ck-cat-t span{font-size:.82rem;line-height:1.5;color:rgba(242,240,234,.66)}

/* switch */
.mv-ck input[role=switch]{
  -webkit-appearance:none;appearance:none;flex:none;position:relative;margin:0;
  width:46px;height:28px;border-radius:100px;cursor:pointer;
  background:rgba(242,240,234,.2);border:1px solid rgba(242,240,234,.22);
  transition:background .25s var(--ck-ease),border-color .25s}
.mv-ck input[role=switch]::before{
  content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;
  background:var(--ck-bone);box-shadow:0 1px 3px rgba(0,0,0,.35);
  transition:transform .28s var(--ck-ease)}
.mv-ck input[role=switch]:checked{background:var(--ck-pool);border-color:var(--ck-pool)}
.mv-ck input[role=switch]:checked::before{transform:translateX(18px)}
[dir=rtl] .mv-ck input[role=switch]::before{left:auto;right:3px}
[dir=rtl] .mv-ck input[role=switch]:checked::before{transform:translateX(-18px)}
.mv-ck input[role=switch]:disabled{cursor:not-allowed;opacity:.55}
.mv-ck-cat:has(input:disabled){cursor:default}

.mv-ck-actions-m{justify-content:flex-end;flex-wrap:wrap}

/* phone: a full-width sheet on the bottom edge, the two choices side by side */
@media (max-width:640px){
  .mv-ck{left:0;right:0;bottom:0}
  .mv-ck-card,[dir=rtl] .mv-ck-card{border-radius:24px 24px 0 0;border-bottom:0;
    padding:16px 16px calc(14px + env(safe-area-inset-bottom))}
  .mv-ck-banner{flex-direction:column;align-items:stretch;gap:4px}
  .mv-ck-actions{flex-direction:column;align-items:stretch;gap:6px}
  .mv-ck .mv-ck-link{align-self:flex-start;padding:0 2px;min-height:40px}
  .mv-ck-pair{width:100%}
  .mv-ck-pair .mv-ck-btn{flex:1 1 0;min-width:0}
  .mv-ck-actions-m .mv-ck-pair{margin-top:2px}
  .mv-ck-manage,[dir=rtl] .mv-ck-manage{padding:4px 0 0;max-height:calc(100dvh - 40px);overflow-y:auto;
    overscroll-behavior:contain}
  .mv-ck h2.mv-ck-title{font-size:1.5rem}
  .mv-ck-cats{margin:12px 0}
  .mv-ck-actions-m .mv-ck-btn.is-primary{width:100%}
}

/* "Cookie preferences" in a footer: a button that looks exactly like the links
   beside it. Each page says what its links look like; this only strips the
   button chrome so that styling can land. */
.mv-ck-open{background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;
  letter-spacing:inherit;cursor:pointer;text-align:inherit}
.mv-ck-open[hidden]{display:none}
