:root{--ink:#071521;--blue:#123b6b;--signal:#8bb4e8;--paper:#f7f7f4;--line:#d6ddd9;--muted:#66727b}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;overflow-x:hidden}
.wrap{max-width:1240px;margin:auto;padding-left:32px;padding-right:32px}
.nav{height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{color:var(--ink);display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:800;font-size:22px;letter-spacing:2px;line-height:.9}
.brand span span{color:#1e578e}
.brand small{display:block;font-size:5.5px;letter-spacing:1.6px;margin-top:6px;font-weight:700}
.brand-mark{width:31px;height:31px;color:#133d6c}
.nav nav{display:flex;gap:30px;margin-left:auto}
.nav nav a,.footer a{color:#42505a;text-decoration:none;font-size:12px;font-weight:700}
.button{background:var(--ink);color:white;border:1px solid var(--ink);padding:15px 19px;text-decoration:none;font:700 12px Manrope;display:inline-flex;gap:25px;align-items:center;justify-content:space-between;transition:.2s}
.button:hover{background:#1d4c80;border-color:#1d4c80;transform:translateY(-2px)}
.button span{font-size:16px}
.button-small{padding:11px 14px;font-size:11px;gap:15px}
.hero{min-height:595px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:20px;padding-top:35px;padding-bottom:65px}
.eyebrow{font:500 10px "DM Mono",monospace;letter-spacing:1.2px;color:#2c5b8c;margin:0 0 19px}
.eyebrow i{display:inline-block;width:7px;height:7px;background:#4c91d0;margin-right:7px}
.hero h1,h2{font-size:72px;letter-spacing:0;line-height:1.01;margin:0;font-weight:800}
.hero h1 em,h2 em{font-family:Georgia,serif;font-weight:400}
.lead{color:#53616a;font-size:15px;line-height:1.8;max-width:480px;margin:27px 0}
.hero-actions{display:flex;align-items:center;gap:24px}
.text-link{color:var(--ink);font-weight:700;font-size:12px;text-decoration:none}
.text-link span{color:#29629c;margin-left:7px}
.trust-row{display:flex;align-items:center;gap:12px;margin-top:47px;color:#727e84;font:500 10px "DM Mono",monospace}
.trust-row b{height:1px;width:35px;background:#b7c1c1}
.hero-visual{position:relative;height:415px;overflow:hidden;background:linear-gradient(130deg,#e8ecea,#d3dad9);isolation:isolate}
.grid{position:absolute;inset:0;opacity:.5;background-image:linear-gradient(#fff7 1px,transparent 1px),linear-gradient(90deg,#fff7 1px,transparent 1px);background-size:32px 32px}
.part{position:absolute;transform:skewY(-13deg) rotate(-13deg);background:linear-gradient(130deg,#e9efed 0%,#97a5a8 45%,#f7f7f2 100%);box-shadow:22px 29px 25px #263a4655}
.part-back{width:230px;height:190px;left:198px;top:98px;border-radius:34px}
.part-main{width:278px;height:235px;left:130px;top:75px;border-radius:17px 80px 20px 34px;border:1px solid #7f8d90}
.part-ring{width:104px;height:104px;border-radius:50%;border:26px solid #6e8188;position:absolute;right:30px;top:38px;box-shadow:inset 0 0 9px #30434b}
.part-hole{position:absolute;width:24px;height:24px;background:#546870;border-radius:50%;box-shadow:inset 3px 3px 5px #1e3035}
.h1{left:39px;top:50px}
.h2{left:65px;bottom:45px}
.part-line{height:10px;width:75px;background:#71858b;position:absolute;bottom:33px;left:121px;border-radius:7px}
.callout{position:absolute;z-index:2;background:#f8f9f6e8;padding:10px 15px 10px 25px;box-shadow:0 4px 15px #24343c18}
.callout span{position:absolute;width:9px;height:9px;border:1px solid #4484c4;border-radius:50%;left:10px;top:15px}
.callout b{font:700 11px Manrope;display:block}
.callout small{font:500 7px "DM Mono";letter-spacing:.7px;color:#637079}
.top-callout{right:14px;top:37px}
.bottom-callout{left:21px;bottom:34px}
.ticker{background:#113d70;overflow:hidden;color:#fff;height:59px;display:flex;align-items:center}
.ticker-track{display:flex;align-items:center;width:max-content;flex:none;animation:move 28s linear infinite;will-change:transform}
.ticker-set{display:flex;align-items:center;gap:25px;padding-right:25px;white-space:nowrap;font:500 11px "DM Mono";letter-spacing:1.4px}
.ticker i{color:#8bb4e8;font-style:normal}
@keyframes move{from{transform:translateX(0)}to{transform:translateX(var(--ticker-distance, -50%))}
}
.section{padding-top:125px;padding-bottom:125px}
.capabilities{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.section-heading h2{font-size:48px}
.section-intro{color:#53616a;line-height:1.85;font-size:14px;align-self:end;max-width:430px}
.capability-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.capability-grid article{min-height:205px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px;position:relative}
.cap-num{font:500 10px "DM Mono";color:#5789b7}
.capability-grid h3{font-size:17px;margin:48px 0 8px}
.capability-grid p{font-size:12px;line-height:1.65;color:#647077;margin:0;max-width:190px}
.arrow{position:absolute;right:18px;top:17px;font-size:19px;color:#2f679c}
.quality{background:var(--ink);color:#fff}
.quality-inner{min-height:370px;padding-top:82px;padding-bottom:75px;display:flex;justify-content:space-between;align-items:center}
.quality .eyebrow{color:#8bb4e8}
.quality h2{font-size:48px}
.quality-stats{display:flex;gap:70px}
.quality-stats div{border-left:1px solid #38506a;padding-left:22px}
.quality-stats strong{font-size:48px;letter-spacing:0}
.quality-stats strong span{font-size:20px;letter-spacing:0;color:#8bb4e8}
.quality-stats p{font:400 10px/1.7 "DM Mono";color:#b1c3d2}
.process{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}
.process-list{border-top:1px solid var(--line)}
.process-list article{display:grid;grid-template-columns:65px 1fr;border-bottom:1px solid var(--line);padding:22px 0}
.process-list article>span{font:500 10px "DM Mono";color:#5688b6}
.process-list h3{font-size:16px;margin:0 0 8px}
.process-list p{font-size:12px;line-height:1.65;color:#67737a;margin:0}
.request{background:#dce7ed}
.request-inner{padding-top:95px;padding-bottom:95px;display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}
.request h2{font-size:51px}
.request-copy>p:not(.eyebrow){font-size:13px;line-height:1.7;color:#52636f;max-width:360px;margin:25px 0}
.direct-contact{display:grid;gap:10px;margin-top:28px;max-width:430px}
.direct-contact a{display:grid;grid-template-columns:38px 1fr 22px;align-items:center;gap:12px;padding:13px 14px;background:#f7fafb;border:1px solid #cbd9df;color:#163f6e;text-decoration:none;transition:.2s}
.direct-contact a:hover{border-color:#4d82ad;background:#fff;transform:translateX(3px)}
.contact-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#dceaf2;color:#1c568e}
.contact-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.contact-copy b{font-size:12px}
.contact-copy small{font-size:11px;color:#657783;overflow-wrap:anywhere}
.contact-arrow{font-size:18px;color:#2f679c;text-align:right}
.request-copy>small{display:block;color:#75838b;font-size:9px;line-height:1.5;margin-top:25px;max-width:290px}
.quote-form{background:#f9faf8;padding:28px;display:grid;gap:14px}
.quote-form label{font-size:11px;font-weight:800;color:#34434d;display:grid;gap:7px}
.quote-form input:not([type=file]),.quote-form textarea{border:1px solid #d6ddda;background:white;padding:11px;font:400 12px Manrope;resize:vertical}
.quote-form input:focus,.quote-form textarea:focus{outline:1px solid #4b82b8}
.quote-form .button{width:100%;margin-top:4px}
.form-note{font-size:9px;line-height:1.5;color:#708087;margin:0}
.footer{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer .brand{font-size:16px}
.footer .brand-mark{width:23px}
.footer p{font-size:10px;color:#778187}
.footer>a:last-child{color:#1c568e}
.footer-contact{display:flex;align-items:center;gap:9px}
.footer-contact a{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;transition:.2s}
.footer-contact a:hover{color:#fff;background:#1c568e;border-color:#1c568e;transform:translateY(-2px)}
.footer-contact svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:900px){.wrap{padding-left:22px;padding-right:22px}
.nav{height:auto;min-height:78px;flex-wrap:wrap;padding-top:18px;padding-bottom:16px;row-gap:14px}
.nav nav{display:none}
.nav .button{margin-left:auto;padding:10px 12px;font-size:10px;gap:11px}
.brand{font-size:20px}
.hero{min-height:auto;grid-template-columns:1fr;padding-top:38px;padding-bottom:58px;gap:38px}
.hero h1{font-size:56px;line-height:1.02}
.lead{font-size:14px;line-height:1.7;max-width:620px;margin:22px 0}
.hero-visual{height:330px;max-width:620px;width:100%;justify-self:center}
.part-main{transform:scale(.82) skewY(-13deg) rotate(-13deg);transform-origin:left top;left:95px;top:58px}
.part-back{transform:scale(.82) skewY(-13deg) rotate(-13deg);transform-origin:left top;left:170px;top:95px}
.section{padding-top:78px;padding-bottom:78px}
.capabilities,.process,.request-inner{grid-template-columns:1fr;gap:36px}
.section-intro{max-width:620px;align-self:start}
.capability-grid{grid-template-columns:1fr 1fr}
.quality-inner{display:block;min-height:auto}
.quality-stats{margin-top:46px;gap:30px}
.quality-stats strong{font-size:38px;letter-spacing:0}
.request-inner{padding-top:72px;padding-bottom:72px}
.request-copy>p:not(.eyebrow){max-width:620px}
.footer{height:auto;padding-top:30px;padding-bottom:30px;flex-wrap:wrap;gap:18px}
.footer p{order:5;flex-basis:100%;margin:0}
.section-heading h2,.quality h2{font-size:42px}
}
@media(max-width:560px){.wrap{padding-left:18px;padding-right:18px}
.nav{align-items:flex-start}
.brand{font-size:18px;letter-spacing:1.2px}
.brand-mark{width:34px;height:34px}
.brand small{display:none}
.nav .button{width:auto;max-width:150px;line-height:1.25;text-align:left}
.button{width:100%;padding:14px 16px}
.hero{padding-top:28px;padding-bottom:48px}
.hero h1{font-size:40px}
.hero-actions{align-items:stretch;flex-direction:column;gap:15px}
.text-link{padding:2px 0}
.trust-row{flex-wrap:wrap;margin-top:34px}
.hero-visual{height:270px}
.part-main{transform:scale(.64) skewY(-13deg) rotate(-13deg);left:66px;top:55px}
.part-back{transform:scale(.64) skewY(-13deg) rotate(-13deg);left:124px;top:88px}
.callout{padding:9px 12px 9px 24px}
.top-callout{right:10px;top:22px}
.bottom-callout{left:12px;bottom:22px}
.ticker{height:52px}
.ticker-set{gap:18px;font-size:10px;padding-right:18px}
.section{padding-top:62px;padding-bottom:62px}
.capability-grid{grid-template-columns:1fr}
.capability-grid article{min-height:170px;padding:18px}
.capability-grid h3{margin-top:38px}
.quality-inner{padding-top:62px;padding-bottom:62px}
.quality-stats{flex-direction:column;margin-top:34px}
.quality-stats div{padding-left:15px}
.process-list article{grid-template-columns:42px 1fr;gap:8px}
.request-inner{padding-top:62px;padding-bottom:62px}
.request h2{font-size:40px}
.direct-contact a{overflow-wrap:anywhere}
.quote-form{padding:20px;gap:13px}
.quote-form input:not([type=file]),.quote-form textarea{font-size:16px}
.footer{align-items:flex-start;flex-direction:column}
.footer-contact{order:3}
.footer>a:last-child{order:4}
}
@media(max-width:360px){.wrap{padding-left:14px;padding-right:14px}
.brand{font-size:16px}
.nav .button{font-size:9px;max-width:132px}
.hero h1{font-size:36px}
.hero-visual{height:245px}
.part-main{left:48px;transform:scale(.58) skewY(-13deg) rotate(-13deg)}
.part-back{left:105px;transform:scale(.58) skewY(-13deg) rotate(-13deg)}
.section-heading h2,.quality h2,.request h2{font-size:35px}
}
