/* -------------------------
+ Author : Marcus Briggs
+ © Viral Effect LTD
------------------------- */

@import url('//fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');
@font-face { font-family: gotham-light; src: url(../fonts/gotham/Gotham-Light.otf); }
@font-face { font-family: gotham-bold; src: url(../fonts/gotham/Gotham-Bold.otf); }

* { font-family: 'Roboto', sans-serif; }
body { background:white; }
body.modal-open { position: fixed; height: 100vh; overflow-y: hidden; }
h1, h2, h3, h4 { font-family: 'gotham-bold', sans-serif !important; font-weight: normal; }
.pink-tint { color:#e51c70 !important; }
.txt-bold { font-weight: bold; }

/* HEADER */

header { width:100%; }
header .header-main { width:100%; background: #282663; display: flex; justify-content: center; align-items: center; flex-direction: column; }
header .header-wrap { width:100%; max-width: 1200px; padding: 0 20px; display: flex; justify-content: space-between; align-items: center; flex-direction: row; }
header .header-item-desktop { width:100%; padding: 40px 0; display: flex; justify-content: center; align-items: center; flex-direction: row; }
header .header-item-desktop .logo { width:350px; display: flex; justify-content: center; align-items: center; }
header .header-item-desktop .logo a { width:100%; display: inline-block; }
header .header-item-desktop .logo a img { width:100%; }
header .header-item-desktop .logo a.bespoke-health { margin: 0 0 0 20px; padding: 10px 0 10px 20px; border-left: 1px dotted white; }
header .header-item-desktop nav { width:100%; flex:1; }
header .header-item-desktop ul { width:100%; padding: 0 30px; display: flex; justify-content: space-evenly; align-items: center;  }
header .header-item-desktop ul li { display: flex; justify-content: center; align-items: center; }
header .header-item-desktop ul li a.nav-link { font-size: 1rem; padding: 0 20px; color:white; text-align: center; letter-spacing: 1px; text-transform: uppercase; font-family: 'gotham-bold', sans-serif; }
header .header-item-desktop .cta { width:160px; display: flex; }
header .header-item-desktop .cta a.cta-link { width:100%; display: inline-block; font-size: 1rem; padding: 14px 20px; border: 2px solid white; border-radius: 30px; color:white; text-align: center; letter-spacing: 1px; text-transform: uppercase; font-family: 'gotham-bold', sans-serif; }
header .header-item-mobile { display:none; width:100%; padding: 25px 5px; justify-content: space-between; align-items: center; }
header .header-item-mobile .header-left { flex:1; padding: 0 30px 0 0; display: flex; }
header .header-item-mobile .header-left .header-logo { width:100%; display: flex; justify-content: center; align-items: center; }
header .header-item-mobile .header-left .header-logo a { width:100%; display: inline-block; }
header .header-item-mobile .header-left .header-logo a img { width:100%; }
header .header-item-mobile .header-left .header-logo a.logo.bespoke-health { margin: 0 0 0 15px; padding: 10px 0 10px 15px; border-left: 1px dotted white; }
header .header-item-mobile .header-right { width:25px; display: flex; }
header .header-item-mobile .header-right a.btn-open-menu { display: inline-block; }
header .header-item-mobile .header-right .btn-open-menu img { width: 25px; display: inline-block; }
header .mobile-nav { position:fixed; top:0; left:-100%; width:100%; height:100%; background-color: rgba(43, 37, 96, 0.95); transition: all .5s ease-in-out; z-index: 99; text-align: left; overflow: auto; }
header .mobile-nav a.menu-close { position:absolute; display:inline-block; padding: 5px; font-size: 3rem; font-weight: 600; line-height: 0.7em; color:white; right: 20px; top: 12px; z-index:101; }
header .mobile-nav ul { display:inline-block; width:100%; padding-right: 76px; padding-top: 50px; }
header .mobile-nav ul li { float: left; width:100%; }
header .mobile-nav ul li a { display:inline-block; padding:12px 0px 12px 42px; color:white; font-size: 1rem; letter-spacing: 1px; text-transform: uppercase; letter-spacing: 1px; font-family: 'gotham-bold', sans-serif; }
header .mobile-nav.open { left:0; }

@media (max-width: 980px) {
    header .header-item-desktop { display:none; }
    header .header-item-mobile { display: flex; }
}

/* CORE */

main { width:100%; display: flex; justify-content: center; align-items: center; flex-direction: column; }
section { width:100%; display: flex; justify-content: center; align-items: center; flex-direction: column; }
.sec-wrap { width:100%; max-width: 1200px; display: flex; justify-content: center; align-items: center; flex-direction: column; }
.sec-content { width:100%; display: flex; justify-content: center; align-items: center; flex-direction: column; }

/* FOOTER */

footer { width:100%; display: flex; justify-content: center; align-items: center; flex-direction: column; }
footer .footer-upper { width:100%; padding:60px 60px 60px 60px; background: #282663; display: flex; justify-content: center; align-items: center; flex-direction: column; }
footer .footer-wrap { width:100%; max-width: 1200px; display: flex; justify-content: center; align-items: center; flex-direction: column; }
footer .footer-content { width:100%; display: flex;  }
footer .footer-upper .footer-content { justify-content: center; align-items: center; flex-direction: column; }
footer .footer-upper .branding { width:100%; display: flex; justify-content: center; align-items: center; flex-direction: column; }
footer .footer-upper .branding a { width:100%; max-width: 300px; display: inline-block; }
footer .footer-upper .branding a img { width:100%; }
footer .footer-upper .info-row { width:100%; margin: 100px 0 0 0; display: flex; justify-content: center; align-items: flex-start; flex-direction: row; }
footer .footer-upper .info-row .links { width:33.33%; display: flex; justify-content: center; align-items: center; flex-direction: column; }
footer .footer-upper .info-row .links h3 { color: white; margin: 0 0 40px 0; letter-spacing: 1px; font-size: 1.4rem; }
footer .footer-upper .info-row .links nav { width: 100%; }
footer .footer-upper .info-row .links nav ul { width: 100%; text-align: center; }
footer .footer-upper .info-row .links nav ul li { width: 100%; }
footer .footer-upper .info-row .links nav ul li a { font-size: 1rem; letter-spacing: 2px; color:white; letter-spacing: 1px; font-family: 'gotham-bold', sans-serif !important; }
footer .footer-upper .info-row .contact { width:33.33%; display: flex; justify-content: center; align-items: center; flex-direction: column; }
footer .footer-upper .info-row .contact h3 { color: white; margin: 0 0 40px 0; letter-spacing: 1px; font-size: 1.4rem; }
footer .footer-upper .info-row .contact h4 { color: #d8d6ff; margin: 0 0 20px 0; letter-spacing: 1px; font-size: 1rem; }
footer .footer-upper .info-row .contact h4.pink-tint { color:#e81b70; }
footer .footer-upper .info-row .contact .line { width:40px; height: 1px; margin: 20px 0 20px 0; background:white; }
footer .footer-upper .info-row .contact .socials { margin: 0 0 20px 0; display: flex; justify-content: flex-end; align-items: center; }
footer .footer-upper .info-row .contact .socials a { margin: 0 8px 0 8px; display: inline-block; }
footer .footer-upper .info-row .contact .socials a img { width: 35px; }
footer .footer-upper .info-row .contact .txt-link { margin: 0 0 5px 0; }
footer .footer-upper .info-row .contact .txt-link a { color:white; letter-spacing: 1px; font-family: 'gotham-bold', sans-serif !important; }
footer .footer-upper .info-row .location { width:33.33%; display: flex; justify-content: center; align-items: center; flex-direction: column; }
footer .footer-upper .info-row .location h3 { color: white; margin: 0 0 40px 0; letter-spacing: 1px; font-size: 1.4rem; }
footer .footer-upper .info-row .location address { font-size: 1rem; color:white; font-style: normal; text-align: center; letter-spacing: 1px; font-family: 'gotham-bold', sans-serif !important; }
footer .footer-upper .legal { width:100%; margin: 100px 0 0 0; display: flex; justify-content: center; align-items: flex-start; flex-direction: column; }
footer .footer-upper .legal p { width:100%; color: white; font-size: 0.9rem; text-align: center; margin: 0 0 10px 0; }

@media (max-width: 748px) {
    footer .footer-upper { padding:50px 30px 30px 30px; }
    footer .footer-upper .branding a { max-width: 200px; }
    footer .footer-upper .info-row { margin: 50px 0 0 0; align-items: center; flex-direction: column; }
    footer .footer-upper .info-row .links { width:100%; }
    footer .footer-upper .info-row .links h3 { margin: 0 0 20px 0; }
    footer .footer-upper .info-row .links nav ul li a { font-size: 0.9rem; }
    footer .footer-upper .info-row .contact { width:100%; margin: 30px 0 0 0; }
    footer .footer-upper .info-row .contact h3 { margin: 0 0 20px 0; }   
    footer .footer-upper .info-row .contact .txt-link a { font-size: 0.9rem; } 
    footer .footer-upper .info-row .location { width:100%; margin: 30px 0 0 0; }
    footer .footer-upper .info-row .location h3 { margin: 0 0 20px 0; }
    footer .footer-upper .info-row .location address { font-size: 0.9rem; }
    footer .footer-upper .legal { margin: 50px 0 0 0; }
    footer .footer-upper .legal p { font-size: 0.8rem; }
}