:root {
  --red:#a80716; --red-dark:#750713; --green:#056a2f; --green-deep:#07471f;
  --ink:#17191d; --muted:#667079; --line:#e5e8eb; --paper:#fff;
  --soft:#f6f7f8; --radius:10px; --shadow:0 12px 35px rgba(24,30,37,.08);
}
* {box-sizing:border-box}
html {scroll-behavior:smooth}
body {margin:0;min-width:320px;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5}
body,button,input {font-family:Arial,Helvetica,sans-serif}
a {color:inherit;text-decoration:none}
a:hover {text-decoration:none}
img,svg {max-width:100%;vertical-align:middle}
button {cursor:pointer}
button,input {font-size:inherit}
:focus-visible {outline:3px solid #e1a843;outline-offset:3px}
.container {max-width:1330px;margin:0 auto;padding-left:28px;padding-right:28px}
.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}
.site-header {height:96px;background:#fff;position:relative;z-index:25;border-bottom:1px solid #eceef0}
.header-container {height:100%;display:flex;align-items:center;gap:28px;justify-content:space-between}
.site-logo {display:inline-flex;align-items:center;flex-shrink:0}
.site-logo img {width:204px;height:auto}
.site-nav {display:flex;align-items:center;justify-content:center;gap:27px;margin:auto}
.site-nav a {font-weight:700;font-size:13px;position:relative;white-space:nowrap;padding:38px 0;color:#17191c}
.site-nav a:hover {color:var(--red)}
.site-nav a[aria-current="page"] {color:var(--red)}
.site-nav a[aria-current="page"]:after {content:"";position:absolute;bottom:30px;height:2px;background:var(--red);left:0;right:0}
.btn {border:0;display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:46px;border-radius:11px;padding:11px 19px;font-weight:700;line-height:1.2;transition:transform .18s,filter .18s,background .18s;white-space:normal;text-align:center}
.btn:hover {transform:translateY(-2px);filter:brightness(1.06)}
.btn-whatsapp {background:linear-gradient(135deg,#086e31,#005222);color:#fff;box-shadow:0 4px 12px rgba(1,78,32,.14)}
.btn-white {background:#fff;color:var(--red-dark);box-shadow:0 6px 22px rgba(44,0,0,.15)}
.btn-red {background:var(--red);color:#fff}
.btn-outline {border:1px solid #d6dade;background:#fff;color:var(--ink)}
.btn-large {min-height:54px;padding:15px 23px}
.nav-wa {flex-shrink:0;min-height:43px;font-size:13px;border-radius:12px;padding:9px 16px}
.nav-wa svg:first-child {width:22px;height:22px}
.menu-toggle {display:none;border:0;background:transparent;padding:9px;z-index:2}
.menu-toggle span {display:block;width:26px;height:2px;background:#1c2228;margin:5px;border-radius:2px}
/* Carrusel principal */
.hero-carousel {position:relative;background:var(--red-dark);height:340px;isolation:isolate;overflow:hidden}
.hero-track,.hero-slide {position:absolute;inset:0}
.hero-slide {display:none;overflow:hidden}
.hero-slide.is-active {display:block;animation:hero-in .35s ease-out}
@keyframes hero-in {from{opacity:.62}to{opacity:1}}
.hero-photo {position:absolute;inset:0 0 0 42%;background-position:center center;background-repeat:no-repeat;background-size:cover}
.hero-wash {position:absolute;pointer-events:none;inset:0;background:linear-gradient(118deg,#4b0209 0%,#840611 41%,#b20a1c 100%);clip-path:polygon(0 0,51% 0,42% 100%,0 100%);box-shadow:15px 0 50px rgba(90,0,0,.12)}
.hero-content {position:relative;z-index:1;height:100%;display:flex;align-items:center;pointer-events:none}
.hero-copy {width:49%;color:#fff;padding:16px 0 26px 43px;pointer-events:auto}
.hero-kicker {font-weight:800;letter-spacing:2.1px;font-size:11px;display:block;margin-bottom:7px}
.hero-copy h1 {font-size:clamp(34px,4.25vw,62px);letter-spacing:-2px;line-height:.98;margin:0 0 13px;max-width:565px;font-weight:850}
.hero-copy p {font-size:19px;line-height:1.35;max-width:400px;margin:0 0 10px;font-weight:400}
.hero-actions {display:flex;align-items:center;gap:30px;margin-top:10px}
.hero-actions .btn {min-height:47px;font-size:13px}
.hero-shipping {display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:13px;line-height:1.28}
.hero-shipping svg {width:35px;height:35px;flex:none}
.hero-more {display:inline-flex;align-items:center;gap:4px;color:#fff;font-size:12px;text-decoration:underline;text-underline-offset:3px;margin-top:8px}
.hero-more svg {height:12px;width:12px}
.hero-control {position:absolute;z-index:3;top:47%;border:1px solid #fff;background:rgba(0,0,0,.25);color:#fff;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:28px;line-height:1}
.hero-control:hover {background:rgba(0,0,0,.55)}
.hero-prev {left:15px}.hero-next {right:15px}
.hero-dots {position:absolute;left:max(calc((100% - 1274px)/2 + 71px),80px);bottom:12px;z-index:4;display:flex;gap:9px}
.hero-dot {border:0;background:rgba(255,255,255,.55);width:8px;height:8px;border-radius:30px;padding:0}
.hero-dot.active {background:#fff;width:19px}
/* Búsqueda y categorías */
.discovery {padding-top:17px;padding-bottom:17px}
.search-row {display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:16px}
.search-form {width:min(570px,55%);display:flex;height:40px;border:1px solid #d8dde1;border-radius:6px;overflow:hidden;background:white}
.search-wrap {display:flex;align-items:center;gap:12px;padding:0 14px;flex:1;min-width:0}
.search-wrap svg {width:19px;flex:none;color:#34393e}
.search-form input {border:0;outline:none;min-width:0;width:100%;font-size:12px;background:transparent}
.search-form input:focus-visible {outline:0}
.search-form button {border:0;background:var(--red);color:#fff;padding:0 27px;font-weight:700;font-size:12px}
.popular {display:flex;align-items:center;gap:7px;font-size:11px;white-space:nowrap}
.pill {border-radius:25px;background:#f2f3f5;padding:8px 14px;font-size:11px}
.category-list {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.category-card {border-radius:6px;position:relative;overflow:hidden;aspect-ratio:2.22;background:#e6e6e6}
.category-card img {width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}
.category-card:hover img {transform:scale(1.035)}
/* Beneficios */
.benefits {background:linear-gradient(#f8f9fa,#f2f3f4);border-top:1px solid #f0f2f4;border-bottom:1px solid #eff0f2}
.benefits-grid {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;min-height:67px}
.benefit {min-height:44px;display:flex;align-items:center;justify-content:center;gap:13px;border-right:1px solid #dadee2;padding:0 10px}
.benefit:last-child {border-right:0}
.benefit-icon {display:inline-flex;color:var(--green-deep);flex-shrink:0}
.benefit-icon svg {width:31px;height:31px}
.benefit-text {font-size:11px;line-height:1.3;color:#454b51}
.benefit-text strong {font-size:12px;display:block;color:var(--ink)}
/* Destacados */

/* SECCIÓN PRODUCTOS DESTACADOS */

.homepage-lower {
    display: grid;

    /* DISEÑO ORIGINAL CON TESTIMONIOS
    grid-template-columns: minmax(0,3fr) minmax(260px,1.05fr);
    */

    /* DISEÑO ACTUAL SIN TESTIMONIOS */
    grid-template-columns: minmax(0,1fr);

    gap: 29px;
    padding-top: 24px;
    padding-bottom: 27px;
}

.products-section {min-width:0}
.section-heading {display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:15px}
.section-heading h2 {font-size:21px;line-height:1.2;font-weight:800;letter-spacing:-.7px;margin:0;position:relative;padding-bottom:8px}
.section-heading h2:after {content:"";height:3px;width:30px;position:absolute;background:var(--red);bottom:0;left:0}
.section-link {color:var(--red);font-weight:700;font-size:12px;display:inline-flex;align-items:center;gap:3px;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.section-link svg {width:16px}
.product-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.product-card {border:1px solid var(--line);border-radius:7px;background:#fff;overflow:hidden;min-width:0;display:flex;flex-direction:column;transition:box-shadow .2s}
.product-card:hover {box-shadow:var(--shadow)}
.product-image {position:relative;background:#f7f8f9;height:113px;display:flex;align-items:center;justify-content:center;padding:27px 11px 8px;overflow:hidden}
.product-image img {width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.product-tag,.discount-tag {position:absolute;top:8px;border-radius:3px;color:#fff;font-size:10px;font-weight:800;line-height:1;padding:6px 8px}
.product-tag {left:8px;background:#b20a19}
.tag-new,.discount-tag {background:#0d5c27}
.discount-tag {right:8px}
.product-body {padding:11px 12px 10px;display:flex;flex-direction:column;flex:1}
.product-body h3 {font-size:13px;line-height:1.2;margin:0;font-weight:800}
.product-body p {font-size:11px;line-height:1.35;color:var(--muted);margin:5px 0 11px;min-height:28px}
.product-foot {margin-top:auto;display:flex;align-items:end;justify-content:space-between;gap:5px}
.price-line {display:flex;gap:5px;align-items:baseline;flex-wrap:wrap}
.old-price {color:#81858c;text-decoration:line-through;font-size:11px}
.price-line strong {color:var(--red);font-size:17px;letter-spacing:-.5px;white-space:nowrap}
/* Todos los productos actuales están en promoción: mantener precio promocional en rojo. */
.quote-icon {border:1px solid var(--red);border-radius:5px;flex:none;width:34px;height:34px;color:var(--red);display:grid;place-items:center}
.quote-icon:hover {background:var(--red);color:#fff}
.quote-icon svg {height:20px;width:20px}
.no-results {grid-column:1/-1;padding:25px;background:var(--soft);border-radius:8px}
.reset-link {border:0;background:none;color:var(--red);font-size:12px;font-weight:700;text-decoration:underline;padding:3px 0}
.testimonials-preview {border-left:1px solid var(--line);padding-left:18px;min-width:0}
.testimonial-box {background:linear-gradient(135deg,#fbfcfd,#f1f3f4);border-radius:8px;padding:16px 18px;min-height:174px;display:flex;flex-direction:column;justify-content:center}
.stars {color:var(--red);letter-spacing:2px;font-size:16px;margin-bottom:4px}
.testimonial-box blockquote {margin:0 0 12px;font-size:13px;line-height:1.5}
.testimonial-box strong {font-size:12px}
.testimonial-box small {display:block;font-size:10px;color:var(--muted);margin-top:2px}
.testimonial-action {margin-top:13px;display:flex;align-items:center;justify-content:space-between}
.testimonial-action a {font-weight:700;font-size:12px;color:var(--red)}
/* CTA ancho */
.project-cta {background:#11191e;color:#fff;position:relative;overflow:hidden}
.project-cta:before {content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,22,28,.9),#10171b);opacity:.98}
.project-inner {min-height:92px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:27px}
.project-title {display:flex;align-items:center;gap:15px}
.project-symbol {font-size:42px;line-height:1}
.project-title h2 {font-size:20px;line-height:1.2;margin:0 0 2px}
.project-title p {margin:0;font-size:12px;color:#e3e9ea}
.project-inner .btn {border:1px solid #fff;border-radius:30px;padding:13px 18px;font-size:13px;flex-shrink:0}
.project-points {display:flex;gap:0;font-size:10px}
.project-points span {border-left:1px solid #303d44;min-width:82px;max-width:95px;text-align:center;padding:6px 10px;line-height:1.25}
/* Páginas interiores */
.page-banner {padding:64px 0;background:linear-gradient(115deg,#680713,#b80d22);color:#fff}
.page-banner .section-eyebrow {color:#fbd8de}
.page-banner h1 {font-size:clamp(33px,4vw,54px);letter-spacing:-1.7px;line-height:1.05;max-width:820px;margin:7px 0 14px}
.page-banner p {font-size:17px;max-width:720px;margin:0;color:#fff4f6}
.section-eyebrow {display:block;font-size:11px;font-weight:800;letter-spacing:2px;color:var(--red);text-transform:uppercase}
.section-gap {padding-top:55px;padding-bottom:65px}
.section-soft {background:var(--soft)}
.text-intro {max-width:730px;margin:0 0 30px;color:#59636b;font-size:16px}
.brand-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.brand-placeholder {border:1px solid #e4e6e8;background:#fff;border-radius:12px;min-height:172px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px}
.brand-visual {width:69px;height:69px;border-radius:18px;border:2px dashed #cfd4d9;display:grid;place-items:center;font-size:30px;font-weight:900;color:#a2aab0}
.brand-placeholder strong {font-size:14px;color:#606b73}
.brand-placeholder span {font-size:12px;color:#8c959b}
.simple-notice {border-left:4px solid var(--red);padding:15px 18px;background:#fff6f7;border-radius:0 8px 8px 0;color:#5d4246;font-size:13px;margin-top:25px}
.split-layout {display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:start}
.contact-card,.location-card,.info-card {background:#fff;border:1px solid var(--line);border-radius:15px;padding:30px;box-shadow:0 8px 30px rgba(10,25,35,.04)}
.contact-card h2,.info-card h2 {margin:0 0 10px;line-height:1.2;font-size:27px}
.contact-card p,.info-card p {margin:0 0 20px;color:var(--muted)}
.contact-card .btn {margin-bottom:16px}
.contact-telephone {display:block;color:#4e5b64;margin-top:7px}
.contact-steps {margin:0;padding-left:23px}
.contact-steps li {padding:0 0 17px 5px;color:#535e67}
.contact-steps strong {color:var(--ink);display:block}
.tagline-card {background:#f6f7f8;border-radius:12px;padding:26px;min-height:230px}
.tagline-card h3 {font-size:23px;margin:10px 0 12px}
.tagline-card p {color:var(--muted)}
.location-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.location-card {min-height:260px}
.location-pin {width:57px;height:57px;display:grid;place-items:center;background:#eaf4ee;color:var(--green);border-radius:14px;margin-bottom:18px}
.location-card h2 {font-size:25px;margin:0 0 8px}
.location-card p {color:var(--muted);margin:0 0 18px}
.location-card .btn {margin-top:5px}
.quote-feature {background:#fff;border:1px solid var(--line);border-radius:14px;padding:37px;display:grid;grid-template-columns:78px 1fr;gap:24px;max-width:930px}
.quote-mark {font-family:Georgia,serif;font-size:100px;color:var(--red);line-height:1}
.quote-feature blockquote {font-size:24px;line-height:1.5;margin:8px 0 20px}
.quote-feature strong {display:block}
.quote-feature small {color:var(--muted)}
.value-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.value-card {background:#fff;border:1px solid var(--line);border-radius:10px;padding:25px}
.value-card h3 {font-size:19px;margin:10px 0 8px}
.value-card p {font-size:14px;color:var(--muted);margin:0}
.value-card svg {color:var(--green)}
/* Detalles de promoción */
.promo-page-head {background:linear-gradient(100deg,#fff9fa,#f2f4f5);border-bottom:1px solid var(--line)}
.promo-page-inner {display:grid;grid-template-columns:.94fr 1.06fr;gap:40px;align-items:center;padding-top:36px;padding-bottom:36px}
.breadcrumbs {font-size:12px;color:var(--red);font-weight:700}
.breadcrumbs-divider {font-size:12px;color:#6c777c}
.promo-page-inner .section-eyebrow {margin-top:30px}
.promo-page-inner h1 {font-size:clamp(32px,3.8vw,51px);line-height:1.07;letter-spacing:-1.8px;margin:10px 0 15px}
.promo-page-inner p {font-size:17px;color:#54606a;margin:0 0 24px;max-width:510px}
.promo-feature-img {border-radius:16px;overflow:hidden;box-shadow:var(--shadow);height:310px}
.promo-feature-img img {width:100%;height:100%;object-fit:cover}
.promo-body {display:grid;grid-template-columns:1.5fr .85fr;gap:65px;padding-top:53px;padding-bottom:63px}
.promo-description h2 {font-size:27px;margin:0 0 13px}
.promo-description p {font-size:15px;color:var(--muted)}
.check-list {padding:0;margin:22px 0;list-style:none}
.check-list li {display:flex;align-items:center;gap:11px;padding:9px 0}
.check-list li span {width:23px;height:23px;border-radius:50%;display:grid;place-items:center;flex:none;background:#e5f5e8;color:#07652d;font-weight:800}
.notice {background:#fff8f0;color:#5a4b36;border-left:3px solid #e6a953;padding:15px 18px;border-radius:0 8px 8px 0;font-size:13px}
.promo-aside {border:1px solid var(--line);border-radius:14px;padding:27px;align-self:start;box-shadow:var(--shadow)}
.aside-kicker {font-size:11px;letter-spacing:1.5px;font-weight:800;color:var(--red)}
.promo-aside h3 {font-size:25px;margin:10px 0}
.promo-aside p {color:var(--muted);font-size:14px}
.promo-aside .btn {width:100%;font-size:14px}
.aside-phone {display:block;text-align:center;margin-top:12px;font-size:13px;color:var(--muted)}
.other-promos {padding-top:38px;padding-bottom:47px}
.other-promo-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.other-promo-card {background:linear-gradient(110deg,#830812,#b50a21);border-radius:11px;padding:25px;min-height:167px;display:flex;flex-direction:column;align-items:flex-start;color:#fff;gap:13px}
.other-promo-card>span:first-child {font-size:11px;letter-spacing:1.5px}
.other-promo-card strong {font-size:23px;line-height:1.2}
.other-promo-link {font-size:12px;display:flex;align-items:center;gap:6px;text-decoration:underline;margin-top:auto}
/* Pie */
.site-footer {background:#f7f8f9;border-top:1px solid #e1e4e7}
.footer-main {display:grid;grid-template-columns:1.1fr 1.4fr 1fr;gap:35px;padding-top:34px;padding-bottom:27px}
.footer-logo {width:166px;height:auto}
.footer-main p {margin:5px 0;color:var(--muted);font-size:13px}
.footer-nav {display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;gap:14px 22px;padding-top:8px}
.footer-nav a {font-size:13px;font-weight:700;color:#434c54}
.footer-nav a:hover {color:var(--red)}
.footer-contact {display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:13px}
.footer-contact strong {font-size:14px}
.footer-contact a {display:inline-flex;align-items:center;gap:6px;color:var(--green);font-weight:700}
.footer-contact a svg {width:19px}
.footer-contact small {color:var(--muted)}
.footer-bottom {border-top:1px solid #e5e7e9;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:15px;padding-bottom:18px;color:#6c7278;font-size:11px}
@media(max-width:1200px) {
  .header-container {gap:15px}.site-logo img {width:182px}.site-nav {gap:19px}.nav-wa {font-size:12px;padding:9px}
  .hero-copy {padding-left:26px}.hero-actions {gap:16px}.hero-copy h1 {font-size:51px}
  .project-points {display:none}
}
@media(max-width:980px) {
  .site-header {height:78px}.site-logo img {width:175px}
  .menu-toggle {display:block;order:3;margin-left:auto}
  .site-nav {display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:14px 28px 25px;box-shadow:0 13px 25px rgba(0,0,0,.12);flex-direction:column;align-items:stretch;gap:0}
  .site-nav.is-open {display:flex}.site-nav a {padding:12px 0}.site-nav a[aria-current="page"]:after {bottom:5px;right:auto;width:24px}
  .nav-wa {order:2;margin-left:auto}.hero-photo {left:36%}.hero-wash {clip-path:polygon(0 0,57% 0,45% 100%,0 100%)}
  .hero-copy {width:55%;padding-left:25px}.hero-copy h1 {font-size:46px}
  .popular {display:none}.search-form {width:100%}
  .homepage-lower {grid-template-columns:1fr}.testimonials-preview {border:0;border-top:1px solid var(--line);padding:19px 0 0}.testimonial-box {min-height:130px}
  .benefit {gap:6px}.benefit-icon svg {width:23px}.benefit-text {font-size:10px}.benefit-text strong {font-size:11px}
}
@media(max-width:730px) {
  .container {padding-left:18px;padding-right:18px}
  .nav-wa {display:none}
  .hero-carousel {height:555px}.hero-photo {inset:0 0 auto 0;height:280px;background-size:cover;background-position:center}.hero-wash {inset:218px 0 0;background:linear-gradient(145deg,#65030c,#b10a1a);clip-path:none}
  .hero-content {align-items:flex-end}.hero-copy {width:100%;padding:0 23px 50px;max-width:570px}.hero-kicker {font-size:10px}.hero-copy h1 {font-size:clamp(37px,9vw,51px);letter-spacing:-1.2px;line-height:1.05}.hero-copy p {font-size:15px}.hero-actions {gap:13px;align-items:flex-start;flex-wrap:wrap}.hero-actions .btn {font-size:12px}.hero-shipping {font-size:12px}.hero-more {font-size:11px}
  .hero-dots {left:39px;bottom:18px}.hero-control {top:22%;width:34px;height:34px}.hero-prev {left:9px}.hero-next {right:9px}
  .discovery {padding-top:18px}.category-list {grid-template-columns:repeat(2,1fr);gap:9px}.category-list .category-card:last-child {grid-column:1/-1;max-width:50%;width:100%;justify-self:center}.category-card {aspect-ratio:2.18}
  .benefits-grid {grid-template-columns:repeat(2,minmax(0,1fr));padding-top:10px;padding-bottom:10px;gap:5px}.benefit {justify-content:flex-start;padding:10px 3px;border:0}.benefit:last-child {grid-column:1/-1;justify-content:center}
  .product-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-image {height:127px}.homepage-lower {padding-top:25px}.section-heading h2 {font-size:19px}.section-link {font-size:11px}
  .project-inner {flex-direction:column;align-items:stretch;text-align:center;padding-top:24px;padding-bottom:24px;gap:14px}.project-title {justify-content:center}.project-inner .btn {align-self:center}
  .page-banner {padding:46px 0}.page-banner p {font-size:15px}.section-gap {padding-top:38px;padding-bottom:43px}
  .brand-grid {grid-template-columns:repeat(2,1fr);gap:10px}.brand-placeholder {min-height:145px}.split-layout,.location-grid,.promo-page-inner,.promo-body {grid-template-columns:1fr;gap:22px}
  .promo-page-inner {padding-top:26px;padding-bottom:25px}.promo-page-inner .section-eyebrow {margin-top:20px}.promo-feature-img {height:240px}.promo-body {padding-top:35px;padding-bottom:40px}
  .other-promo-grid,.value-grid {grid-template-columns:1fr}.quote-feature {grid-template-columns:1fr;gap:0;padding:23px}.quote-mark {height:67px}.quote-feature blockquote {font-size:20px}
  .footer-main {grid-template-columns:1fr;gap:17px}.footer-bottom {flex-direction:column;align-items:flex-start}
}
@media(max-width:410px) {
  .hero-carousel {height:588px}.hero-wash {top:206px}.hero-copy {padding-left:20px;padding-right:20px}.hero-copy h1 {font-size:36px}.hero-actions .btn {width:100%}.hero-shipping {display:none}
  .product-image {height:104px}.product-body {padding:9px}.product-body h3 {font-size:12px}.price-line strong {font-size:15px}.old-price {font-size:10px}
  .section-link {white-space:normal;text-align:right;max-width:125px}.brand-grid {grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {scroll-behavior:auto!important;animation:none!important;transition:none!important}}


/* =========================================
   FRANJA DE COBERTURA - CASTEL
========================================= */

.coverage-band {
    width: 100%;
    background: linear-gradient(
        to bottom,
        #f8f9fa,
        #f2f3f4
    );
    border-top: 1px solid #f0f2f4;
    border-bottom: 1px solid #eff0f2;
}

/* Contenido centrado */
.coverage-content {
    min-height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    text-align: center;
    padding-top: 12px;
    padding-bottom: 12px;
    color: #454b51;
    font-size: 14px;
}

/* Título */
.coverage-content strong {
    color: #17191d;
    font-weight: 700;
}

/* Adaptación para celulares */
@media (max-width: 768px) {
    .coverage-content {
        font-size: 12px;
        min-height: 65px;
        padding: 14px 18px;
    }
}


/* ======================================================
   UBICACIONES · BOTONES DE MAPA Y FRANJA BAJO PRODUCTOS
   ====================================================== */
.home-locations {display:flex;align-items:center;justify-content:space-between;gap:26px;padding-top:21px;padding-bottom:30px;border-top:1px solid var(--line)}
.home-locations h2 {font-size:22px;margin:2px 0 2px;letter-spacing:-.45px}
.home-locations p {margin:0;color:var(--muted);font-size:13px}
.home-location-actions {display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.btn-map {background:var(--green-deep);color:#fff;border:1px solid #06441d;box-shadow:0 6px 17px rgba(2,56,24,.11)}
.btn-map:hover {background:var(--green)}
.location-card-new {min-height:280px;display:flex;flex-direction:column;align-items:flex-start}
.location-card-new .btn {margin-top:auto}
.location-card-new .section-eyebrow {margin-bottom:4px}
.location-help {margin-top:25px;border-radius:13px;background:var(--soft);padding:24px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.location-help p {margin:0;color:#49525b;font-weight:700}
/* ======================================================
   GALERÍA DE OFERTA DE LA SEMANA · DESLIZAMIENTO SOLO CON CLIC
   Editar cantidad e imágenes en galeriaSemanal de catalogo.js.
   ====================================================== */
.month-gallery-section {padding-top:40px;padding-bottom:22px}
.month-gallery-section > p {color:var(--muted);font-size:14px;margin:0 0 14px}
.gallery-toolbar {display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}
.gallery-count,.gallery-position {font-size:12px;color:var(--muted)}
.gallery-controls {display:flex;gap:9px}
.gallery-controls button {border:1px solid #cfd5d9;background:#fff;border-radius:50%;width:42px;height:42px;font-size:29px;line-height:1;color:var(--red);display:grid;place-items:center}
.gallery-controls button:hover {background:var(--red);color:#fff;border-color:var(--red)}
.gallery-window {overflow:hidden;width:100%}
.gallery-track {display:flex;gap:16px;align-items:stretch}
.gallery-photo {position:relative;flex:0 0 calc((100% - 16px)/2);border:1px solid var(--line);background:#fafafa;padding:0;border-radius:13px;min-width:0;overflow:hidden;box-shadow:0 8px 28px rgba(25,29,35,.06);text-align:left;color:var(--ink)}
.gallery-photo img {display:block;width:100%;height:240px;object-fit:cover;background:#f1f1f1;transition:transform .25s}
.gallery-photo:hover img {transform:scale(1.045)}
.gallery-photo>span:not(.gallery-expand) {display:block;padding:13px 15px;font-weight:700;font-size:14px}
.gallery-expand {position:absolute;right:12px;top:12px;border-radius:7px;background:rgba(255,255,255,.96);padding:4px 10px;font-size:21px;box-shadow:0 4px 12px rgba(0,0,0,.13)}
.gallery-position {margin-top:8px;text-align:center}
body.gallery-open {overflow:hidden}
.gallery-modal[hidden] {display:none!important}
.gallery-modal {position:fixed;inset:0;z-index:1000;background:rgba(8,12,16,.90);display:flex;align-items:center;justify-content:center;padding:35px 65px}
.gallery-modal-panel {position:relative;width:min(1070px,100%);height:min(88vh,830px);display:flex;align-items:center;justify-content:space-between;color:#fff;gap:15px}
.gallery-modal figure {margin:0;min-width:0;max-height:100%;display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;gap:13px}
.gallery-modal img {display:block;width:auto;max-width:100%;max-height:min(73vh,700px);object-fit:contain;border-radius:7px;background:white}
.gallery-modal figcaption {font-size:15px;font-weight:700;color:#fff;text-align:center}
.gallery-close,.gallery-modal-prev,.gallery-modal-next {background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.6);color:#fff;border-radius:50%;width:46px;height:46px;flex:none;display:grid;place-items:center;font-size:30px}
.gallery-close {position:absolute;right:0;top:-10px;z-index:2;font-size:19px}
.gallery-modal-prev:hover,.gallery-modal-next:hover,.gallery-close:hover {background:rgba(255,255,255,.27)}
.gallery-modal-counter {position:absolute;left:50%;transform:translateX(-50%);bottom:0;font-size:12px;letter-spacing:1px}
@media(max-width:980px) {
  .home-locations {flex-direction:column;align-items:flex-start}
  .home-location-actions {justify-content:flex-start}
}
@media(max-width:730px) {
  .home-locations {padding-top:20px;padding-bottom:27px}
  .home-location-actions {width:100%;flex-direction:column}
  .home-location-actions .btn {width:100%}
  .location-help {flex-direction:column;text-align:center}
  .gallery-track {gap:10px}
  .gallery-photo {flex-basis:100%}
  .gallery-photo img {height:250px}
  .gallery-modal {padding:18px 12px}
  .gallery-modal-panel {gap:6px;height:min(82vh,710px)}
  .gallery-modal-prev,.gallery-modal-next {height:36px;width:36px;font-size:25px}
  .gallery-close {right:0;top:-40px}
  .gallery-modal img {max-height:65vh}
}

/* Ocultar el botón hamburguesa solo si el menú no tiene elementos. */
.menu-toggle[hidden] {display:none!important}


/* ===== CASTEL · AJUSTES DE OFERTA SEMANAL Y 6 CATEGORÍAS ===== */
/* Seis imágenes, todas de la misma proporción. */
.category-list {grid-template-columns:repeat(6,minmax(0,1fr))}
.category-card-labeled:after {content:"";position:absolute;inset:32% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.76));pointer-events:none}
.category-overlay-name {position:absolute;bottom:12px;left:14px;right:10px;z-index:1;color:#fff;font-weight:800;font-size:clamp(14px,1.3vw,22px);line-height:1.15;text-shadow:0 2px 8px rgba(0,0,0,.32)}

.weekly-steps {list-style:none;margin:20px 0 28px;padding:0;display:grid;gap:15px}
.weekly-steps li {display:flex;align-items:flex-start;gap:15px}
.weekly-step-number {flex:none;width:34px;height:34px;border-radius:50%;background:#a80716;color:#fff;display:grid;place-items:center;font-size:15px;font-weight:800}
.weekly-steps li>div {padding-top:2px}
.weekly-steps strong {font-size:15px;color:#222629}
.weekly-steps p {margin:4px 0 0;color:#54606a;font-size:14px;line-height:1.48}
.weekly-step-wa {margin-top:11px;font-size:13px;min-height:43px;padding:9px 16px}
.weekly-clock {padding:23px 24px;background:linear-gradient(145deg,#760811,#ac0c1d);color:white;border-radius:16px;box-shadow:0 10px 23px rgba(104,5,12,.12);margin:22px 0}
.weekly-clock-heading {display:flex;align-items:center;gap:12px}
.weekly-clock-heading>span {font-size:36px;line-height:1}
.weekly-clock-heading strong {font-size:20px;line-height:1.2;display:block}
.weekly-clock-heading small {color:#fbdfe2;display:block;margin-top:6px;font-size:12px;line-height:1.5}
.weekly-clock-digits {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px}
.weekly-clock-digits>div {background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.17);border-radius:10px;padding:13px 5px;text-align:center;min-width:0}
.weekly-clock-digits strong {font-size:clamp(24px,3.3vw,38px);line-height:1.2;font-variant-numeric:tabular-nums;display:block;font-weight:850}
.weekly-clock-digits span {font-size:11px;letter-spacing:.1px;opacity:.94}
@media (max-width:1020px) {
  .category-list {grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:700px) {
  .category-list {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  /* Regla previa centraba la última tarjeta cuando había cinco. Ahora hay seis. */
  .category-list .category-card:last-child {grid-column:auto;max-width:none;width:100%;justify-self:stretch}
  .category-overlay-name {font-size:18px;bottom:12px}
  .weekly-clock {padding:19px 13px}
  .weekly-clock-heading strong {font-size:18px}
  .weekly-clock-digits {gap:5px}
  .weekly-clock-digits>div {padding:11px 2px}
  .weekly-clock-digits strong {font-size:23px}
  .weekly-clock-digits span {font-size:10px}
}


/* TEMPORIZADOR SUPERIOR DE OFERTA SEMANAL */

#weekly-countdown-top {
  margin-top: 18px;
  margin-bottom: 0;
  max-width: 510px;
}

