.grecaptcha-badge { visibility: hidden; }
html { scroll-behavior: smooth !important; }
body { font-family: "Poppins", sans-serif; background-color: #f2f2f2; font-weight: 400; font-style: normal; }
body .test { display: none; }
body.test-activated .test { display: block; }
h1, h2, h3, h4, h5 { font-family: "Bebas Neue", sans-serif; font-weight: 400; font-style: normal; color: #005cfd; }
.text-justify { text-align: justify; }
button:focus { box-shadow: none !important; outline: none; }
.btn.normal { font-weight: 500; font-size: 1.5rem; color: #005cfd; background-color: #f2f2f2; padding: 10px 20px; border: solid #005cfd 2px; box-shadow: none; border-radius: .4rem; transition: all .2s ease-out; display: flex; flex-direction: row; align-items: center; justify-content: center; cursor: pointer; }
.btn.normal:hover { transition: all .2s ease-out; background-color: #005cfd; color: #f2f2f2; }
.btn.normal.alt { background-color: #7fabc6; color: #fff; border-color: #fff; }
.btn.normal.alt:hover { transition: all .2s ease-out; background-color: #005cfd; border-color: #005cfd; }
h2.section { font-size: 4rem; text-align: center; }
nav { background-color: #f2f2f2; position: absolute !important; width: 100%; top: 0; }
nav .nav-link { font-weight: 400; white-space: nowrap; }
nav .nav-link:hover { color: #005cfd; }
nav .nav-link.active { color: #005cfd !important; font-weight: 500; }
nav .nav-link img { border-radius: 25px; border: 2px solid #cacaca; transition: all ease-in-out .2s; }
nav .nav-link img:hover { border-color: #005cfd; }
nav .nav-link button { border: none; padding: 0; }
.navMobile { display: none; }
@media(max-width: 991.98px) { .navMobile { display: block; } }
.navDesktop { display: block; }
@media(max-width: 991.98px) { .navDesktop { display: none; } }
.img-fluid { border-radius: .4rem; box-shadow: 4px 4px 24px 0px #9598af; }
.img-fluid.no-bg { border-radius: 0; box-shadow: none; }
.img-fluid.hover { transition: all .15s ease-in; transform: scale(0.99); }
.img-fluid.hover:hover { transform: scale(1) rotate(0deg); }
.container { padding-top: 4rem; padding-bottom: 4rem; }
#start { margin-top: 66px; min-height: calc(100vh - 66px); display: flex; justify-content: center; background: url("/img/background.webp"); background-repeat: no-repeat; background-position: center; background-size: cover; color: #fff; }
#start h1 { font-size: 10vh; color: #fff; text-shadow: 2px 3px 5px rgba(0,0,0,.9); }
#start p { font-size: 3vh; text-shadow: 2px 3px 5px rgba(0,0,0,.9); }
@media(min-width: 992px) {
    #start { background-attachment: fixed; }
    #start h1 { font-size: 15vh; }
    #start p { font-size: 1.4rem; }
}
.about-us-wrapper { background: url("/img/hero_vector2.svg"); background-repeat: no-repeat; background-position: bottom center; background-size: cover; }
.faq-wrapper { background: url("/img/hero_vector1.svg"); background-repeat: no-repeat; background-position: bottom center; background-size: cover; }
#about-us .img-description { margin: 0; font-weight: 500; }
@media(min-width: 992px) { #about-us .img-description { background-color: #f2f2f2; box-shadow: 0px 0px 20px 30px #f2f2f2; } }
#offer .btn span { font-size: 1.8rem; }
#offer .card-custom { border: 2px solid #005cfd; border-radius: .4rem; padding: 1rem; background-color: #fff; box-shadow: 4px 4px 24px 0px #9598af; }
#offer .card-custom h3 { font-size: 2.5rem; }
#offer .card-custom .title { text-align: center; }
#offer .card-custom .title h5 { color: #212529; margin: 0; }
#offer .card-custom .price { height: -moz-fit-content; height: fit-content; }
#offer .card-custom .price h3 { margin: 0; }
#offer .card-custom .price p { color: #8f8f8f; font-size: .7rem; }
#voucher-form .card-content .price.price-old h3 { display: inline-block; position: relative; padding: 0 1rem; }
#voucher-form .card-content .price.price-old h3:before { content: " "; display: block; width: 100%; border-top: 2px solid rgba(255,0,0,.8); height: 1.25rem; position: absolute; bottom: 0; left: 0; transform: rotate(-20deg); }
.holidays-wrapper { background-color: #7fabc6; }
#holidays { color: #fff !important; }
#holidays h2 { text-align: center; }
#holidays .tile { text-align: center; }
#holidays .tile span { font-size: 4rem; margin-right: 10px; }
#holidays .tile h3 { margin: 0; color: #fff; }
#holidays .tile p { margin: 0; }
#holidays .list .col-5 { color: #212529; padding: 10px; border-radius: .4rem; transition: all ease-out .3s; }
#holidays .list .col-5 .title { font-size: 1.2rem; font-weight: 600; margin-bottom: 0; }
#holidays .list .col-5 .text { font-weight: 500; }
#holidays .list .col-5:hover { box-shadow: 4px 4px 24px 0px #557488; transform: scale(1.01); }
#holidays .items-list .coll-btn { display: flex; color: #fff; font-size: 1.1rem; width: 100%; justify-content: center; border: none; background-color: rgba(0,0,0,0); transition: all ease-in-out .15s; }
#holidays .items-list .coll-btn:hover { color: #005cfd; }
#holidays .items-list .coll-btn .check { font-size: 1.8rem; }
#holidays .items-list .coll-btn .coll-icon { transition: transform ease-in-out .15s; }
#holidays .items-list .coll-btn .coll-icon.rotate { transform: rotate(180deg); }
#holidays .items-list .holiday-collapse { text-align: left; }
#faq button.accordion-button { font-size: 1.1rem; }
#faq button.accordion-button:hover { background-color: #cfe2ff; }
#faq .carousel-inner { border-radius: .4rem !important; }
.contact-wrapper { background-color: #7fabc6; }
@media(min-width: 992px) { .contact-wrapper { background-image: linear-gradient(90deg, #7fabc6 70%, rgba(255, 255, 255, 0) 110%), url("/img/contact-background.webp"); background-repeat: no-repeat; background-position: right; background-size: contain; } }
#contact { color: #fff; }
#contact h2 { color: #fff; }
#contact .material-symbols-rounded { font-size: 2.5rem; }
#contact .info .subtitle { margin: 0; color: hsla(0,0%,100%,.527); }
#contact .info a { color: #fff; }
#contact .info a:hover { color: hsla(0,0%,100%,.658); }
#contact .info table td { background-color: rgba(127,171,198,0) !important; border-color: hsla(0,0%,100%,.384); color: #fff; }
#contact .info table td:first-child { padding-left: 0; }
#contact .info table tr:last-child td { border: 0; }
#contact .socials svg { fill: #fff; width: 50px; height: 50px; }
#contact .socials svg.instagram { width: 46px; height: 46px; }
#contact .socials svg:hover { fill: hsla(0,0%,100%,.658); }
.gMaps { border: 0; width: 100%; height: 100%; border-radius: .4rem; }
.gMaps:focus { outline: none; }
@media(max-width: 991.98px) { .gMaps { height: 90vw; } }
footer { background-color: #292929; text-align: center; font-size: .9rem; color: #fff; }
footer p, footer p a { color: hsla(0,0%,100%,.459) !important; margin: 0; font-size: .8rem; }
footer .inner-box { width: -moz-fit-content; width: fit-content; margin: auto; }
footer .inner-box a { color: #fff; }
footer .inner-box a:hover { color: hsla(0,0%,100%,.658); }
#formsModal .nav-link { border: 2px solid #005cfd; display: flex; color: #005cfd; border-radius: .4rem; }
#formsModal .nav-link.active { background-color: #005cfd; color: #fff; }
#formsModal .disclaimer { font-size: .6rem; margin: 0; text-align: center; color: #8f8f8f; }
#formsModal .offer-label { margin-bottom: -20px; }
#formsModal .custom-radio label.radio-card { cursor: pointer; }
#formsModal .custom-radio label.radio-card .card-content-wrapper { background: #fff; border-radius: .4rem; min-height: 250px; padding: 1rem; display: grid; box-shadow: 0 2px 4px 0 rgba(219,215,215,.04); transition: 200ms linear; border: 1px solid rgba(219,215,215,.5); min-width: 188px; }
#formsModal .custom-radio label.radio-card .check-icon { width: 20px; height: 20px; display: inline-block; border: solid 2px #e3e3e3; border-radius: 50%; transition: 200ms linear; position: relative; }
#formsModal .custom-radio label.radio-card .check-icon:before { content: ""; position: absolute; inset: 0; background-image: url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.93552 4.58423C0.890286 4.53718 0.854262 4.48209 0.829309 4.42179C0.779553 4.28741 0.779553 4.13965 0.829309 4.00527C0.853759 3.94471 0.889842 3.88952 0.93552 3.84283L1.68941 3.12018C1.73378 3.06821 1.7893 3.02692 1.85185 2.99939C1.91206 2.97215 1.97736 2.95796 2.04345 2.95774C2.11507 2.95635 2.18613 2.97056 2.2517 2.99939C2.31652 3.02822 2.3752 3.06922 2.42456 3.12018L4.69872 5.39851L9.58026 0.516971C9.62828 0.466328 9.68554 0.42533 9.74895 0.396182C9.81468 0.367844 9.88563 0.353653 9.95721 0.354531C10.0244 0.354903 10.0907 0.369582 10.1517 0.397592C10.2128 0.425602 10.2672 0.466298 10.3112 0.516971L11.0651 1.25003C11.1108 1.29672 11.1469 1.35191 11.1713 1.41247C11.2211 1.54686 11.2211 1.69461 11.1713 1.82899C11.1464 1.88929 11.1104 1.94439 11.0651 1.99143L5.06525 7.96007C5.02054 8.0122 4.96514 8.0541 4.90281 8.08294C4.76944 8.13802 4.61967 8.13802 4.4863 8.08294C4.42397 8.0541 4.36857 8.0122 4.32386 7.96007L0.93552 4.58423Z' fill='white'/%3E%3C/svg%3E%0A"); background-repeat: no-repeat; background-size: 12px; background-position: center center; transform: scale(1.6); transition: 200ms linear; opacity: 0; }
#formsModal .custom-radio label.radio-card input[type=radio] { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
#formsModal .custom-radio label.radio-card input[type=radio]:checked + .card-content-wrapper { box-shadow: 0 2px 4px 0 rgba(219,215,215,.5), 0 0 0 2px #005cfd; }
#formsModal .custom-radio label.radio-card input[type=radio]:checked + .card-content-wrapper .check-icon { background: #005cfd; border-color: #005cfd; transform: scale(1.2); }
#formsModal .custom-radio label.radio-card input[type=radio]:checked + .card-content-wrapper .check-icon:before { transform: scale(1); opacity: 1; }
#formsModal .custom-radio label.radio-card input[type=radio]:focus + .card-content-wrapper .check-icon { box-shadow: 0 0 0 4px rgba(31,83,255,.2); border-color: #3056d5; }
@media(max-width: 991.98px) { #formsModal .custom-radio label.radio-card .card-content h2 { font-size: 3rem; } }
#formsModal .custom-radio label.radio-card .card-content .title { text-align: center; }
#formsModal .custom-radio label.radio-card .card-content .title h5 { color: #212529; margin: 0; }
#cookie-notice { display: none; position: fixed; bottom: 20px; right: 20px; max-width: 500px; font-size: .8rem; }
@media screen and (max-width: 992px) { #cookie-notice { left: 20px; } }
#cookie-notice .material-symbols-rounded { color: #005cfd; font-size: 3rem; }

/* ========================================================
   ZMIANA: GŁÓWNA KLASA DOKUMENTU - UJEDNOLICONY ODSTĘP OD HEADERA 
   (Usunięto margin-top na rzecz poprawnego padding-top)
======================================================== */
.document { margin-top: 0; padding-top: 85px; }
.document .description { font-weight: 500; }
.thanks { margin-top: 0; padding-top: 85px; min-height: 90vh; }

.thanks .img-fluid { box-shadow: none; }
.thanks a { width: -moz-fit-content; width: fit-content; }
.discountedRow { display: inline-block; }
.hidden { display: none; }
.socials { top: 20px; right: 20px; width: 44px; }
.socials .social { display: block; width: 44px; height: 44px; border-radius: 30%; text-align: center; color: #fff; }
.socials .social .social-icon { display: block; width: 100%; height: 100%; padding: 8px; }
.socials .social+.social { margin-top: 20px; }
.socials .s-facebook { background-color: #0a66ff; }
.socials .s-instagram { background: radial-gradient(circle farthest-corner at 28% 100%, #fcdf8f 0%, #fbd377 10%, #fa8e37 22%, #f73344 35%, transparent 65%), linear-gradient(145deg, #3051f1 10%, #c92bb7 70%); }
.partners-item { padding: 0 1rem; position: relative; }
.partners-item img { display: block; max-width: 100%; height: auto; }
.kotylion-item { padding: 0 1rem; height: 130px; }
@media screen and (max-width: 452px) { .kotylion-item { height: 100px; } }
.partners-item-label { position: absolute; bottom: 20%; left: 50%; transform: translateX(-50%); background-color: rgba(0,0,0,.6); color: #fff; padding: 5px 10px; border-radius: 5px; font-size: 1.2rem; font-weight: 500; white-space: nowrap; }
.showForOccasionalVoucher { display: none; }
.occasionalVoucher .hideForOccasionalVoucher { display: none !important; }
.occasionalVoucher .showForOccasionalVoucher { display: block !important; }

/* Szybka poprawka wyglądu Bookero na localhost */
#bookero { min-height: 500px; padding: 20px; background: #fff; }
.bookero-plugin-header { font-size: 24px; color: #005cfd; margin-bottom: 20px; }
.bookero-plugin-form-heading { font-weight: bold; margin-top: 15px; border-bottom: 1px solid #ddd; }
.services-section select, .calendar-wrapper { width: 100%; padding: 10px; border-radius: 5px; border: 1px solid #ccc; margin-top: 10px; }
.submit-button { background-color: #005cfd; color: white; border: none; padding: 15px 30px; border-radius: 5px; cursor: pointer; width: 100%; margin-top: 20px; }
.calendar-nav { display: flex; justify-content: space-between; align-items: center; padding: 10px; }