/* ============== GLOBAL ============== */
:root{
  --bg:#ffffff;
  --bg-soft:#f5f3f0;
  --bg-alt:#efece8;
  --text:#3a2a23;
  --muted:#9a8c85;
  --pink:#f6d1c8;
  --pink-soft:#fadfd6;
  --accent:#5a2f24;
  --accent-soft:#c97a6a;
  --line:#e6dfd9;
  --serif:'Playfair Display', serif;
  --sans:'Jost', Arial, sans-serif;
  --container:1240px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--text);background:var(--bg);line-height:1.6;font-size:15px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none;cursor:pointer;}
ul{list-style:none}
input,textarea,select,button{font-family:inherit;color:inherit}
.container{max-width:var(--container);margin:0 auto;padding:0 24px}
.section{padding:80px 0}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.2;color:var(--accent)}
h1{font-size:46px;font-style:italic}
h2{font-size:32px;letter-spacing:.5px}
.eyebrow{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--muted)}
.eyebrow.center{text-align:center;margin-bottom:40px}
.center{text-align:center}
.link-arrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px;flex-wrap:wrap;gap:16px;color:var(--accent);text-transform:uppercase;}
.page-title{font-family:var(--serif);font-style:italic;font-size:42px;color:var(--accent);margin:50px 0 30px}
.crumbs{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-top:30px}

/* ============== BUTTONS ============== */
.btn{display:inline-block;padding:12px 28px;font-size:12px;letter-spacing:2px;text-transform:uppercase;border:none;cursor:pointer;transition:.25s;font-family:var(--sans);font-weight:500}
.btn-light{background:#fff;color:#2b2b2b}
.btn-light:hover{background:#2b2b2b;color:#fff}
.btn-dark{background:var(--accent);color:#fff}
.btn-dark:hover{background:#3a1810}
.btn-pink{background:var(--pink);color:#2b2b2b;visibility:visible!important;}
.btn-pink:hover{background:var(--accent);color:#fff}
.btn-outline{border:1px solid var(--accent);}
.btn-outline:hover{border-color:var(--accent-soft);color:var(--accent-soft);}
.small{padding:8px 18px;font-size:10px}
.wish-btn{background:transparent;border:1px solid var(--line);width:34px;height:34px;border-radius:50%;cursor:pointer;color:var(--accent);transition:.2s}
.wish-btn.on, .wish-btn:hover{background:var(--pink);border-color:var(--pink)}

/* ============== HEADER ============== */
#site-header-root{
  position:sticky;
  top:0;
  z-index:100;
}
.site-header{
  background:var(--pink);
  padding:18px 0;
  position:sticky;
  top:0;
  z-index:100;
  transition:box-shadow .25s, padding .25s, background .25s;
  /* overflow: hidden; */
}
.site-header.scrolled{
  padding:12px 0;
  box-shadow:0 4px 18px rgba(90,47,36,.10);
  background:rgba(246,209,200,.92);
  backdrop-filter:saturate(180%) blur(14px);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:3px;color:var(--accent);text-transform:uppercase}
.main-nav ul{display:flex;gap:32px}
.main-nav a{font-size:14px;letter-spacing:1.5px;text-transform:uppercase;position:relative}
.main-nav a.active::after {content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:#2b2b2b}
.header-actions a.active, .drawer-panel nav a.active{border-bottom:2px solid #2b2b2b;padding-bottom: 4px;margin-bottom: -5px;}
.header-actions{display:flex;gap:18px;align-items:center;font-size:14px}
.cart-count{background:#2b2b2b;color:#fff;border-radius:50%;padding:2px 6px;font-size:10px}
.menu-toggle{display:none;background:none;border:none;font-size:24px;cursor:pointer}
.header-icons{display:flex;gap:16px;align-items:center}
.header-icons a{margin-bottom:-6px;}

/* ============== MOBILE DRAWER ============== */
.mobile-drawer{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:200;opacity:0;pointer-events:none;transition:.3s}
.mobile-drawer.open{opacity:1;pointer-events:auto}
.drawer-panel{position:absolute;z-index:300;top:0;right:0;width:78%;max-width:340px;height:100%;background:#fff;padding:30px 26px;transform:translateX(100%);transition:transform .35s ease;display:flex;flex-direction:column;gap:24px}
.mobile-drawer.open .drawer-panel{transform:translateX(0)}
.drawer-close{position:absolute;top:16px;right:18px;background:none;border:none;font-size:20px;cursor:pointer}
.drawer-panel nav ul{display:flex;flex-direction:column;gap:18px;margin-top:20px}
.drawer-panel nav a{font-family:var(--sans);font-size:24px}

/* ============== HERO CAROUSEL ============== */
.hero-carousel{position:relative;overflow:hidden}
.hero-track{display:flex;transition:transform .6s ease}
.hero-slide{flex:0 0 100%;min-height:850px;background-position:center;background-size:cover;background-repeat:no-repeat;position:relative;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center}
.hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.18)}
.hero-slide h1{color:#fff;font-family:var(--serif);font-style:italic;font-size:96px;font-weight:500;margin-bottom:18px;line-height:1.1;letter-spacing:-4%;}
.hero-content{position:relative;max-width:1200px;padding:0 60px}
.hero-content .eyebrow{color:#fff;margin-bottom:14px}
.hero-sub{margin-bottom:28px;font-size:14px;opacity:.9}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.0);border:1px solid rgba(255,255,255,.0);color:#fff;width:84px;height:84px;border-radius:50%;cursor:pointer;z-index:2;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hero-arrow:hover{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.5);}
.hero-arrow.left{left:42px}
.hero-arrow.right{right:42px}
.hero-dots{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:3}
.hero-dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:.2s}
.hero-dots span.active{background:#fff;width:24px;border-radius:4px}

/* ============== FEATURED ============== */
.featured {background:#f5f5f5;}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.product-card{padding:0 0 18px}
.product-img{aspect-ratio:3/4;overflow:hidden;margin-bottom:14px}
.product-img img{width:100%;height:100%;object-fit:cover;transition:.4s}
.product-card:hover {background:#fff;}
.product-card:hover .product-img img{transform:scale(1.05);}
.product-card h3{font-size:18px;font-family:var(--serif);font-weight:500;letter-spacing:1px;text-transform:uppercase;padding:0 14px;margin-bottom:6px;color:var(--accent);}
.product-card h3:hover{text-decoration: underline;}
.price{padding:0 14px;color:var(--muted);font-size:14px;margin-bottom:10px}
.product-card .btn{margin:0 14px; visibility: hidden;}
.product-card:hover .btn{visibility: visible;}

/* ============== FEATURES STRIP ============== */
.features-strip{padding:120px 0;background:var(--bg)}
.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}
.feature .ico{font-size:24px;display:block;margin-bottom:10px}
.feature h4{font-family:var(--serif);font-size:18px;margin-bottom:6px;color:var(--accent)}
.feature p{font-size:14px;color:var(--muted)}

/* ============== PROMO ============== */
.promo{padding:0;background:#f5f5f5;}
.promo-inner{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}
.promo-img img{width:100%;height:100%;object-fit:cover}
.promo-text{padding:60px 50px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.promo-text h2{font-size:86px;color: var(--accent);}
.promo-text h3{font-size:14px;letter-spacing:3px;text-transform:uppercase;font-family:var(--serif);color:var(--muted)}
.promo-text p{color:var(--muted);margin-bottom:10px}
.promo-text .btn{align-self:flex-start}

/* ============== BRANDS ============== */
.brands{padding:120px 0}
.brand-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:30px;color:var(--accent);font-family:var(--serif);font-size:20px;letter-spacing:2px;opacity:.7}
.brand-row img{max-width:120px}

/* ============== BLOG ============== */
.blog{background:#efece8}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.blog-card{padding:0 0 24px}
.blog-card:hover{background:#fff;}
.blog-card:hover img{transform:scale(1.05)}
.blog-img{aspect-ratio:4/3;overflow:hidden;margin-bottom:18px}
.blog-img img{width:100%;height:100%;object-fit:cover;transition:.4s}
.blog-card .meta{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);padding:0 20px;margin-bottom:8px}
.blog-card h3{font-size:20px;padding:0 20px;margin-bottom:8px;text-transform:uppercase;color:var(--accent)}
.blog-card h3:hover{text-decoration:underline;}
.blog-card p:last-child{padding:0 20px;color:var(--muted);font-size:14px}

/* ============== NEWSLETTER ============== */
.newsletter{background:url('../../images/sign-up.jpg') center/cover no-repeat;position:relative;display:flex;min-height:400px;}
.newsletter-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(246,209,200,.85);width:100%;height:100%;align-items:center;justify-content:center;display:flex;}
.newsletter-inner{text-align:center;position:relative;}
.newsletter h2{margin-bottom:24px;text-transform:uppercase;color:var(--accent)}
.newsletter-form{display:flex;flex-direction:column;gap:12px;border-radius:2px}
.newsletter-form input{flex:1;padding:14px 16px;border:none;outline:none;font-family:var(--sans);font-size:14px;background:#fff}
.newsletter-form .btn{width:100%}

/* ============== TESTIMONIALS CAROUSEL ============== */
.testimonials{background:var(--bg-alt)}
.testi-viewport{overflow:hidden}
.testi-track{display:flex;transition:transform .6s ease}
.testi-slide{flex:0 0 100%;margin-top: auto;margin-bottom: auto;}
/* .testi-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:40px;align-items:center;font-family:var(--serif);font-style:italic;text-align:center} */
.testi-grid{align-items:center;font-family:var(--serif);font-style:italic;text-align:center}
.testi-grid blockquote{font-size:42px;line-height:1.5;color:var(--accent);width:50%;margin:0 auto;}
.testi-grid .faded{opacity:.4;font-size:18px}
.testi-grid cite{display:block;margin-top:18px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-style:normal}
.dots{display:flex;justify-content:center;gap:8px;margin-top:30px}
.dots span{width:8px;height:8px;border-radius:50%;background:#ccc}
.dots span.active{background:var(--accent)}

/* ============== INSTAGRAM ============== */
.instagram h2{margin-bottom:40px;font-size:28px;color:var(--accent);text-transform:uppercase;}
.ig-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(2,1fr);gap:12px}
.ig-item{aspect-ratio:1;overflow:hidden;position:relative}
.ig-item img{width:100%;height:100%;object-fit:cover;transition:.4s}
.ig-item:hover img{transform:scale(1.08)}
.ig-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.ig-item:hover::after {
  opacity: 1;
}
.ig-large{grid-column:span 1;grid-row:span 2;aspect-ratio:auto}
.ig-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:32px;background:rgba(0,0,0,.2);color:#fff}

/* ============== SHOP / CATEGORY LAYOUT ============== */
.shop-wrap{display:grid;grid-template-columns:240px 1fr;gap:50px;margin:30px 0 60px}
.sidebar h4{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-family:var(--sans);color:var(--accent);margin-bottom:14px}
.sidebar ul li{padding:6px 0;font-size:14px;color:var(--accent);cursor:pointer}
.sidebar ul li.active,.sidebar ul li:hover{color:var(--accent-soft);text-decoration:underline}
.sidebar .group{border-top:1px solid var(--line);}
.sidebar .group.open{padding-bottom:22px}
.sidebar .group:first-of-type{border-top:none}
.group-head{display:flex;justify-content:space-between;align-items:center;cursor:pointer;margin:14px 0;width:100%;background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left}
.color-swatches{display:flex;gap:10px}
.swatch{width:18px;height:18px;border-radius:50%;cursor:pointer;border:1px solid var(--line)}
/* .swatch.active{box-shadow:0 0 0 2px var(--accent);border-color:#fff} */
.swatch.active{border:2px solid var(--accent)}
.size-list{display:grid;grid-template-columns:1fr;gap:8px}
.size-pill{border:1px solid var(--line);padding:8px 14px;font-size:14px;cursor:pointer;text-align:left;background:#fff}
.size-pill.active{border-color:var(--accent);color:var(--accent)}
.reset-link{font-size:12px;color:var(--muted);text-decoration:underline;cursor:pointer}
.accordion .acc-icon{position:relative;width:12px;height:12px;display:inline-block;color:var(--ink)}
.accordion .acc-icon::before,.accordion .acc-icon::after{content:"";position:absolute;background:currentColor;transition:transform .25s ease,opacity .25s ease}
.accordion .acc-icon::before{left:0;right:0;top:50%;height:2px;margin-top:-1px}
.accordion .acc-icon::after{top:0;bottom:0;left:50%;width:2px;margin-left:-1px}
.accordion.open .acc-icon::after{transform:scaleY(0);opacity:0}
.accordion .acc-body{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows .3s ease,margin-top .25s ease;margin-top:0}
.accordion.open .acc-body{grid-template-rows:1fr;margin-top:14px}
.accordion .acc-body>*{min-height:0;overflow:hidden}
.shop-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;font-size:14px;color:var(--muted);flex-wrap:wrap;gap:12px}
.shop-toolbar select{border-color:transparent;padding:8px 12px;background:#fff;font-size:14px}
.shop-toolbar select:focus,.shop-toolbar select:focus-visible,.shop-toolbar select:visited{border-color:transparent;}
.pagination{display:flex;justify-content:center;gap:14px;margin:40px 0;align-items:center;color:var(--muted)}
.pagination a{padding:6px 10px;font-size:14px;cursor:pointer;}
.pagination a.active{color:var(--accent);text-decoration:underline}

/* ============== PRODUCTS GRID ============== */
#shopGrid.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
#shopGrid.product-grid.cols-3{grid-template-columns:repeat(3,1fr) !important;}
#shopGrid .product-card{background:transparent;display:flex;flex-direction:column;min-height:300px;}
#shopGrid .product-card:hover {background:#fff;}
#shopGrid .product-img{aspect-ratio:3/4;overflow:hidden;margin-bottom:14px;background:#f5f1ec;}
#shopGrid .product-img img{width:100%;height:100%;object-fit:cover;transition:.5s}
#shopGrid .product-card:hover .product-img img{scale:(1.05);}
#shopGrid .product-card h3{font-size:18px;font-family:var(--serif);font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
#shopGrid .product-card h3 a:hover{color:var(--accent-soft)}
#shopGrid .price{color:var(--accent-soft);font-size:14px;margin-bottom:10px;font-weight:500}
/* #shopGrid .product-card .actions{display:flex;gap:8px;align-items:center} */
#shopGrid .product-card .actions{display:inline-flex;justify-content: space-between;align-items:center;margin-top: auto;}

/* ============== PRODUCT DETAIL ============== */
.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin:30px 0 60px}
.gallery-main{aspect-ratio:3/4;background:#eee;overflow:hidden;margin-bottom:14px}
.gallery-main img{width:100%;height:100%;object-fit:cover}
.thumbs{display:flex;gap:10px}
.thumbs div{width:80px;aspect-ratio:1;background:#eee;cursor:pointer;border:2px solid transparent;overflow:hidden}
.thumbs div.active{border-color:var(--accent)}
.thumbs img{width:100%;height:100%;object-fit:cover}
.detail-info h1{font-style:italic;font-size:36px;margin-bottom:14px}
#relatedGrid .actions{display:flex;justify-content: space-between;align-items:center;margin-top: auto;}
.stars{color:var(--accent);font-size:16px;margin-bottom:14px}
.detail-info .price{font-size:24px;color:var(--accent-soft);margin-bottom:18px;font-weight:500;padding-left:0}
.detail-info .desc{color:var(--muted);margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.size-row{margin-bottom:18px}
.size-row .label{font-size:12px;color:var(--muted);margin-bottom:8px;display:block}
.size-options{display:flex;gap:8px}
.size-options span{border:1px solid var(--line);padding:8px 14px;cursor:pointer;background:#fadfd6;font-size:14px}
.size-options span.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.stock-line{font-size:14px;color:var(--muted);margin-bottom:18px}
.qty-add{display:flex;gap:10px;align-items:center}
.qty{display:flex;align-items:center;background:var(--pink-soft);padding:6px}
.qty button{width:24px;height:24px;background:transparent;border:none;cursor:pointer;font-size:16px;color:var(--accent)}
.qty input{width:36px;text-align:center;border:none;background:transparent;font-size:14px;outline:none}
.tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin:50px 0 30px}
.tabs button{background:none;border:none;padding:14px 0;font-size:14px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;font-weight:500}
.tabs button.active{color:var(--accent);border-color:var(--accent)}
.tab-panel{display:none;color:var(--muted);font-size:14px;max-width:900px}
.tab-panel.active{display:block}
.tab-panel ul{padding-left:20px;margin:10px 0}
.tab-panel li{list-style:disc;margin-bottom:4px}

/* ============== CART ============== */
.cart-table{width:100%;border-collapse:collapse;margin:30px 0}
.cart-table th{text-align:left;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);padding:14px 8px;border-bottom:1px solid var(--line);font-weight:500}
.cart-table td{padding:18px 8px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:14px;color:var(--accent)}
.cart-table .thumb{width:90px;aspect-ratio:1;background:#eee;overflow:hidden}
.cart-table .thumb img{width:100%;height:100%;object-fit:cover}
.cart-table .name{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent)}
.cart-table .remove{background:none;border:none;cursor:pointer;color:var(--muted);font-size:18px}
.coupon-row{display:flex;justify-content:space-between;gap:12px;margin:20px 0 40px;flex-wrap:wrap}
.coupon-row .left{display:flex;gap:0}
.coupon-row input{border:1px solid var(--line);padding:12px 14px;font-size:14px;min-width:220px}
.cart-totals{margin-top:30px}
.cart-totals h2{font-style:italic;margin-bottom:20px}
.tot-row{display:grid;grid-template-columns:200px 1fr;gap:30px;padding:18px 0;border-bottom:1px solid var(--line);align-items:start}
.tot-row strong{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--accent)}
.tot-row input{width:100%;border:1px solid var(--line);padding:10px 14px;font-size:14px;margin-bottom:10px}
.cart-actions{display:flex;gap:14px;margin-top:24px;flex-wrap:wrap;justify-content:space-between}

/* ============== CHECKOUT ============== */
.checkout-notice{background:var(--pink-soft);padding:10px 18px;text-align:center;font-size:14px;margin: 24px 0;}
.checkout-notice a{text-decoration:underline;color:var(--accent)}
.checkout-coupon, .checkout-login{display:none;gap:10px;margin: 24px 0;}
.checkout-login a{font-size:14px;text-decoration:underline;color:var(--accent)}
.checkout-login .checkout-actions div{display:flex;gap:10px;align-items:center}
.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:40px}
.form-group{margin-bottom:18px}
.form-group label{display:block;font-size:12px;color:var(--accent);margin-bottom:6px}
.form-group input,.form-group select,.form-group textarea{width:100%;border:1px solid var(--line);padding:11px 14px;font-size:14px;background:#fff}
.form-group textarea{min-height:200px;resize:vertical}
.form-control {border:1px solid var(--line);padding:10px 14px}
.section-h{font-style:italic;font-size:28px;margin-bottom:20px}
.order-table{width:100%;border-collapse:collapse;margin:20px 0}
.order-table th,.order-table td{padding:14px 8px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}
.order-table th{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);font-weight:500}
.payments label{display:block;padding:12px 0;font-size:14px;cursor:pointer;border-bottom:1px solid var(--line)}
.payments label strong{display:inline-block;margin-left:8px;color:var(--accent);text-transform:uppercase;font-size:12px;letter-spacing:1.5px;font-weight:600}
.payments p{font-size:14px;color:var(--muted);margin:6px 0 0 24px}
.checkout-actions{display:flex;justify-content:space-between;align-items:center;}

/* ============== LOGIN ============== */
.form-login a{font-size:14px;text-decoration:underline;color:var(--accent)}
.form-login .form-actions div{display:flex;gap:10px;align-items:center}
.form-actions{display:flex;justify-content:space-between;align-items:center;}
.auth-wrap{max-width:540px;margin:50px auto;padding:0 20px}
.auth-wrap h1{margin-bottom:30px;font-style:italic}
.forgot{display:inline-block;margin-top:14px;font-size:14px;color:var(--accent);text-decoration:underline}

/* ============== ACCOUNT ============== */
.account-layout{display:grid;grid-template-columns:240px 1fr 240px;gap:40px;margin:30px 0 60px}
.account-side{font-size:14px}
.account-side .user{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}
.account-side .avatar{width:50px;height:50px;background:var(--pink-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:20px}
.account-side ul li{padding:8px 0;cursor:pointer;color:var(--accent);letter-spacing:1px}
.account-side ul li.active{color:var(--accent-soft);font-weight:600}
.account-side ul.sub li{padding-left:20px;color:var(--muted);font-size:12px}
.account-main h1{font-style:italic;margin-bottom:8px}
.account-main .sub{color:var(--muted);margin-bottom:24px;font-size:14px}
.profile-pic{text-align:center}
.profile-pic .circle{width:160px;height:160px;background:var(--pink-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:50px;color:var(--accent);margin:0 auto 14px}
.profile-pic a{color:var(--accent);text-decoration:underline;font-size:14px}
.profile-pic small{display:block;color:var(--muted);font-size:11px;margin-top:8px;line-height:1.5}

/* ============== WISHLIST ============== */
.responsive-table{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.wishlist-table{width:100%;border-collapse:collapse;margin:30px 0}
.wishlist-table th,.wishlist-table td{padding:16px 8px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;vertical-align:middle}
.wishlist-table th{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);font-weight:500}
.wishlist-table .thumb{width:90px;aspect-ratio:1;background:#eee;overflow:hidden}
.wishlist-table .thumb img{width:100%;height:100%;object-fit:cover}
.status-in{color:var(--accent-soft)}

/* ============== CONTACT ============== */
.contact-info{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:20px 0 40px}
.contact-info h4{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:10px;font-family:var(--sans);font-weight:600}
.contact-info p{color:var(--accent)}
.contact-info .social a{margin-right:10px;color:var(--accent);font-weight:600}
.map-wrap{margin:30px 0 40px;height:420px;background:#eee}
.map-wrap iframe{width:100%;height:100%;border:0}
.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;margin-bottom:60px}
.contact-form .row2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.promo-side{background:url('../../images/contact-promo.png') center/cover no-repeat, #ddd;min-height:700px;display:flex;flex-direction:column;justify-content:flex-end;color:var(--accent);}
.promo-side .promo-card{background:var(--pink);padding:0 40px 40px 40px;text-align:center;}
.promo-side h2{font-size:84px;margin-top:-50px}
.promo-side h3{font-style:normal;font-size:32px;margin-bottom:18px;letter-spacing:2px}

/* ============== ACCOUNT ============== */
.account-wc{display:grid;grid-template-columns:220px 1fr;gap:40px;margin:20px 0 60px;align-items:start}
.account-nav ul{border:1px solid var(--line);background:#fff}
.account-nav li{padding:14px 18px;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);cursor:pointer;border-bottom:1px solid var(--line);transition:.2s}
.account-nav li:last-child{border-bottom:none}
.account-nav li:hover{color:var(--accent)}
.account-nav li.active{background:var(--pink-soft);color:var(--accent);font-weight:600;border-left:3px solid var(--accent);padding-left:15px}
.account-body{background:#fff;border:1px solid var(--line);padding:34px 36px;min-height:360px}
.account-tab{display:none}
.account-tab.active{display:block}
.account-tab a{color:var(--accent);text-decoration:underline}
.account-tab h3{font-family:var(--serif);font-size:22px;color:var(--accent);margin-bottom:12px}
.wc-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.wc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
.wc-stat{border:1px solid var(--line);padding:18px;text-align:center;background:var(--bg-soft)}
.wc-stat-label{display:block;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.wc-stat strong{font-family:var(--serif);font-size:26px;color:var(--accent)}
.wc-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:14px}
.wc-table th,.wc-table td{padding:14px 10px;border-bottom:1px solid var(--line);text-align:left;color:var(--accent)}
.wc-table th{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:500;background:var(--bg-soft)}
.wc-table .btn.small{margin-right:6px}
.wc-status{display:inline-block;padding:4px 10px;font-size:11px;letter-spacing:1px;text-transform:uppercase;border-radius:2px}
.wc-status.completed{background:#d7ecd9;color:#256029}
.wc-status.pending-payment{background:#fadfd6;color:#b0311c}
.wc-status.cancelled{background:#e5e2df;color:#555}
.wc-status.processing{background:#dbeafe;color:#1e40af}
.wc-empty{text-align:center;padding:40px 20px;color:var(--muted)}
.wc-addr-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}
.wc-addr-card{border:1px solid var(--line);padding:20px;background:var(--bg-soft)}
.wc-addr-view{margin:10px 0 14px;font-size:14px;color:var(--accent);line-height:1.7;min-height:60px}
.wc-addr-form{margin-top:14px}
.wc-addr-form .btn{margin-right:8px;margin-top:8px}

/* ============== REVIEWS ============== */
.review-panel{max-width:100%}
.review-summary{display:grid;grid-template-columns:220px 1fr;gap:40px;padding:20px 0 30px;border-bottom:1px solid var(--line);margin-bottom:24px;align-items:center}
.review-avg{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.review-avg .avg-star{color:#f5b301;font-size:28px}
.review-avg strong{font-family:var(--serif);font-size:48px;color:var(--accent);line-height:1}
.review-avg small{color:var(--muted);width:100%;font-size:13px;letter-spacing:1px}
.review-bars{display:flex;flex-direction:column;gap:8px}
.rev-bar-row{display:grid;grid-template-columns:60px 1fr 30px;gap:12px;align-items:center;font-size:13px;color:var(--muted)}
.rev-bar{height:8px;background:var(--bg-alt);border-radius:4px;overflow:hidden}
.rev-bar div{height:100%;background:var(--accent-soft);border-radius:4px;transition:width .3s}
.review-list{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}
.review-item{display:grid;grid-template-columns:52px 1fr;gap:16px;padding:18px;border:1px solid var(--line);background:#fff}
.review-avatar{width:52px;height:52px;border-radius:50%;background:var(--pink-soft);display:flex;align-items:center;justify-content:center;color:var(--accent);font-weight:600;font-size:20px}
.review-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.review-head strong{color:var(--accent);font-size:15px}
.review-stars{color:#f5b301;font-size:14px}
.review-body p{margin-top:8px;color:var(--accent);font-size:14px;line-height:1.7}
.review-body .muted{font-size:12px}
.review-form-wrap{border-top:1px solid var(--line);padding-top:26px}
.review-form-wrap h3{font-family:var(--serif);font-size:24px;color:var(--accent);margin-bottom:6px}
.review-form-wrap .muted{color:var(--muted);font-size:13px;margin-bottom:18px}
.rating-picker{display:flex;gap:10px;flex-wrap:wrap}
.rating-picker button{background:#fff;border:1px solid var(--line);padding:10px 18px;font-size:13px;color:var(--accent);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:.2s}
.rating-picker button span{color:#d9d3ce;font-size:16px}
.rating-picker button:hover{border-color:var(--accent)}
.rating-picker button.selected{background:var(--pink-soft);border-color:var(--accent)}
.rating-picker button.selected span{color:#f5b301}

/* ============== TOAST ============== */
.rs-toast{position:fixed;left:50%;bottom:110px;transform:translateX(-50%) translateY(20px);background:var(--accent);color:#fff;padding:12px 20px;border-radius:30px;font-size:14px;letter-spacing:1px;opacity:0;pointer-events:none;transition:.3s;z-index:300}
.rs-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ============== FOOTER ============== */
.site-footer{background:#efece8;padding:60px 0 0}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.5fr;gap:40px}
.site-footer h4{font-family:var(--serif);font-size:18px;margin-bottom:16px;text-transform:uppercase;color:var(--accent);}
.site-footer ul li{margin-bottom:8px;font-size:14px;color:var(--muted);text-transform:uppercase;}
.site-footer p{font-size:14px;color:var(--muted);margin-bottom:12px}
.site-footer a:hover{text-decoration:underline;}
.socials{display:flex;gap:10px;margin-top:14px}
.socials a{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px}
.socials a:hover{background:var(--accent);}
.socials a:hover path{fill:#fff}
.footer-bottom{margin-top:50px;padding:18px 0;text-align:center;background:var(--pink);font-size:14px}

/* ============== MOBILE FLOATING BOTTOM NAV ============== */
.mobile-nav{
  display:none;
  position:fixed;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  z-index:150;
  padding:10px 14px;
  gap:4px;
  background:rgba(255,255,255,.72);
  -webkit-backdrop-filter:saturate(180%) blur(22px);
  backdrop-filter:saturate(180%) blur(22px);
  border:1px solid rgba(255,255,255,.6);
  border-radius:28px;
  box-shadow:0 10px 30px rgba(0,0,0,.12), 0 2px 6px rgba(0,0,0,.06);
  max-width:calc(100% - 24px);
}
.mobile-nav-item{
  flex:1;
  min-width:56px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  padding: 12px 14px;
  border-radius:18px;
  color:#3a3a3a;
  font-size:10px;
  letter-spacing:.3px;
  transition:.25s ease;
}
.mobile-nav-item .ios-ico{font-size:20px;line-height:1}
.mobile-nav-item .ios-label{font-size:10px;font-weight:500}
.mobile-nav-item:hover{background:rgba(0,0,0,.05)}
.mobile-nav-item.active{background:var(--accent);color:#fff;box-shadow:0 4px 14px rgba(109,42,31,.35)}
.mobile-nav-item.active svg path, .mobile-nav-item.active svg rect{stroke:#fff;}

/* ============== RESPONSIVE ============== */
@media (max-width: 992px){
  .main-nav,.header-actions{display:none}
  .menu-toggle{display:block}
  .hero h1{font-size:48px}
  .hero-slide h1{font-size:48px}
  .hero-content{max-width:600px}
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .features-grid{grid-template-columns:repeat(2,1fr);gap:30px 20px}
  .promo-inner{grid-template-columns:1fr}
  .promo-text{padding:40px 30px}
  .promo-text h2{font-size:48px}
  .blog-grid{grid-template-columns:1fr}
  .blog-grid .blog-card:last-child{grid-column:span 2}
  .testi-grid{grid-template-columns:1fr;gap:30px}
  .testi-grid blockquote{width:100%;}
  .testi-grid .faded{display:none}
  .ig-grid{grid-template-columns:repeat(3,1fr)}
  .ig-large{grid-column:span 1;grid-row:span 1;aspect-ratio: 1;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:30px}
  .mobile-nav{display:flex}
  /* body{padding-bottom:90px} */
  .shop-wrap{grid-template-columns:1fr;gap:24px}
  #shopGrid.product-grid.cols-3{grid-template-columns:repeat(2,1fr) !important;}
  .product-detail{grid-template-columns:1fr;gap:30px}
  .checkout-grid,.contact-grid{grid-template-columns:1fr;gap:30px}
  .account-layout{grid-template-columns:1fr;gap:30px}
  .contact-info{grid-template-columns:1fr 1fr;gap:20px}
  .page-title{font-size:32px}
}
@media (max-width: 600px){
  .section{padding:60px 0}
  .hero{min-height:460px}
  .hero-slide{min-height:460px}
  .hero h1{font-size:36px}
  .hero-slide h1{font-size:36px}
  .hero-arrow{display:none}
  .hero-content{padding:0 30px}
  .product-grid{grid-template-columns:1fr 1fr;gap:14px}
  .product-card h3{font-size:12px}
  .features-grid{grid-template-columns:1fr 1fr}
  .brand-row{justify-content:center;gap:18px;font-size:14px}
  .brand-row img {max-width: 200px;}
  .blog-grid{grid-template-columns:1fr}
  .blog-grid .blog-card:last-child{grid-column:auto}
  .newsletter-form{flex-direction:column}
  .ig-grid{grid-template-columns:repeat(2,1fr)}
  .ig-large{grid-row:span 2;aspect-ratio: auto;}
  .footer-grid{grid-template-columns:1fr;text-align:center}
  .socials{justify-content:center}
  .mobile-nav-item .ios-label{display:none}
  .mobile-nav-item.active .ios-label{display:inline}
  .mobile-nav{bottom:14px;padding:8px 10px}
  #shopGrid.product-grid.cols-3{grid-template-columns:repeat(1,1fr) !important;}
  .testi-center .testi-active{font-size:20px}
  .cart-table thead{display:none}
  /* .cart-table tr{display:grid;grid-template-columns:90px 1fr;gap:8px;padding:14px 0} */
  .cart-table tr{display:block;padding:14px 0}
  .cart-table td{border:none;padding:4px}
  .cart-table td:nth-child(1),.cart-table td:nth-child(5){display:none}
  .cart-table td:nth-child(2){max-width:200px;}
  .cart-table td:not(:nth-child(2)){width:auto;}
  .qty{padding:4px;}
  .qty button{width:12px}
  .contact-info{grid-template-columns:1fr}
  .tot-row{grid-template-columns:1fr}
  .style-feature .gallery{grid-template-columns:1fr 1fr}
  .style-feature .gallery .b{grid-row:auto;aspect-ratio:1}
  .checkout-actions,.checkout-login div{display:block}
  .checkout-coupon{justify-content:space-between;}
  .checkout-login .checkout-actions div{justify-content:space-between;margin-top: 30px;}
}
