/* ROYAL CARE V11.0 — navigation, breadcrumb and responsive continuity */
.rc-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 22px;color:rgba(255,255,255,.66);font-family:"Montserrat","Pretendard","Noto Sans KR",sans-serif;font-size:10px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;line-height:1.6}
.rc-breadcrumb a{color:rgba(255,255,255,.82)!important;transition:color .2s ease}
.rc-breadcrumb a:hover{color:#e5c983!important}
.rc-breadcrumb .rc-separator{color:rgba(229,201,131,.7)}
.page-hero .rc-breadcrumb{color:rgba(255,255,255,.62)}
.page-hero .rc-breadcrumb a{color:rgba(255,255,255,.82)!important}
.page-hero:not(.about-hero) .rc-breadcrumb,.about-hero .rc-breadcrumb{position:relative;z-index:2}
.region-hero .rc-breadcrumb{margin-bottom:20px}
.region-hero .neighborhood-badge + .rc-breadcrumb{margin-top:18px}

/* Keep the mobile drawer above all page layers and make its state deterministic. */
.menu-overlay{opacity:0;visibility:hidden;pointer-events:none;display:block!important;transition:opacity .22s ease,visibility .22s ease}
.menu-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.mobile-nav{visibility:hidden;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .22s ease,transform .22s ease,visibility .22s ease}
.mobile-nav.is-open{display:grid!important;visibility:visible;opacity:1;transform:none;pointer-events:auto}
.menu-btn{position:relative;z-index:52;min-width:44px;min-height:44px;align-items:center;justify-content:center;line-height:1;cursor:pointer}
body.menu-open .site-header{z-index:60}
body.menu-open .mobile-nav{z-index:59}
body.menu-open .menu-overlay{z-index:58}

/* Ensure every page, including home, receives the same mobile call control. */
@media(max-width:720px){
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}
  .mobile-call{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:fixed!important;left:14px!important;right:14px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;z-index:1000!important;min-height:58px!important;height:auto!important;padding:15px 20px!important;border-radius:999px!important;align-items:center!important;justify-content:center!important;background:linear-gradient(90deg,#d9bc78,#cda85a)!important;color:#07182b!important;font-size:15px!important;font-weight:850!important;letter-spacing:-.02em!important;box-shadow:0 12px 34px rgba(4,17,31,.24)!important}
  .floating-contact{display:none!important}
  .mobile-nav{position:fixed!important;top:72px!important;left:0!important;right:0!important;max-height:calc(100dvh - 72px)!important;overflow:auto!important;background:#fbfaf7!important;padding:14px 20px calc(24px + env(safe-area-inset-bottom))!important;border-bottom:1px solid #ddd4c7!important;box-shadow:0 22px 50px rgba(4,17,31,.18)!important}
  .mobile-nav a{min-height:50px!important;display:flex!important;align-items:center!important;padding:13px 4px!important;color:#10253b!important;border-bottom:1px solid #ebe4d9!important;font-weight:750!important}
  .mobile-nav a:last-child{justify-content:center!important;margin-top:12px!important;background:#07182b!important;color:#fff!important;border:0!important;border-radius:4px!important}
  .menu-overlay{position:fixed!important;inset:72px 0 0!important;background:rgba(2,12,24,.5)!important}
  .rc-breadcrumb{font-size:9px;gap:7px;margin-bottom:18px;letter-spacing:.12em}
}

@media(min-width:721px){
  .menu-overlay{display:none!important}
}
