:root{--navy:#071322;--ink:#13263d;--blue:#0878f3;--teal:#00838a;--line:#dce5ec;--muted:#52677a;--pale:#f3f7fa;--white:#fff;--wrap:1200px;font-family:"Segoe UI",Inter,Arial,sans-serif;color:var(--ink);background:var(--white);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;font-size:1rem;line-height:1.65}::selection{background:#a2ede4;color:var(--navy)}img{display:block;max-width:100%;height:auto}a{color:inherit}a:focus-visible{outline:3px solid #00b5ac;outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.1}h1{font-size:clamp(3rem,5.25vw,4.8rem);font-weight:650;line-height:1.06}h2{font-size:clamp(2.2rem,3.5vw,3.4rem);font-weight:600}h3{font-size:1.8rem;font-weight:600}.wrap{width:min(var(--wrap),calc(100% - 96px));margin-inline:auto}.skip-link{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:10}.skip-link:focus{top:12px}.header{background:white;position:relative;z-index:2}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:block;width:274px;max-width:55%}.brand img{width:100%}nav{display:flex;align-items:center;gap:32px;font-size:.9375rem;font-weight:550}nav a{text-decoration:none;padding-block:12px;transition:color .2s}nav a:last-child{border:1px solid var(--line);border-radius:100px;padding:9px 23px}nav a:hover,.text-link:hover,footer a:hover{color:var(--blue)}
.hero{position:relative;isolation:isolate;background:radial-gradient(ellipse at 80% 45%,#09384a 0,transparent 48%),linear-gradient(125deg,#071322,#0c1d34);color:white;overflow:hidden}.hero::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#daeafa05 1px,transparent 1px),linear-gradient(90deg,#daeafa05 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(90deg,transparent,black)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:64px;align-items:center;min-height:655px;padding-block:76px}.eyebrow{font-size:.8125rem;text-transform:uppercase;letter-spacing:.11em;font-weight:650;color:var(--teal);margin-bottom:21px}.hero .eyebrow{color:#67d8d6}.hero h1 span{color:#4cddca;background:linear-gradient(95deg,#7fb6ff,#48e2cc);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-description{font-size:1.125rem;max-width:520px;line-height:1.8;color:#bdcede;margin-top:26px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:33px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:13px 25px;border:1px solid #60dbc9;border-radius:100px;background:#61e0ce;color:#052a33;text-decoration:none;font-size:.9375rem;font-weight:650;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{background:#8ceddf;transform:translateY(-2px);box-shadow:0 8px 25px #35dbc826}.hero-link{text-decoration:none;font-size:.9375rem;color:#dceafa;border-bottom:1px solid #647b91;padding-block:8px}.hero-link:hover{color:white;border-color:#61e0ce}.hero-art{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0;min-width:0}.photo-frame{position:relative;width:100%;max-width:430px;aspect-ratio:4/5;border:1px solid #8bc7e640;border-radius:24px;overflow:hidden;background:#10263c;box-shadow:0 25px 80px #00000035}.photo-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 70%,#07132245)}.photo-frame img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 42%}.art-caption{min-width:0;align-self:flex-end;text-align:right;margin-top:18px;font-size:.875rem;line-height:1.6;letter-spacing:.015em;color:#a4bdcf}.focus-strip{display:flex;gap:0;align-items:center;justify-content:space-between;padding-block:23px;border-top:1px solid #8aa5bd2b;font-size:.875rem;color:#c8d9e8;letter-spacing:.025em}.focus-strip span{flex:1;text-align:center}.focus-strip span+span{border-left:1px solid #8aa5bd2b}.focus-strip span:first-child{text-align:left}.focus-strip span:last-child{text-align:right}
.section{padding-block:96px}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;column-gap:100px;align-items:end;margin-bottom:43px}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:17px}.section-heading>p:last-child{color:var(--muted);max-width:370px;line-height:1.8}.service-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:22px}.service{border:1px solid var(--line);border-radius:20px;padding:31px 35px;background:var(--pale);transition:transform .25s,box-shadow .25s,border-color .25s}.service:hover{transform:translateY(-4px);border-color:#8dbfce;box-shadow:0 16px 40px #0c2d4110}.service-number{display:block;font-size:.8125rem;letter-spacing:.04em;color:var(--teal);margin-bottom:17px;font-weight:600}.service h3{margin-bottom:16px}.service:not(.service-featured) h3 br{display:none}.service>p{color:var(--muted);line-height:1.75}.service ul{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:21px 0 0;padding:0}.service li{font-size:.875rem;padding:5px 10px;border:1px solid #d6e1e9;border-radius:7px;line-height:1.55;color:#40586b;background:white}.service-featured{grid-row:span 2;display:flex;flex-direction:column;position:relative;overflow:hidden;padding:38px;background:radial-gradient(ellipse at 100% 100%,#154d65,transparent 65%),var(--navy);color:white;border-color:var(--navy)}.service-featured:hover{border-color:#26788a}.service-featured .service-number{color:#65d7ce}.service-featured h3{font-size:clamp(2rem,3.3vw,3rem);margin-block:22px 25px}.service-featured>p{color:#c0d0df;max-width:375px;font-size:1.0625rem}.service-featured ul{flex-direction:column;gap:0;margin-top:auto;padding-top:35px}.service-featured li{border:0;border-bottom:1px solid #7897b436;background:transparent;padding:15px 0;color:#d4e1ec;border-radius:0;font-size:.9375rem}
.approach{background:var(--pale);padding-block:91px}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.approach-intro{max-width:435px;color:var(--muted);line-height:1.85;margin-top:26px}.steps{padding:0;margin:0;list-style:none}.steps li{position:relative;display:flex;gap:24px;padding:0 0 32px}.steps li:last-child{padding-bottom:0}.steps li:not(:last-child)::after{content:"";position:absolute;top:47px;bottom:8px;left:23px;width:1px;background:#c3d8e2}.steps li>span{display:flex;align-items:center;justify-content:center;flex:none;height:47px;width:47px;color:var(--teal);font-size:.875rem;font-weight:650;border:1px solid #c3d8e2;border-radius:14px;background:white}.steps h3{font-size:1.25rem;letter-spacing:-.02em;line-height:1.35;padding-top:8px}.steps p{color:var(--muted);margin-top:9px;line-height:1.75}
.about{display:grid;grid-template-columns:1fr 1.15fr;gap:100px;position:relative;background:var(--navy);color:white;margin-block:78px;border-radius:24px;padding:64px}.about .eyebrow{color:#65d7ce}.about h2{font-size:clamp(2.2rem,3.5vw,3.3rem)}.about-copy{color:#bdcede;font-size:1.0625rem;line-height:1.8;padding-top:3px}.about-copy p+p{margin-top:20px}.text-link{display:inline-block;margin-top:24px;font-size:.9375rem;font-weight:600;color:#6ce1d3;text-underline-offset:6px}.text-link:hover{color:white}footer{border-top:1px solid var(--line);padding-block:35px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer a:last-child{font-size:.875rem;color:var(--muted)}.footer-name{font-size:1.25rem;font-weight:650;text-decoration:none;line-height:1.25;letter-spacing:-.02em}.footer-name span{display:block;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:550;margin-top:4px}.hero-copy,.hero-art{animation:appear .7s both}.hero-art{animation-delay:.12s}@keyframes appear{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero-grid{gap:40px;padding-block:65px;min-height:590px}.photo-frame{max-width:360px}.section-heading,.approach-grid{gap:50px}.about{padding:46px;gap:45px}.service{padding:27px}.service-featured{padding:31px}.service h3{font-size:1.55rem}.service-featured h3{font-size:2.3rem}.section{padding-block:75px}.hero h1{font-size:clamp(2.8rem,5.7vw,4.3rem)}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:115px;flex-wrap:wrap;justify-content:center;gap:10px;padding-block:17px}.brand{width:235px;max-width:100%}nav{gap:25px;font-size:.875rem;justify-content:center;width:100%}nav a{padding:4px 0}nav a:last-child{border:0;padding:4px 0}.hero-grid{grid-template-columns:1fr;padding-block:52px 34px;gap:42px;min-height:0}.hero h1{font-size:clamp(2.9rem,9vw,4.4rem)}.eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:18px}.hero-description{font-size:1.0625rem;margin-top:23px;max-width:550px}.hero-actions{gap:20px;margin-top:27px}.hero-art{padding-block:0;flex-direction:column;gap:0;justify-content:center;align-items:stretch}.photo-frame{max-width:none;width:100%;aspect-ratio:5/4;max-height:420px;border-radius:18px}.photo-frame img{object-position:50% 36%}.art-caption{align-self:flex-start;text-align:left;margin-top:15px}.focus-strip{font-size:.8125rem;padding-block:20px;gap:15px;justify-content:space-between;flex-wrap:wrap}.focus-strip span{flex:initial}.focus-strip span+span{border:0}.focus-strip span:last-child{text-align:left}.section{padding-block:60px}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:0}.service-grid{grid-template-columns:1fr;gap:18px}.service-featured{grid-row:auto}.service{padding:28px}.service h3{font-size:1.75rem}.service-featured h3{font-size:2.25rem;margin-block:5px 20px}.service-featured h3 br{display:none}.service-featured>p{max-width:none;font-size:1rem}.service-featured ul{margin-top:22px;padding-top:0}.approach{padding-block:60px}.approach-grid{grid-template-columns:1fr;gap:35px}.steps li{gap:20px}.about{grid-template-columns:1fr;gap:27px;padding:32px 26px;margin-block:45px;border-radius:18px}.about-copy{font-size:1rem}.footer-inner{flex-wrap:wrap;gap:18px}.footer-inner p{width:100%;order:3}.footer-name{margin-right:auto}}
@media(max-width:380px){.hero h1{font-size:2.6rem}.art-caption{font-size:.8125rem}.service{padding:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;translate:none!important}.service:hover,.button:hover{transform:none}}

/* Contact navigation */
nav a[aria-current="page"]{color:var(--teal);border-color:#8acac8;background:#effaf8}
@media(max-width:760px){nav{gap:clamp(12px,3.5vw,25px);flex-wrap:wrap}nav a[aria-current="page"]{background:none}}

/* Shared footer links */
.footer-inner .footer-links{display:flex;gap:22px;flex-wrap:wrap;width:auto;font-size:.875rem;font-weight:400}
.footer-links a,.footer-links a:last-child{padding:0;border:0;border-radius:0;background:none;color:var(--muted);font-size:inherit;text-decoration:none}
.footer-links a:hover{color:var(--teal)}.footer-links a[aria-current="page"]{color:var(--teal);text-decoration:underline;text-underline-offset:5px}
@media(max-width:760px){.footer-inner .footer-links{justify-content:flex-start;gap:18px}.footer-inner p{width:100%;order:3}}
@media(max-width:480px){.footer-inner .footer-links{width:100%}}
