@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--navy:#101d2f;--blue:#2788f6}*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:Inter,Arial,sans-serif}body.home{overflow:hidden;background:#0c1727;color:#fff}a{text-decoration:none;color:inherit}.topbar{position:fixed;z-index:30;top:0;left:0;right:0;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;color:white;background:linear-gradient(180deg,rgba(0,0,0,.25),transparent)}.brand{font-size:23px;letter-spacing:.07em;font-weight:800}.brand span{font-weight:400;margin-left:4px}.nav-note{font-size:10px;letter-spacing:.25em;color:#d5deea}.header-contact{font-size:12px;letter-spacing:.16em;font-weight:700}.header-contact span{color:#70b4ff;font-size:18px;margin-left:8px}#stage{height:100vh;position:relative;overflow:hidden}.slide{position:absolute;inset:0;width:100%;height:100%;opacity:0;visibility:hidden;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease,visibility .7s;overflow:hidden}.slide.active{opacity:1;visibility:visible;transform:translateY(0);z-index:2}.backdrop{position:absolute;inset:0;background-position:center;background-size:cover;transform:scale(1.035);transition:transform 8s ease}.active .backdrop{transform:scale(1)}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,15,29,.67),rgba(5,15,29,.32)),rgba(2,10,21,.34)}.about .shade{background:rgba(3,11,25,.66)}.careers .shade{background:linear-gradient(90deg,rgba(3,13,26,.79) 0%,rgba(3,13,26,.54) 47%,rgba(3,13,26,.06) 100%)}.slide-content{position:relative;z-index:2;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;padding:100px 7% 70px}.center{text-align:center;align-items:center}.hero-content{padding-top:110px}.reveal{opacity:0;transform:translateY(26px);filter:blur(4px);transition:opacity .7s ease,transform .7s ease,filter .7s ease}.reveal.visible{opacity:1;transform:translateY(0);filter:blur(0)}h1,h2,p{margin:0}h1{font-size:clamp(38px,4.15vw,72px);line-height:1.17;letter-spacing:-.052em;font-weight:800;max-width:1250px}h1 span{display:inline-block}.lead{font-size:clamp(13px,1.05vw,17px);line-height:1.75;color:#e4e9f1;margin-top:24px}.hero-points{display:flex;justify-content:center;gap:0;margin-top:48px}.hero-points>div{min-width:215px;display:flex;flex-direction:column;align-items:center;gap:11px;padding:0 30px;border-right:1px solid rgba(255,255,255,.4)}.hero-points>div:last-child{border:0}svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hero-points svg{height:48px;width:48px}.hero-points span{font-size:13px;font-weight:500}.eyebrow{font-size:12px;letter-spacing:.26em;font-weight:600;color:#d9e5f5}.about .eyebrow{display:flex;align-items:center;gap:15px}.about .eyebrow span{width:34px;height:1px;background:#c2d5eb}.about h2{font-size:clamp(35px,3.7vw,65px);letter-spacing:-.05em;line-height:1.18;margin-top:24px}.about-lead{margin-top:24px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:65px;width:min(100%,1020px)}.stats>div{display:flex;flex-direction:column;align-items:center;gap:8px}.stats svg{width:45px;height:45px;margin-bottom:4px}.stats b{font-size:clamp(25px,2.7vw,43px);letter-spacing:-.045em}.stats span{font-size:12px;color:#e2eaf4}.careers-content{align-items:flex-start;padding-left:10%;padding-top:120px}.careers h2{font-size:clamp(38px,4.2vw,68px);line-height:1.1;letter-spacing:-.052em;margin-top:19px}.careers h2 em{font-style:normal;color:#3996ff}.career-lead{color:#e1e8f1;line-height:1.8;font-size:15px;margin-top:23px}.career-grid{width:min(680px,67vw);margin-top:32px;display:flex;flex-direction:column;gap:13px}.career-row{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.career-card{border:1px solid rgba(227,238,250,.32);background:rgba(6,19,35,.28);backdrop-filter:blur(7px);min-height:106px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:12px;font-weight:600;text-align:center;padding:12px;transition:background .25s,border-color .25s}.career-card:hover{background:rgba(42,130,243,.24);border-color:#65b4ff}.career-icon{font-size:32px;font-weight:300;line-height:1}.contact-slide{background:#fff;color:#263241}.contact-inner{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:80px 20px}.contact-inner h2{font-size:clamp(44px,5vw,82px);font-weight:800;letter-spacing:-.055em}.contact-inner h2 span{color:#318cfa}.contact-options{display:flex;gap:clamp(45px,9vw,170px);margin-top:65px}.contact-option{display:flex;align-items:center;flex-direction:column;gap:19px;transition:transform .25s}.contact-option:hover{transform:translateY(-8px)}.contact-option strong{font-size:clamp(19px,2vw,29px);letter-spacing:-.03em}.house{width:clamp(145px,15vw,225px);height:clamp(140px,14vw,208px);display:grid;place-items:center;background:#eaf4ff;clip-path:polygon(50% 0%,100% 36%,100% 100%,0 100%,0 36%);border-radius:13px;transition:background .25s}.contact-option:hover .house{background:#cde5ff}.house svg{width:75px;height:75px;color:#2588f8;stroke-width:2}.progress{position:fixed;right:35px;top:50%;transform:translateY(-50%);z-index:15;display:flex;align-items:center;gap:16px;color:white}.progress.dark-progress{color:#364458}.progress>span{font-size:11px;font-weight:700;letter-spacing:.16em}.progress>div{display:flex;flex-direction:column;gap:12px}.progress button{cursor:pointer;width:7px;height:7px;border-radius:50%;border:0;background:currentColor;opacity:.35;padding:0}.progress button.selected{opacity:1;box-shadow:0 0 0 4px rgba(110,170,250,.25)}.scroll-hint{position:fixed;z-index:15;bottom:30px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.2em;color:#fff;display:flex;align-items:center;gap:16px}.scroll-hint span:last-child{font-size:23px;letter-spacing:0}.scroll-hint.dark-hint{color:#43546b}
/* forms */body.form-page{background:#fff;color:#152a44;min-height:100vh}.form-top{height:76px;padding:0 7%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eef1f6}.form-top .brand{color:#172b45}.form-top a.back{font-size:13px;color:#52657d}.form-main{width:min(1110px,90%);margin:0 auto;padding:62px 0 85px}.form-kicker{color:#4b85d1;font-size:11px;letter-spacing:.26em;font-weight:700}.form-kicker:after{content:'';display:inline-block;width:40px;height:1px;background:#b9cce6;vertical-align:middle;margin-left:15px}.form-title{font-size:clamp(48px,5vw,70px);font-weight:800;letter-spacing:-.065em;margin-top:11px}.form-title span{color:#2187ff}.form-subtitle{font-size:16px;margin-top:13px;color:#3c4e65}.info-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:50px 0 48px}.info{display:flex;gap:13px;align-items:center}.info svg{width:29px;height:29px;color:#1685ff}.info small{display:block;color:#718199;font-size:10px;letter-spacing:.14em;font-weight:700;margin-bottom:7px}.info span{font-size:13px;font-weight:500}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px}.field{display:flex;flex-direction:column;gap:9px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:700}.field label em{color:#f05252;font-style:normal}.field input,.field textarea{font-family:inherit;width:100%;border:1px solid #d9e0e9;border-radius:4px;padding:16px;font-size:13px;outline:0;background:#fff;color:#16263b}.field input:focus,.field textarea:focus{border-color:#268aff;box-shadow:0 0 0 3px rgba(38,138,255,.1)}.field textarea{min-height:154px;resize:vertical}.send{border:0;background:#137cf5;color:white;padding:16px 28px;border-radius:4px;font-weight:700;cursor:pointer;margin-top:25px}.send:hover{background:#0869d6}.form-foot{color:#79879a;font-size:12px;margin-top:18px}
@media(max-width:700px){.topbar{padding:0 20px;height:62px}.brand{font-size:18px}.nav-note{display:none}.slide-content{padding:80px 25px 70px}.hero-content h1{font-size:35px}.lead{font-size:12px}.hero-points{gap:0;margin-top:36px}.hero-points>div{min-width:0;width:33.33%;padding:0 8px}.hero-points svg{width:34px;height:34px}.hero-points span{font-size:10px}.about h2{font-size:35px}.stats{gap:20px 5px;grid-template-columns:repeat(2,1fr);margin-top:35px}.stats svg{width:30px;height:30px}.stats b{font-size:26px}.stats span{font-size:10px}.careers-content{padding-left:25px}.careers h2{font-size:37px}.career-lead{font-size:12px}.career-grid{width:100%;margin-top:24px}.career-row{gap:7px}.career-card{min-height:94px;font-size:10px;padding:8px;gap:8px}.career-icon{font-size:25px}.careers .backdrop{background-position:60% center}.progress{right:13px}.progress>span{display:none}.scroll-hint{bottom:13px}.contact-options{gap:25px}.house{width:135px;height:130px}.house svg{width:58px;height:58px}.contact-option strong{font-size:20px}.info-row{grid-template-columns:1fr;gap:20px;margin:30px 0}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-main{padding-top:42px}.desktop-only{display:none}}

/* v2 refinements */
html{scroll-behavior:smooth}body.home{overflow-x:hidden;overflow-y:auto}#stage{height:100vh}.slide{height:100vh}.career-icon{display:flex;align-items:center;justify-content:center}.career-icon svg{width:45px;height:45px;stroke-width:2.2;display:block}.career-card{min-height:124px;gap:13px;font-size:13px}.hero-points svg{width:57px;height:57px;stroke-width:2.3}.contact-slide{position:relative;width:100%;height:52vh;min-height:390px;background:#fff;color:#263241;overflow:hidden}.contact-inner{padding:35px 20px;justify-content:center}.contact-inner h2{font-size:clamp(38px,4vw,62px)}.contact-options{margin-top:24px;gap:clamp(55px,10vw,180px)}.house{width:clamp(140px,12vw,180px);height:clamp(135px,11vw,170px)}.house svg{width:94px;height:94px;stroke-width:2.5}.contact-option{gap:12px}.contact-option strong{font-size:clamp(19px,1.8vw,26px)}.scroll-hint{border:0;background:transparent;cursor:pointer;font-family:inherit;font-weight:700}.scroll-hint:hover{color:#66aaff}.progress.in-contact{color:#364458}.scroll-hint.in-contact{color:#43546b}.progress.in-contact{opacity:0;pointer-events:none}.scroll-hint{background:rgba(7,19,35,.18);padding:8px 14px;border-radius:20px}.scroll-hint.in-contact{background:rgba(255,255,255,.88)}
@media(max-width:700px){.career-icon svg{width:32px;height:32px}.career-card{min-height:108px;font-size:10px}.hero-points svg{width:40px;height:40px}.contact-slide{height:52vh;min-height:350px}.contact-inner h2{font-size:39px}.contact-options{gap:26px;margin-top:24px}.house{width:135px;height:130px}.house svg{width:72px;height:72px}}

/* Main site map navigation */
.topbar{gap:20px}.site-links{display:flex;align-items:center;justify-content:center;gap:clamp(10px,1.6vw,28px);margin-left:auto;white-space:nowrap}.site-links a,.site-links .nav-disabled{font-size:clamp(10px,.85vw,13px);font-weight:650;letter-spacing:0;color:#fff;opacity:.94}.site-links a:hover{color:#9fd0ff}.site-links .nav-disabled{opacity:.6;cursor:default}.site-links a[aria-current=page]{color:#8dc2ff}.header-contact{flex-shrink:0;margin-left:14px}.site-links a:focus-visible,.header-contact:focus-visible{outline:2px solid #8dc2ff;outline-offset:6px}
@media(max-width:900px){.topbar{height:auto;min-height:76px;flex-wrap:wrap;padding:14px 4%;gap:12px}.site-links{order:3;width:100%;justify-content:space-between;overflow-x:auto;padding-bottom:4px;gap:16px}.header-contact{margin-left:auto}.site-links a,.site-links .nav-disabled{font-size:11px}}

/* v5: unified header + high contrast progress markers */
.topbar{background:rgba(255,255,255,.97);color:#173452;box-shadow:0 2px 16px #152e4b14;gap:20px}
.topbar .brand-logo img{display:block;width:166px;height:auto;max-height:57px;object-fit:contain}
.topbar .site-links a,.topbar .site-links .nav-disabled{color:#21334d}
.topbar .site-links a:hover,.topbar .site-links a[aria-current=page]{color:#1978e5}
.topbar .site-links .nav-disabled{opacity:.44}
.topbar .header-contact{background:#10243f;color:#fff;padding:12px 18px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:0}
.topbar .header-contact span{color:#88bfff}
.progress{color:#fff!important;background:rgba(5,17,33,.65);border:1px solid rgba(255,255,255,.3);border-radius:24px;padding:12px 13px;box-shadow:0 3px 16px #0005}
.progress button{width:11px;height:11px;opacity:1;background:#e6f4ff;border:2px solid #fff;box-shadow:0 0 0 1px #0004}
.progress button.selected{background:#2894ff;border-color:#fff;box-shadow:0 0 0 4px #6ebcff55}
.reveal{transition:opacity .48s ease,transform .48s ease,filter .48s ease}
.slide{transition:opacity .52s ease,transform .52s ease,visibility .52s}
@media(max-width:900px){.topbar{height:auto;min-height:76px;flex-wrap:wrap;padding:12px 4%;gap:12px}.topbar .site-links{order:3;width:100%;justify-content:space-between;overflow-x:auto;gap:16px;padding-bottom:4px}.topbar .header-contact{margin-left:auto}}

body.form-page .form-unified{position:sticky;top:0;z-index:30}body.form-page .form-unified .site-links a{color:#21334d}body.form-page .form-unified .site-links .nav-disabled{color:#21334d}body.form-page .form-unified .header-contact{color:white}

/* v27: unified header alignment */
.topbar .header-contact{display:inline-flex;align-items:center;justify-content:center;align-self:center;line-height:1.15;margin-top:0;margin-bottom:0;padding:12px 18px;min-height:42px}.topbar .site-links{align-items:center}.topbar{align-items:center}

/* v31 hero / contact layout */
.home .hero.active .hero-content .reveal[data-step="1"]{opacity:1!important;transform:none!important;filter:none!important;visibility:visible!important}
.contact-layout{display:grid;grid-template-columns:minmax(175px,1fr) minmax(340px,1.8fr) minmax(175px,1fr);align-items:center;gap:clamp(18px,2.4vw,48px);width:min(1220px,96%);margin:28px auto 0}.contact-layout .contact-options{margin-top:0;gap:clamp(20px,3vw,60px);justify-content:center}.contact-side{font-size:14px;color:#475c74;line-height:1.6;display:flex;flex-direction:column;gap:7px}.contact-side-kicker{font-size:10px;letter-spacing:.15em;color:#287de1;font-weight:800}.contact-side h3{font-size:17px;color:#1b3456;margin:0 0 3px}.contact-side a{overflow-wrap:anywhere;color:#536e89}.contact-side p{margin:0 0 9px;color:#536e89}.contact-address{text-align:left}@media(max-width:850px){.contact-slide{height:auto;min-height:540px}.contact-layout{grid-template-columns:1fr;gap:25px;text-align:center}.contact-side,.contact-address{align-items:center;text-align:center}.contact-layout .contact-options{order:-1}.contact-inner{padding:45px 20px}}@media(max-width:480px){.contact-layout .contact-options{gap:15px}.contact-layout .house{width:125px;height:115px}.contact-layout .contact-side{font-size:12px}}

/* v33: modern contact information cards */
.contact-slide{height:auto;min-height:570px;background:linear-gradient(145deg,#f7fbff 0%,#fff 48%,#f1f7ff 100%);overflow:visible}
.contact-inner{min-height:570px;padding:68px 28px 74px}
.contact-inner>h2{line-height:1.1;margin-bottom:12px}
.contact-layout-v33{width:min(1350px,100%);grid-template-columns:minmax(275px,1fr) minmax(330px,1.25fr) minmax(300px,1.1fr);gap:clamp(18px,2vw,30px);margin:24px auto 0;align-items:stretch}
.contact-layout-v33 .contact-panel{background:#fff;border:1px solid #e1ebf6;border-radius:20px;padding:26px 24px;box-shadow:0 12px 36px rgba(26,73,130,.065);gap:0;align-items:stretch;text-align:left;min-width:0}
.contact-layout-v33 .contact-side-kicker{font-size:11px;letter-spacing:.15em;color:#247ce1;margin-bottom:8px}
.contact-layout-v33 .contact-panel h3{font-size:clamp(21px,1.8vw,26px);font-weight:800;letter-spacing:-.035em;color:#152b49;margin:0 0 12px;line-height:1.25}
.contact-panel-intro{font-size:13px;line-height:1.5;color:#75869a;margin:0 0 20px!important}
.contact-detail,.office-item{display:flex;align-items:flex-start;gap:13px;padding:13px 0;border-top:1px solid #edf2f8;text-decoration:none;min-width:0}
.contact-detail:first-of-type{margin-top:3px}
.contact-detail-icon{width:39px;height:39px;min-width:39px;display:grid;place-items:center;border-radius:12px;background:#eaf4ff;color:#287be3}
.contact-detail-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-detail span:last-child{min-width:0}.contact-detail small{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:#8193aa;margin-bottom:4px}
.contact-detail strong{font-size:13px;line-height:1.5;font-weight:700;color:#254366;overflow-wrap:anywhere}
.contact-detail:hover strong{color:#1676de}
.office-item{padding:12px 0}.office-item:first-of-type{margin-top:3px}.office-item strong{display:block;font-size:13px;font-weight:800;color:#254366;margin:1px 0 5px}.office-item p{font-size:12px;line-height:1.55;color:#647b95;margin:0!important}
.contact-layout-v33 .contact-options{gap:clamp(15px,2vw,30px);display:flex;align-items:center;justify-content:center;margin:0;padding:12px 0}
.contact-layout-v33 .house{width:clamp(130px,11vw,175px);height:clamp(130px,11vw,170px)}
.contact-layout-v33 .contact-option strong{font-size:clamp(18px,1.65vw,24px)}
@media(max-width:1050px){.contact-layout-v33{grid-template-columns:1fr 1fr;max-width:800px}.contact-layout-v33 .contact-options{grid-column:1/-1;grid-row:1;min-height:215px}.contact-inner{padding:70px 22px}}
@media(max-width:650px){.contact-layout-v33{grid-template-columns:1fr;max-width:440px;gap:16px}.contact-layout-v33 .contact-options{grid-column:1;grid-row:1;min-height:190px}.contact-layout-v33 .contact-panel{padding:22px}.contact-layout-v33 .house{width:130px;height:125px}.contact-inner{padding:72px 16px 65px}.contact-slide{min-height:0}}

/* v34: independent automatic hero badges, without changing their visual styling */
.hero-points > .reveal{opacity:0;transform:translateY(26px);filter:blur(4px);transition:opacity .48s ease,transform .48s ease,filter .48s ease}
.hero-points > .reveal.visible{opacity:1;transform:translateY(0);filter:blur(0)}
@media(prefers-reduced-motion:reduce){.reveal,.hero-points > .reveal{transition-duration:.01ms!important}}
