/* ==========================================================================
   HOME v4 — Black · Gold · Ivory premium redesign
   (loaded last on index.html so it wins over inline styles)
   ========================================================================== */
body{background:var(--sa-ivory,#faf8f3)}

/* ---------- Stats ticker: black LED strip ---------- */
.stats-ticker-wrap{background:#0a0a0c!important;border-top:0!important;border-bottom:1px solid rgba(243,207,99,.28)!important;box-shadow:none!important}
.stats-ticker-wrap::before{background:linear-gradient(to right,#0a0a0c 0%,rgba(10,10,12,0) 100%)!important}
.stats-ticker-wrap::after{background:linear-gradient(to left,#0a0a0c 0%,rgba(10,10,12,0) 100%)!important}
.stats-ticker{padding:9px 0!important}
.ticker-val{background:linear-gradient(135deg,#f3cf63,#d4a62a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#d4a62a!important}
.ticker-label{color:#b9b4a3!important;letter-spacing:1.1px!important}
.ticker-sep{color:rgba(243,207,99,.45)!important}
.ticker-dot{background:#d4a62a!important}

/* ---------- Special offer strip ---------- */
#home-offer-strip{background:linear-gradient(90deg,#a47a12,#f3cf63,#d4a62a,#f3cf63,#a47a12)!important;background-size:300% 100%!important;color:#0a0a0c!important;box-shadow:0 6px 18px -8px rgba(164,122,18,.6)!important;font-weight:800!important}

/* ---------- Hero: cinematic rounded card ---------- */
.hero-section.hero-carousel-wrap{
  margin:14px 14px 0!important;width:auto!important;min-height:0!important;height:520px!important;
  border-radius:30px!important;background:#0a0a0c!important;
  box-shadow:0 30px 50px -28px rgba(10,10,12,.85),0 0 0 1px rgba(243,207,99,.28)!important;
}
.hero-slide{min-height:0!important;height:100%;align-items:flex-end!important;justify-content:flex-start!important}
.hero-slide-bg{background-position:center!important;transform:scale(1.04)}
.hero-slide-overlay{background:
  linear-gradient(0deg,rgba(5,5,7,.96) 0%,rgba(8,8,10,.70) 38%,rgba(10,10,12,.12) 78%,rgba(10,10,12,.35) 100%)!important}
/* no-photo fallback slide */
.hero-slide-fallback{
  background:
    radial-gradient(90% 55% at 88% 0%,rgba(243,207,99,.38),transparent 60%),
    radial-gradient(70% 50% at 0% 100%,rgba(212,166,42,.20),transparent 62%),
    linear-gradient(165deg,#1a1a1f 0%,#08080a 100%)!important;
  animation:none!important;
}
.hero-slide-fallback::before{
  width:340px!important;height:340px!important;top:-120px!important;right:-120px!important;
  background:none!important;border-radius:50%;border:1.5px solid rgba(243,207,99,.35)!important;
  box-shadow:0 0 0 22px rgba(243,207,99,.05),0 0 0 54px rgba(243,207,99,.03)
}
.hero-slide .hero-content{
  position:relative!important;top:auto!important;left:auto!important;transform:none!important;
  max-width:640px!important;width:100%;padding:0 22px 70px!important;text-align:left!important;align-items:flex-start!important
}
.hero-slide .hero-tag{
  background:rgba(10,10,12,.55)!important;border:1px solid rgba(243,207,99,.55)!important;color:#f3cf63!important;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  font-size:.64rem!important;letter-spacing:.2em;text-transform:uppercase;padding:7px 14px!important;font-weight:800!important
}
.hero-slide .hero-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:#f3cf63;box-shadow:0 0 10px #f3cf63}
.hero-slide h1{font-size:2.6rem!important;line-height:1.04!important;letter-spacing:-.025em;margin-bottom:12px!important;font-weight:800}
.hero-slide h1 span{
  background:linear-gradient(135deg,#f9dd7e 0%,#d4a62a 55%,#a47a12 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#d4a62a!important;text-shadow:none
}
.hero-slide .hero-sub{max-width:420px;font-size:.93rem!important;margin-bottom:22px!important;color:rgba(255,255,255,.78)!important}
.hero-actions{display:flex;gap:10px;width:100%;max-width:400px}
.hero-actions>a{flex:1 1 0;justify-content:center;text-align:center;white-space:nowrap}
.hero-slide .hero-btn{
  background:linear-gradient(135deg,#f3cf63 0%,#d4a62a 55%,#b8891a 100%)!important;color:#0a0a0c!important;
  padding:15px 16px!important;border-radius:16px!important;font-weight:800!important;max-width:none!important;width:auto!important;
  box-shadow:0 14px 28px -10px rgba(212,166,42,.85),inset 0 1px 0 rgba(255,255,255,.55)!important
}
.hero-slide .hero-btn:hover{background:linear-gradient(135deg,#f9dd7e,#d4a62a)!important}
.hero-btn-ghost{
  display:inline-flex;align-items:center;padding:14px 16px;border-radius:16px;
  border:1.5px solid rgba(255,255,255,.4);background:rgba(255,255,255,.08);color:#fff;font-weight:700;font-size:.95rem;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)
}
.hero-dots{left:22px!important;bottom:26px!important;transform:none!important}
.hero-dot{background:rgba(255,255,255,.35)!important}
.hero-dot.active{background:linear-gradient(90deg,#f3cf63,#d4a62a)!important;box-shadow:0 0 10px rgba(243,207,99,.6)}
.hero-arrow{display:none!important}
@media(min-width:768px){
  .hero-section.hero-carousel-wrap{margin:24px auto 0!important;width:calc(100% - 48px)!important;max-width:1180px;height:600px!important}
  .hero-slide .hero-content{padding:0 64px 82px!important}
  .hero-slide h1{font-size:4.2rem!important}
  .hero-slide .hero-sub{font-size:1.1rem!important}
  .hero-dots{left:64px!important;bottom:36px!important}
  .hero-arrow{display:flex!important;top:auto!important;bottom:26px;transform:none!important;left:auto!important;width:46px;height:46px;background:rgba(10,10,12,.55);border-color:rgba(243,207,99,.5);color:#f3cf63}
  .hero-arrow-next{right:30px!important}.hero-arrow-prev{right:86px!important}
}

/* ---------- Shared section kit ---------- */
.sar-wrap{max-width:1180px;margin:0 auto;padding:34px 16px 4px!important}
.sar-eyebrow{display:flex;align-items:center;gap:10px;font-size:.68rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#a47a12}
.sar-eyebrow::before{content:"";width:26px;height:2px;border-radius:2px;background:linear-gradient(90deg,#a47a12,#f3cf63)}
.sar-h2{font-family:var(--font-display,inherit);font-size:1.85rem!important;line-height:1.1;letter-spacing:-.02em;color:#0a0a0c;margin:10px 0 8px}
.sar-lead{color:#6f6a5c;font-size:.95rem;line-height:1.7;margin:0 0 20px}
.sar-btn{
  display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:17px 20px;border-radius:18px;
  background:linear-gradient(180deg,#1d1d22,#0a0a0c);color:#fff;font-weight:700;font-size:.98rem;
  box-shadow:0 16px 28px -14px rgba(10,10,12,.85),inset 0 0 0 1px rgba(243,207,99,.35);transition:transform .15s
}
.sar-btn svg{width:18px;height:18px;color:#f3cf63}
.sar-btn:active{transform:scale(.98)}
.sar-btn-sm{padding:14px 16px;font-size:.9rem;border-radius:15px}
.sar-btn-line{background:#fff;color:#0a0a0c;box-shadow:none;border:1.5px solid #e3dcc6}

/* categories */
.sar-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.sar-cat{
  display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;
  background:#fff;border:1px solid var(--sa-line,#ece6d6);border-radius:22px;padding:18px 6px 15px;
  box-shadow:0 14px 28px -22px rgba(10,10,12,.55);transition:transform .2s,border-color .2s,box-shadow .2s
}
.sar-cat:active,.sar-cat:hover{transform:translateY(-3px);border-color:#d4a62a;box-shadow:0 18px 30px -18px rgba(164,122,18,.55)}
.sar-cat-ic{width:52px;height:52px;border-radius:17px;background:linear-gradient(160deg,#25252b,#0a0a0c);color:#f3cf63;display:grid;place-items:center;margin-bottom:9px;box-shadow:inset 0 0 0 1px rgba(243,207,99,.35),0 10px 18px -10px rgba(10,10,12,.8)}
.sar-cat-ic svg{width:27px;height:27px}
.sar-cat b{font-size:.92rem;color:#0a0a0c}.sar-cat small{font-size:.7rem;color:#8a8472}
/* features */
.sar-feats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
.sar-feat{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--sa-line,#ece6d6);border-radius:18px;padding:14px 12px}
.sar-feat-ic{flex:none;width:38px;height:38px;border-radius:12px;background:linear-gradient(160deg,#fbf1cf,#f4e1a0);color:#8a6410;display:grid;place-items:center}
.sar-feat-ic svg{width:20px;height:20px}
.sar-feat b{display:block;font-size:.82rem;color:#0a0a0c;line-height:1.25}
.sar-feat small{display:block;font-size:.72rem;color:#8a8472;line-height:1.4;margin-top:2px}
/* steps with connector line */
.sar-steps{display:grid;gap:12px;margin-top:16px}
.sar-step{position:relative;display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--sa-line,#ece6d6);border-radius:20px;padding:15px 16px}
.sar-step:not(:last-child)::after{content:"";position:absolute;left:36px;top:100%;height:12px;width:2px;background:linear-gradient(#d4a62a,rgba(212,166,42,0))}
.sar-num{flex:none;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#f3cf63,#d4a62a 55%,#a47a12);color:#0a0a0c;display:grid;place-items:center;font-weight:800;font-family:var(--font-display,inherit);font-size:1.1rem;box-shadow:0 10px 18px -10px rgba(164,122,18,.9)}
.sar-step b{display:block;color:#0a0a0c;font-size:.95rem}.sar-step small{display:block;color:#8a8472;font-size:.8rem;line-height:1.5;margin-top:2px}

/* ---------- Reviews (dark cards) ---------- */
#reviews-section .reviews-list{margin-top:16px}
.review-card{background:linear-gradient(150deg,#1c1c21,#0c0c0f)!important;border:1px solid rgba(243,207,99,.22)!important;border-radius:22px!important;box-shadow:0 18px 32px -22px rgba(10,10,12,.9)!important}
.review-card::after{color:rgba(243,207,99,.12)!important}
.reviewer-avatar{background:linear-gradient(135deg,#f3cf63,#d4a62a 55%,#a47a12)!important;color:#0a0a0c!important}
.reviewer-name{color:#fff!important}
.review-text{color:rgba(255,255,255,.76)!important}
.review-date{color:rgba(255,255,255,.4)!important}
.review-stars,.star-opt.active,.star-opt.selected{color:#f3cf63!important}
.review-skeleton{background:linear-gradient(90deg,#eee9da 25%,#f7f3e6 50%,#eee9da 75%)!important;background-size:200% 100%!important;border-radius:20px!important}
.btn-view-all{background:#fff!important;color:#0a0a0c!important;border:1.5px solid #e3dcc6!important;border-radius:15px!important;padding:13px 24px!important;font-weight:700!important}
.btn-view-all:hover{background:#0a0a0c!important;color:#f3cf63!important;border-color:#0a0a0c!important}
.review-divider{background:linear-gradient(90deg,transparent,#d9cfb0,transparent)!important;height:1px!important}
/* review form */
.review-form-box{background:linear-gradient(150deg,#1c1c21,#08080a)!important;border:1px solid rgba(243,207,99,.25)!important;border-radius:26px!important;box-shadow:0 26px 44px -26px rgba(10,10,12,.95)!important}
.review-form-box::before{background:radial-gradient(circle,rgba(243,207,99,.18) 0%,transparent 70%)!important}
.review-form-icon{background:rgba(243,207,99,.14)!important}
.star-opt.active{color:#f3cf63!important;text-shadow:0 0 12px rgba(243,207,99,.6)!important}
.star-opt.hover{color:#e8bd42!important}
.review-input{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important;color:#fff!important}
.review-input:focus{border-color:#d4a62a!important;box-shadow:0 0 0 3px rgba(212,166,42,.22)!important}
.btn-submit-review{background:linear-gradient(135deg,#f3cf63,#d4a62a 55%,#b8891a)!important;color:#0a0a0c!important;font-weight:800!important;box-shadow:0 14px 26px -12px rgba(212,166,42,.9)!important}

/* ---------- Find us ---------- */
.sar-find{background:linear-gradient(155deg,#1d1d22,#07070a);border-radius:26px;padding:20px;margin-top:16px;display:grid;gap:16px;box-shadow:0 26px 46px -26px rgba(10,10,12,.95),inset 0 0 0 1px rgba(243,207,99,.25)}
.sar-find-row{display:flex;gap:12px;align-items:center;color:#fff;font-size:.95rem;line-height:1.45}
.sar-find-row .sar-feat-ic{background:rgba(243,207,99,.15);color:#f3cf63}
.sar-find-btns{display:grid;grid-template-columns:1.4fr 1fr;gap:10px}
.sar-find .sar-btn{background:linear-gradient(135deg,#f3cf63,#d4a62a 55%,#b8891a);color:#0a0a0c;box-shadow:none}
.sar-find .sar-btn-line{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.3)}
.sar-find .sar-btn svg{color:currentColor;width:16px;height:16px}

/* ---------- Footer ---------- */
.sar-footer{position:relative;background:#050506;color:#bdb8a7;margin-top:38px;padding:22px 20px calc(100px + env(safe-area-inset-bottom))}
.sar-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#a47a12,#f3cf63,#a47a12,transparent)}
.sar-foot-top{max-width:1180px;margin:0 auto;display:grid;gap:18px}
.sar-foot-brand b{display:block;color:#fff;font-size:1.2rem;font-family:var(--font-display,inherit)}
.sar-foot-brand span{font-size:.85rem;color:#8d8978}
.sar-foot-links{display:flex;flex-wrap:wrap;gap:8px 18px}
.sar-foot-links a{font-size:.85rem;font-weight:600;color:#e9e4d2}.sar-foot-links a:hover{color:#f3cf63}
.sar-foot-bar{max-width:1180px;margin:0 auto;padding-top:0;border-top:0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:.75rem;color:#7a7666}
.sar-foot-bar p{margin:0;font-size:.75rem;color:inherit}.sar-foot-bar a{color:#f3cf63;font-weight:600}

/* ---------- Desktop ---------- */
@media(min-width:768px){
  .sar-wrap{padding:52px 24px 8px!important}
  .sar-h2{font-size:2.4rem!important}
  .sar-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;align-items:start}
  .sar-intro .sar-eyebrow,.sar-intro .sar-h2,.sar-intro .sar-lead{grid-column:1}
  .sar-intro .sar-cats{grid-column:2;grid-row:1/4}
  .sar-intro .sar-feats{grid-column:1/3;grid-template-columns:repeat(4,1fr)}
  .sar-intro .sar-btn{grid-column:1/3;max-width:360px;margin:0 auto}
  .sar-steps{grid-template-columns:repeat(4,1fr)}
  .sar-step{flex-direction:column;align-items:flex-start;padding:22px}
  .sar-step:not(:last-child)::after{display:none}
  .sar-find{grid-template-columns:1fr auto;align-items:center;padding:28px 32px}
  .sar-find-btns{grid-template-columns:auto auto}
  .sar-foot-top{grid-template-columns:1fr auto;align-items:center}
}

/* footer text sits just above the floating dock (no extra body gap on mobile) */
@media(max-width:767px){body{padding-bottom:0!important}}
@media(min-width:768px){.sar-footer{padding:26px 20px 26px}}

/* Home: header scrolls away with the page (not fixed) */
.top-header{position:relative!important;top:auto!important}
