/* SyncBeds shared product navigation component */
.logo-picture{display:block;line-height:0}
.product-nav{position:relative}
.product-nav>summary{display:flex;align-items:center;gap:5px;padding:9px 11px;border-radius:9px;color:var(--ink2);font-size:.93rem;font-weight:720;list-style:none;cursor:pointer;user-select:none}
.product-nav>summary::-webkit-details-marker{display:none}
.product-nav>summary:hover,.product-nav[open]>summary{background:var(--soft);color:var(--ink)}
.product-nav-chevron{font-size:.68rem;transition:transform .16s ease}
.product-nav[open] .product-nav-chevron{transform:rotate(180deg)}
.product-nav-menu{position:absolute;top:calc(100% + 9px);left:50%;z-index:1600;display:grid;grid-template-columns:1fr 1fr;gap:4px;width:390px;padding:9px;transform:translateX(-50%);border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 18px 48px rgba(29,44,56,.16)}
.product-nav-menu a{display:flex;align-items:center;min-height:44px;padding:10px 12px!important;border-radius:9px;font-size:.88rem!important;font-weight:760!important}
.product-nav-menu a:hover{background:var(--pale)!important;color:var(--ink)!important}
.mobile-product-nav>summary{padding:10px;border-radius:8px;color:var(--ink2);font-weight:720;list-style:none;cursor:pointer}
.mobile-product-nav>summary::-webkit-details-marker{display:none}
.mobile-product-nav>summary:after{content:'▾';float:right;font-size:.75rem}
.mobile-product-nav[open]>summary:after{transform:rotate(180deg)}
.mobile-product-links{display:grid;gap:2px;margin:3px 0 7px;padding:6px;border-left:2px solid var(--pale)}
.mobile-product-links a{padding:9px 10px!important;font-size:.93rem}
.language-option,.mobile-language-option{text-decoration:none}
.site-header .brand img.logo{display:block;height:auto;max-height:42px;object-fit:contain}
.marketing-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.header-contact-modal{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:24px}
.header-contact-modal[hidden]{display:none!important}
.header-contact-backdrop{position:absolute;inset:0;background:rgba(18,28,35,.72);backdrop-filter:blur(5px)}
.header-contact-panel{position:relative;width:min(760px,100%);max-height:calc(100dvh - 48px);overflow:auto;padding:30px;border-radius:23px;background:#fff;color:var(--ink,#1d2c38);box-shadow:0 28px 80px rgba(0,0,0,.3);overscroll-behavior:contain}
.header-contact-close{position:absolute;right:16px;top:16px;display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line,#dbe4e9);border-radius:50%;background:#fff;color:var(--ink,#1d2c38);font-size:1.45rem;line-height:1;cursor:pointer}
.header-contact-close:hover{background:var(--soft,#f4f7f9)}
.header-contact-head{padding:2px 54px 22px 0}
.header-contact-title{margin:0 0 9px;font-size:clamp(1.75rem,4vw,2.45rem);font-weight:700;line-height:1.15}
.header-contact-head p{margin:0;color:var(--ink2,#52616b)}
.header-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.header-contact-field{display:grid;gap:7px}
.header-contact-field label{color:var(--ink,#1d2c38);font-weight:750}
.header-contact-field input,.header-contact-field select,.header-contact-field textarea{width:100%;min-height:50px;padding:11px 13px;border:1px solid var(--line,#cbd7de);border-radius:10px;background:#fff;color:var(--ink,#1d2c38);font:inherit}
.header-contact-field textarea{min-height:96px;resize:vertical}
.header-contact-field input:focus,.header-contact-field select:focus,.header-contact-field textarea:focus{outline:3px solid rgba(8,127,175,.17);border-color:var(--blue,#087faf)}
.header-contact-full{grid-column:1/-1}
.header-contact-actions{display:grid;justify-items:start;gap:8px;margin-top:18px}
.header-contact-actions>p{margin:0;color:var(--ink2,#52616b);font-size:.88rem}
.header-contact-privacy a{color:var(--blue,#087faf)}
.legal-footer-links{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:1rem;font-size:.9rem}
.legal-footer-links a,.legal-form-links a{color:var(--blue,#087faf);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.legal-form-links{margin:12px 0 0;color:var(--ink2,#52616b);font-size:.84rem;line-height:1.45}
.header-contact-success{padding:14px 0 4px}
.header-contact-success-title{margin:0 0 8px;font-weight:700}
.header-contact-success p{margin:0 0 18px}
.header-contact-form .form-error{margin:4px 0 0;color:#b42318;font-weight:700}
body.header-contact-open{overflow:hidden}
.be-booking-card .visual-heading{margin:0 0 12px;font-size:.88rem;font-weight:700;letter-spacing:0}
.be-sync-panel .visual-heading{margin:1em 0;font-size:1.17em;font-weight:700}
.flow-card .visual-heading{margin:0 0 14px;font-size:1rem;font-weight:700;letter-spacing:-.02em}
.dash-top .visual-heading{margin:1px 0 0;font-size:.92rem;font-weight:700}
.msg-context .visual-heading{margin:0 0 9px;font-size:.7rem;font-weight:700;letter-spacing:0}
.pm-today-panel .visual-heading{margin:0 0 10px;font-size:.72rem;font-weight:700;letter-spacing:0}
@media(max-width:760px){.msg-context .visual-heading{grid-column:1/-1}}
@media(max-width:640px){.pm-today-panel .visual-heading{grid-column:1/-1}}
@media(max-width:420px){.pm-today-panel .visual-heading{grid-column:auto}}
@media(max-width:1020px){.product-nav{display:none}}
/* .header-inner is a 3-column grid (logo / desktop-nav / actions). On mobile the
   desktop-nav is set to display:none, which removes it from grid auto-placement
   entirely — not just visually — so .actions (language switcher, login, CTA, the
   mobile menu button) would otherwise be auto-placed into the now-vacant middle
   column and render right next to the logo instead of at the header's trailing
   edge. Pin it to the last column explicitly so its position never depends on
   which siblings happen to be hidden at a given breakpoint. */
.header-inner .actions{grid-column:3}
@media(max-width:640px){.header-contact-modal{padding:10px}.header-contact-panel{max-height:calc(100dvh - 20px);padding:22px 16px 16px;border-radius:18px}.header-contact-close{right:12px;top:12px}.header-contact-head{padding:4px 46px 17px 2px}.header-contact-grid{grid-template-columns:1fr}.header-contact-full{grid-column:auto}.header-contact-actions .btn{width:100%}}
