/* ============ RESET & BASE ============ */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:132px}
body{
  font-family:'Poppins',sans-serif;
  color:#1D1D1B;
  background:#FFF7EE;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:#1D1D1B;text-decoration:none}
a:hover{color:#F8B021}
::selection{background:#F8B021;color:#1D1D1B}
img{display:block;max-width:100%}
button{font:inherit}

.container{max-width:1240px;margin:0 auto;padding-left:24px;padding-right:24px}

.eyebrow{
  font-family:'Poppins';font-weight:700;font-size:13px;
  letter-spacing:.18em;text-transform:uppercase;color:#F8B021;
}

/* ============ IMAGE PLACEHOLDER ============ */
.img-slot{
  position:relative;width:100%;height:100%;
  background:#211f1c;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
}
.img-slot::before{
  content:"";position:absolute;inset:0;
  background:
    repeating-linear-gradient(135deg, rgba(248,176,33,.06) 0 2px, transparent 2px 14px);
}
.img-slot span{
  position:relative;
  color:rgba(255,247,238,.4);
  font-size:12.5px;font-weight:500;letter-spacing:.02em;
  text-align:center;padding:12px 16px;line-height:1.4;
}

.media-img{width:100%;height:100%;object-fit:cover;display:block}

/* ============ TOP STRIP ============ */
.top-strip{background:#141210;color:#FFF7EE;font-size:12.5px}
.top-strip .container{
  padding-top:9px;padding-bottom:9px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
}
.top-strip-status{display:flex;align-items:center;gap:9px;letter-spacing:.02em;opacity:.85}
.status-dot{
  width:7px;height:7px;border-radius:50%;background:#F8B021;
  box-shadow:0 0 0 3px rgba(248,176,33,.2);display:inline-block;flex-shrink:0;
}
.top-strip-links{display:flex;align-items:center;gap:20px}
.top-strip-links a{color:#FFF7EE;display:flex;align-items:center;gap:7px;font-weight:500}
.top-strip-mail{display:none!important}
@media(min-width:900px){.top-strip-mail{display:flex!important}}

.lang-btn{
  cursor:pointer;background:transparent;border:1px solid rgba(255,247,238,.3);
  color:#FFF7EE;font-family:'Poppins';font-weight:700;font-size:11.5px;
  letter-spacing:.08em;padding:4px 10px;border-radius:4px;
}

/* ============ HEADER / NAV ============ */
.site-header{
  position:sticky;top:0;z-index:60;background:#1D1D1B;
  border-bottom:1px solid rgba(248,176,33,.22);
}
.site-header .container{
  padding-top:14px;padding-bottom:14px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:38px;width:auto}
.brand-name{
  font-family:'Archivo Black';color:#FFF7EE;font-size:17px;
  letter-spacing:.01em;line-height:1;text-transform:uppercase;
}
.brand-name .accent{color:#F8B021}

.main-nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}
.main-nav a{color:#FFF7EE}

.header-actions{display:flex;align-items:center;gap:12px}
.header-cta{
  background:#F8B021;color:#1D1D1B;font-weight:700;font-size:13.5px;
  padding:11px 20px;border:none;border-radius:6px;letter-spacing:.01em;cursor:pointer;
}

.burger{display:none;cursor:pointer;background:transparent;border:none;padding:6px}

.mobile-menu{display:none;flex-direction:column;background:#141210;padding:8px 24px 18px;gap:2px}
.mobile-menu.open{display:flex}
.mobile-menu a{
  color:#FFF7EE;padding:11px 0;border-bottom:1px solid rgba(255,247,238,.08);font-weight:600;
}
.mobile-menu a:last-child{border-bottom:none}

@media(max-width:900px){
  .main-nav,.header-cta{display:none!important}
  .burger{display:block!important}
}

/* ============ BREADCRUMB ============ */
.breadcrumb{font-size:13px;color:rgba(255,247,238,.55);margin-bottom:28px;font-weight:500}
.breadcrumb a{color:rgba(255,247,238,.55)}
.breadcrumb .sep{margin:0 8px}
.breadcrumb .current{color:#F8B021}

/* ============ HERO (HOME) ============ */
.hero{
  position:relative;min-height:88vh;display:flex;align-items:stretch;
  background:#1D1D1B;overflow:hidden;
}
.hero-bg{position:absolute;inset:0}
.hero-scrim{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(20,18,16,.94) 0%,rgba(20,18,16,.78) 42%,rgba(20,18,16,.32) 72%,rgba(20,18,16,.15) 100%);
}
.hero-fade-bottom{
  position:absolute;left:0;right:0;bottom:0;height:120px;pointer-events:none;
  background:linear-gradient(0deg,#1D1D1B,transparent);
}
.hero-inner{
  position:relative;width:100%;padding:64px 24px 72px;
  display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center;
}
.hero-copy{pointer-events:none}
.hero-logo{
  pointer-events:auto;height:92px;width:auto;display:block;margin-bottom:22px;
  filter:drop-shadow(0 10px 24px rgba(0,0,0,.55));
}
.hero h1{
  font-family:'Archivo Black';color:#FFF7EE;font-size:clamp(40px,6vw,74px);
  line-height:.94;text-transform:uppercase;letter-spacing:-.015em;
}
.hero h1 .accent{color:#F8B021}
.hero-sub{
  color:rgba(255,247,238,.82);font-size:clamp(16px,1.5vw,19px);line-height:1.6;
  max-width:560px;margin-top:22px;font-weight:400;
}
.hero-ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap;pointer-events:auto}
.btn-primary{
  background:#F8B021;color:#1D1D1B;font-weight:700;font-size:15px;
  padding:16px 28px;border-radius:7px;border:none;cursor:pointer;
  box-shadow:0 14px 30px -12px rgba(248,176,33,.6);display:inline-flex;align-items:center;gap:9px;justify-content:center;
}
.btn-ghost-dark{
  background:rgba(255,247,238,.08);color:#FFF7EE;font-weight:700;font-size:15px;
  padding:16px 28px;border-radius:7px;border:1px solid rgba(255,247,238,.28);backdrop-filter:blur(4px);
  display:inline-flex;align-items:center;gap:9px;justify-content:center;
}
.hero-stats{display:flex;gap:30px;margin-top:40px;flex-wrap:wrap;pointer-events:auto}
.hero-stats .num{font-family:'Archivo Black';color:#FFF7EE;font-size:30px}
.hero-stats .label{color:rgba(255,247,238,.6);font-size:12.5px;font-weight:500;letter-spacing:.02em}

/* ============ QUOTE CARD ============ */
.quote-card{
  background:#FFF7EE;border-radius:14px;padding:26px;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.5);border-top:5px solid #F8B021;
  scroll-margin-top:140px;
}
.quote-card h2{
  font-family:'Archivo Black';font-size:23px;text-transform:uppercase;margin-top:6px;line-height:1;
}
.quote-form{margin-top:18px;display:flex;flex-direction:column;gap:11px}
.quote-form input,.quote-form select,.quote-form textarea{
  font-family:'Poppins';font-size:14px;padding:12px 14px;
  border:1.5px solid rgba(29,29,27,.16);border-radius:7px;background:#fff;outline:none;color:#1D1D1B;
}
.quote-form textarea{resize:none}
.btn-dark{
  cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;
  background:#1D1D1B;color:#FFF7EE;font-family:'Poppins';font-weight:700;font-size:15px;
  padding:14px;border:none;border-radius:7px;
}
.quote-note{font-size:11.5px;color:rgba(29,29,27,.5);text-align:center;line-height:1.4}

/* ============ TRUST STRIP ============ */
.trust-strip{background:#F8B021}
.trust-strip .container{
  padding-top:20px;padding-bottom:20px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
}
.trust-lead{font-family:'Archivo Black';font-size:15px;color:#1D1D1B;text-transform:uppercase;letter-spacing:.02em}
.trust-items{display:flex;gap:28px;flex-wrap:wrap;font-weight:600;font-size:13.5px;color:#1D1D1B}
.trust-items span{display:flex;align-items:center;gap:8px}

/* ============ SECTION HEADERS ============ */
.section{padding:96px 24px}
.section-head{max-width:640px;margin-bottom:44px}
.section-head h2{
  font-family:'Archivo Black';font-size:clamp(30px,4vw,46px);text-transform:uppercase;
  line-height:1;margin-top:12px;letter-spacing:-.01em;
}
.section-head p{color:rgba(29,29,27,.66);font-size:16px;line-height:1.6;margin-top:16px}

/* ============ CATALOG ============ */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.cat-card{
  display:block;background:#fff;border-radius:14px;overflow:hidden;
  border:1px solid rgba(29,29,27,.08);box-shadow:0 2px 4px rgba(0,0,0,.03);
  transition:transform .25s,box-shadow .25s;
}
.cat-card:hover{transform:translateY(-5px);box-shadow:0 22px 40px -20px rgba(0,0,0,.28)}
.cat-card-media{position:relative;aspect-ratio:4/3;background:#211f1c}
.cat-card-body{padding:20px 20px 22px}
.cat-card-body h3{font-family:'Archivo Black';font-size:19px;text-transform:uppercase;line-height:1.05}
.cat-card-body p{color:rgba(29,29,27,.62);font-size:13.5px;line-height:1.5;margin-top:7px}
.cat-link{display:inline-flex;align-items:center;gap:6px;color:#1D1D1B;font-weight:700;font-size:13.5px;margin-top:14px}

.volq-card{
  display:grid;grid-template-columns:.9fr 1.1fr;margin-top:22px;
  background:#1D1D1B;border-radius:14px;overflow:hidden;transition:transform .25s;
}
.volq-card:hover{transform:translateY(-5px)}
.volq-media{position:relative;min-height:200px;background:#211f1c}
.volq-body{padding:34px;display:flex;flex-direction:column;justify-content:center}
.volq-tag{font-family:'Poppins';font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#F8B021}
.volq-body h3{font-family:'Archivo Black';color:#FFF7EE;font-size:26px;text-transform:uppercase;line-height:1;margin-top:8px}
.volq-body p{color:rgba(255,247,238,.7);font-size:14.5px;line-height:1.55;margin-top:10px;max-width:400px}
.volq-link{display:inline-flex;align-items:center;gap:7px;color:#F8B021;font-weight:700;font-size:14px;margin-top:16px}

/* ============ POR QUÉ ============ */
.section-dark{background:#1D1D1B;color:#FFF7EE}
.why-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:52px}
.why-head h2{
  font-family:'Archivo Black';font-size:clamp(30px,4vw,46px);text-transform:uppercase;
  line-height:1;margin-top:12px;color:#FFF7EE;letter-spacing:-.01em;
}
.why-head p{color:rgba(255,247,238,.68);font-size:16px;line-height:1.65}
.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.why-card{
  background:#211f1c;border:1px solid rgba(248,176,33,.16);border-radius:12px;padding:26px 22px;
}
.why-icon{
  width:48px;height:48px;border-radius:10px;background:rgba(248,176,33,.14);
  display:flex;align-items:center;justify-content:center;margin-bottom:16px;
}
.why-card h3{font-family:'Archivo Black';font-size:15px;text-transform:uppercase;color:#FFF7EE;line-height:1.1}
.why-card p{color:rgba(255,247,238,.6);font-size:13px;line-height:1.5;margin-top:8px}

/* ============ PROYECTOS ============ */
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:220px;gap:14px}
.gallery-item{position:relative;border-radius:14px;overflow:hidden;background:#211f1c}
.gallery-item.tall{grid-row:span 2}

/* ============ COBERTURA ============ */
.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.coverage-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.coverage-chip{
  cursor:pointer;font-family:'Poppins';background:#fff;border:1px solid rgba(29,29,27,.12);
  padding:8px 14px;border-radius:100px;font-size:13px;font-weight:600;color:#1D1D1B;
  transition:background .2s,border-color .2s,color .2s;
}
.coverage-chip.active{background:#F8B021;border-color:#F8B021;font-weight:700}
.coverage-map-card{
  position:relative;border-radius:16px;overflow:hidden;background:#1D1D1B;
  box-shadow:0 24px 50px -24px rgba(0,0,0,.35);padding:26px 22px;
}
.coverage-map-card svg{display:block;width:100%;height:auto}
.map-legend{display:flex;align-items:center;gap:8px;margin-top:6px;color:rgba(255,247,238,.6);font-size:12px;font-weight:500}
.map-legend-dot{width:10px;height:10px;border-radius:50%;background:#F8B021;border:1.5px solid #1D1D1B;display:inline-block}

@keyframes mbBlink{0%,100%{opacity:1}50%{opacity:.15}}
@keyframes mbRing{0%{r:5;opacity:.85}100%{r:20;opacity:0}}
.mb-pin{opacity:.35}
.mb-pin.on{animation:mbBlink .95s ease-in-out infinite}
.mb-ring{opacity:0}
.mb-ring.on{animation:mbRing 1.7s ease-out infinite}

/* ============ CTA BAND ============ */
.cta-band{padding:80px 24px;background:#F8B021}
.cta-band-inner{max-width:1000px;margin:0 auto;text-align:center}
.cta-band h2{
  font-family:'Archivo Black';font-size:clamp(30px,4.6vw,52px);text-transform:uppercase;
  line-height:.98;color:#1D1D1B;letter-spacing:-.01em;
}
.cta-band.machine h2{font-size:clamp(28px,4.2vw,46px)}
.cta-band p{
  color:rgba(29,29,27,.78);font-size:17px;line-height:1.55;margin-top:16px;
  max-width:600px;margin-left:auto;margin-right:auto;font-weight:500;
}
.cta-band-actions{display:flex;gap:14px;justify-content:center;margin-top:30px;flex-wrap:wrap}
.btn-cta-dark{
  cursor:pointer;display:inline-flex;align-items:center;gap:10px;background:#1D1D1B;color:#FFF7EE;
  font-family:'Poppins';font-weight:700;font-size:16px;padding:17px 30px;border:none;border-radius:8px;
}
.btn-cta-outline{
  display:inline-flex;align-items:center;gap:10px;background:transparent;color:#1D1D1B;
  font-weight:700;font-size:16px;padding:17px 30px;border:2px solid #1D1D1B;border-radius:8px;
}

/* ============ FOOTER ============ */
.site-footer{background:#0f0e0c;color:#FFF7EE;padding:64px 24px 32px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:40px}
.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.footer-brand img{height:40px;width:auto}
.footer-brand .brand-name{font-size:17px}
.footer-about{color:rgba(255,247,238,.55);font-size:13.5px;line-height:1.6;max-width:300px}
.footer-heading{
  font-family:'Archivo Black';font-size:13px;text-transform:uppercase;letter-spacing:.05em;
  color:#F8B021;margin-bottom:14px;
}
.footer-links{display:flex;flex-direction:column;gap:9px;font-size:13.5px}
.footer-links a{color:rgba(255,247,238,.72)}
.footer-contact{display:flex;flex-direction:column;gap:11px;font-size:13.5px}
.footer-contact a{color:rgba(255,247,238,.72);display:flex;align-items:center;gap:9px}
.footer-contact .plain{color:rgba(255,247,238,.72);word-break:break-all}
.footer-contact .loc{color:rgba(255,247,238,.55)}
.footer-bottom{
  max-width:1240px;margin:36px auto 0;padding-top:22px;border-top:1px solid rgba(255,247,238,.1);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:rgba(255,247,238,.4);
}

.footer-social{display:flex;gap:12px;margin-top:20px}
.footer-social a{
  width:40px;height:40px;border-radius:9px;background:rgba(255,247,238,.06);
  border:1px solid rgba(255,247,238,.14);display:flex;align-items:center;justify-content:center;
  transition:background .2s,border-color .2s;
}
.footer-social a svg{fill:#FFF7EE;transition:fill .2s}
.footer-social a:hover{background:#F8B021;border-color:#F8B021}
.footer-social a:hover svg{fill:#1D1D1B}

/* Simple footer used on machine detail pages */
.footer-simple .container{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}
.footer-simple .footer-brand-block{max-width:320px}
.footer-simple .footer-contact{gap:10px}
.footer-simple .footer-social{margin-top:6px}
.footer-simple .footer-bottom{margin-top:30px;padding-top:20px}

/* ============ FLOATING WHATSAPP ============ */
.wa-float{
  position:fixed;right:20px;bottom:20px;z-index:90;display:flex;align-items:center;gap:10px;
  background:#25D366;color:#fff;font-weight:700;font-size:14.5px;
  padding:13px 18px 13px 15px;border-radius:100px;box-shadow:0 12px 28px -8px rgba(37,211,102,.6);
}
.wa-float:hover{color:#fff}

/* ============ MACHINE DETAIL: HERO ============ */
.machine-hero{position:relative;background:#1D1D1B;color:#FFF7EE;padding:44px 24px 56px}
.machine-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center}
.machine-hero h1{
  font-family:'Archivo Black';font-size:clamp(34px,5vw,58px);text-transform:uppercase;
  line-height:.96;margin-top:18px;letter-spacing:-.015em;
}
.machine-hero-sub{color:rgba(255,247,238,.8);font-size:17px;line-height:1.6;margin-top:18px;max-width:520px}
.machine-hero-ctas{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}
.btn-primary-lg{
  cursor:pointer;display:inline-flex;align-items:center;gap:9px;background:#F8B021;color:#1D1D1B;
  font-family:'Poppins';font-weight:700;font-size:15px;padding:15px 26px;border:none;border-radius:7px;
  box-shadow:0 14px 30px -12px rgba(248,176,33,.6);
}
.machine-hero-media{
  position:relative;aspect-ratio:4/3;border-radius:16px;overflow:hidden;
  background:#211f1c;box-shadow:0 30px 60px -24px rgba(0,0,0,.5);
}

/* ============ APPLICATIONS + INCLUDES ============ */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.panel-dark{background:#1D1D1B;color:#FFF7EE;border-radius:16px;padding:38px}
.panel-dark h3{font-family:'Archivo Black';font-size:22px;text-transform:uppercase;line-height:1}
.use-list{display:flex;flex-direction:column;gap:14px;margin-top:22px}
.use-item{display:flex;gap:12px;align-items:flex-start}
.use-item svg{flex-shrink:0;margin-top:1px}
.use-item span{font-size:15px;color:rgba(255,247,238,.85)}

.panel-light{background:#fff;border:1px solid rgba(29,29,27,.08);border-radius:16px;padding:38px}
.panel-light h3{font-family:'Archivo Black';font-size:22px;text-transform:uppercase;line-height:1}
.inc-list{display:flex;flex-direction:column;gap:18px;margin-top:22px}
.inc-item{display:flex;gap:14px;align-items:center}
.inc-icon{
  width:44px;height:44px;border-radius:10px;background:rgba(248,176,33,.14);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.inc-item .title{font-weight:700;font-size:15px}
.inc-item .desc{font-size:13px;color:rgba(29,29,27,.6)}

/* ============ GALLERY (3-up) ============ */
.gal3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;height:300px}
.gal3-item{position:relative;border-radius:14px;overflow:hidden;background:#211f1c}

/* ============ OTHER EQUIPMENT ============ */
.section-darker{background:#141210;color:#FFF7EE}
.other-title{font-family:'Archivo Black';font-size:clamp(26px,3.4vw,38px);text-transform:uppercase;line-height:1}
.other-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}
.other-card{
  display:flex;align-items:center;gap:20px;background:#211f1c;
  border:1px solid rgba(248,176,33,.16);border-radius:14px;padding:22px;
}
.other-media{width:96px;height:72px;border-radius:10px;overflow:hidden;flex-shrink:0;background:#141210}
.other-info{flex:1}
.other-info .name{font-family:'Archivo Black';font-size:18px;text-transform:uppercase;color:#FFF7EE}
.other-info .desc{font-size:13px;color:rgba(255,247,238,.6)}

/* ============ RESPONSIVE ============ */
@media(min-width:900px){.wa-label{display:inline}}

@media(max-width:900px){
  html{scroll-padding-top:110px}
  .hero-inner{grid-template-columns:1fr!important;gap:32px!important}
  .cat-grid{grid-template-columns:1fr 1fr!important}
  .volq-card{grid-template-columns:1fr!important}
  .why-grid{grid-template-columns:1fr 1fr!important}
  .why-head,.coverage-grid,.two-col,.machine-hero-grid{grid-template-columns:1fr!important}
  .gallery{grid-template-columns:1fr 1fr!important}
  .footer-grid{grid-template-columns:1fr 1fr!important}
  .gal3{grid-template-columns:1fr!important;height:auto!important}
  .gal3-item{height:220px}
  .footer-simple .container{flex-direction:column}
}

@media(max-width:560px){
  .cat-grid{grid-template-columns:1fr!important}
  .why-grid{grid-template-columns:1fr!important}
  .gallery{grid-template-columns:1fr!important;grid-auto-rows:200px!important}
  .footer-grid{grid-template-columns:1fr!important}
  .other-grid{grid-template-columns:1fr!important}
  .wa-label{display:none}
  .section{padding:64px 24px}
}
