/*========================================================
Theme Name: Reunion Marketing Theme
Theme URI: https://www.reunionmarketing.com/
Author: Reunion Marketing
Author URI: https://www.reunionmarketing.com/
Description: Reunion Marketing WordPress Theme
Version: 1.0
Requires at least: 5.0
Tested up to: 5.4
Requires PHP: 7.0
Text Domain: reunionmarketing
==========================================================*/
/*======================================*/
/*			Bootstrap Variables									
/*======================================*/
:root{

	/*	Default Colors  */
	--bs-body-bg:  				var(--rm-default);
	--bs-body-bg-rgb:  			var(--rm-default-rgb);
    --bs-body-color: 			var(--rm-default-text);
    --bs-body-color-rgb: 		var(--rm-default-text-rgb);
    --bs-link-color: 			var(--rm-default-link);
    --bs-link-color-rgb: 		var(--rm-default-link-rgb);
    --bs-link-hover-color: 		var(--rm-default-link-hover);
    --bs-link-hover-color-rgb: 	var(--rm-default-link-hover-rgb);

	/*	Primary Colors  */
    --bs-primary: 				var(--rm-primary);

	/*	Secondary Colors  */
    --bs-secondary:  			var(--rm-secondary);

}

/*	Bootstrap Nav - Used by Main Nav Only  */

.nav-link{
    --bs-nav-link-color:  		var(--rm-nav-link);
    --bs-nav-link-hover-color:  var(--rm-nav-link-hover);
}

.dropdown-menu{
    --bs-dropdown-bg:  				var(--rm-nav-sub-bg);
    --bs-dropdown-link-color:  		var(--rm-nav-sub-link);
    --bs-dropdown-link-hover-color: var(--rm-nav-sub-link-hover);
}

.dropdown-menu .nav-link{
	color: var(--rm-nav-sub-link);
}

.dropdown-menu .nav-link:hover,
.dropdown-menu .nav-link:focus{
	color: var(--rm-nav-sub-link-hover);
}

.dropdown-item:focus, 
.dropdown-item:hover{
	background-color: inherit;
}

.dropdown-menu .nav-item{
	background-color: var(--rm-nav-sub-bg);
}

.dropdown-menu .nav-item:hover{
	background-color: var(--rm-nav-sub-bg-hover);
}

.btn-primary {
  --bs-btn-color: var(--rm-primary-button-text);
  --bs-btn-bg: var(--rm-primary-button-bg);
  --bs-btn-active-bg: var(--rm-primary-button-bg);
  --bs-btn-border-color: var(--rm-primary-button-bg);
  --bs-btn-active-border-color: var(--rm-primary-button-bg);
  --bs-btn-hover-color: var(--rm-primary-button-text-hover);
  --bs-btn-hover-bg: var(--rm-primary-button-bg-hover);
  --bs-btn-hover-border-color: var(--rm-primary-button-bg-hover);
  --bs-btn-focus-shadow-rgb: var(--rm-primary-button-bg-hover-rgb);
}

.btn-secondary{
  --bs-btn-color: var(--rm-secondary-button-text);
  --bs-btn-bg: var(--rm-secondary-button-bg);
  --bs-btn-active-bg: var(--rm-secondary-button-bg);
  --bs-btn-border-color: var(--rm-secondary-button-bg);
  --bs-btn-active-border-color: var(--rm-secondary-button-bg);
  --bs-btn-hover-color: var(--rm-secondary-button-text-hover);
  --bs-btn-hover-bg: var(--rm-secondary-button-bg-hover);
  --bs-btn-hover-border-color: var(--rm-secondary-button-bg-hover);
  --bs-btn-focus-shadow-rgb: var(--rm-secondary-button-bg-hover-rgb);
}

.btn-primary,
.btn-secondary{
	font-weight: bold;
	font-size: 20px;
	line-height: 20px;
}

/*	Changes ADA Border Color when focused on links	*/
.nav-link:focus-visible,
*:focus-visible{
	box-shadow: 0 0 0 .25rem rgba(var(--rm-focus-visible-rgb),.25);
	outline: 1px solid var(--rm-focus-visible) !important;
}

/*======================================*/
/*			Default Colors									
/*======================================*/
.bg-primary{
	background-color:  var(--rm-primary) !important;
	color:  var(--rm-primary-text);
}

.bg-primary a:not(.btn){
	color:  var(--rm-primary-link);
}

.bg-primary a:hover:not(.btn){
	color:  var(--rm-primary-link-hover);
}

.bg-secondary{
	background-color:  var(--rm-secondary) !important;
	color:  var(--rm-secondary-text);
}

.bg-secondary a:not(.btn){
	color:  var(--rm-secondary-link);
}

.bg-secondary a:hover:not(.btn){
	color:  var(--rm-secondary-link-hover);
}

.text-primary{
	color:  var(--rm-primary) !important;
}

.text-secondary{
	color:  var(--rm-secondary) !important;
}

header#header{
	background-color: var(--bs-body-bg);
}

header#header #banner{
	background-color: var(--rm-banner-bg);
	color: var(--rm-banner-text);
}

header#header #banner a{
	color: var(--rm-banner-link);
}

header#header #banner a:hover{
	color: var(--rm-banner-link-hover);
}

footer#footer #footer-content{
	background-color: var(--rm-footer-bg);
	color: var(--rm-footer-text);
}

footer#footer #footer-content a{
	color: var(--rm-footer-link);
}

footer#footer #footer-content a:hover{
	color: var(--rm-footer-link-hover);
}

/*======================================*/
/*			HEADER ELEMENTS	
/*======================================*/
header#header{
	font-size: 20px;
	line-height: 29px;
	width: 100%;
	z-index: 100;
	box-shadow: 0px 1px 5px 1px rgba(0, 0, 0, 0.1);
}

header#header .fa-phone::before{
	padding-right: 5px;
}

header#header #header-phone-numbers a{
	font-weight: bold;
}

header#header #header-phone-numbers li:first-of-type{
	margin-right:  10px;
}

header#header #header-phone-numbers li:first-of-type::after{
	padding-left: 10px;
	content:  '|';
}

header#header #book-appointment-btn{
	font-weight: bold;
	font-size: 20px;
	line-height: 20px;
}

#skip-to-content{
	transition: all 0.1s ease-out;
	display: block;
	height:  0px;
	overflow: hidden;
}

#skip-to-content:active,
#skip-to-content:focus{
	height: 30px;
}

/*======================================*/
/*			Fixed Header					
/*======================================*/
body.fixed header#header{
	position: fixed;
}

/* Animation requires fixed heigh */
body.fixed header#banner{
	height: 3em;
}

body.fixed header#header #announcement,
body.fixed header#header #banner,
body.fixed header#header #main-nav{
	transition: all .25s ease-in;
}

body.fixed main#body{
	padding-top: 150px;
}

body.fixed.announcement main#body{
	padding-top: 210px;
}

/* When scrolled to top of page */
body.fixed[data-position="top"] header#header #banner{
	margin-top: 0px;
}

/* Added when scrolling up */
body.fixed[data-position="open"] header#header #banner{
	margin-top: -3em;
}

/* Added when scrolling down */
body.fixed[data-position="closed"] header#header #banner{
	margin-top: -3em;
}

/*======================================*/
/*			  	Body					
/*======================================*/
main#body{
	min-height: 400px;
}

main#body h1.entry-title{
	margin: 0px;
}

main#body article > header{
	padding:  30px 0px;
}

/*======================================*/
/*			  	Footer					
/*======================================*/
footer#footer a{
	margin: 0px;
	padding:  0px;
}

footer#footer hr{
	clear: both;
	margin:  20px 0px;
}

footer#footer iframe{
	width: 100%;
}

footer#footer #footer-contact-us img{
	display:  block;
	margin:  auto;
}

footer#footer #footer-contact-us a > i{
	padding-right: 10px;
	width:  35px;
}

footer#footer #footer-contact-us ul{
	margin:  0px;
	padding:  0px;
	list-style: none;
	display:  inline-block;
	width:  auto;
}

footer#footer #footer-contact-us ul li{
	border-bottom:  1px solid #FFFFFF;
	padding:  0px 5px 10px;
	margin-bottom:  10px;
	font-size: 20px;
	line-height: 29px;
}

footer#footer #footer-quick-links .btn{
	line-height: 20px;
	margin:  15px 0px;
}

footer#footer #footer-contact-us ul li:last-of-type{
	border-bottom:  none;
}

footer#footer #menu-quick-links{
	margin-bottom:  30px;
}

footer#footer #menu-quick-links a{
	font-size: 20px;
	line-height: 29px;
}

footer#footer #footer-follow-us ul{
	margin-bottom:  10px;
}

footer#footer #footer-follow-us a{
	font-size: 40px;
	line-height: 40px;
	margin-right: 10px;
}

footer#footer section#legal-notices ul{
	margin: 0px;
	padding: 0px;
	display: block;
}

footer#footer section#legal-notices li{
	padding-left: 15px;
	margin-left: 15px;
	border-left: 1px solid #333;
	float: left;
}

footer#footer section#legal-notices li:first-of-type{
	margin-left:  0px;
}

/*======================================*/
/*			  Shortcode Classes	
/*======================================*/
main#body .blockquote p,
main#body .blockquote{
	font-size: 40px;
	line-height: 50px;
	text-align: center;
	margin: 0px;
}

main#body .blockquote figure{
	padding:  40px 0px;
}

main#body .blockquote-footer{
	color:  inherit;
	text-align: right;
	font-size: 1.5em;
	margin-top: .5em;
	margin-bottom:  0px;
}

main#body .card{
	border-radius: 1.5rem;
	transition: all .25s ease-in;
}

main#body .card i{
	font-size: 55px;
	line-height: 55px;
	padding: 20px 0px 0px;
}

main#body .bg-image,
main#body .rm-bg-image{
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}


/*======================================*/
/*			  General Classes	
/*======================================*/
/* ADA Skip Navigation */
img{
	max-width: 100%;
}

/* Add Transition to Links */
body a{
	text-decoration: none;
	transition: all 0.25s ease-out;
}

body{
	max-width: 100%;
}

body ul.inline{
	margin:  0px;
	padding:  0px;
	list-style: none;
	display:  block;
	overflow: hidden;
}

body ul.inline > li{
	float:  left;
}

body button.btn{
	border-radius: 20px;
	height: 40px;
	padding: 10px 20px;
}

section{
	overflow: hidden;
}

figure{
	margin: 0;
}

main#body h1{
	font-size:  55px;
	line-height: 89px;
}

main#body h2{
	font-size:  43px;
	line-height: 71px;
}

main#body h3{
	font-size:  34px;
	line-height: 58px;
}

main#body h4{
	font-size:  27px;
	line-height: 48px;
}

main#body p{
	font-size:  21px;
	line-height: 40px;
}

/*======================================*/
/*	Helper Class for images	
/*======================================*/
.rounded-images img{
	clear: both;
	margin:  10px 0px;
	border-radius: 15px;
}

/*======================================*/
/*	Animations	
/*======================================*/

/* All Links get bigger on hover */
header#header a:hover,
footer#footer a:hover i,
.btn:hover {
  transform: scale(1.05);
  transition: all .1s ease-in-out;
}

/* Cards expand on hover */
main#body .card:hover{
	transform: scale(1.05);
}