@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@600;700;800&family=Montserrat:wght@400;500;600;700&display=swap');

:root {
  --azul: #12303D;
  --azul-2: #0E2530;
  --cobre: #DD6B20;
  --cobre-claro: #E8935A;
  --blanco: #F4F1EC;
  --gris: #6B8A94;
  --negro: #1C1C1C;
  --white: #FFFFFF;
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Montserrat', sans-serif; background:var(--blanco); color:var(--negro); }
a { color:inherit; }
img { max-width:100%; display:block; }
.wordmark { font-family:'Poppins', sans-serif; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; }

/* ===== Header / Nav ===== */
header { background:var(--azul); position:sticky; top:0; z-index:100; box-shadow:0 2px 12px rgba(0,0,0,0.15); }
.nav-wrap { max-width:1180px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:18px 24px; position:relative; }
.nav-wrap .wordmark { font-size:26px; color:var(--cobre); text-decoration:none; }
.nav-wrap .wordmark .wordmark-rest { color:var(--blanco); }
.nav-links { display:flex; align-items:center; gap:28px; list-style:none; }
.nav-links a { color:var(--blanco); text-decoration:none; font-size:14px; font-weight:500; opacity:0.85; transition:opacity .2s, color .2s; }
.nav-links a:hover, .nav-links a.active { opacity:1; color:var(--cobre-claro); }
.nav-cta { background:var(--cobre); color:var(--blanco)!important; padding:9px 20px; border-radius:6px; opacity:1!important; font-weight:600!important; }
.nav-cta:hover { background:var(--cobre-claro); }
.burger { display:none; flex-direction:column; justify-content:center; gap:5px; width:34px; height:34px; background:none; border:none; cursor:pointer; padding:0; }
.burger span { display:block; width:100%; height:2.5px; background:var(--blanco); border-radius:2px; transition:transform .25s, opacity .25s; }
.burger.open span:nth-child(1) { transform:translateY(7.5px) rotate(45deg); }
.burger.open span:nth-child(2) { opacity:0; }
.burger.open span:nth-child(3) { transform:translateY(-7.5px) rotate(-45deg); }

.wa-float {
  position:fixed; bottom:24px; right:24px; z-index:9998;
  width:58px; height:58px; border-radius:50%; background:#25D366;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 20px rgba(0,0,0,0.3);
  animation:waPulse 2.4s ease-in-out infinite;
}
.wa-float a { display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
@keyframes waPulse {
  0%, 100% { box-shadow:0 6px 20px rgba(37,211,102,0.35), 0 0 0 0 rgba(37,211,102,0.5); }
  50% { box-shadow:0 6px 20px rgba(37,211,102,0.35), 0 0 0 12px rgba(37,211,102,0); }
}

/* ===== Buttons ===== */
.btn-primary { display:inline-block; background:var(--cobre); color:var(--blanco); text-decoration:none; padding:14px 32px; border-radius:6px; font-weight:700; font-size:15px; transition:background .2s, transform .15s; border:none; cursor:pointer; font-family:'Montserrat',sans-serif; }
.btn-primary:hover { background:var(--cobre-claro); transform:translateY(-2px); }
.btn-secondary { display:inline-block; background:transparent; color:var(--blanco); text-decoration:none; padding:14px 32px; border-radius:6px; font-weight:700; font-size:15px; border:1.5px solid rgba(244,241,236,0.4); transition:border-color .2s, color .2s; }
.btn-secondary:hover { border-color:var(--cobre-claro); color:var(--cobre-claro); }
.btn-outline-dark { display:inline-block; background:transparent; color:var(--azul); text-decoration:none; padding:12px 26px; border-radius:6px; font-weight:700; font-size:14px; border:1.5px solid var(--azul); transition:all .2s; }
.btn-outline-dark:hover { background:var(--azul); color:var(--blanco); }

/* ===== Sections generic ===== */
.section { max-width:1180px; margin:0 auto; padding:80px 24px; }
.section-tight { padding:56px 24px; }
.section-head { text-align:center; margin-bottom:44px; }
.section-head .eyebrow { color:var(--cobre); font-size:13px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; margin-bottom:14px; }
.section-head h1, .section-head h2 { font-family:'Poppins',sans-serif; font-size:34px; color:var(--azul); line-height:1.25; }
.section-head p { max-width:640px; margin:16px auto 0; color:#5A5750; font-size:15.5px; line-height:1.65; }
.eyebrow { color:var(--cobre); font-size:13px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; }

/* ===== Hero ===== */
.hero { background:var(--azul); padding:44px 24px 56px; position:relative; overflow:hidden; }
.hero-blob { position:absolute; border-radius:50%; filter:blur(10px); pointer-events:none; z-index:0; }
.hero-blob-1 { width:340px; height:340px; background:radial-gradient(circle, var(--cobre) 0%, transparent 70%); opacity:0.22; left:-100px; bottom:-140px; animation:floatBlob 9s ease-in-out infinite; }
.hero-blob-2 { width:220px; height:220px; background:radial-gradient(circle, var(--cobre-claro) 0%, transparent 70%); opacity:0.2; right:8%; top:20px; animation:floatBlob 7s ease-in-out infinite reverse; }
@keyframes floatBlob { 0%,100% { transform:translate(0,0) scale(1); } 50% { transform:translate(20px,-24px) scale(1.08); } }
.hero-wrap { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.05fr 0.95fr; gap:40px; align-items:center; position:relative; z-index:1; }
.hero-text { text-align:left; }
.hero .eyebrow { color:var(--cobre-claro); }
.hero h1 { font-family:'Poppins',sans-serif; font-weight:800; font-size:38px; color:var(--blanco); margin:14px 0 18px; line-height:1.25; }
.hero p { color:var(--gris); font-size:15.5px; max-width:520px; margin:0 0 26px; line-height:1.6; }
.hero-ctas { display:flex; gap:14px; justify-content:flex-start; flex-wrap:wrap; margin-bottom:14px; }
.hero-subtext { font-size:12.5px; color:#8AA0A6; max-width:460px; margin:0; }
.hero-visual { position:relative; display:flex; align-items:center; justify-content:center; }
.hero-visual-card { background:linear-gradient(155deg, #16394A 0%, #0E2530 100%); border-radius:20px; padding:32px; width:100%; max-width:400px; display:flex; align-items:center; justify-content:center; border:1px solid rgba(244,241,236,0.08); box-shadow:0 30px 60px rgba(0,0,0,0.35); }
.hero-visual-card img { max-height:260px; filter:drop-shadow(0 20px 24px rgba(0,0,0,0.35)); }
.hero-badge { position:absolute; bottom:-14px; left:50%; transform:translateX(-50%); background:var(--cobre); color:var(--blanco); font-family:'Poppins',sans-serif; font-weight:700; font-size:12.5px; padding:9px 20px; border-radius:30px; white-space:nowrap; box-shadow:0 8px 18px rgba(221,107,32,0.35); }

/* Hero limpio (sin imagen) */
.hero-clean { padding:72px 24px 80px; }
.hero-clean .hero-blob-1 { opacity:0.14; }
.hero-clean .hero-blob-2 { opacity:0.12; }
.hero-grid-bg {
  position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:
    linear-gradient(rgba(244,241,236,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(244,241,236,0.04) 1px, transparent 1px);
  background-size:48px 48px;
  mask-image:radial-gradient(ellipse 80% 70% at 50% 40%, #000 20%, transparent 75%);
}
.hero-wrap--centered { grid-template-columns:1fr; max-width:760px; text-align:center; }
.hero-clean .hero-text { text-align:center; }
.hero-clean h1 { font-size:42px; max-width:680px; margin-left:auto; margin-right:auto; }
.hero-clean p { max-width:580px; margin-left:auto; margin-right:auto; margin-bottom:32px; }
.hero-range {
  display:flex; align-items:center; justify-content:center; gap:20px;
  margin-bottom:32px; max-width:360px; margin-left:auto; margin-right:auto;
}
.hero-range-label {
  font-family:'Poppins',sans-serif; font-weight:700; font-size:15px;
  color:var(--blanco); letter-spacing:0.04em;
}
.hero-range-line {
  flex:1; height:1px;
  background:linear-gradient(90deg, var(--cobre-claro), rgba(244,241,236,0.35), var(--cobre-claro));
  position:relative;
}
.hero-range-line::after {
  content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:6px; height:6px; border-radius:50%; background:var(--cobre-claro);
}
.hero-clean .hero-ctas { justify-content:center; margin-bottom:40px; }
.hero-stats {
  display:grid; grid-template-columns:repeat(3, 1fr); gap:14px;
}
.hero-stats .hero-stat {
  position:relative; overflow:hidden; text-align:left;
  background:rgba(244,241,236,0.06);
  border:1px solid rgba(244,241,236,0.12);
  border-radius:14px; padding:22px 20px;
  transition:opacity .5s ease, transform .45s ease, box-shadow .3s ease, background .3s ease;
}
.hero-stat:hover {
  transform:translateY(-4px);
  background:rgba(244,241,236,0.1);
  box-shadow:0 12px 28px rgba(0,0,0,0.25);
}
.hero-stat::before {
  content:''; position:absolute; inset:0 0 auto 0; height:3px;
  background:linear-gradient(90deg, var(--cobre), var(--cobre-claro));
  transform:scaleX(0); transform-origin:left; transition:transform .3s ease;
}
.hero-stat:hover::before { transform:scaleX(1); }
.hero-stat-icon {
  display:flex; align-items:center; justify-content:center;
  width:44px; height:44px; border-radius:10px;
  background:var(--azul-2); color:var(--cobre-claro);
  margin-bottom:14px; transition:background .3s ease, color .3s ease;
}
.hero-stat:hover .hero-stat-icon { background:var(--cobre); color:var(--blanco); }
.hero-stat-icon svg { width:22px; height:22px; }
.hero-stat strong {
  display:block; font-family:'Poppins',sans-serif; font-size:15px;
  font-weight:700; color:var(--blanco); margin-bottom:2px;
}
.hero-stat span { display:block; font-size:12.5px; font-weight:600; color:var(--cobre-claro); margin-bottom:8px; }
.hero-stat p { font-size:12.5px; line-height:1.5; color:var(--gris); margin:0; }
.hero-stat:nth-child(2) { transition-delay:.08s; }
.hero-stat:nth-child(3) { transition-delay:.16s; }

@media (max-width:900px) {
  .hero-wrap { grid-template-columns:1fr; text-align:center; }
  .hero-text { text-align:center; }
  .hero-ctas { justify-content:center; }
  .hero p, .hero-subtext { margin-left:auto; margin-right:auto; }
  .hero-visual { order:-1; margin-bottom:6px; }
  .hero-visual-card { max-width:260px; padding:22px; }
  .hero-visual-card img { max-height:170px; }
  .hero-clean { padding:56px 24px 64px; }
  .hero-clean h1 { font-size:32px; }
  .hero-stats { grid-template-columns:1fr; }
  .hero-stats .hero-stat { padding:18px; }
}
.page-hero { background:var(--azul); padding:64px 24px 56px; text-align:center; }
.page-hero .eyebrow { color:var(--cobre-claro); }
.page-hero h1 { font-family:'Poppins',sans-serif; font-weight:800; font-size:36px; color:var(--blanco); max-width:760px; margin:14px auto 16px; line-height:1.3; }
.page-hero p { color:var(--gris); font-size:15.5px; max-width:640px; margin:0 auto; line-height:1.6; }

/* ===== Feature rows ===== */
.feature-row { display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; margin-bottom:70px; }
.feature-row:last-child { margin-bottom:0; }
.feature-row.reverse .f-text { order:2; }
.feature-row.reverse .f-visual { order:1; }
.f-text .eyebrow { margin-bottom:12px; display:block; }
.f-text h2, .f-text h3 { font-family:'Poppins',sans-serif; font-size:26px; font-weight:700; color:var(--azul); margin-bottom:16px; }
.f-text p { font-size:15px; line-height:1.7; color:#4A4A4A; margin-bottom:18px; }
.f-visual { background:#fff; border-radius:14px; height:280px; display:flex; align-items:center; justify-content:center; border:1px solid #E7E1D3; overflow:hidden; }
.f-visual img { max-height:100%; width:100%; object-fit:contain; padding:20px; }

/* ===== Product cards ===== */
.prod-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:26px; }
.prod-grid.cols-5 { grid-template-columns:repeat(5, 1fr); }
.prod-grid.cols-4 { grid-template-columns:repeat(4, 1fr); }
.catalog-group { margin-bottom:56px; }
.catalog-group:last-of-type { margin-bottom:0; }
.catalog-group-head { text-align:center; margin-bottom:28px; }
.catalog-group-head h3 { font-family:'Poppins',sans-serif; font-size:20px; color:var(--azul); margin-bottom:8px; }
.catalog-group-head p { font-size:13.5px; color:#767267; max-width:540px; margin:0 auto; line-height:1.55; }
.capsula-grid { grid-template-columns:repeat(2,1fr); max-width:640px; margin:0 auto; }
.prod-card { background:#fff; border-radius:10px; overflow:hidden; border:1px solid #E7E1D3; transition:transform .25s, box-shadow .25s; text-decoration:none; display:flex; flex-direction:column; height:100%; color:inherit; }
.prod-card:hover { transform:translateY(-6px); box-shadow:0 16px 32px rgba(18,48,61,0.12); border-color:var(--cobre-claro); }
.prod-img { height:190px; display:flex; align-items:center; justify-content:center; padding:18px; background:#fff; flex-shrink:0; }
.prod-img img { max-height:100%; object-fit:contain; }
.prod-body { padding:18px 20px 20px; border-top:1px solid #EFEAE0; display:flex; flex-direction:column; flex:1; }
.prod-body h3, .prod-body h4 { font-family:'Poppins',sans-serif; font-size:16px; font-weight:700; color:var(--azul); margin-bottom:6px; }
.prod-cap { font-size:12.5px; color:#767267; margin-bottom:10px; line-height:1.5; }
.prod-ctas { display:flex; gap:8px; flex-wrap:wrap; margin-top:auto; padding-top:10px; }
.prod-ctas a { font-size:12.5px; padding:8px 14px; border-radius:5px; text-decoration:none; font-weight:700; }
.prod-ctas .cta-calc { background:var(--azul); color:var(--blanco); }
.prod-ctas .cta-wa { background:#25D366; color:#fff; }

/* ===== Usos icons ===== */
.usos-grid { display:grid; grid-template-columns:repeat(5, 1fr); gap:20px; }
.uso-card { background:#fff; border-radius:10px; border:1px solid #E7E1D3; padding:26px 18px; text-align:center; text-decoration:none; color:inherit; transition:transform .2s, box-shadow .2s; }
.uso-card:hover { transform:translateY(-4px); box-shadow:0 12px 26px rgba(18,48,61,0.1); border-color:var(--cobre-claro); }
.uso-icon { width:56px; height:56px; border-radius:50%; background:var(--blanco); border:1.5px solid var(--cobre-claro); display:flex; align-items:center; justify-content:center; margin:0 auto 14px; font-size:24px; }
.uso-card h4 { font-family:'Poppins',sans-serif; font-size:14px; color:var(--azul); }

/* ===== Benefits ===== */
.benefits-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:24px; }
.benefit-card { background:#fff; border-radius:12px; border:1px solid #E7E1D3; padding:28px 24px; }
.benefit-num { width:38px; height:38px; border-radius:50%; background:var(--cobre); color:#fff; display:flex; align-items:center; justify-content:center; font-family:'Poppins',sans-serif; font-weight:800; margin-bottom:16px; }
.benefit-card h3 { font-family:'Poppins',sans-serif; font-size:16px; color:var(--azul); margin-bottom:10px; }
.benefit-card p { font-size:13.5px; color:#5A5750; line-height:1.6; }

/* ===== Nosotros cards ===== */
.nosotros-hero-band { background:var(--azul); padding:70px 24px; }
.nosotros-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:20px; }
.nosotros-card { background:var(--azul); border-radius:12px; padding:28px 24px; }
.nosotros-card h3 { font-family:'Poppins',sans-serif; color:var(--cobre-claro); font-size:17px; margin-bottom:10px; }
.nosotros-card p { color:#C9D3D6; font-size:13.5px; line-height:1.6; }

/* ===== Videos ===== */
.video-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:24px; }
.video-card { background:#fff; border-radius:12px; overflow:hidden; border:1px solid #E7E1D3; }
.video-frame { position:relative; aspect-ratio:16/9; background:var(--azul-2); display:flex; align-items:center; justify-content:center; }
.video-frame video { width:100%; height:100%; object-fit:cover; display:block; }
.video-placeholder { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; color:var(--gris); text-align:center; padding:16px; background:var(--azul-2); }
.play-btn { width:52px; height:52px; border-radius:50%; background:var(--cobre); display:flex; align-items:center; justify-content:center; }
.video-caption { padding:14px 18px; }
.video-caption h4 { font-family:'Poppins',sans-serif; font-size:14px; color:var(--azul); margin-bottom:3px; }
.video-caption p { font-size:12.5px; color:#767267; }

/* ===== Calculator ===== */
.pricing { background:#fff; border-radius:14px; border:1px solid #E7E1D3; padding:40px; }
.pricing-head { text-align:center; margin-bottom:30px; }
.pricing-head h2, .pricing-head h3 { font-family:'Poppins',sans-serif; font-size:22px; color:var(--azul); margin-bottom:8px; }
.pricing-head p { font-size:14px; color:#6B6B6B; }
.calc-row { display:flex; gap:20px; flex-wrap:wrap; align-items:flex-end; justify-content:center; margin-bottom:20px; }
.calc-field { display:flex; flex-direction:column; gap:6px; }
.calc-field label { font-size:12.5px; font-weight:700; color:var(--azul); text-transform:uppercase; letter-spacing:0.04em; }
.calc-field select, .calc-field input { font-family:'Montserrat',sans-serif; font-size:15px; padding:11px 14px; border-radius:6px; border:1.5px solid #E0DACB; min-width:220px; }
.qty-quick { display:flex; gap:8px; flex-wrap:wrap; justify-content:center; margin-bottom:28px; }
.qty-quick button { background:var(--blanco); border:1.5px solid #E0DACB; color:var(--azul); font-weight:700; font-size:13px; padding:8px 16px; border-radius:20px; cursor:pointer; transition:all .15s; font-family:'Montserrat',sans-serif; }
.qty-quick button:hover, .qty-quick button.active { background:var(--azul); color:#fff; border-color:var(--azul); }
.calc-help { font-size:11.5px; color:#8A8579; margin-top:4px; max-width:220px; }
.calc-breakdown { background:var(--blanco); border:1px solid #E7E1D3; border-radius:10px; padding:16px 20px; margin-bottom:20px; }
.calc-breakdown-row { display:flex; justify-content:space-between; padding:5px 0; font-size:13.5px; color:#4A4A4A; }
.calc-breakdown-row.total-row { border-top:1px solid #E0DACB; margin-top:6px; padding-top:10px; font-weight:700; color:var(--azul); }
.calc-results { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:22px; }
.calc-result-box { text-align:center; background:var(--azul); border-radius:12px; padding:28px 20px; }
.calc-result-box .r-label { font-size:12px; color:var(--gris); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:8px; }
.calc-result-box .r-value { font-family:'Poppins',sans-serif; font-size:38px; font-weight:800; color:var(--cobre-claro); line-height:1; }
.calc-discount-note { text-align:center; font-size:13px; color:#3D8B5F; background:#EAF6EF; border-radius:8px; padding:10px; margin-bottom:22px; font-weight:600; }
.calc-cta { text-align:center; }
.calc-disclaimer { text-align:center; font-size:12px; color:#8A8579; margin-top:18px; }

/* ===== Contact ===== */
.contacto-grid { display:grid; grid-template-columns:1fr 1fr; gap:56px; }
.contact-info h3 { font-family:'Poppins',sans-serif; font-size:20px; color:var(--azul); margin-bottom:18px; }
.contact-item { display:flex; gap:14px; margin-bottom:18px; align-items:flex-start; }
.contact-item .ci-label { font-size:12px; font-weight:700; color:var(--cobre); text-transform:uppercase; letter-spacing:0.05em; margin-bottom:3px; }
.contact-item .ci-value { font-size:15px; color:var(--negro); }
.contact-item a.ci-value { text-decoration:none; }
.contact-form { background:#fff; border:1px solid #E7E1D3; border-radius:14px; padding:32px; }
.contact-form label { display:block; font-size:12.5px; font-weight:700; color:var(--azul); text-transform:uppercase; letter-spacing:0.04em; margin-bottom:6px; margin-top:14px; }
.contact-form label:first-child { margin-top:0; }
.contact-form input, .contact-form select, .contact-form textarea { width:100%; font-family:'Montserrat',sans-serif; font-size:14px; padding:11px 14px; border-radius:6px; border:1.5px solid #E0DACB; }
.contact-form textarea { resize:vertical; min-height:80px; }
.contact-form button { margin-top:20px; width:100%; }
.map-embed { border-radius:12px; overflow:hidden; border:1px solid #E7E1D3; margin-top:20px; height:220px; }
[data-fs-success] { display:none; background:#EAF6EF; color:#2C6B44; padding:14px 16px; border-radius:8px; font-size:14px; margin-top:16px; font-weight:600; }
[data-fs-success].visible { display:block; }
[data-fs-error] { color:#B0341F; font-size:12.5px; margin-top:4px; display:block; }

/* ===== CTA band ===== */
.cta-band { background:var(--azul); padding:64px 24px; text-align:center; }
.cta-band h2 { font-family:'Poppins',sans-serif; font-size:28px; color:var(--blanco); margin-bottom:14px; }
.cta-band p { color:var(--gris); font-size:15px; margin-bottom:26px; }

/* ===== Footer ===== */
footer { background:var(--azul-2); color:var(--blanco); padding:56px 24px 28px; }
.footer-wrap { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.2fr 1fr 1fr 1fr; gap:36px; }
.footer-wrap .wordmark { font-size:26px; color:var(--cobre); margin-bottom:12px; display:block; text-decoration:none; }
.footer-wrap .wordmark .wordmark-rest { color:var(--blanco); }
.footer-wrap p { font-size:13.5px; color:#A9B7BC; line-height:1.6; }
.footer-col h4 { font-family:'Poppins',sans-serif; font-size:13px; letter-spacing:0.08em; text-transform:uppercase; color:var(--cobre-claro); margin-bottom:14px; }
.footer-col a { display:block; color:#C9D3D6; text-decoration:none; font-size:13.5px; margin-bottom:10px; }
.footer-col a:hover { color:var(--cobre-claro); }
.socials { display:flex; gap:14px; margin-top:14px; }
.socials a { width:34px; height:34px; border-radius:50%; border:1px solid #2A4855; display:flex; align-items:center; justify-content:center; font-size:12px; text-decoration:none; }
.copyright { max-width:1180px; margin:40px auto 0; padding-top:22px; border-top:1px solid #23414D; font-size:12px; color:#7C939A; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; }

/* ===== Related products ===== */
.related-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }

/* ===== Reveal on scroll ===== */
.reveal { opacity:0; transform:translateY(28px); transition:opacity .7s ease, transform .7s ease; }
.reveal.reveal-visible { opacity:1; transform:translateY(0); }

/* ===== Breadcrumb ===== */
.breadcrumb { max-width:1180px; margin:0 auto; padding:18px 24px 0; font-size:12.5px; color:#8A8579; }
.breadcrumb a { color:var(--gris); text-decoration:none; }
.breadcrumb a:hover { color:var(--cobre); }

@media (max-width:900px) {
  .nav-links {
    display:flex; flex-direction:column; align-items:flex-start; gap:0;
    position:absolute; top:100%; left:0; right:0; background:var(--azul-2);
    max-height:0; overflow:hidden; transition:max-height .3s ease;
    box-shadow:0 8px 20px rgba(0,0,0,0.25);
  }
  .nav-links.open { max-height:420px; }
  .nav-links li { width:100%; }
  .nav-links a { display:block; width:100%; padding:16px 24px; box-sizing:border-box; opacity:1; }
  .nav-links .nav-cta { margin:10px 24px; width:calc(100% - 48px); text-align:center; }
  .burger { display:flex; }
  .feature-row { grid-template-columns:1fr; gap:30px; }
  .feature-row.reverse .f-text { order:1; }
  .feature-row.reverse .f-visual { order:2; }
  .prod-grid, .prod-grid.cols-5, .prod-grid.cols-4 { grid-template-columns:repeat(2,1fr); }
  .usos-grid { grid-template-columns:repeat(2,1fr); }
  .video-grid { grid-template-columns:1fr; }
  .contacto-grid { grid-template-columns:1fr; }
  .footer-wrap { grid-template-columns:1fr 1fr; }
  .benefits-grid { grid-template-columns:1fr; }
  .nosotros-cards { grid-template-columns:1fr; }
  .related-grid { grid-template-columns:repeat(2,1fr); }
  .calc-results { grid-template-columns:1fr; }
  .hero h1 { font-size:30px; }
  .calc-row { flex-direction:column; align-items:stretch; }
  .calc-field select, .calc-field input { min-width:auto; }
}
@media (max-width:520px) {
  .prod-grid, .prod-grid.cols-5, .prod-grid.cols-4, .usos-grid, .related-grid, .capsula-grid { grid-template-columns:1fr; }
  .wa-float { width:52px; height:52px; bottom:18px; right:18px; }
  .hero { padding:28px 20px 36px; }
  .hero-clean { padding:44px 20px 52px; }
  .hero-wrap { gap:18px; }
  .hero h1 { font-size:26px; margin:10px 0 12px; }
  .hero-clean h1 { font-size:26px; }
  .hero p { font-size:14px; margin-bottom:18px; }
  .hero-clean p { margin-bottom:24px; }
  .hero-ctas { gap:10px; margin-bottom:10px; }
  .hero-clean .hero-ctas { margin-bottom:28px; }
  .hero-ctas .btn-primary, .hero-ctas .btn-secondary { padding:11px 20px; font-size:13.5px; }
  .hero-range { margin-bottom:24px; }
  .hero-visual-card { max-width:180px; padding:16px; border-radius:14px; }
  .hero-visual-card img { max-height:110px; }
}
