/* =====================================================
   bZuko Styles v1 (CLEAN + STABLE) — CLEANED
   - Consolidated + de-duplicated
   - Keeps Sage/Stone theme
   - Fixes: checkout conflicts (totals, coupon, dropdown)
   ===================================================== */

/* ========== TOKENS ========== */
:root{
  --bg:#f6f7fb;
  --surface:rgba(255,255,255,.94);
  --surface2:rgba(255,255,255,.85);
  --line:rgba(18,20,23,.10);
  --text:#121417;
  --muted:rgba(18,20,23,.65);

  --sage:#8FAEA3;
  --sage-soft:rgba(143,174,163,.14);
  --sage-muted:#6F8F85;
  --sage-ink:#1C2329;

  --stone:#F1EFEA;
  --ink:#1C2329;

  --shadow:0 22px 60px rgba(18,20,23,.10);
  --shadow2:0 12px 30px rgba(18,20,23,.08);

  --r16:16px;
  --r20:20px;
  --r24:24px;

  --wrap:min(1180px, calc(100% - 32px));
  --tap:44px;

  --font:Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
}

/* ========== BASE ========== */
*{ box-sizing:border-box; }
html,body{ height:100%; }
body{
  margin:0;
  font-family:var(--font);
  color:var(--text);
  background:
    radial-gradient(900px 420px at 15% 0%, rgba(143,174,163,.14), transparent 60%),
    radial-gradient(900px 420px at 100% 10%, rgba(200,183,164,.12), transparent 58%),
    var(--bg);
}
img{ max-width:100%; display:block; }
a{ color:inherit; }
.wrap{ width:var(--wrap); margin:0 auto; }

/* ========== HEADER ========== */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter:blur(10px);
  background:rgba(246,247,251,.75);
  border-bottom:1px solid var(--line);
}
.header-row{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 0;
  flex-wrap:nowrap;
}

.logo{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  font-weight:900;
  letter-spacing:-.2px;
}
.logo-img{
  height:40px;
  width:auto;
  display:block;
  object-fit:contain;
}
.logo-accent{
  background:linear-gradient(90deg,var(--sage),var(--sage-muted));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.nav{
  display:flex;
  gap:10px;
  margin-left:8px;
  padding:6px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.55);
}
.nav a{
  text-decoration:none;
  padding:10px 12px;
  border-radius:999px;
  font-weight:700;
  color:rgba(15,23,42,.82);
}
.nav a:hover{ background:var(--sage-soft); }

.header-actions{
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
  white-space:nowrap;
}

.icon-btn{
  width:var(--tap);
  height:var(--tap);
  display:grid;
  place-items:center;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.55);
  cursor:pointer;
  flex-shrink:0;
  position:relative;
}
.icon-btn svg{ width:20px; height:20px; fill:rgba(15,23,42,.78); }
.icon-btn:hover{ background:var(--sage-soft); }

/* ✅ Red cart badge */
.cart-badge{
  position:absolute;
  transform: translate(14px, -14px);
  min-width:20px;
  height:20px;
  padding:0 6px;
  display:grid;
  place-items:center;
  border-radius:999px;
  font-size:.75rem;
  font-weight:1000;
  background: rgba(239,68,68,.95);
  border: 1px solid rgba(255,255,255,.25);
  color:#fff;
}

.account-inline{
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
  flex-shrink:0;
}
.account-name{
  font-weight:800;
  font-size:.9rem;
  line-height:1;
  color:var(--text);
}
.logout-link{
  font-size:.85rem;
  font-weight:700;
  color:var(--sage-muted);
  text-decoration:none;
}
.logout-link:hover{ text-decoration:underline; }

.hamburger{
  display:none;
  width:var(--tap);
  height:var(--tap);
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.55);
  cursor:pointer;
  padding:10px;
}
.hamburger span{
  display:block;
  height:2px;
  background:rgba(15,23,42,.70);
  border-radius:999px;
}
.hamburger span+span{ margin-top:6px; }

.mobile-menu{
  width:var(--wrap);
  margin:0 auto 12px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.86);
  box-shadow:var(--shadow2);
  padding:10px;
}
.mobile-menu a{
  display:block;
  padding:12px 12px;
  border-radius:12px;
  text-decoration:none;
  font-weight:800;
  color:rgba(15,23,42,.82);
}
.mobile-menu a:hover{ background:rgba(15,23,42,.06); }

/* ========== PRODUCTS DROPDOWN ========== */
.nav-dd{ position:relative; display:inline-flex; align-items:center; }
.nav-dd-trigger{ display:inline-flex; align-items:center; gap:6px; }
.nav-dd-caret{ font-size:.9em; opacity:.7; }

.nav-dd-menu{
  position:absolute;
  top: calc(100% + 10px);
  left: 0;
  min-width: 520px;
  max-width: 760px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.25);
  background: rgba(255,255,255,.96);
  box-shadow: 0 18px 50px rgba(15,23,42,.12);
  z-index: 60;

  opacity:0;
  visibility:hidden;
  transform: translateY(6px);
  transition: opacity .12s ease, transform .12s ease, visibility .12s ease;
  pointer-events:none;
}
.nav-dd:hover .nav-dd-menu,
.nav-dd:focus-within .nav-dd-menu,
.nav-dd.open .nav-dd-menu,
.nav-dd.is-open .nav-dd-menu{
  opacity:1;
  visibility:visible;
  transform: translateY(0);
  pointer-events:auto;
}
.nav-dd-grid{ display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.nav-dd-col{
  padding: 10px;
  border-radius: 14px;
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(255,255,255,.7);
}
.nav-dd-head{
  display:block;
  font-weight:1000;
  color: var(--sage-ink);
  text-decoration:none;
  margin-bottom: 6px;
}
.nav-dd-links a{
  display:block;
  padding: 6px 0;
  text-decoration:none;
  color: var(--text);
  font-weight: 800;
  opacity: .92;
}
.nav-dd-links a:hover{ text-decoration: underline; }
.nav-dd-footer{
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid rgba(148,163,184,.18);
}
.nav-dd-all{ font-weight:1000; text-decoration:none; color: var(--sage-ink); }
.nav-dd-empty{ padding:6px; }
.nav-dd-empty a{
  display:block;
  padding:10px 8px;
  text-decoration:none;
  font-weight:1000;
  color:var(--sage-ink);
}
.nav-dd-hint{ margin-top:6px; color:var(--muted); font-weight:800; font-size:.85rem; }

@media (max-width: 900px){
  .nav-dd-menu{ display:none !important; }
}

/* ========== HERO ========== */
.hero{ padding:20px 0 10px; position:relative; }
.hero-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:14px;
  align-items:stretch;
}
/* === HERO MARQUEE (announcement bar) === */
.hero-marquee{ margin: 0 0 14px; }
.hero-marquee-inner{
  border-radius: 999px;
  border: 1px solid rgba(143,174,163,.35);
  background: linear-gradient(90deg,
    rgba(143,174,163,.18),
    rgba(255,255,255,.78),
    rgba(143,174,163,.14)
  );
  box-shadow: 0 14px 36px rgba(15,23,42,.08);
  overflow: hidden;
  position: relative;

  /* soft fade edges so it feels premium */
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.hero-marquee-track{
  display:flex;
  width:max-content;
  gap: 44px;
  padding: 10px 0;
  animation: bz-marquee 22s linear infinite;
}
.hero-marquee:hover .hero-marquee-track{ animation-play-state: paused; }
.hero-marquee-item{
  white-space: nowrap;
  font-weight: 1000;
  letter-spacing: .01em;
  color: rgba(15,23,42,.86);
  padding: 0 14px;
}
@keyframes bz-marquee{
  from{ transform: translateX(0); }
  to{ transform: translateX(-50%); }
}

/* respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .hero-marquee-track{ animation: none; }
}

.hero-copy,.hero-side{
  border:1px solid var(--line);
  background:var(--surface);
  border-radius:var(--r24);
  box-shadow:var(--shadow2);
  padding:18px;
}
.hero-copy{ position:relative; overflow:hidden; background:var(--stone); }
.hero-ambient{
  position:absolute;
  inset:-1px 0 auto 0;
  height:220px;
  pointer-events:none;
  background:radial-gradient(700px 260px at 30% 30%, var(--sage-soft), transparent 60%);
  filter:blur(2px);
  opacity:.9;
}

.pill{
  display:inline-flex;
  align-items:center;
  padding:.35rem .7rem;
  border-radius:999px;
  border:1px solid rgba(143,174,163,.35);
  background:rgba(255,255,255,.92);
  color:var(--sage-muted);
  font-weight:800;
  font-size:.9rem;
}

.hero-title{
  margin:10px 0 6px;
  font-size:clamp(2.2rem,4vw,3.2rem);
  letter-spacing:-.9px;
  line-height:1.02;
  display:flex;
  align-items:baseline;
  gap:.55rem;
  flex-wrap:wrap;
}
.hero-logo{
  height:1em;
  width:auto;
  display:inline-block;
  vertical-align:baseline;
  transform: translateY(.08em);
  object-fit:contain;
}
.sub{ margin:0 0 12px; color:var(--muted); font-size:1.05rem; max-width:60ch; }
.cta-row{ display:flex; gap:10px; flex-wrap:wrap; margin:10px 0 12px; }

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.85rem 1.05rem;
  border-radius:999px;
  border:1px solid var(--line);
  text-decoration:none;
  font-weight:900;
  letter-spacing:.2px;
  min-height:var(--tap);
  background:rgba(255,255,255,.75);
}
.btn.primary{
  background:var(--sage);
  border:1px solid rgba(143,174,163,.45);
  color:#0f172a;
  box-shadow:0 16px 36px rgba(143,174,163,.28);
}
.btn.ghost{ background:rgba(15,23,42,.04); }

.side-title{ font-weight:950; letter-spacing:-.2px; margin-bottom:10px; }
.vibe-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.vibe{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px;
  border-radius:18px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.70);
  text-decoration:none;
  box-shadow:0 10px 22px rgba(15,23,42,.06);
  transition: transform .14s ease, background .14s ease;
}
.vibe:hover{ background:rgba(15,23,42,.03); transform: translateY(-1px); }
.vibe span{ font-size:1.2rem; }
.vibe strong{ display:block; font-weight:950; }
.vibe em{ display:block; font-style:normal; color:var(--muted); font-size:.9rem; margin-top:2px; }

.mini-note{
  margin-top:12px;
  padding:12px;
  border-radius:18px;
  border:1px dashed rgba(15,23,42,.18);
  background:rgba(255,255,255,.65);
}
.mini-note strong{ display:block; font-weight:950; margin-bottom:3px; }
.mini-note span{ color:var(--muted); }

/* mini note + PayPal badge row (hero side) */
.hero-side .mini-note-row{
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.hero-side .mini-note-row .mini-note{ margin-top:0; flex:1; }

.hero-side .side-paypal-badge{
  flex:0 0 auto;
  width:128px;
  max-width:42%;
  padding:8px;
  border-radius:16px;
  border:1px solid rgba(15,23,42,.14);
  background: rgba(255,255,255,.72);
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-side .side-paypal-badge img{
  display:block;
  width:100%;
  height:auto;
}

/* Mobile: stack badge under the note so it never feels cramped */
@media (max-width: 560px){
  .hero-side .mini-note-row{
    flex-direction:column;
    align-items:flex-start;
  }
  .hero-side .side-paypal-badge{
    width:min(220px, 100%);
    max-width:100%;
  }
}

/* ========== SECTIONS ========== */
.section{ padding:24px 0; }
.sec-head{ display:flex; align-items:end; justify-content:space-between; gap:12px; margin-bottom:6px; }
.sec-head h2{ margin:0; font-size:1.25rem; letter-spacing:-.2px; }
.link{ color:var(--sage-muted); font-weight:800; text-decoration:none; }
.link:hover{ text-decoration:underline; }

/* =====================================================
   HOME SECTIONS: 5 cards per row, no scroll (FINAL)
   ===================================================== */
.scroller{
  display:grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap:14px;
  overflow:visible !important;
  padding-bottom:0 !important;
}
.scroller > *{ min-width:0; }
.scroller-track{ display:contents; }

@media (max-width: 1100px){
  .scroller{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 900px){
  .scroller{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .scroller{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 420px){
  .scroller{ grid-template-columns: 1fr; }
}

/* =========================================
   PRODUCTS PAGE LAYOUT (sidebar + grid)
   ========================================= */
.products-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.products-title{ margin:0; font-size:1.6rem; letter-spacing:-.02em; }
.products-controls{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }

.sort select{
  min-height:44px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.75);
  font-weight:900;
}

.products-grid{
  display:grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap:16px;
  align-items:start;
}

/* Sidebar card */
.products-sidebar .side-card{
  border:1px solid var(--line);
  background:rgba(255,255,255,.86);
  border-radius:18px;
  padding:14px;
  box-shadow: var(--shadow2);
  position:sticky;
  top:86px; /* below sticky header */
}

.side-title{
  font-weight:1000;
  margin-bottom:10px;
  letter-spacing:-.01em;
}

.side-link,
.side-sublink{
  display:block;
  padding:10px 10px;
  border-radius:12px;
  text-decoration:none;
  font-weight:900;
  color:rgba(15,23,42,.82);
}

.side-link:hover,
.side-sublink:hover{
  background:rgba(15,23,42,.05);
}

.side-link.active,
.side-sublink.active{
  background: var(--sage-soft);
  border:1px solid rgba(143,174,163,.35);
}

.side-group{ margin-top:8px; }
.side-sub{ margin:6px 0 0 10px; display:grid; gap:6px; }
.side-sublink{ font-weight:850; opacity:.92; }

/* Product area */
.products-list .scroller{
  grid-template-columns: repeat(4, minmax(0,1fr));
}

/* Responsive */
@media (max-width: 1100px){
  .products-grid{ grid-template-columns: 240px minmax(0,1fr); }
  .products-list .scroller{ grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 900px){
  .products-grid{ grid-template-columns: 1fr; }
  .products-sidebar .side-card{ position:relative; top:auto; }
  .products-list .scroller{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 420px){
  .products-list .scroller{ grid-template-columns: 1fr; }
}

/* ========== PRODUCT CARD (SHARED) ========== */
.product-card{
  position:relative;
  border:1px solid var(--line);
  background:var(--surface);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.product-link{ display:block; color:inherit; text-decoration:none; }
.product-media{ aspect-ratio: 1 / 1; background: rgba(0,0,0,.03); }
.product-media img{ width:100%; height:100%; object-fit:contain; display:block; padding:10px; }
.product-body{ padding:12px 12px 14px; }
.product-title{ font-weight:900; line-height:1.25; margin-bottom:8px; }
.product-price{ display:flex; gap:10px; align-items:baseline; flex-wrap:wrap; }
.product-price .price{ font-weight:1000; }
.product-price .price.sale{ color:#ef4444; }
.product-price .price.was{ opacity:.65; text-decoration:line-through; font-weight:900; }

/* Pills */
.sale-pill{
  position:absolute;
  top:10px;
  right:10px;
  z-index:8;
  padding:6px 10px;
  border-radius:999px;
  font-weight:1000;
  font-size:.82rem;
  background: rgba(239,68,68,.12);
  border:1px solid rgba(239,68,68,.35);
  color:#ef4444;
}

/* Favorites heart */
.fav-btn{
  position:absolute;
  top:10px;
  left:10px;
  z-index:9;
  width:34px;
  height:34px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  display:grid;
  place-items:center;
  cursor:pointer;
  transition: transform .12s ease, background .12s ease;
}
.fav-btn:hover{ transform: scale(1.07); }
.fav-btn.active{
  background:#ef4444;
  border-color:#ef4444;
  color:#fff;
}

/* ========== STORY / PRODUCT PAGE ========== */
.story .story-box{
  display:grid;
  grid-template-columns: 420px 1fr;
  gap: 16px;
  border:1px solid var(--line);
  border-radius:var(--r24);
  background:var(--stone);
  box-shadow:var(--shadow);
  overflow:hidden;
  align-items:start;
}
.story-media{ padding:14px; display:block; }
.story-media-inner{
  width:100%;
  max-width:420px;
  height:420px;
  border-radius:var(--r20);
  border:1px solid var(--line);
  background: rgba(255,255,255,.65);
  overflow:hidden;
  display:grid;
  place-items:center;
}
.story-media-inner img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:14px;
  background: rgba(255,255,255,.78);
}
.story-media .thumbs-row{ display:flex; gap:10px; margin-top:10px; flex-wrap:wrap; }
.story-media button{ border:0; background:transparent; padding:0; }
.story-media button img{
  width:64px;
  height:64px;
  object-fit:contain;
  border-radius:14px;
  background: rgba(255,255,255,.78);
  padding:8px;
  box-shadow: inset 0 0 0 1px rgba(18,20,23,.08);
}
.story-copy{ padding:14px 18px 18px 0; }
.story-copy h2{ margin:0 0 8px; font-size:1.45rem; letter-spacing:-.2px; }
.story-copy p{ margin:0 0 12px; color:var(--muted); max-width:70ch; }
.story-cta{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom:12px; }

.story-badge{
  border:1px solid var(--line);
  border-radius:var(--r20);
  background:rgba(255,255,255,.70);
  padding:12px;
}
.badge-top{ font-weight:950; color:rgba(15,23,42,.74); margin-bottom:6px; }
.badge-main{
  font-weight:950;
  background:linear-gradient(90deg,var(--sage),var(--sage-muted));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* ========== FEED ========== */
.feed{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.feed-card{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:12px;
  border:1px solid var(--line);
  border-radius:var(--r24);
  background:rgba(241,239,234,.70);
  box-shadow:var(--shadow2);
  overflow:hidden;
  transition: transform .18s ease, box-shadow .18s ease;
}
.feed-card:hover{ transform: translateY(-2px); box-shadow:0 18px 44px rgba(18,20,23,.12); }
.feed-media{
  aspect-ratio:1/1;
  display:block;
  background:
    radial-gradient(520px 260px at 20% 15%, rgba(143,174,163,.10), transparent 60%),
    radial-gradient(520px 260px at 85% 10%, rgba(200,183,164,.08), transparent 62%),
    rgba(15,23,42,.03);
  overflow:hidden;
}
.feed-media img{ width:100%; height:100%; object-fit:cover; }
.feed-body{ padding:16px; }
.feed-hook{ font-weight:950; color:rgba(15,23,42,.72); margin-bottom:6px; }
.feed-title{ margin:0 0 6px; font-size:1.08rem; line-height:1.2; letter-spacing:-.1px; }
.feed-title a{ text-decoration:none; }
.feed-title a:hover{ text-decoration:underline; }
.feed-meta{ margin:0 0 14px; color:var(--muted); }

/* ========== AUTH FORMS ========== */
.auth-center{ display:flex; justify-content:center; padding: 20px 0 40px; }
.auth-card--elevated{
  width:100%;
  max-width:420px;
  padding:22px;
  border-radius:22px;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.86));
  border:1px solid rgba(148,163,184,.25);
  box-shadow: 0 10px 30px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.6);
}
.auth-head{ text-align:center; margin-bottom:14px; }
.auth-title{ margin:0 0 6px; font-size:1.7rem; font-weight:900; letter-spacing:-.02em; }
.auth-sub{ margin:0; font-size:.95rem; color:var(--muted); font-weight:800; }
.auth-form .field{ display:grid; gap:6px; margin:14px 0; }
.auth-form label{ font-size:.85rem; font-weight:900; color:var(--sage-ink); }
.auth-form input{
  padding:13px 14px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,.3);
  background:rgba(255,255,255,.95);
  font-weight:800;
  transition:border .15s ease, box-shadow .15s ease;
}
.auth-form input:focus{
  border-color:rgba(22,163,74,.45);
  box-shadow:0 0 0 3px rgba(22,163,74,.18);
}
.auth-submit{
  width:100%;
  margin-top:6px;
  padding:13px 14px;
  border-radius:14px;
  font-weight:1000;
}
.auth-footer{
  margin-top:14px;
  text-align:center;
  font-size:.9rem;
  font-weight:800;
  color:var(--muted);
}
.auth-footer a{ color:var(--sage-ink); text-decoration:none; font-weight:900; }
.auth-footer a:hover{ text-decoration:underline; }
.auth-footer .sep{ margin:0 6px; opacity:.6; }

/* ========== CHECKOUT (FORM + SUMMARY) ========== */
.checkout-grid{
  display:grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(0, 1.15fr);
  gap: 16px;
  align-items:start;
}
.checkout-aside{ display:grid; gap:16px; }

.checkout-card--elevated{
  padding: 18px;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.86));
  border: 1px solid rgba(148,163,184,.25);
  box-shadow: 0 10px 30px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.6);
}

.checkout-fields .field{ display:grid; gap:6px; margin:12px 0; }
.checkout-fields label{ font-size:.85rem; font-weight:900; color:var(--sage-ink); }

.checkout-fields input,
.checkout-fields select{
  width:100%;
  padding: 13px 14px;
  border-radius: 14px;
  border: 1px solid rgba(148,163,184,.3);
  background: rgba(255,255,255,.95);
  font-weight: 800;
  outline: none;
  transition: border .15s ease, box-shadow .15s ease;
}

.checkout-fields input:focus,
.checkout-fields select:focus{
  border-color: rgba(22,163,74,.45);
  box-shadow: 0 0 0 3px rgba(22,163,74,.18);
}

/* ✅ Shipping method select — nicer + consistent + reliable arrow */
.checkout-fields select#shipping-method-select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  padding-right: 44px;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(15,23,42,.55) 50%),
    linear-gradient(135deg, rgba(15,23,42,.55) 50%, transparent 50%);
  background-position:
    calc(100% - 18px) 50%,
    calc(100% - 12px) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat:no-repeat;
}

.field-row{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.divider{ height:1px; background: rgba(148,163,184,.25); margin: 14px 0; }

.checkout-submit{
  width:100%;
  padding: 13px 14px;
  border-radius: 14px;
  font-weight: 1000;
  margin-top: 10px;
}

/* ✅ RIGHT COLUMN SUMMARY — single source of truth */
.checkout-aside .checkout-card{
  background: linear-gradient(180deg, rgba(143,174,163,.18), rgba(255,255,255,.92) 45%);
  border: 1px solid rgba(143,174,163,.35);
  border-radius: 22px;
  box-shadow: 0 18px 46px rgba(15,23,42,.10);
}

.checkout-aside .card-hd{
  padding-bottom: 10px;
  border-bottom: 1px dashed rgba(143,174,163,.35);
}
.checkout-aside .card-title{
  font-size: 1.05rem;
  font-weight: 1000;
  letter-spacing: -.01em;
}

.checkout-aside .summary-items{ margin-top: 14px; }
.checkout-aside .summary-item{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding: 12px 0;
}
.checkout-aside .summary-left{ min-width:0; }
.checkout-aside .summary-price{
  text-align:right;
  white-space:nowrap;
  font-weight:900;
}

/* Totals: label/amount always separated */
.checkout-aside .totals{
  margin-top: 14px;
  padding-top: 10px;
}
.checkout-aside .totals .row{
  display:grid;
  grid-template-columns: 1fr auto;
  gap:14px;
  align-items:baseline;
  font-size:.95rem;
  padding: 6px 0;
}
.checkout-aside .totals .row > span:first-child{
  min-width:0;
  padding-right: 8px;
  color: rgba(15,23,42,.70);
  font-weight: 900;
}
.checkout-aside .totals .row > span:last-child{
  text-align:right;
  white-space:nowrap;
  min-width: 92px;
  font-weight: 1000;
  letter-spacing: -0.01em;
}
.checkout-aside .totals .row.total{
  margin-top: 12px;
  padding-top: 14px;
  border-top: 2px solid rgba(143,174,163,.45);
  font-size: 1.15rem;
  font-weight: 1000;
}

.checkout-aside .good{ color: #15803d; font-weight: 900; }

.checkout-aside .place-order-wrap{
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px dashed rgba(143,174,163,.35);
}
.checkout-aside .checkout-submit{
  width: 100%;
  padding: 14px 16px;
  font-size: 1.05rem;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(15,23,42,.15);
}

/* ✅ Coupon box — soft red highlight */
.checkout-aside .checkout-coupon-box{
  margin-top: 14px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(185, 28, 28, .18);
  background: linear-gradient(180deg, rgba(239,68,68,.14), rgba(255,255,255,.92));
  box-shadow: 0 10px 26px rgba(239,68,68,.10);
}
.checkout-aside .checkout-coupon-box .coupon-head{ margin-bottom: 10px; }
.checkout-aside .checkout-coupon-box .coupon-title{
  font-size: .98rem;
  font-weight: 1000;
  letter-spacing: -.01em;
  color: #7f1d1d;
}
.checkout-aside .checkout-coupon-box .coupon-sub{
  font-size: .88rem;
  font-weight: 800;
  color: rgba(127,29,29,.75);
  margin-top: 2px;
}
.checkout-aside .checkout-coupon-box .coupon-row{
  display:flex;
  gap: 10px;
  align-items:center;
}
.checkout-aside .checkout-coupon-box .coupon-row input{
  flex: 1;
  min-width: 0;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(185, 28, 28, .18);
  background: rgba(255,255,255,.98);
  font-weight: 900;
}
.checkout-aside .checkout-coupon-box .ajax-msg{ margin-top: 10px; }

/* ========== NOTICES + FORMS ========== */
.card{
  border-radius: 22px;
  border: 1px solid rgba(148,163,184,.25);
  background: rgba(255,255,255,.86);
  box-shadow: var(--shadow2);
  padding: 18px;
}
.card--elevated{
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.86));
  box-shadow: 0 10px 30px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.6);
}
.notice{
  margin: 10px 0 14px;
  padding: 12px 12px;
  border-radius: 14px;
  font-weight: 900;
  border: 1px solid rgba(148,163,184,.25);
  background: rgba(255,255,255,.7);
}
.notice.success{
  border-color: rgba(34,197,94,.25);
  background: rgba(34,197,94,.08);
  color: rgba(22,101,52,.95);
}
.notice.error{
  border-color: rgba(239,68,68,.25);
  background: rgba(239,68,68,.08);
  color: rgba(127,29,29,.95);
}

.nice-form .field{ display:grid; gap:6px; margin:12px 0; }
.nice-form label{ font-size:.85rem; font-weight:900; color: var(--sage-ink); }
.nice-form input,
.nice-form textarea{
  width:100%;
  padding: 13px 14px;
  border-radius: 14px;
  border: 1px solid rgba(148,163,184,.3);
  background: rgba(255,255,255,.95);
  font-weight: 800;
  outline: none;
  transition: border .15s ease, box-shadow .15s ease;
}
.nice-form textarea{ resize: vertical; min-height: 140px; }
.nice-form input:focus,
.nice-form textarea:focus{
  border-color: rgba(22,163,74,.45);
  box-shadow: 0 0 0 3px rgba(22,163,74,.18);
}

/* ========== CONTACT – TWO COLUMN ========== */
.contact-grid{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 28px;
  align-items:start;
}
.trustbox{
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 18px;
  padding: 18px;
}
.trustbox .row{ display:flex; gap:14px; align-items:flex-start; }
.trustbox .ico{ font-size: 1.6rem; line-height: 1; }
.trustbox h3{ margin: 0 0 6px; font-weight: 1000; }
.trustbox p{ margin: 6px 0; line-height: 1.6; color: var(--muted); }

/* ========== REVIEWS (HOME) ========== */
.reviews.section{ padding: 34px 0; }
.reviews-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom: 14px;
}
.reviews-stat{
  display:flex;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border:1px solid var(--line);
  background: var(--surface);
  border-radius: 14px;
}
.reviews-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
}
.review-card{
  border:1px solid var(--line);
  background: var(--surface);
  border-radius: 16px;
  padding: 14px;
}
.review-text{ margin-top:8px; line-height:1.6; color: var(--muted); }
.review-form form{ margin-top: 10px; }
.rf-row{ display:grid; grid-template-columns: 1fr 1fr; gap:10px; margin-bottom:10px; }
.rf-row select, .rf-row input, .review-form textarea{
  width:100%;
  border-radius: 12px;
  border:1px solid var(--line);
  background:#fff;
  padding: 10px 12px;
  font: inherit;
}
.review-form textarea{ min-height:110px; resize:vertical; }

/* ========== CAPTCHA (MATH) ========== */
.captcha{
  margin: 12px 0 12px;
  border:1px dashed rgba(18,20,23,.18);
  background: rgba(255,255,255,.80);
  border-radius: 14px;
  padding: 12px;
}
.captcha .cap-q{ font-weight: 1000; margin:0 0 6px; }
.captcha .cap-hint{ margin:0 0 10px; color: var(--muted); font-size:.92rem; }
.captcha input{
  max-width: 220px;
  border-radius: 12px;
  border:1px solid var(--line);
  background:#fff;
  padding:10px 12px;
}

/* ========== FOOTER (SINGLE SOURCE OF TRUTH) ========== */
.site-footer{
  margin-top: 28px;
  background: #0b1224;
  color: rgba(255,255,255,.92);
  border-top: 1px solid rgba(255,255,255,.10);
}
.site-footer a{ color: rgba(255,255,255,.92); text-decoration:none; }
.site-footer a:hover{ color:#fff; text-decoration:underline; }

.site-footer .footer-grid{
  display:grid;
  grid-template-columns: 1.2fr 1.6fr 1fr;
  gap: 26px;
  align-items:start;
  padding: 28px 0;
}
.site-footer .footer-logo{ font-weight: 1000; font-size: 1.35rem; letter-spacing:-.02em; }
.site-footer .footer-left p{ margin:10px 0 0; color: rgba(255,255,255,.80); line-height:1.6; }

.site-footer .footer-links{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap: 18px;
}
.site-footer .footer-links h4{ margin:0 0 10px; font-weight: 1000; color:#fff; }
.site-footer .footer-links a{ display:block; padding:6px 0; color: rgba(255,255,255,.86); }

.site-footer .footer-note .small{ color: rgba(255,255,255,.76); line-height:1.55; }
.site-footer .footer-note-row{
  margin-top: 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

/* social buttons */
.site-footer .footer-social{ display:flex; gap:10px; align-items:center; }
.site-footer .footer-social a{
  width:42px; height:42px; border-radius:999px;
  display:grid; place-items:center;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.08);
}
.site-footer .footer-social svg{ width:18px; height:18px; fill:#fff; display:block; }
.site-footer .footer-social a.ig{ background:linear-gradient(135deg,#f472b6,#a78bfa,#60a5fa); }
.site-footer .footer-social a.fb{ background:linear-gradient(135deg,#60a5fa,#2563eb); }
.site-footer .footer-social a.pin{ background:linear-gradient(135deg,#fb7185,#dc2626); }
.site-footer .footer-social a.x{ background:linear-gradient(135deg,#cbd5e1,#64748b); }

/* ===== Footer Newsletter ===== */
.footer-newsletter{
  margin-top: 16px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
}

.footer-newsletter .nl-title{
  font-weight: 1000;
  font-size: 1.02rem;
  color: #fff;
  margin-bottom: 4px;
  letter-spacing: -.01em;
}

.footer-newsletter .nl-sub{
  color: rgba(255,255,255,.78);
  font-weight: 800;
  font-size: .92rem;
  line-height: 1.45;
  margin-bottom: 10px;
}

.footer-newsletter .nl-form{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.footer-newsletter .nl-form input{
  flex: 1;
  min-width: 220px;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.10);
  color: #fff;
  font-weight: 900;
  outline: none;
}

.footer-newsletter .nl-form input::placeholder{
  color: rgba(255,255,255,.65);
  font-weight: 800;
}

.footer-newsletter .nl-form input:focus{
  border-color: rgba(255,255,255,.30);
  box-shadow: 0 0 0 3px rgba(255,255,255,.10);
}

.footer-newsletter .nl-form button{
  padding: 12px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.92);
  color: #0b1224;
  font-weight: 1000;
  cursor: pointer;
}

.footer-newsletter .nl-form button:hover{
  background:#fff;
}

.footer-newsletter .nl-fine{
  margin-top: 10px;
  font-size: .82rem;
  font-weight: 800;
  color: rgba(255,255,255,.70);
  line-height: 1.45;
}

.footer-newsletter .nl-fine a{
  text-decoration: underline;
}

.footer-newsletter .nl-msg{
  margin: 8px 0 10px;
  padding: 10px 10px;
  border-radius: 14px;
  font-weight: 900;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.88);
}
.footer-newsletter .nl-msg.ok{
  border-color: rgba(34,197,94,.35);
  background: rgba(34,197,94,.10);
}
.footer-newsletter .nl-msg.err{
  border-color: rgba(239,68,68,.35);
  background: rgba(239,68,68,.10);
}


/* ========== AI HELP CHAT (CSS) ========== */
.aihelp-fab{
  position:fixed; right:16px; bottom:16px;
  width:54px; height:54px; border-radius:999px;
  border:1px solid rgba(18,20,23,.14);
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 55px rgba(0,0,0,.20);
  display:grid; place-items:center;
  z-index: 9999;
  cursor:pointer;
}
.aihelp-fab span{ font-size:22px; line-height:1; }

.aihelp-modal{ position:fixed; inset:0; background: rgba(0,0,0,.45); display:none; z-index: 10000; }
.aihelp-modal.open{ display:block; }

.aihelp-panel{
  position:absolute; right:16px; bottom:86px;
  width: min(420px, calc(100vw - 32px));
  height: 520px;
  border-radius: 18px;
  border:1px solid rgba(18,20,23,.12);
  background: rgba(255,255,255,.96);
  box-shadow: 0 26px 80px rgba(0,0,0,.26);
  display:flex; flex-direction:column; overflow:hidden;
}
.aihelp-head{
  padding: 12px 14px;
  display:flex; justify-content:space-between; align-items:center; gap:10px;
  border-bottom:1px solid rgba(18,20,23,.10);
}
.aihelp-sub{ font-size:.9rem; opacity:.75; margin-top:2px; }
.aihelp-close{
  border:1px solid rgba(18,20,23,.12);
  background: rgba(255,255,255,.85);
  border-radius: 12px;
  padding: 6px 10px;
  cursor:pointer;
}
.aihelp-body{ padding:12px; display:flex; flex-direction:column; gap:10px; overflow:auto; flex:1; }
.aihelp-msg{
  max-width: 86%;
  padding: 10px 12px;
  border-radius: 14px;
  border:1px solid rgba(18,20,23,.10);
  background: rgba(255,255,255,.92);
  line-height:1.45;
}
.aihelp-msg.user{ align-self:flex-end; background: rgba(143,174,163,.16); }
.aihelp-foot{ padding:10px; border-top:1px solid rgba(18,20,23,.10); display:flex; gap:8px; }
.aihelp-foot input{
  flex:1;
  border-radius: 12px;
  border:1px solid rgba(18,20,23,.12);
  background:#fff;
  padding:10px 12px;
}
.aihelp-foot button{
  border-radius: 12px;
  border:1px solid rgba(18,20,23,.12);
  background: rgba(143,174,163,.18);
  padding:10px 12px;
  font-weight: 900;
  cursor:pointer;
}

/* ========== RESPONSIVE ========== */
@media (max-width:980px){
  .nav{ display:none; }
  .hamburger{ display:block; margin-left:auto; }
  .header-actions{ margin-left:0; }
  .hero-grid{ grid-template-columns:1fr; }
  .feed{ grid-template-columns:1fr; }
  .story .story-box{ grid-template-columns:1fr; }
  .site-footer .footer-grid{ grid-template-columns: 1fr; gap: 18px; }
  .site-footer .footer-links{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 900px){
  .checkout-grid{ grid-template-columns: 1fr; }
  .field-row{ grid-template-columns: 1fr; }
  .contact-grid{ grid-template-columns: 1fr; gap: 22px; }
  .story-media-inner{ max-width:100%; height:360px; }
  .story-copy{ padding:14px; }
  .reviews-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 680px){
  .feed-card{ grid-template-columns: 1fr; }
  .feed-media{ aspect-ratio: 16/10; }
}

@media (max-width: 560px){
  .site-footer .footer-links{ grid-template-columns: 1fr; }
  .reviews-grid{ grid-template-columns: 1fr; }
  .rf-row{ grid-template-columns: 1fr; }
}

/* =====================================================
   CART (Contrast Upgrade) — SAFE + SCOPED
   ===================================================== */
.cart-page .cart-header,
.cart-header{
  border:1px solid var(--line);
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.86));
  border-radius: 22px;
  box-shadow: var(--shadow2);
  padding: 16px 16px 14px;
  margin-bottom: 14px;
}

.cart-page .cart-header h1,
.cart-header h1{
  margin:0 0 6px;
  letter-spacing:-.02em;
}

.cart-page .cart-subtitle,
.cart-subtitle{
  margin:0;
  color: var(--muted);
  font-weight: 800;
}

.cart-page .cart-table,
.cart-table{
  width:100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 20px;
  overflow:hidden;
  box-shadow: var(--shadow2);
  margin-top: 12px;
}

.cart-page .cart-table thead th,
.cart-table thead th{
  padding: 14px 12px;
  background: rgba(143,174,163,.12);
  border-bottom: 1px solid rgba(148,163,184,.25);
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .10em;
  color: rgba(18,20,23,.62);
}

.cart-page .cart-table td,
.cart-table td{
  padding: 14px 12px;
  border-bottom: 1px solid rgba(148,163,184,.18);
  vertical-align: middle;
}

.cart-page .cart-table tbody tr:hover td,
.cart-table tbody tr:hover td{
  background: rgba(15,23,42,.03);
}

.cart-page .cart-table tbody tr:last-child td,
.cart-table tbody tr:last-child td{
  border-bottom: none;
}

/* Qty input polish */
.cart-page .cart-table input[type="number"],
.cart-table input[type="number"]{
  width: 84px;
  padding: 10px 10px;
  border-radius: 12px;
  border: 1px solid rgba(148,163,184,.30);
  background: rgba(255,255,255,.95);
  font-weight: 900;
  outline: none;
  transition: border .15s ease, box-shadow .15s ease;
}
.cart-page .cart-table input[type="number"]:focus,
.cart-table input[type="number"]:focus{
  border-color: rgba(22,163,74,.45);
  box-shadow: 0 0 0 3px rgba(22,163,74,.18);
}

/* Total row/card */
.cart-page .cart-summary-row,
.cart-summary-row{
  margin-top: 14px;
  display:flex;
  justify-content: space-between;
  align-items:center;
  flex-wrap: wrap;
  gap: 10px;

  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.25);
  background: rgba(255,255,255,.78);
  box-shadow: 0 10px 22px rgba(15,23,42,.06);
}

/* Shipping preview card */
.cart-page .cart-ship-preview,
.cart-ship-preview{
  margin-top: 14px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.25);
  background: linear-gradient(180deg, rgba(143,174,163,.10), rgba(255,255,255,.86));
  box-shadow: 0 12px 30px rgba(15,23,42,.08);
}

/* Selected shipping highlight */
.cart-page .ship-selected,
.ship-selected{
  margin-top: 12px;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(34,197,94,.25);
  background: rgba(34,197,94,.08);
  font-size: 14px;
  font-weight: 900;
}

/* Secondary actions row (if present) */
.cart-page .cart-secondary-actions,
.cart-secondary-actions{
  margin-top: 16px;
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* Mobile */
@media (max-width: 768px){
  .cart-page .cart-table input[type="number"],
  .cart-table input[type="number"]{
    width: 76px;
  }
}

/* --- Hero reviews badge --- */
.hero .wrap { position: relative; }
.hero-review-badge{
  position:absolute;
  top:16px;
  right:16px;
  display:flex;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.12);
  background:rgba(255,255,255,.88);
  backdrop-filter: blur(8px);
  text-decoration:none;
  color:inherit;
  box-shadow:0 10px 25px rgba(15,23,42,.10);
}
.hero-review-badge:hover{ transform: translateY(-1px); }
.hero-review-badge .hrb-stars{ font-size:14px; letter-spacing:1px; line-height:1; white-space:nowrap; }
.hero-review-badge .hrb-stars .star{ opacity:.35; }
.hero-review-badge .hrb-stars .star.on{ opacity:1; }
.hero-review-badge .hrb-meta{ display:flex; flex-direction:column; line-height:1.1; }
.hero-review-badge .hrb-score{ font-weight:900; font-size:12px; }
.hero-review-badge .hrb-count{ font-size:11px; opacity:.7; }

/* --- Reviews enhancements --- */
.reviews-actions{ grid-column: 1 / span 1; display:flex; flex-direction:column; align-items:flex-start; }
.review-card.is-highlight{
  outline: 2px solid rgba(79,70,229,.35);
  box-shadow: 0 14px 30px rgba(15,23,42,.12);
  transform: translateY(-1px);
}
@media (max-width: 900px){
  .hero-review-badge{ top:12px; right:12px; }
  .reviews-actions{ grid-column: 1 / -1; }
}



/* ================================
   Reviews – Soft polish
   ================================ */

.reviews-side-card .trust-badge {
    background: rgba(0,0,0,0.03);
    border-radius: 999px;
    font-weight: 500;
    letter-spacing: 0.2px;
}

.reviews-side-card h4 {
    font-weight: 600;
}

.reviews-side-card,
.reviews-side-card p,
.reviews-side-card li,
.reviews-side-card a {
    font-weight: 400;
}

.reviews-side-card .subtle-divider {
    height: 1px;
    background: linear-gradient(
        to right,
        transparent,
        rgba(0,0,0,0.08),
        transparent
    );
    margin: 8px 0;
}



/* ================================
   Reviews – Soft polish (FIXED selectors)
   Targets the actual homepage markup:
   .review-card.reviews-fill, .reviews-badges .rb, .reviews-tips, .reviews-links
   ================================ */

/* Softer badge blocks (the 4 trust tiles) */
.review-card.reviews-fill .reviews-badges .rb{
  border: 1px solid rgba(18,20,23,.08);
  background: rgba(255,255,255,.72);
  border-radius: 999px; /* pill vibe */
  padding: 10px 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
}

/* Calm down weights inside the fill card only */
.review-card.reviews-fill b{ font-weight: 900; } /* keep headings confident */
.review-card.reviews-fill strong{ font-weight: 850; }
.review-card.reviews-fill,
.review-card.reviews-fill p,
.review-card.reviews-fill li,
.review-card.reviews-fill a,
.review-card.reviews-fill em{
  font-weight: 700; /* calmer than 800/900 site-wide, still readable */
}
.review-card.reviews-fill em.muted{ opacity: .72; font-weight: 700; }

/* Subtle dividers that do NOT affect height (absolute positioned) */
.review-card.reviews-fill .reviews-tips,
.review-card.reviews-fill .reviews-links{
  position: relative;
  padding-top: 10px; /* internal spacing only; outer height unchanged */
  margin-top: 10px;
}
.review-card.reviews-fill .reviews-tips::before,
.review-card.reviews-fill .reviews-links::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background: linear-gradient(to right, transparent, rgba(18,20,23,.10), transparent);
}

/* Make the top pill a touch softer */
.review-card.reviews-fill .reviews-fill-top .pill{
  background: rgba(255,255,255,.82);
  border-color: rgba(143,174,163,.28);
  font-weight: 800;
}

/* Ensure links feel calmer */
.review-card.reviews-fill .reviews-links .link{
  font-weight: 850;
  opacity: .9;
}
