:root{
  --ink:#1A1B41; --ink2:#2A2C5A; --mag:#E4177C; --cyan:#00B4D8; --yel:#FFB703;
  --muted:#5B5D7A; --line:#E7E8F1; --tint:#F4F5FA; --text:#2A2C4A;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;color:var(--text);background:#eef0f6;line-height:1.5;}
.wrap{max-width:1200px;margin:0 auto;}
a{text-decoration:none;color:inherit;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:30px;font-weight:700;cursor:pointer;font-size:14px;padding:12px 24px;}
.btn-mag{background:var(--mag);color:#fff;} .btn-ghost{background:transparent;border:2px solid #fff;color:#fff;}
.btn-ink{background:var(--ink);color:#fff;} .btn-out{background:#fff;border:1.5px solid var(--line);color:var(--ink);}
.pill{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.5px;padding:5px 12px;border-radius:20px;}
section{background:#fff;}
.icn{width:24px;height:24px;flex:none;}

.announce{background:var(--mag);color:#fff;font-size:13px;font-weight:600;padding:9px 24px;display:flex;justify-content:center;gap:24px;align-items:center;position:relative;}
.announce .socials{position:absolute;right:24px;display:flex;gap:13px;}
.announce .socials svg{width:15px;height:15px;fill:#fff;opacity:.9;}

header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;}
.hrow{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:20px;}
.brand-logo{height:42px;width:auto;display:block;}
nav{display:flex;gap:22px;font-size:14.5px;font-weight:600;color:var(--ink);}
nav a:hover{color:var(--mag);}
.htools{display:flex;align-items:center;gap:16px;}
.search{display:flex;align-items:center;gap:8px;background:var(--tint);border-radius:22px;padding:8px 14px;color:var(--muted);font-size:13px;width:170px;}
.cart-link{position:relative;display:inline-flex;}
.cart-count{position:absolute;top:-8px;right:-10px;background:var(--mag);color:#fff;font-size:10px;font-weight:800;min-width:17px;height:17px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;}

/* hero */
.hero{background:var(--ink);color:#fff;}
.hero-in{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;padding:56px 24px 64px;align-items:center;}
.hero h1{font-size:46px;font-weight:800;line-height:1.06;letter-spacing:-1px;}
.hero p{color:#C9CBE6;font-size:17px;margin-top:18px;max-width:470px;}
.hero-ctas{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap;}
.dots span{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px;}
.tp-card{background:#fff;border-radius:20px;padding:30px;color:var(--text);box-shadow:0 20px 50px rgba(0,0,0,.25);text-align:center;}
.tp-card .tag{display:inline-block;background:#FFF3D6;color:#7a5600;font-weight:800;font-size:12px;padding:6px 16px;border-radius:20px;letter-spacing:.5px;}
.tp-card .price{font-size:64px;font-weight:800;color:var(--ink);line-height:1;margin-top:14px;}
.tp-card .price sup{font-size:26px;vertical-align:super;}
.tp-card .u{color:var(--muted);font-weight:600;font-size:14px;}
.tp-card .free{margin-top:16px;background:var(--tint);border-radius:12px;padding:12px;font-size:13px;color:var(--ink);font-weight:700;}
.tp-card .free b{color:var(--mag);}

.rev{display:flex;justify-content:center;margin-top:-26px;position:relative;z-index:5;}
.rev .card{background:#fff;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.12);padding:12px 24px;display:flex;align-items:center;gap:10px;font-weight:700;font-size:14px;color:var(--ink);}
.stars{color:#FBB305;letter-spacing:2px;}

.sec-head{text-align:center;padding:52px 24px 8px;}
.sec-head h2{font-size:32px;color:var(--ink);font-weight:800;letter-spacing:-.5px;max-width:840px;margin:0 auto;line-height:1.12;}
.sec-head p{color:var(--muted);margin-top:10px;max-width:600px;margin-left:auto;margin-right:auto;}
.sec-head .claim{color:var(--mag);font-weight:800;margin-top:8px;}
.foot-note{color:#9A9CB8;font-size:12px;max-width:820px;margin:18px auto 0;border-top:1px solid var(--line);padding-top:14px;}

/* products */
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:28px 24px 16px;}
.prod{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:.15s;}
.prod:hover{box-shadow:0 16px 36px rgba(26,27,65,.12);transform:translateY(-3px);}
.pimg{height:172px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px;}
.pimg .lab{font-weight:800;font-size:15px;letter-spacing:.5px;color:var(--ink);}
.pimg .val{font-weight:800;font-size:42px;color:var(--ink);line-height:1;margin-top:6px;}
.pimg .val sup{font-size:18px;}
.pimg .u{font-size:12px;color:var(--muted);margin-top:4px;}
.pimg .tp{position:absolute;bottom:12px;left:0;right:0;font-size:11px;font-weight:800;letter-spacing:1px;color:var(--muted);}
.pbadge{position:absolute;top:12px;left:12px;font-size:10.5px;font-weight:800;letter-spacing:.5px;padding:5px 11px;border-radius:20px;color:#fff;}
.prod .pb{padding:16px 18px 20px;display:flex;flex-direction:column;flex:1;}
.prod .pb h4{font-size:16px;color:var(--ink);font-weight:800;line-height:1.2;}
.prod .pb .from{font-size:13px;color:var(--muted);margin-top:8px;}
.prod .pb .from b{font-size:20px;color:var(--ink);}
.prod .pb .btn{width:100%;margin-top:14px;}

.mayorista{text-align:center;padding:24px 24px 54px;}
.mayorista h3{font-size:26px;color:var(--ink);font-weight:800;max-width:760px;margin:0 auto;}
.mayorista p{color:var(--muted);margin-top:8px;max-width:680px;margin-left:auto;margin-right:auto;}

/* envios adicionales */
.env{padding:10px 24px 56px;}
.env-in{background:var(--ink);border-radius:20px;color:#fff;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding:32px 36px;}
.env .price{font-size:44px;font-weight:800;line-height:1;white-space:nowrap;}
.env .price sup{font-size:18px;} .env .price .u{display:block;font-size:12px;color:#C9CBE6;font-weight:600;}
.env h3{font-size:22px;font-weight:800;} .env p{color:#C9CBE6;font-size:14px;margin-top:6px;}

/* feature strip */
.fstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:30px 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.fstrip .f{display:flex;gap:12px;align-items:center;}
.fstrip b{display:block;color:var(--ink);font-size:14px;} .fstrip small{color:var(--muted);font-size:12.5px;}

/* pagos */
.pagos{padding:52px 24px;text-align:center;}
.pay-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:24px;}
.pay{background:#fff;border:1px solid var(--line);border-radius:30px;padding:12px 20px;display:flex;align-items:center;gap:10px;font-weight:700;color:var(--ink);font-size:14px;}
.pay .chip{width:40px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:900;}

/* por que */
.why{padding:56px 24px;background:var(--tint);}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px;}
.why .item{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;}
.why .cir{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.why h5{color:var(--ink);font-size:16px;font-weight:800;} .why p{color:var(--muted);font-size:13.5px;margin-top:6px;}

/* que es */
.quees{padding:56px 24px;text-align:center;}
.quees h2{font-size:30px;color:var(--ink);font-weight:800;}
.quees p{color:var(--muted);max-width:800px;margin:14px auto 0;font-size:15px;}

footer{background:#131431;color:#C9CBE6;padding:46px 24px 26px;}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;max-width:1200px;margin:0 auto;}
footer h6{color:#fff;font-size:13px;font-weight:800;letter-spacing:1px;margin-bottom:14px;text-transform:uppercase;}
footer a{display:block;font-size:13.5px;padding:5px 0;color:#B9BBDC;}
.fbar{border-top:1px solid #2A2C5A;margin-top:32px;padding-top:18px;text-align:center;font-size:12px;color:#8A8CB0;max-width:1200px;margin:auto;}

/* pagina en construccion */
.construccion{padding:90px 24px;text-align:center;}
.construccion h2{font-size:30px;color:var(--ink);font-weight:800;}
.construccion p{color:var(--muted);margin-top:12px;}

@media(max-width:950px){.hero-in,.grid4,.env-in,.fstrip,.why-grid,.fgrid{grid-template-columns:1fr 1fr;}nav,.search{display:none;}}
@media(max-width:560px){.grid4,.env-in,.fstrip,.why-grid,.fgrid{grid-template-columns:1fr;}}

/* ===== Producto ===== */
.producto{padding:40px 24px 64px;}
.prod-detail{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
.pd-visual img{width:100%;display:block;border-radius:20px;}
.pd-ph{background:var(--ink);color:#fff;border-radius:20px;height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.pd-ph-lab{color:var(--yel);font-weight:800;letter-spacing:1px;}
.pd-ph-val{font-size:64px;font-weight:800;line-height:1;margin-top:8px;}
.pd-ph-val sup{font-size:26px;}
.pd-ph-u{color:#C9CBE6;font-size:14px;margin-top:6px;}
.pd-ph-tp{margin-top:16px;font-size:11px;font-weight:800;letter-spacing:1px;color:#8fa0c9;}
.pd-back{color:var(--muted);font-size:13px;font-weight:600;}
.pd-info h1{color:var(--ink);font-size:32px;font-weight:800;margin:10px 0 6px;letter-spacing:-.5px;}
.pd-price{color:var(--ink);font-size:22px;font-weight:800;}
.pd-price span{color:var(--muted);font-size:14px;font-weight:600;}
.pd-desc{color:var(--muted);margin-top:12px;font-size:14.5px;}
.pd-form{margin-top:24px;}
.pd-label{display:block;font-size:12px;font-weight:800;letter-spacing:.5px;color:var(--ink);text-transform:uppercase;margin:18px 0 8px;}
.qty{display:flex;align-items:center;}
.qty-btn{width:46px;height:46px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-size:22px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.qty-btn[data-step="-1"]{border-radius:12px 0 0 12px;}
.qty-btn[data-step="1"]{border-radius:0 12px 12px 0;}
.qty input{width:90px;height:46px;text-align:center;border:1.5px solid var(--line);border-left:0;border-right:0;font-size:18px;font-weight:800;color:var(--ink);-moz-appearance:textfield;}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.qty-unit{margin-left:14px;color:var(--muted);font-weight:600;}
.pd-subtotal{background:var(--tint);border-radius:14px;padding:18px 20px;margin-top:22px;max-width:360px;}
.pd-subtotal .row{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);padding:4px 0;}
.pd-subtotal .row b{color:var(--ink);font-variant-numeric:tabular-nums;}
.pd-subtotal .row.total{border-top:1px solid var(--line);margin-top:8px;padding-top:12px;font-size:16px;color:var(--ink);font-weight:800;}
.pd-subtotal .row.total b{font-size:20px;}
.envio-hint{margin-top:12px;font-size:13px;font-weight:700;color:var(--mag);}
.envio-hint.ok{color:#1FA37A;}
.pd-file{display:block;font-size:14px;padding:10px;border:1.5px dashed var(--line);border-radius:12px;width:100%;max-width:360px;background:#fff;}
.pd-help{display:block;color:var(--muted);font-size:12.5px;margin-top:6px;}
.pd-add{margin-top:24px;min-width:220px;font-size:15px;padding:14px 28px;}

/* ===== Opciones de bono ===== */
.bono-opts{display:flex;flex-direction:column;gap:12px;max-width:440px;}
.bono-opt{display:flex;align-items:center;gap:14px;border:1.5px solid var(--line);border-radius:14px;padding:16px 18px;cursor:pointer;transition:.12s;}
.bono-opt:hover{border-color:var(--mag);}
.bono-opt input{accent-color:var(--mag);width:18px;height:18px;flex:none;}
.bono-opt:has(input:checked){border-color:var(--mag);box-shadow:0 0 0 3px rgba(228,23,124,.12);}
.bo-body{display:flex;flex-direction:column;gap:2px;flex:1;}
.bo-title{font-weight:800;color:var(--ink);font-size:16px;}
.bo-meta{font-size:12.5px;color:var(--muted);}
.bo-price{text-align:right;white-space:nowrap;}
.bo-price b{display:block;color:var(--ink);font-size:18px;font-variant-numeric:tabular-nums;}
.bo-price small{color:var(--muted);font-size:11.5px;}

/* ===== Carrito ===== */
.carrito{padding:40px 24px 64px;}
.carrito h1{color:var(--ink);font-size:30px;font-weight:800;margin-bottom:24px;}
.cart-table{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;}
.cart-head,.cart-row{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr 40px;gap:12px;align-items:center;padding:14px 18px;}
.cart-head{background:var(--tint);font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);}
.cart-row{border-top:1px solid var(--line);}
.c-nombre{font-weight:700;color:var(--ink);display:flex;flex-direction:column;gap:3px;}
.c-file{font-weight:600;color:var(--muted);font-size:12px;}
.c-precio,.c-sub,.c-cant{font-variant-numeric:tabular-nums;color:var(--text);}
.c-sub{font-weight:800;color:var(--ink);}
.c-del a{color:var(--muted);font-weight:800;font-size:16px;}
.c-del a:hover{color:var(--mag);}
.cart-foot{display:flex;justify-content:flex-end;margin-top:22px;}
.cart-totales{background:var(--tint);border-radius:14px;padding:18px 22px;min-width:300px;}
.cart-totales .row{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);padding:4px 0;}
.cart-totales .row b{color:var(--ink);font-variant-numeric:tabular-nums;}
.cart-totales .row.total{border-top:1px solid var(--line);margin-top:8px;padding-top:12px;font-size:17px;color:var(--ink);font-weight:800;}
.cart-cta{display:flex;gap:12px;justify-content:flex-end;margin-top:16px;}
.cart-vacio{text-align:center;padding:50px 0;color:var(--muted);}
.cart-vacio .btn{margin-top:16px;}

/* ===== Autenticación ===== */
.auth{padding:50px 24px 70px;display:flex;justify-content:center;}
.auth-card{width:100%;max-width:420px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px 30px;box-shadow:0 16px 40px rgba(26,27,65,.08);}
.auth-card h1{color:var(--ink);font-size:26px;font-weight:800;}
.auth-sub{color:var(--muted);font-size:14px;margin-top:6px;margin-bottom:20px;}
.ffield{margin-bottom:14px;display:flex;flex-direction:column;}
.ffield label{font-size:12px;font-weight:800;letter-spacing:.4px;color:var(--ink);text-transform:uppercase;margin-bottom:6px;}
.auth-card input{padding:11px 13px;font-size:14px;border:1.5px solid var(--line);border-radius:10px;color:var(--ink);font-family:inherit;}
.auth-card input:focus{outline:none;border-color:var(--mag);}
.fhelp{color:var(--muted-2,#8688A0);font-size:11.5px;margin-top:5px;line-height:1.4;}
.ferr{color:#b3155f;font-size:12.5px;margin-top:5px;}
.auth-submit{width:100%;margin-top:8px;padding:13px;}
.auth-alt{text-align:center;font-size:13.5px;color:var(--muted);margin-top:18px;}
.auth-alt a{color:var(--mag);font-weight:700;}

/* ===== Panel de cliente ===== */
.cuenta{padding:40px 24px 64px;}
.cta-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;}
.cta-head h1{color:var(--ink);font-size:30px;font-weight:800;}
.cta-mail{color:var(--muted);font-size:14px;}
.cta-h2{color:var(--ink);font-size:20px;font-weight:800;margin:34px 0 14px;}
.cta-empty{color:var(--muted);font-size:14.5px;}
.cta-empty a{color:var(--mag);font-weight:700;}
.bono-resumen{display:grid;grid-template-columns:repeat(2,minmax(0,240px));gap:16px;}
.br-card{background:var(--ink);color:#fff;border-radius:16px;padding:20px 22px;}
.br-lab{font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#9aa0c9;}
.br-val{display:block;font-size:32px;font-weight:800;margin-top:6px;color:#fff;}
.br-env{color:#C9CBE6;font-size:12.5px;}
.saldo-box{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:16px;}
.saldo-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:var(--tint);padding:14px 18px;}
.saldo-head b{color:var(--ink);}
.saldo-rest{font-size:13px;color:var(--muted);}
.saldo-rest b{color:var(--mag);}
.mov-table,.ped-table{width:100%;border-collapse:collapse;}
.mov-table th,.ped-table th{text-align:left;font-size:11px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--muted);padding:10px 18px;background:#fff;border-bottom:1px solid var(--line);}
.mov-table td,.ped-table td{padding:10px 18px;font-size:13.5px;color:var(--text);border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;}
.mov-table tr:last-child td,.ped-table tr:last-child td{border-bottom:0;}
.mov-neg{color:#b3155f;font-weight:700;}
.mov-pos{color:#1FA37A;font-weight:700;}
.ped-table{border:1px solid var(--line);border-radius:14px;overflow:hidden;}

/* ===== Checkout ===== */
.checkout{padding:40px 24px 64px;}
.ck-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:34px;align-items:start;}
.ck-main h1{color:var(--ink);font-size:30px;font-weight:800;margin-bottom:8px;}
.ck-h2{color:var(--ink);font-size:18px;font-weight:800;margin:24px 0 12px;}
.ck-main input[type=text],.ck-main input[type=email]{padding:11px 13px;font-size:14px;border:1.5px solid var(--line);border-radius:10px;width:100%;max-width:420px;font-family:inherit;color:var(--ink);}
.ck-main input:focus{outline:none;border-color:var(--mag);}
.ck-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--text);background:var(--tint);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px;cursor:pointer;max-width:460px;}
.ck-check input{accent-color:var(--mag);margin-top:2px;flex:none;}
.ck-pay-note{background:#EAF7FB;border:1px solid #BEE6F0;color:#0d4d5c;border-radius:12px;padding:14px 16px;font-size:13.5px;margin-top:22px;max-width:460px;}
.ck-submit{margin-top:22px;min-width:220px;padding:14px 28px;}
.ck-side{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;position:sticky;top:90px;}
.ck-line{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--text);}
.ck-line span{display:flex;flex-direction:column;gap:2px;}
.ck-line small{color:var(--muted);font-size:12px;}
.ck-line b{white-space:nowrap;color:var(--ink);}
.ck-tot{margin-top:14px;}
.ck-tot .row{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);padding:4px 0;}
.ck-tot .row b{color:var(--ink);font-variant-numeric:tabular-nums;}
.ck-tot .row.total{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-size:17px;color:var(--ink);font-weight:800;}
.ck-hint{display:block;color:var(--muted);font-size:12px;margin-top:8px;}

/* ===== Pedido confirmado ===== */
.pedido-det{padding:40px 24px 64px;}
.pd-ok{text-align:center;margin-bottom:24px;}
.pd-ok-badge{width:56px;height:56px;border-radius:50%;background:#E7F6EF;color:#1FA37A;font-size:28px;font-weight:800;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;}
.pd-ok h1{color:var(--ink);font-size:28px;font-weight:800;}
.pd-ok p{color:var(--muted);margin-top:6px;}
.pd-files{margin-top:16px;font-size:14px;color:var(--text);display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
.pd-total{margin-top:18px;text-align:right;font-size:18px;color:var(--ink);}
.pd-total b{font-size:22px;}
.pd-actions{margin-top:22px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
@media(max-width:820px){.ck-grid{grid-template-columns:1fr;}.ck-side{position:static;}}

/* ===== Pie de página (contacto y redes) ===== */
.fbrand .fdesc{margin-top:14px;font-size:13px;max-width:300px;color:#B9BBDC;line-height:1.6;}
.fcontact{display:flex;flex-direction:column;gap:7px;margin-top:16px;font-size:13px;}
.fcontact a,.fcontact span{color:#C9CBE6;}
.fcontact a:hover{color:#fff;}
.fsocial{display:flex;gap:10px;margin-top:16px;}
.fsocial a{width:34px;height:34px;border-radius:50%;background:#2A2C5A;display:flex;align-items:center;justify-content:center;transition:.12s;}
.fsocial svg{width:16px;height:16px;fill:#C9CBE6;}
.fsocial a:hover{background:var(--mag);}
.fsocial a:hover svg{fill:#fff;}
.fbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;text-align:left;}
.fbar-links{display:flex;gap:16px;flex-wrap:wrap;}
.fbar-links a{color:#8A8CB0;}
.fbar-links a:hover{color:#fff;}

/* ===== Páginas informativas ===== */
.info-page{padding:40px 24px 64px;}
.info-page h1{color:var(--ink);font-size:30px;font-weight:800;margin:10px 0 18px;}
.info-body{max-width:760px;color:var(--text);font-size:15px;line-height:1.7;}
.info-body h2{color:var(--ink);font-size:19px;font-weight:800;margin:26px 0 8px;}
.info-body p{margin-bottom:12px;}
.info-body ul{margin:0 0 12px 22px;}
.info-body li{margin:5px 0;}
.info-body .aviso{background:#FDF0DC;border:1px solid #F0D9AE;border-radius:10px;padding:12px 15px;color:#5f4a1e;font-size:13.5px;margin-bottom:16px;}

/* ===== Banner de cookies ===== */
.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;max-width:660px;margin:0 auto;background:var(--ink);color:#fff;border-radius:14px;padding:16px 18px;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:0 16px 44px rgba(0,0,0,.32);z-index:60;}
.cookie-banner p{font-size:13px;color:#C9CBE6;flex:1;min-width:220px;margin:0;}
.cookie-banner a{color:#8fe6f7;font-weight:600;}
.cookie-btns{display:flex;gap:10px;}
.cookie-btns .btn{padding:9px 18px;font-size:13px;}
.cookie-btns .btn-out{background:transparent;border:1.5px solid #44466f;color:#fff;}
.cookie-btns .btn-out:hover{border-color:#8fe6f7;}

/* ===== Mensajes ===== */
.mensajes{max-width:1200px;margin:0 auto;padding:0 24px;}
.msg{margin-top:14px;padding:12px 18px;border-radius:12px;font-size:14px;font-weight:600;}
.msg.success{background:#E7F6EF;color:#14624a;}
.msg.info{background:#EAF7FB;color:#0d4d5c;}
.msg.error,.msg.warning{background:#FBE7EF;color:#b3155f;}

@media(max-width:820px){
  .prod-detail{grid-template-columns:1fr;}
  .cart-head{display:none;}
  .cart-row{grid-template-columns:1fr 1fr;gap:6px 12px;}
  .cart-foot{justify-content:stretch;}
  .cart-totales{width:100%;}
}
