/* Scoped styles shared by the home page, catalog and subpages. */
.gm-consent[hidden], .gm-consent [hidden] { display: none !important; }
.gm-consent {
  position: fixed; inset: auto 0 0; z-index: 10000;
  max-height: 85dvh; overflow-y: auto; overscroll-behavior: contain;
  background: #15120c; color: #efe9dc; border-top: 1px solid #d4af37;
  box-shadow: 0 -12px 45px #0009; text-align: left;
  font-family: 'Montserrat', 'Segoe UI', sans-serif;
  padding: 22px max(20px, env(safe-area-inset-right)) max(22px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
}
.gm-consent-inner { max-width: 1160px; margin: auto; display: flex; gap: 32px; align-items: center; }
.gm-consent-copy { flex: 1; }
.gm-consent h2 { margin: 0 0 8px; color: #f2de9b; font: 600 24px/1.2 'Cormorant', Georgia, serif; }
.gm-consent p { margin: 0 0 8px; font-size: 13px; line-height: 1.65; color: #efe9dc; }
.gm-consent a { color: #f2de9b; text-decoration: underline; text-underline-offset: 3px; }
.gm-consent-actions { display: flex; flex-direction: column; gap: 10px; min-width: 260px; }
.gm-consent button {
  appearance: none; min-height: 44px; padding: 11px 16px; cursor: pointer;
  border: 1px solid #d4af37; border-radius: 4px; background: #201a0f; color: #f2de9b;
  font: 600 13px/1.5 'Montserrat', 'Segoe UI', sans-serif; text-align: center;
}
.gm-consent button:hover { background: #342b16; }
.gm-consent button:focus-visible, .gm-privacy-links a:focus-visible, .gm-privacy-links button:focus-visible {
  outline: 2px solid #f2de9b; outline-offset: 3px;
}
.gm-consent .gm-consent-close { border-color: transparent; text-decoration: underline; }
.gm-consent .gm-consent-status { margin: 0; font-weight: 600; }
.gm-privacy-links {
  max-width: 1200px; margin: 16px auto 0; padding: 0 20px;
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px 24px;
  font: 400 12px/1.6 'Montserrat', 'Segoe UI', sans-serif;
}
.gm-privacy-links a, .gm-privacy-links button {
  color: #d4c8af; text-decoration: underline; text-underline-offset: 3px;
}
.gm-privacy-links button { font: inherit; background: none; border: 0; cursor: pointer; min-height: 44px; }
@media (max-width: 680px) {
  .gm-consent { padding-top: 16px; padding-bottom: max(16px, env(safe-area-inset-bottom)); }
  .gm-consent-inner { flex-direction: column; gap: 12px; align-items: stretch; }
  .gm-consent-actions { min-width: 0; gap: 8px; }
  .gm-consent h2 { font-size: 23px; }
  .gm-consent p { font-size: 12px; }
}
