/* Plantilla Web — estilos. Todo va con prefijo .pw- para no chocar con el tema. */
:root{--pw-accent:#2f5d50;--pw-ink:#1a1d1b;--pw-muted:#5d645f;--pw-line:#e3e6e2;--pw-bg:#f6f7f5;
--pw-head:"Newsreader",Georgia,serif;--pw-body:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif}
.pw,.pw-hero,.pw-sec{font-family:var(--pw-body);color:var(--pw-ink);line-height:1.55;box-sizing:border-box}
.pw *,.pw-hero *,.pw-sec *{box-sizing:border-box}
.pw-wrap{max-width:1180px;margin:0 auto;padding:0 clamp(18px,4vw,40px)}
.pw-sec{padding:clamp(40px,6vw,76px) 0}
.pw-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}
.pw-h2{margin:0;font:500 clamp(1.7rem,3.2vw,2.4rem)/1.15 var(--pw-head);color:var(--pw-ink)}
.pw-sub{margin:6px 0 0;color:var(--pw-muted)}
.pw-notice{padding:12px 16px;border:1px dashed var(--pw-line);color:var(--pw-muted);margin:0}

.pw-btn{display:inline-block;padding:13px 28px;border-radius:999px;border:1px solid var(--pw-accent);background:var(--pw-accent);color:#fff;font-weight:600;font-size:.95rem;text-decoration:none;line-height:1.2;transition:transform .2s,box-shadow .2s}
.pw-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.22);color:#fff}
.pw-btn--line{background:transparent;border-color:rgba(255,255,255,.75)}

/* Banner */
.pw-hero{position:relative;width:100%;height:var(--pw-hero-h,560px);overflow:hidden;background:#1c2421;color:#fff}
.pw-hero__slide{position:absolute;inset:0;display:flex;align-items:center;background-color:var(--pw-accent);background-image:linear-gradient(135deg,var(--pw-accent),#1c2421);background-size:cover;background-position:center;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s}
.pw-hero__slide.is-active{opacity:1;visibility:visible}
.pw-hero__slide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,16,13,.74) 0%,rgba(10,16,13,.38) 55%,rgba(10,16,13,.08) 100%)}
.pw-hero__inner{position:relative;width:100%;max-width:1180px;margin:0 auto;padding:0 clamp(18px,4vw,40px)}
.pw-hero__eyebrow{margin:0 0 14px;font-size:.98rem;font-weight:500;opacity:.92;color:#fff}
.pw-hero__title{margin:0 0 16px;max-width:17ch;font:400 clamp(2.2rem,5.4vw,4.2rem)/1.04 var(--pw-head);letter-spacing:-.01em;color:#fff}
.pw-hero__title em{font-style:italic}
.pw-hero__text{margin:0 0 28px;max-width:46ch;font-size:clamp(1rem,1.5vw,1.15rem);color:#fff}
.pw-hero__btns{display:flex;gap:12px;flex-wrap:wrap}
.pw-hero__nav{position:absolute;left:0;right:0;bottom:22px;z-index:3;max-width:1180px;margin:0 auto;padding:0 clamp(18px,4vw,40px);display:flex;align-items:center;gap:16px}
.pw-hero__count{font:400 1rem var(--pw-head);color:#fff;opacity:.9}
.pw-hero__bars{display:flex;gap:8px}
.pw-hero__bars button{width:44px;height:14px;padding:0;border:0;background:none;cursor:pointer;position:relative}
.pw-hero__bars button::before{content:"";position:absolute;left:0;right:0;top:6px;height:2px;background:rgba(255,255,255,.4)}
.pw-hero__bars i{position:absolute;left:0;top:6px;height:2px;width:0;background:#fff}
.pw-hero__bars button.is-active i{width:100%}

/* Beneficios */
.pw-benefits{padding:clamp(28px,4vw,48px) 0}
.pw-benefits__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px}
.pw-benefit{border-top:2px solid var(--pw-accent);padding-top:12px}
.pw-benefit b{display:block;font-weight:600}
.pw-benefit span{color:var(--pw-muted);font-size:.93rem}

/* Categorías */
.pw-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.pw-cat{display:block;border:1px solid var(--pw-line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--pw-ink);background:#fff;transition:box-shadow .25s,transform .25s}
.pw-cat:hover{box-shadow:0 10px 26px rgba(0,0,0,.1);transform:translateY(-3px)}
.pw-cat__img{display:block;aspect-ratio:4/3;background:color-mix(in srgb,var(--pw-accent) 12%,#fff)}
.pw-cat__img img{width:100%;height:100%;object-fit:cover;display:block}
.pw-cat__body{display:block;padding:14px 16px}
.pw-cat__body b{display:block;font-weight:600}
.pw-cat__body small{color:var(--pw-muted)}

/* Productos (slider) */
.pw-arrows{display:flex;gap:8px}
.pw-arrows button{width:42px;height:42px;border-radius:50%;border:1px solid var(--pw-line);background:#fff;color:var(--pw-ink);font-size:1.5rem;line-height:1;cursor:pointer;padding:0}
.pw-arrows button:hover{border-color:var(--pw-accent);color:var(--pw-accent)}
.pw-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 14px;outline-offset:4px}
.pw-track::-webkit-scrollbar{display:none}
.pw-card{flex:0 0 min(272px,78%);scroll-snap-align:start;background:#fff;border:1px solid var(--pw-line);border-radius:18px;overflow:hidden;transition:box-shadow .25s,transform .25s}
.pw-card:hover{box-shadow:0 12px 30px rgba(0,0,0,.12);transform:translateY(-4px)}
.pw-card__img{position:relative;display:block;aspect-ratio:4/5;background:color-mix(in srgb,var(--pw-accent) 10%,#fff);overflow:hidden}
.pw-card__img img{width:100%;height:100%;object-fit:cover;display:block}
.pw-card__tag{position:absolute;left:12px;top:12px;background:#fff;color:var(--pw-accent);font-size:.78rem;font-weight:600;padding:4px 11px;border-radius:999px}
.pw-card__body{padding:14px 16px 16px}
.pw-card__cat{display:block;color:var(--pw-muted);font-size:.85rem}
.pw-card__name{display:block;margin:2px 0 8px;color:var(--pw-ink);font-weight:500;text-decoration:none}
.pw-card__row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pw-card__price{font:500 1.25rem var(--pw-head);color:var(--pw-ink)}
.pw-card__price del{opacity:.5;font-size:.9em}
.pw-card__price ins{text-decoration:none}
.pw-card__add{flex:none;width:38px;height:38px;border-radius:50%;background:color-mix(in srgb,var(--pw-accent) 14%,#fff);color:var(--pw-accent);display:grid;place-items:center;font-size:1.4rem;line-height:1;text-decoration:none;transition:background .2s,color .2s}
.pw-card__add:hover{background:var(--pw-accent);color:#fff}
.pw-card__add.loading{opacity:.5}
.pw-card__add.added{background:var(--pw-accent);color:#fff}
.pw-card .added_to_cart{display:none}
.pw-card__wa{display:block;margin-top:10px;font-size:.88rem;color:var(--pw-accent);text-decoration:none}
.pw-card__wa:hover{text-decoration:underline}
.pw-progress{height:2px;background:var(--pw-line);margin-top:8px;border-radius:2px;overflow:hidden}
.pw-progress span{display:block;height:100%;width:20%;background:var(--pw-accent);transition:width .15s}

/* Pasos */
.pw-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px;counter-reset:pw}
.pw-steps li{counter-increment:pw}
.pw-steps li::before{content:counter(pw);display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--pw-accent);color:#fff;font-weight:600;margin-bottom:12px}
.pw-steps b{display:block;font-weight:600}
.pw-steps span{color:var(--pw-muted);font-size:.93rem}

/* WhatsApp flotante */
.pw-wa-float{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:9990;width:54px;height:54px;border-radius:50%;background:#25a15a;color:#fff;display:grid;place-items:center;box-shadow:0 8px 22px rgba(0,0,0,.25)}
.pw-wa-float:hover{color:#fff;filter:brightness(1.08)}

.pw button:focus-visible,.pw a:focus-visible,.pw-hero button:focus-visible,.pw-hero a:focus-visible,.pw-sec button:focus-visible,.pw-sec a:focus-visible,.pw-wa-float:focus-visible{outline:3px solid var(--pw-accent);outline-offset:3px}
.pw-hero button:focus-visible,.pw-hero a:focus-visible{outline-color:#fff}

@media (max-width:640px){
	.pw-hero__slide::before{background:rgba(10,16,13,.58)}
	.pw-hero__title{max-width:none}
	.pw-head{align-items:flex-start;flex-direction:column;gap:14px}
}
@media (prefers-reduced-motion:reduce){
	.pw-hero__slide,.pw-btn,.pw-cat,.pw-card,.pw-progress span{transition:none}
}
