/*
 * Catálogo 2030 — capa evolutiva compartida.
 * Mantiene la lógica actual y eleva jerarquía, movimiento, accesibilidad y móvil.
 */
@media (prefers-reduced-motion:no-preference){
  .storefront-hero,.trust-rail,.booking-notice,.service-discovery,.catalog-section-heading,.commerce-card{animation:catalog-reveal .62s cubic-bezier(.2,.7,.2,1) both}
  .trust-rail{animation-delay:.06s}.booking-notice{animation-delay:.1s}.service-discovery{animation-delay:.14s}.catalog-section-heading{animation-delay:.18s}
  .commerce-card:nth-child(2n){animation-delay:.05s}.commerce-card:nth-child(3n){animation-delay:.1s}
  @keyframes catalog-reveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
}

/* Mantiene la fotografia del producto clara y fiel al pasar el cursor. */
.commerce-media::after {
  display: none !important;
}

.commerce-card .commerce-media img,
.commerce-card:hover .commerce-media img {
  opacity: 1 !important;
  filter: none !important;
}

.commerce-card:hover .commerce-media img {
  transform: scale(1.018);
}
.commerce-page{background:radial-gradient(circle at 8% 10%,color-mix(in srgb,var(--green) 9%,transparent),transparent 25rem),radial-gradient(circle at 92% 38%,color-mix(in srgb,var(--gold) 10%,transparent),transparent 28rem),var(--portal-bg,#f5f7f6)}
.commerce-page .topbar{border-bottom-color:color-mix(in srgb,var(--green) 12%,transparent)}
.commerce-page .brand span{border-radius:11px;box-shadow:0 8px 24px color-mix(in srgb,var(--green) 25%,transparent)}
.storefront-hero{border:1px solid rgba(255,255,255,.2)}
.storefront-status{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;padding:8px 11px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.1);backdrop-filter:blur(12px);font-size:11px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.storefront-status span{width:7px;height:7px;border-radius:50%;background:#7cf6b6;box-shadow:0 0 0 5px rgba(124,246,182,.13)}
.storefront-actions .button{border-radius:999px;min-height:48px;padding:0 20px;font-weight:850}
.service-discovery{margin:24px 0 8px;padding:18px;border:1px solid color-mix(in srgb,var(--green) 12%,#e7e9e8);border-radius:22px;background:rgba(255,255,255,.78);box-shadow:0 18px 50px rgba(16,24,40,.07);backdrop-filter:blur(18px);position:sticky;top:84px;z-index:11}
.service-search{display:grid;gap:7px}.service-search span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.service-search input{min-height:48px;padding:0 16px;border:1px solid color-mix(in srgb,var(--green) 18%,#d8dddb);border-radius:14px;background:rgba(255,255,255,.9);outline:none;transition:.18s}
.service-search input:focus{border-color:var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 12%,transparent)}
.service-categories{padding-bottom:4px}.service-discovery .filter-summary{margin:10px 0 0;padding:0;border:0;background:transparent;box-shadow:none;font-size:12px}
.service-card{content-visibility:auto;contain-intrinsic-size:430px}.service-card[hidden]{display:none}
.service-card .commerce-media:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(7,14,12,.22));z-index:1;pointer-events:none}.service-card .commerce-media em{z-index:2}
.service-card .commerce-buy{margin-top:auto}.book-button{position:relative;overflow:hidden}.book-button:after{content:"→";margin-left:8px;transition:transform .18s}.book-button:hover:after{transform:translateX(3px)}
.booking-dialog{border:1px solid color-mix(in srgb,var(--green) 12%,#fff);box-shadow:0 40px 110px rgba(8,18,15,.32)}.booking-dialog input,.booking-dialog textarea{border-radius:12px}
@media(max-width:600px){
  .commerce-page .topbar{position:relative}.commerce-page .topbar .brand{font-size:14px}.storefront-hero{padding-top:26px}.storefront-status{margin-bottom:14px}.storefront-logo{margin-bottom:14px}
  .storefront-main h1{font-size:clamp(36px,11vw,46px)}.storefront-copy{font-size:14px;line-height:1.48}.storefront-feature{height:190px}
  .trust-rail{display:flex;overflow:auto;scroll-snap-type:x mandatory;margin-top:-8px}.trust-rail>div{min-width:84%;scroll-snap-align:start;border-top:0!important}
  .booking-notice{margin-top:18px}.service-discovery{top:8px;margin:18px 0 4px;padding:12px;border-radius:18px}.service-search input{min-height:44px}.service-categories{margin:3px -2px 0}
  .catalog-section-heading{margin-top:22px}.catalog-section-heading p{font-size:14px}.commerce-card{grid-template-columns:116px minmax(0,1fr)}.commerce-link{grid-template-columns:116px minmax(0,1fr)}
  .commerce-media{min-height:148px}.commerce-info{padding-left:13px;padding-right:12px}.commerce-buy{padding-left:13px;padding-right:12px}.book-button{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.commerce-card,.commerce-media img,.book-button:after{transition:none!important}}

/* Editorial storefront */
.storefront-hero{isolation:isolate}.storefront-main{max-width:760px}.storefront-kicker{display:flex;align-items:center;gap:10px;letter-spacing:.14em}.storefront-kicker:before{content:"";width:28px;height:1px;background:currentColor}.storefront-main h1{letter-spacing:-.06em;text-wrap:balance}.storefront-copy{max-width:640px;text-wrap:pretty}.editorial-feature{padding:0!important;overflow:hidden;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(18px);transform:rotate(1.2deg);transition:transform .3s ease,box-shadow .3s ease}.editorial-feature:hover{transform:rotate(0) translateY(-5px);box-shadow:0 34px 78px rgba(0,0,0,.28)}.editorial-feature-link{display:block;color:inherit;text-decoration:none}.editorial-feature-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:color-mix(in srgb,var(--green) 10%,#fff)}.editorial-feature-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.editorial-feature:hover img{transform:scale(1.045)}.editorial-feature-media em{position:absolute;left:14px;top:14px;padding:7px 10px;border-radius:999px;background:#fff;color:var(--green);font-style:normal;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 25px rgba(0,0,0,.14)}.editorial-feature-copy{padding:18px 20px 20px}.editorial-feature-copy>span{display:block;color:var(--green);font-size:10px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.editorial-feature-copy h2{margin:7px 0 14px;font-size:25px;line-height:1.05;letter-spacing:-.035em}.editorial-feature-copy>div{display:flex;align-items:end;justify-content:space-between;gap:12px}.editorial-feature-copy strong{font-size:22px!important;margin:0!important;color:var(--green)}.editorial-feature-copy b{font-size:12px;color:var(--muted)}
.trust-rail{margin-top:18px;border-radius:18px;overflow:hidden;box-shadow:0 18px 50px rgba(16,24,40,.07)}.catalog-section-heading{margin-top:38px}.catalog-section-heading h2{font-size:clamp(36px,5vw,64px);letter-spacing:-.055em;line-height:.95;text-wrap:balance}.catalog-section-heading>p{max-width:440px;font-size:15px;line-height:1.65}.commerce-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:22px}.commerce-card{grid-column:span 4;border-radius:26px}.commerce-card-featured{grid-column:span 8;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr);grid-template-rows:1fr auto}.commerce-card-featured .commerce-link{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr);grid-column:1/-1}.commerce-card-featured .commerce-media{grid-column:1;grid-row:1/3;aspect-ratio:auto;min-height:430px}.commerce-card-featured .commerce-info{grid-column:2;justify-content:end;padding:34px 30px 18px}.commerce-card-featured .commerce-info h2{font-size:clamp(28px,3.3vw,44px);line-height:.98}.commerce-card-featured .commerce-info p{font-size:15px;line-height:1.65;max-height:none}.commerce-card-featured .commerce-buy{grid-column:2;padding:18px 30px 30px}.commerce-card-featured .commerce-buy strong{font-size:26px}.commerce-badge{position:absolute;right:14px;top:14px;z-index:2;padding:8px 11px;border-radius:999px;background:var(--green);color:#fff;font-size:10px;letter-spacing:.07em;text-transform:uppercase;box-shadow:0 10px 28px rgba(0,0,0,.2)}.commerce-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 64%,rgba(0,0,0,.16));pointer-events:none}.commerce-media em,.commerce-badge{z-index:2}
@media(max-width:1050px){.commerce-card{grid-column:span 6}.commerce-card-featured{grid-column:1/-1}}
@media(max-width:700px){.editorial-feature{transform:none}.commerce-grid{display:grid;grid-template-columns:1fr}.commerce-card,.commerce-card-featured{grid-column:1;display:grid;grid-template-columns:128px minmax(0,1fr);grid-template-rows:auto auto}.commerce-card-featured .commerce-link{display:grid;grid-template-columns:128px minmax(0,1fr);grid-column:1/-1}.commerce-card-featured .commerce-media{min-height:170px;grid-column:1;grid-row:1/3}.commerce-card-featured .commerce-info{grid-column:2;padding:17px 15px 8px;justify-content:start}.commerce-card-featured .commerce-info h2{font-size:18px;line-height:1.08}.commerce-card-featured .commerce-info p{font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.commerce-card-featured .commerce-buy{grid-column:2;padding:8px 15px 15px}.commerce-card-featured .commerce-buy strong{font-size:17px}.commerce-badge{display:none}}

/* Premium clean collection: product imagery first, no forced featured item. */
.premium-hero{grid-template-columns:minmax(0,820px)!important;align-content:center;min-height:620px;padding:clamp(42px,7vw,88px)!important}.premium-hero .storefront-main{max-width:780px}.premium-hero .editorial-feature{display:none!important}.premium-hero .storefront-main h1{font-size:clamp(58px,9vw,112px);max-width:900px}.premium-hero .storefront-copy{max-width:650px}.premium-hero:after{opacity:.35}.catalog-command{box-shadow:none;border-color:color-mix(in srgb,var(--green) 12%,#e5e7eb);background:rgba(255,255,255,.88)}.trust-rail{box-shadow:none;border:1px solid color-mix(in srgb,var(--green) 10%,#e5e7eb)}.catalog-section-heading{border-top:1px solid color-mix(in srgb,var(--green) 12%,#e5e7eb);padding-top:42px}.commerce-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 20px}.commerce-card,.commerce-card-featured{grid-column:auto;display:flex;flex-direction:column;min-width:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.commerce-card:hover{transform:none;box-shadow:none;border-color:transparent}.commerce-card .commerce-link,.commerce-card-featured .commerce-link{display:flex;flex-direction:column;flex:1}.commerce-card .commerce-media,.commerce-card-featured .commerce-media{grid-column:auto;grid-row:auto;aspect-ratio:4/5;min-height:0;border-radius:3px;background:#eee9e4}.commerce-card .commerce-info,.commerce-card-featured .commerce-info{grid-column:auto;justify-content:start;padding:16px 2px 5px}.commerce-card .commerce-info h2,.commerce-card-featured .commerce-info h2{font-size:18px;line-height:1.16;letter-spacing:-.025em;margin-bottom:7px}.commerce-card .commerce-info p,.commerce-card-featured .commerce-info p{font-size:13px;line-height:1.48;max-height:40px;color:color-mix(in srgb,var(--portal-ink) 60%,#fff);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.commerce-card .commerce-buy,.commerce-card-featured .commerce-buy{grid-column:auto;padding:8px 2px 0;border:0}.commerce-card .commerce-buy strong,.commerce-card-featured .commerce-buy strong{font-size:17px}.commerce-buy .add{min-height:38px;padding:0 15px;background:transparent!important;color:var(--green)!important;border:1px solid color-mix(in srgb,var(--green) 35%,transparent)!important;box-shadow:none!important}.commerce-buy .add:hover{background:var(--green)!important;color:#fff!important}.commerce-badge{display:none!important}

@media(min-width:901px){.premium-hero-with-featured{grid-template-columns:minmax(0,1fr) minmax(280px,360px)!important;gap:clamp(34px,5vw,72px);align-items:center}.premium-hero-with-featured .editorial-feature{display:block!important;transform:rotate(1deg)}.premium-hero-with-featured .editorial-feature:hover{transform:rotate(0) translateY(-4px)}}
@media(max-width:900px){.premium-hero .editorial-feature{display:none!important}}
@media(max-width:1000px){.commerce-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.premium-hero{min-height:560px;padding:48px 22px 34px!important}.premium-hero .storefront-main h1{font-size:clamp(48px,13vw,72px)}.commerce-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.commerce-card,.commerce-card-featured{display:flex;grid-template-columns:none;grid-template-rows:none}.commerce-card .commerce-link,.commerce-card-featured .commerce-link{display:flex;grid-template-columns:none}.commerce-card .commerce-media,.commerce-card-featured .commerce-media{aspect-ratio:4/5;min-height:0}.commerce-card .commerce-info,.commerce-card-featured .commerce-info{padding:12px 1px 4px}.commerce-card .commerce-info h2,.commerce-card-featured .commerce-info h2{font-size:15px}.commerce-card .commerce-info p,.commerce-card-featured .commerce-info p{display:none}.commerce-card .commerce-buy,.commerce-card-featured .commerce-buy{display:flex;padding:7px 1px 0}.commerce-buy .add{min-height:34px;padding:0 11px;font-size:11px}}

/* Premium product detail and editorial recommendation carousel. */
.premium-product-detail{max-width:1380px;padding-top:38px}.premium-product-detail .commerce-breadcrumb{margin-bottom:28px;font-size:13px}.premium-product-detail .commerce-breadcrumb a{color:var(--green)}.premium-product-showcase{grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);gap:clamp(38px,5vw,78px);align-items:start}.premium-product-showcase .showcase-gallery{gap:0}.premium-product-showcase .showcase-main-image{position:relative;aspect-ratio:4/4.6;min-height:0;border:0;border-radius:3px;background:color-mix(in srgb,var(--portal-bg) 45%,#eee9e4);box-shadow:none}.premium-product-showcase .showcase-main-image img{width:100%;height:100%;max-height:none;object-fit:cover;background:transparent}.product-image-index{position:absolute;left:18px;top:18px;min-width:42px;height:42px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.9);color:var(--green);display:grid!important;place-items:center;font-size:11px!important;font-weight:950;letter-spacing:.08em;backdrop-filter:blur(12px);box-shadow:0 10px 28px rgba(0,0,0,.1)}.premium-product-showcase .showcase-note{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:12px;margin-top:14px;padding:14px 2px;background:transparent;color:var(--portal-ink);border-radius:0;border-bottom:1px solid color-mix(in srgb,var(--green) 12%,#e5e7eb)}.showcase-note-label{font-size:10px!important;font-weight:950;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--portal-ink) 50%,#fff)!important}.premium-product-showcase .showcase-note b{color:var(--green);font-size:13px}.showcase-note-copy{justify-self:end;text-align:right;color:color-mix(in srgb,var(--portal-ink) 58%,#fff)!important;font-size:12px!important}.premium-product-showcase .purchase-panel{top:94px;padding:18px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none}.purchase-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.purchase-intro .storefront-kicker{margin:0;color:var(--green)}.purchase-intro>span{font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--green);padding:7px 10px;border:1px solid color-mix(in srgb,var(--green) 25%,transparent);border-radius:999px}.premium-product-showcase .purchase-panel h1{font-size:clamp(48px,5vw,78px);line-height:.92;letter-spacing:-.06em;margin:0 0 28px;text-wrap:balance}.premium-product-showcase .purchase-price{font-size:clamp(30px,3vw,42px);line-height:1;color:var(--portal-ink);margin-bottom:28px}.premium-product-showcase .purchase-description{font-size:16px;line-height:1.75;color:color-mix(in srgb,var(--portal-ink) 72%,#fff);padding-top:24px;border-top:1px solid color-mix(in srgb,var(--green) 12%,#e5e7eb)}.premium-product-showcase .spec-line{grid-template-columns:110px 1fr;margin:22px 0 0;border:0;border-radius:0;background:transparent;padding:15px 0;border-top:1px solid color-mix(in srgb,var(--green) 12%,#e5e7eb);border-bottom:1px solid color-mix(in srgb,var(--green) 12%,#e5e7eb)}.premium-product-showcase .purchase-actions{grid-template-columns:1fr 1fr;gap:10px;margin:28px 0}.premium-product-showcase .purchase-actions .button{min-height:54px;border-radius:999px}.premium-product-showcase .purchase-actions .primary{background:var(--green);color:#fff}.purchase-assurance{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:22px 0;border-top:1px solid color-mix(in srgb,var(--green) 12%,#e5e7eb);border-bottom:1px solid color-mix(in srgb,var(--green) 12%,#e5e7eb)}.purchase-assurance>div{display:flex;gap:10px;align-items:flex-start}.purchase-assurance i{font-style:normal;font-size:9px;font-weight:950;color:var(--green);padding-top:2px}.purchase-assurance strong,.purchase-assurance small{display:block}.purchase-assurance strong{font-size:12px}.purchase-assurance small{margin-top:4px;color:color-mix(in srgb,var(--portal-ink) 54%,#fff);font-size:10px;line-height:1.35}.premium-product-showcase .seller-card{margin-top:24px;padding-top:0;border-top:0}.premium-product-showcase .seller-card img{width:54px;height:54px;border-radius:50%;border:1px solid color-mix(in srgb,var(--green) 14%,#e5e7eb)}.premium-product-showcase .seller-card small{max-width:390px;line-height:1.4}.related-v2{max-width:1380px;padding-top:86px;padding-bottom:110px}.related-v2 .related-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.related-v2 .related-heading h2{font-size:clamp(38px,5vw,68px);line-height:.95;letter-spacing:-.055em;margin:0}.related-controls{display:flex;gap:8px}.related-controls button{width:48px;height:48px;border-radius:999px;border:1px solid color-mix(in srgb,var(--green) 22%,#d9dfdc);background:transparent;color:var(--green);font-size:20px;cursor:pointer;transition:.18s}.related-controls button:hover{background:var(--green);color:#fff;transform:translateY(-2px)}.related-v2 .recommendation-row{grid-auto-columns:calc((100% - 54px)/4);gap:18px;padding:2px 0 20px;scrollbar-width:none;scroll-padding-inline:0}.related-v2 .recommendation-row::-webkit-scrollbar{display:none}.related-v2 .recommendation-card{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.related-v2 .recommendation-card:hover{transform:none;box-shadow:none}.related-v2 .recommendation-media{position:relative;aspect-ratio:4/5;border-radius:3px;background:#eee9e4}.related-v2 .recommendation-media img{transition:transform .45s cubic-bezier(.2,.7,.2,1);opacity:1;filter:none}.related-v2 .recommendation-card:hover img{transform:scale(1.025)}.recommendation-index{position:absolute;left:12px;top:12px;width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.88);color:var(--green);display:grid!important;place-items:center;font-size:9px!important;font-weight:950;backdrop-filter:blur(10px)}.recommendation-copy{padding:14px 1px 0}.related-v2 .recommendation-copy>small{margin:0 0 7px;color:var(--green);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.related-v2 .recommendation-copy>strong{font-size:17px;line-height:1.2;letter-spacing:-.02em;margin:0;min-height:41px}.recommendation-copy>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:11px;border-top:1px solid color-mix(in srgb,var(--green) 11%,#e5e7eb)}.recommendation-copy>div em{font-size:15px;color:var(--portal-ink)}.recommendation-copy>div span{font-size:10px;font-weight:900;color:var(--green)}
@media(max-width:980px){.premium-product-showcase{grid-template-columns:1fr;gap:30px}.premium-product-showcase .purchase-panel{position:static;padding-top:12px}.premium-product-showcase .showcase-main-image{aspect-ratio:4/3.9}.related-v2 .recommendation-row{grid-auto-columns:calc((100% - 36px)/3)}}
@media(max-width:700px){.premium-product-detail{padding:18px 14px 58px}.premium-product-detail .commerce-breadcrumb{margin-bottom:16px;overflow:hidden;white-space:nowrap}.premium-product-detail .commerce-breadcrumb strong{overflow:hidden;text-overflow:ellipsis}.premium-product-showcase .showcase-main-image{aspect-ratio:4/4.7;border-radius:2px}.premium-product-showcase .showcase-note{grid-template-columns:auto 1fr}.showcase-note-copy{grid-column:1/-1;justify-self:start;text-align:left}.purchase-intro{margin:8px 0 20px}.purchase-intro>span{display:none}.premium-product-showcase .purchase-panel h1{font-size:clamp(42px,13vw,58px);margin-bottom:20px}.premium-product-showcase .purchase-price{font-size:30px;margin-bottom:22px}.premium-product-showcase .purchase-description{font-size:15px}.premium-product-showcase .purchase-actions{grid-template-columns:1fr}.purchase-assurance{grid-template-columns:1fr}.related-v2{padding:58px 14px 82px}.related-v2 .related-heading{align-items:center}.related-v2 .related-heading h2{font-size:38px}.related-controls button{width:42px;height:42px}.related-v2 .recommendation-row{grid-auto-columns:78vw;gap:12px}.related-v2 .recommendation-copy>strong{font-size:16px}}
