/* ═══ Global UI Overrides ═══════════════════════════════════════
 * Single source of truth for header, footer, enquiry system.
 * Loads LAST (priority 99) to override any stale page-level CSS.
 * Only contains rules that MUST be consistent across all pages.
 * Base styles remain in main.css.
 * ═══════════════════════════════════════════════════════════════ */

/* ── Header z-index chain ── */
.site-header{z-index:1000}
.enquiry-fab{z-index:1050}
.eq-overlay{z-index:1100;pointer-events:none;opacity:0}
.eq-overlay.is-open{pointer-events:auto;opacity:1}
.enquiry-drawer{z-index:1200}
.eq-modal-bg{z-index:2000}
.eq-toast{z-index:3000}

/* ── Hero aside (desktop only) ── */
@media(min-width:1024px){.hero-aside{display:block!important}.hero-inner{grid-template-columns:1fr 420px!important;gap:5rem!important}}

/* ── Nav mobile ── */
.nav-mobile,.nav-mobile:not([hidden]){display:none;background:var(--ivory,#FAF9F7);border-top:1px solid rgba(58,54,50,.08);padding:1.5rem 0 2rem}
.nav-mobile.is-open{display:block}
@media(min-width:1024px){.menu-toggle{display:none}.nav-mobile,.nav-mobile.is-open{display:none!important}}

/* ── Enquiry drawer item layout ── */
.eq-item{display:flex;gap:.75rem;padding:1rem 0;border-bottom:1px solid #F0EDE8;align-items:flex-start}
.eq-item:last-child{border-bottom:none}
.eq-item-thumb-link{flex-shrink:0;display:block}
.eq-item-name-link{color:inherit;text-decoration:none;transition:color .15s}
.eq-item-name-link:hover{color:#8B7355}
.eq-item-img{width:80px;height:80px;object-fit:cover;flex-shrink:0;background:#F0EDE8;border-radius:4px}
.eq-item-info{flex:1;min-width:0}
.eq-item-brand{font-size:.625rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--accent,#8B7355);margin-bottom:.15rem}
.eq-item-name{font-size:.875rem;font-weight:500;color:#1A1918;line-height:1.3;margin-bottom:.4rem}
.eq-item-price{font-size:.8125rem;color:#3A3632;font-weight:500}
.eq-item-qty{display:flex;align-items:center;gap:.35rem;margin-top:.4rem}
.eq-qty-btn{width:26px;height:26px;border:1px solid #E8E4DE;background:#fff;color:#3A3632;font-size:.875rem;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:background .15s}
.eq-qty-btn:hover{background:#F0EDE8}
.eq-qty-input{width:48px;height:26px;border:1px solid #E8E4DE;background:#fff;color:#3A3632;font-size:.8125rem;font-weight:500;text-align:center;border-radius:3px;font-family:inherit;-moz-appearance:textfield}
.eq-qty-input::-webkit-inner-spin-button,.eq-qty-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.eq-qty-input:focus{outline:none;border-color:#8B7355}
.eq-item-remove{background:none;border:none;color:#C4C0B8;padding:.25rem;cursor:pointer;flex-shrink:0;transition:color .2s;align-self:center}
.eq-item-remove:hover{color:#3A3632}
.eq-item-remove svg{width:16px;height:16px}
/* ── Search dialog ── */
.search-dialog-head{border-bottom:none;padding-bottom:0}
.search-input{border:none!important;border-bottom:1px solid #E8E4DE!important;border-radius:0!important;padding:.5rem 0!important;background:none!important}
.search-input:focus{border-bottom-color:#8B7355!important;box-shadow:none!important;outline:none!important}

/* ── FAQ search focus ── */
.faq-search-input:focus{outline:none!important;box-shadow:none!important}

/* ── Force [hidden] to work even with display:flex rules ── */
#searchLoading[hidden],#searchEmpty[hidden],#searchResults[hidden],#searchDefault[hidden]{display:none!important}

@media(max-width:480px){.eq-item-img{width:64px;height:64px}}

/* ── Brand Card Logo (replaces monogram when LOGO uploaded) ── */
.brand-card-logo{position:relative;z-index:1;max-width:80%;max-height:60%;width:auto;height:auto;object-fit:contain;transition:transform .4s}
.brand-card:hover .brand-card-logo{transform:scale(1.04)}
/* ── Hero Background Image Support ── */
.hero--has-bg::before{content:'';position:absolute;inset:0;background:var(--hero-bg) center/cover no-repeat;z-index:0;filter:brightness(.3) saturate(.6)}
.hero--has-bg .hero-tex,.hero--has-bg .hero-glow{opacity:.3}
/* ── Page Hero Background Image Support ── */
.page-hero--has-bg .page-hero-bg{background:var(--ph-bg) center/cover no-repeat !important;filter:brightness(.25) saturate(.6) !important}
/* ── Hero Photo Card as link ── */
a.hero-photo-card{text-decoration:none;color:inherit;display:block;cursor:pointer}
a.hero-photo-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.3)}
a.hero-photo-card{transition:transform .3s,box-shadow .3s}

/* ── CTA Background Image Override (all pages) ── */
.cta-section--has-bg::before{content:'';position:absolute;inset:0;background:var(--cta-bg-img) center/cover no-repeat;z-index:0;filter:brightness(.25) saturate(.5)}
.cta-sec[style*="--cta-bg-img"]::before{content:'';position:absolute;inset:0;background:var(--cta-bg-img) center/cover no-repeat;filter:brightness(.25) saturate(.5);z-index:0}

/* ── Logo width from backend settings ── */
.site-logo__img{display:block;height:auto;width:var(--logo-width,160px);max-height:60px;object-fit:contain}
.site-logo__img--mobile{display:none}
@media(max-width:1023px){
  .site-logo__img--desktop{display:none}
  .site-logo__img--mobile{display:block;width:var(--logo-mobile-width,120px);max-height:48px;height:auto;object-fit:contain}
}
