:root {
    --dp_10: clamp(10px, 3vw, 20px);
    --dp_20: clamp(15px, 4vw, 30px);
    --dp_30: clamp(20px, 3vw, 40px);
    --dp_40: clamp(30px, 3vw, 55px);
    --dp_50: clamp(40px, 5vw, 70px);
    --dp_60: clamp(50px, 6.5vw, 85px);


    --big_gap: clamp(30px, 8vw, 100px);


    --op_30: clamp(75px, 6vw, 130px);
    --op_40: clamp(90px, 8vw, 200px);
    --op_50: clamp(120px, 10vw, 250px);

    --header_logo_width: 175px;
}

.elementor a {
    color: var(--e-global-color-accent);
}

body {
    margin: 0;
    padding: 0;
}

body > div[data-elementor-type="wp-page"] {
    overflow: hidden;
}

body > header {
    position: fixed;
    width: 100%;
    z-index: 99;
}

.e-loop-item.is-hidden-by-tab {
    display: none !important;
}
.stage-tabs {
    display: flex;
    gap: clamp(20px, 5vw, 40px);
    align-items: center;
}
.stage-tabs a {
    cursor: pointer;
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    color: var(--e-global-color-primary);
    font-size: clamp(18px, 3vw, 22px);
    font-weight: 900;
    opacity: 0.2;
    color: #fff;
}
.stage-tabs a.active {
    opacity: 1;
}
.text_outline,
.text_outline *,
.elementor-countdown-digits {
    color: transparent !important;
    -webkit-text-stroke: 1px #fff !important;
}

.text_gradient {
    background: -webkit-linear-gradient(#FADB2D, #EBA439);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    padding-top: 0em;
    padding-bottom: 0.3em;
}



#header_menu_wrapper.bg_active {
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
    background: #700324;
    /*box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.10);*/
}

#header_menu_wrapper {
    transition: padding 0.3s ease 0s, background 0.15s ease 0s;
    --padding-left: var(--dp_10);
    --padding-right: var(--dp_10);
    --padding-top: var(--dp_20);
    --padding-bottom: var(--dp_20);
}
#header_menu_wrapper.bg_active {
    --padding-top: var(--dp_10);
    --padding-bottom: var(--dp_10);
}

#header_menu_overlay {
    position: fixed;
    overflow-y: auto;
    overflow-x: hidden;
    width: 0%;
    left: 0;
    top: 0;
    height: 100vh;
    z-index: 95;
}
#header_menu_overlay > div {
    max-width: 100vw;
    width: 100vw;
    transition: none !important;
}

/* Activate mobile menu */
@media only screen and (min-width: 767px) {
    #header_menu_overlay,
    #header_menu_controller {
        display: none;
    }
}

@media only screen and (max-width: 767px) {
    #header_menu_overlay,
    #header_menu_controller {
        display: block;
    }
    #header_menu_desktop_links {
        display: none;
    }
}

#header_menu_controller {
    position: relative;
    z-index: 100;
    background: transparent;
}
#header_menu_controller:focus-visible {
    outline: 0;
}
.hamburger {
    padding: 0px;
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible; }
.hamburger:hover {
    opacity: 0.7; }
.hamburger.is-active:hover {
    opacity: 0.7; }
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
    background-color: transparent; }

.hamburger-box {
    width: 40px;
    height: 24px;
    display: inline-block;
    position: relative; }

.hamburger-inner {
    background-image: url('data:image/svg+xml,<svg width="27" height="3" viewBox="0 0 27 3" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M-8.00518e-06 2.17922C1.69342 1.43563 3.33191 1.20797 4.96739 1.04479C8.60902 0.682279 12.2526 0.283617 15.9053 0.0940564C19.0663 -0.0700989 22.2414 0.0334751 25.4105 0.0197955C25.7312 0.0188184 26.0419 0.0745141 26.3316 0.216196C26.5424 0.318793 26.6453 0.510307 26.6293 0.721364C26.6133 0.938284 26.4585 1.10146 26.2417 1.16791C26.1098 1.20797 25.964 1.20894 25.8241 1.21676C22.655 1.38287 19.5399 1.99943 16.3938 2.31211C11.91 2.75669 7.39814 2.90033 2.88932 2.63162C1.98116 2.57788 1.08299 2.35412 -0.00100708 2.17922H-8.00518e-06Z" fill="white"/></svg>');
    display: block;
    top: 50%;
    margin-top: -2px; }
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: transparent;
    background-size: 100% auto;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
.hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
.hamburger-inner::before {
    background-image: url('data:image/svg+xml,<svg width="27" height="3" viewBox="0 0 27 3" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M26.1848 1.64524C23.4483 1.45959 20.8217 1.53189 18.1962 1.86313C13.6364 2.43768 9.05961 2.31651 4.48185 2.11718C3.06416 2.05563 1.68044 1.86216 0.353673 1.35503C0.232784 1.30911 0.0689362 1.314 0 1.12541C1.081 0.716001 2.21595 0.517646 3.3519 0.442409C7.63893 0.160022 11.932 -0.0139042 16.23 -0.000224578C17.8215 0.00563811 19.3721 0.374988 20.9536 0.477585C22.3233 0.565525 23.6911 0.698413 25.0578 0.826415C25.5424 0.872339 26.0449 0.93292 26.1848 1.64426V1.64524Z" fill="white"/></svg>');
    top: -10px; }
.hamburger-inner::after {
    background-image: url('data:image/svg+xml,<svg width="26" height="3" viewBox="0 0 26 3" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.66036C0.870194 1.02817 1.78735 0.729171 2.74346 0.51616C3.74453 0.293378 4.76759 0.221073 5.78464 0.169286C8.17643 0.0471463 10.5682 -0.0505654 12.969 0.0285809C16.7375 0.152674 20.509 0.128247 24.2805 0.0803679C24.5623 0.0764594 24.844 0.0735281 25.1247 0.0911162C25.3495 0.105773 25.5304 0.213255 25.5963 0.438969C25.6742 0.705721 25.5623 0.912869 25.3365 1.05846C25.0358 1.25095 24.6931 1.31642 24.3405 1.36625C22.0706 1.68186 19.7797 1.76101 17.4978 1.93982C14.9342 2.14013 12.3675 2.30526 9.80192 2.47625C7.58098 2.6238 5.36503 2.52413 3.14908 2.36193C2.09706 2.28474 1.13695 1.83624 0.0019981 1.66036H0Z" fill="white"/></svg>');
    bottom: -10px; }

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
    transition-duration: 0.22s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
.hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin.is-active .hamburger-inner {
    transform: rotate(225deg);
    transition-delay: 0.12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
.hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
.hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

@media only screen and (max-width: 767px) {
    .hide_mobile_image {
        display: none;
    }
}


.np-term-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.np-term-button {
    background: var(--e-global-color-accent);
    font-family: "Titillium Web", Sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #fff !important;
    display: inline-block;
    padding: .8rem 1.5rem;
    border-radius: 999px;
    line-height: 1;
    user-select: none;
    transition: all 0.2s ease;
}
.np-term-button:hover {
    background: #fff;
    color: var(--e-global-color-6c0c017) !important;
}

@media only screen and (min-width: 767px) {
    .menu_btn a {
        background: var(--e-global-color-accent);
        color: #fff;
        padding: .4rem 1.4rem !important;
        border-radius: 999px;
        line-height: 1;
        user-select: none;
        display: inline-block !important;
        transition: all .15s ease;

    }
    .menu_btn a {
        margin: 0 !important;
    }
    .menu_btn:hover a {
        background: #fff;
        color: var(--e-global-color-6c0c017) !important;
    }
}

@media only screen and (max-width: 767px) {
.current-menu-item a {
    position: relative;
    display: inline-block !important;
}
.current-menu-item a::before {
    content: '\e800';
    position: absolute;
    font-size: 2.2rem;
    top: 0;
    left: 0;
    font-family: "sjaellandsfestivalen";
    font-style: normal;
    font-weight: normal;
    speak: never;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
}
}

.current-menu-item a::before {
    left: auto;
    right: 0;
    top: 50%;
    transform: translate(calc(100% + 15px), calc(-50% - 1rem));
    opacity: 1 !important;
    background: transparent !important;
    color: inherit;
}
.elementor-widget-n-accordion .e-n-accordion-item-title{
    border-radius: 20px !important;
    outline: 0 !important;
    transition: border-radius 0.3s ease .3s;
}
.elementor-widget-n-accordion .e-n-accordion-item-title + div {
    border-radius: 0 0 20px 20px !important;
    outline: 0;
    border: 0;
}

.elementor-widget-n-accordion .e-n-accordion-item-title[aria-expanded="true"]{
    transition: border-radius 0s ease 0s;
    border-radius: 20px 20px 0 0 !important;
}

.elementor-widget-n-accordion .e-n-accordion-item-title + div .e-con-inner > div {
    max-width: 770px !important;
}


body .gform-theme--api,
body .gform-theme--foundation {
    --gf-form-gap-x: 20px;
    --gf-form-gap-y: 20px;
    --gf-form-footer-margin-y-start: 24px;
    --gf-form-footer-gap: 8px;
    --gf-field-gap-x: 12px;
    --gf-field-gap-y: 12px;
    --gf-field-date-width: 168px;
    --gf-field-time-width: 110px;
    --gf-field-list-btns-gap: 8px;
    --gf-field-list-btns-width: calc(32px + var(--gf-field-list-btns-gap) + var(--gf-field-gap-x));
    --gf-field-pg-steps-gap-y: 8px;
    --gf-field-pg-steps-gap-x: 24px;
    --gf-label-width: 30%;
    --gf-label-req-gap: 6px;
}

#gform_1 {
    width: clamp(0px, 100%, 310px);
}

.ginput_container input {
    border: 0 !important;
    outline: 0 !important;
    border-radius: 200px !important;
    padding-left: 15px !important;
    font-family: var(--e-global-typography-primary-font-family), Sans-serif !important;
    font-weight: var(--e-global-typography-primary-font-weight) !important;
    font-weight: 400 !important;
}

.gform_button.custom-gf-button {
    position: relative;
    outline: 0 !important;
    border-radius: 200px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    font-weight: 900 !important;
    background: var(--e-global-color-7816634) !important;
    font-family: var(--e-global-typography-text-font-family), Sans-serif !important;
    line-height: var(--e-global-typography-text-line-height) !important;
    transition: all 0.2s ease !important;
}
.gform_button.custom-gf-button:hover {
    background: #540019 !important;
}
.gform_button.custom-gf-button span::after {
    content: '\e801';
    font-size: 0.8rem;
    transform: translate(0, -.1rem);
    font-family: "sjaellandsfestivalen";
    margin-left: 12px;
    font-style: normal;
    font-weight: normal;
    speak: never;
    display: inline-block;
    text-decoration: inherit;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
}

.form_receipt_line_1 {
    margin: 0;
    font-family: var(--e-global-typography-d2c5918-font-family), Sans-serif;
    font-size: var(--e-global-typography-d2c5918-font-size);
    font-weight: 700;
    color: #fff;
}
.form_receipt_line_2 {
    margin: 0;
    font-family: var(--e-global-typography-d2c5918-font-family), Sans-serif;
    font-size: var(--e-global-typography-af05147-font-size);
    font-weight: 700;
    line-height: var(--e-global-typography-af05147-line-height);
    color: var(--e-global-color-7816634);
}

.first-letter-uppercase:first-letter {
    text-transform: uppercase;
}

