:root{
  --navy:#4b6e5a;--navy2:#34503f;--green:#5f8a68;--green2:#4a6e52;--gold:#d9822b;--gold2:#f4be84;
  --cream:#fbf6ec;--sand:#f1e8d4;--ink:#2a3a33;--wa:#25d366;--coral:#e8664a;
  --serif:'Playfair Display',Georgia,serif;--sans:'Nunito',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--sans);color:var(--ink);background:var(--cream);overflow-x:hidden;line-height:1.55}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
.wrap{width:min(1180px,92%);margin:auto}
h1,h2,h3{font-family:var(--serif);line-height:1.08}
.eyebrow{display:inline-flex;gap:.6rem;align-items:center;font-weight:800;letter-spacing:.18em;font-size:.78rem;text-transform:uppercase;color:var(--gold)}
.eyebrow:before{content:"";width:34px;height:2px;background:currentColor}

/* preloader */
#pre{position:fixed;inset:0;z-index:999;background:#fff;display:grid;place-items:center;transition:opacity .8s,visibility .8s}
#pre.done{opacity:0;visibility:hidden}
#pre video{width:100%;height:100%;object-fit:contain;background:#fff}
#pre button{position:absolute;right:20px;bottom:20px;padding:.5rem 1rem;border-radius:99px;background:#4b6e5a12;color:var(--navy);font-weight:800;font-size:.85rem;opacity:0;transition:.4s}
#pre.skip button{opacity:1}
#pre button:hover{background:var(--navy);color:#fff}
@media(max-width:700px){#pre video{transform:scale(1.9)}}

/* nav */
nav.top{position:fixed;inset:0 0 auto 0;z-index:50;transition:.35s;padding:.7rem 0}
nav.top:before{content:"";position:absolute;inset:0;z-index:-2;opacity:0;transition:.35s;background:#fbf6ece8;backdrop-filter:blur(14px);box-shadow:0 6px 30px #4b6e5a14}
nav.top.solid:before{opacity:1}
nav.top .wrap{display:flex;align-items:center;gap:1.4rem}
.brand{display:flex;align-items:center;gap:.7rem;font-family:var(--serif);font-weight:800;font-size:1.35rem;color:#fff;transition:.3s}
.brand img{width:46px;height:46px;border-radius:50%;box-shadow:0 2px 12px #0004}
nav.top.solid .brand,nav.top.light .brand{color:var(--navy)}
.links{margin-left:auto;display:flex;gap:1.6rem;font-weight:700;font-size:.95rem;color:#fff}
nav.top.solid .links,nav.top.light .links{color:var(--ink)}
.links a{position:relative;padding:.3rem 0}
.links a:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--gold);transition:.3s}
.links a:hover:after{width:100%}
.cart-btn{position:relative;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--gold);color:#fff;transition:.3s}
.cart-btn:hover{transform:rotate(-8deg) scale(1.08)}
.cart-btn svg{width:22px}
.cart-btn b{position:absolute;top:-5px;right:-5px;min-width:21px;height:21px;border-radius:99px;background:var(--coral);color:#fff;font-size:.72rem;display:grid;place-items:center;padding:0 5px;border:2px solid var(--cream)}
.cart-btn.bump{animation:bump .5s}
@keyframes bump{40%{transform:scale(1.3) rotate(10deg)}}
.burger{display:none;width:40px;height:40px;color:#fff}
nav.top.solid .burger,nav.top.light .burger{color:var(--navy)}
@media(max-width:860px){
  .burger{display:block;margin-left:auto}
  .links{position:fixed;inset:0 0 0 22%;flex-direction:column;background:#fbf6ec;padding:6.5rem 2rem 2rem;translate:105% 0;transition:.4s;margin:0;color:var(--navy)!important;font-size:1.25rem;gap:.4rem;z-index:-1;box-shadow:-20px 0 50px #0003;visibility:hidden}
  .links a{padding:.9rem 0;border-bottom:1px solid #4b6e5a22}
  nav.top.menu .burger{color:var(--navy)}
  .links.open{translate:0;visibility:visible}
  nav.top .cart-btn{order:3}
}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.95rem 1.7rem;border-radius:99px;font-weight:800;transition:.3s;position:relative;overflow:hidden}
.btn svg{width:20px;height:20px}
.btn-wa{background:var(--wa);color:#fff;box-shadow:0 10px 30px #25d36655}
.btn-wa:hover{transform:translateY(-3px);box-shadow:0 16px 36px #25d36677}
.btn-gold{background:var(--gold);color:#fff;box-shadow:0 10px 30px #d9822b55}
.btn-gold:hover{transform:translateY(-3px)}
.btn-ghost{border:2px solid #fff9;color:#fff}
.btn-ghost:hover{background:#fff;color:var(--navy)}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--green)}

/* hero */
.hero{position:relative;min-height:100svh;display:grid;align-items:center;color:#fff;overflow:hidden;isolation:isolate}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,#34503fee 10%,#4b6e5aaa 50%,#5f8a6855)}
.hero h1{font-size:clamp(2rem,4.4vw,3.5rem);margin:1rem 0 1.1rem;max-width:18ch}
.hero h1 em{font-style:italic;color:var(--gold2)}
.hero p.lead{font-size:clamp(1rem,1.5vw,1.15rem);max-width:46ch;opacity:.93}
.hero .cta{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}
.hero .badge{position:absolute;right:6%;bottom:14%;width:min(240px,34vw);border-radius:50%;box-shadow:0 30px 70px #0008;animation:float 6s ease-in-out infinite;border:4px solid #fff3}
.paw{position:absolute;color:#fff;opacity:.12;pointer-events:none;z-index:-1}
.scroll-hint{position:absolute;left:50%;bottom:1.4rem;translate:-50% 0;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;opacity:.8;display:grid;gap:.5rem;justify-items:center}
.scroll-hint i{width:22px;height:36px;border:2px solid #fff;border-radius:99px;position:relative}
.scroll-hint i:after{content:"";position:absolute;left:50%;top:6px;width:4px;height:7px;border-radius:9px;background:#fff;translate:-50% 0;animation:wheel 1.6s infinite}
@keyframes wheel{70%{top:18px;opacity:0}}
@keyframes float{50%{transform:translateY(-16px) rotate(2deg)}}
@media(max-width:700px){.hero .badge{display:none}}

/* promo marquee */
html{overflow-x:hidden}
.promo{overflow:hidden;background:var(--navy);color:#fff;position:relative;z-index:3;margin:0;box-shadow:0 14px 40px #4b6e5a55;border-block:4px solid var(--gold)}
.promo .tag{position:absolute;left:0;top:0;bottom:0;z-index:2;background:var(--gold);color:#fff;padding:0 1.6rem 0 2.2rem;display:flex;align-items:center;font-family:var(--serif);font-weight:800;font-size:1.3rem;clip-path:polygon(0 0,100% 0,88% 100%,0 100%);letter-spacing:.04em}
.track{display:flex;width:max-content;animation:slide 45s linear infinite;padding:.9rem 0}
.promo:hover .track{animation-play-state:paused}
@keyframes slide{to{translate:-50% 0}}
.pitem{display:flex;align-items:center;gap:.8rem;padding:0 2.2rem;white-space:nowrap;border-right:1px dashed #fff4}
.pitem img{width:54px;height:54px;object-fit:contain;background:#fff;border-radius:50%;padding:4px}
.pitem b{font-weight:800}
.pitem s{opacity:.55;font-size:.85rem}
.pitem .off{background:var(--coral);padding:.12rem .55rem;border-radius:99px;font-size:.78rem;font-weight:800}
.pitem .pr{color:var(--gold2);font-weight:800}

/* wave dividers */
.divider{display:block;width:100%;height:auto;margin-bottom:-2px}
.paws-trail{height:56px;background:var(--cream);position:relative;overflow:hidden}
.paws-trail svg{position:absolute;width:30px;fill:var(--navy);opacity:.28}

/* catalog sampler */
.shop{position:relative;padding:5rem 0 6rem;background:var(--cream)}
.shop:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cg fill='%230d3b66' fill-opacity='.05'%3E%3Cellipse cx='40' cy='50' rx='9' ry='12'/%3E%3Cellipse cx='62' cy='38' rx='8' ry='11'/%3E%3Cellipse cx='84' cy='38' rx='8' ry='11'/%3E%3Cellipse cx='104' cy='50' rx='9' ry='12'/%3E%3Cpath d='M72 58c-16 0-30 14-30 26 0 10 10 12 18 10 8-2 12-2 24 0 8 2 18 0 18-10 0-12-14-26-30-26z' transform='translate(-8 0)'/%3E%3C/g%3E%3C/svg%3E");opacity:1;transform:rotate(-12deg) scale(1.3);pointer-events:none}
.sec-head{text-align:center;margin-bottom:3.5rem;position:relative}
.sec-head h2{font-size:clamp(2rem,4.6vw,3.4rem);color:var(--navy);margin-top:.6rem}
.sec-head h2 em{color:var(--green);font-style:italic}
.sec-head p{max-width:56ch;margin:1rem auto 0;opacity:.8}
.float-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2.2rem 1.4rem;position:relative}
.fp{position:relative;text-align:center;padding:1.4rem .5rem 0}
.fp:nth-child(even){margin-top:3.2rem}
.fp .blob{position:absolute;left:50%;top:0;width:88%;aspect-ratio:1;translate:-50% 0;border-radius:58% 42% 55% 45%/48% 58% 42% 52%;transition:.6s cubic-bezier(.3,1.5,.5,1);animation:morph 9s ease-in-out infinite}
.fp .blob{background:radial-gradient(circle at 50% 40%,#fff 55%,#efe6d4);box-shadow:0 14px 34px #4b6e5a22,0 0 0 6px #ffffffaa}
@keyframes morph{50%{border-radius:42% 58% 45% 55%/58% 42% 58% 42%;rotate:6deg}}
.fp img.pimg{position:relative;width:78%;aspect-ratio:1;object-fit:contain;margin:0 auto;filter:drop-shadow(0 16px 12px #4b6e5a33);transition:.5s cubic-bezier(.3,1.5,.5,1)}
.fp:hover img.pimg{transform:translateY(-14px) rotate(-5deg) scale(1.1)}
.fp:hover .blob{scale:1.08}
.fp .brand-t{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--gold);margin-top:1rem}
.fp h3{font-family:var(--sans);font-weight:800;font-size:1.02rem;margin:.2rem 0;color:var(--ink);min-height:2.6em}
.price{font-weight:800;color:var(--navy);font-size:1.15rem}
.price s{opacity:.5;font-weight:600;font-size:.88rem;margin-right:.4rem}
.add{display:inline-flex;align-items:center;gap:.4rem;margin-top:.6rem;padding:.55rem 1.1rem;border-radius:99px;background:var(--navy);color:#fff;font-weight:800;font-size:.88rem;transition:.3s}
.add:hover{background:var(--green);transform:scale(1.06)}
.btns{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-top:.6rem}
.btns .add{margin-top:0}
.info{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1rem;border-radius:99px;border:2px solid var(--navy);color:var(--navy);font-weight:800;font-size:.88rem;transition:.3s}
.info:hover{background:var(--navy);color:#fff}
.add.ok{background:var(--green)}
.ribbon{position:absolute;right:12%;top:1.4rem;z-index:2;background:var(--coral);color:#fff;font-weight:800;font-size:.78rem;padding:.3rem .7rem;border-radius:99px;rotate:8deg}
@media(max-width:900px){.float-grid{grid-template-columns:repeat(2,1fr)}.fp:nth-child(even){margin-top:2rem}}

/* big CTA to catalog */
.cat-cta{text-align:center;margin-top:4rem;position:relative}
.megabtn{--w:min(520px,92%);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:1rem;width:var(--w);padding:1.4rem 2rem;border-radius:99px;background:linear-gradient(100deg,var(--navy),var(--green));color:#fff;font-family:var(--serif);font-weight:800;font-size:1.4rem;box-shadow:0 22px 50px #4b6e5a44;overflow:hidden;transition:.4s}
.megabtn:before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,#ffffff55,transparent 70%);translate:-100% 0;animation:shine 3.2s infinite}
@keyframes shine{60%,100%{translate:100% 0}}
.megabtn:hover{transform:translateY(-6px) scale(1.03);letter-spacing:.03em}
.megabtn svg{width:34px;animation:walk 1s steps(2) infinite}
.megabtn .arrow{transition:.4s}.megabtn:hover .arrow{translate:10px 0}
@keyframes walk{50%{transform:translateY(-4px) rotate(8deg)}}
.cat-cta small{display:block;margin-top:1rem;opacity:.7}

/* category ribbons */
.cats{background:var(--sand);padding:4rem 0;overflow:hidden}
.cat-row{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}
.chip{padding:.8rem 1.4rem;border-radius:99px;background:#fff;font-weight:800;color:var(--navy);box-shadow:0 6px 18px #4b6e5a14;transition:.3s;display:inline-flex;gap:.5rem;align-items:center}
.chip:hover,.chip.on{background:var(--navy);color:#fff;transform:translateY(-4px) rotate(-1.5deg)}

/* trust */
.trust{position:relative;min-height:100vh;display:grid;place-items:center;text-align:center;color:#fff;isolation:isolate;padding:6rem 0;background:var(--cream);--p:0}
.frame{position:absolute;inset:0;z-index:-1;overflow:hidden;background:#34503f;clip-path:inset(calc((1 - var(--p))*26%) calc((1 - var(--p))*22%) round calc((1 - var(--p))*120px))}
.frame .bg{position:absolute;inset:-12% 0;background:url(img/amigos.webp) center 40%/cover;scale:calc(1.35 - var(--p)*.35);will-change:transform}
.frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#34503fb0,#5f8a68cc)}
.trust .wrap{opacity:calc(var(--p)*1.4 - .3);transform:translateY(calc((1 - var(--p))*60px))}
.trust blockquote{font-family:var(--serif);font-size:clamp(2rem,5.4vw,4.2rem);line-height:1.12;max-width:20ch;margin:1rem auto}
.trust blockquote em{color:var(--gold2)}
.stats{display:flex;gap:2.5rem 4rem;justify-content:center;flex-wrap:wrap;margin-top:3rem}
.stats div{font-weight:700;opacity:.92}
.stats b{display:block;font-family:var(--serif);font-size:3rem;color:var(--gold2)}

/* team */
.team{position:relative;background:var(--navy2);color:#fff;padding-bottom:4rem}
.tstage{position:relative;height:min(56.25vw,88vh);min-height:300px;overflow:hidden}
.tstage video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.tstage:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#34503fe6 0%,#34503f99 18%,#34503f00 40%,#34503f00 70%,var(--navy2) 100%)}
.thead{position:absolute;z-index:2;left:0;right:0;margin:0 auto;top:5.5rem;width:min(1180px,92%)}
.thead h2{font-size:clamp(1.8rem,4vw,3rem);margin-top:.5rem;text-shadow:0 2px 20px #0008}
.tbody{position:relative;z-index:2;margin-top:-4rem}
.tlead{max-width:62ch;opacity:.92;font-size:1.05rem;margin-bottom:1.6rem;text-shadow:0 2px 14px #34503f}
.info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.icard{background:#ffffff14;backdrop-filter:blur(12px);border:1px solid #ffffff30;border-radius:22px;padding:1.5rem;transition:.35s}
.icard:hover{transform:translateY(-8px);background:#ffffff22;border-color:var(--gold2)}
.icard i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--gold);color:#fff;font-style:normal;font-size:1.3rem;margin-bottom:.9rem}
.icard i svg{width:22px}
.icard h3{font-family:var(--sans);font-size:1.05rem;font-weight:800;margin-bottom:.3rem}
.icard p,.icard a{opacity:.9;font-size:.98rem}
.team .actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}
@media(max-width:860px){.info-cards{grid-template-columns:1fr}}
@media(max-width:700px){.tstage{height:72vw;min-height:260px}.thead{top:4.4rem}.tbody{margin-top:-2rem}.team{padding-bottom:3rem}}

/* payments */
.pay{background:#fff;padding:5rem 0;text-align:center;border-top:1px solid #4b6e5a15}
.bank-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2.5rem}
.bank{width:170px;height:92px;background:#fff;border-radius:18px;border:1px solid #4b6e5a20;display:grid;place-items:center;padding:1rem 1.2rem;transition:.35s;box-shadow:0 6px 18px #4b6e5a10}
.bank img{max-height:48px;max-width:100%;object-fit:contain}
.bank:hover{transform:translateY(-8px) scale(1.05);box-shadow:0 18px 34px #4b6e5a33;border-color:var(--gold)}
.pay .note{margin-top:2rem;font-size:.92rem;opacity:.7}
.secure{display:inline-flex;gap:.6rem;align-items:center;margin-top:1.6rem;padding:.6rem 1.2rem;border-radius:99px;background:#e5f3e7;color:var(--green2);font-weight:800;font-size:.9rem}

/* footer */
footer{background:var(--navy2);color:#fff;padding:4rem 0 1.5rem;position:relative}
footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2.5rem}
footer h4{font-family:var(--serif);color:var(--gold2);margin-bottom:1rem;font-size:1.15rem}
footer ul{list-style:none;display:grid;gap:.5rem;opacity:.88}
footer a:hover{color:var(--gold2)}
footer .fb{display:flex;gap:.8rem;align-items:center;font-family:var(--serif);font-size:1.5rem;font-weight:800;margin-bottom:1rem}
footer .fb img{width:62px;border-radius:50%}
.social{display:flex;gap:.7rem;margin-top:1.2rem}
.social a{width:44px;height:44px;border-radius:50%;background:#ffffff1c;display:grid;place-items:center;transition:.3s}
.social a:hover{background:var(--gold);transform:translateY(-5px) rotate(-8deg)}
.social svg{width:20px;fill:#fff}
.copy{margin-top:3rem;padding-top:1.2rem;border-top:1px solid #ffffff22;text-align:center;font-size:.85rem;opacity:.7}
@media(max-width:860px){footer .cols{grid-template-columns:1fr 1fr}}
@media(max-width:520px){footer .cols{grid-template-columns:1fr}}

/* floating wa */
.wa-float{position:fixed;right:20px;bottom:20px;z-index:60;width:62px;height:62px;border-radius:50%;background:var(--wa);display:grid;place-items:center;color:#fff;box-shadow:0 12px 30px #25d36688;animation:pulse 2.4s infinite}
.wa-float svg{width:32px}
@keyframes pulse{0%{box-shadow:0 0 0 0 #25d36699}70%,100%{box-shadow:0 0 0 22px #25d36600}}

/* reveal */
.rv{opacity:0;translate:0 40px;transition:opacity .9s,translate .9s cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;translate:0}
.rv.l{translate:-50px 0}.rv.r{translate:50px 0}.rv.l.in,.rv.r.in{translate:0}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}

/* cart drawer */
.shade{position:fixed;inset:0;background:#34503f88;backdrop-filter:blur(3px);z-index:90;opacity:0;visibility:hidden;transition:.3s}
.shade.on{opacity:1;visibility:visible}
aside.drawer{position:fixed;top:0;right:0;bottom:0;width:min(430px,100%);background:var(--cream);z-index:95;translate:100% 0;transition:.45s cubic-bezier(.2,.9,.3,1),visibility .45s;display:flex;flex-direction:column;visibility:hidden}
aside.drawer.on{translate:0;visibility:visible;box-shadow:-20px 0 60px #0004}
.drawer header{padding:1.2rem 1.4rem;display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:#fff}
.drawer header h3{font-size:1.4rem}
.drawer header button{font-size:1.8rem;line-height:1}
.drawer .items{flex:1;overflow:auto;padding:1rem 1.2rem}
.ci{display:grid;grid-template-columns:70px 1fr auto;gap:.9rem;align-items:center;padding:.9rem 0;border-bottom:1px dashed #4b6e5a30}
.ci img{width:70px;height:70px;object-fit:contain;background:#fff;border-radius:14px;padding:4px}
.ci h4{font-size:.92rem;line-height:1.25}
.ci .q{display:inline-flex;align-items:center;gap:.5rem;margin-top:.4rem;background:#fff;border-radius:99px;padding:.15rem .3rem;border:1px solid #4b6e5a22}
.ci .q button{width:26px;height:26px;border-radius:50%;background:var(--sand);font-weight:800}
.ci .rm{font-size:1.2rem;opacity:.5}.ci .rm:hover{opacity:1;color:var(--coral)}
.empty{text-align:center;padding:4rem 1rem;opacity:.7}
.empty svg{width:70px;margin:0 auto 1rem;fill:var(--gold)}
.drawer footer{background:#fff;color:var(--ink);padding:1.2rem 1.4rem;display:grid;gap:.7rem;box-shadow:0 -10px 30px #4b6e5a12}
.tot{display:flex;justify-content:space-between;font-weight:800;font-size:1.25rem;color:var(--navy)}
.drawer footer .btn{justify-content:center}
.drawer footer small{opacity:.65;text-align:center}
.btn[disabled]{opacity:.5;pointer-events:none}
.toast{position:fixed;left:50%;bottom:90px;translate:-50% 30px;background:var(--navy);color:#fff;padding:.8rem 1.4rem;border-radius:99px;font-weight:700;opacity:0;transition:.4s;z-index:120;pointer-events:none}
.toast.on{opacity:1;translate:-50% 0}

/* modal producto */
.modal{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:1rem;background:#34503f99;backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:.3s}
.modal.on{opacity:1;visibility:visible}
.mbox{position:relative;width:min(820px,100%);max-height:92vh;overflow:auto;background:var(--cream);border-radius:28px;display:grid;grid-template-columns:1fr 1.1fr;box-shadow:0 40px 100px #0007;transform:scale(.9) translateY(20px);transition:.4s cubic-bezier(.2,1.2,.4,1)}
.modal.on .mbox{transform:none}
.mbox .mimg{background:radial-gradient(circle at 50% 45%,#fff,var(--sand));display:grid;place-items:center;padding:2rem;min-height:280px}
.mbox .mimg img{width:100%;max-width:300px;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 20px 16px #4b6e5a44)}
.mbox .mtxt{padding:2rem 1.8rem}
.mbox .mtxt h3{font-size:1.7rem;color:var(--navy);margin:.3rem 0 .8rem}
.mbox .mtxt p{opacity:.85;margin-bottom:1rem}
.mbox ul{list-style:none;display:grid;gap:.45rem;margin-bottom:1.2rem}
.mbox li{padding-left:1.6rem;position:relative;font-weight:700;font-size:.95rem}
.mbox li:before{content:"🐾";position:absolute;left:0;font-size:.85rem}
.mclose{position:absolute;right:14px;top:10px;font-size:2rem;line-height:1;z-index:2;color:var(--navy);width:40px;height:40px;border-radius:50%;background:#fffc}
.mbox .price{font-size:1.5rem;margin-bottom:1rem}
.mbox .btns{justify-content:flex-start}
@media(max-width:700px){.mbox{grid-template-columns:1fr}.mbox .mimg{min-height:0;padding:1.4rem}.mbox .mimg img{max-width:200px}}

/* responsive */
@media(max-width:1024px){
  .float-grid{grid-template-columns:repeat(3,1fr)}
  .info-cards{gap:.9rem}
}
@media(max-width:700px){
  .wrap{width:90%}
  .float-grid{grid-template-columns:repeat(2,1fr);gap:1.6rem .6rem}
  .fp:nth-child(even){margin-top:1.4rem}
  .fp h3{font-size:.88rem}
  .price{font-size:1rem}
  .btns{gap:.35rem}
  .add,.info{padding:.5rem .8rem;font-size:.8rem}
  .ribbon{right:6%;font-size:.7rem}
  .bank-grid{gap:.8rem}
  .bank{width:calc(50% - .4rem);height:78px}
    .trust{min-height:85vh;padding:5rem 0}
  .stats{gap:1.4rem 2rem}.stats b{font-size:2.2rem}
  .promo .tag{font-size:1rem;padding:0 1.4rem 0 1rem}
  .pitem{padding:0 1.4rem}
  .megabtn{font-size:1.1rem;padding:1.1rem 1.2rem;gap:.6rem}
  .megabtn svg{width:26px}
  .hero .cta .btn{width:100%;justify-content:center}
  .cat-hero{padding:7rem 0 3rem}
  .tools{top:58px}
  .wa-float{width:54px;height:54px;right:14px;bottom:14px}
  .toast{bottom:80px;width:max-content;max-width:90%;text-align:center}
  .ci{grid-template-columns:60px 1fr auto}.ci img{width:60px;height:60px}
  footer .cols{gap:1.6rem}
}
@media(max-width:380px){.fp .brand-t{font-size:.62rem}.brand{font-size:1.15rem}.brand img{width:38px;height:38px}}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.track{animation:none}}

/* logo carrito */
.brand .brand-logo{width:auto;height:46px;border-radius:0;box-shadow:none}
.brand{background:#ffffffee;padding:.25rem .8rem;border-radius:16px;box-shadow:0 4px 18px #0003}
nav.top.solid .brand{box-shadow:0 2px 10px #4b6e5a18}
footer .fb{display:block;margin-bottom:1rem}
footer .foot-logo{width:auto;height:96px;border-radius:0;background:#fff;padding:.5rem 1rem;border-radius:18px}
@media(max-width:700px){.brand .brand-logo{height:38px}}
.brand .brand-logo{height:58px;transition:height .3s}
nav.top.solid .brand .brand-logo{height:46px}
.tools{top:76px}
footer .foot-logo{height:130px}
@media(max-width:700px){.brand .brand-logo{height:46px}nav.top.solid .brand .brand-logo{height:40px}.tools{top:66px}footer .foot-logo{height:110px}}
footer .fb img.foot-logo{width:auto;max-width:100%;border-radius:18px}

/* promociones del mes: banda de borde a borde */
.promos{position:relative;padding:2.2rem 0 1.6rem;color:#fff;overflow:hidden;isolation:isolate;background:linear-gradient(100deg,#34503f,#4b6e5a 40%,#6b9a86 80%,#5f8a68);background-size:200% 200%;animation:bgshift 16s ease-in-out infinite}
@keyframes bgshift{50%{background-position:100% 100%}}
.pbg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.silhouette{position:absolute;right:2%;top:50%;translate:0 -50%;height:150%;filter:brightness(0) invert(1);opacity:.06;rotate:-8deg}
.orb{position:absolute;border-radius:50%;filter:blur(50px);opacity:.35;animation:drift 14s ease-in-out infinite}
.orb.o1{width:220px;height:220px;background:#f4be84;left:-40px;top:-60px}
.orb.o2{width:200px;height:200px;background:#e8664a;left:48%;bottom:-90px;animation-delay:-5s}
.orb.o3{width:220px;height:220px;background:#7ad7c0;right:-40px;top:-70px;animation-delay:-9s}
@keyframes drift{50%{transform:translate(30px,10px) scale(1.15)}}
.pband{display:grid;grid-template-columns:minmax(260px,330px) 1fr;gap:1.4rem;align-items:center;width:100%;padding:0 clamp(.8rem,2vw,1.6rem)}
.exclusive{position:relative;overflow:hidden;border-radius:20px;padding:.9rem 1rem .9rem 5.4rem;background:linear-gradient(120deg,#d9822b,#e8664a 55%,#4b6e5a);background-size:220% 220%;animation:bgshift 7s ease-in-out infinite,vibrate 5s infinite;box-shadow:0 14px 34px #0005,0 0 0 2px #ffffff55 inset;min-height:290px;display:grid;align-content:center}
.exclusive .shine{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#ffffff55 50%,transparent 65%);translate:-120% 0;animation:shine 3.6s infinite}
@keyframes shine{60%,100%{translate:120% 0}}
.sil2{position:absolute;right:-14px;bottom:-18px;width:130px;filter:brightness(0) invert(1);opacity:.18;rotate:6deg;pointer-events:none}
@keyframes vibrate{0%,86%,100%{transform:none}88%{transform:translateX(-4px) rotate(-.6deg)}90%{transform:translateX(4px) rotate(.6deg)}92%{transform:translateX(-3px)}94%{transform:translateX(3px)}96%{transform:translateX(-1px)}}
.ex-badge{position:absolute;left:.8rem;top:50%;translate:0 -50%;width:76px;height:76px;border-radius:50%;background:#fbf6ec;color:#a8421f;display:grid;place-items:center;text-align:center;box-shadow:0 8px 18px #0004,0 0 0 4px #f4be84;animation:pulseBadge 1.8s ease-in-out infinite;rotate:-10deg}
.ex-badge b{font-family:var(--serif);font-size:2rem;line-height:.9}
.ex-badge b small{font-size:1rem}
.ex-badge span{display:block;font-weight:800;letter-spacing:.16em;font-size:.55rem;margin-top:-1.1rem}
@keyframes pulseBadge{50%{transform:scale(1.1) rotate(6deg)}}
.ex-body{position:relative;display:grid;gap:.35rem;justify-items:start}
.ex-tag{background:#fbf6ec;color:#a8421f;font-weight:800;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;padding:.22rem .6rem;border-radius:99px}
.exclusive h3{font-size:1.25rem;line-height:1.2}
.exclusive h3 em{font-style:italic;color:#ffe9a8}
.ex-small{font-size:.62rem;opacity:.9;line-height:1.35}
.exclusive .btn-gold{background:#fbf6ec;color:#a8421f;padding:.4rem .9rem;font-size:.8rem;box-shadow:0 6px 16px #0004}
.pright{min-width:0}
.phead{display:flex;align-items:baseline;gap:.8rem;margin-bottom:.6rem;flex-wrap:wrap}
.phead .eyebrow{color:var(--gold2);font-size:.7rem}
.phead h2{font-size:1.25rem;color:#fff;line-height:1.1}
.phead h2 em{color:var(--gold2)}
.deal-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.8rem}
.deal{position:relative;border-radius:16px;overflow:hidden;background:#fbf6ec;color:var(--ink);box-shadow:0 10px 24px #0004;transition:.35s cubic-bezier(.3,1.4,.5,1);display:flex;flex-direction:column}
.deal:hover{transform:translateY(-5px)}
.deal-img{position:relative;display:grid;place-items:center;height:185px;overflow:hidden}
.deal-img img{position:relative;width:auto;max-width:92%;height:94%;object-fit:contain;filter:drop-shadow(0 8px 6px #0003);transition:.4s cubic-bezier(.3,1.5,.5,1)}
.deal:hover .deal-img img{transform:scale(1.1) rotate(-4deg)}
.deal-img{background:radial-gradient(circle at 50% 45%,#fff 50%,#efe6d4)}
.deal-off{position:absolute;left:6px;top:6px;z-index:2;background:#e8664a;color:#fff;font-weight:800;padding:.12rem .45rem;border-radius:99px;font-size:.68rem}
.deal-body{padding:.3rem .55rem .45rem;display:grid;gap:0;flex:0;align-content:start}
.deal-body h3{font-family:var(--sans);font-weight:800;font-size:.72rem;line-height:1.15;height:2.3em;overflow:hidden}
.deal-price{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}
.deal-price s{opacity:.5;font-weight:700;font-size:.62rem}
.deal-price b{font-size:.95rem;color:var(--navy);font-family:var(--serif)}
.deal-wa{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;margin-top:.25rem;padding:.2rem .5rem;border-radius:99px;background:var(--wa);color:#fff;font-weight:800;font-size:.68rem}
.deal-wa svg{width:12px;height:12px}
.deal-note{text-align:center;margin-top:.7rem;opacity:.75;font-size:.66rem;padding:0 1rem}
@media(max-width:1100px){
  .pband{grid-template-columns:1fr}
  .exclusive{min-height:0}
}
@media(max-width:800px){
  .deal-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.4rem}
  .deal{flex:0 0 165px;scroll-snap-align:start}
}

/* ---------- accesibilidad / SEO ---------- */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.6rem;margin-top:2.4rem;font-size:.88rem;font-weight:700}
.legal-links a{opacity:.85;text-decoration:underline;text-underline-offset:3px}
footer address a{text-decoration:none}

/* ---------- páginas legales ---------- */
.lhero{position:relative;padding:8.5rem 0 3.6rem;color:#fff;text-align:center;background:linear-gradient(135deg,var(--navy2),var(--navy) 55%,var(--green));overflow:hidden}
.lhero h1{font-size:clamp(2rem,5.4vw,3.6rem);margin:.6rem 0 .4rem}
.lhero p{opacity:.85;font-size:.95rem}
.legal{background:var(--cream);padding:3rem 0 5rem}
.legal article{width:min(820px,92%);margin:auto;background:#fff;border-radius:24px;padding:clamp(1.4rem,4vw,3rem);box-shadow:0 20px 50px #4b6e5a14;font-size:1rem;line-height:1.7}
.legal article h2{font-size:clamp(1.35rem,3vw,1.7rem);color:var(--navy);margin:2.2rem 0 .7rem;scroll-margin-top:90px}
.legal article h2:first-child{margin-top:0}
.legal article h3{font-family:var(--sans);font-size:1.05rem;color:var(--navy2);margin:1.4rem 0 .4rem}
.legal article p,.legal article li{margin-bottom:.7rem;overflow-wrap:anywhere}
.legal article ul,.legal article ol{padding-left:1.3rem;margin-bottom:1rem}
.legal article a{color:var(--green2);font-weight:700;text-decoration:underline}
.legal .toc{background:var(--cream);border-radius:16px;padding:1rem 1.3rem;margin-bottom:1.6rem}
.legal .toc ol{margin:0;columns:2;column-gap:2rem}
.legal .toc li{margin:.15rem 0;break-inside:avoid}
.legal .note{background:#f4be8433;border-left:4px solid var(--gold);padding:.9rem 1.1rem;border-radius:10px;margin:1.2rem 0}
.legal table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.92rem}
.legal th,.legal td{border:1px solid #4b6e5a22;padding:.6rem .7rem;text-align:left;vertical-align:top}
.legal th{background:var(--cream)}
.tbl{overflow-x:auto}
.simple-foot{background:var(--navy2);color:#fff;padding:2.2rem 0 1.4rem;text-align:center}
.simple-foot .legal-links{margin-top:0}
.simple-foot .copy{margin-top:1.2rem}
@media(max-width:700px){.legal .toc ol{columns:1}.lhero{padding:7rem 0 2.6rem}}

/* ---------- aviso de cookies ---------- */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:130;max-width:560px;margin:auto;background:#fff;color:var(--ink);border-radius:18px;padding:1rem 1.2rem;box-shadow:0 18px 50px #0003;display:flex;gap:1rem;align-items:center;font-size:.88rem;line-height:1.45;translate:0 140%;transition:translate .5s cubic-bezier(.2,.9,.3,1)}
.cookie.on{translate:0 0}
.cookie a{color:var(--green2);font-weight:800;text-decoration:underline}
.cookie button{flex:none;background:var(--navy);color:#fff;border:0;border-radius:99px;padding:.7rem 1.2rem;font:inherit;font-weight:800;cursor:pointer}
@media(max-width:520px){.cookie{flex-direction:column;align-items:stretch;text-align:left;bottom:84px}.cookie button{width:100%}}
@media(max-width:700px){footer,.simple-foot{padding-bottom:5.5rem}}
