/* Arent banner port: original geometry and transitions; PlantStream tokens.
   Fallbacks match design-tokens.css for utility pages without that stylesheet. */
#cookie-banner {
  position:fixed;bottom:0;left:0;right:0;z-index:1500;
  box-sizing:border-box;margin:0;
  background:var(--ps-night,#030303);border-top:1px solid rgba(255,255,255,.08);
  padding:1rem 2rem;
  display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;
  transform:translateY(100%);transition:transform .35s ease;
  font-family:var(--ps-font-latin,"Poppins",sans-serif);font-size:.875rem;color:var(--ps-paper,#f4f2ee);
  box-shadow:0 -4px 24px rgba(0,0,0,.4);
}
#cookie-banner.visible {transform:translateY(0)}
#cookie-banner p {margin:0;line-height:1.6;flex:1 1 300px;font:inherit;line-height:1.6;color:inherit;text-align:left;min-width:0}
#cookie-banner a {font:inherit;color:var(--ps-accent,#d9933e);text-decoration:underline}
#cookie-banner a:hover {color:var(--ps-paper,#f4f2ee)}
#cookie-banner .cookie-actions {display:flex;gap:.75rem;flex-shrink:0}
#cookie-banner button {
  display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;
  padding:.7rem 1.6rem;border-radius:8px;border:none;cursor:pointer;
  font-family:var(--ps-font-latin,"Poppins",sans-serif);font-size:.92rem;font-weight:600;
  line-height:1.5;letter-spacing:.03em;text-transform:none;margin:0;width:auto;height:auto;
  transition:background .2s,transform .2s,box-shadow .2s;
}
#cookie-banner #cookie-btn-accept {background:var(--ps-accent,#d9933e);color:var(--ps-night,#030303)}
#cookie-banner #cookie-btn-accept:hover {background:var(--ps-accent-strong,#b8742a);transform:translateY(-2px);box-shadow:0 8px 24px color-mix(in srgb,var(--ps-accent,#d9933e) 32%,transparent)}
#cookie-banner #cookie-btn-decline {background:transparent;color:var(--ps-paper,#f4f2ee);border:1px solid rgba(255,255,255,.18)!important}
#cookie-banner #cookie-btn-decline:hover {border-color:var(--ps-accent,#d9933e)!important;color:var(--ps-accent,#d9933e);transform:translateY(-2px)}
#cookie-banner :is(a,button):focus-visible {outline:2px solid var(--ps-accent,#d9933e);outline-offset:3px}
/* Scope positioning changes to known fixed controls, only while banner exists. */
html.ps-cookie-open body:is(.ps-top-home,.ps-about-en) .ps-calendly-badge {bottom:calc(var(--ps-cookie-height) + 15px)}
html.ps-cookie-open .restoration-preview-bar {margin-bottom:calc(var(--ps-cookie-height) + 80px)}
@media(max-width:767px) {
  #cookie-banner {padding:1rem;gap:1rem}
  #cookie-banner p {flex-basis:100%}
  #cookie-banner .cookie-actions {max-width:100%;flex-wrap:wrap}
  html.ps-cookie-open body:is(.ps-top-home,.ps-about-en) .ps-calendly-badge {bottom:calc(var(--ps-cookie-height) + 12px)}
}
