/* =========================================================
   True Care — Homepage refinement (loaded on index.html only)
   Goals: established corporate healthcare look. White-dominant, ruled layouts,
   small radii, no decorative gradients/shadows, teal as accent only.
   ========================================================= */
.home{--r:6px;--line:#DDE4EA;font-size:16px;line-height:1.65}
.home h1,.home h2,.home h3{letter-spacing:-.015em}
.home h1{font-size:clamp(1.95rem,3.3vw,2.75rem);font-weight:700;line-height:1.12;letter-spacing:-.022em}
.home h2{font-size:clamp(1.55rem,2.5vw,2.1rem);font-weight:700;line-height:1.2}
.home h3{font-size:1.05rem;font-weight:650}
.home .lede{font-size:1.04rem;line-height:1.7;color:#4B5B6B}
.home .eyebrow{font-size:.72rem;letter-spacing:.13em;color:var(--teal-d);margin-bottom:14px;display:flex;align-items:center;gap:12px}
.home .eyebrow::before{content:"";width:26px;height:2px;background:var(--teal);flex:none}
.home .section{padding:84px 0}
.home .section.alt{background:#F5F8FA}
.home .section.navy{background:var(--navy)}
.home .btn{border-radius:6px;box-shadow:none;padding:14px 22px;font-size:.92rem}
.home .btn-primary:hover,.home .btn-navy:hover,.home .btn-outline:hover,.home .btn-white:hover{transform:none}
.home .btn-outline{border-color:#B9C6D1}
.home .h-photo{margin:0}
.home .h-photo img{background:#E6ECF1}
.home .h-photo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:4px}
.home .h-photo figcaption{font-size:.74rem;color:#6B7B8A;margin-top:10px}
.home .navy .h-photo figcaption{color:#9FB4C7}
.home .link-arrow{font-size:.88rem}
.home .link-arrow:hover{color:var(--navy)}

/* Hero */
.h-hero{background:#fff;border-bottom:1px solid var(--line);padding:72px 0 76px}
.h-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:64px;align-items:center}
.h-hero h1{color:var(--navy);max-width:520px;margin-bottom:20px}
.h-hero .lede{max-width:540px}
.h-hero .btn-row{margin-top:30px}
.h-hero .h-photo{height:100%;min-height:420px}
.h-hero .h-photo img{aspect-ratio:5/4;height:auto;max-height:520px}
@media (max-width:1000px){.h-hero{padding:48px 0 56px}.h-hero-grid{grid-template-columns:1fr;gap:36px}.h-hero .h-photo{min-height:0}}

/* Section headings (editorial two-column) */
.h-head{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:end;margin-bottom:44px}
.h-head h2{margin:0}
.h-head p{margin:0;color:#4B5B6B;font-size:1.04rem}
@media (max-width:860px){.h-head{grid-template-columns:1fr;gap:14px;margin-bottom:32px}}

/* Services — ruled grid */
.h-svc{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff}
.h-svc>article{padding:34px 32px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;position:relative;transition:background .2s}
.h-svc>article:hover{background:#F5F8FA}
.h-svc .ic{width:30px;height:30px;color:var(--teal-d);margin-bottom:20px}
.h-svc .ic svg{stroke-width:1.5}
.h-svc h3{margin-bottom:8px;color:var(--navy)}
.h-svc p{font-size:.93rem;color:#55646F;flex:1;margin-bottom:16px}
@media (max-width:1000px){.h-svc{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.h-svc{grid-template-columns:1fr}.h-svc>article{padding:26px 22px}}

/* Technology */
.h-tech{display:grid;grid-template-columns:240px minmax(0,1fr) 240px;gap:36px;align-items:center}
.h-tech .col{display:grid;gap:26px}
.h-feat{border-top:2px solid var(--navy);padding-top:14px}
.h-feat h3{font-size:.98rem;margin-bottom:5px;color:var(--navy)}
.h-feat p{font-size:.86rem;color:#55646F;margin:0;line-height:1.55}
.home .dash{border-radius:8px;box-shadow:0 12px 32px rgba(16,38,63,.13);border-color:#D3DCE4}
.home .dash-top{background:var(--navy)}
.h-tech-note{text-align:center;font-size:.8rem;color:#6B7B8A;margin:22px auto 0;max-width:640px}
.h-tech-cta{text-align:center;margin-top:32px}
@media (max-width:1180px){.h-tech{grid-template-columns:1fr 1fr;gap:26px 30px}.h-tech .center{grid-column:1/-1;order:-1}.h-tech .col{display:contents}}
@media (max-width:620px){.h-tech{grid-template-columns:1fr}}

/* Split sections with photography */
.h-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.h-split.photo-left{grid-template-columns:minmax(0,.95fr) minmax(0,1fr)}
.h-split.photo-right{grid-template-columns:minmax(0,1fr) minmax(0,.95fr)}
@media (max-width:1000px){.h-split,.h-split.photo-left,.h-split.photo-right{grid-template-columns:1fr;gap:34px}.h-split .h-photo{order:-1}}
.h-photo.stack{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.h-photo.stack .a,.h-photo.stack .b>div{position:relative;overflow:hidden;border-radius:4px;background:#E6ECF1}
.h-photo.stack .a{aspect-ratio:16/10}
.h-photo.stack .b{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.h-photo.stack .b>div{aspect-ratio:4/3}
.h-photo.stack img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.h-photo.tall img{aspect-ratio:4/5;max-height:560px}
.h-photo.wide img{aspect-ratio:4/3}

/* Ruled list */
.h-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;column-gap:36px;margin:26px 0 0;border-top:1px solid var(--line)}
.h-list li{padding:12px 0 12px 20px;border-bottom:1px solid var(--line);font-size:.93rem;font-weight:550;color:var(--navy);position:relative}
.h-list li::before{content:"";position:absolute;left:0;top:21px;width:7px;height:7px;background:var(--teal)}
.navy .h-list,.navy .h-list li{border-color:rgba(255,255,255,.16)}
.navy .h-list li{color:#E6EDF3}
@media (max-width:560px){.h-list{grid-template-columns:1fr}}
.h-note{font-size:.8rem;color:#6B7B8A;margin-top:18px;line-height:1.55}
.navy .h-note{color:#9FB4C7}

/* Navy section: white-label & formulation */
.navy h2,.navy h3{color:#fff}
.navy .lede{color:#C3D1DE}
.navy .eyebrow{color:#7FD0D4}.navy .eyebrow::before{background:#7FD0D4}
.h-two{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:28px 0 8px}
.h-two>div{border-top:1px solid rgba(255,255,255,.28);padding-top:16px}
.h-two h3{font-size:1rem;margin-bottom:6px}
.h-two p{font-size:.88rem;color:#B8C8D6;margin:0 0 10px}
.h-two ul{list-style:none;font-size:.86rem;color:#D5E0EA;display:grid;gap:4px}
.h-two li::before{content:"–  ";color:#7FD0D4}
.navy .link-arrow{color:#9BE3E7}.navy .link-arrow:hover{color:#fff}
.navy .btn-white{color:var(--navy)}
@media (max-width:560px){.h-two{grid-template-columns:1fr}}

/* Quality highlights */
.h-q{display:grid;grid-template-columns:repeat(2,1fr);gap:0 36px;margin-top:26px}
.h-q>div{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:15px 0;border-top:1px solid var(--line);align-items:start}
.h-q .ic{width:22px;height:22px;color:var(--teal-d);margin-top:1px}
.h-q .ic svg{stroke-width:1.6}
.h-q h3{font-size:.93rem;margin:0;color:var(--navy);line-height:1.35}
.h-q small{display:block;font-size:.8rem;color:#6B7B8A;font-weight:400;margin-top:2px;line-height:1.45}
@media (max-width:560px){.h-q{grid-template-columns:1fr}}
.h-verify{border-left:3px solid var(--teal);background:#F5F8FA;padding:14px 18px;font-size:.84rem;color:#41515F;margin-top:22px;line-height:1.6}
.h-verify strong{color:var(--navy)}

/* Who we serve */
.h-serve{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--navy)}
.h-serve>a{display:flex;flex-direction:column;padding:26px 26px 26px 0;margin-right:26px;border-right:1px solid var(--line);color:inherit}
.h-serve>a:last-child{border-right:0;margin-right:0}
.h-serve h3{color:var(--navy);margin-bottom:8px}
.h-serve p{font-size:.9rem;color:#55646F;flex:1;margin-bottom:14px}
.h-serve>a:hover h3{color:var(--teal-d)}
@media (max-width:1000px){.h-serve{grid-template-columns:repeat(2,1fr)}.h-serve>a{border-right:0;margin-right:0;padding:24px 20px 24px 0;border-bottom:1px solid var(--line)}}
@media (max-width:560px){.h-serve{grid-template-columns:1fr}}

/* Closing CTA */
.h-cta{background:var(--navy);color:#fff;padding:84px 0}
.h-cta .in{display:grid;grid-template-columns:1.3fr 1fr;gap:56px;align-items:center}
.h-cta h2{color:#fff;margin-bottom:14px}
.h-cta p{color:#C3D1DE;margin:0;max-width:560px;font-size:1.04rem}
.h-cta .btn-row{margin:0;justify-content:flex-end}
.h-cta .btn-ghost-light{border-color:rgba(255,255,255,.5)}
@media (max-width:900px){.h-cta .in{grid-template-columns:1fr;gap:28px}.h-cta .btn-row{justify-content:flex-start}}

/* Calm the scroll reveal on the homepage */
.js .home .reveal{transform:translateY(10px);transition-duration:.5s}
.js .home .reveal.in{transform:none}
