/* ===== Header ===== */
.mh-page .site-header,.mh-page.transparent-header .site-header,.transparent-header #masthead{position:relative!important;top:auto;left:auto;right:auto;z-index:100;background:transparent}
.mh-page #masthead .site-header-upper-inner-wrap{position:static}
.mh-page #masthead .site-main-header-wrap{position:absolute!important;left:0;right:0;top:100%;z-index:100}
.mh-page #mobile-header .site-main-header-wrap{position:absolute!important;left:0;right:0;top:100%;z-index:100}
.mh-page #mobile-header{position:relative}
.mh-page #masthead .site-top-header-wrap .site-header-row-container-inner{background:#a3669d}
.mh-page #masthead .site-top-header-wrap .site-container{max-width:none;padding:0}
.mh-page #masthead .site-top-header-inner-wrap{min-height:66px}
.mh-page #masthead .header-html{font-family:Raleway,sans-serif;font-size:16px;line-height:1em;font-weight:600;text-transform:uppercase;text-align:center}
.mh-page #masthead .header-html a{color:#fff!important;text-decoration:none}
.mh-page #masthead .header-html a:hover{color:#fff;opacity:.9}
.mh-page #masthead .site-main-header-wrap .site-header-row-container-inner{background:#1b324b!important;border:0}
.mh-page #masthead .site-main-header-wrap .site-container{max-width:none;padding:5px 5%}
.mh-page #masthead .site-main-header-inner-wrap{min-height:132px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.mh-page #masthead .site-header-main-section-left,.mh-page #masthead .site-header-main-section-right{flex:1}
.mh-page #masthead .site-header-main-section-left{justify-content:flex-start;padding-left:3%}
.mh-page #masthead .site-header-main-section-right{justify-content:flex-end;padding-right:1%}
.mh-page #masthead .site-header-main-section-center{padding:0 4%}
.mh-page #masthead .site-branding img.custom-logo{max-width:322px;width:322px;height:auto}
.mh-page #masthead .site-branding a.brand{padding:0}
.mh-page #masthead .main-navigation .primary-menu-container > ul,.mh-page #masthead .secondary-navigation .secondary-menu-container > ul{display:flex;justify-content:space-evenly;gap:0;width:100%}
.mh-page #masthead .site-header-item-main-navigation,.mh-page #masthead .site-header-main-section-right .site-header-item{width:100%}
.mh-page #masthead .main-navigation,.mh-page #masthead .secondary-navigation{width:100%}
.mh-page #masthead .main-navigation .menu > li > a,.mh-page #masthead .secondary-navigation .menu > li > a{display:flex;flex-direction:column;align-items:center;text-align:center;padding:10px 12px;font-family:Raleway,sans-serif;font-size:14px;font-weight:700;line-height:1.3;color:hsl(215,21%,43%);text-transform:none;letter-spacing:0}
.mh-page #masthead .menu > li > a .nav-drop-title-wrap{display:flex;flex-direction:column;align-items:center;position:relative}
.mh-page #masthead .menu > li > a .dropdown-nav-toggle{position:absolute;right:-18px;top:50%;margin:0}
.mh-page .mh-menu-icon{display:block;font-size:20px;line-height:1;height:20px;margin-bottom:8px;color:var(--mhc-color5)}
.mh-page .mh-menu-icon .mh-fa{width:auto;height:20px}
.mh-page .mh-menu-label{display:block;font-size:14px;font-weight:700}
.mh-page .mh-menu-sub{display:block;font-size:10.5px;font-weight:600;line-height:1.2;margin-top:4px;color:hsl(215,21%,43%)}
.mh-page #masthead .menu > li.current-menu-item > a,.mh-page #masthead .menu > li > a:hover{color:var(--mhc-color4)}
.mh-page #masthead .menu > li.current-menu-item > a .mh-menu-sub,.mh-page #masthead .menu > li > a:hover .mh-menu-sub{color:var(--mhc-color4)}
.mh-page #masthead .menu > li > a:hover .mh-menu-icon{color:var(--mhc-color4)}
.mh-page #masthead .sub-menu{background:var(--mhc-color2);box-shadow:0 2px 6px rgba(0,0,0,.08)}
.mh-page #masthead .sub-menu a{color:var(--mhc-color7);font-family:Raleway,sans-serif;font-size:14px;font-weight:400;padding:10px 20px}
.mh-page #masthead .sub-menu a:hover{color:var(--mhc-color4);background:var(--mhc-color2)}
/* Mobile header */
.mh-page #mobile-header .site-top-header-wrap .site-header-row-container-inner{background:#a3669d}
.mh-page #mobile-header .mobile-html{font-family:Raleway,sans-serif;font-size:14px;line-height:1.1;font-weight:600;text-transform:uppercase;text-align:center;padding:10px 0}
.mh-page #mobile-header .mobile-html a{color:#fff;text-decoration:none}
.mh-page #mobile-header .site-main-header-wrap .site-header-row-container-inner{background:#1b324b!important}
.mh-page #mobile-header .custom-logo{max-width:200px}
.mh-page .menu-toggle-open{color:var(--mhc-color6)}
.mh-page #mobile-drawer .drawer-inner{background:#fff}
.mh-page #mobile-drawer .mobile-navigation ul li a{color:var(--mhc-color6);font-family:Raleway,sans-serif;font-weight:600}
.mh-page #mobile-drawer .drawer-header .drawer-toggle{color:var(--mhc-color6)}

/* ===== Page shell: sections run edge to edge ===== */
.mh-page .content-area{margin:0}
.mh-page .site-main .entry,.mh-page .entry-content-wrap{padding:0;box-shadow:none;border-radius:0;background:transparent}
.mh-page .entry-content{margin:0}
.mh-page .content-container.site-container{max-width:none;padding:0}
.mh-page .entry-content > .mh-ctr{margin-top:0;margin-bottom:0}
.mh-page .entry-content.single-content > *{margin-top:0;margin-bottom:0}
.mh-page .wp-site-blocks,.mh-page #inner-wrap{overflow-x:clip}

/* ===== Footer (built from blocks in the Footer 1 widget area) ===== */
.mh-page .site-footer .site-middle-footer-wrap .site-footer-row-container-inner{padding:0;background:#fff;border-top:0}
.mh-page .site-footer .site-container{max-width:none;padding:0}
.mh-page .site-footer .site-middle-footer-inner-wrap{padding:0;grid-template-columns:1fr}
.mh-page .site-footer .footer-widget-area,.mh-page .site-footer .widget{margin:0;padding:0}
.mh-page .site-footer .widget_block > .mh-ctr:first-child,.mh-page .site-footer .footer-widget-area-inner > section:first-child .mh-ctr:first-child{border-top:10px solid var(--mhc-color6)}
.mh-page .site-footer{font-family:Raleway,sans-serif;color:var(--mhc-color6)}
.mh-page .site-footer a{color:var(--mhc-color6);text-decoration:none}
.mh-page .site-footer a:hover{color:var(--mhc-color5)}
/* Round 5: line-style nav icons (stroke, not fill) */
.mh-page .mh-menu-icon .mh-line-icon{width:22px;height:22px;display:inline-block;vertical-align:top;fill:none!important;stroke:currentColor;transition:color .2s,transform .2s}
.mh-page .mh-menu-icon{height:22px;margin-bottom:6px}
.mh-page #masthead .menu > li > a:hover .mh-line-icon,.mh-page #masthead .menu > li.current-menu-item > a .mh-line-icon{transform:translateY(-1px)}
/* Round 6: desktop header = all six nav items on the left, logo on the right */
.mh-page #masthead #main-header .site-main-header-inner-wrap.site-header-row-no-center{grid-template-columns:1fr auto}
.mh-page #masthead #main-header .site-header-row-no-center .site-header-main-section-left{justify-content:flex-start;flex-wrap:nowrap;gap:0;padding-left:0}
.mh-page #masthead #main-header .site-header-row-no-center .site-header-main-section-left .site-header-item{width:auto;margin:0}
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation,.mh-page #masthead #main-header .site-header-row-no-center .secondary-navigation{width:auto}
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation .primary-menu-container > ul,.mh-page #masthead #main-header .site-header-row-no-center .secondary-navigation .secondary-menu-container > ul{justify-content:flex-start;width:auto;gap:clamp(4px,1.2vw,22px)}
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation{margin-right:clamp(4px,1.2vw,22px)}
.mh-page #masthead #main-header .site-header-row-no-center .site-header-main-section-right{justify-content:flex-end;padding-left:3%;padding-right:0}
.mh-page #masthead #main-header .site-header-row-no-center .site-header-main-section-right .site-header-item{width:auto;margin:0}
.mh-page #masthead #main-header .site-header-row-no-center .menu{flex-wrap:nowrap}
@media (max-width:1199px){.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a{padding-left:6px;padding-right:6px}.mh-page #masthead #main-header .site-header-row-no-center .main-navigation .primary-menu-container > ul,.mh-page #masthead #main-header .site-header-row-no-center .secondary-navigation .secondary-menu-container > ul{gap:2px}.mh-page #masthead #main-header .site-header-row-no-center .main-navigation{margin-right:2px}.mh-page #masthead #main-header .site-header-row-no-center .site-header-main-section-right{padding-left:8px}.mh-page #masthead #main-header .site-header-row-no-center .menu > li.menu-item-has-children > a{padding-right:18px}.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a .dropdown-nav-toggle{right:-14px}}
.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a,.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a span{white-space:nowrap}
.mh-page #masthead #main-header .site-header-row-no-center .menu > li{flex-shrink:0}
@media (max-width:1100px){.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a{padding-left:4px;padding-right:4px}.mh-page #masthead #main-header .site-header-row-no-center .menu > li.menu-item-has-children > a{padding-right:14px}.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a .dropdown-nav-toggle{right:-12px}}

/* Round 11: Popular Links column removed - remaining two footer columns share the row 50/50 */
html body .mh-ft-2 > .mh-ft-3.mh-ft-3.mh-ft-3,html body .mh-ft-2 > .mh-ft-12.mh-ft-12.mh-ft-12{--mhc-width-large:50%;}

/* Round 13: gift bar on one line. The <br> in the header HTML was replaced by an empty span.mh-gift-sep, drawn here as a small dot */
.mh-page #masthead .header-html a,.mh-page #mobile-header .mobile-html a{white-space:nowrap}
.mh-page .mh-gift-sep{display:inline-block;width:.32em;height:.32em;margin:0 .75em;border-radius:50%;background:currentColor;vertical-align:middle;position:relative;top:-.06em}
.mh-page #mobile-header .mobile-html{font-size:clamp(10px,2.75vw,14px);padding-left:8px;padding-right:8px}
.mh-page #mobile-header .mobile-html .mh-gift-sep{margin:0 .55em}
@media (max-width:389px){.mh-page #mobile-header .mobile-html a{white-space:normal}.mh-page #mobile-header .mobile-html .mh-gift-sep{display:block;width:0;height:0;margin:0}.mh-page #mobile-header .mobile-html{font-size:13px}}
/* Round 13: larger, bolder desktop nav icons and labels */
.mh-page #masthead .mh-menu-icon{height:28px;margin-bottom:6px}
.mh-page #masthead .mh-menu-icon .mh-line-icon{width:28px;height:28px;stroke-width:2.4px}
.mh-page #masthead .mh-menu-label{font-size:15.5px;font-weight:700}
.mh-page #masthead .mh-menu-sub{font-size:11.5px;font-weight:700}
/* Round 15: desktop header row scales proportionally below 1440px (down to 1025px) so it keeps the 1440 look - every size is its 1440 value x (header width / 1440) */
@media (min-width:1025px) and (max-width:1439px){
.mh-page #masthead #main-header .site-header-row-container-inner{container-type:inline-size;--mh-hs:calc(100cqw / 1440)}
.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a,.mh-page #masthead #main-header .site-header-row-no-center .menu > li.menu-item-has-children > a{padding:calc(10 * var(--mh-hs)) calc(12 * var(--mh-hs))}
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation .primary-menu-container > ul,.mh-page #masthead #main-header .site-header-row-no-center .secondary-navigation .secondary-menu-container > ul{gap:calc(17.28 * var(--mh-hs))}
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation{margin-right:calc(17.28 * var(--mh-hs))}
.mh-page #masthead #main-header .site-header-row-no-center .site-header-main-section-right{padding-left:3%}
.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a .dropdown-nav-toggle{right:calc(-18 * var(--mh-hs));font-size:calc(12.6 * var(--mh-hs))}
.mh-page #masthead #main-header .mh-menu-icon{height:calc(28 * var(--mh-hs));margin-bottom:calc(6 * var(--mh-hs))}
.mh-page #masthead #main-header .mh-menu-icon .mh-line-icon{width:calc(28 * var(--mh-hs));height:calc(28 * var(--mh-hs))}
.mh-page #masthead #main-header .mh-menu-label{font-size:calc(15.5 * var(--mh-hs))}
.mh-page #masthead #main-header .mh-menu-sub{font-size:calc(11.5 * var(--mh-hs));margin-top:calc(4 * var(--mh-hs))}
.mh-page #masthead #main-header .site-branding img.custom-logo{width:calc(322 * var(--mh-hs));max-width:calc(322 * var(--mh-hs))}
}
/* Round 16: desktop header row content sits closer to the screen edges (was 5% each side) */
@media (min-width:1025px){.mh-page #masthead .site-main-header-wrap .site-container{padding-left:clamp(24px,2.5vw,40px);padding-right:clamp(24px,2.5vw,40px)}}
/* Round 28: Apply Now (therapist recruiting) nav item - same icon/label/sub layout as Book Now, highlighted as the recruiting call to action without changing its size */
.mh-page #masthead .menu > li.mh-nav-apply > a{background:rgba(181,121,174,.13);border-radius:14px;box-shadow:inset 0 0 0 1.5px rgba(181,121,174,.55)}
.mh-page #masthead .menu > li.mh-nav-apply > a .mh-menu-icon,.mh-page #masthead .menu > li.mh-nav-apply > a .mh-menu-label{color:var(--mhc-color4)}
.mh-page #masthead .menu > li.mh-nav-apply > a:hover{background:rgba(181,121,174,.22)}
.mh-page #mobile-drawer .menu > li.mh-nav-apply > a{color:var(--mhc-color4);font-weight:700}

/* Gift icons on both sides of the Give the Gift of Wellness bar */
.mh-page #masthead .header-html a,
.mh-page #mobile-header .mobile-html a{display:inline-flex;align-items:center;justify-content:center;gap:.7em;white-space:nowrap}
.mh-page #masthead .header-html a::before,
.mh-page #masthead .header-html a::after,
.mh-page #mobile-header .mobile-html a::before,
.mh-page #mobile-header .mobile-html a::after{
content:"";
display:block;
width:1.35em;
height:1.35em;
flex:0 0 1.35em;
background:currentColor;
-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22black%22%20d%3D%22M20%206h-2.18c.11-.31.18-.65.18-1%200-1.66-1.34-3-3-3-1.07%200-2%20.52-2.55%201.36C11.9%202.52%2010.97%202%209.9%202%208.24%202%206.9%203.34%206.9%205c0%20.35.07.69.18%201H5c-1.1%200-2%20.9-2%202v2c0%20.55.45%201%201%201h1v9c0%201.1.9%202%202%202h10c1.1%200%202-.9%202-2v-9h1c.55%200%201-.45%201-1V8c0-1.1-.9-2-2-2zM15%204c.55%200%201%20.45%201%201s-.45%201-1%201-1-.45-1-1%20.45-1%201-1zM9.9%204c.55%200%201%20.45%201%201s-.45%201-1%201-1-.45-1-1%20.45-1%201-1zM19%208v2H5V8h14zm-2%2013H7v-9h10v9z%22%2F%3E%3Crect%20fill%3D%22black%22%20x%3D%2211%22%20y%3D%228%22%20width%3D%222%22%20height%3D%2213%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22black%22%20d%3D%22M20%206h-2.18c.11-.31.18-.65.18-1%200-1.66-1.34-3-3-3-1.07%200-2%20.52-2.55%201.36C11.9%202.52%2010.97%202%209.9%202%208.24%202%206.9%203.34%206.9%205c0%20.35.07.69.18%201H5c-1.1%200-2%20.9-2%202v2c0%20.55.45%201%201%201h1v9c0%201.1.9%202%202%202h10c1.1%200%202-.9%202-2v-9h1c.55%200%201-.45%201-1V8c0-1.1-.9-2-2-2zM15%204c.55%200%201%20.45%201%201s-.45%201-1%201-1-.45-1-1%20.45-1%201-1zM9.9%204c.55%200%201%20.45%201%201s-.45%201-1%201-1-.45-1-1%20.45-1%201-1zM19%208v2H5V8h14zm-2%2013H7v-9h10v9z%22%2F%3E%3Crect%20fill%3D%22black%22%20x%3D%2211%22%20y%3D%228%22%20width%3D%222%22%20height%3D%2213%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
animation:mh-gift-icon 2.8s ease-in-out infinite;
}
.mh-page #mobile-header .mobile-html a{gap:.45em}
.mh-page #mobile-header .mobile-html a::before,
.mh-page #mobile-header .mobile-html a::after{width:1.15em;height:1.15em;flex-basis:1.15em}
@media (max-width:389px){
.mh-page #mobile-header .mobile-html a{white-space:normal;flex-wrap:wrap}
}
@keyframes mh-gift-icon{
0%,100%{transform:scale(1)}
50%{transform:scale(1.14)}
}

.mh-page #masthead .site-main-header-wrap,
.mh-page #mobile-header .site-main-header-wrap{top:0!important}

/* Pages without the home banner: keep the nav in document flow so content starts below it */
.mh-page:not(.home) #masthead .site-main-header-wrap,
.mh-page:not(.home) #mobile-header .site-main-header-wrap{
position:relative!important;
top:auto!important;
}
/* Book Now no longer needs the 200px spacer now that the header takes up space */
html body.mh-page .mh-boo2-1.mh-boo2-1.mh-boo2-1{--mhc-margin-top:0}

/* Gift Certificates: keep the original line icon, static richer violet, no flash and no Apply Now chrome */
.mh-page #masthead #menu-item-5108 > a .mh-menu-icon{
color:#a3669d;
animation:none;
}
.mh-page #masthead #menu-item-5108 > a:hover .mh-menu-icon,
.mh-page #masthead #menu-item-5108 > a:focus-visible .mh-menu-icon{
color:#92538b;
}
.mh-page #mobile-drawer #menu-item-5109 > a{
animation:none;
}
.mh-page #mobile-drawer #menu-item-5109 > a::before{
content:"";
display:inline-block;
width:1.1em;
height:1.1em;
margin-right:.45em;
vertical-align:-.15em;
background:#a3669d;
-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%209a1%201%200%200%201%201-1h16a1%201%200%200%201%201%201v2a1%201%200%200%201-1%201H4a1%201%200%200%201-1-1V9z%22%2F%3E%3Cpath%20d%3D%22M12%208v13%22%2F%3E%3Cpath%20d%3D%22M19%2012v7a2%202%200%200%201-2%202H7a2%202%200%200%201-2-2v-7%22%2F%3E%3Cpath%20d%3D%22M7.5%208a2.5%202.5%200%200%201%200-5A4.8%208%200%200%201%2012%208a4.8%208%200%200%201%204.5-5%202.5%202.5%200%200%201%200%205%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%209a1%201%200%200%201%201-1h16a1%201%200%200%201%201%201v2a1%201%200%200%201-1%201H4a1%201%200%200%201-1-1V9z%22%2F%3E%3Cpath%20d%3D%22M12%208v13%22%2F%3E%3Cpath%20d%3D%22M19%2012v7a2%202%200%200%201-2%202H7a2%202%200%200%201-2-2v-7%22%2F%3E%3Cpath%20d%3D%22M7.5%208a2.5%202.5%200%200%201%200-5A4.8%208%200%200%201%2012%208a4.8%208%200%200%201%204.5-5%202.5%202.5%200%200%201%200%205%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
}

/* A bit more space between the top nav icons */
@media (min-width:1025px){
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation .primary-menu-container > ul,
.mh-page #masthead #main-header .site-header-row-no-center .secondary-navigation .secondary-menu-container > ul{
gap:clamp(8px,2vw,36px);
}
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation{
margin-right:clamp(8px,2vw,36px);
}
}
@media (min-width:1025px) and (max-width:1439px){
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation .primary-menu-container > ul,
.mh-page #masthead #main-header .site-header-row-no-center .secondary-navigation .secondary-menu-container > ul{
gap:calc(28.8 * var(--mh-hs));
}
.mh-page #masthead #main-header .site-header-row-no-center .main-navigation{
margin-right:calc(28.8 * var(--mh-hs));
}
}

/* Navy nav: header logo is the pre-color-edit version (original purple Massage, white Healing Center and lotus lines) */
.mh-page #masthead img.custom-logo,
.mh-page #mobile-header img.custom-logo{
content:url("logo-header-white-teal.png");
}
.mh-page #masthead .main-navigation .menu > li > a,
.mh-page #masthead .secondary-navigation .menu > li > a,
.mh-page #masthead .menu > li > a .mh-menu-sub,
.mh-page #masthead .menu > li > a .mh-menu-icon,
.mh-page #mobile-header .menu-toggle-open{
color:#fff;
}
.mh-page #masthead .menu > li.current-menu-item > a,
.mh-page #masthead .menu > li.current-menu-ancestor > a,
.mh-page #masthead .menu > li.current-menu-parent > a,
.mh-page #masthead .menu > li > a:hover,
.mh-page #masthead .menu > li.current-menu-item > a .mh-menu-sub,
.mh-page #masthead .menu > li.current-menu-ancestor > a .mh-menu-sub,
.mh-page #masthead .menu > li.current-menu-parent > a .mh-menu-sub,
.mh-page #masthead .menu > li > a:hover .mh-menu-sub,
.mh-page #masthead .menu > li.current-menu-item > a .mh-menu-icon,
.mh-page #masthead .menu > li.current-menu-ancestor > a .mh-menu-icon,
.mh-page #masthead .menu > li.current-menu-parent > a .mh-menu-icon,
.mh-page #masthead .menu > li > a:hover .mh-menu-icon,
.mh-page #masthead .menu > li.mh-nav-apply > a .mh-menu-icon,
.mh-page #masthead .menu > li.mh-nav-apply > a .mh-menu-label{
color:#c8b2df;
}
.mh-page #masthead #menu-item-5108 > a .mh-menu-icon{
color:#c8b2df;
}
.mh-page #masthead #menu-item-5108 > a:hover .mh-menu-icon,
.mh-page #masthead #menu-item-5108 > a:focus-visible .mh-menu-icon{
color:#fff;
}

/* Center the header logo in the open space to the right of the nav items */
.mh-page #masthead #main-header .site-main-header-inner-wrap.site-header-row-no-center{grid-template-columns:auto 1fr}
.mh-page #masthead #main-header .site-header-row-no-center .site-header-main-section-right{justify-content:center;padding-left:0;padding-right:0}

/* Cursive text matches Services headings (Libre Caslon Text), except the home page banner */
.mh-page h1,
.mh-page h4,
.mh-page .mh-h1,
.mh-page .mh-h4,
.mh-page .entry-content h1,
.mh-page .entry-content h4,
.mh-page .site-footer h1,
.mh-page .site-footer h4,
.mh-page .mh-apply-done h3{
  font-family:"Libre Caslon Text",Georgia,serif!important;
  font-weight:400;
  font-style:normal;
  letter-spacing:-1px;
}
.mh-page .mh-con3-21,
.mh-page .mh-hea4-64,
.mh-page .mh-ess7-19,
.mh-page .mh-abo10-111,
.mh-page .mh-hom11-128{
  --mhc-text-font-family:"Libre Caslon Text",Georgia,serif;
}

/* Products titles: same size as Services page headings (the existing h3 36px).
   The selector must be body.mh-page (class on the body), not body .mh-page
   (a descendant), or the rule never matches. font-size is set directly so it
   beats the global h1 60px !important size. Desktop/tablet only. */
@media (min-width:768px){
html body.mh-page .mh-ess7-13.mh-ess7-13.mh-ess7-13,
html body.mh-page .mh-ess7-13.mh-ess7-13.mh-ess7-13 p,
html body.mh-page .mh-ess7-13.mh-ess7-13.mh-ess7-13 mark{
  --mhc-font-size:36px;
  font-size:36px!important;
  line-height:1.4!important;
  letter-spacing:-1px!important;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
}

/* Home page banner stays cursive */
.mh-page .mh-hom11-5,
.mh-page .mh-hom11-5 h1,
.mh-page .mh-hom11-5 h1 span,
.mh-page .mh-hom11-18,
.mh-page .mh-hom11-18 h1,
.mh-page .mh-hom11-18 h1 span{
  font-family:"Great Vibes",cursive!important;
  letter-spacing:2px;
}

/* About, Services, Products, Pricing, and Book Now: match Gift Certificates space under the nav.
   Only the first content row's top padding (42px, the Gift Certificates heading gap)
   and first-row top margins. Fonts and later sections are unchanged. */
.mh-page.page-id-76 .entry-content > .mh-abo10-6,
.mh-page.page-id-77 .entry-content > .mh-mas6-16,
.mh-page.page-id-78 .entry-content > .mh-ctr.mh-boxed:nth-child(2),
.mh-page.page-id-5139 .entry-content > .mh-mas6-104,
.mh-page.page-id-79 .entry-content > .mh-book-intro.mh-mas6-6{
  --mhc-padding-top:42px!important;
  --mhc-padding-top-medium:42px!important;
  --mhc-padding-top-small:42px!important;
  padding-top:42px!important;
}
@media (min-width:1051px){
.mh-page.page-id-77 .entry-content > .mh-mas6-27,
.mh-page.page-id-78 .entry-content > .mh-ess7-6{
  --mhc-padding-top:42px!important;
  --mhc-padding-top-medium:42px!important;
  --mhc-padding-top-small:42px!important;
  padding-top:42px!important;
}
.mh-page.page-id-76 .entry-content > .mh-abo10-6 .mh-col,
.mh-page.page-id-77 .entry-content > .mh-mas6-16 .mh-col,
.mh-page.page-id-77 .entry-content > .mh-mas6-27 .mh-col,
.mh-page.page-id-78 .entry-content > .mh-ess7-6 .mh-col,
.mh-page.page-id-5139 .entry-content > .mh-mas6-104 .mh-col,
.mh-page.page-id-79 .entry-content > .mh-book-intro.mh-mas6-6 .mh-col{
  margin-top:0!important;
}
.mh-page.page-id-77 .entry-content > .mh-mas6-16 h3,
.mh-page.page-id-77 .entry-content > .mh-mas6-27 h3{
  margin-top:0!important;
}
}
@media (max-width:1050px){
.mh-page.page-id-76 .entry-content > .mh-abo10-6 .wp-block-columns.mh-row > .mh-col:first-child,
.mh-page.page-id-77 .entry-content > .mh-mas6-16 .wp-block-columns.mh-row > .mh-col:first-child,
.mh-page.page-id-78 .entry-content > .mh-ctr.mh-boxed:nth-child(2) .wp-block-columns.mh-row > .mh-col:first-child,
.mh-page.page-id-5139 .entry-content > .mh-mas6-104 .wp-block-columns.mh-row > .mh-col:first-child,
.mh-page.page-id-79 .entry-content > .mh-book-intro.mh-mas6-6 .wp-block-columns.mh-row > .mh-col:first-child{
  margin-top:0!important;
}
.mh-page.page-id-77 .entry-content > .mh-mas6-16 h3{
  margin-top:0!important;
}
}
.mh-page.page-id-5139 .entry-content > .mh-mas6-104 .mh-tab:first-of-type .mh-tab-pane{
  margin-top:0!important;
  padding-top:0!important;
}

/* Desktop only: Visit Us (address, phone) on the left; logo and other copy on the right */
@media (min-width:1051px){
html body.mh-page .site-footer .mh-ft-2 > .mh-ft-3{order:2}
html body.mh-page .site-footer .mh-ft-2 > .mh-ft-12{order:1}
html body.mh-page .site-footer .mh-ft-2 > .mh-ft-3 .mh-wrap.mh-ft-4{
align-items:center;
text-align:center;
}
html body.mh-page .site-footer .mh-ft-2 > .mh-ft-3 .mh-img.mh-ft-5,
html body.mh-page .site-footer .mh-ft-2 > .mh-ft-3 .mh-img.mh-ft-5 img{
margin-left:auto;
margin-right:auto;
}
html body.mh-page .site-footer .mh-ft-2 > .mh-ft-3 .mh-ft-11{
text-align:center;
}
}

/* Desktop only: bottom-banner quote sits at the bottom of the photo, centered */
@media (min-width:641px){
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17){
aspect-ratio:auto;
height:calc(100vw * 982 / 2400 - (100vw - 60px) * 0.0800);
min-height:min-content;
--mhc-padding-bottom:20px;
flex-direction:column;
justify-content:flex-end;
align-items:stretch;
}
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .wp-block-columns.mh-row{
width:100%;
max-width:100%;
margin-left:0;
margin-right:0;
margin-top:auto;
flex:0 0 auto!important;
align-self:stretch;
}
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .mh-col{
--mhc-width-large:100%;
--mhc-width-medium:100%;
--mh-w:100%;
--mhc-margin-bottom-large:0;
--mhc-margin-bottom-medium:0;
flex:0 0 100%!important;
width:100%!important;
max-width:100%!important;
}
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .mh-wrap,
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .mh-text,
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) h4,
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) h4 span{
align-items:center;
text-align:center;
}
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .mh-text:is(.mh-hom11-133,.mh-abo10-116,.mh-hea4-69,.mh-ess7-24,.mh-con3-26) p:first-of-type{
margin-bottom:0;
}
}

/* =====================================================================
   Site spacing system: tablet and desktop (641px and up).
   Phones (640px and below) are not affected by anything in this block.
   ===================================================================== */
@media (min-width:641px){
:root{
  --mhd-max:1120px;            /* content width */
  --mhd-gutter:64px;           /* space between columns */
  --mhd-section:84px;          /* vertical section rhythm */
  --mhd-card-pad:44px;         /* side padding inside writeup cards */
  --mhd-nav-gap:56px;          /* space between the nav and the first content row */
  --mhd-inset:20px;            /* side inset of rounded content bands */
}

/* Paragraph spacing */
html body.mh-page .entry-content .mh-text p{margin-bottom:1.15em}
html body.mh-page .entry-content .mh-text.mh-text-nomargin p{margin:0!important}

/* Grid: fixed gutters and a narrower content width */
html body.mh-page .entry-content > .mh-ctr > .wp-block-columns.mh-row,
html body.mh-page .entry-content > .mh-ctr > .wp-block-group__inner-container > .wp-block-columns.mh-row{
  max-width:calc(var(--mhd-max) + var(--mhd-gutter))!important;
  width:calc(100% + var(--mhd-gutter))!important;
  margin-left:calc(var(--mhd-gutter) / -2)!important;
  margin-right:calc(var(--mhd-gutter) / -2)!important;
}
:where(html body.mh-page .entry-content > .mh-ctr > .wp-block-columns.mh-row) > .wp-block-column.mh-col,
:where(html body.mh-page .entry-content > .mh-ctr > .wp-block-group__inner-container > .wp-block-columns.mh-row) > .wp-block-column.mh-col{--mh-sl:calc(var(--mhd-gutter) / 2);--mh-sr:calc(var(--mhd-gutter) / 2)}

/* Sections: side inset (top/bottom banners stay full width) */
html body.mh-page .entry-content > .mh-ctr{margin-left:var(--mhd-inset)!important;margin-right:var(--mhd-inset)!important}
html body.mh-page .entry-content > .mh-ctr.mh-full:first-child,
html body.mh-page .entry-content > .mh-ctr.mh-full:last-child{margin-left:0!important;margin-right:0!important}

/* Services and Products writeup cards: padding, wider text column, tighter inner gutter */
html body.mh-page:is(.page-id-77,.page-id-78) .entry-content > .mh-ctr:not(.mh-full){padding-left:var(--mhd-card-pad)!important;padding-right:var(--mhd-card-pad)!important}
html body.mh-page.page-id-77 .entry-content > .mh-ctr:not(.mh-full){padding-top:60px!important;padding-bottom:60px!important}
html body.mh-page:is(.page-id-77,.page-id-78) .entry-content > .mh-ctr:not(.mh-full) > .wp-block-columns.mh-row{--mhd-gutter:36px}
@media (min-width:1051px){
html body.mh-page:is(.page-id-77,.page-id-78) .entry-content > .mh-ctr:not(.mh-full) > .wp-block-columns.mh-row > .mh-col:has(figure){--mh-w:42%}
html body.mh-page:is(.page-id-77,.page-id-78) .entry-content > .mh-ctr:not(.mh-full) > .wp-block-columns.mh-row > .mh-col:not(:has(figure)){--mh-w:58%}
}

/* Space between the nav and the first content row */
html body.mh-page.page-id-76 .entry-content > .mh-abo10-6,
html body.mh-page.page-id-77 .entry-content > .mh-mas6-16,
html body.mh-page.page-id-78 .entry-content > .mh-ctr.mh-boxed:nth-child(2),
html body.mh-page.page-id-5139 .entry-content > .mh-mas6-104,
html body.mh-page.page-id-79 .entry-content > .mh-book-intro.mh-mas6-6{padding-top:var(--mhd-nav-gap)!important}
html body.mh-page.page-id-5130 .entry-content > .mh-pri9-6,
html body.mh-page.page-id-83 .entry-content > .mh-sit0-6{padding-top:var(--mhd-nav-gap)!important;padding-bottom:var(--mhd-section)!important}

/* Home: cancellation note sits right under the Schedule a Massage button */
html body.mh-page .entry-content .mh-hom11-50{--mhc-margin-left:0px;margin-left:0!important;margin-top:10px!important;padding-left:4px}

/* Footer: vertical spacing (two columns, widths and logo size unchanged) */
html body.mh-page #colophon .mh-ft-1{padding-top:12px!important;padding-bottom:44px!important}
html body.mh-page #colophon .mh-checklist li{padding:6px 0}
}

/* Bottom health banner: the desktop spacing system (min-width:641px) caps
   every .mh-ctr row at 1120px + gutter and left-aligns it (negative margins,
   not auto). That left the quote, button, and policy sitting in a left well
   on wide screens. Keep this banner's inner row full width and center the
   text and button at all viewport widths. Font size, padding, and colors unchanged. */
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) > .wp-block-group__inner-container > .wp-block-columns.mh-row,
html body.mh-page .entry-content > .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) > .wp-block-columns.mh-row,
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .wp-block-columns.mh-row{
width:100%!important;
max-width:100%!important;
margin-left:0!important;
margin-right:0!important;
}
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .wp-block-column.mh-col,
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .wp-block-column.mh-col[style*="flex-basis"]{
--mhc-width-large:100%!important;
--mhc-width-medium:100%!important;
--mhc-width-small:100%!important;
--mh-w:100%!important;
flex:0 0 100%!important;
flex-basis:100%!important;
width:100%!important;
max-width:100%!important;
}
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .mh-wrap,
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .mh-text,
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) :is(h1,h2,h3,h4,h5,h6,p,.wp-block-heading),
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) h4 span{
text-align:center!important;
}
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .wp-block-buttons,
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .wp-block-buttons.mh-btns,
html body.mh-page .entry-content .mh-ctr.mh-full:is(.mh-hom11-124,.mh-abo10-107,.mh-hea4-60,.mh-ess7-15,.mh-con3-17) .wp-block-buttons-is-layout-flex{
display:flex!important;
justify-content:center!important;
align-items:center!important;
width:100%!important;
text-align:center!important;
}

/* Desktop/tablet: keep the nav bar fixed at the top while scrolling.
   position:sticky is unsafe because .wp-site-blocks and #inner-wrap use
   overflow-x:clip (which makes sticky fail). Kadence sticky is also unsafe:
   this file sets .site-main-header-wrap to position:absolute!important, which
   would beat Kadence's position:fixed. Mobile (max-width:640px) is unchanged. */
@media (min-width:641px){
.mh-page #masthead #main-header .site-main-header-wrap,
.mh-page #mobile-header .site-main-header-wrap,
.mh-page:not(.home) #masthead #main-header .site-main-header-wrap,
.mh-page:not(.home) #mobile-header .site-main-header-wrap,
.mh-page .kadence-sticky-header,
.mh-page .kadence-sticky-header.item-is-fixed{
position:fixed!important;
top:0;
left:0;
right:0;
z-index:1200;
}
.mh-page #masthead #main-header .site-main-header-wrap .site-header-row-container-inner,
.mh-page #mobile-header .site-main-header-wrap .site-header-row-container-inner,
.mh-page .kadence-sticky-header .site-header-row-container-inner{
background:#1b324b!important;
}
body.admin-bar.mh-page #masthead #main-header .site-main-header-wrap,
body.admin-bar.mh-page #mobile-header .site-main-header-wrap{
top:32px;
}
}
@media (min-width:641px) and (max-width:782px){
body.admin-bar.mh-page #masthead #main-header .site-main-header-wrap,
body.admin-bar.mh-page #mobile-header .site-main-header-wrap{
top:46px;
}
}

/* Desktop/tablet: fixed nav is out of flow, so reserve the same 85px the
   visible navy bar occupies on non-home pages. This matches the bar height
   so the first section's visible top area is not padded by a leftover 142px
   spacer + 57px blend strip. Mobile unchanged. */
@media (min-width:641px){
.mh-page:not(.home) #masthead #main-header,
.mh-page:not(.home) #mobile-header{
min-height:85px;
}
}

/* Desktop/tablet only: make the visible navy bar clearly shorter (142px -> 85px).
   Also lock any Kadence sticky-header clone to the same 85px.
   Mobile (max-width:640px) is unchanged. */
@media (min-width:641px){
.mh-page #masthead #main-header .site-header-row-container-inner,
.mh-page #mobile-header .site-header-row-container-inner,
.mh-page .kadence-sticky-header .site-header-row-container-inner,
.mh-page .kadence-sticky-header.item-is-fixed .site-header-row-container-inner{
box-sizing:border-box!important;
height:85px!important;
min-height:85px!important;
max-height:85px!important;
overflow:hidden;
}
.mh-page #masthead #main-header .site-main-header-inner-wrap,
.mh-page #mobile-header .site-main-header-inner-wrap,
.mh-page .kadence-sticky-header .site-main-header-inner-wrap{
min-height:0!important;
height:100%;
align-items:center;
}
.mh-page #masthead #main-header .site-main-header-wrap .site-container,
.mh-page #mobile-header .site-main-header-wrap .site-container,
.mh-page .kadence-sticky-header .site-container{
padding-top:3px!important;
padding-bottom:3px!important;
box-sizing:border-box;
height:100%;
}
}

/* Keep the fixed navy bar above page content (z-index:1200). Desktop/tablet only. */
@media (min-width:641px){
.mh-page #masthead{z-index:auto!important}
.mh-page:not(.home) .entry-content > .mh-ctr:first-child{
position:relative;
z-index:1;
}
}
@media (min-width:1051px){
.mh-page.page-id-77 .entry-content > .mh-ctr.mh-boxed:nth-child(2),
.mh-page.page-id-78 .entry-content > .mh-ctr.mh-boxed:nth-child(2){
position:relative;
z-index:1;
}
}

/* Desktop/tablet: scale the logo to ~60px tall (215px wide, 1400x391)
   so it fits the 85px navy band. Do not change the logo file (attachment 5001).
   Tighten nav item vertical padding and icon/label spacing so the stack
   fits and stays vertically centered. Also apply to a Kadence sticky clone.
   Mobile (max-width:640px) is unchanged. */
@media (min-width:641px){
.mh-page #masthead #main-header .site-branding,
.mh-page #masthead #main-header .site-branding a.brand,
.mh-page #mobile-header .site-branding,
.mh-page #mobile-header .site-branding a.brand,
.mh-page .kadence-sticky-header .site-branding,
.mh-page .kadence-sticky-header .site-branding a.brand{
padding:0!important;
margin:0!important;
}
.mh-page #masthead #main-header .site-branding img.custom-logo,
.mh-page #mobile-header .site-branding img.custom-logo,
.mh-page #mobile-header img.custom-logo,
.mh-page .kadence-sticky-header img.custom-logo{
width:215px!important;
max-width:215px!important;
height:auto!important;
}
.mh-page #masthead #main-header .site-branding img.custom-logo{
width:calc(215 * var(--mh-hs))!important;
max-width:215px!important;
}
.mh-page #masthead #main-header .site-header-row-no-center .menu > li > a,
.mh-page #masthead #main-header .site-header-row-no-center .menu > li.menu-item-has-children > a,
.mh-page .kadence-sticky-header .menu > li > a{
padding-top:4px!important;
padding-bottom:4px!important;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
}
.mh-page #masthead #main-header .mh-menu-icon,
.mh-page #masthead .mh-menu-icon,
.mh-page .kadence-sticky-header .mh-menu-icon{
height:22px!important;
margin-bottom:3px!important;
}
.mh-page #masthead #main-header .mh-menu-icon .mh-line-icon,
.mh-page #masthead .mh-menu-icon .mh-line-icon,
.mh-page .kadence-sticky-header .mh-menu-icon .mh-line-icon{
width:22px!important;
height:22px!important;
}
.mh-page #masthead #main-header .mh-menu-label,
.mh-page #masthead .mh-menu-label,
.mh-page .kadence-sticky-header .mh-menu-label{
font-size:14px!important;
line-height:1.15!important;
}
.mh-page #masthead #main-header .mh-menu-sub,
.mh-page #masthead .mh-menu-sub,
.mh-page .kadence-sticky-header .mh-menu-sub{
font-size:10.5px!important;
margin-top:2px!important;
line-height:1.15!important;
}
}

/* Desktop/tablet: the Home hero's 180px top padding was sized for the old
   142px nav. With the 85px nav, 57px more of the banner showed below the
   bar (visible hero 541->598). Reduce padding-top by that 57px so the
   visible hero height and the heading's clearance below the nav match
   the earlier layout. Text stays fully below the 85px bar. Mobile unchanged. */
@media (min-width:641px){
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1,
html body.mh-page.home .entry-content > .mh-ctr:first-child{
--mhc-padding-top:111px!important;
padding-top:111px!important;
--mhc-padding-bottom:24px!important;
padding-bottom:24px!important;
}
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-row > .mh-col{
margin-bottom:0!important;
}
}

/* Desktop/tablet: keep the Home banner cursive heading on one line.
   The wrap around it has 15% side padding, which is what forces the
   wrap; the heading breaks out to the viewport width so the paragraph
   and button stay put. Below 1366px the 45pt line is wider than the
   screen, so the size is reduced just enough to fit. The heading wrap
   is not held open: padding under the h1 leaves 8-16px after the
   cursive ink, and the subtext and button move up together. Banner
   height is held by a min-height on the hero instead. Mobile is unchanged. */
@media (min-width:641px){
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-hom11-5{
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
	text-align:center;
	box-sizing:border-box;
	min-height:0!important;
}
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-hom11-5 h1,
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-hom11-5 h1 span{
	white-space:nowrap!important;
	word-break:normal!important;
	overflow-wrap:normal!important;
}
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-hom11-5 h1{
	padding-bottom:calc(0.25em + 12px);
}
}
@media (min-width:641px) and (max-width:1365px){
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-hom11-5 h1,
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-hom11-5 h1 span{
	font-size:min(45pt, calc((100vw - 48px) * 60 / 1123))!important;
}
}
@media (min-width:641px){
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1{
	align-items:flex-start!important;
}
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-hom11-2{
	align-items:flex-start!important;
	align-self:flex-start!important;
	height:auto!important;
}
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1 .mh-hom11-3{
	align-self:flex-start!important;
}
}
@media (min-width:641px) and (max-width:767px){
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1{min-height:827.7px;}
}
@media (min-width:768px) and (max-width:1023px){
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1{min-height:750.7px;}
}
@media (min-width:1024px) and (max-width:1279px){
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1{min-height:568.7px;}
}
@media (min-width:1280px){
html body.mh-page.home .entry-content > .mh-ctr.mh-hom11-1{min-height:549.7px;}
}

/* Desktop/tablet: menu (with icons) on the left, logo on the far right,
   keeping the same outer padding on each side. On desktop the menu is
   already left and the logo is only centered in the leftover space; pin
   it to the right edge. On tablet (#mobile-header, used below Kadence's
   desktop breakpoint) the logo is left and the menu toggle sits in the
   center column of a 1fr auto 1fr grid; swap them and pin both to the
   previous inset. Mobile ≤640px is unchanged. */
@media (min-width:641px){
html body.mh-page #masthead #main-header .site-header-row-no-center .site-header-main-section-right{
	justify-content:flex-end!important;
}
html body.mh-page #mobile-header .site-main-header-inner-wrap{
	grid-template-columns:auto 1fr!important;
}
html body.mh-page #mobile-header .site-header-main-section-right{
	order:1;
	justify-content:flex-start!important;
	padding-left:1.3vw;
	padding-right:0!important;
}
html body.mh-page #mobile-header .site-header-main-section-left{
	order:2;
	justify-content:flex-end!important;
	padding-left:0!important;
	padding-right:1.3vw;
}
}

/* Mobile only: slim Schedule a Massage banner under the header.
   Uses the same water-lily background and button style as the Home
   "Schedule a Massage Today" banner, but shorter — just the centered
   button, no quote or cancellation text. Hidden at ≥641px. */
.mh-mobile-book-banner{display:none;}
@media (max-width:640px){
.mh-mobile-book-banner{
	display:block;
	box-sizing:border-box;
	width:100%;
	margin:0;
	padding:12px 16px;
	text-align:center;
	background-color:var(--mhc-color7,#636363);
	background-position:left top;
	background-repeat:no-repeat;
	background-size:cover;
}
.mh-mobile-book-banner .mh-btn-link{display:inline-block;}
}
@media (min-width:641px){
.mh-mobile-book-banner{display:none!important;}
}

/* Mobile drawer: sit each nav icon to the left of its label (the desktop
   stacked icon+label treatment is for the top bar only). Hide the old
   Gift Certificates ::before if the SVG icon is present so it isn't doubled. */
@media (max-width:640px), (min-width:641px) and (max-width:1024px){
.mh-page #mobile-drawer .menu > li > a,
.mh-page #mobile-site-navigation .menu > li > a{
	display:flex;
	align-items:center;
	gap:.45em;
}
.mh-page #mobile-drawer .mh-menu-icon,
.mh-page #mobile-site-navigation .mh-menu-icon{
	display:inline-flex;
	flex:none;
	align-items:center;
	justify-content:center;
	height:22px;
	width:22px;
	margin:0;
	color:inherit;
}
.mh-page #mobile-drawer .mh-menu-icon .mh-line-icon,
.mh-page #mobile-site-navigation .mh-menu-icon .mh-line-icon{
	width:22px;
	height:22px;
}
.mh-page #mobile-drawer #menu-item-5109 > a:has(.mh-menu-icon svg)::before{
	display:none;
}
}
