
:root {
  --graphite:#15181C; --graphite-deep:#07090C; --graphite-hero:#05070A;
  --steel:#8E99A4; --white:#FFFFFF; --copper:#C9877B; --copper-soft:#e4a296;
  --blue:#123B5D; --blue-active:#1b5a8a; --text:rgba(255,255,255,.82);
  --muted:rgba(255,255,255,.58); --soft-line:rgba(255,255,255,.12);
  --copper-line:rgba(201,135,123,.42); --shadow:0 28px 100px rgba(0,0,0,.48);
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;font-family:Poppins,Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 18% 8%,rgba(201,135,123,.14),transparent 28%),radial-gradient(circle at 82% 18%,rgba(18,59,93,.26),transparent 34%),radial-gradient(circle at 50% 95%,rgba(142,153,164,.05),transparent 40%),linear-gradient(135deg,#111418 0%,#07090C 48%,#0d141d 100%);color:var(--white);overflow-x:hidden;line-height:1.65}
a{color:inherit;text-decoration:none} button,input,textarea,select{font:inherit}
.ambient{position:fixed;z-index:-5;pointer-events:none;border-radius:50%;filter:blur(58px);opacity:.52}
.ambient-one{width:420px;height:420px;left:-190px;top:18vh;background:rgba(201,135,123,.12)}
.ambient-two{width:480px;height:480px;right:-220px;top:6vh;background:rgba(18,59,93,.24)}
.metal-texture{position:fixed;inset:0;z-index:-4;pointer-events:none;opacity:.30;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px),radial-gradient(circle,rgba(255,255,255,.06) 1px,transparent 1px),repeating-linear-gradient(135deg,rgba(255,255,255,.015) 0 1px,transparent 1px 12px);background-size:72px 72px,72px 72px,5px 5px,100% 100%;mask-image:linear-gradient(to bottom,rgba(0,0,0,.95),rgba(0,0,0,.66))}
.cursor-light{position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(circle at var(--mx,52%) var(--my,18%),rgba(201,135,123,.08),transparent 26%);transition:background .18s ease}
.container{width:min(1200px,calc(100% - 40px));margin:0 auto}.section{position:relative;padding:112px 0}
.site-header{position:fixed;inset:0 0 auto 0;z-index:80;border-bottom:1px solid var(--soft-line);background:rgba(4,6,9,.74);backdrop-filter:blur(22px)}
.nav{width:min(1240px,calc(100% - 32px));height:78px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}
.brand{display:inline-flex;align-items:center}.brand-logo{height:38px;width:auto;max-width:240px;object-fit:contain;display:block;mix-blend-mode:screen;filter:drop-shadow(0 10px 20px rgba(0,0,0,.28))}
.nav-links{display:flex;align-items:center;gap:28px;color:rgba(255,255,255,.66);font-size:13px;font-weight:500;letter-spacing:.04em}.nav-links a:hover{color:var(--white)}
.nav-cta{padding:10px 17px;color:var(--graphite-deep)!important;border-radius:999px;background:linear-gradient(135deg,var(--white),var(--copper-soft));box-shadow:0 18px 40px rgba(201,135,123,.18)}
.nav-toggle{display:none;width:44px;height:44px;border:1px solid var(--soft-line);background:rgba(255,255,255,.03);border-radius:999px}.nav-toggle span{display:block;width:18px;height:2px;margin:5px auto;background:var(--white)}
.hero{min-height:100vh;display:grid;align-items:center;padding-top:128px;overflow:hidden;background:radial-gradient(circle at 14% 0%,rgba(201,135,123,.12),transparent 26%),radial-gradient(circle at 86% 10%,rgba(18,59,93,.18),transparent 30%),linear-gradient(180deg,rgba(3,4,6,.92),rgba(6,8,11,.72))}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.32),transparent 26%,transparent 70%,rgba(0,0,0,.18)),linear-gradient(90deg,transparent 49.95%,rgba(255,255,255,.05) 50%,transparent 50.05%),linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);background-size:100% 100%,100% 100%,96px 96px,96px 96px;opacity:.76;pointer-events:none}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:.98fr 1.02fr;gap:54px;align-items:center}.hero-copy{padding:42px 0}
.hero-logo-wrap{width:min(720px,100%);margin-bottom:18px}.hero-logo{display:block;width:100%;height:auto;mix-blend-mode:screen;filter:drop-shadow(0 18px 38px rgba(0,0,0,.42)) saturate(1.02) contrast(1.06)}
.technical-rule{display:flex;align-items:center;gap:5px;width:190px;margin:0 0 32px}.technical-rule span,.technical-rule i{height:2px;flex:1;display:block;background:var(--copper)}.technical-rule i{background:var(--blue-active)}
.hero-subtitle{margin:0 0 18px;color:var(--white);font-family:"Space Grotesk",Poppins,sans-serif;font-size:clamp(28px,4vw,56px);line-height:1;font-weight:400;letter-spacing:.13em;text-transform:uppercase}
.hero-description{max-width:650px;color:var(--text);font-size:clamp(17px,1.7vw,22px);margin:0 0 26px}
.statement{max-width:680px;display:grid;grid-template-columns:72px 1fr;gap:22px;align-items:center;padding:19px 24px;border:1px solid var(--copper-line);background:rgba(4,6,9,.56);box-shadow:inset 0 0 28px rgba(201,135,123,.04)}
.statement p{margin:0;color:rgba(255,255,255,.78);font-size:15px;letter-spacing:.03em}.statement-icon{position:relative;width:42px;height:42px;margin:0 auto;border:1px solid var(--copper);border-radius:50%}.statement-icon:before,.statement-icon:after{content:"";position:absolute;background:var(--copper)}.statement-icon:before{left:50%;top:-13px;width:1px;height:68px}.statement-icon:after{top:50%;left:-13px;width:68px;height:1px}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}.btn{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 22px;border-radius:999px;border:1px solid transparent;cursor:pointer;font-weight:600;font-size:14px;transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}.btn:hover{transform:translateY(-3px)}
.btn.primary{color:var(--graphite-deep);background:linear-gradient(135deg,var(--white),var(--copper-soft));box-shadow:0 18px 38px rgba(201,135,123,.22)}.btn.primary:hover{background:linear-gradient(135deg,var(--white),#b8d7ec);box-shadow:0 18px 42px rgba(18,59,93,.26)}
.btn.secondary{color:var(--white);background:rgba(201,135,123,.09);border-color:var(--copper-line)}.btn.secondary:hover{border-color:rgba(18,59,93,.85);background:rgba(18,59,93,.22)}.btn.ghost{color:var(--white);background:rgba(255,255,255,.035);border-color:var(--soft-line)}
.hero-visual{min-height:640px;position:relative;display:grid;place-items:center}.machined-part{position:relative;width:min(560px,90vw);aspect-ratio:1.05;border:1px solid rgba(255,255,255,.10);background:radial-gradient(circle at 62% 34%,rgba(255,255,255,.18),transparent 5%),radial-gradient(circle at 62% 34%,#010203 0 9%,transparent 9.5%),radial-gradient(circle at 34% 66%,rgba(201,135,123,.44),transparent 7%),radial-gradient(circle at 34% 66%,#010203 0 11%,transparent 11.6%),repeating-linear-gradient(128deg,rgba(255,255,255,.045) 0 1px,transparent 1px 9px),linear-gradient(145deg,#2a3037,#090b0e 56%,#020305);box-shadow:var(--shadow);overflow:hidden;transform:perspective(1000px) rotateX(8deg) rotateY(-12deg);transition:transform .7s ease,filter .7s ease}.machined-part:hover{transform:perspective(1000px) rotateX(5deg) rotateY(-8deg) translateY(-8px);filter:brightness(1.05)}
.part-surface{position:absolute;inset:11%;border:1px solid rgba(255,255,255,.10);background:linear-gradient(90deg,transparent 47%,rgba(255,255,255,.10) 48%,transparent 51%),linear-gradient(145deg,rgba(255,255,255,.06),transparent)}
.part-ring{position:absolute;border-radius:50%;border:15px solid rgba(255,255,255,.16);box-shadow:inset 0 0 22px rgba(0,0,0,.9),0 0 18px rgba(255,255,255,.06)}.ring-one{width:140px;height:140px;top:12%;right:15%}.ring-two{width:165px;height:165px;left:16%;bottom:14%;border-color:rgba(201,135,123,.56)}.ring-three{width:84px;height:84px;right:13%;bottom:16%;border-width:10px}
.floating-spec{position:absolute;padding:16px 18px;min-width:190px;border:1px solid var(--soft-line);background:rgba(4,6,9,.62);backdrop-filter:blur(16px);box-shadow:0 20px 60px rgba(0,0,0,.24)}.floating-spec span{display:block;margin-bottom:4px;color:var(--copper);font-size:11px;letter-spacing:.22em}.floating-spec strong{font-size:14px;color:rgba(255,255,255,.82)}.spec-one{left:1%;top:16%}.spec-two{right:2%;bottom:12%}
.hero-bottom{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px;border:1px solid var(--soft-line);background:rgba(4,6,9,.42)}.hero-bottom div{padding:22px;border-right:1px solid var(--soft-line)}.hero-bottom div:last-child{border-right:0}.hero-bottom span{display:inline-block;margin-bottom:9px;color:var(--copper);font-size:12px;letter-spacing:.24em}.hero-bottom p{margin:0;color:var(--muted);font-size:14px}
.eyebrow{margin:0 0 20px;color:var(--copper);font-size:12px;font-weight:700;letter-spacing:.32em;text-transform:uppercase}h2{margin:0;max-width:920px;font-family:"Space Grotesk",Poppins,sans-serif;font-size:clamp(36px,5vw,70px);font-weight:400;line-height:1.04;letter-spacing:.01em}h3{margin:0 0 12px;color:var(--white);font-size:16px;line-height:1.35;font-weight:600;letter-spacing:.12em;text-transform:uppercase}p{margin:0}
.split-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:78px;align-items:start}.copy-block{color:var(--text);font-size:18px}.copy-block p+p{margin-top:18px}.copy-block strong{color:var(--white)}.reinforcement{margin-top:28px;padding:24px;color:var(--white);border-left:3px solid var(--copper);background:linear-gradient(90deg,rgba(201,135,123,.12),transparent),rgba(7,9,12,.36);font-weight:600}
.centered{max-width:920px;margin:0 auto 48px;text-align:center}.section-heading.centered p{color:var(--muted)}.what-we-do{padding-top:70px}.premium-tags,.application-list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.premium-tags span,.application-list span{padding:12px 16px;color:rgba(255,255,255,.72);border:1px solid var(--soft-line);background:rgba(7,9,12,.34);font-size:13px;letter-spacing:.04em;transition:border-color .22s ease,color .22s ease,transform .22s ease}.premium-tags span:hover,.application-list span:hover{color:var(--white);border-color:var(--copper-line);transform:translateY(-3px)}
.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:46px}.capability-card{position:relative;min-height:540px;padding:30px;border:1px solid var(--soft-line);background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.012)),rgba(7,9,12,.42);backdrop-filter:blur(14px);overflow:hidden;transition:transform .26s ease,border-color .26s ease,background .26s ease}.capability-card:after{content:"";position:absolute;inset:auto 0 0 0;height:3px;background:linear-gradient(90deg,transparent,var(--copper),var(--blue-active),transparent);opacity:0;transition:opacity .26s ease}.capability-card:hover{transform:translateY(-8px);border-color:var(--copper-line);background:radial-gradient(circle at 20% 0%,rgba(201,135,123,.12),transparent 28%),rgba(7,9,12,.56)}.capability-card:hover:after{opacity:1}.capability-card.featured{border-color:var(--copper-line);background:radial-gradient(circle at 18% 0%,rgba(201,135,123,.18),transparent 30%),linear-gradient(145deg,rgba(18,59,93,.14),rgba(7,9,12,.72))}.capability-card.wide{grid-column:span 3;min-height:auto}.capability-card p{margin:0 0 22px;color:var(--muted);font-size:14px}.card-index{position:absolute;top:26px;right:28px;color:rgba(255,255,255,.22);font-family:"Space Grotesk",sans-serif;font-size:44px;line-height:1}.icon{width:54px;height:54px;position:relative;margin-bottom:26px;color:var(--copper)}.icon:before{position:absolute;inset:0;display:grid;place-items:center;color:var(--copper);font-size:42px;font-weight:300}.icon.cad:before{content:"△"}.icon.metal:before{content:"▱";transform:rotate(-12deg)}.icon.weld:before{content:"✦"}.icon.precision:before{content:"⊙";color:var(--steel)}.icon.aluminum:before{content:"◖";color:var(--copper-soft)}.icon.finish:before{content:"⊹"}.icon.assembly:before{content:"◇";color:var(--steel)}ul{margin:0;padding-left:18px;color:rgba(255,255,255,.68);font-size:13px}li+li{margin-top:7px}
.differentiator{background:radial-gradient(circle at 88% 18%,rgba(18,59,93,.20),transparent 30%),linear-gradient(145deg,rgba(4,6,9,.92),rgba(7,9,12,.5));border-top:1px solid var(--soft-line);border-bottom:1px solid var(--soft-line)}.differentiator-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:64px;align-items:center}.differentiator p{max-width:680px;color:var(--text);margin-top:20px}.flow-diagram{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:32px;border:1px solid var(--soft-line);background:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),rgba(4,6,9,.46);background-size:36px 36px}.flow-diagram:before{content:"";position:absolute;left:12%;right:12%;top:50%;height:1px;background:linear-gradient(90deg,transparent,var(--copper),var(--blue-active),transparent)}.flow-node{position:relative;z-index:1;min-height:86px;display:grid;place-items:center;padding:16px;color:rgba(255,255,255,.72);text-align:center;border:1px solid var(--soft-line);background:rgba(7,9,12,.82);font-size:13px;font-weight:600}.flow-node.active{color:var(--white);border-color:var(--copper-line);background:linear-gradient(145deg,rgba(201,135,123,.16),rgba(18,59,93,.16))}
.statement-large{margin-top:54px;padding:34px;color:var(--white);border:1px solid var(--copper-line);background:linear-gradient(90deg,rgba(201,135,123,.14),transparent),rgba(4,6,9,.50);font-family:"Space Grotesk",Poppins,sans-serif;font-size:clamp(24px,3vw,42px);line-height:1.18}.benefits-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-top:28px;border:1px solid var(--soft-line);border-right:0}.benefit{min-height:150px;padding:20px;color:rgba(255,255,255,.68);border-right:1px solid var(--soft-line);background:rgba(4,6,9,.38);font-size:13px;font-weight:500}.benefit span{width:9px;height:9px;display:block;margin-bottom:18px;background:var(--copper);transform:rotate(45deg)}
.aluminum-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:62px;align-items:center}.visual-stack{position:relative;min-height:560px}.aluminum-render{position:absolute;border:1px solid var(--soft-line);background:radial-gradient(circle at 58% 34%,rgba(255,255,255,.22),transparent 6%),radial-gradient(circle at 58% 34%,#020304 0 10%,transparent 10.8%),radial-gradient(circle at 34% 58%,rgba(201,135,123,.32),transparent 8%),repeating-linear-gradient(120deg,rgba(255,255,255,.05) 0 1px,transparent 1px 9px),linear-gradient(145deg,#2d353e,#06080b 62%);box-shadow:var(--shadow)}.render-main{inset:0 8% 12% 0}.render-secondary{width:48%;height:42%;right:0;bottom:0;background:radial-gradient(circle at 45% 45%,rgba(201,135,123,.46),transparent 8%),radial-gradient(circle at 45% 45%,#020304 0 12%,transparent 12.8%),repeating-linear-gradient(25deg,rgba(255,255,255,.045) 0 1px,transparent 1px 8px),linear-gradient(145deg,#20262d,#07090c)}.aluminum-section p{color:var(--text)}.aluminum-cards{display:grid;gap:16px;margin:30px 0}.aluminum-cards article{padding:24px;border:1px solid var(--soft-line);background:rgba(4,6,9,.44)}.aluminum-cards span,.timeline-item span{display:inline-block;margin-bottom:16px;color:var(--copper);font-size:12px;letter-spacing:.24em}
.sector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:46px}.sector{min-height:150px;display:grid;align-content:center;gap:18px;padding:22px;border:1px solid var(--soft-line);background:rgba(7,9,12,.34);transition:transform .22s ease,border-color .22s ease,background .22s ease}.sector:hover{transform:translateY(-6px);border-color:rgba(18,59,93,.9);background:rgba(18,59,93,.12)}.sector-icon{width:34px;height:34px;border:1px solid var(--copper);transform:rotate(45deg)}.sector span{color:rgba(255,255,255,.72);font-size:14px;font-weight:600}
.timeline{display:grid;grid-template-columns:repeat(5,1fr);border-left:1px solid var(--soft-line);border-top:1px solid var(--soft-line);margin-top:46px}.timeline-item{min-height:280px;padding:26px;border-right:1px solid var(--soft-line);border-bottom:1px solid var(--soft-line);background:rgba(7,9,12,.34)}.timeline-item p{color:var(--muted);font-size:14px}
.quality{padding-top:70px}.quality-card{padding:54px;border:1px solid var(--soft-line);background:radial-gradient(circle at 18% 0%,rgba(201,135,123,.10),transparent 30%),rgba(7,9,12,.42)}.quality-card p{max-width:850px;color:var(--text);margin-top:20px}.quality-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}.quality-points span{padding:18px;color:rgba(255,255,255,.72);border:1px solid var(--soft-line);background:rgba(255,255,255,.03);font-size:14px}
.contact{background:radial-gradient(circle at 78% 22%,rgba(201,135,123,.12),transparent 30%),radial-gradient(circle at 28% 85%,rgba(18,59,93,.18),transparent 34%)}.contact-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:60px;align-items:start}.contact-grid p{max-width:650px;color:var(--text);margin-top:22px}.final-copy{color:var(--muted)!important}.cta-row{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}.contact-form{display:grid;gap:16px;padding:32px;border:1px solid var(--soft-line);background:rgba(4,6,9,.50);backdrop-filter:blur(16px);box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:grid;gap:8px;color:rgba(255,255,255,.68);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}input,textarea,select{width:100%;padding:14px 15px;color:var(--white);border:1px solid var(--soft-line);background:rgba(21,24,28,.68);border-radius:0;outline:none}select{appearance:none}input:focus,textarea:focus,select:focus{border-color:var(--copper);box-shadow:0 0 0 4px rgba(201,135,123,.08)}textarea{resize:vertical}.file-placeholder{display:grid;gap:6px;padding:18px;border:1px dashed rgba(201,135,123,.45);background:rgba(201,135,123,.045)}.file-upload {
  display: grid;
  gap: 6px;
  padding: 18px;
  border: 1px dashed rgba(201,135,123,.45);
  background: rgba(201,135,123,.045);
  cursor: pointer;
  transition: border-color .25s ease, background .25s ease;
}

.file-upload:hover {
  border-color: var(--copper);
  background: rgba(201,135,123,.08);
}

.file-upload span {
  color: var(--white);
  font-size: 13px;
  font-weight: 600;
}

.file-upload small {
  color: var(--muted);
}

.file-upload input {
  margin-top: 10px;
  color: var(--muted);
}
/* Footer corregido — versión horizontal premium */

.footer {
  padding: 0;
  border-top: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 16% 18%, rgba(201,135,123,.08), transparent 28%),
    radial-gradient(circle at 82% 22%, rgba(18,59,93,.12), transparent 32%),
    linear-gradient(135deg, #05070A 0%, #080B10 48%, #0B1017 100%);
}

.footer-content {
  min-height: unset;
  display: grid;
  grid-template-columns: 260px 1fr 220px;
  gap: 56px;
  align-items: center;
  padding: 46px 0;
}

.footer-brand {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-height: unset;
  height: auto;
}

.footer-brand img {
  width: 220px;
  max-width: 100%;
  height: auto;
  max-height: 110px;
  object-fit: contain;
  display: block;
  mix-blend-mode: screen;
  filter: drop-shadow(0 18px 34px rgba(0,0,0,.35));
}

.footer-contact {
  display: grid;
  gap: 10px;
  justify-items: start;
  align-content: center;
}

.footer-contact a,
.footer-contact p {
  margin: 0;
  color: rgba(255,255,255,.66);
  text-decoration: none;
  font-size: 15px;
  letter-spacing: .03em;
  line-height: 1.45;
  transition: color .25s ease;
}

.footer-nav {
  display: grid;
  gap: 10px;
  justify-items: start;
  align-content: center;
}

.footer-nav a {
  color: rgba(255,255,255,.66);
  text-decoration: none;
  font-size: 15px;
  letter-spacing: .04em;
  line-height: 1.45;
  transition: color .25s ease, transform .25s ease;
}

.footer-contact a:hover,
.footer-nav a:hover {
  color: var(--copper);
}

.footer-nav a:hover {
  transform: translateX(3px);
}

.footer *,
.footer-content *,
.footer-brand * {
  min-height: 0;
}

@media (max-width: 900px) {
  .footer-content {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 42px 0;
    text-align: center;
  }

  .footer-brand {
    justify-content: center;
  }

  .footer-brand img {
    width: 190px;
    max-height: 95px;
  }

  .footer-contact,
  .footer-nav {
    justify-items: center;
  }
}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .82s ease,transform .82s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}.delay-4{transition-delay:.32s}
@media (max-width:1120px){.hero-grid,.split-layout,.differentiator-grid,.aluminum-grid,.contact-grid{grid-template-columns:1fr}.hero-visual{min-height:520px}.capability-grid{grid-template-columns:1fr 1fr}.capability-card.wide{grid-column:span 2}.benefits-grid{grid-template-columns:repeat(2,1fr)}.sector-grid{grid-template-columns:repeat(3,1fr)}.timeline{grid-template-columns:1fr}.timeline-item{min-height:auto}}
@media (max-width:840px){.section{padding:82px 0}.nav-toggle{display:block}.nav-links{position:fixed;left:16px;right:16px;top:78px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px;border:1px solid var(--soft-line);background:rgba(4,6,9,.96);box-shadow:var(--shadow)}.nav-links.open{display:flex}.nav-links a{padding:14px}.nav-cta{margin-top:8px;text-align:center}.hero{padding-top:108px}.hero-subtitle{letter-spacing:.07em}.statement{grid-template-columns:1fr;text-align:center;justify-items:center}.hero-bottom{grid-template-columns:1fr}.hero-bottom div{border-right:0;border-bottom:1px solid var(--soft-line)}.hero-bottom div:last-child{border-bottom:0}.flow-diagram{grid-template-columns:1fr 1fr}.capability-grid,.quality-points,.sector-grid,.footer-grid{grid-template-columns:1fr}.capability-card.wide{grid-column:span 1}.form-row{grid-template-columns:1fr}.visual-stack{min-height:420px}}
@media (max-width:560px){.container{width:min(100% - 28px,1200px)}.nav{width:min(100% - 24px,1240px)}.brand-logo{height:30px}.hero-logo-wrap{margin-bottom:18px}h2{font-size:34px}.hero-description,.copy-block{font-size:16px}.hero-actions,.cta-row,.btn{width:100%}.machined-part{width:94vw}.floating-spec{position:relative;left:auto;right:auto;top:auto;bottom:auto;margin-top:12px;width:100%}.hero-visual{min-height:auto;display:block}.flow-diagram{grid-template-columns:1fr}.benefits-grid{grid-template-columns:1fr}.quality-card,.contact-form{padding:24px}}


/* ============================
   HUVE V3 — Real image system
   ============================ */

figure { margin: 0; }

.image-card,
.section-image,
.wide-image,
.card-image {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--soft-line);
  background:
    linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.01)),
    rgba(4,6,9,.62);
  box-shadow: var(--shadow);
}

.image-card::after,
.section-image::after,
.wide-image::after,
.card-image::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.28)),
    radial-gradient(circle at 24% 12%, rgba(201,135,123,.14), transparent 34%),
    radial-gradient(circle at 82% 18%, rgba(18,59,93,.16), transparent 38%);
  mix-blend-mode: screen;
  opacity: .42;
}

.image-card img,
.section-image img,
.wide-image img,
.card-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: brightness(.82) contrast(1.08) saturate(.92);
  transition: transform .7s ease, filter .7s ease;
}

.image-card:hover img,
.section-image:hover img,
.wide-image:hover img,
.card-image:hover img {
  transform: scale(1.035);
  filter: brightness(.9) contrast(1.12) saturate(.98);
}

.hero-image-card {
  width: min(620px, 92vw);
  aspect-ratio: 16 / 9;
  transform: perspective(1000px) rotateX(5deg) rotateY(-8deg);
  transition: transform .7s ease;
}

.hero-image-card:hover {
  transform: perspective(1000px) rotateX(3deg) rotateY(-5deg) translateY(-6px);
}

.positioning-image {
  aspect-ratio: 16 / 9;
  margin-bottom: 28px;
}

.wide-image {
  aspect-ratio: 16 / 9;
  margin: 0 auto 34px;
  max-width: 1180px;
}

.card-image {
  aspect-ratio: 16 / 9;
  margin: 0 0 22px;
  box-shadow: 0 18px 58px rgba(0,0,0,.28);
}

.card-image img {
  filter: brightness(.78) contrast(1.08) saturate(.9);
}

.flow-visual {
  display: grid;
  gap: 18px;
}

.flow-visual .section-image {
  aspect-ratio: 16 / 9;
}

.aluminum-main-image {
  width: 100%;
  height: 100%;
  min-height: 480px;
}

.quality-image {
  margin-top: 34px;
  margin-bottom: 26px;
}

.capability-card .icon + .card-image {
  margin-top: -8px;
}

@media (max-width: 840px) {
  .hero-image-card {
    width: 100%;
    transform: none;
  }

  .aluminum-main-image {
    min-height: 280px;
  }

  .wide-image,
  .section-image,
  .card-image {
    aspect-ratio: 16 / 10;
  }
}

/* HUVE update: extra accent for new capability images */
.capability-card.featured .card-image {
  border-color: rgba(201,135,123,.46);
}
.assembly-image {
  max-height: 460px;
}
.assembly-image img {
  object-position: center center;
}

/* Fix: navigation anchor should land on the special aluminum block, below fixed header */
#aluminio,
#capacidades,
#sectores,
#proceso,
#contacto {
  scroll-margin-top: 96px;
}


/* Corrección de navegación: el enlace Inicio apunta al hero real */
#inicio {
  scroll-margin-top: 0;
}
.quote-requirements {
  margin-bottom: 28px;
  padding: 26px;
  border: 1px solid var(--soft-line);
  background:
    radial-gradient(circle at 18% 0%, rgba(201,135,123,.12), transparent 34%),
    rgba(7,9,12,.42);
  backdrop-filter: blur(14px);
}

.quote-requirements h3 {
  margin: 0 0 18px;
  color: var(--white);
  font-size: 18px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.requirements-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}

.requirements-grid span {
  padding: 10px 13px;
  color: rgba(255,255,255,.74);
  border: 1px solid var(--soft-line);
  background: rgba(255,255,255,.035);
  font-size: 12px;
  letter-spacing: .04em;
  transition: border-color .25s ease, transform .25s ease, background .25s ease;
}

.requirements-grid span:hover {
  transform: translateY(-3px);
  border-color: var(--copper-line);
  background: rgba(201,135,123,.08);
}

.requirements-note {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

.whatsapp-float {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 90;
  padding: 13px 18px;
  border-radius: 999px;
  color: var(--graphite-deep);
  background: linear-gradient(135deg, var(--white), var(--copper-soft));
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 18px 45px rgba(0,0,0,.35);
  border: 1px solid rgba(255,255,255,.18);
  transition: transform .25s ease, background .25s ease;
}

.whatsapp-float:hover {
  transform: translateY(-3px);
  background: linear-gradient(135deg, var(--white), #b8d7ec);
}

@media (max-width: 560px) {
  .whatsapp-float {
    right: 16px;
    bottom: 16px;
  }

  .quote-requirements {
    padding: 22px;
  }
}

/* SEO / accessibility helper */
.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;
}

/* HUVE fix: banner final más horizontal y ancho */
.contact-inner {
  display: grid;
  gap: 34px;
}

.contact-inner .contact-grid {
  width: 100%;
}

.quote-requirements.quote-banner {
  width: 100%;
  margin: 0;
  display: grid;
  grid-template-columns: minmax(280px, .75fr) 1.25fr;
  gap: 28px;
  align-items: center;
  padding: 26px 30px;
}

.quote-banner .eyebrow {
  margin-bottom: 12px;
}

.quote-banner h3 {
  margin-bottom: 10px;
}

.quote-banner .requirements-grid {
  margin-bottom: 0;
  justify-content: flex-start;
}

.quote-banner .requirements-note {
  max-width: 560px;
}

/* Si el banner visual de calidad se veía muy alto, lo dejamos más panorámico */
.quality-image {
  width: 100%;
  max-width: 1180px;
  aspect-ratio: 21 / 9;
  max-height: 380px;
}

.quality-image img {
  object-position: center center;
}

@media (max-width: 840px) {
  .quote-requirements.quote-banner {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .quality-image {
    aspect-ratio: 16 / 9;
    max-height: none;
  }
}
