/**
Theme Name: Sam Hill
Author: Blue Winds Media
Author URI: https://www.bluewindsmedia.com
Description: A custom theme for Sam Hill, built on the Astra framework.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sam-hill
Template: astra
*/

/* ======= Common CSS: Start ======= */
*,
::before,
:after {
    box-sizing: border-box;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    box-sizing: border-box;
}

p {
    margin: 0px 0px 20px;
}

p:last-child {
    margin: 0px 0px 0px;
}

a {
    text-decoration: none;
    color: inherit;
}

a:hover,
a:focus {
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
}

ul,
ol,
li {
    list-style: none;
}

ul+ul,
ul+ol,
ol+ul,
ol+ol {
    margin: 20px 0px 0px;
}

a:focus,
a:focus-within,
a:focus-visible,
a:target,
a:visited,
a:active,
button:focus,
button:focus-within,
button:focus-visible,
button:target,
button:visited,
button:active,
input:focus,
input:focus-within,
input:focus-visible,
input:target,
input:visited,
input:active,
select:focus,
select:focus-within,
select:focus-visible,
select:target,
select:visited,
select:active,
textarea:focus,
textarea:focus-within,
textarea:focus-visible,
textarea:target,
textarea:visited,
textarea:active {
    outline: none;
    box-shadow: none;
    font-family: inherit;
}

::-webkit-input-placeholder,
:-moz-placeholder,
::-moz-placeholder,
:-ms-input-placeholder,
::-ms-input-placeholder,
::placeholder {
    color: inherit;
    opacity: 1;
    font-family: inherit;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* ======= Common CSS: End ======= */

/* footer */

.footer-sign-form .elementor-field-type-email {
    width: calc(100% - 60px);
}

.footer-sign-form .elementor-field-type-email input {
    padding: 18px 25px !important;
}

.footer-sign-form .elementor-field-type-submit {
    width: fit-content !important;
}

.footer-sign-form input:focus {
    box-shadow: unset !important;
    border-style: solid !important;
    border-color: #00000033 !important;

}

/* Home Page */

.table-form .elementor-field-type-date input,
.table-form .elementor-select-wrapper select,
.table-form .elementor-field-type-time input {
    padding-left: 55px !important;
    padding-right: 25px !important;
}

.table-form .elementor-select-wrapper select {
    background-color: #000000 !important;
}

.table-form .elementor-select-wrapper:before {
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><g clip-path="url(%23clip0_2004_550)"><path d="M9.85724 9.63406C11.1808 9.63406 12.3269 9.15936 13.2633 8.22278C14.1997 7.28635 14.6744 6.14057 14.6744 4.81688C14.6744 3.49364 14.1997 2.34771 13.2632 1.41097C12.3266 0.474699 11.1806 0 9.85724 0C8.53354 0 7.38776 0.474699 6.45132 1.41113C5.51489 2.34756 5.04004 3.49349 5.04004 4.81688C5.04004 6.14057 5.51489 7.2865 6.45148 8.22293C7.38806 9.1592 8.534 9.63406 9.85724 9.63406Z" fill="white"/><path d="M18.2863 15.379C18.2593 14.9893 18.2047 14.5642 18.1242 14.1152C18.0431 13.663 17.9385 13.2354 17.8134 12.8447C17.6842 12.4408 17.5084 12.0419 17.2911 11.6597C17.0656 11.2629 16.8007 10.9175 16.5034 10.6332C16.1926 10.3358 15.8121 10.0967 15.372 9.9223C14.9335 9.74881 14.4475 9.66092 13.9276 9.66092C13.7234 9.66092 13.526 9.74469 13.1447 9.99295C12.91 10.146 12.6355 10.323 12.3291 10.5188C12.0671 10.6857 11.7122 10.8421 11.2738 10.9837C10.8461 11.1221 10.4118 11.1923 9.98322 11.1923C9.5546 11.1923 9.12048 11.1221 8.69232 10.9837C8.25439 10.8422 7.89948 10.6858 7.63779 10.5189C7.33429 10.325 7.05963 10.148 6.82144 9.9928C6.44058 9.74454 6.24298 9.66077 6.03882 9.66077C5.5188 9.66077 5.03296 9.74881 4.59457 9.92245C4.15482 10.0966 3.77411 10.3357 3.46298 10.6334C3.16589 10.9178 2.90085 11.2631 2.67563 11.6597C2.4585 12.0419 2.28271 12.4406 2.15332 12.8448C2.02835 13.2356 1.92383 13.663 1.84265 14.1152C1.76224 14.5635 1.70761 14.9888 1.6806 15.3794C1.65405 15.7621 1.64062 16.1593 1.64062 16.5605C1.64062 17.6045 1.9725 18.4496 2.62695 19.073C3.27332 19.688 4.12857 20.0001 5.16861 20.0001H14.7987C15.8388 20.0001 16.6937 19.6882 17.3402 19.073C17.9948 18.4501 18.3267 17.6048 18.3267 16.5603C18.3266 16.1573 18.313 15.7598 18.2863 15.379Z" fill="white"/></g><defs><clipPath id="clip0_2004_550"><rect width="20" height="20" fill="white"/></clipPath></defs></svg>') !important;
    right: auto;
    width: 20px;
    height: 20px;
    background-position: center;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    top: 0;
    bottom: 0px;
    margin: auto 0px;
    left: 25px !important;
    transform: unset;
}

.table-form .select-caret-down-wrapper i {
    display: none;
}

.table-form .select-caret-down-wrapper {
    width: 20px;
    height: 20px;
    right: 21px;
}

.table-form .select-caret-down-wrapper:before {
    content: "";
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M10.0001 13.3333C9.8904 13.3339 9.78168 13.3129 9.68015 13.2714C9.57862 13.23 9.48627 13.1689 9.40841 13.0916L4.40841 8.09162C4.25149 7.9347 4.16333 7.72187 4.16333 7.49995C4.16333 7.27803 4.25149 7.0652 4.40841 6.90828C4.56533 6.75136 4.77816 6.66321 5.00007 6.66321C5.22199 6.66321 5.43482 6.75136 5.59174 6.90828L10.0001 11.325L14.4084 6.91662C14.5678 6.7801 14.7729 6.70876 14.9826 6.71686C15.1923 6.72496 15.3913 6.8119 15.5397 6.96032C15.6881 7.10873 15.7751 7.30768 15.7832 7.51741C15.7913 7.72714 15.7199 7.9322 15.5834 8.09162L10.5834 13.0916C10.4282 13.2456 10.2187 13.3324 10.0001 13.3333Z" fill="white"/></svg>');
    position: absolute;
    width: 20px;
    height: 20px;
}

.table-form .elementor-field-type-date:before {
    content: "";
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M15.8337 4.16663H15.0003V2.49996C15.0003 2.27895 14.9125 2.06698 14.7562 1.9107C14.6 1.75442 14.388 1.66663 14.167 1.66663C13.946 1.66663 13.734 1.75442 13.5777 1.9107C13.4215 2.06698 13.3337 2.27895 13.3337 2.49996V4.16663H6.66699V2.49996C6.66699 2.27895 6.5792 2.06698 6.42291 1.9107C6.26663 1.75442 6.05467 1.66663 5.83366 1.66663C5.61265 1.66663 5.40068 1.75442 5.2444 1.9107C5.08812 2.06698 5.00033 2.27895 5.00033 2.49996V4.16663H4.16699C3.50395 4.16663 2.86807 4.43002 2.39923 4.89886C1.93038 5.3677 1.66699 6.00359 1.66699 6.66663V7.49996H18.3337V6.66663C18.3337 6.00359 18.0703 5.3677 17.6014 4.89886C17.1326 4.43002 16.4967 4.16663 15.8337 4.16663Z" fill="white"/><path d="M1.66699 15.8333C1.66699 16.4963 1.93038 17.1322 2.39923 17.6011C2.86807 18.0699 3.50395 18.3333 4.16699 18.3333H15.8337C16.4967 18.3333 17.1326 18.0699 17.6014 17.6011C18.0703 17.1322 18.3337 16.4963 18.3337 15.8333V9.16663H1.66699V15.8333Z" fill="white"/></svg>');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    width: 20px;
    height: 20px;
    top: 0;
    bottom: 0px;
    margin: auto 0px;
    left: 33px;
}

.table-form .elementor-field-type-time:before {
    content: "";
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><g clip-path="url(%23clip0_2004_569)"><path d="M10 20C15.5214 20 20 15.5214 20 10C20 4.47856 15.5214 0 10 0C4.47856 0 0 4.47856 0 10C0 15.5214 4.47856 20 10 20ZM9.28569 4.28572C9.28569 3.89285 9.60713 3.57142 10 3.57142C10.3929 3.57142 10.7143 3.89285 10.7143 4.28572V9.65715L14.0179 12.3C14.325 12.5464 14.375 12.9964 14.1286 13.3036C13.9893 13.4786 13.7822 13.5714 13.5714 13.5714C13.4143 13.5714 13.2571 13.5214 13.125 13.4143L9.55359 10.5572C9.38574 10.4214 9.28575 10.2179 9.28575 10V4.28572H9.28569Z" fill="white"/></g><defs><clipPath id="clip0_2004_569"><rect width="20" height="20" fill="white"/></clipPath></defs></svg>');
    width: 20px;
    height: 20px;
    position: absolute;
    left: 33px;
    top: 0px;
    bottom: 0px;
    margin: auto 0px;
}

.table-form .elementor-field-type-date:after,
.table-form .elementor-field-type-time:after {
    content: "";
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M10.0001 13.3333C9.8904 13.3339 9.78168 13.3129 9.68015 13.2714C9.57862 13.23 9.48627 13.1689 9.40841 13.0916L4.40841 8.09162C4.25149 7.9347 4.16333 7.72187 4.16333 7.49995C4.16333 7.27803 4.25149 7.0652 4.40841 6.90828C4.56533 6.75136 4.77816 6.66321 5.00007 6.66321C5.22199 6.66321 5.43482 6.75136 5.59174 6.90828L10.0001 11.325L14.4084 6.91662C14.5678 6.7801 14.7729 6.70876 14.9826 6.71686C15.1923 6.72496 15.3913 6.8119 15.5397 6.96032C15.6881 7.10873 15.7751 7.30768 15.7832 7.51741C15.7913 7.72714 15.7199 7.9322 15.5834 8.09162L10.5834 13.0916C10.4282 13.2456 10.2187 13.3324 10.0001 13.3333Z" fill="white"/></svg>');
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 30px;
    background-position: center;
    background-size: cover;
}

.table-form input[type="date"]::-webkit-calendar-picker-indicator,
.table-form input[type="time"]::-webkit-calendar-picker-indicator {
    display: none;
    -webkit-appearance: none;
}

.table-form input[type="date"],
.table-form input[type="time"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: none !important;
}


.menu-list .elementor-icon-list-item {
    padding-left: 30px !important;
    padding-right: 30px !important;
}

.menu-list .elementor-icon-list-text {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.events-slider .swiper-initialized {
    margin-right: -23vw;
}

.events-btn .elementor-button-icon svg {
    width: 11px !important;
}

.events-btn .elementor-button:hover .elementor-button-icon {
    filter: brightness(100) invert(0);
}

.events-slider .elementor-swiper-button-prev {
    left: calc(100% - 380px) !important;
    top: -75px !important;
}

.events-slider .elementor-swiper-button-next {
    right: 311px !important;
    top: -75px !important;
}

.events-slider .elementor-swiper-button-prev,
.events-slider .elementor-swiper-button-next {
    opacity: 0.5;
}

.events-slider .elementor-swiper-button-prev:hover,
.events-slider .elementor-swiper-button-next:hover {
    opacity: 1;
}

.events-slider .elementor-swiper-button-prev:hover svg,
.events-slider .elementor-swiper-button-next:hover svg {
    filter: brightness(0) saturate(100%) invert(33%) sepia(98%) saturate(1357%) hue-rotate(350deg) brightness(95%) contrast(87%);
}

.gallery-slider.elementor-widget-image-carousel .swiper-wrapper {
    will-change: transform;
    transition-timing-function: linear !important;
}

.cta-text strong {
    color: #000 !important;
}

.contact-form .elementor-mark-required .elementor-field-label:after {
    padding-inline-start: 0em;
}

.contact-form input[type=email]:focus,
.contact-form input[type=password]:focus,
.contact-form input[type=reset]:focus,
.contact-form input[type=search]:focus,
.contact-form input[type=tel]:focus,
.contact-form input[type=text]:focus,
.contact-form input[type=url]:focus,
.contact-form select:focus,
.contact-form textarea:focus,
.contact-form .elementor-field-textual:focus {
    box-shadow: unset !important;
    border-style: solid !important;
    border-color: #00000033 !important;
}

.contact-form input[type=email]::placeholder,
.contact-form input[type=password]::placeholder,
.contact-form input[type=reset]::placeholder,
.contact-form input[type=search]::placeholder,
.contact-form input[type=tel]::placeholder,
.contact-form input[type=text]::placeholder,
.contact-form input[type=url]::placeholder,
.contact-form select::placeholder,
.contact-form textarea::placeholder {
    font-size: 30px !important;
    line-height: 0.6em;
}

.contact-form select,
.contact-form textarea,
.contact-form input {
    padding: 20px 30px !important;
}

.contact-form label {
    padding-left: 30px !important;
}

.contact-form .elementor-field-type-checkbox span.elementor-field-option input {
    width: 0px;
    height: 0px;
    position: absolute;
    opacity: 0;
}

.contact-form .elementor-field-type-checkbox span.elementor-field-option label {
    position: relative;
    display: flex;
    padding-left: 60px !important;
}

.contact-form .elementor-field-type-checkbox span.elementor-field-option label:before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    position: absolute;
    top: 2px;
    left: 30px;
    border: 1.5px solid rgba(0, 0, 0, 0.2);
    opacity: 0.6;
}

.contact-form .elementor-field-type-checkbox span.elementor-field-option label:after {
    content: "";
    width: 7px;
    height: 13px;
    display: block;
    position: absolute;
    top: 4px;
    left: 37px;
    border-right: 2px solid #000000;
    border-bottom: 2px solid #000000;
    opacity: 0;
    transform: rotate(42deg);
}

.contact-form .elementor-field-type-checkbox span.elementor-field-option input:checked+label:after {
    opacity: 1;
}

.contact-form .elementor-select-wrapper .select-caret-down-wrapper {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M10.0001 13.3333C9.8904 13.3339 9.78168 13.3129 9.68015 13.2714C9.57862 13.23 9.48627 13.1689 9.40841 13.0916L4.40841 8.09162C4.25149 7.9347 4.16333 7.72187 4.16333 7.49995C4.16333 7.27803 4.25149 7.0652 4.40841 6.90828C4.56533 6.75136 4.77816 6.66321 5.00007 6.66321C5.22199 6.66321 5.43482 6.75136 5.59174 6.90828L10.0001 11.325L14.4084 6.91662C14.5678 6.7801 14.7729 6.70876 14.9826 6.71686C15.1923 6.72496 15.3913 6.8119 15.5397 6.96032C15.6881 7.10873 15.7751 7.30768 15.7832 7.51741C15.7913 7.72714 15.7199 7.9322 15.5834 8.09162L10.5834 13.0916C10.4282 13.2456 10.2187 13.3324 10.0001 13.3333Z" fill="black"/></svg>');
    background-repeat: no-repeat;
    background-size: 20px;
    width: 20px;
    height: 20px;
}

.contact-form .elementor-select-wrapper .select-caret-down-wrapper i {
    font-size: 0 !important;
    line-height: 2;
}

.faq-sec .e-n-accordion-item {
    border-bottom: 1px solid #00000033;
    padding-bottom: 31px;
}

.review-slider .swiper-initialized {
    margin-right: -16.5vw;
}

.review-slider .elementor-swiper-button-prev {
    left: calc(100% - 380px) !important;
    top: -75px !important;
}

.review-slider .elementor-swiper-button-next {
    right: 311px !important;
    top: -75px !important;
}

.review-slider .elementor-swiper-button-prev,
.review-slider .elementor-swiper-button-next {
    opacity: 0.5;
}

.review-slider .elementor-swiper-button-prev:hover,
.review-slider .elementor-swiper-button-next:hover {
    opacity: 1;
}

.review-slider .elementor-swiper-button-prev:hover svg,
.review-slider .elementor-swiper-button-next:hover svg {
    filter: brightness(0) saturate(100%) invert(33%) sepia(98%) saturate(1357%) hue-rotate(350deg) brightness(95%) contrast(87%);
}

/* responsive */

@media screen and (max-width: 1680px) {

    .header-menu .elementor-item {
        font-size: 16px !important;
    }
}

@media screen and (max-width: 1400px) {
    .header-menu .elementor-item {
        font-size: 14px !important;
    }
}

@media screen and (max-width: 1199px) {

    .contact-form input[type=email]::placeholder,
    .contact-form input[type=password]::placeholder,
    .contact-form input[type=reset]::placeholder,
    .contact-form input[type=search]::placeholder,
    .contact-form input[type=tel]::placeholder,
    .contact-form input[type=text]::placeholder,
    .contact-form input[type=url]::placeholder,
    .contact-form select::placeholder,
    .contact-form textarea::placeholder {
        font-size: 20px !important;
    }

    .contact-form .elementor-field-group {
        padding-right: calc(60px/2) !important;
        padding-left: calc(60px/2) !important;
        margin-bottom: 40px !important;
    }

    .review-slider .elementor-swiper-button-prev,
    .events-slider .elementor-swiper-button-prev {
        left: calc(100% - 245px) !important;
        top: -50px !important;
    }

    .review-slider .elementor-swiper-button-next,
    .events-slider .elementor-swiper-button-next {
        right: 190px !important;
        top: -50px !important;
    }

    .contact-form select,
    .contact-form textarea,
    .contact-form input {
        padding: 20px 10px !important;
    }

    .contact-form label {
        padding-left: 10px !important;
    }

    .contact-form .elementor-field-type-checkbox span.elementor-field-option label:after {
        left: 17px !important;
    }

    .contact-form .elementor-field-type-checkbox span.elementor-field-option label {
        padding-left: 40px !important;
    }

    .contact-form .elementor-field-type-checkbox span.elementor-field-option label:before {
        left: 10px !important;
    }
}

@media (max-width:991px) {
    .menu-list .elementor-icon-list-item {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .contact-form .elementor-button {
        padding: 15px 55px !important;
    }

    .contact-form input[type=email]::placeholder,
    .contact-form input[type=password]::placeholder,
    .contact-form input[type=reset]::placeholder,
    .contact-form input[type=search]::placeholder,
    .contact-form input[type=tel]::placeholder,
    .contact-form input[type=text]::placeholder,
    .contact-form input[type=url]::placeholder,
    .contact-form select::placeholder,
    .contact-form textarea::placeholder {
        font-size: 18px !important;
    }

    .contact-form select,
    .contact-form textarea,
    .contact-form input {
        padding: 10px 10px !important;
    }
}

@media (max-width:575px) {
    .footer-menu .elementor-item {
        justify-content: center;
    }

    .footer-sign-form .elementor-field-type-email {
        width: calc(100% - 46px);
    }

    .footer-sign-form .elementor-field-type-email input {
        padding: 12.5px 10px !important;
    }

    .footer-sign-form .elementor-button {
        padding: 15px 17.5px !important;
    }

    .events-slider .swiper-initialized,
    .review-slider .swiper-initialized {
        margin-right: 0;
    }

    .review-slider .elementor-swiper-button-prev,
    .events-slider .elementor-swiper-button-prev {
        left: calc(50% - 15px) !important;
        top: auto !important;
        bottom: -5px !important;
    }

    .review-slider .elementor-swiper-button-next,
    .events-slider .elementor-swiper-button-next {
        right: calc(50% - 35px) !important;
        top: auto !important;
        bottom: -5px !important;
    }

    .hero-slider .elementor-swiper-button-prev {
        left: calc(50% - 30px) !important;
        top: auto !important;
        bottom: 10px !important;
    }

    .hero-slider .elementor-swiper-button-next {
        right: calc(50% - 30px) !important;
        top: auto !important;
        bottom: 10px !important;
    }

    .contact-form .elementor-button {
        padding: 15px 45px !important;
    }
}