/* ================== ROOT VARIABLES ================== */
:root{
  --gold:#D4AF37;
  --gold-light:#F4E4BC;
  --gold-pale:#FBF6E7;
  --gold-dark:#B8860B;
  --gold-deep:#8B6914;
  --gradient-gold:linear-gradient(135deg,#8B6914 0%,#D4AF37 45%,#F4E4BC 100%);
  --gradient-gold-soft:linear-gradient(135deg,#D4AF37,#F4E4BC);
  --black:#0A0A0A;
  --soft-black:#1A1A1A;
  --charcoal:#2A2A2A;
  --gray:#6B6B6B;
  --light-gray:#E8E8E8;
  --off-white:#FAFAFA;
  --white:#FFFFFF;
  --shadow-sm:0 4px 14px rgba(0,0,0,0.06);
  --shadow:0 10px 40px rgba(0,0,0,0.08);
  --shadow-lg:0 25px 70px rgba(0,0,0,0.15);
  --shadow-gold:0 10px 40px rgba(212,175,55,0.25);
  --transition:cubic-bezier(0.4,0,0.2,1);
  --transition-slow:cubic-bezier(0.65,0,0.35,1);
  --serif:'Playfair Display',Georgia,serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  --display:'Cormorant Garamond',Georgia,serif;
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  font-family:var(--body);
  background:var(--white);
  color:var(--black);
  line-height:1.6;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img{max-width:100%;display:block;height:auto;}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
a{text-decoration:none;color:inherit;}
input,select,textarea{font-family:inherit;outline:none;border:none;background:none;}

::-webkit-scrollbar{width:8px;height:8px;}
::-webkit-scrollbar-track{background:var(--off-white);}
::-webkit-scrollbar-thumb{background:var(--gradient-gold);border-radius:4px;}
::-webkit-scrollbar-thumb:hover{background:var(--gold-dark);}
::selection{background:var(--gold);color:var(--white);}

.serif{font-family:var(--serif);}
.display{font-family:var(--display);font-weight:500;letter-spacing:0.02em;}

/* ================== LOADER ================== */
#loader{
  position:fixed;inset:0;background:var(--white);z-index:9999;
  display:flex;align-items:center;justify-content:center;flex-direction:column;
  transition:opacity 0.6s ease, visibility 0.6s ease;
}
#loader.hidden{opacity:0;visibility:hidden;}
.loader-logo{
  font-family:var(--serif);font-size:2.5rem;font-weight:800;letter-spacing:0.3em;
  background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;margin-bottom:1.5rem;
}
.loader-bar{width:200px;height:2px;background:var(--light-gray);position:relative;overflow:hidden;}
.loader-bar::after{
  content:'';position:absolute;inset:0;background:var(--gradient-gold);
  animation:loadBar 1.5s ease-in-out infinite;
}
@keyframes loadBar{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}

@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ================== HEADER ================== */
.header{
  position:sticky;top:0;z-index:100;background:rgba(255,255,255,0.95);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--light-gray);transition:all 0.3s var(--transition);
}
.header.scrolled{box-shadow:var(--shadow-sm);}
.header-inner{
  max-width:1400px;margin:0 auto;padding:1rem 2rem;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;
}
.logo{
  font-family:var(--serif);font-size:1.6rem;font-weight:800;letter-spacing:0.25em;
  background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;cursor:pointer;
}
.nav{display:flex;gap:2.5rem;justify-content:center;}
.nav a{
  font-size:0.85rem;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;
  color:var(--black);position:relative;padding:0.5rem 0;transition:color 0.3s;
}
.nav a::after{
  content:'';position:absolute;bottom:0;left:50%;width:0;height:1.5px;
  background:var(--gradient-gold);transition:all 0.3s var(--transition);
  transform:translateX(-50%);
}
.nav a:hover{color:var(--gold-dark);}
.nav a:hover::after{width:100%;}

.header-actions{display:flex;align-items:center;gap:1rem;}
.icon-btn{
  width:42px;height:42px;display:flex;align-items:center;justify-content:center;
  border-radius:50%;transition:all 0.3s var(--transition);position:relative;
}
.icon-btn:hover{background:var(--gold-pale);}
.icon-btn svg{width:20px;height:20px;stroke:var(--black);fill:none;stroke-width:1.5;}
.cart-count{
  position:absolute;top:4px;right:4px;background:var(--gradient-gold);
  color:var(--white);font-size:0.65rem;font-weight:700;min-width:18px;height:18px;
  border-radius:9px;display:flex;align-items:center;justify-content:center;
  padding:0 5px;transition:transform 0.3s var(--transition);
}
.cart-count.bump{animation:bump 0.4s ease;}
@keyframes bump{0%,100%{transform:scale(1);}50%{transform:scale(1.3);}}
.menu-toggle{display:none;}

.search-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:200;
  opacity:0;visibility:hidden;transition:all 0.3s ease;backdrop-filter:blur(8px);
}
.search-overlay.open{opacity:1;visibility:visible;}
.search-container{
  position:absolute;top:0;left:0;right:0;background:var(--white);
  padding:2rem;transform:translateY(-100%);transition:transform 0.4s var(--transition-slow);
  box-shadow:var(--shadow);
}
.search-overlay.open .search-container{transform:translateY(0);}
.search-wrap{max-width:800px;margin:0 auto;display:flex;align-items:center;gap:1rem;}
.search-wrap svg{width:24px;height:24px;stroke:var(--gold);fill:none;stroke-width:1.5;flex-shrink:0;}
.search-input{
  flex:1;font-size:1.2rem;padding:1rem 0;border-bottom:1.5px solid var(--light-gray);
  font-family:var(--body);color:var(--black);transition:border-color 0.3s;
}
.search-input:focus{border-color:var(--gold);}
.search-close{font-size:1.5rem;color:var(--gray);transition:color 0.3s;padding:0.5rem;}
.search-close:hover{color:var(--black);}
.search-suggestions{max-width:800px;margin:1.5rem auto 0;display:flex;flex-wrap:wrap;gap:0.5rem;}
.search-suggestions span{
  font-size:0.8rem;padding:0.4rem 1rem;background:var(--off-white);
  border:1px solid var(--light-gray);border-radius:20px;cursor:pointer;transition:all 0.3s;
}
.search-suggestions span:hover{background:var(--gold-pale);border-color:var(--gold);}

/* ================== HERO ================== */
.hero{
  position:relative;min-height:90vh;display:flex;align-items:center;
  background:linear-gradient(135deg,#FAFAFA 0%,#FFFFFF 50%,#FBF6E7 100%);
  overflow:hidden;padding:4rem 2rem;
}
.hero::before{
  content:'';position:absolute;top:10%;right:-10%;width:600px;height:600px;
  background:radial-gradient(circle,rgba(212,175,55,0.08) 0%,transparent 70%);
  border-radius:50%;pointer-events:none;
}
.hero::after{
  content:'';position:absolute;bottom:-20%;left:-10%;width:500px;height:500px;
  background:radial-gradient(circle,rgba(212,175,55,0.05) 0%,transparent 70%);
  border-radius:50%;pointer-events:none;
}
.hero-inner{
  max-width:1400px;margin:0 auto;width:100%;
  display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;align-items:center;
  position:relative;z-index:1;
}
.hero-content{max-width:600px;}
.hero-badge{
  display:inline-flex;align-items:center;gap:0.5rem;
  padding:0.5rem 1.2rem;background:var(--gold-pale);
  border:1px solid var(--gold);border-radius:30px;
  font-size:0.7rem;letter-spacing:0.25em;text-transform:uppercase;
  color:var(--gold-dark);font-weight:600;margin-bottom:2rem;
}
.hero-badge .pulse{
  width:8px;height:8px;border-radius:50%;background:var(--gold);animation:pulse 2s infinite;
}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:0.5;transform:scale(1.5);}}
.hero h1{
  font-family:var(--serif);font-size:clamp(2.5rem,6vw,5rem);
  font-weight:700;line-height:1.05;letter-spacing:-0.02em;
  margin-bottom:1.5rem;color:var(--black);
}
.hero h1 .gold{
  background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;font-style:italic;font-weight:500;
}
.hero p{font-size:1.1rem;color:var(--gray);margin-bottom:2.5rem;max-width:500px;line-height:1.8;}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem;}
.btn{
  padding:1rem 2.2rem;font-size:0.8rem;font-weight:600;letter-spacing:0.2em;
  text-transform:uppercase;border-radius:0;transition:all 0.3s var(--transition);
  display:inline-flex;align-items:center;gap:0.7rem;position:relative;overflow:hidden;
}
.btn-primary{background:var(--black);color:var(--white);border:1.5px solid var(--black);}
.btn-primary:hover{background:var(--gold);border-color:var(--gold);color:var(--white);}
.btn-gold{
  background:var(--gradient-gold);color:var(--white);border:1.5px solid transparent;
  background-size:200% 100%;background-position:0% 0%;
}
.btn-gold:hover{background-position:100% 0%;box-shadow:var(--shadow-gold);}
.btn-outline{background:transparent;color:var(--black);border:1.5px solid var(--black);}
.btn-outline:hover{background:var(--black);color:var(--white);}
.btn svg{width:14px;height:14px;transition:transform 0.3s;}
.btn:hover svg{transform:translateX(3px);}

.hero-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding-top:2rem;
  border-top:1px solid var(--light-gray);
}
.stat-num{
  font-family:var(--serif);font-size:2rem;font-weight:700;color:var(--black);
  background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.stat-label{font-size:0.75rem;color:var(--gray);text-transform:uppercase;letter-spacing:0.15em;}

/* ================== WATCH HERO ================== */
.hero-visual{
  position:relative;display:flex;align-items:center;justify-content:center;
  min-height:520px;
}

.hero-ring{
  position:absolute;border:1px dashed var(--gold);border-radius:50%;
  animation:rotate 30s linear infinite;pointer-events:none;
}
.hero-ring.r1{inset:-25px;opacity:0.3;}
.hero-ring.r2{inset:-50px;opacity:0.15;animation-direction:reverse;animation-duration:45s;}
@keyframes rotate{to{transform:rotate(360deg);}}

/* The watch - responsive sizing with consistent proportions */
.hero-watch{
  position:relative;
  width:clamp(280px, 80%, 480px);
  aspect-ratio:1/1;
  border-radius:50%;
  background:linear-gradient(135deg,#C9A227 0%,#F4E4BC 25%,#D4AF37 50%,#F4E4BC 75%,#B8860B 100%);
  box-shadow:
    0 30px 80px rgba(0,0,0,0.25),
    inset 0 0 0 1px rgba(255,255,255,0.3);
  padding:5%;
  display:flex;align-items:center;justify-content:center;
  z-index:2;
}

.watch-face{
  width:100%;height:100%;border-radius:50%;position:relative;
  background:radial-gradient(circle at 30% 30%,#2a2a2a 0%,#0a0a0a 70%,#000 100%);
  box-shadow:inset 0 4px 30px rgba(0,0,0,0.9);
  overflow:hidden;
}

/* Glossy highlight */
.watch-face::before{
  content:'';position:absolute;inset:0;border-radius:50%;
  background:radial-gradient(ellipse at 30% 20%,rgba(255,255,255,0.08) 0%,transparent 50%);
  pointer-events:none;z-index:3;
}

/* LOGO ON THE WATCH DIAL - Top center, fully responsive */
.watch-logo{
  position:absolute;
  top:14%;
  left:50%;
  transform:translateX(-50%);
  width:18%;
  aspect-ratio:1/1;
  border-radius:50%;
  background:rgba(255,255,255,0.05);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:10;
  overflow:hidden;
  border:1px solid rgba(212,175,55,0.2);
  transition:all 0.3s var(--transition);
}
.watch-logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:4%;
}
.watch-logo:hover{
  border-color:rgba(212,175,55,0.5);
  transform:translateX(-50%) scale(1.05);
}

/* AK.FASHION text on dial - positioned in middle */
.watch-brand-text{
  position:absolute;
  top:42%;
  left:50%;
  transform:translateX(-50%);
  font-family:var(--serif);
  font-size:clamp(0.9rem, 2.2vw, 1.3rem);
  font-weight:500;
  letter-spacing:0.3em;
  color:var(--gold-light);
  z-index:4;
  white-space:nowrap;
  text-align:center;
}

/* SHOP NOW text on dial - positioned at bottom */
.watch-shop-text{
  position:absolute;
  bottom:22%;
  left:50%;
  transform:translateX(-50%);
  font-family:var(--serif);
  font-size:clamp(0.5rem, 1.1vw, 0.7rem);
  font-weight:500;
  letter-spacing:0.4em;
  color:rgba(212,175,55,0.6);
  z-index:4;
  white-space:nowrap;
  text-align:center;
  text-transform:uppercase;
}

/* Hour marks */
.hour-mark{
  position:absolute;
  top:50%;left:50%;
  background:var(--gold);
  border-radius:2px;
  z-index:2;
  transform-origin:50% 0;
  transform:translate(-50%,0) rotate(var(--rotation)) translateY(8%);
}
.hour-mark.major{width:3px;height:5%;}
.hour-mark.minor{width:2px;height:3%;opacity:0.7;}

/* Numerals */
.hour-number{
  position:absolute;
  z-index:3;
  font-family:var(--serif);
  color:var(--gold-light);
  font-weight:600;
  font-size:clamp(0.65rem, 2.3vw, 1.05rem);
  text-align:center;
  line-height:1;
  pointer-events:none;
  text-shadow:0 1px 2px rgba(0,0,0,0.6);
}

/* Center cap */
.watch-center{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:14px;height:14px;border-radius:50%;
  background:linear-gradient(135deg,#F4E4BC,#D4AF37,#B8860B);
  box-shadow:0 0 8px rgba(212,175,55,0.6);
  z-index:6;
}

/* Hands */
.hand{
  position:absolute;top:50%;left:50%;
  background:var(--gold);
  transform-origin:50% 100%;
  border-radius:2px;z-index:5;
  box-shadow:0 1px 3px rgba(0,0,0,0.5);
}
.hand-hour{
  width:3px;height:22%;
  transform:translate(-50%,-100%) rotate(0deg);
  background:linear-gradient(180deg,#F4E4BC,#D4AF37);
}
.hand-minute{
  width:2px;height:32%;
  transform:translate(-50%,-100%) rotate(0deg);
  background:linear-gradient(180deg,#F4E4BC,#D4AF37);
}
.hand-second{
  width:1px;height:36%;
  transform:translate(-50%,-100%) rotate(0deg);
  background:#D4AF37;
}

/* Floating cards */
.hero-floating-card{
  position:absolute;background:var(--white);padding:1rem 1.5rem;
  border-radius:12px;box-shadow:var(--shadow-lg);
  display:flex;align-items:center;gap:0.8rem;
  animation:floatCard 4s ease-in-out infinite;z-index:4;
}
.hero-floating-card.f1{top:15%;left:-5%;animation-delay:0s;}
.hero-floating-card.f2{bottom:15%;right:-5%;animation-delay:2s;}
@keyframes floatCard{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
.card-icon{
  width:40px;height:40px;border-radius:50%;background:var(--gradient-gold);
  display:flex;align-items:center;justify-content:center;color:var(--white);
}
.card-icon svg{width:20px;height:20px;stroke:white;fill:none;stroke-width:2;}
.card-text{font-size:0.75rem;}
.card-text strong{display:block;font-size:0.9rem;color:var(--black);font-weight:600;margin-bottom:2px;}
.card-text span{color:var(--gray);}

/* ================== MARQUEE ================== */
.brand-marquee{
  background:var(--black);padding:1.5rem 0;overflow:hidden;
  border-top:1px solid rgba(212,175,55,0.2);
  border-bottom:1px solid rgba(212,175,55,0.2);
}
.marquee-track{
  display:flex;gap:4rem;align-items:center;white-space:nowrap;
  animation:marquee 25s linear infinite;
}
.marquee-track span{
  color:var(--gold);font-family:var(--serif);font-size:1.5rem;
  font-style:italic;font-weight:500;letter-spacing:0.1em;
  display:inline-flex;align-items:center;gap:1.5rem;
}
.marquee-track span::after{content:'✦';color:var(--gold);font-size:0.8rem;font-style:normal;}

/* ================== SECTIONS ================== */
section{padding:6rem 2rem;position:relative;}
.section-inner{max-width:1400px;margin:0 auto;}
.section-head{text-align:center;margin-bottom:4rem;}
.section-eyebrow{
  display:inline-block;font-size:0.7rem;letter-spacing:0.3em;
  text-transform:uppercase;color:var(--gold-dark);font-weight:600;margin-bottom:1rem;
}
.section-title{
  font-family:var(--serif);font-size:clamp(2rem,4vw,3.5rem);
  font-weight:600;line-height:1.1;margin-bottom:1rem;color:var(--black);
}
.section-title .gold{
  background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;font-style:italic;
}
.section-desc{font-size:1rem;color:var(--gray);max-width:600px;margin:0 auto;line-height:1.7;}

/* ================== CATALOG ================== */
.catalog-section{background:var(--off-white);}
.catalog-header{
  display:flex;justify-content:space-between;align-items:flex-end;
  flex-wrap:wrap;gap:2rem;margin-bottom:3rem;
}
.filter-tabs{display:flex;gap:0.5rem;flex-wrap:wrap;}
.filter-tab{
  padding:0.7rem 1.5rem;font-size:0.8rem;font-weight:500;letter-spacing:0.1em;
  text-transform:uppercase;background:var(--off-white);color:var(--charcoal);
  border:1px solid var(--light-gray);border-radius:30px;transition:all 0.3s;
}
.filter-tab.active,.filter-tab:hover{background:var(--black);color:var(--white);border-color:var(--black);}

.sort-select{
  padding:0.7rem 1.2rem;font-size:0.85rem;background:var(--white);
  border:1px solid var(--light-gray);border-radius:6px;color:var(--black);
  cursor:pointer;min-width:180px;
}
.sort-select:focus{border-color:var(--gold);}

.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;}
.product-card{
  background:var(--white);position:relative;overflow:hidden;
  display:flex;flex-direction:column;
  cursor:pointer;transition:all 0.3s var(--transition);border:1px solid transparent;
}
.product-card:hover{border-color:var(--gold-light);}
.product-image{
  position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--off-white);
  border-radius:4px;margin-bottom:1rem;
}
.product-image img{
  width:100%;height:100%;object-fit:cover;
  transition:transform 0.6s var(--transition-slow);
}
.product-card:hover .product-image img{transform:scale(1.06);}
.product-badge{
  position:absolute;top:0.8rem;left:0.8rem;background:var(--black);color:var(--white);
  font-size:0.65rem;font-weight:700;letter-spacing:0.15em;padding:0.3rem 0.7rem;
  text-transform:uppercase;border-radius:3px;z-index:2;
}
.product-badge.new{background:var(--gradient-gold);}
.product-badge.sale{background:#D14545;}
.product-actions{
  position:absolute;top:0.8rem;right:0.8rem;display:flex;flex-direction:column;gap:0.5rem;
  opacity:0;transform:translateX(10px);transition:all 0.3s var(--transition);z-index:2;
}
.product-card:hover .product-actions{opacity:1;transform:translateX(0);}
.product-action{
  width:38px;height:38px;background:var(--white);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:var(--shadow-sm);transition:all 0.3s;
}
.product-action:hover{background:var(--gold);}
.product-action svg{width:16px;height:16px;stroke:var(--black);fill:none;stroke-width:1.5;}
.product-action:hover svg{stroke:var(--white);}
.product-quick-add{
  display:block;width:100%;margin-top:0.6rem;
  background:var(--black);color:var(--white);border:none;
  padding:0.8rem;font-size:0.75rem;font-weight:600;letter-spacing:0.2em;
  text-transform:uppercase;text-align:center;border-radius:4px;
  cursor:pointer;transition:background 0.3s var(--transition);
}
.product-quick-add:hover{background:var(--gold);}

.product-info{padding:0 0.5rem 0.5rem;}
.product-brand{
  font-size:0.7rem;color:var(--gold-dark);font-weight:600;
  letter-spacing:0.2em;text-transform:uppercase;margin-bottom:0.4rem;
}
.product-name{
  font-family:var(--serif);font-size:1.05rem;font-weight:500;
  color:var(--black);margin-bottom:0.5rem;line-height:1.3;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.product-rating{display:flex;align-items:center;gap:0.3rem;margin-bottom:0.6rem;}
.product-rating .stars{color:var(--gold);font-size:0.85rem;letter-spacing:1px;}
.product-rating .count{font-size:0.75rem;color:var(--gray);}
.product-price{display:flex;align-items:center;gap:0.6rem;}
.price-current{font-family:var(--serif);font-size:1.2rem;font-weight:700;color:var(--black);}
.price-old{font-size:0.9rem;color:var(--gray);text-decoration:line-through;}

/* ================== MODAL ================== */
.modal{position:fixed;inset:0;z-index:300;display:none;align-items:stretch;justify-content:stretch;}
.modal.open{display:flex;}
.modal-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.5);backdrop-filter:blur(10px);animation:fadeIn 0.3s ease;}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
.modal-content{
  position:relative;width:100%;height:100%;
  display:grid;grid-template-columns:1.2fr 1fr;
  background-size:cover;background-position:center;
  animation:slideUp 0.4s var(--transition-slow);overflow-y:auto;
}
@keyframes slideUp{from{transform:translateY(30px);opacity:0;}to{transform:translateY(0);opacity:1;}}
.modal-bg-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,0.94) 0%,rgba(255,255,255,0.7) 50%,rgba(255,255,255,0.88) 100%);
  backdrop-filter:blur(40px);
}
.modal-close{
  position:absolute;top:1.5rem;right:1.5rem;width:44px;height:44px;
  background:var(--white);border-radius:50%;z-index:5;
  display:flex;align-items:center;justify-content:center;
  box-shadow:var(--shadow);transition:all 0.3s;
}
.modal-close:hover{background:var(--black);color:var(--white);}
.modal-close svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;}

.modal-image-section{
  position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:3rem;gap:1rem;
}
.modal-main-image{
  width:100%;max-width:500px;aspect-ratio:1/1;border-radius:8px;overflow:hidden;
  box-shadow:var(--shadow-lg);position:relative;
}
.modal-main-image img{width:100%;height:100%;object-fit:cover;transition:opacity 0.3s;}

.pd-gallery{width:100%;max-width:500px;display:flex;flex-direction:column;gap:0.85rem;}
.pd-gallery-track{
  display:flex;width:100%;aspect-ratio:1/1;overflow-x:auto;
  scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;
  border-radius:8px;box-shadow:var(--shadow-lg);background:var(--off-white);
  scrollbar-width:none;
}
.pd-gallery-track::-webkit-scrollbar{display:none;}
.pd-slide{flex:0 0 100%;scroll-snap-align:start;position:relative;}
.pd-slide img{width:100%;height:100%;object-fit:cover;display:block;}
.pd-slide video{width:100%;height:100%;object-fit:cover;display:block;background:var(--black);}
.pd-dots{display:flex;justify-content:center;gap:0.4rem;}
.pd-dot{width:7px;height:7px;border-radius:50%;background:var(--light-gray);cursor:pointer;transition:all 0.3s var(--transition);}
.pd-dot.active{background:var(--gold);width:22px;border-radius:4px;}

.modal-thumb-video{position:relative;width:100%;height:100%;}
.modal-thumb-video img{width:100%;height:100%;object-fit:cover;}
.thumb-play{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:22px;height:22px;border-radius:50%;background:rgba(10,10,10,0.65);color:var(--white);
  display:flex;align-items:center;justify-content:center;font-size:0.6rem;
}

.modal-thumbnails{
  display:flex;gap:0.6rem;width:100%;max-width:500px;overflow-x:auto;
  padding:0.5rem 0;scrollbar-width:thin;
}
.modal-thumbnails::-webkit-scrollbar{height:4px;}
.modal-thumb{
  width:70px;height:70px;border-radius:6px;overflow:hidden;cursor:pointer;
  flex-shrink:0;border:2px solid transparent;transition:all 0.3s;background:var(--off-white);
}
.modal-thumb img{width:100%;height:100%;object-fit:cover;}
.modal-thumb.active{border-color:var(--gold);transform:scale(1.05);}
.modal-thumb:hover{border-color:var(--gold-light);}

.modal-info-section{
  position:relative;z-index:1;padding:3rem 3rem 3rem 1.5rem;
  display:flex;flex-direction:column;justify-content:center;max-width:600px;
}
.modal-brand{font-size:0.75rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold-dark);font-weight:700;margin-bottom:1rem;}
.modal-title{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.8rem);font-weight:600;line-height:1.1;margin-bottom:1rem;color:var(--black);}
.modal-rating{display:flex;align-items:center;gap:0.8rem;margin-bottom:1.5rem;}
.modal-stars{color:var(--gold);font-size:1rem;letter-spacing:2px;}
.modal-rating-text{font-size:0.85rem;color:var(--gray);}
.modal-price-row{
  display:flex;align-items:baseline;gap:1rem;margin-bottom:2rem;padding-bottom:2rem;
  border-bottom:1px solid var(--light-gray);
}
.modal-price{font-family:var(--serif);font-size:2.2rem;font-weight:700;color:var(--black);}
.modal-price-old{font-size:1.1rem;color:var(--gray);text-decoration:line-through;}
.modal-discount{
  background:var(--gold-pale);color:var(--gold-deep);
  padding:0.3rem 0.8rem;font-size:0.75rem;font-weight:700;
  letter-spacing:0.1em;text-transform:uppercase;border-radius:4px;
}
.modal-description{font-size:0.95rem;color:var(--charcoal);line-height:1.8;margin-bottom:2rem;}
.modal-features{margin-bottom:2rem;}
.modal-features h4{font-size:0.8rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--black);font-weight:700;margin-bottom:1rem;}
.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:0.8rem;}
.feature-item{display:flex;align-items:center;gap:0.6rem;font-size:0.85rem;color:var(--charcoal);}
.feature-item::before{
  content:'';width:16px;height:16px;border-radius:50%;
  background:var(--gradient-gold);flex-shrink:0;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
  background-size:10px;background-repeat:no-repeat;background-position:center;
}

.qty-selector{
  display:flex;align-items:center;gap:0;border:1px solid var(--light-gray);
  border-radius:4px;width:fit-content;margin-bottom:1.5rem;
}
.qty-btn{width:42px;height:42px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--black);transition:all 0.3s;}
.qty-btn:hover{background:var(--gold-pale);}
.qty-value{width:50px;text-align:center;font-weight:600;font-size:0.95rem;border-left:1px solid var(--light-gray);border-right:1px solid var(--light-gray);height:42px;line-height:42px;}

.modal-actions{display:flex;flex-direction:column;gap:0.8rem;}
.modal-actions .btn{justify-content:center;width:100%;}
.btn-whatsapp{background:#25D366;color:var(--white);border:1.5px solid #25D366;}
.btn-whatsapp:hover{background:#1DA851;border-color:#1DA851;}
.btn-whatsapp svg{width:18px;height:18px;fill:white;}

.modal-meta{
  margin-top:2rem;padding-top:2rem;border-top:1px solid var(--light-gray);
  display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;
}
.meta-item{text-align:center;}
.meta-item svg{width:24px;height:24px;stroke:var(--gold-dark);fill:none;stroke-width:1.5;margin:0 auto 0.5rem;}
.meta-item .meta-text{font-size:0.7rem;color:var(--gray);text-transform:uppercase;letter-spacing:0.1em;}

/* ================== FEATURE SECTION ================== */
.feature-split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
.feature-image{position:relative;aspect-ratio:4/5;border-radius:8px;overflow:hidden;box-shadow:var(--shadow-lg);}
.feature-image img{width:100%;height:100%;object-fit:cover;}
.feature-image::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,0.4) 100%);}
.feature-stamp{position:absolute;bottom:2rem;left:2rem;background:var(--white);padding:1.2rem 1.5rem;border-radius:8px;z-index:1;display:flex;align-items:center;gap:1rem;box-shadow:var(--shadow);}
.stamp-year{font-family:var(--serif);font-size:2.5rem;font-weight:700;line-height:1;background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.stamp-text{font-size:0.75rem;color:var(--charcoal);line-height:1.4;}
.stamp-text strong{display:block;color:var(--black);font-size:0.85rem;}

.feature-content h2{font-family:var(--serif);font-size:clamp(2rem,3.5vw,3rem);font-weight:600;line-height:1.1;margin-bottom:1.5rem;color:var(--black);}
.feature-content h2 .gold{background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-style:italic;}
.feature-content > p{font-size:1rem;color:var(--charcoal);line-height:1.8;margin-bottom:2rem;}
.feature-list-2{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2.5rem;}
.feature-row{display:flex;gap:1.2rem;}
.feature-row-icon{width:50px;height:50px;border-radius:50%;background:var(--gold-pale);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.feature-row-icon svg{width:22px;height:22px;stroke:var(--gold-dark);fill:none;stroke-width:1.5;}
.feature-row h4{font-family:var(--serif);font-size:1.15rem;font-weight:600;margin-bottom:0.3rem;color:var(--black);}
.feature-row p{font-size:0.9rem;color:var(--gray);line-height:1.6;}

/* ================== VIDEO SECTION ================== */
.video-section{background:var(--black);color:var(--white);padding:6rem 2rem;position:relative;overflow:hidden;}
.video-section::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.video-section::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.video-inner{max-width:1200px;margin:0 auto;text-align:center;}
.video-section .section-eyebrow{color:var(--gold);}
.video-section .section-title{color:var(--white);}
.video-section .section-desc{color:var(--gold-light);}
.video-frame{position:relative;width:100%;max-width:1000px;margin:3rem auto 0;aspect-ratio:16/9;border-radius:12px;overflow:hidden;box-shadow:0 30px 80px rgba(212,175,55,0.15);background:#111;}
.video-frame video{width:100%;height:100%;object-fit:cover;display:block;}
.video-frame::before{content:'';position:absolute;inset:0;border:1px solid var(--gold);border-radius:12px;pointer-events:none;z-index:2;margin:8px;}
.video-decoration{position:absolute;top:-15px;left:-15px;right:-15px;bottom:-15px;border:1px solid rgba(212,175,55,0.2);border-radius:18px;pointer-events:none;}

/* ================== TESTIMONIALS ================== */
.testimonials{background:var(--off-white);}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;}
.testimonial-card{background:var(--white);padding:2.5rem;border-radius:8px;box-shadow:var(--shadow-sm);position:relative;transition:all 0.3s var(--transition);}
.testimonial-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);}
.testimonial-quote{font-size:4rem;font-family:var(--serif);color:var(--gold);line-height:0.5;position:absolute;top:1.5rem;right:1.5rem;opacity:0.3;}
.testimonial-stars{color:var(--gold);margin-bottom:1rem;letter-spacing:2px;}
.testimonial-text{font-family:var(--display);font-size:1.1rem;font-style:italic;color:var(--charcoal);line-height:1.6;margin-bottom:1.5rem;}
.testimonial-author{display:flex;align-items:center;gap:1rem;}
.author-avatar{width:50px;height:50px;border-radius:50%;background:var(--gradient-gold);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:1.1rem;}
.author-info strong{display:block;color:var(--black);font-size:0.95rem;}
.author-info span{font-size:0.8rem;color:var(--gold-dark);text-transform:uppercase;letter-spacing:0.1em;}

/* ================== NEWSLETTER ================== */
.newsletter{background:var(--black);color:var(--white);padding:5rem 2rem;position:relative;overflow:hidden;}
.newsletter::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,0.15) 0%,transparent 70%);}
.newsletter-inner{max-width:700px;margin:0 auto;text-align:center;position:relative;z-index:1;}
.newsletter h2{font-family:var(--serif);font-size:clamp(2rem,3.5vw,3rem);font-weight:600;line-height:1.1;margin-bottom:1rem;}
.newsletter h2 .gold{background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-style:italic;}
.newsletter p{color:var(--gold-light);margin-bottom:2.5rem;font-size:1rem;}
.newsletter-form{display:flex;gap:0.5rem;max-width:500px;margin:0 auto;background:var(--white);padding:0.4rem;border-radius:50px;}
.newsletter-input{flex:1;padding:0.9rem 1.5rem;font-size:0.95rem;color:var(--black);background:transparent;}
.newsletter-btn{padding:0.9rem 2rem;background:var(--gradient-gold);color:var(--white);border-radius:50px;font-size:0.8rem;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;transition:all 0.3s;}
.newsletter-btn:hover{box-shadow:var(--shadow-gold);}

/* ================== FOOTER ================== */
.footer{background:var(--black);color:var(--white);padding:5rem 2rem 1.5rem;}
.footer-inner{max-width:1400px;margin:0 auto;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1.2fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,0.1);}
.footer-col h4{font-size:0.8rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:1.5rem;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:0.8rem;}
.footer-col a{color:rgba(255,255,255,0.65);font-size:0.9rem;transition:color 0.3s;display:inline-flex;align-items:center;gap:0.5rem;}
.footer-col a:hover{color:var(--gold);}
.footer-about{font-size:0.9rem;color:rgba(255,255,255,0.65);line-height:1.7;margin:1rem 0 1.5rem;}
.footer-logo{font-family:var(--serif);font-size:1.8rem;font-weight:800;letter-spacing:0.25em;background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline-block;margin-bottom:1rem;}
.social-links{display:flex;gap:0.8rem;margin-top:1.5rem;}
.social-link{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;transition:all 0.3s;}
.social-link:hover{background:var(--gradient-gold);border-color:transparent;transform:translateY(-3px);}
.social-link svg{width:18px;height:18px;fill:white;}

.contact-item{display:flex;align-items:flex-start;gap:0.8rem;margin-bottom:1rem;}
.contact-item svg{width:18px;height:18px;stroke:var(--gold);fill:none;stroke-width:1.5;flex-shrink:0;margin-top:2px;}
.contact-item span{color:rgba(255,255,255,0.65);font-size:0.9rem;line-height:1.5;}

.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding-top:1.5rem;}
.footer-bottom p{color:rgba(255,255,255,0.5);font-size:0.85rem;}
.payment-methods{display:flex;gap:0.5rem;}
.payment-icon{height:28px;padding:0 0.6rem;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:0.7rem;font-weight:700;color:rgba(255,255,255,0.7);letter-spacing:0.05em;}

/* ================== CART DRAWER ================== */
.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:440px;background:var(--white);z-index:400;transform:translateX(100%);transition:transform 0.4s var(--transition-slow);display:flex;flex-direction:column;box-shadow:var(--shadow-lg);}
.cart-drawer.open{transform:translateX(0);}
.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:399;opacity:0;visibility:hidden;transition:all 0.3s;backdrop-filter:blur(4px);}
.cart-overlay.open{opacity:1;visibility:visible;}
.cart-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--light-gray);}
.cart-title{font-family:var(--serif);font-size:1.5rem;font-weight:600;display:flex;align-items:center;gap:0.5rem;}
.cart-title .count{background:var(--gold-pale);color:var(--gold-deep);font-size:0.75rem;padding:0.2rem 0.6rem;border-radius:20px;font-weight:600;}
.cart-close{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all 0.3s;}
.cart-close:hover{background:var(--off-white);}
.cart-close svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;}
.cart-body{flex:1;overflow-y:auto;padding:1rem 2rem;}
.cart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:2rem;}
.cart-empty svg{width:80px;height:80px;stroke:var(--light-gray);fill:none;stroke-width:1;margin-bottom:1.5rem;}
.cart-empty h3{font-family:var(--serif);font-size:1.4rem;margin-bottom:0.5rem;}
.cart-empty p{color:var(--gray);font-size:0.9rem;margin-bottom:1.5rem;}

.cart-item{display:grid;grid-template-columns:80px 1fr auto;gap:1rem;padding:1.2rem 0;border-bottom:1px solid var(--light-gray);align-items:center;animation:slideIn 0.3s var(--transition);}
@keyframes slideIn{from{opacity:0;transform:translateX(20px);}to{opacity:1;transform:translateX(0);}}
.cart-item-img{width:80px;height:80px;border-radius:6px;overflow:hidden;background:var(--off-white);}
.cart-item-img img{width:100%;height:100%;object-fit:cover;}
.cart-item-info h4{font-family:var(--serif);font-size:1rem;font-weight:500;margin-bottom:0.3rem;}
.cart-item-brand{font-size:0.7rem;color:var(--gold-dark);letter-spacing:0.1em;text-transform:uppercase;margin-bottom:0.5rem;}
.cart-item-bottom{display:flex;justify-content:space-between;align-items:center;}
.cart-item-qty{display:flex;align-items:center;border:1px solid var(--light-gray);border-radius:4px;}
.cart-qty-btn{width:28px;height:28px;font-size:0.9rem;display:flex;align-items:center;justify-content:center;}
.cart-qty-btn:hover{color:var(--gold-dark);}
.cart-qty-num{padding:0 0.6rem;font-size:0.85rem;font-weight:600;}
.cart-item-price{font-family:var(--serif);font-size:1.05rem;font-weight:600;}
.cart-item-remove{color:var(--gray);font-size:0.85rem;margin-top:0.4rem;cursor:pointer;transition:color 0.3s;}
.cart-item-remove:hover{color:#D14545;}

.cart-footer{padding:1.5rem 2rem;border-top:1px solid var(--light-gray);background:var(--off-white);}
.cart-summary{display:flex;flex-direction:column;gap:0.6rem;margin-bottom:1.2rem;font-size:0.9rem;}
.summary-row{display:flex;justify-content:space-between;color:var(--charcoal);}
.summary-row.total{font-family:var(--serif);font-size:1.4rem;font-weight:600;color:var(--black);padding-top:0.8rem;margin-top:0.5rem;border-top:1px solid var(--light-gray);}
.cart-actions{display:flex;flex-direction:column;gap:0.6rem;}
.cart-actions .btn{justify-content:center;width:100%;}

/* ================== TOAST ================== */
.toast{position:fixed;bottom:2rem;right:2rem;background:var(--black);color:var(--white);padding:1rem 1.5rem;border-radius:8px;display:flex;align-items:center;gap:0.8rem;z-index:500;transform:translateX(calc(100% + 2rem));transition:all 0.4s var(--transition);box-shadow:var(--shadow-lg);max-width:340px;}
.toast.show{transform:translateX(0);}
.toast-icon{width:36px;height:36px;border-radius:50%;background:var(--gradient-gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.toast-icon svg{width:18px;height:18px;stroke:white;fill:none;stroke-width:2.5;}
.toast-text strong{display:block;font-size:0.9rem;margin-bottom:2px;}
.toast-text span{font-size:0.8rem;color:var(--gold-light);}

/* ================== MOBILE MENU ================== */
.mobile-menu{position:fixed;inset:0;background:var(--white);z-index:150;transform:translateX(-100%);transition:transform 0.4s var(--transition-slow);display:flex;flex-direction:column;padding:2rem;}
.mobile-menu.open{transform:translateX(0);}
.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem;}
.mobile-menu-close{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--off-white);}
.mobile-menu-close svg{width:20px;height:20px;stroke:var(--black);fill:none;stroke-width:2;}
.mobile-nav{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:2rem;}
.mobile-nav a{font-family:var(--serif);font-size:1.8rem;font-weight:500;padding:0.8rem 0;border-bottom:1px solid var(--light-gray);display:flex;justify-content:space-between;align-items:center;}
.mobile-nav a::after{content:'→';color:var(--gold);font-size:1.2rem;}
.mobile-menu-footer{margin-top:auto;}
.mobile-menu-social{display:flex;gap:0.8rem;margin-top:1.5rem;}

/* ================== SCROLL ANIMATIONS ================== */
.reveal{opacity:0;transform:translateY(30px);transition:all 0.8s var(--transition);}
.reveal.in{opacity:1;transform:translateY(0);}
.reveal-delay-1{transition-delay:0.1s;}
.reveal-delay-2{transition-delay:0.2s;}
.reveal-delay-3{transition-delay:0.3s;}

/* ================== RESPONSIVE ================== */
@media (max-width:1024px){
  .hero-inner{grid-template-columns:1fr;text-align:center;gap:3rem;}
  .hero-content{margin:0 auto;}
  .hero p{margin-left:auto;margin-right:auto;}
  .hero-cta{justify-content:center;}
  .hero-stats{justify-items:center;}
  .hero-visual{order:-1;min-height:auto;}
  .products-grid{grid-template-columns:repeat(3,1fr);}
  .feature-split{grid-template-columns:1fr;gap:3rem;}
  .testimonial-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:repeat(2,1fr);gap:2.5rem;}
  .nav{display:none;}
  .menu-toggle{display:flex;}
  .header-inner{grid-template-columns:auto auto;justify-content:space-between;}
  .modal-content{grid-template-columns:1fr;}
  .modal-info-section{padding:2rem;max-width:100%;}
  .modal-image-section{padding:2rem;}
  .modal-bg-overlay{background:linear-gradient(180deg,rgba(255,255,255,0.92) 0%,rgba(255,255,255,0.75) 100%);}
  .hero-floating-card{display:none;}
}

@media (max-width:768px){
  section{padding:4rem 1.2rem;}
  .header-inner{padding:0.8rem 1.2rem;gap:0.6rem;}
  .logo{font-size:1.3rem;letter-spacing:0.2em;}
  .header-actions{gap:0.3rem;}
  .icon-btn{width:38px;height:38px;}
  .hero{min-height:auto;padding:3rem 1.2rem 4rem;}
  .hero h1{font-size:2.5rem;}
  .hero-cta{flex-direction:column;align-items:stretch;}
  .hero-cta .btn{justify-content:center;}
  .hero-stats{grid-template-columns:1fr;gap:1rem;text-align:center;}
  .stat-num{font-size:1.6rem;}
  .products-grid{grid-template-columns:repeat(2,1fr);gap:0.8rem;}
  .product-info{padding:0 0.3rem 0.3rem;}
  .product-name{font-size:0.9rem;}
  .product-brand{font-size:0.6rem;}
  .price-current{font-size:1rem;}
  .price-old{font-size:0.75rem;}
  .product-actions{opacity:1;transform:translateX(0);}
  .product-quick-add{padding:0.6rem;font-size:0.65rem;letter-spacing:0.15em;}
  .filter-tabs{gap:0.4rem;}
  .filter-tab{padding:0.5rem 1rem;font-size:0.7rem;}
  .catalog-header{flex-direction:column;align-items:stretch;gap:1rem;}
  .sort-select{width:100%;}
  .modal-content{grid-template-columns:1fr;}
  .modal-image-section{padding:1rem;min-height:auto;}
  .modal-main-image{max-width:100%;}
  .modal-thumb{width:60px;height:60px;}
  .modal-info-section{padding:1.5rem;}
  .modal-title{font-size:1.6rem;}
  .modal-actions .btn{padding:0.9rem 1.5rem;}
  .feature-list{grid-template-columns:1fr;}
  .modal-meta{grid-template-columns:1fr 1fr;gap:0.8rem;}
  .testimonial-card{padding:1.8rem;}
  .newsletter-form{flex-direction:column;background:transparent;padding:0;border-radius:0;}
  .newsletter-input{background:var(--white);border-radius:50px;padding:1rem 1.5rem;margin-bottom:0.8rem;}
  .newsletter-btn{border-radius:50px;width:100%;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .cart-drawer{max-width:100%;}
  .toast{left:1rem;right:1rem;bottom:1rem;max-width:none;}
  .search-container{padding:1.2rem;}
  .search-input{font-size:1rem;}
  .section-head{margin-bottom:2.5rem;}
  .video-section{padding:4rem 1.2rem;}
  .video-decoration{display:none;}
}

@media (max-width:380px){
  .products-grid{grid-template-columns:repeat(2,1fr);gap:0.6rem;}
  .hero h1{font-size:2rem;}
  .footer-grid{grid-template-columns:1fr;}
  .header-inner{padding:0.7rem 0.8rem;gap:0.4rem;}
  .logo{font-size:1.05rem;letter-spacing:0.12em;}
  .header-actions{gap:0.1rem;}
  .icon-btn{width:34px;height:34px;}
  .icon-btn svg{width:17px;height:17px;}
  .cart-count{width:16px;height:16px;min-width:16px;font-size:0.6rem;}
}
