
:root{--navy:#071d49;--blue:#154a98;--red:#d81f32;--ink:#101827;--muted:#5d6878;--paper:#f4f7fb;--white:#fff;--line:#dfe6ef;--green:#137a45;--gold:#e7b43d;--shadow:0 18px 50px rgba(7,29,73,.14);--radius:22px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--white);line-height:1.65}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 34px));margin:auto}.topbar{background:#050c1b;color:#e9eef8;font-size:14px}.topbar .wrap{display:flex;justify-content:space-between;gap:18px;padding:8px 0}.topbar a{color:#fff;font-weight:800}.nav{position:sticky;top:0;z-index:70;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-inner{display:flex;align-items:center;gap:20px;min-height:82px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex:0 0 auto}.brand img{width:152px;height:58px;object-fit:contain}.brand strong{display:none}.navlinks{display:flex;align-items:center;gap:6px;margin-left:auto}.navlinks>a,.dropbtn{border:0;background:transparent;padding:13px 11px;text-decoration:none;font-weight:800;color:#223047;cursor:pointer}.dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:100%;left:0;min-width:245px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:8px;box-shadow:var(--shadow);max-height:65vh;overflow:auto}.dropdown:hover .dropdown-menu,.dropdown:focus-within .dropdown-menu{display:grid}.dropdown-menu a{padding:9px 11px;border-radius:9px;text-decoration:none;font-weight:700}.dropdown-menu a:hover{background:#eef4ff}.nav-cta{background:var(--red)!important;color:#fff!important;border-radius:999px}.menu-toggle{display:none;margin-left:auto;border:0;background:var(--navy);color:#fff;border-radius:12px;padding:12px 14px;font-weight:900}.hero{position:relative;overflow:hidden;background:linear-gradient(115deg,rgba(4,18,51,.97),rgba(9,47,111,.94) 58%,rgba(173,15,38,.88));color:#fff}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:42px;align-items:center;min-height:590px;padding:72px 0}.hero h1{font-size:clamp(42px,6vw,72px);line-height:1.03;margin:0 0 20px;letter-spacing:-2px}.hero p{font-size:20px;color:#e6ecf7;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:#f2c45c;font-size:13px}.hero-media,.media-card{border-radius:28px;overflow:hidden;min-height:390px;background:linear-gradient(135deg,#20375f,#101827);box-shadow:0 30px 70px #0007;position:relative}.hero-media img,.media-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-media:after,.media-card:after{content:"Real Total Home Care project";position:absolute;bottom:14px;left:14px;background:#071d49d9;color:#fff;padding:8px 11px;border-radius:999px;font-size:12px;font-weight:800}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:14px 18px;text-decoration:none;font-weight:900;cursor:pointer;min-height:50px}.btn-primary{background:var(--red);color:#fff}.btn-secondary{background:#fff;color:var(--navy)}.btn-blue{background:var(--blue);color:#fff}.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:32px}.trust{background:#ffffff14;border:1px solid #ffffff25;border-radius:14px;padding:13px}.trust b{display:block}.section{padding:76px 0}.section.alt{background:var(--paper)}.section h2{font-size:clamp(32px,4vw,50px);line-height:1.08;margin:8px 0 16px;letter-spacing:-1px}.section-head{max-width:790px;margin-bottom:32px}.muted{color:var(--muted)}.grid{display:grid;gap:18px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 8px 30px rgba(7,29,73,.07)}.card h3{margin-top:0;font-size:22px}.card a.more{color:var(--blue);font-weight:900;text-decoration:none}.service-card{display:flex;flex-direction:column}.service-card p{flex:1}.checklist{list-style:none;padding:0;margin:20px 0}.checklist li{position:relative;padding:9px 0 9px 30px;border-bottom:1px solid var(--line)}.checklist li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}.split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.process{counter-reset:steps}.process li{counter-increment:steps;list-style:none;position:relative;padding:5px 0 24px 58px}.process li:before{content:counter(steps);position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:900}.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 17px;margin:9px 0}.faq summary{font-weight:900;cursor:pointer}.area-links{display:flex;flex-wrap:wrap;gap:9px}.area-links a{background:#eef3fb;border:1px solid #dce5f2;border-radius:999px;padding:9px 13px;text-decoration:none;font-weight:800;color:#1c3768}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery figure{margin:0;min-height:260px;background:linear-gradient(135deg,#dbe5f5,#eef3fa);border-radius:18px;overflow:hidden;position:relative}.gallery img{width:100%;height:260px;object-fit:cover}.gallery figcaption{position:absolute;left:10px;right:10px;bottom:10px;background:#071d49e8;color:#fff;border-radius:11px;padding:10px;font-weight:800}.cta{background:linear-gradient(120deg,var(--navy),var(--blue));color:#fff;border-radius:28px;padding:40px}.cta h2{margin-top:0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:26px}.form-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow)}label{font-weight:800;font-size:14px}input,textarea,select{width:100%;padding:14px;border:1px solid #bcc8d8;border-radius:11px;margin:6px 0 14px;font:inherit}textarea{min-height:130px}.notice{background:#fff5d7;border:1px solid #f0cf72;border-radius:12px;padding:12px}.breadcrumbs{font-size:14px;color:#687387;padding:18px 0}.breadcrumbs a{text-decoration:none;color:var(--blue)}.footer{background:#050c1b;color:#d8e0ed;padding:54px 0 90px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px}.footer a{color:#fff;text-decoration:none}.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px}.sticky-mobile{display:none;position:fixed;z-index:80;left:10px;right:10px;bottom:10px;grid-template-columns:1fr 1fr;gap:8px}.sticky-mobile a{box-shadow:0 12px 35px #0005}.local-callout{border-left:6px solid var(--red);background:#f8faff;border-radius:15px;padding:20px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:999;background:#fff;padding:10px}.mobile-panel{display:none}.service-hub{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-hub a{display:block;background:#fff;border:1px solid var(--line);padding:15px;border-radius:13px;text-decoration:none;font-weight:900;color:var(--navy)}@media(max-width:980px){.navlinks{display:none}.menu-toggle{display:block}.mobile-panel.open{display:grid;position:fixed;z-index:69;top:82px;left:10px;right:10px;max-height:calc(100vh - 100px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:var(--shadow)}.mobile-panel a{padding:11px;text-decoration:none;font-weight:800;border-bottom:1px solid var(--line)}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-grid{padding:54px 0}.hero-media{min-height:320px}.grid-3{grid-template-columns:repeat(2,1fr)}.service-hub{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.trust-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.topbar .wrap{display:block;text-align:center}.brand img{width:126px}.hero h1{font-size:43px}.hero p{font-size:18px}.hero-media{min-height:260px}.grid-3,.grid-2,.gallery,.footer-grid{grid-template-columns:1fr}.service-hub{grid-template-columns:repeat(2,1fr)}.section{padding:54px 0}.card{padding:19px}.cta{padding:28px 20px}.sticky-mobile{display:grid}.footer{padding-bottom:110px}.trust-row{grid-template-columns:1fr 1fr}.actions .btn{width:100%}}


/* ===== Total Home Care Brand + Assistant v2 ===== */
.nav{box-shadow:0 8px 30px rgba(7,29,73,.08)}.nav-inner{min-height:98px;gap:18px}.brand{display:flex;align-items:center;gap:13px;min-width:260px;flex:0 0 auto;text-decoration:none}.brand .brand-mark{width:76px!important;height:76px!important;min-width:76px;aspect-ratio:1/1;object-fit:contain!important;object-position:center;display:block;border-radius:13px;background:#050505;box-shadow:0 6px 18px rgba(0,0,0,.24)}.brand-copy{display:grid;line-height:1.05}.brand-copy strong{display:block;font-size:20px;letter-spacing:-.02em;color:#071d49}.brand-copy small{display:block;margin-top:6px;color:#687387;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.navlinks{display:flex;align-items:center;justify-content:flex-end;gap:3px;margin-left:auto;white-space:nowrap}.navlinks>a,.dropbtn{font-size:14px;padding:12px 9px;border-radius:10px}.navlinks>a:hover,.dropbtn:hover{background:#edf3fb;color:#071d49}.assistant-link{background:#edf3ff!important;color:#123f87!important;border:1px solid #ccdaf2}.nav-cta{padding-inline:15px!important}.dropdown-menu{min-width:255px;grid-template-columns:1fr;z-index:100}.dropdown-menu a{font-size:14px}.mobile-panel details{border-bottom:1px solid var(--line)}.mobile-panel summary{padding:12px 11px;font-weight:900;cursor:pointer;list-style:none}.mobile-panel summary::-webkit-details-marker{display:none}.mobile-panel summary:after{content:'+';float:right}.mobile-panel details[open] summary:after{content:'−'}.mobile-submenu{display:grid;background:#f5f8fc;padding:4px 10px 10px}.mobile-submenu a{padding:9px 10px}.mobile-feature{background:#123f87!important;color:#fff!important;border-radius:12px;margin-bottom:6px}.footer-brand{display:flex;align-items:center;gap:13px;margin-bottom:14px}.footer-brand img{width:82px;height:82px;object-fit:contain;aspect-ratio:1/1;border-radius:13px;background:#000}.footer-brand div{display:grid}.footer-brand strong{font-size:23px;color:#fff}.footer-brand span{color:#aebbd0;font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:12px}.assistant-float{position:fixed;right:18px;bottom:18px;z-index:95;display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#123f87,#071d49);color:#fff;text-decoration:none;border:2px solid rgba(255,255,255,.75);border-radius:999px;padding:11px 16px 11px 11px;box-shadow:0 18px 45px rgba(0,0,0,.34);transition:transform .18s ease,box-shadow .18s ease}.assistant-float:hover{transform:translateY(-3px);box-shadow:0 22px 52px rgba(0,0,0,.42)}.assistant-float .assistant-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#d81f32;font-size:22px;font-weight:900}.assistant-float span:last-child{display:grid;line-height:1.15}.assistant-float strong{font-size:14px}.assistant-float small{font-size:11px;color:#dce7f8;margin-top:3px}.hero-media img,.media-card img{object-fit:cover!important}.hero-media:after,.media-card:after{font-size:11px}@media(max-width:1160px){.brand{min-width:205px}.brand-copy strong{font-size:17px}.brand-copy small{font-size:10px}.navlinks>a,.dropbtn{font-size:13px;padding:11px 7px}}@media(max-width:980px){.nav-inner{min-height:86px}.brand{min-width:0}.brand .brand-mark{width:64px!important;height:64px!important;min-width:64px}.brand-copy strong{font-size:18px}.brand-copy small{font-size:10px}.mobile-panel.open{top:96px}.assistant-float{bottom:88px}}@media(max-width:650px){.brand .brand-mark{width:58px!important;height:58px!important;min-width:58px}.brand-copy strong{font-size:16px}.brand-copy small{display:none}.assistant-float{right:10px;bottom:82px;padding:9px}.assistant-float span:last-child{display:none}.assistant-float .assistant-icon{width:46px;height:46px}.footer-brand img{width:70px;height:70px}}

/* =========================================================
   Total Home Care mobile navigation repair v2.2
   This final block intentionally comes last so desktop rules
   cannot override the phone and tablet menu.
   ========================================================= */
@media (max-width:980px){
  html{scroll-padding-top:92px}
  body.menu-open{overflow:hidden;touch-action:none}

  body.menu-open::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:998;
    background:rgba(2,8,20,.66);
    backdrop-filter:blur(3px);
    -webkit-backdrop-filter:blur(3px);
  }

  .topbar{
    position:relative;
    z-index:72;
    font-size:12px;
  }
  .topbar .wrap{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:6px 0;
    text-align:center;
  }
  .topbar .wrap>div:first-child{display:none}

  .nav{
    position:sticky;
    top:0;
    z-index:80;
  }
  .nav-inner{
    min-height:76px;
    gap:10px;
    padding:7px 0;
  }

  .brand{
    min-width:0!important;
    max-width:calc(100% - 88px);
    gap:10px;
  }
  .brand .brand-mark{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    object-fit:contain!important;
  }
  .brand-copy{
    min-width:0;
  }
  .brand-copy strong{
    display:block!important;
    font-size:17px!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .brand-copy small{
    display:block;
    font-size:9px!important;
  }

  .navlinks{
    display:none!important;
  }

  .menu-toggle{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    margin-left:auto;
    min-width:68px;
    min-height:46px;
    padding:11px 13px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:13px;
    background:var(--navy);
    color:#fff;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
    position:relative;
    z-index:1001;
    box-shadow:0 8px 22px rgba(7,29,73,.22);
  }
  .menu-toggle[aria-expanded="true"]{
    position:fixed;
    top:16px;
    right:16px;
    z-index:1002;
    background:var(--red);
    min-width:74px;
  }

  .mobile-panel{
    display:block!important;
    position:fixed!important;
    z-index:1000!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:min(90vw,400px)!important;
    height:100dvh!important;
    max-height:none!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    padding:78px 16px calc(28px + env(safe-area-inset-bottom))!important;
    background:#fff!important;
    border:0!important;
    border-left:1px solid var(--line)!important;
    border-radius:0!important;
    box-shadow:-20px 0 55px rgba(0,0,0,.28)!important;
    transform:translateX(105%);
    visibility:hidden;
    opacity:0;
    pointer-events:none;
    transition:transform .22s ease,opacity .18s ease,visibility 0s linear .22s;
  }
  .mobile-panel.open{
    transform:translateX(0);
    visibility:visible;
    opacity:1;
    pointer-events:auto;
    transition:transform .22s ease,opacity .18s ease;
  }

  .mobile-panel>a,
  .mobile-panel summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-height:50px;
    padding:12px 13px!important;
    color:var(--navy);
    text-decoration:none;
    font-size:16px;
    font-weight:900;
    border-bottom:1px solid var(--line);
    border-radius:10px;
  }
  .mobile-panel>a:hover,
  .mobile-panel summary:hover{
    background:#f2f6fc;
  }
  .mobile-panel .mobile-feature{
    margin-bottom:8px;
    color:#fff!important;
    background:linear-gradient(135deg,var(--blue),var(--navy))!important;
    border-bottom:0;
  }
  .mobile-panel details{
    border-bottom:0!important;
  }
  .mobile-panel summary{
    cursor:pointer;
    list-style:none;
  }
  .mobile-panel summary::-webkit-details-marker{display:none}
  .mobile-panel summary::after{
    content:"+";
    font-size:22px;
    line-height:1;
  }
  .mobile-panel details[open] summary::after{content:"−"}

  .mobile-submenu{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    gap:5px;
    padding:8px!important;
    background:#f5f8fc!important;
    border-radius:12px;
    margin:4px 0 9px;
  }
  .mobile-submenu a{
    display:block;
    padding:10px!important;
    border:0!important;
    border-radius:8px;
    color:#24344e;
    text-decoration:none;
    font-size:14px;
    font-weight:800;
  }
  .mobile-submenu a:hover{background:#e5edf8}

  .assistant-float{bottom:88px}
}

@media (max-width:520px){
  .topbar .wrap{font-size:11px}
  .brand-copy small{display:none!important}
  .brand-copy strong{font-size:15px!important}
  .brand .brand-mark{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
  }
  .nav-inner{min-height:70px}
  .menu-toggle{
    min-width:64px;
    min-height:44px;
    padding:10px 11px;
  }
  .mobile-panel{
    width:min(94vw,380px)!important;
  }
  .mobile-submenu{
    grid-template-columns:1fr;
  }
}

@media (prefers-reduced-motion:reduce){
  .mobile-panel{transition:none!important}
}
