:root {
  --gold: #f5b62e;
  --gold-light: #ffd36b;
  --ink: #070a0c;
  --white: #f6f6f3;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--ink); color: var(--white); font-family: Manrope, sans-serif; }
a { color: inherit; text-decoration: none; }

.site-header {
  position: fixed; inset: 0 0 auto; z-index: 20; height: 106px; display: flex; align-items: center;
  padding: 0 clamp(26px, 4.2vw, 72px); border-bottom: 1px solid rgba(245,182,46,.44);
  background:#080b0c;
}
.brand { display:inline-flex; align-items:center; }
.brand img { display:block; width:clamp(250px,22vw,315px); height:auto; }

.menu-toggle { display:none; margin-left:auto; width:50px; height:48px; align-content:center; gap:8px; padding:8px; border:0; background:transparent; cursor:pointer; }
.menu-toggle span { height:4px; width:100%; background:var(--gold); box-shadow:0 0 9px rgba(245,182,46,.25); transition:.25s; }
.menu-toggle[aria-expanded="true"] span:nth-child(1){ transform:translateY(12px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.menu-toggle[aria-expanded="true"] span:nth-child(3){ transform:translateY(-12px) rotate(-45deg); }
nav { margin-left:auto; display:flex; align-items:center; gap:clamp(28px,3.2vw,52px); }
nav a { font:600 16px/1 Montserrat,sans-serif; text-transform:uppercase; letter-spacing:.16em; }
nav a:hover { color:var(--gold); }

.hero { position:relative; min-height:100svh; overflow:hidden; display:flex; align-items:center; isolation:isolate; padding:150px clamp(28px,4.2vw,72px) 70px; background:#0a0d0d url('assets/andes-hero-desktop-grounded.png') center bottom/100% auto no-repeat; }
.hero::after { content:""; position:absolute; z-index:-1; inset:auto 0 0; height:35%; background:linear-gradient(transparent,rgba(0,0,0,.76)); }
.hero-shade { position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(2,5,6,.96) 0%,rgba(2,5,6,.79) 31%,rgba(2,5,6,.22) 60%,rgba(2,5,6,.08) 100%); }
.hero-content { position:relative; z-index:3; width:min(760px,66vw); margin-top:15px; }
.eyebrow { display:flex; align-items:center; gap:18px; margin:0 0 25px; color:#c9cbcd; text-transform:uppercase; letter-spacing:.34em; font:600 13px/1.2 Montserrat,sans-serif; }
.eyebrow span { width:45px; height:1px; background:var(--gold); }
h1 { margin:0; font:800 clamp(42px,5vw,78px)/.98 Montserrat,sans-serif; letter-spacing:-.035em; text-transform:uppercase; text-shadow:0 4px 24px rgba(0,0,0,.7); }
h1 em { display:block; margin-top:8px; color:var(--gold-light); font-style:normal; white-space:nowrap; }
.subhead { margin:22px 0 28px; text-transform:uppercase; font:500 clamp(16px,1.9vw,27px)/1.2 Montserrat,sans-serif; letter-spacing:.32em; }
.intro { margin:0 0 29px; font-size:clamp(18px,1.65vw,25px); line-height:1.35; font-weight:500; }
.cta { display:inline-flex; align-items:center; justify-content:space-between; width:min(352px,100%); min-height:78px; padding:0 28px 0 37px; color:#090b0c; background:linear-gradient(120deg,#e9a81d,#ffd162 54%,#e8a322); border:1px solid #ffda73; border-radius:5px; box-shadow:0 9px 35px rgba(0,0,0,.35); text-transform:uppercase; font:800 24px/1 Montserrat,sans-serif; transition:transform .2s,filter .2s; }
.cta:hover { transform:translateY(-3px); filter:brightness(1.08); }
.cta span { font:400 52px/1 Arial; transform:translateY(-2px); }
.values { position:absolute; z-index:4; right:5vw; top:48%; display:flex; gap:28px; align-items:stretch; }
.values > span { width:2px; background:var(--gold); }
.values ul { margin:0; padding:0; list-style:none; display:grid; gap:12px; text-transform:uppercase; color:#d4d5d5; font:500 13px/1 Montserrat,sans-serif; letter-spacing:.24em; }
.fleet { display:none; position:absolute; z-index:2; width:min(63vw,900px); right:-2vw; bottom:-1.5%; pointer-events:none; }
.fleet::before { content:""; position:absolute; z-index:0; left:2%; right:1%; bottom:3%; height:30%; border-radius:50%; background:radial-gradient(ellipse at center,rgba(181,132,64,.42) 0%,rgba(112,91,65,.27) 45%,rgba(0,0,0,0) 76%); filter:blur(10px); }
.fleet picture { position:relative; z-index:1; display:block; }
.fleet img { display:block; width:100%; height:auto; mix-blend-mode:screen; filter:drop-shadow(0 16px 18px rgba(0,0,0,.75)); }
.scroll-cue { position:absolute; left:50%; bottom:25px; z-index:5; display:flex; align-items:center; gap:10px; color:#a8abad; text-transform:uppercase; letter-spacing:.2em; font-size:10px; }
.scroll-cue span { width:1px; height:25px; background:var(--gold); }
.fleet-section { position:relative; isolation:isolate; min-height:720px; overflow:hidden; padding:80px clamp(28px,4.2vw,72px) 36px; background:#080b0d url('assets/andes-hero.png') center 42%/cover no-repeat; border-top:1px solid rgba(245,182,46,.28); }
.fleet-section-shade { position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(3,6,7,.88) 0%,rgba(3,6,7,.6) 45%,rgba(3,6,7,.91) 100%),linear-gradient(90deg,rgba(0,0,0,.7),transparent 60%); }
.fleet-heading { position:relative; z-index:3; display:flex; align-items:center; justify-content:space-between; gap:50px; }
.fleet-eyebrow { margin-bottom:17px; color:var(--gold); }
.fleet-heading h2 { margin:0; font:800 clamp(40px,4.1vw,64px)/.98 Montserrat,sans-serif; letter-spacing:-.035em; text-transform:uppercase; }
.fleet-heading h2 em { display:block; margin-top:5px; color:var(--gold-light); font-style:normal; }
.fleet-heading > div > p:last-child { margin:18px 0 0; color:#e2e2df; font-size:clamp(17px,1.6vw,23px); line-height:1.35; }
.outline-cta { flex:none; display:inline-flex; align-items:center; justify-content:space-between; gap:30px; min-width:320px; padding:18px 23px; border:2px solid var(--gold); border-radius:5px; color:var(--gold-light); text-transform:uppercase; font:700 16px/1 Montserrat,sans-serif; transition:background .2s,color .2s; }
.outline-cta span { font:400 38px/1 Arial; }
.outline-cta:hover { background:var(--gold); color:#090b0c; }
.vehicle-grid { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,1fr); margin-top:22px; }
.vehicle-card { min-width:0; overflow:hidden; border-right:1px solid rgba(245,182,46,.48); }
.vehicle-card:last-child { border-right:0; }
.vehicle-visual { position:relative; height:270px; overflow:hidden; background:#050708; }
.vehicle-visual picture { display:block; width:100%; height:100%; }
.vehicle-visual img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.vehicle-info { min-height:126px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:14px; text-align:center; text-transform:uppercase; }
.vehicle-info small { color:#dfe0e0; font:600 15px/1 Montserrat,sans-serif; letter-spacing:.08em; }
.vehicle-info h3 { margin:5px 0 8px; font:700 24px/1 Montserrat,sans-serif; letter-spacing:.02em; }
.vehicle-info strong { color:var(--gold); font:600 19px/1 Montserrat,sans-serif; letter-spacing:.18em; }
.services-section { scroll-margin-top:106px; padding:58px clamp(28px,4.2vw,72px) 72px; background:radial-gradient(circle at 84% 10%,rgba(245,182,46,.055),transparent 27%),linear-gradient(135deg,#090c0d,#0e1111 58%,#090b0c); border-top:1px solid rgba(255,255,255,.08); }
.services-heading { display:flex; align-items:center; gap:22px; margin-bottom:22px; }
.services-heading h2 { margin:0; color:var(--gold); text-transform:uppercase; font:600 16px/1 Montserrat,sans-serif; letter-spacing:.34em; }
.services-heading > span { width:45px; height:1px; background:var(--gold); }
.services-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.service-card { min-height:265px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:28px 20px; text-align:center; border:1px solid rgba(245,182,46,.6); border-radius:15px; background:linear-gradient(145deg,rgba(255,255,255,.03),rgba(255,255,255,.005)); transition:transform .25s,border-color .25s,background .25s; }
.service-card:hover { transform:translateY(-5px); border-color:var(--gold-light); background:linear-gradient(145deg,rgba(245,182,46,.09),rgba(255,255,255,.01)); }
.service-card .material-symbols-rounded { color:var(--gold-light); font-size:54px; line-height:1; font-variation-settings:'FILL' 1,'wght' 600,'GRAD' 0,'opsz' 48; }
.service-card h3 { margin:17px 0 12px; text-transform:uppercase; font:700 clamp(17px,1.5vw,21px)/1.13 Montserrat,sans-serif; }
.service-card p { margin:0; color:#dbdcdc; font-size:16px; line-height:1.35; }
.closing { scroll-margin-top:106px; padding:14px clamp(18px,3.4vw,52px) 0; background:#06090a; border-top:1px solid rgba(255,255,255,.08); }
.closing-banner { min-height:210px; display:flex; align-items:center; justify-content:space-between; gap:50px; padding:28px clamp(30px,5vw,76px); overflow:hidden; position:relative; isolation:isolate; border:1px solid rgba(245,182,46,.55); border-radius:22px; background:url('assets/andes-hero.png') center 44%/cover no-repeat; }
.closing-banner::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(4,7,8,.83),rgba(4,7,8,.35) 58%,rgba(4,7,8,.69)); }
.closing-copy h2 { margin:0; text-transform:uppercase; font:800 clamp(30px,3.2vw,48px)/.98 Montserrat,sans-serif; letter-spacing:-.025em; text-shadow:0 3px 12px #000; }
.closing-copy h2 em { color:var(--gold-light); font-style:normal; white-space:nowrap; }
.closing-copy p { margin:17px 0 0; text-transform:uppercase; font:600 14px/1.45 Montserrat,sans-serif; letter-spacing:.23em; }
.closing-actions { width:min(390px,36%); display:grid; gap:13px; }
.closing-cta { width:100%; min-height:76px; }
.whatsapp-link { display:flex; align-items:center; justify-content:center; gap:12px; text-transform:uppercase; font:600 14px/1 Montserrat,sans-serif; letter-spacing:.13em; }
.whatsapp-link .material-symbols-rounded { color:var(--gold); font-size:32px; }
.site-footer { padding:48px 28px 0; }
.desktop-footer-grid { display:grid; grid-template-columns:1.35fr .72fr 1fr 1.25fr; gap:clamp(30px,4vw,70px); padding:0 12px 44px; }
.footer-brand img,.mobile-footer-brand img { width:min(300px,95%); height:auto; }
.footer-brand > p { margin:22px 0; color:#bfc2c3; font-size:14px; line-height:1.55; }
.footer-column { display:flex; flex-direction:column; align-items:flex-start; gap:13px; }
.footer-column h3 { margin:5px 0 9px; color:var(--gold); text-transform:uppercase; font:700 12px/1 Montserrat,sans-serif; letter-spacing:.2em; }
.footer-column > a:not(.footer-email) { color:#c8caca; font-size:14px; transition:color .2s,transform .2s; }
.footer-column > a:not(.footer-email):hover { color:#fff; transform:translateX(3px); }
.footer-contact > p { margin:0; max-width:300px; color:#bfc2c3; font-size:14px; line-height:1.5; }
.footer-email { display:flex; align-items:center; justify-content:space-between; gap:15px; width:100%; margin:7px 0; padding:13px 0; color:#fff; border-bottom:1px solid rgba(245,182,46,.55); font-size:14px; }
.footer-email span { color:var(--gold); font-size:20px; }
.footer-contact .footer-location { display:flex; align-items:center; gap:7px; color:#d8d9d9; }
.footer-location .material-symbols-rounded { color:var(--gold); font-size:20px; }
.social-presence { display:flex; align-items:center; justify-content:center; gap:38px; }
.social-presence span { color:#f1f1ef; font:700 27px/1 Arial,sans-serif; }
.social-presence .material-symbols-rounded { font-family:'Material Symbols Rounded'; font-size:31px; font-variation-settings:'FILL' 1,'wght' 600,'GRAD' 0,'opsz' 48; }
.footer-brand .social-presence { justify-content:flex-start; gap:24px; }
.footer-bottom { min-height:72px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:30px; border-top:1px solid rgba(245,182,46,.33); color:#8f9395; font:500 11px/1.4 Montserrat,sans-serif; letter-spacing:.06em; }
.footer-bottom p { margin:0; }
.footer-bottom p:nth-child(2) { text-align:center; }
.footer-bottom a { justify-self:end; color:#c7c9ca; text-transform:uppercase; letter-spacing:.1em; }
.mobile-footer { display:none; }
.anchor { position:absolute; }
.whatsapp-float { position:fixed; right:clamp(22px,3vw,46px); bottom:clamp(24px,4vw,45px); z-index:50; width:66px; height:66px; display:grid; place-items:center; border:2px solid rgba(255,255,255,.92); border-radius:50%; background:#25d366; color:#fff; box-shadow:0 8px 28px rgba(0,0,0,.42),0 0 0 0 rgba(37,211,102,.55); animation:whatsapp-beat 1.45s ease-in-out infinite; }
.whatsapp-float::before,.whatsapp-float::after { content:""; position:absolute; inset:-2px; z-index:-1; border:2px solid rgba(37,211,102,.68); border-radius:50%; animation:whatsapp-wave 2.25s ease-out infinite; pointer-events:none; }
.whatsapp-float::after { animation-delay:1.12s; }
.whatsapp-float .bi-whatsapp { font-size:35px; line-height:1; }
.whatsapp-float:hover { background:#1fbd59; }
.whatsapp-float:focus-visible { outline:3px solid var(--gold-light); outline-offset:5px; }
@keyframes whatsapp-beat { 0%,100%{ transform:scale(1); } 12%{ transform:scale(1.09); } 24%{ transform:scale(1); } 36%{ transform:scale(1.06); } 50%{ transform:scale(1); } }
@keyframes whatsapp-wave { 0%{ transform:scale(.9); opacity:.7; } 78%,100%{ transform:scale(1.75); opacity:0; } }

@media (max-width: 760px) {
  .site-header { position:sticky; top:0; height:82px; padding:0 21px; }
  .brand img { width:205px; }
  .menu-toggle { display:grid; width:41px; gap:6px; }
  .menu-toggle span { height:3px; }
  .menu-toggle[aria-expanded="true"] span:nth-child(1){ transform:translateY(9px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(3){ transform:translateY(-9px) rotate(-45deg); }
  nav { position:fixed; top:82px; right:0; width:min(360px,100%); margin:0; padding:35px 42px 44px; display:grid; align-items:initial; gap:24px; background:rgba(7,11,13,.96); border-left:1px solid rgba(245,182,46,.28); transform:translateX(101%); transition:transform .3s ease; }
  nav.open { transform:translateX(0); }
  .hero { min-height:max(720px,calc(100svh - 82px)); align-items:flex-start; padding:48px 22px 38px; background-image:url('assets/andes-hero-mobile-composite.png'); background-position:center bottom; background-size:100% auto; }
  .hero-shade { background:linear-gradient(180deg,rgba(3,6,7,.78) 0%,rgba(3,6,7,.58) 43%,rgba(3,6,7,.08) 70%,rgba(3,6,7,.25) 100%),linear-gradient(90deg,rgba(2,4,5,.58),transparent 82%); }
  .hero-content { width:100%; margin:0; }
  .eyebrow { font-size:10px; letter-spacing:.25em; margin-bottom:18px; gap:12px; }
  .eyebrow span { width:30px; }
  h1 { font-size:clamp(36px,10.5vw,49px); line-height:1.01; }
  h1 em { white-space:normal; margin-top:5px; }
  .subhead { margin:17px 0 21px; font-size:13px; line-height:1.45; letter-spacing:.23em; }
  .intro { font-size:17px; margin-bottom:23px; }
  .cta { width:260px; min-height:61px; padding:0 18px 0 23px; font-size:17px; }
  .cta span { font-size:40px; }
  .values { display:none; }
  .fleet { display:none; }
  .scroll-cue { display:none; }
  .fleet-section { min-height:0; padding:58px 0 38px; background-position:63% center; }
  .fleet-heading { align-items:flex-start; flex-direction:column; gap:28px; padding:0 22px; }
  .fleet-heading h2 { font-size:clamp(35px,10vw,46px); }
  .fleet-heading > div > p:last-child { font-size:17px; }
  .outline-cta { width:100%; min-width:0; font-size:14px; }
  .vehicle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; overflow:visible; margin-top:34px; padding:0 18px 14px; }
  .vehicle-card { overflow:hidden; border:1px solid rgba(245,182,46,.38); border-radius:10px; background:rgba(3,5,6,.72); }
  .vehicle-card:last-child { border-right:1px solid rgba(245,182,46,.38); }
  .vehicle-visual { height:auto; aspect-ratio:3/2; }
  .vehicle-visual picture { display:block; width:100%; height:100%; }
  .vehicle-visual img { position:absolute; inset:0; width:100%; max-width:none; height:100%; object-fit:cover; object-position:center; mix-blend-mode:normal; }
  .vehicle-info { min-height:96px; padding:11px 6px 13px; }
  .vehicle-info small { font-size:11px; }
  .vehicle-info h3 { font-size:16px; }
  .vehicle-info strong { font-size:14px; }
  .services-section { scroll-margin-top:82px; padding:50px 22px 58px; }
  .services-heading h2 { font-size:13px; letter-spacing:.25em; }
  .services-grid { grid-template-columns:1fr; gap:14px; }
  .service-card { min-height:225px; }
  .service-card h3 { font-size:19px; }
  .closing { scroll-margin-top:82px; padding:10px 12px 0; }
  .closing-banner { min-height:410px; flex-direction:column; align-items:flex-start; justify-content:center; gap:30px; padding:34px 24px; border-radius:17px; background-position:62% center; }
  .closing-copy h2 { font-size:clamp(30px,9vw,41px); }
  .closing-copy h2 em { white-space:normal; }
  .closing-copy p { font-size:12px; letter-spacing:.16em; }
  .closing-actions { width:100%; }
  .closing-cta { min-height:66px; }
  .whatsapp-link { font-size:12px; letter-spacing:.08em; }
  .desktop-footer { display:none; }
  .mobile-footer { position:relative; display:block; margin:34px -2px 0; padding:0 14px 0; overflow:hidden; border:1px solid rgba(245,182,46,.22); border-bottom:0; border-radius:26px 26px 0 0; background:#080b0c; box-shadow:0 -18px 45px rgba(0,0,0,.35); }
  .mobile-footer::before { content:""; display:block; width:46px; height:3px; margin:11px auto 30px; border-radius:4px; background:rgba(245,182,46,.6); }
  .mobile-footer-brand { display:flex; flex-direction:column; align-items:center; padding:0 8px 23px; text-align:center; }
  .mobile-footer-brand .mobile-footer-kicker { width:auto; margin:0 0 17px; color:var(--gold); text-transform:uppercase; font:600 10px/1 Montserrat,sans-serif; letter-spacing:.22em; }
  .mobile-footer-brand img { width:238px; filter:none; mix-blend-mode:normal; }
  .mobile-footer-brand > p:last-child { width:285px; margin:18px 0 0; color:#bfc2c3; font-size:14px; line-height:1.5; }
  .mobile-service-points { display:grid; grid-template-columns:1fr 1fr; margin-bottom:18px; border:1px solid rgba(255,255,255,.09); border-radius:10px; background:rgba(255,255,255,.025); }
  .mobile-service-points span { display:flex; align-items:center; justify-content:center; gap:7px; padding:12px 5px; color:#c7c9ca; font-size:11px; }
  .mobile-service-points span + span { border-left:1px solid rgba(255,255,255,.09); }
  .mobile-service-points i { width:6px; height:6px; border-radius:50%; background:var(--gold); box-shadow:0 0 9px rgba(245,182,46,.6); }
  .mobile-contact-panel { margin-bottom:22px; padding:18px; border:1px solid rgba(245,182,46,.38); border-radius:14px; background:linear-gradient(145deg,rgba(245,182,46,.08),rgba(255,255,255,.02)); }
  .mobile-contact-panel > p { margin:0 0 15px; color:#f0f0ed; font:700 17px/1.3 Montserrat,sans-serif; }
  .mobile-whatsapp { min-height:52px; display:flex; align-items:center; gap:9px; padding:0 14px; border-radius:8px; background:#25d366; color:#fff; font:700 13px/1 Montserrat,sans-serif; }
  .mobile-whatsapp .material-symbols-rounded { font-size:24px; }
  .mobile-whatsapp b { margin-left:auto; font:400 29px/1 Arial,sans-serif; }
  .mobile-email { display:flex; align-items:center; justify-content:space-between; padding:16px 2px 1px; color:#c9cbcc; font-size:13px; }
  .mobile-email b { color:var(--gold); font-size:20px; }
  .mobile-footer-links { border-top:1px solid rgba(255,255,255,.11); }
  .mobile-footer-links details { border-bottom:1px solid rgba(255,255,255,.11); }
  .mobile-footer-links summary { display:flex; justify-content:space-between; padding:20px 4px; cursor:pointer; list-style:none; text-transform:uppercase; font:600 11px/1 Montserrat,sans-serif; letter-spacing:.18em; }
  .mobile-footer-links summary::-webkit-details-marker { display:none; }
  .mobile-footer-links summary span { color:var(--gold); font-size:20px; transition:transform .2s; }
  .mobile-footer-links details[open] summary span { transform:rotate(45deg); }
  .mobile-footer-links nav { position:static; width:auto; margin:0; padding:0 5px 19px; display:grid; gap:13px; background:none; border:0; transform:none; transition:none; }
  .mobile-footer-links nav a { color:#bfc2c3; font:500 14px/1.3 Manrope,sans-serif; text-transform:none; letter-spacing:0; }
  .mobile-social { display:flex; align-items:center; justify-content:space-between; padding:27px 4px; }
  .mobile-social p { margin:0; color:#8d9192; text-transform:uppercase; font:600 10px/1 Montserrat,sans-serif; letter-spacing:.18em; }
  .mobile-social > div { display:flex; gap:25px; align-items:center; }
  .mobile-social span { color:#eee; font:700 24px/1 Arial,sans-serif; }
  .mobile-social .material-symbols-rounded { font-family:'Material Symbols Rounded'; font-size:28px; font-variation-settings:'FILL' 1,'wght' 600,'GRAD' 0,'opsz' 48; }
  .mobile-footer-bottom { display:grid; grid-template-columns:1fr auto; gap:8px 12px; padding:18px 4px 24px; border-top:1px solid rgba(245,182,46,.27); color:#7f8385; font-size:10px; }
  .mobile-footer-bottom p { margin:0; }
  .mobile-footer-bottom p:last-child { grid-column:1/-1; }
  .mobile-footer-bottom a { color:#b8bbbc; text-transform:uppercase; font-size:9px; letter-spacing:.08em; }
  .whatsapp-float { right:18px; bottom:calc(48px + env(safe-area-inset-bottom)); width:58px; height:58px; }
  .whatsapp-float .bi-whatsapp { font-size:31px; }
}

@media (min-width: 560px) and (max-width: 920px) {
  .services-grid { grid-template-columns:repeat(2,1fr); }
}

@media (min-width: 761px) and (max-width: 1150px) {
  .site-header { padding-inline:24px; }
  .brand img { width:220px; }
  .site-header nav { gap:16px; }
  .site-header nav a { font-size:13px; letter-spacing:.1em; }
}

@media (min-width: 761px) and (max-height: 760px) {
  .site-header { height:84px; }
  nav { top:84px; }
  .hero { padding-top:115px; }
  .hero-content { transform:scale(.88); transform-origin:left center; }
  .fleet { width:58vw; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } * { transition:none !important; } .whatsapp-float,.whatsapp-float::before,.whatsapp-float::after { animation:none !important; } }

/* Páginas interiores */
.site-header nav a[aria-current="page"] { color:var(--gold-light); }
.site-header nav a[aria-current="page"]::after { width:100%; }
.inner-page { background:#080b0c; color:#f5f5f3; }
.page-hero { position:relative; min-height:620px; display:flex; align-items:center; padding:170px clamp(28px,6vw,96px) 90px; overflow:hidden; isolation:isolate; background:linear-gradient(90deg,rgba(2,4,5,.96) 0%,rgba(2,4,5,.8) 45%,rgba(2,4,5,.18) 100%),url('assets/andes-hero.png') center/cover; }
.page-hero::after { content:""; position:absolute; inset:auto 0 0; height:180px; z-index:-1; background:linear-gradient(transparent,#080b0c); }
.page-hero-content { width:min(760px,100%); }
.page-kicker { display:flex; align-items:center; gap:16px; margin:0 0 22px; color:var(--gold); text-transform:uppercase; font:700 12px/1 Montserrat,sans-serif; letter-spacing:.28em; }
.page-kicker::after { content:""; width:58px; height:2px; background:var(--gold); }
.page-hero h1 { max-width:850px; margin:0; font:800 clamp(48px,6vw,82px)/.98 Montserrat,sans-serif; letter-spacing:-.045em; text-transform:uppercase; }
.page-hero h1 em { display:block; color:var(--gold-light); font-style:normal; }
.page-hero-copy { max-width:650px; margin:28px 0 0; color:#d5d7d8; font-size:clamp(17px,1.8vw,22px); line-height:1.55; }
.page-content { width:min(1180px,calc(100% - 48px)); margin:0 auto; padding:76px 0 96px; }
.section-intro { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; align-items:end; margin-bottom:38px; }
.section-intro h2 { margin:0; font:800 clamp(34px,4vw,54px)/1.05 Montserrat,sans-serif; text-transform:uppercase; }
.section-intro h2 em { color:var(--gold-light); font-style:normal; }
.section-intro p { margin:0; color:#b9bdbe; font-size:18px; line-height:1.7; }
.detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.detail-grid.four { grid-template-columns:repeat(4,1fr); }
.detail-card { position:relative; min-height:260px; padding:34px; overflow:hidden; border:1px solid rgba(245,182,46,.3); border-radius:16px; background:linear-gradient(145deg,rgba(245,182,46,.07),rgba(255,255,255,.025)); }
.detail-card .material-symbols-rounded { color:var(--gold-light); font-size:42px; }
.detail-card .card-number { display:block; margin-bottom:28px; color:var(--gold); font:700 12px/1 Montserrat,sans-serif; letter-spacing:.18em; }
.detail-card h3 { margin:20px 0 12px; font:700 21px/1.2 Montserrat,sans-serif; text-transform:uppercase; }
.detail-card p { margin:0; color:#b9bdbe; line-height:1.6; }
.services-catalog .detail-card:last-child { grid-column:1/-1; min-height:230px; }
.service-closing h2 { max-width:900px; }
.feature-band { margin-top:70px; padding:48px; border-radius:20px; background:linear-gradient(110deg,rgba(5,7,8,.98),rgba(5,7,8,.74)),url('assets/andes-hero.png') center/cover; border:1px solid rgba(245,182,46,.24); }
.feature-band h2 { max-width:720px; margin:0 0 18px; font:800 clamp(32px,4vw,50px)/1.05 Montserrat,sans-serif; text-transform:uppercase; }
.feature-band h2 em { color:var(--gold-light); font-style:normal; }
.feature-band p { max-width:700px; color:#c8cbcc; font-size:17px; line-height:1.65; }
.page-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:30px; }
.page-actions .cta { width:auto; min-width:250px; }
.secondary-cta { min-height:62px; display:inline-flex; align-items:center; justify-content:center; padding:0 26px; border:1px solid var(--gold); border-radius:7px; color:var(--gold-light); text-transform:uppercase; font:700 13px/1 Montserrat,sans-serif; letter-spacing:.06em; }
.inner-footer { padding:52px clamp(24px,6vw,90px) 26px; border-top:1px solid rgba(245,182,46,.26); background:#06090a; }
.inner-footer-main { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:50px; align-items:start; }
.inner-footer img { width:min(270px,100%); }
.inner-footer-brand p,.inner-footer-col p { color:#969b9d; line-height:1.55; }
.inner-footer-col { display:grid; gap:13px; }
.inner-footer-col h2 { margin:0 0 8px; color:var(--gold); font:700 11px/1 Montserrat,sans-serif; letter-spacing:.2em; text-transform:uppercase; }
.inner-footer-col a { color:#d4d6d7; }
.inner-footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:42px; padding-top:22px; border-top:1px solid rgba(255,255,255,.08); color:#74797b; font-size:11px; }
.inner-footer-bottom p { margin:0; }
.contact-options { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.contact-option { min-height:220px; display:flex; flex-direction:column; justify-content:space-between; padding:30px; border:1px solid rgba(245,182,46,.28); border-radius:15px; background:#0d1113; }
.contact-option .material-symbols-rounded,.contact-option .bi { color:var(--gold-light); font-size:36px; }
.contact-option h3 { margin:22px 0 8px; font:700 19px/1.2 Montserrat,sans-serif; text-transform:uppercase; }
.contact-option p { margin:0 0 18px; color:#aeb2b4; line-height:1.55; }
.contact-option a { color:var(--gold-light); font-weight:700; overflow-wrap:anywhere; }
.checklist { display:grid; grid-template-columns:repeat(2,1fr); gap:12px 28px; margin:24px 0 0; padding:0; list-style:none; }
.checklist li { display:flex; gap:10px; color:#d2d4d5; }
.checklist li::before { content:"✓"; color:var(--gold); font-weight:800; }
.fleet-page-hero { background-image:linear-gradient(90deg,rgba(2,4,5,.95),rgba(2,4,5,.66) 52%,rgba(2,4,5,.12)),url('assets/andes-hero.png'); background-position:center; }
.fleet-model-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.fleet-model-card { overflow:hidden; border:1px solid rgba(245,182,46,.34); border-radius:18px; background:linear-gradient(150deg,rgba(245,182,46,.055),rgba(255,255,255,.018)); box-shadow:0 18px 45px rgba(0,0,0,.2); }
.model-photo { aspect-ratio:3/2; overflow:hidden; border-bottom:1px solid rgba(245,182,46,.24); background:#050708; }
.model-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.model-body { padding:30px; }
.model-title { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:20px; border-bottom:1px solid rgba(255,255,255,.09); }
.model-title p { margin:0 0 5px; color:#aeb2b4; text-transform:uppercase; font:600 12px/1 Montserrat,sans-serif; letter-spacing:.18em; }
.model-title h3 { margin:0; font:800 30px/1 Montserrat,sans-serif; text-transform:uppercase; }
.model-title strong { padding:8px 11px; border:1px solid rgba(245,182,46,.5); border-radius:6px; color:var(--gold-light); font:700 14px/1 Montserrat,sans-serif; letter-spacing:.12em; }
.model-summary { min-height:54px; margin:20px 0; color:#c4c7c8; line-height:1.55; }
.model-specs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; border-top:1px solid rgba(255,255,255,.08); border-left:1px solid rgba(255,255,255,.08); }
.model-specs div { min-height:76px; padding:14px; border-right:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); }
.model-specs dt { margin-bottom:7px; color:#83898b; text-transform:uppercase; font:600 10px/1 Montserrat,sans-serif; letter-spacing:.14em; }
.model-specs dd { margin:0; color:#f1f1ef; font-weight:700; line-height:1.35; }
.spec-source { display:inline-flex; margin-top:22px; color:var(--gold-light); font:700 12px/1.2 Montserrat,sans-serif; text-transform:uppercase; letter-spacing:.08em; }
.fleet-standards { display:grid; grid-template-columns:.8fr 1.2fr; gap:55px; margin-top:76px; padding:50px; border:1px solid rgba(245,182,46,.25); border-radius:18px; background:#0b0f10; }
.fleet-standards h2 { margin:0; font:800 clamp(32px,4vw,48px)/1.05 Montserrat,sans-serif; text-transform:uppercase; }
.fleet-standards h2 em { color:var(--gold-light); font-style:normal; }
.standard-list { display:grid; gap:14px; }
.standard-list article { display:grid; grid-template-columns:auto 1fr; gap:4px 17px; align-items:center; padding:18px; border-bottom:1px solid rgba(255,255,255,.08); }
.standard-list article:last-child { border-bottom:0; }
.standard-list .material-symbols-rounded { grid-row:1/3; color:var(--gold); font-size:34px; }
.standard-list h3,.standard-list p { margin:0; }
.standard-list h3 { font:700 16px/1.2 Montserrat,sans-serif; text-transform:uppercase; }
.standard-list p { color:#aeb2b4; line-height:1.5; }

/* Página institucional */
.institutional-content { display:grid; gap:76px; }
.institutional-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.institutional-statement { padding:42px; border:1px solid rgba(245,182,46,.28); border-radius:18px; background:linear-gradient(145deg,rgba(245,182,46,.07),rgba(255,255,255,.02)); }
.institutional-statement h2,.section-heading h2 { margin:0 0 22px; font:800 clamp(32px,4vw,50px)/1.05 Montserrat,sans-serif; text-transform:uppercase; }
.institutional-statement h2 em,.section-heading h2 em { color:var(--gold-light); font-style:normal; }
.institutional-statement > p:last-child,.safety-commitment .section-intro div p { color:#b9bdbe; font-size:17px; line-height:1.7; }
.safety-commitment .section-intro { margin:0; align-items:start; }
.safety-commitment .section-intro div p { margin:0 0 18px; }
.section-heading { margin-bottom:34px; }
.section-heading .page-kicker { margin-bottom:18px; }
.institutional-section .detail-card { min-height:300px; }
.values-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.values-grid article { padding:30px; border:1px solid rgba(245,182,46,.26); border-radius:15px; background:#0d1113; }
.values-grid .material-symbols-rounded { color:var(--gold-light); font-size:38px; }
.values-grid h3 { margin:20px 0 10px; font:700 18px/1.2 Montserrat,sans-serif; text-transform:uppercase; }
.values-grid p { margin:0; color:#aeb2b4; line-height:1.6; }
.preventive-culture { margin-top:0; }
.institutional-message { margin:0; padding:42px 48px; border-left:4px solid var(--gold); background:rgba(255,255,255,.025); }
.institutional-message > p:last-child { max-width:950px; margin:0; color:#e0e1df; font:600 clamp(20px,2.3vw,29px)/1.55 Manrope,sans-serif; }

@media (max-width:760px) {
  .page-hero { min-height:600px; padding:132px 22px 72px; background-position:62% center; }
  .page-hero h1 { font-size:clamp(38px,11vw,52px); }
  .page-hero-copy { font-size:17px; }
  .page-content { width:calc(100% - 36px); padding:56px 0 70px; }
  .section-intro { grid-template-columns:1fr; gap:18px; }
  .section-intro p { font-size:16px; }
  .detail-grid,.detail-grid.four,.contact-options { grid-template-columns:1fr; }
  .detail-card { min-height:220px; padding:28px; }
  .services-catalog .detail-card:last-child { grid-column:auto; min-height:220px; }
  .feature-band { margin-top:48px; padding:34px 24px; }
  .page-actions { flex-direction:column; }
  .page-actions .cta,.secondary-cta { width:100%; }
  .checklist { grid-template-columns:1fr; }
  .fleet-page-hero { background-position:center; }
  .fleet-model-grid { grid-template-columns:1fr; gap:18px; }
  .model-photo { aspect-ratio:3/2; }
  .model-body { padding:24px 20px; }
  .model-title h3 { font-size:25px; }
  .model-summary { min-height:0; }
  .model-specs dd { font-size:14px; }
  .fleet-standards { grid-template-columns:1fr; gap:25px; margin-top:50px; padding:30px 22px; }
  .standard-list article { padding:17px 0; }
  .institutional-content { gap:52px; }
  .institutional-pair,.values-grid { grid-template-columns:1fr; }
  .institutional-statement { padding:30px 24px; }
  .institutional-section .detail-card { min-height:0; }
  .institutional-message { padding:32px 24px; }
  .inner-footer { padding:42px 22px 92px; text-align:center; }
  .inner-footer-main { grid-template-columns:1fr; gap:35px; }
  .inner-footer-col { justify-items:center; }
  .inner-footer-bottom { flex-direction:column; align-items:center; }
}
