:root{font-family:system-ui,sans-serif;color:#102940;background:#f5f7f8;line-height:1.6}
*{box-sizing:border-box}body{margin:0}a{color:#126064}a:focus-visible,summary:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #d27d10;outline-offset:3px}
.shell{width:min(100% - 2rem,72rem);margin-inline:auto}.top,.legal,.quick,header nav{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.top{justify-content:space-between;padding:1rem 0}
header{background:#fff;border-bottom:1px solid #c9d7d6}.brand{font-size:1.22rem;text-decoration:none;color:#102940}.brand strong{color:#126064}
main{padding-block:1.4rem 3rem}.hero{border-radius:1.4rem;padding:clamp(1rem,5vw,4rem);background:#103b48;color:#fff}.hero p{max-width:58ch}.tag{letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;color:#b4e9dc}.hero h1{font-size:clamp(2rem,6vw,4rem);line-height:1.1;margin:.5rem 0}.hero a{color:#d6f7ef}.search div{display:flex;gap:.5rem}.search input{min-width:0;flex:1}
section{margin-block:1.3rem 2.5rem}.grid,.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:.8rem}.tile,.steps li,fieldset{background:#fff;border:1px solid #c9d7d6;border-radius:.7rem;padding:.85rem 1rem}
summary{cursor:pointer;font-weight:700}.tile span{padding-right:.6rem;color:#126064}.tile li{margin-block:.35rem}.steps{padding:0;list-style:none}.quick{margin-top:1.1rem}
input,textarea,select,button,.button{font:inherit;border-radius:.45rem;padding:.6rem .8rem;min-height:44px}input,textarea,select{border:1px solid #6d8990;background:#fff;color:#102940}button,.button{cursor:pointer;background:#126064;color:#fff;border:1px solid #126064;text-decoration:none;display:inline-block}
.request{max-width:48rem}.request label,.search label{display:block;font-weight:650;margin:.55rem 0}.request :is(input,textarea,select){width:100%;display:block}.request textarea{min-height:8rem}.request fieldset{margin:.75rem 0}.legal{padding:1rem 0}
.skip{position:absolute;left:1rem;top:-5rem;background:#fff;padding:.5rem;z-index:2}.skip:focus{top:.5rem}
@media(max-width:32rem){.search div{flex-direction:column}.search button{align-self:start}}

.senior-help{padding:clamp(1rem,4vw,2.5rem);background:#fff8e9;border:1px solid #e5d5af;border-radius:1rem;font-size:1.125rem}
.senior-help .tag{color:#134b60}.senior-help li{margin:.45rem 0}.senior-help .button{background:#153c53;color:#fff;border-color:#153c53;font-weight:700}
.phone-help[hidden]{display:none}.phone-help{position:fixed;right:max(.85rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:20;display:grid;gap:.3rem;width:min(21rem,calc(100% - 1.7rem));padding:1rem 3.4rem 1rem 1rem;background:#153c53;color:#fff;border-radius:.75rem;box-shadow:0 8px 30px #0005;border-inline-start:5px solid #ffd477}
.phone-help strong{font-size:1.15rem}.phone-help a{display:flex;align-items:center;color:#ffdc88;min-height:44px;font-size:1.22rem;font-weight:750}.phone-help button{position:absolute;right:.3rem;top:.3rem;width:44px;height:44px;padding:0;background:transparent;color:#fff;border:1px solid #aac4d0;font-size:1.35rem}.phone-help small{font-size:.82rem}

.home-intro { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:1rem; align-items:stretch }
.home-intro > section { margin:0 }
.home-intro .senior-help { font-size:1.03rem }
.service-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:1rem; align-items:start }
.service-tabs { grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr)); align-items:start }
.service-tab, .service-tabs summary { display:flex; align-items:center; gap:.65rem; text-align:left; min-height:76px; width:100%; background:#fff; color:#102940; border:1px solid #c9d7d6; font-weight:700; border-radius:.65rem }
.service-tab span, .service-tabs summary span { font-size:2rem; line-height:1; min-width:1.15em; color:#126064 }
.service-tab[aria-expanded="true"] { background:#123e57; color:#fff; border-color:#123e57 }
.service-tab[aria-expanded="true"] span { color:#ffdc88 }
.service-selection { margin:0; background:#fff; padding:1.1rem; border:2px solid #126064; border-radius:.8rem; scroll-margin-top:1rem }
.service-selection h3 { margin-top:0; font-size:1.3rem }
.service-selection a,.city-list a { display:block; padding:.55rem .2rem; min-height:44px }
.easy-steps .steps { counter-reset:step }
.easy-steps .steps li { counter-increment:step; font-size:1.12rem }
.easy-steps .steps li:before { content:counter(step); display:grid; place-items:center; width:2.4rem; height:2.4rem; margin-bottom:.7rem; border-radius:50%; background:#123e57; color:white; font-weight:800 }
.city-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr)); list-style:none; gap:.15rem .75rem; padding:0 }
.city-list li { border-bottom:1px solid #c9d7d6 }
.mobile-call { display:none }
@media(max-width:760px) {
  .home-intro,.service-layout { grid-template-columns:1fr }
  .service-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem }
  .service-tab,.service-tabs summary { flex-direction:column; align-items:flex-start; gap:.35rem; min-height:100px; overflow-wrap:anywhere }
  .service-selection { margin-top:.5rem }
  .home-intro .hero,.home-intro .senior-help { padding:1rem }
  .mobile-call { display:block; position:fixed; inset:auto 0 0; z-index:19; padding:.45rem .75rem max(.45rem,env(safe-area-inset-bottom)); background:#071628 }
  .mobile-call a { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:.25rem .6rem; min-height:52px; padding:.3rem; color:#102940; background:#ffdc88; border-radius:.55rem; text-decoration:none; font-size:1rem }
  .mobile-call a span { font-weight:800 }
  .phone-help { bottom:calc(4.8rem + env(safe-area-inset-bottom)) }
  body { padding-bottom:calc(4.5rem + env(safe-area-inset-bottom)) }
}

.home-intro { position:relative; grid-template-columns:minmax(0,1.22fr) minmax(0,1fr); gap:0; padding-right:.6rem; }
.home-intro .hero { padding-right:3.2rem; }
.home-intro .senior-help { position:relative; align-self:center; margin:.75rem 0 .75rem -2rem; z-index:1; border-left:6px solid #e3ae4c; box-shadow:0 14px 28px #10294030; padding:1rem 1.25rem; }
.home-intro .senior-help h2 { margin:.35rem 0; }
.home-intro .senior-help ul { margin:.35rem 0; }
.home-intro .senior-help li { margin:.2rem 0; }
.home-intro .senior-help p { margin:.45rem 0; }
.service-tab svg,.service-tabs summary svg { display:block; width:2.65rem; height:2.65rem; }
.easy-steps h2,.service-area h2 { font-size:clamp(1.55rem,3vw,2.1rem); margin:0 0 .6rem; }
.easy-steps .steps { margin:.65rem 0; }
.easy-steps .steps li { display:grid; grid-template-columns:auto 1fr; column-gap:.65rem; padding:.7rem; }
.easy-steps .steps li:before { grid-row:1 / span 2; margin:0; }
.easy-steps .steps li strong { font-size:1.18rem; }
.easy-steps .steps li p { margin:.12rem 0; }
.service-area > p { font-size:1.12rem; }
footer .msd-footer-cta .dresden-footer-legal { display:flex; flex-wrap:wrap; justify-content:center; gap:.15rem .75rem; }
footer .msd-footer-cta .dresden-footer-legal a { background:transparent; color:#eef5fa; padding:.2rem; font-size:.88rem; text-decoration:underline; font-weight:500; }
@media(max-width:760px) {
  .home-intro { grid-template-columns:1fr; padding:0; }
  .home-intro .hero { padding:1rem 1rem 2.15rem; }
  .home-intro .senior-help { margin:-1.25rem .55rem 0; padding:.9rem; }
  .service-tab svg,.service-tabs summary svg { width:2.55rem; height:2.55rem; }
}

.senior-help{position:relative}.senior-since{position:absolute;top:0;right:clamp(12px,3vw,30px);transform:translateY(-58%) rotate(-7deg);padding:.24em .65em;border-radius:.35em;background:#15384b;color:#fff;font-size:clamp(1rem,2vw,1.25rem);font-weight:800;line-height:1.2;box-shadow:0 2px 6px #102c4240;z-index:1}
