/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/
/* ================= RIAD TOWELS DESIGN SYSTEM ================= */
:root{
  --rt-cream:#FAF5EC;
  --rt-sand:#F3EADA;
  --rt-card:#FFFDF8;
  --rt-terra:#B4502F;
  --rt-terra-dark:#96401F;
  --rt-teal:#16443C;
  --rt-ink:#2E2A24;
  --rt-muted:#7A7264;
  --rt-line:#E7DCC8;
  --rt-gold:#BF9B63;
  --rt-radius:14px;
  --rt-shadow:0 10px 30px rgba(46,42,36,.08);
}
body{ background:var(--rt-cream); color:var(--rt-ink); font-family:'Jost',sans-serif; }
h1,h2,h3,.rt-serif{ font-family:'Playfair Display',serif; color:var(--rt-ink); }

/* --- shared building blocks --- */
.rt-section{ padding:70px 0; }
.rt-title{ text-align:center; font-size:34px; font-weight:600; margin:0 0 40px; }
.rt-eyebrow{ display:inline-block; border:1px solid var(--rt-gold); color:var(--rt-terra);
  border-radius:999px; padding:6px 16px; font-size:12px; letter-spacing:.14em;
  text-transform:uppercase; background:rgba(255,255,255,.7); }
.rt-btn{ display:inline-block; background:var(--rt-terra); color:#fff !important;
  padding:16px 30px; border-radius:8px; font-weight:600; font-size:16px;
  text-decoration:none; transition:background .2s, transform .2s; }
.rt-btn:hover{ background:var(--rt-terra-dark); transform:translateY(-1px); }
.rt-btn--ghost{ background:transparent; color:var(--rt-terra) !important;
  border:1.5px solid var(--rt-terra); }
.rt-card{ background:var(--rt-card); border:1px solid var(--rt-line);
  border-radius:var(--rt-radius); box-shadow:var(--rt-shadow); }

/* --- hero --- */
.rt-hero{ max-width:560px; }
.rt-hero h1{ font-size:52px; line-height:1.12; margin:18px 0 14px; }
.rt-hero p{ font-size:18px; color:var(--rt-muted); margin:0 0 26px; }
.rt-hero .rt-sub{ display:block; margin-top:12px; font-size:13px; color:var(--rt-muted); }

/* --- trust strip --- */
.rt-trust{ display:flex; gap:14px; flex-wrap:wrap; }
.rt-trust .rt-card{ flex:1 1 200px; display:flex; align-items:center; gap:12px;
  padding:18px 20px; }
.rt-trust svg{ width:30px; height:30px; stroke:var(--rt-gold); flex-shrink:0; }
.rt-trust b{ display:block; font-size:14px; } .rt-trust span{ font-size:12.5px; color:var(--rt-muted); }

/* --- benefits --- */
.rt-benefits{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.rt-benefits .rt-card{ text-align:center; padding:30px 18px; }
.rt-benefits .ico{ width:56px; height:56px; margin:0 auto 14px; border:1px solid var(--rt-gold);
  border-radius:50%; display:flex; align-items:center; justify-content:center; }
.rt-benefits .ico svg{ width:26px; height:26px; stroke:var(--rt-gold); }
.rt-benefits h3{ font-size:17px; margin:0 0 6px; }
.rt-benefits p{ font-size:13.5px; color:var(--rt-muted); margin:0; }

/* --- comparison table --- */
.rt-compare{ width:100%; border-collapse:separate; border-spacing:0; overflow:hidden;
  border:1px solid var(--rt-line); border-radius:var(--rt-radius); background:var(--rt-card); }
.rt-compare th,.rt-compare td{ padding:13px 16px; font-size:14px; text-align:left;
  border-bottom:1px solid var(--rt-line); }
.rt-compare thead th{ background:var(--rt-sand); font-family:'Playfair Display',serif; font-size:15px; }
.rt-compare tr:last-child td{ border-bottom:0; }
.rt-compare .yes{ color:#1E7A46; font-weight:600; } .rt-compare .no{ color:#B4502F; }

/* --- COD steps --- */
.rt-steps{ display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:14px; align-items:stretch; }
.rt-steps .rt-card{ padding:28px 22px; text-align:center; position:relative; }
.rt-steps .num{ width:30px; height:30px; border-radius:50%; background:var(--rt-teal); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:600;
  position:absolute; top:-15px; left:50%; transform:translateX(-50%); }
.rt-steps h3{ font-size:17px; margin:10px 0 6px; }
.rt-steps p{ font-size:13.5px; color:var(--rt-muted); margin:0; }
.rt-steps .arrow{ align-self:center; color:var(--rt-terra); font-size:22px; }

/* --- reviews --- */
.rt-reviews{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.rt-reviews .rt-card{ padding:24px; }
.rt-reviews .who{ display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.rt-reviews .who img{ width:42px; height:42px; border-radius:50%; object-fit:cover; }
.rt-reviews .who b{ display:block; font-size:14px; } .rt-reviews .who span{ font-size:12px; color:var(--rt-muted); }
.rt-reviews .stars{ color:#E0A93E; letter-spacing:2px; margin-bottom:8px; }
.rt-reviews p{ font-size:14px; color:var(--rt-ink); margin:0; }

/* --- size guide --- */
.rt-size{ display:grid; grid-template-columns:1.1fr 1fr; gap:34px; align-items:center; }
.rt-size img{ border-radius:var(--rt-radius); width:100%; }
.rt-size table{ width:100%; border-collapse:collapse; }
.rt-size th,.rt-size td{ padding:12px 14px; font-size:14px; border-bottom:1px solid var(--rt-line); text-align:left; }
.rt-size th{ font-family:'Playfair Display',serif; background:var(--rt-sand); }
.rt-size .tip{ margin-top:14px; font-size:13px; color:var(--rt-muted); }

/* --- offer / countdown --- */
.rt-offer{ background:var(--rt-teal); border-radius:var(--rt-radius); color:#fff;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  padding:30px 34px; flex-wrap:wrap; }
.rt-offer h3{ color:#fff; font-size:24px; margin:0 0 4px; }
.rt-offer p{ margin:0; color:#CFE0DA; font-size:14px; }
.rt-offer .clock{ display:flex; gap:10px; }
.rt-offer .clock div{ background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.25);
  border-radius:10px; min-width:64px; padding:10px 8px; text-align:center; }
.rt-offer .clock b{ display:block; font-size:24px; font-family:'Playfair Display',serif; }
.rt-offer .clock span{ font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:#CFE0DA; }
.rt-offer .rt-btn{ background:#fff; color:var(--rt-teal) !important; }
.rt-offer .rt-btn:hover{ background:var(--rt-sand); }

/* --- FAQ --- */
.rt-faq details{ background:var(--rt-card); border:1px solid var(--rt-line);
  border-radius:10px; margin-bottom:12px; padding:0 20px; }
.rt-faq summary{ cursor:pointer; list-style:none; padding:18px 0; font-weight:500;
  font-size:15.5px; display:flex; justify-content:space-between; align-items:center; }
.rt-faq summary::after{ content:"+"; color:var(--rt-terra); font-size:22px; }
.rt-faq details[open] summary::after{ content:"–"; }
.rt-faq details p{ padding:0 0 18px; margin:0; font-size:14px; color:var(--rt-muted); }

/* --- story --- */
.rt-story{ display:grid; grid-template-columns:1fr 1.2fr; gap:40px; align-items:center; }
.rt-story img{ border-radius:var(--rt-radius); width:100%; }
.rt-story p{ font-size:15px; color:var(--rt-muted); }
.rt-story .marks{ display:flex; gap:22px; flex-wrap:wrap; margin-top:18px; }
.rt-story .marks span{ font-size:13px; color:var(--rt-ink); }
.rt-story .marks svg{ width:16px; height:16px; stroke:var(--rt-gold); vertical-align:-3px; margin-right:5px; }

/* --- final CTA --- */
.rt-final{ background:var(--rt-terra); border-radius:var(--rt-radius); color:#fff;
  display:flex; align-items:center; justify-content:space-between; gap:30px;
  padding:44px 46px; flex-wrap:wrap; }
.rt-final h2{ color:#fff; font-size:32px; margin:0 0 6px; }
.rt-final p{ margin:0; color:#F6D9CC; }
.rt-final .rt-btn{ background:#fff; color:var(--rt-terra) !important; }

/* --- WooCommerce product area restyle (matches mockup) --- */
.rt-product .woocommerce div.product .product_title{ font-family:'Playfair Display',serif; font-size:30px; }
.rt-product .woocommerce div.product p.price{ font-size:28px; color:var(--rt-ink); font-weight:600; }
.rt-product .single_add_to_cart_button{ background:var(--rt-terra) !important; border-radius:8px !important;
  padding:16px 28px !important; font-weight:600 !important; width:100%; }
.rt-product .single_add_to_cart_button:hover{ background:var(--rt-terra-dark) !important; }
.rt-duo{ border:1px solid var(--rt-gold); background:var(--rt-sand); border-radius:12px;
  padding:16px 18px; margin:16px 0; }
.rt-duo b{ font-size:15px; } .rt-duo .old{ text-decoration:line-through; color:var(--rt-muted); margin-left:8px; }
.rt-duo .save{ display:inline-block; margin-top:6px; font-size:12px; background:#fff;
  border:1px solid var(--rt-line); border-radius:6px; padding:4px 10px; }

/* --- responsive --- */
@media (max-width:1024px){
  .rt-benefits{ grid-template-columns:repeat(2,1fr); }
  .rt-reviews{ grid-template-columns:1fr; }
  .rt-steps{ grid-template-columns:1fr; } .rt-steps .arrow{ display:none; }
  .rt-size,.rt-story{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .rt-section{ padding:46px 0; }
  .rt-hero h1{ font-size:34px; }
  .rt-title{ font-size:26px; }
  .rt-benefits{ grid-template-columns:1fr; }
  .rt-offer,.rt-final{ justify-content:center; text-align:center; }
}