header{max-width:none;width:100%;padding-inline:max(32px,calc((100% - 1180px)/2 + 32px))}.store-page header nav [aria-current]{color:#ffdf52}.store-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:26px 70px;padding:64px 0 56px;border-bottom:1px solid #e6dfcd}.store-intro>.eyebrow{grid-column:1/-1;margin:0;color:#776000}.store-intro h1{font-size:clamp(44px,5.5vw,68px)}.store-welcome{align-self:end;padding-bottom:6px}.store-welcome>p{font-size:17px;line-height:1.8;color:#655f69;max-width:380px}.store-cta{display:inline-block;padding:15px 22px;background:#ffdf52;border-radius:12px;font-weight:600;text-decoration:none;margin:12px 0 20px}.store-cta:hover{background:#f1cd30}.portfolio-link{display:block;width:fit-content;font-size:13px;text-underline-offset:4px}.store-catalog{padding:38px 0;scroll-margin-top:20px}.catalog-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:26px}.catalog-heading .eyebrow{color:#806800}.catalog-heading h2{font-size:36px;margin:8px 0 0}.catalog-heading>p{font-size:14px;color:#706975}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{border:1px solid #e6dfcd;border-radius:20px;background:white;overflow:hidden}.product-link{display:block;height:100%;text-decoration:none}.product-link:focus-visible{outline-offset:-4px}.product-card:hover{border-color:#bca140;box-shadow:0 8px 28px #51440c0d}.product-picture{position:relative;background:#fff0af}.product-picture img{width:100%;height:auto;display:block;aspect-ratio:1599/899;object-fit:contain}.product-badge{position:absolute;top:12px;left:12px;background:#ffdf52;color:#302916;padding:7px 11px;border-radius:20px;font-size:11px;font-weight:600}.product-copy{padding:24px}.product-category{font-size:10px;letter-spacing:1.5px;color:#806800;margin:0 0 12px}.product-copy h3{font-size:24px;line-height:1.25;margin:0 0 12px}.product-description{font-size:14px;color:#706975;line-height:1.6}.product-price{display:flex;align-items:baseline;gap:10px;margin:22px 0 8px}.product-price strong{font-size:32px;font-family:Outfit,sans-serif}.product-price small{font-size:12px}.product-price>span{font-size:12px;color:#706975}.product-offer{font-size:12px;background:#fff6d3;border-radius:8px;padding:10px;margin:0}.product-options{font-size:11px;line-height:1.7;color:#706975;margin:16px 0}.product-action{display:block;text-align:center;background:#ffdf52;padding:14px 8px;border-radius:10px;font-size:14px;font-weight:600}.catalog-note{font-size:12px;line-height:1.7;color:#706975;max-width:560px;margin-top:22px}.store-visit{display:flex;justify-content:space-between;align-items:center;gap:28px;background:#fff7d7;border-radius:20px;padding:30px;margin:12px 0 56px}.store-visit h2{margin:10px 0;font-size:28px}.store-visit p:not(.eyebrow){font-size:14px;line-height:1.7;color:#706975;max-width:480px}.store-visit>a{font-size:14px;font-weight:600;text-underline-offset:4px;white-space:nowrap}@media(max-width:980px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.store-intro{gap:24px 35px}}@media(max-width:600px){header{padding:20px}.store-intro{grid-template-columns:1fr;padding:40px 0 30px;gap:16px}.store-intro h1{font-size:46px}.store-welcome>p{font-size:15px;margin-top:0}.product-grid{grid-template-columns:1fr}.catalog-heading{display:block}.catalog-heading>p{margin-top:12px}.store-visit{display:block;padding:24px}.store-visit>a{display:inline-block;margin-top:14px}.product-copy{padding:22px}}
/* Inicio de tienda: búsqueda, banners y catálogo. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.store-page{background:#f4f3f6}.store-page .shop-header{display:grid;grid-template-columns:220px minmax(0,1fr) 210px;gap:20px 28px;padding-block:22px 16px;background:#ffdf52;color:#29242d;border:0}.shop-header .wordmark{color:#29242d}.shop-header .wordmark>span{color:#633fa1}.store-page .shop-header nav{grid-column:1/3;display:flex;flex-wrap:wrap;gap:26px}.store-page .shop-header nav a{color:#39302b;text-decoration:none;font-size:13px}.store-page .shop-header nav [aria-current]{color:#29242d;font-weight:700;border-bottom:2px solid #633fa1;padding-bottom:5px}.shop-location{font-size:12px;line-height:1.7;margin:0}.header-note{font-size:11px;text-align:right}.shop-search{display:flex;align-items:center;padding:0;background:#fff;border:1px solid #d1bb66;border-radius:8px;box-shadow:0 2px 5px #70580012;overflow:hidden}.shop-search input{margin:0;padding:14px 16px;min-height:48px;border:0;border-radius:0;background:transparent;flex:1;width:0;outline-offset:-4px}.shop-search button{border:0;border-left:1px solid #eee;background:white;color:#633fa1;min-width:50px;min-height:44px;display:grid;place-items:center}.shop-search svg{width:23px;height:23px}.store-page main{padding-top:24px}.shop-banner{position:relative;overflow:hidden;border-radius:16px;background:#e7e0ef}.banner-slide{height:310px;display:grid;place-items:center;position:relative;overflow:hidden}.banner-slide:before,.banner-slide:after{content:'';position:absolute;border:1px solid #ffffff70;border-radius:50%;width:420px;height:420px;right:-80px;top:-220px;pointer-events:none}.banner-slide:after{width:320px;height:320px;left:-110px;top:auto;bottom:-240px;right:auto}.banner-one{background:linear-gradient(115deg,#eee6f8,#dacbe9);color:#634781}.banner-two{background:linear-gradient(115deg,#fff4c6,#f1df96);color:#826c28}.banner-three{background:linear-gradient(115deg,#dff2ed,#bcded3);color:#416f61}.banner-slide>span{font-family:Outfit,sans-serif;font-size:clamp(34px,5vw,60px);font-weight:500;letter-spacing:-1px}.banner-slide>img{display:block;width:100%;height:100%;object-fit:cover}.banner-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:64px;border:0;background:#ffffffde;color:#633fa1;font-size:34px;line-height:1}.banner-prev{left:0;border-radius:0 10px 10px 0}.banner-next{right:0;border-radius:10px 0 0 10px}.banner-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex}.banner-dots button{width:32px;height:32px;display:grid;place-items:center;background:transparent;border:0;padding:0}.banner-dots button:after{content:'';width:7px;height:7px;border-radius:50%;background:#ffffffa8;border:1px solid #675274}.banner-dots button[aria-pressed=true]:after{background:#633fa1;width:9px;height:9px}.store-catalog{padding-top:30px}.catalog-heading{margin-bottom:20px}.catalog-heading h2{font-size:29px}.catalog-heading .eyebrow{font-size:10px;letter-spacing:1.5px;color:#7d7188}.product-card{border-color:#e4e0e9;border-radius:12px}.product-copy{padding:22px}.store-visit{background:#eae3f2}.empty-search{background:#fff;border:1px solid #e4e0e9;border-radius:12px;padding:28px}.empty-search p{font-size:14px;color:#706975}.empty-search button{background:#ffdf52;border:0;border-radius:8px;padding:13px 18px;font:inherit}.store-page footer{max-width:none;padding-inline:max(32px,calc((100% - 1180px)/2 + 32px))}
@media(max-width:980px){.store-page .shop-header{grid-template-columns:190px minmax(0,1fr);gap:16px 24px}.shop-location{display:none}.store-page .shop-header nav{grid-column:1}.header-note{text-align:right}.banner-slide{height:280px}}
@media(max-width:600px){.store-page .shop-header{grid-template-columns:1fr;padding:18px;gap:16px}.shop-header .brand{font-size:28px}.shop-search{grid-row:2}.store-page .shop-header nav{gap:24px}.header-note{display:none}.store-page main{padding-top:16px}.shop-banner{border-radius:12px}.banner-slide{height:220px}.banner-arrow{width:36px;height:54px}.catalog-heading{display:flex;align-items:end;gap:12px}.catalog-heading h2{font-size:25px}.catalog-heading>p{font-size:11px;max-width:90px;text-align:right;margin:0}.catalog-heading .eyebrow{font-size:8px;letter-spacing:1px}.store-page footer{padding:22px 18px}}
/* Encabezado con el color original de la marca. */
.store-page .shop-header{background:#28242e;color:#fff}
.shop-header .wordmark{color:#fff}
.shop-header .wordmark>span{color:#b998ed}
.store-page .shop-header nav a{color:#e8e3ed}
.store-page .shop-header nav [aria-current]{color:#ffdf52;border-bottom-color:#b998ed}
.shop-search{border-color:#ded6e8}
/* Banner de borde a borde; el catálogo conserva su ancho de lectura. */
.store-page main{max-width:none;padding:0}
.store-page .shop-banner{width:100%;border-radius:0}
.store-page .store-catalog{max-width:1180px;margin-inline:auto;padding-inline:32px}
.store-page .store-visit{max-width:1116px;margin-inline:auto}
@media(max-width:1180px){.store-page .store-visit{margin-inline:32px}}
@media(max-width:600px){.store-page .store-catalog{padding-inline:18px}.store-page .store-visit{margin-inline:18px}}
/* El carrusel anima la entrada y salida horizontal con Web Animations. */
.shop-banner{display:grid;isolation:isolate}
.banner-slide{grid-area:1 / 1;visibility:hidden;pointer-events:none}
.banner-slide.is-active{visibility:visible;pointer-events:auto}
.banner-slide.is-leaving{visibility:visible}
.banner-arrow,.banner-dots{z-index:2}
@media(prefers-reduced-motion:reduce){.banner-slide{transition:none}}
/* Cobertura de entrega visible también en pantallas pequeñas. */
.shop-location{text-align:right}
@media(max-width:980px){.shop-location{display:block;grid-column:2;grid-row:2}.store-page .shop-header nav{grid-row:2}.header-note{grid-column:1 / -1}}
@media(max-width:600px){.shop-location{grid-column:1;grid-row:3;text-align:right;font-size:11px;margin:0}.store-page .shop-header nav{grid-row:4}}
/* Las vistas comparten el mismo encabezado y pie de página. */
.content-view{max-width:1180px;margin-inline:auto;padding:0 32px 32px}
@media(max-width:600px){.content-view{padding-inline:18px}}
/* Acento morado y aviso de cobertura con ubicación. */
.portfolio-intro h1 em{color:#7950ad}
.shop-location{display:flex;align-items:center;gap:10px;text-align:left;line-height:1.45}
.shop-location>svg{width:24px;height:28px;flex:0 0 24px;color:#c4a4eb}
.shop-location .location-label{display:block;color:#d4cbdc;font-size:11px;font-weight:400;margin-bottom:3px}
.shop-location strong{display:block;color:#fff;font-size:12px;font-weight:600}
@media(max-width:600px){.shop-location{justify-self:end;text-align:left}}

/* En móvil, la cobertura aparece debajo de la marca y antes del buscador. */
@media(max-width:600px){
 .store-page .shop-header .brand{grid-column:1;grid-row:1}
 .store-page .shop-header .shop-location{grid-column:1;grid-row:2;justify-self:start}
 .store-page .shop-header .shop-search{grid-column:1;grid-row:3}
 .store-page .shop-header nav{grid-column:1;grid-row:4}
}
/* El carrusel conserva la proporción de los diseños y evita recortes. */
.shop-banner .banner-slide{height:auto;aspect-ratio:24/5;width:100%}
.banner-one{background:#fff}
.banner-one:before,.banner-one:after{display:none}
.banner-slide>picture{display:block;width:100%;height:100%;min-height:0}
.banner-slide>picture>img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:760px){.shop-banner .banner-slide{aspect-ratio:16/9}}
/* En móvil, las flechas quedan en el margen inferior, fuera del texto. */
@media(max-width:760px){.shop-banner .banner-arrow{top:auto;bottom:0;transform:none;height:34px;width:34px;background:#ffffffc9;font-size:26px}.shop-banner .banner-dots{bottom:0}}
