:focus-visible { outline: 3px solid #1766aa; outline-offset: 4px; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 10001; background: #fff; color: #171717; padding: 12px 20px; }
.skip-link:focus { top: 12px; }
.contact-panel { max-width: 760px; margin: 48px auto; padding: 32px 24px; background: #faf8f3; color: #1a1a1a; border: 1px solid #d9d1c6; border-radius: 12px; }
.contact-panel h2 { font-size: 28px; line-height: 1.3; margin: 0 0 12px; }
.contact-panel p { margin: 12px 0; }
.contact-panel a { color: #624817; text-decoration: underline; }
.contact-panel label, #consultation-form .field-label { display: block; font-size: 14px; font-weight: 600; margin: 12px 0 6px; }
.contact-panel input, .contact-panel textarea { box-sizing: border-box; width: 100%; border: 1px solid #777; border-radius: 4px; padding: 12px; background: white; color: #1a1a1a; font: inherit; }
.contact-panel input[type=checkbox] { width: auto; margin-right: 8px; }
.contact-panel button, .consent-panel button { min-height: 44px; padding: 12px 20px; background: #25211c; color: white; border: 1px solid #25211c; border-radius: 0; cursor: pointer; font: inherit; }
.contact-panel button:disabled { opacity: .65; cursor: wait; }
.consent-panel {
  position: fixed;
  bottom: 20px;
  left: 20px;
  right: 20px;
  z-index: 10000;
  max-width: 420px;
  margin: 0;
  padding: 22px 22px 18px;
  background: #141210;
  color: rgba(247, 245, 242, 0.82);
  border: 1px solid rgba(234, 214, 175, 0.28);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.45);
  font: 14px/1.55 Manrope, system-ui, sans-serif;
}
.consent-panel[hidden] { display: none; }
.consent-panel p { margin: 0 0 16px; }
.consent-panel__actions { display: flex; gap: 10px; flex-wrap: wrap; }
.consent-panel .consent-reject {
  background: transparent;
  color: rgba(234, 214, 175, 0.9);
  border: 1px solid rgba(234, 214, 175, 0.4);
}
.consent-panel .consent-accept {
  background: #b08d55;
  border-color: #b08d55;
  color: #141210;
}
.cookie-settings {
  display: inline;
  margin: 0;
  padding: 0;
  background: none;
  color: inherit;
  border: none;
  border-radius: 0;
  cursor: pointer;
  font: inherit;
}
body > .cookie-settings {
  display: inline-block;
  position: fixed;
  left: 16px;
  bottom: 14px;
  z-index: 40;
  color: rgba(234, 214, 175, 0.55);
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-family: Outfit, Manrope, system-ui, sans-serif;
}
body > .cookie-settings:hover { color: #ead6af; }
.btn-accent { background: #806237; color: #fff; }
.btn-primary { background: #1a1a1a; color: #fff; }
.btn-outline-gold { color: #725628; }
.hero .btn-outline-gold, .site-header .btn-outline-gold,
.visit-section .btn-outline-gold, .cta-band .btn-outline-gold { color: #ead6af; border-color: #ead6af; }
.visit-section .btn-outline-gold:hover, .cta-band .btn-outline-gold:hover { background: #ead6af; color: #1a1612; }
#consultation-form select, .contact-panel select { width: 100%; border: 1px solid #777; border-radius: 4px; padding: 12px; background: #fff; color: #1a1a1a; font: inherit; }
.hero-title span { color: #f0e2c4; }
.overview-eyebrow, .live-catalog-header p:first-child { color: #765914; }
.cta-whatsapp-btn { background: #16763b; color: white; }
.portal__title { display: block; font-size: clamp(28px, 5vw, 44px); line-height: 1.2; margin: 16px 0; }
.font-display .text-primary, .font-display .text-primary\/60 { color: #765914; }
.font-display .collection-badge { background: none; color: #765914; -webkit-text-fill-color: #765914; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } *, *::before, *::after { animation: none !important; transition: none !important; } .reveal { opacity: 1 !important; transform: none !important; } }
