@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--navy:#073f72;--navy-dark:#062f53;--ink:#142d40;--teal:#21b1c2;--teal-dark:#087c8d;--muted:#5a6e7d;--line:#dfe7eb;--pale:#f2f7f9;--body:'Manrope',Arial,sans-serif;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;color:var(--ink);background:#fff;font:1rem/1.75 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:5px}::selection{background:#b2e8ed;color:var(--navy)}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--display);font-weight:700;line-height:1.02;letter-spacing:-.015em}h3{font-weight:800;letter-spacing:-.035em;line-height:1.3}.container{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.section{padding:100px 0}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.skip-link{position:fixed;top:-80px;left:20px;padding:12px 20px;background:white;z-index:100;color:var(--navy);border:2px solid var(--navy)}.skip-link:focus{top:15px}.utility-bar{background:var(--navy);color:white;font-size:.8125rem;letter-spacing:.02em}.utility-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}.utility-inner a{font-weight:650}.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{height:93px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-symbol{display:block;position:relative;overflow:hidden;width:55px;height:53px}.brand-symbol img{position:absolute;width:105px;max-width:none;height:auto;left:-25px;top:-7px;mix-blend-mode:multiply}.brand-name{font-size:1.28rem;line-height:1.1;letter-spacing:-.025em;color:var(--navy);font-weight:800}.brand-name strong{color:var(--teal-dark)}.brand-name small{display:block;font-size:.72rem;font-weight:600;letter-spacing:.01em;margin-top:7px;color:var(--muted)}nav{display:flex;align-items:center;gap:30px;font-size:.875rem;font-weight:650}nav>a:not(.button):hover{color:var(--teal-dark)}.button{min-height:56px;display:inline-flex;justify-content:center;align-items:center;gap:11px;padding:15px 24px;border-radius:5px;font-size:.875rem;font-weight:750;line-height:1.5;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-navy{background:var(--navy);color:#fff}.button-navy:hover{background:var(--navy-dark)}.button-small{min-height:44px;padding:12px 18px;font-size:.8125rem}.button-small .icon{width:18px;height:18px}.menu-toggle{display:none}.hero{background:linear-gradient(90deg,#fff 58%,var(--pale) 58%);padding:52px 0 64px}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:52px;align-items:center}.hero-copy{padding:24px 0}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.15em;line-height:1.5;color:var(--teal-dark);margin-bottom:22px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.short-rule{height:2px;width:30px;background:var(--teal);display:inline-block}h1{font-size:clamp(3.7rem,6vw,5.7rem);color:var(--navy);margin-bottom:27px}h1 span{color:var(--teal-dark);display:block}.hero-description{max-width:530px;font-size:1.025rem;line-height:1.8;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:30px}.text-link{display:inline-flex;gap:10px;align-items:center;font-weight:700;font-size:.875rem}.text-link:hover{color:var(--teal-dark)}.text-link .icon{width:18px;height:18px}.hero-note{border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;margin-top:35px;padding-top:22px;font-size:.875rem;color:var(--muted);max-width:440px}.hero-note .icon{width:18px;height:18px;color:var(--teal-dark)}.hero-visual{position:relative;min-width:0;height:546px;border-radius:6px 6px 80px 6px;overflow:hidden;background:var(--navy)}.hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,27,46,.4),transparent 28%,rgba(3,35,60,.1) 55%,rgba(3,35,60,.95))}.photo-label{position:absolute;top:28px;left:28px;right:25px;color:white;font-size:.6875rem;font-weight:700;letter-spacing:.11em;display:flex;gap:10px;align-items:center;text-shadow:0 1px 3px #123}.photo-label-line{background:var(--teal);width:24px;height:3px;flex-shrink:0}.hero-caption{position:absolute;bottom:34px;left:34px;right:34px;color:white;display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--display);font-size:2.25rem;line-height:1.15}.hero-caption strong{font-weight:600;color:#67e1ea}.hero-caption-icon{width:50px;height:50px;fill:none;stroke:#67e1ea;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.service-strip{background:var(--navy);color:#fff}.strip-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;font-size:.875rem;font-weight:650;letter-spacing:.02em}.strip-inner i{width:4px;height:4px;border-radius:50%;background:#63d9e3;flex-shrink:0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:45px}.section-heading .eyebrow{margin-bottom:14px}h2{font-size:clamp(2.8rem,4.1vw,3.75rem);color:var(--navy)}.section-heading>p{max-width:355px;color:var(--muted);font-size:.9375rem;line-height:1.85;padding-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:6px;overflow:hidden}.service-card{padding:28px 25px 26px;display:flex;flex-direction:column;min-width:0;background:#fff;transition:background .2s}.service-card+.service-card{border-left:1px solid var(--line)}.service-card:hover{background:#f4fafb}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.service-icon{height:40px;width:40px;fill:none;stroke:var(--teal-dark);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.service-number{font-family:var(--display);font-size:1.2rem;color:#8498a6;line-height:1}.service-card h3{font-size:1.17rem;color:var(--navy);min-height:61px;margin-bottom:16px}.service-card p{color:var(--muted);font-size:.875rem;line-height:1.85;margin-bottom:26px}.service-link{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-top:auto;padding-top:20px;border-top:1px solid var(--line);font-size:.8125rem;font-weight:750;color:var(--navy)}.service-link:hover{color:var(--teal-dark)}.service-link .icon{width:18px;height:18px}.about{background:var(--pale)}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;align-items:center}.brand-panel{background:white;border:1px solid var(--line);padding:40px;position:relative;max-width:440px;border-radius:5px;box-shadow:14px 14px 0 #e5eef2;text-align:center}.full-logo{width:min(290px,100%);aspect-ratio:1.14;overflow:hidden;margin:0 auto 28px;position:relative}.full-logo img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.brand-panel>p{color:var(--navy);font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;line-height:1.65;padding-top:22px;border-top:1px solid var(--line)}.about-copy .eyebrow{margin-bottom:15px}.about-copy h2{margin-bottom:25px}.about-copy h2 span{color:var(--teal-dark)}.about-copy>p:not(.eyebrow){font-size:.9375rem;color:var(--muted);line-height:1.9;max-width:550px}.check-list{list-style:none;padding:0;margin:25px 0 0;display:grid;gap:12px;font-size:.875rem;font-weight:650}.check-list li{display:flex;align-items:center;gap:12px}.check-list .icon{color:var(--teal-dark);width:18px;height:18px}.contact{background:var(--navy-dark);color:white;position:relative;border-top:6px solid var(--teal)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.contact .eyebrow{color:#67e1ea;margin-bottom:17px}.contact h2{color:white;font-size:clamp(3rem,4.3vw,4rem);margin-bottom:24px}.contact-copy>p:not(.eyebrow){max-width:470px;color:#c8d8e4;font-size:.9375rem;line-height:1.9}.contact-location{display:flex;gap:10px;align-items:center;margin-top:25px;font-size:.8125rem;color:#c8d8e4}.contact-location .icon{color:#67e1ea;width:18px;height:18px}.contact-options{display:grid;gap:17px}.contact-card{display:flex;align-items:center;gap:19px;border:1px solid #40617a;background:#103e62;padding:23px;border-radius:6px;transition:border-color .2s,background .2s}.contact-card:hover{border-color:#67e1ea;background:#164b70}.contact-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#1b516f;border-radius:50%;color:#67e1ea;flex-shrink:0}.contact-card small{display:block;color:#d1e0e9;font-size:.8125rem;margin-bottom:2px}.contact-card strong{font-size:1.65rem;line-height:1.3;letter-spacing:.01em}.contact-arrow{margin-left:auto;color:#67e1ea}.contact-primary-phone{display:flex;align-items:center;justify-content:center;gap:10px;color:#c8d8e4;font-size:.8125rem;padding:8px}.contact-primary-phone:hover{color:white}.contact-primary-phone .icon{width:17px;height:17px}.footer{background:#04253f;color:#a9c1d3}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px;font-size:.75rem}.footer-brand{font-size:1rem;color:#fff;letter-spacing:-.02em;font-weight:800}.footer-brand strong{color:#67e1ea}.footer a:hover{color:white}
@media(min-width:1440px){.hero{padding:65px 0 76px}.hero-visual{height:580px}}
@media(max-width:1150px){.container{width:calc(100% - 64px)}.hero-grid{gap:35px;grid-template-columns:1fr 1fr}.hero-visual{height:530px}.hero-actions{gap:18px}.hero .button{padding-inline:18px}nav{gap:21px}.brand-name{font-size:1.1rem}.brand-name small{font-size:.68rem}.brand{gap:8px}.header nav .button{font-size:.75rem;padding-inline:14px}.service-card{padding:25px 19px}.service-card h3{font-size:1.06rem}.service-link{font-size:.75rem}.about-grid,.contact-grid{gap:64px}.contact-card{padding:21px 18px;gap:14px}.contact-card strong{font-size:1.4rem}}
@media(max-width:900px){.container{width:calc(100% - 48px)}.header-inner{height:80px}.menu-toggle{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid var(--line);border-radius:4px;background:white;cursor:pointer}.menu-toggle span{display:block;width:20px;height:2px;background:var(--navy);transition:transform .2s,opacity .2s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:18px 24px 24px;border-bottom:1px solid var(--line);box-shadow:0 16px 20px #062f5310;align-items:stretch;gap:0}nav.is-open{display:flex;flex-direction:column}nav>a:not(.button){padding:13px 0;font-size:1rem}nav .button{margin-top:8px;align-self:flex-start}.header nav .button{font-size:.875rem}.hero{padding:38px 0 45px}.hero-grid{gap:25px}.hero-visual{height:520px;border-bottom-right-radius:60px}h1{font-size:4.2rem}.hero-description{font-size:.9375rem}.hero .eyebrow{font-size:.6875rem;gap:8px}.hero-caption{left:25px;right:25px;font-size:1.8rem;bottom:30px}.hero-caption-icon{width:38px;height:38px}.photo-label{left:25px;top:25px;font-size:.625rem;line-height:1.7}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{padding:30px}.service-card h3{font-size:1.2rem;min-height:56px}.service-card p{font-size:.9375rem}.service-link{font-size:.875rem}.service-card:nth-child(3){border-left:none}.service-card:nth-child(n+3){border-top:1px solid var(--line)}.strip-inner{font-size:.75rem;gap:12px;padding:20px 0}.section{padding:76px 0}.section-heading{gap:40px}.section-heading>p{max-width:270px;font-size:.875rem}.about-grid{gap:42px;grid-template-columns:1fr 1.25fr}.brand-panel{padding:28px}.brand-panel>p{font-size:.75rem}.about-copy h2{font-size:3rem}.contact-grid{gap:40px}.contact-card{gap:12px;padding:20px 14px}.contact-card strong{font-size:1.2rem}.contact-icon{width:38px;height:38px}.contact-card small{font-size:.75rem}.contact-arrow{width:18px;height:18px}.contact h2{font-size:3.2rem}.footer-inner{font-size:.6875rem}}
@media(max-width:650px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.utility-bar{font-size:.6875rem}.utility-inner{gap:10px;min-height:30px}.brand-name{font-size:1.15rem}.brand-name small{font-size:.68rem}.header-inner{height:75px}.hero{background:linear-gradient(180deg,#fff 64%,var(--pale) 64%);padding:30px 0 32px}.hero-grid{grid-template-columns:1fr;gap:25px}.hero-copy{padding:6px 0 0}.hero .eyebrow{font-size:.6875rem;margin-bottom:18px}h1{font-size:clamp(3.4rem,15vw,4.9rem);margin-bottom:22px}.hero-description{max-width:480px;font-size:.9375rem}.hero-actions{gap:18px;margin-top:24px;flex-direction:column;align-items:stretch}.hero-actions .button{font-size:.875rem;min-height:53px}.hero-actions .text-link{align-self:center;font-size:.8125rem}.hero-note{margin-top:24px;padding-top:18px;font-size:.8125rem}.hero-visual{height:350px;border-bottom-right-radius:65px}.hero-photo{object-position:center 53%}.hero-caption{font-size:2.1rem;bottom:28px}.hero-caption-icon{height:44px;width:44px}.photo-label{font-size:.625rem}.service-strip .container{width:calc(100% - 28px)}.strip-inner{justify-content:center;gap:10px 14px;flex-wrap:wrap;line-height:1.5;padding:18px 0;font-size:.75rem}.strip-inner i{width:3px;height:3px}.section{padding:58px 0}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:3rem}.section-heading>p{max-width:none;margin-top:20px;font-size:.9375rem}.eyebrow{font-size:.6875rem;margin-bottom:15px}.service-grid{grid-template-columns:1fr}.service-card{padding:27px}.service-card+.service-card{border-left:none;border-top:1px solid var(--line)}.card-top{margin-bottom:22px}.service-card h3{min-height:0;font-size:1.35rem;margin-bottom:12px}.service-card h3 br{display:none}.service-card h3 br:after{content:' '}.service-card p{font-size:.9375rem;margin-bottom:20px}.service-link{padding-top:17px}.service-icon{width:35px;height:35px}.about-grid{grid-template-columns:1fr;gap:38px}.brand-panel{width:100%;max-width:350px;padding:23px 32px;margin-inline:auto;box-shadow:9px 9px 0 #e5eef2}.full-logo{width:220px;margin-bottom:18px}.brand-panel>p{font-size:.6875rem;padding-top:18px}.about-copy h2{font-size:3.2rem}.about-copy>p:not(.eyebrow){font-size:.9375rem}.check-list{font-size:.8125rem;gap:11px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact h2{font-size:3.6rem}.contact-card{padding:22px 19px;gap:17px}.contact-card strong{font-size:1.45rem}.contact-card small{font-size:.8125rem}.contact-icon{width:43px;height:43px}.contact-location{font-size:.75rem}.footer-inner{padding:27px 0;min-height:0;flex-wrap:wrap;gap:14px;font-size:.6875rem}.footer-inner>a:last-child{width:100%;padding-top:12px;border-top:1px solid #28475f}.footer-brand{font-size:.9375rem}}
@media(max-width:360px){.container{width:calc(100% - 32px)}.utility-inner>span{max-width:140px;line-height:1.35;padding-block:4px}.brand-name{font-size:1rem}.brand-symbol{width:48px}.hero-caption{font-size:1.8rem}.contact-card{padding:18px 12px;gap:12px}.contact-card strong{font-size:1.2rem}.contact-card small{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.utility-bar,nav,.menu-toggle,.hero-actions,.service-link,.contact-primary-phone{display:none!important}.header{position:static}.container{width:100%}.section{padding:30px 0}.hero{padding:20px 0}.hero-grid{gap:25px}.hero-visual{height:360px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{break-inside:avoid}.contact{background:#fff;color:#142d40;border-top:2px solid #073f72}.contact h2{color:#073f72}.contact-copy>p:not(.eyebrow),.contact-location,.contact .eyebrow{color:#142d40}.contact-card{color:#142d40;background:#fff;border-color:#b0bfc9}.contact-card small{color:#142d40}.footer{background:white;color:#142d40}.footer-brand{color:#073f72}}

/* Readable body copy and regular controls at every breakpoint. */
.hero-description,.service-card p,.section-heading>p,.about-copy>p:not(.eyebrow),.contact-copy>p:not(.eyebrow){font-size:1rem}
.service-link,.contact-primary-phone,.text-link{font-size:.875rem}
.photo-label{font-size:.75rem}
@media(min-width:901px){.header nav .button{font-size:.875rem}}
