/*
Theme Name: SAAJ Ethnic Wear
Theme URI: https://example.com
Author: SAAJ Studio
Author URI: https://example.com
Description: A warm, festive WooCommerce theme for Indian ethnic wear stores — sarees, lehengas, kurta sets and more. Built for SAAJ, styled in maroon, marigold and teal.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: saaj
Tags: woocommerce, e-commerce, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* ============================================================
   Design tokens
   ============================================================ */
:root{
  --ivory:#FBF6EE;
  --ivory-deep:#F3EADA;
  --maroon:#7A1F3D;
  --maroon-deep:#5E1730;
  --marigold:#E3A857;
  --marigold-deep:#C88A38;
  --teal:#1B4B43;
  --ink:#2B2320;
  --blush:#F3DCD4;
  --line:#E4D6C3;
  --white:#FFFFFF;

  --font-display:'Cormorant Garamond', 'Times New Roman', serif;
  --font-body:'Jost', 'Segoe UI', sans-serif;

  --radius:2px;
  --shadow:0 10px 30px rgba(43,35,32,0.08);
  --container:1240px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--ivory);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
button{font-family:inherit;cursor:pointer;}
h1,h2,h3,h4{
  font-family:var(--font-display);
  margin:0 0 .4em;
  font-weight:600;
  color:var(--maroon-deep);
  letter-spacing:.01em;
}
p{line-height:1.7;margin:0 0 1em;color:#514540;}
.container{max-width:var(--container);margin:0 auto;padding:0 28px;}
.eyebrow{
  font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--teal);
  font-weight:600;display:inline-block;margin-bottom:12px;
}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px;}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}}
.screen-reader-text{position:absolute;left:-9999px;}

/* ---------- Top announcement bar ---------- */
.announce{
  background:var(--maroon);color:var(--ivory);text-align:center;
  font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;padding:9px 12px;
}

/* ---------- Nav ---------- */
header.site-header{background:var(--ivory);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;max-width:var(--container);margin:0 auto;gap:24px;}
.logo{font-family:var(--font-display);font-size:30px;font-weight:700;letter-spacing:.12em;color:var(--maroon);}
.logo span{color:var(--marigold-deep);}
.logo img{max-height:44px;}
nav.main-nav ul{display:flex;gap:34px;flex-wrap:wrap;}
nav.main-nav a{font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink);position:relative;padding-bottom:4px;}
nav.main-nav .current-menu-item>a,nav.main-nav a:hover{color:var(--maroon);}
.nav-icons{display:flex;align-items:center;gap:20px;}
.nav-icons a,.nav-icons button{background:none;border:none;color:var(--ink);font-size:19px;position:relative;}
.cart-count{position:absolute;top:-8px;right:-10px;background:var(--marigold);color:var(--maroon-deep);font-size:10px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.hamburger{display:none;font-size:22px;background:none;border:none;}

/* ---------- Buttons ---------- */
.btn,button.btn,a.btn,.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit,
.woocommerce input.button, .woocommerce-page input.button{
  display:inline-flex;align-items:center;gap:10px;padding:13px 30px;font-size:12.5px;letter-spacing:.16em;
  text-transform:uppercase;font-weight:600;border:1px solid var(--maroon);border-radius:var(--radius);
  background:var(--maroon);color:var(--ivory)!important;transition:.25s ease;
}
.btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--maroon-deep);border-color:var(--maroon-deep);}
.btn.outline{background:transparent;color:var(--maroon)!important;}
.btn.outline:hover{background:var(--maroon);color:var(--ivory)!important;}
.btn.gold{background:var(--marigold);border-color:var(--marigold);color:var(--maroon-deep)!important;}
.btn.block{width:100%;justify-content:center;}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--blush) 0%, var(--ivory-deep) 55%, var(--ivory) 100%);}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px;max-width:var(--container);margin:0 auto;padding:70px 28px;}
.hero h1{font-size:clamp(40px,5.4vw,68px);line-height:1.05;margin-bottom:22px;}
.hero h1 em{font-style:italic;color:var(--marigold-deep);}
.hero p.lead{font-size:17px;max-width:440px;}
.hero-cta{display:flex;gap:16px;margin-top:14px;flex-wrap:wrap;}
.hero-visual{position:relative;aspect-ratio:4/5;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);}
.hero-visual img{width:100%;height:100%;object-fit:cover;}
.hero-badge{position:absolute;bottom:22px;left:22px;background:rgba(251,246,238,.94);padding:14px 20px;border-left:3px solid var(--marigold);font-family:var(--font-display);font-size:15px;max-width:220px;}

/* ---------- Section / category grid ---------- */
.section{padding:80px 0;}
.section.tight{padding:56px 0;}
.section-head{text-align:center;max-width:600px;margin:0 auto 46px;}
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.cat-card{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow);display:block;}
.cat-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.cat-card:hover img{transform:scale(1.06);}
.cat-card .label{position:absolute;left:0;right:0;bottom:0;padding:20px 18px;background:linear-gradient(0deg,rgba(43,35,32,.75),transparent);color:var(--ivory);}
.cat-card .label h3{color:var(--ivory);margin:0 0 3px;font-size:21px;}
.cat-card .label span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;opacity:.85;}

/* ---------- Promo band ---------- */
.promo-band{background:var(--teal);color:var(--ivory);display:grid;grid-template-columns:repeat(3,1fr);text-align:center;}
.promo-band div{padding:26px 18px;border-right:1px solid rgba(251,246,238,.15);}
.promo-band div:last-child{border-right:none;}
.promo-band strong{display:block;font-family:var(--font-display);font-size:19px;margin-bottom:4px;}
.promo-band span{font-size:12.5px;opacity:.85;}

/* ---------- Editorial split ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.split img{border-radius:var(--radius);box-shadow:var(--shadow);}
.stat-row{display:flex;gap:36px;margin-top:26px;flex-wrap:wrap;}
.stat-row div strong{display:block;font-family:var(--font-display);font-size:30px;color:var(--maroon);}
.stat-row div span{font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:#7a6f68;}

/* ---------- Newsletter ---------- */
.newsletter{background:var(--maroon);color:var(--ivory);text-align:center;padding:64px 28px;}
.newsletter h2{color:var(--ivory);}
.newsletter p{color:rgba(251,246,238,.8);}
.newsletter-form{display:flex;max-width:440px;margin:22px auto 0;gap:0;}
.newsletter-form input{flex:1;padding:14px 18px;border:none;font-family:inherit;font-size:14px;border-radius:var(--radius) 0 0 var(--radius);}
.newsletter-form button{padding:14px 26px;background:var(--marigold);color:var(--maroon-deep);border:none;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:12.5px;border-radius:0 var(--radius) var(--radius) 0;}

/* ---------- Footer ---------- */
footer.site-footer{background:var(--ink);color:#d8cfc6;padding:64px 0 24px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;}
.footer-grid h5{color:var(--ivory);font-family:var(--font-display);font-size:16px;margin-bottom:16px;letter-spacing:.04em;}
.footer-grid li{margin-bottom:10px;font-size:13.5px;}
.footer-grid a:hover{color:var(--marigold);}
.footer-logo{font-family:var(--font-display);font-size:26px;color:var(--ivory);letter-spacing:.1em;margin-bottom:12px;}
.social-row{display:flex;gap:14px;margin-top:16px;}
.social-row a{width:34px;height:34px;border:1px solid #4a423c;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;}
.footer-bottom{border-top:1px solid #423b35;margin-top:46px;padding-top:20px;display:flex;justify-content:space-between;font-size:12px;color:#948a82;flex-wrap:wrap;gap:10px;}

/* ---------- Generic page header ---------- */
.page-header{padding:50px 0 10px;text-align:center;}
.page-header p{max-width:560px;margin:0 auto;}
.breadcrumb{font-size:12.5px;color:#7a6f68;margin:22px 0;letter-spacing:.03em;}
.breadcrumb a:hover{color:var(--maroon);}

/* ---------- About page extras ---------- */
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.value-card{text-align:center;padding:34px 24px;border:1px solid var(--line);border-radius:var(--radius);}
.value-card .ic{font-size:26px;margin-bottom:14px;display:block;}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.team-card img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius);margin-bottom:12px;}
.team-card h4{margin:0 0 2px;font-size:16px;}
.team-card span{font-size:12.5px;color:var(--teal);text-transform:uppercase;letter-spacing:.06em;}

/* ---------- Contact page ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.form-row{margin-bottom:18px;}
.form-row label{display:block;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-weight:600;}
.form-row input,.form-row textarea{width:100%;padding:13px 16px;border:1px solid var(--line);font-family:inherit;font-size:14.5px;border-radius:var(--radius);background:var(--white);}
.form-row textarea{resize:vertical;min-height:120px;}
.info-card{display:flex;gap:16px;margin-bottom:26px;}
.info-card .ic{font-size:20px;color:var(--maroon);}
.info-card h4{margin:0 0 4px;font-size:15px;}
.info-card p{margin:0;font-size:13.5px;}
.map-embed{aspect-ratio:16/9;background:var(--ivory-deep);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:#a89b90;font-size:13px;margin-top:26px;}

/* ---------- Toast ---------- */
.toast{position:fixed;bottom:26px;right:26px;background:var(--ink);color:var(--ivory);padding:14px 22px;border-radius:var(--radius);font-size:13.5px;transform:translateY(20px);opacity:0;pointer-events:none;transition:.3s ease;z-index:200;display:flex;align-items:center;gap:10px;}
.toast.show{transform:translateY(0);opacity:1;}

/* ============================================================
   WooCommerce overrides
   ============================================================ */
.woocommerce-breadcrumb{font-size:12.5px;color:#7a6f68;margin:22px 0;}
.woocommerce-breadcrumb a:hover{color:var(--maroon);}

/* Shop toolbar */
.woocommerce-ordering select,
.woocommerce div.product form.cart .variations select{
  border:1px solid var(--line);padding:9px 14px;font-family:inherit;background:var(--white);border-radius:var(--radius);font-size:13.5px;
}
.woocommerce-result-count{font-size:13.5px;color:#7a6f68;}

/* Product grid */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 24px;list-style:none;}
.woocommerce ul.products li.product{width:100%;margin:0!important;text-align:left;position:relative;}
.woocommerce ul.products li.product a img{
  aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius);background:var(--ivory-deep);margin-bottom:14px;transition:transform .4s ease;
}
.woocommerce ul.products li.product:hover img{transform:scale(1.03);}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--font-body);font-size:17px;font-weight:600;color:var(--ink);margin:4px 0 6px;
}
.woocommerce ul.products li.product .price{color:var(--maroon-deep);font-weight:600;font-family:var(--font-body);}
.woocommerce ul.products li.product .price del{color:#a89b90;font-weight:400;opacity:1;margin-right:8px;}
.woocommerce ul.products li.product .price ins{text-decoration:none;}
.woocommerce span.onsale{
  position:absolute;top:12px;left:12px;background:var(--marigold);color:var(--maroon-deep);
  font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:var(--radius);
  min-height:0;min-width:0;line-height:1;font-weight:700;
}
.woocommerce ul.products li.product .button{
  margin-top:12px;padding:11px 20px;font-size:11.5px;
}
.woocommerce .star-rating{color:var(--marigold-deep);font-size:13px;}
.woocommerce nav.woocommerce-pagination ul{display:flex;gap:8px;justify-content:center;margin-top:40px;}
.woocommerce nav.woocommerce-pagination ul li{border:1px solid var(--line)!important;border-radius:var(--radius);}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{padding:9px 15px;display:block;font-size:13px;}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--maroon);color:var(--ivory);}

/* Sidebar / widget area for shop */
.woocommerce .widget-area{padding:26px;border:1px solid var(--line);border-radius:var(--radius);}
.woocommerce .widget-area h2,.woocommerce .widget-area h3{font-size:14px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;font-family:var(--font-body);}
.woocommerce .widget_price_filter .price_slider_amount .button{float:right;}
.woocommerce ul.product-categories li,.woocommerce .widget-area ul li{border-top:1px solid var(--line);padding:10px 0;font-size:14.5px;}
.woocommerce ul.product-categories li:first-child,.woocommerce .widget-area ul li:first-child{border-top:none;padding-top:0;}

/* Single product */
.woocommerce div.product{max-width:var(--container);margin:0 auto;padding:56px 28px;display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.woocommerce div.product .woocommerce-product-gallery{grid-column:1;}
.woocommerce div.product .woocommerce-product-gallery img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;}
.woocommerce div.product .summary{grid-column:2;}
.woocommerce div.product .product_title{font-size:32px;margin:8px 0 10px;}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:26px;color:var(--maroon-deep);font-weight:600;font-family:var(--font-body);margin:16px 0;display:block;}
.woocommerce div.product p.price del,.woocommerce div.product span.price del{font-size:16px;margin-left:10px;order:2;}
.woocommerce div.product form.cart{margin:22px 0;}
.woocommerce div.product form.cart .variations{margin-bottom:18px;}
.woocommerce div.product form.cart .variations label{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;}
.woocommerce div.product form.cart div.quantity{margin-right:14px;}
.woocommerce div.product form.cart .quantity .qty{border:1px solid var(--line);padding:12px;width:64px;border-radius:var(--radius);font-family:inherit;text-align:center;}
.woocommerce div.product .woocommerce-tabs{grid-column:1 / -1;border-top:1px solid var(--line);margin-top:26px;padding-top:20px;}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:20px;list-style:none;padding:0;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;padding-bottom:12px;}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:2px solid var(--marigold);color:var(--maroon);}
.woocommerce div.product .related.products{grid-column:1 / -1;border-top:1px solid var(--line);margin-top:40px;padding-top:40px;}
.woocommerce div.product .related.products > h2{text-align:center;font-size:26px;}
.woocommerce div.product .related.products ul.products{grid-template-columns:repeat(4,1fr);}

/* Cart & checkout */
.woocommerce table.shop_table{border:none;border-collapse:collapse;width:100%;}
.woocommerce table.shop_table th{border-bottom:1px solid var(--line);text-transform:uppercase;font-size:11.5px;letter-spacing:.08em;padding:12px 10px;text-align:left;}
.woocommerce table.shop_table td{border-bottom:1px solid var(--line);padding:16px 10px;vertical-align:middle;}
.woocommerce table.shop_table td.product-thumbnail img{width:80px;border-radius:var(--radius);}
.woocommerce-cart-form .quantity .qty{border:1px solid var(--line);padding:10px;width:60px;border-radius:var(--radius);text-align:center;}
.woocommerce .cart-collaterals .cart_totals{border:1px solid var(--line);padding:28px;border-radius:var(--radius);max-width:400px;margin-left:auto;}
.woocommerce .cart_totals h2{font-size:19px;margin-bottom:18px;}
.woocommerce .cart_totals table{border:none;}
.woocommerce .cart_totals table td,.woocommerce .cart_totals table th{border:none;border-bottom:1px solid var(--line);}
.woocommerce .cart_totals .order-total .amount{color:var(--maroon-deep);font-weight:700;font-size:18px;}
.woocommerce form.checkout_coupon{display:flex;gap:8px;border:none;padding:0;margin:18px 0;}
.woocommerce form.checkout_coupon .input-text{flex:1;padding:11px 14px;border:1px solid var(--line);border-radius:var(--radius);}
.woocommerce #payment{background:var(--ivory-deep);border-radius:var(--radius);padding:20px;}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select,.woocommerce form .form-row textarea{
  padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);font-family:inherit;width:100%;
}
.woocommerce-checkout #order_review{border:1px solid var(--line);padding:24px;border-radius:var(--radius);}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-top-color:var(--marigold)!important;background:var(--ivory-deep);padding:14px 20px!important;border-radius:var(--radius);list-style:none;
}
.woocommerce-message::before,.woocommerce-info::before{color:var(--teal)!important;}
.woocommerce-error{border-top-color:var(--maroon)!important;}

/* My account */
.woocommerce-account .woocommerce-MyAccount-navigation ul{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line);}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:12px 18px;font-size:13.5px;}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--maroon);color:var(--ivory);}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;padding-top:40px;}
  .cat-grid{grid-template-columns:repeat(2,1fr);}
  .woocommerce ul.products,.woocommerce div.product .related.products ul.products{grid-template-columns:repeat(2,1fr);}
  .split,.contact-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .promo-band{grid-template-columns:1fr;}
  .promo-band div{border-right:none;border-bottom:1px solid rgba(251,246,238,.15);}
  .value-grid{grid-template-columns:1fr;}
  .team-grid{grid-template-columns:repeat(2,1fr);}
  .woocommerce div.product{grid-template-columns:1fr;}
}
@media (max-width:720px){
  nav.main-nav{display:none;}
  .hamburger{display:block;}
  .logo{font-size:24px;}
}
