/*  
Theme Name:		St. Michaels Alnwick
Theme URI: 
Description: 	
Version: 		1.1
Template: 		moretothepicture
@author  		Lee Thompson
@license 		https://www.opensource.org/licenses/gpl-license.php GPL v2.0 (or later)
@link  	 		https://www.leethompson.me/
License: 		GNU General Public License v2.0
License URI: 	https://www.gnu.org/licenses/gpl-2.0.html
*/

	/*
		Brand Green: #54693c
		Dark Olive: #808e7e
		Light Olive: #ced1c5
	*/

	@keyframes stuckMoveDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}
	@keyframes stuckMoveUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}
	@keyframes stuckFadeIn{0%{opacity:0}to{opacity:1}}
	@keyframes bounce {from {transform: translateY(0px)}to {transform: translateY(-15px)}}
	
	#content {min-height: 100px;}
	#footer {min-height: 300px;}
	
	*:focus {outline: none;}
	::-moz-selection, ::selection {color: #fff; background: #333;}
	html, body, select, option, input, textarea {font-family: Lato; font-weight: 400; font-size: 18px; color: #333;}
	body {background: #54693c; }
	svg {display: block;}
	select {display: block; padding: 10px 36px 10px 5px; border: 1px solid rgba(0,0,0,.1); width: 100%; max-width: 100%; margin: 0 0 14px; appearance: none; background-position: 100% 0; background-repeat: no-repeat; outline: none;}
	select::-ms-expand{display: none;}
	select option {outline: none; border: none !important;}
	input, select, textarea {border: 1px solid rgb(0, 0, 0,.1); width: 100%;}
	.entry-content input[type=text], .entry-content input[type=number], .entry-content input[type=email], .entry-content input[type=tel], .entry-content select {padding: 0 7px 0 14px; height: 42px; border: 1px solid rgba(0,0,0,.1); width: 100%;}
	.entry-content textarea {padding: 7px 7px 7px 14px; background: #fff; width: 100%;}
	input[type=submit] {width: 100%; text-align: center; padding: 7px 14px; height: auto; background: #54693c; color: #fff; text-transform: uppercase;}
	#footer input[type="submit"] {background: #fff; color: #54693c;}
	input[type=submit]:hover {opacity: .6;}
	input.qty {max-width: 75px;}
	legend {margin: 20px 0 10px;}	
	button.button {padding: 10px;}
	button.button:hover {cursor: pointer}
	.abs {position: absolute; top: 0; bottom: 0; right: 0; left: 0;}
	.rel {position: relative;}
	img.object {object-fit: cover; object-position: 50% 50%; width: 100%; height: 100%;}
	img[loading=lazy], img[loading=eager] {opacity: 0; transition: opacity 1s;}
	img[loading=lazy].loaded, img[loading=eager].loaded, html.no-js img[loading=lazy], html.no-js img[loading=eager] {opacity: 1;}
	.entry-content ul li {position: relative; background: none;}
	.entry-content ul li:not(.blocks-gallery-item)::before {content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='7' height='7' viewBox='-1 -1 2 2'><circle fill='%2354693c' r='1'/></svg>"); display: block; position: absolute; top: -3px; left: 4px;}
	#footer .entry-content ul li:not(.blocks-gallery-item)::before {content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='7' height='7' viewBox='-1 -1 2 2'><circle fill='%23ffffff' r='1'/></svg>");}
	.border {border: 1px solid #666666;}
	.border.top {border-width: 1px 0 0 0;}
	.border.bottom {border-width: 0 0 1px 0;}
	.max_read_p,.the_content p  {max-width: 768px;}
	.max_read {max-width: 580px;}
	.sticky {position: sticky;}
	.sticky.top {top: 64px;}
	.wp-block-column + .wp-block-column .sticky.top {top: 140px;}
	.sticky.bottom {bottom: 0;}
	.padd-right {padding-right: 20px;}
	.padd-left {padding-left: 20px;}
	.block {display: block;}
	.text-align-right {text-align: right;}
	.text-align-left {text-align: left;}
	.text-align-center {text-align: center;}
	.hidden {display: none;}
	.margin-bottom {margin-bottom: 20px;}
	
/* links */
	
	a:link, a:visited, a:active, a:hover {text-decoration: none;}
	a, .fake_link {color: #54693c;}
	a:hover, .fake_link:hover {cursor: pointer; opacity: .6}
	.entry-content a, .fake_link {font-weight: 700; text-decoration: underline;}
	.entry-content a:hover, .fake_link:hover {text-decoration: none;}
	
/* fonts */

	strong,b {font-family: "Lato"; font-weight: 700;}
	em {font-style: italic;}
	h1,h2,h2 a,h3,.countdown,h4,h5,h6 {font-weight: 400; line-height: 1.3; color: #54693c; font-family: "baskerville-display-pt"; font-style: normal;}
	h1 strong,h2 strong,h2 strong a,h3 strong{font-weight: 900; font-family: "baskerville-poster-pt";}
	h4,h5,h6{font-family: "Lato", sans-serif; font-weight: 700;}
	h1,h2,h2 a {font-size: 48px; margin: 0 0 20px; font-weight: 400;}
	h1 {margin-bottom: 30px; line-height: 45px;}
	h2 {font-size: 40px; line-height: 40px; margin-bottom: 10px;}
	.page_gallery  h2 {margin-bottom: 5px;}
	h2 a {margin-bottom: 0;}
	h3, p.has-large-font-size, .lead {font-size: 33px;}
	h4 {font-size: 28px; margin-bottom: 2px;}
	h5, p.has-medium-font-size {font-size: 23px;}
	h5.wp-block-heading {margin: 28px 0 2px;}
	h6{font-size: 23px; margin: 28px 0 14px;}
	p.has-x-large-font-size {font-size: 20px;}
	span.smaller {font-size: 14px;}
	.nomargin {margin: 0 !important;}
	.entry-content h3 {color: #54693c;}
	.h3_wrap {margin: 0 auto 30px; max-width: 470px;}
	.baskerville-display-pt-m2tp {font-family: "baskerville-display-pt", serif; font-display: optional; font-weight: 400; font-style: normal;}

/* structure */
	
	#wrap, .is_single.entry-content {overflow: clip;}
	.inner_wrap, .small_menu  {max-width: 1280px; margin: 0 auto; padding: 0 20px; position: relative; height: 100%;}
	.hentry.is_single, .share_links_container, .post-nav {max-width: 100%; margin: auto; padding: 40px 0;}
	body.page-template-template-wider-php  div:is(.hentry.is_single, .share_links_container, .post-nav )  {max-width: 1200px;}
	.text_wrap, .wrapped {max-width: 782px; margin: auto;}
	#header .inner_wrap, #nav .inner_wrap {padding: 0; max-width: 100%;}
	#content_wrap {background-color: #fff; padding: 1px 0;}
	body.loop #content_wrap {padding: 30px 0; background-color: rgba(255,255,255,.9);}
	.bg {background-image: url('lib/img/body_bg.png'); background-repeat: no-repeat; background-position: left center; min-height: 700px;}
	.bg.center_aligned {background-position: center center;}
	.bg.right_aligned {background-position: right center;}
	.white_bg {background-color: #fff;}
	.dark_back {background-color: #778b76;}
	.dark_back .bg {background-image: url('lib/img/body_bg_dark1.png'); }
	.dark_back * {color: #fff !important;}
	.m2tp_logo {max-width: 200px;}
	.explore_church {padding: 40px 20px 30px;}
	.walkthrough {max-height: 600px; overflow: hidden; position: relative; margin: 30px auto 0;}
	.walkthrough_inner {padding-top: 56.2%;}
	.click_to_work {background-color: rgba(0,0,0,.5); color: #fff; font-weight: 700; display: flex; align-items: center; justify-content: center;}
	.wp-block-table.is-style-stripes {border-bottom: none;}
	
	body.page-id-20 .wp-block-table table {table-layout: fixed}
	body.page-id-20 .wp-block-table table td {padding: 5px; overflow: hidden}
	body.page-id-20 .wp-block-table table td:nth-of-type(1){width: 100px;}
	
	
/* columns and flex */
	
	.flexed {display: flex; flex-wrap: wrap; margin: 0 -15px;}
	.flexed.no_margin {margin: 0;}
	.flex_item {flex: 1; padding: 0 15px; margin-bottom: 30px;}
	.flex_item.flex-20 {max-width: 20%; min-width: 20%;}
	.flex_item.flex-33 {max-width: 33.333%; min-width: 33.333%;}
	.flex_item.flex-40 {max-width: 40%; min-width: 40%;}
	.flex_item.flex-50 {max-width: 50%; min-width: 50%;}
	.flex_item.flex-60 {max-width: 60%; min-width: 60%;}
	.flex_item.flex-66 {max-width: 66.666%; min-width: 66.666%;}
	.flex_item.flex-75 {max-width: 75%; min-width: 75%;}
	.flex_item.flex-100 {max-width: 100%; min-width: 100%;}
	.flex_item_inner {position: relative;}
	.flexed.topped {align-items: start;}
	
	.person_block.flex_item {max-width: 33.333%; min-width: 33.333%}
	
	.flex_wrap > .site_link {flex: 100%; margin: 0 7px 14px; display: block !important;}
	.post_wrap {margin: 0 -7px;}
	.flex_wrap, .index_post_wrap {display: flex; flex-wrap: wrap;}
	.flex_column {display: flex; flex-direction: column;}
	.article_item {margin: 0 0 14px; padding: 0 7px; position: relative;}
	.article_item:hover  .index_loop_header {opacity: .6;}
	.slide-cell .article_item {margin: 0; padding: 0; position: absolute; top: 0; bottom: 0; left: 0; right: 0;}
	.flex_wrap .article_item {flex: 1; min-width: 33.333%; max-width: 33.333%;}
	.flex_wrap.reg_events .article_item {min-width: 20%; max-width: 100%;}
	.more_posts_loop .flex_wrap .article_item {min-width: 50%; max-width: 100%;}
	.post_wrap .article_item.card {min-width: 33.333%; max-width: 100%;}
	.post_wrap .article_item.card .responder {display: block;}
	.post_wrap .article_item.card:nth-child(1) {max-height: 600px; min-height: 400px;}	
	.flex_wrap .article_item.card:nth-child(n+1) {min-width: 50%;}
	.flex_wrap .article_item.card:nth-child(n+2) {min-width: 33.333%;}
	.flex_wrap .article_item.card:nth-child(n+5) {min-width: 25%;}
	.fake_link:hover {cursor: pointer;}
	.featured_post .article_hover_cell h2, .featured_post .article_hover_cell .address {margin: 0 60px 7px 0;}
	.article_inner, .filter_wrap {height: 100%; position: relative; overflow: hidden; border: 1px solid #ced1c5; background-color: #fff;}
	.filter_wrap {padding: 14px; margin-bottom: 14px;}
	.the_filters {padding: 14px 0;}
	.the_filters label {margin: 0 7px 0 0;}
	.cat_filter {display: inline-block; vertical-align: top; margin: 0 14px 14px 0;}
	.slide-cell .article_inner {border: 0; border-radius: 0;}
	.article_inner.fake_link:hover {box-shadow: 0 0 14px rgba(0, 0, 0, .3);}
	.article_hover {padding: 0 14px;}
	.std .article_image {position: relative; margin: 0 0 14px;}
	.std .article_hover {padding-top: 0;}
	.std .article_hover h2 {margin-bottom: 10px;}
	.card .article_hover {background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 70%, rgba(0, 0, 0, 0.8) 100%); color: #fff; position: absolute; bottom: 0; left: 0; right: 0; padding: 14px 28px;}
	.card .article_hover .the_exceprt {max-width: 768px;}
	.the_cats {position: relative; padding: 14px 14px 0; z-index: 9;}
	.card .the_cats {position: absolute; top: 0; right: 0; left: 0; overflow: hidden; text-align: right; margin: -7px;}
	
	.responder, .landscape .responder {width: 100%; height: auto; padding-top: 76%;}
	.portrait .responder, .responder.portrait {padding-top: 132%;}
	.square .responder, .responder.square {padding-top: 100%;}
	
	.margin_adjust {overflow: hidden; margin: 0 -30px -30px 0;}
	.margin_adjust.twenty {margin: 0 -20px 0 0;}
	.col_wrap {margin: 0 -30px 0 0; overflow: hidden;}
	.col {width: 100%; display: inline-block; vertical-align: top;}
	.col_inner {margin: 0 30px 30px 0; position: relative; padding: 1px; overflow: hidden;}
	.col:last-of-type .col_inner {border: none;}
	.col5 .col {width: 20%;}	
	.col4 .col {width: 25%;}	
	.col3 .col {width: 33.333%;}	
	.col2 .col, .col-2 {width: 50%;}	
	.col-60 {width: 60%;}
	.col-40 {width: 40%;}

/*  header */

	.site_banner {height: 32px; background-color: #54693c; color: #fff; text-align: center; overflow: hidden;}
	.site_banner a {color: #fff; font-weight: 700; display: block;}
	.site_banner .flickity-viewport {position: relative;}
	.banner_item {width: 100%; margin: auto; display: none; position: relative; padding-top: 5px; padding-bottom: 5px; }
	.flickity-enabled .banner_item, .single_slide .banner_item {display: block;}
	
	.header_wrap_inner {display: flex;}
	#main_nav {height: 100%;}
	#header_wrap {background-color: #fff;}
	#header_fixed {border-bottom: 1px solid #c5c4c4;}
	#header_wrap:after {display: block; height: 12px; content: ''; width: 100%; background: linear-gradient(to bottom, #919191, #fff);}
	#header_wrap.no_after:after, #header_wrap.moving:after {display: none; height: 0; background: none;} 
	#header_fixed {position: relative; top: 0; left: 0; right: 0; z-index: 999; animation: stuckFadeIn 1s; min-width: 320px; -webkit-backface-visibility: hidden;}
	#header_wrap.moving #header_fixed {position: fixed; background: #fff; animation: stuckMoveDown .6s;}
	#header_wrap.moving .search_icon, #header_wrap.moving .social_icons, #header_wrap.moving .main_logo  {display: none;}
	.small_logo {display: none;}
	#header_wrap.moving .small_logo  {display: inline-block;}
	body.admin-bar #header_wrap.moving  #header_fixed, body.open_search.admin-bar .search_field {top: 32px;}
	.header_wrap_inner.inner_wrap {padding: 14px 20px;}
	#header_wrap.moving .header_wrap_inner.inner_wrap {padding: 16px 20px;}
	.m2tp_logo {margin: auto;}
	.m2tp_logo a {display: block; margin: auto;}
	.m2tp_logo svg {width: 160px;}
	.m2tp_logo svg path {fill: #54693c;}
	.ondark .m2tp_logo svg path {fill: #fff;}
	#header_wrap.moving .m2tp_logo svg path {fill: #54693c;}
	
	.searchform_wrap {padding: 10px 0 10px 10px;}
	
	/* nav */
	
	.header_item, ul.primary_menu li a, .small_menu_page_title_text, ul.small_menu li a {color: #54693c;}
	.contact_strip a, .header_item_flip, ul.primary_menu a:hover, ul.primary_menu li.current-menu-item > a, ul.primary_menu li.current-menu-ancestor > a, 
	ul.primary_menu li.current-menu-ancestor > ul.sub-menu li.current-menu-ancestor > a, ul.primary_menu li.current_page_parent > a, ul.small_menu li a:hover, 
	ul.small_menu li.current_page_item > a, ul.small_menu li.current-menu-item > a, ul.small_menu li.current-menu-ancestor > a, ul.small_menu li.current_page_parent > a, 
	ul.small_menu li.current-menu-parent > a {color: #808e7e; opacity: .6;}
	ul.primary_menu li.menu-item-has-children ul a, .contact_strip a:hover {color: #54693c;}
	ul.primary_menu li.menu-item-has-children ul a:hover {color: #808e7e; opacity: .6;}
	ul.primary_menu li.menu-item-has-children.current-menu-item > a, 
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul > a{color: #54693c;}
	ul.primary_menu li.menu-item-has-children.current-menu-item > a, 
	ul.primary_menu li.current-product-ancestor > a {color: #808e7e; opacity: .6;}
	ul.primary_menu li.menu-item-has-children.current-menu-item ul > a,
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul > a {color: #54693c;}
	ul.primary_menu li.menu-item-has-children.current-menu-item ul ul > a {color: #808e7e; opacity: .6;}
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul li:hover ul > a {color: #808e7e; opacity: .6;}
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul li:hover a:hover {color: #808e7e; opacity: .6;}
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul li.current-menu-item ul a {color: #54693c;}
	ul.primary_menu li.menu-item-has-children.current-menu-item ul a:hover, ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul a:hover, 
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul li.current-menu-item ul li.current-menu-item a, ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul li.current-menu-item > a, 
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor ul li.current-menu-item > a{color: #808e7e; opacity: .6;}
	ul.primary_menu li.menu-item-has-children > ul.sub-menu {background: #ced1c5; border: 1px solid #fff;}

	#nav {width: 100%;}
	
	ul.primary_menu {display: flex; position: absolute; bottom: -25px; right: -20px; text-align: center;}
	ul.primary_menu > li {position: relative; margin: auto; padding-bottom: 25px;}
	ul.primary_menu li:hover {z-index: 99999;}
	ul.primary_menu > li > a {padding: 0 14px; border-left: 1px solid #808e7e; width: 140px; max-width: 140px; height: 34px; font-size: 20px; line-height: 20px; display: flex; align-items: center; justify-content: center;}
	ul.primary_menu > li:first-of-type a {border: none;}
	ul.primary_menu ul.sub-menu {width: 200px;}
	ul.primary_menu li.menu-item-has-children > ul.sub-menu {display: none; position: absolute; left: 0; margin-left: -25px; padding: 20px 0 10px; top: 49px; z-index: 9999; border: none;}
	ul.primary_menu > li.menu-item-has-children > ul.sub-menu:before  {position: absolute; top: 0; left: 0; right: 0; height: 12px; background: linear-gradient(to bottom, #919191, #ced1c5); content: ''; display: block;}	
	ul.primary_menu li.menu-item-has-children > ul.sub-menu ul.sub-menu {right: 100%; top: -4px; padding-top: 10px; left: auto;}
	ul.primary_menu li.menu-item-has-children:hover > ul.sub-menu {display: block;}
	ul.primary_menu li.menu-item-has-children > ul.sub-menu a {font-size: 18px; display: block; padding: 0 10px; margin: 0 0 10px;}
	ul.primary_menu li.menu-item-has-children > ul.sub-menu > li, ul.primary_menu li.menu-item-has-children > ul.sub-menu li.menu-item-has-children:hover > li {padding: 0; display: block; position: relative;}	
	
	.search_icon, .basket_icon, .header_block.socials {display: flex; position: absolute; top: 0; left: auto;}
	.search_icon:hover, .basket_icon:hover {cursor: pointer;}
	.basket_icon {right: 80px;}
	.search_icon {right: 0;}
	.header_block.socials {right: 42px;}
	.small_menu_button {display: none; position: absolute; bottom: 0; right: 0;}	
	.small_menu_page_title_text {display: inline-block; vertical-align: middle; font-size: 12px;}
	.small_menu_icon svg {stroke: #54693c;}
	.ondark .small_menu_icon svg {stroke: #fff;}
	.moving .small_menu_icon svg {stroke: #54693c;}
	.header_icon {margin-left: 20px;}
	.header_icon svg {fill: #54693c;}
	.small_menu_icon {display: inline-block; vertical-align: bottom; margin-left: 20px; width: 29px; height: 29px; position: relative; top: 2px;}
	.search_icon .small_menu_icon, .basket_icon .small_menu_icon, .header_icon {width: 22px; display: block;}
	.header_icon {width: 24px;}
	.small_menu_button:hover {cursor: pointer;}
	
	.menu_wrap {transform: translate(0,-100%); transition: transform .5s; background: #ced1c5; display: block; position: fixed; top: 0; left: 0; right: 0; bottom: auto; z-index: 999999; padding: 60px 0 20px; box-shadow: -3px 0px 5px 0px rgba(0,0,0,0.15); width: 100%;}
	div.search_field {background: #fff;border-bottom: 1px solid rgba(0,0,0,.1); transform: translate(0,-100%); transition: transform .5s; height: 64px; position: fixed; top: 0; left: 0; right: 0; bottom: auto; z-index: 999999; }
	.search-field.search-input.s {border: none; background: #d7d6d7; padding: 10px 100px 10px 14px;}
	.search_field input{height: 44px;}
	.search_field .search-submit {position: absolute; right: 20px; width: 88px; height: 44px; font-size: 15px;}
	body.menu_open .menu_wrap, body.open_search .search_field {transform: translate(0,0);}
	.inner_menu {max-height: 90vh; overflow: auto; position: relative;}
	#menu_close, #woo_wish_list {z-index: 99998; background: rgba(0,0,0,.4)}
	.menu_wrap .socials {margin-bottom: 30px;}
	.menu_wrap .socials svg{width: 30px; height: 30px; margin-right: 10px;}
	.menu_wrap .socials .header_icon{display: inline-block; vertical-align: top;}
	
	ul.small_menu {z-index: 102; position: relative; display: block; text-align: right; padding: 0;}
	ul.small_menu ul.sub-menu {display: block; opacity: 0; height: 0; position: static; overflow: hidden; padding: 0; margin: 0 auto; width: 100%;}
	ul.small_menu ul.show_sub.sub-menu {height: auto; opacity: 1; padding: 0 10px 0 0;}
	ul.small_menu li {padding: 3px 40px 0 20px; display: block; margin-bottom: 0; text-align: right;}
	ul.small_menu li.social_wrap, ul.small_menu ul li {margin-right: 0;}
	ul.small_menu span.hidden_mobile_menu {display: none;}
	ul.small_menu li ul li {padding-right: 0;}
	ul.small_menu li ul > li.menu-item-has-children{padding-right: 40px;}
	ul.small_menu a {position: relative; padding: 10px 0 14px; text-align: right; font-size: 16px; background: none; width: auto; color: #000; display: inline-block;}
	ul.small_menu ul.sub-menu li {line-height: 20px; margin-bottom: 0;}
	ul.small_menu ul.sub-menu a {font-size: 15px; padding: 6px 0;}
	
	.closer path {fill: #fff;}
	.closer:hover svg {opacity: .6}
	.top_close_strip, .quickview_close {height: 40px; z-index: 999999; position: fixed; top: 0; left: 0; right: 0; background: #54693c;}
	.closer svg{position: absolute; width: 17px; height: 17px; top: 50%; transform: translate(0, -50%); right: 20px; left: auto;}
	.closer:hover {cursor: pointer;}
	
/* flickity */

	#m2tp_internal_slideshow .big_slideshow_img {height: 100%; width: 100%; position: absolute;}
	#m2tp_internal_slideshow .big_slideshow_img .slide_meta {display: none;}
	#m2tp_internal_slideshow .big_slideshow_img.is-selected .slide_meta {display: block;}
	#m2tp_internal_slideshow .big_slideshow_img .slideshow_img_wrap img {display: none; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; width: auto; max-height: 100%;}
	#m2tp_internal_slideshow .big_slideshow_img.is-selected .slideshow_img_wrap img {display: inline-block;}
	#m2tp_internal_slideshow .slide_meta {top: -50px;}
	
	.flickity-enabled:focus{outline:0}
	.flickity-viewport {position: relative;}
	.flickity-viewport, .product-carousel, .slide-carousel, .no-carousel {width: 100%; height: 100%; overflow: hidden;}
	.flickity-slider{position:absolute;width:100%;height:100%}	
	.flickity-enabled.is-draggable{-webkit-tap-highlight-color:transparent;tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
	.flickity-enabled.is-draggable .flickity-viewport{cursor:move;cursor:-webkit-grab;cursor:grab}
	.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{cursor:-webkit-grabbing;cursor:grabbing}
	button.flickity-prev-next-button {position:absolute; margin: 0; top: 10px; width:20px;height:20px;border:none;cursor:pointer; z-index: 999999; background: none;}
	#product_images button.flickity-prev-next-button {opacity: 0 ; transition: opacity .5s;}
	#product_images:hover button.flickity-prev-next-button {opacity: 1; }
	button.flickity-prev-next-button:hover {background: none !important;}
	.product_loop_wrap .flickity-prev-next-button {display: none;}
	.product_loop_wrap .product-carousel:hover .flickity-prev-next-button {display: block;}
	.flickity-prev-next-button:disabled{opacity:0;cursor:auto}
	.flickity-prev-next-button svg{fill: #fff;}
	#product_images .flickity-prev-next-button svg{fill: #666;}
	.flickity-page-dots{position:absolute;width:100%;bottom:0;padding:14px;margin:0;list-style:none;text-align:center; display: none;}
	.flickity-rtl .flickity-page-dots{direction:rtl}
	.flickity-page-dots .dot{display:inline-block; width:18px; height:18px; margin: 0 7px; cursor:pointer; background: #fff; border-radius: 50%;}
	.flickity-page-dots .dot.is-selected {background: #000;}
	.prod-cell, .slide-cell {width: 100%; height: 100%;}
	.slides .slide-cell {display: none;}
	.slides .flickity-enabled .slide-cell {display: block;}
	.prod-cell {height: auto;}
	.flickity-prev-next-button.previous {left: 10px;}
	.flickity-prev-next-button.next {right: 10px;}
	.loop_img.no_image {position: absolute; top: 0; left: 0; bottom: 0; right: 0;}
	.is-hidden {display: none;}
	html.no-js .is-hidden {display: block;}
	#meta_strip_top:hover, .gallery-item:hover {cursor: pointer;}
	
	.responder.square {padding-top: 100%;}
	.responder.landscape {padding-top: 56%;}
	.responder.portrait {padding-top: 150%;}

/* banners */

	#banner {height: auto; margin: 0 auto 30px; width: 100%; max-width: 1240px; position: relative; text-align: center; z-index: 100; overflow: hidden; background: #fff;}
	#banner.banner_image:is(.fullwidth) {width: 100%; max-width: none; height: 70vh; margin-top: -11px;}
	#banner.banner_image:is(.slides.fullheight,.fullheight) {width: 100%; max-width: none; padding-top: 83vh; height: 100%; margin-top: -11px;}
	#banner.banner_image:is(.slides,.fullwidth,.fullheight) img {position: absolute; object-fit: cover;}
	#banner.banner_image:is(.slides,.fullwidth,.fullheight) img.responder_img {display: none;}
	#banner iframe {position: absolute; top: 0; bottom: 0; right: 0; left: 0;}
	#banner iframe {position: absolute; width: 100%; height: 100%;}
	#banner .inner_wrap {height: 100%; padding: 0; position: absolute; top: 0; bottom: 0; left: 0; right: 0; text-align: left;}
	#banner .banner_title {font-family: "baskerville-display-pt", serif; font-size: 50px; line-height: 60px; margin-bottom: 0;}
	#banner.fullheight button.flickity-prev-next-button {top: 32px;}
	.maxwidthtxtwrap {margin: 0 auto; color: #fff; position: absolute; left: 10%; word-wrap: break-word; overflow: hidden; font-size: 15px; line-height: 21px; padding-right: 20px;}
	.maxwidthtxtwrap .entry-content {max-width: 768px; font-weight: 500; font-size: 19px; line-height: 24px;}
	html.no-js div.banner_txt {visibility: visible;}
	#banner a {z-index: 10; position: relative; color: #fff;}
	#banner a:hover {opacity: .7;}
	.page_down {position: absolute; bottom: 10%; left: 0; right: 0; height: auto; cursor: pointer; -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); animation: bounce 4 1s}
	.page_down_1 {position: absolute; left: 50%; width: 20px; height: 20px; margin: 0 0 0 -10px; border: 2px solid #fff; border-width: 0 2px 2px 0; -moz-transform: rotate(45deg) translateZ(1px); -ms-transform: rotate(45deg) translateZ(1px); -webkit-transform: rotate(45deg) translateZ(1px); transform: rotate(45deg) translateZ(1px);}
	/*.page_down_1::before {content: ''; position: absolute; left: 50%; top: 10px; width: 16px; height: 16px; margin: -11px 0 0 -10px; border: 2px solid #fff; border-width: 0 2px 2px 0;}	*/
	.hover_opacity{position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgb(32,32,32); opacity: 0;}
	#banner .youtube_wrap_inner {position: absolute; top: 0; bottom: 0; left: 0; right: 0;}
	#banner .youtube_wrap .embed_wrap {position: absolute; top: 0; bottom: 0; left: 0; right: 0;}

/* loops */
	
	/* meet the team */
	
	.meet_the_team.flexed {align-items: start; justify-content: center;}
	.case_hover {position: absolute; bottom: 0; left: 0; right: 0; padding: 20px;}
	.case_hover *{color: #fff;}
	.person_wrap {padding-top: 120%; position: relative;}
	.case_text  {font-size: 18px;}
	.case_text h2{font-size: 30px; line-height: 32px; margin-bottom: 2px;}
	.mask{background: linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%); top: -25%;}
	.people_extra_text  {padding: 20px; background: #fff; border: 1px solid rgba(0,0,0,.1);}
	.people_term {font-size: 14px;}
	
	/* search */
	/* children shortcode 	*/
	
	.child_pages.post_wrap {margin: 0 -10px;}
	.child_pages.post_wrap {margin-bottom: 30px;}
	.child_pages.flex_wrap {display: flex; flex-wrap: wrap; justify-items: center;}
	.child_pages .page_gallery {margin: 0 0 20px; padding: 0 10px; position: relative;}
	.child_pages.flex_wrap .page_gallery {-ms-flex: 1 0 50%; flex: 1 0 50%; max-width: 50%;}
	.child_pages.flex_wrap .page_gallery.col-lg-6 {-ms-flex: 1 0 33.333%; flex: 1 0 33.333%; max-width: 33.333%;}
	.child_pages.flex_wrap .page_gallery.blocked-4 {ms-flex: 1 0 50%; flex: 1 0 50%; max-width: 50%;}
	.child_pages.flex_wrap .page_gallery.blocked-3 {ms-flex: 1 0 33.3333%; flex: 1 0 33.3333%; max-width: 33.333%;}
	.child_pages .case_inner {min-height: 380px; height: 100%; position: relative; background: #fff; border: 1px solid #e9e9e9; border-radius: 4px; overflow: hidden;}
	.child_pages .case_inner:hover {box-shadow: 0 0 20px rgba(0, 0, 0, .3);}
	.child_pages .responder {padding-top: 36%;}
	.child_pages .case_hover {padding: 0 20px;}
	.child_pages .std  .case_image {padding-top: 54%; position: relative;}
	.child_pages .std .case_hover {padding-top: 0;}
	.child_pages .card .case_hover {background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 70%, rgba(0, 0, 0, 0.8) 100%); color: #fff; position: absolute; bottom: 0; left: 0; right: 0; padding: 25px 25px 10px;}
	.child_pages .case_inner .address  {font-family: 'txt_medium';}
	.child_pages .the_cats {position: relative; padding: 20px 20px 0; z-index: 9;}
	.child_pages .card .the_cats {position: absolute; top: 0; right: 0; left: 0; overflow: hidden; text-align: right; margin: -7px;}
	.child_pages .entry-date {font-size: 12px; margin: 0 0 7px;}
	.child_pages .event.entry-date span{font-family: 'txt_medium'; line-height: 1.4;}
	.child_pages .case_hover .the_exceprt {margin: 10px 0;}
	

	/* blog */

/* PDF plugin */

	.pdfemb-viewer {max-width: 100%; overflow: hidden; background-color: transparent !important; border: none !important;}
	
/* chat */
	
	#chat_wrap {position: fixed; bottom: 0; right: 0; left: auto; font-size: 0; text-align: right; z-index: 99; padding: 0 20px;}
	.chat_body {font-size: 12px; padding: 14px;}
	.chat_body textarea {height: 70px;}
	#chat_wrap svg {width: 20px;}
	#chat_wrap svg {fill: #fff;}
	#chat_wrap:hover svg {fill: #fff;}
	#chat_wrap .close svg {fill: #fff;}
	.chat_closed {padding: 6px; background: #54693c; border-radius: 50%; margin: 0 0 20px; height: 31px; width: 31px; line-height: 31px; color: #fff; text-align: left; overflow: hidden; display: inline-block; vertical-align: bottom; text-transform: uppercase; font-size: 16px; line-height: 40px;}
	.chat_closed:hover {opacity: .8; cursor: pointer;}
	.chat_closed > span {display: inline-block; vertical-align: top; }
	.chat_closed span.chat_txt {padding: 0 17px 0 0;}
	.chat_open {background: #fff; height: 430px; width: 320px; max-height: 0; overflow: hidden; transition: max-height 1s; text-align: left; position: relative; box-shadow: 0 -5px 50px 0 rgba(0, 0, 0, .2); margin: 0 0 0 auto;}
	.chat_open.show {max-height: 500px;}
	.chat_open .chat_header {background: #54693c; color: #fff; line-height: 20px; padding: 10px; font-size: 15px; text-transform: uppercase;}
	.chat_open .chat_header .close {width: 20px; height: 20px; position: absolute; right: 10px; top: 10px;}
	.chat_open .chat_header:hover {opacity: .9; cursor: pointer;}
	.chat_open .chat_body {height: 390px; overflow-x: hidden; overflow-y: auto;}

/* brief history */

	.brief_history {padding: 50px 0;}
	.brief_history .text_wrap > h2 {margin-bottom: 30px;}
	.brief_history h3 {font-family: "gryphius-mvb",serif; font-variant: all-small-caps; font-size: 34px; line-height: 40px; letter-spacing: 4px;}
	.brief_history h3 span {display: inline-block;}
	.brief_history h3 span::first-letter {font-size: 50px;}
	.brief_history .history_text  {font-size: 18px;}
	.brief_history .img_wrap {height: auto; margin: 20px 0; background: url('lib/img/history_bg.png'); background-repeat: no-repeat; background-position: 40px top; padding-left: 50px; text-align: center;}
	.brief_history .img_wrap img {max-width: 200px;}
	.brief_history .history_item:last-of-type .img_wrap {background: none;}
	
/* home page */

	.vis_menu {padding: 130px 0 100px;}
	.vis_menu h2{font-size: 40px;}
	.vis_menu_wrap {padding-top: 100%;}
	.vis_menu .flex_item:hover {opacity: .6;}
	
/* blog singles  */
	
/* FAQ's */

	.faq_wrap {overflow: hidden; margin-bottom: 30px;}
	.more_text {border: 1px solid rgba(0,0,0,.1); border-width: 0 1px 1px 1px; padding: 14px 34px 14px 14px; position: relative;}
	.more_text:first-of-type {border-top-width: 1px;}
	.more_text .answer, .more_text .more_or_less .less {display: none;}
	.more_text .question {font-size: 18px;}
	.more_text .answer {margin-top: 20px;}
	.more_text .more_or_less {position: absolute; top: 14px; right: 20px; width: 20px; height: 20px;}
	.more_text .more_or_less:hover {cursor: pointer; opacity: .6;}
	.more_text .more_or_less .more {margin-left: -7px;}
	.more_text .more_or_less .page_down_1 {width: 15px; height: 15px; border-color: #666;}

/* contact form */

	.wpcf7-form p {display: block; vertical-align: top;  margin: 0 0 14px;}
	.wpcf7-form p:empty {display: none;}
	.wpcf7-form > p:last-of-type, .wpcf7-form p.xyz {width: 100%;}
	.wpcf7-form p.halfed {width: 50%;}
	.wpcf7-form p.halfed input {text-align: left;}
	#error404-s {margin-bottom: 20px;}
	#wrap .wpcf7-form input::placeholder, #wrap .wpcf7-form .wpcf7-select, #wrap .wpcf7-form .wpcf7-select option:first-child, #wrap .wpcf7-form textarea::placeholder {color: #000; opacity: .7;}
	div.wpcf7-response-output {padding: 10px 5px; color: #fff; clear: both;border: none; margin: 0 14px 14px 0; text-align: center; background: #000;}
	.init div.wpcf7-response-output {display: none;}
	div.wpcf7-validation-errors{background: #000;}
	.wpcf7 .wpcf7-not-valid {border: 3px solid red;}
	.wpcf7 .wpcf7-not-valid.g-recaptcha {border: 0 !important;}
	.entry-content input[type="checkbox"], .entry-content input[type="radio"], span.wpcf7-list-item-label {padding: 0; margin: 0;}
	.wpcf7-response-output {padding: 14px;}
	span.wpcf7-not-valid-tip {display: none;}
	.wpcf7-display-none, .screen-reader-response {display: none;}
	
/* footer */

	#footer {color: #fff; padding: 80px 0 60px; font-size: 16px; background: #54693c; color: #fff;}
	#footer * {color: #fff;}
	#footer h2 {font-size: 23px;}
	#footer .widgettitle {margin-bottom: 20px;}
	.footer_txt  {margin-bottom: 30px;}
	#footer .col4 > .footer_txt { font-size: 12px; }
	#footer .col4 .col {width: 25%;}
	.widget_block {margin-bottom: 40px;}
	.footer_block.socials {margin-top: -15px;}
	#footer img {max-width: 200px;}
	#footer svg {fill: #fff;}
	.footer_icon {display: inline-block; vertical-align: top; margin-right: 20px; width: 30px;}
	.copyright {font-size: 11px; color: #777; padding-bottom: 30px;}
	
	#FOOTER .entry-content ul li:not(.blocks-gallery-item)::before {content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='7' height='7' viewBox='-1 -1 2 2'><circle fill='%23ffffff' r='1'/></svg>")}

/* media queires */

	@media only screen and (max-width: 1320px){
	}		
	
	@media only screen and (max-width: 1200px){
	}	

	@media only screen and (max-width: 1023px){
		#wrap ul.primary_menu {display: none;}
		#wrap .small_menu_button{display: block;}
		body.no-js #wrap .small_menu_button {display: none;}
		body.no-js ul.small_menu {display: block; position: static;}		
		div.is_looped, #wrap div:is(.page_gallery , .flex_item, .article_item ){max-width: 50% !important; min-width: 50% !important;}
		.padd-right {padding-right: 0;}
		.padd-left {padding-left: 0;}
		.home_section, body.home .is_single.entry-content > .wp-block-columns {padding: 30px 0;}
		.sticky {position: static;}
		.bg {background-size: 230px;}
		.maxwidthtxtwrap {left: 20px !important; top: 20px !important;}
		#banner .banner_title {font-size: 38px; line-height: 38px;}
		#banner .hover_opacity {opacity: 0.4 !important;}
		.hentry.is_single, .share_links_container, .post-nav {padding: 20px 0;}
	}
	
	@media only screen and (max-width: 782px){
		body.admin-bar #header_wrap.moving #header_fixed, body.open_search.admin-bar .search_field {top: 46px;}
		#footer .col4 .col {width: 50% !important;}
	}	

	@media only screen and (max-width: 600px){
		body.admin-bar #header_wrap.moving #header_fixed, body.open_search.admin-bar .search_field {top: 0;}
		.flexed {display: block;}
		#wrap div:is(.page_gallery , .flex_item, .article_item ){max-width: 100% !important; min-width: 100% !important;}
		.flex_item {padding: 0; margin-bottom: 30px;}
		.flexed {margin-left: 0; margin-right: 0;}
		.vis_menu {padding: 40px 0 10px;}
	}

	@media only screen and (max-width: 495px){
		#footer .col4 .col {width: 100% !important;}
		.bg {background-size: 150px;}
	}
	
	@media only screen and (max-width: 360px){
		.header_wrap_inner.inner_wrap {padding: 20px;}
		#header {display: block;}
		#nav {position: static; transform: none; text-align: center;}
		.m2tp_logo svg {margin: 0 auto;}
		.m2tp_logo a {margin-bottom: 20px;}
		#header_wrap.moving #header_fixed {position: static !important;}
	}