/* ============================================================
   KHADIZA DREAMS — returns.css
   Used only by: returns.html
   Depends on: styles.css (tokens, buttons, footer, drawers)
   ============================================================ */


/* ============================================================
   1. BREADCRUMBS
   ============================================================ */
.crumbs{
  padding-block:24px;
  font-size:10.5px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--muted);
}
.crumbs a{ transition:color .3s; }
.crumbs a:hover{ color:var(--ink); }
.crumbs span{ margin-inline:9px; opacity:.45; }


/* ============================================================
   2. PAGE HERO
   ============================================================ */
.page-hero{
  position:relative;
  display:flex;
  align-items:flex-end;
  min-height:clamp(280px, 40vh, 420px);
  overflow:hidden;
  background:#1a1714;
  isolation:isolate;
}

.page-hero__img{
  position:absolute;
  inset:0;
  z-index:-1;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(.65) brightness(.72) contrast(1.05);
}

.page-hero::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(to top,
    rgba(12,10,8,.82) 0%,
    rgba(12,10,8,.28) 55%,
    rgba(12,10,8,.45) 100%);
}

.page-hero__body{
  position:relative;
  z-index:2;
  padding-block:clamp(38px, 5.5vw, 68px);
  color:#fff;
  max-width:64ch;
}

.page-hero .eyebrow{ color:rgba(255,255,255,.8); }

.page-hero__title{
  margin:14px 0 16px;
  font-size:clamp(34px, 5.4vw, 68px);
  font-weight:300;
  line-height:1.02;
  color:#fff;
}

.page-hero__title em{
  font-style:italic;
  color:var(--gold-soft);
}

.page-hero__text{
  font-size:15px;
  line-height:1.75;
  color:rgba(255,255,255,.82);
  max-width:54ch;
}


/* ============================================================
   3. QUICK FACTS STRIP
   ============================================================ */
.quick-facts{
  border-bottom:1px solid var(--line);
  background:var(--paper);
}

.quick-facts__grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:0;
}

.quick-fact{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:26px clamp(14px, 2vw, 28px);
  border-right:1px solid var(--line);
}

.quick-fact:last-child{ border-right:0; }

.quick-fact__icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:50%;
  background:var(--soft);
  color:var(--gold);
}
.quick-fact__icon svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.quick-fact__label{
  font-size:10px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--muted);
}

.quick-fact__value{
  font-size:14px;
  font-weight:400;
  line-height:1.4;
  color:var(--ink);
}


/* ============================================================
   4. SECTIONS
   ============================================================ */
.section{
  padding-block:clamp(48px, 6vw, 88px);
}

.section--soft{ background:var(--soft); }


/* ============================================================
   5. POLICY HIGHLIGHT CARD
   ============================================================ */
.policy{
  padding:clamp(28px, 4vw, 52px);
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:clamp(22px, 3vw, 40px);
  align-items:start;
}

.policy__icon{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:50%;
  background:var(--soft);
  color:var(--gold);
}
.policy__icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.policy__body{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.policy__title{
  font-size:clamp(22px, 2.6vw, 30px);
  font-weight:300;
  line-height:1.15;
  max-width:26ch;
}

.policy__title em{
  font-style:italic;
  color:var(--gold);
}

.policy__text{
  font-size:14px;
  font-weight:300;
  line-height:1.8;
  color:var(--ink-soft);
  max-width:64ch;
}

.policy__note{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 16px;
  margin-top:6px;
  background:var(--soft);
  border-radius:var(--radius);
  font-size:12.5px;
  font-weight:300;
  line-height:1.55;
  color:var(--ink-soft);
}
.policy__note svg{
  flex-shrink:0;
  width:15px;
  height:15px;
  fill:none;
  stroke:var(--gold);
  stroke-width:1.3;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* ============================================================
   6. STEPS (how to return)
   ============================================================ */
.steps{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:clamp(20px, 2.6vw, 44px);
  margin-top:clamp(30px, 4vw, 52px);
}

.step{
  position:relative;
  padding-top:34px;
  border-top:1px solid var(--line-dark);
}

.step::before{
  content:'';
  position:absolute;
  top:-5px;
  left:0;
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--gold);
}

.step__num{
  display:block;
  margin-bottom:12px;
  font-family:var(--font-display);
  font-size:clamp(28px, 3vw, 40px);
  font-weight:300;
  line-height:1;
  color:var(--gold);
}

.step__title{
  font-size:17px;
  font-weight:500;
  margin-bottom:8px;
  color:var(--ink);
}

.step__text{
  font-size:13px;
  line-height:1.75;
  color:var(--muted);
}


/* ============================================================
   7. ELIGIBILITY LISTS (yes / no)
   ============================================================ */
.eligibility{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:clamp(20px, 3vw, 44px);
  margin-top:clamp(30px, 4vw, 52px);
}

.elig-card{
  padding:clamp(24px, 3vw, 40px);
  border-radius:var(--radius);
  display:flex;
  flex-direction:column;
  gap:18px;
}

.elig-card--yes{
  background:var(--soft);
  border:1px solid var(--line);
}

.elig-card--no{
  background:var(--paper);
  border:1px solid var(--line);
}

.elig-card__head{
  display:flex;
  align-items:center;
  gap:14px;
}

.elig-card__badge{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:50%;
  flex-shrink:0;
}
.elig-card__badge svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.elig-card--yes .elig-card__badge{
  background:var(--gold);
  color:#fff;
}
.elig-card--no .elig-card__badge{
  background:var(--ink);
  color:var(--paper);
}

.elig-card__title{
  font-size:19px;
  font-weight:500;
  color:var(--ink);
}

.elig-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.elig-list li{
  display:flex;
  align-items:flex-start;
  gap:12px;
  font-size:13.5px;
  font-weight:300;
  line-height:1.7;
  color:var(--ink-soft);
}

.elig-list li::before{
  content:'';
  flex-shrink:0;
  width:6px;
  height:1px;
  margin-top:.78em;
}

.elig-card--yes .elig-list li::before{ background:var(--gold); }
.elig-card--no .elig-list li::before{ background:var(--muted); }

.elig-list li strong{
  font-weight:500;
  color:var(--ink);
}


/* ============================================================
   8. OPTIONS TABLE (refund / exchange / store credit)
   ============================================================ */
.options-table{
  width:100%;
  border-collapse:collapse;
  margin-top:clamp(28px, 3.6vw, 44px);
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
}

.options-table thead{
  background:var(--soft);
}

.options-table th{
  text-align:left;
  padding:16px 20px;
  font-family:var(--font-body);
  font-size:10px;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--ink);
  border-bottom:1px solid var(--line);
}

.options-table td{
  padding:18px 20px;
  font-size:13.5px;
  font-weight:300;
  line-height:1.6;
  color:var(--ink-soft);
  border-bottom:1px solid var(--line);
  vertical-align:top;
}

.options-table tr:last-child td{
  border-bottom:0;
}

.options-table td strong{
  font-weight:500;
  color:var(--ink);
}

.options-table td:last-child{
  text-align:right;
  white-space:nowrap;
  font-weight:400;
  color:var(--ink);
}

.table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  margin-inline:calc(var(--gutter) * -1);
  padding-inline:var(--gutter);
}

@media (min-width:1024px){
  .table-wrap{
    margin-inline:0;
    padding-inline:0;
  }
}


/* ============================================================
   9. INFO CARDS
   ============================================================ */
.info-card{
  padding:clamp(24px, 3vw, 40px);
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--paper);
  display:flex;
  flex-direction:column;
  gap:18px;
}

.info-card--soft{
  background:var(--soft);
  border-color:transparent;
}

.info-card__title{
  font-family:var(--font-body);
  font-size:11px;
  font-weight:500;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--ink);
}

.info-card__text{
  font-size:14px;
  font-weight:300;
  line-height:1.8;
  color:var(--ink-soft);
  max-width:66ch;
}

.info-card__text p + p{ margin-top:12px; }

.info-card__text ul{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:6px;
}

.info-card__text li{
  position:relative;
  padding-left:18px;
  font-size:13.5px;
  line-height:1.7;
}

.info-card__text li::before{
  content:'';
  position:absolute;
  left:0;
  top:.72em;
  width:7px;
  height:1px;
  background:var(--gold);
}

.info-card__text a{
  color:var(--ink);
  border-bottom:1px solid var(--line-dark);
  transition:border-color .3s;
}
.info-card__text a:hover{ border-bottom-color:var(--ink); }


/* ============================================================
   10. TWO-COLUMN BLOCK
   ============================================================ */
.two-col{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:clamp(20px, 3vw, 44px);
  margin-top:clamp(30px, 4vw, 52px);
}


/* ============================================================
   11. DAMAGED ITEMS PANEL
   ============================================================ */
.damaged{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:stretch;
  background:var(--soft);
  border-radius:var(--radius);
  overflow:hidden;
  margin-top:clamp(30px, 4vw, 52px);
}

.damaged__media{
  position:relative;
  overflow:hidden;
  min-height:340px;
}
.damaged__media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(.45) contrast(1.03);
}

.damaged__body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
  padding:clamp(28px, 4vw, 56px);
}

.damaged__eyebrow{
  font-size:10px;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--gold);
}

.damaged__title{
  font-size:clamp(24px, 3vw, 34px);
  font-weight:300;
  line-height:1.15;
  max-width:18ch;
}

.damaged__title em{
  font-style:italic;
  color:var(--gold);
}

.damaged__text{
  max-width:46ch;
  font-size:14px;
  font-weight:300;
  line-height:1.8;
  color:var(--ink-soft);
}

.damaged__actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:6px;
}


/* ============================================================
   12. MINI FAQ
   ============================================================ */
.mini-faq{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:clamp(18px, 2.4vw, 32px);
  margin-top:clamp(30px, 4vw, 52px);
}

.mini-faq__item{
  padding:clamp(22px, 2.6vw, 32px);
  background:var(--paper);
  border-radius:var(--radius);
  border:1px solid var(--line);
  display:flex;
  flex-direction:column;
  gap:10px;
}

.mini-faq__q{
  font-family:var(--font-display);
  font-size:17px;
  font-weight:400;
  line-height:1.35;
  color:var(--ink);
}

.mini-faq__a{
  font-size:13.5px;
  font-weight:300;
  line-height:1.75;
  color:var(--ink-soft);
}

.mini-faq__a a{
  color:var(--ink);
  border-bottom:1px solid var(--line-dark);
  transition:border-color .3s;
}
.mini-faq__a a:hover{ border-bottom-color:var(--ink); }


/* ============================================================
   13. CTA STRIP
   ============================================================ */
.cta-strip{
  padding-block:clamp(48px, 6vw, 88px);
  background:var(--soft);
}

.cta-strip__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  flex-wrap:wrap;
  padding:clamp(28px, 4vw, 52px);
  background:var(--paper);
  border-radius:var(--radius);
}

.cta-strip__body{
  max-width:52ch;
}

.cta-strip__title{
  font-size:clamp(24px, 3vw, 34px);
  font-weight:300;
  line-height:1.15;
  margin-bottom:10px;
}

.cta-strip__title em{
  font-style:italic;
  color:var(--gold);
}

.cta-strip__text{
  font-size:14px;
  line-height:1.75;
  color:var(--muted);
}

.cta-strip__actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}


/* ============================================================
   14. RESPONSIVE
   ============================================================ */
@media (max-width:1024px){
  .quick-facts__grid{
    grid-template-columns:repeat(2, 1fr);
  }
  .quick-fact:nth-child(2){ border-right:0; }
  .quick-fact:nth-child(-n+2){ border-bottom:1px solid var(--line); }

  .steps{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .eligibility{
    grid-template-columns:1fr;
  }

  .two-col{
    grid-template-columns:1fr;
  }

  .damaged{
    grid-template-columns:1fr;
  }
  .damaged__media{
    min-height:52vw;
  }

  .mini-faq{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  .quick-facts__grid{
    grid-template-columns:1fr;
  }
  .quick-fact{
    border-right:0;
    border-bottom:1px solid var(--line);
    padding:20px var(--gutter);
  }
  .quick-fact:last-child{ border-bottom:0; }

  .policy{
    grid-template-columns:1fr;
    gap:22px;
    padding:24px;
  }

  .steps{
    grid-template-columns:1fr;
  }

  .cta-strip__inner{
    padding:24px;
  }
  .cta-strip__actions{
    width:100%;
  }
  .cta-strip__actions .btn{
    flex:1;
    justify-content:center;
  }
}