/* CareFlow: white space, soft sage surfaces and small navy/gold accents. */
body,body.ecf-integrated,body.ecf-page{--ink:#0f2742;--muted:#45566a;--tint:#f4f6f5;--line:#d7dfdf;--navy:#0f2742;--off-white:#f5f7f5;--green-pale:#f4f6f5;--ecf-tint:#f4f6f5;--ecf-line:#d7dfdf;color:#0f2742;background:#fff!important}
body .brand-header{background:#fff!important;color:#0f2742!important;border-bottom:1px solid #e5eae7!important;padding:20px 32px!important}
body .brand-header-inner{max-width:1360px;gap:20px}
body .brand-header .brand-logo{color:#0f2742!important;font-size:26px!important}
body .brand-header .brand-logo small{color:#0f2742!important;letter-spacing:.12em!important}
body .brand-header .brand-links a,body .brand-header summary{color:#0f2742!important}
body .brand-header .brand-links a.brand-contact{background:#0f2742!important;border-radius:999px!important;color:#fff!important;padding:12px 22px!important}
body .brand-header details>div{background:#fff!important;border:1px solid #d7dfdf;border-radius:18px;box-shadow:0 16px 40px #0f274214}
body .brand-header a:hover,body .brand-header summary:hover{color:#705711!important}
body .brand-header a[aria-current=page]{text-decoration-color:#826817!important}
body :is(.page-hero,.ecf-hero,.s-hero,.brand-title-panel){background:linear-gradient(180deg,#f4f7f4 0%,#f8f9f7 80%,#fff 100%)!important;color:#0f2742!important;border-bottom:0!important;padding:64px 28px!important}
body :is(.page-hero,.ecf-hero,.s-hero,.brand-title-panel) :is(h1,h2,h3){color:#0f2742!important;font-family:'Microsoft JhengHei','PingFang TC','Noto Sans TC',sans-serif!important;font-weight:700!important;letter-spacing:.025em!important}
body :is(.page-hero,.ecf-hero,.s-hero,.brand-title-panel) :is(p,.ecf-lead){color:#45566a!important}
body :is(.page-hero,.ecf-hero,.s-hero,.brand-title-panel) :is(.s-kicker,.ecf-eyebrow,.section-label){color:#45566a!important}
body .s-hero h1 em,body .ecf-hero h1 span:last-child{color:#0f2742!important;font-style:normal}
body :is(h2,h3){font-family:'Microsoft JhengHei','PingFang TC','Noto Sans TC',sans-serif!important}
body.ecf-integrated main{max-width:none}
body.ecf-integrated .s-wrap{max-width:1200px!important;margin-inline:auto;padding:64px 32px}
body.ecf-integrated .s-hero{display:flex!important;flex-direction:column;gap:40px;text-align:center}
body .s-hero>div:first-child{max-width:900px;margin:auto}
body .s-hero h1{font-size:clamp(36px,5vw,62px)!important;line-height:1.4!important}
body .s-hero>div:first-child>p{max-width:780px;margin:22px auto 0}
body .s-hero .s-actions{justify-content:center}
body .s-story{width:100%;max-width:700px;margin:auto;text-align:left;padding:28px 32px;background:#fff!important;border:1px solid #d7dfdf!important;border-radius:28px!important;box-shadow:0 20px 42px -20px #0f27422b!important;transform:none!important}
body .s-story .s-quote{font-size:28px!important;font-weight:600;color:#0f2742!important;line-height:1.55}
body .s-story .s-quote br{display:none}
body .s-story-row{border-color:#e3e8e4}
body .s-avatar{background:#f2efe4}
body .s-check{color:#315846}
body .s-flow{max-width:1136px;margin:auto;padding:28px 0 36px;border-bottom:1px solid #d7dfdf}
body .s-flow p{color:#45566a}
body .s-num{color:#826817}
body :is(.s-grid,.ecf-grid2,.ecf-grid3){gap:24px}
body :is(.ecf-card,.s-plan,.s-task,.team-card,.article-card,.calendar-example,.ecf-demo,.ecf-journey){background:#fff!important;border:1px solid #d7dfdf!important;border-radius:20px!important;box-shadow:0 8px 28px #0f274206!important;overflow:hidden}
body .s-plan{padding:32px!important}
body .s-plan.featured{border-top:3px solid #b69a4e!important;padding-top:30px!important}
body .s-section-head{margin-bottom:32px;gap:32px}
body .s-section-head p{max-width:410px}
body :is(.s-band,.ecf-tint,.calendar-tint,.section-light){background:#f4f6f5!important}
body .s-wrap.s-band{max-width:1136px!important;border:1px solid #e4e9e5;border-radius:26px;padding:40px;margin-block:24px}
body :is(.s-callout,.ecf-note,.ecf-demo-top,.ecf-search){background:#f4f6f5!important;border-color:#d7dfdf;border-radius:16px}
body :is(.s-kicker,.ecf-eyebrow,.section-label){color:#5a654f}
body :is(.s-btn,.ecf-btn,.btn){border-radius:12px!important;box-shadow:none!important;min-height:52px}
body :is(.s-btn,.ecf-btn.ecf-light,.ecf-btn.ecf-outline,.btn-outline-navy){background:#fff!important;color:#0f2742!important;border:1px solid #9cabb4!important}
body :is(.s-btn.primary,.s-btn.gold,.ecf-btn.ecf-gold,.ecf-btn.ecf-navy,.btn-gold,.btn-navy){background:#0f2742!important;color:#fff!important;border-color:#0f2742!important}
body :is(.s-btn,.ecf-btn,.btn):hover{box-shadow:0 5px 16px #0f274215!important;filter:none}
body :is(.ecf-cta,.section-dark,.cal-cta){background:#f4f6f5!important;color:#0f2742!important;border-top:1px solid #d7dfdf;border-bottom:1px solid #d7dfdf}
body :is(.ecf-cta,.section-dark,.cal-cta) :is(h2,h3,p,small){color:#0f2742!important}
body :is(.s-footer,.ecf-footer){background:#f6f8f6!important;color:#45566a!important;border-top:1px solid #d7dfdf!important;padding-top:40px;padding-bottom:32px}
body :is(.s-footer,.ecf-footer) :is(a,p,small,strong,div){color:#45566a!important}
body :is(.s-footer,.ecf-footer) .ecf-logo,body :is(.s-footer,.ecf-footer) strong{color:#0f2742!important}
body .ecf-footer-bottom{border-color:#d7dfdf}
body .ecf-search button{border-radius:12px;background:#0f2742}
body .ecf-search a{background:transparent;color:#0f2742;text-decoration:underline}
body :is(input,textarea,select){border-radius:12px!important}
body :focus-visible{outline:3px solid #826817!important;outline-offset:4px}
@media(max-width:767px){
 body .brand-header{padding:16px!important}
 body .brand-header .brand-logo small{color:#0f2742!important}
 body .ecf-mobile-tools a,body .ecf-mobile-tools button{background:#fff!important;border:1px solid #bac5c7!important;border-radius:999px!important;color:#0f2742!important;padding:8px 12px!important}
 body .ecf-mobile-tools a{background:#0f2742!important;color:#fff!important;border-color:#0f2742!important}
 body .ecf-bottom-nav{background:#fff!important;border-top:1px solid #d7dfdf;box-shadow:0 -6px 24px #0f274208}
 body .ecf-bottom-nav a{color:#0f2742!important}
 body .ecf-bottom-nav a[aria-current=page]{color:#0f2742!important;background:#f0f4ef;box-shadow:inset 0 -3px #826817;border-radius:12px}
 body :is(.page-hero,.ecf-hero,.s-hero,.brand-title-panel){padding:40px 20px!important}
 body .s-hero{gap:28px!important}
 body .s-story{padding:24px!important;border-radius:22px!important}
 body .s-story .s-quote{font-size:26px!important}
 body .s-story .s-quote br{display:initial}
 body.ecf-integrated .s-wrap{padding:44px 20px}
 body .s-wrap.s-band{width:calc(100% - 32px);padding:28px 20px;border-radius:22px}
 body .s-flow{margin-inline:20px;padding:24px 0}
 body .s-plan{padding:24px!important}
 body .s-grid,body .s-split{grid-template-columns:minmax(0,1fr)}
 body .brand-header details>div{border:0;box-shadow:none}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Legacy calendar introduction uses separate styles; keep its text legible. */
body .s-skip{position:absolute;left:16px;top:-120px;z-index:120;background:white;padding:12px;color:#0f2742}
body .s-skip:focus{top:12px}

body .page-hero a:not(.btn):not(.s-btn):not(.ecf-btn){color:#0f2742!important;min-height:48px;display:inline-flex;align-items:center}
body .feature-strip{background:#fff!important;border-bottom:1px solid #d7dfdf}
body .feature-item{background:#fff!important;border:1px solid #d7dfdf!important;border-radius:18px}
body .feature-label{color:#0f2742!important}
body .feature-desc{color:#45566a!important}
body .feature-icon{color:#826817!important}
body.calendar-original main .section-dark h2{color:#0f2742!important}
body.calendar-original main .btn-gold{color:#fff!important}
body .section-dark a:not(.btn),body .cal-cta a:not(.btn){color:#0f2742!important}
body .brand-header .brand-logo,body .brand-header .brand-logo *{text-decoration:none!important}
body.calendar-original main .care-profile-grid>div{min-width:0;overflow-wrap:anywhere}
body.calendar-original main .section-label{overflow-wrap:anywhere;min-width:0}
@media(max-width:767px){body.calendar-original main .care-profile-grid{grid-template-columns:minmax(0,1fr)!important}body.calendar-original main .care-profile-grid [style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}}

/* Restore the original softened hero photographs on the light surfaces. */
body :is(.page-hero,.s-hero,.ecf-hero,.brand-title-panel){position:relative;isolation:isolate;overflow:hidden}
body :is(.page-hero,.s-hero,.ecf-hero,.brand-title-panel)::before{content:'';display:block!important;position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.18!important;mask-image:linear-gradient(#000 0%,#000b 60%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000b 60%,transparent 100%)}
body :is(.s-hero,.ecf-hero,.brand-title-panel)::before{background:url('https://images.unsplash.com/photo-1576091160399-112ba8d25d1d?auto=format&fit=crop&w=1800&q=70') center 35%/cover no-repeat}
body :is(.page-hero,.s-hero,.ecf-hero,.brand-title-panel)>*{position:relative;z-index:1}
@media(max-width:767px){body :is(.page-hero,.s-hero,.ecf-hero,.brand-title-panel)::before{opacity:.14!important;background-position:center top}}

/* Exact shared wordmark geometry from careflow-nav. */
body .brand-header .brand-logo{display:flex!important;align-items:center!important;gap:12px!important;flex:0 0 auto!important;min-width:0!important;font:400 20px/1.75 'Microsoft JhengHei','PingFang TC','Noto Sans TC',sans-serif!important;color:#0f2742!important;white-space:nowrap!important}
body .brand-header .brand-logo img{display:block!important;width:48px!important;height:48px!important;object-fit:contain;flex-shrink:0}
body .brand-header .brand-logo .brand-wordmark{display:block!important;font:inherit!important}
body .brand-header .brand-logo b{display:block!important;font:700 23px/1.5 'Microsoft JhengHei','PingFang TC','Noto Sans TC',sans-serif!important;letter-spacing:.16em!important}
body .brand-header .brand-logo .brand-en{display:block!important;font:400 23px/1.2 'Cormorant Garamond',Georgia,serif!important;letter-spacing:.02em!important}
@media(max-width:760px){body .brand-header .brand-logo img{width:40px!important;height:40px!important}body .brand-header .brand-logo b{font-size:22px!important}body .brand-header .brand-logo .brand-en{font-size:22px!important}}
@media(max-width:767px){body .ecf-mobile-tools{margin-left:auto}}

/* Brand navy footer, matching CareFlow Navigation. */
body :is(.s-footer,.ecf-footer){background:#0f2742!important;color:#e1e7ed!important;border-top:1px solid #506071!important}
body :is(.s-footer,.ecf-footer) :is(a,p,small,div){color:#e1e7ed!important}
body :is(.s-footer,.ecf-footer) strong,body .ecf-footer .ecf-logo small{color:#e6c771!important}
body .ecf-footer .ecf-logo,body .ecf-footer .ecf-logo span{color:#fff!important}
body .ecf-footer-bottom{border-color:#506071!important}
body :is(.s-footer,.ecf-footer) a:hover{color:#ffe29a!important}
body :is(.s-footer,.ecf-footer) a:focus-visible{outline-color:#ffe29a!important}

/* Light sections must reset inherited white text, including legacy inline card labels. */
body :is(.section-dark,.ecf-cta,.cal-cta) :is(div,span,i,li,strong,h4){color:#0f2742!important}
body .section-dark .grid-3>div{background:#fff;border:1px solid #d7dfdf!important;border-radius:20px}
body .section-dark .grid-3>div>div{font-size:20px!important}
body .section-dark .grid-3>div>div:first-child{font-size:48px!important;color:#826817!important}
/* One footer layout for every public page, independent of older page styles. */
body footer.ecf-footer{display:block!important;width:100%;padding:48px 24px 32px!important;font:20px/1.8 'Microsoft JhengHei','PingFang TC',sans-serif;text-align:left;box-sizing:border-box}
body .ecf-footer .ecf-wrap{max-width:1200px;margin:auto;width:100%;box-sizing:border-box}
body .ecf-footer-grid{display:grid!important;grid-template-columns:1.25fr 1fr 1fr 1.4fr;gap:32px;padding:0!important}
body .ecf-footer-grid>div{min-width:0}
body .ecf-footer-grid strong{display:block;margin-bottom:20px;font-size:20px}
body .ecf-footer-grid a{display:block;overflow-wrap:anywhere;min-height:44px;padding-block:6px;font-size:20px;line-height:1.7}
body .ecf-footer .ecf-logo{display:block;font:600 30px/1.5 'Cormorant Garamond',serif;text-decoration:none}
body .ecf-footer .ecf-logo small{display:block;font:20px/1.8 'Microsoft JhengHei',sans-serif;margin-top:8px}
body .ecf-footer p{font-size:20px;line-height:1.8;margin:24px 0}
body .ecf-footer .ecf-small{font-size:18px}
body .ecf-footer-bottom{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid #506071;margin-top:36px!important;padding-top:24px;font-size:18px}
body .ecf-footer-bottom a{font-size:20px;min-height:44px}
@media(max-width:1000px){body .ecf-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body .ecf-footer-grid{grid-template-columns:1fr}body footer.ecf-footer{padding:36px 20px 100px!important}}

body .ecf-footer .ecf-logo>span{display:block;font:600 30px/1.5 'Cormorant Garamond',serif!important}
body .cal-cell.other-month .cal-date{color:#596878!important}

/* Persistent navigation for phones and tablets, with a clear platform login. */
body .brand-header .brand-links a.brand-login{background:#0f2742!important;color:#fff!important;border:1px solid #0f2742!important;border-radius:999px;padding:10px 20px!important}
body .brand-header .brand-links a.brand-login:hover{background:#24425e!important;color:#fff!important}
@media(max-width:1100px){
 body .brand-header{padding:16px 24px!important}
 body .brand-header-inner{display:flex!important;align-items:center;flex-wrap:wrap;gap:16px!important}
 body .ecf-mobile-tools{display:flex;margin-left:auto;gap:10px}
 body .ecf-mobile-tools a,body .ecf-mobile-tools button{font:600 20px/1.5 'Microsoft JhengHei',sans-serif!important;min-height:48px;background:#fff!important;border:1px solid #9cabb4!important;border-radius:999px!important;color:#0f2742!important;padding:10px 18px!important}
 body .ecf-mobile-tools a{background:#0f2742!important;color:#fff!important;border-color:#0f2742!important}
 body .brand-header .brand-links{order:3;margin:0;width:100%;padding-top:16px;border-top:1px solid #d7dfdf;gap:8px 20px}
 body .brand-header .brand-links a{overflow-wrap:anywhere}
 body .brand-header details>div{border:0!important;box-shadow:none!important}
 body .ecf-bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;inset:auto 0 0;z-index:110;background:#fff!important;border-top:1px solid #d7dfdf!important;box-shadow:0 -6px 24px #0f274208;padding:6px max(6px,calc((100vw - 720px)/2)) calc(6px + env(safe-area-inset-bottom));box-sizing:border-box}
 body .ecf-bottom-nav a{color:#0f2742!important;min-height:64px;border-radius:12px}
 body .ecf-bottom-nav a[aria-current=page]{background:#edf2ec!important;color:#0f2742!important;box-shadow:inset 0 -3px #826817}
 body .ecf-bottom-nav a:hover{background:#f4f6f5!important}
 body .ecf-bottom-nav a:focus-visible,body .ecf-mobile-tools :focus-visible{outline:3px solid #826817!important;outline-offset:-3px}
 html{scroll-padding-bottom:calc(var(--ecf-nav-height,90px) + 24px)}
 body.ecf-keyboard-open .ecf-bottom-nav{display:none}
}
@media(max-width:540px){body .brand-header{padding:16px!important}body .ecf-mobile-tools{width:100%;justify-content:flex-end}body .brand-header-inner{gap:12px!important}}
@media print{body .ecf-bottom-nav,body .ecf-mobile-tools{display:none!important}}
