/* Basic CSS Start*/
body, p {
    font-weight: normal;
	font-family: 'Montserrat', sans-serif;
}
* {
    box-sizing: border-box;
}
b, strong {
    font-family: 'Montserrat', sans-serif;
	font-weight: 500;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Droid Serif';
    font-weight: normal;
    margin: 0 0 15px;
    color: #004834;
	line-height: normal !important;
}

h4 {
    font-size: 24px;
}
h5 {
    font-size: 21px;
}
h6 {
    font-size: 18px;
}
.site-main ul {
    padding: 0;
    margin: 0 0 10px 30px;
}

input[type=text], 
input[type=email], 
input[type=url], 
input[type=password], 
input[type=search], 
input[type=tel], 
input[type=number], 
textarea, 
select {
	padding: 10px;
    height: 50px;
    width: 100%;
}
.green_btn {
    text-align: center;
    font-size: 24px;
	line-height: 28px;
    font-weight: 300;
    color: #ffffff !important;
    background-color: #004734;
    border: 3px solid #023125;
    padding: 12px 75px;
    border-radius: 15px 15px 15px 15px;
    margin-left: 20px;
    display: inline-block;
    vertical-align: text-bottom;
	font-family: 'Montserrat', sans-serif;
	outline: none !important;
}
.glb_btn {
    text-align: center;
    font-size: 22px;
    font-weight: 300;
    line-height: 32px;
    color: #ffffff !important;
    background-color: #004734;
    padding: 12px 25px;
    border-radius: 15px 15px 15px 15px;
    display: inline-block;
	margin-top: 20px;
	font-family: 'Montserrat', sans-serif;
	min-width: 260px;
	outline: none !important;
}
.elementor-element.elementor-button-info .elementor-button {
    background: #004733 !important;
    border: 2px solid #004733 !important;
}
form input[type='submit'] {
    background-color: #124734;
    padding: 15px 30px;
    line-height: 1;
    border-radius: 4px;
    font-size: 16px !important;
}
blockquote {
    margin: 0;
}

.inner-list ul {
    padding: 0;
    margin: 0 0 1.5rem;
    list-style: none;
	font-weight: normal;
    font-family: 'Montserrat', sans-serif;
}
.inner-list ol {
    padding: 0 0 0 30px;
    margin: 0 0 1.5rem;
	font-weight: normal;
    font-family: 'Montserrat', sans-serif;
}
.inner-list ul li {
    padding-left: 20px;
    padding-bottom: 6px;
    position: relative;
}
.inner-list ol li {
    padding-bottom: 6px;
}
.inner-list ul li:before {
    content: "";
    position: absolute;
    top: 12px;
    left: 6px;
    width: 6px;
    height: 6px;
    background: #000;
    border-radius: 50%;
}
/*.inner-list ul li:after {
    content: "";
    position: absolute;
    top: 14px;
    left: 0;
    width: 10px;
    height: 2px;
    background: #000;
    border-radius: 6px;
}*/
.home p {
    margin: 0 !important;
}

/* Sidebar CSS Start*/
.obituary-sidebar-widget .textwidget div[data-elementor-type="widget"],
.right-sidebar.new-sidebar .elementor-widget-call-to-action {
    margin: auto;
    width: 100%;
    max-width: 300px;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.47);
    margin-bottom: 30px;
}
.right-sidebar .elementor-cta__button.elementor-button {
    background: #004734;
}

/* Header CSS Start*/

.logo-bg {
    background: rgb(1,103,77);
    background: linear-gradient(90deg, rgba(1,103,77,1) 0%, rgba(255,255,255,1) 40%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 60%, rgba(1,103,77,1) 100%);
}

/* Footer CSS Start*/

.footer-quick-link-bg ul {
    padding: 0;
    margin: 0;
    list-style: none;
}
.footer-section-bg strong {
    font-family: 'Montserrat', sans-serif;
}
.footer-quick-link-bg ul li {
    display: inline-block;
    width: 49%;
    vertical-align: top;
}
.footer-quick-link-bg ul li a {
    color: #fff;
    display: block;
    font-size: 16px;
}
.footer-top-sec .elementor-image a {
    display: block;
}
.footer-top-sec .elementor-image a img {
    width: auto;
    height: 100px;
}
.footer-section-bg a {
    color: #fff;
}
.copyright-bg p {
    margin: 0;
}
.copyright-bg a {
    color: #fff;
}

/* Home Banner CSS Start*/
.banner-bg {
    position: relative;
}
.banner-top-text {
    position: absolute !important;
    top: 0;
    width: 100% !important;
    left: 0;
    padding: 10px 0;
    z-index: 9;
	background: rgb(13,22,31) !important;
    background: linear-gradient(90deg, rgba(13,22,31,0.18531162464985995) 0%, rgba(13,22,31,0.908000700280112) 50%, rgba(13,22,31,0.1881127450980392) 100%) !important;
}
.banner-top-text .elementor-element {
    margin: 0 !important;
}
.banner-top-text .elementor-element h1 {
    font-size: 80px;
    font-weight: normal;
	margin: 0;
    line-height: 1 !important;
}
.banner-top-text .elementor-element h2 {
    font-size: 42px !important;
    font-weight: normal;
    margin: 0;
    line-height: 1 !important;
    text-transform: uppercase;
}

/* Inner Banner CSS Start*/
.inner-banner-bg {
    padding: 25% 0px 15px 0px;
}
.inner-banner-bg .inner-banner-text {
    padding: 0px;
    background: rgba(0, 0, 0, 0.5) !important;
}
.inner-banner-bg .inner-banner-text h1 {
    font-size: 62px;
    line-height: 1;
    font-weight: normal !important;
    font-style: italic;
    font-family: 'Montserrat', sans-serif;
}

/* Book Section CSS Start*/
.book-section {
    position: relative;
    z-index: 1;
}
.receive-text h2 {
    font-size: 48px;
    line-height: 1 !important;
    margin: 0 !important;
	font-family: 'Droid Serif';
	color: #fff;
}

.jony-img {
    height: 250px;
    overflow: hidden;
    border-radius: 0 50px 0 50px;
}
.john-henry h4 {
    font-style: italic;
    letter-spacing: 1px;
    font-size: 24px;
	color: #00674E;
}

.john-henry h3 {
    font-style: italic;
    letter-spacing: 1px;
    font-size: 24px;
	color: #00674E;
	margin: 0;
}

.staff-member-grp-bg .staff-member {
    padding: 25px 0px;
    font-weight: normal;
    font-size: 18px;
    line-height: 1.5;
}
.staff-member-grp-bg .staff-member img {
    max-width: 260px;
	min-width: 260px;
    margin-right: 20px;
    width: 260px;
    padding: 2px;
    border: 1px solid #ccc;
    box-shadow: 0 0 5px #999;
}

.woocommerce div.product div.images img {
    border: 1px solid #eee;
    box-shadow: 0px 8px 12px -6px rgba(0,0,0,0.3);
}

.woocommerce .quantity .qty {
    font-size: 18px;
}
.woocommerce div.product form.cart .button {
    text-transform: uppercase;
    height: 49px;
}
.woocommerce ul.products li.product .button {
    background: #004734;
    color: #fff;
}
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt, 
.woocommerce button.button.alt, 
.woocommerce input.button.alt {
    background: #004734 !important;
	color: #fff !important;
}
.woocommerce-cart .elementor-section-wrap {
    padding-top: 40px;
}
.woocommerce-checkout h3 {
    padding-top: 30px;
    text-align: left;
}
.woocommerce-checkout .woocommerce-billing-fields p label,
.woocommerce-checkout .woocommerce-account-fields p label,
.woocommerce-checkout .woocommerce-additional-fields p label,
.woocommerce-checkout .woocommerce-shipping-fields p label{
    text-align: left;
	display: block;
}

/**=== Obituaries CSS Start ===**/

.obit-search {
    border-bottom: 2px solid #124734;
}
.obit-button, 
button[type="submit"].obit-button, 
.atcb-link, 
.elementor-tab-title {
    display: inline-block;
    background-color: #124734;
}
input[type=checkbox], 
input[type=radio] {
    margin-top: 7px !important;
    vertical-align: top !important;
}

blockquote {
    font-size: 20px !important;
}

.separate-containers .site-main {
    width: 100%;
    max-width: 1140px;
    margin: 20px auto !important;
    margin-bottom: -50px !important;
}

/** === printPageView CSS === **/
html, body {
    height: 100%;
    min-height: 100vh;
}
.printPageView.grid-parent {
    padding: 30px;
    display: flex;
    min-height: 100%;
    align-items: center;
    width: 100%;
    max-width: 991px !important;
    box-sizing: border-box;
}
.printPageView.grid-parent #content {
    padding: 30px !important;
    background: white;
    width: 100%;
    box-sizing: border-box;
}
.printPageView .site-content form input[type="checkbox"] {
    margin-right: 8px;
    display: inline-block;
    vertical-align: top;
    margin-top: 5px;
}
.printPageView .site-content form input[type="submit"] {
    margin: 10px 0px;
}
.post-content.obit-content .obit-image, 
.post-content.obit-content .obit-stats {
    float: none !important;
    display: inline-block;
    vertical-align: top;
}
#obit-services, 
#obit-charities,
#obit-timeline,
#obit-guestbook, 
#obit-video,
#guestbook,
.obit-text {
    padding-top: 30px;
    float: none !important;
    margin: 0 !important;
    width: 100%;
}
.printPageView.grid-parent #content #content-obits {
    padding: 0;
}


/**=== Obituaries CSS End ===**/


/**=== Flower Shop CSS ===**/


.send-flower-bg ul.products li.product, 
.term-flowers-for-service ul.products li.product-category {
    background: #fff;
    margin-bottom: 5px !important;
    border: 1px solid #eee;
    box-shadow: 0px 8px 12px -6px rgba(0, 0, 0, 0.3) !important;
    padding: 15px !important;
    text-align: center;
}
.send-flower-bg ul.products li.product a {
    display: block;
}
.send-flower-bg ul.products li.product a img {
    margin-bottom: 0 !important;
    object-fit: contain;
    float: none !important;
    max-height: 240px;
    margin: 0 auto;
}
.related.products ul li a img {
    max-height: 200px;
    object-fit: contain;
}

.association-img .elementor-image {
    background: #fff;
    padding: 15px;
    border: 1px solid #ddd;
    box-shadow: 0 0 3px #ccc;
    min-height: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.association-img .elementor-image img {
    width: auto;
    height: auto;
    max-height: 120px;
}

.hudson-img3 img {
    width: 300px;
    object-fit: cover;
    object-position: top;
}
h2.obit-heading {
    margin-top: 0 !important;
}
.otimeline-buttons {
    margin-bottom: 20px !important;
}

#obit-video .obit-gallery {
    display: inline-block;
    float: none !important;
    width: 160px !important;
    height: 160px !important;
    border: 1px solid #ddd;
    box-shadow: 0 0 5px #ccc;
    padding: 3px;
    background: #fff;
    margin: 0 10px 10px 0;
}

#obit-video .obit-gallery img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: top;
    display: block;
}

#comment-textarea textarea {
    min-height: 160px;
}
.gform_page_fields select {
    width: 100% !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    text-align: left;
}
.select2-container--default .select2-selection--single {
    height: 50px;
    padding: 10px;
}

.woocommerce-checkout .inside-article {
    padding: 40px 20px !important;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
	background-color: #ffffff;
}
body.woocommerce-checkout .col2-set .col-1, 
body.woocommerce-checkout .col2-set .col-2, 
body.woocommerce-checkout #order_review_heading, 
body.woocommerce-checkout #order_review {
    float: none;
    width: 100%;
    max-width: 100%;
    margin: 0 auto 50px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 14px;
}
.obit-links a[title='Print'] {
    display: inline-block;
    vertical-align: top;
    margin-top: 15px;
}


.search-results .footer-top-sec,
.single-ltobits .footer-top-sec,
.current-ltobits .footer-top-sec,
.search-no-results .footer-top-sec {
    margin: 0 !important;
}

.single-post .book-section {
    margin-top: 50px;
    background: #fff;
}

.single-post .book-section {
    margin-top: 50px;
    background: #efefef !important;
} 

.single-post .book-section .book-section {
    margin-top: 0;
    background: #A29161 !important;
} 
.footer-section-bg .footer_location a,
.copyright-bg a {
    color: #fff !important;
}

.footer-section-bg .footer_location a:hover,
.copyright-bg a:hover {
    color: #A29161 !important;
}
body.post-type-archive-ltobits #content.site-content, 
body.single-ltobits #content.site-content, 
body.search #content.site-content, 
.current-ltobits #content.site-content {
    padding: 30px 20px !important;
}


@media only screen and (min-width: 1024px) {
    .elementor-6 .elementor-element.elementor-element-112d110 .elementor-nav-menu--dropdown {
        min-width: 100% !important;
    }
	body.woocommerce-checkout .col2-set .col-1, 
	body.woocommerce-checkout .col2-set .col-2, 
	body.woocommerce-checkout #order_review_heading, 
	body.woocommerce-checkout #order_review {
		max-width: 70% !important;
	}
}

@media only screen and (max-width: 991px) {
    .footer-quick-link-bg {
        position: relative;
    }
    .footer-quick-link-bg:before {
        content: "";
        position: absolute;
        animation: 0;
        top: 20px;
        left: 0;
        right: 0;
        width: 280px;
        height: 4px;
        background: #fff;
        margin: 0 auto;
    }
    .footer-quick-link-bg ul {
        text-align: center;
    }
    .footer-quick-link-bg ul li {
        width: auto;
        padding: 0 10px;
    }
}

@media only screen and (min-width: 769px) {
    .receive-img img {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        transform: translateY(-50%);
    }
	.staff-member-grp-bg .staff-member {
		display: flex;
		align-items: flex-start;
	}
	.receive-text h2 .green_btn {
		margin-left: 20px;
	}
	.printPageView .post-content.obit-content .obit-stats {
		width: calc(100% - 280px);
    	padding: 0 !important;
	}
}

@media screen and (min-device-width: 600px) and (max-device-width: 991px) { 
	.association-img .elementor-col-50 {
		width: 50% !important;
	}
}

@media only screen and (max-width: 768px) {
    .mob-order {
        order: -1;
    }
	.receive-text h2 {
		font-size: 36px;
		position: relative;
		padding-bottom: 80px;
	}
	.receive-text p .green_btn {
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
		max-width: 250px;
		padding: 8px 30px;
	}
	.banner-top-text .elementor-element h2 {
		font-size: 48px !important;
		padding-bottom: 6px;
	}
	.banner-top-text .elementor-element h1 {
		font-size: 62px;
	}
	.inner-banner-bg .inner-banner-text h1 {
		font-size: 42px;
	}
	h3 {
		font-size: 22px !important;
	}
	h4 {
		font-size: 20px;
	}
	h5 {
		font-size: 18px;
	}
	h6 {
		font-size: 16px;
	}
}

@media screen and (max-width: 991px) and (min-width: 768px) { 
	.footer-top-sec .elementor-row > .elementor-element {
		width: 50%;
		padding: 10px 0;
	}
	.cremation-urns-bg section .elementor-row .elementor-column,
	.monuments-bg section .elementor-row .elementor-column {
		width: 50%;
	}
}

@media screen and (min-width: 768px) { 
	.gform_wrapper .top_label li.gfield.gf_left_half, 
	.gform_wrapper .top_label li.gfield.gf_right_half {
		width: 49% !important;
		margin-right: 1%;
	}
}

@media only screen and (max-width: 767px) {
    .footer-section-bg .elementor-element {
        width: 100% !important;
    }
	.banner-top-text .elementor-element h2 {
		font-size: 32px !important;
	}
	.banner-top-text .elementor-element h1 {
		font-size: 38px;
	}
	.inner-banner-bg .inner-banner-text h1 {
		font-size: 32px;
	}
	body, p, blockquote {
		font-size: 16px !important;
	}
	 p {
		margin-bottom: 15px !important;
	}
	.glb_btn {
		font-size: 18px;
		line-height: 28px;
		padding: 10px 25px;
	}
	.staff-member-grp-bg .staff-member img {
		display: block;
		margin: 0 auto 20px;
	}
	.inner-list ul li:before {
		top: 8px;
	}
	.printPageView.grid-parent {
		padding: 10px;
	}
	.printPageView.grid-parent #content {
		padding: 15px !important;
	}
	.fulls-width-767 {
		width: 100% !important;
	}
	.post-content .obit-links p {
		margin: 0 !important;
	}
}

