@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--green:#006e56;--deep:#004b3d;--orange:#fa7833;--cream:#fff9f2;--ink:#182c27;--muted:#5e6c67}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{max-width:1180px;margin:auto;padding:0 24px}.skip{position:absolute;top:-100px;left:10px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}.header{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.97);border-bottom:1px solid #e7ebe6;box-shadow:0 4px 20px #153b2d0b}.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:90px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand img{width:70px;height:80px;object-fit:contain}.brand strong{font-family:'Playfair Display',Georgia,serif;font-size:24px;font-weight:500;line-height:1.05}.brand small{display:block;font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-top:5px}.navlinks{display:flex;align-items:center;gap:22px;font-size:14px}.navlinks a:hover,.navlinks a:focus-visible{color:var(--green);text-decoration:underline;text-underline-offset:5px}.phone{font-weight:700;white-space:nowrap;color:var(--deep)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);border:1px solid var(--green);border-radius:9px;padding:13px 22px;color:#fff;font-weight:700;transition:transform .25s,background .25s,box-shadow .25s}.btn:hover{background:var(--deep);transform:translateY(-2px);box-shadow:0 9px 18px #004b3d22}.btn.orange{background:var(--orange);border-color:var(--orange);color:#241e18}.btn.outline{background:transparent;color:var(--deep)}.menu-toggle{display:none;background:white;border:1px solid #ddd;border-radius:7px;padding:8px 12px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:3px;color:var(--green);font-weight:700}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.14;margin:0 0 18px}h1{font-size:clamp(42px,5.5vw,72px)}h2{font-size:clamp(32px,4vw,48px)}h3{font-size:26px}p{line-height:1.75;color:#46534f}.hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#fffaf4 0%,#fff 48%,#e4f0e8 100%);padding:92px 0 120px}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}.hero p{max-width:570px;font-size:18px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-art{min-height:380px;display:grid;place-items:center;position:relative}.home-art{width:min(100%,470px);background:#f4f0e7;border-radius:50% 50% 12% 12%;border:12px solid #fff;box-shadow:0 25px 55px #003e3020;overflow:hidden}.home-art svg{width:100%;display:block}.wave{position:absolute;bottom:-1px;left:0;width:100%;height:85px}.wave path{animation:drift 8s ease-in-out infinite alternate}@keyframes drift{from{transform:translateX(-10px)}to{transform:translateX(10px)}}section{padding:82px 0}.center{text-align:center}.center>p{max-width:700px;margin:0 auto 34px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.facility-card{border:1px solid #e6eae4;border-radius:15px;overflow:hidden;box-shadow:0 9px 25px #153b2d0a;transition:transform .3s,box-shadow .3s;background:white}.facility-card:hover{transform:translateY(-5px);box-shadow:0 16px 30px #153b2d19}.photo-placeholder{min-height:180px;background:linear-gradient(135deg,#e6efe8,#f9ead9);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#52796a;gap:8px;text-align:center;padding:20px}.photo-placeholder svg{width:75px;height:75px}.photo-placeholder span{font-size:12px}.card-body{padding:23px}.card-body h3{font-size:23px;margin-bottom:10px}.card-body p{font-size:14px;margin:5px 0}.card-body .btn{margin-top:15px;width:100%;font-size:13px;padding:11px}.features{background:var(--cream)}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.feature{padding:20px;text-align:center}.feature .symbol{font-size:34px;color:var(--orange);margin-bottom:12px}.feature h3{font-size:22px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.panel{background:#eaf3ed;border-radius:22px;padding:40px}.panel .photo-placeholder{height:320px;border-radius:14px}.cta{background:var(--deep);color:white;position:relative;overflow:hidden}.cta h2,.cta p{color:white}.cta .btn{background:var(--orange);border-color:var(--orange);color:#231b12}.footer{background:#f5f8f5;padding:45px 0;color:var(--muted)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer a{text-decoration:underline;text-underline-offset:3px}.page-hero{background:linear-gradient(115deg,#f7faf5,#fff5ea);padding:75px 0 85px;position:relative;overflow:hidden}.page-hero h1{font-size:clamp(42px,5vw,60px)}.page-hero p{max-width:720px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr);gap:48px;align-items:start}.info-pills{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.pill{background:#edf5f0;border:1px solid #d5e6da;padding:10px 14px;border-radius:9px;font-size:14px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.gallery .photo-placeholder{min-height:140px;border-radius:10px}.tour{background:white;border:1px solid #e1e9e2;border-radius:17px;padding:28px;box-shadow:0 12px 35px #002d1b12;scroll-margin-top:110px}.tour h3{font-size:30px}.tour label{display:block;font-weight:700;font-size:13px;margin:15px 0 6px}.tour input,.tour select,.tour textarea{width:100%;padding:12px;border:1px solid #cbd9cf;border-radius:7px;background:white;color:#1c332a}.tour textarea{min-height:90px}.tour .btn{width:100%;margin-top:22px}.fine{font-size:12px;color:#66746c}.notice{padding:16px;background:#fff8ec;border-left:3px solid var(--orange);border-radius:6px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}@media(max-width:1050px){.grid4{grid-template-columns:repeat(2,1fr)}.navlinks{gap:12px}.nav .phone{display:none}}@media(max-width:760px){.nav{min-height:75px}.brand img{width:52px;height:60px}.brand strong{font-size:19px}.brand small{font-size:9px}.menu-toggle{display:block}.navlinks{display:none;position:absolute;top:75px;left:0;right:0;background:white;padding:20px 24px;box-shadow:0 15px 25px #0002;flex-direction:column;align-items:stretch}.navlinks.open{display:flex}.hero{padding:55px 0 85px}.hero-grid,.split,.detail-layout{grid-template-columns:1fr}.hero-art{min-height:230px}.home-art{max-width:300px}.grid4,.feature-grid{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}section{padding:55px 0}}@media(max-width:450px){.grid4,.feature-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.actions .btn{width:100%}}

/* Summer Springs exterior photograph */
.facility-photo{display:block;width:100%;height:190px;object-fit:cover;object-position:center;border-radius:12px 12px 0 0}
.facility-feature{margin:0 0 1.5rem}.facility-feature img{display:block;width:100%;height:auto;max-height:460px;object-fit:cover;border-radius:16px}.facility-feature figcaption{font-size:.83rem;color:#55645f;margin-top:.45rem}

/* v1.3: approved caregiving homepage banner */
.hero-art{min-height:300px}
.caregiving-banner{width:100%;border-radius:20px;overflow:hidden;box-shadow:0 22px 48px #003e3020;background:#fff}
.caregiving-banner img{display:block;width:100%;height:auto;aspect-ratio:1978/768;object-fit:cover}
@media(max-width:760px){.hero-art{min-height:0}.caregiving-banner{border-radius:14px}}

/* v1.4 â€” full-width hero photograph, original live HTML copy and links retained */
.hero.hero-full-photo{isolation:isolate;min-height:clamp(510px,46vw,710px);padding:105px 0 125px;display:flex;align-items:center;background:#f7f4e9}
.hero-full-photo .hero-background{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(255,252,245,.98) 0%,rgba(255,252,245,.94) 24%,rgba(255,252,245,.78) 41%,rgba(255,252,245,.28) 60%,rgba(255,252,245,0) 80%),var(--homepage-hero-image, url('/assets/summer-springs-hero-2026.webp'));background-position:center,center 43%;background-size:cover,cover;background-repeat:no-repeat}
.hero-full-photo .hero-grid{display:block;width:100%}
.hero-full-photo .hero-grid>div:first-child{max-width:615px;position:relative;z-index:1}
.hero-full-photo h1{color:#153a2e;text-shadow:0 1px 2px rgba(255,255,255,.25)}
.hero-full-photo p{color:#293d35;font-weight:500;max-width:545px}
.hero-full-photo .eyebrow{color:#005f4b}
.hero-full-photo .btn.outline{background:rgba(255,255,255,.87);backdrop-filter:blur(4px)}
.hero-full-photo .wave{z-index:1}
@media(max-width:760px){.hero.hero-full-photo{min-height:610px;padding:65px 0 115px;align-items:flex-start}.hero-full-photo .hero-background{background-image:linear-gradient(180deg,rgba(255,252,245,.98) 0%,rgba(255,252,245,.95) 28%,rgba(255,252,245,.82) 49%,rgba(255,252,245,.08) 88%),var(--homepage-hero-image, url('/assets/summer-springs-hero-2026.webp'));background-position:center,60% bottom;background-size:cover,auto 100%}.hero-full-photo .hero-grid>div:first-child{max-width:540px}.hero-full-photo h1{font-size:clamp(40px,8vw,59px)}.hero-full-photo p{font-size:16px;line-height:1.55}}
@media(max-width:450px){.hero.hero-full-photo{min-height:660px;padding-top:48px}.hero-full-photo .hero-background{background-position:center,59% bottom;background-size:cover,auto 100%}.hero-full-photo h1{font-size:43px}.hero-full-photo .actions{max-width:320px;gap:10px;margin-top:22px}.hero-full-photo .actions .btn{padding:12px}}

/* v1.5: keep real HTML text and links; photograph subjects clearly visible at right */
@media(min-width:761px){.hero-full-photo .hero-background{background-image:linear-gradient(90deg,rgba(255,252,245,.98) 0%,rgba(255,252,245,.91) 24%,rgba(255,252,245,.42) 39%,rgba(255,252,245,0) 53%),var(--homepage-hero-image, url('/assets/summer-springs-hero-2026.webp'));background-position:center,center center;background-size:cover,cover}.hero-full-photo .hero-grid>div:first-child{max-width:615px}}
@media(max-width:760px){.hero-full-photo .hero-background{background-image:linear-gradient(180deg,rgba(255,252,245,.99) 0%,rgba(255,252,245,.96) 33%,rgba(255,252,245,.64) 56%,rgba(255,252,245,.04) 85%),var(--homepage-hero-image, url('/assets/summer-springs-hero-2026.webp'));background-position:center,65% bottom;background-size:cover,auto 100%}}

/* v1.8: mobile-only caregiving hero composition; desktop remains unchanged */
.mobile-caregiving-photo{display:none}
.seasonal-greeting{background:#fffaf3;padding:26px 0;border-bottom:1px solid #eee7d8}
.seasonal-inner{display:flex;align-items:center;justify-content:center;gap:32px}
.seasonal-inner img{display:block;width:100%;max-width:1000px;height:auto;object-fit:contain}
.seasonal-inner h2{font-size:clamp(22px,2.6vw,34px);margin:8px 0;color:#153a2e}
.seasonal-inner p{margin:0;color:#43584e}
@media(max-width:760px){
  .nav{min-height:68px}.brand img{width:43px;height:56px;object-fit:contain}.brand strong{font-size:clamp(17px,4.5vw,22px)}.brand small{font-size:9px}.navlinks{top:68px}
  .hero.hero-full-photo{min-height:0;padding:35px 0 0;display:block;background:#fffaf3;overflow:hidden}
  .hero-full-photo .hero-background{display:none}
  .hero-full-photo .hero-grid{position:relative;z-index:2}
  .hero-full-photo .hero-grid>div:first-child{max-width:none}
  .hero-full-photo h1{font-size:clamp(37px,9.4vw,55px);line-height:1.07;margin:14px 0 18px;letter-spacing:-.035em}
  .hero-full-photo .eyebrow{font-size:clamp(10px,2.7vw,13px);line-height:1.55;letter-spacing:.19em}
  .hero-full-photo p{font-size:clamp(15px,4vw,18px);line-height:1.5;margin:0 0 18px}
  .hero-full-photo .actions{display:flex;flex-direction:column;gap:9px;max-width:none;margin:18px 0 0}
  .hero-full-photo .actions .btn{width:100%;padding:12px 16px;min-height:47px;text-align:center;justify-content:center}
  .mobile-caregiving-photo{display:block;position:relative;margin-top:12px;height:clamp(230px,72vw,440px);background-image:var(--homepage-hero-image, url('/assets/summer-springs-hero-2026.webp'));background-repeat:no-repeat;background-position:66% 48%;background-size:auto 130%}
  .hero-full-photo .wave{position:relative;display:block;margin-top:-53px;z-index:3;height:66px}
  .seasonal-greeting{padding:18px 0}.seasonal-inner{flex-direction:column;gap:6px;text-align:center}.seasonal-inner img{width:100%;max-width:100%}.seasonal-inner h2{font-size:22px;margin:4px 0}.seasonal-inner p{font-size:14px}
}
@media(max-width:450px){.hero.hero-full-photo{padding-top:28px}.hero-full-photo h1{font-size:clamp(35px,9.4vw,44px)}.hero-full-photo .actions{max-width:none;margin-top:16px}.hero-full-photo .actions .btn{padding:12px 16px}.mobile-caregiving-photo{background-position:64% center;background-size:auto 125%}}
@media(prefers-reduced-motion:reduce){.seasonal-inner img{animation:none}}

/* v1.9: location-first facility discovery */
.facility-card .card-body{display:flex;flex-direction:column;align-items:stretch;gap:8px;height:100%}
.facility-card .card-body h3{margin-bottom:0}
.facility-card .card-body p{margin:0}
.facility-location{font-weight:700;color:#006e56;font-size:.92rem}
.facility-landmark{line-height:1.5;min-height:4.3em}
.facility-actions{display:grid;gap:8px;margin-top:auto;padding-top:12px}
.facility-actions .btn{display:flex;justify-content:center;text-align:center;padding:11px 9px;font-size:.89rem;white-space:normal}
.facility-actions .primary{background:#006e56;color:white;border-color:#006e56}
.find-home{background:#fbf8f0;padding:65px 0}
.location-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.4fr);gap:25px;margin-top:32px;align-items:stretch}
.location-list,.map-embed{background:#fff;border:1px solid #e9e5dc;border-radius:16px;overflow:hidden;box-shadow:0 8px 25px #003b3010}
.location-list{padding:25px}.location-list h3{margin:0 0 15px}.location-list ul{list-style:none;margin:0;padding:0}
.location-list li+li{border-top:1px solid #e8e8e8}.location-list li a{display:flex;flex-direction:column;gap:3px;padding:13px 4px;text-decoration:none;color:#123c32}
.location-list li a:hover,.location-list li a:focus-visible{color:#e76a1c}
.location-list li span{font-size:.84rem;color:#52655e}.map-note{font-size:.85rem;color:#56665e;margin:14px 0 0}
.map-embed{display:flex;flex-direction:column;min-height:400px}.map-embed iframe{width:100%;height:100%;min-height:375px;border:0;flex:1}
.map-embed>a{padding:10px 16px;text-align:right;font-size:.87rem;color:#006e56}
.profile-location{background:#f5f9f4;padding:13px 16px;border-left:4px solid #e9762d;border-radius:7px;line-height:1.55}
.profile-location a{color:#006e56;font-weight:700}
@media(max-width:780px){.location-layout{grid-template-columns:1fr}.map-embed{min-height:330px}.map-embed iframe{min-height:300px}.facility-landmark{min-height:0}.find-home{padding:45px 0}}

/* v2.0: explicit tour CTA for every home */
.facility-actions .tour-direct{background:#ff7936;color:#172b23;border:1px solid #ff7936;font-weight:700}.facility-actions .tour-direct:hover{background:#e96628;border-color:#e96628}

/* v2.1: compact cards, full-card profile click target, visible tour CTA */
.facility-card{position:relative;display:flex;flex-direction:column;height:auto}
.facility-card .card-body{height:auto;flex:1;display:flex;flex-direction:column;gap:8px}
.facility-card .facility-landmark{min-height:0}
.facility-card .facility-actions{margin-top:12px;padding-top:0;position:relative;z-index:2}
.facility-card .card-stretched-link::after{content:"";position:absolute;inset:0;z-index:1;cursor:pointer}
.facility-card .card-stretched-link:focus-visible::after{outline:3px solid #fa7833;outline-offset:-4px;border-radius:15px}
.facility-card .facility-actions .btn{margin-top:0}
@media(max-width:760px){.facility-card .card-body{padding:18px}.facility-card .facility-actions{margin-top:10px}}

/* v2.3 ALW statuses */
.alw-status{display:inline-block;margin:.55rem 0 .75rem;padding:.42rem .75rem;border-radius:999px;font-size:.84rem;font-weight:700;line-height:1.4;}
.alw-approved{background:#e7f5eb;color:#17603b;border:1px solid #9fd1b2;}
.alw-pending{background:#fff4e5;color:#87501d;border:1px solid #f0d1a1;}
.facility-card .alw-status{font-size:.78rem;margin:.35rem 0 .5rem;}

/* v2.4 interactive map: four individually clickable home markers */
#homes-leaflet-map{width:100%;height:405px;min-height:330px;z-index:0}
.map-embed{position:relative}.map-status{font-size:.79rem;color:#45635a;padding:4px 16px 8px;margin:0}
.home-pin{background:#006e56;color:white;border:3px solid white;border-radius:50% 50% 50% 0;transform:rotate(-45deg);width:27px;height:27px;box-shadow:0 2px 8px #0005}.home-pin span{display:block;transform:rotate(45deg);text-align:center;font-size:14px;line-height:23px;font-weight:700}
.home-pin.pending{background:#f47732}.home-popup{min-width:200px;line-height:1.5}.home-popup strong{color:#003e32;font-size:1rem}.home-popup p{margin:7px 0}.home-popup a{display:inline-block;margin:5px 8px 0 0;color:#006e56;font-weight:700}.leaflet-container{font-family:inherit}
@media(max-width:780px){#homes-leaflet-map{height:320px;min-height:320px}}

/* v2.5 Leaflet repair: enforce tile positioning even if third-party CSS is delayed. */
#homes-leaflet-map{position:relative;overflow:hidden;isolation:isolate;background:#e9eee7}
#homes-leaflet-map .leaflet-pane,#homes-leaflet-map .leaflet-tile,#homes-leaflet-map .leaflet-marker-icon,#homes-leaflet-map .leaflet-marker-shadow,#homes-leaflet-map .leaflet-tile-container,#homes-leaflet-map .leaflet-pane>svg,#homes-leaflet-map .leaflet-pane>canvas{position:absolute;left:0;top:0}
#homes-leaflet-map .leaflet-tile{width:256px;height:256px;max-width:none!important;max-height:none!important;border:0;padding:0;margin:0}
#homes-leaflet-map .leaflet-map-pane,#homes-leaflet-map .leaflet-tile-pane,#homes-leaflet-map .leaflet-overlay-pane{position:absolute;left:0;top:0}
#homes-leaflet-map .leaflet-control-container{position:relative;z-index:800}
#homes-leaflet-map .leaflet-control-zoom a{background:#fff;color:#243c34}


/* Homepage hero: proportional cropping */
.hero-full-photo { background-size: cover; background-position: center center; background-repeat: no-repeat; }

/* Seasonal banner: full browser width, proportional image */
.seasonal-greeting {
  width: 100%;
  max-width: none;
  padding: 0;
  overflow: hidden;
}

.seasonal-greeting .seasonal-inner {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.seasonal-greeting .seasonal-inner img {
  display: block;
  width: 100% !important;
  max-width: none !important;
  height: auto;
  object-fit: contain;
}

/* Seamless transition between hero and seasonal banner */
.hero.hero-full-photo {
  margin-bottom: 0;
}

.seasonal-greeting {
  margin-top: 0;
  border-top: 0;
  border-bottom: 0;
  padding: 0;
}

.seasonal-greeting .seasonal-inner {
  gap: 0;
}


/* ALW information icon and popup */
.alw-status {
  position: relative;
}

.alw-info-button {
  position: relative;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-left: 7px;
  padding: 0;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: transparent;
  color: inherit;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  vertical-align: middle;
}

.alw-info-button:hover {
  background: rgba(0, 0, 0, 0.07);
}

.alw-info-button:focus-visible,
.alw-popup-close:focus-visible {
  outline: 3px solid #fa7833;
  outline-offset: 3px;
}

.facility-card .alw-status {
  position: relative;
  z-index: 2;
}

.alw-info-popup {
  position: fixed;
  z-index: 10000;
  box-sizing: border-box;
  max-height: calc(100dvh - 24px);
  overflow-y: auto;
  padding: 22px;
  border: 1px solid #d5e5dc;
  border-radius: 15px;
  background: #ffffff;
  color: #263d34;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.20);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.55;
  text-align: left;
}

.alw-info-popup h3 {
  margin: 15px 28px 5px 0;
  color: #006e56;
  font-size: 15px;
  font-weight: 700;
}

.alw-info-popup p {
  margin: 0 0 12px;
  color: #34483e;
}

.alw-popup-close {
  position: sticky;
  top: 0;
  float: right;
  width: 30px;
  height: 30px;
  border: none;
  border-radius: 50%;
  background: #edf4ef;
  color: #263d34;
  font-size: 23px;
  cursor: pointer;
}

.alw-info-popup .alw-popup-pending {
  padding: 10px 12px;
  border-radius: 8px;
  background: #fff4e5;
  color: #87501d;
  font-weight: 600;
}

@media (max-width: 480px) {
  .alw-info-popup {
    padding: 18px;
    font-size: 13px;
  }

  .alw-info-button {
    width: 26px;
    height: 26px;
  }
}

/* Compact ALW information icon */
.alw-info-button {
  width: 18px;
  height: 18px;
  font-size: 12px;
  margin-left: 5px;
  border-width: 1px;
}
@media (max-width: 480px) {
  .alw-info-button {
    width: 18px;
    height: 18px;
    font-size: 12px;
  }
}

/* Balance ALW badges with information icon on the right */
.alw-status:has(.alw-info-button) {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.facility-card .alw-status:has(.alw-info-button) {
  display: flex;
  width: 100%;
  box-sizing: border-box;
}

.alw-info-button {
  flex-shrink: 0;
  margin-left: auto;
  width: 18px;
  height: 18px;
  font-size: 12px;
}

@media (max-width: 480px) {
  .alw-info-button {
    width: 18px;
    height: 18px;
    font-size: 12px;
  }
}

/* Content-sized ALW badges, centered in facility cards */
.facility-card .alw-status:has(.alw-info-button) {
  display: flex;
  width: fit-content;
  max-width: 100%;
  margin: 0.35rem auto 0.5rem;
  padding: 0.42rem 0.75rem;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.facility-card .alw-info-button {
  margin-left: 0;
  flex-shrink: 0;
}

/* Align facility action buttons across all four cards */
.facility-card .facility-actions {
  margin-top: auto;
  padding-top: 12px;
}

/* Center facility names while keeping details readable */
.facility-card .card-body h3 {
  text-align: center;
}

/* Individual facility banners — shared responsive layout */
.page-hero .facility-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr);
  align-items: center;
  gap: clamp(28px, 4vw, 64px);
  position: relative;
  z-index: 1;
}

.page-hero .facility-hero-content {
  min-width: 0;
}

.page-hero .facility-hero-content h1 {
  font-size: clamp(36px, 4vw, 56px);
  line-height: 1.12;
  margin-bottom: 18px;
}

.page-hero .facility-hero-content .profile-location {
  line-height: 1.7;
  margin: 18px 0;
}

.page-hero .facility-hero-image {
  min-width: 0;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 18px 45px rgba(30, 55, 40, 0.16);
}

.page-hero .facility-hero-image img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 800px) {
  .page-hero .facility-hero-layout {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .page-hero .facility-hero-content h1 {
    font-size: clamp(34px, 7vw, 46px);
  }

  .page-hero .facility-hero-image img {
    aspect-ratio: 16 / 10;
  }
}


/* Summer Springs facility banner address card */
.page-hero .facility-hero-content .profile-location {
  background: #fffaf1;
  border-left: 4px solid #e88b42;
  border-radius: 0 14px 14px 0;
  padding: 18px 22px;
  margin: 22px 0;
  box-shadow: 0 4px 18px rgba(80, 65, 40, 0.05);
  font-size: 14px;
  line-height: 1.65;
}

.page-hero .facility-street-address {
  display: block;
  font-size: 19px;
  font-weight: 700;
  color: #254d3c;
  line-height: 1.4;
}

.page-hero .facility-city-address {
  display: block;
  font-size: 15px;
  color: #46594e;
  margin-bottom: 10px;
}

.page-hero .facility-neighborhood {
  display: block;
  color: #626b62;
}

.page-hero .facility-neighborhood strong {
  font-weight: 600;
}

.page-hero .profile-location a {
  display: inline-block;
  color: #bc652e;
  font-weight: 700;
  margin-top: 8px;
  text-decoration: none;
}

.page-hero .profile-location a:hover {
  text-decoration: underline;
}


/* Facility banner photograph refinements */
@media (min-width: 801px) {
  .page-hero .facility-hero-layout {
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap: clamp(24px, 3vw, 48px);
  }

  .page-hero .facility-hero-image img {
    aspect-ratio: 5 / 4;
    object-fit: cover;
    object-position: center;
  }
}

.page-hero .facility-hero-image {
  border-radius: 24px;
  box-shadow: 0 22px 50px rgba(38, 65, 47, 0.18);
}


/* Facility hero ALW badge refinements */
.page-hero .facility-hero-content .alw-status {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  max-width: 100%;
  padding: 11px 16px;
  margin: 8px 0 6px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

.page-hero .facility-hero-content .alw-approved {
  background: #e6f2e6;
  border: 1px solid #c7dfc9;
  color: #245b3c;
}

@media (max-width: 600px) {
  .page-hero .facility-hero-content .alw-status {
    font-size: 13px;
    padding: 10px 13px;
  }
}


/* Facility banner Schedule a Tour refinements */
.page-hero .facility-tour-action {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin-top: 24px;
}

.page-hero .facility-tour-action .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 13px 26px;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 700;
  box-shadow: 0 7px 18px rgba(220, 109, 43, 0.18);
}

.page-hero .facility-tour-invitation {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: #667267;
}

@media (max-width: 600px) {
  .page-hero .facility-tour-action .btn {
    min-height: 48px;
    padding: 12px 22px;
  }
}

