/* Femmedoll advisory age gate — only activates when bootstrap adds fd-ag-pending. */
#fd-agegate { display: none !important; }
html.fd-ag-pending { overflow: hidden !important; }
html.fd-ag-pending body { overflow: hidden !important; }
html.fd-ag-pending body > *:not(#fd-agegate) { visibility: hidden !important; }
html.fd-ag-pending #fd-agegate {
  display: flex !important; visibility: visible !important; position: fixed !important;
  inset: 0 !important; z-index: 2147483647 !important; overflow-y: auto !important;
  padding: 18px !important; align-items: center !important; justify-content: center !important;
  box-sizing: border-box !important; background: var(--fd-ag-backdrop, rgba(0,0,0,.88)) !important;
  -webkit-overflow-scrolling: touch;
}
#fd-agegate, #fd-agegate * { box-sizing: border-box; }
#fd-agegate .fd-agegate__card {
  width: min(100%, 440px); margin: auto; padding: 35px 30px 28px;
  border-radius: 18px; text-align: center; background: var(--fd-ag-card-bg, #fff);
  color: var(--fd-ag-text, #1e293b); box-shadow: 0 22px 90px rgba(0,0,0,.3);
  line-height: 1.65; font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", sans-serif;
}
#fd-agegate .fd-agegate__logo { display: block; max-width: 190px; max-height: 90px; margin: 0 auto 16px; width: auto; height: auto; object-fit: contain; }
#fd-agegate .fd-agegate__eyebrow { font-size: 11px; font-weight: 800; letter-spacing: .2em; opacity: .6; margin-bottom: 9px; }
#fd-agegate h2 { color: inherit; font-size: 27px; line-height: 1.35; font-weight: 750; margin: 0 0 14px; }
#fd-agegate p { color: inherit; font-size: 14px; line-height: 1.85; margin: 0 0 23px; }
#fd-agegate .fd-agegate__actions { display: flex; flex-direction: column; gap: 11px; }
#fd-agegate .fd-agegate__yes,
#fd-agegate .fd-agegate__no {
  font: inherit; font-weight: 700; font-size: 15px; line-height: 1.45; padding: 14px 14px;
  width: 100%; border-radius: 9px; cursor: pointer; text-align: center; text-decoration: none;
  transition: filter .15s ease; display: block;
}
#fd-agegate .fd-agegate__yes { color: #fff; background: var(--fd-ag-accent, #be6478); border: 1px solid transparent; }
#fd-agegate .fd-agegate__no { color: inherit; background: transparent; border: 1px solid currentColor; }
#fd-agegate .fd-agegate__yes:hover, #fd-agegate .fd-agegate__no:hover { filter: brightness(.93); }
#fd-agegate .fd-agegate__yes:focus-visible, #fd-agegate .fd-agegate__no:focus-visible { outline: 3px solid #4599ff; outline-offset: 2px; }
#fd-agegate .fd-agegate__footnote { font-size: 11px; opacity: .64; margin-top: 20px; }
@media(max-width:500px) {
  #fd-agegate .fd-agegate__card { padding: 28px 21px 24px; border-radius: 15px; }
  #fd-agegate h2 { font-size: 24px; }
}
