/* Shared refinements of the original dark Parapluie design. */
:root { --muted-deep: rgba(240, 235, 224, .65); color-scheme: dark; }
[hidden] { display: none !important; }
html { scrollbar-color: var(--gold) var(--noir-deep); scrollbar-gutter: stable; }
::selection { background: var(--gold); color: var(--noir-deep); }
:focus-visible { outline: 2px solid var(--gold-light, #d9bd8f); outline-offset: 4px; }
input, select, textarea { caret-color: var(--gold-light); }
input::placeholder, textarea::placeholder { color: var(--muted-deep); opacity: 1; }
.skip-link { position:fixed;top:10px;left:16px;z-index:10000;transform:translateY(-160%);padding:14px 20px;background:var(--gold);color:var(--noir-deep);font:14px var(--font-ui); }
.skip-link:focus { transform:translateY(0); }
.mobile-menu { overflow-y:auto;overscroll-behavior:contain; }
.mobile-menu .close-btn, .menu-toggle, .footer-social a { min-width:44px;min-height:44px; }
.mobile-menu ul a { min-height:44px; }
.faq-q { min-height:48px; }
.faq-item.open .faq-a { max-height:none; }
.faq-a { transition:none; }
.form-card label, .form-field label, .field label, .field-label { font-size:12px;letter-spacing:.1em;line-height:1.6; }
.form-card input:not([type='checkbox']):not([type='radio']), .form-card select, .form-card textarea, #castingForm input:not([type='checkbox']):not([type='radio']), #castingForm select, #castingForm textarea { font-size:16px; }
.form-note, .form-hint, .field-hint, .field-help, .form-help, .upload-note, .upload-hint { font-size:13px;line-height:1.7; }
.upload:focus-within, #castingForm .pill:has(input:focus-visible) { outline:2px solid var(--gold-light);outline-offset:4px; }
.info-key, .filter-label, .filter-meta, .filter-bar .filter-label, .filter-bar .filter-meta { font-size:12px;letter-spacing:.12em; }
.hero-meta-item .key, .page-hero-meta-item .key, .page-hero-quick .quick-key, .head-aside-row .key, .glance-cell .key { font-size:11px;letter-spacing:.14em; }
.tier-num-label, .tier-price-tag, .cat-count, .gallery-cap-cat, .strip-meta { font-size:11px;line-height:1.6;letter-spacing:.12em; }
.tier-price { flex-wrap:wrap;gap:12px 20px; }
.hero-meta { flex-wrap:wrap; }
.top-strip .right { font-size:11px;letter-spacing:.14em; }
.footer-col h5, .footer-col ul a, .footer-bottom, .contact-link { font-size:12px; }
.footer-col ul a { display:inline-block;padding:6px 0; }
.footer-bottom a { display:inline-block;padding:6px 0; }
.filter-bar .container { min-width:0; }
.filter-pills { min-width:0;max-width:100%; }
.filter-pills .pill { flex-shrink:0;min-height:44px;font-size:12px;letter-spacing:.1em; }
.filter-pills .count { font-size:11px; }
.gallery-tile:focus-visible { outline-offset:5px; }
.gallery-tile:focus-visible .gallery-cap, .gallery-tile:focus-visible .zoom-mark { opacity:1;transform:none; }
.lightbox { overflow:auto;overscroll-behavior:contain; }
.lightbox .lb-cat, .lightbox .lb-counter { font-size:12px; }
.lightbox-arrow:disabled { opacity:.3;cursor:default; }
.tier-price-num { overflow-wrap:normal; }
@media (max-width:900px) {
  .filter-bar .container { gap:14px; }
  .filter-bar .filter-pills { flex:1 1 100%;width:100%;overflow-x:auto;flex-wrap:nowrap;padding:4px 3px 8px; }
  .filter-pills:focus-within { scrollbar-width:thin; }
  .filter-meta { width:100%; }
}
@media (max-width:600px) {
  .top-strip .right { flex-wrap:wrap;justify-content:center;gap:6px 14px; }
  .top-strip .right a { white-space:nowrap; }
  .top-strip .right { letter-spacing:.08em; }
  .top-strip .right .sep { display:none; }
  .whatsapp-float { display:none; }
  .footer-bottom { line-height:1.8; }
  .form-card label, #castingForm label { letter-spacing:.06em; }
  .lightbox-content { max-width:100%; }
  .lightbox-info { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation:none !important;transition:none !important; }
}
