/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 
 
/* =Theme customization starts here
------------------------------------------------------- */

/*** General ***/

@import url('libre_baskerville.css');
@import url('nunito.css');
@import url('poppins.css');

div, p {
	font-family: 'Nunito Regular', sans-serif;
	font-size: 16px;
	line-height: 28px;
}

ul li {
	font-family: 'Nunito Regular', sans-serif;
	font-size: 1.1rem;
	line-height: 1.7rem;
}

h1, h2, h3 {
	font-family: 'Libre Baskerville SemiBold', serif;
}

h4 {
	font-family: 'Poppins Bold', sans-serif;
}

h5 {
	font-family: 'Nunito SemiBold', sans-serif;
}

h6 {
	font-family: 'Poppins Bold', sans-serif;
}

h1 {
	font-size: clamp(42px, 9vw, 60px);
	line-height: clamp(68px, 19vw, 78px);
	text-transform: uppercase;
}

/* h1 title on pages edited in WP block editor */

h1[class*="entry-title"] {
	font-family: 'Poppins SemiBold', sans-serif;
	font-size: clamp(32px, 4vw, 50px);
	line-height: clamp(68px, 19vw, 78px);
	text-transform: none;
}

h2 {
	font-size: clamp(36px, 8vw, 60px);
	line-height: clamp(68px, 15vw, 78px);
	text-transform: uppercase;
}

/* h2 headings on pages edited in WP block editor */

h2[class="wp-block-heading"] {
	font-family: 'Poppins SemiBold', sans-serif;
	font-size: clamp(18px, 2vw, 28px);
	line-height: clamp(28px, 4vw, 40px);
	text-transform: none;
}

h3 {
	font-size: clamp(18px, 2vw, 28px);
	line-height: clamp(28px, 4vw, 40px);
}

/* h3 headings on pages edited in WP block editor */

h3[class="wp-block-heading"] {
	font-family: 'Poppins SemiBold', sans-serif;
	font-size: clamp(16px, 1.7vw, 24px);
	line-height: clamp(28px, 3vw, 40px);
	text-transform: none;
}

h6 {
	font-size: 20px;
	line-height: 50px;
}


/*** Navigation ***/

#main-header {
	box-shadow: none;
	-webkit-box-shadow: none;
}

#main-header.et-fixed-header {
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
}

#et-top-navigation {
	width: 100%;
}

#top-menu-nav {
	width: 100%;
	margin-bottom: 16px;
}

#top-menu {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-evenly;
	
	width: 100%;
}

#top-menu>li>a {
	padding-bottom: 0 !important;
	color: #25303B;
}

#et-top-navigation nav>ul>li>a::after {
	content: '';
	display: block;
	width: 0;
	margin-top: 5px;
	height: 3px;
	background-color: transparent;
	
	transition: background-color .2s linear;
}

#et-top-navigation nav>ul>li>a:hover::after {
    width: 100%;
	background-color: #B72442;
	opacity: 100%;
}

#et-top-navigation nav>ul>li>a:hover {
    opacity: 1;
}

/* Social Media Button - Instagram */

#menu-item-808 {
	margin-top: -5px;
	left: 10%;
}

#menu-item-808 img {
	filter:grayscale(1);
}

#menu-item-808>a:hover::after {
    display: none;
}

#menu-item-808>a:hover>img {
	filter:grayscale(0);
}

/* Search Button */

#et_search_icon::before {
	top: -52px;
	left: -100px;
	-webkit-transform: scaleX(-1);
  	transform: scaleX(-1);
}

#et_search_icon:hover {
	color:  #B72442;
}

/* Book Now Button */

#menu-item-161 {
	margin-top: -14px;
	left: 18%;
	padding-bottom: 6px !important;
}

#menu-item-161>a {
	font-family: 'Poppins Regular', sans-serif;
	color: #fff;
	font-size: 14px !important;
}

/* Tablet optimisation */

@media only screen and (min-width: 980px) and (max-width: 1200px) {
    .et_pb_svg_logo #logo {
        height: 30% !important;
    }
}

/* Mobile Menu */

@media only screen and (max-width: 980px) {
	#top-menu-nav {
		display: none;
	}
	   
	#et_top_search {
        float: right;
	}
}

.mobile_menu_bar.mobile_menu_bar_toggle::before {
	color: #b72442;
}

.et_mobile_menu  {
	border-top: 3px solid #b72442;
}

#mobile_menu #menu-item-161 {
	padding-top: 10px !important;
	margin: 4px -5% 0 -5%;
	border-radius: 0;
}

.sub-menu {
	
}

.sub-menu>li>a {
	
}

#top-menu>li>a:hover {
	
}

#top-menu>li.current-menu-item>a {
	
}

#top-menu>li>a::before, #top-menu>li>a::after {

}


/*** Header ***/



/*** Content ***/

/** Buttons **/

/* The Red Button */

.the_red_button {
	text-decoration: none;
	background-color: #B72442;
	border: 2px solid #B72442;
	border-radius: 3px;
	text-align: left;
	padding: 12px 24px !important;
	font-family: 'Poppins Regular', sans-serif;
	color: #fff;
	font-size: 16px !important;
}

.the_red_button::after {
	content: "";
}

.the_red_button>a {
	color: #fff !important;
	padding-bottom: 0 !important;
}

.et_pb_bg_layout_light.et_pb_button:hover {
	background-color: rgba(183, 36, 66, .7);
	color: #000 !important;
}


/* The Modest Button */

.the_modest_button {
	text-decoration: none;
	background-color: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	text-align: left !important;
	padding: 12px 24px !important;
	color: #B72442 !important;
	font-size: 17px !important;
}

.the_modest_button::after {
	content: "\279D";
	margin-left: .3em !important;
}

/* The Gracious Button */

.the_gracious_button {
	text-decoration: none;
	background-color: #fff !important;
	border: none !important;
	border-radius: 0 !important;
	text-align: left !important;
	padding: 21px 58px 21px 32px!important;
	font-family: 'Nunito Regular', sans-serif;
	color: #25303B !important;
	font-size: 18px !important;
}

.the_gracious_button::after {
	content: "\279D";
	margin-left: .3em !important;
}

.button_semibold {
	font-family: 'Nunito SemiBold', sans-serif;
}

/** Pricing Table **/

.et_pb_pricing_heading::after {
	content: '';
	position: absolute;
	top: 15px;
	left: 17vw;
	width: 15%;
	max-width: 230px;
	overflow: hidden;
	height: 1px;
	background-color: rgba(37, 48, 59, .9);
}

@media only screen and (max-width: 980px) {
	.et_pb_pricing_heading::after {
		display: none;
	}
}

@media only screen and (max-width: 400px) {
	.et_pb_pricing_heading::after {
		display: none;
	}
}


/** Blog Post Integration **/

/* The Bigger Focus Blog */

.fancy_blog_roll .the_big_one article>h4 {
	position: relative;
	z-index: 100;
	margin: -70px 20px 0 20px;
	padding: 30px 30px 0 30px;
	background-color: #fff;
	box-shadow: 0px -10px 7px #396ABF29;
	border-radius: 3px 3px 0 0;
}

.fancy_blog_roll .the_big_one article>p {
	position: relative;
	z-index: 80;
	margin: 0 20px 0 20px;
	padding: 20px 30px;
	background-color: #fff;
	box-shadow: 0px 0px 7px #396ABF29;
	border-radius: 0;
}

.fancy_blog_roll .the_big_one article>div.post-content {
	position: relative;
	z-index: 90;
	margin: 0 20px 0 20px;
	padding: 20px 30px 30px 30px;
	background-color: #fff;
	box-shadow: 0px 7px 7px #396ABF29;
	border-radius: 0 0 3px 3px;
}

/* The Smaller Blog Roll */

.fancy_blog_roll .the_little_ones article>.et_pb_image_container {
	max-width: 250px;
	
}

.fancy_blog_roll .the_little_ones article>.et_pb_image_container img {
	min-height: 190px;
	overflow: hidden;
}

.fancy_blog_roll .the_little_ones article>h4 {
	position: relative;
	z-index: 80;
	max-width: 65%;
	margin: -205px 0 0 190px;
	padding: 24px 24px 0 24px;
	background-color: #fff;
	box-shadow: 0px 0px 7px #396ABF29;
	border-radius: 3px 3px 0 0;
}

.fancy_blog_roll .the_little_ones article>p {
	position: relative;
	z-index: 90;
	max-width: 65%;
	margin: 0 0 0 190px;
	padding: 0 24px;
	background-color: #fff;
	box-shadow: 0px 4px 7px #396ABF29;
	border-radius: 0;
}

.fancy_blog_roll .the_little_ones article>div.post-content {
	position: relative;
	z-index: 100;
	max-width: 65%;
	margin: 0 0 0 190px;
	padding: 0 24px 24px 24px;
	background-color: #fff;
	box-shadow: 0px 4px 7px #396ABF29;
	border-radius: 0 0 3px 3px;
}


/** Forms **/

/* Booking Form */

.wpcf7-not-valid-tip {
	color: #fff;
    font-size: .8em;
    font-weight: normal;
}

.screen-reader-response, .wpcf7-response-output {
	color: #fff;
}

.screen-reader-response {
	display: none;
}

#wpcf7-frm_contact {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-end;
}

#wpcf7-frm_contact>div {
	flex: 1 1 45%;
	margin-right: 5%;
	margin-bottom: 3%;
}

#wpcf7-frm_contact>div.frm_textarea {
	flex: 1 1 100%;
}

#wpcf7-frm_contact>div.frm_checkbox {
	flex: 1 1 100%;
}

#wpcf7-frm_contact>div.frm_submit {
	flex: 0 0 auto;
}

#wpcf7-frm_contact>div.frm_submit input {
	background-color: #fff !important;
	border: none !important;
	border-radius: 0 !important;
	text-align: left !important;
	padding: 21px 32px!important;
	font-family: 'Nunito Regular', sans-serif;
	color: #25303B !important;
	font-size: 18px !important;
	cursor: pointer;
}

span.wpcf7-form-control-wrap {
	margin-right: 30px;
}

#wpcf7-frm_contact input[type="checkbox"] {
	width: auto;
}

#wpcf7-frm_contact input[type="submit"] {
	width: auto;
}


#wpcf7-frm_contact input, #wpcf7-frm_contact textarea, #wpcf7-frm_contact select {
	width: 100%;
    background-color: #eee;
    border-width: 0;
    border-radius: 0;
    color: #999;
    font-size: 14px;
    padding: 16px;
}

#wpcf7-frm_contact label {
	color: #fff;
	padding-bottom: 10px;
}


/* Back To Top Button */

.et_pb_scroll_top.et-pb-icon {
	width: 40px;
	background-color: #B72442;
	box-shadow: 0px 7px 7px rgba(0,0,0,.5);
}

.et_pb_scroll_top.et-pb-icon::before {
	content: '\279D';
	display: inline-block;
	-webkit-transform: rotate(-90deg);
  	transform: rotate(-90deg);
}


/*** Footer ***/

#main-footer>.container {
	padding-top: 100px;
	width: 80%;
	max-width: 2560px;
}

.et_pb_widget {
	float: none;
}
.et_pb_gutters3.et_pb_footer_columns4 .footer-widget>div{
	margin-right: 0 !important;
}

.footer-widget p, .footer-widget td {
	font-size: clamp(16px, .9vw, 20px);
}

.wp-block-table td, .wp-block-table th {
	border: 0 !important;
	line-height: 27px;
	padding: 0 10px 0 0 !important;
}

.et_pb_gutters3.et_pb_footer_columns4 .footer-widget {
	width: auto;
}

.et_pb_gutters3.et_pb_footer_columns4 .footer-widget>div {
	margin-right: 50px;
}

.et_pb_gutters3.et_pb_footer_columns4 .footer-widget .fwidget {
	margin-bottom: 1em !important;
}

#et-footer-nav {
	display: none;
}

:where(.wp-block-columns.is-layout-flex) {
	gap: 1em;
}

.footer-widget>div>figure {
	margin-right: 24px;
}

.footer-widget #block-2 {
	margin-right: 0 !important;
	padding-top: 16px;
}

.footer-widget #block-11 {
	float: left;
	margin-right: 24px;
	min-height: 60px;
}

.footer-widget #block-12 {
	min-width: 200px;
	float: left;
}

.footer-widget #block-13 {
	clear: left;
	float: left;
	margin-bottom: 8px !important;
}

.footer-widget #block-14 {
	min-width: 200px;
	float: left;
	margin-right: 0 !important;	
	margin-bottom: 8px !important;
}

@media only screen and (min-width: 767px) {
	.footer-widget #block-2+figure {
		margin-right: 24px;
	}
	
	.footer-widget #block-13 {
		margin-top: 74px;
	}

	.footer-widget #block-14 {
		margin-top: 74px;
	}
}

.footer-widget #block-15 {
	clear: left;
	float: left;	
}

.footer-widget #block-16 {
	float: left;	
}


/* Footer Bottom Bar */

#footer-bottom {
	min-height: 120px;
	padding-top: 50px;
	background-color: rgba(183,36,66,0.11);
	
}

#footer-bottom>.container {
	width: 80%;
	max-width: 2560px;
}

#footer-bottom #footer-info {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%
}

#footer-bottom a {
	font-family: 'Poppins Regular', sans-serif;
	font-weight: normal;
	font-size: clamp(14px, .9vw, 20px);
	line-height: 27px;
}

#footer-bottom div {
	font-family: 'Poppins Regular', sans-serif;
	font-weight: normal;
	font-size: clamp(14px, .8vw, 20px);
	line-height: 27px;
}

#footer-bottom #footer-info>div:first-child {
	flex: 1 1 80%;
	margin-bottom: 12px;
}

#footer-bottom #footer-info>div:nth-child(2) {
	flex: 1 1 auto;
	margin-right: 40px;
}

#footer-bottom #footer-info>div:nth-child(3) {
	flex: 1 1 auto;
}

#footer-bottom #footer-info>div {
	flex: 1 1 auto;
}


/*** Reset editor styling no default ***/

.et-fb-form__toggle-title>h3 {
	font-family: 'Open Sans', Helvetica, Roboto, Arial, sans-serif;
    font-weight: 400;
    text-transform: none;
    font-size: 20px!important;
    font-style: normal;
    line-height: 1em;
    text-decoration: none;
    letter-spacing: 0;
}

.et-fb-form__toggle-title>h3::before {
	content: '';
	display: none;
}

.et-fb-settings-options ul li {
    font-family: 'Open Sans', Helvetica, Roboto, Arial, sans-serif;
    font-size: 13px;
    line-height: 26px !important;
    font-weight: 600;
}

.et-core-modal-content * {
	font-family: 'Open Sans', Helvetica, Roboto, Arial, sans-serif;
    font-size: 13px !important;
    line-height: 26px !important;
    font-weight: 600;
}

.et-fb-switch-editor-mode {
	height: auto !important;
}

/* Not a mistake! There is .CodeMirror-linE AND .CodeMirror-lineS. */

.CodeMirror-lines {
    font-family: 'Open Sans', Helvetica, Roboto, Arial, sans-serif;
    font-size: 13px;
    line-height: 150%;
    font-weight: 700;
}

.CodeMirror pre.CodeMirror-line {
    font-family: 'Open Sans', Helvetica, Roboto, Arial, sans-serif !important;
    font-size: 13px !important;
	line-height: 20px !important;
}