:root{--navy:#0b2a4a;--navy2:#123a63;--aqua:#5fd4e6;--blue:#1366d6;--ice:#eef6fb;--ink:#10243a;--muted:#4a5f75;--line:#d6e4ef}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{font-family:'Figtree',system-ui,sans-serif;color:var(--ink);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:600;letter-spacing:-.01em;line-height:1.15;color:var(--navy)}
a{color:var(--blue)}

/* nav */
.lv-nav{background:var(--navy);padding:.6rem 0;box-shadow:0 2px 14px rgba(0,0,0,.15)}
.lv-nav .navbar-brand{font-family:'Fraunces',serif;font-weight:600;font-size:1.35rem;color:#fff;display:flex;align-items:center;gap:.6rem}
.brand-mark{width:14px;height:14px;border-radius:50% 50% 50% 4px;background:var(--aqua);display:inline-block;flex:none}
.lv-nav .nav-link{color:rgba(255,255,255,.88);font-weight:500;padding:.5rem .8rem}
.lv-nav .nav-link:hover,.lv-nav .nav-link:focus{color:var(--aqua)}
.lv-nav .navbar-toggler{border-color:rgba(255,255,255,.45)}
.lv-nav .navbar-toggler-icon{filter:invert(1)}
.btn-call{background:var(--aqua);color:var(--navy);font-weight:700;border-radius:999px;padding:.45rem 1.1rem;white-space:nowrap}
.btn-call:hover{background:#fff;color:var(--navy)}
@media(max-width:991px){.btn-call{display:inline-block;margin:.6rem 0 .4rem}}

/* hero: split panel */
.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh;padding-top:62px;background:var(--navy)}
.hero-photo{background:url('img/hero.webp') 35% center/cover no-repeat;min-height:420px}
.hero-panel{display:flex;align-items:center;background:var(--navy);padding:3rem clamp(1.5rem,5vw,4.5rem);position:relative}
.hero-panel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--aqua)}
.hero-inner{max-width:520px}
.eyebrow{color:var(--aqua);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;margin-bottom:1.1rem}
.hero h1{color:#fff;font-size:clamp(2.4rem,5vw,4rem);margin-bottom:1.2rem}
.hero-lead{color:#dbe9f5;font-size:1.25rem;margin-bottom:2rem}
.btn-aqua{background:var(--aqua);color:var(--navy);font-weight:700;border-radius:999px;padding:.75rem 1.7rem}
.btn-aqua:hover{background:#fff;color:var(--navy)}
.link-light-ul{color:#fff;text-decoration:underline;text-underline-offset:4px;font-weight:600}
.link-light-ul:hover{color:var(--aqua)}
@media(max-width:860px){
  .hero{grid-template-columns:1fr;min-height:0}
  .hero-photo{min-height:46vh;order:-1;background-position:30% 30%}
  .hero-panel{padding:2.5rem 1.5rem 3rem}
  .hero-panel::before{width:100%;height:5px;bottom:auto}
}

/* facts */
.facts{background:var(--ice);border-bottom:1px solid var(--line)}
.fact{padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.15rem}
.fact i{font-size:1.7rem;color:var(--blue)}
.fact strong{font-family:'Fraunces',serif;font-size:1.2rem;color:var(--navy)}
.fact span{color:var(--muted);font-size:.92rem;line-height:1.4}

/* sections */
.section{padding:clamp(4rem,9vw,7rem) 0}
.section-ice{background:var(--ice)}
.section-navy{background:var(--navy);color:#dbe9f5}
.section-head{max-width:820px;margin:0 auto 3rem;text-align:center}
.kicker{color:var(--blue);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.8rem;margin-bottom:.7rem}
.kicker-aqua{color:var(--aqua)}
h2{font-size:clamp(1.9rem,3.6vw,2.7rem);margin-bottom:1rem}
.lead-copy{color:var(--muted);text-align:left}
.section-head .lead-copy{margin-top:1.25rem}

.why-card{height:100%;background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:6px;padding:2rem 1.75rem}
.why-card i{font-size:1.8rem;color:var(--blue)}
.why-card h3{font-size:1.35rem;margin:.8rem 0 .7rem}
.why-card p{color:var(--muted);margin:0}

.care-img{width:100%;height:auto;border-radius:6px 80px 6px 6px;display:block;box-shadow:16px 16px 0 var(--aqua)}
@media(max-width:991px){.care-img{box-shadow:10px 10px 0 var(--aqua);margin-bottom:.5rem}}
.service{display:flex;gap:1.1rem;padding:1.4rem 0;border-top:1px solid var(--line)}
.service:first-of-type{margin-top:1.5rem}
.service>i{font-size:1.5rem;color:var(--blue);flex:none;width:2rem}
.service h3{font-size:1.3rem;margin-bottom:.5rem}
.service p{color:var(--muted);margin-bottom:.6rem}
.service p:last-child{margin:0}

/* team */
.doc{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.doc-badge{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:1.6rem 1.75rem;display:flex;align-items:center;gap:1.25rem}
.doc-badge span{font-family:'Fraunces',serif;font-size:2.6rem;font-weight:700;color:var(--aqua);line-height:1}
.doc-badge small{font-size:.88rem;line-height:1.4;color:#dbe9f5}
.doc-body{padding:1.75rem}
.doc-body h3{font-size:1.5rem;margin-bottom:.9rem}
.doc-body p{color:var(--muted);font-size:1rem}
.doc-body p:last-child{margin:0}

/* forms */
.forms-copy{color:#c3d6e8}
.form-tile{display:flex;flex-direction:column;gap:.2rem;height:100%;padding:1.8rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.22);border-radius:6px;text-decoration:none;color:#fff;transition:background .2s,transform .2s}
.form-tile:hover{background:rgba(95,212,230,.18);transform:translateY(-3px);color:#fff}
.form-tile i{font-size:1.8rem;color:var(--aqua)}
.form-tile strong{font-family:'Fraunces',serif;font-size:1.25rem}
.form-tile span{color:var(--aqua);font-size:.88rem;font-weight:600}

/* contact */
.info-card,.msg-form{height:100%;background:var(--ice);border:1px solid var(--line);border-radius:6px;padding:1.75rem}
.info-row{display:flex;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line)}
.info-row:last-child{border:0}
.info-row i{color:var(--blue);font-size:1.25rem;flex:none}
.msg-form h3{font-size:1.4rem;margin-bottom:1rem}
.msg-form label{display:block;font-weight:600;font-size:.9rem;margin:.7rem 0 .25rem}
.btn-navy{background:var(--navy);color:#fff;font-weight:700;border-radius:999px;padding:.7rem}
.btn-navy:hover{background:var(--blue);color:#fff}
.map-wrap{height:100%;min-height:340px;border-radius:6px;overflow:hidden;border:1px solid var(--line)}
.map-wrap iframe{width:100%;height:100%;min-height:340px;border:0;display:block}

/* footer */
.lv-footer{background:var(--navy);color:#c3d6e8;padding:3.5rem 0 1.5rem}
.lv-footer a{color:#fff;text-decoration:none}
.lv-footer a:hover{color:var(--aqua)}
.foot-brand{font-family:'Fraunces',serif;font-size:1.5rem;color:#fff;display:flex;align-items:center;gap:.6rem;margin-bottom:.6rem}
.foot-links{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1rem}
.powered{display:inline-block;padding:.55rem 1.1rem;border:1px solid rgba(95,212,230,.5);border-radius:999px;font-size:.9rem;color:#c3d6e8!important}
.powered strong{color:var(--aqua)}
.copy{margin:2.5rem 0 0;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.14);font-size:.85rem;text-align:center}
@media(max-width:767px){.foot-links{margin:.5rem 0}.lv-footer .text-md-end{text-align:left!important}}
.section-ice{overflow-x:clip}
@media(max-width:991px){#services .row{--bs-gutter-x:1.5rem}}
