/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}}:root{--n:#082f5d;--b:#0783c3;--g:#078a43;--p:#f8f8f4;--l:#d6ded9;--t:#415b65}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--p);color:#172b36;margin:0;font-family:Arial,Helvetica,sans-serif}.shell{width:min(1160px,100% - 48px);margin:auto}.hero{color:#fff;background:radial-gradient(circle at 84% 30%,#1688c9 0,#0000 24%),radial-gradient(circle at 72% 85%,#078a42 0,#0000 22%),linear-gradient(128deg,#062647,#0a3964 54%,#0a5d86);min-height:720px;overflow:hidden}.nav{border-bottom:1px solid #ffffff3b;justify-content:space-between;align-items:center;height:118px;display:flex}.brand img{background:#fff;width:196px;padding:8px 12px;display:block}.nav-links{gap:30px;display:flex}.nav a{color:inherit;letter-spacing:.04em;font-size:13px;text-decoration:none}.nav-contact{border-bottom:1px solid #fff;padding-bottom:7px}.hero-grid{grid-template-columns:1.2fr .8fr;align-items:end;gap:70px;min-height:514px;padding:84px 0;display:grid}.eyebrow{color:var(--g);letter-spacing:.18em;text-transform:uppercase;margin:0 0 18px;font-size:11px;font-weight:700}.light{color:#83d3f8}.hero h1{letter-spacing:-.06em;max-width:735px;margin:0;font-size:clamp(48px,6.2vw,82px);font-weight:500;line-height:.96}.hero h1 em,h3{font-family:Georgia,serif;font-weight:400}.hero-lead{color:#d7e7f2;max-width:570px;margin:29px 0;font-size:18px;line-height:1.65}.hero-actions{align-items:center;gap:28px;display:flex}.button{cursor:pointer;border:0;justify-content:center;align-items:center;gap:20px;padding:15px 20px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.button-primary{color:var(--n);background:#fff}.text-link{color:#fff;font-size:13px;font-weight:700;text-decoration:none}.hero-panel{background:#001b3530;border:1px solid #ffffff57;padding:27px 30px}.panel-label{text-transform:uppercase;letter-spacing:.16em;color:#b9e5fb;margin:0 0 28px;font-size:11px}.panel-list>div{border-top:1px solid #ffffff48;gap:16px;padding:16px 0;display:flex}.panel-list b{color:#75c7eb;font-size:11px}.panel-list span{font:22px Georgia}.panel-foot{color:#d5e7ee;margin:12px 0 0;font-size:13px;line-height:1.45}.hero-bottom{color:#b6d1e1;letter-spacing:.16em;justify-content:space-between;padding-bottom:25px;font-size:10px;display:flex}.intro,.project-section{padding:132px 0}.intro-grid,.method-grid,.contact{grid-template-columns:1.1fr .68fr;gap:120px;display:grid}.intro h2,.section-heading h2,.contact h2,.method h2{letter-spacing:-.05em;color:var(--n);margin:0;font-size:clamp(34px,4.1vw,55px);font-weight:500;line-height:1.04}.intro-grid p{color:var(--t);margin:0 0 18px;font-size:17px;line-height:1.65}.solutions{background:#e7f0ed;padding:116px 0}.section-heading{justify-content:space-between;align-items:end;gap:60px;margin-bottom:54px;display:flex}.section-heading h2{max-width:670px}.section-heading>p{color:#527078;max-width:320px;margin:0;font-size:15px;line-height:1.6}.solution-grid{grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.solution-card{background:#fff;min-height:420px;padding:29px}.card-number{color:var(--b);font-size:12px;font-weight:700}.solution-card h3{color:var(--n);margin:100px 0 18px;font-size:31px;line-height:1.1}.solution-card p{color:#526b74;font-size:14px;line-height:1.55}.solution-card ul{margin:26px 0;padding:0;list-style:none}.solution-card li{color:#23414e;border-top:1px solid #dce5e1;padding:8px 0;font-size:12px}.project-grid{grid-template-columns:1.25fr 1fr;gap:24px;display:grid}.project-tile{border:1px solid var(--l);background:#fff}.project-large{grid-row:span 2}.project-image{color:#fff;text-align:center;letter-spacing:.1em;text-transform:uppercase;place-items:center;height:234px;padding:30px;font-size:12px;display:grid}.image-one{background:linear-gradient(135deg,#0b3b5f,#197ea8 54%,#6db45d)}.image-two{background:linear-gradient(135deg,#5e876a,#d9e3bd)}.image-three{background:linear-gradient(135deg,#d9e4eb,#9fb8c7)}.project-image span{background:#00254133;border:1px solid #ffffff8c;padding:10px 13px}.project-caption{padding:20px 22px}.project-caption p{letter-spacing:.15em;color:var(--g);margin:0 0 9px;font-size:10px;font-weight:700}.project-caption h3{color:var(--n);margin:0;font-size:22px}.portfolio-note{color:#62777f;font-size:13px}.method{background:var(--n);color:#fff;padding:112px 0}.method-grid{grid-template-columns:.9fr 1.1fr}.method h2{color:#fff}.method ol{margin:0;padding:0;list-style:none}.method li{border-bottom:1px solid #ffffff3d;grid-template-columns:58px 1fr;gap:16px;margin-bottom:24px;padding:0 0 24px;display:grid}.method li b{color:#56bceb;font-size:12px}.method li span{color:#c6d7e0;font-size:14px;line-height:1.55}.method li strong{color:#fff;display:block}.contact{grid-template-columns:.95fr 1.05fr;padding:130px 0}.contact-copy>p:not(.eyebrow){color:#506970;font-size:17px;line-height:1.65}.contact-details{gap:9px;margin-top:34px;display:grid}.contact-details a{color:var(--n);font:23px Georgia;text-decoration:none}.contact-details span{color:#667a80;font-size:13px}.contact-form{border:1px solid var(--l);background:#fff;gap:18px;padding:30px;display:grid}.contact-form label{letter-spacing:.08em;text-transform:uppercase;color:#3a545e;gap:8px;font-size:11px;font-weight:700;display:grid}.contact-form input,.contact-form textarea{color:#1b3541;background:0 0;border:0;border-bottom:1px solid #bccbc6;outline:0;padding:10px 0;font:15px Arial}.button-dark{background:var(--n);color:#fff;margin-top:8px}.success{color:var(--g);margin:0;font-size:13px}footer{border-top:1px solid var(--l);background:#fff}.footer-inner{color:#64777d;justify-content:space-between;align-items:center;gap:24px;height:105px;font-size:12px;display:flex}.footer-inner img{width:154px}.footer-inner a{color:var(--n);font-weight:700;text-decoration:none}.whatsapp{color:#fff;background:#0b8e47;align-items:center;gap:8px;padding:14px 17px;font-size:13px;font-weight:700;text-decoration:none;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 23px #0003}@media (width<=760px){.shell{width:min(100% - 36px,1160px)}.hero{min-height:700px}.nav{height:88px}.brand img{width:148px}.nav-links{display:none}.hero-grid{grid-template-columns:1fr;align-items:start;gap:42px;min-height:0;padding:72px 0 33px}.hero h1{font-size:51px}.hero-lead{font-size:16px}.intro,.project-section{padding:82px 0}.intro-grid,.method-grid,.contact{grid-template-columns:1fr;gap:35px}.section-heading{display:block}.section-heading>p{margin-top:22px}.solutions{padding:78px 0}.solution-grid{grid-template-columns:1fr;gap:12px}.solution-card{min-height:330px}.solution-card h3{margin-top:49px}.project-grid{grid-template-columns:1fr;gap:16px}.project-large{grid-row:auto}.project-large .project-image{height:300px}.project-image{height:190px}.method{padding:78px 0}.contact{padding:80px 0}.footer-inner{flex-direction:column;align-items:flex-start;gap:15px;height:auto;padding:28px 0}.whatsapp span{display:none}.whatsapp{padding:15px}}.project-image{object-fit:cover;width:100%;display:block}.project-tile .project-image{height:234px}.project-large .project-image{height:500px}.work-strip{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px;display:grid}.work-strip figure{border:1px solid var(--l);background:#fff;margin:0}.work-strip img{object-fit:cover;width:100%;height:245px;display:block}.work-strip figcaption{text-transform:uppercase;letter-spacing:.11em;color:var(--n);padding:14px 16px;font-size:11px;font-weight:700}@media (width<=760px){.project-tile .project-image,.project-large .project-image{height:260px}.work-strip{grid-template-columns:1fr;gap:16px}.work-strip img{height:270px}}.hero{background-image:linear-gradient(90deg,#03192de8 0%,#042a41b3 42%,#042a411f 75%),url(/hero-carrete-riego.jpeg);background-position:50% 52%;background-size:cover}.hero:after{background:linear-gradient(90deg,#0000001a,#0000 68%)}.nav{color:var(--n);background:#fff;border-bottom:1px solid #d6ded9;width:calc(100% + 48px);margin-left:-24px;padding:0 24px}.brand img{background:0 0;width:205px;padding:0}.nav-contact{border-color:var(--n)}.hero-grid{min-height:514px}.hero-panel{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0020376e}.work-strip figure:last-child{position:relative}.work-strip figure:last-child:after{content:"";background:linear-gradient(135deg,#0000 45%,#0032501a);position:absolute;inset:0}@media (width<=760px){.nav{width:calc(100% + 36px);margin-left:-18px;padding:0 18px}.brand img{width:155px}}.gallery-section{background:linear-gradient(#f7faf8 0%,#fff 88%);padding:126px 0}.gallery-section .shell{display:block}.gallery-filters{flex-wrap:wrap;gap:10px;margin:36px 0 30px;display:flex}.gallery-filters button{appearance:none;color:var(--n);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#fff;border:1px solid #b9c9c2;padding:12px 16px;font:700 11px Arial;transition:background .2s,color .2s,border .2s}.gallery-filters button:hover,.gallery-filters button.is-active{background:var(--n);border-color:var(--n);color:#fff}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.gallery-card{background:#fff;border:1px solid #dce6e0;overflow:hidden;box-shadow:0 12px 34px #05222f12}.gallery-card img{object-fit:cover;width:100%;height:290px;transition:transform .45s;display:block}.gallery-card:hover img{transform:scale(1.045)}.gallery-caption{padding:18px 19px 20px}.gallery-caption p{color:var(--g);letter-spacing:.14em;margin:0 0 8px;font:700 10px Arial}.gallery-caption h3{color:var(--n);margin:0;font-size:22px;line-height:1.12}.gallery-note{color:#668087;margin:24px 0 0;font-size:13px}@media (width<=760px){.gallery-section{padding:82px 0}.gallery-grid{grid-template-columns:1fr;gap:16px}.gallery-card img{height:265px}.gallery-filters{gap:8px;margin:28px 0 22px}.gallery-filters button{padding:11px 12px;font-size:10px}}.landing-reel{background:#f7faf8;padding:27px 0 32px;overflow:hidden}.landing-reel-head{align-items:baseline;gap:16px;margin-bottom:15px;display:flex}.landing-reel-head .eyebrow{margin:0}.landing-reel-head span{color:#345663;font:15px Georgia}.reel-viewport{width:100%;overflow:hidden}.reel-track{gap:16px;width:max-content;animation:54s linear infinite field-reel;display:flex}.reel-viewport:hover .reel-track{animation-play-state:paused}.reel-card{background:var(--n);flex:none;width:296px;height:208px;margin:0;position:relative;overflow:hidden}.reel-card img{object-fit:cover;filter:saturate(1.08);width:100%;height:100%;display:block}.reel-card:after{content:"";background:linear-gradient(#0000,#001927c7);position:absolute;inset:45% 0 0}.reel-card figcaption{z-index:1;color:#fff;letter-spacing:.12em;text-transform:uppercase;font:700 10px Arial;position:absolute;bottom:14px;left:16px}@keyframes field-reel{0%{transform:translate(0)}to{transform:translate(calc(-50% - 8px))}}@media (width<=760px){.landing-reel{padding:23px 0 27px}.landing-reel-head{gap:11px;width:min(100% - 36px,1160px);margin-bottom:12px}.landing-reel-head span{font-size:14px}.reel-track{gap:12px;animation-duration:40s}.reel-card{width:248px;height:178px}}.engineering-section{background:#fff;padding:118px 0}.engineering-heading{margin-bottom:36px}.engineering-grid{grid-template-columns:minmax(0,1.45fr) minmax(260px,.8fr);align-items:stretch;gap:20px;display:grid}.engineering-primary,.engineering-support figure{background:#f4f7f5;border:1px solid #082f5d21;border-radius:3px;margin:0;overflow:hidden}.engineering-primary{min-height:520px;padding:20px}.engineering-primary img{object-fit:contain;width:100%;height:100%;display:block}.engineering-support{grid-template-rows:1fr 1fr auto;gap:20px;display:grid}.engineering-support figure{min-height:190px;padding:10px}.engineering-support img{object-fit:contain;background:#fff;width:100%;height:160px;display:block}.engineering-support figcaption{padding:6px 10px 12px}.engineering-support figcaption b{color:var(--n);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:.9rem;display:block}.engineering-support figcaption span{color:#5c6d70;font-size:.9rem;line-height:1.35}.engineering-note{color:#fff;background:#062f39;border-radius:3px;gap:8px;padding:24px;display:grid}.engineering-note b{font-size:1.08rem}.engineering-note span{color:#ffffffc7;line-height:1.5}.supply-section{color:#fff;background:#062f39;padding:110px 0}.supply-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:64px;display:grid}.supply-copy h2{color:#fff;max-width:640px;margin:12px 0 24px;font-size:clamp(2.25rem,4vw,4.3rem);line-height:.98}.supply-copy>p:not(.eyebrow){color:#ffffffc7;max-width:590px;font-size:1.1rem;line-height:1.65}.supply-points{grid-template-columns:1fr 1fr;gap:16px 28px;margin-top:34px;display:grid}.supply-points span{text-transform:uppercase;letter-spacing:.06em;border-top:1px solid #ffffff4d;padding-top:12px;font-size:.86rem;line-height:1.35}.supply-image{border-radius:3px;min-height:500px;margin:0;overflow:hidden}.supply-image img{object-fit:cover;width:100%;height:100%;min-height:500px;display:block}.gallery-plan img{background:#f6f8f7;padding:14px;object-fit:contain!important}.reel-card img[src$=\.png]{object-fit:contain;background:#f6f8f7;padding:10px}@media (width<=760px){.engineering-section{padding:78px 0}.engineering-grid,.supply-grid{grid-template-columns:1fr}.engineering-primary{min-height:340px;padding:12px}.engineering-support{grid-template-rows:auto;gap:14px}.engineering-support figure{min-height:auto}.supply-section{padding:78px 0}.supply-grid{gap:34px}.supply-image,.supply-image img{min-height:330px}.supply-points{grid-template-columns:1fr}}.engineering-section{padding:118px 0 0;overflow:hidden}.engineering-hero{background:#062f39;min-height:550px;position:relative;overflow:hidden}.engineering-hero figure{height:100%;margin:0}.engineering-hero img{object-fit:cover;width:100%;height:550px;display:block}.engineering-hero:after{content:"";pointer-events:none;background:linear-gradient(90deg,#021b309e,#0000 58%);position:absolute;inset:0}.engineering-overlay{z-index:1;color:#fff;background:#042339e0;width:min(430px,52%);padding:28px 30px 29px;position:absolute;bottom:0;left:0}.engineering-overlay span{color:#6ac3e9;letter-spacing:.18em;margin-bottom:18px;font:700 11px Arial;display:block}.engineering-overlay b{margin-bottom:10px;font:31px/1.05 Georgia;display:block}.engineering-overlay p{color:#d8e6ec;margin:0;font-size:14px;line-height:1.5}.engineering-reel{background:#f7faf8;margin-top:28px;padding:32px 0 38px}.engineering-reel-head{align-items:baseline;gap:16px;margin-bottom:15px;display:flex}.engineering-reel-head .eyebrow{margin:0}.engineering-reel-head span{color:#345663;font:15px Georgia}.engineering-track{animation-duration:66s}.engineering-track .reel-card img[src$=\.png]{object-fit:contain;background:#f6f8f7;padding:10px}@media (width<=760px){.engineering-section{padding:78px 0 0}.engineering-hero{min-height:420px}.engineering-hero img{object-position:58% center;height:420px}.engineering-overlay{width:100%;padding:22px 20px}.engineering-overlay b{font-size:26px}.engineering-reel{margin-top:18px;padding:25px 0 28px}.engineering-reel-head{gap:11px;width:min(100% - 36px,1160px);margin-bottom:12px}.engineering-reel-head span{font-size:14px}.engineering-track{animation-duration:48s}}
