@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');
:root{--ink:#183c39;--green:#0b635c;--deep:#064d47;--muted:#62716d;--line:#dce6e2;--light:#f2f7f5;--accent:#c6e58e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:'Noto Sans KR',sans-serif;font-size:16px;line-height:1.8;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #ce8e23;outline-offset:5px}.wrap{max-width:1240px;margin:0 auto;padding-left:36px;padding-right:36px}.skip{position:fixed;top:-100px;left:20px;z-index:10;background:white;padding:12px}.skip:focus{top:10px}header{background:#fffffff5;position:sticky;top:0;z-index:5;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.nav{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:8px;font-size:26px;font-weight:800;letter-spacing:-1px;white-space:nowrap}.brandmark{display:inline-flex;align-items:center;justify-content:center;width:1.08em;height:1.08em;flex:0 0 1.08em;background:#ff6633;color:white;border-radius:.32em .32em .32em .08em;font-size:inherit;line-height:1;letter-spacing:0;font-weight:400}.brand-en{font-size:10px;letter-spacing:1.4px;margin-left:3px;color:var(--green);display:none}nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:600}nav a:hover{color:var(--green)}.nav-contact{padding:10px 18px;border:1px solid var(--green);border-radius:6px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding-top:64px;padding-bottom:66px;align-items:center}.eyebrow{font-size:13px;letter-spacing:2px;font-weight:700;color:var(--green);margin:0 0 22px}.hero .eyebrow{letter-spacing:.4px;font-size:15px}h1{font-size:clamp(36px,3.6vw,50px);line-height:1.5;letter-spacing:-2.5px;margin:0 0 24px;font-weight:800}h1 em{font-style:normal;color:var(--green);box-shadow:inset 0 -13px #d7ebb7}.lead{font-size:18px;color:var(--muted);line-height:1.9}.actions{display:flex;align-items:center;gap:24px;margin:30px 0 42px}.button{display:inline-flex;background:var(--green);color:white;padding:14px 23px;border-radius:7px;font-size:15px;font-weight:600}.button:hover{background:var(--deep)}.text-link{font-size:15px;border-bottom:1px solid var(--ink)}.hero-note{padding-left:16px;border-left:3px solid var(--accent);font-size:13px}.hero-note span{font-weight:600}.hero-note p{margin:0;color:var(--muted)}.hero-visual{position:relative;align-self:stretch;min-height:535px}.hero-visual img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:52% center;border-radius:110px 12px 12px 12px}.image-caption{position:absolute;left:-22px;bottom:45px;background:#ffffffed;box-shadow:0 12px 35px #0c3d3612;border-radius:8px;padding:17px 25px}.image-caption span{font-size:13px;color:var(--green);display:block}.image-caption strong{font-size:18px}.image-label{position:absolute;right:22px;bottom:14px;font-size:11px;letter-spacing:.8px;color:white;text-shadow:0 1px 4px #000}.intro-band{background:var(--green);color:white}.intro-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:19px;padding-bottom:19px}.intro-band p{margin:0;font-weight:500}.intro-band span{font-size:14px;color:#e0eee7}.intro-band b{margin:0 15px;color:var(--accent)}.mobile{display:none}.section{padding-top:95px;padding-bottom:95px}h2{font-size:34px;line-height:1.55;letter-spacing:-1.4px;margin:0 0 24px;font-weight:700}.about{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.about p:not(.eyebrow){color:var(--muted);margin:0 0 20px}.about .large-copy{font-size:23px;color:var(--ink)!important}.large-copy strong{color:var(--green)}.values{display:flex;gap:20px;flex-wrap:wrap;padding-top:14px;font-size:14px;font-weight:600}.values span:before{content:'✓';margin-right:8px;color:var(--green)}.services{background:var(--light)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:35px}.section-heading p:not(.eyebrow){color:var(--muted)}.section-heading h2{margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:white;border:1px solid var(--line);border-radius:12px;padding:30px;scroll-margin-top:120px;display:flex;flex-direction:column}.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.service-number{font-size:34px;font-weight:500;color:#9ebbb3;line-height:1}.service-tag{font-size:12px;background:var(--light);padding:5px 9px;border-radius:4px;color:var(--green)}h3{font-size:25px;line-height:1.5;margin:24px 0 14px;letter-spacing:-.7px}.service-card p{color:var(--muted);font-size:15px;margin:0}.service-card ul{padding:18px 0 20px;list-style:none;font-size:14px;border-top:1px solid var(--line);margin:22px 0 0;flex:1}.service-card li{margin:7px 0}.service-card li:before{content:'·';margin-right:9px;color:var(--green);font-weight:800}.service-card a{font-size:14px;font-weight:700;color:var(--green);border-top:1px solid var(--line);padding-top:17px}.family-card{border-color:#a9c5b9;background:#eaf2e7}.family-card .service-tag{background:#ffffffa8}.service-footnote{font-size:13px;color:var(--muted);margin:22px 0 0}.family-detail{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.family-detail>div>p:not(.eyebrow){color:var(--muted)}.family-content h3{font-size:21px;margin-top:0}.checklist{list-style:none;padding:0;margin:0}.checklist li{display:flex;gap:22px;padding:20px 0;border-bottom:1px solid var(--line)}.checklist li>span{font-size:14px;color:var(--green);padding-top:3px;font-weight:700}.checklist h4{font-size:17px;margin:0 0 6px}.checklist p{font-size:15px;margin:0;color:var(--muted)}.notice{background:var(--light);border-left:3px solid var(--green);padding:19px 22px;margin-top:24px}.notice strong{font-size:14px}.notice p{font-size:13px;color:var(--muted);margin:8px 0 0}.steps-section{background:#f6f8f7;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:42px}.steps article{border-top:2px solid #abc4bc;padding-top:21px}.steps span{font-size:12px;color:var(--green);letter-spacing:1px;font-weight:700}.steps h3{font-size:21px;margin:12px 0}.steps p{color:var(--muted);font-size:14px;margin:0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-intro h2{font-size:42px}.contact-intro>p:not(.eyebrow){color:var(--muted)}.contact-status{padding:20px 0;border-top:1px solid var(--line);margin-top:35px;max-width:360px}.contact-status strong{font-size:15px}.contact-status p{font-size:14px;color:var(--muted);margin:8px 0}.consult-prep{border:1px solid var(--line);border-radius:12px;padding:30px 35px}.consult-prep h3{font-size:22px;margin:0}.muted{color:var(--muted);font-size:14px;margin:8px 0 16px}.consult-prep ul{list-style:none;padding:0;margin:0}.consult-prep li{display:flex;gap:18px;padding:15px 0;border-top:1px solid var(--line)}.consult-prep li>span{color:var(--green);font-size:13px;padding-top:3px}.consult-prep strong{font-size:15px}.consult-prep li p{font-size:14px;margin:2px 0 0;color:var(--muted)}footer{background:#103f3a;color:#eef6f2}.footer-main{display:flex;align-items:center;gap:30px;padding-top:40px;padding-bottom:35px}.footer-main .brand{font-size:23px}.footer-main p{font-size:14px;color:#bed3cc;flex:1}.footer-main>a:last-child{font-size:13px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #315d55;padding-top:20px;padding-bottom:25px;font-size:12px;color:#acc5bd}@media(min-width:1250px){.brand-en{display:block}}@media(max-width:1050px){nav{gap:14px;font-size:13px}.nav{gap:12px}.brand{font-size:23px}.hero{gap:30px}.hero-visual{min-height:520px}.service-card{padding:23px}.service-tag{font-size:11px}.family-detail,.contact,.about{gap:50px}}@media(max-width:800px){.wrap{padding-left:24px;padding-right:24px}.nav{min-height:76px}.menu-toggle{display:block;border:1px solid var(--line);background:white;border-radius:5px;padding:6px 13px;font-size:14px}header #navigation{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:20px 24px;box-shadow:0 10px 20px #123b3610;flex-direction:column;align-items:stretch;font-size:16px;gap:17px}header #navigation.open{display:flex}.nav-contact{align-self:flex-start}.hero{grid-template-columns:1fr;padding-top:44px;gap:28px}.hero-copy h1{font-size:42px}.hero-visual{height:430px;min-height:0}.hero-visual img{border-top-left-radius:85px;object-position:center 40%}.hero-note{display:none}.image-caption{left:14px;bottom:28px}.actions{margin-bottom:4px}.intro-band .wrap{flex-direction:column;align-items:flex-start;gap:5px}.section{padding-top:65px;padding-bottom:65px}.about,.family-detail,.contact{grid-template-columns:1fr;gap:24px}.section-heading{align-items:flex-start}.service-grid{grid-template-columns:1fr}.service-card{padding:28px}.service-card h3{margin-top:20px}.service-tag{font-size:13px}.service-card p,.service-card ul{font-size:16px}.service-card ul{padding-top:15px;padding-bottom:15px}.steps{grid-template-columns:1fr 1fr;gap:28px}.footer-main{flex-wrap:wrap;gap:14px}.footer-main p{flex-basis:100%;order:3;margin:0}.footer-main>a:last-child{margin-left:auto}.footer-bottom{gap:10px;flex-direction:column}}@media(max-width:450px){h2{font-size:29px}.hero-copy h1{font-size:35px;letter-spacing:-1.8px}.hero-visual{height:340px}.lead{font-size:17px}.actions{gap:18px}.button{font-size:14px;padding:13px 16px}.text-link{font-size:14px}.section-heading{display:block}.section-heading>p br{display:none}.intro-band span{font-size:12px}.intro-band b{margin:0 8px}.steps h3{font-size:19px}.steps p br{display:none}.consult-prep{padding:25px}.contact-intro h2{font-size:35px}.values{gap:14px;font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.contact-phone{display:block;font-size:36px;font-weight:800;line-height:1.5;letter-spacing:-1px;color:var(--green);margin:12px 0}.contact-status .actions{margin:18px 0 22px;gap:20px}.contact-status a:not(.button):hover{text-decoration:underline}.company-details{font-size:14px;color:#c8dad4;padding-bottom:28px;line-height:1.9}.company-details p{margin:5px 0;display:flex;flex-wrap:wrap;column-gap:24px;row-gap:3px}.company-details strong{font-weight:600;color:#eef6f2}.company-details a:hover{text-decoration:underline}@media(max-width:450px){.company-details p{flex-direction:column;gap:3px}.contact-phone{font-size:32px}}

.coverage-hero{font-size:13px;font-weight:600;color:var(--green);margin:-10px 0 22px;letter-spacing:0}.coverage-label{font-size:13px;color:var(--green);font-weight:600;display:block;margin:-5px 0 13px}.nationwide-note{margin-top:24px;padding:18px 20px;background:var(--light);border-radius:8px}.nationwide-note strong{font-size:15px;color:var(--green)}.nationwide-note p{font-size:14px;color:var(--muted);margin:8px 0 0}.contact-coverage{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.contact-coverage b{color:var(--green)}

.visit-contact{border-top:1px solid var(--line);padding:20px 0 24px;margin-top:24px}.visit-contact .button{margin-top:5px}

.service-card a.service-call{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:96px;padding:16px 12px;border:0;border-radius:8px;background:#f719c0;color:#fff;text-align:center;line-height:1.5;transition:background .15s}.service-call span{font-size:1.125rem;font-weight:700}.service-call strong{font-size:1.5rem;font-weight:800;letter-spacing:.2px;white-space:nowrap}.service-card a.service-call:hover{background:#f719c0;box-shadow:inset 0 0 0 2px #9f3a9f}.service-card a.service-call:focus-visible{outline:3px solid #ce8e23;outline-offset:4px}.contact-status>strong,.visit-contact>strong{font-size:1.125rem;color:#064d47}.contact-status .button{font-size:1rem;font-weight:700}@media(min-width:801px) and (max-width:1050px){.service-card{padding-left:18px;padding-right:18px}.service-call strong{font-size:1.25rem}.service-call span{font-size:1rem}}

.brand-logo{width:44.8px;height:44.8px;object-fit:contain;display:block;flex-shrink:0;border-radius:8px;background:#fff}.footer-main .brand-logo{width:42px;height:42px}@media(max-width:800px){.brand-logo{width:36.4px;height:36.4px}}

.login-dialog{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;box-sizing:border-box;border:1px solid var(--line);border-radius:18px;padding:32px;color:var(--ink);background:white;box-shadow:0 24px 80px #0003}.login-dialog::backdrop{background:#102b2877;backdrop-filter:blur(3px)}.login-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:30px;line-height:1.4;color:#435a54;cursor:pointer;width:44px;height:44px}.login-brand{display:flex;align-items:center;justify-content:center;gap:8px;margin:10px 0 22px;font-size:24px}.login-dialog h2{text-align:center;font-size:26px;margin:0 0 8px}.login-dialog>p{text-align:center;font-size:14px;color:var(--muted);margin:8px 0 16px}.login-dialog .login-pending{background:#fff1eb;color:#943908;padding:8px;border-radius:6px;font-weight:600}.login-options{display:grid;gap:10px}.provider-button{width:100%;min-height:52px;border:1px solid #cad9d3;border-radius:8px;background:white;color:#173c36;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;font:inherit;font-size:16px;font-weight:600;cursor:pointer}.provider-button small{font-size:12px;font-weight:400;opacity:.8;white-space:nowrap}.provider-kakao{background:#fee500;border-color:#fee500;color:#191600}.provider-naver{background:#087f42;border-color:#087f42;color:white}.provider-facebook{background:#1864c0;border-color:#1864c0;color:white}.provider-button:hover{box-shadow:inset 0 0 0 2px #164b4544}.login-status{background:#f3f7f5;border-left:3px solid #ff6633;padding:12px 14px;font-size:14px;margin-top:16px}.login-dialog .login-help{font-size:13px;margin-top:20px}.login-consult{display:block;text-align:center;text-decoration:underline;font-size:14px}.login-dialog button:focus-visible{outline:3px solid #c54a16;outline-offset:3px}body.login-modal-open{overflow:hidden}@media(min-width:801px){.nav{gap:16px}nav{gap:16px}}@media(max-width:1050px) and (min-width:801px){.nav{gap:10px}nav{gap:10px}}@media(max-width:800px){.menu-toggle{margin-left:0}.login-dialog{padding:24px}}

.hospital-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:55px;padding-top:65px;padding-bottom:65px;align-items:center}.hospital-hero h1{font-size:44px;line-height:1.45}.hospital-hero figure{margin:0}.hospital-hero img{width:100%;height:490px;object-fit:cover;border-radius:65px 12px 12px 12px}.hospital-hero figcaption{font-size:14px;margin-top:14px;color:var(--muted)}.hospital-hero figcaption small{display:block;font-size:12px;margin-top:5px}.hospital-call{display:inline-flex;flex-direction:column;background:#f719c0;color:#fff;padding:15px 30px;border-radius:9px;margin-top:18px;line-height:1.5;text-align:center}.hospital-call span{font-size:16px;font-weight:700}.hospital-call strong{font-size:28px;font-weight:800}.small-note{font-size:14px;color:var(--muted)}.hospital-jumps{display:flex;gap:25px;flex-wrap:wrap;padding-top:20px;padding-bottom:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:600}.hospital-jumps a{font-size:15px}.hospital-jumps a:hover{text-decoration:underline}.hospital-empathy{max-width:850px;text-align:center}.empathy-lead{font-size:22px;line-height:1.9}.hospital-help-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:36px}.hospital-help-grid article{background:white;padding:26px;border-radius:10px;border:1px solid var(--line)}.hospital-help-grid article>span{color:var(--green);font-size:14px;font-weight:700}.hospital-help-grid h3{font-size:21px;margin:16px 0 12px}.hospital-help-grid p{color:var(--muted);font-size:16px;margin:0}.hospital-boundary{font-size:14px;color:var(--muted);margin-top:25px}.hospital-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:35px}.hospital-info-grid article{border-top:2px solid var(--green);padding-top:10px}.hospital-info-grid p{color:var(--muted)}.hospital-info-grid ul{padding-left:22px}.hospital-ready{display:grid;grid-template-columns:1fr 1fr;gap:70px}.hospital-ready>div>p:not(.eyebrow){color:var(--muted)}.hospital-faq{max-width:940px}.hospital-faq details{border-bottom:1px solid #c9d7d0;padding:20px 0}.hospital-faq summary{font-size:18px;font-weight:600;cursor:pointer;padding-right:12px}.hospital-faq details p{color:var(--muted);padding:6px 0 0;font-size:16px}.hospital-faq details a{text-decoration:underline;color:var(--green)}.hospital-final{text-align:center}.service-card h3 a.hospital-title-link{border:0;padding:0;font-size:inherit;color:inherit}.service-card a.hospital-detail-link{border:0;padding:0 0 18px;text-decoration:underline}.hospital-page nav a[aria-current]{color:var(--green)}@media(max-width:1050px){.hospital-help-grid{grid-template-columns:1fr 1fr}.hospital-hero{gap:35px}.hospital-hero h1{font-size:37px}}@media(max-width:800px){.hospital-hero{grid-template-columns:1fr;padding-top:40px;gap:30px}.hospital-hero img{height:auto;max-height:440px}.hospital-hero h1{font-size:36px}.hospital-info-grid,.hospital-ready{grid-template-columns:1fr;gap:25px}.hospital-jumps{gap:12px 25px}.hospital-jumps a{font-size:14px}.hospital-help-grid{gap:16px}.hospital-help-grid article{padding:22px}.empathy-lead{font-size:19px}.hospital-faq summary{font-size:16px}}@media(max-width:450px){.hospital-help-grid{grid-template-columns:1fr}.hospital-call{width:100%}.hospital-hero h1{font-size:34px}.hospital-final h2{font-size:27px}}

@media(min-width:801px){header .nav{justify-content:flex-start}header .nav>.brand{order:0;flex-shrink:0}header #navigation{order:1;margin-left:auto}}

.nav-apply{color:#a7350f;font-weight:800}.apply-invite{grid-column:1/-1;padding:22px;background:#fff3ec;border:1px solid #ffd2bc;border-radius:9px;margin-bottom:24px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}.apply-invite a{background:#f719c0;color:#fff;font-weight:800;padding:12px 20px;border-radius:7px}.apply-invite span{font-size:14px;color:#57473f}.application-page{max-width:940px;padding-top:55px;padding-bottom:85px}.application-page h1{font-size:36px}.application-page h2{font-size:25px}.application-notice{background:#fff3ec;border-left:4px solid #ff6633;padding:18px 22px;margin:22px 0}.application-notice p{font-size:14px;margin:6px 0}.application-notice a{text-decoration:underline}.application-progress{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:32px 0}.application-progress li{padding:12px 8px;background:#eef3f1;text-align:center;border-radius:6px;font-size:14px}.application-progress li[aria-current]{background:#164b45;color:white;font-weight:700}.application-step{border:1px solid var(--line);border-radius:12px;padding:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label,.form-message{display:flex;flex-direction:column;gap:8px;font-size:16px;font-weight:600}.form-grid .wide{grid-column:1/-1}.application-page input:not([type=checkbox]),.application-page select,.application-page textarea{width:100%;min-height:48px;padding:10px 12px;border:1px solid #a7bab2;border-radius:6px;font:inherit;background:white;color:#173c36}.application-page small,.form-hint{font-size:14px;font-weight:400;color:var(--muted)}.help-options{margin:26px 0;padding:18px;border:1px solid var(--line);display:flex;flex-wrap:wrap;gap:16px}.help-options label{display:flex;align-items:center;gap:8px}.help-options input{width:20px;height:20px;accent-color:#164b45}.application-controls{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.application-controls button,#application-edit{padding:12px 22px;min-height:48px;border:1px solid var(--green);border-radius:6px;background:white;color:var(--green);font:inherit;cursor:pointer}#application-next,#application-finish{background:var(--green);color:white}#application-review{margin:24px 0}#application-review div{display:grid;grid-template-columns:160px 1fr;border-bottom:1px solid var(--line);padding:12px 0;gap:16px}#application-review dt{font-weight:600}#application-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.application-error{color:#a21a1a}.application-page [hidden]{display:none!important}#application-done{padding:30px;border:1px solid var(--line);border-radius:12px}#application-edit{display:block;margin-top:22px}@media(min-width:801px) and (max-width:1150px){header .nav{gap:8px}header #navigation{gap:9px;font-size:12px}header .nav-contact{padding:8px}header .nav>.brand{font-size:21px}}@media(max-width:600px){.application-page h1{font-size:28px}.application-step{padding:20px}.form-grid{grid-template-columns:1fr}.application-progress{gap:5px}.application-progress li{font-size:12px;padding:10px 3px}#application-review div{grid-template-columns:1fr;gap:4px}.application-controls button{padding:12px 14px;font-size:14px}}

.contact-time-field{display:flex;flex-direction:column;gap:8px;font-size:16px;font-weight:600}.contact-time-selects{display:flex;gap:10px;align-items:center}.contact-time-selects select{flex:1;min-width:0}.contact-time-field>label{display:block}

.site-logo-fixed{display:block;width:30px;height:27px;min-width:30px;max-width:30px;min-height:27px;max-height:27px;flex:0 0 30px;object-fit:contain;align-self:center;vertical-align:middle}
.brand,.login-brand{display:flex;align-items:center}

.location-field{display:flex;flex-direction:column;gap:8px}.location-combobox{position:relative}.location-combobox ul{position:absolute;top:100%;left:0;right:0;z-index:3;max-height:240px;overflow:auto;list-style:none;margin:4px 0 0;padding:4px;background:white;border:1px solid #a7bab2;border-radius:6px;box-shadow:0 8px 20px #183c3920}.location-combobox li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;min-height:48px;cursor:pointer;font-size:16px}.location-combobox li:hover,.location-combobox li[aria-selected=true]{background:#e7f3ed}.location-status{font-size:14px;color:var(--muted)}.location-status:empty{display:none}

.address-actions{display:flex;flex-wrap:wrap;gap:8px}.address-actions button{padding:9px 16px;min-height:44px;border:1px solid #0b635c;border-radius:6px;background:#0b635c;color:white;cursor:pointer}.address-actions button:disabled{opacity:.6;cursor:wait}#address-close{background:white;color:#0b635c}.address-results{height:460px;width:100%;overflow:hidden;border:1px solid #a7bab2;border-radius:8px}.address-results iframe{max-width:100%}@media(max-width:600px){.address-results{height:420px}}

.start-schedule{display:grid;grid-template-columns:1fr 1fr;gap:22px}@media(max-width:600px){.start-schedule{grid-template-columns:1fr}}

.form-grid .name-error{color:#a21a1a}.name-error:empty{display:none}.application-page input[aria-invalid=true]{border-color:#a21a1a}

.care-time-options{border:0;padding:0;margin:24px 0 28px;display:grid;gap:12px;min-width:0}.care-time-options legend{font-size:18px;font-weight:700;margin-bottom:12px}.care-time-choice{display:flex;align-items:center;gap:14px;padding:20px 22px;background:white;border:1px solid #a7bab2;border-radius:8px;cursor:pointer}.care-time-choice span{display:flex;flex-direction:column;gap:3px}.care-time-choice strong{font-size:22px;line-height:1.4}.care-time-choice small{font-size:16px;line-height:1.6}.application-page .care-time-choice input{width:20px;height:20px;min-height:20px;flex:0 0 20px;padding:0;margin:0;accent-color:#173c36}.care-time-choice.is-selected{background:#f719c0;border-color:transparent;color:#fff}.care-time-choice:has(input:focus-visible){outline:3px solid #173c36;outline-offset:3px}@media(max-width:600px){.care-time-choice{padding:16px}.care-time-choice strong{font-size:20px}}
.job-progress{grid-template-columns:repeat(3,1fr)}.nav-job{font-weight:700}.job-intro{margin-top:24px}#job-next,#job-finish{background:var(--green);color:white}#job-review div{display:grid;grid-template-columns:160px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}#job-review dt{font-weight:600}#job-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.job-page [hidden]{display:none!important}#job-edit{margin-top:20px;padding:12px 20px;background:white;border:1px solid var(--green);border-radius:6px;color:var(--green);font:inherit;cursor:pointer}@media(max-width:600px){#job-review div{grid-template-columns:1fr;gap:4px}}@media(min-width:801px){header #navigation{gap:10px;font-size:13px}header .nav{gap:10px}}@media(min-width:801px) and (max-width:1150px){header #navigation{gap:7px;font-size:12px}header .wrap.nav{padding-left:16px;padding-right:16px}header .nav>.brand{font-size:20px}}
@media(min-width:801px) and (max-width:1150px){header #navigation{flex-wrap:wrap;justify-content:flex-end;min-width:0;row-gap:6px}}
.nav-homecare{font-weight:700}.homecare-page [hidden]{display:none!important}#homecare-next,#homecare-finish{background:var(--green);color:white}#homecare-review div{display:grid;grid-template-columns:160px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}#homecare-review dt{font-weight:600}#homecare-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}#homecare-edit{margin-top:20px;padding:12px 20px;background:white;border:1px solid var(--green);border-radius:6px;color:var(--green);font:inherit;cursor:pointer}@media(max-width:600px){#homecare-review div{grid-template-columns:1fr;gap:4px}}@media(min-width:801px){header #navigation{flex-wrap:wrap;justify-content:flex-end;row-gap:6px;min-width:0}}

.service-time-field{display:flex;flex-direction:column;gap:10px}.service-time-field>strong{font-size:16px;font-weight:600}

.care-fee-field{margin:24px 0}
.nav-family-apply{font-weight:700}.family-page [hidden]{display:none!important}#family-next,#family-finish{background:var(--green);color:white}#family-review div{display:grid;grid-template-columns:160px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}#family-review dt{font-weight:600}#family-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}#family-edit{margin-top:20px;padding:12px 20px;background:white;border:1px solid var(--green);border-radius:6px;color:var(--green);font:inherit;cursor:pointer}@media(max-width:600px){#family-review div{grid-template-columns:1fr;gap:4px}}

#insurer-custom-field{display:flex;flex-wrap:wrap;gap:8px}#insurer-custom-field input{flex:1;min-width:180px}#insurer-back{padding:10px 16px;background:white;border:1px solid var(--green);border-radius:6px;color:var(--green);font:inherit;cursor:pointer}

.patient-phone-field{display:flex;flex-direction:column;gap:10px}.form-grid .patient-no-phone{flex-direction:row;align-items:center;gap:8px;font-size:16px;font-weight:400}.application-page .patient-no-phone input{width:20px;height:20px;min-height:20px;margin:0;accent-color:var(--green)}

.patient-basics-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.patient-basics-row label{min-width:0}.patient-basics-row input,.patient-basics-row select{min-width:0}@media(max-width:600px){.patient-basics-row{grid-template-columns:minmax(0,1fr);gap:18px}.patient-basics-row label{font-size:16px}.patient-basics-row label>span{min-height:0;display:block;line-height:1.6}.application-page .patient-basics-row input,.application-page .patient-basics-row select{padding:12px 14px;font-size:16px}.patient-basics-row small{font-size:14px}}

.patient-pair-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.patient-pair-row label{min-width:0}.patient-pair-row input,.patient-pair-row select{min-width:0}@media(max-width:600px){.patient-pair-row{gap:12px}.patient-pair-row label{font-size:14px}.patient-pair-row label>span{min-height:44px;display:flex;align-items:flex-end;line-height:1.6}.application-page .patient-pair-row input,.application-page .patient-pair-row select{padding:10px 8px;font-size:14px}}

.service-card h3 a.service-title-link{border:0;padding:0;font-size:inherit;color:inherit}.service-card a.service-detail-link{border:0;padding:0 0 18px;text-decoration:underline;text-underline-offset:3px}.service-card h3 a:hover{color:var(--green)}
.application-consent{border:1px solid #d5ded9;border-radius:14px;margin:24px 0;padding:20px;background:#f7faf8}.application-consent[hidden]{display:none}.application-consent legend{font-weight:700}.application-consent p{font-size:14px;line-height:1.7}.application-consent label{display:flex;align-items:flex-start;gap:10px;margin:14px 0;font-weight:600}.application-consent input{width:20px;height:20px;flex:none;margin:2px 0}.receipt-number{display:block;margin-top:12px;color:#285647;overflow-wrap:anywhere}
.login-form-continue{display:block;margin:18px 0 12px;padding:12px 16px;border:1px solid var(--green);border-radius:8px;color:var(--green);text-align:center;font-size:16px;font-weight:700}.login-form-continue[hidden]{display:none}.login-form-continue:hover{background:#f2f7f5}@media(max-width:800px){header .menu-toggle{margin-left:auto}}

.member-logout{font:inherit;font-size:.875rem;border:0;background:transparent;color:var(--green,#16634a);cursor:pointer;padding:8px;white-space:nowrap}.member-logout[hidden]{display:none}.member-settings{margin:24px 0;padding-top:20px;border-top:1px solid #ddd}.member-settings h3{font-size:1.125rem}

/* Responsive sizing follows available CSS viewport width, including browser zoom. */
.wrap{width:100%;padding-inline:clamp(16px,3vw,36px)}
body{overflow-wrap:break-word}
img{max-width:100%}
.hero>*,.about>*,.family-detail>*,.contact>*,.service-grid>*,.hospital-hero>*,.hospital-info-grid>*,.hospital-ready>*,.form-grid>*,.start-schedule>*,.patient-basics-row>*,.patient-pair-row>*{min-width:0}
.actions{flex-wrap:wrap;row-gap:14px}
.button,.text-link,.hospital-call{max-width:100%;text-align:center}
.application-page input,.application-page select,.application-page textarea{min-width:0}
.application-controls{flex-wrap:wrap}
.application-progress li{min-width:0;overflow-wrap:anywhere}
.service-call strong{font-size:clamp(1.125rem,2vw,1.5rem)}
.contact-phone{font-size:clamp(1.5rem,4vw,2.25rem);max-width:100%}
.company-details p{overflow-wrap:anywhere}
.hero-copy h1{font-size:clamp(2rem,4.2vw,3.125rem)}
.hospital-hero h1{font-size:clamp(2rem,4vw,2.75rem)}
.application-page h1{font-size:clamp(1.625rem,3.5vw,2.25rem)}
.login-dialog{max-height:calc(100dvh - 24px)}
@media(max-width:1000px){
 header .nav{min-height:76px;justify-content:space-between}
 header .nav>.brand{font-size:clamp(1.25rem,3vw,1.625rem)}
 header .menu-toggle{display:block;margin-left:auto;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:6px;background:white;font-size:1rem}
 header #navigation{display:none;position:absolute;top:100%;left:0;right:0;margin-left:0;background:white;padding:16px clamp(16px,3vw,36px);box-shadow:0 10px 20px #123b3610;flex-direction:column;align-items:stretch;flex-wrap:nowrap;justify-content:flex-start;gap:4px;font-size:1rem;max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain}
 header #navigation.open{display:flex}
 header #navigation a,header #navigation .member-logout{padding:10px 12px;min-height:44px;text-align:left}
 header #navigation .nav-contact{align-self:stretch}
 .hero,.hospital-hero{grid-template-columns:minmax(0,1fr);gap:28px}
 .hero-visual{height:clamp(280px,48vw,480px);min-height:0}
 .hospital-hero img{height:auto;max-height:480px;aspect-ratio:4/3}
 .about,.family-detail,.contact{gap:clamp(24px,4vw,50px)}
}
@media(max-width:600px){
 .form-grid,.start-schedule{grid-template-columns:minmax(0,1fr)}
 .wrap{padding-inline:16px}
 .application-step{padding:clamp(14px,4vw,20px)}
 .application-progress li{font-size:.875rem}
 .application-controls button{flex:1 1 auto;min-height:48px;font-size:1rem}
 .contact-time-selects{gap:8px}
 .help-options{padding:14px;gap:12px}
 .service-card{padding:22px}
 .consult-prep{padding:22px}
 .login-dialog{padding:24px 18px}
 .provider-button{font-size:1rem;padding:12px}
 .contact-status .actions{gap:12px}
 #insurer-custom-field input{min-width:0;flex-basis:100%}
}
@media(max-width:360px){
 .patient-pair-row,.steps{grid-template-columns:minmax(0,1fr)}
 .patient-pair-row label>span{min-height:0}
 .application-page .patient-pair-row select{font-size:1rem;padding:12px}
 .actions>.button{width:100%}
 .service-card{padding:18px}
 .consult-prep{padding:18px}
}

/* Consultation form links: one button per row on every screen. */
#contact .apply-invite{flex-direction:column;align-items:stretch;gap:12px}
#contact .apply-invite>a{display:block;text-align:center;width:100%}
#contact .apply-invite>span{text-align:center}

/* Official channels span the footer evenly on desktop and form a tidy mobile grid. */
.official-channels{padding-top:22px;padding-bottom:30px;border-top:1px solid rgba(255,255,255,.16)}
.official-channels-title{font-weight:700;margin:0 0 16px}
.official-channels nav{display:grid;position:static;top:auto;left:auto;right:auto;bottom:auto;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;width:100%;margin:0;padding:0;background:transparent;box-shadow:none;align-items:stretch;max-height:none;overflow:visible}
.official-channels nav a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:12px 6px;background:#fff;color:#594537;border:1px solid #ddcec3;border-radius:10px;font-size:.82rem;line-height:1.4;text-align:center;text-decoration:none}
.official-channels nav a:hover{border-color:#ff6633;color:#b93b12}
.official-channels nav a:focus-visible{outline:3px solid #ff6633;outline-offset:3px}
@media(max-width:1000px){.official-channels nav{grid-template-columns:repeat(4,minmax(0,1fr))}.official-channels nav a{font-size:.9rem}}
@media(max-width:600px){.official-channels-title{text-align:center;margin-bottom:16px}.official-channels nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.official-channels nav a{min-height:48px;padding:12px 8px;font-size:.9rem}}

/* Mobile menu: consistent spacing, alignment and comfortable tap targets. */
@media(max-width:1000px){
 header #navigation{left:auto;right:clamp(16px,3vw,36px);width:min(280px,calc(100vw - 32px));padding:6px 8px 8px;gap:0;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #123b361a}
 header #navigation a,header #navigation .member-logout{display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:36px;margin:0;padding:6px 12px;box-sizing:border-box;border-radius:8px;line-height:1.4;font-size:1rem;text-align:left}
 header #navigation a:hover,header #navigation a:focus-visible{background:#fff2ec;color:#a7350f}
 header #navigation a:focus-visible{outline:2px solid #ff6633;outline-offset:1px}
 header #navigation .nav-apply{margin-top:2px}
 header #navigation .nav-contact{margin-top:2px;border-color:var(--line)}
 header #navigation .member-logout{border:1px solid var(--line);background:white;font:inherit}
 header #navigation .member-logout[hidden]{display:none}
}

/* Persistent phone consultation for patients and guardians. */
body{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}
.care-phone-bar{position:fixed;inset:auto 0 0;z-index:910;background:#fffaf7;border-top:1px solid #e8d2c7;box-shadow:0 -4px 18px #183c3910;padding:10px 24px calc(10px + env(safe-area-inset-bottom,0px))}
.care-phone-inner{max-width:1170px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:28px;min-height:48px}
.care-phone-copy{display:flex;align-items:center;gap:12px;line-height:1.4}
.care-phone-copy>span{font-size:14px;color:#62716d}.care-phone-copy>strong{font-size:18px;color:#183c39}
.care-phone-call{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:10px 20px;border-radius:10px;background:#f719c0;color:#fff;font-size:20px;font-weight:800;line-height:1.3;white-space:nowrap}
.care-phone-call svg{width:22px;height:22px;flex:none}.care-phone-call:hover{background:#ff8057}.care-phone-call:focus-visible{outline:3px solid #183c39;outline-offset:3px}
@media(max-width:600px){.care-phone-bar{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))}.care-phone-inner{justify-content:space-between;gap:8px}.care-phone-copy{flex-direction:column;align-items:flex-start;gap:2px}.care-phone-copy>span{font-size:11px}.care-phone-copy>strong{font-size:16px}.care-phone-call{padding:10px 12px;gap:6px;font-size:18px}.care-phone-call svg{width:18px;height:18px}}

/* Four service cards retain readable widths across devices. */
#services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:700px){#services .service-grid{grid-template-columns:1fr}}

/* Service navigation opens each dedicated information page. */
nav.service-browse{position:static;inset:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;max-height:none;overflow:visible;margin:0 0 36px;padding:0;background:transparent;box-shadow:none;align-items:stretch;flex-wrap:nowrap}
nav.service-browse a{display:flex;align-items:center;justify-content:center;min-height:54px;padding:12px 8px;border:1px solid #b8cbc5;border-radius:10px;background:white;color:#183c39;font-size:20px;font-weight:800;text-align:center;line-height:1.4}
nav.service-browse a:hover,nav.service-browse a[aria-current=page]{border-color:#ff6633;background:#fff0e7;color:#832d12}
nav.service-browse a:focus-visible{outline:3px solid #183c39;outline-offset:3px}.service-browse-wrap{padding-top:28px}
@media(max-width:700px){nav.service-browse{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:28px}nav.service-browse a{font-size:18px;min-height:50px}}

/* Show the complete landscape care photographs at the available column width. */
.hospital-hero img.service-photo,.visit-hero img.service-photo{display:block;width:100%;max-width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;margin:0 auto;border-radius:16px}

/* Keep all service navigation and recent additions usable on narrow viewports. */
.hospital-jumps,.visit-jumps{position:static;inset:auto;width:100%;max-height:none;overflow:visible;box-shadow:none;background:transparent}
@media(max-width:1000px){header #navigation{max-height:calc(100dvh - 164px - env(safe-area-inset-bottom,0px))}}
@media(max-width:800px){.hospital-help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hospital-jumps,.visit-jumps{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px 16px}}
@media(max-width:600px){.hospital-help-grid,.hospital-info-grid,.hospital-ready{grid-template-columns:minmax(0,1fr)}.hospital-hero,.visit-hero{gap:24px;padding-top:28px;padding-bottom:32px}.hospital-hero figure,.visit-hero figure{min-width:0}.hospital-hero img.service-photo,.visit-hero img.service-photo{width:100%;height:auto;max-height:none;aspect-ratio:auto}.hospital-hero figcaption,.visit-hero figcaption{line-height:1.6}.hospital-info-grid{gap:24px}.hospital-call{min-height:52px}.hospital-jumps a,.visit-jumps a{display:inline-flex;align-items:center;min-height:44px;padding-block:8px}.care-phone-inner{min-width:0}.care-phone-call{flex-shrink:0}nav.service-browse a{min-height:50px}}

/* Lift the desktop service menu to the marked upper line. */
@media(min-width:1001px){#services{padding-top:40px}}

/* The introductory service strip links to all four service guides. */
.intro-service-links{display:flex;align-items:center;flex-wrap:wrap;font-size:14px;color:#e0eee7;line-height:1.5}
.intro-service-links a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;font-weight:600;white-space:nowrap}
.intro-service-links a:hover{text-decoration:underline;text-underline-offset:4px}.intro-service-links a:focus-visible{outline:2px solid white;outline-offset:4px;border-radius:3px}
@media(max-width:600px){.intro-band .intro-service-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;font-size:14px}.intro-service-links b{display:none}.intro-service-links a{min-height:44px}}

/* Broader desktop care images occupy the marked area beside the copy. */
@media(min-width:1001px){
 .hospital-hero,.visit-hero{grid-template-columns:minmax(280px,.8fr) minmax(0,2fr);gap:40px;align-items:start}
 .hospital-hero h1,.visit-hero h1{font-size:clamp(30px,2.7vw,38px);line-height:1.5}
 .hospital-hero figure,.visit-hero figure{padding-top:20px;min-width:0}
 .hospital-hero img.service-photo,.visit-hero img.service-photo{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
 .hospital-hero figcaption,.visit-hero figcaption{margin-top:14px;line-height:1.6}
}

/* Align the homepage photograph with the marked desktop hero area. */
@media(min-width:1001px){
 .hero{grid-template-columns:minmax(320px,1fr) minmax(0,2fr);gap:28px;align-items:start;padding-top:48px}
 .hero-copy h1{font-size:clamp(32px,3.2vw,40px);line-height:1.5}
 .hero-visual{height:clamp(440px,42vw,535px);min-height:0;align-self:start}
 .hero-visual img{border-radius:16px;object-position:center center}
 .hero-visual .image-caption{left:18px;bottom:38px;max-width:calc(100% - 36px)}
}

/* Large, readable desktop presentation for the public care website. */
@media(min-width:1001px){
 body.care-public{font-size:20px;line-height:1.8;--muted:#4d605b;padding-bottom:116px}
 .care-public .wrap{width:100%;max-width:2000px;padding-inline:clamp(28px,2.5vw,64px)}
 .care-public header .nav{min-height:108px;padding-block:12px;gap:24px}
 .care-public header .nav>.brand{font-size:30px}
 .care-public header #navigation{font-size:18px;gap:8px 18px;flex-wrap:wrap;line-height:1.5}
 .care-public header #navigation a{display:inline-flex;align-items:center;min-height:48px;font-size:18px}
 .care-public .hero{gap:40px;padding-top:48px}
 .care-public .hero-copy h1{font-size:clamp(42px,3vw,64px);line-height:1.5}
 .care-public .hero-visual{height:clamp(520px,36vw,720px)}
 .care-public .hospital-hero,.care-public .visit-hero{gap:48px}
 .care-public .hospital-hero h1,.care-public .visit-hero h1{font-size:clamp(40px,3vw,58px);line-height:1.5}
 .care-public h2,.care-public .visiting-page h2{font-size:clamp(30px,2.3vw,44px);line-height:1.5}
 .care-public h3,.care-public .hospital-help-grid h3,.care-public .visiting-page h3{font-size:26px;line-height:1.5}
 .care-public .lead,.care-public .visit-lead{font-size:24px;line-height:1.8}
 .care-public .eyebrow,.care-public .hero .eyebrow,.care-public .coverage-hero,.care-public .coverage-label,.care-public .service-tag{font-size:18px;letter-spacing:.2px}
 .care-public .hero-note,.care-public .image-caption span,.care-public .image-label,.care-public .small-note,.care-public .service-footnote,.care-public .hospital-boundary,.care-public .hospital-hero figcaption,.care-public .visit-hero figcaption,.care-public .company-details,.care-public .footer-bottom{font-size:18px;line-height:1.7}
 .care-public .image-caption strong{font-size:24px}
 .care-public .service-card p,.care-public .service-card ul,.care-public .hospital-help-grid p,.care-public .hospital-faq details p,.care-public .visit-note,.care-public .checklist p{font-size:20px;line-height:1.8}
 .care-public .service-card{padding:32px}
 .care-public .button,.care-public .text-link,.care-public .service-detail-link,.care-public .hospital-detail-link,.care-public .visit-text-link,.care-public .visit-primary,.care-public .visit-phone{font-size:20px;line-height:1.5}
 .care-public .button,.care-public .visit-primary,.care-public .visit-phone{min-height:56px;padding:16px 24px}
 .care-public nav.service-browse a{font-size:26px;min-height:68px;padding:16px}
 .care-public .intro-band p,.care-public .intro-service-links,.care-public .intro-service-links a{font-size:20px}
 .care-public .intro-service-links a{min-height:52px}
 .care-public .hospital-jumps a,.care-public .visit-jumps a,.care-public .hospital-faq summary,.care-public .visiting-page summary{font-size:20px;min-height:48px}
 .care-public .hospital-call span,.care-public .service-call span{font-size:22px}
 .care-public .hospital-call strong,.care-public .service-call strong,.care-public .visit-call strong{font-size:32px}
 .care-public .hospital-call,.care-public .service-card a.service-call{padding:18px 24px;min-height:100px}
 .care-public .service-card a.service-call{color:#fff}
 .care-public .application-page{max-width:1280px}
 .care-public .application-page h1{font-size:38px}
 .care-public .form-grid label,.care-public .help-options label,.care-public .patient-pair-row label,.care-public .application-progress li{font-size:20px}
 .care-public .application-page input:not([type=checkbox]):not([type=radio]),.care-public .application-page select,.care-public .application-page textarea{font-size:20px;min-height:56px;padding:14px 16px}
 .care-public .application-controls button{font-size:20px;min-height:56px}
 .care-public .official-channels-title{font-size:22px}
 .care-public .official-channels nav a{font-size:18px;min-height:56px}
 .care-public .care-phone-copy>span{font-size:18px}.care-public .care-phone-copy>strong{font-size:24px}
 .care-public .care-phone-call{font-size:28px;min-height:64px;padding:14px 24px}
 .care-public section[id]{scroll-margin-top:160px}
}


.app-entry{padding-block:0 28px}.app-entry>a{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:18px 24px;border:1px solid #b8cec3;border-radius:14px;background:#eef5f0;color:#183c39;min-height:64px}.app-entry strong{font-size:20px}.app-entry span{font-size:16px;color:#34594d}.app-return-link{display:block;padding:14px 24px;background:#eef5f0;color:#075249;border-bottom:1px solid #c1d6ca;font-size:18px;font-weight:700;min-height:52px}.app-return-link:focus-visible{outline:3px solid #183c39;outline-offset:-3px}@media(max-width:600px){.app-entry>a{padding:16px}.app-entry strong{font-size:18px}.app-return-link{padding-inline:16px}}

/* Deep pink phone actions remain legible in mobile dark mode. */
@media(max-width:1000px) and (prefers-color-scheme:dark){
 .care-phone-call,.service-card a.service-call,.hospital-call,.visit-contact .visit-primary{background:#f719c0;border-color:#f719c0;color:#fff;color-scheme:only light}
 .care-phone-call:hover,.service-card a.service-call:hover,.hospital-call:hover,.visit-contact .visit-primary:hover{background:#9d174d;color:#fff}
}

.policy-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;padding:22px 16px;font-size:18px}.policy-links a{text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}.login-legal{min-width:0;margin:18px 0;padding:16px;border:1px solid #a8c0b6;border-radius:10px}.login-legal legend{font-size:18px;font-weight:700;padding:0 6px}.login-legal label,.application-consent label{display:flex;align-items:flex-start;gap:10px;margin:12px 0;line-height:1.7}.login-legal input[type=checkbox],.application-consent input[type=checkbox]{width:22px;height:22px;min-height:22px;flex:0 0 22px;margin-top:5px;accent-color:#0b635c}.login-legal label span{min-width:0}.login-legal a,.application-consent a{color:#075249;text-decoration:underline;text-underline-offset:4px}.member-privacy-summary{font-size:15px;padding:10px;background:#eef5f0;border-radius:8px}.member-privacy-summary p{margin:6px 0 0}.member-legal-confirm{display:block;width:100%;padding:14px 12px;margin-top:16px;border:0;border-radius:8px;background:#0b635c;color:white;font:inherit;font-weight:700}.member-legal-confirm[hidden],.login-legal[hidden],.login-options[hidden]{display:none!important}body.care-public .legal-page{max-width:1160px;padding-top:40px;padding-bottom:60px;font-size:20px;line-height:1.9}.legal-page h1{font-size:clamp(30px,4vw,44px)}.legal-page h2{font-size:clamp(23px,3vw,30px)}.legal-version{font-size:17px;color:#4d605b}.legal-toc{display:grid;position:static;inset:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;background:#eef5f0;padding:20px;border:1px solid #b3cbbf;border-radius:12px;box-shadow:none;margin:24px 0;font-size:18px}.legal-toc a{padding:8px;min-height:44px;text-decoration:underline;text-underline-offset:4px}.legal-section{padding:18px 0;border-bottom:1px solid #dce6e2;scroll-margin-top:180px}.legal-section p,.legal-section li{max-width:55em}.legal-table-scroll{overflow-x:auto;border:1px solid #c3d5ca;border-radius:8px;margin:18px 0}.legal-page table{border-collapse:collapse;width:100%;min-width:620px;font-size:18px;line-height:1.7}.legal-page th,.legal-page td{padding:14px;border-bottom:1px solid #c3d5ca;text-align:left;vertical-align:top}.legal-page th{background:#eef5f0}.legal-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}.legal-actions a{padding:12px 18px;border:1px solid #0b635c;border-radius:8px}.legal-page a{color:#075249;text-decoration:underline;text-underline-offset:4px}@media(max-width:600px){body.care-public .legal-page{font-size:18px;padding-top:28px}.legal-toc{grid-template-columns:1fr;padding:14px;font-size:17px}.login-legal{padding:12px}.policy-links{font-size:16px}.member-privacy-summary{font-size:15px}.legal-table-scroll{margin-inline:0}}@media print{header,footer,.care-phone-bar,.dasom-chat-launch,.legal-toc,.legal-actions,.app-return-link{display:none!important}body.care-public{padding:0!important}body.care-public .legal-page{max-width:none;padding:0;font-size:12pt}.legal-table-scroll{overflow:visible}.legal-page table{min-width:0;font-size:11pt}}

/* Wider login consent dialog on desktop. */
@media (min-width:1001px){.login-dialog{width:550px;max-width:calc(100vw - 32px)}}

/* Desktop-only login text increase; mobile keeps its previous sizes. */
@media(min-width:1001px){
.login-dialog{font-size:calc(16px + 2pt)}
.login-dialog .login-close{font-size:calc(30px + 2pt)}
.login-dialog .login-brand{font-size:calc(24px + 2pt)}
.login-dialog h2{font-size:calc(26px + 2pt)}
.login-dialog>p,.login-dialog .login-status,.login-dialog .login-consult{font-size:calc(14px + 2pt)}
.login-dialog .login-help{font-size:calc(13px + 2pt)}
.login-dialog .provider-button,.login-dialog .login-form-continue{font-size:calc(16px + 2pt)}
.login-dialog .provider-button small{font-size:calc(12px + 2pt)}
.login-dialog .login-legal legend{font-size:calc(18px + 2pt)}
.login-dialog .member-privacy-summary{font-size:calc(15px + 2pt)}
.login-dialog .login-legal,.login-dialog .login-options{line-height:1.7}
body.care-public .login-dialog{font-size:calc(20px + 2pt)}
}

/* Keep desktop header menus on one row at their earlier text size. */
@media(min-width:1001px){
 .care-public header .nav{gap:12px;min-height:96px}
 .care-public header .nav>.brand{font-size:26px}
 .care-public header #navigation{font-size:clamp(12px,calc(1.15vw - 2px),18px);line-height:1.5;flex-wrap:nowrap;gap:clamp(4px,.55vw,10px);min-width:0;overflow-x:auto;justify-content:flex-start}
 .care-public header #navigation a,.care-public header #navigation .member-logout{font-size:inherit;white-space:nowrap;flex-shrink:0;min-height:48px}
 .care-public header #navigation .nav-contact{padding:8px 10px}
}

/* Clear feedback for choosing a header menu item. */
.care-public header #navigation a{border-radius:6px;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}
.care-public header #navigation a:hover,.care-public header #navigation a:focus-visible{background:#fff0e8;color:#a7350f;box-shadow:inset 0 -3px 0 #ff6633}
.care-public header #navigation a[aria-current="page"]{background:#fff0e8;color:#a7350f;box-shadow:inset 0 -3px 0 #ff6633}
.care-public header #navigation a:active{background:#ffdfcf;color:#792507}
@media(min-width:1001px){
 .care-public header #navigation{gap:clamp(2px,.35vw,6px)}
 .care-public header #navigation a:not(.nav-contact){padding-inline:4px}
}
@media(prefers-reduced-motion:reduce){.care-public header #navigation a{transition:none}}

/* Use the full desktop menu area, beginning at its left edge. */
@media(min-width:1001px){
 .care-public header #navigation{flex:1 1 auto;width:auto;margin-left:0;justify-content:space-between;font-size:clamp(12px,calc(1.3vw - 2px),20px);flex-wrap:nowrap}
}

/* Soft pink hover applies only to desktop header menus. */
@media(min-width:1001px){
 .care-public header #navigation a:hover,.care-public header #navigation a:focus-visible,.care-public header #navigation a[aria-current="page"]:hover,.care-public header #navigation a[aria-current="page"]:focus-visible{background:#ffc0cb;color:#6b1738;box-shadow:inset 0 -3px 0 #f48aa3}
}

/* Give the brand room before the desktop menu begins. */
@media(min-width:1001px){.care-public header .nav{column-gap:clamp(24px,2.4vw,48px)}}

.login-legal .consent-select-all,.application-consent .consent-select-all{padding:0;margin:12px 0;background:transparent;border:0;border-radius:0;font-weight:700;color:#183c39}
.login-legal label,.application-consent label{padding-inline:0}
.login-legal input[type=checkbox],.application-consent input[type=checkbox]{margin:5px 0 0}

/* Remove the colored box behind the persistent consultation number. */
.care-phone-bar .care-phone-call,.care-phone-bar .care-phone-call:hover,.care-phone-bar .care-phone-call:active{background:transparent;border-color:transparent;color:#183c39;box-shadow:none}

/* Restore the original orange consultation buttons inside the care app. */
.from-care-app .service-card a.service-call,.from-care-app .hospital-call{background:#ff6600;color:#fff}
.from-care-app .service-card a.service-call:hover,.from-care-app .hospital-call:hover{background:#ff6600;color:#fff;box-shadow:inset 0 0 0 2px #9b3e00}
.from-care-app .care-phone-bar .care-phone-call,.from-care-app .care-phone-bar .care-phone-call:hover,.from-care-app .care-phone-bar .care-phone-call:active,.from-care-app .apply-invite a,.from-care-app .visit-contact .visit-primary,.from-care-app .care-time-choice.is-selected{background:#ff6600;border-color:#ff6600;color:#fff}

/* Calm, readable desktop copy for patients and family caregivers. */
@media(min-width:1001px){
 body.care-public{font-size:22px;line-height:1.85;--muted:#435b53}
 .care-public main#main :where(p,li,dt,dd){font-size:22px;line-height:1.85;letter-spacing:0;overflow-wrap:break-word}
 .care-public main#main :where(p){max-width:60ch}
 .care-public main#main :where(.lead,.visit-lead,.empathy-lead){font-size:24px;line-height:1.8}
 .care-public main#main .large-copy{font-size:26px}
 .care-public main#main :where(h2,h3,h4){letter-spacing:-.3px;line-height:1.55}
 .care-public main#main h3{font-size:28px}
 .care-public main#main h4{font-size:24px}
 .care-public main#main :where(small,.form-hint,.small-note,.service-footnote,.hospital-boundary){font-size:18px;line-height:1.8;color:#435b53}
 .care-public main#main :where(.muted,.application-notice p,.image-caption span,.hospital-hero figcaption,.visit-hero figcaption){font-size:20px;line-height:1.8}
 .care-public main#main :where(.form-grid label,.help-options label,.patient-pair-row label,.application-consent label,.care-time-options legend){font-size:22px;line-height:1.7}
 .care-public main#main :where(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:22px}
 .care-public main#main .consult-prep{padding:32px 36px;background:#fafcf9;border-color:#c9d9d1;border-radius:16px}
 .care-public main#main .consult-prep h3{font-size:30px;margin-bottom:12px}
 .care-public main#main .consult-prep>p{margin:0 0 24px;font-size:20px}
 .care-public main#main .consult-prep li{gap:20px;padding:22px 0;align-items:flex-start}
 .care-public main#main .consult-prep li>span{font-size:20px;font-weight:600;color:#436b5e;padding-top:3px;flex:0 0 30px}
 .care-public main#main .consult-prep strong{display:block;font-size:24px;font-weight:700;line-height:1.6;margin-bottom:4px}
 .care-public main#main .consult-prep li p{font-size:22px;color:#435b53;margin:0}
 .care-public main#main .steps h3,.care-public main#main .checklist h4{font-size:26px}
 .care-public main#main .steps p,.care-public main#main .checklist p{font-size:22px}
 .care-public .company-details,.care-public .footer-bottom,.care-public .footer-main p{font-size:20px;line-height:1.8}
}

/* Match the single-row consultation arrangement on public pages. */
.care-phone-bar .care-phone-inner{justify-content:center;gap:clamp(8px,2vw,22px);flex-wrap:nowrap}
.care-phone-bar .care-phone-copy{flex-direction:row;align-items:center;white-space:nowrap}
.care-phone-bar .care-phone-copy>span{display:none}
.care-phone-bar .care-phone-copy>strong{font-size:clamp(15px,4.4vw,24px)}
.care-phone-bar .care-phone-call{padding-inline:0;font-size:clamp(18px,5vw,28px);gap:8px}

/* Match the reference: brand left and a single menu row on the right. */
.header-service-menus,.header-request-menus{display:contents}
@media(min-width:1001px){
 .care-public header .wrap.nav{display:flex;flex-wrap:nowrap;align-items:center;gap:36px;min-height:98px;padding-block:14px;max-width:none;padding-inline:clamp(24px,3.125vw,64px)}
 .care-public header .nav>.brand{flex:0 0 auto;width:auto;font-size:26px}
 .care-public header #navigation{display:flex;flex-direction:row;align-items:center;flex:0 1 1484px;width:1484px;min-width:0;margin-left:auto;overflow-x:auto;gap:12px;font-size:24px;line-height:1.4;flex-wrap:nowrap;justify-content:space-between;color:#000}
 .care-public header #navigation .header-service-menus,.care-public header #navigation .header-request-menus{display:contents}
 .care-public header #navigation a,.care-public header #navigation a:not(.nav-contact){display:flex;align-items:center;justify-content:center;flex-shrink:0;width:auto;min-width:0;min-height:46px;margin:0;padding:6px 0;font-size:24px;line-height:1.4;white-space:nowrap;font-weight:500;color:#000}
 .care-public header #navigation .nav-contact{align-self:center;border:1px solid #0000ff;border-radius:7px;padding:6px 10px}
 .care-public header #navigation a:hover,.care-public header #navigation a:focus-visible{background:#ffc0cb;color:#6b1738;box-shadow:inset 0 -3px 0 #f48aa3}
 .care-public header #navigation .member-logout{font-size:18px;min-height:44px;white-space:nowrap}
 .care-public section[id]{scroll-margin-top:150px}
 html{scroll-padding-top:150px}
}

/* Hide the desktop menu scrollbar without clipping menu access. */
@media(min-width:1001px){
 .care-public header #navigation{scrollbar-width:none;-ms-overflow-style:none}
 .care-public header #navigation::-webkit-scrollbar{display:none;width:0;height:0}
}

/* Consistent social sign-in buttons across public pages and the web app. */
.login-dialog .login-options{gap:14px;margin-top:20px}
.login-dialog .provider-button,.app-body .login-dialog .provider-button{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;min-height:60px;padding:14px 12px;border-radius:10px;font-size:18px;font-weight:600;line-height:1.4;transition:box-shadow .15s,transform .15s}
.login-dialog .provider-content{display:flex;align-items:center;justify-content:center;gap:12px;max-width:100%}
.login-dialog .provider-icon{display:flex;align-items:center;justify-content:center;flex:0 0 26px;width:26px;height:26px}
.login-dialog .provider-icon svg{display:block;width:26px;height:26px}
.login-dialog .provider-label{white-space:nowrap}
.login-dialog .provider-button small{font-size:13px;line-height:1.4;font-weight:500;opacity:1}
.login-dialog .provider-button small[hidden]{display:none}
.login-dialog .provider-google{background:#fff;border:1px solid #747775;color:#1f1f1f}
.login-dialog .provider-naver{background:#03c75a;border:1px solid #03c75a;color:#fff}
.login-dialog .provider-kakao{background:#fee500;border:1px solid #fee500;color:#191919}
.login-dialog .provider-facebook{background:#1877f2;border:1px solid #1877f2;color:#fff}
.login-dialog .provider-button:hover{box-shadow:0 3px 10px #0002;transform:translateY(-1px)}
.login-dialog .provider-button:active{transform:translateY(0);box-shadow:none}
.login-dialog .provider-button:disabled{cursor:wait;transform:none;opacity:.7}
.login-dialog .provider-button:focus-visible{outline:3px solid #183c39;outline-offset:3px}
@media(min-width:1001px){.login-dialog .provider-button,.app-body .login-dialog .provider-button{min-height:66px;font-size:21px;padding:17px 16px}.login-dialog .provider-button small{font-size:15px}.login-dialog .provider-content{gap:14px}}
@media(prefers-reduced-motion:reduce){.login-dialog .provider-button{transition:none}}

/* Mobile login close: keep the X without Safari's initial focus outline. */
@media(max-width:1000px){
 .login-dialog .login-close,.login-dialog .login-close:focus,.login-dialog .login-close:focus-visible{border:0;outline:none;box-shadow:none;-webkit-appearance:none;appearance:none;border-radius:8px;background:transparent;-webkit-tap-highlight-color:transparent}
 .login-dialog .login-close:focus-visible,.login-dialog .login-close:hover,.login-dialog .login-close:active{background:transparent}
}

.form-grid .job-gender{min-width:0;border:0;padding:0;margin:0}
.form-grid .job-gender legend{padding:0;margin-bottom:8px;font-size:inherit;font-weight:600}
.form-grid .job-gender-options{display:flex;align-items:center;gap:28px;box-sizing:border-box;width:100%;min-height:56px;padding:10px 12px;border:1px solid #a7bab2;border-radius:6px;background:#fff}
.form-grid .job-gender-options label{display:flex;flex-direction:row;align-items:center;gap:10px;min-height:28px;margin:0;cursor:pointer}
.application-page .job-gender-options input[type=radio]{appearance:auto;-webkit-appearance:radio;flex:0 0 22px;width:22px;height:22px;min-height:22px;padding:0;margin:0;border:0;accent-color:#0b635c}
@media(min-width:1001px){.care-public main#main .job-gender legend{font-size:22px}}

@media(min-width:1001px){.form-grid .job-gender-options{padding:14px 16px}}

.worker-entry{display:flex;gap:12px;flex-wrap:wrap;padding:20px;margin:22px 0;border:1px solid #c6d8cb;border-radius:12px;background:#eef6ef}.worker-entry a{font-weight:700;color:#075249;text-decoration:underline}

/* Larger mobile dialog close controls, including iPhone Safari. */
@media(max-width:1000px){.login-dialog .login-close{font-size:40px!important;line-height:1;width:52px;height:52px;min-width:52px;min-height:52px;padding:0;display:inline-flex;align-items:center;justify-content:center}.login-dialog .login-brand{margin-left:32px;margin-right:32px}}
