:root{
 --ink:#19343d;--ink-deep:#112b33;--ink-soft:#274851;--charcoal:#262e31;--muted:#6b7c81;
 --sand:#cbb08b;--sand-dark:#b39875;--line:#dbe0de;--pale:#f2f1ec;--white:#fff;--offwhite:#fafaf8;
 --container:1240px;--radius:0;--ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--charcoal);background:var(--offwhite);font-family:Inter,"Helvetica Neue",Arial,system-ui,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.58}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-weight:450;letter-spacing:-.046em;line-height:1.12}h1{font-size:clamp(50px,6.55vw,110px)}h2{font-size:clamp(40px,5.2vw,75px)}h3{font-size:clamp(22px,2.3vw,33px)}p{line-height:1.76}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}em{font-style:normal;color:var(--sand-dark)}::selection{background:var(--sand);color:var(--ink-deep)}:focus-visible{outline:3px solid #d0a86b;outline-offset:4px}.container{width:min(var(--container),calc(100% - 96px));margin-inline:auto}.skip-link{position:absolute;z-index:1000;top:-80px;left:20px;padding:10px 15px;background:var(--sand);color:var(--ink-deep)}.skip-link:focus{top:20px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);box-shadow:0 1px 0 rgba(14,33,38,.08);backdrop-filter:blur(15px)}.header-inner{display:flex;min-height:91px;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:14px;flex-shrink:0;color:var(--ink)}.brand img{width:57px;height:57px;object-fit:contain}.brand-title{font-size:22px;letter-spacing:-.045em;font-weight:730;line-height:1.12;white-space:nowrap}.brand-title small{display:block;font-size:8.1px;letter-spacing:.14em;font-weight:700;margin-top:6px;white-space:nowrap}.desktop-nav{display:flex;align-items:center;gap:clamp(16px,2.2vw,32px);margin-left:auto}.desktop-nav a{font-size:13px;font-weight:550;white-space:nowrap;color:#405359;transition:color .2s}.desktop-nav a:hover{color:var(--sand-dark)}.header-cta{background:var(--ink);color:#fff;padding:15px 18px;display:inline-flex;align-items:center;gap:24px;font-size:12px;font-weight:600;transition:background .2s}.header-cta:hover{background:var(--ink-soft)}.arrow-icon{font-size:21px;line-height:1;font-weight:300}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;width:46px;height:46px;align-items:center;justify-content:center;flex-direction:column;gap:7px}.menu-toggle span{width:19px;height:1px;background:var(--ink)}.mobile-menu[hidden]{display:none!important}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 14px 30px rgba(15,38,46,.16);padding:20px max(24px,5vw) 28px;display:flex;flex-direction:column;gap:0}.mobile-menu a{padding:14px 2px;border-bottom:1px solid var(--line);font-weight:550;color:var(--ink)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:18px 23px;min-height:59px;font-size:14px;line-height:1.25;font-weight:600;transition:transform .2s var(--ease),background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button.gold{background:var(--sand);color:#183239}.button.gold:hover{background:#dfc5a0}.button.text-white{color:#fff}.button.text-white:hover{color:var(--sand)}.button.wide{width:100%;border:0}.eyebrow-line,.overline,.section-index{font-size:10px;letter-spacing:.2em;line-height:1.4;font-weight:700}.eyebrow-line span{margin:0 5px;color:var(--sand)}.overline{color:var(--ink);display:inline-block}.overline.light{color:#c9d5d6}.overline.muted{color:#899ca1}.section-index{color:#879398}.section-top{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #d0d8d8;padding-top:23px;margin-bottom:43px}.section-top.inverse{border-top:1px solid #4a656d}.section-top.inverse .section-index{color:#9db1b6}.section-padding{padding-top:108px;padding-bottom:112px}.section-heading{font-weight:440;letter-spacing:-.059em;line-height:1.1}.heading-row{display:grid;grid-template-columns:1.4fr .6fr;align-items:end;gap:50px;margin-bottom:49px}.heading-row h2{margin:0}.heading-row p{max-width:360px;color:#b6c6c8;font-size:15px;margin:0 0 6px auto}.light-heading p{color:var(--muted)}
.hero{position:relative;min-height:min(825px,calc(100svh - 91px));background:#19323a;color:white;overflow:hidden;isolation:isolate}.hero-photo{position:absolute;z-index:-3;inset:0;background-image:url('https://images.unsplash.com/photo-1681044018855-eb0e185da55a?auto=format&fit=crop&w=1800&q=85'),url('assets/montaje.webp');background-size:cover;background-position:center center,center 32%;filter:saturate(.66)}.hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(14,38,46,.95) 0%,rgba(17,42,48,.74) 45%,rgba(16,36,41,.3) 100%),linear-gradient(0deg,rgba(17,39,45,.66) 0%,transparent 50%)}.hero-inner{min-height:inherit;display:flex;flex-direction:column;justify-content:space-between;padding-top:93px;padding-bottom:35px}.hero-content{max-width:1050px}.hero .eyebrow-line{color:#dae2e1}.hero h1{margin:39px 0 29px;line-height:1.085;color:#fff;font-weight:430;font-size:clamp(56px,6.2vw,94px);letter-spacing:-.064em}.hero h1 span{color:#eef2f0}.hero-content>p{max-width:530px;font-size:17px;line-height:1.75;color:#cbd5d4;margin-bottom:32px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px}.hero-bottom{border-top:1px solid rgba(255,255,255,.25);margin-top:60px;padding-top:25px;display:flex;justify-content:space-between;gap:30px;color:#c8d4d5;align-items:center}.hero-bottom span{font-size:10px;letter-spacing:.15em}.hero-bottom a{font-size:12px;display:flex;gap:34px;align-items:center}.hero-bottom a span{font-size:24px;line-height:1}
.intro{background:#fff}.large-statement{font-size:clamp(48px,6vw,87px);margin:0 0 70px;font-weight:440;letter-spacing:-.065em}.intro-grid{display:grid;grid-template-columns:.94fr 1fr;gap:clamp(58px,7vw,115px);align-items:start}.intro-photo{position:relative;background:#e9eceb}.intro-photo img{width:100%;height:580px;object-fit:cover;object-position:center 40%}.photo-tag{display:flex;justify-content:space-between;align-items:center;background:var(--pale);color:var(--ink);font-size:10px;font-weight:700;letter-spacing:.13em;padding:20px 25px}.photo-tag span{font-size:20px}.intro-text{padding:8px 0 0}.intro-text .lead,.detail-intro .lead{font-size:clamp(22px,2.3vw,30px);color:var(--ink);line-height:1.5;letter-spacing:-.028em;font-weight:440;margin-bottom:33px}.intro-text>p:not(.lead){font-size:16px;max-width:510px;color:#6b7d82;margin-bottom:22px}.quote-line{border-top:1px solid #d4ddde;margin-top:47px;padding-top:30px;display:flex;gap:26px;color:var(--ink);font-size:20px;line-height:1.65}.quote-mark{color:var(--sand-dark);font-size:27px;line-height:1.1}
.services-section{background:var(--ink);color:#fff}.services-section em,.detail-scope em{color:var(--sand)}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-card{display:flex;flex-direction:column;min-width:0;border:1px solid #3d5b61;background:#183840;transition:background .25s,transform .25s var(--ease),border-color .25s}.service-card:hover{background:#23464d;transform:translateY(-4px);border-color:#779092}.service-card-image{height:235px;overflow:hidden;display:block;background:#294750}.service-card-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.72);transition:transform .5s var(--ease)}.service-card:hover .service-card-image img{transform:scale(1.045)}.service-card-body{padding:25px 25px 27px;display:flex;flex-direction:column;flex:1}.service-card-title{font-size:clamp(23px,2vw,29px);line-height:1.17;letter-spacing:-.042em;display:block;margin:22px 0 13px}.service-card-short{font-size:14px;line-height:1.68;color:#afc0c3;flex:1}.service-card-link{font-size:12px;margin-top:30px;border-top:1px solid #426168;padding-top:18px;color:var(--sand);font-weight:600;display:flex;justify-content:space-between;align-items:center}.section-footnote{font-size:12px;max-width:790px;color:#9fb5b9;margin-top:25px;line-height:1.65}
.sector-section{background:#fff}.sectors-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 25px}.sector-card{min-width:0}.sector-photo{height:250px;overflow:hidden;background:#e7ebeb}.sector-photo img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.8);transition:transform .5s var(--ease)}.sector-card:hover img{transform:scale(1.06)}.sector-info{padding:20px 2px 8px;position:relative}.sector-index{position:absolute;right:0;top:24px;font-size:11px;color:#8d9da1;letter-spacing:.1em}.sector-info h3{font-size:26px;margin:0 0 10px;color:var(--ink)}.sector-info p{color:var(--muted);font-size:14px;max-width:320px;min-height:72px;margin:0 0 18px}.sector-info a{font-size:12px;color:var(--ink);font-weight:650}.sector-info a:hover{color:var(--sand-dark)}.image-disclaimer{border-top:1px solid var(--line);margin-top:50px;padding-top:18px;font-size:11px;color:#899598}
.approach-section{background:var(--pale)}.approach-grid{display:grid;grid-template-columns:.76fr 1fr;gap:clamp(80px,10vw,145px)}.approach-left .section-heading{margin:0 0 32px}.approach-left p{max-width:300px;color:var(--muted);line-height:1.85}.approach-left img{margin-top:60px;opacity:.92}.approach-steps{padding:0;margin:0;list-style:none}.approach-steps li{border-top:1px solid #cdd5d3;padding:26px 0 27px;display:grid;grid-template-columns:50px 1fr;gap:18px}.approach-steps li:last-child{border-bottom:1px solid #cdd5d3}.approach-steps li>span{font-size:11px;color:#809198;letter-spacing:.1em}.approach-steps h3{color:var(--ink);font-size:24px;margin:0 0 10px}.approach-steps p{font-size:14px;color:var(--muted);max-width:410px;margin:0}
.contact-section{background:var(--ink-deep);color:#fff;padding:104px 0 111px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(60px,9vw,140px)}.contact-copy .section-heading{margin:36px 0 34px;font-size:clamp(45px,4.6vw,68px)}.contact-copy .section-heading em{color:var(--sand)}.contact-copy>p{color:#b3c5c9;max-width:410px;margin-bottom:37px}.contact-channels{display:flex;flex-direction:column;gap:0}.channel{display:grid;grid-template-columns:1fr auto;gap:3px;padding:19px 0;border-top:1px solid #46626a}.channel[hidden]{display:none!important}.channel span:first-child{font-size:12px;color:#b9cbcc}.channel strong{grid-row:2;font-size:18px;font-weight:500}.channel span:last-child{grid-column:2;grid-row:1/3;font-size:22px;color:var(--sand)}.location-label{display:block;font-size:10px;letter-spacing:.17em;color:#bac8cb;margin-top:30px}.contact-form-shell{border:1px solid #48616a;padding:41px 39px;background:#18343c}.contact-form-shell h3{font-size:33px;margin:14px 0 28px}.contact-form-shell label{display:flex;flex-direction:column;gap:9px;font-size:12px;color:#dce6e6;font-weight:550}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:19px}.contact-form-shell form>label{margin-bottom:22px}.contact-form-shell input,.contact-form-shell select,.contact-form-shell textarea{width:100%;border:1px solid #547079;border-radius:0;background:#203f47;color:#fff;outline:none;padding:14px 14px;min-height:47px;font-size:13px}.contact-form-shell textarea{min-height:117px;resize:vertical}.contact-form-shell input::placeholder,.contact-form-shell textarea::placeholder{color:#9eb4b8}.contact-form-shell input:focus,.contact-form-shell select:focus,.contact-form-shell textarea:focus{border-color:var(--sand)}.contact-form-shell option{background:var(--ink-deep)}.form-note{font-size:11px;color:#a9babe;line-height:1.7;margin:16px 0 0}.form-status{min-height:0;margin:12px 0 0;color:#e5cca2;font-size:13px;line-height:1.5}.form-status:empty{margin:0}
.footer{background:#fff;color:var(--ink)}.footer-main{padding:65px 0 52px;display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:40px}.footer-main>div:first-child>p{font-size:14px;max-width:310px;margin:22px 0 0;color:var(--muted)}.footer-links{display:flex;flex-direction:column;gap:11px}.footer-links span{font-size:10px;letter-spacing:.17em;color:#8a999e;margin-bottom:10px;font-weight:650}.footer-links a{font-size:13px;color:#566970}.footer-links a:hover{color:var(--sand-dark)}.footer-bottom{border-top:1px solid var(--line);padding:19px 0 24px;display:flex;justify-content:space-between;gap:30px;font-size:10px;color:#8b9698}.footer-bottom a{color:var(--ink);white-space:nowrap}
/* service detail pages */
.detail-hero{background:var(--ink-deep);color:#fff;padding:34px 0 82px}.breadcrumbs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:#aec3c7;margin-bottom:66px}.breadcrumbs a:hover{color:var(--sand)}.breadcrumbs>span:last-child{color:#d5e0e1}.detail-hero-grid{display:grid;grid-template-columns:1.22fr .78fr;gap:70px;align-items:end}.detail-hero-content h1{font-size:clamp(54px,6.3vw,95px);line-height:1.07;margin:32px 0}.dot{color:var(--sand)}.detail-hero-content>p{max-width:560px;color:#bacbcc;font-size:19px;margin-bottom:35px}.detail-hero-photo{position:relative;height:510px;background:#2b4c54;overflow:hidden}.detail-hero-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.72)}.detail-hero-photo>span{position:absolute;bottom:17px;left:17px;background:rgba(19,41,47,.8);padding:8px 10px;color:#dbe5e5;font-size:9px;letter-spacing:.13em}.detail-intro{background:#fff}.detail-intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.detail-intro .section-heading{margin:34px 0 0}.detail-intro-grid>div:last-child>p:not(.lead){color:var(--muted);font-size:16px;max-width:640px}.detail-scope{background:var(--ink);color:#fff}.detail-scope .section-top{border-top-color:#547078}.detail-scope .section-index{color:#a8b8bb}.detail-scope .heading-row p{color:#b5c7c8}.detail-items{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.detail-item{border-top:1px solid #526d74;padding:25px 0 30px;display:grid;grid-template-columns:48px 1fr;gap:16px}.detail-item-num{color:var(--sand);font-size:11px;letter-spacing:.12em}.detail-item h3{color:#fff;font-size:24px;letter-spacing:-.035em;margin:0 0 8px}.detail-item p{color:#b7c9ca;font-size:14px;margin:0}.detail-applications{background:var(--pale)}.detail-applications-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.detail-applications .section-heading{margin:25px 0 34px}.applications-list{margin:0;padding:0;list-style:none}.applications-list li{color:var(--ink);padding:15px 0;border-top:1px solid #d0d8d5;font-size:16px}.applications-list li:before{content:'↗';display:inline-block;margin-right:16px;color:var(--sand-dark);font-size:19px}.technical-note{background:#fff;padding:46px 44px 52px;border-top:4px solid var(--sand)}.technical-note h3{margin:25px 0 21px;color:var(--ink);font-size:33px}.technical-note p{font-size:15px;color:var(--muted)}.inline-link{display:inline-block;color:var(--ink);font-weight:700;font-size:13px;margin-top:15px}.inline-link:hover{color:var(--sand-dark)}.related-section{background:#fff}.related-section .section-heading{margin-bottom:42px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.related-card{border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .2s}.related-card:hover{transform:translateY(-4px)}.related-card>img{width:100%;height:205px;object-fit:cover}.related-card>div{padding:25px 24px;display:flex;flex:1;flex-direction:column}.related-card h3{color:var(--ink);font-size:25px;min-height:59px;margin:17px 0}.related-link{border-top:1px solid var(--line);padding-top:16px;font-size:12px;font-weight:700;color:var(--sand-dark);margin-top:auto}.detail-cta{background:var(--ink-deep);color:#fff;padding:76px 0 85px}.detail-cta>.container{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end}.detail-cta h2{font-size:clamp(48px,5vw,70px);margin:23px 0 0}.detail-cta p{color:#b9ced0;max-width:350px;font-size:16px;margin-bottom:30px}
@media (max-width:1120px){.desktop-nav{gap:15px}.desktop-nav a{font-size:12px}.header-cta{padding:14px 12px;gap:9px}.brand-title{font-size:20px}.brand-title small{font-size:7px}.container{width:min(var(--container),calc(100% - 70px))}.service-card-image{height:205px}.contact-grid{gap:60px}.detail-hero-grid{gap:40px}}
@media (max-width:920px){.header-inner{min-height:80px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex}.hero{min-height:720px}.intro-grid{gap:50px}.intro-photo img{height:525px}.heading-row{grid-template-columns:1fr .72fr;gap:25px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card-image{height:240px}.sectors-grid{gap:24px 19px}.sector-photo{height:210px}.approach-grid{gap:60px}.contact-grid{grid-template-columns:1fr;gap:38px}.contact-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.contact-copy>.overline{grid-column:1/-1}.contact-copy h2{grid-column:1}.contact-copy>p{grid-column:2;align-self:end}.contact-copy .contact-channels,.contact-copy .location-label{grid-column:1/-1}.detail-hero-grid{grid-template-columns:1fr 1fr;gap:30px}.detail-hero-photo{height:440px}.detail-items{gap:0 35px}.detail-intro-grid,.detail-applications-grid{gap:40px}}
@media (max-width:680px){html{scroll-padding-top:72px}.container{width:calc(100% - 38px)}.section-padding{padding-top:73px;padding-bottom:76px}.site-header .header-inner{min-height:72px}.brand{gap:8px}.brand img{height:49px;width:49px}.brand-title{font-size:19px}.brand-title small{font-size:6.4px;letter-spacing:.13em;margin-top:5px}.menu-toggle{width:43px;height:43px}.hero{min-height:700px}.hero-photo{background-position:62% 50%,center}.hero-shade{background:linear-gradient(90deg,rgba(13,35,42,.95),rgba(15,36,43,.58)),linear-gradient(0deg,rgba(15,38,44,.55),transparent)}.hero-inner{padding-top:74px;padding-bottom:25px}.hero h1{font-size:clamp(45px,9vw,69px);margin:30px 0 25px}.hero-content>p{font-size:15px;max-width:420px}.hero-actions{gap:3px;align-items:flex-start;flex-direction:column}.hero-actions .button{min-width:230px;min-height:54px}.hero-bottom{gap:12px;align-items:end;padding-top:19px}.hero-bottom span{font-size:8px}.hero-bottom a{font-size:10px;gap:9px;max-width:155px;text-align:right}.section-top{margin-bottom:28px;padding-top:17px}.section-index{font-size:8px;text-align:right}.large-statement{font-size:clamp(44px,9vw,64px);margin-bottom:39px}.intro-grid{grid-template-columns:1fr;gap:31px}.intro-photo img{height:420px}.intro-text .lead,.detail-intro .lead{font-size:24px}.intro-text>p:not(.lead){font-size:15px}.quote-line{margin-top:30px;padding-top:22px;font-size:17px}.heading-row{grid-template-columns:1fr;gap:17px;margin-bottom:33px}.heading-row p{margin:0;font-size:14px}.section-heading{font-size:clamp(43px,9vw,65px)}.services-grid{grid-template-columns:1fr;gap:15px}.service-card-image{height:255px}.service-card-body{padding:22px 22px 24px}.service-card-title{font-size:27px}.service-card-link{margin-top:23px}.sectors-grid{grid-template-columns:1fr 1fr;gap:25px 14px}.sector-photo{height:205px}.sector-info{padding-top:14px}.sector-info h3{font-size:23px}.sector-info p{min-height:0;font-size:12px}.sector-index{font-size:9px}.sector-info a{font-size:11px}.image-disclaimer{margin-top:29px}.approach-grid{grid-template-columns:1fr;gap:28px}.approach-left .section-heading{margin-bottom:18px}.approach-left img{width:110px;height:110px;margin-top:30px}.approach-steps li{padding:20px 0;grid-template-columns:32px 1fr;gap:10px}.approach-steps h3{font-size:22px}.approach-steps p{font-size:13px}.contact-section{padding:77px 0}.contact-copy{display:block}.contact-copy .section-heading{font-size:clamp(43px,9vw,65px);margin:28px 0 25px}.contact-copy>p{font-size:14px}.contact-form-shell{padding:27px 20px}.contact-form-shell h3{font-size:29px}.form-row{grid-template-columns:1fr;gap:17px;margin-bottom:17px}.contact-form-shell label{font-size:12px}.footer-main{grid-template-columns:1fr 1fr;gap:34px;padding:49px 0 39px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}.detail-hero{padding:22px 0 55px}.breadcrumbs{font-size:11px;margin-bottom:40px}.detail-hero-grid{grid-template-columns:1fr;gap:30px}.detail-hero-content h1{font-size:clamp(49px,9vw,68px);margin:23px 0}.detail-hero-content>p{font-size:16px;margin-bottom:25px}.detail-hero-photo{height:300px}.detail-intro-grid,.detail-applications-grid{grid-template-columns:1fr;gap:26px}.detail-intro .section-heading{margin:20px 0 0}.detail-items{grid-template-columns:1fr;gap:0}.detail-item{padding:22px 0;grid-template-columns:35px 1fr;gap:10px}.detail-item h3{font-size:22px}.detail-applications .section-heading{margin-bottom:27px}.technical-note{padding:30px 27px}.related-grid{grid-template-columns:1fr;gap:17px}.related-card>img{height:180px}.related-card h3{min-height:0}.detail-cta{padding:65px 0}.detail-cta>.container{grid-template-columns:1fr;gap:23px}.detail-cta h2{font-size:48px}.detail-cta p{font-size:14px}}
@media (max-width:370px){.brand-title{font-size:16px}.brand-title small{font-size:5.8px}.hero h1{font-size:43px}.sectors-grid{grid-template-columns:1fr}.sector-photo{height:250px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
