/* ═══════════════════════════════════════
   AB HERO SLIDER — style.css v2.0
   Based on v1.5 — dot pattern removed,
   glass box smaller by default
═══════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600&family=Tenor+Sans&family=DM+Sans:wght@300;400;500&family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Raleway:wght@300;400;500&family=Lato:wght@300;400;700&display=swap');

/* ── Default tokens ── */
:root {
  --abhs-maroon:     #6e241c;
  --abhs-gold:       #b8924a;
  --abhs-gold-l:     #e8d5b0;
  --abhs-cream:      #fdf8f2;
  --abhs-glass:      rgba(90,24,14,0.45);
  --abhs-height:     480px;
  --abhs-h-mob:      420px;
  --abhs-btn-bg:     #b8924a;
  --abhs-btn-color:  #ffffff;
  --abhs-btn-bgh:    #ffffff;
  --abhs-btn-colorh: #6e241c;
  --abhs-btn-radius: 3px;
  --abhs-box-w-desk: 300px;
  --abhs-box-w-mob:  185px;
  --abhs-ease:       cubic-bezier(0.22,1,0.36,1);
}

.ab-hero-slider { font-family: 'Tenor Sans', sans-serif; line-height: 1; }
.ab-hero-slider * { box-sizing: border-box; }

/* ── BANNER ── */
.abhs-banner {
  position: relative;
  width: 100%;
  height: var(--abhs-height);
  overflow: hidden;
  background: #1a0604;
}

/* ── SLIDES ── */
.abhs-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 0.9s var(--abhs-ease); }
.abhs-slide.active { opacity: 1; }
.abhs-slide img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 15%;
  display: block;
}
.abhs-slide::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(100deg, rgba(10,2,1,0.58) 0%, rgba(10,2,1,0.30) 38%, rgba(10,2,1,0.06) 62%, transparent 100%);
}

/* ── DOT PATTERN REMOVED ── */
/* .abhs-dots-pattern is no longer rendered in the HTML */

/* ── GLASS TEXT PANEL ── */
.abhs-glass-text {
  position: absolute;
  top: 50%; left: 52px;
  transform: translateY(-50%);
  z-index: 10;
  width: var(--abhs-box-w-desk);
  background: var(--abhs-glass);
  backdrop-filter: blur(22px) saturate(180%);
  -webkit-backdrop-filter: blur(22px) saturate(180%);
  border: 1px solid rgba(232,213,176,0.20);
  border-radius: 14px;
  padding: 28px 32px 26px;
}
.abhs-glass-text::before {
  content: '';
  position: absolute; top: 0; left: 10%; right: 10%; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(232,213,176,0.88) 50%, transparent);
}
.abhs-glass-inner { position: relative; z-index: 2; }

/* ── SLIDE CONTENT (per-slide text panels) ── */
.abhs-slide-content { display: none; }
.abhs-slide-content:first-child { display: block; }

/* ── TEXT ELEMENTS ── */
.abhs-eyebrow {
  font-size: 7px; letter-spacing: 0.38em; text-transform: uppercase;
  color: var(--abhs-gold); margin-bottom: 14px; display: block;
}
.abhs-headline {
  font-family: 'Cormorant Garamond', serif; font-weight: 700;
  font-size: 50px; line-height: 0.95; letter-spacing: 0.01em;
  text-transform: uppercase; color: var(--abhs-cream); margin-bottom: 8px;
}
.abhs-subheadline {
  font-family: 'Cormorant Garamond', serif; font-weight: 300;
  font-size: 21px; line-height: 1.2; color: var(--abhs-gold-l); margin-bottom: 26px;
}
.abhs-subheadline em { font-style: italic; color: var(--abhs-gold); }
.abhs-divider { display: flex; align-items: center; gap: 8px; margin-bottom: 24px; }
.abhs-div-line { display: inline-block; height: 1px; width: 28px; background: linear-gradient(90deg, rgba(184,146,74,0.8), transparent); }
.abhs-div-line--flip { transform: scaleX(-1); }
.abhs-div-diamond { display: inline-block; width: 4px; height: 4px; background: var(--abhs-gold); transform: rotate(45deg); flex-shrink: 0; }

/* ── BUTTON ── */
.abhs-btn {
  display: inline-flex; align-items: center; gap: 10px;
  font-family: 'Tenor Sans', sans-serif;
  font-size: 9px; letter-spacing: 0.28em; text-transform: uppercase;
  padding: 14px 30px;
  background: var(--abhs-btn-bg);
  color: var(--abhs-btn-color);
  border: none;
  border-radius: var(--abhs-btn-radius);
  text-decoration: none;
  transition: background 0.24s var(--abhs-ease), color 0.24s var(--abhs-ease), transform 0.2s var(--abhs-ease), box-shadow 0.24s var(--abhs-ease);
  box-shadow: 0 4px 20px rgba(184,146,74,0.40);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.abhs-btn svg { width: 13px; height: 13px; flex-shrink: 0; transition: transform 0.22s; }
.abhs-btn:hover {
  background: var(--abhs-btn-bgh);
  color: var(--abhs-btn-colorh);
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(184,146,74,0.45);
  text-decoration: none;
}
.abhs-btn:hover svg { transform: translateX(3px); }
.abhs-btn:active { transform: translateY(0) !important; }

/* ── SLIDER DOTS ── */
.abhs-nav {
  position: absolute; bottom: 16px; left: 50%; transform: translateX(-50%);
  z-index: 10; display: flex; gap: 8px; align-items: center;
}
.abhs-dot {
  width: 28px; height: 4px; border-radius: 2px;
  background: rgba(255,255,255,0.35);
  border: none; cursor: pointer; padding: 0;
  transition: all 0.3s var(--abhs-ease);
}
.abhs-dot.active { background: var(--abhs-gold); width: 36px; }
.abhs-dot:hover  { background: rgba(255,255,255,0.60); }

/* ── MARQUEE BAR ── */
.abhs-marquee-bar {
  background: var(--abhs-maroon);
  border-top: 1px solid rgba(184,146,74,0.30);
  overflow: hidden; padding: 10px 0; position: relative;
}
.abhs-marquee-bar::before, .abhs-marquee-bar::after {
  content: ''; position: absolute; top: 0; bottom: 0; width: 60px; z-index: 2;
}
.abhs-marquee-bar::before { left: 0;  background: linear-gradient(90deg,  var(--abhs-maroon), transparent); }
.abhs-marquee-bar::after  { right: 0; background: linear-gradient(270deg, var(--abhs-maroon), transparent); }
.abhs-marquee-track { display: flex; width: max-content; animation: abhs-scroll 22s linear infinite; }
.abhs-marquee-track:hover { animation-play-state: paused; }
.abhs-marquee-item {
  display: inline-flex; align-items: center; padding: 0 28px;
  font-size: 8px; letter-spacing: 0.26em; text-transform: uppercase;
  color: var(--abhs-gold-l); white-space: nowrap;
}
.abhs-marquee-sep { display: inline-block; width: 4px; height: 4px; border-radius: 50%; background: var(--abhs-gold); opacity: 0.7; flex-shrink: 0; align-self: center; }
@keyframes abhs-scroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

/* ── TRUST BAR ── */
.abhs-trustbar {
  background: var(--abhs-maroon);
  display: grid; grid-template-columns: repeat(4,1fr);
  border-top: 1px solid rgba(184,146,74,0.28);
  position: relative; overflow: hidden;
}
.abhs-trustbar::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: rgba(80,20,10,0.30); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
}
.abhs-tb-item {
  position: relative; z-index: 2;
  display: flex; align-items: center; justify-content: center; gap: 12px;
  padding: 18px 14px;
  border-right: 1px solid rgba(255,255,255,0.07);
  transition: background 0.2s;
}
.abhs-tb-item:last-child { border-right: none; }
.abhs-tb-item:hover { background: rgba(255,255,255,0.04); }
.abhs-tb-icon { font-size: 22px; flex-shrink: 0; line-height: 1; }
.abhs-tb-wa-link { display: flex; align-items: center; }
.abhs-wa-icon { width: 22px; height: 22px; fill: #fff; opacity: 0.80; flex-shrink: 0; }
.abhs-tb-text strong {
  display: block; font-size: 8px; letter-spacing: 0.15em; text-transform: uppercase;
  color: var(--abhs-gold-l); line-height: 1.3;
}
.abhs-tb-text span { font-size: 6.5px; letter-spacing: 0.07em; text-transform: uppercase; color: rgba(232,213,176,0.34); }

/* ════════════════════════════════
   MOBILE
════════════════════════════════ */
@media (max-width: 768px) {
  .abhs-banner { height: var(--abhs-h-mob) !important; }

  .abhs-slide::after {
    background: linear-gradient(135deg, transparent 40%, rgba(10,2,1,0.55) 100%);
  }

  .abhs-glass-text {
    width: var(--abhs-box-w-mob) !important;
    padding: 16px 18px 14px;
    border-radius: 10px;
    background: rgba(70,16,10,0.68) !important;
    backdrop-filter: blur(20px) saturate(170%);
    -webkit-backdrop-filter: blur(20px) saturate(170%);
  }

  .abhs-eyebrow     { font-size: 5.5px; letter-spacing: 0.22em; margin-bottom: 7px; }
  .abhs-headline    { font-size: 24px; line-height: 0.95; margin-bottom: 5px; }
  .abhs-subheadline { font-size: 12px; margin-bottom: 10px; }
  .abhs-divider     { margin-bottom: 10px; }
  .abhs-btn         { padding: 10px 16px; font-size: 7.5px; letter-spacing: 0.18em; width: 100%; justify-content: center; }

  .abhs-nav { bottom: auto; top: 16px; }

  .abhs-trustbar { grid-template-columns: repeat(2,1fr); }
  .abhs-tb-item:nth-child(3),
  .abhs-tb-item:nth-child(4) { border-top: 1px solid rgba(255,255,255,0.07); }
  .abhs-tb-item:nth-child(2) { border-right: none; }
}

@media (max-width: 480px) {
  .abhs-marquee-item { font-size: 7px; padding: 0 18px; }
}
