/**
Theme Name: Nightcap
Author: Blue Winds Media
Author URI: https://www.bluewindsmedia.com
Description: A custom theme for Nightcap, 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: nightcap
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 ======= */



/* ======= Hover Button CSS: Start ======= */

/* ======= Hover Button CSS: End ======= */



/* ======= Heading Text Anim CSS: Start ======= */
span.word {
    display: inline-flex;
    overflow: hidden;
}

.text-anim span.word span.char {
    opacity: 0;
    transition: all 1.2s cubic-bezier(0.17, 0.17, 0, 0.79) !important;
}

.text-anim.split-is h1 span.word span.char,
.text-anim.split-is h2 span.word span.char,
.text-anim.split-is h3 span.word span.char,
.text-anim.split-is h4 span.word span.char {
    opacity: 1;
    transition-delay: calc(30ms * var(--char-index)) !important;
    display: inline-flex;
}

/* ======= Heading Text Anim CSS: End ======= */



/* ======= Header Section CSS: Start ======= */


/* ======= Header Section CSS: End ======= */



/* ======= Footer Section CSS: Start ======= */

.footer-top-sec:before {
    content: "";
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.2);
    margin-top: 55px;
}

.footer-top-sec:after {
    content: "";
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.2);
    display: block;
    position: absolute;
    bottom: 0;
}

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

.footer-form .elementor-field-type-submit button.elementor-button.elementor-size-sm {
    height: 100%;
    width: 60px !important;
}

.footer-form .elementor-form-fields-wrapper {
    display: flex;
    justify-content: space-between;
}

.footer-form .elementor-field-type-submit.elementor-col-100.e-form__buttons {
    width: 60px;
}

.footer-form .elementor-field-group-email {
    width: calc(100% - 60px) !important;
}

.footer-form .elementor-form-fields-wrapper .elementor-field-group input:focus {
    box-shadow: none !important;
    border-style: solid !important;
}

/* ======= Footer Section CSS: End ======= */



/* =======  Banner Section CSS: Start ======= */

.banner-form-sec {
    background: rgba(26, 26, 26, 0.20);
    backdrop-filter: blur(5px);
}

.banner-form .elementor-form-fields-wrapper .elementor-field-group input {
    padding: 18px 20px 18px 55px;
}

.banner-form .elementor-form-fields-wrapper .elementor-field-type-text input {
    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_1_386)"><path d="M9.85748 9.63406C11.181 9.63406 12.3271 9.15936 13.2635 8.22278C14.2 7.28635 14.6747 6.14057 14.6747 4.81688C14.6747 3.49364 14.2 2.34771 13.2634 1.41097C12.3268 0.474699 11.1809 0 9.85748 0C8.53378 0 7.388 0.474699 6.45157 1.41113C5.51514 2.34756 5.04028 3.49349 5.04028 4.81688C5.04028 6.14057 5.51514 7.2865 6.45172 8.22293C7.38831 9.1592 8.53424 9.63406 9.85748 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_1_386"><rect width="20" height="20" fill="white"/></clipPath></defs></svg>');
    background-repeat: no-repeat;
    background-position: 25px;
}

.banner-form .elementor-form-fields-wrapper .elementor-field-type-date input {
    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.8334 4.16663H15V2.49996C15 2.27895 14.9122 2.06698 14.7559 1.9107C14.5997 1.75442 14.3877 1.66663 14.1667 1.66663C13.9457 1.66663 13.7337 1.75442 13.5774 1.9107C13.4212 2.06698 13.3334 2.27895 13.3334 2.49996V4.16663H6.66669V2.49996C6.66669 2.27895 6.57889 2.06698 6.42261 1.9107C6.26633 1.75442 6.05437 1.66663 5.83335 1.66663C5.61234 1.66663 5.40038 1.75442 5.2441 1.9107C5.08782 2.06698 5.00002 2.27895 5.00002 2.49996V4.16663H4.16669C3.50365 4.16663 2.86776 4.43002 2.39892 4.89886C1.93008 5.3677 1.66669 6.00359 1.66669 6.66663V7.49996H18.3334V6.66663C18.3334 6.00359 18.07 5.3677 17.6011 4.89886C17.1323 4.43002 16.4964 4.16663 15.8334 4.16663Z" fill="white"/><path d="M1.66669 15.8333C1.66669 16.4963 1.93008 17.1322 2.39892 17.6011C2.86776 18.0699 3.50365 18.3333 4.16669 18.3333H15.8334C16.4964 18.3333 17.1323 18.0699 17.6011 17.6011C18.07 17.1322 18.3334 16.4963 18.3334 15.8333V9.16663H1.66669V15.8333Z" fill="white"/></svg>');
    background-repeat: no-repeat;
    background-position: 25px;
}

.banner-form .elementor-form-fields-wrapper .elementor-field-type-time input {
    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_1_405)"><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_1_405"><rect width="20" height="20" fill="white"/></clipPath></defs></svg>');
    background-repeat: no-repeat;
    background-position: 25px;
}

.banner-form .elementor-form-fields-wrapper .elementor-field-group:not(:last-child):after {
    content: "";
    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 13.3333C9.89034 13.3339 9.78162 13.3129 9.68009 13.2714C9.57856 13.23 9.48621 13.1689 9.40835 13.0916L4.40835 8.09162C4.25143 7.9347 4.16327 7.72187 4.16327 7.49995C4.16327 7.27803 4.25143 7.0652 4.40835 6.90828C4.56527 6.75136 4.77809 6.66321 5.00001 6.66321C5.22193 6.66321 5.43476 6.75136 5.59168 6.90828L10 11.325L14.4083 6.91662C14.5678 6.7801 14.7728 6.70876 14.9826 6.71686C15.1923 6.72496 15.3912 6.8119 15.5396 6.96032C15.6881 7.10873 15.775 7.30768 15.7831 7.51741C15.7912 7.72714 15.7199 7.9322 15.5833 8.09162L10.5833 13.0916C10.4281 13.2456 10.2186 13.3324 10 13.3333Z" fill="white"/></svg>');
    width: 20px;
    height: 20px;
    display: block;
    position: absolute;
    right: 30px;
    background-size: 20px;
}

.banner-form .elementor-form-fields-wrapper .elementor-field-group input:focus {
    box-shadow: none !important;
    border-style: solid !important;
}
.menu-tab-col .elementor-icon-box-content {
    display: flex;
    justify-content: space-between;
    text-align: left;
}

.reserve-sec .e-con-inner {
    margin-right: 0;
}

.contact-form .gform_wrapper .gform-body.gform_body .gfield .gfield_label {
    color: #FFF;
    font-family: Manrope;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    margin-left: 30px;
}

.contact-form .gform_wrapper .gform-body.gform_body .gfield input,
.contact-form .gform_wrapper .gform-body.gform_body .gfield textarea {
    padding: 0 0 20px 30px !important;
    border-width: 0 0 1px 0 !important;
    background-color: transparent;
    color: #FFF;
    font-family: Cormorant !important;
    font-size: 30px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 1em !important;
    border-color: rgba(255, 255, 255, 0.2);
    border-radius: 0px 0px 0px 0px;
}

.contact-form .gform_wrapper .gform-body.gform_body .gfield input::placeholder,
.contact-form .gform_wrapper .gform-body.gform_body .gfield textarea::placeholder {
    color: rgba(255, 255, 255, 0.3) !important;
    opacity: 1;
}

.contact-form .gform_wrapper .gform-body.gform_body .gfield input:focus,
.contact-form .gform_wrapper .gform-body.gform_body .gfield textarea:focus {
    box-shadow: none !important;
    border-style: solid !important;
}

.contact-form .gform_wrapper .gform-body.gform_body .gform_fields {
    gap: 60px 80px;
}

.contact-form .gform_wrapper .gform_heading {
    display: none;
}

.contact-form .gform_wrapper .gform-footer {
    padding: 0 !important;
    margin: 60px 0 0 0 !important;
    display: flex;
    justify-content: center;
}

.contact-form .gform_wrapper .gform-footer input {
    margin: 0 !important;
    font-family: "Manrope", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.33em;
    text-transform: uppercase;
    border-style: none;
    background: rgba(166, 135, 104, 1);
    padding: 18px 54px;
    display: flex;
    align-items: center;
    border-radius: 0px;
    transition: all 0.4s ease-in-out;
}

.contact-form .gform_wrapper .gform-footer input:hover {
    background: #fff !important;
    color: rgba(166, 135, 104, 1) !important;
}

.contact-form .gform_wrapper.gravity-theme .gform_drop_area {
    background: transparent !important;
    border: 0px dashed #ccc !important;
    margin-bottom: 8px;
    padding: 10px 0 30px 30px;
    text-align: left !important;
    border-bottom: 1px solid rgb(255 255 255 / 20%) !important;
    border-radius: 0;
}

.contact-form .gform_wrapper.gravity-theme .gform_drop_area span.gform_drop_instructions {
    display: none;
}

.contact-form .gfield_description.gform_fileupload_rules,
.gform_wrapper.gravity-theme .ginput_preview {
    color: rgba(255, 255, 255, 0.3) !important;
    font-family: Manrope;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 1em;
}

.contact-form .gfield_description.gform_fileupload_rules {
    margin-left: 30px;
}

.contact-form .gform_wrapper.gravity-theme .gform_drop_area button {
    background: transparent;
    color: rgb(255 255 255 / 30%);
    font-family: Manrope;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 1em;
    border: 1px solid rgb(255 255 255 / 20%);
}

.contact-form .gform_wrapper.gravity-theme .gfield_required {
    color: #fff !important;
}

.review-slider .e-n-carousel.swiper {
    width: 106.25vw !important;
}

.review-slider .elementor-swiper-button:hover svg path {
    opacity: 1 !important;
}

/* =======  Banner Section CSS: End ======= */

.menu-tab-col .menu-column .elementor-widget-icon-box .elementor-widget-container {
    padding: 0 !important;
    border: none !important;
}

.menu-column {
    padding: 0px 30px 30px 30px;
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    border-color: #FFFFFF33;
    gap: 20px;
}

.menu-column .elementor-widget-text-editor {
    padding-left: 35px;
}


/* ======= Responsive CSS: Start ======= */

/*
    Elementor Breakpoint For Responsive Screen : 
    Mobile Portrait   : 767
    Mobile Landscape  : 1024
    Tablet Portrait   : 1200
    Tablet Landscape  : 1400
    Laptop            : 1600
    */

@media screen and (min-width: 1600px) and (max-width: 1780px) {}

@media screen and (min-width: 1600px) and (max-width: 1780px) {}

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

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

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

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

    .review-slider .e-n-carousel.swiper {
        width: 115vw !important;
    }
}

@media screen and (min-width: 1200px) and (max-width: 1299px) {

    .header-menu-sec ul li a {
        font-size: 16px !important;
    }

    .review-slider .e-n-carousel.swiper {
        width: 130vw !important;
    }
}

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

    .footer-top-sec:before {
        margin-top: 42px !important;
    }

    .footer-form .elementor-field-group-email input {
        padding: 15px 15px !important;
    }

    .contact-form .gform_wrapper .gform-body.gform_body .gfield input,
    .contact-form .gform_wrapper .gform-body.gform_body .gfield textarea {
        padding: 0 0 10px 10px !important;
        font-size: 24px !important;
    }

    .contact-form .gform_wrapper .gform-body.gform_body .gfield .gfield_label,
    .contact-form .gfield_description.gform_fileupload_rules {
        margin-left: 10px !important;
    }

    .contact-form .gform_wrapper.gravity-theme .gform_drop_area {
        padding: 10px 0 20px 10px !important;
    }

    .contact-form .gform_wrapper .gform-body.gform_body .gform_fields {
        gap: 50px 60px !important;
    }

    .banner-form .elementor-form-fields-wrapper .elementor-field-group input {
        padding: 15px 10px 15px 35px !important;
        background-position: 10px !important;
        background-size: 15px !important;
    }

    .banner-form .elementor-form-fields-wrapper .elementor-field-group:not(:last-child):after {
        right: 20px !important;
    }

    .banner-form button.elementor-button.elementor-size-sm {
        padding: 18.5px 50px !important;
    }

    .menu-column {
        padding: 0px 20px 20px 20px !important;
        gap: 10px !important;
        width: 100% !important;
    }
	
	
}

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

    .contact-form .gform_wrapper .gform-body.gform_body .gform_fields {
        gap: 40px 40px !important;
    }

    .banner-form button.elementor-button.elementor-size-sm,
    .contact-form .gform_wrapper .gform-footer input {
        padding: 15px 40px !important;
        font-size: 16px !important;
    }
	
	
    .menu-tab-col .elementor-widget-icon-box {
        width: 100% !important;
    }
}

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

    .footer-top-sec:before {
        content: none;
    }

    .contact-form .gform_wrapper.gravity-theme .gfield:not(.gfield--width-full) {
        grid-column: 1/-1 !important;
    }

    .contact-form .gform_wrapper .gform-body.gform_body .gform_fields {
        gap: 40px 0px !important;
    }

    .banner-form .elementor-form-fields-wrapper .elementor-field-group:not(:last-child) {
        width: 33% !important;
    }

    .banner-form .elementor-form-fields-wrapper .elementor-field-group:last-child {
        width: 100% !important;
        justify-content: center !important;
        margin: 20px;
    }
    
    .menu-column {
        padding: 0 0 20px 0 !important;
    }

    .menu-column .elementor-widget-text-editor {
    padding-left: 25px !important;
}
}

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

    .contact-form .gform_wrapper .gform-body.gform_body .gfield input,
    .contact-form .gform_wrapper .gform-body.gform_body .gfield textarea {
        font-size: 20px !important;
    }

    .review-slider .e-n-carousel.swiper {
        width: 100% !important;
    }

    .menu-tab-col .elementor-icon-box-wrapper {
        display: flex;
        flex-direction: row !important;
    }

    .banner-form .elementor-form-fields-wrapper .elementor-field-group:not(:last-child) {
        width: 100% !important;
    }

    .contact-form .gform_wrapper .gform-body.gform_body .gfield .gfield_label {
        font-size: 16px !important;
    }

    br {
        display: none;
    }

}

/* ======= Responsive CSS: End ======= */