/* Cookie note (consent.js). Same colours and shapes as the contact form:
   green and citron with square corners on the homepage, wine and blush with
   soft corners on the inner pages. */

.cookie-note,.cookie-toast{
  --ck-ink:var(--ink,#302d28);
  --ck-paper:var(--paper,#fffaf3);
  --ck-accent:var(--wine,var(--accent,#123c35));
  --ck-soft:var(--pink,var(--citron,#f2ded5));
  --ck-line:var(--line,#d9cec2);
  --ck-muted:var(--muted,#655c56);
  --ck-radius:4px;
  --ck-pill:999px; /* buttons are pills on every page, like the site's own */
}
.cookie-note[data-look=soft],.cookie-toast[data-look=soft]{--ck-radius:20px}

.cookie-note{
  position:fixed;z-index:30;
  left:max(22px,env(safe-area-inset-left));
  bottom:max(22px,env(safe-area-inset-bottom));
  width:min(470px,calc(100% - 44px));
  display:grid;grid-template-columns:auto 1fr;gap:6px 18px;
  padding:24px 24px 22px;
  background:var(--ck-paper);color:var(--ck-ink);
  border:1px solid var(--ck-ink);border-radius:var(--ck-radius);
  box-shadow:0 22px 60px rgba(0,0,0,.18);
  font-size:15px;line-height:1.55;
  opacity:0;transform:translateY(16px);
  transition:opacity .26s ease,transform .32s cubic-bezier(.2,.7,.2,1);
}
.cookie-note[data-look=soft]{border-color:var(--ck-line)}
.cookie-note.is-in{opacity:1;transform:none}

.cookie-note-mark{
  grid-row:1 / span 2;
  width:44px;height:44px;display:grid;place-items:center;
  background:var(--ck-soft);color:var(--ck-accent);
  border-radius:var(--ck-pill);
}
.cookie-note-mark svg{width:22px;height:22px;fill:currentColor}

.cookie-note h2{
  margin:2px 0 6px;
  font:400 25px/1.1 Georgia,'Times New Roman',serif;letter-spacing:-.02em;
  color:var(--ck-ink);
}
.cookie-note p{margin:0;color:var(--ck-muted)}
.cookie-note p a{color:var(--ck-ink);text-underline-offset:4px;white-space:nowrap}

/* Equal-weight choices: saying no is as easy as saying yes. */
.cookie-note-actions{grid-column:2;display:flex;gap:10px;margin-top:16px}
.cookie-note-btn{
  flex:1 1 0;min-height:46px;padding:11px 18px;
  font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;
  border:1px solid var(--ck-accent);border-radius:var(--ck-pill);
  background:transparent;color:var(--ck-accent);
  transition:background .18s,color .18s,transform .18s;
}
.cookie-note-btn:hover{background:var(--ck-soft)}
.cookie-note-yes{background:var(--ck-accent);color:var(--ck-paper)}
.cookie-note-yes:hover{background:var(--ck-ink);border-color:var(--ck-ink)}
.cookie-note-btn:focus-visible{outline:3px solid var(--ck-accent);outline-offset:3px}
.cookie-note-btn[aria-pressed=true]:after{content:' ✓'}

/* Footer link that reopens the note. */
.cookie-settings-link{
  padding:0;border:0;background:none;color:inherit;cursor:pointer;
  font:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:5px;
}
footer .policy-links .cookie-settings-link{font-size:14px}

/* Small confirmation after a choice. */
.cookie-toast{
  position:fixed;z-index:31;left:50%;
  bottom:max(26px,env(safe-area-inset-bottom));
  padding:12px 22px;max-width:calc(100% - 32px);
  background:var(--ck-accent);color:var(--ck-paper);
  border-radius:var(--ck-pill);font-size:14px;
  box-shadow:0 10px 30px rgba(0,0,0,.2);
  opacity:0;transform:translate(-50%,10px);
  transition:opacity .25s,transform .25s;
}
.cookie-toast.is-in{opacity:1;transform:translate(-50%,0)}

/* Phones: a bottom sheet across the screen; the WhatsApp button waits. */
@media (max-width:650px){
  .cookie-note{
    left:0;right:0;bottom:0;width:100%;
    padding:22px 20px max(18px,env(safe-area-inset-bottom));
    border-width:1px 0 0;border-radius:var(--ck-radius) var(--ck-radius) 0 0;
    grid-template-columns:auto 1fr;gap:4px 14px;
  }
  .cookie-note-mark{width:38px;height:38px}
  .cookie-note h2{font-size:22px}
  .cookie-note-actions{grid-column:1 / -1;margin-top:14px}
  html.cookie-note-open .whatsapp-float{visibility:hidden}
}

@media (prefers-reduced-motion:reduce){
  .cookie-note,.cookie-toast,.cookie-note-btn{transition:none}
}
