:root{--navy:#083a46;--ink:#123f4a;--teal:#0b8792;--aqua:#dff1ee;--mist:#f5f8f7;--line:#d8e4e1;--muted:#63777b;--dark:#062d37;--white:#fff;--shadow:0 18px 50px rgba(8,58,70,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--mist);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}
.topbar{height:34px;background:var(--dark);color:#b9cfcd;display:flex;justify-content:flex-end;align-items:center;padding:0 5.5vw;gap:24px;font-size:11px}.topbar a:hover{color:#fff}
.header{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 5.5vw;position:sticky;top:0;z-index:100}
.brand{display:flex;align-items:center;gap:11px;margin-right:auto}.brand-mark{width:39px;height:39px;border:1px solid var(--teal);display:grid;place-items:center;font-family:Georgia,serif;font-size:23px;color:var(--teal)}.brand-logo{width:39px;height:39px;object-fit:contain;display:block}.brand-name{font-weight:750;letter-spacing:-.04em;font-size:18px;display:block}.brand-sub{font-size:8px;letter-spacing:.19em;color:#789095;display:block;margin-top:3px}
.nav{display:flex;gap:26px;align-items:center}.nav a{font-size:12px;color:#48666d;padding:31px 0;position:relative}.nav a:hover{color:var(--teal)}.nav a.active{color:var(--teal)}.nav a.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--teal)}
.header-cta{margin-left:25px;background:var(--teal);color:#fff;padding:13px 18px;font-size:11px;font-weight:700}.menu{display:none;border:1px solid var(--line);background:#fff;padding:9px 11px}.mobile-nav{display:none;background:#fff;border-bottom:1px solid var(--line);padding:12px 20px}.mobile-nav.open{display:grid;grid-template-columns:1fr 1fr}.mobile-nav a{padding:12px 5px;font-size:12px}
.hero{min-height:650px;display:grid;grid-template-columns:46% 54%;background:#fff}.hero-copy{padding:92px 7vw;display:flex;justify-content:center;flex-direction:column}.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);font-weight:700}.hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(56px,6.4vw,94px);line-height:.94;letter-spacing:-.055em;margin:18px 0;color:var(--ink)}.hero h1 em{font-style:italic;color:var(--teal)}.hero p{max-width:570px;color:var(--muted);font-size:15px;line-height:1.8}.actions{display:flex;align-items:center;gap:22px;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 19px;font-size:11px;font-weight:750;border:1px solid transparent}.btn-primary{background:var(--teal);color:#fff}.btn-dark{background:var(--ink);color:#fff}.btn-outline{border-color:var(--line);background:#fff;color:var(--ink)}.text-link{color:var(--teal);font-size:11px;font-weight:750}
.hero-image{min-height:650px;position:relative;background:#062d37;overflow:hidden}.hero-caption{position:absolute;left:0;bottom:0;background:var(--navy);color:#fff;padding:23px 27px;width:310px}.hero-caption small{font-size:9px;letter-spacing:.13em;color:#a9c8c5}.hero-caption strong{display:block;font:400 24px Georgia,serif;margin:7px 0}.hero-caption span{font-size:10px;color:#c1d3d1}
.search-strip{background:var(--aqua);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 5.5vw;display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:10px;align-items:end}.field-label{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#58767b}.search-strip input,.search-strip select{width:100%;background:#fff;border:1px solid #c8dbd7;padding:13px;margin-top:7px;font-size:11px;color:var(--ink)}.search-strip button{height:43px;border:0;background:var(--teal);color:#fff;padding:0 21px;font-size:11px;font-weight:750}
.stats{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-bottom:1px solid var(--line)}.stat{padding:28px 5.5vw;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat b{display:block;color:var(--teal);font-size:28px;font-weight:650}.stat span{display:block;margin-top:6px;color:var(--muted);font-size:10px}
.section{padding:96px 7vw}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:44px}.section-head h2{font:400 clamp(42px,4.8vw,68px)/1 Georgia,serif;letter-spacing:-.045em;margin:12px 0}.section-head p{max-width:460px;color:var(--muted);font-size:12px;line-height:1.8}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{background:#fff;border:1px solid var(--line);padding:29px;min-height:255px;position:relative;transition:.25s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.card-num{font-size:10px;color:#8aa0a3;letter-spacing:.12em}.card h3{font:400 27px Georgia,serif;margin:37px 0 10px}.card p{font-size:11px;line-height:1.75;color:var(--muted);max-width:360px}.card .card-link{position:absolute;bottom:27px;left:29px;color:var(--teal);font-size:10px;font-weight:750;background:none;border:0;padding:0}
.split{display:grid;grid-template-columns:52% 48%;background:var(--navy);color:#fff}.split-image{min-height:540px;background:#062d37;overflow:hidden}.split-copy{padding:70px 8vw;display:flex;flex-direction:column;justify-content:center}.split-copy h2{font:400 clamp(42px,4.6vw,65px)/1 Georgia,serif;margin:14px 0}.split-copy p{color:#bfd2d0;font-size:12px;line-height:1.85;max-width:510px}.list{margin-top:22px;border-top:1px solid #ffffff22}.list div{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #ffffff22;font-size:10px}.list span{color:#a9c7c4}
.people{background:#eaf4f1}.people-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.person{background:#fff;border:1px solid var(--line);padding:16px}.person-photo{height:260px;width:100%;display:block;object-fit:cover;object-position:center}.person h3{font:400 21px Georgia,serif;margin:17px 0 5px}.person .role{font-size:9px;color:var(--teal);font-weight:700}.person p{font-size:9px;color:var(--muted);line-height:1.6}
.news-grid{display:grid;grid-template-columns:1.35fr .825fr .825fr;gap:1px;background:var(--line);border:1px solid var(--line)}.news-card{background:#fff;padding:28px;min-height:265px}.news-card.featured{background:var(--aqua)}.news-card small{font-size:9px;color:var(--teal);letter-spacing:.1em}.news-card h3{font:400 27px/1.18 Georgia,serif;margin:55px 0 25px}.news-card a{color:var(--teal);font-size:10px;font-weight:750}
.cta{background:var(--aqua);padding:70px 7vw;display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{font:400 43px Georgia,serif;margin:10px 0}.cta p{font-size:11px;color:var(--muted);max-width:520px}
.page-hero{background:var(--aqua);padding:85px 7vw;border-bottom:1px solid var(--line)}.page-hero h1{font:400 clamp(52px,6.2vw,90px)/.96 Georgia,serif;letter-spacing:-.055em;margin:15px 0;max-width:950px}.page-hero p{font-size:13px;line-height:1.8;color:var(--muted);max-width:670px}
.directory{padding:70px 7vw}.toolbar{display:grid;grid-template-columns:1.6fr 1fr 1fr auto;gap:10px;margin-bottom:28px}.toolbar input,.toolbar select{border:1px solid var(--line);background:#fff;padding:13px;font-size:11px}.toolbar button{border:0;background:var(--teal);color:#fff;padding:0 20px;font-size:11px;font-weight:750}
.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.profile{background:#fff;border:1px solid var(--line);padding:20px;display:grid;grid-template-columns:86px 1fr;gap:16px}.profile-photo{width:86px;height:112px;background:center/cover}.profile h3{font:400 20px Georgia,serif;margin:0 0 5px}.profile .role{font-size:9px;color:var(--teal);font-weight:750}.profile p{font-size:9px;color:var(--muted);line-height:1.6}.profile-actions{grid-column:1/-1;border-top:1px solid var(--line);padding-top:13px;display:flex;gap:15px}.profile-actions a{font-size:9px;color:var(--teal);font-weight:750}
.content-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.prose h2{font:400 42px Georgia,serif;margin:0 0 18px}.prose h3{font-size:17px;margin-top:35px}.prose p,.prose li{font-size:12px;line-height:1.9;color:var(--muted)}.side-card{background:#fff;border:1px solid var(--line);padding:28px;height:max-content}.side-card h3{font:400 25px Georgia,serif;margin-top:0}.side-card p{font-size:11px;line-height:1.7;color:var(--muted)}.side-card a{display:block;padding:12px 0;border-top:1px solid var(--line);font-size:10px;color:var(--teal);font-weight:700}
.form-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:65px;padding:75px 7vw}.intro h2{font:400 49px Georgia,serif;letter-spacing:-.04em;margin:12px 0}.intro p{font-size:12px;line-height:1.8;color:var(--muted)}.contact-list{margin-top:30px;border-top:1px solid var(--line)}.contact-list div{padding:15px 0;border-bottom:1px solid var(--line)}.contact-list small{display:block;font-size:8px;letter-spacing:.12em;color:var(--teal);font-weight:700}.contact-list b{font-size:11px}.contact-list span{display:block;color:var(--muted);font-size:10px;margin-top:5px}
.form-card{background:#fff;border:1px solid var(--line);padding:34px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-card label{display:block;font-size:10px;font-weight:700;margin-bottom:17px}.form-card input,.form-card select,.form-card textarea{width:100%;margin-top:7px;border:1px solid #cfdedb;padding:13px;background:#fff;font-size:11px;color:var(--ink);outline:none}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0b87921a}.form-card textarea{min-height:130px;resize:vertical}.form-card button{background:var(--teal);color:#fff;border:0;padding:14px 19px;font-size:11px;font-weight:750}.success{display:none;margin-top:16px;background:#e6f4f0;border:1px solid #c5ded9;padding:15px;font-size:10px;color:#27656b}.success.show{display:block}
.login-shell{min-height:calc(100vh - 116px);display:grid;grid-template-columns:1fr 1fr;background:#fff}.login-visual{background:#062d37;color:#fff;position:relative;overflow:hidden;padding:65px 7vw;display:flex;flex-direction:column;justify-content:flex-end}.login-visual h1{font:400 55px Georgia,serif;margin:12px 0}.login-visual p{max-width:500px;font-size:12px;line-height:1.8;color:#d4e0df}.login-box{display:flex;align-items:center;justify-content:center;padding:55px}.login-card{width:min(440px,100%)}.login-card h2{font:400 39px Georgia,serif;margin:0 0 9px}.login-card>p{font-size:11px;color:var(--muted);margin-bottom:30px}.login-card label{font-size:10px;font-weight:700;display:block;margin:17px 0}.login-card input{width:100%;border:1px solid var(--line);padding:14px;font-size:11px;margin-top:7px}.login-card button{width:100%;border:0;background:var(--teal);color:#fff;padding:14px;font-size:11px;font-weight:750;margin-top:8px}.login-meta{display:flex;justify-content:space-between;margin-top:17px;font-size:9px;color:var(--teal)}
.portal{padding:42px 5.5vw 80px}.portal-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.portal-top h1{font:400 47px Georgia,serif;margin:10px 0}.portal-top p{font-size:11px;color:var(--muted)}.portal-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}.portal-card{background:#fff;border:1px solid var(--line);padding:25px}.portal-card h3{font:400 24px Georgia,serif;margin:0 0 18px}.appointment{display:flex;justify-content:space-between;padding:15px 0;border-top:1px solid var(--line);font-size:10px}.appointment b{display:block;font-size:11px}.appointment span{color:var(--muted)}.status{color:var(--teal);font-weight:750}.quick-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-links a{background:var(--aqua);padding:17px;font-size:10px;font-weight:700}
footer{background:var(--dark);color:#9fb8b7;padding:58px 7vw 22px}.footer-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:40px}.footer-grid h4{color:#fff;margin:0 0 14px;font-size:11px}.footer-grid a{display:block;font-size:9px;margin:11px 0}.footer-grid p{font-size:9px;line-height:1.8;max-width:300px}.footer-brand{display:flex;gap:10px;align-items:flex-start}.footer-brand .brand-mark{border-color:#83c5c1;color:#83c5c1}.footer-brand b{color:#fff;font-size:13px}.footer-legal{border-top:1px solid #ffffff1c;margin-top:43px;padding-top:17px;font-size:8px;line-height:1.7}.footer-legal strong{color:#d0e3e1}.copyright{border-top:1px solid #ffffff1c;margin-top:15px;padding-top:15px;font-size:8px}
.reveal{opacity:0;transform:translateY(14px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}.toast{position:fixed;right:24px;bottom:24px;background:var(--dark);color:#fff;padding:14px 18px;font-size:10px;box-shadow:var(--shadow);transform:translateY(20px);opacity:0;pointer-events:none;transition:.25s;z-index:200}.toast.show{opacity:1;transform:none}
@media(max-width:1050px){.nav{display:none}.menu{display:block}.header-cta{margin-left:15px}.hero{grid-template-columns:1fr}.hero-image{min-height:500px}.search-strip{grid-template-columns:1fr 1fr}.card-grid{grid-template-columns:1fr 1fr}.people-grid{grid-template-columns:1fr 1fr}.directory-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.split-image{min-height:430px}.content-grid,.form-layout,.login-shell,.portal-grid{grid-template-columns:1fr}.login-visual{min-height:430px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.topbar{justify-content:center;padding:0 15px;font-size:9px}.header{height:72px;padding:0 18px}.header-cta{display:none}.brand-logo{width:39px;height:39px;object-fit:contain;display:block}.brand-name{font-size:16px}.mobile-nav.open{grid-template-columns:1fr}.hero-copy{padding:62px 22px}.hero h1{font-size:57px}.hero-image{min-height:390px}.hero-caption{width:100%}.search-strip,.toolbar{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stat{padding:22px 18px}.section,.directory{padding:65px 22px}.section-head{display:block}.section-head p{margin-top:20px}.card-grid,.people-grid,.directory-grid{grid-template-columns:1fr}.news-grid{grid-template-columns:1fr}.page-hero{padding:64px 22px}.form-layout{padding:55px 22px}.form-row{grid-template-columns:1fr}.split-copy{padding:55px 24px}.cta{display:block;padding:55px 22px}.footer-grid{grid-template-columns:1fr 1fr}.login-box{padding:35px 22px}.portal{padding:30px 18px}.portal-top{display:block}.quick-links{grid-template-columns:1fr}}

/* Unified image delivery: every visual asset is a real <img>, not a CSS URL. */
.hero-image > img.hero-asset,
.split-image > img.split-asset,
.login-visual > img.login-asset{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.hero-image > img.hero-asset{z-index:0}
.hero-image::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(0deg,rgba(4,38,46,.42),rgba(4,38,46,0) 55%);
  pointer-events:none;
}
.hero-caption{z-index:2}
.split-image > img.split-asset{z-index:0}
.login-visual > img.login-asset{z-index:0}
.login-visual::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(0deg,rgba(5,45,55,.62),rgba(5,45,55,.12));
  pointer-events:none;
}
.login-visual > *:not(img){position:relative;z-index:2}

/* Leadership was the one page with page-specific imagery/layout in the original files. */
body.page-leadership .people-grid{grid-template-columns:repeat(3,1fr);gap:18px}
body.page-leadership .person{box-shadow:var(--shadow)}
body.page-leadership .person-photo{border-radius:2px}
body.page-leadership .section{padding:82px 7vw}

/* Preserve the original locations page footer behavior. */
body.page-locations{min-height:100vh;display:flex;flex-direction:column}
body.page-locations footer{margin-top:auto}

/* Local asset loading transition */
.asset-image{opacity:0;transition:opacity .35s ease}
.asset-image.is-loaded{opacity:1}
@media(max-width:1050px){
  body.page-leadership .people-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  body.page-leadership .people-grid{grid-template-columns:1fr}
}


/* INDEX HERO IMAGE FIX — explicit sizing for Bluehost */
.page-index .hero{
  display:grid !important;
  grid-template-columns:minmax(0,46%) minmax(0,54%) !important;
  min-height:650px;
  width:100%;
  overflow:hidden;
}
.page-index .hero-copy{
  display:flex !important;
  visibility:visible !important;
  min-width:0;
  position:relative;
  z-index:2;
}
.page-index .hero-image{
  min-width:0;
  min-height:650px;
  width:100%;
  height:650px;
  position:relative;
  overflow:hidden;
}
.page-index .hero-image > img.hero-asset{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  opacity:1 !important;
  visibility:visible !important;
  z-index:1 !important;
}
.page-index .hero-caption{
  z-index:3;
}
.page-index .split-image{
  position:relative;
  min-width:0;
  overflow:hidden;
}
.page-index .split-image > img.split-asset{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  object-fit:cover !important;
  opacity:1 !important;
}
@media(max-width:1050px){
  .page-index .hero{
    grid-template-columns:1fr !important;
  }
  .page-index .hero-image{
    height:500px;
    min-height:500px;
  }
}
@media(max-width:650px){
  .page-index .hero-image{
    height:390px;
    min-height:390px;
  }
}
