.zp-main{flex:1;width:100%}
.zp-container{width:100%;max-width:calc(var(--zp-container) + var(--zp-pad)*2);margin-inline:auto;padding-inline:var(--zp-pad)}

/* ---------- Header ---------- */
.zp-header{position:sticky;top:0;z-index:100;background:rgba(5,5,9,.88);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--zp-line)}
.zp-header__bar{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"menu brand actions" "search search search";align-items:center;gap:.5rem .75rem;padding-block:.625rem}
.zp-menu-toggle{grid-area:menu}
.zp-brand{grid-area:brand;display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--zp-text);justify-self:start}
.zp-brand__mark{width:2.5rem;height:auto}
.zp-brand__word{font:800 1.375rem/1 var(--zp-font-display);letter-spacing:.02em}
.zp-brand__plus{color:var(--zp-cyan)}
.zp-search{grid-area:search}
.zp-header__actions{grid-area:actions;display:flex;gap:.25rem}

.zp-iconbtn,.zp-action{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;min-width:2.75rem;padding:0 .625rem;color:var(--zp-text);background:transparent;border:0;border-radius:var(--zp-r-m);text-decoration:none;position:relative;transition:background .15s}
.zp-iconbtn:hover,.zp-action:hover{background:var(--zp-surface-2);color:#fff}
.zp-action__text{display:none;font-size:var(--zp-fs-sm);font-weight:500}
.zp-menu-toggle__close{display:none}
.zp-menu-toggle[aria-expanded="true"] .zp-menu-toggle__open{display:none}
.zp-menu-toggle[aria-expanded="true"] .zp-menu-toggle__close{display:block}
.zp-cart-count{position:absolute;top:.15rem;right:.1rem;min-width:1.125rem;height:1.125rem;padding:0 .3rem;border-radius:999px;background:var(--zp-btn);color:#fff;font:700 .6875rem/1.125rem var(--zp-font-body);text-align:center}
.zp-cart-count.is-empty{display:none}

.zp-search{position:relative;display:flex;align-items:center}
.zp-search__icon{position:absolute;left:.875rem;color:var(--zp-muted);pointer-events:none}
.zp-search__input{width:100%;min-height:2.75rem;padding:0 1rem 0 2.75rem;background:var(--zp-surface);border:1px solid var(--zp-line);border-radius:999px;color:var(--zp-text);transition:border-color .15s,box-shadow .15s}
.zp-search__input::placeholder{color:var(--zp-muted)}
.zp-search__input:hover{border-color:var(--zp-line-strong)}
.zp-search__input:focus{border-color:var(--zp-cyan);box-shadow:var(--zp-ring)}
.zp-search__submit{position:absolute;right:.25rem;min-height:2.25rem;padding:0 1rem;border:0;border-radius:999px;background:var(--zp-surface-2);color:var(--zp-text);font-size:var(--zp-fs-sm);font-weight:600;display:none}
.zp-search__submit:hover{background:var(--zp-line)}

/* Nav: móvil = panel; sin JS queda visible */
.zp-nav{border-top:1px solid var(--zp-line)}
.js .zp-nav{display:none}
.js .zp-header.is-open .zp-nav{display:block}
.zp-nav__list{list-style:none;display:flex;flex-direction:column;padding-block:.5rem}
.zp-nav__list a{display:flex;align-items:center;min-height:2.75rem;padding:0 .25rem;color:var(--zp-text);text-decoration:none;font-weight:500;border-radius:var(--zp-r-s)}
.zp-nav__list a:hover{color:var(--zp-cyan)}
.zp-nav__list .current-menu-item>a,.zp-nav__list [aria-current]{color:var(--zp-cyan)}

@media (min-width:48em){
  .zp-action__text{display:inline}
  .zp-search__submit{display:inline-flex;align-items:center}
  .zp-search__input{padding-right:5.5rem}
}
@media (min-width:62em){
  .zp-header__bar{grid-template-columns:auto minmax(18rem,34rem) auto;grid-template-areas:"brand search actions";justify-content:space-between;gap:1.5rem}
  .zp-menu-toggle{display:none}
  .js .zp-nav,.js .zp-header.is-open .zp-nav{display:block}
  .zp-nav{border-top:0;border-bottom:0}
  .zp-nav__list{flex-direction:row;gap:.25rem;padding-block:0 .5rem}
  .zp-nav__list a{padding:0 .875rem;font-size:var(--zp-fs-sm);color:var(--zp-muted)}
  .zp-nav__list a:hover{background:var(--zp-surface-2);color:#fff}
}

/* ---------- Secciones ---------- */
.zp-section{padding-block:var(--zp-section) 0}
.zp-section--empty{padding-block:1.5rem 0}
.zp-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}
.zp-section__title{font-size:var(--zp-fs-h2);margin:0}
.zp-more{display:inline-flex;align-items:center;gap:.375rem;white-space:nowrap;font-size:var(--zp-fs-sm);font-weight:600;text-decoration:none}
.zp-more .zp-icon{width:1rem;height:1rem;transition:transform .2s var(--zp-ease)}
.zp-more:hover .zp-icon{transform:translateX(3px)}
.zp-empty{padding:1rem 1.25rem;border:1px dashed var(--zp-line-strong);border-radius:var(--zp-r-m);color:var(--zp-muted);font-size:var(--zp-fs-sm)}

/* Grilla de productos: carril horizontal en móvil, grilla desde tablet */
.zp-grid{list-style:none;display:grid;gap:var(--zp-gap)}
.zp-rail{grid-auto-flow:column;grid-auto-columns:minmax(15rem,78%);overflow-x:auto;scroll-snap-type:x proximity;padding:.25rem var(--zp-pad) 1rem;margin-inline:calc(var(--zp-pad)*-1);scrollbar-width:thin;scrollbar-color:var(--zp-line-strong) transparent}
.zp-rail>.zp-grid__item{scroll-snap-align:start}
.zp-grid__item{min-width:0;display:flex}
@media (min-width:40em){
  .zp-grid,.zp-rail{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;padding:0;margin-inline:0}
}
@media (min-width:62em){.zp-grid,.zp-rail{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:40em) and (max-width:61.99em){.zp-grid.products{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---------- Hero ---------- */
.zp-hero{position:relative;overflow:hidden;padding-block:clamp(2.5rem,1rem + 6vw,6rem) 0;isolation:isolate}
.zp-hero::before{content:"";position:absolute;z-index:-1;right:-10%;top:-20%;width:min(70rem,120vw);aspect-ratio:1;background:radial-gradient(closest-side,rgba(138,63,252,.38),rgba(47,123,255,.12) 55%,transparent 72%)}
.zp-hero__inner{display:grid;gap:2rem;align-items:center}
.zp-hero__title{font-size:var(--zp-fs-h1);font-weight:800;letter-spacing:-.035em;margin:0 0 .4em;max-width:13ch}
.zp-hero__lead{font-size:var(--zp-fs-lg);color:var(--zp-muted);max-width:34rem;margin:0 0 1.75rem}
.zp-hero__cta{display:flex;flex-wrap:wrap;gap:.75rem}
.zp-hero__visual{justify-self:center;width:min(78%,24rem)}
.zp-hero__visual img{width:100%;filter:drop-shadow(0 20px 60px rgba(138,63,252,.45));animation:zp-rise .9s var(--zp-ease) both}
@keyframes zp-rise{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@media (min-width:56em){
  .zp-hero__inner{grid-template-columns:1.1fr .9fr;gap:3rem}
  .zp-hero__visual{width:min(100%,34rem);justify-self:end}
}

/* ---------- Beneficios ---------- */
.zp-benefits{list-style:none;display:grid;gap:0;margin-top:1.5rem;border-top:1px solid var(--zp-line)}
.zp-benefit{display:grid;grid-template-columns:auto 1fr;column-gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--zp-line)}
.zp-benefit__icon{grid-row:span 2;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:var(--zp-r-m);background:var(--zp-surface-2);color:var(--zp-cyan)}
.zp-benefit__title{font-size:var(--zp-fs-h3);margin:0 0 .25rem}
.zp-benefit__text{margin:0;color:var(--zp-muted);font-size:var(--zp-fs-sm);max-width:36ch}
@media (min-width:56em){
  .zp-benefits{grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--zp-line)}
  .zp-benefit{grid-template-columns:1fr;padding:1.75rem 1.5rem 1.75rem 0;border-bottom:0}
  .zp-benefit+.zp-benefit{padding-left:1.5rem;border-left:1px solid var(--zp-line)}
  .zp-benefit__icon{grid-row:auto;margin-bottom:1rem}
}

/* ---------- FAQ ---------- */
.zp-faq{max-width:calc(52rem + var(--zp-pad)*2)}
.zp-faq__list{margin-top:1.25rem;border-top:1px solid var(--zp-line)}
.zp-faq__item{border-bottom:1px solid var(--zp-line)}
.zp-faq__item summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:3.5rem;padding:.75rem 0;cursor:pointer;list-style:none;font-weight:600}
.zp-faq__item summary::-webkit-details-marker{display:none}
.zp-faq__item summary:hover{color:var(--zp-cyan)}
.zp-faq__chev{transition:transform .2s var(--zp-ease);color:var(--zp-muted)}
.zp-faq__item[open] .zp-faq__chev{transform:rotate(180deg);color:var(--zp-cyan)}
.zp-faq__item p{margin:0 0 1.25rem;color:var(--zp-muted);max-width:62ch}

/* ---------- Footer ---------- */
.zp-footer{margin-top:var(--zp-section);border-top:1px solid var(--zp-line);background:linear-gradient(180deg,transparent,rgba(138,63,252,.07))}
.zp-footer__grid{display:grid;gap:2rem;padding-block:3rem 2rem}
.zp-footer__about p{margin:1rem 0 0;color:var(--zp-muted);max-width:30ch;font-size:var(--zp-fs-sm)}
.zp-footer__title{font:600 var(--zp-fs-sm)/1.2 var(--zp-font-display);margin:0 0 .75rem;color:var(--zp-text)}
.zp-footer__col ul{list-style:none}
.zp-footer__col a{display:inline-block;padding:.3rem 0;color:var(--zp-muted);text-decoration:none;font-size:var(--zp-fs-sm)}
.zp-footer__col a:hover{color:var(--zp-cyan)}
.zp-footer__legal{padding-block:1.25rem 2rem;border-top:1px solid var(--zp-line);color:var(--zp-muted);font-size:var(--zp-fs-xs)}
.zp-footer__legal p{margin:0}
@media (min-width:48em){.zp-footer__grid{grid-template-columns:1.4fr 1fr 1fr}}

/* ---------- Páginas genéricas ---------- */
.zp-page{padding-block:clamp(1.5rem,1rem + 2vw,3rem) 0}
.zp-page--center{text-align:center;padding-block:5rem}
.zp-page__title{font-size:var(--zp-fs-h2);margin-bottom:1rem}
.zp-page__meta{color:var(--zp-muted);font-size:var(--zp-fs-sm)}
.zp-prose{max-width:100%}
.zp-prose>*:where(p,ul,ol,h2,h3,blockquote){max-width:70ch}
.zp-prose ul,.zp-prose ol{padding-left:1.25rem;margin-bottom:1em}
.zp-posts{display:grid;gap:1.5rem}
.zp-post__title{font-size:var(--zp-fs-h3)}
.zp-post__title a{color:var(--zp-text);text-decoration:none}
.zp-post__title a:hover{color:var(--zp-cyan)}
.navigation.pagination{margin-top:2rem}
.page-numbers{display:inline-flex;min-width:2.5rem;min-height:2.5rem;align-items:center;justify-content:center;border-radius:var(--zp-r-s);color:var(--zp-text);text-decoration:none}
.page-numbers.current{background:var(--zp-btn)}
