:root {
    --font-secondary: "Playfair Display", Sans-serif;
    --font-primary: "Montserrat", Sans-serif;
    --primary-color: #9a592c;
    --primary-color-shade-100: #8b5028;
    --primary-color-shade-200: #7b4723;
    --primary-color-shade-300: #6c3e1f;
    --primary-color-shade-400: #5c351a;
    --primary-color-shade-500: #4d2d16;
    --primary-color-shade-600: #3e2412;
    --primary-color-shade-700: #2e1b0d;
    --primary-color-shade-800: #1f1209;
    --primary-color-shade-900: #0f0904;
    --primary-color-tint-100: #a46a41;
    --primary-color-tint-200: #ae7a56;
    --primary-color-tint-300: #b88b6b;
    --primary-color-tint-400: #c29b80;
    --primary-color-tint-500: #cdac96;
    --primary-color-tint-600: #d7bdab;
    --primary-color-tint-700: #e1cdc0;
    --primary-color-tint-800: #ebded5;
    --primary-color-tint-900: #f5eeea;
}

html {
    scroll-padding-top: 120px;
}

input, textarea, select, button, a {
    outline: none !important;
}

.text-primary-300 {
    color: var(--primary-color-tint-300);
}

.text-center {
    text-align: center;
}

.main-header,
.main-header .main-menu .elementor-nav-menu>li>a,
.main-header .logo img {
    transition: all .3s;
}

.main-header.elementor-sticky--active {
    box-shadow: 0px 4px 33px 1px rgba(0, 0, 0, .07);   
}

.main-header.elementor-sticky--active .main-menu .elementor-nav-menu>li>a {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}

.main-header.elementor-sticky--active .logo img {
    width: 120px !important;
}

.main-menu>nav>ul>li>a {
    cursor: pointer;
    position: relative;
    z-index: 0;
}

.main-menu>nav>ul>li>a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 0;
    height: 2px;
    margin: 0 auto;
    background-color: var(--primary-color-tint-300) !important;
    transition: all .3s;
}

.main-menu>nav>ul>li>a:hover::before,.main-menu>nav>ul>li>a.elementor-item-active::before {
    width: 100%;
}

.main-header .main-menu>nav>ul>li>a .sub-arrow {
    padding: 0 0 0 3px !important;
}

.main-header .main-menu .sub-menu {
    min-width: 220px !important;
    padding: 28px 0 !important;
}

.ml-atuo {
    margin-left: auto !important;
}

.ft-links li a .elementor-icon-list-icon {
    transition: all .3s
}

.ft-links li a:hover .elementor-icon-list-icon {
    transform: translateX(5px);
}



.footer-newsletter .e-form__buttons:has(#ft-nwsl-btn) {
    position: absolute;
    top: 1px;
    right: 1px;
    width: 50px;
    padding: 0;
    margin: 0;
}

.footer-newsletter {
    position: relative;
    z-index: 0;
}

.footer-newsletter .e-form__buttons #ft-nwsl-btn {
    width: 50px;
    font-size: 12px;
    min-height: auto;
    height: 38px;
}

#scrollToTop {
	position: fixed;
    right: 10px;
    bottom: -60px;
    background-color: var(--primary-color-tint-300);
    border: none !important;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2);
    width: 60px;
    height: 60px;
    color: #ffffff;
    font-size: 20px;
    border-radius: 50%;
    opacity: .7;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    transition: all .3s ease-in-out;
    z-index: 2;
}

#scrollToTop.show {
    bottom: 10px;
}

#scrollToTop:hover {
    opacity: 1;
    bottom: 15px;
}



.hero-slider {
    position: relative !important;
    z-index: 0;
}

.hero-slider .swiper {
    padding: 0 !important;
}

.hero-slider .swiper-pagination {
    position: absolute;
    bottom: 0 !important;
    left: 100px !important;
    height: 100% !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 10;
}

.hero-slider .swiper-pagination .swiper-pagination-bullet {
    width: 4px;
    height: 20px;
    border-radius: 4px;
    background-color: #ffffff;
    opacity: 0.8;
    transition: all .3s;
}

.hero-slider .swiper-pagination span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--primary-color-tint-300);
}

.image-effect a {
    display: block !important;
    width: 100% !important;
    position: relative;
    overflow: hidden;
}

.image-effect a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 130%;
    height: 120%;
    background: rgba(255, 255, 255, 0.5);
    transition: transform 0.7s;
    transform: scale3d(1.9, 1.4, 1) rotate3d(0, 0, 1, 45deg) translate3d(0, -110%, 0);
    z-index: 0;
}

.image-effect a:hover::before {
    transform: scale3d(1.9, 1.4, 1) rotate3d(0, 0, 1, 45deg) translate3d(0, 110%, 0);
}

.image-effect a img {
    transform: scale(1.2);
}

.image-effect a:hover img {
    transform: scale(1);
}

.dv-slider .swiper-pagination span.swiper-pagination-bullet {
    width: 20px !important;
    height: 4px !important;
    border-radius: 5px;
}

.dv-slider .swiper-pagination span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--primary-color-tint-300) !important;
}

.home-contact-info strong {
    font-family: var(--font-secondary);
    font-size: 20px;
    font-weight: 700;
    font-style: italic;
}


.contact-form .elementor-field-group {
    align-items: flex-start;
}

.contact-form .elementor-field {
    box-shadow: 0 2px 5px 0px rgba(72, 97, 115, .15);
}

.our-facilities-slider .swiper-wrapper {
    margin-bottom: 20px;
}

.our-facilities-slider .swiper-slide a {
    background-color: #000000;
    display: block !important;
    width: 100% !important;
    height: 300px !important;
    position: relative;
    border-radius: 5px;
    overflow: hidden;
    z-index: 0;
}

.our-facilities-slider .swiper-slide a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 130%;
    height: 120%;
    background: rgba(255, 255, 255, 0.5);
    transition: transform 0.7s;
    transform: scale3d(1.9, 1.4, 1) rotate3d(0, 0, 1, 45deg) translate3d(0, -110%, 0);
    z-index: 1;
}

.our-facilities-slider .swiper-slide a:hover::before {
    transform: scale3d(1.9, 1.4, 1) rotate3d(0, 0, 1, 45deg) translate3d(0, 110%, 0);
}

.our-facilities-slider .swiper-slide a figure.swiper-slide-inner {
    width: 100%;
    height: 100%;
}

.our-facilities-slider .swiper-slide a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.2);
    transition: all .3s;
}

.our-facilities-slider .swiper-slide a:hover img {
    transform: scale(1);
    opacity: 0.7;
}

footer.elementor-slideshow__footer .elementor-slideshow__title {
    display: none;
}

.faqs-accordian .e-n-accordion-item {
    background-color: #ffffff;
}

.elementor-widget-text-editor ul li,
.elementor-widget-text-editor ol li {
    margin-bottom: 15px;
}

.testimonial-rating {
    color: #ff5a5f;
    font-size: 24px;
}


.obtiuary-grid nav.elementor-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.obtiuary-grid nav.elementor-pagination .page-numbers {
    border: 2px solid var(--primary-color-tint-900);
    padding: 12px 20px;
    border-radius: 5px;
    min-width: 50px;
    transition: all .3s;
}

.obtiuary-grid nav.elementor-pagination a:hover {
    background-color: var(--primary-color-tint-900);
}

.obtiuary-grid nav.elementor-pagination span.current {
    background-color: var(--primary-color-tint-300);
}

.ob-iconbox .elementor-icon-box-title {
    margin-top: 0;
}

#share-memory-form .memory_content_field {
    height: 150px;
}

#share-memory-form input.jet-form-builder__field.radio-field.checkradio-field.tribute_type_field {
    display: none;
}

#share-memory-form input.jet-form-builder__field.radio-field.checkradio-field.tribute_type_field + span::before {
    display: none !important;
}

#share-memory-form input.jet-form-builder__field.radio-field.checkradio-field.tribute_type_field + span {
    background-color: #ffffff;
    font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    font-weight: normal;
    border-radius: 10px 10px 10px 10px;
    padding: 12px 20px;
    color: var(--primary-color-tint-300);
    border: 1px solid var(--primary-color-tint-300);
}

#share-memory-form input.jet-form-builder__field.radio-field.checkradio-field.tribute_type_field:checked + span {
    background-color: #f5eeea;
    font-weight: 600;
}

#share-memory-form input.jet-form-builder__field.radio-field.checkradio-field.candle_field {
    display: none;
}

#share-memory-form input.jet-form-builder__field.radio-field.checkradio-field.candle_field + span {
    cursor: pointer;
    display: block;
    background-color: #ffffff;
    border: 2px solid #dddddd;
    border-radius: 4px;
    padding: 3px;
    transition: all 0.3s;
    display: inline-block;
    position: relative;
    z-index: 0;
}

#share-memory-form input.jet-form-builder__field.radio-field.checkradio-field.candle_field + span::before {
    content: "" !important;
    position: absolute;
    inset: 0;
    border: none;
    width: 100% !important;
    height: 100% !important;
    background-image: none !important;
    background-color: rgb(0 0 0 / 25%) !important;
    border-radius: 0 !important;
    opacity: 0;
    pointer-events: none;
    z-index: 1;
}

#share-memory-form input.jet-form-builder__field.radio-field.checkradio-field.candle_field:checked + span::before {
    opacity: 1;
    pointer-events: all;
}

#share-memory-form #memory_media {
    font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    font-weight: normal;
    color: var(--e-global-color-text);
    background-color: #FFFFFF;
    padding: 16px 10px 16px 10px !important;
    border: 1px solid #DDDDDD !important;
    width: 100% !important;
    border-radius: 3px !important;
}

#share-memory-form .jet-form-builder__field-wrap.jet-form-builder-file-upload {
    display: flex;
    flex-direction: column;
}

#share-memory-form .jet-form-builder-file-upload__fields {
    order: 1;
}

#share-memory-form .jet-form-builder-file-upload__message {
    order: 2;
}

#share-memory-form .jet-form-builder-file-upload__content {
    order: 3;
}

#share-memory-form .jet-form-builder-file-upload__content {
    display: none !important;
}

#share-memory-form .jet-form-builder-file-upload__content:has(
    .jet-form-builder-file-upload__files 
    .jet-form-builder-file-upload__file
) {
    display: block !important;
}

.obmem-slide-item {
    width: 100%;
    height: 250px;
    overflow: hidden;
}

.obmem-slide-item a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 0;
}

.obmem-slide-item a::before {
    content: "\ea10";
    position: absolute;
    top: 50%;
    left: 50%;
    color: #ffffff;
    font-family: 'remixicon' !important;
    font-style: normal;
    font-size: 80px;
    transform: translate(-50%, -50%);
    opacity: 0.8;
}

.obmem-slide-item a img, .obmem-slide-item a video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.obituary-memory-slider {
    position: relative;
    z-index: 0;
}

.obmem-arrows {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    transform: translateY(-50%);
    z-index: 1;
}

.obmem-arrows .obmem-arrow-prev, .obmem-arrows .obmem-arrow-next {
    pointer-events: all;
    background-color: #000000;
    border-radius: 0;
    border: none;
    color: #ffffff;
    font-size: 24px;
    padding: 0;
    width: 50px;
    height: 50px;
    transition: all .3s;
}

.obmem-arrows .obmem-arrow-prev:not(.swiper-button-disabled):hover, 
.obmem-arrows .obmem-arrow-next:not(.swiper-button-disabled):hover {
    background-color: var(--primary-color-tint-300);
}

.obmem-arrows .obmem-arrow-prev.swiper-button-disabled, 
.obmem-arrows .obmem-arrow-next.swiper-button-disabled {
    opacity: 0.5;
    cursor: no-drop;
}

/* Optional: Active step highlight */
.frm_current_page input[type="button"] {
    background: #2c3e50;
	font-weight: bold;
}

.frm_rootline_single.frm_current_page span.frm_rootline_title {
    color: #A46A41 !important;
	font-weight: bold;
}

.preplan-online-form .ppo-main-head h3 {
    font-size: 24px;
    font-weight: 700;
    text-transform: uppercase;
    color: #333333;
}