@font-face{font-family:Barlow Fallback;src:local(Arial),local(Helvetica),local(Roboto);size-adjust:97%;ascent-override:100%;descent-override:20%;line-gap-override:0%}@font-face{font-family:Condensed Fallback;src:local(Arial Narrow),local(Roboto Condensed),local(Arial);size-adjust:88%;ascent-override:100%;descent-override:22%;line-gap-override:0%}:root{--navy:#0f2147;--navy-2:#0a1733;--navy-3:#1b2b50;--red:#e31e26;--red-d:#c1161d;--ink:#16203a;--muted:#5f6878;--line:#e2e6ee;--soft:#f3f5f9;--white:#fff;--head:"Barlow Condensed", "Condensed Fallback", "Arial Narrow", sans-serif;--body:"Barlow", "Barlow Fallback", system-ui, -apple-system, "Segoe UI", sans-serif;--gutter:clamp(16px, 4vw, 48px);--max:1320px;--ease:cubic-bezier(.22, .8, .24, 1);--t:.35s;--r:6px;--shadow:0 18px 40px -18px #0f214747;--shadow-lg:0 30px 60px -24px #0f214766}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--white);scroll-padding-top:110px;overflow-x:clip}body{background:var(--white);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16.5px;line-height:1.7;overflow-x:clip}img,svg,picture{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;padding:0}h1,h2,h3,h4,p,figure,ol,ul,dl,dd,blockquote{margin:0;padding:0}ol,ul{list-style:none}address{font-style:normal}::selection{background:var(--red);color:var(--white)}:focus-visible{outline:2px solid var(--red);outline-offset:3px}main{min-height:60vh;display:block}.wrap{width:100%;max-width:var(--max);padding:0 var(--gutter);margin:0 auto}.sec{padding:clamp(64px,8vw,112px) 0;position:relative}.sec-sm{padding:clamp(40px,5vw,64px) 0;position:relative}.bg-soft{background:var(--soft)}.skip{z-index:200;background:var(--red);color:var(--white);border-radius:var(--r);padding:10px 16px;font-weight:600;position:fixed;top:-60px;left:12px}.skip:focus{top:12px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.h-hero,.h-xl,.h-l,.h-m,.h-s{font-family:var(--head);color:var(--navy);letter-spacing:.005em;text-transform:uppercase;overflow-wrap:break-word;text-wrap:balance;font-weight:700;line-height:1.02}.h-hero{color:var(--white);font-size:clamp(42px,6.4vw,92px);line-height:.96}.h-hero span,.h-xl span,.h-l span,.h-m span{display:block}.h-hero em,.h-xl em,.h-l em,.h-m em{color:var(--red);font-style:normal}.h-hero em{color:var(--white);-webkit-text-stroke:0;background:linear-gradient(#0000 62%,#e31e26d9 62% 92%,#0000 92%);margin-left:-.08em;padding:0 .08em}.lead{color:var(--muted);text-wrap:pretty;max-width:60ch;font-size:clamp(17px,1.3vw,19px);line-height:1.65}.body{color:var(--muted);text-wrap:pretty;max-width:64ch}.stack{gap:14px;display:grid}.kicker{font-family:var(--head);letter-spacing:.14em;text-transform:uppercase;color:var(--red);align-items:center;gap:12px;font-size:16px;font-weight:700;display:inline-flex}.kicker:before{content:"";background:currentColor;flex:none;width:34px;height:3px}.num{font-variant-numeric:tabular-nums}.sec-head{justify-items:start;gap:16px;margin-bottom:clamp(36px,4vw,56px);display:grid}.split-copy .sec-head{margin-bottom:0}.sec-head.is-center{text-align:center;justify-items:center;max-width:820px;margin-left:auto;margin-right:auto}.sec-head.is-center .kicker:after{content:"";background:currentColor;flex:none;width:34px;height:3px}.sec-head.is-light .h-l,.sec-head.is-light .h-m{color:var(--white)}.sec-head.is-light .lead{color:#ffffffc7}.sec-head-row{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(36px,4vw,56px);display:flex}.sec-head-row .sec-head{margin-bottom:0}.arrow{transition:transform var(--t) var(--ease);flex:none}.btn{border-radius:var(--r);min-height:54px;font-family:var(--head);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;isolation:isolate;transition:background-color var(--t), color var(--t), border-color var(--t), box-shadow var(--t);border:2px solid #0000;justify-content:center;align-items:center;gap:12px;padding:0 28px;font-size:17px;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;transform-origin:100%;transition:transform .45s var(--ease);position:absolute;inset:0;transform:scaleX(0)}.btn:hover:before{transform-origin:0;transform:scaleX(1)}.btn:hover .arrow{transform:translate(4px)}.btn-primary{background:var(--red);color:var(--white);box-shadow:0 12px 26px -12px #e31e26b3}.btn-dark{background:var(--navy);color:var(--white)}.btn-dark:before{background:var(--red)}.btn-light{background:var(--white);color:var(--navy)}.btn-light:before{background:var(--red)}.btn-light:hover{color:var(--white)}.btn-line{border-color:var(--navy);color:var(--navy)}.btn-line:before{background:var(--navy)}.btn-line:hover{color:var(--white)}.btn:disabled{opacity:.6;cursor:progress}.more{font-family:var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--navy);transition:color var(--t);align-items:center;gap:10px;padding:4px 0;font-size:17px;font-weight:700;display:inline-flex}.more:hover{color:var(--red)}.more:hover .arrow{transform:translate(4px)}.row-actions{flex-wrap:wrap;align-items:center;gap:18px 28px;display:flex}.photo{isolation:isolate;background:#d9dee7;position:relative;overflow:hidden}.photo-in{position:absolute;inset:0}.photo picture,.photo img{width:100%;height:100%;position:absolute;inset:0}.photo img{object-fit:cover;transition:transform 1.2s var(--ease)}.r-21x9{aspect-ratio:21/9}.r-16x9{aspect-ratio:16/9}.r-3x2{aspect-ratio:3/2}.r-4x3{aspect-ratio:4/3}.r-4x5{aspect-ratio:4/5}.r-3x4{aspect-ratio:3/4}.r-1x1{aspect-ratio:1}a:hover .photo img,.photo.is-zoom:hover img{transform:scale(1.06)}.drawing{background:linear-gradient(135deg, var(--navy-3), var(--navy));color:#e31e268c;place-items:center;display:grid;position:absolute;inset:0}.drawing:before{content:"";background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.drawing svg{width:72%;height:72%;position:absolute;inset:14%}.drawing span{font-family:var(--head);letter-spacing:.1em;text-transform:uppercase;color:#fff9;font-size:14px;position:absolute;bottom:12px;left:16px}.tag{z-index:2;background:var(--red);color:var(--white);font-family:var(--head);letter-spacing:.1em;text-transform:uppercase;border-radius:4px;padding:5px 12px;font-size:14px;font-weight:700;position:absolute;top:16px;left:16px}.topbar{background:var(--navy-2);color:#ffffffc7;font-size:14px}.topbar-in{align-items:center;gap:28px;min-height:42px;display:flex}.topbar-in>span,.topbar-in a{align-items:center;gap:8px;display:inline-flex}.topbar svg{color:var(--red);flex:none}.topbar-right{margin-left:auto;gap:24px!important}.topbar a:hover{color:var(--white)}@media (width<=1300px){.topbar-hide{display:none!important}}@media (width<=1140px){.topbar{display:none}}.header{z-index:60;background:var(--white);border-bottom:1px solid var(--line);transition:box-shadow var(--t);position:sticky;top:0}.header:after{content:"";background:linear-gradient(90deg, var(--red) 0 22%, var(--navy) 22% 100%);transform-origin:0;width:100%;height:3px;transition:transform .6s var(--ease);position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.header.is-solid:after{transform:scaleX(1)}.header-bar{height:96px;transition:height var(--t) var(--ease);align-items:center;gap:clamp(16px,2.4vw,36px);display:flex}.brand{flex:none;align-items:center;display:inline-flex}.brand img{width:auto;height:74px;transition:height var(--t) var(--ease)}.nav{align-items:center;gap:2px;margin-left:auto;display:flex}.nav a{height:44px;font-family:var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--navy);transition:color var(--t);align-items:center;padding:0 14px;font-size:17px;font-weight:700;display:flex;position:relative}.nav a:after{content:"";background:var(--red);height:3px;transition:transform var(--t) var(--ease);position:absolute;bottom:4px;left:14px;right:14px;transform:scaleX(0)}.nav a:hover,.nav a.on{color:var(--red)}.nav a:hover:after,.nav a.on:after{transform:scaleX(1)}.header-tools{align-items:center;gap:18px;display:flex}.header-call{white-space:nowrap;border-left:1px solid var(--line);font-family:var(--head);color:var(--navy);align-items:center;gap:12px;padding-left:18px;font-size:19px;font-weight:700;line-height:1.1;display:flex}.header-call small{font-family:var(--body);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500;display:block}.header-call-icon{width:46px;height:46px;color:var(--red);transition:background-color var(--t), color var(--t);background:#e31e261a;border-radius:50%;place-items:center;display:grid}.header-call:hover .header-call-icon{background:var(--red);color:var(--white)}.menu-btn{border-radius:var(--r);background:var(--navy);width:48px;height:48px;color:var(--white);place-items:center;display:none}@media (width<=1519px){.header-call{display:none}}@media (width<=1140px){.nav{display:none}.menu-btn{display:grid}.header-tools{margin-left:auto}.header-bar,.header.is-solid .header-bar{height:80px}.brand img,.header.is-solid .brand img{height:60px}}@media (width<=560px){.header-quote{display:none}.brand img,.header.is-solid .brand img{height:52px}.header-bar,.header.is-solid .header-bar{height:72px}}.menu{z-index:55;padding:16px var(--gutter) 40px;background:var(--white);border-top:3px solid var(--red);flex-direction:column;gap:28px;display:flex;position:fixed;inset:80px 0 0;overflow-y:auto}@media (width>=561px){.menu{top:92px}}.menu nav{display:grid}.menu nav a{border-bottom:1px solid var(--line);font-family:var(--head);letter-spacing:.04em;text-transform:uppercase;color:var(--navy);justify-content:space-between;align-items:center;padding:16px 0;font-size:24px;font-weight:700;display:flex}.menu nav a.on{color:var(--red)}.menu-contact{color:var(--muted);justify-items:start;gap:14px;display:grid}.menu-contact a{align-items:center;gap:10px;display:inline-flex}.menu-contact svg{color:var(--red)}.slider{background:var(--navy-2);min-height:clamp(560px,86svh,860px);color:var(--white);align-items:center;display:flex;position:relative;overflow:hidden}.slider-media,.slider-zoom,.slider-media .photo{position:absolute;inset:0}.slider-shade{z-index:1;pointer-events:none;background:linear-gradient(90deg,#0a1733e0 0%,#0a173399 45%,#0a173326 100%),linear-gradient(#0a173300 60%,#0a173399 100%);position:absolute;inset:0}.slider-in{z-index:2;padding-top:80px;padding-bottom:150px;position:relative}.slider-copy{justify-items:start;gap:22px;max-width:780px;display:grid}.slider .kicker{color:var(--white)}.slider .kicker:before{background:var(--red)}.slider-text{color:#ffffffd9;max-width:54ch;font-size:clamp(17px,1.4vw,20px);line-height:1.6}.slider-actions{flex-wrap:wrap;gap:14px;margin-top:8px;display:flex}.slider-nav{right:var(--gutter);align-items:center;gap:14px;display:flex;position:absolute;bottom:150px}.slider-nav>button{width:50px;height:50px;transition:background-color var(--t), border-color var(--t);border:2px solid #ffffff59;border-radius:50%;place-items:center;display:grid}.slider-nav>button:hover{background:var(--red);border-color:var(--red)}.slider-dots{gap:10px;display:flex}.slider-dots button{text-align:left;width:46px;font-family:var(--head);color:#ffffff8c;gap:6px;font-size:14px;font-weight:700;display:grid}.slider-dots button.on{color:var(--white)}.slider-dots i{background:#ffffff4d;height:3px;display:block;position:relative;overflow:hidden}.slider-dots b{background:var(--red);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.slider-dots .on b{transform:scaleX(1)}.slider-dots b.run{animation:7s linear forwards fill}@keyframes fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (width<=900px){.slider-shade{background:linear-gradient(#0a173359 0%,#0a173399 45%,#0a1733eb 100%)}.slider{align-items:flex-end}.slider-in{padding-bottom:170px}.slider-nav{left:var(--gutter);bottom:110px;right:auto}.slider-dots{display:none}}.stats{z-index:3;margin-top:-90px;position:relative}.stats-row{border-radius:var(--r);box-shadow:var(--shadow-lg);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.stat{border-right:1px solid var(--line);flex-direction:column-reverse;justify-content:flex-end;gap:4px;padding:clamp(24px,2.6vw,36px);display:flex;position:relative}.stat:last-child{border-right:0}.stat dd{font-family:var(--head);color:var(--navy);font-variant-numeric:tabular-nums;order:3;font-size:clamp(38px,3.6vw,54px);font-weight:800;line-height:1}.stat dd small{color:var(--red);margin-left:4px;font-size:.55em}.stat dt{font-family:var(--head);letter-spacing:.05em;text-transform:uppercase;color:var(--ink);order:2;font-size:17px;font-weight:700;line-height:1.2}.stats.is-flat .stat dd{white-space:nowrap;font-size:clamp(28px,2.7vw,42px)}.stat>span{color:var(--muted);order:1;font-size:14px;line-height:1.4}@media (width<=900px){.stats-row{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media (width<=420px){.stat{padding:20px 16px}.stat dt{font-size:15px}}.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,88px);display:grid}.split.is-flip>:first-child{order:2}.split-copy{align-content:center;justify-items:start;gap:28px;display:grid}.split-media{padding:0 0 28px 28px;position:relative}.split-media:before{content:"";border-radius:var(--r);background:var(--red);width:55%;height:60%;position:absolute;bottom:0;left:0}.split.is-flip .split-media:before{left:auto;right:0}.split-media .photo,.split-media>a{border-radius:var(--r);box-shadow:var(--shadow-lg);display:block;position:relative;overflow:hidden}.split-media-card{z-index:2;border-radius:var(--r);background:var(--navy);max-width:280px;color:var(--white);box-shadow:var(--shadow-lg);align-items:center;gap:14px;padding:20px 22px;font-size:15px;line-height:1.35;display:flex;position:absolute;bottom:60px;right:-16px}.split.is-flip .split-media-card{left:-16px;right:auto}.split-media-card svg{color:var(--red);flex:none}.split-media-card strong{font-family:var(--head);letter-spacing:.04em;text-transform:uppercase;font-size:22px;display:block}.split-media-no{z-index:2;font-family:var(--head);color:var(--white);text-shadow:0 6px 30px #0006;font-size:72px;font-weight:800;line-height:1;position:absolute;top:20px;right:24px}.split.is-flip .split-media-no{right:52px}@media (width<=900px){.split{grid-template-columns:1fr}.split.is-flip>:first-child{order:0}.split-media-card{bottom:44px;right:12px}.split.is-flip .split-media-card{left:12px}}.collage{padding:0 22% 14% 0;position:relative}.collage-a{border-radius:var(--r);box-shadow:var(--shadow-lg)}.collage-b{border:8px solid var(--white);border-radius:var(--r);width:52%;box-shadow:var(--shadow-lg);bottom:0;right:0;position:absolute!important}.collage-badge{z-index:2;border-radius:var(--r);background:var(--red);color:var(--white);text-transform:uppercase;letter-spacing:.06em;gap:4px;padding:22px 26px;font-size:14px;font-weight:600;line-height:1.3;display:grid;position:absolute;bottom:22%;left:-12px;box-shadow:0 20px 40px -16px #e31e2699}.collage-badge strong{font-family:var(--head);letter-spacing:0;font-size:56px;line-height:1}.collage:before{content:"";background-image:radial-gradient(var(--red) 2px, transparent 2.5px);opacity:.5;background-size:16px 16px;width:120px;height:120px;position:absolute;top:-24px;right:8%}@media (width<=560px){.collage-badge{padding:16px 18px;left:0}.collage-badge strong{font-size:40px}}.checks{gap:12px;display:grid}.checks.is-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.checks li{color:var(--ink);align-items:flex-start;gap:12px;font-weight:500;line-height:1.5;display:flex}.checks li>span{background:var(--red);width:24px;height:24px;color:var(--white);border-radius:50%;flex:none;place-items:center;margin-top:1px;display:grid}@media (width<=560px){.checks.is-cols{grid-template-columns:1fr}}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.2vw,30px);display:grid}.cards>li{display:flex}.card{background:var(--white);border-radius:var(--r);width:100%;box-shadow:var(--shadow);transition:transform var(--t) var(--ease), box-shadow var(--t);flex-direction:column;display:flex;position:relative;overflow:hidden}a.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}.card-media{position:relative}.card-media:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0a173300 50%,#0a173373);position:absolute;inset:0}.card-icon{z-index:2;border-radius:var(--r);background:var(--red);width:60px;height:60px;color:var(--white);font-family:var(--head);transition:background-color var(--t);place-items:center;font-size:24px;font-weight:800;display:grid;position:absolute;bottom:-28px;right:22px;box-shadow:0 12px 24px -10px #e31e26b3}a.card:hover .card-icon{background:var(--navy)}.card-step{z-index:2;font-family:var(--head);letter-spacing:.1em;text-transform:uppercase;color:var(--white);font-size:16px;font-weight:700;position:absolute;bottom:16px;left:18px}.card-body{transition:border-color var(--t);border-bottom:4px solid #0000;flex:1;align-content:start;gap:12px;padding:36px 28px 30px;display:grid}a.card:hover .card-body{border-color:var(--red)}.card-body p{color:var(--muted);font-size:15.5px;line-height:1.65}.card-link{font-family:var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--red);align-items:center;gap:10px;margin-top:auto;padding-top:8px;font-size:16px;font-weight:700;display:inline-flex}a.card:hover .card-link .arrow{transform:translate(4px)}.card-spec{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px 10px;padding:12px 0;font-size:14.5px;display:flex}.card-spec dt{color:var(--navy);font-weight:700}.card-spec dd{color:var(--muted)}.card-all{background:var(--navy) linear-gradient(135deg, var(--navy-3), var(--navy-2));color:#ffffffc7;justify-content:center;align-items:flex-start;gap:14px;padding:36px 32px}.card-all .h-s{color:var(--white);font-size:clamp(26px,2.2vw,32px)}.card-all-go{background:var(--red);width:56px;height:56px;color:var(--white);transition:transform var(--t) var(--ease);border-radius:50%;place-items:center;margin-top:10px;display:grid}.card-all:hover .card-all-go{transform:translate(6px)}@media (width<=1060px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.cards{grid-template-columns:1fr}}.process{background:var(--navy-2);color:var(--white);padding:clamp(72px,9vw,128px) 0;position:relative;overflow:hidden}.process>.photo{position:absolute;inset:0}.process-shade{z-index:1;background:linear-gradient(#0a1733e6,#0f2147d9);position:absolute;inset:0}.process-in{z-index:2;position:relative}.process-steps{counter-reset:s;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid}.process-steps li{border-radius:var(--r);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background-color var(--t), border-color var(--t), transform var(--t) var(--ease);background:#ffffff0d;border:1px solid #ffffff24;align-content:start;gap:12px;padding:34px 28px;display:grid;position:relative}.process-steps li:hover{background:var(--red);border-color:var(--red);transform:translateY(-6px)}.process-steps .h-s{color:var(--white)}.process-steps p{color:#ffffffc7;font-size:15.5px}.process-steps small{font-family:var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--white);opacity:.8;font-size:15px;font-weight:700}.process-no{font-family:var(--head);color:#0000;-webkit-text-stroke:1.5px #fff9;font-size:60px;font-weight:800;line-height:1}@media (width<=1000px){.process-steps{grid-template-columns:1fr 1fr}}@media (width<=560px){.process-steps{grid-template-columns:1fr}}.timeline{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:20px;padding-top:34px;display:grid;position:relative}.timeline:before{content:"";background:#fff3;height:2px;position:absolute;top:12px;left:0;right:0}.timeline li{border-radius:var(--r);background:#ffffff0f;border:1px solid #ffffff1f;align-content:start;gap:10px;padding:26px 22px;display:grid;position:relative}.timeline li:before{content:"";background:var(--red);border-radius:50%;width:16px;height:16px;position:absolute;top:-30px;left:22px;box-shadow:0 0 0 6px #e31e2640}.timeline-mark{background:var(--red);font-family:var(--head);letter-spacing:.08em;text-transform:uppercase;border-radius:4px;justify-self:start;padding:3px 12px;font-size:16px;font-weight:700}.timeline .h-s{color:var(--white)}.timeline p{color:#ffffffbf;font-size:15px}@media (width<=1100px){.timeline{grid-template-columns:1fr;gap:16px;padding:0 0 0 36px}.timeline:before{width:2px;height:auto;inset:0 auto 0 7px}.timeline li:before{top:28px;left:-36px}}.gallery{gap:14px;display:grid}.gallery.is-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery.is-masonry{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(150px,15vw,220px);grid-auto-flow:dense}.gallery.is-masonry>li.is-big{grid-area:span 2/span 2}.gallery.is-masonry>li.is-tall{grid-row:span 2}.gallery.is-masonry>li.is-wide{grid-column:span 2}.gallery>li{display:flex}.gallery-item{border-radius:var(--r);width:100%;display:block;position:relative;overflow:hidden}.gallery.is-grid .gallery-item .photo{aspect-ratio:4/3}.gallery.is-masonry .gallery-item .photo{position:absolute;inset:0}.gallery.is-masonry .gallery-item{min-height:100%}.gallery-cap{z-index:2;color:var(--white);font-family:var(--head);letter-spacing:.04em;text-transform:uppercase;text-align:left;opacity:0;transition:opacity var(--t);background:linear-gradient(#0a17331a 40%,#0a1733d9);flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:8px;padding:18px;font-size:18px;font-weight:700;display:flex;position:absolute;inset:0}.gallery-cap svg{background:var(--red);border-radius:50%;width:42px;height:42px;padding:10px;display:grid}.gallery-item:hover .gallery-cap,.gallery-item:focus-visible .gallery-cap{opacity:1}.gallery-item:hover img{transform:scale(1.08)}@media (hover:none){.gallery-cap{opacity:1;background:linear-gradient(#0000 50%,#0a1733bf)}.gallery-cap svg{display:none}}@media (width<=900px){.gallery.is-grid,.gallery.is-masonry{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery.is-masonry{grid-auto-rows:160px}.gallery-cap{padding:12px;font-size:15px}}.lightbox{z-index:120;background:#060e20f0;place-items:center;padding:64px 80px;display:grid;position:fixed;inset:0}.lightbox figure{gap:14px;max-width:min(1200px,100%);max-height:100%;display:grid}.lightbox img{object-fit:contain;border-radius:var(--r);width:auto;max-width:100%;height:auto;max-height:calc(100svh - 180px);margin:0 auto}.lightbox figcaption{color:var(--white);font-family:var(--head);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:12px 24px;font-size:20px;font-weight:700;display:flex}.lightbox figcaption a{color:var(--red);align-items:center;gap:8px;font-size:16px;display:inline-flex}.lightbox figcaption small{color:#fff9;margin-left:auto;font-size:15px}.lb-btn{width:52px;height:52px;color:var(--white);transition:background-color var(--t);background:#ffffff1a;border-radius:50%;place-items:center;display:grid;position:absolute}.lb-btn:hover{background:var(--red)}.lb-close{top:16px;right:16px}.lb-prev{margin-top:-26px;top:50%;left:16px}.lb-next{margin-top:-26px;top:50%;right:16px}@media (width<=700px){.lightbox{padding:72px 12px}.lb-prev,.lb-next{margin:0;top:auto;bottom:12px}}.stages{gap:12px;width:100%;display:grid}.stages li{border-radius:var(--r);background:var(--white);border-left:4px solid var(--red);transition:transform var(--t) var(--ease);grid-template-columns:48px 1fr;align-items:center;gap:2px 16px;padding:14px 18px;display:grid;box-shadow:0 8px 20px -14px #0f21474d}.stages li:hover{transform:translate(6px)}.stages-icon{width:48px;height:48px;color:var(--red);background:#e31e261a;border-radius:50%;grid-row:span 2;place-items:center;display:grid}.stages-no{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:600;line-height:1.2}.stages strong{font-family:var(--head);text-transform:uppercase;color:var(--navy);font-size:21px;font-weight:700;line-height:1.1}.infra{grid-template-rows:auto auto;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);display:grid}.infra-media{grid-area:1/1/auto/span 2}.infra-media .photo{border-radius:var(--r)}.infra-panel{border-radius:var(--r);background:var(--navy);color:#fffc;box-shadow:var(--shadow-lg);z-index:2;grid-area:1/2;align-self:end;justify-items:start;gap:18px;margin:0 clamp(16px,3vw,40px) -80px 0;padding:clamp(28px,3vw,44px);display:grid;position:relative}.infra-panel .h-m{color:var(--white)}.infra-panel .kicker{color:var(--red)}.infra-thumbs{grid-area:2/1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;padding-right:24px;display:grid}.infra-thumbs a{border-radius:var(--r);display:block;position:relative;overflow:hidden}.infra-thumbs span{z-index:2;color:var(--white);font-family:var(--head);text-transform:uppercase;letter-spacing:.04em;background:linear-gradient(#0000,#0a1733d9);padding:30px 12px 10px;font-size:15px;font-weight:700;line-height:1.15;position:absolute;bottom:0;left:0;right:0}@media (width<=1000px){.infra{grid-template-columns:1fr}.infra-media,.infra-panel,.infra-thumbs{grid-area:auto/1}.infra-panel{margin:-60px 16px 0}.infra-thumbs{padding:0}}.approach{grid-template-columns:minmax(0,1fr) minmax(0,.7fr);align-items:center;display:grid;position:relative}.approach>.photo{border-radius:var(--r);grid-area:1/1/auto/span 2;min-height:460px}.approach-panel{z-index:2;border-radius:var(--r);background:var(--red);color:#ffffffeb;box-shadow:var(--shadow-lg);grid-area:1/2;justify-items:start;gap:18px;margin:40px 40px 40px 0;padding:clamp(28px,3vw,44px);display:grid;position:relative}.approach-panel .kicker,.approach-panel .h-m{color:var(--white)}@media (width<=900px){.approach{grid-template-columns:1fr}.approach>.photo,.approach-panel{grid-column:1}.approach>.photo{min-height:0}.approach-panel{grid-row:2;margin:-60px 16px 0}}.units{gap:12px;width:100%;display:grid}.units a{border-radius:var(--r);background:var(--white);border:1px solid var(--line);transition:border-color var(--t), box-shadow var(--t), transform var(--t) var(--ease);grid-template-columns:76px minmax(0,1fr) 24px;align-items:center;gap:18px;padding:10px 18px 10px 10px;display:grid}.bg-soft .units a{border-color:#0000}.units a:hover{border-color:var(--red);box-shadow:var(--shadow);transform:translate(4px)}.units strong{font-family:var(--head);text-transform:uppercase;color:var(--navy);font-size:20px;font-weight:700;line-height:1.15;display:block}.units small{color:var(--muted);font-size:14.5px;line-height:1.45;display:block}.units .arrow{color:var(--red)}.units a:hover .arrow{transform:translate(4px)}.cards.is-stage{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=1060px){.cards.is-stage{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.cards.is-stage{grid-template-columns:1fr}}.cards.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=900px){.cards.is-3{grid-template-columns:1fr}}.certs{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;max-width:900px;margin:0 auto;display:grid}.cert{border-radius:var(--r);background:var(--white);box-shadow:var(--shadow);border-top:4px solid var(--red);align-content:start;gap:14px;padding:clamp(28px,3vw,40px);display:grid}.cert p{color:var(--muted)}.cert-icon{width:64px;height:64px;color:var(--red);background:#e31e261a;border-radius:50%;place-items:center;display:grid}.cert-status{color:#1d7a3d;background:#e5f5ea;border-radius:999px;justify-self:start;padding:4px 12px;font-size:13px;font-weight:600}.cert-status.is-historical{color:var(--muted);background:#f1f2f5}.cert-status.is-in_progress{color:#9a6200;background:#fff4e0}.logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px);display:grid}.logos li{border:1px solid var(--line);border-radius:var(--r);background:var(--white);text-align:center;transition:box-shadow var(--t), transform var(--t);grid-template-rows:1fr auto;gap:14px;padding:clamp(18px,2.4vw,28px);display:grid;box-shadow:0 10px 30px -22px #0c1b3d59}.logos li:hover{transform:translateY(-2px);box-shadow:0 18px 40px -24px #0c1b3d73}.logos-mark{height:110px;font-family:var(--head);color:var(--navy);place-items:center;font-weight:700;display:grid}.logos-mark picture{display:contents}.logos-mark img{object-fit:contain;width:auto;max-width:min(100%,240px);height:auto;max-height:92px}.logos-name{border-top:1px solid var(--line);font-family:var(--head);color:var(--navy);padding-top:12px;font-size:14.5px;font-weight:600;line-height:1.35}@media (width<=900px){.logos{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.logos-mark{height:84px}.logos-mark img{max-height:72px}.logos-name{font-size:13px}}.pull{border-left:4px solid var(--red);border-radius:0 var(--r) var(--r) 0;background:var(--soft);gap:12px;padding:26px 28px;display:grid;position:relative}.pull svg{color:var(--red)}.pull p{font-family:var(--head);color:var(--navy);font-size:clamp(21px,1.8vw,26px);font-weight:600;line-height:1.3}.quotes{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;display:grid}.quote-card{border-radius:var(--r);background:var(--white);box-shadow:var(--shadow);gap:16px;padding:32px;display:grid}.quote-card svg{color:var(--red)}.quote-card p{color:var(--ink);font-size:17px}.quote-card footer{font-family:var(--head);text-transform:uppercase;letter-spacing:.04em;color:var(--navy);font-weight:700}.dt-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:clamp(32px,4vw,56px);display:grid}.dt-main{gap:clamp(32px,4vw,48px);min-width:0;display:grid}.dt-photo{position:relative}.dt-photo .photo{border-radius:var(--r);box-shadow:var(--shadow);background:#eef1f6}.dt-photo .photo img{object-fit:contain}.dt-thumbs{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;margin-top:calc(clamp(32px,4vw,48px)/-1.66667);display:grid}.dt-thumbs button{outline-offset:-3px;opacity:.7;transition:opacity var(--t), outline-color var(--t);border-radius:4px;outline:3px solid #0000;overflow:hidden}.dt-thumbs button:hover{opacity:1}.dt-thumbs button.on{opacity:1;outline-color:var(--red)}.dt-thumbs button.on .photo:after{content:"";z-index:2;box-shadow:inset 0 0 0 3px var(--red);position:absolute;inset:0}.dt-block{justify-items:start;gap:18px;display:grid}.dt-block .h-m{padding-bottom:14px;position:relative}.dt-block .h-m:after{content:"";background:var(--red);width:56px;height:3px;position:absolute;bottom:0;left:0}.dt-overview{color:var(--muted);font-size:17.5px}.dt-specs{justify-items:stretch}.dt-block .gallery{width:100%}.dt-block .gallery.is-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dt-side{gap:24px;display:grid;position:sticky;top:110px}.side-card{border-radius:var(--r);background:var(--soft);padding:28px}.side-title{font-family:var(--head);text-transform:uppercase;color:var(--navy);margin-bottom:18px;padding-bottom:12px;font-size:22px;font-weight:700;position:relative}.side-title:after{content:"";background:var(--red);width:44px;height:3px;position:absolute;bottom:0;left:0}.side-list{gap:8px;display:grid}.side-list a{background:var(--white);font-family:var(--head);text-transform:uppercase;color:var(--navy);transition:background-color var(--t), color var(--t);border-radius:4px;grid-template-columns:52px minmax(0,1fr) 16px;align-items:center;gap:14px;padding:8px 14px 8px 8px;font-size:17px;font-weight:700;line-height:1.15;display:grid}.side-list a:hover,.side-list a.on{background:var(--red);color:var(--white)}.side-ask{border-radius:var(--r);color:var(--white);position:relative;overflow:hidden}.side-ask>.photo{position:absolute;inset:0}.side-ask:before{content:"";z-index:1;background:linear-gradient(#0f2147d1,#0a1733f2);position:absolute;inset:0}.side-ask-in{z-index:2;justify-items:start;gap:16px;padding:34px 28px;display:grid;position:relative}.side-ask .h-m{color:var(--white)}.side-ask p{color:#fffc;font-size:15.5px}.side-phone{font-family:var(--head);align-items:center;gap:10px;font-size:22px;font-weight:700;display:inline-flex}.side-phone svg{color:var(--red)}.dt-pager{background:var(--navy);color:var(--white)}.dt-pager-in{justify-content:space-between;gap:16px;display:flex}.dt-pager-link{gap:4px;padding:30px 0;display:grid}.dt-pager-link.is-next{text-align:right;justify-items:end;margin-left:auto}.dt-pager-link small{letter-spacing:.1em;text-transform:uppercase;color:#fff9;font-size:13px;font-weight:600}.dt-pager-link strong{font-family:var(--head);text-transform:uppercase;transition:color var(--t);align-items:center;gap:12px;font-size:clamp(20px,2vw,28px);display:inline-flex}.dt-pager-link:hover strong{color:var(--red)}@media (width<=1000px){.dt-layout{grid-template-columns:1fr}.dt-side{position:static}}@media (width<=560px){.dt-block .gallery.is-grid{grid-template-columns:1fr 1fr}}.spec{border:1px solid var(--line);border-radius:var(--r);width:100%;display:grid;overflow:hidden}.spec>div{grid-template-columns:minmax(120px,.8fr) 1.2fr;display:grid}.spec>div:nth-child(odd){background:var(--soft)}.spec dt,.spec dd{padding:14px 18px}.spec dt{font-family:var(--head);letter-spacing:.04em;text-transform:uppercase;color:var(--navy);border-right:1px solid var(--line);font-size:16px;font-weight:700}.spec dd{color:var(--ink);font-weight:500}.bg-soft .spec>div:nth-child(odd){background:var(--white)}.banner{background:var(--navy-2);min-height:clamp(340px,42vw,480px);color:var(--white);align-items:center;display:flex;position:relative;overflow:hidden}.banner-media,.banner-media .photo{position:absolute;inset:0}.banner-shade{z-index:1;background:linear-gradient(90deg,#0a1733eb 0%,#0a1733b3 50%,#0a173359 100%);position:absolute;inset:0}.banner-shade:after{content:"";background:linear-gradient(90deg, var(--red) 0 30%, transparent 30%);width:100%;height:6px;position:absolute;bottom:0;left:0}.banner-in{z-index:2;justify-items:start;gap:16px;padding-top:64px;padding-bottom:72px;display:grid;position:relative}.banner .h-xl{color:var(--white)}.banner-text{color:#ffffffd1;max-width:60ch;font-size:clamp(16.5px,1.3vw,19px)}.crumbs{font-family:var(--head);letter-spacing:.06em;text-transform:uppercase;color:#ffffffbf;background:#ffffff1a;border-radius:4px;flex-wrap:wrap;gap:10px;margin-top:6px;padding:10px 18px;font-size:16px;font-weight:600;display:inline-flex}.crumbs li+li:before{content:"/";color:var(--red);margin-right:10px}.crumbs a:hover{color:var(--white)}.crumbs [aria-current]{color:var(--red)}.banner .crumbs [aria-current]{color:#ff5a60}.cta{background:var(--navy-2);color:var(--white);position:relative;overflow:hidden}.cta>.photo{position:absolute;inset:0}.cta-shade{z-index:1;background:linear-gradient(90deg,#c1161df0 0%,#e31e26db 45%,#0f2147cc 100%);position:absolute;inset:0}.cta-in{z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px 48px;padding-top:clamp(56px,6vw,88px);padding-bottom:clamp(56px,6vw,88px);display:flex;position:relative}.cta-copy{gap:14px;max-width:680px;display:grid}.cta .h-l,.cta .h-l em{color:var(--white)}.cta-copy p{color:#ffffffe0;font-size:18px}.cta-actions{flex-wrap:wrap;align-items:center;gap:24px 32px;display:flex}.cta .btn-primary{background:var(--white);color:var(--red);box-shadow:none}.cta .btn-primary:hover{color:var(--white)}.cta-call{font-family:var(--head);align-items:center;gap:14px;font-size:26px;font-weight:700;line-height:1.1;display:flex}.cta-call small{font-family:var(--body);letter-spacing:.06em;text-transform:uppercase;opacity:.85;font-size:13px;font-weight:500;display:block}.cta-call>span:first-child{border:2px solid #ffffff80;border-radius:50%;place-items:center;width:56px;height:56px;display:grid}.info-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.info-card{border-radius:var(--r);background:var(--white);box-shadow:var(--shadow);border-bottom:4px solid var(--red);color:var(--muted);align-content:start;justify-items:start;gap:10px;padding:34px 30px;display:grid}.info-card address span{display:block}.info-card a{color:var(--ink);font-weight:600}.info-card a:hover{color:var(--red)}.info-icon{background:var(--red);width:64px;height:64px;color:var(--white);border-radius:50%;place-items:center;margin-bottom:6px;display:grid}.info-cards.is-4{grid-template-columns:repeat(4,minmax(0,1fr))}.info-card .more{margin-top:6px}.ct-sister{text-align:center;margin-top:24px}.ct-sister a{font-family:var(--head);color:var(--navy);border-bottom:2px solid var(--red);align-items:center;gap:8px;padding-bottom:2px;font-weight:600;display:inline-flex}.ct-sister a:hover{color:var(--red)}@media (width<=1200px){.info-cards.is-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.info-cards{grid-template-columns:1fr}}@media (width<=900px) and (width>=601px){.info-cards.is-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.info-cards.is-4{grid-template-columns:1fr}}.ct-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.ct-media{position:sticky;top:110px}.ct-media .photo{border-radius:var(--r);box-shadow:var(--shadow-lg)}.ct-media-card{z-index:2;border-radius:var(--r);background:var(--navy);color:#fffc;border-left:4px solid var(--red);gap:2px;padding:20px 24px;display:grid;position:absolute;bottom:24px;left:24px;right:24px}.ct-media-card strong{font-family:var(--head);text-transform:uppercase;color:var(--white);font-size:24px}.ct-form{border-radius:var(--r);background:var(--white);box-shadow:var(--shadow-lg);border-top:4px solid var(--red);gap:16px;padding:clamp(28px,3.4vw,48px);display:grid}@media (width<=1000px){.ct-grid{grid-template-columns:1fr}.ct-media{position:relative;top:auto}.ct-media .photo{aspect-ratio:16/9}}.ct-map{position:relative}.ct-map iframe{border:0;width:100%;height:min(60vh,520px);display:block}.ct-map-card{left:var(--gutter);max-width:min(560px, calc(100% - 2 * var(--gutter)));border-radius:var(--r);background:var(--white);box-shadow:var(--shadow-lg);color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px 20px;padding:20px 24px;font-size:15px;display:flex;position:absolute;bottom:32px}.ct-map-card>svg{color:var(--red);flex:none}.ct-map-card strong{font-family:var(--head);text-transform:uppercase;color:var(--navy);font-size:19px;display:block}.ct-map-note{letter-spacing:.06em;text-transform:uppercase;color:var(--red);margin-bottom:2px;font-size:12px;font-weight:600;display:block}.form{grid-template-columns:1fr 1fr;gap:18px 20px;margin-top:8px;display:grid}.wide{grid-column:1/-1}.field{gap:6px;display:grid}.field label{color:var(--navy);font-size:14px;font-weight:600}.field label i{color:var(--red);font-style:normal}.field input,.field textarea,.field select{border:1px solid var(--line);border-radius:var(--r);background:var(--soft);width:100%;min-height:52px;color:var(--ink);font:500 16px/1.4 var(--body);appearance:none;transition:border-color var(--t), background-color var(--t), box-shadow var(--t);padding:12px 16px}.field textarea{resize:vertical;min-height:130px;line-height:1.6}.field input::placeholder,.field textarea::placeholder{color:#9aa2b1}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--red);background:var(--white);outline:none;box-shadow:0 0 0 4px #e31e261f}.select{position:relative}.select select{cursor:pointer;padding-right:40px}.select>span{color:var(--muted);pointer-events:none;margin-top:-6px;position:absolute;top:50%;right:16px}.field.has-error input,.field.has-error textarea,.field.has-error select{border-color:#c2412d}.field-error{color:#b3321f;font-size:13px}.file{border:2px dashed var(--line);border-radius:var(--r);cursor:pointer;color:var(--navy);transition:border-color var(--t), background-color var(--t);align-items:center;gap:16px;padding:16px 18px;font-weight:600;display:flex}.file:hover,.file:focus-within{border-color:var(--red);background:#e31e2608}.file input{opacity:0;width:1px;height:1px;position:absolute}.file-plus{background:var(--red);width:42px;height:42px;color:var(--white);border-radius:50%;flex:none;place-items:center;font-size:22px;line-height:1;display:grid}.file-text small{color:var(--muted);margin-top:2px;font-size:13px;font-weight:400;display:block}.file.has-error{color:#b3321f;border-color:#b3321f}.hp{width:1px;height:1px;position:absolute;left:-9999px}.form-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:8px;display:flex}.form-note{color:var(--muted);font-size:13px}.form-msg{color:#b3321f;max-width:44ch;font-size:14px}.form-done{justify-items:start;gap:20px;padding:32px 0;display:grid}@media (width<=560px){.form{grid-template-columns:1fr}.form-foot .btn{width:100%}}.footer{background:var(--navy-2);color:#ffffffb8;font-size:15.5px}.footer-strip{grid-template-columns:repeat(8,minmax(0,1fr));display:grid}.footer-strip a{aspect-ratio:1;display:block;position:relative;overflow:hidden}.footer-strip .photo{position:absolute;inset:0}.footer-strip span{z-index:2;color:var(--white);font-family:var(--head);text-transform:uppercase;text-align:center;opacity:0;transition:opacity var(--t);background:#e31e26d9;place-items:center;padding:10px;font-size:16px;font-weight:700;line-height:1.15;display:grid;position:absolute;inset:0}.footer-strip a:hover span{opacity:1}@media (width<=900px){.footer-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.footer-strip a:nth-child(n+9){display:none}}.footer-top{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,1.3fr);gap:40px;padding-top:clamp(56px,6vw,80px);padding-bottom:clamp(48px,5vw,64px);display:grid}.footer-lead{align-content:start;justify-items:start;gap:22px;display:grid}.footer-logo{border-radius:var(--r);background:var(--white);padding:10px 14px;display:inline-flex}.footer-logo .brand img{height:84px}.footer-cta{font-family:var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--red);align-items:center;gap:10px;font-size:17px;font-weight:700;display:inline-flex}.footer-cta:hover .arrow{transform:translate(4px)}.footer h4{font-family:var(--head);letter-spacing:.04em;text-transform:uppercase;color:var(--white);margin-bottom:22px;padding-bottom:12px;font-size:22px;font-weight:700;position:relative}.footer h4:after{content:"";background:var(--red);width:40px;height:3px;position:absolute;bottom:0;left:0}.footer-links{gap:8px;display:grid}.footer-links a{transition:color var(--t), transform var(--t) var(--ease);align-items:center;gap:8px;display:inline-flex}.footer-links a:before{content:"";border-top:2px solid var(--red);border-right:2px solid var(--red);width:6px;height:6px;transform:rotate(45deg)}.footer-links a:hover{color:var(--white);transform:translate(4px)}.footer-contact{gap:14px;display:grid}.footer-contact li{grid-template-columns:20px 1fr;align-items:start;gap:12px;display:grid}.footer-contact svg{color:var(--red);margin-top:4px}.footer-contact address span,.footer-contact address strong{display:block}.footer-contact address strong{font-family:var(--head);color:var(--white);font-weight:600}.footer-contact a:hover{color:var(--white)}.footer-legal{border-top:1px solid #ffffff1a;font-size:14px}.footer-legal-in{justify-content:space-between;align-items:center;gap:16px;padding-top:18px;padding-bottom:18px;display:flex}.footer-up{border-radius:var(--r);background:var(--red);width:44px;height:44px;color:var(--white);transition:background-color var(--t);flex:none;place-items:center;display:grid}.footer-up:hover{background:var(--white);color:var(--red)}@media (width<=1100px){.footer-top{grid-template-columns:1fr 1fr}}@media (width<=600px){.footer-top{grid-template-columns:1fr}}.state{background:var(--soft);align-items:center;min-height:70svh;padding:80px 0;display:flex}.state[aria-busy=true]{min-height:100svh}.state-in{justify-items:start;gap:24px;display:grid}.state-contact{color:var(--navy);flex-wrap:wrap;gap:8px 32px;font-weight:600;display:flex}.state-contact a:hover{color:var(--red)}.state-debug{border-left:3px solid var(--red);background:var(--white);max-width:100%;color:var(--ink);white-space:pre-wrap;padding:14px 16px;font:13px/1.6 ui-monospace,Consolas,monospace;overflow-x:auto}.state-actions{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.state-bar{z-index:70;background:var(--red);transform-origin:0;width:100%;height:3px;animation:load 1.2s var(--ease) infinite;position:fixed;top:0;left:0}@keyframes load{0%{transform:scaleX(0)}70%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--head:"Poppins", "Barlow Fallback", system-ui, -apple-system, "Segoe UI", sans-serif;--body:"Open Sans", "Barlow Fallback", system-ui, -apple-system, "Segoe UI", sans-serif}body{font-size:15px;line-height:1.7}.h-hero,.h-xl,.h-l,.h-m,.h-s{letter-spacing:-.015em;text-transform:none;font-weight:600;line-height:1.18}.h-hero{font-size:clamp(32px,4.4vw,60px);line-height:1.12}.h-xl{font-size:clamp(28px,3.4vw,46px)}.h-l{font-size:clamp(25px,2.7vw,36px)}.h-m{font-size:clamp(19px,1.6vw,23px)}.h-s{font-size:clamp(16.5px,1.2vw,18.5px);line-height:1.3}.lead{font-size:clamp(15.5px,1.1vw,16.5px)}.slider-text{font-size:clamp(15.5px,1.15vw,17px)}.banner-text{font-size:clamp(15px,1.1vw,16.5px)}.kicker{letter-spacing:.14em;gap:10px;font-size:12.5px;font-weight:600}.kicker:before,.sec-head.is-center .kicker:after{width:26px;height:2px}.btn{letter-spacing:.04em;min-height:48px;padding:0 24px;font-size:13.5px;font-weight:600}.header-quote{min-height:44px;padding:0 20px;font-size:13px}.more,.card-link,.footer-cta{letter-spacing:.04em;font-size:13.5px;font-weight:600}.tag,.card-step,.timeline-mark{font-size:11.5px;font-weight:600}.nav a{letter-spacing:0;text-transform:none;padding:0 12px;font-size:14.5px;font-weight:500}.nav a:after{height:2px;left:12px;right:12px}.header-call{font-size:16px;font-weight:600}.topbar{font-size:13px}.menu nav a{letter-spacing:0;text-transform:none;font-size:18px;font-weight:500}.slider-dots button{font-size:12px}.stat dd{font-size:clamp(28px,2.6vw,38px);font-weight:700}.stats.is-flat .stat dd{font-size:clamp(22px,2vw,30px)}.stat dt{letter-spacing:0;text-transform:none;font-size:14px;font-weight:600}.stat>span{font-size:13px}.split-media-card{font-size:14px}.split-media-card strong{letter-spacing:0;text-transform:none;font-size:17px}.split-media-no{font-size:48px}.collage-badge{font-size:12.5px}.collage-badge strong{font-size:40px}.card-icon{width:54px;height:54px;font-size:18px;bottom:-26px}.card-body{gap:10px;padding:32px 24px 26px}.card-body p,.process-steps p,.timeline p,.side-ask p{font-size:14.5px}.card-all .h-s{font-size:clamp(20px,1.7vw,24px)}.process-no{font-size:42px}.process-steps small{font-size:12px}.checks li{font-size:15px}.gallery-cap{letter-spacing:0;text-transform:none;font-size:14px}.lightbox figcaption{letter-spacing:0;text-transform:none;font-size:16px}.stages strong{text-transform:none;font-size:16px}.stages-no{font-size:12px}.infra-thumbs span,.footer-strip span{letter-spacing:0;text-transform:none;font-size:13px}.units strong{text-transform:none;font-size:15.5px}.units small{font-size:13.5px}.logos li,.quote-card footer{text-transform:none;letter-spacing:0}.pull p{font-size:clamp(16.5px,1.3vw,19px)}.dt-overview{font-size:16px}.side-title{text-transform:none;font-size:18px}.side-list a{text-transform:none;font-size:14px;font-weight:500}.side-phone{font-size:18px}.dt-pager-link strong{text-transform:none;font-size:clamp(16px,1.5vw,21px)}.spec dt{letter-spacing:0;text-transform:none;font-size:13.5px;font-weight:600}.spec dd{font-size:14.5px}.crumbs{font-size:12.5px;font-weight:500}.cta-copy p{font-size:16px}.cta-call{font-size:20px;font-weight:600}.ct-media-card strong{text-transform:none;font-size:18px}.ct-map-card strong{text-transform:none;font-size:16px}.footer{font-size:14.5px}.footer h4{letter-spacing:0;text-transform:none;font-size:17px;font-weight:600}.field label{font-size:13.5px}.field input,.field textarea,.field select{min-height:48px;font-size:15px}.footer-url{opacity:.7;overflow-wrap:anywhere;font-size:14px;display:block}.who-copy .stack{gap:16px}.who-copy .body{max-width:64ch;font-family:var(--body);color:var(--muted);font-size:clamp(16px,1.1vw,17px);line-height:1.75}.who-copy .spec dt,.who-copy .spec dd{font-family:var(--body);font-size:clamp(15px,1vw,16px);line-height:1.5}.who-copy .spec dt{letter-spacing:0;text-transform:none;font-weight:700}.who-copy .spec dd{overflow-wrap:anywhere}@media (width<=480px){.who-copy .spec>div{grid-template-columns:1fr}.who-copy .spec dt{border-right:0;padding-bottom:2px}.who-copy .spec dd{padding-top:2px}}.nav a.nav-ext{white-space:nowrap;gap:4px}.nav a.nav-ext svg{color:var(--red);flex:none}.header .wrap.header-bar{max-width:max(var(--max), 1760px)}:root{--navy:#0c1b3d;--navy-2:#071229;--navy-3:#16295a;--red:#d91c24;--red-d:#b3141b;--ink:#111a2e;--muted:#5b6475;--line:#e6e9f0;--soft:#f5f7fb;--max:1280px;--r:12px;--shadow:0 1px 2px #0c1b3d0a, 0 8px 24px -8px #0c1b3d1f, 0 24px 48px -24px #0c1b3d29;--shadow-lg:0 2px 4px #0c1b3d0a, 0 18px 40px -12px #0c1b3d33, 0 40px 80px -32px #0c1b3d47;--grad:linear-gradient(135deg, #e5262e 0%, #b3141b 100%)}.bg-soft{background:linear-gradient(#f7f8fc 0%,#eef1f7 100%);position:relative}.bg-soft:before{content:"";pointer-events:none;background-image:radial-gradient(#0c1b3d12 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 20% 80%,#0000);mask-image:linear-gradient(#0000,#000 20% 80%,#0000)}.bg-soft>*{position:relative}.h-hero,.h-xl,.h-l{letter-spacing:-.025em}.h-xl em,.h-l em,.h-m em{background:linear-gradient(90deg,#e5262e,#a8121a);color:#0000;-webkit-background-clip:text;background-clip:text}.cta .h-l em{color:var(--white);background:0 0}.kicker{letter-spacing:.16em;background:#d91c2414;border:1px solid #d91c2429;border-radius:999px;padding:7px 14px 7px 12px;font-size:11.5px}.kicker:before{background:currentColor;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #d91c2426}.sec-head.is-center .kicker:after{display:none}.slider .kicker,.sec-head.is-light .kicker,.infra-panel .kicker,.approach-panel .kicker{color:var(--white);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border-color:#ffffff38}.slider .kicker:before,.sec-head.is-light .kicker:before,.infra-panel .kicker:before,.approach-panel .kicker:before{background:#ff4b52;box-shadow:0 0 0 4px #ff4b5240}.btn{letter-spacing:.06em;border-radius:10px}.btn-primary{background:var(--grad);box-shadow:0 10px 24px -10px #d91c24bf,inset 0 1px #fff3}.btn-primary:before{background:linear-gradient(135deg, var(--navy-3), var(--navy))}.btn-light{background:#fffffff5;box-shadow:0 10px 24px -12px #00000059}.slider .btn-light{color:var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:none;background:#ffffff1f;border-color:#ffffff59}.btn-line{border-width:1.5px}.cta .btn-primary{background:var(--white)}.photo img{transition:transform 1.6s var(--ease)}.topbar{border-bottom:1px solid #ffffff0f}.topbar-in{min-height:40px}.header{-webkit-backdrop-filter:blur(16px)saturate(1.6);backdrop-filter:blur(16px)saturate(1.6);background:#ffffffe6;border-bottom-color:#0c1b3d0f}.header:after{background:linear-gradient(90deg, var(--red), #ff5a60 40%, transparent);height:2px}.header-call-icon{background:linear-gradient(135deg,#d91c241f,#d91c240a);border:1px solid #d91c242e}.scroll-progress{z-index:90;background:linear-gradient(90deg, var(--red), #ff5a60);transform-origin:0;pointer-events:none;height:3px;position:fixed;top:0;left:0;right:0}.slider{min-height:clamp(600px,88svh,900px)}.slider-shade{background:radial-gradient(120% 90% at 0%,#071229eb 0%,#0712298c 55%,#07122933 100%),linear-gradient(#07122900 55%,#071229bf 100%)}.slider-shade:after{content:"";opacity:.08;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.slider-copy{padding-left:28px;position:relative}.slider-copy:before{content:"";background:linear-gradient(180deg, var(--red), #d91c2400);width:2px;position:absolute;top:6px;bottom:6px;left:0}.h-hero em{color:#ff5a60;background:0 0;margin:0;padding:0}.slider-nav>button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0f;border:1px solid #ffffff4d}.stats-row{background:#0b1f33;border:1px solid #ffffff0f;border-radius:14px;box-shadow:0 2px 4px #0712291f,0 24px 48px -24px #07122973}.stats-row .stat{border-color:#ffffff1f}.stat:before,.stat:after{content:none}.stat dd{color:var(--white)}.stat dt{color:#ffffffa8}.stat dd small{color:var(--white)}.banner:has(+.stats) .banner-shade:after{content:none}.banner:has(+.chips) .banner-shade:after{content:none}.split-media:before{background:var(--grad);border-radius:16px}.split-media .photo,.split-media>a,.collage-a,.collage-b{border-radius:16px}.split-media-card,.collage-badge{border-radius:14px}.split-media-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0c1b3deb;border:1px solid #ffffff14}.collage-badge{background:var(--grad)}.checks li>span{background:var(--grad);box-shadow:0 4px 10px -4px #d91c2499}.card{border:1px solid var(--line);border-radius:16px;box-shadow:0 1px 2px #0c1b3d0a,0 12px 32px -18px #0c1b3d2e}a.card:hover{box-shadow:var(--shadow-lg);border-color:#0000;transform:translateY(-8px)}.card-media{margin:10px 10px 0}.card-media .photo,.card-media:after{border-radius:12px}.card-icon{background:var(--grad);border:3px solid var(--white);border-radius:14px}.card-body{border-bottom:0}.card-body:after{content:"";background:var(--grad);height:3px;transition:transform .5s var(--ease);border-radius:3px 3px 0 0;position:absolute;bottom:0;left:24px;right:24px;transform:scaleX(0)}a.card:hover .card-body:after{transform:scaleX(1)}.card-all{background:radial-gradient(120% 120% at 100% 0%, #1d3470 0%, var(--navy) 50%, var(--navy-2) 100%);border:0}.card-all-go{background:var(--grad)}.process-shade{background:radial-gradient(100% 80% at 50% 0,#16295ae0,#071229f2)}.process-steps li,.timeline li{background:linear-gradient(#ffffff14,#ffffff05);border-color:#ffffff1f;border-radius:16px}.process-steps li:hover{background:var(--grad);border-color:#0000}.gallery-item{border-radius:14px}.gallery-cap svg{background:var(--grad)}.stages li{border:1px solid var(--line);border-left:3px solid var(--red);border-radius:12px;box-shadow:0 1px 2px #0c1b3d0a,0 10px 24px -18px #0c1b3d40}.infra-media .photo,.approach>.photo{border-radius:18px}.infra-panel,.approach-panel{border-radius:16px}.infra-panel{background:radial-gradient(120% 120% at 100% 0%, #1d3470 0%, var(--navy) 55%, var(--navy-2) 100%)}.approach-panel{background:var(--grad)}.infra-thumbs a,.units a{border-radius:12px}.units .photo{border-radius:8px}.cert,.info-card,.quote-card,.ct-form{border:1px solid var(--line);border-radius:16px;position:relative;overflow:hidden}.cert:before,.info-card:after,.ct-form:before{content:"";background:var(--grad);height:3px;position:absolute;left:0;right:0}.cert:before,.ct-form:before{top:0}.info-card:after{bottom:0}.info-icon,.cert-icon{background:var(--grad);color:var(--white);box-shadow:0 10px 20px -10px #d91c24b3}.ct-media .photo{border-radius:18px}.ct-media-card,.ct-map-card{border-radius:14px}.pull{border-radius:0 14px 14px 0}.spec{border-radius:12px}.dt-photo .photo{border-radius:16px}.dt-thumbs button{border-radius:10px}.side-card{border:1px solid var(--line);background:var(--white);border-radius:16px;box-shadow:0 12px 32px -20px #0c1b3d33}.side-list a{background:var(--soft);border-radius:10px}.side-list .photo{border-radius:8px}.side-list a:hover,.side-list a.on{background:var(--grad)}.side-ask{border-radius:16px}.banner{min-height:clamp(360px,40vw,500px)}.banner-shade{background:radial-gradient(120% 100% at 0%,#071229f0 0%,#0712299e 60%,#07122959 100%)}.banner-shade:after{background:linear-gradient(90deg, var(--red), #ff5a60 30%, transparent 60%);height:3px}.crumbs{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #ffffff29;border-radius:999px;padding:8px 18px}.cta-shade{background:linear-gradient(100deg,#b3141bf2 0%,#d91c24e0 40%,#071229d9 100%)}.footer{background:radial-gradient(80% 60% at 100% 0%, #13244d 0%, var(--navy-2) 60%)}.footer-logo{border-radius:12px}.footer-up{background:var(--grad);border-radius:10px}.field input,.field textarea,.field select{background:#f7f8fb;border-radius:10px}.file{border-radius:12px}.file-plus{background:var(--grad)}.header{-webkit-backdrop-filter:blur(16px)saturate(1.6);backdrop-filter:blur(16px)saturate(1.6);transition:box-shadow var(--t);background:#fffffff5;border-bottom:1px solid #0c1b3d14;position:fixed;top:0;left:0;right:0}.header.is-solid{box-shadow:0 10px 30px -20px #0c1b3d59}.header-bar{height:112px}.header.is-solid .header-bar{height:90px}.brand{box-shadow:none;background:0 0;padding:0}.brand img{height:84px}.header.is-solid .brand img{height:68px}@media (width<=1140px){.header-bar,.header.is-solid .header-bar{height:92px}.brand img,.header.is-solid .brand img{height:66px}}@media (width<=560px){.header-bar,.header.is-solid .header-bar{height:80px}.brand img,.header.is-solid .brand img{height:56px}}.state{padding-top:160px}.hero3{background:var(--navy-2);height:100svh;min-height:640px;max-height:1000px;color:var(--white);text-align:center;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero3-media,.hero3-media .photo{position:absolute;inset:0}.hero3-shade{z-index:1;pointer-events:none;background:radial-gradient(70% 60%,#0712299e 0%,#07122959 70%,#07122933 100%),linear-gradient(#0712298c 0%,#07122900 22% 70%,#07122999 100%);position:absolute;inset:0}.hero3-in{z-index:2;justify-items:center;gap:24px;max-width:1040px;padding-top:124px;padding-bottom:60px;display:grid;position:relative}.hero3 .kicker{color:var(--white);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border-color:#ffffff47}.hero3 .kicker:before{background:#ff4b52;box-shadow:0 0 0 4px #ff4b524d}.hero3 .h-hero{letter-spacing:-.01em;text-transform:uppercase;text-shadow:0 6px 40px #00000073;font-size:clamp(38px,6.2vw,88px);font-weight:700;line-height:1.02}.hero3 .h-hero em{color:var(--white);background:0 0;margin:0;padding:0}.hero3 .h-hero em:after{content:"";background:var(--grad);border-radius:5px;width:90px;height:5px;margin:22px auto 0;display:block}.hero3-text{color:#ffffffe6;text-shadow:0 2px 16px #00000080;max-width:58ch;font-size:clamp(16px,1.3vw,19px);line-height:1.65}.hero3-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:6px;display:flex}.hero3 .btn-light{color:var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:none;background:#ffffff24;border-color:#ffffff80}@media (width<=700px){.hero3-in{padding-top:90px}.hero3-actions .btn{width:100%}.hero3-shade{background:linear-gradient(#07122999 0%,#07122980 50%,#071229b3 100%)}}.marquee{background:var(--grad);color:var(--white);padding:26px 0;overflow:hidden}.marquee-track{width:max-content;animation:40s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-run{flex:none;display:flex}.marquee-run>span{font-family:var(--head);letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:36px;padding-right:36px;font-size:clamp(24px,3vw,40px);font-weight:600;display:inline-flex}.marquee-run>span.is-outline{color:#0000;-webkit-text-stroke:1.2px #ffffffe6}.marquee-run i{opacity:.8;-webkit-text-stroke:0;color:var(--white);font-size:.6em;font-style:normal}@keyframes marquee{to{transform:translate(-50%)}}.intro-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:32px clamp(40px,6vw,96px);display:grid}.intro-grid .sec-head{margin-bottom:0}.intro-grid .h-l{font-size:clamp(28px,3.4vw,46px)}.intro-grid{align-items:center}.intro-copy{justify-items:start;gap:24px;display:grid}.intro-card{background:var(--soft);border:1px solid var(--line);border-left:3px solid var(--red);border-radius:16px;gap:18px;padding:clamp(24px,2.8vw,36px);display:grid}.trio{grid-template-columns:1fr 1.1fr 1fr;align-items:start;gap:clamp(16px,2vw,28px);margin-top:clamp(56px,6vw,88px);display:grid}.trio>.photo,.trio-mid .photo{box-shadow:var(--shadow-lg);border-radius:18px}.trio-mid{position:relative}.trio-badge{background:var(--navy);color:#fffc;width:max-content;max-width:calc(100% - 24px);box-shadow:var(--shadow-lg);white-space:nowrap;border-radius:16px;align-items:center;gap:14px;margin-inline:auto;padding:18px 26px;font-size:13px;line-height:1.3;display:flex;position:absolute;bottom:-36px;left:0;right:0}.trio-badge strong{font-family:var(--head);color:var(--white);font-size:40px;font-weight:700;line-height:1}.trio-badge span{white-space:normal;max-width:120px}@media (width<=900px){.intro-grid{grid-template-columns:1fr}}@media (width<=800px){.trio{grid-template-columns:1fr 1fr}.trio-mid{grid-area:1/1/auto/-1}.trio-mid .photo{aspect-ratio:16/10}.trio>.photo:first-child,.trio>.photo:last-child{margin-top:48px}}.showcase{background:radial-gradient(90% 70% at 100% 0%, #16295a 0%, var(--navy) 45%, var(--navy-2) 100%);color:var(--white)}.showcase-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:clamp(32px,4vw,64px);display:grid}.showcase-list{border-top:1px solid #ffffff1f;align-content:center;display:grid}.showcase-list li{border-bottom:1px solid #ffffff1f}.showcase-list a{color:#ffffff8c;transition:color var(--t), padding var(--t) var(--ease);grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:18px;padding:24px 0;display:grid;position:relative}.showcase-list a:before{content:"";background:var(--grad);transform-origin:0;width:100%;height:2px;transition:transform .6s var(--ease);position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.showcase-list a.on{color:var(--white);padding-left:10px}.showcase-list a.on:before{transform:scaleX(1)}.showcase-no{font-family:var(--head);letter-spacing:.1em;color:#ff5a60;font-size:13px;font-weight:600}.showcase-t strong{font-family:var(--head);letter-spacing:-.02em;font-size:clamp(20px,2vw,28px);font-weight:600;line-height:1.2;display:block}.showcase-t small{opacity:0;color:#ffffffb3;max-height:0;transition:max-height .5s var(--ease), opacity var(--t), margin var(--t);margin-top:0;font-size:14.5px;line-height:1.55;display:block;overflow:hidden}.showcase-list a.on small{opacity:1;max-height:80px;margin-top:8px}.showcase-go{width:44px;height:44px;transition:background-color var(--t), border-color var(--t);border:1px solid #fff3;border-radius:50%;place-items:center;display:grid}.showcase-list a.on .showcase-go{background:var(--grad);border-color:#0000}.showcase-thumb{display:none}.showcase-media{border-radius:20px;min-height:560px;position:relative;overflow:hidden;box-shadow:0 40px 80px -30px #0009}.showcase-img{opacity:0;transition:opacity .7s var(--ease), transform 1.4s var(--ease);position:absolute;inset:0;transform:scale(1.06)}.showcase-img.on{opacity:1;transform:scale(1)}.showcase-img .photo{position:absolute;inset:0}.showcase-cap{z-index:2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0712298c;border:1px solid #ffffff24;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex;position:absolute;top:20px;left:20px;right:20px}.showcase-cap span{letter-spacing:.12em;color:#ff5a60;font-size:12px;font-weight:600}.showcase-cap strong{font-family:var(--head);font-size:20px;font-weight:600}@media (width<=1100px){.showcase-grid{grid-template-columns:1fr}.showcase-media{display:none}.showcase-list a{color:var(--white);grid-template-columns:36px minmax(0,1fr) 44px}.showcase-list small{opacity:1!important;max-height:none!important;margin-top:8px!important}.showcase-thumb{border-radius:14px;grid-column:1/-1;display:block;overflow:hidden}.showcase-list a.on{padding-left:0}}.panels{gap:14px;height:clamp(440px,42vw,580px);display:flex}.panels li{cursor:pointer;min-width:0;transition:flex .8s var(--ease);outline-offset:4px;border-radius:20px;flex:1;position:relative;overflow:hidden}.panels li.on{flex:2.4}.panels .photo{position:absolute;inset:0}.panel-shade{z-index:1;transition:background-color var(--t);background:linear-gradient(#07122926 0%,#0712294d 45%,#071229eb 100%);position:absolute;inset:0}.panels li:not(.on) .panel-shade{background-color:#07122959}.panel-in{z-index:2;color:var(--white);gap:10px;padding:clamp(20px,2.4vw,34px);display:grid;position:absolute;bottom:0;left:0;right:0}.panel-no{background:var(--grad);width:48px;height:48px;font-family:var(--head);border-radius:14px;justify-self:start;place-items:center;font-size:16px;font-weight:700;display:grid}.panel-in .h-m{color:var(--white);white-space:nowrap}.panel-in p{opacity:0;color:#ffffffd1;max-width:44ch;max-height:0;transition:max-height .6s var(--ease), opacity .4s;font-size:15px;overflow:hidden}.panels li.on p{opacity:1;max-height:120px;transition-delay:.2s}.panel-whole{opacity:0;transition:opacity .5s var(--ease);position:absolute;inset:0}.panel-whole picture{display:contents}.panel-whole img{object-fit:contain;width:100%;height:100%;object-position:50% 20%!important}.panels li .photo img{transition:filter .5s var(--ease), transform .5s var(--ease)}.panels li.on .panel-whole{opacity:1}.panels li.on .photo img{filter:blur(16px)brightness(.6);transform:scale(1.15)}@media (width<=900px){.panels{flex-direction:column;height:auto}.panels li,.panels li.on{flex:none;height:300px}.panel-in p{opacity:1;max-height:none}.panels li .panel-whole{opacity:1}.panels li .panel-whole img{object-position:50% 0%!important}.panels li .photo img{filter:blur(16px)brightness(.6);transform:scale(1.15)}}.band{background:var(--navy-2);color:var(--white);padding:clamp(90px,10vw,150px) 0;position:relative;overflow:hidden}.band-media{position:absolute;inset:-14% 0}.band-media .photo{position:absolute;inset:0}.band-shade{z-index:1;background:linear-gradient(90deg,#071229e6,#0c1b3dc7);position:absolute;inset:0}.band-stats{z-index:2;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:relative}.band-stat{border-left:1px solid #ffffff29;flex-direction:column;gap:6px;padding:8px clamp(16px,2.4vw,36px);display:flex}.band-stat dd{font-family:var(--head);letter-spacing:-.03em;order:1;font-size:clamp(40px,4.6vw,68px);font-weight:600;line-height:1}.band-stat dd small{color:#ff5a60;margin-left:4px;font-size:.45em}.band-stat dt{font-family:var(--head);order:2;margin-top:8px;font-size:16px;font-weight:600}.band-stat>span{color:#ffffff9e;order:3;font-size:13.5px}@media (width<=900px){.band-stats{grid-template-columns:1fr 1fr;gap:40px 0}}.reel{background:var(--navy-2);color:var(--white);position:relative}.reel-sticky{align-content:center;gap:40px;padding:100px 0 80px;display:grid;overflow:hidden}.reel.is-pinned .reel-sticky{height:100vh;padding:90px 0 40px;position:sticky;top:0}.reel-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;display:flex}.reel-head .sec-head{margin:0}.reel-track{width:max-content;padding:0 var(--gutter);padding-left:max(var(--gutter), calc((100vw - var(--max)) / 2 + var(--gutter)));align-items:center;gap:22px;display:flex}.reel:not(.is-pinned) .reel-track{scroll-snap-type:x mandatory;width:auto;padding-bottom:12px;overflow-x:auto}.reel-track li{aspect-ratio:4/3;scroll-snap-align:start;flex:none;width:auto;height:clamp(260px,30vw,420px)}.reel-track a{border-radius:20px;width:100%;height:100%;display:block;position:relative;overflow:hidden}.reel-track .photo{position:absolute;inset:0}.reel-cap{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-family:var(--head);background:#0712298c;border:1px solid #ffffff24;border-radius:12px;align-items:center;gap:12px;padding:14px 16px;font-size:15px;font-weight:600;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.reel-cap small{letter-spacing:.1em;color:#ff5a60;font-size:11px}.reel-cap .arrow{margin-left:auto}.reel-track a:hover .reel-cap .arrow{transform:translate(4px)}@media (width<=900px){.reel-track li{height:min(56vw,340px)}}.approach-panel.is-navy{background:radial-gradient(120% 120% at 100% 0%, #1d3470 0%, var(--navy) 55%, var(--navy-2) 100%)}.banner{align-items:flex-end;height:74svh;min-height:520px;max-height:760px}.banner .h-xl{letter-spacing:-.03em;font-size:clamp(36px,5.2vw,76px)}.banner-in>:last-child{order:-1}.banner .crumbs{margin:0 0 4px}.banner-text{max-width:58ch}.chips{background:var(--white);border-bottom:1px solid var(--line)}.chips-in{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:var(--gutter);scrollbar-width:none;flex-wrap:nowrap;display:flex;overflow-x:auto}.chips-in::-webkit-scrollbar{display:none}.chips a{border-left:1px solid var(--line);scroll-snap-align:start;white-space:nowrap;font-family:var(--head);color:var(--navy);transition:color var(--t), background-color var(--t), box-shadow var(--t);flex:1 0 auto;justify-content:center;align-items:baseline;gap:8px;padding:20px 18px;font-size:14px;font-weight:500;display:flex;box-shadow:inset 0 -2px #0000}.chips a:last-child{border-right:1px solid var(--line)}.chips a small{letter-spacing:.04em;color:var(--muted);transition:color var(--t);font-size:11px;font-weight:600}.chips a:hover,.chips a:focus-visible{background:var(--soft);color:var(--red);box-shadow:inset 0 -2px 0 var(--red)}.chips a:hover small,.chips a:focus-visible small{color:var(--red)}@media (width<=900px){.chips a{flex:none;justify-content:flex-start;padding:16px;font-size:13.5px}.chips a:first-child{border-left:0}.chips a:last-child{border-right:0}}.rows{gap:clamp(72px,9vw,130px);display:grid}.row{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(36px,5vw,80px);display:grid}.row.is-flip .row-media{order:2}.row-media{display:block;position:relative}.row-media .photo{box-shadow:var(--shadow-lg);border-radius:20px}.row-no{z-index:3;font-family:var(--head);color:var(--white);text-shadow:0 8px 30px #00000073;pointer-events:none;font-size:clamp(48px,5vw,76px);font-weight:700;line-height:1;position:absolute;top:18px;right:22px}.row.is-flip .row-no{left:22px;right:auto}.row-copy{justify-items:start;gap:20px;display:grid}.row-copy .h-l a:hover{color:var(--red)}.row-copy .spec{max-width:520px}@media (width<=900px){.row{grid-template-columns:1fr}.row.is-flip .row-media{order:0}}@media (width<=420px){.trio-badge{gap:10px;padding:14px 18px}.trio-badge strong{font-size:32px}}.sister-link{border:1px solid var(--line);background:var(--white);max-width:100%;box-shadow:var(--shadow);transition:border-color var(--t), box-shadow var(--t), transform var(--t) var(--ease);border-radius:14px;align-items:center;gap:14px;padding:12px 18px 12px 12px;display:inline-flex}.sister-link:hover{border-color:var(--red);transform:translateY(-2px)}.sister-icon{width:46px;height:46px;color:var(--red);transition:background-color var(--t), color var(--t);background:#e31e261a;border-radius:12px;flex:none;place-items:center;display:grid}.sister-link:hover .sister-icon{background:var(--red);color:var(--white)}.sister-text{min-width:0;line-height:1.3;display:grid}.sister-text small{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.sister-text strong{font-family:var(--head);color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:600;overflow:hidden}.sister-go{color:var(--red);flex:none;margin-left:6px}@media (width<=480px){.sister-link{gap:12px;padding:10px 14px 10px 10px}.sister-icon{width:40px;height:40px}.sister-text strong{font-size:14.5px}.sister-text small{font-size:11px}.sister-go{margin-left:0}}.sec{padding:clamp(48px,5.5vw,80px) 0}.sec-sm{padding:clamp(32px,3.5vw,48px) 0}.sec-head{gap:12px;margin-bottom:clamp(24px,2.8vw,40px)}.sec-head-row{margin-bottom:clamp(24px,2.8vw,40px)}.split{gap:clamp(28px,4vw,56px)}.split-copy{gap:20px}.split-media{padding:0 0 20px 20px}.split.is-flip .split-media{padding:0 20px 20px 0}.cards{gap:clamp(16px,1.8vw,24px)}.card-body{padding:28px 22px 22px}.gallery{gap:12px}.process,.band{padding:clamp(52px,6vw,84px) 0}.process-steps li{padding:26px 22px}.timeline{padding-top:28px}.intro-grid{gap:24px clamp(28px,4vw,64px)}.trio{margin-top:clamp(32px,4vw,48px)}.trio>.photo:first-child{margin-top:48px}.trio>.photo:last-child{margin-top:24px}.showcase-list a{padding:18px 0}.showcase-media{min-height:480px}@media (width>=901px){.panels{height:clamp(360px,32vw,440px)}}.reel-sticky{gap:28px;padding:64px 0 56px}.reel.is-pinned .reel-sticky{padding:80px 0 32px}.marquee{padding:18px 0}.banner{height:56svh;min-height:400px;max-height:560px}.banner-in{gap:14px;padding-top:148px;padding-bottom:clamp(44px,5vw,64px)}.rows{gap:clamp(44px,5.5vw,72px)}.row{gap:clamp(28px,4vw,56px)}.row-copy{gap:16px}.dt-main{gap:clamp(24px,3vw,36px)}.dt-block{gap:14px}.dt-thumbs{margin-top:calc(clamp(24px,3vw,36px)/-1.81818)}.dt-side{gap:18px}.side-card{padding:22px}.side-ask-in{padding:26px 22px}.dt-pager-link{padding:22px 0}.info-card{padding:26px 24px}.ct-form{gap:12px;padding:clamp(24px,2.8vw,36px)}.cert{padding:clamp(22px,2.4vw,32px)}.cta-in{padding-top:clamp(40px,4.5vw,60px);padding-bottom:clamp(40px,4.5vw,60px)}.footer-top{gap:32px;padding-top:clamp(40px,4.5vw,56px);padding-bottom:clamp(32px,3.5vw,44px)}.stats.is-flat{margin-top:-44px}.stat{gap:6px;padding:clamp(20px,2.2vw,30px) clamp(20px,2.4vw,32px)}.cta.is-plain .cta-shade{background:radial-gradient(80% 120% at 100% 0,#1d3470 0%,#0c1b3d00 60%),linear-gradient(100deg,#b3141b 0%,#d91c24 45%,#0c1b3d 100%)}.side-list a{grid-template-columns:minmax(0,1fr) 16px;padding:13px 16px}a:hover .photo img,.photo.is-zoom:hover img,.gallery-item:hover img{transform:scale(1.025)}.units a{grid-template-columns:84px minmax(0,1fr) 24px;min-height:104px}.units-thumb{background:var(--navy);border-radius:8px;width:84px;height:84px;display:block;position:relative;overflow:hidden}.units-fallback{background:linear-gradient(145deg, var(--navy-3), var(--navy-2));color:#ffffff47;place-items:center;display:grid;position:absolute;inset:0}.units-fallback svg{width:44%;height:44%;margin:0 22% 22% 0}.units-thumb:after,.split-media-frame:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(315deg,#0a1733b8 0%,#0a173340 38%,#0a173300 62%);position:absolute;inset:0}.num-mark{z-index:2;font-family:var(--head);letter-spacing:-.02em;color:#ffffffe6;text-shadow:0 2px 10px #00000073;pointer-events:none;font-size:30px;font-weight:800;line-height:1;position:absolute;bottom:3px;right:7px}.num-mark.is-lg{color:#ffffffd1;text-shadow:0 6px 30px #00000073;font-size:clamp(56px,7vw,96px);bottom:14px;right:22px}.units a.is-active{border-color:var(--navy);box-shadow:var(--shadow)}.split-media-name{z-index:2;max-width:calc(100% - 160px);color:var(--white);font-family:var(--head);pointer-events:none;background:#0a1733cc;border-radius:8px;padding:8px 14px;font-size:16px;font-weight:700;line-height:1.25;position:absolute;bottom:16px;left:16px}@media (width<=560px){.units a{grid-template-columns:68px minmax(0,1fr) 20px;gap:14px;min-height:88px}.units-thumb{width:68px;height:68px}.num-mark{font-size:24px;right:5px}.num-mark.is-lg{bottom:10px;right:14px}.split-media-name{max-width:calc(100% - 110px);font-size:14px;bottom:12px;left:12px}}
