/* ============================================================
   RAJ SHOES — Store Policies page
   Scoped additions only. Does not touch style.css or the homepage.
   ============================================================ */

/* Force a solid, readable header on this page (no hero video to blend with) */
.nav{
  background:rgba(255,255,255,0.94) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  padding:16px 6vw !important;
  border-bottom:1px solid var(--hairline) !important;
  box-shadow:0 8px 30px -20px rgba(17,17,17,0.15) !important;
}
.nav .logo-white{ opacity:0 !important; }
.nav .logo-black{ opacity:1 !important; }
.nav-links a{ color:var(--ink-dim) !important; text-shadow:none !important; }
.nav-links a:hover{ color:var(--ink) !important; }
.nav-toggle span{ background:var(--ink) !important; }
.nav-links a.current::after{ width:100%; }

/* Page title band */
.policy-hero{
  padding:min(20vw,190px) 6vw min(10vw,90px);
  text-align:center;
  background:var(--white);
  display:flex; flex-direction:column; align-items:center; gap:22px;
}
.policy-hero .headline{ font-size:clamp(32px,5.5vw,58px); max-width:820px; }
.policy-hero .lede{ font-size:14px; color:var(--ink-dim); max-width:560px; line-height:1.8; }

/* Table of contents */
.policy-toc{
  max-width:1100px; margin:0 auto; padding:0 6vw min(8vw,80px);
  display:flex; flex-wrap:wrap; gap:10px; justify-content:center;
}
.policy-toc a{
  padding:9px 18px; border:1px solid var(--hairline); border-radius:30px;
  font-size:12px; font-weight:600; color:var(--ink-dim);
  background:var(--white);
  transition:border-color .35s var(--ease), color .35s var(--ease), transform .35s var(--ease);
}
.policy-toc a:hover{ border-color:var(--gold); color:var(--gold-deep); transform:translateY(-2px); }

/* Policy section cards */
.policy-body{ background:var(--grey); padding:min(9vw,90px) 6vw; }
.policy-grid{
  max-width:880px; margin:0 auto;
  display:flex; flex-direction:column; gap:22px;
}
.policy-card{
  background:var(--white); border:1px solid var(--hairline); border-radius:18px;
  padding:clamp(28px,4vw,44px);
  scroll-margin-top:110px;
}
.policy-card-head{ display:flex; align-items:center; gap:18px; margin-bottom:18px; }
.policy-num{
  flex:0 0 auto; width:40px; height:40px; border-radius:50%;
  border:1px solid rgba(200,160,60,0.5);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--serif); font-size:16px; color:var(--gold-deep);
}
.policy-card h2{
  font-family:var(--serif); font-weight:500; font-size:clamp(19px,2.4vw,25px); color:var(--ink);
}
.policy-card p{ font-size:14px; color:var(--ink-dim); line-height:1.85; margin-bottom:14px; }
.policy-card ul{ list-style:none; display:flex; flex-direction:column; gap:10px; }
.policy-card ul li{
  font-size:14px; color:var(--ink-dim); line-height:1.75;
  padding-left:20px; position:relative;
}
.policy-card ul li::before{
  content:""; position:absolute; left:0; top:9px; width:6px; height:6px;
  border-radius:50%; background:var(--gold);
}
.policy-card ul li strong{ color:var(--ink); font-weight:700; }

/* In-store exchange timing cards */
.timing-grid{
  max-width:880px; margin:0 auto; padding:0 6vw min(9vw,90px);
  display:grid; grid-template-columns:1fr 1fr; gap:20px;
}
.timing-card{
  background:var(--white); border:1px solid var(--hairline); border-radius:18px;
  padding:32px; text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:10px;
}
.timing-card .eyebrow{ margin-bottom:4px; }
.timing-card .big{ font-family:var(--serif); font-size:clamp(20px,2.6vw,26px); color:var(--ink); }
.timing-card .small{ font-size:13px; color:var(--ink-dim); }
.timing-card.no-exchange .big{ color:var(--gold-deep); }

@media (max-width:700px){
  .timing-grid{ grid-template-columns:1fr; }
}

/* Quick policy summary */
.summary-section{ background:var(--white); padding:min(9vw,90px) 6vw; }
.summary-grid{
  max-width:900px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr; gap:16px;
}
.summary-item{
  display:flex; align-items:flex-start; gap:14px;
  padding:18px 20px; border:1px solid var(--hairline); border-radius:14px;
  background:var(--grey);
}
.summary-check{
  flex:0 0 auto; width:26px; height:26px; border-radius:50%;
  background:var(--gold); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:13px; font-weight:700;
}
.summary-item span.txt{ font-size:13.5px; color:var(--ink); font-weight:600; line-height:1.5; }

@media (max-width:700px){
  .summary-grid{ grid-template-columns:1fr; }
}

/* Closing signature band */
.policy-closing{
  background:var(--grey);
  padding:min(11vw,110px) 6vw;
  text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:18px;
}
.policy-closing .mark{
  font-family:var(--serif); font-style:italic; font-size:clamp(22px,3vw,30px); color:var(--gold-deep);
}
.policy-closing .tag{ font-size:11px; letter-spacing:0.22em; text-transform:uppercase; color:var(--ink-dim); }
.policy-closing p{ max-width:520px; font-size:14px; color:var(--ink-dim); line-height:1.85; }
