/* Milestone 2.3: restrained homepage based on initial Milestone 1 / 2 visual system. */
:root{--clean-teal:#087d87;--clean-ink:#123a60;--clean-muted:#566b7c}
.site-header{box-shadow:none;border-bottom:1px solid #edf1f0}.header-row{min-height:81px}.header-cta{background:#087e8b;border-radius:7px;box-shadow:none}.main-nav a[aria-current=page]:after{background:#8bc43c}.main-nav a:hover{color:#087e8b}
.clean-hero{background:radial-gradient(circle at 11% 31%,#edf9ec 0%,#f5faf8 35%,#f7f9f6 80%);padding:76px 0 84px;overflow:hidden}.clean-hero-grid{display:grid;grid-template-columns:1fr 1.02fr;align-items:center;gap:7%;min-height:465px}.clean-hero-copy{padding:0 0 8px}.clean-eyebrow,.clean-kicker{color:#087d87;font-size:.73rem;letter-spacing:.16em;font-weight:850}.clean-eyebrow{display:inline-flex;align-items:center;gap:8px;background:#ebf7f5;padding:8px 12px;border-radius:100px;letter-spacing:.11em;font-size:.65rem}.clean-dot{width:6px;height:6px;background:#82bd35;border-radius:50%}.clean-hero h1{font-size:clamp(3.6rem,5.25vw,5.5rem);line-height:1.08;margin:22px 0 23px;letter-spacing:-.05em;max-width:640px}.clean-hero h1 em,.clean-approach h2 em,.clean-services h2 em,.clean-audiences h2 em,.clean-apply h2 em{color:var(--clean-teal)}.clean-lead{font-size:1.10rem;max-width:540px;line-height:1.78;color:#536879;margin-bottom:25px}.clean-actions{display:flex;gap:13px;flex-wrap:wrap}.clean-btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:14px 23px;border-radius:7px;font-weight:750;font-size:.91rem;border:1px solid transparent}.clean-primary{background:#087c89;color:#fff}.clean-outline{color:#164764;border:1px solid #cfdddd;background:#fff}.clean-btn:hover{transform:translateY(-2px)}.clean-proof{display:flex;align-items:center;gap:9px;font-size:.83rem;margin:26px 0 0;color:#526d79}.clean-proof span{font-size:1.2rem;color:#0d8390}
.clean-hero-visual{height:455px;position:relative;isolation:isolate;min-width:0;border-radius:105px 18px 105px 18px;overflow:visible}.clean-hero-slides{position:absolute;inset:0;overflow:hidden;border-radius:105px 18px 105px 18px;background:#deeaf0;z-index:1}.clean-hero-visual:before{content:"";position:absolute;inset:17px -13px -13px 14px;border:1.5px solid #bcded7;border-radius:110px 18px 110px 18px;pointer-events:none}.clean-hero-visual .hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.35s ease,visibility 1.35s ease}.clean-hero-visual .hero-slide.is-active{opacity:1;visibility:visible}.clean-hero-visual .hero-slide img{height:100%;width:100%;object-fit:cover;object-position:50% 50%;transform:scale(1.02)}.clean-hero-visual .hero-slide.is-active img{animation:clean-kenburns 19s ease-in-out infinite alternate}.clean-hero-float{position:absolute;bottom:42px;left:-32px;z-index:5;display:flex;align-items:center;gap:12px;padding:15px 18px;background:#fff;box-shadow:0 12px 36px #0b3f4921;border-radius:11px}.clean-float-icon{width:38px;height:38px;background:#e1f7f2;color:#0b8991;font-size:1.65rem;display:grid;place-items:center;border-radius:10px}.clean-hero-float strong,.clean-hero-float small{display:block}.clean-hero-float strong{font-size:.85rem;color:#143b58}.clean-hero-float small{font-size:.72rem;color:#7b8e95}.clean-carousel-controls{position:absolute;z-index:6;right:17px;bottom:14px;display:flex;align-items:center;gap:9px;background:#fffdf4ef;padding:7px 10px;border-radius:100px;box-shadow:0 5px 17px #15445f16}.clean-carousel-arrow,.clean-carousel-pause{background:transparent;border:0;color:#1a506a;cursor:pointer;display:grid;place-items:center;font-size:1.3rem;padding:0 4px;line-height:1.1}.clean-carousel-pause{font-size:.85rem}.clean-carousel-controls .hero-dots{gap:6px}.clean-carousel-controls .hero-dots button{background:#bdcdce;width:7px;height:7px}.clean-carousel-controls .hero-dots button[aria-current="true"]{background:#078a94;width:19px}
@keyframes clean-kenburns{0%{transform:scale(1.02) translate3d(0,0,0)}100%{transform:scale(1.14) translate3d(-1.3%,-.7%,0)}}
.clean-accreditation{background:#fff;border-top:1px solid #edf0ec;border-bottom:1px solid #ebefea}.clean-accreditation-inner{display:flex;align-items:center;gap:23px;padding:24px 0}.clean-accreditation img{width:84px;height:84px;object-fit:contain;flex-shrink:0}.clean-accreditation h2{margin:4px 0 5px;font-size:1.5rem;letter-spacing:-.035em}.clean-accreditation h2 em{color:var(--clean-teal)}.clean-accreditation p{font-size:.86rem;margin:0;max-width:790px;line-height:1.55}.clean-accreditation .clean-text-link{margin-left:auto;white-space:nowrap}.clean-text-link{font-size:.85rem;color:#057b89;font-weight:800}.clean-text-link:hover{text-decoration:underline}
.clean-section{padding:90px 0 100px}.clean-services{background:#fff}.clean-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}.clean-heading h2{font-size:clamp(2.2rem,3.6vw,3.4rem);max-width:640px;margin:10px 0 0}.clean-heading>p{font-size:.98rem;max-width:375px;line-height:1.7;margin:0 0 4px}.clean-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.clean-service-card{display:block;border-radius:13px;overflow:hidden;border:1px solid #e7ecee;box-shadow:0 8px 22px #082b5210;background:#fff;transition:transform .25s,box-shadow .25s}.clean-service-card:hover{transform:translateY(-5px);box-shadow:0 17px 27px #092d5517}.clean-service-photo{height:220px;overflow:hidden;background:#e8eeee}.clean-service-photo img{width:100%;height:100%;object-fit:cover;transition:transform 6s ease}.clean-service-card:hover img{transform:scale(1.06)}.clean-service-body{padding:22px 23px 25px}.clean-tag{font-size:.67rem;letter-spacing:.13em;color:#08828d;font-weight:800}.clean-service-body h3{font-size:1.25rem;margin:8px 0 10px}.clean-service-body p{font-size:.88rem;line-height:1.65;min-height:47px;margin:0 0 18px}.clean-more-services{text-align:center;margin-top:28px}
.clean-approach{background:#f8f7f3;padding:100px 0}.clean-approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:8.5%;align-items:center}.clean-approach-photo{height:455px;position:relative}.clean-approach-photo img{height:100%;width:100%;object-fit:cover;border-radius:14px 125px 14px 14px}.clean-approach-photo>span{position:absolute;bottom:-17px;right:-19px;padding:23px 25px;border-radius:9px;background:#103963;color:#fff;font-size:1.22rem;font-weight:800;box-shadow:0 13px 25px #143b5b2b}.clean-approach-photo>span small{display:block;color:#b7cfe2;font-weight:500;font-size:.73rem}.clean-approach-copy h2{font-size:clamp(2.3rem,3.7vw,3.55rem);margin:14px 0 20px}.clean-approach-copy>p{font-size:1rem;line-height:1.75}.clean-values{margin:24px 0}.clean-values>div{display:flex;gap:22px;align-items:center;border-bottom:1px solid #dfe4e2;padding:12px 0}.clean-values b{color:#77b934;font-size:.76rem}.clean-values strong,.clean-values small{display:block}.clean-values strong{font-size:.87rem;color:#123b62}.clean-values small{font-size:.78rem;color:#71838f;margin-top:3px}
.clean-audiences{background:#fff}.clean-audiences h2{font-size:clamp(2.2rem,3.4vw,3.2rem);margin:12px 0 31px}.clean-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.clean-audience-card{display:flex;flex-direction:column;align-items:flex-start;border:1px solid #ecf0ee;border-radius:12px;padding:27px 28px 30px;min-height:210px;background:#eff7f6}.clean-audience-card:nth-child(2){background:#f7f7ef}.clean-audience-card:nth-child(3){background:#f1f4fa}.clean-audience-symbol{width:42px;height:42px;background:#fff;color:#0b8590;display:grid;place-items:center;border-radius:9px;font-size:1.4rem}.clean-audience-card h3{font-size:1.11rem;margin:16px 0 8px}.clean-audience-card p{font-size:.85rem;line-height:1.58;flex:1;margin-bottom:16px}
.clean-apply{border-top:1px solid #eef0ef;background:#fff;padding:27px 0 35px}.clean-apply-inner{display:grid;grid-template-columns:1.1fr 1.9fr;gap:40px;align-items:center}.clean-apply h2{font-size:1.65rem;margin:8px 0 6px}.clean-apply p{font-size:.86rem;margin:0}.clean-apply-options{display:grid;grid-template-columns:1fr 1fr;gap:13px}.clean-apply-options>a{border:1px solid #dfe9e7;background:#f9fbfa;border-radius:10px;display:flex;align-items:center;gap:13px;padding:14px}.clean-apply-icon{background:#e6f4ea;color:#4b993b;width:44px;height:44px;display:grid;place-items:center;border-radius:9px;font-size:1.5rem}.clean-apply-options>a:nth-child(2) .clean-apply-icon{background:#e7f2fd;color:#165a9a}.clean-apply-options strong,.clean-apply-options small{display:block}.clean-apply-options strong{color:#153c5f;font-size:.9rem}.clean-apply-options small{color:#087c8b;font-size:.75rem;margin-top:5px}
.clean-training{background:#0c3155;padding:65px 0;color:#fff}.clean-training-inner{display:grid;grid-template-columns:.84fr 1.6fr;gap:65px;align-items:center}.clean-training .clean-kicker{color:#a8e276}.clean-training h2{font-size:2.6rem;color:#fff;margin:12px 0 16px}.clean-training h2 em{color:#a5d953}.clean-training p{color:#d9e7f0;line-height:1.65;font-size:.91rem}.clean-training-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}.clean-training-options>a{background:#ffffff0d;border:1px solid #ffffff45;padding:23px;border-radius:11px;min-height:216px}.clean-training-options>a:hover{background:#ffffff19}.clean-training-options .clean-training-tag{font-size:.66rem;letter-spacing:.13em;font-weight:850;color:#a0db79}.clean-training-options h3{font-size:1.2rem;color:#fff;letter-spacing:-.023em;line-height:1.3;margin:11px 0}.clean-training-options p{font-size:.82rem;margin:0 0 13px;line-height:1.55}.clean-training-options a>span:last-child{color:#b6e989;font-size:.84rem;font-weight:850}
.site-footer{background:#f4f7f7;color:#233e53}
@media(max-width:1120px){.clean-hero-grid{gap:5%}.clean-hero h1{font-size:clamp(3.1rem,5.2vw,4.5rem)}.clean-hero-visual{height:415px}.clean-accreditation .clean-text-link{white-space:normal}.clean-training-inner{gap:25px}}
@media(max-width:820px){.clean-hero{padding:57px 0}.clean-hero-grid{gap:35px;grid-template-columns:1fr}.clean-hero h1{max-width:650px;font-size:clamp(2.9rem,7.5vw,4.5rem)}.clean-hero-visual{height:450px;max-width:680px;margin:0 auto;width:95%}.clean-accreditation-inner{flex-wrap:wrap}.clean-accreditation .clean-text-link{margin-left:106px}.clean-service-grid{grid-template-columns:repeat(2,1fr)}.clean-approach-grid{gap:35px}.clean-approach-photo{height:390px}.clean-training-inner{grid-template-columns:1fr}.clean-training-options{max-width:800px}.clean-apply-inner{grid-template-columns:1fr}.clean-audience-card{padding:19px}.clean-audience-grid{gap:12px}}
@media(max-width:550px){.clean-hero{padding:35px 0 50px}.clean-hero-grid{gap:28px}.clean-hero h1{font-size:2.85rem;margin:17px 0}.clean-lead{font-size:.96rem}.clean-hero-visual{height:300px;width:calc(100% - 16px);margin-left:12px;border-radius:75px 12px 75px 12px}.clean-hero-slides{border-radius:75px 12px 75px 12px}.clean-hero-visual:before{border-radius:75px 12px 75px 12px}.clean-hero-float{left:-14px;bottom:24px;padding:9px 11px;gap:6px}.clean-hero-float strong{font-size:.72rem}.clean-hero-float small{font-size:.62rem}.clean-float-icon{height:28px;width:28px;font-size:1.1rem}.clean-carousel-controls{bottom:5px;right:6px;padding:5px}.clean-carousel-arrow{font-size:1rem}.clean-accreditation-inner{gap:13px;padding:17px 0}.clean-accreditation img{width:61px;height:61px}.clean-accreditation h2{font-size:1.12rem}.clean-accreditation p{font-size:.76rem}.clean-accreditation .clean-text-link{margin-left:75px;font-size:.75rem}.clean-section{padding:57px 0}.clean-heading{display:block;margin-bottom:20px}.clean-heading h2{font-size:2rem}.clean-heading>p{margin-top:14px;font-size:.91rem}.clean-service-grid{grid-template-columns:1fr;gap:16px}.clean-service-photo{height:205px}.clean-service-body{padding:17px}.clean-service-body p{min-height:auto}.clean-approach{padding:55px 0}.clean-approach-grid{grid-template-columns:1fr}.clean-approach-photo{height:295px}.clean-approach-photo>span{right:5px;bottom:-10px;padding:13px;font-size:.95rem}.clean-approach-copy h2{font-size:2.15rem}.clean-audience-grid{grid-template-columns:1fr}.clean-audience-card{min-height:180px}.clean-apply-inner{gap:19px}.clean-apply-options{grid-template-columns:1fr}.clean-training{padding:46px 0}.clean-training h2{font-size:2.15rem}.clean-training-options{grid-template-columns:1fr}.clean-training-options>a{min-height:0}}
@media(prefers-reduced-motion:reduce){.clean-hero-visual .hero-slide.is-active img{animation:none!important;transform:none!important}.clean-hero-visual .hero-slide{transition:none!important}}

/* Geography and contact updates, preserving the approved quiet homepage composition. */
.clean-coverage{background:#f9fbfa;border-top:1px solid #edf2f0;border-bottom:1px solid #e9efed}
.clean-coverage-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 0}
.clean-coverage .clean-kicker{font-size:.64rem;letter-spacing:.12em}
.clean-coverage p{margin:5px 0 0;color:#354f61;font-size:.94rem}
.clean-coverage strong{color:#0e3855}
.clean-coverage a{white-space:nowrap}
.geo-intro{display:grid;grid-template-columns:1fr 1.25fr;gap:40px;align-items:center}
.geo-intro h2,.geo-heading h2{font-size:clamp(1.9rem,3.4vw,2.6rem);margin:10px 0 12px}
.geo-intro p{max-width:430px;line-height:1.65}
.geo-county-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.geo-county-grid span{padding:17px 15px;border:1px solid #dfebdf;background:#f4f9f2;border-radius:9px;color:#153e45;font-weight:700}
.geo-divider{border-top:1px solid #e5eae9;margin:50px 0 42px}
.geo-heading{margin-bottom:23px}
.geo-offices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0 35px}
.geo-office{background:#fff;border:1px solid #e1e9e9;border-radius:14px;padding:30px 32px;box-shadow:0 6px 18px #10314e08}
.geo-pin{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:#eaf7f2;color:#067e83;font-size:1.65rem}
.geo-office h3{margin:17px 0 12px;font-size:1.4rem}
.geo-office address{color:#516675;font-size:1rem;font-style:normal;line-height:1.75;margin-bottom:18px}
.geo-office a{color:#08788a;font-weight:800;font-size:.88rem}
.geo-office a:hover{text-decoration:underline}
.geo-contact-intro{display:flex;align-items:center;justify-content:space-between;gap:20px}
.geo-contact-intro p{line-height:1.6}
.geo-contact-separator{padding:0 10px;color:#9daeb1}
.clean-footer-offices{display:grid;grid-template-columns:.88fr 1.25fr 1.25fr .9fr;gap:24px;padding:23px 0 20px;border-top:1px solid #dce4e6;margin-top:22px}
.clean-footer-offices>div{min-width:0}
.clean-footer-offices strong,.clean-footer-offices span,.clean-footer-offices a{display:block}
.clean-footer-offices strong{font-size:.79rem;color:#123a58;margin-bottom:7px}
.clean-footer-offices span,.clean-footer-offices a{font-size:.75rem;line-height:1.7;color:#617b88}
.clean-footer-offices a:hover{text-decoration:underline}
.site-footer .footer-main nav a{color:#2b536d}
.site-footer .footer-bottom{color:#78909a;border-top:1px solid #dce4e6}
/* Card images are deliberately full resolution rather than upscaled low-quality 660px exports. */
.clean-service-photo img{object-position:center center;image-rendering:auto}
@media(max-width:820px){.clean-footer-offices{grid-template-columns:repeat(2,minmax(0,1fr))}.geo-intro{grid-template-columns:1fr;gap:15px}.geo-contact-intro{display:block}}
@media(max-width:550px){.clean-coverage-inner{align-items:start;flex-direction:column;gap:8px;padding:18px 0}.clean-coverage p{font-size:.87rem}.clean-coverage a{font-size:.8rem}.geo-county-grid{grid-template-columns:repeat(2,1fr)}.geo-county-grid span{padding:12px}.geo-offices{grid-template-columns:1fr;gap:12px}.geo-office{padding:24px}.clean-footer-offices{gap:18px;padding:21px 0 15px}.clean-footer-offices strong{font-size:.75rem}.clean-footer-offices span,.clean-footer-offices a{font-size:.68rem}.geo-contact-separator{display:none}.geo-contact-intro p a{display:inline-block;margin-right:8px}}

/* Homepage three-slide cinematic video carousel: use the same responsive crop and rounded clipping as photographs. */
.clean-hero-visual .hero-slide video.hero-video{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;background:#dbe9e8;pointer-events:none}
.clean-hero-visual .hero-slide.is-active video.hero-video{animation:none!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.clean-hero-visual .hero-slide video.hero-video{animation:none!important;transform:none!important}}

/* Milestone 2.7: refined HD audience imagery, retains approved uncluttered layout. */
.clean-audience-card {display:grid;grid-template-columns:39% 61%;gap:0;padding:0;min-height:194px;overflow:hidden;align-items:stretch;background:#fff;border-color:#e7ecef;box-shadow:0 5px 16px #10314e08;}
.clean-audience-card:nth-child(2),.clean-audience-card:nth-child(3) {background:#fff}
.clean-audience-image {display:block;min-width:0;overflow:hidden;background:#eaf1f2}
.clean-audience-image img {display:block;width:100%;height:100%;min-height:194px;object-fit:cover;object-position:center center;transition:transform .35s ease}
.clean-audience-card:hover .clean-audience-image img {transform:scale(1.025)}
.clean-audience-content {min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:20px 17px}
.clean-audience-content h3 {font-size:1.07rem;line-height:1.28;margin:0 0 10px;color:#173c5a}
.clean-audience-content p {font-size:.82rem;line-height:1.55;margin:0 0 14px;flex:none;color:#557080}
.clean-audience-content .clean-text-link {font-size:.82rem;margin-top:auto;line-height:1.35}
.pediatric-secondary {margin-top:65px;display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;border-top:1px solid #e5eeee;padding-top:50px}
.pediatric-secondary img {width:100%;height:300px;object-fit:cover;border-radius:14px}
.pediatric-secondary h2 {margin:12px 0;font-size:clamp(1.7rem,3vw,2.5rem)}
.pediatric-secondary p {max-width:580px;line-height:1.7;color:#546879}
@media(max-width:1090px){.clean-audience-grid{grid-template-columns:1fr;gap:15px}.clean-audience-card{grid-template-columns:32% 68%;min-height:155px}.clean-audience-image img{min-height:155px}.clean-audience-content{padding:18px 25px}.clean-audience-content h3{font-size:1.12rem}.clean-audience-content p{margin-bottom:10px}}
@media(max-width:550px){.clean-audience-grid{grid-template-columns:1fr;gap:15px}.clean-audience-card{grid-template-columns:36% 64%;min-height:155px}.clean-audience-image img{min-height:155px}.clean-audience-content{padding:15px}.clean-audience-content h3{font-size:1rem;margin:0 0 7px}.clean-audience-content p{font-size:.78rem;margin:0 0 8px;line-height:1.45}.clean-audience-content .clean-text-link{font-size:.77rem}.pediatric-secondary{grid-template-columns:1fr;gap:22px;margin-top:45px;padding-top:35px}.pediatric-secondary img{height:220px}}
@media(prefers-reduced-motion:reduce){.clean-audience-image img{transition:none!important}.clean-audience-card:hover .clean-audience-image img{transform:none!important}}

/* Milestone 4.1 - caregiver sign-in and published lesson visibility */
.clean-portal-link{display:inline-flex;align-items:center;gap:7px;font-size:.95rem;font-weight:800;color:#d6ffb0!important;text-decoration:underline;text-underline-offset:4px}
.clean-portal-link:hover{color:white!important}
.main-nav .nav-portal{color:#0d6d4b;font-weight:800}
@media(max-width:1280px){.main-nav .nav-portal{font-size:.72rem}}
@media(max-width:1100px){.main-nav .nav-portal{font-size:.95rem}}

/* M5.4: continuity of Glam Healthcare's established home-care promise. */
.clean-heritage-slogan{display:inline-flex;align-items:center;gap:10px;margin:0 0 14px;padding:0 0 9px;border-bottom:2px solid #9acb6f;color:#1f694f;font:italic 600 clamp(.9rem,1.6vw,1.06rem)/1.4 Georgia,serif;letter-spacing:.014em}
@media(max-width:550px){.clean-heritage-slogan{font-size:.94rem;margin-bottom:12px}}
