/*
Theme Name: All About Me Dental Theme
Description: Custom designed theme specially for All About Me Dental
Version: 0.9
Author: Rob Williams, Results Marketing & Advertising <web@resultsinc.ca>
Tags: custom template
*/

/* Default Styles */

html, body {
    width:                  100%;
    height:                 100%;
    font-family:            'Lato', 'Arial', sans-serif;
    font-weight:            300;
    line-height:            1.4em;
    background:             white;
}
body { overflow-x: hidden; }


p { padding: 0 0 1em 0; font-size: 1.1em; line-height: 1.4em; text-align: justify; }
.bold { font-weight: bold; }
.italic { font-style: italic; }
.textleft { text-align: left; }
.textcenter { text-align: center; }
.textright { text-align: right; }
.clear { clear: both; }
.floatleft { float: left; }
.floatright { float: right; }

img.centered {
	display: block;
	margin: 0 auto;
}

img.alignright {
	padding: 4px;
	margin: 0 0 1em 1em;
	display: inline;
}

img.alignleft {
	display: inline;
}

img.aligncenter {
    display: block;
}

.alignright { float: right; }
.alignleft { float: left; }
.aligncenter { margin: 0 auto; }


/* Basic styles */

a { text-decoration: none; color: white; font-weight: 800; display: inline-block; position: relative; z-index: 5; transition: 0.5s all; }
a:after { content: ''; position: absolute; z-index: -1; top: -5px; left: -5px; width: calc(100% + 10px); height: calc(100% + 10px); background: #9c5b9d; transform: scaleX(0); transition: 0.5s all; }
a:hover { color: white; }
a:hover:after { transform: scaleX(1); }

.no_purple a:after { display: none !important; }

h1 { font-size: 2em; }
h2 { font-size: 1.75em; line-height: 1.5em; margin-bottom: 0.5rem; }
h3 { font-size: 1.5em; }
h4 { font-size: 1.25em; margin-bottom: 1rem; }

main { overflow-x: hidden; }
main > *:not(.fullwidth) { width: 95%; max-width: 1255px; margin: 1.5rem auto; }
main > .narrow_container { max-width: 700px; padding-left: 70px; }

.bg_black { background: black; color: white; }
.bg_grey { background: #333; color: white; }
.bottom_purple { border-bottom: 5px #9c5b9d solid; }

header .wp-block-columns { margin-bottom: 0 !important; }
.header_bar { list-style: none outside; width: 95%; max-width: 1255px; margin: 0 auto; padding: 0; }
.header_bar li { font-weight: bold; color: #bfbfbf; line-height: 36px; }
.header_bar li p { padding-bottom: 0; line-height: 2em; }

.social_icon { display: inline-block; background: #bfbfbf; border-radius: 99px; position: relative; height: 24px; top: 4px; width: 24px; margin-left: 1rem; transition: 0.5s all; }
.social_icon a { position: absolute; left: 50%; top: 50%; color: black; transform: translate(-50%,-50%); transition: 0.5s all; }
.social_icon:hover { background: #9c5b9d; }
.social_icon:hover a { color: white; }

.menu-nav-menu-container { width: 95%; max-width: 1255px; margin: 0 auto; position: relative; z-index: 10; }
.nav_menu { list-style: none outside; text-align: center; height: 3em; line-height: 3em; }
.nav_menu li { display: inline-block; padding: 0 1rem; position: relative;}
.nav_menu li:after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; transform: scaleX(0); background: #9c5b9d; transition: 0.5s all; }
.nav_menu li:hover:after { transform: scaleX(1); }
.nav_menu li a:after { display: none; }
.book_now_button { position: absolute !important; background: #9c5b9d; color: white; font-size: 2em; right: 0; top: 110%; border-radius: 10px; padding: 0.75rem 1.5rem !important; transition: 0.5s all; box-shadow: rgba(0,0,0,0.6) 0 5px 9px; }
.book_now_button:hover { background: #682969; }
.book_now_button:after { display: none !important; }
.page-id-23 .book_now_button, .page-id-29 .book_now_button { display: none; }

.footer_bar .menu-footer-menu-container { width: 100%; }
#menu-footer-menu { list-style: none outside; margin-bottom: 1.5rem; }
#menu-footer-menu li { text-transform: uppercase; font-size: 0.9em; margin-bottom: 0.5em; }
#menu-footer-menu li a { color: white; }

.in_box > div { width: 70% !important; margin: 1.5rem auto; border: 2px #9c5b9d solid; padding: 2rem;  }
.in_box > div p { padding-bottom: 0; }

.fp_features .wp-block-column { position: relative; }
.fp_features figcaption { position: absolute; z-index: 5; top: 0.5rem; left: 0; width: 100%; padding: 0.25em 0; font-weight: bold; background: rgba(88, 31, 89, 0.71); color: white; text-align: center; }

footer { border-top: 4px #9c5b9d solid; }

.footer_bar { list-style: none outside; border-top: 2px white solid; }
.footer_bar .wp-block-columns { margin-bottom: 0; gap: 0; }
.footer_bar .wp-block-column p:last-child { padding-bottom: 0; }
.footer_bar figure { padding: 0; margin: 0; }
.footer_bar .bg_grey, .footer_bar .bg_black { padding: 1rem; box-sizing: border-box; }
.footer_bar p { font-size: 1em; }

.footer_bar .wp-block-column p:empty { display: none; }
#mapp0 { height: 100%; }
#mapp0 .mapp-wrapper { padding-bottom: 0 !important; height: 100%; }

.page-id-23 main { background: url(/wp-content/uploads/2023/06/About_BridgeShot.jpg) white center bottom no-repeat; background-size: contain; padding-bottom: 500px; }

.main_heading { position: relative; z-index: 5; }
.main_heading.tighter_bottom { margin-bottom: -150px !important; }
.main_heading > div { position: relative; }
.main_heading figure { position: relative; z-index: 5; }
.main_heading h1 { color: white; background: black; width: 200%; position: absolute; z-index: 4; left: 170px; top: 30%; transform: translate(0,-50%); padding: 1rem 0 1rem 150px; }
.main_heading h2 { position: absolute; z-index: 4; left: 170px; top: calc( 30% + 1.3em ); padding-left: 150px; font-weight: 400; }

.subheading { position: relative; min-height: 3em; }
.subheading h2 { color: white; background: black; padding: 0.2rem 0 0.2rem 1rem; width: 200%; position: absolute; }

main strong { white-space: nowrap; }
main ul { list-style: disc outside; padding-left: 2rem; margin-bottom: 1rem; }
main ul li { margin-bottom: 0.5rem; font-size: 1.25em; line-height: 1.4em; }
main ul:not(.no_justify) li { text-align: justify; }
main a { color: black; }

main a i { color: white; background: black; display: inline-block !important; height: 2rem; width: 2rem !important; border-radius: 99px; line-height: 2rem !important; margin-right: 0.5rem; }
.footer_bar a i { color: black; background: white; text-align: center; display: inline-block !important; height: 1.5rem; width: 1.5rem !important; border-radius: 99px; line-height: 1.5rem !important; margin-right: 0.5rem; }

.full_width_image figure, .full_width_image figure img { width: 100% !important; height: auto !important; }

.footer_image figure { position: relative; height: 100%; overflow: hidden; }
.footer_image figure img { position: absolute; top: 50%; left: 50%; height: 100%; width: auto; transform: translate(-50%,-50%); max-width: none; min-width: 100%; }

@media screen and ( max-width:1280px ) {
    main > .narrow_container { padding-left: 100px; }
    .page-id-29 main > .wp-block-columns > div:nth-child(2) { flex-basis: 40% !important; }
    .page-id-29 main > .wp-block-columns > div:last-child { flex-basis: 35% !important; }
}

@media screen and ( max-width: 1150px ) {
    main > .narrow_container { padding-left: 150px; }
    .page-id-29 main > .wp-block-columns > div:first-child { flex-basis: 40% !important; }
    .page-id-29 main > .wp-block-columns > div:nth-child(2) { flex-basis: 60% !important; }
    .page-id-29 main > .wp-block-columns > div:last-child { display: none; }
}

@media screen and (max-width: 1024px) {
    .footer_bar .wp-block-columns.is-not-stacked-on-mobile { flex-wrap: wrap !important; }
    .footer_bar .wp-block-columns .wp-block-column { flex-basis: 50% !important; }
    .footer_bar .wp-block-columns > div:nth-child(3) { order: 4; }
    .footer_bar .wp-block-columns > div:last-child { order: 3; }
    main > .narrow_container { padding: 150px 0 0; }
    .page-id-23 main { padding-bottom: 300px; }
    .page-id-25 .book_now_button { top: 120%; }
    .page-id-25 .main_heading h1 { font-size: 1.8em; }
    .page-id-25 main { padding-top: 2rem; }
}

@media screen and (max-width: 785px) {
    .fp_features figure a { width: 100%; }
    .fp_features img { width: 100% !important; height: auto !important; }
    .fp_features figcaption { top: 0; position: relative; }
    .main_heading h1 { width: auto; line-height: 1.1em; }
    .main_heading h2 { top: calc( 30% + 2em ); }
    .page-id-29 main > .wp-block-columns > div:first-child { flex-basis: 100% !important; }
    .page-id-29 main > .wp-block-columns > div:nth-child(2) { flex-basis: 100% !important; padding-top: 8rem; }
}

@media screen and (max-width:750px) {
    .nav_menu { height: auto; }
    .menu-nav-menu-container { padding-bottom: 1rem; }
    .book_now_button { position: relative !important; font-size: 2rem; }
    .header_bar { margin: 0 0 1rem; }
    .header_bar .wp-block-columns { gap: 0.25rem; }
    .header_bar li p { line-height: 1em; padding: 1rem 2rem 0; text-align: center; }
}

@media screen and (max-width: 600px) {
    .nav_menu li:first-child { display: none; }
    .nav_menu li:last-child { display: block; margin: 0 4rem; font-size: 1.5em; line-height: 1.5em; }
    .main_heading > div { text-align: center; }
    .main_heading h1 { position: relative; width: 100%; left: 0; padding-left: 0; margin-top: 3rem; line-height: 1.1em; }
    .main_heading h2 { position: relative; width: 100%; left: 0; padding-left: 0; line-height: 1.1em; }
    .page-id-23 .narrow_container .wp-block-image figure { float: none; margin: 0.5rem auto; }
    .page-id-23 main { padding-bottom: 150px; }
    .footer_bar .wp-block-columns .wp-block-column { flex-basis: 100% !important; }
    .footer_bar .wp-block-columns > div:first-child { height: 250px; }
    .footer_bar .wp-block-columns > div:nth-child(3) { order: 3; height: 250px; }
    .footer_bar .wp-block-columns > div:last-child { order: 4; }
}

