/* Estienne legal-readiness and accessibility safeguards · 2026-08-29 */

.skip-link{
  position:fixed;
  z-index:10001;
  top:10px;
  left:10px;
  transform:translateY(-180%);
  padding:.8rem 1rem;
  border:2px solid #d6b36a;
  border-radius:4px;
  background:#fff;
  color:#111;
  font:700 .9rem/1.1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  text-decoration:none;
  transition:transform .16s ease;
}
.skip-link:focus{transform:none}

:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid #f1c66f !important;
  outline-offset:4px !important;
  box-shadow:0 0 0 2px #171411 !important;
}

.privacy-control{
  position:fixed;
  z-index:9996;
  right:12px;
  bottom:12px;
  min-height:42px;
  padding:.65rem .85rem;
  border:1px solid rgba(214,179,106,.72);
  background:#151411;
  color:#eee7dc;
  font:600 .66rem/1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
  cursor:pointer;
}

/* Keep the customer cart's bottom-left action clear and independently tappable. */
.consent-panel{position:fixed !important;z-index:9997;left:auto !important;right:max(12px,env(safe-area-inset-right)) !important;bottom:calc(80px + env(safe-area-inset-bottom)) !important;width:min(520px,calc(100vw - 24px)) !important;max-width:none;padding:16px 18px;border:1px solid #665c4b;background:#151411;color:#eee7dc;box-shadow:0 18px 60px rgba(0,0,0,.58)}
.consent-panel[hidden]{display:none !important}
.consent-panel strong{display:block;font:600 .72rem/1.2 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.1em;text-transform:uppercase}
.consent-panel p{margin:.4rem 0 .85rem;color:#c9c0b4;font:1rem/1.45 var(--display,serif)}
.consent-actions{display:flex;flex-wrap:wrap;gap:8px}
.consent-actions button{min-height:44px;padding:.65rem .9rem;border:1px solid #8d7956;background:#eee7dc;color:#171511;font:600 .7rem/1.1 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.consent-actions button.secondary{background:transparent;color:#eee7dc}
.about-contact-card{margin-top:clamp(28px,5vw,54px);padding:clamp(24px,4vw,42px);border:1px solid rgba(201,163,108,.28);background:linear-gradient(145deg,rgba(201,163,108,.08),rgba(255,255,255,.025));box-shadow:0 24px 60px rgba(0,0,0,.16)}
.about-contact-card h2{margin:.28em 0 .2em;font:500 clamp(2rem,4vw,3.4rem)/1 var(--display,serif)}
.about-contact-email{display:inline-block;margin:.5rem 0 .7rem;color:var(--page-accent,#c9a36c);font:500 clamp(1.2rem,2.4vw,1.7rem)/1.2 var(--display,serif);text-underline-offset:.25em}
.about-contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.25rem}
@media(max-width:600px){.about-contact-actions{display:grid}.about-contact-actions .btn{text-align:center}.privacy-control{right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom))}.consent-panel{left:10px !important;right:10px !important;bottom:calc(80px + env(safe-area-inset-bottom)) !important;width:auto !important;padding:13px 14px}.consent-panel p{font-size:.92rem}.consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-actions button{padding:.6rem .45rem;font-size:.62rem}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto !important}
  *,*::before,*::after{
    scroll-behavior:auto !important;
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .skip-link{transition:none}
}
