/* ═══════════════════════════════════════════
   BY CAMILA QUINTERO — index.css
   Estilos completos de la tienda
═══════════════════════════════════════════ */

:root{
  --rose:#D4527A;--rose-dk:#A83D5F;--rose-lt:#F7D6E4;--rose-xl:#FDF3F7;
  --gold:#C9A96E;--plum:#4A1E30;--plum-md:#7A3550;--gray:#9B8490;--gray-lt:#F0E8EC;
  --white:#fff;--off:#FEF9FB;
  --sh:0 4px 24px rgba(212,82,122,.12);--sh-lg:0 12px 48px rgba(212,82,122,.2);
  --r:12px;--r-sm:8px;
  --serif:'Cormorant Garamond',Georgia,serif;--sans:'Montserrat',sans-serif;
  --tr:all .3s cubic-bezier(.4,0,.2,1);
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:var(--sans);background:var(--off);color:var(--plum);overflow-x:hidden;}
::-webkit-scrollbar{width:5px;}
::-webkit-scrollbar-track{background:var(--rose-xl);}
::-webkit-scrollbar-thumb{background:var(--rose-lt);border-radius:3px;}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 26px;border-radius:50px;font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;transition:var(--tr);}
.btn-p{background:var(--rose);color:#fff;}
.btn-p:hover{background:var(--rose-dk);transform:translateY(-2px);box-shadow:var(--sh);}
.btn-o{background:transparent;color:var(--rose);border:1.5px solid var(--rose);}
.btn-o:hover{background:var(--rose);color:#fff;transform:translateY(-2px);}
.btn-d{background:#e74c3c;color:#fff;border:none;}
.btn-d:hover{background:#c0392b;}
.btn-sm{padding:7px 16px;font-size:11px;}
.icon-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--rose-lt);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--tr);}
.icon-btn:hover{background:var(--rose);border-color:var(--rose);}
.icon-btn:hover svg{stroke:#fff;}
.icon-btn svg{stroke:var(--rose);fill:none;width:16px;height:16px;}

/* ── Nav ── */
#nav{position:fixed;top:0;left:0;right:0;z-index:200;height:68px;background:rgba(253,243,247,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--rose-lt);display:flex;align-items:center;justify-content:space-between;padding:0 40px;}
.nav-logo{cursor:pointer;display:flex;align-items:center;}
.nav-logo-img{height:62px;width:auto;object-fit:contain;display:block;}
.nav-right{display:flex;align-items:center;gap:8px;}
.lang-tog{display:flex;background:var(--rose-xl);border-radius:50px;border:1.5px solid var(--rose-lt);overflow:hidden;}
.lang-btn{padding:5px 12px;font-size:11px;font-weight:600;cursor:pointer;border:none;background:transparent;color:var(--gray);transition:var(--tr);font-family:var(--sans);}
.lang-btn.on{background:var(--rose);color:#fff;border-radius:50px;}
.cart-wrap{position:relative;cursor:pointer;}
.cart-dot{position:absolute;top:-5px;right:-5px;background:var(--rose);color:#fff;border-radius:50%;width:17px;height:17px;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:700;}

/* ── Hero ── */
#hero{min-height:100vh;padding-top:68px;background:linear-gradient(135deg,var(--rose-xl) 0%,#fff 55%,var(--rose-xl) 100%);display:flex;align-items:center;position:relative;overflow:hidden;}
.hero-blob{position:absolute;border-radius:50%;background:var(--rose-lt);opacity:.3;}
.hero-blob.b1{width:550px;height:550px;top:-180px;right:-180px;}
.hero-blob.b2{width:280px;height:280px;bottom:-100px;left:-80px;}
.hero-inner{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.hero-ey{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;display:flex;align-items:center;gap:10px;}
.hero-ey::before,.hero-ey::after{content:'';height:1px;background:var(--gold);width:36px;}
.hero-h1{font-family:var(--serif);font-size:62px;line-height:1.05;color:var(--plum);margin-bottom:20px;}
.hero-h1 em{color:var(--rose);font-style:italic;}
.hero-sub{font-size:14px;line-height:1.8;color:var(--gray);margin-bottom:36px;max-width:400px;}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.hero-right{display:flex;flex-direction:column;gap:18px;}
.hero-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.hero-card{background:#fff;border-radius:var(--r);padding:18px;box-shadow:var(--sh);border:1px solid var(--rose-lt);transition:var(--tr);}
.hero-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);}
.hero-card-ico{width:44px;height:44px;border-radius:10px;background:var(--rose-xl);display:flex;align-items:center;justify-content:center;margin-bottom:10px;font-size:20px;}
.hero-card h4{font-family:var(--serif);font-size:16px;color:var(--plum);margin-bottom:3px;}
.hero-card p{font-size:11px;color:var(--gray);}
.hero-stats{display:flex;background:#fff;border-radius:var(--r);padding:14px 20px;box-shadow:var(--sh);border:1px solid var(--rose-lt);}
.h-stat{flex:1;text-align:center;padding:0 12px;}
.h-stat+.h-stat{border-left:1px solid var(--rose-lt);}
.h-stat strong{display:block;font-family:var(--serif);font-size:24px;color:var(--rose);}
.h-stat span{font-size:10px;letter-spacing:.06em;color:var(--gray);text-transform:uppercase;}

/* ── Products Section ── */
#products{padding:90px 40px;max-width:1180px;margin:0 auto;}
.sec-hd{text-align:center;margin-bottom:52px;}
.sec-ey{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.sec-h2{font-family:var(--serif);font-size:44px;color:var(--plum);}
.sec-h2 em{color:var(--rose);font-style:italic;}
.sec-p{font-size:13px;color:var(--gray);margin-top:10px;}
.filters{display:flex;align-items:center;gap:10px;margin-bottom:36px;flex-wrap:wrap;justify-content:center;}
.srch{position:relative;}
.srch input{padding:9px 38px 9px 14px;border-radius:50px;border:1.5px solid var(--rose-lt);font-family:var(--sans);font-size:12px;color:var(--plum);background:#fff;width:240px;outline:none;transition:var(--tr);}
.srch input:focus{border-color:var(--rose);box-shadow:0 0 0 3px rgba(212,82,122,.1);}
.srch svg{position:absolute;right:12px;top:50%;transform:translateY(-50%);stroke:var(--gray);width:15px;height:15px;fill:none;}

/* ── Product Cards ── */
.prod-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:var(--sh);border:1px solid var(--rose-lt);transition:var(--tr);display:flex;flex-direction:column;}
.prod-card:hover{transform:translateY(-5px);box-shadow:var(--sh-lg);}
.prod-img{width:100%;height:200px;background:var(--rose-xl);display:flex;align-items:center;justify-content:center;font-size:68px;position:relative;overflow:hidden;}
.prod-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.4,0,.2,1);}
.prod-card:hover .prod-img img{transform:scale(1.05);}
.prod-badge{position:absolute;top:10px;left:10px;padding:3px 10px;border-radius:50px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;}
.badge-new{background:var(--rose);color:#fff;}
.badge-out{background:#e74c3c;color:#fff;}
.badge-few{background:var(--gold);color:#fff;}
.prod-body{padding:18px;flex:1;}
.prod-cat{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:5px;}
.prod-name{font-family:var(--serif);font-size:19px;color:var(--plum);margin-bottom:6px;line-height:1.2;}
.prod-desc{font-size:11px;color:var(--gray);line-height:1.6;margin-bottom:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.prod-foot{display:flex;align-items:center;justify-content:space-between;}
.prod-price{font-family:var(--serif);font-size:21px;color:var(--rose);font-weight:600;}
.prod-stock{font-size:10px;color:var(--gray);}
.prod-stock.low{color:#e67e22;}
.prod-stock.out{color:#e74c3c;}
.empty{text-align:center;padding:70px 20px;grid-column:1/-1;}
.empty .ico{font-size:56px;margin-bottom:16px;}
.empty h3{font-family:var(--serif);font-size:26px;color:var(--plum);margin-bottom:6px;}
.empty p{font-size:13px;color:var(--gray);}
.skel{background:linear-gradient(90deg,var(--rose-xl) 25%,#fff 50%,var(--rose-xl) 75%);background-size:200%;animation:skel 1.4s infinite;border-radius:14px;height:320px;}
@keyframes skel{0%{background-position:200%}100%{background-position:-200%}}

/* ── Categoría Band (card especial) ── */
.cat-header-band{padding:9px 14px;background:linear-gradient(90deg,var(--rose),var(--rose-dk));display:flex;align-items:center;gap:8px;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;}
.cat-header-band .ch-emoji{font-size:16px;line-height:1;}
.cat-see-all{display:block;width:100%;padding:10px;background:var(--rose-xl);border:none;border-top:1px solid var(--rose-lt);font-family:var(--sans);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--rose);cursor:pointer;transition:var(--tr);text-align:center;text-decoration:none;}
.cat-see-all:hover{background:var(--rose);color:#fff;}

/* ── Image Dots (multi-foto en cards) ── */
.img-dots-wrap{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);display:flex;gap:5px;}
.img-dot-btn{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:var(--tr);border:none;padding:0;}
.img-dot-btn.on{background:#fff;width:20px;border-radius:50px;}

/* ── Payment ── */
#payment{background:#fff;padding:56px 40px;border-top:1px solid var(--rose-lt);}
.pay-inner{max-width:900px;margin:0 auto;text-align:center;}
.pay-t{font-family:var(--serif);font-size:26px;color:var(--plum);margin-bottom:6px;}
.pay-s{font-size:12px;color:var(--gray);margin-bottom:30px;}
.pay-logos{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;}
.pay-logo{display:flex;align-items:center;justify-content:center;background:#fff;border:1.5px solid #e2e2e2;border-radius:9px;padding:9px 16px;min-width:82px;height:50px;transition:var(--tr);box-shadow:0 2px 6px rgba(0,0,0,.05);}
.pay-logo:hover{border-color:var(--rose-lt);box-shadow:var(--sh);transform:translateY(-2px);}
.pay-txt{font-size:12px;font-weight:700;}
.p-amazon .pay-txt{color:#FF9900;font-size:20px;font-weight:900;font-family:Georgia,serif;}
.p-amex{background:#016FD0;border-color:#016FD0;}
.p-amex .pay-txt{color:#fff;font-size:9px;font-weight:800;letter-spacing:.06em;line-height:1.3;text-align:center;}
.p-apple .pay-txt{color:#000;font-size:13px;font-weight:400;}
.p-diners{background:#004A97;border-color:#004A97;}
.p-discover .pay-txt{color:#231F20;font-size:10px;font-weight:800;letter-spacing:.04em;}
.disc-dot{display:inline-block;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#F76F20,#F0B24F);vertical-align:middle;margin-left:3px;}
.p-gpay .gp-t{font-size:13px;font-weight:500;color:#5F6368;}
.p-gpay .gp-g{background:linear-gradient(135deg,#4285F4,#EA4335 40%,#FBBC04 70%,#34A853);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:700;}
.mc-wrap{display:flex;}
.mc-r{width:26px;height:26px;border-radius:50%;background:#EB001B;}
.mc-o{width:26px;height:26px;border-radius:50%;background:#F79E1B;margin-left:-10px;opacity:.9;}
.p-pp .pp-t{color:#003087;font-size:14px;font-weight:800;font-family:Georgia,serif;}
.p-pp .pp-t span{color:#009CDE;}
.p-shop{background:#5A31F4;border-color:#5A31F4;}
.p-shop .pay-txt{color:#fff;font-size:13px;font-weight:600;}
.p-visa .pay-txt{color:#1A1F71;font-size:18px;font-weight:800;font-style:italic;}

/* ── Contact ── */
#contact{background:linear-gradient(135deg,var(--rose-xl),#fff);padding:56px 40px;border-top:1px solid var(--rose-lt);}
.con-inner{max-width:760px;margin:0 auto;text-align:center;}
.con-inner h2{font-family:var(--serif);font-size:36px;color:var(--plum);margin-bottom:6px;}
.con-inner h2 em{color:var(--rose);font-style:italic;}
.con-sub{font-size:13px;color:var(--gray);margin-bottom:36px;}
.con-cards{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;}
.con-card{background:#fff;border-radius:var(--r);padding:28px 36px;border:1px solid var(--rose-lt);box-shadow:var(--sh);text-align:center;transition:var(--tr);text-decoration:none;min-width:200px;}
.con-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);}
.con-ico{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:24px;}
.ico-wa{background:#E7F9EE;}
.ico-mail{background:var(--rose-xl);}
.con-card h4{font-family:var(--serif);font-size:19px;color:var(--plum);margin-bottom:5px;}
.con-card p{font-size:12px;color:var(--gray);line-height:1.6;}
.con-lnk{display:inline-block;margin-top:12px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--rose);}

/* ── Cart ── */
#cart{position:fixed;right:0;top:0;bottom:0;width:370px;background:#fff;z-index:250;box-shadow:-6px 0 36px rgba(212,82,122,.14);transform:translateX(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;}
#cart.open{transform:translateX(0);}
.cart-hd{padding:22px;border-bottom:1px solid var(--rose-lt);display:flex;align-items:center;justify-content:space-between;}
.cart-hd h3{font-family:var(--serif);font-size:22px;color:var(--plum);}
.cart-list{flex:1;overflow-y:auto;padding:18px;}
.cart-item{display:flex;gap:10px;padding:14px 0;border-bottom:1px solid var(--rose-lt);}
.cart-ico{width:48px;height:48px;border-radius:9px;background:var(--rose-xl);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;}
.cart-info{flex:1;}
.cart-name{font-size:12px;font-weight:500;color:var(--plum);margin-bottom:3px;}
.cart-price{font-family:var(--serif);font-size:15px;color:var(--rose);}
.cart-qty{display:flex;align-items:center;gap:7px;margin-top:5px;}
.qty-btn{width:22px;height:22px;border-radius:50%;border:1px solid var(--rose-lt);background:#fff;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:var(--tr);}
.qty-btn:hover{background:var(--rose);color:#fff;border-color:var(--rose);}
.qty-n{font-size:12px;font-weight:500;color:var(--plum);min-width:18px;text-align:center;}
.cart-ft{padding:18px 22px;border-top:1px solid var(--rose-lt);}
.cart-tot{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;}
.cart-tot span{font-size:12px;color:var(--gray);text-transform:uppercase;letter-spacing:.05em;}
.cart-tot strong{font-family:var(--serif);font-size:24px;color:var(--plum);}
.overlay{position:fixed;inset:0;background:rgba(74,30,48,.4);z-index:200;opacity:0;pointer-events:none;transition:opacity .3s;}
.overlay.on{opacity:1;pointer-events:all;}

/* ── WA Float ── */
#wa-btn{position:fixed;bottom:26px;right:26px;z-index:300;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(37,211,102,.4);cursor:pointer;transition:transform .3s,opacity .3s;animation:wapulse 2.5s infinite;}
#wa-btn:hover{transform:scale(1.1);}
#wa-btn svg{width:26px;height:26px;fill:#fff;}
.wa-tip{position:absolute;right:64px;background:var(--plum);color:#fff;font-size:11px;white-space:nowrap;padding:5px 12px;border-radius:50px;opacity:0;transition:opacity .2s;pointer-events:none;}
#wa-btn:hover .wa-tip{opacity:1;}
@keyframes wapulse{0%,100%{box-shadow:0 4px 18px rgba(37,211,102,.4);}50%{box-shadow:0 4px 28px rgba(37,211,102,.65);}}

/* ── Notif ── */
.notif{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(80px);z-index:999;background:var(--plum);color:#fff;padding:12px 26px;border-radius:50px;font-size:12px;opacity:0;transition:all .4s;pointer-events:none;white-space:nowrap;}
.notif.show{transform:translateX(-50%) translateY(0);opacity:1;}
.notif.ok{background:#1a8547;}
.notif.err{background:#c0392b;}

/* ── Admin ── */
#admin{display:none;min-height:100vh;background:#F9F1F5;}
#admin.on{display:flex;}
.a-side{width:252px;min-height:100vh;background:var(--plum);display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto;}
.a-brand{padding:28px 22px;border-bottom:1px solid rgba(255,255,255,.07);}
.a-brand .nm{font-family:var(--serif);font-size:20px;color:var(--rose-lt);}
.a-brand .nm span{color:var(--gold);font-style:italic;}
.a-brand .tg{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-top:3px;}
.a-user{padding:18px 22px;display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(255,255,255,.07);}
.a-av{width:38px;height:38px;border-radius:50%;background:var(--rose);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:17px;color:#fff;flex-shrink:0;}
.a-un{font-size:12px;color:#fff;font-weight:500;}
.a-ur{font-size:10px;color:rgba(255,255,255,.35);}
.a-nav{flex:1;padding:16px 0;}
.a-nav ul{list-style:none;}
.a-sec{font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.22);padding:14px 22px 6px;margin-top:6px;}
.a-item{display:flex;align-items:center;gap:10px;padding:11px 22px;cursor:pointer;transition:var(--tr);color:rgba(255,255,255,.55);font-size:12px;}
.a-item svg{width:16px;height:16px;fill:none;stroke:currentColor;flex-shrink:0;}
.a-item:hover{background:rgba(255,255,255,.05);color:rgba(255,255,255,.9);}
.a-item.on{background:rgba(212,82,122,.22);color:var(--rose-lt);border-right:3px solid var(--rose);}
.a-main{flex:1;display:flex;flex-direction:column;overflow-x:hidden;}
.a-top{background:#fff;border-bottom:1px solid var(--rose-lt);padding:0 28px;height:64px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.a-title{font-family:var(--serif);font-size:22px;color:var(--plum);}
.a-top-r{display:flex;align-items:center;gap:10px;}
.a-body{flex:1;padding:28px;overflow-y:auto;}
.a-tab{display:none;}
.a-tab.on{display:block;}
.stats-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px;margin-bottom:28px;}
.stat-c{background:#fff;border-radius:var(--r);padding:22px;border:1px solid var(--rose-lt);box-shadow:var(--sh);}
.stat-ico{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:20px;}
.ico-pk{background:var(--rose-xl);}
.ico-gd{background:rgba(201,169,110,.12);}
.ico-bl{background:rgba(52,152,219,.1);}
.ico-gn{background:rgba(39,174,96,.1);}
.stat-v{font-family:var(--serif);font-size:30px;color:var(--plum);line-height:1;}
.stat-l{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray);margin-top:5px;}
.tbl-wrap{background:#fff;border-radius:var(--r);border:1px solid var(--rose-lt);box-shadow:var(--sh);overflow:hidden;}
.tbl-hd{padding:18px 22px;border-bottom:1px solid var(--rose-lt);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.tbl-hd h3{font-family:var(--serif);font-size:20px;color:var(--plum);}
.tbl-hd-sub{font-size:12px;color:var(--gray);margin-top:3px;}
table{width:100%;border-collapse:collapse;}
th{padding:10px 18px;text-align:left;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--gray);background:var(--rose-xl);border-bottom:1px solid var(--rose-lt);}
td{padding:12px 18px;font-size:12px;color:var(--plum);border-bottom:1px solid var(--gray-lt);}
tr:last-child td{border-bottom:none;}
tr:hover td{background:var(--rose-xl);}
.td-acts{display:flex;gap:7px;}
.bdg{display:inline-flex;align-items:center;padding:3px 9px;border-radius:50px;font-size:9px;letter-spacing:.05em;text-transform:uppercase;font-weight:700;}
.bdg-ok{background:rgba(39,174,96,.12);color:#1a8547;}
.bdg-low{background:rgba(230,126,34,.12);color:#c06a00;}
.bdg-out{background:rgba(231,76,60,.12);color:#c0392b;}
.bdg-pend{background:rgba(52,152,219,.12);color:#1a5276;}
.bdg-ship{background:rgba(155,89,182,.12);color:#6c3483;}
.tbl-msg{text-align:center;padding:28px;color:var(--gray);font-size:13px;}
.tbl-err{color:#c0392b;}

/* ── Modals ── */
.mo{position:fixed;inset:0;background:rgba(74,30,48,.5);z-index:500;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s;}
.mo.on{opacity:1;pointer-events:all;}
.mo-box{background:#fff;border-radius:18px;padding:36px;width:100%;max-width:540px;max-height:88vh;overflow-y:auto;transform:scale(.95);transition:transform .3s;position:relative;}
.mo.on .mo-box{transform:scale(1);}
.mo-close{position:absolute;top:18px;right:18px;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--rose-lt);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--gray);transition:var(--tr);}
.mo-close:hover{background:var(--rose);color:#fff;border-color:var(--rose);}
.mo-box h3{font-family:var(--serif);font-size:26px;color:var(--plum);margin-bottom:22px;}
.mo-acts{display:flex;gap:10px;margin-top:24px;justify-content:flex-end;}
.fg{margin-bottom:18px;}
.fg label{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--plum-md);margin-bottom:7px;font-weight:500;}
.fg input,.fg select,.fg textarea{width:100%;padding:12px 16px;border-radius:var(--r-sm);border:1.5px solid var(--rose-lt);background:var(--rose-xl);font-family:var(--sans);font-size:13px;color:var(--plum);outline:none;transition:var(--tr);}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--rose);background:#fff;box-shadow:0 0 0 3px rgba(212,82,122,.1);}
.fg textarea{resize:vertical;min-height:76px;}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}

/* ── Login Modal ── */
#login-mo{position:fixed;inset:0;background:rgba(74,30,48,.55);z-index:600;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s;}
#login-mo.on{opacity:1;pointer-events:all;}
.login-box{background:#fff;border-radius:22px;padding:48px 44px;width:100%;max-width:420px;text-align:center;box-shadow:0 20px 60px rgba(74,30,48,.25);transform:scale(.95);transition:transform .3s;position:relative;}
#login-mo.on .login-box{transform:scale(1);}
.menu-footer-logo{display:flex;align-items:center;}
.menu-footer-logo-img{height:30px;width:auto;object-fit:contain;filter:brightness(0) invert(1);opacity:.6;}
.login-logo{margin-bottom:3px;display:flex;justify-content:center;}
.login-logo-img{height:52px;width:auto;object-fit:contain;}
.login-sub{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--gray);margin-bottom:32px;}
.login-div{font-size:11px;color:var(--gray);margin-bottom:22px;display:flex;align-items:center;gap:10px;}
.login-div::before,.login-div::after{content:'';flex:1;height:1px;background:var(--rose-lt);}
#login-err{background:#fee;border:1px solid #fcc;border-radius:7px;padding:10px 14px;font-size:12px;color:#c0392b;margin-bottom:18px;display:none;}
.login-cancel{font-size:11px;color:var(--gray);margin-top:18px;}
.login-cancel a{color:var(--rose);text-decoration:none;font-weight:500;cursor:pointer;}

/* ── Image Upload ── */
.img-drop{border:2px dashed var(--rose-lt);border-radius:9px;padding:12px;text-align:center;cursor:pointer;transition:var(--tr);background:var(--rose-xl);min-height:110px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;position:relative;}
.img-drop:hover{border-color:var(--rose);background:var(--rose-lt);}
.img-drop img{max-height:90px;max-width:100%;border-radius:7px;object-fit:cover;}
.img-del-btn{position:absolute;top:5px;right:5px;width:20px;height:20px;border-radius:50%;border:none;background:#e74c3c;color:#fff;font-size:11px;cursor:pointer;line-height:1;display:none;}

/* ── Admin Inputs ── */
.env-price{width:82px;padding:5px 8px;border-radius:6px;border:1.5px solid var(--rose-lt);font-size:12px;font-family:var(--sans);color:var(--plum);background:#fff;outline:none;}
.env-price:focus{border-color:var(--rose);}
.env-days{padding:5px 8px;border-radius:6px;border:1.5px solid var(--rose-lt);font-size:11px;font-family:var(--sans);color:var(--plum);background:#fff;}
.env-cb{width:17px;height:17px;accent-color:var(--rose);cursor:pointer;}
.status-sel{padding:5px 8px;border-radius:6px;border:1.5px solid var(--rose-lt);font-size:11px;font-family:var(--sans);color:var(--plum);background:#fff;}

/* ── Loader ── */
.loader-ov{position:fixed;inset:0;background:rgba(253,243,247,.75);z-index:900;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(3px);}
.loader-spin{width:44px;height:44px;border:4px solid var(--rose-lt);border-top-color:var(--rose);border-radius:50%;animation:spin .8s linear infinite;}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── Footer ── */
#footer{background:var(--plum);color:#fff;padding:54px 40px 22px;}
.ft-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:44px;margin-bottom:44px;}
.ft-logo{margin-bottom:6px;}
.ft-logo-img{height:48px;width:auto;object-fit:contain;filter:brightness(0) invert(1);}
.ft-desc{font-size:12px;color:rgba(255,255,255,.4);line-height:1.7;margin-top:8px;max-width:240px;}
.ft-ci{display:flex;align-items:center;gap:9px;margin-bottom:12px;font-size:12px;color:rgba(255,255,255,.5);}
.ft-ci a{color:rgba(255,255,255,.5);text-decoration:none;}
.ft-ci a:hover{color:var(--rose-lt);}
.ft-ci-ico{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;}
.ci-wa{background:rgba(37,211,102,.2);}
.ci-mail{background:rgba(212,82,122,.2);}
.ft-col h5{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:14px;}
.ft-col ul{list-style:none;}
.ft-col li{margin-bottom:9px;}
.ft-col a{font-size:12px;color:rgba(255,255,255,.5);text-decoration:none;cursor:pointer;transition:color .2s;}
.ft-col a:hover{color:var(--rose-lt);}
.ft-bot{max-width:1080px;margin:0 auto;padding-top:22px;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.ft-bot p{font-size:10px;color:rgba(255,255,255,.25);}
.ft-pay{display:flex;gap:5px;}
.ft-pm{background:rgba(255,255,255,.07);border-radius:4px;padding:2px 7px;font-size:9px;color:rgba(255,255,255,.35);font-weight:600;}

/* ── Hamburger ── */
.ham-btn{width:40px;height:40px;border-radius:10px;border:1.5px solid var(--rose-lt);background:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px;transition:var(--tr);flex-shrink:0;}
.ham-btn:hover{background:var(--rose);border-color:var(--rose);}
.ham-btn span{display:block;width:18px;height:2px;background:var(--rose);border-radius:2px;transition:var(--tr);}
.ham-btn:hover span{background:#fff;}
.ham-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.ham-btn.open span:nth-child(2){opacity:0;transform:scaleX(0);}
.ham-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ── Menu Overlay ── */
#menu-overlay{position:fixed;inset:0;background:rgba(74,30,48,.5);z-index:299;opacity:0;pointer-events:none;transition:opacity .35s;backdrop-filter:blur(3px);}
#menu-overlay.on{opacity:1;pointer-events:all;}

/* ── Menu Drawer ── */
#menu-drawer{position:fixed;left:0;top:0;bottom:0;width:320px;background:var(--plum);z-index:300;transform:translateX(-100%);transition:transform .38s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow:hidden;}
#menu-drawer.open{transform:translateX(0);}
.menu-header{display:flex;align-items:center;justify-content:space-between;padding:24px 22px 20px;border-bottom:1px solid rgba(255,255,255,.08);}
.menu-logo{display:flex;align-items:center;}
.menu-logo-img{height:36px;width:auto;object-fit:contain;filter:brightness(0) invert(1);}
.menu-close{width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(255,255,255,.15);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);transition:var(--tr);}
.menu-close:hover{background:rgba(255,255,255,.1);color:#fff;}
.menu-close svg{width:16px;height:16px;}
.menu-section-lbl{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.28);padding:18px 22px 6px;}
.menu-item{display:flex;align-items:center;gap:14px;padding:13px 22px;text-decoration:none;cursor:pointer;transition:background .2s;border-left:3px solid transparent;}
.menu-item:hover{background:rgba(255,255,255,.06);border-left-color:var(--rose);}
.menu-item-ico{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;}
.menu-item-text{flex:1;}
.menu-item-title{display:block;font-size:13px;color:#fff;font-weight:500;}
.menu-item-sub{display:block;font-size:11px;color:rgba(255,255,255,.38);margin-top:2px;}
.menu-arr{width:16px;height:16px;color:rgba(255,255,255,.3);flex-shrink:0;}
.menu-footer{margin-top:auto;padding:22px;border-top:1px solid rgba(255,255,255,.07);}
.menu-footer-logo{font-family:var(--serif);font-size:18px;color:rgba(255,255,255,.4);}
.menu-footer-logo span{color:var(--gold);font-style:italic;}

/* ── Section Panel ── */
#section-panel{position:fixed;left:0;top:0;bottom:0;width:320px;background:#fff;z-index:301;transform:translateX(-100%);transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;}
#section-panel.open{transform:translateX(0);}
.panel-header{display:flex;align-items:center;gap:12px;padding:20px 18px;border-bottom:1px solid var(--rose-lt);background:#fff;flex-shrink:0;}
.panel-back{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--rose);font-weight:600;cursor:pointer;border:none;background:transparent;font-family:var(--sans);letter-spacing:.03em;}
.panel-back svg{width:18px;height:18px;}
.panel-title{font-family:var(--serif);font-size:20px;color:var(--plum);flex:1;}
.panel-body{flex:1;overflow-y:auto;padding:12px 0;}
.panel-item{display:flex;align-items:center;gap:12px;padding:14px 20px;cursor:pointer;transition:background .15s;text-decoration:none;border-bottom:1px solid var(--gray-lt);}
.panel-item:hover{background:var(--rose-xl);}
.panel-item:last-child{border-bottom:none;}
.panel-item-ico{width:42px;height:42px;border-radius:10px;background:var(--rose-xl);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}
.panel-item-main{flex:1;}
.panel-item-name{font-size:13px;color:var(--plum);font-weight:500;}
.panel-item-sub{font-size:11px;color:var(--gray);margin-top:2px;}
.panel-item-arr{color:var(--rose-lt);}
.panel-item-arr svg{width:15px;height:15px;}
.panel-loading{padding:40px;text-align:center;color:var(--gray);font-size:13px;}
.panel-empty{padding:40px 20px;text-align:center;}
.panel-empty .pi{font-size:44px;margin-bottom:10px;}
.panel-empty p{font-size:13px;color:var(--gray);}
.catalog-letter{padding:8px 20px;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--rose);font-weight:700;background:var(--rose-xl);border-bottom:1px solid var(--rose-lt);}

/* ── Carousel ── */
.car-wrap{position:relative;display:flex;align-items:center;margin:0 -8px;}
.car-arrow{position:absolute;z-index:10;width:46px;height:46px;border-radius:50%;background:#fff;border:1.5px solid var(--rose-lt);box-shadow:0 4px 16px rgba(212,82,122,.18);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--tr);color:var(--rose);flex-shrink:0;}
.car-arrow:hover{background:var(--rose);border-color:var(--rose);color:#fff;transform:scale(1.08);}
.car-arrow:disabled{opacity:.3;cursor:default;pointer-events:none;}
.car-arrow svg{width:20px;height:20px;}
.car-prev{left:-22px;}
.car-next{right:-22px;}
.car-viewport{overflow:hidden;flex:1;border-radius:16px;}
.car-track{display:flex;gap:22px;transition:transform .48s cubic-bezier(.4,0,.2,1);will-change:transform;padding:12px 4px 20px;}
.car-slide{flex:0 0 calc((100% - 66px) / 4);min-width:0;}
.car-dots{display:flex;justify-content:center;gap:7px;margin-top:4px;}
.car-dot{width:8px;height:8px;border-radius:50%;background:var(--rose-lt);cursor:pointer;transition:var(--tr);border:none;padding:0;}
.car-dot.on{background:var(--rose);width:22px;border-radius:50px;}
.car-dot:hover{background:var(--rose-dk);}
.car-counter{text-align:center;margin-top:10px;font-size:12px;color:var(--gray);letter-spacing:.04em;}

/* ── Reviews ── */
#reviews{padding:90px 40px;background:linear-gradient(180deg,var(--rose-xl) 0%,#fff 60%);}
.rev-inner{max-width:1180px;margin:0 auto;}
.rev-header{text-align:center;margin-bottom:48px;}
.rev-summary{display:flex;align-items:center;justify-content:center;gap:48px;margin-top:32px;background:#fff;border-radius:var(--r);padding:28px 40px;box-shadow:var(--sh);border:1px solid var(--rose-lt);max-width:680px;margin-left:auto;margin-right:auto;}
.rev-avg-wrap{text-align:center;flex-shrink:0;}
.rev-avg-num{font-family:var(--serif);font-size:64px;line-height:1;color:var(--plum);font-weight:600;}
.rev-stars-big{font-size:22px;color:var(--gold);letter-spacing:2px;margin:4px 0;}
.rev-avg-lbl{font-size:11px;color:var(--gray);letter-spacing:.05em;}
.rev-bars{flex:1;display:flex;flex-direction:column;gap:6px;min-width:200px;}
.rev-bar-row{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--gray);}
.rev-bar-lbl{width:14px;text-align:right;color:var(--gold);font-size:13px;}
.rev-bar-track{flex:1;height:8px;background:var(--gray-lt);border-radius:50px;overflow:hidden;}
.rev-bar-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--rose));border-radius:50px;transition:width .8s cubic-bezier(.4,0,.2,1);}
.rev-bar-count{width:20px;font-size:10px;color:var(--gray);}
.rev-car-wrap{position:relative;display:flex;align-items:center;margin:0 -8px;}
.rev-prev{left:-22px;}
.rev-next{right:-22px;}
.rev-viewport{overflow:hidden;flex:1;border-radius:16px;}
.rev-track{display:flex;gap:22px;transition:transform .48s cubic-bezier(.4,0,.2,1);padding:12px 4px 24px;}
.rev-slide{flex:0 0 calc((100% - 44px) / 3);min-width:0;}
.rev-card{background:#fff;border-radius:16px;padding:24px;box-shadow:var(--sh);border:1px solid var(--rose-lt);height:100%;display:flex;flex-direction:column;position:relative;transition:var(--tr);}
.rev-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);}
.rev-card::before{content:'"';position:absolute;top:14px;right:20px;font-family:var(--serif);font-size:72px;color:var(--rose-lt);line-height:1;pointer-events:none;}
.rev-stars{color:var(--gold);font-size:17px;letter-spacing:1px;margin-bottom:12px;}
.rev-text{font-size:13px;color:var(--plum);line-height:1.7;flex:1;margin-bottom:16px;font-style:italic;}
.rev-author{display:flex;align-items:center;gap:10px;border-top:1px solid var(--rose-lt);padding-top:14px;margin-top:auto;}
.rev-av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--rose),var(--rose-dk));display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:16px;color:#fff;font-weight:600;flex-shrink:0;}
.rev-name{font-size:13px;font-weight:600;color:var(--plum);}
.rev-date{font-size:10px;color:var(--gray);margin-top:1px;}
.rev-skel{height:220px;border-radius:16px;background:linear-gradient(90deg,var(--rose-xl) 25%,#fff 50%,var(--rose-xl) 75%);background-size:200%;animation:skel 1.4s infinite;}
.rev-form-wrap{margin-top:52px;background:#fff;border-radius:20px;border:1px solid var(--rose-lt);box-shadow:var(--sh);overflow:hidden;}
.rev-form-hd{display:flex;align-items:center;gap:18px;padding:24px 32px;background:linear-gradient(135deg,var(--rose-xl),#fff);border-bottom:1px solid var(--rose-lt);}
.rev-form-ico{width:52px;height:52px;border-radius:14px;background:var(--rose);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;}
.rev-form-title{font-family:var(--serif);font-size:22px;color:var(--plum);margin-bottom:3px;}
.rev-form-sub{font-size:12px;color:var(--gray);}
.rev-form-body{padding:28px 32px;}
.star-picker{display:flex;gap:6px;margin-top:4px;}
.star-pick{font-size:32px;color:var(--rose-lt);cursor:pointer;transition:color .15s,transform .15s;line-height:1;user-select:none;}
.star-pick.on{color:var(--gold);}
.star-pick:hover{transform:scale(1.2);}
.rev-success{text-align:center;padding:40px 32px;}
.rev-success .suc-ico{font-size:56px;margin-bottom:16px;}
.rev-success h4{font-family:var(--serif);font-size:26px;color:var(--plum);margin-bottom:8px;}
.rev-success p{font-size:13px;color:var(--gray);}

/* ── Responsive ── */
@media(max-width:1100px){.car-slide{flex:0 0 calc((100% - 44px) / 3);}}
@media(max-width:760px){.car-slide{flex:0 0 calc((100% - 22px) / 2);}.rev-slide{flex:0 0 calc((100% - 22px) / 2);}}
@media(max-width:500px){.car-slide{flex:0 0 100%;}.rev-slide{flex:0 0 100%;}}
@media(max-width:960px){
  .hero-inner{grid-template-columns:1fr;gap:36px;}
  .hero-h1{font-size:46px;}
  .hero-right{display:none;}
  .ft-grid{grid-template-columns:1fr 1fr;}
  .ft-grid > :first-child{grid-column:1/-1;}
}
@media(max-width:600px){
  #nav{padding:0 16px;}
  #products{padding:56px 18px;}
  .a-side{display:none;}
  .a-body{padding:14px;}
  .ft-grid{grid-template-columns:1fr;}
  .con-cards{flex-direction:column;align-items:center;}
  .rev-summary{flex-direction:column;gap:24px;padding:20px;}
  .rev-bars{min-width:100%;}
  .rev-form-hd{padding:18px 20px;}
  .rev-form-body{padding:20px;}
  #reviews{padding:60px 18px;}
  .car-prev,.rev-prev{left:-14px;width:36px;height:36px;}
  .car-next,.rev-next{right:-14px;width:36px;height:36px;}
}
/* ── Slider imágenes dinámico ── */
.img-slider{width:100%;height:100%;position:relative;overflow:hidden;}
.img-track{height:100%;}
.img-arr{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.85);border:none;border-radius:50%;width:26px;height:26px;font-size:18px;line-height:1;cursor:pointer;z-index:3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;color:#4A1E30;box-shadow:0 1px 4px rgba(0,0,0,.15);}
.img-slider:hover .img-arr{opacity:1;}
.img-arr-l{left:6px;}
.img-arr-r{right:6px;}