:root{--orange:#f47c32;--orange2:#ff985b;--ink:#11110f;--charcoal:#181816;--cream:#f4f1e9;--muted:#adaaa2;--line:rgba(17,17,15,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 48px));margin:auto}.noise{position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}
.site-header{position:absolute;top:0;left:0;width:100%;z-index:10;color:#fff;border-bottom:1px solid rgba(255,255,255,.16)}.nav{height:94px;display:flex;align-items:center;gap:38px}.brand{display:flex;align-items:center;gap:11px;line-height:.82}.brand-mark{width:45px;height:45px;fill:none;stroke:var(--orange);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.brand span{display:flex;flex-direction:column}.brand strong{font-size:9px;letter-spacing:.38em;margin-left:3px;margin-bottom:7px}.brand b{font:800 29px/20px "Barlow Condensed",sans-serif;letter-spacing:.06em;color:var(--orange)}.menu{margin-left:auto;display:flex;gap:34px;font-size:13px}.menu a{opacity:.72;transition:.2s}.menu a:hover{opacity:1;color:var(--orange)}.nav-cta{border:1px solid rgba(255,255,255,.35);padding:13px 17px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.nav-cta span,.button span{color:var(--orange);margin-left:12px}.menu-toggle{display:none}
.hero{height:min(900px,100vh);min-height:720px;position:relative;color:#fff;background:#080a0b;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,5,6,.98) 0%,rgba(3,5,6,.79) 35%,rgba(3,5,6,.06) 77%),linear-gradient(0deg,rgba(0,0,0,.62),transparent 48%),url("assets/hero-hydraulic.png") center/cover no-repeat;transform:scale(1.015);animation:heroIn 1.6s ease-out both}@keyframes heroIn{from{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1.015)}}.hero-content{position:relative;z-index:2;padding-top:60px}.eyebrow,.section-tag{font-size:11px;letter-spacing:.2em;font-weight:700;display:flex;gap:12px;align-items:center}.eyebrow{color:#dedbd3;margin-bottom:24px}.eyebrow span{width:32px;height:2px;background:var(--orange)}h1,h2,h3{margin:0}.hero h1,.section h2{font:700 clamp(64px,8vw,112px)/.84 "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:-.035em}.hero h1{max-width:850px}.hero h1 em,.section h2 em{font-style:normal;color:var(--orange)}.hero-content>p{max-width:575px;font-size:17px;line-height:1.7;color:#c8c6c1;margin:28px 0 34px}.hero-actions{display:flex;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;padding:17px 22px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid transparent;transition:.25s}.button-primary{background:var(--orange);color:#111}.button-primary span{color:#111}.button-primary:hover{background:var(--orange2);transform:translateY(-2px)}.button-ghost{border-color:rgba(255,255,255,.4)}.button-ghost:hover{border-color:var(--orange);color:var(--orange)}.hero-index{position:absolute;right:27px;top:48%;z-index:2;font:600 10px "DM Sans";letter-spacing:.15em;writing-mode:vertical-rl;display:flex;align-items:center;gap:9px}.hero-index span{height:55px;width:1px;background:rgba(255,255,255,.35)}.hero-bottom{position:absolute;z-index:2;bottom:0;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.18);padding:22px 0}.hero-bottom>div{display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.18);padding:0 30px}.hero-bottom>div:first-child{padding-left:0}.hero-bottom>div:last-child{border:0}.hero-bottom small{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:#918f8b;margin-bottom:6px}.hero-bottom strong{font-size:12px;letter-spacing:.03em}
.section{padding:130px 0}.intro-grid{display:grid;grid-template-columns:160px 1fr 280px;gap:50px}.section-tag{align-self:start}.section-tag span{color:var(--orange)}.intro-copy h2,.promise-copy h2,.contact h2{font-size:clamp(52px,6.2vw,84px)}.intro-copy p{font-size:18px;line-height:1.7;max-width:660px;margin:34px 0 0;color:#575650}.intro-note{align-self:end;border-top:1px solid var(--line);padding-top:22px}.line-icon{color:var(--orange);font-size:26px}.intro-note p{font-size:13px;line-height:1.7;color:#65635e}
.services{background:var(--charcoal);color:#fff}.section-head{display:grid;grid-template-columns:160px 1fr;gap:50px;margin-bottom:75px}.section-tag.light{color:#fff}.section-head h2{font-size:clamp(58px,7vw,96px)}.service{display:grid;grid-template-columns:78px 1fr 45px;gap:30px;align-items:center;border-top:1px solid rgba(255,255,255,.16);padding:32px 0;transition:.25s}.service:last-child{border-bottom:1px solid rgba(255,255,255,.16)}.service:hover{padding-left:12px;background:rgba(255,255,255,.025)}.service-icon{width:58px;height:58px;border:1px solid rgba(255,255,255,.15);display:grid;place-items:center}.service-icon svg{width:30px;fill:none;stroke:var(--orange);stroke-width:1.6}.service h3{font:700 32px "Barlow Condensed";text-transform:uppercase;letter-spacing:.01em;margin-bottom:7px}.service p{color:#94918b;max-width:650px;margin:0;font-size:13px;line-height:1.6}.service>a{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.22);display:grid;place-items:center;color:var(--orange);transition:.2s}.service:hover>a{background:var(--orange);border-color:var(--orange);color:#111;transform:rotate(45deg)}
.promise-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.promise-visual{min-height:580px;background:#d9d4ca;position:relative;display:grid;place-items:center;overflow:hidden}.promise-visual:before{content:"";position:absolute;width:85%;height:1px;background:#b6b0a5;transform:rotate(-38deg)}.big-ring{width:350px;height:350px;border:52px solid var(--orange);border-radius:50%;display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 1px #ca6024}.big-ring:after{content:"";position:absolute;right:-80px;top:48%;width:150px;height:42px;background:var(--orange)}.big-ring span{font:800 170px/1 "Barlow Condensed";color:#1b1b18}.micro-copy{position:absolute;bottom:25px;left:28px;font:700 9px/1.7 "DM Sans";letter-spacing:.25em}.promise-copy .section-tag{margin-bottom:35px}.promise-copy p{font-size:16px;line-height:1.75;color:#5b5954;margin:32px 0}.promise-copy ul{list-style:none;padding:0;margin:0}.promise-copy li{padding:17px 0;border-top:1px solid var(--line)}.promise-copy li div{display:flex;justify-content:space-between;align-items:center}.promise-copy li strong{font-size:13px;text-transform:uppercase}.promise-copy li small{color:#77746e}
.process{background:var(--orange);color:#111}.process-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px}.process-head p{max-width:330px;line-height:1.6;font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(0,0,0,.28)}.step{padding:42px 48px 10px 0;min-height:260px;border-right:1px solid rgba(0,0,0,.28);margin-right:44px}.step:last-child{border:0;margin:0}.step h3{font:700 29px "Barlow Condensed";text-transform:uppercase;margin:0 0 10px}.step p{font-size:13px;line-height:1.65;max-width:270px}
.contact{background:#ebe7df}.contact-grid{display:grid;grid-template-columns:1fr 480px;gap:100px;align-items:center}.contact-copy .section-tag{margin-bottom:32px}.contact-copy p{font-size:17px;line-height:1.7;color:#5e5b56;max-width:570px;margin:24px 0 30px}.button-dark{background:#151513;color:#fff}.button-dark:hover{background:var(--orange);color:#111}.button-dark:hover span{color:#111}.contact-card{background:#171715;color:#fff;padding:44px;min-height:420px;position:relative;overflow:hidden}.contact-label{font-size:9px;letter-spacing:.22em;color:#85827d}.phone{display:block;font:700 42px "Barlow Condensed";color:var(--orange);margin:28px 0 50px}.contact-detail{border-top:1px solid rgba(255,255,255,.14);padding:16px 0;display:grid;grid-template-columns:120px 1fr}.contact-detail span{font-size:10px;color:#7f7c76}.contact-detail strong{font-size:12px;line-height:1.55}.card-corner{position:absolute;right:-24px;bottom:-68px;font:800 220px "Barlow Condensed";color:rgba(255,255,255,.025)}
footer{background:#0e0e0d;color:#fff;padding:65px 0 24px}.footer-top{display:flex;align-items:center;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.14)}.brand-footer{margin-right:50px}.footer-top p{font-size:12px;color:#77746f}.footer-top>a:last-child{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--orange)}.footer-bottom{display:flex;justify-content:space-between;padding-top:22px;color:#64615d;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.footer-credit{text-align:center;padding-top:16px;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#4c4a46}.footer-credit a{color:#847f76;font-weight:600;transition:color .2s ease}.footer-credit a:hover{color:var(--orange)}.whatsapp-float{position:fixed;z-index:15;right:24px;bottom:24px;width:55px;height:55px;background:var(--orange);border-radius:50%;display:grid;place-items:center;box-shadow:0 8px 30px rgba(0,0,0,.25);transition:.2s}.whatsapp-float:hover{transform:scale(1.08)}body.menu-open .whatsapp-float{display:none}.whatsapp-float svg{width:29px;fill:none;stroke:#111;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav{height:78px}.menu-toggle{display:flex;margin-left:auto;width:42px;height:42px;border:0;background:none;flex-direction:column;gap:7px;justify-content:center;align-items:center;position:relative;z-index:3}.menu-toggle span{width:24px;height:1px;background:#fff;transition:.25s}.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}.menu{position:fixed;inset:0;background:#111;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:26px;font:700 35px "Barlow Condensed";text-transform:uppercase;transform:translateX(100%);transition:.35s;margin:0}.menu-open .menu{transform:none}.nav-cta{display:none}.hero{min-height:700px}.hero-bg{background-position:63% center}.hero-content{padding-top:10px}.hero h1{font-size:clamp(58px,14vw,90px)}.hero-content>p{max-width:470px}.hero-bottom{grid-template-columns:1fr 1fr}.hero-bottom>div:nth-child(2){border:0}.hero-bottom>div:last-child{display:none}.intro-grid{grid-template-columns:1fr}.intro-note{max-width:420px}.section-head{grid-template-columns:1fr}.promise-grid,.contact-grid{grid-template-columns:1fr}.promise-copy{order:-1}.process-head{align-items:flex-start;gap:30px}.contact-card{max-width:600px}.section{padding:90px 0}}
@media(max-width:600px){.container{width:min(100% - 34px,1180px)}.brand strong{font-size:8px}.brand b{font-size:26px}.brand-mark{width:40px}.hero{height:800px}.hero-bg{background-position:67% center}.hero-bg:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.15)}.hero-content{padding-top:0;max-width:100%}.eyebrow{font-size:8px;letter-spacing:.16em}.hero h1{font-size:49px;line-height:.9;letter-spacing:-.025em}.hero-content>p{font-size:14px;line-height:1.65;margin:23px 0 27px;max-width:100%}.hero-actions{flex-direction:column;align-items:stretch;max-width:330px}.button{padding:16px}.hero-bottom{padding:18px 0}.hero-bottom>div{padding:0 12px}.hero-bottom strong{font-size:10px}.hero-index{display:none}.section{padding:78px 0}.intro-grid,.section-head{gap:25px}.intro-copy h2,.promise-copy h2,.contact h2,.section-head h2{font-size:50px}.intro-copy p{font-size:16px;margin-top:24px}.service{grid-template-columns:1fr 35px;gap:17px}.service-icon{display:none}.service h3{font-size:25px}.service p{font-size:12px}.promise-grid{gap:55px}.promise-visual{min-height:390px}.big-ring{width:235px;height:235px;border-width:38px}.big-ring span{font-size:112px}.big-ring:after{right:-60px;width:110px;height:30px}.promise-copy li div{display:block}.promise-copy li small{display:block;margin-top:5px}.process-head{display:block}.process-head p{margin-top:25px}.steps{grid-template-columns:1fr}.step{min-height:auto;border-right:0;border-bottom:1px solid rgba(0,0,0,.28);margin:0;padding:30px 0}.contact-grid{gap:45px}.contact-card{padding:30px;min-height:390px}.phone{font-size:34px}.contact-detail{grid-template-columns:100px 1fr}.footer-top{align-items:flex-start;flex-direction:column;gap:18px}.footer-top p{margin:0}.footer-top>a:last-child{margin:10px 0 0}.footer-bottom{gap:20px}.whatsapp-float{width:50px;height:50px;right:16px;bottom:16px}}
@media(max-width:600px){
  .container{width:calc(100% - 34px)}
  .hero-content{max-width:none}
  .hero h1{font-size:44px;line-height:.91;letter-spacing:-.02em;width:calc(100vw - 34px)}
  .hero-content>p{width:calc(100vw - 34px);max-width:none}
  .hero-content>p span{display:block}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-bg{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* Legibility and official brand lockup */
.brand img{display:block;width:176px;height:74px;object-fit:contain;object-position:left center;mix-blend-mode:screen}
.brand-footer img{width:205px;height:92px}
.menu{font-size:15px}
.nav-cta,.button{font-size:14px}
.eyebrow,.section-tag{font-size:13px}
.hero-content>p{font-size:20px;max-width:650px}
.hero-bottom small{font-size:11px}
.hero-bottom strong{font-size:14px}
.intro-copy p{font-size:20px}
.intro-note p{font-size:16px}
.service p{font-size:16px;max-width:720px}
.promise-copy p{font-size:18px}
.promise-copy li strong{font-size:15px}
.promise-copy li small{font-size:14px}
.process-head p{font-size:17px}
.step p{font-size:16px}
.contact-copy p{font-size:20px}
.contact-label{font-size:11px}
.contact-detail span{font-size:12px}
.contact-detail strong{font-size:15px}
.footer-top p{font-size:15px}
.footer-top>a:last-child{font-size:12px}
.footer-bottom{font-size:11px}
.footer-credit{font-size:10px}

@media(max-width:900px){
  .brand img{width:158px;height:64px}
  .menu{font-size:38px}
}
@media(max-width:600px){
  .brand img{width:142px;height:57px}
  .brand-footer img{width:190px;height:82px}
  .eyebrow{font-size:10px}
  .hero-bottom strong{font-size:11px}
  .hero-content>p{font-size:16px}
  .intro-copy p{font-size:18px}
  .intro-note p,.service p,.step p{font-size:15px}
  .promise-copy p,.contact-copy p{font-size:17px}
  .promise-copy li strong{font-size:14px}
  .promise-copy li small{font-size:13px}
  .contact-detail strong{font-size:14px}
}

/* Premium motion, contrast and enlarged reading scale */
:root{--pointer-x:50vw;--pointer-y:50vh;--scroll-progress:0}
body{font-size:18px;line-height:1.6}
::selection{background:var(--orange);color:#111}
.scroll-progress{position:fixed;inset:0 auto auto 0;width:100%;height:3px;background:var(--orange);transform:scaleX(var(--scroll-progress));transform-origin:left;z-index:100;pointer-events:none;box-shadow:0 0 18px rgba(244,124,50,.6)}
.cursor-glow{position:fixed;left:0;top:0;width:520px;height:520px;transform:translate(calc(var(--pointer-x) - 50%),calc(var(--pointer-y) - 50%));border-radius:50%;background:radial-gradient(circle,rgba(244,124,50,.075),transparent 68%);pointer-events:none;z-index:19;mix-blend-mode:screen;transition:opacity .3s}
.site-header{transition:background .35s,box-shadow .35s,border-color .35s}.site-header.is-scrolled{position:fixed;background:rgba(12,12,11,.9);border-color:rgba(255,255,255,.09);box-shadow:0 14px 45px rgba(0,0,0,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.site-header.is-scrolled .nav{height:78px}.site-header.is-solid{position:static;background:#111}.nav{transition:height .35s}.brand img{transition:width .35s,height .35s,filter .35s}.site-header.is-scrolled .brand img{width:158px;height:64px;filter:drop-shadow(0 0 13px rgba(244,124,50,.08))}
.menu{font-size:16px;font-weight:600}.menu a{position:relative;opacity:.85}.menu a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--orange);transition:right .3s}.menu a:hover:after{right:0}.menu a.active{opacity:1;color:var(--orange)}.menu a.active:after{right:0}.nav-cta,.button{font-size:15px;min-height:54px;position:relative;overflow:hidden}.nav-cta:before,.button:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.28) 50%,transparent 75%);transform:translateX(-130%);transition:transform .65s}.nav-cta:hover:before,.button:hover:before{transform:translateX(130%)}
.hero-bg{transform:translateY(var(--hero-shift,0)) scale(1.04);will-change:transform}.hero-content{animation:contentEnter 1s .15s cubic-bezier(.2,.75,.2,1) both}.hero h1{font-size:clamp(76px,8.4vw,120px);text-wrap:balance;text-shadow:0 10px 45px rgba(0,0,0,.25)}.hero-content>p{font-size:22px;line-height:1.65;color:#ece9e2;max-width:720px}.eyebrow,.section-tag{font-size:14px;letter-spacing:.18em}.hero-bottom small{font-size:12px;color:#bbb7af}.hero-bottom strong{font-size:16px}.hero-bottom>div{transition:transform .25s}.hero-bottom>div:hover{transform:translateY(-3px)}
@keyframes contentEnter{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
.section{padding:145px 0}.intro-copy p{font-size:22px;line-height:1.72;color:#3f3e3a}.intro-note p{font-size:18px;line-height:1.75;color:#4d4b46}.line-icon{display:inline-grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;transition:.3s}.intro-note:hover .line-icon{background:var(--orange);color:#111;transform:rotate(45deg)}
.section-head{margin-bottom:84px}.service{padding:40px 18px;position:relative;isolation:isolate}.service:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(244,124,50,.12),transparent 70%);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.75,.2,1)}.service:hover:before{transform:scaleX(1)}.service-icon{width:68px;height:68px;transition:.35s}.service:hover .service-icon{border-color:var(--orange);transform:rotate(-4deg) scale(1.05)}.service h3{font-size:38px}.service p{font-size:18px;line-height:1.7;color:#bbb7b0}.service>a{width:50px;height:50px;font-size:20px}
.promise-visual{box-shadow:0 30px 80px rgba(21,20,18,.12)}.big-ring{animation:ringFloat 5s ease-in-out infinite}.big-ring:before{content:"";position:absolute;inset:-66px;border:1px solid rgba(17,17,15,.13);border-radius:50%;animation:ringSpin 16s linear infinite}.micro-copy{font-size:12px}@keyframes ringFloat{50%{transform:translateY(-12px)}}@keyframes ringSpin{to{transform:rotate(360deg)}}.promise-copy p{font-size:21px;line-height:1.75;color:#45443f}.promise-copy li{padding:23px 0}.promise-copy li>span{font-size:14px}.promise-copy li strong{font-size:17px}.promise-copy li small{font-size:16px;color:#5f5d57}
.process{position:relative;overflow:hidden}.process:after{content:"MARGO";position:absolute;right:-20px;bottom:-95px;font:800 260px/1 "Barlow Condensed";color:rgba(0,0,0,.035);pointer-events:none}.process-head p{font-size:20px;max-width:410px}.step{padding-top:52px;transition:transform .35s}.step:hover{transform:translateY(-8px)}.step h3{font-size:36px}.step p{font-size:18px;line-height:1.7;max-width:310px}
.contact-copy p{font-size:22px;line-height:1.72}.contact-card{min-height:450px;padding:52px;box-shadow:0 35px 80px rgba(18,18,16,.18);transition:transform .4s,box-shadow .4s}.contact-card:hover{transform:translateY(-7px);box-shadow:0 45px 100px rgba(18,18,16,.24)}.contact-label{font-size:13px;color:#aaa69f}.phone{font-size:50px}.contact-detail{padding:21px 0}.contact-detail span{font-size:14px;color:#aaa69f}.contact-detail strong{font-size:17px}.footer-top p{font-size:17px;color:#aaa69f}.footer-top>a:last-child{font-size:14px}.footer-bottom{font-size:13px;color:#96928a}.whatsapp-float{width:64px;height:64px}.whatsapp-float:before{content:"";position:absolute;inset:-7px;border:1px solid var(--orange);border-radius:50%;animation:whatsappPulse 2.2s ease-out infinite}@keyframes whatsappPulse{to{transform:scale(1.35);opacity:0}}
.reveal{opacity:0;transform:translateY(38px);transition:opacity .8s cubic-bezier(.2,.75,.2,1) var(--reveal-delay,0ms),transform .8s cubic-bezier(.2,.75,.2,1) var(--reveal-delay,0ms)}
.reveal.visible{opacity:1;transform:none}

@media(max-width:900px){.cursor-glow{display:none}.section{padding:105px 0}.hero h1{font-size:clamp(60px,14vw,92px)}.hero-content>p{font-size:20px}.intro-copy p,.promise-copy p,.contact-copy p{font-size:20px}.service p,.step p,.intro-note p{font-size:17px}.site-header.is-scrolled .nav{height:72px}}
@media(max-width:600px){body{font-size:17px}.section{padding:88px 0}.hero h1{font-size:48px;width:calc(100vw - 34px)}.hero-content>p{font-size:18px;line-height:1.62}.eyebrow,.section-tag{font-size:12px}.hero-bottom small{font-size:11px}.hero-bottom strong{font-size:13px}.intro-copy p,.promise-copy p,.contact-copy p{font-size:19px}.intro-note p,.service p,.step p{font-size:17px}.service{padding:32px 0}.service h3{font-size:30px}.promise-copy li strong{font-size:16px}.promise-copy li small{font-size:15px}.process-head p{font-size:18px}.step h3{font-size:32px}.contact-card{padding:34px;min-height:410px}.contact-label,.contact-detail span{font-size:13px}.contact-detail strong{font-size:16px}.phone{font-size:39px}.footer-top p{font-size:16px}.footer-bottom{font-size:12px}.whatsapp-float{width:56px;height:56px}footer{padding-bottom:100px}}
@media(prefers-reduced-motion:reduce){.big-ring,.big-ring:before,.whatsapp-float:before{animation:none}.hero-content{animation:none}.hero-bg{transform:scale(1.015)}}

/* Final composition refinements */
@media(min-width:901px){.hero h1{font-size:clamp(76px,7.7vw,110px);max-width:960px}}
@media(max-width:600px){
  .hero-content>p{width:min(330px,calc(100vw - 34px));max-width:330px;overflow-wrap:anywhere}
  .hero-bottom strong{font-size:12px;max-width:135px}
}

/* Animated 3D hydraulic crane */
.hero{height:min(1040px,100svh);min-height:960px}
.hero-content{padding-top:20px}
.hero-content>p{margin-bottom:14px}
.crane-stage{width:min(720px,62vw);height:116px;position:relative;margin:0 0 15px;overflow:hidden;perspective:800px;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.crane-stage:before{content:"";position:absolute;left:2%;right:2%;bottom:15px;height:46px;background:linear-gradient(180deg,transparent,rgba(244,124,50,.06));transform:rotateX(68deg);transform-origin:bottom;border:1px solid rgba(244,124,50,.15);border-radius:50%}
.crane-scan{position:absolute;left:0;top:10px;width:90px;height:85px;background:linear-gradient(90deg,transparent,rgba(244,124,50,.16),transparent);filter:blur(4px);animation:craneScan 4s linear infinite}
.crane-travel{position:absolute;left:0;bottom:7px;width:210px;height:105px;transform-origin:center bottom;animation:craneTravel 13s cubic-bezier(.45,.04,.55,.96) infinite alternate,craneSuspension 1.2s ease-in-out infinite}
.crane-machine{position:absolute;inset:0;width:210px;height:110px;overflow:visible;filter:drop-shadow(0 8px 10px rgba(0,0,0,.65));transform:rotateY(-8deg) rotateX(2deg)}
.crane-shadow{position:absolute;width:155px;height:15px;left:28px;bottom:0;border-radius:50%;background:rgba(0,0,0,.65);filter:blur(6px);animation:craneShadow 1.2s ease-in-out infinite}
.crane-boom{transform-origin:127px 72px;animation:craneBoom 6s ease-in-out infinite}.crane-cable{transform-origin:239px 13px;animation:craneHook 2.4s ease-in-out infinite}.wheel{transform-box:fill-box;transform-origin:center;animation:wheelTurn 1.35s linear infinite}.crane-light{animation:craneLight 1.7s ease-in-out infinite}.crane-floor{position:absolute;bottom:5px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);display:flex;justify-content:space-around}.crane-floor span{width:3px;height:3px;background:var(--orange);border-radius:50%;box-shadow:0 0 9px var(--orange)}.crane-floor i{width:36%;height:1px;background:linear-gradient(90deg,transparent,var(--orange),transparent);opacity:.35}
@keyframes craneTravel{0%{left:-4%;transform:scale(.86) translateY(2px) rotateY(-5deg)}45%{transform:scale(1) translateY(0) rotateY(0)}100%{left:calc(100% - 205px);transform:scale(.9) translateY(1px) rotateY(5deg)}}
@keyframes craneSuspension{50%{margin-bottom:2px}}
@keyframes craneBoom{0%,100%{transform:rotate(5deg)}45%{transform:rotate(-10deg)}70%{transform:rotate(-4deg)}}
@keyframes craneHook{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(-7deg) translateY(4px)}}
@keyframes wheelTurn{to{transform:rotate(360deg)}}
@keyframes craneShadow{50%{transform:scaleX(.92);opacity:.75}}
@keyframes craneLight{50%{opacity:.35}}
@keyframes craneScan{from{transform:translateX(-110px)}to{transform:translateX(760px)}}

@media(max-width:900px){.hero{min-height:970px}.crane-stage{width:min(620px,85vw)}}
@media(max-width:600px){.hero{height:970px;min-height:970px}.hero-content{padding-top:4px}.hero-content>p{margin-bottom:5px}.crane-stage{width:calc(100vw - 34px);height:95px;margin-bottom:10px}.crane-travel{width:155px;height:86px}.crane-machine{width:155px;height:86px}.crane-shadow{width:112px;left:20px}.crane-floor{bottom:3px}@keyframes craneTravel{0%{left:-5%;transform:scale(.82) translateY(2px)}50%{transform:scale(.94)}100%{left:calc(100% - 150px);transform:scale(.84) translateY(1px)}}}
@media(prefers-reduced-motion:reduce){.crane-travel,.crane-boom,.crane-cable,.wheel,.crane-light,.crane-shadow,.crane-scan{animation:none}.crane-travel{left:32%}}

/* Realistic draggable 3D crane */
.crane-interactive{--crane-x:42%;--crane-y:54%;--crane-rotate-x:0deg;--crane-rotate-y:0deg;--crane-light-x:50%;height:172px;width:min(780px,68vw);cursor:grab;touch-action:none;user-select:none;overflow:hidden;background:radial-gradient(circle at var(--crane-light-x) 100%,rgba(244,124,50,.13),transparent 28%)}
.crane-interactive.is-dragging{cursor:grabbing}.crane-rig{position:absolute;left:var(--crane-x);top:var(--crane-y);width:285px;aspect-ratio:1.5;transform:translate(-50%,-50%) perspective(720px) rotateX(var(--crane-rotate-x)) rotateY(var(--crane-rotate-y));transform-style:preserve-3d;transition:left .1s linear,top .1s linear,transform .16s ease;will-change:left,top,transform;z-index:2;animation:craneIdle 3.4s ease-in-out infinite}.crane-interactive.is-dragging .crane-rig{transition:transform .08s linear;animation:none}.crane-rig img{position:relative;z-index:2;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 8px 11px rgba(0,0,0,.58)) drop-shadow(0 0 12px rgba(244,124,50,.14));transition:filter .25s,transform .35s}.crane-interactive.is-dragging .crane-rig img{filter:drop-shadow(0 15px 16px rgba(0,0,0,.7)) drop-shadow(0 0 17px rgba(244,124,50,.24));transform:translateZ(22px) scale(1.04)}.crane-aura{position:absolute;inset:20% 7% 3%;background:radial-gradient(ellipse,rgba(244,124,50,.2),transparent 65%);filter:blur(15px);transform:translateZ(-30px);z-index:0}.crane-3d-shadow{position:absolute;z-index:0;left:13%;right:8%;bottom:9%;height:15%;background:rgba(0,0,0,.75);filter:blur(11px);border-radius:50%;transform:translateZ(-45px) rotateX(75deg);transition:.25s}.crane-interactive.is-dragging .crane-3d-shadow{transform:translateZ(-55px) rotateX(75deg) scaleX(.88);opacity:.65}.crane-instruction{position:absolute;right:12px;top:11px;z-index:4;display:flex;align-items:center;gap:9px;color:#e8e3db;font-size:11px;font-weight:700;letter-spacing:.13em;opacity:.8;transition:.35s}.has-interacted .crane-instruction{opacity:0;transform:translateY(-6px)}.mouse-symbol{width:16px;height:22px;border:1px solid var(--orange);border-radius:9px;position:relative}.mouse-symbol:before{content:"";position:absolute;left:50%;top:4px;width:2px;height:5px;background:var(--orange);transform:translateX(-50%);animation:mouseWheel 1.4s ease-in-out infinite}.crane-interactive:after{content:"DOBLE CLIC · ACCIÓN DEL BRAZO";position:absolute;right:12px;bottom:12px;color:#88847e;font-size:9px;font-weight:700;letter-spacing:.13em;transition:.3s}.crane-interactive.has-interacted:after{color:var(--orange)}.crane-interactive.boom-action .crane-rig img{animation:craneBoomAction 1.1s cubic-bezier(.2,.8,.2,1)}
@keyframes craneIdle{50%{transform:translate(-50%,calc(-50% - 4px)) perspective(720px) rotateX(var(--crane-rotate-x)) rotateY(var(--crane-rotate-y))}}
@keyframes craneBoomAction{0%,100%{transform:rotate(0) scale(1)}30%{transform:rotate(-2deg) scale(1.06)}65%{transform:rotate(1deg) scale(1.02)}}
@keyframes mouseWheel{50%{transform:translate(-50%,5px);opacity:.35}}
@media(max-width:900px){.crane-interactive{width:min(680px,86vw)}.crane-rig{width:250px}}
@media(max-width:600px){.crane-interactive{height:132px;width:calc(100vw - 34px)}.crane-rig{width:205px}.crane-instruction{font-size:9px;top:7px}.crane-interactive:after{font-size:7px;bottom:7px}.crane-floor{bottom:2px}}
@media(prefers-reduced-motion:reduce){.crane-rig,.mouse-symbol:before{animation:none}}

/* Interactive crane scale and action refinements */
@media(min-width:901px){
  .crane-interactive{height:205px}
  .crane-rig{width:330px}
}
.crane-interactive:after{content:"CLIC · ACCIÓN DEL BRAZO"}
@media(max-width:600px){
  .crane-instruction{left:50%;right:auto;top:4px;transform:translateX(-50%);font-size:8px;white-space:nowrap}
  .crane-instruction .mouse-symbol{width:13px;height:18px}
  .crane-interactive:after{display:none}
}

/* Layered vector crane with articulated hydraulics */
.crane-rig{aspect-ratio:360/220}
.vector-crane{position:relative;z-index:2;display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 10px 12px rgba(0,0,0,.7)) drop-shadow(0 0 13px rgba(244,124,50,.12));transform:translateZ(14px);user-select:none}
.vector-boom,.vector-extension{transition:transform .16s cubic-bezier(.2,.75,.2,1)}
.vector-cylinder,.vector-cylinder-back,.vector-cable{transition:x2 .16s,y2 .16s,x1 .16s,y1 .16s}
.vector-hook{transition:transform .16s;transform-box:fill-box;transform-origin:top center;animation:vectorHookSwing 2.4s ease-in-out infinite}
.vector-wheel{transform-box:fill-box;transform-origin:center;transition:transform .2s}.is-dragging .vector-wheel{animation:vectorWheelDrive .65s linear infinite}
.boom-control{pointer-events:all;cursor:crosshair;outline:none}.boom-control-pulse{transform-box:fill-box;transform-origin:center;animation:boomHandlePulse 1.7s ease-out infinite}.boom-control-dot{transition:r .2s,fill .2s}.boom-control:hover .boom-control-dot,.boom-control:focus .boom-control-dot,.is-moving-boom .boom-control-dot{r:10px;fill:#fff}.is-moving-boom .boom-control-pulse{stroke:#fff;animation-duration:.75s}.is-moving-boom .vector-boom,.is-moving-boom .vector-extension,.is-moving-boom .vector-cylinder,.is-moving-boom .vector-cylinder-back,.is-moving-boom .vector-cable,.is-moving-boom .vector-hook{transition:none}
.crane-instructions{position:absolute;right:12px;top:10px;z-index:5;display:flex;align-items:center;gap:17px;transition:.35s}.crane-instructions .crane-instruction{position:static;transform:none}.boom-instruction{display:flex;align-items:center;gap:8px;color:#e8e3db;font-size:11px;font-weight:700;letter-spacing:.13em}.boom-instruction span{width:16px;height:16px;border:2px solid var(--orange);border-radius:50%;box-shadow:0 0 0 5px rgba(244,124,50,.08);animation:boomHandlePulse 1.7s ease-out infinite}.has-interacted .crane-instructions{opacity:0;transform:translateY(-7px);pointer-events:none}.crane-interactive:after{content:"PUNTO NARANJA · CONTROL DEL BRAZO"}.crane-interactive.is-moving-boom{cursor:crosshair}.crane-interactive.is-moving-boom:after{color:#fff}.crane-interactive.is-moving-boom .crane-aura{background:radial-gradient(ellipse,rgba(244,124,50,.34),transparent 65%)}
@keyframes vectorHookSwing{0%,100%{rotate:2deg}50%{rotate:-4deg}}
@keyframes vectorWheelDrive{to{transform:rotate(360deg)}}
@keyframes boomHandlePulse{0%{transform:scale(.7);opacity:1}80%,100%{transform:scale(1.65);opacity:0}}
@media(max-width:600px){.crane-instructions{left:50%;right:auto;top:3px;transform:translateX(-50%);gap:12px;white-space:nowrap}.crane-instructions .crane-instruction{font-size:7px}.boom-instruction{font-size:7px}.boom-instruction span{width:11px;height:11px}.has-interacted .crane-instructions{transform:translate(-50%,-6px)}.crane-rig{width:220px}}
@media(prefers-reduced-motion:reduce){.vector-hook,.boom-control-pulse,.boom-instruction span,.is-dragging .vector-wheel{animation:none}}

/* 3-ton crane mini-game */
.game-crate{position:absolute;left:78%;bottom:8px;z-index:4;width:58px;height:43px;transform:translateX(-50%);background:linear-gradient(145deg,#a85a22 0 12%,#d98235 12% 78%,#8b4217 78%);border:2px solid #f3a45f;border-radius:2px;box-shadow:inset 0 0 0 3px rgba(68,27,6,.35),0 9px 14px rgba(0,0,0,.55);display:grid;place-items:center;color:#1b1008;font:800 22px/1 "Barlow Condensed",sans-serif;letter-spacing:.04em;pointer-events:none;transition:filter .2s,box-shadow .2s,transform .2s;will-change:left,top}.game-crate:before{content:"";position:absolute;left:4px;right:4px;top:-10px;height:10px;background:linear-gradient(135deg,#ef9d54,#9b4a1c);clip-path:polygon(12% 0,88% 0,100% 100%,0 100%);border-top:1px solid #ffc18a}.game-crate:after{content:"";position:absolute;left:50%;top:-16px;width:16px;height:13px;transform:translateX(-50%);border:3px solid #8d9294;border-bottom:0;border-radius:9px 9px 0 0}.game-crate span{position:relative;z-index:2;text-shadow:0 1px rgba(255,255,255,.25)}.game-crate i{position:absolute;left:7px;right:7px;top:5px;bottom:5px;border-left:3px solid rgba(72,28,7,.45);border-right:3px solid rgba(72,28,7,.45)}.game-crate.is-ready{filter:brightness(1.2);box-shadow:inset 0 0 0 3px rgba(68,27,6,.35),0 0 0 4px rgba(91,224,116,.2),0 0 24px rgba(91,224,116,.6);animation:crateReady .65s ease-in-out infinite alternate}.game-crate.is-attached{transition:none;filter:brightness(1.08);box-shadow:inset 0 0 0 3px rgba(68,27,6,.35),0 12px 18px rgba(0,0,0,.6)}
.crane-game-hud{position:absolute;left:12px;top:10px;z-index:5;display:flex;align-items:center;gap:13px;color:#aba7a0;font-size:9px;font-weight:700;letter-spacing:.12em;pointer-events:none}.crane-game-hud>span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border:1px solid #63d878;transform:rotate(45deg)}.crane-game-hud strong{color:#fff;border-left:1px solid rgba(255,255,255,.18);padding-left:13px}.crane-game-hud b{color:#65df7c;font-size:12px;margin-left:4px}
.crane-game-message{position:absolute;left:50%;top:48%;z-index:12;display:flex;align-items:center;gap:12px;min-width:218px;padding:13px 18px;background:rgba(13,45,24,.96);border:1px solid #5bdf74;box-shadow:0 16px 45px rgba(0,0,0,.45),0 0 30px rgba(91,223,116,.22);color:#effff2;transform:translate(-50%,-40%) scale(.78);opacity:0;pointer-events:none;transition:opacity .28s,transform .42s cubic-bezier(.2,1.4,.3,1)}.crane-game-message i{width:34px;height:34px;border-radius:50%;background:#65df7c;color:#0d2d18;display:grid;place-items:center;font-style:normal;font-weight:900;font-size:20px}.crane-game-message span{font:800 18px/.9 "Barlow Condensed",sans-serif;letter-spacing:.08em}.crane-game-message.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.game-success .crane-floor{background:linear-gradient(90deg,transparent,#62df79,transparent)}.game-success .vector-hook path:last-child{stroke:#65df7c}.game-attached .vector-hook{filter:drop-shadow(0 0 5px rgba(101,223,124,.85))}
@keyframes crateReady{to{transform:translateX(-50%) translateY(-4px)}}
@media(max-width:900px){.crane-game-hud{top:auto;bottom:7px}.crane-instructions{top:5px}}
@media(max-width:600px){.game-crate{width:44px;height:33px;font-size:17px}.game-crate:before{top:-7px;height:7px}.game-crate:after{top:-12px;width:12px;height:10px;border-width:2px}.crane-game-hud{left:6px;bottom:4px;font-size:6px;gap:7px}.crane-game-hud strong{padding-left:7px}.crane-game-hud b{font-size:8px}.crane-game-message{min-width:184px;padding:10px 13px}.crane-game-message i{width:28px;height:28px}.crane-game-message span{font-size:16px}}
@media(prefers-reduced-motion:reduce){.game-crate.is-ready{animation:none}}

/* Cómo trabajamos — redesign: less orange, real headline, icon cards */
.process{background:var(--charcoal);color:#fff}
.process:after{color:rgba(255,255,255,.03)}
.process-head{display:grid;grid-template-columns:160px 1fr;gap:50px;align-items:start;margin-bottom:80px}
.process-head h2{font-size:clamp(52px,6.2vw,84px);margin:0 0 20px}
.process-head p{font-size:19px;line-height:1.7;max-width:520px;color:#94918b;margin:0}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;border-top:0}
.step{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.12);border-right:1px solid rgba(255,255,255,.12);padding:44px 36px;min-height:auto;margin-right:0;transition:transform .35s,border-color .35s,background .35s}
.step:hover{transform:translateY(-8px);border-color:var(--orange);background:rgba(244,124,50,.06)}
.step-icon{width:60px;height:60px;border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;margin-bottom:28px;transition:.3s}
.step-icon svg{width:28px;fill:none;stroke:var(--orange);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.step:hover .step-icon{border-color:var(--orange);background:var(--orange)}
.step:hover .step-icon svg{stroke:#111}
.step h3{font-size:26px;margin:0 0 12px}
.step p{font-size:16px;line-height:1.65;max-width:none;color:#94918b}
@media(max-width:900px){.process-head{grid-template-columns:1fr;gap:24px;margin-bottom:60px}}
@media(max-width:600px){.process-head h2{font-size:44px}.process-head p{font-size:17px}.steps{grid-template-columns:1fr;gap:18px}.step{padding:34px 28px;border-bottom:1px solid rgba(255,255,255,.12)}}
