:root{--navy:#071c60;--ink:#0c2548;--blue:#0095ff;--orange:#ff6200;--copy:#526a8e;--line:#dce3ec;--scale:min(1vw,16.8px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--navy);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.client-track:focus-visible{outline:3px solid #2588ff;outline-offset:5px}.sr-only,.honeypot{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;z-index:100;transform:translateY(-200%);padding:12px 18px;background:var(--navy);color:white}.skip-link:focus{transform:translateY(0)}
.site-header{height:calc(var(--scale)*9.2);min-height:80px;max-height:154px;display:flex;align-items:center;position:relative;z-index:20;padding:0 5.1% 0 8.5%;background:#fff}.brand{width:calc(var(--scale)*10.5);min-width:100px;max-width:176px;align-self:center}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:calc(var(--scale)*2.4);margin-left:calc(var(--scale)*11.5)}.site-header nav a{position:relative;padding:14px 0;font-size:calc(var(--scale)*1.06);white-space:nowrap;font-weight:400}.site-header nav a:after{content:"";position:absolute;height:1px;background:#446bff;bottom:0;left:0;width:100%;transform:scaleX(0);transform-origin:left;transition:transform .18s}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{transform:scaleX(1)}.language{margin-left:auto;font-size:calc(var(--scale)*1.2);font-weight:600;letter-spacing:.01em}.menu-toggle{display:none}
.landing-intro{text-align:center;height:calc(var(--scale)*21.4);padding-top:calc(var(--scale)*1.5)}.eyebrow{font-size:calc(var(--scale)*.87);font-weight:600;letter-spacing:.3em;line-height:1.4}.landing-intro h1{font-size:calc(var(--scale)*3.5);line-height:1.01;letter-spacing:-.035em;font-weight:400;margin-top:calc(var(--scale)*1.75)}.landing-intro h1 strong{font-weight:750}.blue{color:var(--blue)}.orange{color:var(--orange)}
.businesses{display:grid;grid-template-columns:1fr 1fr}.business{position:relative;min-height:calc(var(--scale)*31.6);overflow:hidden}.business-photo{position:absolute;top:0;right:0;width:60%;height:calc(var(--scale)*28);object-fit:fill}.business:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 22%,rgba(255,255,255,.83) 32%,transparent 46%);pointer-events:none}.business-copy{position:relative;z-index:1;margin-left:12.6%;padding-top:calc(var(--scale)*4.7)}.business .eyebrow{letter-spacing:.22em;font-size:calc(var(--scale)*.9)}.business h2{font-size:calc(var(--scale)*3.8);line-height:1.02;letter-spacing:-.055em;margin-bottom:calc(var(--scale)*1);color:var(--blue);font-weight:750}.business h3{font-size:calc(var(--scale)*1.53);line-height:1.25;letter-spacing:-.035em;font-weight:700}.business-copy>p:not(.eyebrow){font-size:calc(var(--scale)*1.21);line-height:1.38;margin-top:calc(var(--scale)*1.25);color:#294477}.business-link{display:flex;align-items:center;gap:calc(var(--scale)*1.15);font-size:calc(var(--scale)*1.17);color:var(--blue);margin-top:calc(var(--scale)*1.1);width:max-content;max-width:96%;transition:gap .2s}.business-link:hover{gap:calc(var(--scale)*1.6)}.arrow-circle{width:calc(var(--scale)*3.8);height:calc(var(--scale)*3.8);border:1px solid currentColor;border-radius:100%;display:grid;place-items:center;flex-shrink:0}.arrow-circle svg{width:50%;height:50%;stroke-width:1.5}.business-tags{position:absolute;left:12.6%;bottom:calc(var(--scale)*1.2);z-index:1;display:flex;align-items:center;gap:calc(var(--scale)*1.05);font-size:calc(var(--scale)*.76);font-weight:600;letter-spacing:.18em;white-space:nowrap}.business-tags i{font-style:normal;font-weight:400}.business-technology .business-copy{margin-left:7.3%}.business-technology h2,.business-technology .business-link{color:var(--orange)}.business-technology .business-photo{width:53%;height:calc(var(--scale)*28.1)}.business-technology:after{background:linear-gradient(90deg,#fff 0%,#fff 27%,rgba(255,255,255,.88) 38%,transparent 60%)}.business-technology .business-tags{left:7.3%}.business-technology .business-copy>p:not(.eyebrow){margin-top:calc(var(--scale)*.9)}.business-technology .business-link{margin-top:calc(var(--scale)*1.1)}
.section-rule{display:block;margin:0 auto;width:calc(var(--scale)*4.3);height:1px;background:#3957c4}.trust{text-align:center;padding-top:calc(var(--scale)*2.4);padding-bottom:calc(var(--scale)*2.2)}.trust h2{font-size:calc(var(--scale)*2.8);font-weight:400;letter-spacing:-.045em;margin-top:calc(var(--scale)*2.1)}.client-carousel{display:flex;align-items:center;gap:calc(var(--scale)*3);margin:calc(var(--scale)*2.2) 6.3% 0}.client-track{display:flex;flex:1;gap:calc(var(--scale)*2.4);min-width:0;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}.client-track::-webkit-scrollbar{display:none}.client-logo{flex:0 0 calc((100% - 5 * var(--scale)*2.4)/6);height:calc(var(--scale)*5.9);display:flex;justify-content:center;align-items:center;scroll-snap-align:start}.client-logo img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.client-logo:nth-child(1) img{width:74%}.client-logo:nth-child(2) img{width:86%}.client-logo:nth-child(3) img{width:80%}.client-logo:nth-child(6) img{width:73%}.client-carousel button{background:transparent;border:0;color:var(--navy);padding:12px 0;white-space:nowrap;font-size:calc(var(--scale)*1.15)}.carousel-prev{width:calc(var(--scale)*4.3);flex-shrink:0;font-size:calc(var(--scale)*2)!important}.carousel-prev:disabled{color:#4669ff}.carousel-prev:disabled:before{content:"";width:100%;height:1px;background:currentColor;display:block}.carousel-prev:disabled{font-size:0!important}.carousel-next{width:calc(var(--scale)*5.1);flex-shrink:0}.carousel-next:disabled{opacity:.35}
.purpose{text-align:center;padding:calc(var(--scale)*1.1) 5.8% calc(var(--scale)*3.7)}.purpose h2{font-size:calc(var(--scale)*2.9);font-weight:400;letter-spacing:-.035em;margin-top:calc(var(--scale)*2.15)}.purpose h2 strong{font-weight:750}.purpose-intro{font-size:calc(var(--scale)*1.36);line-height:1.4;margin-top:calc(var(--scale)*.9);color:#294477}.values{display:grid;grid-template-columns:repeat(4,1fr);gap:4%;margin-top:calc(var(--scale)*2.5)}.values article>svg{width:calc(var(--scale)*4.8);height:calc(var(--scale)*4.8);margin:auto}.values h3{font-size:calc(var(--scale)*1.48);line-height:1.25;letter-spacing:-.035em;min-height:calc(var(--scale)*4);display:flex;justify-content:center;align-items:center;margin-top:calc(var(--scale)*.4)}.values p{font-size:calc(var(--scale)*1.27);line-height:1.45;color:#294477;margin-top:calc(var(--scale)*.25)}
.detail-hero{position:relative;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-content{position:relative;z-index:1}.people-hero{height:calc(var(--scale)*50.1);color:#fff;background:#05182f}.people-hero .hero-photo{object-fit:fill}.people-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(1,17,39,.42) 0%,rgba(1,17,39,.1) 53%,transparent 80%)}.people-hero .hero-content{padding:calc(var(--scale)*11.2) 9% 0}.people-hero .eyebrow{font-size:calc(var(--scale)*1.5);letter-spacing:.24em}.people-hero .eyebrow strong{color:#6ca0ff}.people-hero h1{font-size:calc(var(--scale)*5.55);font-weight:400;line-height:.98;letter-spacing:-.045em;margin-top:calc(var(--scale)*1.3)}.people-hero h1 strong{color:#4185ff;font-weight:750}.people-hero .hero-copy{font-size:calc(var(--scale)*1.27);line-height:1.75;color:#d7e0ed;margin-top:calc(var(--scale)*5.5)}.detail-intro{padding:calc(var(--scale)*11.4) 9% 0;color:var(--ink)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:12.5%;padding-bottom:calc(var(--scale)*5.3);border-bottom:1px solid var(--line)}.detail-intro h2{font-size:calc(var(--scale)*4.2);line-height:1.1;letter-spacing:-.05em;font-weight:500}.intro-copy{padding-top:calc(var(--scale)*.1);color:#52678a;font-size:calc(var(--scale)*1.3);line-height:1.68}.intro-copy p+p{margin-top:calc(var(--scale)*1.6)}.services{padding:calc(var(--scale)*8.4) 9% calc(var(--scale)*12.2);color:var(--ink)}.services>h2{text-align:center;font-size:calc(var(--scale)*4);font-weight:400;line-height:1.15;letter-spacing:-.035em}.services-subtitle{text-align:center;font-size:calc(var(--scale)*1.4);line-height:1.5;margin-top:calc(var(--scale)*1.1)}.service-grid{margin-top:calc(var(--scale)*4);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(var(--scale)*2.1)}.service-card{min-height:calc(var(--scale)*34.8);position:relative;border:1px solid #6c7e99;border-top:calc(var(--scale)*.55) solid #0a2346;border-radius:2px;padding:calc(var(--scale)*3.35) calc(var(--scale)*2.25) calc(var(--scale)*6);background:white}.service-category{font-size:calc(var(--scale)*.88);line-height:1.4;letter-spacing:.14em;font-weight:700;min-height:calc(var(--scale)*1.5)}.service-card h3{font-size:calc(var(--scale)*1.96);line-height:1.22;min-height:calc(var(--scale)*4.3);margin-top:calc(var(--scale)*2.15);font-weight:700}.service-description{font-size:calc(var(--scale)*1.25);line-height:1.55;color:#687c99;margin-top:calc(var(--scale)*1.2)}.card-rule{position:absolute;bottom:calc(var(--scale)*3.65);left:calc(var(--scale)*2.25);right:calc(var(--scale)*2.25);height:1px;background:#8191a8}
.technology-hero{height:calc(var(--scale)*57.6);color:#0b2c6b;background:#fff}.technology-hero .hero-photo{object-fit:fill}.technology-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.97) 30%,rgba(255,255,255,.9) 45%,rgba(255,255,255,.23) 72%,transparent 100%)}.technology-hero .hero-content{padding:calc(var(--scale)*10.7) 6.25% 0}.technology-wordmark{font-size:calc(var(--scale)*3.55);line-height:1.2;font-weight:700}.technology-wordmark strong{color:var(--orange)}.technology-hero h1{font-size:calc(var(--scale)*3.45);line-height:1.15;font-weight:700;margin-top:calc(var(--scale)*3.4)}.technology-hero .hero-copy{font-size:calc(var(--scale)*1.76);line-height:1.5;margin-top:calc(var(--scale)*6.8);color:#31517d}.page-technology .detail-intro{padding:calc(var(--scale)*13.4) 6.25% 0}.page-technology .intro-grid{gap:12%;padding-bottom:calc(var(--scale)*4.3);grid-template-columns:44% 44%}.page-technology .detail-intro h2{font-size:calc(var(--scale)*3.8);line-height:1.16;font-weight:400;color:#0b2c6b;letter-spacing:-.035em}.page-technology .intro-copy{font-size:calc(var(--scale)*1.76);line-height:1.55}.page-technology .intro-copy p+p{font-size:calc(var(--scale)*1.65);line-height:1.6;margin-top:calc(var(--scale)*1)}.page-technology .services{padding:calc(var(--scale)*9.9) 8.4% calc(var(--scale)*9.1) 6.25%}.page-technology .services>h2{font-size:calc(var(--scale)*3.75)}.page-technology .services-subtitle{color:#65748c;font-size:calc(var(--scale)*1.38);margin-top:calc(var(--scale)*1.5)}.page-technology .service-grid{gap:calc(var(--scale)*3.2) calc(var(--scale)*2.25);margin-top:calc(var(--scale)*6.3)}.page-technology .service-card{min-height:calc(var(--scale)*27);padding:calc(var(--scale)*2.5) calc(var(--scale)*2.25) calc(var(--scale)*5.3)}.page-technology .service-category{font-size:calc(var(--scale)*.84);letter-spacing:.15em;min-height:calc(var(--scale)*1.8)}.page-technology .service-card h3{font-size:calc(var(--scale)*1.64);min-height:0;margin-top:calc(var(--scale)*2.2)}.page-technology .service-description{font-size:calc(var(--scale)*1.2);line-height:1.35;margin-top:calc(var(--scale)*1.15)}.page-technology .card-rule{bottom:calc(var(--scale)*3.9)}
.contact{position:relative;min-height:calc(var(--scale)*41.3);padding:calc(var(--scale)*.9) 5.7% calc(var(--scale)*5.5);background:#031321 url('assets/contact-mountains.webp') center/cover no-repeat;color:#fff;scroll-margin-top:10px}.contact h2{font-size:calc(var(--scale)*3.8);font-weight:700;letter-spacing:-.02em;line-height:1.25;text-shadow:0 1px 3px #000}.contact-layout{display:grid;grid-template-columns:57% 38%;gap:5%;margin-top:calc(var(--scale)*3.8);align-items:start}.contact-form{padding-top:calc(var(--scale)*1.3);position:relative;display:grid;gap:calc(var(--scale)*.35)}.contact-form label{display:flex;flex-direction:column;font-size:calc(var(--scale)*1.22);line-height:1.1;gap:calc(var(--scale)*.25)}.contact-form label span{display:contents}.contact-form input,.contact-form select,.contact-form textarea{background:rgba(224,234,246,.86);border:1px solid #8ca1ba;border-radius:3px;color:#102844;width:100%;min-width:0;padding:calc(var(--scale)*.25) calc(var(--scale)*.4);font-size:calc(var(--scale)*1.25);min-height:calc(var(--scale)*2.25);line-height:1.2}.contact-form textarea{min-height:calc(var(--scale)*4);resize:vertical}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{background:#f3f8ff}.contact-form select{appearance:auto}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:4%}.phone-fields{display:grid;grid-template-columns:27% 69%;gap:4%}.send-button{justify-self:end;background:#284f75;color:#fff;border:1px solid #40668c;border-radius:10px;padding:calc(var(--scale)*.55) calc(var(--scale)*2.85);font-size:calc(var(--scale)*1.3);line-height:1;transition:background .2s}.send-button:hover{background:#376b9c}.send-button:disabled{opacity:.7}.office{font-style:normal;border-left:1px solid #e2eaf4;padding-left:calc(var(--scale)*4.9);min-height:calc(var(--scale)*24.3);padding-top:calc(var(--scale)*.1)}.office h3{font-size:calc(var(--scale)*1.72);font-weight:600;margin-bottom:calc(var(--scale)*2.5)}.office p{display:flex;gap:calc(var(--scale)*1.6);align-items:center;font-size:calc(var(--scale)*1.28);line-height:1.4;margin-bottom:calc(var(--scale)*1.2)}.office p svg{width:calc(var(--scale)*1.6);height:calc(var(--scale)*1.6);flex-shrink:0;stroke-width:3}.office a:hover{text-decoration:underline;text-underline-offset:4px}.contact-motto{font-size:calc(var(--scale)*1.53);line-height:1.5;letter-spacing:.07em;margin-top:calc(var(--scale)*4.8);font-weight:500}.form-status{font-size:14px;line-height:1.5;padding:12px 14px;background:#fff;color:#122b4b;border-radius:4px;margin-top:12px}.form-status a{text-decoration:underline;overflow-wrap:anywhere}.form-status[data-state="success"]{border-left:4px solid #279a69}.form-status[data-state="error"]{border-left:4px solid #e9a750}.page-people .contact{min-height:calc(var(--scale)*41.2)}.page-technology .contact{min-height:calc(var(--scale)*46.6)}.page-technology .contact-layout{margin-top:calc(var(--scale)*4.8)}.page-technology .contact-form{gap:calc(var(--scale)*.5)}.page-technology .contact-form input,.page-technology .contact-form select{min-height:calc(var(--scale)*2.55)}.page-technology .contact-form textarea{min-height:calc(var(--scale)*4.7)}.page-technology .office{min-height:calc(var(--scale)*27.3)}
.business-photo{width:47.65%;mask-image:linear-gradient(90deg,transparent,black 15%)}.business-technology .business-photo{width:49.2%}.technology-hero .hero-photo{object-fit:cover;object-position:right}.contact-form textarea{height:calc(var(--scale)*4)}.page-technology .contact-form textarea{height:calc(var(--scale)*4.7)}
@media(min-width:768px){.trust{padding-bottom:calc(var(--scale)*1.1)}.purpose{padding-bottom:calc(var(--scale)*2.1)}.page-people .intro-grid{grid-template-columns:44% 38%;gap:12%}.page-people .service-card h3{font-size:calc(var(--scale)*1.89)}}
@media(min-width:1680px){body{max-width:1680px;margin:auto}html{background:#f4f6f8}}
@media(max-width:767px){
 :root{--scale:1vw}.site-header{height:84px;min-height:84px;padding:0 6%}.brand{width:103px;min-width:0}.language{font-size:12px;margin-left:20px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;background:transparent;border:0;width:44px;height:44px;padding:10px}.menu-toggle span{height:2px;background:var(--navy);width:24px;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-header nav{display:none;position:absolute;top:84px;left:0;right:0;margin:0;background:white;box-shadow:0 8px 16px #081f4910;border-top:1px solid #ecf0f6;padding:16px 6% 24px}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav a{font-size:15px;padding:15px 0}.site-header nav a:after{width:32px;bottom:7px}
 .landing-intro{height:auto;padding:32px 5% 36px}.eyebrow{font-size:8px;line-height:1.7;letter-spacing:.22em}.landing-intro h1{font-size:clamp(25px,5.8vw,42px);line-height:1.1;letter-spacing:-.04em;margin-top:18px}.businesses{grid-template-columns:1fr}.business{min-height:360px}.business-photo{width:62%;height:313px;object-fit:fill}.business-copy{margin-left:7%;padding-top:36px}.business .eyebrow{font-size:10px}.business h2{font-size:40px;margin-bottom:14px}.business h3{font-size:17px;line-height:1.25}.business-copy>p:not(.eyebrow){font-size:13px;margin-top:15px;max-width:240px;line-height:1.45}.business-link{font-size:12px;gap:12px;margin-top:18px;min-height:42px}.arrow-circle{width:38px;height:38px}.business-tags{font-size:6.9px;letter-spacing:.13em;gap:8px;left:7%;bottom:24px}.business-technology .business-photo{width:58%;height:315px}.business-technology .business-copy{margin-left:7%;padding-top:32px}.business-technology .business-copy>p:not(.eyebrow){font-size:12px;max-width:235px;margin-top:13px}.business-technology .business-link{margin-top:16px}.business-technology .business-tags{left:7%}.business:after{background:linear-gradient(90deg,#fff 5%,rgba(255,255,255,.97) 25%,rgba(255,255,255,.65) 40%,transparent 57%)}.business-technology:after{background:linear-gradient(90deg,#fff 7%,#fff 24%,rgba(255,255,255,.75) 42%,transparent 67%)}
 .section-rule{width:40px}.trust{padding:14px 0 34px}.trust h2{font-size:28px;margin-top:24px}.client-carousel{gap:14px;margin:24px 5% 0}.client-track{gap:18px}.client-logo{flex-basis:calc((100% - 36px)/3);height:60px}.client-carousel button{font-size:11px;min-height:44px}.carousel-prev{width:22px;font-size:22px!important}.carousel-next{width:45px}.purpose{padding:0 6% 48px}.purpose h2{font-size:28px;margin-top:26px;line-height:1.12}.purpose h2 strong{display:block}.purpose-intro{font-size:14px;line-height:1.5;margin-top:16px}.desktop-break{display:none}.values{grid-template-columns:1fr 1fr;gap:32px 18px;margin-top:32px}.values article>svg{width:44px;height:44px}.values h3{font-size:16px;min-height:42px;line-height:1.2;margin-top:9px}.values p{font-size:13px;line-height:1.5;margin-top:8px}
 .people-hero{height:570px;min-height:570px}.people-hero .hero-photo{object-fit:cover;object-position:62% center}.people-hero:after{background:linear-gradient(90deg,rgba(2,17,39,.88),rgba(2,17,39,.37) 70%,rgba(2,17,39,.16))}.people-hero .hero-content{padding:96px 7% 0}.people-hero .eyebrow{font-size:13px}.people-hero h1{font-size:clamp(45px,11vw,70px);line-height:1;letter-spacing:-.045em;margin-top:20px}.people-hero .hero-copy{font-size:14px;line-height:1.65;max-width:365px;margin-top:42px}.detail-intro{padding:62px 7% 0}.intro-grid{grid-template-columns:1fr;gap:28px;padding-bottom:45px}.detail-intro h2{font-size:36px;line-height:1.1;letter-spacing:-.04em}.detail-intro h2 br{display:none}.intro-copy{font-size:15px;line-height:1.65;padding-top:0}.intro-copy p+p{margin-top:20px}.services{padding:55px 7% 64px}.services>h2{font-size:34px;line-height:1.15}.services-subtitle{font-size:14px;line-height:1.55;margin-top:15px}.service-grid{grid-template-columns:1fr;gap:20px;margin-top:34px}.service-card{min-height:310px;border-top:5px solid #0a2346;padding:30px 26px 60px}.service-category{font-size:10px;min-height:14px;letter-spacing:.14em}.service-card h3{font-size:23px;line-height:1.25;min-height:0;margin-top:28px}.service-description{font-size:15px;line-height:1.6;margin-top:22px}.card-rule{left:26px;right:26px;bottom:35px}
 .technology-hero{height:580px;background:#fff}.technology-hero .hero-photo{object-fit:cover;object-position:66% center}.technology-hero:after{background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.86) 48%,rgba(255,255,255,.32) 100%)}.technology-hero .hero-content{padding:80px 7% 0}.technology-wordmark{font-size:30px;letter-spacing:-.03em}.technology-hero h1{font-size:29px;margin-top:38px;line-height:1.16;letter-spacing:-.025em}.technology-hero h1 br{display:none}.technology-hero .hero-copy{font-size:16px;line-height:1.6;max-width:350px;margin-top:54px}.page-technology .detail-intro{padding:60px 7% 0}.page-technology .intro-grid{grid-template-columns:1fr;gap:28px;padding-bottom:42px}.page-technology .detail-intro h2{font-size:35px}.page-technology .intro-copy,.page-technology .intro-copy p+p{font-size:15px;line-height:1.65}.page-technology .intro-copy p+p{margin-top:20px}.page-technology .services{padding:55px 7% 64px}.page-technology .services>h2{font-size:34px}.page-technology .services-subtitle{font-size:14px;margin-top:15px}.page-technology .service-grid{gap:20px;margin-top:34px}.page-technology .service-card{min-height:290px;padding:30px 26px 60px}.page-technology .service-category{font-size:10px;min-height:14px;line-height:1.5}.page-technology .service-card h3{font-size:23px;line-height:1.25;margin-top:26px}.page-technology .service-description{font-size:15px;line-height:1.6;margin-top:20px}.page-technology .card-rule{bottom:34px}
 .contact,.page-people .contact,.page-technology .contact{min-height:0;padding:24px 7% 44px;background-position:54% center}.contact h2{font-size:38px;line-height:1.25}.contact-layout,.page-technology .contact-layout{grid-template-columns:1fr;gap:38px;margin-top:32px}.contact-form,.page-technology .contact-form{padding:0;gap:10px}.contact-form label{font-size:13px;line-height:1.3;gap:5px}.contact-form input,.contact-form select,.contact-form textarea,.page-technology .contact-form input,.page-technology .contact-form select{font-size:16px;min-height:40px;padding:8px 10px;border-radius:3px}.contact-form textarea,.page-technology .contact-form textarea{min-height:98px}.field-pair{gap:12px}.phone-fields{grid-template-columns:30% 1fr;gap:12px}.send-button{font-size:15px;border-radius:9px;padding:12px 32px;min-height:44px;margin-top:3px}.office,.page-technology .office{border-left:0;border-top:1px solid #b7c6d7;padding:30px 0 0;min-height:0}.office h3{font-size:21px;margin-bottom:24px}.office p{font-size:14px;gap:16px;margin-bottom:17px}.office p svg{width:17px;height:17px}.contact-motto{font-size:16px;line-height:1.5;letter-spacing:.07em;margin-top:32px}
}
@media(max-width:767px){.business:after,.business-technology:after{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 34%,rgba(255,255,255,.82) 61%,rgba(255,255,255,.04) 100%)}.contact-form textarea,.page-technology .contact-form textarea{height:98px}.business-copy>p:not(.eyebrow){max-width:248px}.business-technology .business-copy>p:not(.eyebrow){max-width:242px}.technology-hero .hero-photo{object-position:right center}}
@media(min-width:540px) and (max-width:767px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card,.page-technology .service-card{padding:24px 20px 55px;min-height:330px}.service-card h3,.page-technology .service-card h3{font-size:20px}.service-description,.page-technology .service-description{font-size:14px}.business-copy{max-width:380px}.business h2{font-size:48px}.business h3{font-size:20px}.business-copy>p:not(.eyebrow){font-size:15px}.business-technology .business-copy>p:not(.eyebrow){font-size:14px}.business-link{font-size:14px}.business-tags{font-size:9px;gap:12px}.business{min-height:400px}.business-photo,.business-technology .business-photo{height:350px}.page-technology .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:359px){.business-tags{font-size:6px;gap:6px;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Summit People: retrato completo restaurado desde el mockup original. */
.business-people .business-photo{width:62.5%;mask-image:linear-gradient(90deg,transparent,black 12%);-webkit-mask-image:linear-gradient(90deg,transparent,black 12%)}
@media(max-width:767px){.business-people .business-photo{width:80%;height:auto}}

/* Foto aportada por el usuario: solo el bloque Technology del landing. */
.business-technology .business-photo{object-fit:cover;object-position:center;mask-image:linear-gradient(90deg,transparent,#000 18%),linear-gradient(180deg,#000 82%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%),linear-gradient(180deg,#000 82%,transparent);-webkit-mask-composite:source-in}

/* Landing: fotografías aportadas y separación entre secciones. */
.page-home main{--landing-section-gap:clamp(64px,8vw,120px)}
.page-home .businesses,.page-home .trust,.page-home .purpose,.page-home .contact{margin-top:var(--landing-section-gap)}
.page-home .business-people .business-photo{height:calc(var(--scale)*28);object-fit:cover;object-position:54% center;mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.04) 25%,#000 65%),linear-gradient(180deg,#000 82%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.04) 25%,#000 65%),linear-gradient(180deg,#000 82%,transparent);-webkit-mask-composite:source-in}
@media(max-width:767px){.page-home main{--landing-section-gap:clamp(40px,12vw,64px)}.page-home .business-people .business-photo{height:313px}}
@media(min-width:540px) and (max-width:767px){.page-home .business-people .business-photo{height:350px}}

/* Ajustes solicitados: menú centrado y títulos del inicio. */
@media(min-width:768px){.site-header nav{position:absolute;top:50%;left:50%;margin-left:0;transform:translate(-50%,-50%)}}
.page-home .business-copy>.eyebrow strong{font-size:1.35em;font-weight:700;line-height:0}
.page-home .trust>h2,.page-home .purpose>h2{font-size:calc(var(--scale)*4)}
.page-home .trust>h2 strong{font-weight:700}
@media(max-width:767px){.page-home .trust>h2,.page-home .purpose>h2{font-size:34px}}

/* Solo el formulario de Contacto: campos, errores y autorización. */
.contact-form .contact-guidance,.contact-form .contact-privacy,.contact-form .contact-retention{font-size:12px;line-height:1.45;color:inherit}
.contact-form .contact-guidance{margin-bottom:7px}
.contact-form .contact-privacy{margin-top:10px}
.contact-form .contact-retention{margin:5px 0 8px}
.contact-form .contact-privacy a{text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
.contact-form .contact-consent{display:flex;flex-direction:row;align-items:flex-start;gap:9px;font-size:12px;line-height:1.45;margin:3px 0 9px}
.contact-form .contact-consent input{width:16px;height:16px;min-height:16px;padding:0;margin:1px 0 0;flex-shrink:0;accent-color:#284f75}
.contact-form .contact-consent .consent-copy{display:block}
.contact-form .field-error{display:block;font-size:12px;line-height:1.4;margin-top:3px;padding:3px 0;color:inherit;font-weight:600}
.contact-form [aria-invalid="true"]{outline:2px solid #fff;outline-offset:1px}
.contact-form [hidden]{display:none!important}
