@import url('https://fonts.googleapis.com/css2?family=Khula:wght@300;400;600;700;800&family=Libre+Caslon+Text:ital,wght@0,400;0,700;1,400&display=swap'); :root { --custom-margin-mobile: 50px; } @media (max-width: 768px) { :root { --custom-margin-mobile: 0; } .footer-logo { display: none; } } h1, h2, h3, h4, h5, h6 { font-family: "Libre Caslon Text", serif; font-weight: 700; font-style: normal; } html, body { font-family: "Khula", sans-serif; font-weight: 400; font-style: normal; } header { background-color: #000 !important; padding: 30px 0 !important; } .header-action-item svg { stroke: #fff; } .header-cart svg { display: none; } header .logo-main img { max-height: 150px !important; transition: max-height ease .5s; } header.scrolled .logo-main img { max-height: 120px !important; transition: max-height ease .5s; } .sticky-header { background-color: rgba(0, 0, 0, 0.5) !important; position: fixed; width: 100%; top: 0; left: 0; right: 0; z-index: 1000; transition: background-color 0.3s ease; } .sticky-header.scrolled { background-color: black !important; } @media (max-width: 991px) { .header-cart { display: none; } .footer-partner { padding-top: 30px; } .footer-bottom { padding-bottom: 70px; } } .topbar-bar { display: none !important; } footer .footer-logo img { height: 180px !important; max-height: unset !important; } .footer-info h6 { font-family: "Khula", sans-serif !important; } .footer-partner { background-color: black; } .footer-partner img { width: auto !important; max-width: 110px; height: auto !important; object-fit: contain; } .footer-bar.d-flex.d-md-none { display: none !important; } .footer-bar--utilities { position: fixed; bottom: 0; left: 0; right: 0; background-color: #000; box-shadow: 1px 0px 10px rgba(0, 0, 0, .3); z-index: 9; } .footer-bar--utilities a { display: block; padding: 15px 0; border-right: 1px solid #e1e1e1; font-size: 18px; color: #fff; } .footer-bar--utilities svg { max-width: 24px; opacity: 1; } .footer-bar--utilities .booking { background-color: #b29156; } .btn-primary.outlined, .newsletter-btn { border-top: 2px solid #000; border-bottom: 2px solid #000; border-left: 0; border-right: 0; background-color: transparent !important; border-radius: 0 !important; color: #000 !important; padding: 13px 10px 10px; line-height: 1.4; } .btn-primary.text-white { color: #fff !important; border-color: #fff !important; } .btn--hover { opacity: 0; transform: translateY(30px); transition: 8s opacity ease; } .section-heading { font-family: "Libre Caslon Text", serif; font-weight: 700; font-style: normal; line-height: 1.2; } .sidenav { left: unset !important; right: 0; transform: translateX(100%); } .sidenav.canvas-sidebar { z-index: 9999; } .canvas-sidebar.show .canvas-overlay { left: -700%; } .sidenav .card { background-color: #000; } .sidenav .card, .sidenav, .sidenav .close-sidenav-btn { color: #fff; } .sidenav.canvas-sidebar .mx-1.border-bottom.pb-3 { display: none; } .sidenav.canvas-sidebar .card-body { padding-top: 60px !important; } .sidenav ul.main-menu .nav-link { font-size: 1rem; } .icon-hamburger { cursor: pointer; } .sidenav img, header#header-mob-sticky img { max-height: 100px !important; height: auto; } .canvas-sidebar .canvas-close { cursor: pointer; position: absolute; right: 1rem; } .sidenav.canvas-sidebar.show .card .card-header { justify-content: center !important; } .sidenav.canvas-sidebar.show .main-menu { margin-left: 0 !important; align-items: flex-start !important } @media (max-width: 768px) { .language-wrapper { position: absolute; top: 1rem; } } @media (min-width: 992px) { .w-lg-75 { width: 75%; max-width: 75%; } .w-lg-50 { width: 50%; max-width: 50%; } } .language-btn.show+.language-list { display: block; } #loading img { max-width: 250px; } #progressBar { margin-top: 20px; } @keyframes progressAnimation { 0% { width: 0%; } 100% { width: 100%; } } .box-card { position: relative; transition: all ease .7s; overflow: hidden; } .box-card:after { content: ''; position: absolute; top: 0; right: 0; left: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.2); z-index: 0; } .box-card-details { position: absolute; top: 0; right: 0; left: 0; bottom: 0; display: flex; justify-content: center; align-items: center; transform: translateY(0); transition: all ease .7s; z-index: 2; } .box-card-img .box-card-pic { height: 570px; width: 100%; object-fit: cover; object-position: center; transform: none; transition: all ease .7s; } .box-card-img--half .box-card-pic { height: 273px; } .box-card:hover .box-card-pic { transform: scale(1.05); transition: all ease .7s; } .box-card:hover .box-card-details { transform: translateY(-20px); transition: all ease .7s; } .box-card:hover .btn--hover { opacity: 1; transform: translateY(0); transition: 8s opacity ease; } .box-card--mobile { background-color: rgba(0, 0, 0, 0.4); height: 90px !important; opacity: 0; transform: translateY(20px); transition: opacity 0.5s ease, transform 0.5s ease; } .box-card-pic--mobile { height: 90px !important; } .box-card--mobile.show { opacity: 1; transform: translateY(0); } .box-card--mobile .box-card-title { font-size: 16px !important; text-transform: uppercase; } .box-card--mobile .box-card-title+span { font-size: 12px !important; } .box-card--mobile:hover .box-card-details { transform: translateY(-10px); } .sidenav ul.main-menu .nav-link { color: #ffffffe3; } .company-slide>div { padding: 0 15px; } @media (max-width: 991px) { .company-container .arrow-slider { top: 40px !important; } .company-container .activate-arrows { padding-left: 3rem; } .product-card-details { text-align: left !important; } .footer-partner { padding-top: 30px; } .footer-bottom { padding-bottom: 70px; } .product-card-title, .product-card-title a { font-size: 28px !important; } } .product-card-title { margin-top: -50px !important; position: relative; z-index: 10; padding-left: 30px; } .product-card-title small { font-size: 12px !important; text-transform: uppercase; display: block; margin: 5px 0 15px; padding-left: 5px; } .product-card-title a { font-size: 25px; font-family: libre caslon text, serif; } .product-card-button { padding: 0 30px; } .product-card-img .product-pic { object-position: 0 0; } .product-card .product-ins-pic:after { position: absolute; content: ''; background: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 70%); height: 90px; width: 100%; bottom: 0; } @media (max-width: 991px) { .header-cart { display: none; } .product-card-title, .product-card-title a { font-size: 28px !important; } } .product-card-img .product-pic { object-position: 0 0; } .product-card .product-ins-pic:after { position: absolute; content: ''; background: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 70%); height: 90px; width: 100%; bottom: 0; z-index: 1; } .arrow-slider { position: relative; top: 0; left: 0; } .activate-arrows .arrow-slider { opacity: 1; visibility: visible; top: 20px; background-color: transparent; height: auto; width: auto; } .article-arrows .arrow-slider { top: 60px; } .article-arrows .arrow-next { right: unset !important; } .article-arrows .arrow-prev { left: 0 !important; } .arrow-slider { left: 0; right: unset; text-align: center; } .activate-arrows .arrow-slider svg { width: 42px; } .product-card-img { border-radius: 0; } .pics-container { height: 300px; } .product-card-title a:hover { color: initial !important; } .text-section__main { font-size: 15px; color: #fff; } @media (min-width: 768px) { .text-section__main { font-size: 20px; color: #000; } .fs-md-3 { font-size: 1.75rem !important; } } @media (max-width: 767px) { .btn.btn-primary--mobile { color: #fff !important; border-color: #fff !important; } } .section-box__image { position: absolute; top: 0; right: 0; left: 0; bottom: 0; z-index: 0; filter: blur(1px); } .section-box__image:before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 0; background-color: rgba(0, 0, 0, 0.5); } .section-box__image img { height: 100%; } .dropup { position: relative; display: inline-block; padding: 0; border-right: 1px solid #e1e1e1; font-size: 18px; color: #fff; width: 100%; } .dropup-button { color: white; padding: 10px 20px; font-size: 16px; border: none; cursor: pointer; background-color: transparent; text-transform: uppercase; font-weight: 600; padding: 15px; } .dropup-content { display: none; position: absolute; bottom: 40px; min-width: 240px; box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2); z-index: 1; background-color: #fff; } .dropup-content a { color: black; padding: 12px 16px; text-decoration: none; display: block; font-size: 15px; } .dropup-content a:hover { background-color: rgba(0, 0, 0, 0.8); color: #fff; } /* widget*/ :root { --gradient: linear-gradient(135deg, #5B8CA8 0%, #2A3B47 100%); --gradient-inv: linear-gradient(135deg, #2A3B47 0%, #5B8CA8 100%); --radius: 16px; } .custom-booking-widget .form-group label { font-family: "Plus Jakarta Sans", serif !important; font-weight: 400 !important; color: #fff; font-size: medium; } .custom-booking-widget { background: transparent; border-radius: var(--radius); padding: 1.5rem; max-width: 600px; margin: 0rem auto 2rem auto; } .form-group { margin-bottom: 1.5rem; } .submit-btn { background: black; color: white; border: none; padding: 0.8rem 1.5rem; border-radius: 5px; cursor: pointer; font-weight: bold; transition: all 0.3s ease; } .submit-btn:hover { background: white; color: black; transition: all 0.3s ease; } .age-input { position: relative; } .age-input label { font-size: 1rem; font-weight: 600; display: block; } .age-input input { font-size: 1rem; transition: all 0.3s ease; padding: .375rem .75rem; font-weight: 400; line-height: 1.5; color: white; background-color: rgba(0, 0, 0, 0.3); background-clip: padding-box; border: 3px solid white; border-radius: .25rem; transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out; -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); } .age-input input:focus { color: white; background-color: rgba(0, 0, 0, 0.3); outline: none; box-shadow: 0 0 5px rgba(91, 140, 168, 0.5); } /* Ripristina le freccette del numero */ .age-input input[type="number"]::-webkit-outer-spin-button, .age-input input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: textfield; } .age-inputs { display: flex; flex-direction: column; } .age-inputs .age-input:last-child { margin-bottom: 0; } .btn-preventivo { font-size: 14px; text-transform: uppercase; text-decoration: underline; text-underline-offset: 5px; background: transparent !important; color: white !important; box-shadow: none !important; border: 0 !important; } .hero-section-12 .btn { padding: 1rem; } /* widget*/ /* Contenitore del checkbox personalizzato */ .form-check { position: relative; padding-left: 2.5rem; cursor: pointer; transition: all 0.3s ease; } /* Nascondi il checkbox nativo */ .form-check-input { position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0; } /* Stile del checkbox personalizzato */ .form-check-label { position: relative; font-weight: 600; font-size: 1.1rem; color: white; padding-left: 2rem; line-height: 2; display: inline-block; vertical-align: middle; cursor: pointer; } /* Creazione del checkbox personalizzato */ .form-check-label:before { content: ""; position: absolute; left: 0; top: 0.2rem; height: 1.5rem; width: 1.5rem; background-color: #fff; border: 2px solid #6c757d; border-radius: 4px; transition: all 0.3s ease; } /* Stile quando selezionato (NERO invece di blu) */ .form-check-input:checked~.form-check-label:before { background-color: #000000; /* Cambiato a nero */ border-color: #000000; /* Cambiato a nero */ } /* Aggiunta del segno di spunta (bianco su nero) */ .form-check-input:checked~.form-check-label:after { content: ""; position: absolute; left: 0.5rem; top: 0.4rem; width: 0.5rem; height: 0.9rem; border: solid white; border-width: 0 2px 2px 0; transform: rotate(45deg); } /* Effetto hover (NERO invece di blu) */ .form-check:hover .form-check-label:before { border-color: #000000; /* Cambiato a nero */ } /* Effetto focus (NERO invece di blu) */ .form-check-input:focus~.form-check-label:before { box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.25); /* Ombra nera */ } /* Animazione al click */ .form-check-input:active~.form-check-label:before { transform: scale(0.9); } .form-control:focus { color: #212529; background-color: #fff; border: none; outline: 0; box-shadow: 0 0 0 .25rem rgba(0, 0, 0, .25); } @media (max-width: 448px) { .form-check-label { color: #fff !important; } .custom-booking-widget .form-group label { color: #fff; } } /* */ /* Custom Booking Widget Styles */ .custom-booking-widget { font-family: inherit; } /* Stile calendario */ .custom-booking-widget .flatpickr-day.selected { background: #0D0D0D !important; border-color: #0D0D0D !important; } /* Etichette date in grassetto */ .custom-booking-widget label[for="dateFrom"], .custom-booking-widget label[for="dateTo"] { font-weight: bold; } /* Input generici */ .custom-booking-widget .form-control { font-weight: 600 !important; } /* Stile input personalizzato */ .custom-booking-widget .flatpickr-input.form-control { cursor: pointer; border: none !important; border-bottom: 5px solid white !important; background-color: rgba(0, 0, 0, 0.2) !important; backdrop-filter: blur(4px); color: white; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px; } /* Card struttura alloggio */ .custom-booking-widget .form-check { position: relative; border-bottom: 5px solid #fff; border-radius: 12px; transition: all 0.3s ease; cursor: pointer; overflow: hidden; background-color: rgba(0, 0, 0, 0.2); backdrop-filter: blur(4px); padding: 15px; margin-bottom: 10px; } /* Hover card */ .custom-booking-widget .form-check:hover { border-color: #0D0D0D; transform: translateY(-2px); } /* Nascondi radio button nativo */ .custom-booking-widget .form-check-input { position: absolute; opacity: 0; height: 0; width: 0; } /* Stile input età bambini */ .custom-booking-widget #ageInputs input { cursor: pointer; border: none !important; border-bottom: 5px solid white !important; background-color: rgba(0, 0, 0, 0.2) !important; backdrop-filter: blur(4px); color: white; box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px; } /* Bottone submit */ .custom-booking-widget .submit-btn { background: #0D0D0D !important; color: white !important; border: none !important; padding: 12px 24px; transition: transform 0.3s ease; } .custom-booking-widget .submit-btn:hover { transform: translateY(-2px); } /* Ottimizzazione mobile */ @media (max-width: 768px) { .custom-booking-widget .form-check { padding: 10px; } .custom-booking-widget .form-check-label::before { right: 10px !important; top: 10px !important; } } /* Applica a tutte le select */ select { color: #fff !important; background-color: #000 !important; appearance: none; -webkit-appearance: none; -moz-appearance: none; } select option { background-color: #0D0D0D !important; color: #fff !important; } select:focus, select:hover { color: #fff !important; background-color: #0D0D0D !important; }