/* Homepage refresh: keeps Calgary Senior Living's existing teal palette and logo. */
.csl-home-hero{position:relative;isolation:isolate;overflow:hidden;padding:80px 0 96px;background:linear-gradient(108deg,rgba(14,67,64,.97) 0%,rgba(17,94,94,.91) 45%,rgba(18,83,80,.48) 100%),url('esl-hero.webp') center 45%/cover;color:#fff}
.csl-home-hero:before{position:absolute;z-index:-1;top:-230px;right:-120px;width:620px;height:620px;border:1px solid rgba(255,255,255,.14);border-radius:50%;content:""}
.csl-home-hero:after{position:absolute;z-index:-1;right:12%;bottom:-360px;width:550px;height:550px;border:1px solid rgba(255,255,255,.12);border-radius:50%;content:""}
.csl-home-hero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(370px,.84fr);align-items:center;gap:58px}
.csl-home-hero-copy{max-width:650px}
.csl-home-eyebrow,.csl-home-kicker{margin:0 0 10px;color:#9fe0d4;font-size:11px;font-weight:850;letter-spacing:.14em;line-height:1.4;text-transform:uppercase}
.csl-home-hero h1{max-width:680px;margin:0;color:#fff;font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5.1vw,66px);font-weight:500;letter-spacing:-.045em;line-height:1.05}
.csl-home-lede{max-width:570px;margin:20px 0 0;color:#e1f1ed;font-size:17px;line-height:1.7}
.csl-home-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:27px}
.csl-home-hero .btn-primary{background:#f0d28e;color:#183e3d}
.csl-home-hero .btn-primary:hover{background:#f8e4b4;color:#183e3d}
.csl-home-text-link{color:#fff;font-size:13px;font-weight:750;text-decoration:none}
.csl-home-text-link:hover{text-decoration:underline}
.csl-home-assurances{display:flex;flex-wrap:wrap;gap:10px 20px;margin:25px 0 0;padding:0;list-style:none;color:#e1f1ed;font-size:11px;font-weight:700}
.csl-home-assurances li{display:flex;align-items:center;gap:7px}
.csl-home-assurances li span{display:grid;width:17px;height:17px;place-items:center;border-radius:50%;background:rgba(197,236,219,.16);color:#c4ecd9;font-size:11px}
.csl-home-search-panel{position:relative;padding:25px;border:1px solid rgba(255,255,255,.6);border-radius:15px;background:#fffefa;color:#24354a;box-shadow:0 24px 64px rgba(5,40,41,.28)}
.csl-home-search-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.csl-home-search-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#e6f2ef;color:#176d68;font-size:27px;font-weight:400}
.csl-home-search-heading strong,.csl-home-search-heading small{display:block}
.csl-home-search-heading strong{color:#183e3d;font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.2}
.csl-home-search-heading small{margin-top:3px;color:#6b7b79;font-size:11px}
.csl-home-search-panel .esl-search-form{grid-template-columns:1fr;gap:11px}
.csl-home-search-panel .esl-search-form label{display:grid;gap:5px;color:#405653;font-size:11px;font-weight:750}
.csl-home-search-panel .esl-search-form label span{font-size:11px}
.csl-home-search-panel .esl-search-form select,.csl-home-search-panel .esl-search-form input{min-height:46px;border-color:#cad9d4;border-radius:7px;color:#243b38;font-size:13px}
.csl-home-search-panel .esl-search-form button{min-height:48px;border-radius:7px;background:#115e5e;font-size:13px}
.csl-home-search-panel .esl-search-form button:hover{background:#0b4547}
.csl-home-search-note{margin:13px 0 0;color:#677a75;font-size:11px;text-align:center}
.csl-home-search-note a{color:#115e5e;font-weight:800;text-decoration:none}
.csl-home-search-note a:hover{text-decoration:underline}
.csl-home-trust{position:relative;z-index:2;margin-top:-28px}
.csl-home-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:20px 24px;border:1px solid #e3ebe8;border-radius:11px;background:#fff;box-shadow:0 12px 34px rgba(21,57,52,.1)}
.csl-home-trust-grid>div{display:grid;grid-template-columns:35px 1fr;align-items:center;column-gap:12px;padding:3px 18px;border-right:1px solid #e8eeeb}
.csl-home-trust-grid>div:last-child{border-right:0}
.csl-home-trust-mark{grid-row:span 2;display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#e8f3ef;color:#19726a;font-size:10px;font-weight:850}
.csl-home-trust-grid strong{color:#213c38;font-size:12px;line-height:1.3}
.csl-home-trust-grid small{margin-top:3px;color:#6c7d78;font-size:10px;line-height:1.4}
.csl-home-care-section{padding-top:72px}
.csl-home-section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:27px}
.csl-home-section-heading>div{max-width:690px}
.csl-home-section-heading .csl-home-kicker,.csl-home-compare-grid .csl-home-kicker,.csl-home-final-cta .csl-home-kicker{margin-bottom:6px;color:#8d6e2c}
.csl-home-section-heading h2,.csl-home-compare-grid h2,.csl-home-final-cta h2{margin:0;color:#143f3d;font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3.6vw,42px);font-weight:500;letter-spacing:-.03em;line-height:1.13}
.csl-home-section-heading p{margin:9px 0 0;color:#60716e;font-size:14px;line-height:1.65}
.csl-home-section-link{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;margin-bottom:4px;color:#126760;font-size:12px;font-weight:800;text-decoration:none}
.csl-home-section-link:hover{text-decoration:underline}
.csl-home-care-section .esl-care-browse{gap:13px}
.csl-home-care-section .care-type-card{min-height:190px;border-color:#e1e9e5;border-radius:10px;box-shadow:0 4px 16px rgba(20,60,54,.045);transition:transform .18s ease,box-shadow .18s ease}
.csl-home-care-section .care-type-card:hover{transform:translateY(-3px);box-shadow:0 12px 27px rgba(20,60,54,.1)}
.csl-home-care-section .care-type-card h3{margin-top:12px;color:#174d4a;font-family:Georgia,'Times New Roman',serif;font-size:18px}
.csl-home-care-section .care-type-card p{color:#62736f;font-size:12px;line-height:1.55}
.csl-home-care-section .care-type-card>strong{color:#126760;font-size:11px}
.csl-home-quiz-banner{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:30px;padding:24px 27px;border:1px solid #dce9e4;border-radius:11px;background:#f2f7f4}
.csl-home-quiz-banner .csl-home-kicker{margin-bottom:5px;color:#8d6e2c}
.csl-home-quiz-banner h3{margin:0;color:#183f3c;font-family:Georgia,'Times New Roman',serif;font-size:23px;font-weight:500}
.csl-home-quiz-banner p{margin:5px 0 0;color:#62736f;font-size:12px;line-height:1.6}
.csl-home-quiz-banner .btn-primary{flex:0 0 auto;background:#115e5e;color:#fff}
.csl-home-quiz-banner .btn-primary:hover{background:#0b4547}
.csl-home-featured-section{background:#f8f9f6}
.csl-home-featured-section .communities-grid{align-items:stretch}
.csl-home-featured-section .card{border-color:#e2e9e5;border-radius:10px;box-shadow:0 5px 20px rgba(20,60,54,.06)}
.csl-home-featured-section .card h3 a{color:#164b47}
.csl-home-compare-section{padding-block:64px;background:#fff}
.csl-home-compare-grid{display:grid;grid-template-columns:.85fr 1fr;align-items:center;gap:70px}
.csl-home-compare-grid>div:last-child{max-width:600px}
.csl-home-compare-grid p:not(.csl-home-kicker){max-width:560px;margin:15px 0 22px;color:#60716e;font-size:14px;line-height:1.75}
.csl-home-compare-grid .btn-outline{border-color:#91b4aa;color:#145d57}
.csl-home-compare-grid small{display:block;margin-top:11px;color:#74827e;font-size:10px}
.csl-home-compare-art{position:relative;display:grid;min-height:250px;place-items:center;border:1px solid #e4ece8;border-radius:15px;background:linear-gradient(145deg,#f0f6f3,#faf8ef);overflow:hidden}
.csl-home-compare-art:before,.csl-home-compare-art:after{position:absolute;width:180px;height:180px;border:1px solid #dce9e3;border-radius:50%;content:""}
.csl-home-compare-art:after{width:260px;height:260px}
.csl-home-compare-card{position:absolute;z-index:1;display:grid;width:150px;gap:12px;padding:20px 15px;border:1px solid #d5e1dc;border-radius:9px;background:#fff;box-shadow:0 12px 28px rgba(17,71,66,.1)}
.csl-home-compare-card:before{display:block;width:52px;height:7px;border-radius:5px;background:#176b65;content:""}
.csl-home-compare-card i{display:block;height:7px;border-radius:5px;background:#e4ece8}
.csl-home-compare-card i:nth-child(2){width:78%}.csl-home-compare-card i:nth-child(3){width:58%}
.csl-home-compare-card.card-one{transform:translate(-43px,-10px) rotate(-8deg)}
.csl-home-compare-card.card-two{transform:translate(48px,13px) rotate(7deg)}
.csl-home-compare-check{position:absolute;z-index:2;right:calc(50% - 99px);bottom:48px;display:grid;width:38px;height:38px;place-items:center;border:3px solid #fff;border-radius:50%;background:#d7af58;color:#fff;font-weight:900;box-shadow:0 5px 14px rgba(31,61,49,.18)}
.esl-available-section{padding:58px max(calc((100% - 1180px)/2),16px);background:#edf5f2}
.esl-available-section .section-title{margin-top:0;color:#164b47;font-family:Georgia,'Times New Roman',serif;font-weight:500}
.esl-available-section .communities-grid{align-items:stretch}
.csl-home-location-section{background:#fff}
.csl-home-location-section .esl-city-card{min-height:78px;display:flex;align-items:center;justify-content:space-between;border:1px solid #e2eae6!important;border-radius:9px!important;color:#1d4c48!important;font-size:13px;font-weight:750;box-shadow:0 4px 15px rgba(20,60,54,.04);transition:transform .18s ease,box-shadow .18s ease}
.csl-home-location-section .esl-city-card:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(20,60,54,.09)}
.csl-home-guides-section{background:#f8f9f6}
.csl-home-guides-section .posts-grid{align-items:stretch}
.csl-home-final-cta{padding:48px 0;background:#e9f2ee}
.csl-home-final-inner{display:flex;align-items:center;justify-content:space-between;gap:38px}
.csl-home-final-inner>div:first-child{max-width:700px}
.csl-home-final-cta h2{font-size:clamp(28px,3vw,37px)}
.csl-home-final-cta p:not(.csl-home-kicker){margin:10px 0 0;color:#5b706a;font-size:13px;line-height:1.65}
.csl-home-final-actions{display:grid;justify-items:center;gap:10px;flex:0 0 auto}
.csl-home-final-actions .btn-primary{min-width:185px;background:#115e5e;color:#fff}
.csl-home-final-actions>a:last-child{color:#155d57;font-size:11px;font-weight:750;text-decoration:none}
.csl-home-final-actions>a:last-child:hover{text-decoration:underline}
.csl-home-hero a:focus-visible,.csl-home-section-link:focus-visible,.csl-home-search-panel a:focus-visible,.csl-home-final-cta a:focus-visible{outline:3px solid #e0b857;outline-offset:3px}
@media(max-width:980px){.csl-home-hero{padding:68px 0 78px}.csl-home-hero-grid{grid-template-columns:1fr;gap:34px}.csl-home-hero-copy{max-width:760px}.csl-home-search-panel{max-width:720px}.csl-home-search-panel .esl-search-form{grid-template-columns:1fr 1fr auto;align-items:end}.csl-home-search-panel .esl-search-form button{min-height:46px}.csl-home-compare-grid{gap:36px}}
@media(max-width:760px){.csl-home-hero{padding:52px 0 70px}.csl-home-hero-grid{gap:27px}.csl-home-hero h1{font-size:clamp(39px,10vw,54px)}.csl-home-lede{font-size:15px}.csl-home-search-panel{padding:20px}.csl-home-search-panel .esl-search-form{grid-template-columns:1fr}.csl-home-search-panel .esl-search-form button{width:100%}.csl-home-trust{margin-top:-22px}.csl-home-trust-grid{grid-template-columns:1fr;padding:12px 17px}.csl-home-trust-grid>div{padding:11px 3px;border-right:0;border-bottom:1px solid #e8eeeb}.csl-home-trust-grid>div:last-child{border-bottom:0}.csl-home-care-section{padding-top:56px}.csl-home-section-heading{align-items:flex-start;flex-direction:column;gap:12px}.csl-home-section-link{margin:0}.csl-home-quiz-banner{align-items:flex-start;flex-direction:column;padding:21px}.csl-home-quiz-banner .btn-primary{width:100%}.csl-home-compare-grid{grid-template-columns:1fr;gap:28px}.csl-home-compare-art{min-height:220px}.esl-available-section{padding:45px 16px}.csl-home-final-inner{align-items:flex-start;flex-direction:column}.csl-home-final-actions{justify-items:start;width:100%}.csl-home-final-actions .btn-primary{width:100%}}
@media(max-width:520px){.csl-home-hero-actions{align-items:flex-start;flex-direction:column;gap:13px}.csl-home-assurances{gap:9px 13px}.csl-home-section-heading h2{font-size:31px}.csl-home-compare-art{min-height:195px}.csl-home-compare-card{width:130px}.csl-home-compare-check{right:calc(50% - 88px);bottom:33px}}
@media(prefers-reduced-motion:reduce){.csl-home-hero *,.csl-home-compare-art *,.csl-home-location-section *{scroll-behavior:auto!important;transition:none!important}}
