:root{--ink:#102f44;--navy:#07546b;--sea:#00a89d;--mint:#ddfaf4;--sky:#e1f5ff;--paper:#f8fcff;--white:#fff;--red:#ef5350;--muted:#587586;--line:#d9ebf1;--shadow:0 18px 50px rgba(7,84,107,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"IBM Plex Sans Thai",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.eyebrow{color:var(--sea);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.display{font-family:Pridi,serif;font-weight:600;letter-spacing:-.035em}.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:99;background:white;padding:12px}
header{position:sticky;top:0;z-index:50;background:rgba(247,250,248,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(220,232,229,.8)}.nav{height:78px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.mark{width:44px;height:44px;border-radius:50% 50% 50% 12px;background:var(--sea);display:grid;place-items:center;color:white;box-shadow:0 8px 24px rgba(8,127,120,.24)}.mark svg{width:23px}.brand strong{display:block;font-size:1rem;line-height:1.25}.brand small{display:block;color:var(--muted);font-size:.67rem;letter-spacing:.08em}.links{display:flex;align-items:center;gap:25px;font-size:.91rem;font-weight:500}.links a:hover{color:var(--sea)}.nav-actions{display:flex;align-items:center;gap:10px}.icon-btn,.menu-btn{border:0;background:transparent;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;cursor:pointer}.icon-btn:hover{background:white}.primary{border:0;border-radius:999px;background:var(--navy);color:white;padding:12px 20px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.2s}.primary:hover{background:var(--sea);transform:translateY(-2px)}.menu-btn{display:none;background:white}
.hero{position:relative;overflow:hidden;padding:76px 0 86px;background:linear-gradient(120deg,#f7faf8 0 58%,#e7f5f2 58%)}.hero:after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(8,127,120,.16);border-radius:50%;right:-90px;top:-150px}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:58px;align-items:center}.hero-copy h1{font-size:clamp(3.25rem,5.4vw,5.8rem);line-height:1.05;margin:14px 0 22px;max-width:720px}.hero-copy h1 span{color:var(--sea)}.hero-copy p{font-size:1.08rem;color:var(--muted);max-width:610px;margin:0 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.secondary{border:1px solid #b6ceca;background:transparent;border-radius:999px;padding:11px 20px;color:var(--navy);font-weight:600}.secondary:hover{background:white}.hero-visual{position:relative;min-height:500px}.photo{position:absolute;inset:0;border-radius:44% 44% 18px 44%;overflow:hidden;box-shadow:var(--shadow);background:#b9d7d4}.photo img{width:100%;height:100%;object-fit:cover}.photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(7,58,71,.24))}.care-card{position:absolute;left:-42px;bottom:32px;z-index:2;width:250px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-radius:20px;padding:17px;box-shadow:var(--shadow);display:flex;gap:12px;align-items:center}.pulse{width:46px;height:46px;border-radius:50%;background:var(--mint);display:grid;place-items:center;color:var(--sea);font-size:1.25rem}.care-card strong,.care-card small{display:block}.care-card small{color:var(--muted)}.emergency{position:absolute;right:-18px;top:38px;z-index:2;background:var(--red);color:white;padding:10px 15px;border-radius:999px;font-size:.83rem;font-weight:600}.path{position:absolute;z-index:1;left:-30px;top:55px;width:120px;height:170px;border-left:2px dashed rgba(8,127,120,.35);border-bottom:2px dashed rgba(8,127,120,.35);border-radius:0 0 0 60px}
.services{margin-top:-38px;position:relative;z-index:4}.service-shell{background:white;border-radius:26px;padding:12px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(6,1fr)}.service{padding:22px 16px;border-right:1px solid var(--line);border-radius:18px;transition:.2s}.service:last-child{border:0}.service:hover{background:var(--mint);transform:translateY(-3px)}.service-icon{width:44px;height:44px;border-radius:14px;background:var(--sky);display:grid;place-items:center;color:var(--navy);font-size:1.2rem}.service.em .service-icon{background:#fce8e8;color:var(--red)}.service strong{display:block;margin-top:13px;font-size:.91rem}.service small{color:var(--muted);font-size:.76rem}
section.content{padding:105px 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px;gap:30px}.section-head h2{font-size:clamp(2.1rem,4vw,3.7rem);line-height:1.18;margin:6px 0 0}.section-head p{max-width:430px;color:var(--muted);margin:0}.news-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:20px}.story{background:white;border-radius:22px;overflow:hidden;border:1px solid var(--line);transition:.25s}.story:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.story-image{height:215px;overflow:hidden}.story:first-child .story-image{height:305px}.story-image img{width:100%;height:100%;object-fit:cover;transition:.5s}.story:hover img{transform:scale(1.035)}.story-body{padding:22px}.tag{font-size:.72rem;font-weight:700;color:var(--sea);background:var(--mint);border-radius:99px;padding:5px 10px}.story time{font-size:.76rem;color:var(--muted);margin-left:8px}.story h3{font-size:1.15rem;line-height:1.45;margin:14px 0 8px}.story:first-child h3{font-size:1.45rem}.story p{font-size:.9rem;color:var(--muted);margin:0}.read{display:inline-flex;margin-top:18px;font-weight:600;color:var(--sea);font-size:.87rem}
.impact{background:var(--navy);color:white;padding:80px 0;position:relative;overflow:hidden}.impact:before{content:"";position:absolute;inset:auto -10% -220px 35%;height:380px;border-radius:50%;border:70px solid rgba(223,244,237,.06)}.impact-grid{display:grid;grid-template-columns:1.1fr 1.9fr;gap:80px;align-items:center}.impact h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.2;margin:10px 0}.impact-copy p{color:#bad0d3}.stats{display:grid;grid-template-columns:repeat(4,1fr);position:relative}.stat{padding:10px 24px;border-left:1px solid rgba(255,255,255,.2)}.stat b{display:block;font-family:Pridi,serif;font-size:2.7rem;color:#8cddcb;line-height:1.2}.stat span{font-size:.84rem;color:#d4e4e5}
.contact{padding:92px 0}.contact-box{background:var(--mint);border-radius:30px;padding:48px;display:grid;grid-template-columns:1.2fr .8fr;gap:46px;align-items:center}.contact h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.25;margin:8px 0 12px}.contact p{color:var(--muted);max-width:600px}.contact-actions{display:grid;gap:12px}.contact-link{background:white;padding:18px 20px;border-radius:16px;display:flex;justify-content:space-between;align-items:center;font-weight:600;box-shadow:0 8px 20px rgba(7,58,71,.05)}.contact-link small{display:block;color:var(--muted);font-weight:400}
footer{background:#062f39;color:#c6d9dc;padding:56px 0 110px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .8fr;gap:70px}.footer-brand{max-width:390px}.footer-brand p{color:#91adb2}.footer-title{color:white;font-weight:700;margin-bottom:14px}.footer-links{display:grid;gap:8px}.footer-note{border-top:1px solid rgba(255,255,255,.13);margin-top:38px;padding-top:20px;font-size:.78rem;color:#84a1a6}.bottom-nav{display:none}.mobile-panel{display:none}
[data-reveal]{opacity:0;transform:translateY(18px);transition:.7s ease}.revealed{opacity:1;transform:none}:focus-visible{outline:3px solid #55bfb3;outline-offset:3px}
@media(max-width:980px){.links,.nav-actions .primary{display:none}.menu-btn{display:grid}.hero{padding-top:48px}.hero-grid{grid-template-columns:1fr;gap:40px}.hero-visual{min-height:430px;max-width:650px;width:100%;margin:auto}.hero-copy h1{font-size:clamp(3.1rem,10vw,5rem)}.service-shell{grid-template-columns:repeat(3,1fr)}.service:nth-child(3){border-right:0}.service:nth-child(-n+3){border-bottom:1px solid var(--line)}.news-grid{grid-template-columns:1fr 1fr}.story:first-child{grid-column:1/-1}.impact-grid{grid-template-columns:1fr;gap:35px}.contact-box{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.mobile-panel.open{display:grid;position:fixed;inset:78px 0 auto;background:white;padding:24px 20px;box-shadow:var(--shadow);gap:16px;font-weight:600;z-index:49}}
@media(max-width:640px){.wrap{width:min(100% - 28px,1180px)}.nav{height:68px}.brand small{display:none}.brand strong{font-size:.9rem}.mark{width:39px;height:39px}.hero{padding:34px 0 62px;background:linear-gradient(180deg,#f7faf8 0 65%,#e7f5f2 65%)}.hero-copy h1{font-size:2.65rem;margin-top:10px}.hero-copy p{font-size:.95rem;line-height:1.75}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.primary,.secondary{padding:12px 10px;font-size:.88rem}.hero-visual{min-height:330px}.photo{border-radius:42% 42% 16px 42%}.care-card{left:12px;bottom:14px;width:218px;padding:12px}.emergency{right:10px;top:16px}.path{display:none}.services{margin-top:-30px}.service-shell{padding:7px;border-radius:22px}.service{padding:14px 8px}.service-icon{width:38px;height:38px;border-radius:12px}.service strong{font-size:.78rem;line-height:1.3}.service small{display:none}section.content{padding:76px 0}.section-head{display:block;margin-bottom:25px}.section-head h2{font-size:2.15rem}.section-head p{margin-top:12px;font-size:.9rem}.news-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-14px;padding-right:14px}.story,.story:first-child{min-width:84vw;scroll-snap-align:start}.story-image,.story:first-child .story-image{height:210px}.story:first-child h3{font-size:1.2rem}.impact{padding:62px 0}.stats{grid-template-columns:1fr 1fr;row-gap:25px}.stat{padding:8px 12px}.stat:nth-child(odd){border-left:0}.stat b{font-size:2.2rem}.contact{padding:70px 0}.contact-box{padding:28px 20px;border-radius:24px;gap:25px}.contact-link{padding:15px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-brand{grid-column:auto}footer{padding-bottom:110px}.bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);bottom:0;left:0;right:0;z-index:60;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:8px 4px max(8px,env(safe-area-inset-bottom));box-shadow:0 -10px 35px rgba(7,58,71,.1)}.bottom-nav a{display:grid;place-items:center;gap:2px;font-size:.65rem;color:var(--muted)}.bottom-nav a.active{color:var(--sea)}.bottom-nav .appoint{margin-top:-24px}.bottom-nav .appoint i{width:48px;height:48px;border-radius:17px;background:var(--sea);color:white;display:grid;place-items:center;font-style:normal;box-shadow:0 8px 20px rgba(8,127,120,.3)}.bottom-nav .appoint span{color:var(--sea)} }
/* Brighter coastal-healthcare palette */
header{background:rgba(255,255,255,.92);border-bottom-color:rgba(217,235,241,.9)}
.hero{background:linear-gradient(120deg,#fff 0 55%,#e8fbff 55% 78%,#defaf3 100%)}
.photo{background:#bdebf2;box-shadow:0 24px 60px rgba(0,137,164,.20)}
.service:hover{background:linear-gradient(145deg,var(--sky),var(--mint))}
.service-icon{background:linear-gradient(145deg,#d8f5ff,#e7fbff);color:#0284a4;box-shadow:inset 0 0 0 1px rgba(2,132,164,.08)}
.impact{background:linear-gradient(120deg,#07546b 0%,#007a87 55%,#009b91 100%)}
.stat b{color:#aef9e7}
.contact-box{background:linear-gradient(135deg,#e1f6ff 0%,#e4fcf6 60%,#fff6e8 100%);border:1px solid rgba(0,168,157,.1);box-shadow:0 22px 55px rgba(7,84,107,.08)}
footer{background:#063f50;color:#d1e6eb}
@media(max-width:640px){.hero{background:linear-gradient(180deg,#fff 0 58%,#e6faff 78%,#defaf3 100%)}}
/* Wide reference-led layout and one coordinated motion system */
.wrap{width:min(1380px,calc(100% - 64px))}.nav{height:84px}
.hero{padding:58px 0 116px;min-height:610px}.hero-grid{grid-template-columns:.86fr 1.14fr;gap:30px}.hero-copy{position:relative;z-index:3;padding-left:3vw}.hero-copy h1{font-family:"IBM Plex Sans Thai",sans-serif;font-size:clamp(2.55rem,3.7vw,4.45rem);line-height:1.19;letter-spacing:-.045em}.hero-copy h1 span{display:block}.hero-visual{min-height:500px;margin-right:-32px}.photo{border-radius:0;inset:-58px -32px -116px 0;box-shadow:none;mask-image:linear-gradient(90deg,transparent 0,#000 16%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16%)}.photo:after{background:linear-gradient(90deg,rgba(255,255,255,.34),transparent 32%),linear-gradient(0deg,rgba(7,84,107,.18),transparent 35%)}.care-card{left:34px;bottom:-62px}.emergency{right:30px;top:8px}
.services{margin-top:-72px}.service-shell{gap:14px;background:transparent;box-shadow:none;padding:0}.service{position:relative;background:rgba(255,255,255,.96);border:1px solid rgba(217,235,241,.8)!important;min-height:210px;padding:24px 22px;box-shadow:0 14px 36px rgba(22,71,89,.11);overflow:hidden}.service:after{content:"→";position:absolute;left:22px;bottom:18px;color:var(--sea);font-weight:700}.service:hover{transform:translateY(-9px);box-shadow:0 24px 50px rgba(0,137,164,.18)}.service-icon{width:58px;height:58px;font-size:1.45rem}.service strong{font-size:1rem}.service small{font-size:.82rem}
.news-grid{grid-template-columns:repeat(3,1fr)}.story,.story:first-child{display:grid;grid-template-columns:148px 1fr;min-height:172px}.story-image,.story:first-child .story-image{height:100%}.story-body{padding:17px}.story:first-child h3,.story h3{font-size:1rem;margin:10px 0 5px}.story p{font-size:.8rem}.read{margin-top:9px}.section-head h2{font-family:"IBM Plex Sans Thai",sans-serif;font-size:2rem;letter-spacing:-.03em}section.content{background:#fff}
.impact{margin:0 auto 72px;width:min(1380px,calc(100% - 64px));border-radius:22px;padding:30px 0;background:linear-gradient(100deg,#e8fbff,#e4fbf5)}.impact-grid{grid-template-columns:.75fr 2.25fr;gap:24px}.impact h2{font-size:1.55rem;color:var(--navy)}.impact-copy p{display:none}.impact .eyebrow{color:var(--sea)!important}.stat{border-left-color:#cce7e8}.stat b{font-family:"IBM Plex Sans Thai",sans-serif;color:var(--sea);font-size:2rem}.stat span{color:var(--muted)}
.primary{position:relative;overflow:hidden}.primary:after{content:"";position:absolute;inset:0;transform:translateX(-130%);background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);animation:buttonSheen 5s 2.2s infinite}.hero-copy{animation:heroIn .9s cubic-bezier(.2,.8,.2,1) both}.hero-visual{animation:visualIn 1.15s .12s cubic-bezier(.2,.8,.2,1) both}.photo img{animation:heroBreath 12s ease-in-out infinite alternate}.service{animation:cardIn .7s cubic-bezier(.2,.8,.2,1) both}.service:nth-child(1){animation-delay:.32s}.service:nth-child(2){animation-delay:.39s}.service:nth-child(3){animation-delay:.46s}.service:nth-child(4){animation-delay:.53s}.service:nth-child(5){animation-delay:.60s}.service:nth-child(6){animation-delay:.67s}.pulse{animation:pulseSoft 2.4s ease-in-out infinite}.emergency{animation:floatBadge 3s ease-in-out infinite}
@keyframes heroIn{from{opacity:0;transform:translateX(-36px)}to{opacity:1;transform:none}}@keyframes visualIn{from{opacity:0;transform:scale(1.04) translateX(40px)}to{opacity:1;transform:none}}@keyframes cardIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes heroBreath{to{transform:scale(1.045)}}@keyframes buttonSheen{0%,72%{transform:translateX(-130%)}90%,100%{transform:translateX(130%)}}@keyframes pulseSoft{50%{transform:scale(1.08);box-shadow:0 0 0 8px rgba(0,168,157,.08)}}@keyframes floatBadge{50%{transform:translateY(-7px)}}
@media(max-width:980px){.wrap{width:min(100% - 36px,1380px)}.hero{padding-bottom:104px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding-left:0}.hero-visual{margin:0}.photo{inset:0;mask-image:none;-webkit-mask-image:none;border-radius:24px}.services{margin-top:-58px}.service-shell{gap:10px}.service{min-height:175px}.news-grid{grid-template-columns:1fr}.impact{width:calc(100% - 36px)}.impact-grid{grid-template-columns:1fr}.impact-copy{padding:0 20px}.stats{grid-template-columns:repeat(4,1fr)}}
@media(max-width:640px){.wrap{width:min(100% - 28px,1380px)}.hero{padding:30px 0 92px;min-height:auto}.hero-copy h1{font-size:2.3rem}.hero-visual{min-height:300px}.photo{inset:0}.care-card{left:12px;bottom:12px}.services{margin-top:-48px}.service-shell{gap:8px}.service{min-height:142px;padding:14px 10px}.service-icon{width:42px;height:42px;font-size:1.1rem}.service:after{left:10px;bottom:10px}.news-grid{display:flex}.story,.story:first-child{display:block;min-width:84vw}.story-image,.story:first-child .story-image{height:190px}.impact{width:calc(100% - 28px);margin-bottom:40px}.stats{grid-template-columns:1fr 1fr}}
/* Positioning QA fixes */
.hero-grid,.nav,.service-shell,.news-grid,.impact-grid,.footer-grid{min-width:0}.hero-copy,.hero-visual,.story,.service{min-width:0}
.hero .care-card,.hero .path{display:none}.hero .emergency{top:24px;right:24px}
section.content{padding:72px 0 82px}.section-head{margin-bottom:28px}.services+.content{position:relative}
.service-shell{align-items:stretch}.service{height:100%}.story-body{align-self:center}.story h3{overflow-wrap:anywhere}
@media(max-width:1180px) and (min-width:981px){.wrap{width:calc(100% - 40px)}.links{gap:15px;font-size:.82rem}.nav{gap:16px}.hero{min-height:570px}.hero-copy{padding-left:0}.hero-copy h1{font-size:3.25rem}.service{padding:20px 16px}.service strong{font-size:.9rem}.service small{font-size:.76rem}}
@media(max-width:980px){.hero{padding-top:42px}.hero-copy{max-width:720px}.hero-visual{min-height:390px}.hero .emergency{top:16px;right:16px}.service-shell{align-items:stretch}.service{height:auto}.news-grid{gap:14px}.story,.story:first-child{grid-template-columns:190px 1fr}.impact{padding:38px 0}.stats{padding:0 16px}}
@media(max-width:640px){header .nav{height:68px}.hero{padding-bottom:76px}.hero-copy h1{line-height:1.25}.hero-copy h1 span{margin-top:4px}.hero-copy p{margin-bottom:22px}.hero-visual{min-height:270px;margin-top:8px}.hero .emergency{font-size:.72rem;padding:7px 11px}.services{margin-top:-38px}.service-shell{grid-template-columns:repeat(3,minmax(0,1fr))}.service{min-height:138px}.service strong{font-size:.74rem}.service:after{font-size:.85rem}section.content{padding:62px 0 68px}.section-head{margin-bottom:20px}.story,.story:first-child{display:block}.impact{padding:28px 0}.impact-copy{padding:0 16px}.stat{padding:8px}.stat b{font-size:1.8rem}.stat span{font-size:.72rem}}
/* Mobile/tablet correction based on visual QA */
.care-card,.hero .care-card,.path,.hero .path{display:none!important}
@media(max-width:768px){
  body{overflow-x:hidden}.wrap{width:calc(100% - 28px)}
  .hero{padding:28px 0 58px;background:linear-gradient(180deg,#fff 0 58%,#e8fbff 100%)}
  .hero-grid{display:block}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:.68rem}.hero-copy h1{font-size:clamp(2rem,8vw,2.65rem);line-height:1.25;margin:8px 0 14px}.hero-copy p{font-size:.9rem;line-height:1.7;margin-bottom:20px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-actions a{min-height:46px}
  .hero-visual{min-height:250px;margin:28px 0 0}.photo{inset:0;border-radius:22px;mask-image:none;-webkit-mask-image:none}.photo img{object-position:center}.hero .emergency{top:12px;right:12px}
  .services{margin-top:-24px}.service-shell{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0}.service,.service:nth-child(-n+3){min-height:132px;height:auto;padding:14px 14px 32px;border:1px solid var(--line)!important;border-radius:17px}.service-icon{width:40px;height:40px;border-radius:12px;font-size:1.05rem}.service strong{margin-top:9px;font-size:.82rem;line-height:1.35}.service small{display:block;margin-top:3px;font-size:.7rem;line-height:1.4}.service:after{left:14px;bottom:9px}
  section.content{padding:56px 0}.section-head h2{font-size:1.65rem}.section-head p{font-size:.84rem}.news-grid{display:grid;grid-template-columns:1fr;overflow:visible;margin:0;padding:0}.story,.story:first-child{display:grid;grid-template-columns:112px 1fr;min-width:0;min-height:142px}.story-image,.story:first-child .story-image{height:100%}.story-body{padding:13px}.story p{display:none}.story:first-child h3,.story h3{font-size:.9rem}.tag{font-size:.62rem}.story time{font-size:.66rem}
  .impact{width:calc(100% - 28px);margin-bottom:42px;padding:26px 0}.impact-grid{display:block}.impact-copy{padding:0 16px 18px}.impact h2{font-size:1.4rem}.stats{grid-template-columns:1fr 1fr;padding:0 8px;gap:14px 0}.stat{padding:8px 12px}.stat:nth-child(odd){border-left:0}.stat b{font-size:1.75rem}.stat span{font-size:.7rem}
  .contact{padding:50px 0}.contact-box{padding:24px 16px}.contact h2{font-size:1.8rem}.contact-link{padding:13px 14px;font-size:.86rem}.footer-grid{gap:24px}
}
@media(max-width:390px){.hero-actions{grid-template-columns:1fr}.service{padding-left:11px;padding-right:11px}.service strong{font-size:.76rem}.service small{font-size:.66rem}.story,.story:first-child{grid-template-columns:96px 1fr}}
/* Signature: Bangsaphan care path */
.today-line{margin-top:28px;padding-top:18px;border-top:1px solid rgba(7,84,107,.14);display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:.78rem;color:var(--muted)}.today-line strong{color:var(--ink)}.today-line a{margin-left:auto;color:var(--sea);font-weight:700}.live-dot{width:8px;height:8px;border-radius:50%;background:#22b889;box-shadow:0 0 0 0 rgba(34,184,137,.35);animation:livePing 2s infinite}
.care-path{position:relative;padding:118px 0 98px;overflow:hidden;background:#f3fbfd}.care-path:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;border:1px solid rgba(0,168,157,.14);right:-150px;top:-210px;box-shadow:0 0 0 55px rgba(0,168,157,.025),0 0 0 110px rgba(0,168,157,.018)}.care-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.care-intro h2{font-size:clamp(2.5rem,4.2vw,4.8rem);line-height:1.13;margin:11px 0 18px}.care-intro>p{max-width:570px;color:var(--muted)}.care-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.care-tab{border:1px solid #c9e3e8;background:white;color:var(--navy);border-radius:999px;padding:10px 16px;cursor:pointer;font-weight:600;transition:.25s}.care-tab:hover{transform:translateY(-2px);border-color:var(--sea)}.care-tab.active{background:var(--navy);border-color:var(--navy);color:white}.care-tab.urgent.active{background:var(--red);border-color:var(--red)}
.route-card{position:relative;min-height:390px;background:linear-gradient(145deg,#07546b,#067d85);color:white;border-radius:34px 34px 34px 8px;padding:42px;overflow:hidden;box-shadow:0 28px 70px rgba(7,84,107,.25);transition:background .35s,transform .35s}.route-card.switching{transform:scale(.985)}.route-card.urgent-mode{background:linear-gradient(145deg,#b7333f,#ef5350)}.route-card:before{content:"";position:absolute;width:210px;height:210px;border:54px solid rgba(255,255,255,.055);border-radius:50%;right:-60px;bottom:-75px}.route-top{display:flex;justify-content:space-between;align-items:center}.route-symbol{font:600 3.7rem/1 Pridi,serif;color:#9ff3de}.urgent-mode .route-symbol{color:#ffd7d7}.route-status{font-size:.75rem;padding:7px 11px;border:1px solid rgba(255,255,255,.22);border-radius:99px}.route-card h3{font-size:clamp(1.55rem,2.4vw,2.35rem);line-height:1.3;max-width:560px;margin:32px 0 12px}.route-card>p{color:rgba(255,255,255,.75);max-width:570px}.route-steps{display:flex;align-items:center;margin:29px 0 24px;font-size:.76rem}.route-steps span{white-space:nowrap}.route-steps i{height:1px;background:rgba(255,255,255,.3);flex:1;margin:0 9px;position:relative}.route-steps i:after{content:"";position:absolute;right:0;top:-2px;width:5px;height:5px;background:#9ff3de;border-radius:50%}.route-steps .done{color:#9ff3de}.route-card>a{display:inline-flex;gap:18px;align-items:center;color:white;font-weight:700}.route-card>a b{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:white;color:var(--navy)}.route-orbit{position:absolute;width:120px;height:120px;border:1px solid rgba(255,255,255,.15);border-radius:50%;right:38px;top:88px;animation:orbitSpin 10s linear infinite}.route-orbit span{position:absolute;width:12px;height:12px;border-radius:50%;background:#9ff3de;left:50%;top:-6px;box-shadow:0 0 20px #9ff3de}
@keyframes livePing{70%{box-shadow:0 0 0 8px rgba(34,184,137,0)}}@keyframes orbitSpin{to{transform:rotate(360deg)}}
@media(max-width:980px){.care-path{padding:82px 0}.care-layout{grid-template-columns:1fr;gap:36px}.care-intro h2{font-size:3.2rem}.route-card{min-height:350px}}
@media(max-width:768px){.today-line{margin-top:20px}.today-line a{width:100%;margin:2px 0 0 17px}.care-path{padding:66px 0}.care-layout{gap:26px}.care-intro h2{font-size:2.3rem}.care-tabs{display:grid;grid-template-columns:1fr 1fr;margin-top:22px}.care-tab.urgent{grid-column:1/-1}.route-card{min-height:360px;padding:26px 20px;border-radius:25px 25px 25px 7px}.route-symbol{font-size:2.8rem}.route-status{font-size:.66rem}.route-card h3{font-size:1.45rem;margin-top:27px}.route-card>p{font-size:.83rem}.route-steps{font-size:.64rem}.route-orbit{width:90px;height:90px;right:18px;top:76px}}
/* Bright Coastal Healthcare palette */
:root{--ink:#092f4a;--navy:#075f85;--sea:#00b8a9;--mint:#d9fff5;--sky:#dcf5ff;--paper:#f8fdff;--red:#ff5d6c;--muted:#527489;--line:#d5ebf3;--shadow:0 18px 52px rgba(0,116,158,.14)}
body{background:linear-gradient(180deg,#fff 0,#f7fdff 58%,#fff 100%)}
.mark{background:linear-gradient(145deg,#00cdbb,#0798c8);box-shadow:0 9px 26px rgba(0,184,169,.28)}
.primary{background:linear-gradient(120deg,#007ba7,#00b8a9);box-shadow:0 10px 25px rgba(0,145,163,.22)}.primary:hover{background:linear-gradient(120deg,#006e98,#00a898)}
.hero{background:radial-gradient(circle at 8% 12%,rgba(255,220,106,.22),transparent 18%),radial-gradient(circle at 78% 25%,rgba(71,207,255,.28),transparent 28%),linear-gradient(120deg,#fff 0 48%,#e6f9ff 72%,#dcfff4 100%)}.hero:before{content:"";position:absolute;width:150px;height:150px;border-radius:42% 58% 65% 35%;background:linear-gradient(145deg,rgba(255,201,84,.22),rgba(255,105,126,.12));left:-52px;bottom:70px;animation:colorFloat 9s ease-in-out infinite alternate}.hero-copy h1 span{background:linear-gradient(90deg,#009fb0,#00b88a);-webkit-background-clip:text;background-clip:text;color:transparent}.today-line{background:rgba(255,255,255,.62);border:1px solid rgba(0,184,169,.12);border-radius:14px;padding:12px 14px;margin-top:24px;box-shadow:0 8px 25px rgba(7,95,133,.06)}
.service{border-top:4px solid #24b7e5!important;background:linear-gradient(180deg,#fff,#f8fdff)}.service:nth-child(2){border-top-color:#2fd29f!important}.service:nth-child(3){border-top-color:#ff6675!important}.service:nth-child(4){border-top-color:#9a7cf2!important}.service:nth-child(5){border-top-color:#ffb63d!important}.service:nth-child(6){border-top-color:#3d92ff!important}.service:nth-child(1) .service-icon{background:#ddf7ff;color:#008ab8}.service:nth-child(2) .service-icon{background:#dcfaec;color:#0a9c69}.service:nth-child(3) .service-icon{background:#ffe3e6;color:#ef4254}.service:nth-child(4) .service-icon{background:#eee7ff;color:#7455d9}.service:nth-child(5) .service-icon{background:#fff0d5;color:#e58c00}.service:nth-child(6) .service-icon{background:#e4efff;color:#2177e7}.service:hover{background:linear-gradient(145deg,#fff,#ecfbff);border-top-width:6px!important}
.care-path{background:radial-gradient(circle at 92% 14%,rgba(255,205,92,.2),transparent 18%),linear-gradient(135deg,#effbff,#eafff7 62%,#fff8e8)}.care-tab.active{background:linear-gradient(120deg,#087fb0,#00b8a9);border-color:transparent;box-shadow:0 8px 20px rgba(0,157,169,.2)}.route-card{background:linear-gradient(135deg,#087fb0 0%,#00aeba 48%,#00bd91 100%);box-shadow:0 28px 70px rgba(0,143,170,.28)}.route-card.urgent-mode{background:linear-gradient(135deg,#e73c5d,#ff6f61 62%,#ff9a55)}.route-symbol,.route-steps .done{color:#c4fff0}.route-card>a b{color:#00859d}
section.content{background:linear-gradient(180deg,#fff,#f7fcff)}.story{border-color:#d9edf4;box-shadow:0 9px 26px rgba(0,116,158,.07)}.story:nth-child(1) .tag{background:#dbf8ff;color:#007fa7}.story:nth-child(2) .tag{background:#dcfaec;color:#07885d}.story:nth-child(3) .tag{background:#eee8ff;color:#6d4fd2}.story:hover{box-shadow:0 22px 45px rgba(0,145,175,.16)}
.impact{background:linear-gradient(100deg,#dff7ff 0%,#ddfff5 55%,#fff2cf 100%);border:1px solid rgba(0,184,169,.1);box-shadow:0 18px 45px rgba(0,116,158,.08)}.stat b{background:linear-gradient(90deg,#008fbd,#00ae8a);-webkit-background-clip:text;background-clip:text;color:transparent}
.contact-box{background:radial-gradient(circle at 8% 10%,rgba(255,191,71,.25),transparent 22%),linear-gradient(135deg,#ddf7ff,#dffff4 60%,#fff1d8)}.contact-link{border-left:4px solid #24b7e5}.contact-link:nth-child(2){border-left-color:#2fd29f}.contact-link:nth-child(3){border-left-color:#ffb63d}
footer{background:linear-gradient(135deg,#07536f,#056b77 55%,#08786a)}
@keyframes colorFloat{to{transform:translate(35px,-20px) rotate(18deg);border-radius:63% 37% 38% 62%}}
@media(max-width:768px){.hero{background:radial-gradient(circle at 5% 5%,rgba(255,220,106,.2),transparent 20%),linear-gradient(180deg,#fff 0 55%,#e1f8ff 82%,#ddfff5 100%)}.today-line{padding:10px 12px}.service{border-top-width:3px!important}.service:hover{border-top-width:3px!important}.care-path{background:linear-gradient(160deg,#effbff,#e9fff6 70%,#fff7e4)}}
/* Refined quick-service cards */
.service-shell{gap:16px}.service{display:flex;flex-direction:column;min-height:238px;padding:22px 20px 18px;border-radius:22px;background:rgba(255,255,255,.96);box-shadow:0 12px 32px rgba(8,86,116,.10);isolation:isolate}.service:before{content:"";position:absolute;width:100px;height:100px;border-radius:50%;background:currentColor;opacity:.045;right:-35px;top:-35px;z-index:-1;transition:.35s}.service:after{display:none}.service:hover:before{transform:scale(1.45)}.service-icon{width:54px;height:54px;border-radius:17px;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}.service-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.service:hover .service-icon{transform:translateY(-3px) rotate(-3deg);box-shadow:0 10px 22px rgba(0,120,160,.15)}.service-copy{display:block}.service strong{margin-top:17px;font-size:.98rem;line-height:1.4}.service small{display:block;margin-top:5px;font-size:.77rem;line-height:1.55}.service-go{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:15px;border-top:1px solid var(--line);font-size:.72rem;font-weight:700;color:var(--muted);transition:.25s}.service-go b{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#eef9fc;color:var(--sea);font-size:.85rem;transition:.25s}.service:hover .service-go{color:var(--sea)}.service:hover .service-go b{background:var(--sea);color:white;transform:rotate(45deg)}.service.em .service-go b{color:var(--red);background:#fff0f1}.service.em:hover .service-go{color:var(--red)}.service.em:hover .service-go b{background:var(--red);color:white}
@media(max-width:1180px) and (min-width:981px){.service{padding:18px 14px;min-height:220px}.service strong{font-size:.86rem}.service small{font-size:.7rem}.service-go{font-size:.66rem}}
@media(max-width:768px){.service-shell{gap:10px}.service,.service:nth-child(-n+3){min-height:168px;padding:13px 13px 11px}.service-icon{width:42px;height:42px;border-radius:13px}.service-icon svg{width:22px;height:22px}.service strong{margin-top:9px;font-size:.79rem}.service small{font-size:.68rem;line-height:1.4}.service-go{padding-top:8px;font-size:.65rem}.service-go b{width:24px;height:24px}}
@media(max-width:390px){.service small{display:none}.service{min-height:145px}.service-go{border-top:0;padding-top:5px}}
/* Clinical Professional palette */
:root{--ink:#102f44;--navy:#0b4f68;--sea:#148a83;--mint:#e5f4f1;--sky:#e8f3f7;--paper:#f7fafb;--red:#c94d58;--muted:#627985;--line:#dce8eb;--shadow:0 18px 48px rgba(16,62,79,.12)}
body{background:#f8fbfc}.mark{background:#148a83;box-shadow:0 8px 22px rgba(20,138,131,.2)}.primary{background:#0b6476;box-shadow:0 8px 20px rgba(11,100,118,.18)}.primary:hover{background:#148a83}
.hero{background:linear-gradient(120deg,#fff 0 49%,#edf6f8 72%,#e5f3f0 100%)}.hero:before{background:rgba(20,138,131,.08)}.hero-copy h1 span{background:none;-webkit-background-clip:initial;background-clip:initial;color:#148a83}.today-line{background:rgba(255,255,255,.72);border-color:#dce8eb;box-shadow:0 7px 20px rgba(16,62,79,.05)}
.service{background:#fff;border-top:3px solid #6aa9bd!important;box-shadow:0 10px 27px rgba(16,62,79,.09)}.service:nth-child(2){border-top-color:#67a997!important}.service:nth-child(3){border-top-color:#c96b73!important}.service:nth-child(4){border-top-color:#8b83ad!important}.service:nth-child(5){border-top-color:#b89a62!important}.service:nth-child(6){border-top-color:#668fae!important}.service:nth-child(1) .service-icon{background:#e5f2f6;color:#277e9b}.service:nth-child(2) .service-icon{background:#e6f3ee;color:#39866d}.service:nth-child(3) .service-icon{background:#f7e8e9;color:#b84954}.service:nth-child(4) .service-icon{background:#efedf5;color:#716994}.service:nth-child(5) .service-icon{background:#f6f0e4;color:#927744}.service:nth-child(6) .service-icon{background:#e9eff4;color:#527d9d}.service:hover{background:#fbfdfd;box-shadow:0 18px 38px rgba(16,62,79,.13)}.service-go b{background:#edf4f5;color:#148a83}.service:hover .service-go b{background:#148a83}
.care-path{background:linear-gradient(135deg,#f1f7f8,#eaf4f1 70%,#f6f4ed)}.care-tab.active{background:#0b6476;box-shadow:0 7px 17px rgba(11,100,118,.16)}.route-card{background:linear-gradient(140deg,#0b4f68,#117b7b);box-shadow:0 24px 58px rgba(11,79,104,.22)}.route-card.urgent-mode{background:linear-gradient(140deg,#a63f4a,#ce5960)}
section.content{background:#fff}.story{border-color:#dce8eb;box-shadow:0 7px 22px rgba(16,62,79,.06)}.story:nth-child(1) .tag{background:#e7f2f5;color:#34768c}.story:nth-child(2) .tag{background:#e7f3ed;color:#3b806a}.story:nth-child(3) .tag{background:#efedf5;color:#6d668f}.story:hover{box-shadow:0 16px 34px rgba(16,62,79,.11)}
.impact{background:linear-gradient(100deg,#edf6f8,#e8f4f0);border-color:#d9e8e7;box-shadow:0 12px 32px rgba(16,62,79,.06)}.stat b{background:none;-webkit-background-clip:initial;background-clip:initial;color:#148a83}.contact-box{background:linear-gradient(135deg,#edf6f8,#e7f3f0 70%,#f4f1e9)}.contact-link{border-left-color:#6aa9bd}.contact-link:nth-child(2){border-left-color:#67a997}.contact-link:nth-child(3){border-left-color:#b89a62}footer{background:linear-gradient(135deg,#0b4055,#0d5c65)}
@media(max-width:768px){.hero{background:linear-gradient(180deg,#fff 0 57%,#edf6f8 82%,#e6f3f0 100%)}.service,.service:hover{border-top-width:3px!important}.care-path{background:linear-gradient(160deg,#f1f7f8,#eaf4f1)}}
/* Confident Daylight: bright, credible, not muted */
:root{--ink:#12324a;--navy:#075f82;--sea:#00a99d;--mint:#def8f1;--sky:#e2f5fc;--paper:#fbfeff;--red:#e45460;--muted:#587487;--line:#d8eaf0;--shadow:0 18px 48px rgba(0,103,139,.13)}
body{background:#fbfeff}.mark{background:linear-gradient(145deg,#00b9a9,#058ab4);box-shadow:0 8px 24px rgba(0,169,157,.22)}.primary{background:linear-gradient(120deg,#087da0,#00a99d);box-shadow:0 9px 23px rgba(0,137,153,.2)}.primary:hover{background:linear-gradient(120deg,#076e91,#00988e)}
.hero{background:radial-gradient(circle at 8% 12%,rgba(255,211,103,.13),transparent 20%),linear-gradient(120deg,#fff 0 48%,#e9f8fd 72%,#e2f8f1 100%)}.hero:before{background:linear-gradient(145deg,rgba(255,201,84,.12),rgba(0,169,157,.08))}.hero-copy h1 span{color:#008f91}.today-line{background:rgba(255,255,255,.82);border-color:#d5e9ee;box-shadow:0 8px 24px rgba(0,103,139,.07)}
.service{background:linear-gradient(180deg,#fff,#fbfeff);box-shadow:0 11px 30px rgba(0,103,139,.095)}.service:nth-child(1){border-top-color:#3aa8cc!important}.service:nth-child(2){border-top-color:#45b18d!important}.service:nth-child(3){border-top-color:#df626c!important}.service:nth-child(4){border-top-color:#8c7bc1!important}.service:nth-child(5){border-top-color:#c89b49!important}.service:nth-child(6){border-top-color:#548fc2!important}.service:nth-child(1) .service-icon{background:#e0f5fb;color:#1489af}.service:nth-child(2) .service-icon{background:#e0f7ed;color:#258d68}.service:nth-child(3) .service-icon{background:#fbe5e7;color:#cb4551}.service:nth-child(4) .service-icon{background:#eee9fa;color:#735fb0}.service:nth-child(5) .service-icon{background:#fbefd8;color:#a97821}.service:nth-child(6) .service-icon{background:#e6f0fa;color:#3d7fb5}.service:hover{background:#fff;box-shadow:0 19px 42px rgba(0,120,153,.15)}
.care-path{background:radial-gradient(circle at 90% 8%,rgba(255,211,103,.13),transparent 22%),linear-gradient(135deg,#eefaff,#e5f8f2 72%,#fffaf0)}.care-tab.active{background:linear-gradient(120deg,#087da0,#00a99d);box-shadow:0 7px 18px rgba(0,145,153,.18)}.route-card{background:linear-gradient(140deg,#086786,#078a91 58%,#00a184);box-shadow:0 25px 62px rgba(0,112,139,.24)}.route-card.urgent-mode{background:linear-gradient(140deg,#b94250,#df5f62)}
section.content{background:linear-gradient(180deg,#fff,#f9fdff)}.story{box-shadow:0 8px 24px rgba(0,103,139,.07)}.story:hover{box-shadow:0 18px 38px rgba(0,115,150,.13)}.impact{background:linear-gradient(100deg,#e8f7fc,#e4f7f1 65%,#f9f3e5);box-shadow:0 13px 34px rgba(0,103,139,.07)}.stat b{color:#008f91}.contact-box{background:linear-gradient(135deg,#e7f7fc,#e2f7f0 70%,#fbf3e4)}footer{background:linear-gradient(135deg,#07506d,#076d72)}
@media(max-width:768px){.hero{background:linear-gradient(180deg,#fff 0 57%,#e9f8fd 82%,#e2f8f1 100%)}.care-path{background:linear-gradient(160deg,#eefaff,#e5f8f2)}}
/* Official Bangsaphan Hospital identity */
.mark{width:54px;height:54px;padding:3px;border-radius:50%;overflow:hidden;background:#fff;border:1px solid #d9e8eb;box-shadow:0 7px 20px rgba(0,103,139,.12)}.mark img{width:100%;height:100%;object-fit:contain;border-radius:50%;transform:scale(1.08)}.brand{gap:13px}.brand strong{font-size:1.04rem}.brand small{color:#6a8290}
.photo img{object-position:52% center;filter:saturate(.94) contrast(1.02)}.photo:after{background:linear-gradient(90deg,rgba(255,255,255,.52) 0,rgba(255,255,255,.12) 24%,transparent 48%),linear-gradient(0deg,rgba(7,74,91,.14),transparent 38%)}
.footer-brand .mark{width:62px;height:62px;border-color:rgba(255,255,255,.3)}
@media(max-width:768px){.mark{width:44px;height:44px}.brand strong{font-size:.88rem}.hero-visual{min-height:280px}.photo img{object-position:57% center}.photo:after{background:linear-gradient(0deg,rgba(7,74,91,.18),transparent 45%)}}
/* Official-logo daylight system: formal through structure, bright through color */
:root{--ink:#12385a;--navy:#176fa6;--sea:#35b9bf;--mint:#e7fbf8;--sky:#eaf7ff;--paper:#fff;--red:#e34f5f;--muted:#5c7890;--line:#dbeaf2;--gold:#d5b477;--shadow:0 18px 48px rgba(34,133,190,.14)}
body{background:#fff;color:#12385a}.eyebrow{color:#2384bd}.mark{border:2px solid #e7d5b3;box-shadow:0 7px 22px rgba(36,137,193,.15)}header{background:rgba(255,255,255,.96);border-bottom:2px solid #edf4f7}.links a:first-child{color:#2188c4}.primary{background:linear-gradient(110deg,#2088c5,#35b9bf);box-shadow:0 9px 24px rgba(33,136,196,.24)}.primary:hover{background:linear-gradient(110deg,#1878b2,#27aab1)}.secondary{border-color:#50a7c9;color:#176fa6;background:rgba(255,255,255,.72)}
.hero{background:#f5fbff}.hero:before{background:rgba(213,180,119,.13)}.hero-copy h1{color:#12385a}.hero-copy h1 span{color:#178bc0}.hero-copy p{color:#4f7089}.today-line{background:#fff;border-left:4px solid #d5b477;border-top-color:#e2edf2;box-shadow:0 9px 26px rgba(35,126,176,.09)}.live-dot{background:#32b89a}
.photo{background:#dcefff}.photo img{object-position:54% 48%;filter:brightness(1.08) contrast(1.04) saturate(.88)}.photo:after{background:linear-gradient(90deg,#f5fbff 0,rgba(245,251,255,.91) 8%,rgba(245,251,255,.48) 21%,transparent 43%),linear-gradient(0deg,rgba(15,75,105,.1),transparent 42%)}.hero .emergency{background:#e34f5f;box-shadow:0 8px 20px rgba(227,79,95,.22)}
.service{background:#fff;border-top-width:4px!important;box-shadow:0 12px 32px rgba(27,112,163,.11)}.service:nth-child(1){border-top-color:#36a8d7!important}.service:nth-child(2){border-top-color:#47bfa2!important}.service:nth-child(3){border-top-color:#e75a68!important}.service:nth-child(4){border-top-color:#8077bb!important}.service:nth-child(5){border-top-color:#d5a849!important}.service:nth-child(6){border-top-color:#4c91cf!important}.service:nth-child(1) .service-icon{background:#e5f6fd;color:#1591c4}.service:nth-child(2) .service-icon{background:#e4f9f1;color:#22a17e}.service:nth-child(3) .service-icon{background:#fde8ea;color:#d84352}.service:nth-child(4) .service-icon{background:#efedfb;color:#6d61ad}.service:nth-child(5) .service-icon{background:#fff3dc;color:#bd8928}.service:nth-child(6) .service-icon{background:#e8f2fc;color:#347fbd}.service:hover{background:#fff;box-shadow:0 20px 44px rgba(28,132,184,.17)}.service-go b{background:#edf8fc;color:#2088c5}.service:hover .service-go b{background:#2088c5}
.care-path{background:linear-gradient(135deg,#f2faff,#ebfbf7 72%,#fffaf0)}.care-path:after{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#278cc5 0 44%,#35b9bf 44% 82%,#d5b477 82%)}.care-tab.active{background:#2088c5;box-shadow:0 7px 20px rgba(32,136,197,.22)}.route-card{background:linear-gradient(135deg,#176fa6,#218ca9 58%,#32aaa4);box-shadow:0 26px 64px rgba(24,119,161,.27)}.route-card.urgent-mode{background:linear-gradient(135deg,#b83d4b,#e05a61)}
section.content{background:#fff}.story{border-color:#dbeaf2;box-shadow:0 9px 27px rgba(31,120,172,.08)}.story:hover{box-shadow:0 19px 40px rgba(31,120,172,.14)}.impact{background:linear-gradient(100deg,#eaf7ff,#e7faf5 68%,#fff6e4);border-top:3px solid #d5b477}.stat b{color:#2088c5}.contact-box{background:linear-gradient(135deg,#eaf7ff,#e6faf5 70%,#fff6e8)}.contact-link{border-left-color:#2d99cc}.contact-link:nth-child(2){border-left-color:#43b69b}.contact-link:nth-child(3){border-left-color:#d5a849}footer{background:linear-gradient(135deg,#176896,#197f8b)}
@media(max-width:768px){.hero{background:#f5fbff}.photo img{object-position:55% 50%;filter:brightness(1.07) contrast(1.03) saturate(.9)}.photo:after{background:linear-gradient(0deg,rgba(15,75,105,.14),transparent 48%)}.service,.service:hover{border-top-width:3px!important}.care-path{background:linear-gradient(160deg,#f2faff,#ebfbf7)}}
/* Responsive hospital photography */
.hero-visual,.photo{max-width:100%}.photo img{width:100%;height:100%;object-fit:cover;object-position:54% 48%}
@media(min-width:1400px){.hero-visual{min-height:520px}.photo img{object-position:52% 48%}}
@media(max-width:1399px) and (min-width:1181px){.hero-visual{min-height:480px}.photo img{object-position:58% 48%}}
@media(max-width:1180px) and (min-width:981px){.hero-visual{min-height:445px;margin-right:-20px}.photo{right:-20px}.photo img{object-position:61% 48%}}
@media(max-width:980px){.hero-visual{width:100%;max-width:none;min-height:0!important;height:auto;aspect-ratio:16/9;margin:30px 0 0}.photo{inset:0!important;width:100%;height:100%;border-radius:24px;mask-image:none;-webkit-mask-image:none}.photo img{object-position:center center;animation:none}.photo:after{background:linear-gradient(0deg,rgba(15,75,105,.12),transparent 42%)}.hero .emergency{top:14px;right:14px}}
@media(max-width:768px){.hero-visual{aspect-ratio:16/9;margin-top:24px}.photo{border-radius:20px}.photo img{object-fit:cover;object-position:center center}.hero .emergency{font-size:.68rem;padding:7px 10px}}
@media(max-width:430px){.hero-visual{width:calc(100% + 8px);margin-left:-4px;aspect-ratio:16/9}.photo{border-radius:17px}.hero .emergency{top:9px;right:9px}}
/* Space between quick cards and the next section */
.services{margin-bottom:48px}.care-path:after{height:4px;opacity:.78}
@media(max-width:980px){.services{margin-bottom:38px}}
@media(max-width:768px){.services{margin-bottom:30px}.care-path:after{height:3px}}
@media(max-width:430px){.services{margin-bottom:24px}}
/* Keep primary service navigation inside the first viewport */
.hero{min-height:520px;padding-top:44px;padding-bottom:98px}.hero-visual{min-height:440px}.hero-copy h1{margin-top:9px;margin-bottom:16px}.hero-copy p{margin-bottom:22px}.services{margin-top:-86px}.service{min-height:214px;padding-top:18px}.service strong{margin-top:12px}
@media(min-width:1400px){.hero{min-height:540px}.hero-visual{min-height:460px}}
@media(max-width:1180px) and (min-width:981px){.hero{min-height:500px;padding-top:38px}.hero-visual{min-height:410px}.services{margin-top:-78px}.service{min-height:202px}}
@media(max-width:980px){.hero{min-height:auto;padding-top:34px;padding-bottom:70px}.hero-visual{min-height:0}.services{margin-top:-34px}}
@media(max-width:768px){.hero{padding-top:24px;padding-bottom:54px}.hero-copy h1{margin-bottom:10px}.hero-copy p{margin-bottom:16px}.hero-visual{margin-top:20px}.services{margin-top:-22px}.service{min-height:158px}}
@media(max-width:430px){.hero{padding-bottom:48px}.service{min-height:148px}}
.hero-copy>p{margin-bottom:0}.hero{min-height:500px;padding-bottom:82px}.services{margin-top:-78px}
@media(max-width:980px){.hero{padding-bottom:58px}.services{margin-top:-28px}}
@media(max-width:768px){.hero{padding-bottom:46px}.services{margin-top:-18px}}
/* Slightly taller hospital image */
.hero{min-height:530px}.hero-visual{min-height:480px}.photo{bottom:-94px}
@media(min-width:1400px){.hero{min-height:555px}.hero-visual{min-height:505px}}
@media(max-width:1180px) and (min-width:981px){.hero{min-height:520px}.hero-visual{min-height:450px}}
@media(max-width:980px){.hero{min-height:auto}.hero-visual{min-height:0;aspect-ratio:16/9.5}.photo{bottom:0}}
@media(max-width:768px){.hero-visual{aspect-ratio:16/10}}
@media(max-width:430px){.hero-visual{aspect-ratio:16/10.4}}
/* Keep service cards below the hospital photo */
.hero{padding-bottom:42px}.photo{bottom:0}.services{margin-top:24px}
@media(min-width:1400px){.hero{padding-bottom:46px}.services{margin-top:26px}}
@media(max-width:1180px) and (min-width:981px){.hero{padding-bottom:38px}.services{margin-top:22px}}
@media(max-width:980px){.hero{padding-bottom:30px}.services{margin-top:18px}}
@media(max-width:768px){.hero{padding-bottom:24px}.services{margin-top:16px}}
@media(max-width:430px){.hero{padding-bottom:20px}.services{margin-top:14px}}
/* Pull service cards closer without covering the photo */
.hero{padding-bottom:16px}.services{margin-top:8px}
@media(min-width:1400px){.hero{padding-bottom:18px}.services{margin-top:8px}}
@media(max-width:1180px) and (min-width:981px){.hero{padding-bottom:14px}.services{margin-top:7px}}
@media(max-width:980px){.hero{padding-bottom:12px}.services{margin-top:7px}}
@media(max-width:768px){.hero{padding-bottom:10px}.services{margin-top:6px}}
@media(max-width:430px){.hero{padding-bottom:8px}.services{margin-top:5px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}[data-reveal]{opacity:1!important;transform:none!important}}

/* Formal hospital palette: navy, institutional blue, and cool neutrals */
:root{
  --ink:#172b3a;
  --navy:#173f68;
  --sea:#2f6f9f;
  --mint:#edf3f7;
  --sky:#e8f0f6;
  --paper:#f5f7f9;
  --red:#b4232f;
  --muted:#526675;
  --line:#d4dde4;
  --gold:#a88950;
  --shadow:0 16px 40px rgba(23,63,104,.12)
}
body{background:var(--paper);color:var(--ink)}
header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.mark{background:transparent;border:0;box-shadow:none}
.links a:first-child,.eyebrow,.hero-copy h1 span,.today-line a{color:var(--sea)}
.primary{background:var(--navy);box-shadow:0 8px 20px rgba(23,63,104,.2)}
.primary:hover{background:#235b8c}
.secondary{border-color:#8fa6b8;color:var(--navy);background:#fff}
.hero,.hero:before{background:#f4f7fa}
.photo{background:#dce5ec}
.photo img{filter:saturate(.78) contrast(1.03)}
.service{background:#fff;border-top-color:#547b9b!important;box-shadow:0 9px 25px rgba(23,63,104,.08)}
.service:nth-child(n){border-top-color:#547b9b!important}
.service:nth-child(n) .service-icon{background:var(--sky);color:var(--navy)}
.service:nth-child(3){border-top-color:var(--red)!important}
.service:nth-child(3) .service-icon{background:#f8e8ea;color:var(--red)}
.service:hover{background:#f7fafc;box-shadow:0 16px 34px rgba(23,63,104,.13)}
.care-path{background:#eef3f7}
.care-path:after{background:var(--navy)}
.care-tab.active{background:var(--navy);box-shadow:0 7px 18px rgba(23,63,104,.2)}
.route-card{background:#1f527d;box-shadow:0 22px 52px rgba(23,63,104,.24)}
.route-symbol,.route-steps .done{color:#d7e7f2}
.route-card.urgent-mode{background:#9f2f3b}
section.content{background:#fff}
.story{border-color:var(--line);box-shadow:0 8px 22px rgba(23,63,104,.07)}
.story:hover{box-shadow:0 16px 34px rgba(23,63,104,.12)}
.story:nth-child(n) .tag{background:var(--sky);color:var(--navy)}
.impact{background:#eaf0f4;border:1px solid var(--line);border-top:3px solid #7893aa;box-shadow:none}
.stat b{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--navy)}
.contact-box{background:#edf2f5;border-color:var(--line);box-shadow:0 12px 30px rgba(23,63,104,.07)}
.contact-link,.contact-link:nth-child(n){border-left-color:#6f8da5}
footer{background:#17384f;color:#d8e2e8}
:focus-visible{outline-color:#2f6f9f}
@media(max-width:768px){.hero,.care-path{background:#f4f7fa}}

/* Coastal civic refinement — Bangsaphan, August 2026 */
:root{
  --ink:#102f47;
  --navy:#123f66;
  --sea:#168c9c;
  --foam:#eaf7f7;
  --sand:#d7b56d;
  --coral:#d84a57;
  --paper:#f7fafb;
  --muted:#587080;
  --line:#d9e5e9;
  --shadow:0 18px 48px rgba(18,63,102,.12)
}
body{background:var(--paper)}
.utility-bar{position:relative;z-index:21;background:var(--navy);color:#dcebf2;font-size:.72rem;letter-spacing:.015em}
.utility-inner{height:34px;display:flex;align-items:center;gap:24px}
.utility-inner span:first-child{display:flex;align-items:center;gap:8px}
.utility-inner i{width:7px;height:7px;border-radius:50%;background:#6ad3b5;box-shadow:0 0 0 4px rgba(106,211,181,.13)}
.utility-location{margin-right:auto;opacity:.74}
.utility-inner a{height:34px;display:flex;align-items:center;gap:7px;padding:0 14px;background:var(--coral);color:#fff;font-weight:700}
.utility-inner a b{transition:transform .2s}.utility-inner a:hover b{transform:translate(2px,-2px)}
header{top:0;box-shadow:0 8px 24px rgba(18,63,102,.05)}
.brand strong{letter-spacing:-.025em}.brand small{letter-spacing:.13em;font-size:.57rem}
.footer-brand .mark{background:transparent;border:0;box-shadow:none}
.links a{position:relative}.links a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--sea);transition:right .25s}.links a:hover:after{right:0}
.hero{position:relative;overflow:hidden;background:linear-gradient(112deg,#fff 0 46%,#edf8fa 46% 100%)}
.hero:after{content:"BANGSAPHAN • 11.212° N";position:absolute;left:max(20px,calc((100% - 1180px)/2));bottom:18px;color:#7792a1;font:600 .6rem/1 "IBM Plex Sans Thai",sans-serif;letter-spacing:.2em;writing-mode:vertical-rl;opacity:.55}
.hero-copy{position:relative;z-index:2}.hero-copy h1{font-size:clamp(2.7rem,5vw,5.4rem);line-height:1.04;max-width:820px}.hero-copy h1 span{color:var(--sea)}
.hero-assurance{display:flex;gap:0;margin-top:30px;border-top:1px solid var(--line);width:min(100%,650px)}
.hero-assurance span{display:flex;flex-direction:column;min-width:0;padding:15px 28px 0 0;margin-right:28px;border-right:1px solid var(--line);color:var(--muted);font-size:.73rem;line-height:1.35}
.hero-assurance span:last-child{border-right:0;margin-right:0}.hero-assurance b{color:var(--ink);font-size:.93rem;font-weight:700}
.photo{border-radius:120px 20px 80px 20px;overflow:hidden;box-shadow:0 28px 70px rgba(18,63,102,.2)}
.photo:after{background:linear-gradient(90deg,rgba(237,248,250,.9),transparent 35%),linear-gradient(0deg,rgba(16,47,71,.18),transparent 40%)}
.path{border-color:rgba(22,140,156,.35)}
.care-card{border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 45px rgba(18,63,102,.2);backdrop-filter:blur(12px)}
.service-shell{border-radius:24px;overflow:hidden;box-shadow:0 18px 50px rgba(18,63,102,.11)}
.service{border-top:0!important;border-right:1px solid var(--line);box-shadow:none!important;border-radius:0}.service:nth-child(n){border-top:0!important}.service:nth-child(6){border-right:0}
.service:hover{transform:translateY(-5px);background:#fff}
.service-icon{border-radius:50%}
.care-path{background:linear-gradient(135deg,#edf7f8,#e8f3f6)}.care-path:after{background:linear-gradient(90deg,var(--sea),var(--sand))}
.route-card{background:linear-gradient(135deg,#123f66,#147d8c);border:1px solid rgba(255,255,255,.25)}
.story{border-radius:18px;overflow:hidden}.story-image{overflow:hidden}.story-image img{transition:transform .7s cubic-bezier(.2,.8,.2,1)}.story:hover .story-image img{transform:scale(1.045)}
.impact{background:linear-gradient(110deg,#103b5e,#136e78);color:#fff;border:0}.impact .eyebrow{color:#82d9d5!important}.impact-copy p,.stat span{color:#d7e8eb}.stat b{color:#fff}
.contact-box{background:linear-gradient(135deg,#edf7f8,#f5f1e7);border-top:4px solid var(--sand)}
:focus-visible{outline:3px solid #e1a91f;outline-offset:4px}
@media(max-width:980px){.utility-location{display:none}.hero{background:linear-gradient(180deg,#fff,#edf8fa)}.hero:after{display:none}.photo{border-radius:26px}.service-shell{border-radius:18px}.service:nth-child(3){border-right:0}.service:nth-child(-n+3){border-bottom:1px solid var(--line)}}
@media(max-width:768px){.utility-bar{display:none}.hero-copy h1{font-size:clamp(2.25rem,11vw,3.2rem)}.hero-assurance{margin-top:22px}.hero-assurance span{padding-right:12px;margin-right:12px;font-size:.64rem}.hero-assurance b{font-size:.78rem}.service-shell{border-radius:14px}.service:nth-child(odd){border-right:1px solid var(--line)}.service:nth-child(even){border-right:0}.service:nth-child(-n+4){border-bottom:1px solid var(--line)}.photo{border-radius:20px}.impact{border-radius:0}}
@media(max-width:430px){.hero-assurance span{padding-right:9px;margin-right:9px}.hero-assurance span:last-child{display:none}.hero-assurance{width:max-content}.service-shell{border-radius:12px}}

/* Motion system — one calm coastal rhythm */
.scroll-progress{position:fixed;z-index:100;top:0;left:0;right:0;height:3px;pointer-events:none}.scroll-progress span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--sea),#63cfc5,var(--sand));box-shadow:0 0 14px rgba(22,140,156,.45);will-change:transform}
.motion-ready [data-reveal]{--reveal-x:0px;opacity:0;transform:translate3d(var(--reveal-x),64px,0) scale(.965);filter:blur(8px);transition:opacity .85s cubic-bezier(.2,.75,.2,1),transform 1.05s cubic-bezier(.16,1,.3,1),filter .75s ease;transition-delay:calc(var(--reveal-order,0)*85ms)}
.motion-ready .care-intro[data-reveal],.motion-ready .impact-copy[data-reveal]{--reveal-x:-42px}
.motion-ready .section-head[data-reveal],.motion-ready .contact-box[data-reveal]{--reveal-x:-24px}
.motion-ready .stats[data-reveal]{--reveal-x:42px}
.motion-ready [data-reveal].revealed{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
.hero-visual{--scroll-shift:0px;--pointer-x:0px;--pointer-y:0px;transform:translate3d(var(--pointer-x),calc(var(--pointer-y) + var(--scroll-shift)),0);transition:transform .65s cubic-bezier(.2,.8,.2,1);will-change:transform}
.hero .path{animation:coastalDrift 5.5s ease-in-out infinite}.care-card{animation:careFloat 4.6s ease-in-out infinite}.care-card .pulse{position:relative}.care-card .pulse:after{content:"";position:absolute;inset:0;border:1px solid currentColor;border-radius:50%;animation:careRipple 2.4s ease-out infinite}
.hero-assurance span{opacity:0;animation:assuranceIn .65s cubic-bezier(.2,.8,.2,1) forwards}.hero-assurance span:nth-child(1){animation-delay:.65s}.hero-assurance span:nth-child(2){animation-delay:.78s}.hero-assurance span:nth-child(3){animation-delay:.91s}
.service-icon svg{transition:transform .45s cubic-bezier(.2,.8,.2,1)}.service:hover .service-icon svg{transform:scale(1.12) rotate(4deg)}
.story.revealed:nth-child(2){transition-delay:80ms}.story.revealed:nth-child(3){transition-delay:160ms}
.route-card>*:not(.route-orbit){transition:opacity .18s ease,transform .18s ease}.route-card.switching>*:not(.route-orbit){opacity:0;transform:translateX(20px)}
.route-card:not(.switching) .route-steps i:after{animation:stepTravel 2.3s ease-in-out infinite}.route-card>a b,.contact-link>span:last-child{transition:transform .28s cubic-bezier(.2,.8,.2,1)}.route-card>a:hover b,.contact-link:hover>span:last-child{transform:translate(4px,-2px) rotate(-8deg)}
.stat{transition:transform .35s cubic-bezier(.2,.8,.2,1),background .35s}.stat:hover{transform:translateY(-6px);background:rgba(255,255,255,.06)}
.bottom-nav .appoint i{animation:navBreathe 3s ease-in-out infinite}
header{animation:headerDrop .72s .08s cubic-bezier(.16,1,.3,1) both}.utility-bar{animation:utilityDrop .55s cubic-bezier(.16,1,.3,1) both}.hero .photo{animation:photoReveal 1.15s .18s cubic-bezier(.16,1,.3,1) both}.hero .emergency{animation:badgeEnter .7s .85s cubic-bezier(.16,1,.3,1) both,floatBadge 3s 1.6s ease-in-out infinite}.service-shell{animation:shellRise .9s .65s cubic-bezier(.16,1,.3,1) both}
@keyframes utilityDrop{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}
@keyframes headerDrop{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:none}}
@keyframes photoReveal{from{opacity:0;clip-path:inset(0 100% 0 0);transform:scale(1.05)}to{opacity:1;clip-path:inset(0 0 0 0);transform:scale(1)}}
@keyframes badgeEnter{from{opacity:0;transform:translateX(35px) rotate(5deg)}to{opacity:1;transform:none}}
@keyframes shellRise{from{opacity:0;transform:translateY(45px)}to{opacity:1;transform:none}}
@keyframes coastalDrift{50%{transform:translate3d(8px,10px,0);opacity:.6}}
@keyframes careFloat{50%{transform:translateY(-8px)}}
@keyframes careRipple{0%{transform:scale(.75);opacity:.65}75%,100%{transform:scale(1.55);opacity:0}}
@keyframes assuranceIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes stepTravel{0%,100%{transform:translateX(0);box-shadow:0 0 0 rgba(159,243,222,0)}50%{transform:translateX(-12px);box-shadow:0 0 14px #9ff3de}}
@keyframes navBreathe{50%{transform:translateY(-3px);box-shadow:0 12px 28px rgba(8,127,120,.38)}}
@media(prefers-reduced-motion:reduce){.scroll-progress span{transition:none}.motion-ready [data-reveal],.hero-visual,.hero-assurance span{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.hero .path,.care-card,.care-card .pulse:after,.route-steps i:after,.bottom-nav .appoint i,header,.utility-bar,.hero .photo,.hero .emergency,.service-shell{animation:none!important}}

/* Direct interaction feedback: menu click + page scroll */
header{transition:height .32s ease,background .32s ease,box-shadow .32s ease,transform .32s ease}
header.is-scrolled{background:rgba(255,255,255,.9);box-shadow:0 14px 42px rgba(18,63,102,.15);backdrop-filter:blur(18px) saturate(1.25)}
header .nav{transition:height .32s ease}header.is-scrolled .nav{height:68px}
.links a.is-active{color:var(--sea)}.links a.is-active:after{right:0;height:3px;border-radius:3px}
.bottom-nav a.is-active{color:var(--sea)}.bottom-nav a.is-active b{transform:translateY(-3px);color:var(--sea)}.bottom-nav a b{transition:transform .25s,color .25s}
main section[id],#services{scroll-margin-top:110px;position:relative}
.menu-arrival:before{content:"";position:absolute;z-index:30;inset:6px;pointer-events:none;border:2px solid rgba(22,140,156,.7);border-radius:26px;animation:sectionArrival 1.05s cubic-bezier(.16,1,.3,1) forwards}
@keyframes sectionArrival{0%{opacity:0;transform:scale(.985);box-shadow:0 0 0 0 rgba(22,140,156,.25)}25%{opacity:1}100%{opacity:0;transform:scale(1);box-shadow:0 0 0 24px rgba(22,140,156,0)}}
@media(max-width:980px){.mobile-panel{display:grid!important;position:fixed;inset:102px 14px auto!important;padding:18px 20px!important;gap:8px!important;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.97)!important;box-shadow:0 22px 60px rgba(18,63,102,.2)!important;opacity:0;visibility:hidden;transform:translateY(-18px) scale(.97);transform-origin:top;transition:opacity .25s ease,transform .35s cubic-bezier(.16,1,.3,1),visibility .25s;pointer-events:none}.mobile-panel.open{opacity:1;visibility:visible;transform:none;pointer-events:auto}.mobile-panel a{padding:10px 6px;border-bottom:1px solid var(--line)}.mobile-panel a:last-child{border-bottom:0}header.is-scrolled .mobile-panel{inset:72px 14px auto!important}}
@media(max-width:768px){main section[id],#services{scroll-margin-top:76px}.menu-arrival:before{inset:4px;border-radius:18px}}

/* Visible in-page ambient motion */
.ambient-motion{position:absolute;z-index:1;inset:0;overflow:hidden;pointer-events:none}
.ambient-motion span{position:absolute;display:block;border-radius:50%;filter:blur(2px);opacity:.5;will-change:transform}
.ambient-motion span:nth-child(1){width:280px;height:280px;right:9%;top:-110px;background:radial-gradient(circle at 35% 35%,rgba(95,216,205,.55),rgba(22,140,156,.05) 68%,transparent 70%);animation:orbDriftOne 9s ease-in-out infinite alternate}
.ambient-motion span:nth-child(2){width:170px;height:170px;left:4%;bottom:4%;background:radial-gradient(circle at 40% 40%,rgba(215,181,109,.34),rgba(215,181,109,.04) 70%);animation:orbDriftTwo 7s ease-in-out infinite alternate}
.ambient-motion span:nth-child(3){width:90px;height:90px;left:48%;top:12%;border:1px solid rgba(22,140,156,.28);box-shadow:0 0 0 18px rgba(22,140,156,.035),0 0 0 38px rgba(22,140,156,.02);animation:ringFloat 6s ease-in-out infinite}
.ambient-motion i{position:absolute;left:-10%;bottom:-45px;width:120%;height:100px;border-radius:50% 50% 0 0;background:rgba(255,255,255,.55);transform-origin:center;animation:shoreWave 7s ease-in-out infinite alternate}
.hero-grid{position:relative;z-index:2}
.photo img{animation:heroBreath 12s ease-in-out infinite alternate,photoPan 18s ease-in-out infinite alternate!important}
.service:nth-child(odd){animation:serviceBuoyA 5.5s ease-in-out infinite}.service:nth-child(even){animation:serviceBuoyB 6.2s .4s ease-in-out infinite}.service:hover{animation-play-state:paused}
.story:nth-child(1) .story-image img{animation:newsPanA 14s ease-in-out infinite alternate}.story:nth-child(2) .story-image img{animation:newsPanB 16s ease-in-out infinite alternate}.story:nth-child(3) .story-image img{animation:newsPanA 18s -3s ease-in-out infinite alternate}
.impact:after{content:"";position:absolute;inset:-45% -10%;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.08) 48%,transparent 58%);animation:impactGlow 6s ease-in-out infinite}.impact-grid{position:relative;z-index:1}
@keyframes orbDriftOne{to{transform:translate3d(-70px,75px,0) scale(1.18)}}
@keyframes orbDriftTwo{to{transform:translate3d(80px,-42px,0) scale(.86)}}
@keyframes ringFloat{50%{transform:translate3d(24px,32px,0) rotate(18deg);opacity:.8}}
@keyframes shoreWave{to{transform:translateX(5%) rotate(-1.5deg) scaleY(1.3)}}
@keyframes photoPan{from{object-position:48% 48%}to{object-position:58% 51%}}
@keyframes serviceBuoyA{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes serviceBuoyB{0%,100%{transform:translateY(-3px)}50%{transform:translateY(5px)}}
@keyframes newsPanA{to{transform:scale(1.08) translateX(-1.5%)}}
@keyframes newsPanB{to{transform:scale(1.09) translateX(1.5%)}}
@keyframes impactGlow{0%,15%{transform:translateX(-55%)}75%,100%{transform:translateX(55%)}}
@media(max-width:768px){.ambient-motion span:nth-child(1){width:180px;height:180px}.ambient-motion span:nth-child(3){display:none}.service:nth-child(n){animation-duration:6s}.photo img{animation:heroBreath 12s ease-in-out infinite alternate!important}}
@media(prefers-reduced-motion:reduce){.ambient-motion span,.ambient-motion i,.photo img,.service:nth-child(n),.story .story-image img,.impact:after{animation:none!important}}

/* GSAP owns motion when available; CSS remains the no-network fallback */
.gsap-ready .hero-copy,.gsap-ready .hero-visual,.gsap-ready .hero .photo,.gsap-ready .hero .emergency,.gsap-ready .care-card,.gsap-ready .service,.gsap-ready .story,.gsap-ready .story .story-image img,.gsap-ready .stat,.gsap-ready .contact-box,.gsap-ready header,.gsap-ready .utility-bar{animation:none!important}
.gsap-ready [data-reveal]{opacity:1;transform:none;filter:none;transition:none}
.gsap-ready .care-path{overflow:clip}.gsap-ready .route-card{will-change:transform}.gsap-ready .story{will-change:clip-path,transform}.gsap-ready .hero .photo{will-change:clip-path,transform}

/* Mobile hero assurance — full-width, readable, no clipped item */
@media(max-width:768px){
  .hero-assurance{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.72);overflow:hidden}
  .hero-assurance span,.hero-assurance span:last-child{display:flex;min-height:68px;margin:0;padding:12px 9px;align-items:flex-start;justify-content:center;border:0;border-right:1px solid var(--line);font-size:.67rem;line-height:1.35;text-align:left}
  .hero-assurance span:last-child{border-right:0}
  .hero-assurance b{font-size:.86rem;line-height:1.25;margin-bottom:2px;white-space:nowrap}
}
@media(max-width:390px){
  .hero-assurance{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hero-assurance span,.hero-assurance span:last-child{display:flex;padding:10px 6px;font-size:.61rem}
  .hero-assurance b{font-size:.78rem}
}

/* Keep every impact-section label readable on the dark background */
.impact .impact-copy h2,.impact .impact-copy .display{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.12)}
.impact .impact-copy p{color:#d9ebed!important}
.impact .stat b{color:#fff!important}.impact .stat span{color:#e5f1f2!important}
@media(max-width:768px){
  .impact .impact-copy h2{font-size:clamp(2.15rem,10vw,3rem);line-height:1.15;margin:9px 0 14px}
  .impact .impact-copy .eyebrow{color:#8ce2d9!important}
}

/* Six services in one desktop viewport — compact duotone medical cards */
.service-shell{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:10px;border-radius:24px;background:rgba(255,255,255,.8);border:1px solid rgba(211,228,233,.9);box-shadow:0 20px 55px rgba(18,63,102,.1);overflow:visible;backdrop-filter:blur(16px)}
.service{--accent:#258bb5;--soft:#e7f5fb;position:relative;display:flex;flex-direction:column;height:auto;min-height:184px;padding:16px 15px 13px;border:1px solid #dce9ed!important;border-radius:17px;background:linear-gradient(155deg,#fff 0 72%,var(--soft) 160%);box-shadow:0 7px 20px rgba(18,63,102,.055)!important;overflow:hidden;isolation:isolate;translate:0 0;transition:translate .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s!important}
.service:nth-child(1){--accent:#238ab4;--soft:#dff4fb}.service:nth-child(2){--accent:#1c9a76;--soft:#e1f7ee}.service:nth-child(3){--accent:#d94858;--soft:#fce7e9}.service:nth-child(4){--accent:#7566b3;--soft:#eeeafa}.service:nth-child(5){--accent:#b77b1e;--soft:#fbf0dc}.service:nth-child(6){--accent:#347dbc;--soft:#e6f0fa}
.service:before{content:"";position:absolute;z-index:-1;left:0;right:0;top:0;width:auto;height:3px;border-radius:17px 17px 0 0;background:var(--accent);opacity:1;transition:height .35s,opacity .35s}
.service:after{content:"";display:block;position:absolute;z-index:-1;width:88px;height:88px;left:auto;right:-35px;bottom:auto;top:-38px;border:18px solid var(--soft);border-radius:50%;opacity:.8}
.service:hover{translate:0 -7px;border-color:color-mix(in srgb,var(--accent) 38%,white)!important;box-shadow:0 18px 34px rgba(18,63,102,.13)!important;background:#fff}.service:hover:before{height:5px}
.service-icon{position:relative;width:48px;height:48px;flex:0 0 48px;border-radius:15px!important;background:var(--soft)!important;color:var(--accent)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 15%,transparent),0 7px 16px color-mix(in srgb,var(--accent) 12%,transparent)}
.service-icon:after{content:"";position:absolute;right:5px;top:5px;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px rgba(255,255,255,.78)}
.service-icon svg{width:24px;height:24px;stroke-width:1.9}.service:hover .service-icon{transform:translateY(-2px) rotate(-2deg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 11px 22px color-mix(in srgb,var(--accent) 18%,transparent)}
.service-copy{min-width:0}.service strong{margin-top:11px;color:var(--ink);font-size:.88rem;line-height:1.35;white-space:normal}.service small{margin-top:3px;color:var(--muted);font-size:.68rem;line-height:1.4}
.service-go{margin-top:auto;padding-top:9px;border-top:1px solid #e0eaed;color:var(--accent);font-size:.65rem}.service-go b{width:24px;height:24px;background:var(--soft);color:var(--accent)}.service:hover .service-go{color:var(--accent)}.service:hover .service-go b{background:var(--accent);color:#fff}
@media(min-width:981px){
  .hero{min-height:clamp(470px,56vh,535px);padding-top:34px;padding-bottom:10px}
  .hero-visual{min-height:clamp(415px,49vh,475px)}
  .hero-copy h1{font-size:clamp(2.65rem,4.5vw,4.85rem)}
  .hero-assurance{margin-top:22px}
  .services{margin-top:8px;margin-bottom:40px}
}
@media(max-width:1180px) and (min-width:981px){.service-shell{gap:7px;padding:8px}.service{min-height:178px;padding:14px 11px 11px}.service strong{font-size:.8rem}.service small{font-size:.63rem}.service-icon{width:44px;height:44px;flex-basis:44px}.service-icon svg{width:22px;height:22px}}
@media(max-width:980px){.service-shell{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px}.service{min-height:172px}.service:nth-child(n){border:1px solid #dce9ed!important}.service:nth-child(-n+3){border-bottom:1px solid #dce9ed!important}}
@media(max-width:640px){.service-shell{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}.service,.service:nth-child(-n+3){min-height:164px;padding:13px 12px 11px;border-radius:15px}.service-icon{width:42px;height:42px;flex-basis:42px;border-radius:13px!important}.service-icon svg{width:21px;height:21px}.service strong{margin-top:8px;font-size:.78rem}.service small{font-size:.64rem}.service-go{padding-top:7px;font-size:.61rem}}

/* Clinical Service Deck v2 — new cards + custom rounded duotone icons */
.service-shell{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.service{--accent:#167f9f;--soft:#e6f5f8;display:grid;grid-template-columns:58px minmax(0,1fr) auto;grid-template-rows:1fr auto;column-gap:16px;row-gap:8px;align-items:center;min-height:132px;padding:18px 18px 16px 20px;border:1px solid #d7e5e8!important;border-radius:21px;background:linear-gradient(120deg,#fff 0 76%,var(--soft) 138%);box-shadow:0 9px 26px rgba(18,63,102,.075)!important;overflow:hidden}
.service:nth-child(1){--accent:#147f9f;--soft:#e2f3f8}.service:nth-child(2){--accent:#178b74;--soft:#e3f5ef}.service:nth-child(3){--accent:#cf4051;--soft:#fae8eb}.service:nth-child(4){--accent:#4e73a6;--soft:#e8eef7}.service:nth-child(5){--accent:#8b6a32;--soft:#f5efe3}.service:nth-child(6){--accent:#367c91;--soft:#e6f2f4}
.service:before{left:0;right:auto;top:22px;bottom:22px;width:4px;height:auto;border-radius:0 5px 5px 0;background:var(--accent)}
.service:after{content:"";display:block;right:-45px;top:-55px;width:135px;height:135px;border:24px solid color-mix(in srgb,var(--accent) 6%,transparent);background:transparent;opacity:1}
.service:hover{translate:0 -5px;border-color:color-mix(in srgb,var(--accent) 35%,#d7e5e8)!important;box-shadow:0 18px 38px rgba(18,63,102,.12)!important}.service:hover:before{height:auto}
.service-icon{grid-column:1;grid-row:1/3;width:58px;height:58px;flex-basis:58px;border-radius:18px!important;background:var(--soft)!important;color:var(--accent)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 13%,transparent)}
.service-icon:before{content:"";position:absolute;inset:7px;border:1px solid color-mix(in srgb,var(--accent) 12%,transparent);border-radius:13px}.service-icon:after{display:none}
.service-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.75}.service-icon svg .icon-tone{fill:currentColor;stroke:none;opacity:.14}.service:hover .service-icon{transform:scale(1.055) rotate(-2deg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent),0 10px 24px color-mix(in srgb,var(--accent) 15%,transparent)}
.service-copy{grid-column:2;grid-row:1;align-self:end}.service strong{margin:0;color:var(--ink);font-size:.98rem;line-height:1.3}.service small{margin-top:4px;font-size:.72rem;line-height:1.4;color:#667f8b}
.service-go{grid-column:2/4;grid-row:2;display:flex;align-items:center;justify-content:flex-start;gap:9px;margin:0;padding:0;border:0;color:var(--accent);font-size:.68rem}.service-go b{order:-1;width:23px;height:23px;background:var(--soft);color:var(--accent);font-size:.72rem}.service:hover .service-go b{transform:translate(2px,-1px) rotate(45deg);background:var(--accent);color:#fff}
@media(min-width:981px){.hero{min-height:clamp(440px,52vh,495px)}.hero-visual{min-height:clamp(395px,46vh,445px)}.services{margin-top:10px;margin-bottom:38px}}
@media(max-width:1180px) and (min-width:769px){.service-shell{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.service{min-height:126px;padding:15px 13px 14px 16px;grid-template-columns:50px minmax(0,1fr) auto;column-gap:12px}.service-icon{width:50px;height:50px;flex-basis:50px;border-radius:16px!important}.service-icon svg{width:26px;height:26px}.service strong{font-size:.86rem}.service small{font-size:.65rem}}
@media(max-width:768px){.service-shell{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0}.service,.service:nth-child(-n+3){display:flex;flex-direction:column;align-items:flex-start;min-height:174px;padding:14px 13px 12px;border-radius:17px}.service:before{top:0;bottom:auto;left:14px;right:14px;width:auto;height:3px;border-radius:0 0 4px 4px}.service:hover:before{height:3px}.service-icon{width:46px;height:46px;flex-basis:46px;border-radius:14px!important}.service-icon svg{width:24px;height:24px}.service-copy{display:block}.service strong{margin-top:8px;font-size:.8rem}.service small{font-size:.65rem}.service-go{width:100%;margin-top:auto;padding-top:7px;border-top:1px solid #e0eaed;font-size:.62rem}}

/* Replace generic floating blobs with Bangsaphan coastal contour motion */
.hero:before{display:none}.ambient-motion{opacity:.72}.ambient-motion span{display:block;left:-150px!important;right:auto!important;top:auto!important;border-radius:50%;background:transparent!important;filter:none;box-shadow:none;opacity:1;transform-origin:45% 55%;will-change:transform}
.ambient-motion span:nth-child(1){width:480px;height:210px;bottom:-82px;border:1px solid rgba(22,140,156,.22);animation:contourCurrentA 10s ease-in-out infinite alternate}
.ambient-motion span:nth-child(2){width:405px;height:168px;bottom:-61px;border:1px solid rgba(22,140,156,.16);animation:contourCurrentB 12s ease-in-out infinite alternate}
.ambient-motion span:nth-child(3){display:block;width:330px;height:128px;bottom:-40px;border:1px dashed rgba(215,181,109,.3);box-shadow:none;animation:contourCurrentC 14s linear infinite}
.ambient-motion i{left:-80px;bottom:35px;width:330px;height:1px;border-radius:0;background:linear-gradient(90deg,transparent,rgba(22,140,156,.32),rgba(215,181,109,.35),transparent);transform:rotate(-9deg);transform-origin:center;animation:coastalScan 6s ease-in-out infinite}
@keyframes contourCurrentA{to{transform:translate3d(55px,-13px,0) rotate(-3deg) scaleX(1.08)}}
@keyframes contourCurrentB{to{transform:translate3d(35px,-26px,0) rotate(4deg) scaleX(.96)}}
@keyframes contourCurrentC{to{transform:translate3d(22px,-8px,0) rotate(360deg)}}
@keyframes coastalScan{0%,100%{opacity:.25;translate:-40px 8px}50%{opacity:.9;translate:85px -8px}}
@media(max-width:768px){.ambient-motion{opacity:.48}.ambient-motion span:nth-child(1){width:360px;height:150px}.ambient-motion span:nth-child(2){width:300px;height:120px}.ambient-motion span:nth-child(3){width:245px;height:92px}.ambient-motion i{width:260px}}

/* Low-spec Tidal Pulse: one SVG, transform + dash offset only */
.ambient-motion.tidal-pulse{inset:auto auto 0 0;width:min(57vw,880px);height:245px;opacity:.75;overflow:hidden;contain:layout paint;will-change:auto}.tidal-pulse svg{display:block;width:100%;height:100%;overflow:visible}.tide-lines{animation:tideGroupDrift 9s ease-in-out infinite alternate}.tide{fill:none;stroke:url(#tideGradient);stroke-width:1.25;vector-effect:non-scaling-stroke;stroke-dasharray:9 7;animation:tideDash 12s linear infinite}.tide-b{opacity:.66;animation-duration:15s;animation-direction:reverse}.tide-c{opacity:.38;animation-duration:19s}.tide-pulse-line{fill:none;stroke:#168c9c;stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:430;stroke-dashoffset:430;animation:pulseDraw 5.5s ease-in-out infinite}.tide-node{fill:#d7b56d;transform-box:fill-box;transform-origin:center;animation:nodeBeat 2.75s ease-in-out infinite}
@keyframes tideGroupDrift{to{transform:translate3d(22px,-9px,0)}}
@keyframes tideDash{to{stroke-dashoffset:-160}}
@keyframes pulseDraw{0%,12%{stroke-dashoffset:430;opacity:0}32%,72%{stroke-dashoffset:0;opacity:.75}90%,100%{stroke-dashoffset:-430;opacity:0}}
@keyframes nodeBeat{0%,48%,100%{transform:scale(.7);opacity:.35}54%{transform:scale(1.8);opacity:1}62%{transform:scale(1);opacity:.7}}
@media(max-width:768px){.ambient-motion.tidal-pulse{width:86vw;height:165px;opacity:.48}.tide-lines{animation-duration:12s}.tide{stroke-width:1}.tide-pulse-line{stroke-width:1.2}}
@media(prefers-reduced-motion:reduce){.tide-lines,.tide,.tide-pulse-line,.tide-node{animation:none!important}.tide-pulse-line{stroke-dashoffset:0;opacity:.45}}
.gsap-ready .tide-lines,.gsap-ready .tide,.gsap-ready .tide-pulse-line,.gsap-ready .tide-node{animation:none!important}

/* Minimal pulse: the hero content stays dominant */
.ambient-motion.tidal-pulse{left:0;bottom:12px;width:min(29vw,460px);height:90px;opacity:.34;overflow:hidden}
.tidal-pulse .tide-lines{animation:none}.tidal-pulse .tide-pulse-line{stroke:#168c9c;stroke-width:1.15;opacity:.62}
@media(max-width:980px){.ambient-motion.tidal-pulse{width:42vw;height:74px;bottom:6px;opacity:.26}}
@media(max-width:768px){.ambient-motion.tidal-pulse{width:58vw;height:58px;bottom:2px;opacity:.2}}

/* Soft Daylight Sweep — lightweight transform-only ambient light */
.ambient-motion.light-sweep{inset:0;opacity:1;overflow:hidden;contain:layout paint}.ambient-motion.light-sweep .hero-light{position:absolute;display:block;left:-18%!important;right:auto!important;top:12%!important;bottom:auto!important;width:72%;height:58%;border:0;border-radius:50%;background:linear-gradient(112deg,transparent 13%,rgba(255,255,255,.08) 28%,rgba(91,211,201,.18) 47%,rgba(255,219,144,.2) 56%,rgba(255,255,255,.08) 70%,transparent 84%)!important;clip-path:polygon(0 32%,100% 0,86% 74%,7% 100%);filter:none;box-shadow:none;transform-origin:center;will-change:transform,opacity;pointer-events:none;animation:none!important}
.gsap-ready .light-sweep .hero-light{animation:none!important}
@media(max-width:980px){.ambient-motion.light-sweep .hero-light{width:92%;height:48%;top:34%!important;opacity:.7}}
@media(max-width:768px){.ambient-motion.light-sweep .hero-light{width:110%;height:38%;top:45%!important;background:linear-gradient(112deg,transparent 12%,rgba(91,211,201,.13) 45%,rgba(255,219,144,.14) 58%,transparent 86%)!important}}
@media(prefers-reduced-motion:reduce){.light-sweep .hero-light{animation:none!important}}

/* Desktop first-screen composition: hero + all six service cards */
@media(min-width:1200px){
  .hero{height:calc(100svh - 300px);min-height:430px;max-height:520px;padding:28px 0 10px;overflow:hidden}
  .hero-grid{height:100%;align-items:center}
  .hero-copy h1{font-size:clamp(2.5rem,4vw,4.4rem);margin:8px 0 13px;line-height:1.04}
  .hero-copy>p{font-size:.96rem;line-height:1.65;max-width:570px}
  .hero-assurance{margin-top:17px}
  .hero-assurance span{padding-top:11px}
  .hero-visual{height:100%;min-height:0}
  .photo{inset:0 -3vw 0 0}
  .services{margin-top:8px;margin-bottom:28px}
  .service-shell{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
  .service{display:flex;flex-direction:column;align-items:flex-start;min-height:154px;padding:14px 13px 11px;border-radius:17px}
  .service:before{left:13px;right:13px;top:0;bottom:auto;width:auto;height:3px;border-radius:0 0 4px 4px}
  .service:hover:before{height:3px}
  .service-icon{width:45px;height:45px;flex:0 0 45px;border-radius:14px!important}
  .service-icon svg{width:23px;height:23px}
  .service-copy{display:block;width:100%}
  .service strong{margin-top:8px;font-size:.8rem;line-height:1.3}
  .service small{margin-top:2px;font-size:.63rem;line-height:1.35}
  .service-go{display:flex;width:100%;margin-top:auto;padding-top:7px;border-top:1px solid #e0eaed;font-size:.61rem}
}
@media(min-width:1500px){.service{min-height:158px;padding-left:15px;padding-right:15px}.service strong{font-size:.84rem}.service small{font-size:.66rem}}

/* Clean hospital-photo edge: avoid stacked diagonal masks */
.hero .photo{mask-image:none!important;-webkit-mask-image:none!important}
.hero .photo:after{background:linear-gradient(0deg,rgba(10,53,72,.16),transparent 38%)!important}
.ambient-motion.light-sweep{clip-path:inset(0 50% 0 0)}
@media(max-width:980px){.ambient-motion.light-sweep{clip-path:none}}

/* Restore the soft photo fade without a visible diagonal edge */
@media(min-width:981px){
  .hero .photo{mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 3%,rgba(0,0,0,.22) 8%,rgba(0,0,0,.55) 14%,rgba(0,0,0,.82) 20%,#000 27%)!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 3%,rgba(0,0,0,.22) 8%,rgba(0,0,0,.55) 14%,rgba(0,0,0,.82) 20%,#000 27%)!important}
}

/* Remove the diagonal edge from the light layer */
.ambient-motion.light-sweep .hero-light{border-radius:50%;clip-path:none!important;background:radial-gradient(ellipse at center,rgba(91,211,201,.17) 0%,rgba(255,219,144,.11) 32%,rgba(255,255,255,.045) 52%,transparent 74%)!important}
@media(max-width:768px){.ambient-motion.light-sweep .hero-light{background:radial-gradient(ellipse at center,rgba(91,211,201,.12),rgba(255,219,144,.08) 34%,transparent 72%)!important}}

/* Flush hero image: remove the actual diagonal background seam */
@media(min-width:981px){
  .hero{background:#fff!important}
  .hero .photo{inset:-28px -3vw -10px 0!important;border-radius:0 0 72px 0}
}
@media(min-width:1200px){.hero .photo{inset:-28px -3vw -10px 0!important}}
.hero:after{display:none!important}

/* Sea Mist + Clinical Glow — soft, visible and low-spec friendly */
.ambient-motion.mist-glow{z-index:3;clip-path:none!important;overflow:hidden;contain:layout paint;isolation:isolate}
.mist-glow .mist,.mist-glow .glow-orb{position:absolute;display:block;pointer-events:none;will-change:transform,opacity;filter:none!important}
.mist-glow .mist{right:-4%;left:auto;width:58%;height:30%;border:0;border-radius:50%;opacity:.25;transform:translateZ(0)}
.mist-glow .mist-a{bottom:1%;background:radial-gradient(ellipse at 48% 60%,rgba(255,255,255,.74) 0%,rgba(228,247,246,.42) 32%,rgba(199,235,235,.13) 57%,transparent 76%)}
.mist-glow .mist-b{right:8%;bottom:20%;width:47%;height:22%;background:radial-gradient(ellipse at center,rgba(255,255,255,.48),rgba(190,232,232,.14) 48%,transparent 73%)}
.mist-glow .glow-orb{right:9%;bottom:4%;width:17vw;height:17vw;max-width:260px;max-height:260px;border-radius:50%;background:radial-gradient(circle,rgba(124,229,218,.24) 0%,rgba(93,203,203,.12) 34%,rgba(255,220,145,.07) 55%,transparent 72%);opacity:.38;mix-blend-mode:screen}
.mist-glow .hero-light{z-index:-1}
@media(max-width:980px){.ambient-motion.mist-glow{z-index:1}.mist-glow .mist{right:-12%;width:78%}.mist-glow .mist-b{display:none}.mist-glow .glow-orb{right:-2%;bottom:18%;width:34vw;height:34vw;opacity:.26}.mist-glow .hero-light{z-index:auto}}
@media(max-width:768px){.mist-glow .mist-a{bottom:22%;height:20%;opacity:.24}.mist-glow .glow-orb{bottom:28%;opacity:.2}}

/* Visibility pass: colored vapor remains readable over the bright hospital sky */
.mist-glow .mist{opacity:.58}
.mist-glow .mist-a{right:-2%;bottom:0;width:62%;height:34%;background:radial-gradient(ellipse at 52% 64%,rgba(238,255,253,.88) 0%,rgba(111,220,211,.48) 27%,rgba(29,145,166,.24) 49%,rgba(18,90,130,.08) 64%,transparent 78%)}
.mist-glow .mist-b{right:3%;bottom:31%;width:54%;height:24%;background:radial-gradient(ellipse at 58% 50%,rgba(248,255,255,.72) 0%,rgba(118,216,222,.38) 32%,rgba(33,135,165,.18) 54%,transparent 76%)}
.mist-glow .glow-orb{right:12%;bottom:8%;width:19vw;height:19vw;max-width:285px;max-height:285px;background:radial-gradient(circle,rgba(194,255,243,.72) 0%,rgba(62,218,201,.36) 20%,rgba(20,155,179,.2) 39%,rgba(243,195,94,.12) 54%,transparent 72%);mix-blend-mode:normal;opacity:.58}
@media(max-width:980px){.mist-glow .mist-a{right:-18%;bottom:20%;width:92%;height:25%}.mist-glow .glow-orb{right:-5%;bottom:24%;width:42vw;height:42vw}}
@media(max-width:768px){.mist-glow .mist-a{opacity:.46}.mist-glow .glow-orb{opacity:.4}}

/* Flowing fog ribbons — layered movement over the hospital photograph */
.mist-glow .mist{right:-8%;left:auto;border-radius:44% 56% 61% 39%/58% 42% 58% 42%;transform-origin:50% 60%;background-repeat:no-repeat;opacity:.5}
.mist-glow .mist-a{bottom:2%;width:64%;height:25%;background:radial-gradient(ellipse at 18% 63%,transparent 0 12%,rgba(229,252,250,.44) 29%,transparent 54%),radial-gradient(ellipse at 59% 50%,rgba(245,255,255,.7),rgba(113,216,210,.3) 38%,transparent 70%)}
.mist-glow .mist-b{right:1%;bottom:19%;width:57%;height:20%;background:radial-gradient(ellipse at 72% 52%,rgba(248,255,255,.62),rgba(120,219,218,.26) 37%,transparent 69%),radial-gradient(ellipse at 24% 62%,rgba(224,249,248,.36),transparent 62%)}
.mist-glow .mist-c{right:-4%;bottom:37%;width:48%;height:15%;background:radial-gradient(ellipse at 46% 55%,rgba(249,255,255,.5),rgba(101,207,211,.2) 40%,transparent 72%)}
.mist-glow .mist:before,.mist-glow .mist:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.mist-glow .mist:before{inset:20% 8% 5% 17%;background:radial-gradient(ellipse,rgba(255,255,255,.38),transparent 68%)}
.mist-glow .mist:after{inset:5% 35% 30% 2%;background:radial-gradient(ellipse,rgba(111,218,214,.2),transparent 70%)}
@media(max-width:980px){.mist-glow .mist-a{right:-25%;bottom:20%;width:105%;height:19%}.mist-glow .mist-b{right:-18%;bottom:34%;width:88%;height:15%}.mist-glow .mist-c{display:none}}
@media(max-width:768px){.mist-glow .mist-a{opacity:.4}.mist-glow .mist-b{opacity:.32}}

/* Horizontal flag-wave fog: anchored left, loose at the trailing edge */
.mist-glow .mist{right:-7%;left:auto;height:13%;border-radius:48% 10% 52% 14%/58% 34% 66% 42%;transform-origin:0 50%;clip-path:polygon(0 31%,14% 18%,29% 34%,45% 15%,62% 36%,78% 19%,100% 39%,100% 74%,82% 60%,65% 79%,47% 58%,30% 76%,14% 57%,0 70%)}
.mist-glow .mist-a{bottom:8%;width:66%;background:linear-gradient(90deg,transparent 0%,rgba(220,250,248,.25) 12%,rgba(245,255,255,.68) 38%,rgba(91,207,205,.34) 66%,transparent 100%)}
.mist-glow .mist-b{right:-3%;bottom:26%;width:59%;height:11%;background:linear-gradient(90deg,transparent,rgba(115,218,215,.25) 22%,rgba(248,255,255,.58) 54%,rgba(64,176,191,.2) 78%,transparent)}
.mist-glow .mist-c{right:-5%;bottom:42%;width:50%;height:9%;background:linear-gradient(90deg,transparent,rgba(236,255,253,.5) 38%,rgba(95,205,207,.22) 68%,transparent)}
.mist-glow .mist:before{inset:27% 4% 17% 9%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.46),transparent);border-radius:50%}
.mist-glow .mist:after{inset:48% 18% 2% 22%;background:linear-gradient(90deg,transparent,rgba(90,201,203,.22),transparent);border-radius:50%}
@media(max-width:980px){.mist-glow .mist-a{right:-24%;bottom:22%;width:112%;height:10%}.mist-glow .mist-b{right:-17%;bottom:35%;width:92%;height:9%}}

/* Rectangular horizontal flags — straight silhouette with a soft fog fill */
.ambient-motion.mist-glow{perspective:700px}
.mist-glow .mist{clip-path:inset(0)!important;border-radius:2px!important;transform-style:preserve-3d;backface-visibility:hidden}
.mist-glow .mist-a{right:-4%;bottom:7%;width:61%;height:16%;background:linear-gradient(90deg,rgba(222,250,248,.08),rgba(239,255,253,.64) 34%,rgba(82,203,201,.34) 68%,rgba(231,252,249,.08))}
.mist-glow .mist-b{right:1%;bottom:25%;width:55%;height:12%;background:linear-gradient(90deg,rgba(227,252,250,.05),rgba(104,213,211,.28) 32%,rgba(250,255,255,.58) 61%,rgba(61,171,190,.08))}
.mist-glow .mist-c{right:5%;bottom:40%;width:47%;height:9%;background:linear-gradient(90deg,rgba(236,255,253,.04),rgba(245,255,255,.46) 44%,rgba(85,198,204,.2) 75%,transparent)}
.mist-glow .mist:before{inset:0;background:linear-gradient(115deg,transparent 16%,rgba(255,255,255,.32) 36%,transparent 57%);border-radius:0}
.mist-glow .mist:after{inset:48% 0 0;background:linear-gradient(90deg,transparent,rgba(31,149,170,.12),transparent);border-radius:0}
@media(max-width:980px){.mist-glow .mist-a{right:-22%;bottom:21%;width:105%;height:12%}.mist-glow .mist-b{right:-15%;bottom:35%;width:88%;height:9%}}

/* Confine all ambient effects to the bg1 hospital-photo frame */
.hero-visual>.ambient-motion.mist-glow{position:absolute;z-index:1;inset:-28px -3vw -10px 0;overflow:hidden;border-radius:0 0 72px 0;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 3%,rgba(0,0,0,.22) 8%,rgba(0,0,0,.55) 14%,rgba(0,0,0,.82) 20%,#000 27%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 3%,rgba(0,0,0,.22) 8%,rgba(0,0,0,.55) 14%,rgba(0,0,0,.82) 20%,#000 27%)}
.hero-visual>.mist-glow .hero-light{z-index:0}
.hero-visual>.mist-glow .mist,.hero-visual>.mist-glow .glow-orb{z-index:1}
@media(max-width:980px){.hero-visual>.ambient-motion.mist-glow{inset:0;border-radius:24px;mask-image:none;-webkit-mask-image:none}}
@media(max-width:768px){.hero-visual>.ambient-motion.mist-glow{border-radius:20px}}
@media(max-width:430px){.hero-visual>.ambient-motion.mist-glow{border-radius:17px}}

/* Cinematic atmosphere — light and depth tied to the photograph, never floating shapes */
.cinematic-atmosphere{perspective:none!important}
.cinematic-atmosphere .hero-light{z-index:1!important;left:-8%!important;top:-18%!important;width:72%;height:92%;border-radius:0!important;background:linear-gradient(118deg,transparent 15%,rgba(255,255,255,.03) 32%,rgba(218,255,250,.18) 46%,rgba(255,226,169,.14) 53%,rgba(255,255,255,.025) 61%,transparent 74%)!important;opacity:.55}
.cinematic-atmosphere .ground-haze,.cinematic-atmosphere .sun-glow{position:absolute;display:block;z-index:2;pointer-events:none;will-change:transform,opacity}
.cinematic-atmosphere .ground-haze{left:-8%;right:-8%;bottom:-7%;height:38%;background:linear-gradient(0deg,rgba(238,252,250,.66) 0%,rgba(208,240,239,.3) 31%,rgba(255,255,255,.1) 55%,transparent 82%);opacity:.4;transform-origin:center bottom}
.cinematic-atmosphere .ground-haze:before{content:"";position:absolute;inset:25% 2% 9%;background:radial-gradient(ellipse at 28% 78%,rgba(255,255,255,.55),transparent 48%),radial-gradient(ellipse at 74% 70%,rgba(122,218,213,.18),transparent 53%)}
.cinematic-atmosphere .sun-glow{right:7%;top:-13%;width:34%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,243,196,.32),rgba(183,239,231,.15) 34%,transparent 70%);opacity:.35}
.cinematic-atmosphere .mist,.cinematic-atmosphere .glow-orb{display:none!important}
@media(max-width:980px){.cinematic-atmosphere .hero-light{left:-20%!important;top:-12%!important;width:100%;height:90%}.cinematic-atmosphere .ground-haze{bottom:-9%;height:34%}.cinematic-atmosphere .sun-glow{right:-3%;top:-16%;width:45%}}
@media(max-width:768px){.cinematic-atmosphere .ground-haze{opacity:.3}.cinematic-atmosphere .sun-glow{opacity:.24}}

/* High-visibility calibration: clearly readable motion over a bright photograph */
.hero-visual>.cinematic-atmosphere{z-index:4!important}
.hero-visual>.care-card,.hero-visual>.emergency{z-index:5}
.cinematic-atmosphere .hero-light{left:-18%!important;top:-24%!important;width:58%!important;height:145%!important;background:linear-gradient(105deg,transparent 10%,rgba(49,183,199,.08) 27%,rgba(83,218,210,.42) 43%,rgba(255,225,151,.34) 52%,rgba(255,255,255,.24) 59%,rgba(38,164,188,.09) 69%,transparent 84%)!important;opacity:.65;transform-origin:center}
.cinematic-atmosphere .ground-haze{left:-10%;right:-10%;bottom:-5%;height:34%;background:linear-gradient(0deg,rgba(88,201,204,.42),rgba(215,250,246,.52) 30%,rgba(255,255,255,.2) 57%,transparent 88%);opacity:.58}
.cinematic-atmosphere .ground-haze:before{background:radial-gradient(ellipse at 25% 78%,rgba(255,255,255,.78),transparent 45%),radial-gradient(ellipse at 72% 76%,rgba(54,183,191,.35),transparent 55%)}
.cinematic-atmosphere .sun-glow{right:8%;top:3%;width:25%;background:radial-gradient(circle,rgba(255,239,166,.72) 0%,rgba(99,226,211,.4) 28%,rgba(32,160,191,.17) 48%,transparent 72%);opacity:.62}
@media(max-width:980px){.hero-visual>.cinematic-atmosphere{z-index:3!important}.cinematic-atmosphere .hero-light{left:-24%!important;width:76%!important}.cinematic-atmosphere .ground-haze{height:30%}.cinematic-atmosphere .sun-glow{right:4%;top:2%;width:31%}}

/* First-screen fit: hero and all six service cards remain visible together */
@media(min-width:1200px){
  .hero{height:clamp(350px,calc(100svh - 294px),505px);min-height:350px;max-height:505px;padding:22px 0 7px}
  .hero-grid{height:100%}
  .hero-copy h1{font-size:clamp(2.35rem,3.75vw,4.15rem);margin:5px 0 9px;line-height:1.02}
  .hero-copy>p{margin-bottom:10px;font-size:.88rem;line-height:1.55}
  .hero-assurance{margin-top:10px}
  .hero-assurance span{padding-top:8px;padding-bottom:4px}
  .hero-visual{height:100%;min-height:0}
  .services{margin-top:6px;margin-bottom:18px}
  .service-shell{gap:8px}
  .service{min-height:142px;padding:12px 12px 10px}
  .service-icon{width:42px;height:42px;flex-basis:42px;border-radius:13px!important}
  .service-icon svg{width:22px;height:22px}
  .service strong{margin-top:7px;font-size:.77rem}
  .service small{font-size:.6rem;line-height:1.3}
  .service-go{padding-top:6px;font-size:.59rem}
}
@media(min-width:1200px) and (max-height:760px){
  .utility-bar{display:none}
  .hero{height:calc(100svh - 244px);min-height:310px;padding-top:15px}
  .hero-copy .eyebrow{font-size:.68rem}
  .hero-copy h1{font-size:clamp(2.15rem,3.45vw,3.65rem)}
  .hero-copy>p{font-size:.8rem;line-height:1.45}
  .hero-assurance{margin-top:7px}
  .service{min-height:132px;padding-top:10px;padding-bottom:9px}
}

/* Remove the stacked gap below services and bring the next content into view */
@media(min-width:981px){
  .services{margin-bottom:0}
  .care-path{padding-top:40px;padding-bottom:78px}
}
@media(max-width:980px){.care-path{padding-top:52px}}
@media(max-width:768px){.care-path{padding-top:42px}}

/* Clinical daylight glow: restrained atmosphere tied to the hospital photo */
.hero-visual>.cinematic-atmosphere{
  z-index:4!important;
  isolation:isolate;
}
.cinematic-atmosphere .hero-light{
  left:-22%!important;
  top:-12%!important;
  width:55%!important;
  height:124%!important;
  border-radius:0!important;
  background:linear-gradient(103deg,transparent 8%,rgba(28,145,168,.08) 28%,rgba(91,211,201,.32) 45%,rgba(255,255,255,.2) 55%,rgba(255,221,151,.14) 62%,transparent 82%)!important;
  opacity:.46;
}
.cinematic-atmosphere .ground-haze{
  left:-6%;
  right:-6%;
  bottom:-8%;
  height:29%;
  background:linear-gradient(0deg,rgba(70,190,193,.28),rgba(219,249,246,.42) 34%,rgba(255,255,255,.12) 62%,transparent 91%);
  opacity:.4;
}
.cinematic-atmosphere .ground-haze:before{
  inset:20% 0 4%;
  background:radial-gradient(ellipse at 24% 82%,rgba(255,255,255,.72),transparent 43%),radial-gradient(ellipse at 76% 78%,rgba(69,193,195,.2),transparent 52%);
}
.cinematic-atmosphere .sun-glow{
  right:5%;
  top:-8%;
  width:28%;
  background:radial-gradient(circle,rgba(255,239,184,.58),rgba(186,239,229,.22) 34%,rgba(81,192,201,.08) 52%,transparent 72%);
  opacity:.34;
}
.hero-visual>.cinematic-atmosphere:after{
  content:"";
  position:absolute;
  z-index:3;
  right:2%;
  bottom:0;
  width:58%;
  height:18px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(93,211,202,.48),rgba(93,211,202,.13) 42%,transparent 72%);
  filter:blur(7px);
  opacity:.58;
}
@media(max-width:980px){
  .cinematic-atmosphere .hero-light{left:-28%!important;top:-10%!important;width:72%!important;height:112%!important}
  .cinematic-atmosphere .ground-haze{height:25%;opacity:.34}
  .cinematic-atmosphere .sun-glow{right:-2%;top:-12%;width:38%}
  .hero-visual>.cinematic-atmosphere:after{right:5%;width:70%;opacity:.46}
}
@media(max-width:768px){
  .cinematic-atmosphere .hero-light{opacity:.34}
  .cinematic-atmosphere .ground-haze{opacity:.27}
  .cinematic-atmosphere .sun-glow{opacity:.24}
  .hero-visual>.cinematic-atmosphere:after{height:12px;filter:blur(5px);opacity:.38}
}
@media(prefers-reduced-motion:reduce){
  .cinematic-atmosphere .hero-light,.cinematic-atmosphere .ground-haze,.cinematic-atmosphere .sun-glow{transform:none!important;opacity:.34!important}
}

/* Visibility boost: readable over the bright sky without obscuring the building */
.hero-visual>.cinematic-atmosphere:before{
  content:"";
  position:absolute;
  z-index:2;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(ellipse 38% 82% at 17% 54%,rgba(55,217,211,.58) 0%,rgba(17,151,177,.28) 32%,rgba(255,255,255,.1) 52%,transparent 72%),
    radial-gradient(ellipse 58% 24% at 70% 98%,rgba(74,225,208,.62) 0%,rgba(16,148,174,.28) 38%,transparent 72%);
  mix-blend-mode:screen;
  opacity:.78;
  animation:clinicalGlowPulse 5.5s ease-in-out infinite alternate;
}
.hero-visual>.cinematic-atmosphere:after{
  height:30px;
  background:radial-gradient(ellipse,rgba(102,255,231,.82),rgba(26,181,190,.36) 40%,transparent 73%);
  filter:blur(9px);
  opacity:.82;
  animation:clinicalEdgePulse 5.5s ease-in-out infinite alternate;
}
.cinematic-atmosphere .hero-light{
  background:linear-gradient(103deg,transparent 7%,rgba(16,139,172,.16) 25%,rgba(65,231,215,.6) 43%,rgba(255,255,255,.34) 54%,rgba(255,219,135,.25) 62%,transparent 82%)!important;
}
.cinematic-atmosphere .sun-glow{
  background:radial-gradient(circle,rgba(255,236,153,.8),rgba(122,237,218,.36) 32%,rgba(21,157,187,.14) 52%,transparent 72%);
}
@keyframes clinicalGlowPulse{
  from{opacity:.55;transform:translate3d(-1.5%,1%,0) scale(.98)}
  to{opacity:.9;transform:translate3d(2%,-1%,0) scale(1.04)}
}
@keyframes clinicalEdgePulse{
  from{opacity:.55;transform:scaleX(.9)}
  to{opacity:.9;transform:scaleX(1.08)}
}
@media(max-width:768px){
  .hero-visual>.cinematic-atmosphere:before{opacity:.62;background:radial-gradient(ellipse 54% 88% at 13% 52%,rgba(55,217,211,.5),rgba(17,151,177,.22) 35%,transparent 70%),radial-gradient(ellipse 70% 24% at 68% 98%,rgba(74,225,208,.48),rgba(16,148,174,.2) 40%,transparent 72%)}
  .hero-visual>.cinematic-atmosphere:after{height:20px;opacity:.68}
}
@media(prefers-reduced-motion:reduce){
  .hero-visual>.cinematic-atmosphere:before,.hero-visual>.cinematic-atmosphere:after{animation:none!important;transform:none!important;opacity:.7}
}

/* Keep the hospital photograph still; only the ambient light may move. */
.hero-visual{opacity:1!important;transform:none!important;transition:none!important;animation:none!important;will-change:auto}
.hero .photo img{animation:none!important;transform:none!important;will-change:auto!important}

/* Stable mobile header: avoid sticky + transform jumps as browser chrome resizes. */
@media(max-width:768px){
  body{padding-top:68px}
  header,header.is-scrolled{
    position:fixed;
    inset:0 0 auto;
    height:68px;
    opacity:1!important;
    transform:none!important;
    animation:none!important;
  }
  header .nav,header.is-scrolled .nav{height:68px}
  .mobile-panel,header.is-scrolled .mobile-panel{inset:72px 14px auto!important}
}

/* Large golden snow, confined to the hospital photograph. */
.gold-snow{
  position:absolute;
  z-index:6;
  inset:-28px -3vw -10px 0;
  overflow:hidden;
  border-radius:0 0 72px 0;
  pointer-events:none;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 8%,#000 22%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 8%,#000 22%);
}
.gold-snow i{
  --size:5px;
  --left:50%;
  --duration:9s;
  --delay:0s;
  --drift:35px;
  position:absolute;
  left:var(--left);
  top:-12%;
  width:var(--size);
  height:var(--size);
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,250,210,.9) 0 12%,rgba(246,210,119,.68) 32%,rgba(221,167,62,.22) 58%,transparent 76%);
  box-shadow:0 0 6px rgba(255,224,145,.58),0 0 13px rgba(226,169,61,.26);
  filter:blur(.6px);
  opacity:0;
  animation:goldSnowFall var(--duration) linear var(--delay) infinite;
  will-change:transform,opacity;
}
.gold-snow i:nth-child(1){--left:5%;--size:5px;--duration:13s;--delay:-2s;--drift:28px}
.gold-snow i:nth-child(2){--left:12%;--size:3px;--duration:16s;--delay:-7s;--drift:-18px}
.gold-snow i:nth-child(3){--left:19%;--size:7px;--duration:14.5s;--delay:-4s;--drift:34px}
.gold-snow i:nth-child(4){--left:27%;--size:4px;--duration:17s;--delay:-9s;--drift:-24px}
.gold-snow i:nth-child(5){--left:34%;--size:6px;--duration:13.8s;--delay:-6s;--drift:22px}
.gold-snow i:nth-child(6){--left:41%;--size:3px;--duration:15.5s;--delay:-1s;--drift:-17px}
.gold-snow i:nth-child(7){--left:48%;--size:7px;--duration:14s;--delay:-8s;--drift:30px}
.gold-snow i:nth-child(8){--left:55%;--size:4px;--duration:17.5s;--delay:-5s;--drift:-28px}
.gold-snow i:nth-child(9){--left:62%;--size:6px;--duration:13.5s;--delay:-3s;--drift:24px}
.gold-snow i:nth-child(10){--left:69%;--size:3px;--duration:16.5s;--delay:-10s;--drift:-20px}
.gold-snow i:nth-child(11){--left:76%;--size:6px;--duration:14.8s;--delay:-6.5s;--drift:32px}
.gold-snow i:nth-child(12){--left:83%;--size:4px;--duration:18s;--delay:-2.5s;--drift:-23px}
.gold-snow i:nth-child(13){--left:90%;--size:7px;--duration:13.7s;--delay:-7.5s;--drift:18px}
.gold-snow i:nth-child(14){--left:96%;--size:3px;--duration:15.8s;--delay:-4.5s;--drift:-29px}
.gold-snow i:nth-child(15){--left:23%;--size:3px;--duration:12.8s;--delay:-5.5s;--drift:15px}
.gold-snow i:nth-child(16){--left:46%;--size:5px;--duration:16.8s;--delay:-9.5s;--drift:-22px}
.gold-snow i:nth-child(17){--left:71%;--size:3px;--duration:13.3s;--delay:-1.5s;--drift:26px}
.gold-snow i:nth-child(18){--left:87%;--size:5px;--duration:15.2s;--delay:-8.5s;--drift:-16px}
@keyframes goldSnowFall{
  0%{top:-12%;transform:translate3d(0,0,0) rotate(0deg);opacity:0}
  12%{opacity:.62}
  82%{opacity:.48}
  100%{top:110%;transform:translate3d(var(--drift),0,0) rotate(300deg);opacity:0}
}
@media(max-width:980px){
  .gold-snow{inset:0;border-radius:24px;mask-image:none;-webkit-mask-image:none}
}
@media(max-width:768px){
  .gold-snow{border-radius:20px}
  .gold-snow i:nth-child(n+13){display:none}
}
@media(max-width:430px){.gold-snow{border-radius:17px}}
@media(prefers-reduced-motion:reduce){.gold-snow{display:none}}

/* The LCP image must paint immediately; entrance motion belongs to supporting UI. */
.hero .photo{animation:none!important;clip-path:none!important;will-change:auto!important}

/* Stat labels must remain inside the compact impact band during reveal. */
.impact .stat{translate:none}

/* Service-card color system: stronger category recognition, calm clinical contrast. */
:root{
  --service-blue:#087fa8;
  --service-blue-soft:#cceef7;
  --service-green:#07856a;
  --service-green-soft:#d0f2e6;
  --service-red:#d83a4d;
  --service-red-soft:#f9d9df;
  --service-indigo:#4b6fa8;
  --service-indigo-soft:#dce6f5;
  --service-gold:#936817;
  --service-gold-soft:#f4e5c1;
  --service-teal:#1b778d;
  --service-teal-soft:#d3ebef;
}
.service:nth-child(1){--accent:var(--service-blue);--soft:var(--service-blue-soft)}
.service:nth-child(2){--accent:var(--service-green);--soft:var(--service-green-soft)}
.service:nth-child(3){--accent:var(--service-red);--soft:var(--service-red-soft)}
.service:nth-child(4){--accent:var(--service-indigo);--soft:var(--service-indigo-soft)}
.service:nth-child(5){--accent:var(--service-gold);--soft:var(--service-gold-soft)}
.service:nth-child(6){--accent:var(--service-teal);--soft:var(--service-teal-soft)}
.service{
  background:linear-gradient(132deg,#fff 0 48%,color-mix(in srgb,var(--soft) 72%,#fff) 100%);
  border-color:color-mix(in srgb,var(--accent) 22%,#d7e5e8)!important;
  box-shadow:0 9px 24px color-mix(in srgb,var(--accent) 9%,transparent)!important;
}
.service:before{background:var(--accent);opacity:1}
.service:after{border-color:color-mix(in srgb,var(--accent) 13%,transparent);opacity:1}
.service-icon{
  background:color-mix(in srgb,var(--soft) 88%,#fff)!important;
  color:var(--accent)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent),0 8px 18px color-mix(in srgb,var(--accent) 13%,transparent);
}
.service-go{color:var(--accent);border-top-color:color-mix(in srgb,var(--accent) 18%,transparent)}
.service-go b{background:var(--accent);color:#fff;box-shadow:0 5px 13px color-mix(in srgb,var(--accent) 24%,transparent)}
.service:hover{
  background:linear-gradient(132deg,#fff 0 38%,color-mix(in srgb,var(--soft) 88%,#fff) 100%);
  border-color:color-mix(in srgb,var(--accent) 42%,#d7e5e8)!important;
  box-shadow:0 17px 36px color-mix(in srgb,var(--accent) 16%,transparent)!important;
}

/* Reliable desktop sticky nav: transforms on the sticky element break some engines. */
@media(min-width:769px){
  header,header.is-scrolled{
    position:sticky;
    top:0;
    opacity:1!important;
    transform:none!important;
    animation:none!important;
  }
}

@media(max-width:640px){
  .bottom-nav .bottom-emergency{color:var(--coral)}
  .bottom-nav .bottom-emergency b{color:#fff;background:var(--coral);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:.78rem;box-shadow:0 5px 13px rgba(216,74,87,.25)}
}

/* Mobile motion profile: preserve hierarchy without competing animation loops. */
@media(max-width:768px){
  [data-reveal]{transition:opacity .38s ease,transform .38s ease}
  .service:nth-child(n),
  .primary:after,
  .pulse,
  .hero .emergency,
  .impact:after,
  .route-orbit,
  .route-steps i:after,
  .bottom-nav .appoint i,
  .cinematic-atmosphere:before,
  .cinematic-atmosphere:after{
    animation:none!important;
  }
  .service{transition:box-shadow .2s,border-color .2s!important}
  .service:hover{translate:0 0}
  .gold-snow i:nth-child(n+7){display:none}
  .gold-snow i{animation-duration:18s;filter:blur(.7px)}
}

/* Balanced first fold: end the initial viewport after the six service cards */
@media(min-width:1200px) and (min-height:761px){
  .hero{height:calc(100svh - 295px);min-height:480px;max-height:none}
  .hero-grid{align-items:center}
  .services{margin-top:6px;margin-bottom:20px}
}
