/* Launch-lite: development banner */
@media (min-width:761px) and (max-width:1180px){.mg-header__inner{flex-wrap:nowrap !important;gap:1.25rem}.mg-nav ul{gap:1.25rem !important;flex-wrap:nowrap !important;white-space:nowrap}.mg-brand{flex:0 1 auto !important;flex-basis:auto !important}.mg-brand__name{font-size:1.15rem;letter-spacing:.12em;white-space:nowrap}.mg-header__actions{display:flex !important;flex:none;margin-left:0}.mg-header__actions .mg-button{padding:.65rem 1.1rem;font-size:.8rem;white-space:nowrap}.mg-nav{margin-left:auto}}
main > .mg-section:first-child:has(.mg-booking){padding-block:4.5rem}
@media (max-width:860px){main > .mg-section:first-child{padding-block:2.75rem}main > .mg-section:first-child .mg-booking{gap:2rem}}
/* Only three menu items: show them inline on tablets and small laptops; the Menu button is for phones only */
@media (min-width:761px) and (max-width:1180px){.mg-menu-toggle{display:none !important}.mg-nav,.mg-nav[data-open="false"]{display:block !important;flex-basis:auto;order:0}.mg-nav ul{flex-direction:row;gap:var(--space-4);padding-bottom:0}.mg-nav__phone{display:none !important}}
.mg-svcrows a:not([href])::after{content:none}
.mg-svcrows a:not([href]){grid-template-columns:1fr;cursor:default}
.mg-svcrows a:not([href]):hover h2{color:var(--ink)}
.mg-devbanner{background:var(--teal-deep, #003f52);color:#fff;overflow:hidden;white-space:nowrap;font-family:var(--font-heading);font-size:.8rem;letter-spacing:.06em}
.mg-devbanner__track{display:inline-flex;gap:0;width:max-content;padding:.45rem 0;animation:mg-dev 120s linear infinite}
.mg-devbanner__track span{flex:none;padding-right:4rem}
@keyframes mg-dev{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mg-devbanner__track{animation:none;padding-left:max(16px,env(safe-area-inset-left,0px))}.mg-devbanner__track span[aria-hidden]{display:none}}
.mg-footer__row{grid-template-columns:minmax(0,34rem) auto !important;justify-content:space-between}
.mg-footer__contact{justify-self:end;min-width:14rem}
@media (min-width:761px) and (max-width:980px){.mg-footer__row{grid-template-columns:minmax(0,1fr) auto !important;gap:var(--space-5) !important}.mg-footer__brand{grid-column:auto !important}.mg-footer__contact{justify-self:end}}
@media (max-width:760px){.mg-footer__row{grid-template-columns:1fr !important}.mg-footer__contact{grid-column:auto !important;justify-self:start;min-width:0}}

/* Client login */
.mg-login{max-width:30rem;display:grid;gap:1.1rem;padding-block:var(--space-5)}
.mg-login .mg-title{margin:0;text-align:left}
.mg-login__form{display:grid;gap:.6rem;margin-top:.5rem}
.mg-login__form label{font-family:var(--font-heading);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-deep)}
.mg-login__form input{font:inherit;font-size:1.05rem;padding:.8rem 1rem;border:1px solid #9fbfcc;border-radius:6px;background:#fff;color:var(--ink);width:100%;box-sizing:border-box}
.mg-login__form input:focus{outline:2px solid var(--teal);outline-offset:2px}
.mg-login__form .mg-button{justify-self:start;margin-top:.4rem;border:0;cursor:pointer}
.mg-login__error{margin:0;color:#8a2d1f;font-weight:500}
