:root{--ink:#062d3d;--ink-2:#0b4152;--aqua:#49e1c3;--aqua-soft:#dffbf5;--blue:#daf2f6;--white:#fff;--mist:#f4f9f9;--line:#cfe0e2;--body:#38535c}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:auto;padding:0 36px;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border-radius:12px;background:var(--ink);display:grid;place-content:center;gap:3px;overflow:hidden}.brand-mark span{display:block;width:20px;height:4px;border:solid var(--aqua);border-width:0 0 3px 0;border-radius:50%;transform:rotate(-8deg)}.brand-copy{display:flex;flex-direction:column;line-height:1.15}.brand-copy strong{font:800 20px/1.1 Manrope,sans-serif;letter-spacing:-.5px}.brand-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#58717a}.nav{display:flex;align-items:center;gap:30px;font-size:15px;font-weight:600}.nav>a:not(.nav-call):hover{color:#097a78}.nav-call{background:var(--ink);color:white;padding:11px 18px;border-radius:8px}.menu-toggle{display:none;background:none;border:0}.hero{min-height:680px;background:var(--blue);display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.hero-copy{padding:90px max(48px,calc((100vw - 1210px)/2));padding-right:60px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#08736f;margin:0 0 18px}.hero h1{font:800 clamp(48px,5.2vw,78px)/1.02 Manrope,sans-serif;letter-spacing:-.055em;margin:0;max-width:700px}.hero h1 em{font-style:normal;color:#087d79}.hero-lead{font-size:19px;color:var(--body);max-width:600px;margin:26px 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{padding:15px 21px;border-radius:9px;font-weight:700;display:inline-flex;align-items:center;gap:14px}.button-primary{background:var(--ink);color:white}.button-primary span{color:var(--aqua)}.button-secondary{border:1px solid #8eafb6}.hero-note{margin-top:28px;font-size:14px;color:#4d6971;display:flex;gap:9px;align-items:center}.hero-note span{display:grid;place-content:center;width:22px;height:22px;background:var(--aqua);color:var(--ink);border-radius:50%;font-size:12px;font-weight:900}.hero-visual{position:relative;min-height:560px;background:#9fcfd0}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,45,61,.1),transparent 30%)}.hero-visual img{width:100%;height:100%;object-fit:cover;display:block}.service-float{position:absolute;left:34px;bottom:35px;z-index:2;background:white;border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:13px;box-shadow:0 18px 55px rgba(6,45,61,.18)}.float-icon{font-size:24px;color:#07817a}.service-float span:last-child{display:flex;flex-direction:column}.service-float small{font-size:11px;color:#698086;text-transform:uppercase;letter-spacing:.12em}.service-float strong{font-size:15px}.services{padding:110px max(30px,calc((100vw - 1210px)/2));}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:52px}.section-heading h2,.about h2,.contact h2{font:800 clamp(34px,4vw,54px)/1.08 Manrope,sans-serif;letter-spacing:-.045em;margin:0}.section-heading>p{max-width:430px;color:var(--body);margin:0 0 5px;font-size:18px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:320px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;background:white;transition:.25s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(6,45,61,.08);z-index:2}.service-card.featured{background:var(--aqua-soft)}.service-card.dark{background:var(--ink);color:white}.service-num{position:absolute;right:28px;top:24px;font:700 12px Manrope;color:#729098}.dark .service-num{color:#78a0aa}.service-icon{font-size:32px;color:#07817a;height:54px}.dark .service-icon{color:var(--aqua)}.service-card h3{font:700 22px/1.25 Manrope;margin:16px 0 13px;letter-spacing:-.02em}.service-card p{color:#536d75;margin:0;max-width:310px}.dark p{color:#bad0d5}.service-card ul{list-style:none;padding:0;margin:20px 0 0;display:flex;gap:7px;flex-wrap:wrap}.service-card li{font-size:12px;font-weight:700;background:white;border:1px solid #cbe2df;border-radius:30px;padding:5px 10px}.about{display:grid;grid-template-columns:1.05fr .95fr;background:var(--mist)}.about-panel{padding:100px max(40px,calc((100vw - 1210px)/2));padding-right:9vw;background:var(--ink);color:white}.about-panel .eyebrow{color:var(--aqua)}.about-panel>p:not(.eyebrow){color:#c1d3d8;font-size:18px;margin:24px 0 30px;max-width:580px}.text-link{font-weight:700;color:var(--aqua);display:inline-flex;gap:10px}.values{padding:80px 8vw 80px 7vw;display:flex;flex-direction:column;justify-content:center}.values>div{display:grid;grid-template-columns:50px 1fr;column-gap:16px;padding:25px 0;border-bottom:1px solid var(--line)}.values>div:last-child{border-bottom:0}.values strong{grid-row:1/3;color:#079081;font:700 13px Manrope}.values h3{margin:0;font:700 19px Manrope}.values p{grid-column:2;margin:6px 0 0;color:var(--body)}.contact{background:var(--aqua);padding:90px max(30px,calc((100vw - 1210px)/2));display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.contact .eyebrow{color:var(--ink)}.contact-copy>p:last-child{font-size:18px;max-width:570px;margin-bottom:0}.contact-details{background:var(--white);border-radius:14px;padding:10px 28px;box-shadow:0 18px 60px rgba(6,45,61,.14)}.contact-details>a,.contact-details>div{padding:23px 5px;display:grid;grid-template-columns:1fr auto;position:relative}.contact-details>a{border-bottom:1px solid var(--line)}.contact-details small{grid-column:1;font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:#6d858c;font-weight:700}.contact-details strong{grid-column:1;font:700 19px/1.4 Manrope;margin-top:3px}.contact-details span{grid-column:2;grid-row:1/3;align-self:center;font-size:23px;color:#087d79}footer{padding:42px max(30px,calc((100vw - 1210px)/2));display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;background:#041f2a;color:white}footer .brand-mark{background:var(--aqua)}footer .brand-mark span{border-color:var(--ink)}footer .brand-copy small{color:#9bb3bb}footer>p{text-align:center;color:#a9bec4;font-size:13px}.copyright{text-align:right}
@media(max-width:900px){.site-header{padding:0 22px;height:78px}.menu-toggle{display:grid;width:42px;height:42px;place-content:center;gap:6px;z-index:12}.menu-toggle span{width:22px;height:2px;background:var(--ink);transition:.2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav{position:absolute;top:78px;left:0;right:0;background:white;padding:20px 22px 26px;display:none;flex-direction:column;align-items:stretch;gap:12px;box-shadow:0 20px 35px rgba(6,45,61,.12)}.nav.open{display:flex}.nav a{padding:9px}.nav-call{text-align:center}.hero{grid-template-columns:1fr}.hero-copy{padding:75px 30px}.hero-visual{min-height:480px}.services{padding:80px 24px}.service-grid{grid-template-columns:repeat(2,1fr)}.section-heading{align-items:start}.about{grid-template-columns:1fr}.about-panel,.values{padding:75px 32px}.contact{grid-template-columns:1fr;gap:38px;padding:75px 30px}footer{grid-template-columns:1fr;text-align:center}footer .brand{justify-self:center}footer>p,.copyright{text-align:center;margin:0}}
@media(max-width:600px){.brand-copy strong{font-size:18px}.brand-copy small{font-size:9px}.hero-copy{padding:62px 22px}.hero h1{font-size:46px}.hero-lead{font-size:17px}.hero-actions{flex-direction:column}.button{justify-content:center}.hero-visual{min-height:390px}.service-float{left:18px;right:18px;bottom:20px}.section-heading{display:block}.section-heading>p{font-size:16px;margin-top:18px}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px}.services{padding:72px 18px}.about-panel,.values{padding:64px 24px}.contact{padding:64px 22px}.contact-details{padding:8px 18px}.contact-details strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card{transition:none}}
