
:root{
  --ink:#2b1938;
  --muted:#7b6378;
  --cream:#fff8ef;
  --white:#fff;
  --rose:#ff4fa3;
  --coral:#ff7f6e;
  --gold:#f7b955;
  --purple:#8a5cf6;
  --wine:#7b214f;
  --line:#f0d4e4;
  --shadow:0 18px 45px rgba(91,39,87,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  font-family:Inter,Poppins,Arial,sans-serif;
  background:
    radial-gradient(circle at top left, rgba(255,79,163,.18), transparent 30%),
    radial-gradient(circle at top right, rgba(247,185,85,.18), transparent 26%),
    linear-gradient(180deg,#fff8fb,var(--cream));
}
a{text-decoration:none;color:inherit}
.topbar{
  position:sticky;top:0;z-index:20;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:14px 28px;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line);
}
.brand{display:flex;align-items:center;gap:12px}
.brand-logo{
  width:54px;height:54px;border-radius:18px;
  background:linear-gradient(135deg,var(--rose),var(--purple));
  color:white;display:grid;place-items:center;font-weight:900;
  box-shadow:0 12px 30px rgba(255,79,163,.28);
}
.brand h1{margin:0;font-size:22px}
.brand p{margin:2px 0 0;color:var(--muted);font-size:12px}
nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
nav a{font-weight:800;color:#513850;font-size:14px}
.menu-toggle{display:none;border:0;border-radius:14px;background:#fff0f7;padding:10px 13px;font-weight:900}
.hero{
  max-width:1180px;margin:auto;
  padding:54px 22px 36px;
  display:grid;grid-template-columns:1.35fr .85fr;gap:26px;align-items:center;
}
.pill{
  display:inline-block;padding:9px 15px;border-radius:999px;
  background:linear-gradient(135deg,#fff,#fff2e3);
  border:1px solid var(--line);font-weight:900;color:var(--wine);
}
.hero h2{font-size:52px;line-height:1.02;margin:14px 0}
.hero p{font-size:17px;line-height:1.55;color:var(--muted)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}
.btn{
  border:0;border-radius:16px;padding:12px 18px;
  background:linear-gradient(135deg,var(--rose),var(--purple));
  color:white;font-weight:900;cursor:pointer;display:inline-block;
  box-shadow:0 12px 28px rgba(138,92,246,.18);
}
.btn.secondary{background:linear-gradient(135deg,var(--coral),var(--gold));color:#3a1630}
.btn.ghost,.btn.light{
  background:white!important;color:var(--ink)!important;
  border:1px solid var(--line);box-shadow:none;
}
.payment-strip{
  display:inline-block;margin-top:10px;padding:11px 14px;border-radius:16px;
  background:rgba(255,255,255,.72);border:1px solid var(--line);font-size:14px;
}
.hero-card,.card,.info-card{
  background:rgba(255,255,255,.88);
  border:1px solid var(--line);
  border-radius:28px;
  padding:22px;
  box-shadow:var(--shadow);
}
.hero-card{
  background:
    linear-gradient(145deg,rgba(255,255,255,.95),rgba(255,240,247,.9)),
    linear-gradient(135deg,rgba(247,185,85,.16),transparent);
}
.section{max-width:1180px;margin:auto;padding:34px 22px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:18px}
.section h2{font-size:34px;margin:0 0 8px}
.section p{color:var(--muted);line-height:1.5}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:18px 0}
input,select,textarea{
  width:100%;padding:13px 14px;border-radius:15px;
  border:1px solid #e8cadb;background:white;font:inherit;color:var(--ink);
}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(255,79,163,.18)}
.product-grid,.category-grid,.card-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:18px;
}
.product-card,.category-card{
  background:white;border:1px solid var(--line);border-radius:28px;
  overflow:hidden;box-shadow:0 12px 32px rgba(91,39,87,.08);
  transition:.2s transform,.2s box-shadow;
}
.product-card:hover,.category-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(91,39,87,.13)}
.product-img{height:220px;background:linear-gradient(135deg,#fff3f8,#efe5ff);overflow:hidden}
.product-img img{width:100%;height:100%;object-fit:cover;display:block}
.product-placeholder{
  height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  color:#8c6a83;font-weight:900;
}
.product-placeholder span{font-size:18px}
.product-placeholder small{margin-top:6px}
.product-body,.category-card{padding:18px}
.price{font-weight:900;color:var(--wine)}
.tags{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}
.tag{
  font-size:11px;border:1px solid var(--line);background:#fff2f8;color:var(--wine);
  border-radius:999px;padding:6px 9px;cursor:pointer;
}
.card-actions{display:grid;gap:10px;margin-top:14px}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:start}
.form{display:grid;gap:12px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.check{display:flex;gap:10px;align-items:flex-start}
.check input{width:auto;margin-top:4px}
.nested-box{
  background:#fff8fc;border:1px dashed #e8cadb;border-radius:18px;padding:14px;
  display:grid;gap:12px;
}
.hidden-panel{display:none;margin-top:18px}
.hidden-panel.open{display:block}
.notice{font-weight:900;color:#1a7f55}
.warning{font-weight:900;color:#be174b!important}
.centered{display:grid;place-items:center}
.tracking-box{display:flex;gap:12px;margin:14px 0}
.tracking-box input{flex:1}
.order-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
.faq-accordion{display:grid;gap:12px;margin-top:18px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 20px rgba(91,39,87,.05)}
.faq-question{width:100%;text-align:left;padding:18px 20px;background:#fff;border:0;color:var(--ink);font-weight:900;font-size:17px;cursor:pointer}
.faq-question::after{content:'+';float:right;font-size:22px;color:var(--rose)}
.faq-item.active .faq-question::after{content:'–'}
.faq-answer{display:none;padding:0 20px 18px;color:var(--muted);line-height:1.5}
.faq-item.active .faq-answer{display:block}
footer{
  margin-top:40px;padding:32px 18px;text-align:center;
  background:linear-gradient(135deg,#2b1938,#7b214f);color:white;
}
footer p{color:white;margin:6px 0}
@media(max-width:900px){
  .topbar{flex-wrap:wrap;align-items:flex-start}
  .menu-toggle{display:block}
  nav{display:none;width:100%;grid-template-columns:1fr 1fr;gap:10px}
  nav.open{display:grid}
  .hero,.split{grid-template-columns:1fr}
  .hero h2{font-size:38px}
  .filters,.two{grid-template-columns:1fr}
  .section-head{display:block}
  .tracking-box{display:block}
  .tracking-box button{width:100%;margin-top:10px}
}

/* WEB FIX 01 */
.nav-track{
  border:0;background:transparent;color:#513850;font-weight:800;font-size:14px;cursor:pointer;padding:0;
}
.top-track-panel{
  display:none;
  max-width:1180px;
  margin:12px auto 0;
  padding:0 22px;
}
.top-track-panel.open{display:block}
.quick-actions{
  max-width:1180px;
  margin:0 auto;
  padding:12px 22px;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:10px;
}
.quick-actions a,.quick-actions button{
  border:1px solid var(--line);
  border-radius:16px;
  padding:13px 14px;
  background:white;
  font-weight:900;
  color:var(--ink);
  cursor:pointer;
  text-align:center;
}
.enterprise-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:16px;
  margin:18px 0;
}
.tag-cloud{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.category-hero{padding-top:38px}
.monat-section{
  background:linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,242,248,.82));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.highlight{background:linear-gradient(135deg,var(--coral),var(--gold))!important;color:#35162a!important}

/* WEB FIX 02 */
.logo-img{
  width:62px;
  height:62px;
  object-fit:cover;
  border-radius:18px;
  box-shadow:0 10px 25px rgba(123,33,79,.18);
  background:#fff8ef;
}
.process-card{
  border:1px solid rgba(247,185,85,.45);
  background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(255,247,232,.92));
}
.quick-actions{
  max-width:1180px;
  margin:0 auto;
  padding:12px 22px;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:10px;
}
.quick-actions a{
  border:1px solid var(--line);
  border-radius:16px;
  padding:13px 14px;
  background:linear-gradient(135deg,#fff,#fff6ee);
  font-weight:900;
  color:var(--ink);
  cursor:pointer;
  text-align:center;
  box-shadow:0 8px 22px rgba(91,39,87,.05);
}
.enterprise-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:16px;
  margin:18px 0;
}
.monat-section{
  background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,242,248,.88));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.monat-section a:not(.btn){font-weight:900;color:var(--wine)}
.category-hero{padding-top:38px}
.tag-cloud{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.highlight{background:linear-gradient(135deg,var(--coral),var(--gold))!important;color:#35162a!important}
footer a{color:white;font-weight:900;text-decoration:underline}
@media(max-width:900px){
  .logo-img{width:50px;height:50px}
}

/* GOD LEVEL REAL CLEAN */
@import url('https://fonts.googleapis.com/css2?family=Marcellus&family=Poppins:wght@400;600;700;800;900&display=swap');
body{font-family:'Poppins',Inter,Arial,sans-serif}
.brand h1,.hero h2,.section h2{font-family:'Marcellus',serif;letter-spacing:.3px}
.pill{font-family:'Poppins',sans-serif;letter-spacing:.2px}
.info-card h3,.hero-card h3,.product-card h3{font-family:'Marcellus',serif}
.logo-img{border-radius:16px}
.enterprise-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:16px;
  margin:18px 0;
}

/* GOD LEVEL REAL RESTRUCTURED */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700;800&family=Marcellus&family=Poppins:wght@400;500;600;700;800;900&display=swap');

body{
  font-family:'Poppins',Inter,Arial,sans-serif;
  background:
    radial-gradient(circle at 12% 8%,rgba(255,79,163,.16),transparent 28%),
    radial-gradient(circle at 88% 16%,rgba(247,185,85,.18),transparent 26%),
    linear-gradient(180deg,#fff8fb,#fff8ef 58%,#fff5f7);
}
.brand h1{
  font-family:'Cinzel',serif;
  letter-spacing:.4px;
  color:#7b214f;
}
.hero h2,.section h2,.category-gallery h2{
  font-family:'Marcellus',serif;
  letter-spacing:.2px;
}
.premium-nav{
  background:rgba(255,255,255,.76)!important;
  backdrop-filter:blur(18px);
  box-shadow:0 10px 30px rgba(91,39,87,.06);
}
.logo-img{
  width:64px;
  height:64px;
  object-fit:cover;
  border-radius:18px;
  background:#fff8ef;
  box-shadow:0 10px 25px rgba(123,33,79,.18);
}
.hero-premium{
  padding-top:66px;
  padding-bottom:50px;
}
.hero-card,.glass-card,.info-card,.product-card,.category-card,.faq-item{
  background:rgba(255,255,255,.74)!important;
  backdrop-filter:blur(16px);
  border:1px solid rgba(240,212,228,.9)!important;
  box-shadow:0 22px 55px rgba(123,33,79,.10)!important;
}
.process-card{
  background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(255,247,232,.86))!important;
  border:1px solid rgba(247,185,85,.55)!important;
}
.mini-label{
  display:inline-block;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#9b3b73;
  margin-bottom:8px;
}
.track-feature{
  padding-top:14px;
}
.track-card{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:18px;
  align-items:center;
  border-radius:30px;
  padding:24px;
}
.premium-quick a{
  background:linear-gradient(135deg,#fff,#fff4ea)!important;
  border:1px solid var(--line);
  box-shadow:0 12px 28px rgba(123,33,79,.07);
}
.product-card,.category-card,.coming-card{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.product-card:hover,.category-card:hover,.coming-card:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 65px rgba(123,33,79,.16)!important;
  border-color:rgba(247,185,85,.75)!important;
}
.category-masonry{
  columns:3 260px;
  column-gap:18px;
}
.category-masonry .category-card{
  break-inside:avoid;
  margin:0 0 18px;
  min-height:190px;
}
.category-card:nth-child(2n){min-height:230px}
.category-card:nth-child(3n){min-height:260px}
.enterprise-grid,.coming-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:16px;
  margin-top:18px;
}
.coming-card{
  min-height:118px;
  display:grid;
  place-items:center;
  text-align:center;
  border-radius:28px;
  border:1px solid rgba(240,212,228,.9);
  background:
    linear-gradient(135deg,rgba(255,255,255,.76),rgba(255,239,249,.76)),
    radial-gradient(circle at top right,rgba(247,185,85,.24),transparent 40%);
  font-weight:900;
  color:#7b214f;
  position:relative;
  overflow:hidden;
}
.premium-soon::after{
  content:'COMING SOON';
  position:absolute;
  top:14px;
  right:-34px;
  transform:rotate(35deg);
  background:linear-gradient(135deg,#f7b955,#ff7f6e);
  color:#35162a;
  padding:5px 42px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}
.cause-strip{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:16px 0 20px;
}
.cause-strip span{
  border:1px solid var(--line);
  background:rgba(255,255,255,.72);
  padding:10px 13px;
  border-radius:999px;
  color:#7b214f;
  font-weight:800;
}
.monat-section{
  background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(255,242,248,.9));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.monat-section a:not(.btn){font-weight:900;color:#7b214f}
footer a{color:white;font-weight:900;text-decoration:underline}
@media(max-width:900px){
  .logo-img{width:52px;height:52px}
  .track-card{grid-template-columns:1fr}
}

/* FINAL WEB FIX */
.pill{white-space:normal}
#heroBadge{text-transform:none}
#lgbt .info-card{min-height:160px}

/* POLICY MODAL FINAL TOUCHES */
body.modal-open{overflow:hidden}
.link-button{
  border:0;
  background:transparent;
  color:#7b214f;
  font-weight:900;
  text-decoration:underline;
  cursor:pointer;
  font:inherit;
  padding:0 2px;
}
.policy-check span{line-height:1.45}
.policy-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.policy-modal.open{display:flex}
.policy-backdrop{
  position:absolute;
  inset:0;
  background:rgba(25,10,30,.58);
  backdrop-filter:blur(10px);
}
.policy-dialog{
  position:relative;
  width:min(940px,96vw);
  max-height:88vh;
  overflow:hidden;
  border-radius:30px;
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(240,212,228,.95)!important;
  box-shadow:0 30px 90px rgba(43,25,56,.32)!important;
  animation:policyPop .22s ease-out;
}
@keyframes policyPop{
  from{transform:translateY(16px) scale(.98);opacity:0}
  to{transform:translateY(0) scale(1);opacity:1}
}
.policy-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  padding:24px 26px 14px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(135deg,rgba(255,248,251,.96),rgba(255,246,233,.9));
}
.policy-head h2{margin:4px 0 6px}
.policy-head p{margin:0;color:var(--muted)}
.policy-close{
  width:42px;
  height:42px;
  border:1px solid var(--line);
  border-radius:50%;
  background:white;
  font-size:26px;
  font-weight:700;
  color:#7b214f;
  cursor:pointer;
}
.policy-content{
  max-height:56vh;
  overflow:auto;
  padding:18px 26px;
}
.policy-content article{
  padding:16px 0;
  border-bottom:1px solid rgba(240,212,228,.8);
}
.policy-content article:last-child{border-bottom:0}
.policy-content h3{
  margin:0 0 8px;
  font-family:'Marcellus',serif;
  color:#7b214f;
  font-size:22px;
}
.policy-content p{
  margin:6px 0;
  color:#5f4a5e;
}
.policy-actions{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  padding:18px 26px 24px;
  border-top:1px solid var(--line);
  background:rgba(255,255,255,.78);
}
@media(max-width:700px){
  .policy-dialog{max-height:92vh}
  .policy-head{padding:20px}
  .policy-content{padding:14px 20px;max-height:58vh}
  .policy-actions{padding:16px 20px;display:grid}
}

/* POPUPS DEMO */
.popup-tools{
  padding-top:10px;
}
.popup-tool-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
  margin-top:16px;
}
.info-pop-btn{
  border:1px solid var(--line);
  background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(255,246,235,.86));
  color:#7b214f;
  padding:16px 18px;
  border-radius:20px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(123,33,79,.08);
  transition:.22s ease;
}
.info-pop-btn:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 44px rgba(123,33,79,.16);
  border-color:rgba(247,185,85,.7);
}
.popup-cta-card{
  grid-template-columns:1.3fr auto!important;
}
.premium-modal{
  position:fixed;
  inset:0;
  z-index:9998;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.premium-modal.open{display:flex}
.modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(25,10,30,.58);
  backdrop-filter:blur(10px);
}
.modal-dialog{
  position:relative;
  width:min(900px,96vw);
  max-height:88vh;
  overflow:hidden;
  border-radius:30px;
  background:rgba(255,255,255,.93)!important;
  border:1px solid rgba(240,212,228,.95)!important;
  box-shadow:0 30px 90px rgba(43,25,56,.32)!important;
  animation:modalPop .22s ease-out;
}
.small-modal{width:min(650px,96vw)}
@keyframes modalPop{
  from{transform:translateY(16px) scale(.98);opacity:0}
  to{transform:translateY(0) scale(1);opacity:1}
}
.modal-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:24px 26px 16px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(135deg,rgba(255,248,251,.96),rgba(255,246,233,.9));
}
.modal-head h2{margin:4px 0 6px}
.modal-head p{margin:0;color:var(--muted)}
.modal-body{
  padding:22px 26px 26px;
  max-height:62vh;
  overflow:auto;
}
.modal-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
}
.modal-grid article{
  border:1px solid var(--line);
  background:rgba(255,255,255,.75);
  border-radius:20px;
  padding:16px;
}
.modal-grid h3{
  margin:0 0 8px;
  color:#7b214f;
}
.payment-list{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0 16px;
}
.payment-list span{
  border:1px solid var(--line);
  background:linear-gradient(135deg,#fff,#fff5ee);
  border-radius:999px;
  padding:10px 13px;
  font-weight:900;
  color:#7b214f;
}
.modal-note{color:#5f4a5e}
@media(max-width:700px){
  .popup-cta-card{grid-template-columns:1fr!important}
  .modal-head{padding:20px}
  .modal-body{padding:18px 20px;max-height:64vh}
}

/* POPUPS FIX 01 - client-facing text + premium effects */
.popup-tools{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  margin-top:10px;
}
.popup-tools::before{
  content:'';
  position:absolute;
  inset:18px;
  background:
    radial-gradient(circle at 12% 10%, rgba(255,79,163,.14), transparent 30%),
    radial-gradient(circle at 90% 20%, rgba(247,185,85,.18), transparent 34%);
  filter:blur(10px);
  pointer-events:none;
  z-index:-1;
}
.popup-tool-grid{
  align-items:stretch;
}
.info-pop-btn{
  min-height:70px;
  position:relative;
  overflow:hidden;
}
.info-pop-btn::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,.65), transparent);
  transform:translateX(-120%);
  transition:transform .55s ease;
}
.info-pop-btn:hover::before{
  transform:translateX(120%);
}
.info-pop-btn.brand-pop{
  background:linear-gradient(135deg,rgba(123,33,79,.95),rgba(255,79,163,.72))!important;
  color:white!important;
}
.info-pop-btn.contact-pop{
  background:linear-gradient(135deg,rgba(247,185,85,.95),rgba(255,127,110,.78))!important;
  color:#36142b!important;
}
.contact-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:12px;
  margin:16px 0;
}
.hero,.section,.product-card,.category-card,.glass-card{
  animation:softReveal .38s ease both;
}
@keyframes softReveal{
  from{opacity:.0; transform:translateY(10px)}
  to{opacity:1; transform:translateY(0)}
}
.btn{
  position:relative;
  overflow:hidden;
}
.btn::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.28),transparent);
  transform:translateX(-130%);
  transition:transform .48s ease;
}
.btn:hover::after{
  transform:translateX(130%);
}

/* VISUAL EXPERIENCE UPGRADE */
body{
  background:
    radial-gradient(circle at 10% 5%, rgba(255,79,163,.18), transparent 28%),
    radial-gradient(circle at 90% 8%, rgba(247,185,85,.22), transparent 30%),
    radial-gradient(circle at 50% 38%, rgba(255,255,255,.65), transparent 36%),
    linear-gradient(180deg,#fff6fb,#fff0e4 55%,#fff8fb);
}
.visual-actions{
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:14px!important;
  padding-top:20px!important;
  padding-bottom:20px!important;
}
.action-card{
  min-height:116px;
  display:flex!important;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:6px;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  border-radius:24px!important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease!important;
}
.action-card span{
  font-size:26px;
  line-height:1;
  color:#9b3b73;
  transition:transform .25s ease;
}
.action-card strong{
  font-size:18px;
}
.action-card small{
  color:#8a6a82;
  font-weight:700;
}
.action-card::before{
  content:'';
  position:absolute;
  inset:-1px;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,.68), transparent);
  transform:translateX(-120%);
  transition:transform .65s ease;
  z-index:-1;
}
.action-card::after{
  content:'';
  position:absolute;
  width:90px;
  height:90px;
  border-radius:50%;
  background:rgba(255,79,163,.12);
  right:-30px;
  bottom:-30px;
  filter:blur(8px);
  z-index:-2;
}
.action-card:hover{
  transform:translateY(-7px) scale(1.015);
  box-shadow:0 26px 60px rgba(123,33,79,.16)!important;
  border-color:rgba(247,185,85,.78)!important;
}
.action-card:hover::before{transform:translateX(120%)}
.action-card:hover span{transform:scale(1.16) rotate(-4deg)}
.action-card.catalog{background:linear-gradient(135deg,#fffaf4,#fff2e3)!important}
.action-card.gallery{background:linear-gradient(135deg,#fff5fb,#f5ecff)!important}
.action-card.order{background:linear-gradient(135deg,#fff0f7,#ffe5f2)!important}
.action-card.business{background:linear-gradient(135deg,#fff7ef,#fff1d9)!important}
.action-card.gift{background:linear-gradient(135deg,#fff6f7,#ffe8e8)!important}
.action-card.partner{background:linear-gradient(135deg,#fff8ef,#ffe6d9)!important}
.action-card.supplies{background:linear-gradient(135deg,#fffdf4,#fff0d4)!important}

.steps-premium{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:16px;
  margin-top:18px;
}
.steps-premium article{
  position:relative;
  min-height:180px;
  padding:22px;
  border-radius:28px;
  background:rgba(255,255,255,.72);
  border:1px solid var(--line);
  box-shadow:0 18px 45px rgba(123,33,79,.09);
  overflow:hidden;
  transition:.22s ease;
}
.steps-premium article:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 65px rgba(123,33,79,.15);
}
.steps-premium article span{
  display:inline-grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:16px;
  background:linear-gradient(135deg,var(--rose),var(--purple));
  color:white;
  font-weight:900;
  margin-bottom:16px;
}
.steps-premium article h3{
  margin:0 0 8px;
  font-family:'Marcellus',serif;
  color:#7b214f;
}
.steps-premium article p{margin:0;color:#7b6378}
.featured-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:18px;
  margin-top:18px;
}
.featured-card{
  border-radius:28px;
  overflow:hidden;
  background:rgba(255,255,255,.76);
  border:1px solid var(--line);
  box-shadow:0 18px 44px rgba(123,33,79,.09);
  transition:.22s ease;
}
.featured-card:hover{
  transform:translateY(-7px);
  box-shadow:0 28px 65px rgba(123,33,79,.16);
}
.featured-card h3,.featured-card p{padding:0 18px}
.featured-card h3{margin:16px 0 8px;color:#7b214f;font-family:'Marcellus',serif}
.featured-card p{margin:0 0 18px;color:#7b6378}
.photo-placeholder{
  height:210px;
  display:grid;
  place-items:center;
  background:
    linear-gradient(135deg,rgba(255,240,247,.95),rgba(255,247,232,.95)),
    radial-gradient(circle at 30% 25%,rgba(247,185,85,.28),transparent 35%);
  color:#9b3b73;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.footer-premium{
  margin-top:40px;
  padding:42px 22px;
  background:
    radial-gradient(circle at top left,rgba(255,79,163,.25),transparent 28%),
    linear-gradient(135deg,#2b1938,#7b214f);
  color:white;
}
.footer-grid{
  max-width:1180px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1.4fr 1fr;
  gap:24px;
  text-align:left;
}
.footer-grid h3{
  margin:0 0 10px;
  font-family:'Marcellus',serif;
  font-size:24px;
}
.footer-payments{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.footer-payments span{
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);
  backdrop-filter:blur(10px);
  border-radius:999px;
  padding:8px 11px;
  font-weight:800;
}
.footer-note{font-size:13px;color:rgba(255,255,255,.78)}
.footer-premium a{color:white;font-weight:900;text-decoration:underline}
@media(max-width:900px){
  .footer-grid{grid-template-columns:1fr}
}


/* NSGrowing Production Clean Mobile v1
   Objetivo: una experiencia menos cargada en celulares y con foco en cotizar rápido. */
@media(max-width:700px){
  body{
    background:linear-gradient(180deg,#fff8fb,#fff8ef)!important;
  }
  .topbar{
    padding:10px 14px!important;
    gap:10px!important;
    align-items:center!important;
  }
  .brand{gap:9px!important;min-width:0!important}
  .brand h1{font-size:18px!important;line-height:1!important}
  .brand p{display:none!important}
  .logo-img{width:42px!important;height:42px!important;border-radius:13px!important}
  .menu-toggle{padding:9px 11px!important;border-radius:12px!important}
  nav.open{grid-template-columns:1fr!important}
  nav.open a{padding:12px 14px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:14px!important}

  .hero-premium,
  .hero{
    padding:24px 16px 12px!important;
    display:block!important;
  }
  .pill{
    padding:8px 12px!important;
    font-size:12px!important;
    max-width:100%!important;
  }
  .hero h2{
    font-size:32px!important;
    line-height:1.05!important;
    margin:12px 0 10px!important;
  }
  .hero p{
    font-size:15px!important;
    line-height:1.45!important;
    margin:0 0 12px!important;
  }
  #storyText{
    display:-webkit-box!important;
    -webkit-line-clamp:5!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .hero-card.process-card{
    display:none!important;
  }
  .hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin:16px 0 0!important;
  }
  .hero-actions .btn{
    width:100%!important;
    text-align:center!important;
    padding:14px 16px!important;
  }
  .hero-actions .btn.ghost{
    display:none!important;
  }

  .track-feature,
  .popup-tools{
    display:none!important;
  }
  .quick-actions.visual-actions,
  .quick-actions{
    padding:10px 14px!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .quick-actions.visual-actions .action-card:nth-child(n+5){
    display:none!important;
  }
  .action-card{
    min-height:92px!important;
    padding:14px 10px!important;
    border-radius:18px!important;
  }
  .action-card span{font-size:22px!important;margin-bottom:6px!important}
  .action-card strong{font-size:14px!important}
  .action-card small{font-size:11px!important;line-height:1.25!important}

  .section{
    padding:22px 16px!important;
  }
  .section h2{
    font-size:27px!important;
    line-height:1.08!important;
  }
  .section p{
    font-size:14px!important;
  }
  .section-head{display:block!important}
  .filters,
  .two,
  .split,
  .popup-cta-card,
  .footer-grid{
    grid-template-columns:1fr!important;
  }
  .product-grid,
  .category-grid,
  .card-grid,
  .featured-grid,
  .steps-premium{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .product-img,.photo-placeholder{height:160px!important}
  .product-card,.category-card,.info-card,.card,.glass-card,.faq-item{
    border-radius:20px!important;
  }
  .faq-question{
    font-size:15px!important;
    padding:15px 16px!important;
  }
  input,select,textarea{
    font-size:16px!important;
    padding:13px 14px!important;
  }
  .btn{
    width:100%;
    text-align:center;
  }
  footer,.footer-premium{
    padding:28px 16px!important;
    margin-top:22px!important;
  }
}


/* NSGrowing Mobile Compact v2 - menos largo, rastreo visible y sin tags populares */
.mobile-bottom-actions{display:none}
@media(max-width:700px){
  body{padding-bottom:82px!important;}
  .topbar{position:sticky;top:0;z-index:2000;}
  nav.open{max-height:70vh;overflow:auto;}
  nav.open a[href="categorias.html"], nav.open a[href="colaborar.html"], nav.open a[href="supplies.html"]{display:none!important;}
  .hero-premium,.hero{padding-top:18px!important;padding-bottom:8px!important;}
  .hero h2{font-size:28px!important;}
  #storyText{-webkit-line-clamp:3!important;}
  .hero-actions{grid-template-columns:1fr 1fr!important;}
  .hero-actions .btn.secondary{display:none!important;}
  .hero-actions .btn.ghost{display:block!important;}
  .track-feature{display:block!important;padding:10px 14px!important;}
  .track-card{padding:16px!important;border-radius:22px!important;gap:10px!important;}
  .track-card h2{font-size:24px!important;margin:0 0 4px!important;}
  .track-card p{display:none!important;}
  .track-card .btn{padding:12px 14px!important;}
  .popup-tools{display:none!important;}
  .mobile-priority-actions{grid-template-columns:1fr 1fr!important;padding:8px 14px!important;}
  .mobile-priority-actions .action-card{min-height:76px!important;padding:10px!important;}
  .mobile-priority-actions .action-card:nth-child(n+5){display:none!important;}
  #como-funciona .steps-premium article:nth-child(n+4),
  #destacados,
  #coming,
  #donaciones,
  #lgbt,
  #monetizar,
  #empresas,
  #colaborar,
  #supplies{display:none!important;}
  #catalogo .filters{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;}
  #catalogo #tagFilter{display:none!important;}
  .product-body .tags,.tag-cloud{display:none!important;}
  .product-grid .product-card:nth-child(n+7){display:none!important;}
  .order-section .info-card{display:none!important;}
  .footer-payments span:nth-child(n+5){display:none!important;}
  .mobile-bottom-actions{
    display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:10px;right:10px;bottom:10px;z-index:9997;
    background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border:1px solid rgba(240,212,228,.95);border-radius:22px;
    box-shadow:0 18px 50px rgba(43,25,56,.24);overflow:hidden;
  }
  .mobile-bottom-actions a,.mobile-bottom-actions button{
    border:0;background:transparent;color:#7b214f;font-weight:900;text-decoration:none;font-size:18px;padding:10px 4px;display:grid;place-items:center;gap:2px;
  }
  .mobile-bottom-actions span{font-size:11px;line-height:1;}
  .mobile-menu-grid{display:grid!important;gap:10px!important;}
  .mobile-action-modal .modal-dialog,.small-modal{width:94vw!important;}
  .premium-modal{align-items:flex-end!important;padding:10px!important;}
  .modal-dialog{border-radius:24px!important;max-height:86vh!important;}
  .modal-head{padding:16px!important;}
  .modal-body{padding:14px 16px 18px!important;}
  .coming-grid{grid-template-columns:1fr 1fr!important;gap:10px!important;}
  .coming-card{min-height:86px!important;border-radius:18px!important;font-size:14px!important;}
  .premium-soon::after{font-size:8px!important;top:8px!important;right:-40px!important;}
}


/* NSGrowing V19 - Legal popup compact system */
.compact-legal-section{padding-top:38px!important;padding-bottom:38px!important;}
.legal-popup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;}
.legal-popup-grid .info-pop-btn{text-align:center;text-decoration:none;display:flex;align-items:center;justify-content:center;min-height:74px;}
.policy-content-strong article{border-left:4px solid rgba(123,33,79,.35);padding-left:14px;}
.faq-modal-body{max-height:68vh;overflow:auto;}
.faq-popup-list{display:grid;gap:10px;}
.faq-popup-list .faq-item{background:rgba(255,255,255,.68);border:1px solid rgba(123,33,79,.12);border-radius:18px;overflow:hidden;}
.faq-popup-list .faq-question{width:100%;text-align:left;padding:14px 16px;font-weight:800;background:transparent;border:0;color:#4b1834;}
.faq-popup-list .faq-answer{display:none;padding:0 16px 14px;color:#5f4a5e;}
.faq-popup-list .faq-item.active .faq-answer{display:block;}
@media(max-width:760px){
  .legal-popup-grid{grid-template-columns:1fr;gap:10px;}
  .compact-legal-section{padding-top:24px!important;padding-bottom:24px!important;}
  .policy-content-strong article{padding-left:10px;}
}

/* V27 compact language + popup controls */
.lang-toggle{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.12);color:inherit;border-radius:999px;padding:.55rem .8rem;font-weight:800;cursor:pointer;white-space:nowrap}
@media(max-width:760px){.lang-toggle{font-size:.78rem;padding:.45rem .65rem}.popup-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-grid{grid-template-columns:1fr}.policy-dialog,.modal-dialog{max-height:88vh;overflow:auto}.section{padding-top:2.5rem;padding-bottom:2.5rem}}

/* V31 Product options compact public display */
.product-options{margin:12px 0;display:grid;gap:8px}
.product-option-row{font-size:.9rem;color:var(--muted,#7a6675);line-height:1.4}
.product-option-row strong{color:var(--ink,#2f2131);margin-right:4px}
.mini-chip{display:inline-block;margin:3px 4px 3px 0;padding:4px 9px;border:1px solid rgba(143,57,127,.18);background:rgba(255,241,250,.72);border-radius:999px;font-size:.78rem;color:#79365f}
@media(max-width:720px){
  .product-options{gap:6px;margin:10px 0}
  .product-option-row{font-size:.84rem}
  .mini-chip{font-size:.72rem;padding:3px 7px}
  .product-card .tags{display:none!important}
}

.product-choice-box{margin:12px 0 16px;padding:14px;border:1px solid rgba(143,57,127,.16);border-radius:18px;background:rgba(255,247,252,.65)}
.product-choice-box h3{margin:0 0 6px;font-size:1rem;color:var(--ink,#2f2131)}
.product-choice-box .muted{margin:0 0 10px;font-size:.9rem;color:var(--muted,#7a6675)}
.product-choice-box select{width:100%}
@media(max-width:720px){.product-choice-box{padding:12px;border-radius:14px}.product-choice-box .two{grid-template-columns:1fr}}


/* NSGrowing V45 public color balance */
.quick-actions.visual-actions,.quick-actions.premium-quick{background:linear-gradient(135deg,#fff7f2,#fffdf8)!important;border-radius:28px;padding:20px!important}.quick-actions.visual-actions .action-card,.premium-quick a{background:linear-gradient(135deg,#ffffff,#fffaf2)!important;border:1px solid rgba(218,165,94,.28)!important;box-shadow:0 10px 24px rgba(67,34,64,.06)!important;color:#2b1734!important}.quick-actions.visual-actions .action-card span{opacity:.82;filter:saturate(.8)}.quick-actions.visual-actions .action-card strong{color:#2b1734!important}.quick-actions.visual-actions .action-card small{color:#7b6577!important}.quick-actions.visual-actions .action-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(67,34,64,.11)!important}


/* V46 - Public clean action cards + softer premium colors */
.quick-actions.visual-actions,.quick-actions.premium-quick{
  background:linear-gradient(135deg,#fff8f4,#fffaf7)!important;
  border:1px solid rgba(162,110,80,.12)!important;
  box-shadow:0 10px 28px rgba(63,24,49,.035)!important;
}
.quick-actions.visual-actions .action-card,.premium-quick a,.premium-quick button{
  background:linear-gradient(135deg,#ffffff,#fffaf7)!important;
  border:1px solid rgba(146,102,72,.16)!important;
  color:#2b1734!important;
  box-shadow:0 8px 20px rgba(67,34,64,.045)!important;
}
.action-card.order,.action-card.track,.action-card.catalog,.action-card.business{
  background:linear-gradient(135deg,#ffffff,#fff8f3)!important;
}
.action-card span.card-symbol,.action-card.clean-icon span.card-symbol{
  display:inline-flex!important;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:14px;
  background:linear-gradient(135deg,#7b214f,#f28c65)!important;
  color:#fff!important;font-size:13px!important;font-weight:900!important;
  letter-spacing:.04em;margin-bottom:10px!important;filter:none!important;
}
.action-card.clean-icon:hover span.card-symbol{transform:scale(1.04)!important;}
.mobile-bottom-actions b{display:block;font-size:12px;font-weight:900;letter-spacing:.04em;line-height:1;margin-bottom:3px;color:inherit;}

/* V51 - Corrección visual de accesos rápidos / evita línea larga en contacto */
.ventana-tool-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:12px;
  margin-top:16px;
  align-items:stretch;
}
.ventana-tool-grid .info-pop-btn{
  width:100%;
  min-height:68px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1.15;
  white-space:normal;
}
.ventana-tool-grid .contact-pop{
  background:linear-gradient(135deg,rgba(255,247,235,.94),rgba(255,221,207,.82))!important;
  color:#7b214f!important;
  border-color:rgba(247,185,85,.45)!important;
}

/* V52 - Mobile cleanup + no overflow + functional public order UX */
html,body{max-width:100%;overflow-x:hidden!important;}
*{box-sizing:border-box;}
main,section,.section,.container,.hero,.hero-wrap,.quick-actions,.policy-card,.premium-modal,.mobile-bottom-actions{max-width:100vw;}
img,video,canvas,iframe{max-width:100%;height:auto;}
.btn,.info-pop-btn,.action-card,button,a{touch-action:manipulation;}
.quick-actions.visual-actions,.quick-actions.premium-quick{
  width:min(100% - 24px,980px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow:hidden!important;
}
.action-card span.card-symbol.clean-dot,.action-card.clean-icon span.card-symbol.clean-dot{
  width:22px!important;height:22px!important;border-radius:999px!important;
  background:linear-gradient(135deg,#f8d2e8,#f29c68)!important;
  box-shadow:0 8px 18px rgba(136,44,103,.12)!important;
  margin-bottom:10px!important;
}
.action-card span.card-symbol.clean-dot::after{content:'';display:block;width:7px;height:7px;border-radius:999px;background:#fff;opacity:.92;}
.action-card span.card-symbol.clean-dot{font-size:0!important;color:transparent!important;letter-spacing:0!important;}
.mobile-bottom-actions{
  left:12px!important;right:12px!important;width:auto!important;max-width:calc(100vw - 24px)!important;
  overflow:hidden!important;
  padding:8px!important;
}
.mobile-bottom-actions a,.mobile-bottom-actions button{min-width:0!important;overflow:hidden!important;}
.mobile-bottom-actions b{font-size:11px!important;letter-spacing:.02em!important;}
.mobile-bottom-actions span{font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.policy-card,.policy-check,.order-actions{overflow:hidden!important;}
.policy-check span{word-break:normal!important;overflow-wrap:anywhere!important;}
.policy-check .link-button{display:inline!important;white-space:normal!important;}
.order-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;}
.order-actions .btn{width:100%!important;text-align:center!important;}
#orderResult{overflow-wrap:anywhere!important;word-break:normal!important;}
.product-choice-box .two{grid-template-columns:1fr!important;}
.product-choice-box select, #orderForm select, #orderForm input, #orderForm textarea{max-width:100%!important;min-width:0!important;}
select{background-clip:padding-box;}
@media(max-width:720px){
  body{padding-bottom:86px!important;}
  .topbar{max-width:100vw!important;overflow:hidden!important;}
  .brand h1{font-size:26px!important;white-space:nowrap!important;}
  .brand p{font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:170px!important;}
  .section{width:100%!important;max-width:100%!important;overflow:hidden!important;}
  .quick-actions.visual-actions,.quick-actions{grid-template-columns:1fr 1fr!important;width:calc(100% - 24px)!important;padding:10px!important;}
  .action-card{min-width:0!important;overflow:hidden!important;}
  .action-card strong{font-size:13px!important;line-height:1.22!important;}
  .action-card small{font-size:10.5px!important;}
  #pedido .card,#pedido form,.glass-card{max-width:100%!important;overflow:hidden!important;}
  #pedido label{max-width:100%!important;}
  #pedido input[type="file"]{font-size:13px!important;width:100%!important;}
  #policyModal .modal-dialog,.premium-modal .modal-dialog{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;}
}

/* V53 mobile layout + clean action buttons */
.order-actions,
.card-actions,
.quick-cards,
.policy-actions,
.hero-actions,
.mobile-menu-grid{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}
.order-actions .btn,
.card-actions .btn,
.policy-actions .btn,
.hero-actions .btn{
  min-width:0;
  white-space:normal;
  text-align:center;
}
.product-choice-box .two{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
.product-choice-box label{min-width:0;}
.product-choice-box select{max-width:100%;}
.quick-card b,
.mobile-bottom-actions b{font-size:1rem;letter-spacing:.02em;}
.quick-card .quick-icon{display:none!important;}
.quick-card{overflow:hidden;}
.delivery-help-note{font-size:.9rem;color:#7b6274;margin-top:6px;line-height:1.35;}
.notice.error{background:#fff0f6;border:1px solid #e87eb4;color:#6f1944;}
.notice.ok{background:#effdf3;border:1px solid #75cc90;color:#14542a;}
@media(max-width:760px){
  body{overflow-x:hidden;}
  section,.section,.container{max-width:100%;overflow-x:hidden;}
  .quick-cards{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;}
  .quick-card{padding:14px 10px!important;min-height:86px;}
  .quick-card h3{font-size:1rem!important;line-height:1.15;}
  .quick-card p{font-size:.8rem!important;line-height:1.2;}
  .hero-actions,.policy-actions,.order-actions,.card-actions{display:grid!important;grid-template-columns:1fr;gap:10px;width:100%;}
  .hero-actions .btn,.policy-actions .btn,.order-actions .btn,.card-actions .btn{width:100%;display:block;}
  .product-choice-box .two,.two{grid-template-columns:1fr!important;}
  #orderForm select,#orderForm input,#orderForm textarea{font-size:16px;}
  .mobile-bottom-actions{left:12px;right:12px;width:auto;max-width:none;}
}

/* V54 - mobile buttons, delivery and public form repair */
@media(max-width:760px){
  .policy-actions.v54-safe-buttons,
  .hero-actions.v54-safe-buttons,
  .order-actions.v54-safe-buttons,
  .card-actions.v54-safe-buttons{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    width:100%!important;
    overflow:visible!important;
  }
  .policy-actions.v54-safe-buttons .btn,
  .hero-actions.v54-safe-buttons .btn,
  .order-actions.v54-safe-buttons .btn,
  .card-actions.v54-safe-buttons .btn{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
  }
  .legal-popup-grid,.popup-tool-grid{grid-template-columns:1fr!important;}
  #pedido .two,.product-choice-box .two{grid-template-columns:1fr!important;}
  #pedido select,#pedido input,#pedido textarea{width:100%!important;max-width:100%!important;}
}
.delivery-help-note{display:block;margin-top:8px;font-size:.88rem;line-height:1.35;color:#7b6274;}
.product-choice-box{overflow:visible!important;}

/* NSGrowing V55 - mobile/layout stability */
html,body{max-width:100%;overflow-x:hidden}.nsg-v55 .section,.nsg-v55 .container{max-width:min(1120px,92vw)}
.nsg-v55 .policy-actions,.nsg-v55 .hero-actions,.nsg-v55 .order-actions,.nsg-v55 .card-actions,.nsg-v55 .quick-grid,.nsg-v55 .popup-buttons{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}.nsg-v55 .policy-actions>.btn,.nsg-v55 .hero-actions>.btn,.nsg-v55 .order-actions>.btn,.nsg-v55 .card-actions>.btn,.nsg-v55 .info-pop-btn{position:static!important;transform:none!important;min-width:180px;flex:1 1 190px;white-space:normal;text-align:center}.nsg-v55 .policy-modal,.nsg-v55 .premium-modal{position:fixed!important;inset:0!important;z-index:99999!important;align-items:center;justify-content:center;padding:18px;background:rgba(19,8,28,.58);backdrop-filter:blur(8px)}.nsg-v55 .policy-modal:not(.open),.nsg-v55 .premium-modal:not(.open){display:none!important}.nsg-v55 .policy-dialog,.nsg-v55 .modal-dialog{max-width:min(760px,94vw);max-height:82vh;overflow:auto}.nsg-v55 .faq-answer{display:none}.nsg-v55 .faq-item.active .faq-answer{display:block}.nsg-v55 .delivery-help-note{font-size:.92rem;opacity:.78;margin-top:8px;line-height:1.45}.nsg-v55 .footer-icon-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:12px}.nsg-v55 .footer-icon-grid a{display:block;padding:12px;border:1px solid rgba(255,255,255,.18);border-radius:16px;text-align:center;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;font-weight:800}.nsg-v55 .product-options-grid{align-items:start}
@media (min-width:900px){.nsg-v55 .hero,.nsg-v55 .section{padding-top:42px;padding-bottom:42px}.nsg-v55 h1{font-size:clamp(2.2rem,4vw,4.5rem)}.nsg-v55 h2{font-size:clamp(1.8rem,3vw,3.2rem)}.nsg-v55 .action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.nsg-v55 .action-card{min-height:130px}.nsg-v55 .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){body{padding-bottom:104px}.nsg-v55 .section{padding-left:18px!important;padding-right:18px!important}.nsg-v55 .policy-actions,.nsg-v55 .hero-actions,.nsg-v55 .order-actions,.nsg-v55 .card-actions{display:grid!important;grid-template-columns:1fr!important}.nsg-v55 .policy-actions>.btn,.nsg-v55 .hero-actions>.btn,.nsg-v55 .order-actions>.btn,.nsg-v55 .card-actions>.btn,.nsg-v55 .info-pop-btn{width:100%!important;min-width:0!important}.nsg-v55 .two{grid-template-columns:1fr!important}.nsg-v55 .bottom-nav{left:14px;right:14px;bottom:16px;width:auto}.nsg-v55 .bottom-nav button{min-width:0;font-size:.78rem}.nsg-v55 .bottom-nav b{font-size:.9rem}.nsg-v55 .policy-check{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start}.nsg-v55 .policy-check span{font-size:.96rem;line-height:1.45}.nsg-v55 .policy-check input{width:28px;height:28px}.nsg-v55 .footer-premium{padding-bottom:132px}.nsg-v55 select,.nsg-v55 input,.nsg-v55 textarea{font-size:16px!important}.nsg-v55 .modal-dialog,.nsg-v55 .policy-dialog{max-height:78vh}}

/* V56 depósito, pagos y responsive controlado */
.deposit-preview{margin:16px 0;padding:18px;border-radius:22px;background:rgba(255,255,255,.74);border:1px solid rgba(123,33,79,.14)}
.deposit-preview h3{margin:0 0 8px}.deposit-lines p{margin:6px 0}.deposit-note{font-size:.92rem;color:#715b70;line-height:1.45}
.payment-secure-box{margin-top:18px;padding:18px;border-radius:24px;background:rgba(255,255,255,.86);border:1px solid rgba(123,33,79,.16);box-shadow:0 14px 38px rgba(67,31,72,.08)}
.payment-logo-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0}.payment-logo-row img{max-height:42px;max-width:150px;object-fit:contain;background:#fff;border-radius:12px;padding:6px;border:1px solid rgba(0,0,0,.06)}
.v56-actions{display:flex;gap:10px;flex-wrap:wrap}.v56-actions .btn{flex:1 1 180px;text-align:center;white-space:normal}
.nsg-v56 .order-actions{display:flex;flex-wrap:wrap;gap:12px}.nsg-v56 .order-actions>a,.nsg-v56 .order-actions>button{flex:1 1 190px;min-width:0;text-align:center;white-space:normal}
@media(max-width:760px){
  body{overflow-x:hidden}.section{padding-left:18px;padding-right:18px}.hero{padding-left:18px;padding-right:18px}.split{grid-template-columns:1fr!important}.two{grid-template-columns:1fr!important}.btn,.action,.info-pop-btn{white-space:normal}.order-actions,.v56-actions{display:flex!important;flex-direction:column!important}.order-actions .btn,.v56-actions .btn{width:100%;flex:auto}.payment-logo-row{justify-content:center}.payment-logo-row img{max-width:120px;max-height:38px}.footer-premium{padding-bottom:110px}.mobile-bottom-actions{left:12px!important;right:12px!important;width:auto!important}.mobile-bottom-actions a,.mobile-bottom-actions button{min-width:0!important;overflow:hidden}.mobile-bottom-actions span{font-size:12px}
}
@media(min-width:900px){.hero,.section{max-width:1120px;margin-left:auto;margin-right:auto}.hero h2{font-size:clamp(2.1rem,4vw,3.2rem)}.section h2{font-size:clamp(1.8rem,3vw,2.7rem)}}

/* V57 public polish */
.compact-legal-section .legal-ventana-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-items:stretch}
.compact-legal-section .contact-pop{display:none!important}
.footer-icon-grid a{display:flex;align-items:center;gap:10px;text-decoration:none}
.clean-symbol{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;background:rgba(255,255,255,.09);font-weight:900;letter-spacing:.02em}
.payment-secure-box .deposit-note{line-height:1.45}
.payment-logo-row img{max-height:48px;object-fit:contain}
@media(max-width:720px){
  .payment-secure-box{padding:22px 18px!important}
  .payment-secure-box .order-actions,.order-actions.v56-actions{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  .legal-ventana-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  .info-pop-btn{width:100%;min-height:64px;margin:0!important}
  .footer-icon-grid{grid-template-columns:1fr 1fr!important;gap:12px!important}
}
@media(min-width:900px){
  main,.section,.hero-inner{max-width:1120px!important}
  .section{padding-top:52px!important;padding-bottom:52px!important}
  .hero{min-height:auto!important;padding-top:48px!important;padding-bottom:48px!important}
}
