/* Motion refines a visible document. There are no hidden loading/reveal states. */
:root {
 --mi-duration-fast:160ms;--mi-duration-standard:240ms;--mi-duration-reveal:420ms;
 --mi-duration-gallery:600ms;--mi-ease-ui:cubic-bezier(.2,0,0,1);
 --mi-ease-reveal:cubic-bezier(.22,1,.36,1);
 --mi-motion-distance:16px;--mi-motion-stagger:35ms;
}
html body #dc-root .rise {animation:none!important;opacity:1!important;transform:none!important}
html body.mi-board-ready #dc-root .mi-home-hero :is(picture,picture img,.mi-home-hero-picture) {border-radius:0!important;clip-path:none!important}
@media(min-width:1101px){html body .mi-global-header.is-home:not(.is-scrolled){background:transparent!important;backdrop-filter:none!important}}
@media(min-width:1101px){html body:is(.mi-home-page,:has(.mi-global-header.is-home)) #dc-root .sc-host>div>section.mi-home-hero:first-of-type>.rise {padding-top:calc(clamp(140px,8cqi,205px) + 40px)!important}}
html body .mi-header-nav a {position:relative}
html body .mi-header-nav a::after {content:'';position:absolute;bottom:2px;left:12px;right:12px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 180ms var(--mi-ease-ui)}
html body .mi-header-nav a[aria-current]::after {transform:scaleX(1)}
@media(hover:hover) and (pointer:fine){html body #dc-root .btn:hover>svg:last-child {transform:translateX(3px);transition:transform 180ms var(--mi-ease-ui)}}
html body .mi-header-nav a:hover {text-decoration:none!important}
@media(min-width:761px){
 #dc-root .mi-track-carousel .mi-site-track>.mi-site-slide {margin-right:-14%!important;z-index:1}
 #dc-root .mi-track-carousel .mi-site-track>.mi-site-slide.is-active {z-index:2}
 #dc-root .mi-track-carousel .mi-site-slide.is-prev .mi-site-window {transform:scale(.9) rotateY(12deg)}
 #dc-root .mi-track-carousel .mi-site-slide.is-next .mi-site-window {transform:scale(.9) rotateY(-12deg)}
}
html body #dc-root :is(a,button,summary,input,select,textarea),html body .mi-global-header :is(a,button) {
 transition-property:background-color,color,border-color,box-shadow,transform;
 transition-duration:var(--mi-duration-fast)!important;transition-timing-function:var(--mi-ease-ui)!important;
}
html body #dc-root :is(.benefit,.tile,.mi-resource-card,.mi-gloss-card,.mi-guide-card,.mi-category-card,.mi-city-services>a,.mi-about-value-list>article) {
 transition-property:background-color,border-color,box-shadow,transform;
 transition-duration:var(--mi-duration-standard)!important;transition-timing-function:var(--mi-ease-ui)!important;
}
html body #dc-root :is(a,button,summary,input,select,textarea):focus-visible {outline:3px solid #2ca4d0;outline-offset:4px}
html body #dc-root :is(button,.btn):active:not(:disabled) {transform:scale(.99)}
html body #dc-root :is(input,select,textarea):focus {box-shadow:0 0 0 3px #299bba22}
html body #dc-root :is(input,textarea)[aria-invalid=true] {border-color:#c24747!important;box-shadow:0 0 0 2px #c2474726}
html body #dc-root :is(button,input,select,textarea):disabled {cursor:default;transform:none!important;box-shadow:none!important}
/* Keep directory link hit areas stationary during pointer movement. */
html body #dc-root :is(.mi-area-featured-places,.mi-city-place-links,.mi-area-letter-results) a,
html body #dc-root :is(.mi-area-featured-places,.mi-city-place-links,.mi-area-letter-results) a:is(:hover,:focus-visible,:active) {
 transform:none!important;scale:none!important;filter:none!important;
 transition-property:background-color,color,border-color,box-shadow!important;
}
html body #dc-root .mi-track-carousel :is(.mi-site-slide,.mi-site-hero,.mi-concept-header,.mi-site-overlay) {animation:none!important;filter:none!important;transition-property:none!important}
html body #dc-root .mi-track-carousel .mi-site-window {transition-property:transform,box-shadow!important}
html body #dc-root .mi-track-carousel .mi-site-track {transition-property:transform!important}
/* Reserve the shared shell before its JavaScript enhancement replaces the spacer. */
:root {--mi-header-height:124px}
html body .mi-header-spacer {height:124px!important}
html body .mi-global-header .mi-header-row2 {height:42px!important;min-height:42px!important}
html body .mi-global-header .mi-header-nav {height:42px!important}
@media(min-width:701px) and (max-width:1100px){:root{--mi-header-height:82px}html body .mi-header-spacer{height:82px!important}}
@media(max-width:700px){:root{--mi-header-height:96px}html body .mi-header-spacer{height:96px!important}}
/* The carousel has the same canvas before and after its track is enhanced. */
#dc-root .mi-site-showcase {container-type:inline-size}
#dc-root .mi-site-showcase .mi-site-stage {--mi-slide-height:calc(min(1040px,78cqw) * .625 + 28px);height:calc(var(--mi-slide-height) + 148px)!important;min-height:0!important;box-sizing:border-box!important;padding-block:60px 88px!important}
@media(max-width:760px){#dc-root .mi-site-showcase .mi-site-stage {--mi-slide-height:calc((100cqw - 16px) * .82 + 28px);height:calc(var(--mi-slide-height) + 96px)!important;padding-block:32px 64px!important}}
/* One outer mobile gutter; inner layouts use the complete available width. */
html body .mi-floating-actions {position:fixed!important;inset:auto 16px max(16px,env(safe-area-inset-bottom)) auto!important;display:flex!important;flex-direction:column!important;gap:10px!important;z-index:60!important;transform:none!important;filter:none!important;opacity:1!important;visibility:visible!important;pointer-events:none}
html body .mi-floating-actions>:is(a,button) {pointer-events:auto;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;flex:0 0 48px!important;transform:none!important;backface-visibility:hidden}
html body .mi-floating-actions .mi-back-to-top:disabled {opacity:.6!important;cursor:default}
html body.mi-gaming-page #dc-root>.sc-host>div {color:#142e45!important;background:#e7eff3!important}
html body.mi-gaming-page #dc-root :is(.mi-category-hero,.mi-directory-hero)>div:first-child :is(h1,h2,h3),html body.mi-gaming-page #dc-root :is(.mi-category-hero,.mi-directory-hero)>div:first-child nav {color:#142e45!important}
html body.mi-gaming-page #dc-root :is(.mi-category-hero,.mi-directory-hero)>div:first-child :is(p,li,nav a),html body.mi-gaming-page #dc-root :is(.mi-category-hero,.mi-directory-hero)>div:first-child nav span {color:#40586d!important}
html body.mi-gaming-page #dc-root .mi-gaming-short,html body.mi-gaming-page #dc-root .mi-gaming-short :is(h2,h3,p,li) {color:#142e45!important}
html body.mi-gaming-page #dc-root>.sc-host>div>section:nth-of-type(-n+2) {background:#e7eff3!important;color:#142e45!important}
html body.mi-gaming-page #dc-root>.sc-host>div>section:nth-of-type(-n+2) :is(h1,h2,h3) {color:#142e45!important}
html body.mi-gaming-page #dc-root>.sc-host>div>section:nth-of-type(-n+2) :is(p,li,nav,nav a) {color:#40586d!important}
html body.mi-gaming-page #dc-root .mi-category-hero .btn:not(.btn-primary) {background:transparent!important;color:#142e45!important;border:1px solid #5e819a!important}
#dc-root .mi-home-technology .stab {border:1px solid #7595a8!important;background:transparent!important;color:#244b63!important;border-radius:12px!important;min-height:48px!important;padding:11px 16px!important}
#dc-root .mi-home-technology .stab:is(.on,[aria-pressed=true]) {background:#10354e!important;color:#fff!important;border-color:#10354e!important}
html[data-mi-theme=dark] #dc-root .mi-home-technology .stab {color:#def1fb!important;border-color:#83a8bb!important}
html[data-mi-theme=dark] #dc-root .mi-home-technology .stab:is(.on,[aria-pressed=true]) {background:#83cde4!important;color:#102c42!important;border-color:#83cde4!important}
@media(max-width:700px){
 :root {--mi-page-gutter:12px}
 html body.mi-board-ready #dc-root>.sc-host>div {width:100%!important;padding-inline:0!important}
 html body.mi-board-ready #dc-root>.sc-host>div>:is(section,main,div):not(.mi-home-hero):not(.mi-global-footer) {width:calc(100% - 24px)!important;max-width:none!important;margin-inline:auto!important;box-sizing:border-box!important}
 html body.mi-board-ready #dc-root .sc-host>div>:is(.mi-home-technology,.mi-home-benefits,.mi-home-partner,.mi-home-clinic,.mi-home-network,.mi-directory-hero,.mi-category-hero,.mi-contact-hero,section[data-mi-home-area]) {padding-inline:16px!important}
 html body.mi-board-ready #dc-root .mi-home-technology {padding-inline:0!important}
 html body.mi-board-ready #dc-root .mi-home-technology>div:first-child,html body.mi-board-ready #dc-root .mi-home-technology>div:last-child {padding-inline:12px!important}
 html body.mi-board-ready #dc-root .mi-home-technology>div:last-child {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;align-items:stretch!important}
 html body.mi-board-ready #dc-root .mi-home-technology .stab {width:100%!important;text-align:center!important;height:auto!important;white-space:normal!important;line-height:1.4!important}
 html body.mi-board-ready #dc-root .mi-home-technology>div:nth-child(2) {width:100%!important;margin-inline:0!important;padding:0!important;max-width:none!important}
 html body.mi-board-ready #dc-root .mi-home-scene {width:100%!important;max-width:none!important;margin:0!important;aspect-ratio:4/3!important}
 html body.mi-board-ready #dc-root .mi-home-scene>img {width:100%!important;height:100%!important;object-fit:cover!important}
 html body.mi-board-ready #dc-root .mi-home-technology>div:nth-child(2)>div:last-child {padding:24px 16px!important}
 html body.mi-board-ready #dc-root :is(.mi-about-page,.mi-city-page,.mi-review-page,.mi-article-page)>section {padding-inline:16px!important;width:100%!important;max-width:none!important;margin-inline:0!important}
 html body.mi-board-ready #dc-root :is(.mi-article-layout,.mi-service-story-inner,.mi-service-reading-inner,.mi-contact-welcome,.mi-contact-body) {width:100%!important;max-width:none!important;padding-inline:0!important;box-sizing:border-box!important}
 html body.mi-board-ready #dc-root .mi-home-trust {padding:20px!important}
 html body.mi-board-ready #dc-root .mi-home-trust>span {display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;align-items:start!important;column-gap:14px!important}
 html body.mi-board-ready #dc-root .mi-home-trust>span>svg {margin-top:2px!important}
 html body.mi-board-ready #dc-root .mi-home-trust .mi-trust-copy {padding-right:8px!important}
 html body.mi-board-ready #dc-root .mi-home-service-directory {padding:16px!important;gap:16px!important}
 html body.mi-board-ready #dc-root .mi-site-showcase {padding-inline:0!important}
 html body.mi-board-ready #dc-root .mi-site-intro {padding-inline:12px!important}
}
@media(hover:hover) and (pointer:fine){
 html body #dc-root :is(.benefit,.mi-resource-card,.mi-guide-card,.mi-category-card,.mi-city-services>a):hover {transform:translateY(-2px)}
 html body #dc-root .mi-about-hero-image:hover img {transform:scale(1.015)}
 html body #dc-root .mi-about-hero-image img {transition:transform var(--mi-duration-standard) var(--mi-ease-ui)}
}
@media(prefers-reduced-motion:reduce){
 html body.mi-board-ready #dc-root h1 .hero-rotate span {animation:none!important;visibility:hidden!important;transform:none!important}
 html body.mi-board-ready #dc-root h1 .hero-rotate span:first-child {visibility:visible!important}
 html body.mi-board-ready #dc-root .mi-home-scene .hs {animation:none!important}
 ::view-transition-old(root),::view-transition-new(root){animation:none!important}
 html{scroll-behavior:auto!important}
 html body #dc-root *,html body .mi-global-header *,html body .mi-global-footer * {animation-duration:0ms!important;transition-duration:0ms!important}
 html body #dc-root [data-mi-motion] {transform:none!important;filter:none!important;opacity:1!important;clip-path:none!important}
 html body #dc-root :is(.benefit,.mi-resource-card,.mi-guide-card,.mi-category-card,.mi-city-services>a):hover {transform:none!important}
}

/* Header navigation: the underline spans the whole item and fades in calmly; hover previews it softly. */
html body .mi-header-nav>a,html body .mi-header-nav>button{position:relative}
html body .mi-header-nav>a::after,html body .mi-header-nav>button::after{content:'';position:absolute;bottom:3px;left:0;right:0;height:2px;border-radius:2px;background:currentColor;opacity:0;transform:scaleX(.55);transform-origin:center;transition:transform .55s cubic-bezier(.22,.61,.36,1),opacity .45s ease}
html body .mi-header-nav>a:is(:hover,:focus-visible)::after,html body .mi-header-nav>button:is(:hover,:focus-visible)::after{opacity:.45;transform:scaleX(1)}
html body .mi-header-nav>a[aria-current]::after{opacity:1;transform:scaleX(1)}
html body .mi-header-nav>a,html body .mi-header-nav>button,html body .mi-header-actions>*,html body .mi-menu-pages a,html body .mi-services-overlay a{transition:color .45s ease,background-color .45s ease,border-color .45s ease,box-shadow .45s ease,opacity .45s ease,transform .55s cubic-bezier(.22,.61,.36,1)!important}
