:root{--ink:#102a30;--bone:#f6f0e5;--lime:#e9783d;--blue:#2d6974;--steel:#9ba9a7;--ice:#c9e3df;--paper:#fffaf2;--line:rgba(16,42,48,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bone);color:var(--ink);font-family:Manrope,sans-serif;line-height:1.55}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Barlow Condensed",sans-serif;line-height:.9;text-transform:uppercase}h2{font-size:clamp(3.5rem,8vw,7.5rem);letter-spacing:-.04em;margin-bottom:1.5rem}.skip-link{position:fixed;top:8px;left:8px;background:var(--lime);padding:12px;z-index:9999;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{height:78px;background:rgba(244,241,232,.94);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,60px);position:fixed;inset:0 0 auto;z-index:1000;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:10px}.brand img{object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1}.brand b{font-family:"Barlow Condensed";font-size:17px}.brand small{letter-spacing:.22em;font-size:8px;margin-top:5px}.desktop-nav{display:flex;gap:30px;font-size:13px;font-weight:700}.desktop-nav a:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--lime);color:var(--ink);border:0;padding:16px 22px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}.button:hover{background:#cbff4d}.button-small{padding:12px 17px;font-size:12px}.menu-button,.mobile-menu{display:none}.hero{min-height:100svh;background:#0c0e10;color:white;position:relative;overflow:hidden;padding-top:78px;display:grid;align-items:center}.hero::after{content:"";position:absolute;inset:78px 42% 0 0;background:linear-gradient(90deg,#0c0e10 50%,transparent);z-index:1}.hero-image{position:absolute;inset:78px 0 0;width:100%;height:calc(100% - 78px);object-fit:cover}.hero-grid{position:absolute;inset:78px 0 0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:8.33vw 100%,100% 80px;z-index:2}.hero-copy{position:relative;z-index:3;padding:80px clamp(20px,7vw,110px) 150px;max-width:850px}.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:800;letter-spacing:.18em}.eyebrow span{width:36px;height:3px;background:var(--lime)}.eyebrow.dark span{background:var(--blue)}.hero h1{font-size:clamp(4.1rem,9.1vw,10.5rem);letter-spacing:-.055em;margin:22px 0}.hero h1 em{font-style:normal;color:var(--lime)}.hero-lead{color:#c6cbd0;max-width:580px;font-size:clamp(1rem,1.5vw,1.2rem)}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:32px}.text-link{font-weight:800;text-transform:uppercase;font-size:12px;border-bottom:1px solid currentColor;padding:10px 0}.hero-proof{position:absolute;z-index:4;right:5vw;top:19%;background:var(--lime);color:var(--ink);padding:18px 24px;transform:rotate(3deg);display:flex;flex-direction:column}.hero-proof b{font-family:"Barlow Condensed";font-size:24px}.hero-proof span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.hero-strip{position:absolute;z-index:4;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(16,18,20,.93);border-top:1px solid #41464a}.hero-strip div{padding:22px 5vw;border-right:1px solid #41464a;display:flex;flex-direction:column}.hero-strip strong{font-family:"Barlow Condensed";font-size:26px;color:var(--lime)}.hero-strip span{text-transform:uppercase;font-size:9px;letter-spacing:.12em;color:#afb4b8}.section{padding:clamp(80px,10vw,150px) clamp(20px,6vw,96px)}.section-heading{max-width:740px}.section-heading>p:last-child{max-width:560px;color:#5d6368}.section-heading.split{max-width:none;display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}.section-heading.split>p{max-width:420px}.symptoms{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.symptom-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.symptom-grid button{min-height:190px;background:transparent;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px;text-align:left;display:flex;flex-direction:column;cursor:pointer;transition:.2s}.symptom-grid button:hover,.symptom-grid button:focus-visible{background:var(--lime);transform:translate(-5px,-5px);box-shadow:5px 5px 0 var(--ink)}.symptom-grid b{font-size:11px;color:var(--blue)}.symptom-grid span{font-family:"Barlow Condensed";font-size:42px;text-transform:uppercase;font-weight:700;margin-top:auto}.symptom-grid small{color:#686e72}.services{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:360px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;display:flex;flex-direction:column}.service-card.featured{background:var(--lime)}.service-num{font-size:11px;font-weight:800}.service-symbol{font-size:46px;margin:30px 0 auto}.service-card h3{font-size:36px;margin-bottom:12px}.service-card p{font-size:14px;color:#63686c}.service-card button{border:0;background:none;padding:10px 0;text-align:left;font-size:12px;text-transform:uppercase;font-weight:800;cursor:pointer}.service-card button:hover{color:var(--blue)}.process{background:var(--ink);color:white}.inverse>p:last-child{color:var(--steel)}.process-grid{list-style:none;padding:0;margin:65px 0 0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #383c3f;border-left:1px solid #383c3f}.process-grid li{min-height:300px;padding:28px;border-right:1px solid #383c3f;border-bottom:1px solid #383c3f}.process-grid b{font-family:"Barlow Condensed";font-size:70px;color:var(--lime);opacity:.35}.process-grid h3{font-size:32px;margin-top:45px}.process-grid p{font-size:14px;color:var(--steel)}.about{display:grid;grid-template-columns:.55fr 1fr 1fr;gap:7vw;align-items:start}.about-stamp{aspect-ratio:1;border:2px solid var(--ink);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-8deg)}.about-stamp span{font-size:11px;letter-spacing:.18em}.about-stamp b{font-family:"Barlow Condensed";font-size:100px;line-height:.8}.about-stamp small{font-weight:700}.about-copy p:last-child{color:#5f6468}.about-features article{border-top:1px solid var(--line);padding:24px 0;display:grid;grid-template-columns:45px 1fr}.about-features b{color:var(--blue);font-size:11px}.about-features h3{font-size:27px;margin:0}.about-features p{grid-column:2;color:#61666a;font-size:13px}.location{background:#e3e5e1;display:grid;grid-template-columns:.75fr 1.25fr;gap:6vw}.location address{font-style:normal;margin:30px 0;font-size:15px}.dark-link{display:inline-block}.schedule{margin-top:55px;border-top:1px solid var(--line)}.schedule p{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.location iframe{width:100%;height:100%;min-height:570px;border:0;filter:grayscale(1) contrast(1.1)}.contact{background:var(--blue);color:white;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact-copy>p:nth-of-type(2){color:#d9e0ff;max-width:450px}.direct{display:flex;flex-direction:column;gap:7px;margin-top:50px;font-weight:700}.contact form{background:var(--bone);color:var(--ink);padding:clamp(25px,5vw,55px);clip-path:polygon(0 0,calc(100% - 25px) 0,100% 25px,100% 100%,25px 100%,0 calc(100% - 25px))}.contact label{display:block;font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.08em;margin-bottom:20px}.contact input,.contact select,.contact textarea{display:block;width:100%;margin-top:8px;border:0;border-bottom:1px solid var(--ink);background:transparent;border-radius:0;padding:12px 2px;outline:0}.contact input:focus,.contact select:focus,.contact textarea:focus{border-color:var(--blue);box-shadow:0 2px var(--blue)}.contact textarea{min-height:90px;resize:vertical}.form-status{font-size:12px;margin:12px 0 0}.contact .button{width:100%;margin-top:8px}footer{background:var(--ink);color:white;padding:70px 6vw 100px;display:grid;grid-template-columns:2fr 1.5fr 1fr;gap:40px;align-items:start}footer>p{color:var(--steel);font-size:13px;max-width:350px}footer>div:nth-of-type(2){display:flex;flex-direction:column;gap:8px;font-size:12px}footer small{grid-column:1/-1;border-top:1px solid #383c3f;padding-top:24px;color:#747a7e}.footer-brand{display:flex;align-items:center;gap:13px}.footer-brand p{display:flex;flex-direction:column;line-height:1}.footer-brand b{font-family:"Barlow Condensed";font-size:20px}.footer-brand span{font-size:9px;letter-spacing:.25em;margin-top:6px}.wa-float{position:fixed;right:24px;bottom:24px;z-index:800;width:58px;height:58px;border-radius:50%;background:#25d366;color:#072611;display:grid;place-items:center;font-weight:900;box-shadow:0 8px 28px rgba(0,0,0,.25)}.mobile-actions{display:none}
:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
@media(max-width:900px){.desktop-nav,.site-header>.button-small{display:none}.menu-button{display:flex;width:46px;height:46px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:7px}.menu-button span{height:2px;background:var(--ink);width:26px}.mobile-menu{display:flex;position:fixed;inset:78px 0 auto;background:var(--bone);padding:24px;flex-direction:column;gap:0;transform:translateY(-130%);transition:.25s;z-index:-1}.mobile-menu.open{transform:none}.mobile-menu a{font-family:"Barlow Condensed";font-size:35px;text-transform:uppercase;border-bottom:1px solid var(--line);padding:12px}.hero::after{inset:78px 0 0;background:linear-gradient(90deg,rgba(8,10,12,.94),rgba(8,10,12,.48))}.hero-copy{padding-bottom:190px}.hero-proof{display:none}.hero-strip{grid-template-columns:1fr 1fr}.hero-strip div{padding:13px 20px}.symptoms,.about,.location,.contact{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}.location iframe{min-height:400px}.about-stamp{max-width:250px}.section-heading.split{display:block}.section-heading.split>p{margin-top:25px}footer{grid-template-columns:1fr 1fr}.wa-float{display:none}.mobile-actions{display:grid;grid-template-columns:1fr 1.5fr;position:fixed;inset:auto 0 0;z-index:900;height:60px}.mobile-actions a{display:grid;place-items:center;background:white;text-transform:uppercase;font-size:12px;font-weight:900;border-top:1px solid var(--ink)}.mobile-actions a:last-child{background:#25d366}.mobile-actions+*{}body{padding-bottom:60px}}
@media(max-width:560px){.brand b{font-size:14px}.hero h1{font-size:17.5vw}.hero-copy{padding-left:20px;padding-right:20px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-strip strong{font-size:21px}.hero-strip span{font-size:8px}.section{padding-left:20px;padding-right:20px}.symptom-grid,.service-grid,.process-grid{grid-template-columns:1fr}.symptom-grid button{min-height:135px}.service-card{min-height:320px}.process-grid li{min-height:250px}.location iframe{min-height:330px}.contact form{padding:28px 20px}footer{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Paleta petróleo, arena y cobre */
.site-header{background:rgba(246,240,229,.94)}
.button{background:var(--lime);color:#fff}.button:hover{background:#cf5f2c}
.hero h1 em,.hero-strip strong{color:#f39a67}
.hero-proof{background:var(--lime);color:#fff}
.symptom-grid button:hover,.symptom-grid button:focus-visible{background:var(--ice)}
.services{background:var(--paper)}
.location{background:#dbe7e3}
.contact{background:#1c5661}
.process-grid b{color:#f39a67}

/* Aparición escalonada y microanimaciones de servicios */
.service-card{overflow:hidden;isolation:isolate;opacity:0;transform:translateY(42px) scale(.985);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.8,.2,1),background-color .3s ease,color .3s ease}
.service-card::before{content:"";position:absolute;inset:auto -25% -70% auto;width:220px;aspect-ratio:1;border:1px solid currentColor;border-radius:50%;opacity:.08;transform:scale(.65);transition:transform .55s ease,opacity .3s ease;z-index:-1}
.service-card.is-visible{opacity:1;transform:none}
.service-card.featured{background:var(--blue);color:#fff}
.service-card.featured p{color:#dbe9e7}
.service-symbol{transform-origin:center;transition:transform .45s cubic-bezier(.2,.8,.2,1),color .3s ease}
.service-card button:hover{color:var(--lime)}
.service-card:hover,.service-card:focus-within{background:var(--ice);transform:translateY(-8px)}
.service-card.featured:hover,.service-card.featured:focus-within{background:#173f48}
.service-card:hover::before,.service-card:focus-within::before{transform:scale(1.15);opacity:.16}
.service-card:hover .service-symbol,.service-card:focus-within .service-symbol{transform:rotate(-8deg) scale(1.18);color:var(--lime)}
.service-card:nth-child(1) .service-symbol{animation:suspensionPulse 2.1s ease-in-out infinite}
.service-card:nth-child(2) .service-symbol{animation:brakeSpin 5s linear infinite}
.service-card:nth-child(3) .service-symbol{animation:engineSpark 1.8s steps(2,end) infinite}
.service-card:nth-child(4) .service-symbol{animation:tuneShift 2.4s ease-in-out infinite}
.service-card:nth-child(5) .service-symbol{animation:alignSpin 5.5s linear infinite}
.service-card:nth-child(6) .service-symbol{animation:powerPulse 1.4s ease-in-out infinite}
@keyframes suspensionPulse{0%,100%{transform:translateY(-5px)}50%{transform:translateY(7px)}}
@keyframes brakeSpin{to{transform:rotate(360deg)}}
@keyframes engineSpark{0%,75%,100%{opacity:1}80%,90%{opacity:.35}}
@keyframes tuneShift{0%,100%{letter-spacing:0}50%{letter-spacing:.18em}}
@keyframes alignSpin{to{transform:rotate(-360deg)}}
@keyframes powerPulse{0%,100%{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 9px var(--lime));color:var(--lime)}}

@media(max-width:1024px){.service-grid{grid-template-columns:1fr 1fr}.service-card{min-height:330px}}
@media(max-width:640px){.service-grid{grid-template-columns:1fr}.service-card{min-height:285px;padding:24px}.service-symbol{margin:24px 0 45px}.service-card:hover,.service-card:focus-within{transform:none}}
@media(prefers-reduced-motion:reduce){.service-card{opacity:1;transform:none}}

/* Ubicación exacta sobre el mapa */
.map-visual{position:relative;min-height:570px;overflow:hidden}
.map-visual iframe{position:absolute;inset:0;width:100%;height:100%;min-height:0}
.map-pin-card{position:absolute;left:24px;bottom:24px;z-index:2;display:flex;align-items:center;gap:13px;max-width:min(390px,calc(100% - 48px));padding:15px 18px;background:rgba(255,250,242,.96);color:var(--ink);border:1px solid var(--line);box-shadow:0 14px 36px rgba(16,42,48,.2);backdrop-filter:blur(10px);transition:transform .25s ease,box-shadow .25s ease}
.map-pin-card:hover,.map-pin-card:focus-visible{transform:translateY(-4px);box-shadow:0 18px 44px rgba(16,42,48,.28)}
.map-pin-card>span:last-child{display:flex;flex-direction:column}
.map-pin-card b{font-family:"Barlow Condensed",sans-serif;font-size:19px;line-height:1;text-transform:uppercase}
.map-pin-card small{margin-top:5px;color:#556b6e;font-size:11px}
.map-pin-dot{width:18px;height:18px;flex:0 0 18px;background:var(--lime);border:4px solid var(--paper);border-radius:50%;box-shadow:0 0 0 3px var(--lime),0 0 0 8px rgba(233,120,61,.2);animation:mapPulse 2s ease-out infinite}
@keyframes mapPulse{0%,100%{box-shadow:0 0 0 3px var(--lime),0 0 0 8px rgba(233,120,61,.2)}50%{box-shadow:0 0 0 3px var(--lime),0 0 0 15px rgba(233,120,61,0)}}
@media(max-width:900px){.map-visual{min-height:420px}}
@media(max-width:560px){.map-visual{min-height:350px}.map-pin-card{left:12px;right:12px;bottom:12px;max-width:none;padding:13px 14px}.map-pin-card b{font-size:17px}}

/* Identidad oficial y mapa a color */
.official-logo{display:block;object-fit:contain;object-position:center}
.brand .official-logo{width:56px;height:56px;filter:drop-shadow(0 3px 6px rgba(16,42,48,.16))}
.footer-brand .official-logo{width:72px;height:72px}
.footer-brand .footer-logo-white{filter:drop-shadow(0 5px 10px rgba(0,0,0,.22))}
.map-visual iframe{filter:none!important}
@media(max-width:560px){.brand .official-logo{width:48px;height:48px;border-radius:10px}.brand{gap:8px}}

/* Crédito del creador */
.footer-bottom{grid-column:1/-1;border-top:1px solid #383c3f;padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-bottom small{border:0;padding:0;color:#747a7e}
.creator-credit{display:inline-flex;align-items:center;gap:7px;color:#9ba9a7;font-size:11px;transition:color .2s ease,transform .2s ease}
.creator-credit img{width:22px;height:22px;object-fit:contain}
.creator-credit b{color:#fff;font-size:12px;letter-spacing:.02em}
.creator-credit:hover,.creator-credit:focus-visible{color:#fff;transform:translateY(-2px)}
@media(max-width:640px){.footer-bottom{align-items:flex-start;flex-direction:column}.creator-credit{min-height:44px}}

/* Botones refinados */
.button{position:relative;overflow:hidden;isolation:isolate;clip-path:none;border:1px solid rgba(122,48,18,.28);border-radius:13px;padding:15px 23px;background:linear-gradient(180deg,#ef8048 0%,#df6932 100%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 5px 0 #a8441c,0 10px 22px rgba(83,42,25,.18);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.button::before{content:"";position:absolute;inset:1px;border:1px solid rgba(255,255,255,.16);border-radius:11px;pointer-events:none}
.button::after{content:"";position:absolute;top:0;left:-110%;width:70%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-20deg);transition:left .55s ease;z-index:-1}
.button:hover{background:linear-gradient(180deg,#f28b55 0%,#e26b33 100%);transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 7px 0 #a8441c,0 14px 28px rgba(83,42,25,.22)}
.button:hover::after{left:140%}
.button:active{transform:translateY(3px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 2px 0 #a8441c,0 6px 12px rgba(83,42,25,.18)}
.button-small{padding:11px 18px;border-radius:11px;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 3px 0 #a8441c,0 7px 16px rgba(83,42,25,.16)}
.button-small::before{border-radius:9px}
@media(max-width:560px){.button{min-height:50px;width:auto;max-width:100%;padding:14px 20px;border-radius:12px;text-align:center}.button-small{min-height:44px}}
@media(prefers-reduced-motion:reduce){.button,.button::after{transition:none}.button:hover,.button:active{transform:none}}
