.elementor-443 .elementor-element.elementor-element-25d6a19{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:3rem 3rem;--row-gap:3rem;--column-gap:3rem;--padding-top:3rem;--padding-bottom:6.25rem;--padding-left:2.5rem;--padding-right:2.5rem;}.elementor-443 .elementor-element.elementor-element-2fdda00{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:0.5rem 0.5rem;--row-gap:0.5rem;--column-gap:0.5rem;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), system-ui, sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );color:var( --e-global-color-primary );}.elementor-443 .elementor-element.elementor-element-960a4f6{text-align:center;}.elementor-443 .elementor-element.elementor-element-960a4f6 .elementor-heading-title{font-family:var( --e-global-typography-fcb2023-font-family ), system-ui, sans-serif;font-size:var( --e-global-typography-fcb2023-font-size );font-weight:var( --e-global-typography-fcb2023-font-weight );text-transform:var( --e-global-typography-fcb2023-text-transform );font-style:var( --e-global-typography-fcb2023-font-style );text-decoration:var( --e-global-typography-fcb2023-text-decoration );line-height:var( --e-global-typography-fcb2023-line-height );letter-spacing:var( --e-global-typography-fcb2023-letter-spacing );word-spacing:var( --e-global-typography-fcb2023-word-spacing );color:var( --e-global-color-af77de6 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), system-ui, sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-443 .elementor-element.elementor-element-c2c772b{text-align:center;font-family:var( --e-global-typography-5e17869-font-family ), system-ui, sans-serif;font-size:var( --e-global-typography-5e17869-font-size );font-weight:var( --e-global-typography-5e17869-font-weight );text-transform:var( --e-global-typography-5e17869-text-transform );font-style:var( --e-global-typography-5e17869-font-style );text-decoration:var( --e-global-typography-5e17869-text-decoration );line-height:var( --e-global-typography-5e17869-line-height );letter-spacing:var( --e-global-typography-5e17869-letter-spacing );word-spacing:var( --e-global-typography-5e17869-word-spacing );color:var( --e-global-color-9b51c9c );}.elementor-443 .elementor-element.elementor-element-c2c772b a{color:var( --e-global-color-aa91062 );}.elementor-443 .elementor-element.elementor-element-c2c772b a:hover, .elementor-443 .elementor-element.elementor-element-c2c772b a:focus{color:var( --e-global-color-aa91062 );}.elementor-443 .elementor-element.elementor-element-a8f4bbc{width:100%;max-width:100%;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-443 .elementor-element.elementor-element-960a4f6 .elementor-heading-title{font-size:var( --e-global-typography-fcb2023-font-size );line-height:var( --e-global-typography-fcb2023-line-height );letter-spacing:var( --e-global-typography-fcb2023-letter-spacing );word-spacing:var( --e-global-typography-fcb2023-word-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-443 .elementor-element.elementor-element-c2c772b{font-size:var( --e-global-typography-5e17869-font-size );line-height:var( --e-global-typography-5e17869-line-height );letter-spacing:var( --e-global-typography-5e17869-letter-spacing );word-spacing:var( --e-global-typography-5e17869-word-spacing );}.elementor-443 .elementor-element.elementor-element-a8f4bbc{width:100%;max-width:100%;}}@media(max-width:767px){.elementor-443 .elementor-element.elementor-element-25d6a19{--gap:2rem 2rem;--row-gap:2rem;--column-gap:2rem;--padding-top:2rem;--padding-bottom:2rem;--padding-left:1rem;--padding-right:1rem;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-443 .elementor-element.elementor-element-960a4f6 .elementor-heading-title{font-size:var( --e-global-typography-fcb2023-font-size );line-height:var( --e-global-typography-fcb2023-line-height );letter-spacing:var( --e-global-typography-fcb2023-letter-spacing );word-spacing:var( --e-global-typography-fcb2023-word-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-443 .elementor-element.elementor-element-c2c772b{font-size:var( --e-global-typography-5e17869-font-size );line-height:var( --e-global-typography-5e17869-line-height );letter-spacing:var( --e-global-typography-5e17869-letter-spacing );word-spacing:var( --e-global-typography-5e17869-word-spacing );}}/* Start custom CSS for shortcode, class: .elementor-element-a8f4bbc */.elementor-443 .elementor-element.elementor-element-a8f4bbc {
    font-family: var(--e-global-typography-5e17869-font-family);
    font-size: var(--e-global-typography-5e17869-font-size);
    font-weight: var(--e-global-typography-5e17869-font-weight);
    line-height: var(--e-global-typography-5e17869-line-height);
    
    * {
        margin: 0;
    }
    
    ul {
        overflow: auto;
        scrollbar-width: thin;
        scrollbar-color: var(--e-global-color-aa91062) var(--e-global-color-76efa54);
        list-style-type: none;
        display: flex;
        align-items: center;
        gap: 2rem;
        margin-inline: -1rem;
        padding: 2rem 1rem;
    }
    
    li {
        flex-shrink: 0;
        width: calc((100% - 4rem) / 3);
    }
    
    a,
    .no-dates {
        display: grid;
        transition: 200ms;
        
        div {
            border-radius: 1.5rem;
            background: var(--ticket-color-bg);
            color: var(--ticket-color-fg);
        }
        
        > div:nth-of-type(1) {
            display: grid;
            gap: 1.5rem;
            padding: 2.5rem;
        }
        
        > div:nth-of-type(2) {
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 1rem;
            padding: 2rem;
            font-family: var(--e-global-typography-618098d-font-family);
            font-size: var(--e-global-typography-618098d-font-size);
            font-weight: var(--e-global-typography-618098d-font-weight);
            line-height: var(--e-global-typography-618098d-line-height);
            text-transform: uppercase;
            transform-origin: left top;
            transition: 150ms;
            
            svg {
                width: 1rem;
                height: auto;
            }
        }
    }
    
    a:hover {
        scale: 1.02;
        
        div:nth-of-type(2) {
            rotate: 3deg;
        }
    }
    
    .no-dates {
        margin-bottom: 1rem;
        opacity: 0.5;
        user-select: none;
        pointer-events: none;
        
        > div:nth-of-type(2) {
            translate: 0 0.75rem;
            rotate: 3deg;
        }
    }
    
    h3 {
        font-family: var(--e-global-typography-d5ab57b-font-family);
        font-size: var(--e-global-typography-d5ab57b-font-size);
        font-weight: var(--e-global-typography-d5ab57b-font-weight);
        line-height: var(--e-global-typography-d5ab57b-line-height);
    }
    
    .lowest-price-30 {
        font-size: 0.75rem;
        line-height: 1.4em;
    }
    
    li:nth-of-type(1),
    li:nth-of-type(6) {
        --ticket-color-bg: var(--e-global-color-9f43a38);
        --ticket-color-fg: var(--e-global-color-e7572b7);
    }

    li:nth-of-type(2),
    li:nth-of-type(4) {
        --ticket-color-bg: var(--e-global-color-aa91062);
        --ticket-color-fg: var(--e-global-color-f0313a0);
    }

    li:nth-of-type(3),
    li:nth-of-type(5) {
        --ticket-color-bg: var(--e-global-color-e7572b7);
        --ticket-color-fg: var(--e-global-color-9f43a38);
    }
    
    .current {
        order: -1;
        position: relative;
        
        &:hover {
            .marker {
                rotate: 45deg;
            }
        }
        
        a > div:nth-of-type(1) {
            padding: 3rem 2.5rem;
        }
        
        a:hover {
            scale: 1;
        }
    
        h3 {
            font-family: var(--e-global-typography-fcb2023-font-family);
            font-size: var(--e-global-typography-fcb2023-font-size);
            font-weight: var(--e-global-typography-fcb2023-font-weight);
            line-height: var(--e-global-typography-fcb2023-line-height);
        }
    }
    
    .marker {
        position: absolute;
        top: -2rem;
        left: calc(50% - 2rem);
        z-index: 1;
        width: 4rem;
        transition: 200ms;
    }
    
    .marker svg:first-of-type {
        width: 100%;
        height: auto;
        color: var(--ticket-color-fg);
        fill: var(--ticket-color-fg);
    }

    .marker svg:last-of-type {
        position: absolute;
        left: 10%;
        top: 10%;
        width: 80%;
        height: auto;
        color: var(--ticket-color-bg);
        fill: var(--ticket-color-bg);
    }
    
    @media (width <= 64rem) {
        li {
            width: calc((100% - 2rem) / 2);
        }
    }

    @media (width < 48rem) {
        ul {
            padding-left: 0;
            margin-left: 0;
        }
        
        li {
            width: calc((100% - 2rem) / 1.2);
        }
        
        a,
        .no-dates {
            > div:nth-of-type(1) {
                padding: 1.5rem;
            }
            
            > div:nth-of-type(2) {
                padding: 2rem 1.5rem;
            }
        }
        
        .current {
            a > div:nth-of-type(1) {
                padding: 4rem 1.5rem;
            }

            a > div:nth-of-type(2) {
                justify-content: space-between;
                font-size: 0.8125rem;
            }
        }
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-992339e */.elementor-443 .elementor-element.elementor-element-992339e {
    scroll-margin-top: 8rem;
}

.reservation-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: 6rem;
    color: var(--e-global-color-9b51c9c);
    font-family: var(--e-global-typography-5e17869-font-family);
    font-size: var(--e-global-typography-5e17869-font-size);
    font-weight: var(--e-global-typography-5e17869-font-weight);
    line-height: var(--e-global-typography-5e17869-line-height);
    
    * {
        margin: 0;
    }
    
    h2,
    h3 {
        color: var(--e-global-color-af77de6);
        font-family: var(--e-global-typography-d5ab57b-font-family);
        font-size: var(--e-global-typography-d5ab57b-font-size);
        font-weight: var(--e-global-typography-d5ab57b-font-weight);
        line-height: var(--e-global-typography-d5ab57b-line-height);
    }

    h4 {
        color: var(--e-global-color-af77de6);
        font-size: var(--e-global-typography-5e17869-font-size);
        font-weight: 700;
        line-height: var(--e-global-typography-5e17869-line-height);
    }

    h5 {
        font-size: var(--e-global-typography-fa5d985-font-size);
        font-weight: 700;
        line-height: var(--e-global-typography-fa5d985-line-height);
    }
    
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    textarea {
        padding: 1rem 1.5rem;
        border: none;
        border-radius: 1.5rem;
        background: #FFFFFF;
        
        &::placeholder {
            color: var(--e-global-color-9b51c9c);;
            opacity: 1;
        }
    }
    
    input[type="checkbox"],
    input[type="radio"] {
        appearance: none;
        position: relative;
        flex-shrink: 0;
        width: 1.375rem;
        height: 1.375rem;
        margin-inline: 1px;
        padding: 0 !important;
        border: none !important;
        box-shadow: 0 0 0 1px var(--e-global-color-aa91062);
        background: #F5F6F3 !important;
        transition: none !important;
        
        &:checked {
            border: 0.375rem solid #F5F6F3 !important;
            background: var(--e-global-color-9f43a38) !important;
        }
        
        &:disabled {
            cursor: not-allowed;
            opacity: 0.25 !important;
        }
    }
    
    input[type="checkbox"] {
        border-radius: 0.375rem !important;
    }
    
    label:has([type="checkbox"], [type="radio"]) {
        display: flex;
        align-items: center;
        gap: 0.625rem;
        font-family: var(--e-global-typography-fa5d985-font-family);
        font-size: var(--e-global-typography-fa5d985-font-size);
        font-weight: var(--e-global-typography-fa5d985-font-weight);
        line-height: var(--e-global-typography-fa5d985-line-height);
    }
    
    .h4-serif {
        font-family: var(--e-global-typography-c1e6e88-font-family);
        font-size: var(--e-global-typography-c1e6e88-font-size);
        font-weight: var(--e-global-typography-c1e6e88-font-weight);
        line-height: var(--e-global-typography-c1e6e88-line-height);
    }
}

.reservation-applicant {
    display: grid;
    gap: 2rem;
}

.reservation-applicant-field-group,
.reservation-applicant-field-group-company,
.reservation-member-field-group,
.reservation-members-field-group {
    display: grid;
    gap: 1rem;
}

.reservation-applicant-field-group-person {
    display: grid;
    gap: 0.5rem;
}

.reservation-applicant-field-group-address,
.reservation-member-field-group-address {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 1rem 0;
    
    #applicant-address-city,
    [name^="member-address-city"],
    #member-address-city-applicant {
        grid-column: span 2;
    }
}

.reservation-applicant-field-group-company {
    display: none;
}

.reservation-members,
.reservation-new-member-form {
    display: grid;
    gap: 2.5rem;
    
    label:has([type="checkbox"], [type="radio"]) {
        color: var(--e-global-color-7324614);
    }
}

.reservation-members-list {
    list-style-type: none;
    display: grid;
    padding: 0;
    counter-reset: member;
}

.reservation-members-list:empty {
    display: none;
}

.reservation-members-list-member {
    display: grid;
    padding-block: 2.5rem;
    border-top: 1px solid var(--e-global-color-aa91062);
    counter-increment: member;
    
    header {
        display: grid;
        grid-template-columns: 4rem 1fr 1.5rem 1.5rem;
        align-items: center;
        gap: 2.5rem;
        color: var(--e-global-color-af77de6);
        font-family: var(--e-global-typography-d5ab57b-font-family);
        font-size: var(--e-global-typography-d5ab57b-font-size);
        font-weight: var(--e-global-typography-d5ab57b-font-weight);
        line-height: var(--e-global-typography-d5ab57b-line-height);
        
        button {
            padding: 0;
            border: none;
            background: none;
            color: var(--e-global-color-aa91062);
            line-height: 0;
            
            svg {
                width: 1.5rem;
                height: 1.5rem;
            }
        }
        
        button:hover,
        button:active,
        button:focus {
            background: none;
            color: var(--e-global-color-aa91062);
        }
    }
    
    header::before {
        content: counter(member, decimal-leading-zero) ". ";
    }
}

.reservation-members-list-member[data-id="applicant"] {
    header {
        grid-template-columns: 4rem 1fr 1.5rem;
    }
    
    .reservation-members-list-member-remove {
        display: none;
    }
}

.reservation-members-list-member-edit-wrapper {
    overflow: hidden;
    display: grid;
    grid-template-rows: 0fr;
    transition: 300ms;
    
    * {
        min-height: 0;
    }
}

.reservation-members-list-member:last-of-type {
    border-bottom: 1px solid var(--e-global-color-aa91062);
}

.reservation-new-member-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    
    button {
        padding: 0;
        border: none;
        background: none;
        color: var(--e-global-color-aa91062);
        line-height: 0;
        
        svg {
            width: 1.5rem;
            height: 1.5rem;
        }
    }
    
    button:hover,
    button:active,
    button:focus {
        background: none;
        color: var(--e-global-color-aa91062);
    }
}

.reservation-member-field-group-person {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.625rem 0;
    
    input:not([name*="name"]) {
        grid-column: span 2;
    }
}

.reservation-member-field-group-insurance {
    display: grid;
    gap: 0.625rem;
    color: var(--e-global-color-7324614);
    font-family: var(--e-global-typography-fa5d985-font-family);
    font-size: var(--e-global-typography-fa5d985-font-size);
    font-weight: var(--e-global-typography-fa5d985-font-weight);
    line-height: var(--e-global-typography-fa5d985-line-height);
}

.reservation-member-field-group-insurance-links {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    
    a {
        color: var(--e-global-color-9b51c9c);
        text-decoration: 1px solid underline;
    }
    
    a:hover {
        color: var(--e-global-color-5925221);
    }
}

.reservation-member-summary {
    display: grid;
    gap: 1.5rem;
    padding: 2.5rem;
    border: 0.375rem solid var(--e-global-color-76efa54);
    border-radius: 1.5rem;
    font-size: var(--e-global-typography-c1e6e88-font-size);
    font-weight: var(--e-global-typography-c1e6e88-font-weight);
    line-height: var(--e-global-typography-c1e6e88-line-height);
    
    ul {
        list-style-type: none;
        display: grid;
        gap: 1.5rem;
        padding: 0;
    }
    
    li {
        padding-left: 2.5rem;
        background-image: url(https://mestertravel.pl/wp-content/uploads/2026/02/sygnet-turkus.png);
        background-size: 1.5rem;
        background-position: left center;
        background-repeat: no-repeat;
    }
}

.reservation-member-summary-total {
    font-size: var(--e-global-typography-5e17869-font-size);
    font-weight: var(--e-global-typography-5e17869-font-weight);
    line-height: var(--e-global-typography-5e17869-line-height);
    text-transform: uppercase;
    
    strong {
        text-transform: none;
    }
}
.reservation-members-field-group:has(#members-together) {
    color: var(--e-global-color-7324614);
    font-family: var(--e-global-typography-fa5d985-font-family);
    font-size: var(--e-global-typography-fa5d985-font-size);
    font-weight: var(--e-global-typography-fa5d985-font-weight);
    line-height: var(--e-global-typography-fa5d985-line-height);
}

.reservation-members-summary {
    display: grid;
    gap: 1.5rem;
    padding: 2.5rem;
    border-radius: 1.5rem;
    background-color: var(--e-global-color-76efa54);
    font-size: var(--e-global-typography-c1e6e88-font-size);
    font-weight: var(--e-global-typography-c1e6e88-font-weight);
    line-height: var(--e-global-typography-c1e6e88-line-height);
    
    ul {
        list-style-type: none;
        display: grid;
        gap: 1.5rem;
        padding: 0;
    }
    
    li {
        padding-left: 2.5rem;
        background-image: url(https://mestertravel.pl/wp-content/uploads/2026/02/sygnet-turkus.png);
        background-size: 1.5rem;
        background-position: left center;
        background-repeat: no-repeat;
    }
}

.reservation-members-summary-total {
    font-size: var(--e-global-typography-5e17869-font-size);
    font-weight: var(--e-global-typography-5e17869-font-weight);
    line-height: var(--e-global-typography-5e17869-line-height);
    text-transform: uppercase;
    
    strong {
        text-transform: none;
    }
}

.reservation-members-field-group-acceptance {
    display: grid;
    gap: 1rem;
    
    label:has([type="checkbox"], [type="radio"]) {
        align-items: flex-start;
        
        [type="checkbox"], 
        [type="radio"] {
            margin-top: 1px;
        }
    }
    
    &:has(#members-acceptance-insurance-extended) {
        display: none;
    }
    
    label span a {
        color: var(--e-global-color-9b51c9c);
        text-decoration: 1px solid underline;
        
        &:hover {
            color: var(--e-global-color-5925221);
        }
    }
}

.reservation-button {
    display: flex;
    gap: 1rem;
    align-items: center;
    width: fit-content;
    margin-bottom: 0.5rem;
    padding: 1rem 1.5rem;
    border: none;
    border-radius: 1.5rem;
    background: var(--e-global-color-f0313a0);
    color: var(--e-global-color-52475ff);
    font-family: var(--e-global-typography-c1e6e88-font-family);
    font-size: var(--e-global-typography-c1e6e88-font-size);
    font-weight: var(--e-global-typography-c1e6e88-font-weight);
    line-height: var(--e-global-typography-c1e6e88-line-height);
    text-transform: uppercase;
    
    svg {
        width: 1.5rem;
        height: auto;
    }
}

.reservation-button:hover,
.reservation-button:active,
.reservation-button:focus {
    background: var(--e-global-color-f0313a0);
    color: var(--e-global-color-52475ff);
}

@media (width <= 64rem) {
    .reservation-wrapper {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    
    .reservation-member-summary,
    .reservation-members-summary {
        padding: 1.5rem;
    }
    
    .reservation-applicant-field-group-address,
    .reservation-member-field-group-address {
        grid-template-columns: 1fr 1fr;
        gap: 1rem 0;
        
        #applicant-address-street,
        #member-address-street {
            grid-column: span 2;
        }
        
        #applicant-address-city,
        [name^="member-address-city"],
        #member-address-city-applicant {
            grid-column: span 1;
        }
    }
}/* End custom CSS */