/* =================================================================
   Bar Beauty - extras: scroll reveals, counters, FAQ accordion
   ================================================================= */

/* SCROLL REVEAL */
.bb-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.25,.46,.45,.94),transform .8s cubic-bezier(.25,.46,.45,.94)}
.bb-reveal.in{opacity:1;transform:translateY(0)}
.bb-reveal-delay-1{transition-delay:.1s}
.bb-reveal-delay-2{transition-delay:.2s}
.bb-reveal-delay-3{transition-delay:.3s}
.bb-reveal-delay-4{transition-delay:.4s}
@media(prefers-reduced-motion:reduce){.bb-reveal{opacity:1;transform:none;transition:none}}

/* ANIMATED COUNTERS */
.bb-stat-num{font-variant-numeric:tabular-nums}
.bb-stat-num.counting{color:var(--bb-gold)}

/* FAQ ACCORDION */
.bb-faq{max-width:780px;margin:0 auto}
.bb-faq-item{border-bottom:1px solid #e5e1d8;background:#fff}
.bb-faq-item:first-child{border-top:1px solid #e5e1d8}
.bb-faq-q{display:flex;justify-content:space-between;align-items:center;padding:24px 4px;cursor:pointer;font-family:var(--serif,'Cormorant Garamond',serif);font-size:21px;font-weight:400;color:#0a0a0a;transition:color .2s;line-height:1.3}
.bb-faq-q:hover{color:#c4a467}
.bb-faq-icon{font-size:24px;font-weight:300;color:#c4a467;flex-shrink:0;margin-left:20px;transition:transform .35s ease;line-height:1;width:20px;text-align:center}
.bb-faq-item.open .bb-faq-icon{transform:rotate(45deg)}
.bb-faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .35s ease;padding:0 4px;display:block}
.bb-faq-item.open .bb-faq-a{max-height:1200px;padding:0 4px 28px}
.bb-faq-a p{font-family:var(--sans,'Inter',sans-serif);font-size:15px;line-height:1.75;color:#555;margin-bottom:14px}
.bb-faq-a p:last-child{margin-bottom:0}
.bb-faq-a a{color:#c4a467;border-bottom:1px solid #c4a467}
.bb-faq-a strong{color:#0a0a0a;font-weight:600}

/* 404 PAGE */
.bb-404{min-height:70vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#fafaf7 0%,#fff 100%);padding:120px 32px;text-align:center}
.bb-404-inner{max-width:680px}
.bb-404 .num{font-family:var(--serif,'Cormorant Garamond',serif);font-size:clamp(120px,20vw,220px);font-weight:300;line-height:.9;color:#0a0a0a;letter-spacing:-.04em;margin-bottom:8px}
.bb-404 .num em{font-style:italic;color:#c4a467}
.bb-404 .gold-rule{display:block;width:60px;height:1px;background:#c4a467;margin:24px auto 28px}
.bb-404 h1{font-family:var(--serif,'Cormorant Garamond',serif);font-size:clamp(28px,3.6vw,42px);font-weight:300;color:#0a0a0a;margin-bottom:14px}
.bb-404 p{font-family:var(--serif,'Cormorant Garamond',serif);font-size:18px;font-style:italic;color:#666;margin-bottom:36px;line-height:1.6}
.bb-404 .btn-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:48px}
.bb-404 a.btn{font-family:var(--sans,'Inter',sans-serif);font-size:12px;letter-spacing:.25em;text-transform:uppercase;font-weight:600;padding:18px 36px;text-decoration:none;border:1px solid;display:inline-block;transition:all .25s}
.bb-404 a.gold{background:#c4a467;color:#fff;border-color:#c4a467}
.bb-404 a.gold:hover{background:#b29455;border-color:#b29455}
.bb-404 a.outline{background:transparent;color:#0a0a0a;border-color:#0a0a0a}
.bb-404 a.outline:hover{background:#0a0a0a;color:#fff}
.bb-404 .quick-links{font-size:13px;color:#888;letter-spacing:.04em}
.bb-404 .quick-links a{color:#555;border-bottom:1px solid transparent;padding:0 4px;transition:all .2s}
.bb-404 .quick-links a:hover{color:#c4a467;border-bottom-color:#c4a467}
.bb-404 .quick-links span{color:#c4a467;margin:0 6px}

/* BB_LOGO_FIX: force logo size on every page including WooCommerce */
.bb-header .bb-logo img,
header .bb-logo img,
a.bb-logo img,
img.brand-logo {
    height: 42px !important;
    width: auto !important;
    max-width: 170px !important;
    object-fit: contain !important;
    display: block !important;
}
@media (max-width: 1100px) {
    .bb-header .bb-logo img,
    header .bb-logo img,
    a.bb-logo img {
        height: 36px !important;
        max-width: 140px !important;
    }
}
.bb-header { gap: 18px; align-items: center; }
.bb-nav { flex-wrap: nowrap; }
.bb-nav-item { white-space: nowrap; }
