/* Marketing keeps one booking action; workspace tabs stay in the portal. */
.drb-marketing-dock { display:none; }
body.drb-sandbox .drb-public-bell { flex:none; }
body.drb-sandbox .drb-public-bell>summary { display:grid; place-items:center; position:relative; width:44px; height:44px; box-sizing:border-box; padding:10px; border:1px solid #d8e3ea; border-radius:11px; color:#245d83; background:#fff; }
body.drb-sandbox .drb-public-bell>summary>svg { width:22px; height:22px; }
body.drb-sandbox .drb-public-bell [data-notification-badge] { position:absolute; right:-4px; top:-5px; min-width:18px; height:18px; padding:2px 4px; box-sizing:border-box; border-radius:10px; color:#fff; background:#195d91; font:600 10px/14px Inter,Arial,sans-serif; }
body.drb-sandbox .drb-public-bell [data-notification-badge][hidden] { display:none; }
body.drb-sandbox .drb-menu-account-links { display:flex; flex-wrap:wrap; gap:8px 20px; width:100%; margin-top:10px; }
body.drb-sandbox .drb-menu-account-links a { min-height:44px; display:inline-flex; align-items:center; font-size:13px; color:#245d83; text-decoration:none; }
@media(max-width:1180px) {
  body.drb-sandbox .drb-public-header--signed-in { justify-content:space-between; gap:10px; }
  body.drb-sandbox .drb-public-header--signed-in :is(.drb-public-nav,.drb-public-account) { display:none; }
  body.drb-sandbox .drb-public-header--signed-in .drb-public-menu { display:block; }
  body.drb-sandbox .drb-public-header--signed-in .drb-brand { flex:1; min-width:0; }
  body.drb-sandbox .drb-public-header--signed-in .drb-brand img { width:min(100%,220px)!important; height:auto!important; }
}
@media(min-width:961px) and (max-width:1180px) {
  body.drb-sandbox .drb-public-header--signed-in .drb-public-menu>summary { display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 12px; border:1px solid #d8e3ea; border-radius:10px; color:#245d83; list-style:none; cursor:pointer; }
  body.drb-sandbox .drb-public-header--signed-in .drb-public-menu>summary svg { width:20px; height:20px; }
  body.drb-sandbox .drb-public-header--signed-in .drb-public-menu>nav { position:absolute; right:24px; top:100%; width:360px; max-height:75vh; overflow:auto; padding:18px; border:1px solid #d8e3ea; border-radius:12px; background:#fff; box-shadow:0 10px 30px #173f5d15; }
}
/* Edge-attached booking dock. The safe area is filled inside its navy background. */
.drb-marketing-dock[hidden] { display:none!important; }
@media(max-width:760px) {
  body.drb-sandbox.drb-marketing-refined { --drb-marketing-height:52px; --drb-marketing-device-inset:env(safe-area-inset-bottom,0px); --drb-marketing-safe-area:0px; padding-bottom:calc(var(--drb-marketing-height) + var(--drb-marketing-safe-area) + 6px)!important; }
  body.drb-sandbox .drb-marketing-dock { display:grid; grid-template-columns:minmax(min-content,1fr) minmax(0,auto); align-items:center; gap:10px; position:fixed; inset:auto 0 0; width:100%; margin:0; z-index:35; box-sizing:border-box; padding:3px max(12px,env(safe-area-inset-right,0px)) calc(4px + var(--drb-marketing-safe-area)) max(12px,env(safe-area-inset-left,0px)); border:0; border-top:1px solid #35576a; border-radius:0; color:#fff; background:#183c50; box-shadow:0 -3px 14px #183c501a; }
  body.drb-sandbox .drb-marketing-prompt { min-width:0; font:600 13px/1.35 Inter,Arial,sans-serif; color:#fff; }
  body.drb-sandbox .drb-marketing-dock a.drb-marketing-cta { --drb-care-action-shadow:none; display:flex; align-items:center; justify-content:center; gap:8px; min-width:0; max-width:100%; box-sizing:border-box; min-height:44px; margin:0; padding:8px 12px; border:0; border-radius:9px!important; font:650 13px/1.35 Inter,Arial,sans-serif; text-decoration:none; text-transform:none; }
  body.drb-sandbox .drb-marketing-cta svg { width:16px; height:16px; flex:none; }
  body.drb-sandbox .drb-marketing-cta span { min-width:0; text-align:center; }
  body.drb-sandbox .drb-marketing-cta:active { transform:translateY(1px); }
  body.drb-sandbox .drb-marketing-cta:focus-visible { outline:2px solid #fff; outline-offset:3px; }
}
@media(max-width:359px) {
  body.drb-sandbox .drb-marketing-dock { gap:8px; }
  body.drb-sandbox .drb-marketing-prompt { font-size:13px; }
  body.drb-sandbox .drb-marketing-dock a.drb-marketing-cta { font-size:13px; padding-inline:10px; }
}
/* Allow enlarged text to wrap without clipping either label. */
@media(max-width:760px) {
  body.drb-sandbox .drb-marketing-dock a.drb-marketing-cta { max-width:62vw; }
}

/* Safari already insets an ordinary viewport. Reserve the home-indicator area
   only when the page covers the screen or runs as an installed/full-screen app. */
body.drb-sandbox.drb-marketing-refined.drb-marketing-viewport-cover { --drb-marketing-safe-area:var(--drb-marketing-device-inset); }
@media (display-mode:standalone), (display-mode:fullscreen) {
  body.drb-sandbox.drb-marketing-refined { --drb-marketing-safe-area:var(--drb-marketing-device-inset); }
}

/* Public navigation: the booking action and main links lead; services follow. */
body.drb-sandbox.drb-brand-experience .drb-public-header { column-gap:14px; }
body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-nav { gap:12px; }
body.drb-sandbox.drb-brand-experience .drb-public-header .drb-nav-plan[aria-current="page"] { text-decoration:underline; text-underline-offset:6px; }
@media(max-width:1380px) {
  body.drb-sandbox.drb-brand-experience .drb-public-header { justify-content:space-between; gap:12px; }
  body.drb-sandbox.drb-brand-experience .drb-public-header :is(.drb-public-nav,.drb-public-account) { display:none; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-brand { flex:1; min-width:0; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-brand img { width:min(100%,220px)!important; height:auto!important; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu { display:block; position:static; }
  body.drb-sandbox.drb-brand-experience.drb-nav-open { overflow:hidden; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu>summary {
    display:flex; align-items:center; justify-content:center; flex-direction:row; gap:8px;
    min-width:84px; min-height:44px; width:auto; padding:10px 12px; list-style:none; cursor:pointer;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu>summary::-webkit-details-marker { display:none; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu>summary>svg { width:19px; height:19px; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu[open]>summary>svg { display:none; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu[open]>summary::before { content:'×'; font:400 23px/1 Inter,Arial,sans-serif; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu>nav {
    display:block; position:absolute; top:100%; left:auto; right:16px; z-index:45;
    width:min(460px,calc(100vw - 32px)); max-width:none; height:auto; min-height:0;
    max-height:calc(100vh - var(--drb-menu-clearance,82px) - 8px);
    max-height:calc(100dvh - var(--drb-menu-clearance,82px) - 8px);
    padding:0!important; margin:0; overflow:auto; overscroll-behavior:contain;
    border:1px solid #dce6ed; border-radius:0 0 16px 16px; background:#fff; box-shadow:0 16px 32px #173c4620;
    box-sizing:border-box; scrollbar-width:thin;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-primary {
    display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); align-items:stretch; gap:10px;
    position:sticky; top:0; z-index:2; padding:12px 14px; background:#fff; border-bottom:1px solid #e5edf2;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header a.drb-menu-booking {
    display:flex; align-items:center; justify-content:space-between; gap:10px;
    width:100%; min-height:46px; padding:12px 16px; margin:0; border-radius:11px!important;
    font:700 14px/1.3 Inter,Arial,sans-serif; text-decoration:none; box-sizing:border-box;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-booking svg { width:20px; height:20px; flex:none; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-content {
    display:grid; gap:12px; padding:10px 14px calc(14px + env(safe-area-inset-bottom,0px));
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-welcome {
    display:grid; gap:8px; min-height:0; padding:0; margin:0; border:0; border-radius:0; background:transparent;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-signin {
    display:flex; align-items:center; justify-content:flex-start; gap:10px; min-height:44px; padding:10px 12px;
    border:1px solid #dce6ed; border-radius:10px; background:#f5f8fb!important; color:#214d6b!important;
    font:600 13px/1.35 Inter,Arial,sans-serif; box-sizing:border-box;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-signin strong { flex:1; font:inherit; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-signin svg { width:18px; height:18px; flex:none; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-account-links { display:grid; grid-template-columns:1fr 1fr; margin:0; gap:8px; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-account-links a { display:flex; justify-content:center; min-height:40px; padding:6px; border:1px solid #dce6ed; border-radius:8px; background:#fff; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-links--tiles {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; padding:0; margin:0;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-section-label {
    grid-column:1/-1; padding:0; margin:0 0 1px; color:#617887; font:750 10px/1.4 Inter,Arial,sans-serif; letter-spacing:1.2px;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-links--tiles>a.drb-menu-tile {
    display:flex; align-items:center; min-width:0; min-height:46px; padding:9px 8px; gap:8px;
    border:1px solid #dce6ed; border-radius:10px; text-decoration:none; box-sizing:border-box;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-links--tiles .drb-menu-symbol {
    display:grid!important; place-items:center; width:24px!important; height:24px!important; min-width:24px; flex:0 0 24px;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-links--tiles .drb-menu-symbol svg { width:17px; height:17px; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-links--tiles>a>strong { font-size:13px; line-height:1.3; min-width:0; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-links--tiles a[aria-current="page"] { border-color:#6594b2; box-shadow:inset 0 0 0 1px #6594b2; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-services { padding:0; margin:0; min-width:0; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-services__heading { display:flex; justify-content:space-between; align-items:center; gap:8px; margin:0 0 7px; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-services__heading>a { display:flex; align-items:center; gap:6px; min-height:24px; color:#245d83; font:600 11px/1.3 Inter,Arial,sans-serif; text-decoration:none; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-services__heading>a svg { width:14px; height:14px; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-service-grid .drb-mobile-service {
    display:grid; grid-template-columns:34px minmax(0,1fr); align-content:center; align-items:center; gap:0 8px;
    position:relative; min-width:0; min-height:66px; padding:8px; margin:0; border:1px solid #dce6ed; border-radius:10px;
    background:#fff; text-decoration:none; box-sizing:border-box;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-service-grid .drb-mobile-service img { grid-column:1; grid-row:1/3; width:34px; height:42px; min-width:0; border-radius:7px; object-fit:cover; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-service-grid .drb-mobile-service>span:not(.drb-coming-soon) { grid-column:2; display:block; min-width:0; padding:0; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-service-grid .drb-mobile-service strong { display:block; font:650 12px/1.25 Inter,Arial,sans-serif; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-service-grid .drb-mobile-service small,
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-service-grid .drb-mobile-service>svg { display:none; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-service-grid .drb-mobile-service>.drb-coming-soon {
    display:block; grid-column:2; position:static; inset:auto; width:max-content; max-width:100%; padding:2px 4px; margin:3px 0 0;
    font:650 8px/1.2 Inter,Arial,sans-serif; box-sizing:border-box;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu :is(a,summary):focus-visible { outline:3px solid #4f86aa; outline-offset:2px; }
}
@media(max-width:760px) {
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu>nav {
    left:0; right:0; width:100%; max-height:calc(100vh - var(--drb-menu-clearance,66px));
    max-height:calc(100dvh - var(--drb-menu-clearance,66px)); border-left:0; border-right:0; border-radius:0 0 14px 14px;
  }
}

body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-menu:not([open])>nav { display:none!important; }

/* A quiet account action beside a warm, prominent booking action. */
body.drb-sandbox.drb-brand-experience .drb-public-header {
  --drb-care-action:#ecd3a9; --drb-care-action-ink:#173c52; --drb-care-action-shadow:0 3px 10px #b5925220;
}
body.drb-sandbox.drb-brand-experience .drb-public-header :is(a.drb-menu-signin,a.drb-public-signin) {
  color:#23485e!important; background:#f8fafc!important; border:1px solid #d6e2e9!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body.drb-sandbox.drb-brand-experience .drb-public-header :is(a.drb-menu-booking,.drb-public-account>a.drb-button) {
  color:#173c52!important; background:#ecd3a9!important;
  border:1px solid #d9ba87!important; box-shadow:0 3px 10px #b5925220,inset 0 1px 0 #fff9!important;
}
body.drb-sandbox.drb-brand-experience .drb-public-header :is(a.drb-menu-booking,.drb-public-account>a.drb-button):hover {
  --drb-care-action:#e4c38e; background:#e4c38e!important;
}
body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-account { gap:8px; }
body.drb-sandbox.drb-brand-experience .drb-public-header .drb-public-account>a {
  display:inline-flex; align-items:center; justify-content:center; min-height:44px;
  padding:10px 16px!important; border-radius:11px!important; font:650 13px/1.3 Inter,Arial,sans-serif; box-sizing:border-box;
}
@media(max-width:1380px) {
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-primary :is(a.drb-menu-signin,a.drb-menu-booking) {
    display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-width:0; min-height:48px;
    margin:0; padding:10px; border-radius:11px!important; font:650 13px/1.3 Inter,Arial,sans-serif; box-sizing:border-box;
  }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-primary .drb-menu-signin strong { flex:0 1 auto; font:inherit; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-primary .drb-menu-signin svg { width:16px; height:16px; }
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-primary .drb-menu-booking>svg {
    width:24px; height:24px; padding:4px; border:1px solid #d3b579; border-radius:50%; background:#ffffff70; box-sizing:border-box;
  }
}
@media(max-width:359px) {
  body.drb-sandbox.drb-brand-experience .drb-public-header .drb-menu-primary { gap:8px; }
}
