/* Inicio: una franja legible, seis destacados y bloques alternados. */
@media (min-width: 1100px) {
  .home-page .benefits .shell { width:min(calc(100% - 42px), 1410px); }
  .home-page .benefits-grid { grid-template-columns:1.02fr 1.15fr 1.15fr 1.08fr; }
  .home-page .benefits article { gap:9px; padding-inline:14px; }
  .home-page .benefits small { white-space:nowrap; font-size:11px; letter-spacing:-.025em; }
  .home-page .featured-products .shell { width:min(calc(100% - 54px), 1380px); }
  .home-page .featured-products-track { gap:12px; }
  .home-page .featured-product-card { flex:0 0 calc((100% - 60px)/6); }
  .home-page .featured-product-card>img { height:198px; aspect-ratio:auto; padding:3px; object-fit:contain; }
  .home-page .featured-product-card>div { gap:5px; padding:9px 10px 11px; }
  .home-page .featured-product-card h3 { min-height:34px; font-size:15px; }
  .home-page .featured-product-card strong { font-size:12px; }
  .home-page .featured-product-card a { min-height:35px; padding-inline:9px; font-size:11px; }
}
@media (min-width: 700px) and (max-width: 1099px) {
  .home-page .featured-product-card { flex:0 0 calc((100% - 42px)/4); }
}
@media (max-width: 1099px) {
  .home-page .benefits small { white-space:normal; }
}

/* Los módulos administrados conservan sus datos y ahora comparten una presentación editorial. */
.home-page .store-products-section,.home-page .magic-section,.home-page .news { padding-block:22px; background:#fffdfb; }
.home-page .store-products-section>.shell,.home-page .magic-section>.shell,.home-page .news>.shell { width:min(calc(100% - 48px),1190px); }
.home-page .store-products-coming-public { display:grid; grid-template-columns:1fr 1fr; gap:0; min-height:310px; padding:0; overflow:hidden; border:0; border-radius:0; box-shadow:none; background:#fff; }
.home-page .store-editorial-art { min-width:0; height:310px; overflow:hidden; }
.home-page .store-editorial-art img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.home-page .store-editorial-copy { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:30px 45px; text-align:center; }
.home-page .store-products-coming-public h2 { max-width:450px; font-size:clamp(29px,3vw,40px); }
.home-page .store-products-coming-public p { max-width:460px; font-size:15px; }
.home-page .store-products-coming-status { margin-top:18px; }
.home-page .magic-preview-card { display:grid!important; grid-template-columns:1fr 1fr; align-items:stretch; width:min(calc(100% - 48px),1190px); min-height:310px; margin-inline:auto; overflow:hidden; padding:0!important; border-radius:0; background:#fff; }
.home-page .magic-editorial-copy { grid-column:1; grid-row:1; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:30px 45px; text-align:center; }
.home-page .magic-editorial-copy h2 { max-width:430px; margin:8px 0 12px; color:#173f43; font:500 clamp(28px,3vw,40px)/1.12 Georgia,serif; }
.home-page .magic-editorial-copy p { max-width:430px; margin:0; color:#617073; font-size:15px; line-height:1.55; }
.home-page .magic-editorial-status { margin-top:18px; padding:10px 18px; background:#173f43; color:white; font-size:12px; font-weight:800; text-transform:uppercase; }
.home-page .magic-editorial-status a { color:inherit; }
.home-page .magic-editorial-art { grid-column:2; grid-row:1; min-width:0; min-height:310px; overflow:hidden; }
.home-page .magic-preview-card .magic-editorial-art img { width:100%; height:100%; max-height:310px; object-fit:cover; object-position:80% center; border:0; border-radius:0; box-shadow:none; }
.home-page .news-card:not(.news-card--full) { display:grid; grid-template-columns:1fr 1fr; min-height:230px; width:min(calc(100% - 48px),1040px); overflow:hidden; border:0; border-radius:0; box-shadow:none; }
.home-page .news-card:not(.news-card--full) .news-image { grid-column:1; grid-row:1; height:230px; min-height:230px; }
.home-page .news-card:not(.news-card--full) .news-image img { width:100%; height:100%; object-fit:cover!important; object-position:72% center; }
.home-page .news-card:not(.news-card--full) .news-copy { grid-column:2; grid-row:1; align-items:center; text-align:center; padding:14px 25px; }
.home-page .news-card:not(.news-card--full) .news-copy h2 { font-size:clamp(24px,2.45vw,32px); }
.home-page .news-card:not(.news-card--full) .news-copy .button { align-self:center; }
.home-page .news-card.news-card--full { width:min(calc(100% - 48px),1040px); }
.home-page .news-card.news-card--full .news-full-image img { width:100%!important; height:250px!important; aspect-ratio:auto!important; object-fit:contain!important; }

/* Tamaños editables de los tres bloques de Inicio en computador. */
@media (min-width: 851px) {
  .home-page .store-products-section>.shell,.home-page .magic-section>.shell,.home-page .news>.shell { width:min(calc(100% - 48px),1250px); }
  .home-page #storeProductsComing { width:min(100%,var(--editor-block-width,1190px)); min-height:var(--editor-block-height,310px); margin-inline:auto; }
  .home-page #storeProductsComing .store-editorial-art { height:var(--editor-block-height,310px); }
  .home-page .magic-preview-card { width:min(100%,var(--editor-block-width,1190px)); min-height:var(--editor-block-height,310px); }
  .home-page .magic-preview-card .magic-editorial-art { min-height:var(--editor-block-height,310px); }
  .home-page .magic-preview-card .magic-editorial-art img { max-height:var(--editor-block-height,310px); }
  .home-page .news-card:not(.news-card--full) { width:min(100%,var(--editor-block-width,1040px)); min-height:var(--editor-block-height,230px); }
  .home-page .news-card:not(.news-card--full) .news-image { height:var(--editor-block-height,230px); min-height:var(--editor-block-height,230px); }
  .home-page .news-card.news-card--full { width:min(100%,var(--editor-block-width,1040px)); }
  .home-page .news-card.news-card--full .news-full-image img { height:var(--editor-block-height,230px)!important; }
}

/* Una sola tarjeta para Nuestra esencia y Contacto. Conserva ambos módulos editables. */
.home-page .home-closing-grid { --essence-left:56%; --essence-cream:#fff9f5; --essence-teal:#086e72; --essence-benefits:#fff0e9; --essence-curve-color:#e4f4f1; --essence-curve-width:100px; --essence-curve-left:40px; --leaves-size:80px; --hummingbird-size:205px; position:relative; display:grid; grid-template-columns:minmax(0,var(--essence-left)) minmax(0,1fr); gap:0; width:min(calc(100% - 36px),1250px); min-height:280px; margin:22px auto 36px; overflow:hidden; border:1px solid #ead8d1; border-radius:27px; background:var(--essence-cream); box-shadow:0 15px 35px rgba(68,67,67,.07); }
.home-page .home-closing-grid>.compact-section { min-width:0; padding:0; }
.home-page .home-closing-grid .shell { width:100%; height:100%; max-width:none; margin:0; }
.home-page .home-closing-grid .about-card,.home-page .home-closing-grid .contact-card { box-sizing:border-box; height:100%; min-height:280px; border:0; border-radius:0; box-shadow:none; }
.home-page .home-closing-grid .about-card { position:relative; overflow:hidden; display:flex; flex-direction:column; align-items:stretch; justify-content:center; gap:6px; padding:15px 34px; background:var(--essence-cream); }
.home-page .home-closing-grid .about-title,.home-page .home-closing-grid .about-card>p,.home-page .home-closing-grid .about-values { position:relative; z-index:1; }
.home-page .home-closing-grid .closing-leaves { position:absolute; left:-2px; bottom:-5px; width:var(--leaves-size); color:#caa49a; opacity:.35; pointer-events:none; }
.home-page .home-closing-grid img.closing-leaves-custom { height:auto; max-height:100%; object-fit:contain; object-position:left bottom; }
.home-page .home-closing-grid img.closing-leaves-custom:not([hidden]) { opacity:1; }
.home-page .home-closing-grid .closing-leaves[hidden],.home-page .home-closing-grid .closing-hummingbird[hidden] { display:none; }
.home-page .home-closing-grid .about-title h2 { max-width:520px; margin-top:4px; font-size:clamp(29px,2.5vw,32px); line-height:1.04; }
.home-page .home-closing-grid .about-card>p { max-width:625px; font-size:14px; line-height:1.35; }
.home-page .home-closing-grid .about-values { grid-column:auto; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin-top:1px; }
.home-page .home-closing-grid .about-values span { display:flex; align-items:center; justify-content:center; min-height:30px; padding:4px 9px; background:var(--essence-benefits); font-size:13px; }
.home-page .home-closing-grid .contact-section { position:relative; background:linear-gradient(135deg,var(--essence-teal),color-mix(in srgb,var(--essence-teal) 82%,#20b6b4)); }
.home-page .home-closing-grid .closing-hummingbird { position:absolute; right:0; bottom:0; width:min(70%,var(--hummingbird-size)); height:72%; color:#bce1de; opacity:.22; pointer-events:none; }
.home-page .home-closing-grid img.closing-hummingbird-custom { height:auto; max-height:100%; object-fit:contain; object-position:right bottom; }
.home-page .home-closing-grid img.closing-hummingbird-custom:not([hidden]) { opacity:1; }
.home-page .home-closing-grid .closing-divider { position:absolute; z-index:2; top:0; bottom:0; left:calc(var(--essence-left) - var(--essence-curve-left)); width:var(--essence-curve-width); height:100%; pointer-events:none; }
.home-page .home-closing-grid .closing-divider path:first-child { fill:var(--essence-cream); }
.home-page .home-closing-grid .closing-divider path:nth-child(2) { stroke:var(--essence-curve-color); }
.home-page .home-closing-grid .silhouette-preview-error { position:absolute; z-index:4; left:8px; bottom:8px; max-width:190px; padding:5px 7px; border-radius:6px; background:#fff; color:#a02b2b; font-size:11px; line-height:1.25; }
.home-page .home-closing-grid[data-division="straight"] .closing-divider{display:none}
.home-page .home-closing-grid[data-division="straight"] .contact-card{padding-left:30px}
.home-page .home-closing-grid[data-division="diagonal"] .closing-divider{background:#fff9f5;clip-path:polygon(0 0,80% 0,20% 100%,0 100%)}
.home-page .home-closing-grid[data-division="diagonal"] .closing-divider path{display:none}
.home-page .home-closing-grid .contact-card { position:relative; z-index:1; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:5px; padding:10px 28px 12px 54px; background:transparent; }
.home-page .home-closing-grid .contact-card>div:first-child { max-width:none; }
.home-page .home-closing-grid .contact-card .eyebrow { display:block; font-size:11px!important; line-height:1.1; }
.home-page .home-closing-grid .contact-card h2 { max-width:275px; margin:0 0 1px; font-size:clamp(27px,2.35vw,28px); }
.home-page .home-closing-grid .contact-card p { font-size:13px!important; line-height:1.25!important; }
.home-page .home-closing-grid .contact-data { width:100%; grid-template-columns:1fr!important; gap:6px; }
.home-page .home-closing-grid .contact-data>div { display:grid; grid-template-columns:29px minmax(0,1fr); column-gap:13px; align-items:center; }
.home-page .home-closing-grid .contact-data>div>svg { width:25px; height:25px; grid-row:1/3; fill:#fff; }
.home-page .home-closing-grid .contact-data small { font-size:11px!important; line-height:1.08!important; }
.home-page .home-closing-grid .contact-data a,.home-page .home-closing-grid .contact-data span { font-size:13px!important; line-height:1.1!important; }
.home-page .home-closing-grid .contact-card>.button { grid-column:auto; display:inline-flex; align-items:center; justify-content:center; gap:12px; width:max-content; min-width:0; margin-top:0; padding:6px 22px; border-radius:999px; }
.home-page .home-closing-grid .contact-card>.button svg { width:22px; height:22px; fill:#086e72; }
/* El Inicio usa zoom .9 en computador; compensarlo solo en esta tarjeta
   para que los 1250 × 280 px solicitados sean píxeles visuales reales. */
@media (min-width: 1000px) {
  .home-page .home-closing-grid { zoom:1.111111; width:min(calc(100vw - 48px),1250px); }
}
@media (min-width: 1300px) {
  .home-page .home-closing-grid { height:280px; }
}
@media (max-width: 850px) {
  .home-page .store-products-coming-public,.home-page .magic-preview-card,.home-page .news-card:not(.news-card--full) { grid-template-columns:1fr; }
  .home-page .store-editorial-art,.home-page .magic-editorial-art { grid-column:1; grid-row:1; height:250px; min-height:250px; }
  .home-page .news-card:not(.news-card--full) .news-image { grid-column:1; grid-row:1; height:205px; min-height:205px; }
  .home-page .magic-editorial-copy { grid-column:1; grid-row:2; padding:28px; }
  .home-page .news-card:not(.news-card--full) .news-copy { grid-column:1; grid-row:2; padding:21px; }
  .home-page .magic-preview-card .magic-editorial-art img { height:250px; max-height:250px; }
  .home-page .home-closing-grid { grid-template-columns:1fr; }
  .home-page .home-closing-grid .about-card,.home-page .home-closing-grid .contact-card { min-height:0; }
  .home-page .home-closing-grid .about-card { padding:26px 30px; gap:15px; }
  .home-page .home-closing-grid .contact-card { gap:14px; }
  .home-page .home-closing-grid .contact-card h2 { max-width:420px; font-size:32px; }
  .home-page .home-closing-grid .contact-card p { font-size:15px!important; }
  .home-page .home-closing-grid .contact-data { gap:8px; }
  .home-page .home-closing-grid .contact-data a,.home-page .home-closing-grid .contact-data span { font-size:14px!important; line-height:1.45!important; }
  .home-page .home-closing-grid .contact-data>div { grid-template-columns:26px minmax(0,1fr); }
  .home-page .home-closing-grid .contact-data>div>svg { grid-row:1/3; }
  .home-page .home-closing-grid .closing-divider { display:none; }
  .home-page .home-closing-grid .contact-section { border-top:8px solid #e3f3f1; }
  .home-page .home-closing-grid .contact-card { padding:35px 42px; }
}
@media (max-width: 600px) {
  .home-page .store-products-section>.shell,.home-page .magic-section>.shell,.home-page .news>.shell,.home-page .home-closing-grid { width:min(calc(100% - 26px),1190px); }
  .home-page .magic-preview-card,.home-page .news-card:not(.news-card--full),.home-page .news-card.news-card--full { width:100%; }
  .home-page .benefits small { white-space:normal; }

  .home-page .home-closing-grid .about-card,.home-page .home-closing-grid .contact-card { padding:26px; }
  .home-page .home-closing-grid .about-values { grid-template-columns:1fr 1fr; }
  .home-page .home-closing-grid .contact-card>.button { width:100%; }
}

/* Mobile news uses the full card width; legacy readability rules used two columns. */
@media(max-width:850px){
  .home-page #novedades .news-card:not(.news-card--full){grid-template-columns:minmax(0,1fr)!important;min-height:0!important;height:auto!important;width:calc(100% - 28px)!important;max-width:100%;margin-inline:auto}
  .home-page #novedades .news-card:not(.news-card--full) .news-image{grid-column:1!important;grid-row:1!important;width:100%;min-width:0;aspect-ratio:auto;height:clamp(170px,52vw,260px)!important;min-height:0!important;background:#fff8f4}
  .home-page #novedades .news-card:not(.news-card--full) .news-image img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
  .home-page #novedades .news-card:not(.news-card--full) .news-copy{grid-column:1!important;grid-row:2!important;min-width:0;width:100%;padding:22px 20px 25px!important;align-items:center;text-align:center}
  .home-page #novedades .news-copy h2{width:100%;max-width:100%;font-size:30px!important;line-height:1.12!important;overflow-wrap:break-word}
  .home-page #novedades .news-copy p{width:100%;max-width:100%;font-size:15px!important;line-height:1.6!important;margin-bottom:18px}
  .home-page #novedades .news-copy .button{width:auto;max-width:100%;min-height:44px;white-space:normal;line-height:1.35;padding:12px 20px}
  .home-page #novedades .news-card--full{width:calc(100% - 28px)!important;min-height:0!important}
  .home-page #novedades .news-card--full .news-full-image img{height:auto!important;max-height:none;aspect-ratio:auto!important;object-fit:contain!important}
}
