
/* Phone and iPad layouts; keep the restored lilac portrait. */
.ctl-title-compact{display:none}
.ctl-swipe-hint{display:none}
@media(max-width:1260px){
html body #page-container #main-header>.et_menu_container{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px;min-height:80px;height:auto!important;padding:12px 0!important;position:relative}
html body #page-container #main-header .logo_container{position:relative!important;flex:1;min-width:0;width:auto!important;height:56px!important;line-height:1!important;padding:0!important;text-align:left!important;display:flex;align-items:center}
html body #page-container #main-header .logo_helper{display:none!important}
html body #page-container #main-header .logo_container>a{display:inline-flex;align-items:center}
html body #page-container #main-header #logo{width:150px!important;max-width:100%!important;height:auto!important;max-height:52px!important}
html body #page-container #main-header .logo_container #sfsi_floater{position:absolute!important;top:50%!important;right:0!important;left:auto!important;transform:translateY(-50%)!important}
html body #page-container #main-header #et-top-navigation{position:static!important;flex:0 0 48px;float:none!important;width:48px!important;padding:0!important;clear:none!important}
html body #page-container #main-header #top-menu-nav{display:none!important}
html body #page-container #main-header #et_mobile_nav_menu{display:block!important;float:none!important;margin:0!important}
html body #page-container #main-header .mobile_nav{background:transparent!important;padding:0!important;min-height:48px!important}
html body #page-container #main-header .mobile_nav .select_page{display:none!important}
html body #page-container #main-header .mobile_menu_bar{position:static!important;display:flex!important;align-items:center;justify-content:center;width:48px!important;height:48px!important;min-height:48px!important;padding:0!important}
html body #page-container #main-header .mobile_menu_bar:before{position:static!important;font-size:32px!important;line-height:1;color:var(--ctl-blue)!important;padding:0!important}
html body #page-container #main-header .et_mobile_menu{position:absolute!important;top:100%!important;left:0!important;right:0!important;width:100%!important;margin:0!important;padding:12px!important;box-sizing:border-box;border-top:2px solid var(--ctl-pink)!important;background:#fff!important;max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px);overflow-y:auto;box-shadow:0 8px 20px #30284815}
html body #page-container #main-header .mobile_nav.closed>.et_mobile_menu{display:none!important}
html body #page-container #main-header .mobile_nav.opened>.et_mobile_menu{display:block!important}
html body #page-container #main-header .et_mobile_menu .sub-menu{display:none!important;padding:0 0 0 12px!important;margin:0!important}
html body #page-container #main-header .et_mobile_menu li.ctl-open>.sub-menu{display:block!important}
html body #page-container #main-header .et_mobile_menu li{position:relative}
html body #page-container #main-header .et_mobile_menu li>a{min-height:48px;font-size:16px!important;line-height:1.5!important;letter-spacing:0!important;padding:12px 48px 12px 12px!important;color:var(--ctl-blue)!important;background:transparent!important;border-bottom:1px solid #e7e3ef!important}
html body #page-container #main-header .et_mobile_menu .ctl-submenu-toggle{position:absolute;right:0;top:2px;width:44px;height:44px;padding:0;border:0;border-radius:6px;background:#f1edf8!important;color:var(--ctl-blue)!important;font:24px/1 Inter,Arial,sans-serif;cursor:pointer}
html body #page-container #main-header :is(.ctl-submenu-toggle,.mobile_menu_bar):focus-visible{outline:2px solid var(--ctl-blue);outline-offset:3px}
html body #page-container #ctl-global-bottom .ctl-swipe-hint:not([hidden]){display:block;text-align:center;font-size:14px;margin:0 0 16px;padding:0}
html body #page-container #ctl-global-bottom .bravo-reviews__footer{height:auto;margin-top:12px;text-align:center}
html body #page-container #ctl-global-bottom .bravo-reviews__position{position:static;width:auto;height:auto;clip:auto;white-space:normal;margin:0;font-size:13px}
html body #page-container #ctl-global-bottom .bravo-reviews__track{scrollbar-width:thin;scrollbar-color:#d9c6ff #403651;padding-bottom:10px}
html body #page-container #ctl-global-bottom .bravo-reviews__track::-webkit-scrollbar{display:block;height:4px;width:auto}
html body #page-container #ctl-global-bottom .bravo-reviews__track::-webkit-scrollbar-thumb{background:#d9c6ff;border-radius:4px}
}
@media(min-width:768px) and (max-width:1260px) and (orientation:portrait){
html body.page #page-container #main-content .ctl-welcome-hero{grid-template-columns:minmax(0,1fr);gap:32px}
html body.page #page-container #main-content .ctl-welcome-copy{max-width:720px}
html body.page #page-container #main-content .ctl-welcome h1{font-size:clamp(38px,4.5vw,48px);max-width:24ch}
html body.page #page-container #main-content .ctl-welcome-actions{flex-direction:row;align-items:center}
html body.page #page-container #main-content .ctl-welcome-photo{width:100%;max-width:400px;margin:0 auto;justify-self:center}
html body.page #page-container #main-content .ctl-welcome-photo img{height:380px;object-fit:cover;object-position:center 35%}
}
@media(min-width:768px) and (max-width:1366px) and (orientation:landscape){
html body.page #page-container #main-content .ctl-welcome-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(24px,4vw,48px);align-items:center}
html body.page #page-container #main-content .ctl-welcome h1{font-size:clamp(32px,3.5vw,46px)}
html body.page #page-container #main-content .ctl-welcome-photo{width:100%;max-width:440px;justify-self:center}
html body.page #page-container #main-content .ctl-welcome-photo img{height:clamp(320px,36vw,440px);object-fit:cover;object-position:center 35%}
}
@media(max-width:767px){
html body.page #page-container #main-content .ctl-title-wide{display:none}
html body.page #page-container #main-content .ctl-title-compact{display:inline}
html body.page #page-container #main-content .ctl-welcome-copy{display:flex;flex-direction:column}
html body.page #page-container #main-content .ctl-welcome-copy>.ctl-eyebrow{order:0;margin-bottom:12px;font-size:11px;letter-spacing:.09em}
html body.page #page-container #main-content .ctl-welcome-copy>h1{order:1;font-size:clamp(32px,8.5vw,38px);line-height:1.16;margin:0 0 20px}
html body.page #page-container #main-content .ctl-welcome-copy>.ctl-welcome-actions{order:2;margin:0 0 24px;gap:16px;align-items:stretch}
html body.page #page-container #main-content .ctl-welcome-copy>.ctl-welcome-lead{order:3;font-size:17px;margin-bottom:16px}
html body.page #page-container #main-content .ctl-welcome-copy>.ctl-welcome-note{order:4}
html body.page #page-container #main-content .ctl-welcome-photo{width:100%;max-width:320px;margin:0 auto;justify-self:center}
html body.page #page-container #main-content .ctl-welcome-photo img{height:300px;object-fit:cover;object-position:center 35%}
html body.page #page-container #main-content .ctl-welcome-photo figcaption{font-size:12px;padding:12px 16px}
html body.page #page-container #main-content .ctl-welcome-actions>.ctl-welcome-link{min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center}
}

/* Mobile navigation: anchor the panel to the header, not the 48px toggle. */
@media(max-width:1260px){
html body #page-container #main-header #et_mobile_nav_menu,
html body #page-container #main-header .mobile_nav{position:static!important}
html body #page-container #main-header #mobile_menu{width:100%!important;max-width:none!important;min-width:0!important;left:0!important;right:0!important;top:100%!important;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border-radius:0 0 12px 12px;text-align:left!important}
html body #page-container #main-header #mobile_menu li{display:block!important;float:none!important;width:100%!important;margin:0!important;box-sizing:border-box}
html body #page-container #main-header #mobile_menu li>a{width:auto!important;max-width:none!important;white-space:normal!important;overflow-wrap:break-word;text-align:left!important;box-sizing:border-box}
html body #page-container #main-header #mobile_menu .sub-menu{width:100%!important;max-width:none!important;box-sizing:border-box}
}
