/*
Theme Name: Gift of Life - Howie's House
Author: Kevin Sparkman
Description: A WordPress theme for the Gift of Life Howie's House.
Version: 1.0
License: GPLv2 or later
Text Domain: gol-theme
*/
/*Global Styles for Front-end*/

/*==| GLOBAL STYLE |===================================================*/
:root {
    --wp--style--global--content-size: 900px;
    --wp--style--global--wide-size: 1296px;
}

body:not(.wp-admin) {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: var(--body-text);
    font-family: var(--font-body);
    font-weight: 400;
}

h1,
.h1 {
    font-size: clamp(2.25rem, 6vw, 4.625rem);
    font-family: var(--font-heading);
    font-weight: 800;
}

h2,
.h2 {
    font-size: clamp(2rem, 4vw, 3.4375rem);
    font-family: var(--font-heading);
    font-weight: 800;
    line-height: 1.2;
}

h3,
.h3 {
    font-size: clamp(1.75rem, 3vw, 2.75rem);
    font-family: var(--font-heading);
    font-weight: 400;
    line-height: 1.2;
}

h4,
.h4 {
    font-size: clamp(1.375rem, 2.5vw, 2.1875rem);
    font-family: var(--font-heading);
    font-weight: 700;
    line-height: 1.3;
}

h5,
.h5 {
    font-size: clamp(1.25rem, 2vw, 1.75rem);
    font-family: var(--font-heading);
    font-weight: 600;
}

h6,
.h6 {
    font-size: clamp(1.125rem, 1.7vw, 1.4375rem);
    font-family: var(--font-heading);
    font-weight: 500;
}

.bold {
    font-weight: 700;
}

p {

    color: var(--color-gray);
    line-height: 1.7;
}

a {
    color: var(--color-secondary);
    text-decoration: none;
}

a:where(:not(.wp-element-button):not(.btn)) {
    text-decoration: none;
}

a:not(.btn):hover,
a:not(.btn):focus-visible {
    color: var(--color-dark-orange);
}

p a,
li a {
    text-decoration: underline;
    text-underline-offset: 5px;
}

b,
strong {
    font-weight: 700;
}

blockquote,
.blockquote,
.wp-block-quote,
.wp-block-quote p,
blockquote p,
.blockquote p {
    font-size: clamp(1.25rem, 2vw, 1.75rem);
    font-weight: 400;
    color: var(--color-teal-green);
    line-height: 1.4;
    border-left: 0 !important;
    padding-left: 0 !important;
    text-align: center;
}

label,
.label {
    position: relative;
    display: inline-block;
    font-family: var(--font-heading) !important;
    font-weight: 600;
    font-size: clamp(1rem, 1.3vw, 1.125rem);
    margin-bottom: .25rem;
}

input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.select2-selection.select2-selection--single {
    font-size: 1rem;
    font-family: var(--font-heading);
    color: var(--color-dark);
    width: 100%;
    height: 3.063rem;
    border: 1px solid var(--color-input-border);
    border-radius: 8px !important;
    padding: 0.875rem 0.625rem;
}

textarea {
    height: auto;
    resize: vertical;
}

input::placeholder,
textarea::placeholder,
.select2-selection__placeholder,
.placeholder-text,
.tribe-events .tribe-events-c-events-bar .tribe-common-form-control-text__input::placeholder {
    font-size: 1rem;
    font-family: var(--font-heading);
    font-style: italic;
    color: var(--color-placeholder);
}

.error,
.gfield_validation_message {
    font-family: var(--font-heading);
    font-weight: 400;
    font-size: 14px;
    color: var(--color-error);
    margin-top: .25rem;
}

section,
.section {
    padding-top: var(--space-120);
}

section:has(+footer),
.section:has(+footer),
.section:has(+.is_colored),
section:last-of-type,
.section:last-of-type,
.section.is_colored,
.is_colored {
    padding-bottom: var(--space-120);
}

.form-check label {
    font-weight: 400;
    margin-bottom: 0;
}

input[type="checkbox"],
input[type="radio"] {
    width: 1.25rem;
    height: 1.25rem;
    border-width: 2px solid var(--color-dark);
    border-color: var(--color-dark);
    border-width: 3px;
}

.form-check-input:checked {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

input:focus,
input:focus-visible,
textarea:focus,
textarea:focus-visible,
select:focus,
select:focus-visible,
input[type="checkbox"]:focus,
input[type="radio"]:focus,
.form-control:focus,
.form-control:focus-visible {
    border-color: var(--color-primary);
    outline-color: var(--color-primary);
    box-shadow: var(--input-shadow);
}

.accordion-button {
    border-radius: 0 !important;
    box-shadow: none !important;
}

.accordion-button:focus-visible {
    box-shadow: var(--input-shadow) !important;
}

/*==| CUSTOM CLASSES |===================================================*/
/* Text meant only for screen readers. */
.screen-reader-text,
.screen-reader-text:focus {
    font-size: clamp(1rem, 1.3vw, 1.125rem) !important;
    font-family: var(--font-heading) !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
    outline: 0 !important;
    padding: 15px 23px 14px !important;
    border-radius: 6px !important;
    color: var(--color-white) !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.072) 50%, rgba(255, 255, 255, 0) 50%), var(--color-primary) !important;
    box-shadow: 0 0 0 1px var(--color-dark-orange), 0 4px 2px -3px rgba(0, 0, 0, 0.251);
}

.screen-reader-text:hover {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.072) 50%, rgba(255, 255, 255, 0) 50%),
        var(--color-dark-orange) !important;
}

.btn,
input[type="submit"],
input[type="button"],
button,
.btn-sm,
.link-btn,
.facetwp-load-more,
.wp-element-button,
.wp-block-button__link {
    position: relative;
    height: 3.063rem;
    font-size: clamp(1rem, 1.3vw, 1.125rem);
    font-family: var(--font-heading);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
    padding: 12px 24px;
    border-radius: 6px;
}

.wp-element-button,
.wp-block-button__link {
    font-size: clamp(1rem, 1.3vw, 1.125rem) !important;
    padding: 12px 24px !important;
    font-family: var(--font-heading) !important;
    text-transform: uppercase !important;
    letter-spacing: 0;
}

.btn-sm {
    font-size: 1rem;
    font-weight: 600;
}

.primary-btn,
.facetwp-load-more,
input[type="submit"],
input[type="button"],
.wp-element-button,
.wp-block-button__link {
    color: var(--color-white);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.072) 50%, rgba(255, 255, 255, 0) 50%),
        var(--color-primary);
    box-shadow:
        0 0 0 1px var(--color-dark-orange),
        0 4px 2px -3px rgba(0, 0, 0, 0.251);
}

.wp-element-button,
.wp-block-button__link {
    color: var(--color-white) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.072) 50%, rgba(255, 255, 255, 0) 50%),
        var(--color-primary) !important;
}

.facetwp-load-more {
    border: 0;
    min-width: 156px;
}

input[type="submit"],
input[type="button"] {
    border: 1px solid var(--color-primary)
}

.secondary-btn {
    color: var(--color-primary);
    background-color: transparent;
    border: 1px solid var(--color-primary);
}

.secondary-btn:hover,
.secondary-btn:focus-visible,
input[type="submit"]:hover,
input[type="submit"]:focus-visible,
input[type="button"]:hover,
input[type="button"]:focus-visible {
    border-color: var(--color-dark-orange);
}

.primary-btn:hover,
.primary-btn:focus-visible,
.secondary-btn:hover,
.secondary-btn:focus-visible,
.facetwp-load-more:hover,
.facetwp-load-more:focus-visible,
input[type="submit"]:hover,
input[type="submit"]:focus-visible,
input[type="button"]:hover,
input[type="button"]:focus-visible,
.wp-element-button:hover,
.wp-block-button__link:hover {
    color: var(--color-white);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.072) 50%, rgba(255, 255, 255, 0) 50%),
        var(--color-dark-orange);
}

.wp-element-button:hover,
.wp-block-button__link:hover {
    color: var(--color-white) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.072) 50%, rgba(255, 255, 255, 0) 50%),
        var(--color-dark-orange) !important;
}

.primary-btn:active,
.facetwp-load-more:active,
.secondary-btn:active {
    color: var(--color-white) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.072) 50%, rgba(255, 255, 255, 0) 50%),
        var(--color-dark-orange) !important;
}

.white-btn {
    color: var(--color-dark);
    background-color: var(--color-white);
    border: 1px solid var(--color-white)
}

.white-btn:hover,
.white-btn:focus-visible {
    color: var(--color-white);
    background-color: var(--color-dark);
    border-color: var(--color-dark);
}

.link-btn {
    height: auto;
    padding: 0;
    border-radius: 0;
    color: var(--color-dark);
    text-decoration: underline;
    text-decoration-thickness: 3px;
    text-decoration-color: var(--color-green);
    text-underline-offset: 5px;
}

.link-btn:hover,
.link-btn:focus-visible {
    text-decoration-thickness: 8px;
}

.form-group {
    position: relative;
    margin-bottom: 1rem;
}

.mt-120,
.my-120 {
    margin-top: var(--space-120);
}

.mb-120,
.my-120 {
    margin-bottom: var(--space-120);
}

.mt-72,
.my-72 {
    margin-top: var(--space-72);
}

.mb-72,
.my-72 {
    margin-bottom: var(--space-72);
}

.mt-56,
.my-56 {
    margin-top: var(--space-56);
}

.mb-56,
.my-56 {
    margin-bottom: var(--space-56);
}

.mt-40,
.my-40 {
    margin-top: var(--space-40);
}

.mb-40,
.my-40 {
    margin-bottom: var(--space-40);
}

.mt-30,
.my-30 {
    margin-top: var(--space-30);
}

.mb-30,
.my-30 {
    margin-bottom: var(--space-30);
}

.mt-24,
.my-24 {
    margin-top: var(--space-24);
}

.mb-24,
.my-24 {
    margin-bottom: var(--space-24);
}

.pt-120,
.py-120 {
    padding-top: var(--space-120);
}

.pb-120,
.py-120 {
    padding-bottom: var(--space-120);
}

.pt-72,
.py-72 {
    padding-top: var(--space-72);
}

.pb-72,
.py-72 {
    padding-bottom: var(--space-72);
}

.pt-56,
.py-56 {
    padding-top: var(--space-56);
}

.pb-56,
.py-56 {
    padding-bottom: var(--space-56);
}

.pt-40,
.py-40 {
    padding-top: var(--space-40);
}

.pb-40,
.py-40 {
    padding-bottom: var(--space-40);
}

.pt-30,
.py-30 {
    padding-top: var(--space-30);
}

.pb-30,
.py-30 {
    padding-bottom: var(--space-30);
}

.pt-24,
.py-24 {
    padding-top: var(--space-24);
}

.pb-24,
.py-24 {
    padding-bottom: var(--space-24);
}

.body-text-small {
    font-size: 1.125rem;
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--color-dark);
}

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

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

.text-dark-orange {
    color: var(--color-dark-orange) !important;
}

.mini-container {
    max-width: 856px;
    margin-left: auto;
    margin-right: auto;
}

.slick-next:focus-visible,
.slick-prev:focus-visible {
    box-shadow: 1px 1px 3px rgba(255, 255, 255, 0.5) !important;
    outline: 2px solid #fff;
    outline-offset: 3px;
    opacity: 1;
}

.badge {
    font-size: 14px;
    font-family: var(--font-heading);
    font-weight: 600;
    letter-spacing: 0.4px;
    display: inline-block;
    background-color: #EBF5FF;
    color: var(--color-secondary);
    border-radius: 50px;
    padding: 9px 12px 7px;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.slick-arrow {
    width: var(--space-40);
    height: var(--space-40);
    border-radius: 75%;
    background-color: var(--color-light-orange);
    color: var(--color-dark);
    font-size: 1.5rem;
    transition: var(--td-3);
    z-index: 10;
}

.slick-arrow:focus,
.slick-arrow:hover,
.slick-arrow:focus-visible {
    color: var(--color-dark);
    background-color: var(--color-primary);
}

.slick-disabled {
    pointer-events: none;
    user-select: none;
}

.slick-arrow::before {
    display: none;
}

@media (min-width: 1300px) {

    .slick-next {
        right: -4rem;
    }

    .slick-prev {
        left: -4rem;
    }
}

/*==| END CUSTOM CLASSES |===================================================*/

/*==| START FILTER STYLE |===================================================*/
.filters {
    padding: var(--space-24);
    background-color: var(--white-color);
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
}

.facetwp-type-search .facetwp-input-wrap {
    position: relative;
    display: block;
}

.facetwp-facet {
    margin-bottom: 0 !important;
}

.facetwp-type-search .facetwp-input-wrap .facetwp-icon {
    font-family: 'icomoon';
    font-style: normal;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 1;
}

.tribute-search-wrap .facetwp-type-search .facetwp-input-wrap .facetwp-icon {
    left: auto;
    right: 0;
    font-size: 1.5rem;
}

.facetwp-icon::before {
    all: unset !important;
    content: "\e915" !important;
}

.facetwp-type-search .facetwp-input-wrap input {
    padding-left: 2.25rem !important;
}

.tribute-search-wrap .facetwp-type-search .facetwp-input-wrap input {
    padding-left: 0.75rem !important;
}

.filters .facetwp-reset {
    font-family: var(--font-heading);
    font-weight: 700;
    display: inline-block;
    margin-top: var(--space-24);
    margin-bottom: var(--space-40);
    color: var(--color-error);
    text-decoration: none;
    text-transform: uppercase;
}

.filters .accordion {
    margin-top: calc(var(--space-24) - 0.5rem);
}

.filters .accordion-item {
    border: 0;
    border-radius: 0 !important;
}

.filters .accordion-item:not(:last-child) {
    border-bottom: 1px solid var(--color-input-border);
    padding-bottom: var(--space-24);
    margin-bottom: var(--space-24);
}

.filters .accordion-button {
    padding: 0;
    height: auto;
    background-color: transparent !important;
    border: 0 !important;
    color: var(--color-dark) !important;
    font-family: var(--font-body);
    font-size: var(--body-font-semibold);
    text-transform: inherit;
}

.search_directory .accordion-body {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
}

.facetwp-checkbox {
    position: relative;
    background-image: url('./assets/images/checkbox.svg') !important;
    background-repeat: no-repeat !important;
    padding-left: 32px !important;
    background-size: 24px 24px !important;
    background-position: 0 2.5px !important;
    color: var(--gray-color);
    cursor: pointer;
}

.facetwp-checkbox:not(:last-child) {
    margin-bottom: 12px;
}

.facetwp-checkbox.checked {
    background-image: url('./assets/images/checkbox-checked.svg') !important;
}

.search_directory .facetwp-toggle {
    text-decoration: none;
    color: var(--blue-color);
    font-weight: 500;
}

.filters .accordion-button::after {
    /* content: "\e904"; */
    content: "\e913";
    background-image: none;
    font-family: 'icomoon' !important;
    width: auto;
    height: auto;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 0;
}

@media (min-width: 992px) {
    .filters .accordion-button::after {
        content: "\e913";
    }
}

.filters .accordion-button:not(.collapsed)::after {
    background-image: none;
    transform: rotateX(180deg);
}


/*==| END FILTER STYLE |=====================================================*/

.wp-block-separator {
    border-width: 1px !important;
    border-color: var(--color-input-border) !important;
}

.tribe-block .page-title-sec {
    display: none !important;
}

/* ===========================================================================
=>> RESPONSIVE
============================================================================*/
@media (max-width:1200px) {
    .slick-arrow {
        width: 2rem;
        height: 2rem;
        background-color: var(--color-primary);
        box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
    }

    .slick-prev {
        left: 0.5rem;
    }

    .slick-next {
        right: 0.5rem;
    }
}

/* END 1024PX */

@media (max-width: 992px) {
    .is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull):not(section)) {
        max-width: 696px !important;
    }
}

/* END 992px */

@media (max-width: 768px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl,
    .site-header .container,
    .site-footer .container {
        max-width: 100%;
        padding-left: 2.875rem;
        padding-right: 2.875rem;
    }

    .is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull):not(section):not(.wp-)) {
        max-width: 100% !important;
        padding-left: 2.875rem;
        padding-right: 2.875rem;
    }

    .is-layout-constrained> :where(.wp-block-quote) {
        padding-left: 2.875rem !important;
    }

    .wp-block-group:not(main.wp-block-group) * {
        padding-left: 0;
        padding-right: 0;
    }

    .wp-block-group:not(main.wp-block-group) .wp-block-list {
        padding-left: 1.5rem;
    }
}

/* END 768PX */

@media (max-width: 575px) {
    :root {
        --space-120: 1.875rem
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 100%;
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    .is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull):not(section):not(.wp-)) {
        max-width: 100% !important;
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    .is-layout-constrained> :where(.wp-block-quote) {
        padding-left: 1.25rem !important;
    }
}

/* END 575PX */

@media (max-width: 375px) {
    #wpadminbar .quicklinks {
        display: flex;
        white-space: nowrap;
        width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
    }

    #wpadminbar .quicklinks ul {
        display: flex;
        align-items: center;
    }
}

/* END 375px */