:root{
  --bg: #f5f3f0;
  --bg-alt: #ece8e2;
  --ink: #1a1816;
  --ink-soft: #55504a;
  --accent: #c98a72;
  --white: #ffffff;
  --border: #ddd7cf;
  --radius: 18px;
  --max-width: 1240px;
  font-size: 16px;
}

*{box-sizing:border-box;margin:0;padding:0;}

body{
  font-family:'Inter',sans-serif;
  background:var(--bg);
  color:var(--ink);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,.logo,.footer-logo{
  font-family:'Anton',sans-serif;
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:0.01em;
}

img{display:block;max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
ul{list-style:none;}

.section-kicker{
  font-size:clamp(1.8rem,4vw,2.6rem);
  margin-bottom:2rem;
}
.section-kicker.light{color:var(--white);}

/* ANNOUNCEMENT BAR */
.announce-bar{
  background:var(--ink);color:var(--white);
  overflow:hidden;white-space:nowrap;
  padding:0.6rem 0;
}
.announce-track{
  display:inline-flex;
  width:max-content;
  animation:announceScroll 24s linear infinite;
}
.announce-track span{
  display:inline-flex;align-items:center;
  padding:0 1.75rem;
  font-size:0.78rem;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;
  white-space:nowrap;
}
.announce-track span::after{
  content:"✦";
  margin-left:1.75rem;
  opacity:0.45;
  font-size:0.7rem;
}
@keyframes announceScroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
@media (prefers-reduced-motion: reduce){
  .announce-track{animation-duration:60s;}
  .instagram-glow,.instagram-float,.instagram-particles span{animation:none;}
  .instagram-reveal{transition:opacity 0.4s ease;transform:none;}
  .instagram-phone{transition:none;}
}

/* HEADER */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(245,243,240,0.9);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.header-inner{
  max-width:var(--max-width);
  margin:0 auto;
  padding:1rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;
}
.logo{font-size:1.6rem;}
.main-nav{display:flex;gap:1.4rem;font-size:0.9rem;font-weight:600;letter-spacing:0.03em;text-transform:uppercase;}
.main-nav a{opacity:0.75;transition:opacity .2s;}
.main-nav a:hover{opacity:1;}

.header-icons{display:flex;align-items:center;gap:0.75rem;}
.icon-btn{
  width:38px;height:38px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:var(--white);border:1px solid var(--border);
  position:relative;
}
.icon-btn svg{width:18px;height:18px;fill:none;stroke:var(--ink);stroke-width:1.8;stroke-linecap:round;}
.cart-count{
  position:absolute;top:-4px;right:-4px;
  background:var(--ink);color:var(--white);
  font-size:0.65rem;font-weight:700;
  width:16px;height:16px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
}

.nav-toggle{display:none;flex-direction:column;gap:4px;width:32px;}
.nav-toggle span{height:2px;background:var(--ink);border-radius:2px;}

/* HERO */
.hero{
  max-width:var(--max-width);margin:0 auto;
  padding:3rem 1.5rem 5rem;
  display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;
}
.badge{
  display:inline-block;
  background:var(--white);border:1px solid var(--border);
  padding:0.4rem 0.9rem;border-radius:999px;
  font-size:0.8rem;font-weight:600;
  margin-bottom:1.5rem;
}
.hero-text h1{font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.05;margin-bottom:1.5rem;}
.hero-text p{max-width:34ch;color:var(--ink-soft);margin-bottom:2rem;}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;}

.btn{
  display:inline-flex;align-items:center;gap:0.5rem;
  padding:0.9rem 1.6rem;border-radius:999px;
  font-weight:600;font-size:0.95rem;
  transition:transform .2s, background .2s;
}
.btn-dark{background:var(--ink);color:var(--white);}
.btn-dark:hover{transform:translateY(-2px);}
.btn-ghost{border:1px solid var(--ink);}
.btn-ghost:hover{background:var(--ink);color:var(--white);}

.hero-media{border-radius:var(--radius);overflow:hidden;aspect-ratio:9/10;}
.hero-media img{width:100%;height:100%;object-fit:cover;}

/* CATEGORY STRIP */
.category-strip{max-width:var(--max-width);margin:0 auto;padding:2rem 1.5rem 5rem;}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;}
.category-card{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/5;}
.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.category-card:hover img{transform:scale(1.05);}
.category-pill{
  position:absolute;bottom:1rem;left:1rem;
  background:var(--white);padding:0.5rem 1rem;border-radius:999px;
  font-size:0.85rem;font-weight:600;
}

/* INSTAGRAM */
.instagram-section{
  max-width:var(--max-width);margin:0 auto;
  padding:3rem 1.5rem 5rem;
  display:grid;grid-template-columns:0.85fr 1fr;gap:3rem;align-items:center;
}
.instagram-phone-wrap{
  position:relative;
  display:flex;align-items:center;justify-content:center;
  min-height:540px;
  perspective:1200px;
}
.instagram-glow{
  position:absolute;inset:-8%;
  background:conic-gradient(from 180deg,#feda75,#fa7e1e,#d62976,#962fbf,#4f5bd5,#feda75);
  filter:blur(70px);
  opacity:0.35;
  border-radius:50%;
  animation:igGlowSpin 14s linear infinite;
  z-index:0;
}
@keyframes igGlowSpin{to{transform:rotate(360deg);}}

.instagram-particles{position:absolute;inset:0;z-index:1;pointer-events:none;}
.instagram-particles span{position:absolute;border-radius:50%;opacity:0.7;animation:igParticleFloat 6s ease-in-out infinite;}
.instagram-particles span:nth-child(1){top:8%;left:10%;width:14px;height:14px;animation-duration:7s;background:linear-gradient(135deg,#fa7e1e,#feda75);}
.instagram-particles span:nth-child(2){top:75%;left:6%;width:8px;height:8px;animation-duration:5s;animation-delay:1s;background:linear-gradient(135deg,#d62976,#962fbf);}
.instagram-particles span:nth-child(3){top:18%;left:88%;width:10px;height:10px;animation-duration:6.5s;animation-delay:0.5s;background:linear-gradient(135deg,#962fbf,#4f5bd5);}
.instagram-particles span:nth-child(4){top:85%;left:82%;width:12px;height:12px;animation-duration:8s;animation-delay:2s;background:linear-gradient(135deg,#feda75,#fa7e1e);}
.instagram-particles span:nth-child(5){top:48%;left:2%;width:6px;height:6px;animation-duration:5.5s;animation-delay:1.5s;background:linear-gradient(135deg,#d62976,#4f5bd5);}
.instagram-particles span:nth-child(6){top:42%;left:94%;width:9px;height:9px;animation-duration:7.5s;animation-delay:0.8s;background:linear-gradient(135deg,#962fbf,#fa7e1e);}
@keyframes igParticleFloat{
  0%,100%{transform:translateY(0) translateX(0);opacity:0.6;}
  50%{transform:translateY(-22px) translateX(10px);opacity:1;}
}

.instagram-reveal{
  position:relative;z-index:2;
  opacity:0;transform:translateY(70px) scale(0.92);
  transition:opacity 0.9s cubic-bezier(.2,.8,.2,1), transform 0.9s cubic-bezier(.2,.8,.2,1);
}
.instagram-reveal.is-visible{opacity:1;transform:translateY(0) scale(1);}

.instagram-float{
  animation:igFloat 4.5s ease-in-out infinite;
  will-change:transform;
  backface-visibility:hidden;-webkit-backface-visibility:hidden;
}
@keyframes igFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-1deg);}
  50%{transform:translate3d(0,-16px,0) rotate(1deg);}
}

.instagram-phone{
  display:block;transition:transform 0.15s ease-out;will-change:transform;
  backface-visibility:hidden;-webkit-backface-visibility:hidden;
  transform:translateZ(0);
}

.instagram-phone-frame{
  width:250px;aspect-ratio:9/19.5;
  background:linear-gradient(160deg,#e4e4e6,#8f8f95 45%,#5c5c60);
  border-radius:52px;padding:12px;
  box-shadow:0 30px 60px -15px rgba(0,0,0,0.35), inset 0 0 0 1px rgba(255,255,255,0.4);
  backface-visibility:hidden;-webkit-backface-visibility:hidden;
  position:relative;
}
.instagram-phone-notch{position:absolute;top:22px;left:50%;transform:translateX(-50%);width:90px;height:26px;background:#0a0a0a;border-radius:20px;z-index:3;}
.instagram-phone-screen{
  width:100%;height:100%;background:var(--white);border-radius:40px;overflow:hidden;position:relative;
  transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;
}
.instagram-screenshot{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}

.instagram-text{position:relative;z-index:2;}
.instagram-kicker{display:inline-block;font-size:0.85rem;font-weight:700;color:var(--accent);margin-bottom:0.75rem;letter-spacing:0.03em;}
.instagram-text h2{font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:1rem;}
.instagram-text p{color:var(--ink-soft);max-width:36ch;margin-bottom:2rem;}

.btn-instagram{background:linear-gradient(135deg,#feda75,#fa7e1e,#d62976,#962fbf,#4f5bd5);color:var(--white);}
.btn-instagram:hover{transform:translateY(-2px);}
.ig-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.ig-icon .ig-icon-dot{fill:currentColor;stroke:none;}

/* EDITORIAL */
.editorial{max-width:var(--max-width);margin:0 auto;padding:2rem 1.5rem 5rem;display:grid;grid-template-columns:0.8fr 1.6fr;gap:2.5rem;align-items:start;}
.editorial-copy h2{font-size:clamp(1.8rem,3.5vw,2.4rem);margin-bottom:1rem;}
.editorial-copy p{color:var(--ink-soft);max-width:32ch;}
.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}
.editorial-card{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/5;}
.editorial-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.editorial-card:hover img{transform:scale(1.05);}
.pill-btn{
  position:absolute;bottom:1rem;right:1rem;
  background:var(--white);padding:0.6rem 1.1rem;border-radius:999px;
  font-size:0.8rem;font-weight:600;
}

/* DEALS */
.deals{background:var(--ink);color:var(--white);padding:4rem 1.5rem;}
.deals-sub{color:#c9c4bd;margin-bottom:2.5rem;max-width:var(--max-width);margin-left:auto;margin-right:auto;}
.section-kicker{max-width:var(--max-width);margin-left:auto;margin-right:auto;}
.deals-grid{
  max-width:var(--max-width);margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;
}
.deal-card{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;}
.deal-wide{grid-column:1 / -1;}
.deal-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.deal-card:hover img{transform:scale(1.05);}
.discount{
  position:absolute;bottom:1rem;left:1rem;
  font-family:'Anton',sans-serif;font-size:1.6rem;color:var(--white);
  text-shadow:0 2px 12px rgba(0,0,0,0.5);
}
.tag{
  position:absolute;top:1rem;left:1rem;
  background:var(--ink);color:var(--white);
  font-size:0.7rem;font-weight:700;text-transform:uppercase;
  padding:0.3rem 0.7rem;border-radius:999px;
}
.deal-tags{position:absolute;bottom:1rem;right:1rem;display:flex;gap:0.5rem;}
.deal-tags span{
  background:var(--white);color:var(--ink);
  font-size:0.7rem;font-weight:600;
  padding:0.35rem 0.8rem;border-radius:999px;
}

/* COLLECTION HERO (deportivo.html, lenceria.html, bikinis.html, pijamas.html) */
.collection-hero{
  max-width:var(--max-width);margin:0 auto;
  padding:2.5rem 1.5rem 3rem;
  display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;
}
.collection-hero-text p{color:var(--ink-soft);max-width:40ch;margin-top:1rem;}
.collection-hero-media{border-radius:var(--radius);overflow:hidden;aspect-ratio:4/5;}
.collection-hero-media img,
.collection-hero-media video{width:100%;height:100%;object-fit:cover;display:block;}
.collection-products{max-width:var(--max-width);margin:0 auto;padding:1rem 1.5rem 6rem;}
.section-nav{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem 3rem;}
.section-nav-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;}
.product-section{margin-bottom:3rem;scroll-margin-top:90px;}
.product-section:last-child{margin-bottom:0;}
.product-section-title{
  font-size:1.1rem;text-transform:uppercase;letter-spacing:0.05em;
  margin-bottom:1.25rem;padding-bottom:0.75rem;border-bottom:1px solid var(--border);
}
.product-section-empty{
  color:var(--ink-soft);font-size:0.9rem;
  border:1px dashed var(--border);border-radius:var(--radius);
  padding:2rem;text-align:center;
}

/* PRODUCT MEDIA — front/back hover swap for products with 2 photos */
.product-media{position:relative;aspect-ratio:3/4;overflow:hidden;}
.product-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.product-media img.img-back{
  opacity:0;
  animation:mediaCrossfade 6s ease-in-out infinite;
}
@keyframes mediaCrossfade{
  0%, 45%{opacity:0;}
  55%, 95%{opacity:1;}
  100%{opacity:0;}
}

/* BRAND STORY */
.brand-story{max-width:var(--max-width);margin:0 auto;padding:5rem 1.5rem;display:grid;grid-template-columns:0.9fr 1.6fr;gap:3rem;}
.brand-quote{font-family:'Anton',sans-serif;font-size:clamp(1.6rem,3vw,2.2rem);text-transform:uppercase;line-height:1.2;margin-bottom:1.25rem;}
.brand-name{display:block;font-size:1rem;margin-bottom:1rem;color:var(--accent);}
.brand-detail{color:var(--ink-soft);max-width:38ch;}
.product-grid h3{font-size:1rem;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:1.5rem;color:var(--ink-soft);}
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;}
.product-card{position:relative;background:var(--white);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);cursor:pointer;}
.product-card img{aspect-ratio:3/4;object-fit:cover;width:100%;}
.product-card .tag{top:0.75rem;left:0.75rem;}
.product-cat{font-size:0.7rem;text-transform:uppercase;color:var(--ink-soft);padding:0.75rem 0.9rem 0 0.9rem;}
.product-name{font-size:0.9rem;font-weight:600;padding:0.25rem 0.9rem 0;}
.product-price{font-size:0.9rem;font-weight:700;padding:0.35rem 0.9rem 0.9rem;color:var(--accent);}

/* TESTIMONIALS */
.testimonials{max-width:var(--max-width);margin:0 auto;padding:2rem 1.5rem 6rem;}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.testimonial-card{
  background:var(--white);border:1px solid var(--border);border-radius:var(--radius);
  padding:1.75rem;display:flex;gap:1.25rem;align-items:flex-start;
}
.testimonial-card img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.testimonial-name{font-weight:700;margin-bottom:0.4rem;}
.testimonial-text{color:var(--ink-soft);font-size:0.92rem;}

/* FOOTER */
.site-footer{background:var(--ink);color:var(--white);padding:4rem 1.5rem 2rem;}
.footer-inner{max-width:var(--max-width);margin:0 auto;}
.footer-top{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:end;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,0.12);}
.footer-logo{font-size:clamp(3rem,8vw,6rem);color:rgba(255,255,255,0.12);line-height:1;}
.newsletter label{font-weight:700;display:block;margin-bottom:0.5rem;}
.newsletter-sub{color:#b9b4ac;font-size:0.9rem;margin-bottom:1rem;max-width:36ch;}
.newsletter-row{display:flex;gap:0.75rem;margin-bottom:1.25rem;}
.newsletter-row input{
  flex:1;padding:0.85rem 1.1rem;border-radius:999px;border:1px solid rgba(255,255,255,0.2);
  background:rgba(255,255,255,0.05);color:var(--white);
}
.newsletter-row input::placeholder{color:#8a857d;}
.newsletter-row button{
  background:var(--white);color:var(--ink);font-weight:700;
  padding:0.85rem 1.4rem;border-radius:999px;white-space:nowrap;
}
.payment-icons{display:flex;gap:0.75rem;}
.payment-icons span{
  font-size:0.65rem;font-weight:700;letter-spacing:0.03em;
  border:1px solid rgba(255,255,255,0.25);border-radius:6px;
  padding:0.35rem 0.6rem;color:#b9b4ac;
}

.footer-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:3rem 0;border-bottom:1px solid rgba(255,255,255,0.12);}
.footer-col h4{font-size:0.85rem;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:1rem;color:#b9b4ac;}
.footer-col a{display:block;font-size:0.92rem;color:#e7e4df;padding:0.3rem 0;opacity:0.85;}
.footer-col a:hover{opacity:1;}

.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;font-size:0.85rem;color:#8a857d;flex-wrap:wrap;gap:1rem;}
.socials{display:flex;gap:0.75rem;}
.socials a{
  width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,0.2);
  display:flex;align-items:center;justify-content:center;font-size:0.7rem;font-weight:700;color:var(--white);
}

/* PRODUCT MODAL (quick view) */
.modal-overlay{
  position:fixed;inset:0;background:rgba(26,24,22,0.55);
  display:flex;align-items:center;justify-content:center;
  padding:1.5rem;z-index:200;
  opacity:0;pointer-events:none;transition:opacity .25s;
}
.modal-overlay.is-open{opacity:1;pointer-events:auto;}
.modal-box{
  background:var(--white);border-radius:var(--radius);
  max-width:640px;width:100%;max-height:90vh;overflow:auto;
  display:grid;grid-template-columns:1fr 1fr;
  position:relative;
}
.modal-close{
  position:absolute;top:0.75rem;right:0.75rem;
  width:34px;height:34px;border-radius:50%;
  background:var(--white);border:1px solid var(--border);
  font-size:1.3rem;line-height:1;z-index:2;
}
.modal-box .product-media{aspect-ratio:3/4;}
.modal-info{padding:2rem 1.75rem;display:flex;flex-direction:column;}
.modal-info .product-cat{font-size:0.75rem;text-transform:uppercase;color:var(--ink-soft);margin-bottom:0.35rem;}
.modal-info h3{font-size:1.4rem;margin-bottom:0.5rem;}
.modal-price{font-size:1.2rem;font-weight:700;color:var(--accent);}
.modal-actions{display:flex;flex-direction:column;gap:0.75rem;margin-top:1.5rem;}
.btn-whatsapp{
  display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;
  padding:0.9rem 1.6rem;border-radius:999px;
  background:#25D366;color:var(--white);font-weight:600;font-size:0.95rem;
  transition:transform .2s;
}
.btn-whatsapp:hover{transform:translateY(-2px);}

/* CART PANEL */
.cart-overlay{
  position:fixed;inset:0;background:rgba(26,24,22,0.55);
  z-index:200;opacity:0;pointer-events:none;transition:opacity .25s;
}
.cart-overlay.is-open{opacity:1;pointer-events:auto;}
.cart-panel{
  position:fixed;top:0;right:0;bottom:0;width:min(400px,100%);
  background:var(--bg);z-index:201;
  transform:translateX(100%);transition:transform .3s ease;
  display:flex;flex-direction:column;
  box-shadow:-8px 0 30px rgba(0,0,0,0.15);
}
.cart-panel.is-open{transform:translateX(0);}
.cart-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);
}
.cart-header h3{font-size:1.2rem;}
#cartClose{width:34px;height:34px;border-radius:50%;background:var(--white);border:1px solid var(--border);font-size:1.3rem;}
.cart-shipping{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);}
.cart-shipping p{font-size:0.85rem;margin-bottom:0.6rem;font-weight:600;}
.shipping-bar{height:8px;border-radius:999px;background:var(--bg-alt);overflow:hidden;}
.shipping-bar-fill{height:100%;background:var(--accent);width:0%;transition:width .4s ease;border-radius:999px;}
.cart-items{flex:1;overflow-y:auto;padding:1rem 1.5rem;}
.cart-empty{color:var(--ink-soft);font-size:0.9rem;}
.cart-item{display:flex;gap:0.9rem;align-items:center;padding:0.75rem 0;border-bottom:1px solid var(--border);}
.cart-item img{width:56px;height:70px;object-fit:cover;border-radius:10px;flex-shrink:0;}
.cart-item-info{flex:1;}
.cart-item-name{font-size:0.88rem;font-weight:600;}
.cart-item-price{font-size:0.82rem;color:var(--ink-soft);}
.cart-item-remove{font-size:1.2rem;color:var(--ink-soft);width:28px;height:28px;flex-shrink:0;}
.cart-footer{padding:1.25rem 1.5rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:0.75rem;}
.cart-footer .btn-whatsapp{text-align:center;}
.cart-total{font-weight:700;margin-bottom:1rem;display:flex;justify-content:space-between;font-size:1.05rem;}

/* CHECKOUT */
.checkout{max-width:var(--max-width);margin:0 auto;padding:3rem 1.5rem 6rem;}
.checkout h1{font-size:clamp(1.8rem,3.5vw,2.4rem);margin-bottom:2rem;}
.checkout-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:3rem;align-items:start;}
.checkout-block{margin-bottom:2.5rem;}
.checkout-block h2{font-size:1rem;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:1.25rem;color:var(--ink-soft);}

.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.form-field{display:flex;flex-direction:column;gap:0.4rem;}
.form-field-wide{grid-column:1 / -1;}
.form-field label{font-size:0.82rem;font-weight:600;}
.form-field input{
  padding:0.8rem 1rem;border-radius:12px;border:1px solid var(--border);
  background:var(--white);font-family:inherit;font-size:0.92rem;color:var(--ink);
}
.form-field input:focus{outline:2px solid var(--ink);outline-offset:1px;}

.checkout-note{color:var(--ink-soft);font-size:0.88rem;margin-bottom:1rem;}
.bank-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:0.5rem 1.5rem;}
.bank-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.9rem 0;border-bottom:1px solid var(--border);}
.bank-row:last-child{border-bottom:none;}
.bank-label{display:block;font-size:0.72rem;text-transform:uppercase;color:var(--ink-soft);letter-spacing:0.04em;margin-bottom:0.15rem;}
.bank-value{font-weight:700;font-size:0.98rem;}
.btn-copy{background:var(--bg-alt);border-radius:999px;padding:0.5rem 1rem;font-size:0.78rem;font-weight:600;white-space:nowrap;transition:background .2s;}
.btn-copy:hover{background:var(--border);}
.checkout-reserve-msg{margin-top:1rem;font-size:0.85rem;color:var(--ink-soft);background:var(--bg-alt);border-radius:12px;padding:0.9rem 1.1rem;}

.upload-zone{
  display:flex;align-items:center;justify-content:center;text-align:center;
  border:1.5px dashed var(--border);border-radius:var(--radius);
  padding:2rem 1.5rem;cursor:pointer;color:var(--ink-soft);font-size:0.9rem;
  transition:border-color .2s, background .2s;
}
.upload-zone:hover{border-color:var(--ink);background:var(--white);}
.upload-preview{margin-top:1rem;}
.upload-preview img{max-width:200px;border-radius:12px;border:1px solid var(--border);}
.upload-preview-file{font-size:0.9rem;color:var(--ink-soft);}

.checkout-error{color:#b3261e;background:#fdecea;border-radius:12px;padding:0.85rem 1.1rem;font-size:0.88rem;margin-bottom:1.25rem;}
.btn-block{width:100%;justify-content:center;text-align:center;}

.summary-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;position:sticky;top:100px;}
.summary-card h2{font-size:1rem;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:1.25rem;color:var(--ink-soft);}
.summary-items{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;}
.summary-item{display:flex;gap:0.9rem;align-items:center;}
.summary-item img{width:56px;height:70px;object-fit:cover;border-radius:10px;flex-shrink:0;}
.summary-item-info{flex:1;}
.summary-item-name{font-size:0.88rem;font-weight:600;}
.summary-item-variant{font-weight:400;color:var(--ink-soft);}
.summary-item-qty{font-size:0.8rem;color:var(--ink-soft);}
.summary-item-price{font-size:0.88rem;font-weight:700;white-space:nowrap;}
.summary-totals{border-top:1px solid var(--border);padding-top:1rem;}
.summary-row{display:flex;justify-content:space-between;gap:1rem;font-size:0.9rem;padding:0.35rem 0;color:var(--ink-soft);}
.summary-total{font-weight:700;font-size:1.05rem;color:var(--ink);border-top:1px solid var(--border);margin-top:0.5rem;padding-top:0.75rem;}

.checkout-empty{text-align:center;padding:5rem 1.5rem;}
.checkout-empty h1{margin-bottom:1rem;}
.checkout-empty p{color:var(--ink-soft);margin-bottom:2rem;}

/* CONFIRMACIÓN DE PEDIDO */
.confirm-section{max-width:640px;margin:0 auto;padding:5rem 1.5rem 6rem;text-align:center;}
.confirm-icon{font-size:2.6rem;margin-bottom:1rem;}
.confirm-section h1{font-size:clamp(1.8rem,3.5vw,2.4rem);margin-bottom:0.5rem;}
.confirm-section > p{color:var(--ink-soft);}
.confirm-order-number{
  display:inline-block;background:var(--ink);color:var(--white);
  padding:0.55rem 1.4rem;border-radius:999px;font-weight:700;letter-spacing:0.03em;
  margin:1.25rem 0 0.5rem;
}
.confirm-reserve-msg{
  background:var(--bg-alt);border-radius:var(--radius);padding:1.25rem 1.5rem;
  color:var(--ink-soft);font-size:0.9rem;margin:1.5rem 0;text-align:left;
}
.confirm-summary{
  text-align:left;background:var(--white);border:1px solid var(--border);
  border-radius:var(--radius);padding:1.5rem;margin:2rem 0;
}
.confirm-summary h2{font-size:1rem;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:1.25rem;color:var(--ink-soft);}

/* RESPONSIVE */
@media (max-width:900px){
  .main-nav{
    display:none;
    position:absolute;top:100%;left:0;right:0;
    background:var(--bg);border-bottom:1px solid var(--border);
    flex-direction:column;padding:1rem 1.5rem;gap:0.25rem;
  }
  .main-nav.open{display:flex;}
  .main-nav a{padding:0.75rem 0;border-bottom:1px solid var(--border);}
  .main-nav a:last-child{border-bottom:none;}
  .nav-toggle{display:flex;}
  .hero{grid-template-columns:1fr;padding-top:2rem;}
  .hero-media{order:-1;}
  .collection-hero{grid-template-columns:1fr;padding-top:2rem;}
  .collection-hero-media{order:-1;}
  .section-nav-grid{grid-template-columns:repeat(3,1fr);}
  .category-grid{grid-template-columns:1fr;}
  .instagram-section{grid-template-columns:1fr;text-align:center;padding-top:1rem;}
  .instagram-phone-wrap{order:-1;min-height:460px;}
  .instagram-phone-frame{width:210px;}
  .instagram-text{display:flex;flex-direction:column;align-items:center;}
  .instagram-text p{max-width:40ch;}
  .editorial{grid-template-columns:1fr;}
  .editorial-grid{grid-template-columns:1fr;}
  .deals-grid{grid-template-columns:1fr;}
  .brand-story{grid-template-columns:1fr;}
  .products{grid-template-columns:repeat(2,1fr);}
  .testimonial-grid{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr;}
  .footer-columns{grid-template-columns:1fr 1fr;}
  .modal-box{grid-template-columns:1fr;}
  .modal-box .product-media{aspect-ratio:4/3;}
  .checkout-grid{grid-template-columns:1fr;}
  .summary-card{position:static;}
}

@media (max-width:520px){
  .instagram-phone-wrap{min-height:410px;}
  .instagram-phone-frame{width:205px;}
  .products{grid-template-columns:1fr 1fr;}
  .section-nav-grid{grid-template-columns:repeat(2,1fr);}
  .form-grid{grid-template-columns:1fr;}
  .newsletter-row{flex-direction:column;}
  .footer-bottom{flex-direction:column;align-items:flex-start;}
}
