@font-face {
    font-family: 'Favorit-Bold';
    src: url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Bold.eot");
    src: url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Bold.eot?#iefix") format("embedded-opentype"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Bold.woff") format("woff"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Bold.woff2") format("woff2"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Bold.ttf") format("truetype"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Bold.svg#FavoritStd-Bold") format("svg");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Favorit-Medium';
    src: url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Medium.eot");
    src: url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Medium.eot?#iefix") format("embedded-opentype"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Medium.woff") format("woff"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Medium.woff2") format("woff2"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Medium.ttf") format("truetype"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Medium.svg#FavoritStd-Medium") format("svg");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Favorit-Book';
    src: url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Book.eot");
    src: url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Book.eot?#iefix") format("embedded-opentype"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Book.woff") format("woff"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Book.woff2") format("woff2"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Book.ttf") format("truetype"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Book.svg#FavoritStd-Book") format("svg");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Favorit-Light';
    src: url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Light.eot");
    src: url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Light.eot?#iefix") format("embedded-opentype"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Light.woff") format("woff"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Light.woff2") format("woff2"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Light.ttf") format("truetype"),
    url("/vp_pages/themes/mg/assets/fonts/FavoritStd-Light.svg#FavoritStd-Light") format("svg");
    font-weight: normal;
    font-style: normal;
}

html {
	-webkit-font-smoothing: antialiased;
}

body {
    font-family: 'Favorit-Light', helvetica, arial;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #000;
}

a, .booking-cta {
    text-decoration: none;
    color: #ff0005;
}

a:hover, a:focus, .booking-cta:hover, .booking-cta:focus {
    text-decoration: none;
    color: #ff0005;
}

.constraint {
    max-width: 60em;
    width: 95%;
    margin: 0 auto;
}

.inner-constraint {
    max-width: 45em;
    width: 95%;
    margin: 0 auto;
}

.grey-container {
    background-color: #eee;
}

.container-spacing {
	padding: 3em 0;
}

.flex-section {
    display: flex;
    flex: 1;
    justify-content: flex-start;
}

.flex-50, .flex-45 {
    width: 100%;
}

.flex--space-between {
    justify-content: space-between;
}

.header-title, .footer {
	font-size: 0.875em;
}

.header {
    width: 100%;
    position: relative;
    margin: 0;
    padding: 0;
}

.header-top {
    background-color: #202020;
    width: 100%;
    padding: 1.25em 0;
}

.header-bottom {
    background-color: #000;
    width: 100%;
    padding: 1.35em 0;
    text-align: right;
}

.logo .header-logo {
    position: absolute;
    top: 0;
}

.header-logo {
    max-width: 5.625em;
    width: 100%;
    z-index: 10;
}

.header-title {
    display: inline-block;
    text-transform: uppercase;
    font-weight: 800;
    color: #fff;
}

.stage {
    background-color: #fff;
    font-weight: 300;
}

.stage-title, .small-title, .evhc-title {
    font-family: 'Favorit-Book', helvetica, arial, sans-serif;
	display: inline-block;
	position: relative;
    margin: 0 0 1.5em !important;
    font-size: 1.75em;
}

.stage-title, .evhc-title {
    font-family: 'Favorit-Bold', helvetica, arial, sans-serif;
}

.stage-title::after, .small-title::after, .evhc-title::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 2em;
    display: inline-block;
    width: 100%;
    border-bottom: 2px solid #c2c2c2;
}

.details-table {
    margin: 0;
    border: none;
    font-size: 1em;
}

.details-table tr, .details-table tr:nth-of-type(even) {
    background: transparent;
}

.details-table td {
    margin: 0;
    border-top: none;
    border-bottom: none;
}

.details-table tbody tr:last-child td {
    border-bottom: none;
}

.details-table__title {
    width: 28%;
    padding-left: 0;
    font-family: 'Favorit-Medium', helvetica, arial, sans-serif;
}

.details-table__detail {
    text-align: right;
    padding-right: 0;
}

.cta--primary, .evhc-cta--primary, .evhc-cta--secondary, .cta--primary:hover, .cta--primary:focus,
.evhc-cta--primary:hover, .evhc-cta--primary:focus, .evhc-cta--secondary:hover, .evhc-cta--secondary:focus,
#js-document-verification_unlock__btn, #js-document-verification_unlock__btn:hover, #js-document-verification_unlock__btn:focus {
    display: inline-block;
    background: #ff0005;
    border: 1px solid #ff0005;
    padding: 1em 1.8em;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    font-weight: 800;
    font-size: 0.8125em;
    color: #fff;
}

.cta--primary:not(:last-of-type) {
	margin-bottom: 0.875em;
}

.cta--primary, .cta--primary:hover, .cta--primary:focus {
    display: block;
}

#tootle .cta--primary {
    display: inline-block;
}

button, input[type="button"], input[type="submit"] {
    line-height: 1;
}

.stage-additional {
    padding: 2em 0 4em 0;
}

.box, .evhc-report-container {
    background-color: #fff;
    border: none;
}

.box p {
    margin-top: 0;
}

.photo-gallery {
	padding-top: 3em;
	text-align: center;
}

.two-way-messaging__content-title {
    margin-bottom: 1rem;
}

.two-way-messaging .small-title {
    margin: 0 !important;
}

.two-way-messaging .small-title::after {
    height: 0;
    display: none;
    width: 0;
    border-bottom-width: 0;
}

.footer {
    background-color: #000;
    position: relative;
    padding: 4.375em;
    margin-top: 0;
    border-top: 20px solid #202020;
    color: #fff;
}

.footer-logo {
    position: absolute;
    left: 0;
    top: -65px;
    width: 100%;
    height: 90px;
    background-image: url(/vp_pages/themes/mg/assets/images/logo-mg-footer.png);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: contain;
    text-indent: -9999px;
    z-index: 1;
}

.footer a, .footer a:hover, .footer a:focus {
	text-transform: uppercase;
	text-decoration: none;
	color: #fff;
}

.footer-address, .social {
	padding-top: 1em;
}

.footer-title {
    padding-bottom: .5em;
}

.footer-title, .social-title {
	text-transform: uppercase;
	font-weight: 700;
}

.social {
    text-align: left;
}

.social li {
	display: inline-block;
    margin-left: 1em;
	list-style: none;
}

.social li:not(:last-of-type) {
	margin-right: 0.3em;
}

.social li:first-of-type {
    margin-right: 0;
    margin-left: 0;
}

.social li a {
	display: block;
}

.social-icon {
	width: 30px;
	height: 30px;
	position: relative;
    color: rgba(255, 255, 255, 0.8);
}

.social-icon::before, .social-icon::after {
	content: "";
	position: absolute;
	left: 0;
	height: 0;
	width: 30px;
	display: block;
}

.social-icon::before {
	top: 0;
}

.social-icon::after {
    bottom: 0;
}

.social .icon {
	position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    line-height: 30px;
    z-index: 999;
    font-size: 2em;
    margin: 0;
    color: rgba(255,255,255,.8);
}

.social .icon:hover, .social .icon:focus {
	color: #fff;
}

.footer-text, .social-text, .legal-list__item {
    font-size: 0.875em;
}

.legal-list {
    margin: 2em 0 0;
    padding: 1em 0 0;
}

.legal-list__item {
    display: inline-block;
    font-weight: bold;
}

.legal-list__item:not(:last-of-type)::after {
    content: "|";
    padding: 0 1em;
}


/* ==========================================================================
   eVHC
   ========================================================================== */
.evhc-report-container {
    padding: 1em;
}

.evhc-title {
	margin-top: 0;
}

.evhc-table, .evhc-key {
    font-size: 0.875em;
}

.evhc-table, .evhc-approval-form {
    border: 1px solid #ccc;
}

.evhc-table__head {
	background-color: #EBEBEB;
}

.evhc-table__cat {
	background-color: #F5F5F5;
}


/* ==========================================================================
   Media Queries
   ========================================================================== */
@media screen and (min-width: 53em) {
    .cta-button-block {
        display: none;
    }

    .flex--end {
        justify-content: flex-end;
    }

    .footer-social .flex-section {
        justify-content: flex-end;
    }

    .footer-social .footer-title {
        text-align: right;
    }

    .flex-container--social-icon {
        margin-left: 1.25em;
        margin-right: 0;
    }
}

@media screen and (max-width: 53em) {
    body {
        font-size: 15px;
    }

    .mobile-padding {
        padding: 1.5em 0 0;
    }

    .col-left, .col-right {
        width: 100%;
        float: none;
    }

    .footer-social {
        margin-top: 1.5em;
    }

    .flex-container {
        flex-direction: column;
    }
}

@media screen and (max-width: 63.75em) {
    #cookieConsent .col-left, #cookieConsent .col-right {
        width: 100%;
        float: none;
    }

    #cookieConsent a.cookieConsentOK {
        float: none;
        margin: 10px 0 0 0;
    }
}

