:root{--navy:#143b58;--navy-deep:#092b42;--green:#6ca849;--teal:#269aa0;--purple:#7851a9;--cream:#f5f3ed;--white:#fff;--ink:#17303f;--muted:#61727b;--line:#dbe3e3;--shadow:0 20px 50px rgba(16,51,70,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"DM Sans",sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.utility-bar{background:var(--navy-deep);color:#dce8ed;padding:8px clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.04em}.utility-bar p{margin:0}.utility-bar p:last-child{display:flex;align-items:center;gap:9px;color:#a6c9ce}.utility-bar i{width:3px;height:3px;background:var(--green);border-radius:50%}
.site-header{height:92px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10;background:rgba(255,255,255,.95);border-bottom:1px solid rgba(20,59,88,.08);backdrop-filter:blur(10px)}.brand{width:245px;height:70px;overflow:hidden;display:block}.brand img{width:100%;height:100%;object-fit:cover;object-position:center 15%}.site-nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:600}.site-nav>a:not(.nav-cta){position:relative}.site-nav>a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--teal);transition:.2s}.site-nav>a:hover::after{right:0}.language-toggle{border:1px solid #b7c9cd;background:transparent;border-radius:99px;padding:8px 12px;color:var(--navy);font:inherit;font-size:12px;cursor:pointer;transition:.2s}.language-toggle:hover{border-color:var(--teal);background:#eff8f7}.nav-cta{background:var(--navy);color:#fff;padding:13px 20px;border-radius:99px;transition:.2s}.nav-cta:hover{background:var(--teal)}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle span:not(.sr-only){display:block;width:25px;height:2px;background:var(--navy);margin:5px}
.hero{min-height:720px;display:grid;grid-template-columns:1.03fr .97fr;background:linear-gradient(115deg,#f7f7f2 0%,#eef6f4 62%,#e3f1ed 100%);overflow:hidden}.hero-copy{padding:clamp(80px,10vw,145px) clamp(30px,6vw,94px)}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.18em;color:var(--teal);font-size:12px;font-weight:700;margin:0 0 18px}.hero h1,.intro h2,.section-heading h2,.path h2,.promise h2,.contact h2{font-family:"Libre Franklin",sans-serif;line-height:1.08;letter-spacing:-.045em;margin:0}.hero h1{font-size:clamp(45px,5.3vw,78px);color:var(--navy-deep);max-width:760px}.hero h1 em{font-style:normal;color:var(--purple)}.hero-text{font-size:18px;max-width:590px;color:var(--muted);margin:30px 0}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{padding:15px 23px;border-radius:4px;font-size:14px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--navy);color:#fff}.button-primary:hover{background:var(--teal)}.button-ghost{border:1px solid #aec0c5}.button-ghost:hover{background:#fff}.trust-line{display:flex;align-items:center;gap:10px;margin-top:46px;font-size:13px;color:var(--muted)}.trust-line span{font-size:25px;color:var(--green);font-weight:700}.trust-line p{line-height:1.35;margin:0}.trust-line i{width:4px;height:4px;background:var(--purple);border-radius:50%}.hero-visual{position:relative;background:linear-gradient(150deg,#247f85,var(--navy));display:grid;place-items:end center;padding-top:50px;isolation:isolate}.hero-visual::before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.22);border-radius:50%;top:55px;right:-150px;z-index:-1}.hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,47,67,.08),rgba(7,47,67,.3));z-index:-1}.arch-photo{width:min(86%,590px);height:90%;border-radius:300px 300px 0 0;background:linear-gradient(180deg,rgba(13,57,73,0) 58%,rgba(13,57,73,.18)),url("assets/care-hero-stethoscope.jpg") 56% 66%/cover no-repeat;box-shadow:0 30px 60px rgba(5,30,44,.32);position:relative;overflow:hidden}.floating-note{position:absolute;left:5%;bottom:65px;background:#fff;padding:18px 25px;box-shadow:var(--shadow);border-left:4px solid var(--green)}.floating-note span,.floating-note strong{display:block}.floating-note span{font-size:12px;color:var(--muted)}.floating-note strong{color:var(--navy);font-size:16px}
.intro{padding:120px clamp(30px,13vw,200px);text-align:center}.intro h2{font-size:clamp(36px,4.4vw,62px);color:var(--navy);max-width:950px;margin:auto}.intro>p:last-of-type{font-size:18px;color:var(--muted);max-width:720px;margin:30px auto 0}.intro-points{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:34px}.intro-points span{border:1px solid var(--line);border-radius:999px;padding:7px 13px;color:var(--navy);font-size:12px;font-weight:700}
.care-moments{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(45px,8vw,135px);padding:110px clamp(24px,8vw,130px);background:linear-gradient(110deg,#eef6f3,#f9f7f1)}.care-moment-photo{min-height:620px;border-radius:220px 220px 14px 14px;background:linear-gradient(180deg,rgba(9,43,66,0),rgba(9,43,66,.18)),url("assets/family-calendar.jpg") center 63%/cover no-repeat;box-shadow:0 30px 60px rgba(16,51,70,.18);position:relative;overflow:hidden}.care-moment-photo::after{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.58);border-radius:205px 205px 5px 5px}.care-moment-copy h2{font-family:"Libre Franklin",sans-serif;font-size:clamp(35px,4vw,56px);line-height:1.08;letter-spacing:-.045em;color:var(--navy);margin:0;max-width:580px}.care-moment-copy>p:not(.section-kicker){font-size:17px;color:var(--muted);max-width:570px;margin:26px 0 36px}.care-moment-detail{display:flex;align-items:center;gap:16px;border-top:1px solid var(--line);padding-top:23px;max-width:510px}.care-moment-detail span{font-size:12px;color:var(--teal);font-weight:700}.care-moment-detail p{margin:0;color:var(--navy);font-weight:600;font-size:14px}
.services{padding:100px clamp(24px,6vw,90px);background:var(--cream)}.section-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:end;margin-bottom:55px}.section-heading h2,.path h2,.promise h2,.contact h2{font-size:clamp(35px,4vw,56px);color:var(--navy)}.section-heading>p{color:var(--muted);margin:0 0 4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;padding:38px 35px 34px;border-bottom:4px solid transparent;transition:.25s}.service-card:hover{transform:translateY(-8px);border-color:var(--green);box-shadow:var(--shadow)}.number{float:right;font-size:11px;color:#9bafb4}.icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#e9f5f1;color:var(--teal);font-size:24px}.service-card:nth-child(2) .icon{background:#f0eaf7;color:var(--purple)}.service-card:nth-child(3) .icon{background:#edf4e8;color:var(--green)}.service-card h3{font-size:22px;color:var(--navy);margin:30px 0 12px}.service-card p{color:var(--muted);margin:0}.service-card ul{display:flex;gap:8px;flex-wrap:wrap;padding:22px 0 0;margin:23px 0 0;border-top:1px solid var(--line);list-style:none}.service-card li{font-size:11px;font-weight:700;color:var(--navy);padding-right:8px;border-right:1px solid var(--line)}.service-card li:last-child{border:0}
.path{padding:110px clamp(24px,8vw,130px);display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(35px,8vw,120px);background:#fff}.path-heading h2{max-width:500px}.path-steps{list-style:none;padding:0;margin:0}.path-steps li{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:0 0 34px;margin:0 0 30px;border-bottom:1px solid var(--line)}.path-steps li:last-child{padding:0;margin:0;border:0}.path-steps span{width:45px;height:45px;display:grid;place-items:center;border-radius:50%;background:#e8f4f0;color:var(--teal);font-weight:700}.path-steps li:nth-child(2) span{background:#f0eaf7;color:var(--purple)}.path-steps li:nth-child(3) span{background:#edf4e8;color:var(--green)}.path-steps h3{font-size:21px;color:var(--navy);margin:4px 0}.path-steps p{color:var(--muted);margin:0;max-width:500px}
.promise{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.promise-image{background:linear-gradient(90deg,rgba(9,43,66,.18),rgba(9,43,66,.02)),url("assets/care-planning.jpg") 58% center/cover no-repeat,#e6efec;position:relative}.promise-image::after{content:"";position:absolute;inset:28px;border:1px solid rgba(255,255,255,.58);pointer-events:none}.promise-copy{padding:110px clamp(40px,8vw,120px);display:flex;flex-direction:column;justify-content:center}.promise-copy>p:not(.section-kicker){color:var(--muted);font-size:17px}.promise ul{padding:0;list-style:none;margin:24px 0 0}.promise li{padding:12px 0;border-top:1px solid var(--line);font-weight:600}.promise li span{color:var(--green);margin-right:10px}
.contact{background:var(--navy-deep);color:#fff;padding:110px clamp(24px,6vw,90px);display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact h2{color:#fff}.contact-copy>p:last-of-type{color:#b8c9d2;max-width:470px}.contact-badge{display:inline-flex;gap:10px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:10px 13px;margin-top:24px;color:#dce9ed;font-size:12px}.contact-badge span{color:#7fc1a5;font-size:11px}.contact-cards{display:grid;gap:12px}.contact-cards>a{border:1px solid rgba(255,255,255,.16);padding:21px 24px;display:grid;grid-template-columns:90px 1fr auto;align-items:center;transition:.2s}.contact-cards>a:hover{background:#fff;color:var(--navy);transform:translateX(6px)}.contact-cards small{text-transform:uppercase;letter-spacing:.15em;color:#81c5c6}.contact-cards strong{font-size:17px;line-height:1.35}.contact-cards span{font-size:24px}
footer{padding:48px clamp(24px,6vw,90px);display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:35px;color:var(--muted);font-size:13px}footer img{height:92px;width:220px;object-fit:contain;object-position:center}.copyright{text-align:right}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:78px}.brand{width:190px;height:58px}.menu-toggle{display:block;z-index:2}.site-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:26px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding-top:75px}.hero-visual{min-height:520px}.section-heading,.care-moments,.path,.promise,.contact{grid-template-columns:1fr}.care-moments{gap:50px}.care-moment-photo{min-height:510px}.path{gap:50px}.service-grid{grid-template-columns:1fr}.promise-image{min-height:430px}.contact{gap:45px}footer{grid-template-columns:1fr;text-align:center;justify-items:center}.copyright{text-align:center}}
@media(max-width:560px){.utility-bar{padding:8px 18px}.utility-bar p:first-child{display:none}.hero h1{font-size:43px}.hero-visual{min-height:430px}.floating-note{left:18px;bottom:22px}.trust-line{flex-wrap:wrap}.section-heading{gap:22px}.care-moments{padding:80px 24px}.care-moment-photo{min-height:450px;border-radius:150px 150px 10px 10px}.care-moment-photo::after{border-radius:140px 140px 4px 4px}.path{padding:85px 24px}.path-steps li{grid-template-columns:50px 1fr;gap:14px}.contact-cards>a{grid-template-columns:1fr;gap:5px}.contact-cards span{display:none}.promise-copy{padding:75px 27px}.intro{padding:85px 25px}.services{padding:80px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* Motion layer */
body{overflow-x:hidden}body::before{content:"";position:fixed;z-index:30;left:var(--glow-x,-20%);top:var(--glow-y,-20%);width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(38,154,160,.11),rgba(38,154,160,0) 70%);transform:translate(-50%,-50%);pointer-events:none;mix-blend-mode:multiply;transition:left .18s ease-out,top .18s ease-out}.scroll-progress{position:fixed;z-index:100;top:0;left:0;width:var(--scroll-progress,0%);height:4px;background:linear-gradient(90deg,var(--teal),var(--green),var(--purple));box-shadow:0 0 14px rgba(38,154,160,.55);transition:width .08s linear}.cursor-glow{position:fixed;z-index:31;left:var(--cursor-x,-100px);top:var(--cursor-y,-100px);width:12px;height:12px;border-radius:50%;background:rgba(38,154,160,.55);box-shadow:0 0 0 8px rgba(38,154,160,.08),0 0 28px rgba(38,154,160,.28);pointer-events:none;transform:translate(-50%,-50%);transition:left .13s ease-out,top .13s ease-out}.site-header.is-scrolled{position:sticky;top:0;box-shadow:0 8px 28px rgba(9,43,66,.1);animation:header-arrive .35s ease both}.utility-bar{position:relative;overflow:hidden}.utility-bar::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 42%,rgba(255,255,255,.11) 50%,transparent 58%);transform:translateX(-140%);animation:utility-sheen 8s ease-in-out infinite;pointer-events:none}
.button,.language-toggle,.nav-cta{position:relative;overflow:hidden}.button::after,.language-toggle::after,.nav-cta::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.28) 50%,transparent 62%);transform:translateX(-120%);transition:transform .55s ease}.button:hover::after,.language-toggle:hover::after,.nav-cta:hover::after{transform:translateX(120%)}.ripple{position:absolute;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);transform:translate(-50%,-50%) scale(0);animation:ripple .68s ease-out forwards;pointer-events:none}.language-toggle .ripple{background:rgba(38,154,160,.25)}
.hero-copy{position:relative}.hero-copy::before{content:"";position:absolute;width:110px;height:110px;border:1px solid rgba(120,81,169,.15);border-radius:50%;left:-46px;top:65px;animation:slow-orbit 15s linear infinite}.eyebrow{animation:eyebrow-in .8s .05s both}.hero h1{animation:title-in .85s .12s cubic-bezier(.2,.8,.2,1) both}.hero-text{animation:title-in .85s .22s cubic-bezier(.2,.8,.2,1) both}.hero-actions{animation:title-in .85s .32s cubic-bezier(.2,.8,.2,1) both}.trust-line{animation:title-in .85s .42s cubic-bezier(.2,.8,.2,1) both}.hero-visual::before{animation:orbit-ring 16s linear infinite}.hero-visual::after{background:linear-gradient(180deg,rgba(7,47,67,.06),rgba(7,47,67,.36));animation:hero-wash 7s ease-in-out infinite alternate}.arch-photo{will-change:transform;background-position:56% 66%;transition:filter .5s ease,box-shadow .5s ease;filter:saturate(.96) contrast(1.02)}.hero-visual:hover .arch-photo{filter:saturate(1.06) contrast(1.04);box-shadow:0 35px 75px rgba(5,30,44,.42)}.floating-note{will-change:transform;animation:note-breathe 3.8s ease-in-out infinite}.hero-spark{position:absolute;z-index:1;width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 7px rgba(255,255,255,.12),0 0 22px rgba(255,255,255,.7);pointer-events:none}.spark-one{top:18%;left:16%;animation:spark-float 5s ease-in-out infinite}.spark-two{top:53%;right:13%;width:5px;height:5px;animation:spark-float 4s .8s ease-in-out infinite reverse}.spark-three{bottom:19%;right:30%;width:7px;height:7px;background:#b1e4d2;animation:spark-float 6s 1.2s ease-in-out infinite}
.intro-points span{transition:transform .25s,box-shadow .25s}.intro-points span:hover{transform:translateY(-4px);box-shadow:0 9px 18px rgba(16,51,70,.1)}.service-card{position:relative;overflow:hidden;transform-style:preserve-3d;will-change:transform}.service-card::before{content:"";position:absolute;z-index:0;inset:0;background:radial-gradient(300px circle at var(--pointer-x,50%) var(--pointer-y,50%),rgba(38,154,160,.13),transparent 45%);opacity:0;transition:opacity .35s;pointer-events:none}.service-card::after{content:"";position:absolute;z-index:0;left:-100%;top:0;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);transform:skewX(-18deg);transition:left .6s ease;pointer-events:none}.service-card>*{position:relative;z-index:1}.service-card:hover::before{opacity:1}.service-card:hover::after{left:150%}.service-card .icon{transition:transform .3s,box-shadow .3s}.service-card:hover .icon{transform:translateZ(28px) rotate(-8deg) scale(1.1);box-shadow:0 9px 20px rgba(38,154,160,.18)}.service-card h3{transition:color .25s}.service-card:hover h3{color:var(--teal)}
.path-steps li{position:relative;transition:transform .3s ease}.path-steps li::after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:2px;background:linear-gradient(90deg,var(--teal),var(--green));transition:width .6s ease}.path-steps li:hover{transform:translateX(10px)}.path-steps li:hover::after{width:100%}.path-steps li:hover span{animation:step-pop .55s ease both}.promise-image{overflow:hidden}.promise-image::before{content:"";position:absolute;z-index:1;inset:-35%;background:linear-gradient(120deg,transparent 42%,rgba(255,255,255,.3) 50%,transparent 58%);transform:translateX(-90%) rotate(8deg);animation:photo-sheen 9s ease-in-out infinite;pointer-events:none}.promise-copy{position:relative}.promise-copy::after{content:"";position:absolute;width:130px;height:130px;border:1px solid rgba(38,154,160,.15);border-radius:50%;right:4%;bottom:6%;animation:slow-orbit 17s linear infinite reverse;pointer-events:none}
.contact{position:relative;overflow:hidden;background:linear-gradient(115deg,#092b42,#103b54,#092b42);background-size:180% 180%;animation:contact-shift 13s ease infinite}.contact::before,.contact::after{content:"";position:absolute;border-radius:50%;pointer-events:none}.contact::before{width:420px;height:420px;right:-150px;top:-240px;background:radial-gradient(circle,rgba(38,154,160,.25),transparent 68%);animation:orb-drift 12s ease-in-out infinite}.contact::after{width:350px;height:350px;left:20%;bottom:-250px;background:radial-gradient(circle,rgba(120,81,169,.19),transparent 68%);animation:orb-drift 15s 1s ease-in-out infinite reverse}.contact>*{position:relative;z-index:1}.contact-cards>a{overflow:hidden}.contact-cards>a::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);transform:translateX(-130%);transition:transform .55s ease}.contact-cards>a:hover::after{transform:translateX(130%)}.contact-badge{animation:badge-pulse 2.8s ease-in-out infinite}.contact-note{animation:note-in .8s .25s both}
footer{position:relative;overflow:hidden}footer::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-125px;bottom:-180px;background:radial-gradient(circle,rgba(38,154,160,.12),transparent 68%);animation:orb-drift 14s ease-in-out infinite}.reveal:nth-child(2){transition-delay:.09s}.reveal:nth-child(3){transition-delay:.18s}.reveal:nth-child(4){transition-delay:.27s}
@keyframes header-arrive{from{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes utility-sheen{0%,63%{transform:translateX(-140%)}78%,100%{transform:translateX(140%)}}@keyframes ripple{to{transform:translate(-50%,-50%) scale(28);opacity:0}}@keyframes eyebrow-in{from{opacity:0;transform:translateY(12px);letter-spacing:.3em}to{opacity:1;transform:none}}@keyframes title-in{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes slow-orbit{to{transform:rotate(360deg)}}@keyframes orbit-ring{to{transform:rotate(360deg)}}@keyframes hero-wash{from{opacity:.62}to{opacity:1}}@keyframes note-breathe{50%{transform:translateY(-8px) scale(1.015)}}@keyframes spark-float{50%{transform:translate3d(12px,-22px,0) scale(1.35);opacity:.45}}@keyframes step-pop{50%{transform:scale(1.18) rotate(10deg)}}@keyframes photo-sheen{0%,70%{transform:translateX(-90%) rotate(8deg)}100%{transform:translateX(110%) rotate(8deg)}}@keyframes contact-shift{50%{background-position:100% 50%}}@keyframes orb-drift{50%{transform:translate3d(-25px,35px,0) scale(1.12)}}@keyframes badge-pulse{50%{box-shadow:0 0 0 7px rgba(127,193,165,.05)}}@keyframes note-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:900px){.cursor-glow,body::before{display:none}.site-header.is-scrolled{box-shadow:none;animation:none}.hero-copy::before{display:none}.contact-note{grid-column:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.cursor-glow,.scroll-progress{display:none}}

.site-header{position:sticky;top:0}.parallax{transform:translate3d(var(--parallax-x,0px),var(--parallax-y,0px),0)}.floating-note{animation-name:note-breathe-parallax}@keyframes note-breathe-parallax{50%{transform:translate3d(var(--parallax-x,0px),calc(var(--parallax-y,0px) - 8px),0) scale(1.015)}}
.email-toast{position:fixed;z-index:150;right:24px;bottom:24px;max-width:330px;padding:14px 17px;background:#fff;color:var(--navy);border-left:4px solid var(--teal);box-shadow:0 18px 45px rgba(9,43,66,.24);font-size:13px;font-weight:600;opacity:0;transform:translateY(18px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}.email-toast.show{opacity:1;transform:translateY(0)}
@media(max-width:560px){.email-toast{left:18px;right:18px;bottom:18px;max-width:none}}
