:root{--color-sabbia: #FAF7F2;--color-sabbia-dark: #EFE9DE;--color-verde-salvia: #889c82;--color-verde-salvia-hover: #73876d;--color-verde-salvia-light: #EBF1EA;--color-verde-salvia-tint: #F2F6F1;--color-dark-blue: #00008B;--color-dark-blue-navy: #0A192F;--color-blue: #456983;--color-blue-light: #eef3f7;--color-text-primary: #1A2332;--color-text-secondary: #4A5568;--color-white: #FFFFFF;--font-heading: "Outfit", "Urbanist", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Plus Jakarta Sans", "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--shadow-sm: 0 2px 8px rgba(136, 156, 130, .08);--shadow-md: 0 8px 24px rgba(136, 156, 130, .12);--shadow-lg: 0 16px 40px rgba(10, 25, 47, .14);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--transition-fast: .2s ease;--transition-normal: .3s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-sabbia);color:var(--color-text-primary);line-height:1.6;font-weight:300;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}ul{list-style:none}.container{width:90%;max-width:1200px;margin:0 auto;padding:0 15px}.section{padding:100px 0}.text-center{text-align:center}.section-header{max-width:680px;margin:0 auto 50px}.section-subtitle{display:inline-block;font-family:var(--font-heading);font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:var(--color-verde-salvia);margin-bottom:12px}.section-subtitle.light{color:var(--color-verde-salvia-light)}.section-title{font-family:var(--font-heading);font-size:2.6rem;font-weight:300;letter-spacing:-.5px;color:var(--color-dark-blue-navy);margin-bottom:16px;line-height:1.2}.section-title.light{color:var(--color-white)}.section-desc{font-size:1.1rem;font-weight:300;color:var(--color-text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;font-weight:600;font-size:1rem;border-radius:var(--radius-sm);border:2px solid transparent;cursor:pointer;transition:all var(--transition-normal)}.btn-primary{background-color:var(--color-dark-blue);color:var(--color-white);box-shadow:0 4px 14px #00008b40}.btn-primary:hover{background-color:var(--color-blue);transform:translateY(-2px);box-shadow:0 6px 20px #00008b59}.btn-secondary{background-color:var(--color-verde-salvia);color:var(--color-white);border-color:var(--color-verde-salvia);box-shadow:0 4px 14px #889c824d}.btn-secondary:hover{background-color:var(--color-verde-salvia-hover);border-color:var(--color-verde-salvia-hover);color:var(--color-white);transform:translateY(-2px);box-shadow:0 6px 18px #889c8266}.btn-block{width:100%}.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:20px 0;transition:all var(--transition-normal)}.navbar.scrolled{background-color:#faf7f2f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:14px 0;box-shadow:var(--shadow-sm);border-bottom:2px solid var(--color-verde-salvia-light)}.nav-container{display:flex;align-items:center;justify-content:space-between}.brand-logo{display:flex;flex-direction:column;font-family:var(--font-heading);font-size:1.9rem;font-weight:300;letter-spacing:-.5px}.brand-logo-text{color:var(--color-dark-blue-navy);transition:color var(--transition-fast)}.navbar:not(.scrolled) .brand-logo-text{color:var(--color-white)}.logo-accent{color:var(--color-verde-salvia);font-weight:400}.logo-tagline{font-family:var(--font-heading);font-size:.7rem;font-weight:400;text-transform:uppercase;letter-spacing:2px;color:var(--color-verde-salvia)}.nav-menu{display:flex;align-items:center;gap:28px}.nav-link{font-weight:500;font-size:.95rem;color:var(--color-text-primary);position:relative}.navbar:not(.scrolled) .nav-link{color:var(--color-white);text-shadow:0 1px 4px rgba(0,0,0,.3)}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0%;height:2px;background-color:var(--color-verde-salvia);transition:width var(--transition-fast)}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-toggle{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:5px}.nav-toggle .bar{width:25px;height:3px;background-color:var(--color-white);border-radius:3px;transition:transform var(--transition-fast)}.navbar.scrolled .nav-toggle .bar{background-color:var(--color-dark-blue-navy)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding-top:130px;padding-bottom:90px;color:var(--color-white);overflow:hidden}.hero-slideshow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.06);transition:opacity 1.5s ease-in-out,transform 9s ease-out}.hero-slide.active{opacity:1;transform:scale(1)}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0a192fa6,#0a192fd1);z-index:2}.hero-carousel-dots{position:absolute;bottom:40px;right:5%;z-index:10;display:flex;align-items:center;gap:10px}.hero-dot{width:26px;height:3px;background:#ffffff59;border:none;border-radius:2px;cursor:pointer;padding:0;outline:none;transition:all .4s cubic-bezier(.16,1,.3,1)}.hero-dot:hover{background:#ffffffbf}.hero-dot.active{width:44px;background:var(--color-verde-salvia);box-shadow:0 0 10px #889c8299}@media (max-width: 768px){.hero-carousel-dots{bottom:24px;right:20px;gap:8px}.hero-dot{width:20px}.hero-dot.active{width:32px}}.hero-watermark{position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-heading);font-size:clamp(8rem,20vw,22rem);font-weight:100;color:#ffffff09;letter-spacing:-6px;pointer-events:none;white-space:nowrap;z-index:2;-webkit-user-select:none;user-select:none}.hero-container{position:relative;z-index:3}.hero-content{position:relative;max-width:900px}.hero-statement{font-family:var(--font-heading);font-size:clamp(3rem,5.5vw,5.2rem);font-weight:200;line-height:1.06;margin-bottom:22px;letter-spacing:-2px;color:var(--color-white);text-shadow:0 4px 20px rgba(0,0,0,.4)}.typewriter-container{display:inline-flex;align-items:baseline;position:relative}.typewriter-word{color:var(--color-verde-salvia);font-weight:300;border-bottom:2px solid rgba(136,156,130,.5);padding-bottom:2px}.typewriter-cursor{color:var(--color-verde-salvia);font-weight:200;margin-left:2px;animation:blinkCursor .8s infinite}@keyframes blinkCursor{0%,to{opacity:1}50%{opacity:0}}.hero-subtitle{font-size:1.25rem;line-height:1.7;opacity:.9;margin-bottom:0;max-width:680px;font-weight:300;letter-spacing:.2px;text-shadow:0 2px 10px rgba(0,0,0,.3)}.hero-weather-center{position:absolute;bottom:76px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:10px;background:#0a192f73;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.16);padding:8px 24px;border-radius:50px;box-shadow:0 4px 20px #00000040;white-space:nowrap}.weather-icon{font-size:1.05rem}.weather-text{font-family:var(--font-heading);font-size:.88rem;font-weight:300;letter-spacing:.8px;color:var(--color-white);opacity:.95}.hero-scroll-indicator{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;justify-content:center;color:var(--color-white);cursor:pointer;transition:opacity var(--transition-fast),transform var(--transition-fast)}.hero-scroll-indicator:hover{opacity:.85;transform:translate(-50%,3px)}.mouse-icon{width:20px;height:32px;border:1.5px solid rgba(255,255,255,.8);border-radius:16px;position:relative;display:flex;justify-content:center;padding-top:5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 12px #00000040}.mouse-wheel{width:3px;height:6px;background-color:var(--color-verde-salvia);border-radius:3px;animation:scrollMouseWheel 1.8s cubic-bezier(.65,0,.35,1) infinite}@keyframes scrollMouseWheel{0%{opacity:1;transform:translateY(0)}60%{opacity:.2;transform:translateY(10px)}to{opacity:0;transform:translateY(10px)}}@keyframes heroEntrance{0%{opacity:0;transform:translateY(28px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.animate-hero-1{animation:heroEntrance .9s cubic-bezier(.16,1,.3,1) .15s backwards}.animate-hero-2{animation:heroEntrance 1.1s cubic-bezier(.16,1,.3,1) .3s backwards}.animate-hero-3{animation:heroEntrance 1.1s cubic-bezier(.16,1,.3,1) .45s backwards}.animate-hero-4{animation:heroEntrance 1.1s cubic-bezier(.16,1,.3,1) .6s backwards}.hero-slide-controls{position:absolute;bottom:30px;right:5%;z-index:10;display:flex;align-items:center;gap:12px;background:#0a192fb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px 16px;border-radius:50px;border:1px solid rgba(255,255,255,.2)}.slide-nav-prev,.slide-nav-next{background:none;border:none;color:var(--color-white);font-size:1.2rem;cursor:pointer;padding:4px 8px;transition:color var(--transition-fast)}.slide-nav-prev:hover,.slide-nav-next:hover{color:var(--color-verde-salvia)}.slide-counter{font-size:.85rem;font-weight:700;letter-spacing:1px;color:var(--color-verde-salvia-light)}.highlight-item strong{display:block;font-size:1rem}.highlight-item span{font-size:.85rem;opacity:.85}.interni-section{background-color:var(--color-sabbia)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.gallery-card{background-color:var(--color-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-normal);border:1px solid rgba(136,156,130,.2)}.gallery-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.gallery-img-wrapper{position:relative;aspect-ratio:16 / 10;overflow:hidden}.gallery-img-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.gallery-card:hover .gallery-img-wrapper img{transform:scale(1.06)}.gallery-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a192f59;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-white);gap:10px;opacity:0;transition:opacity .35s ease,backdrop-filter .35s ease}.gallery-card:hover .gallery-overlay{opacity:1}.gallery-zoom-icon{width:44px;height:44px;border-radius:50%;background:#ffffff2e;border:1px solid rgba(255,255,255,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;transition:transform .35s cubic-bezier(.16,1,.3,1),background-color .3s ease;transform:scale(.85)}.gallery-card:hover .gallery-zoom-icon{transform:scale(1);background:#ffffff47}.zoom-label{font-family:var(--font-heading);font-size:.72rem;font-weight:300;text-transform:uppercase;letter-spacing:2.5px;opacity:.9}.gallery-info{padding:24px}.gallery-info h3{font-family:var(--font-heading);font-size:1.4rem;color:var(--color-dark-blue-navy);margin-bottom:8px}.gallery-info p{color:var(--color-text-secondary);font-size:.95rem}.servizi-section{background-color:var(--color-verde-salvia-light);border-top:1px solid rgba(136,156,130,.2);border-bottom:1px solid rgba(136,156,130,.2)}.amenities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.amenity-card{padding:32px 24px;background-color:var(--color-white);border-radius:var(--radius-md);border:1px solid rgba(136,156,130,.3);border-top:4px solid var(--color-verde-salvia);transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.amenity-card:hover{border-color:var(--color-verde-salvia);transform:translateY(-4px);box-shadow:var(--shadow-md)}.amenity-icon{font-size:2.2rem;margin-bottom:16px;display:inline-block;padding:10px;background-color:var(--color-verde-salvia-tint);border-radius:12px}.amenity-card h3{font-size:1.2rem;color:var(--color-dark-blue-navy);margin-bottom:10px}.amenity-card p{font-size:.95rem;color:var(--color-text-secondary)}.posizione-section{background-color:var(--color-sabbia)}.location-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.location-lead{font-size:1.15rem;color:var(--color-text-secondary);margin-bottom:30px}.distances-list{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.distance-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background-color:var(--color-white);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);border-left:4px solid var(--color-verde-salvia);cursor:pointer;transition:all var(--transition-fast);outline:none}.distance-item:hover,.distance-item.active-poi{transform:translate(6px);box-shadow:var(--shadow-md);border-left-color:var(--color-dark-blue);background-color:#fafcf9}.distance-item:focus-visible{outline:2px solid var(--color-verde-salvia)}.distance-item-main{display:flex;align-items:flex-start;gap:14px;flex:1}.dist-badge{background-color:var(--color-verde-salvia);color:var(--color-white);font-weight:700;font-size:.85rem;padding:4px 10px;border-radius:20px;white-space:nowrap}.distance-item.active-poi .dist-badge{background-color:var(--color-dark-blue)}.distance-item strong{display:block;font-size:1rem;color:var(--color-dark-blue-navy)}.distance-item span{font-size:.88rem;color:var(--color-text-secondary)}.distance-click-hint{font-size:.75rem;font-weight:600;color:var(--color-verde-salvia);background:var(--color-verde-salvia-light);padding:4px 8px;border-radius:6px;white-space:nowrap;transition:all var(--transition-fast)}.distance-item:hover .distance-click-hint,.distance-item.active-poi .distance-click-hint{background:var(--color-verde-salvia);color:var(--color-white)}.location-buttons{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.custom-poi-marker:hover>div{transform:rotate(-45deg) scale(1.18)!important}.location-map-card{background-color:var(--color-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);border:2px solid var(--color-verde-salvia)}.map-container{width:100%;height:490px;z-index:10}.map-card-footer{display:flex;align-items:center;gap:12px;padding:16px 20px;background-color:var(--color-verde-salvia-light);border-top:1px solid var(--color-verde-salvia)}.map-address-icon{font-size:1.5rem}.map-card-footer strong{display:block;color:var(--color-dark-blue-navy)}.map-card-footer span{font-size:.85rem;color:var(--color-text-secondary)}.guida-section{background-color:var(--color-white)}.guida-tabs{display:flex;justify-content:center;gap:12px;margin-bottom:40px;flex-wrap:wrap}.guida-tab-btn{padding:12px 24px;border-radius:50px;background-color:var(--color-sabbia);border:1px solid var(--color-verde-salvia);color:var(--color-dark-blue-navy);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--transition-fast)}.guida-tab-btn:hover,.guida-tab-btn.active{background-color:var(--color-verde-salvia);border-color:var(--color-verde-salvia);color:var(--color-white);box-shadow:0 4px 12px #889c824d}.guida-tab-pane{display:none;animation:fadeIn .4s ease}.guida-tab-pane.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.guida-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.guida-card{display:flex;flex-direction:column;background-color:var(--color-white);border-radius:var(--radius-md);border:1px solid rgba(136,156,130,.28);overflow:hidden;box-shadow:0 4px 16px #0000000a;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.guida-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px #1b2a4a1a;border-color:var(--color-verde-salvia)}.guida-card-img-wrap{position:relative;width:100%;height:200px;overflow:hidden;background-color:#f1f5f0}.guida-card-img{width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.2,0,.2,1);display:block}.guida-card:hover .guida-card-img{transform:scale(1.06)}.guida-tag-badge{position:absolute;top:14px;left:14px;padding:5px 12px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-dark-blue-navy);background:#fffffff0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:999px;box-shadow:0 2px 8px #0000001f;border:1px solid rgba(255,255,255,.8);pointer-events:none}.guida-card-body{padding:24px;display:flex;flex-direction:column;flex-grow:1}.guida-card-body h3{font-size:1.22rem;font-weight:700;color:var(--color-dark-blue-navy);margin-bottom:10px;line-height:1.35}.guida-card-body p{font-size:.92rem;line-height:1.6;color:var(--color-text-secondary);margin-bottom:22px;flex-grow:1}.btn-guida-maps{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 16px;font-size:.88rem;font-weight:600;color:var(--color-dark-blue-navy);background-color:var(--color-verde-salvia-tint);border:1px solid rgba(136,156,130,.35);border-radius:var(--radius-sm);text-decoration:none;transition:all .25s ease;margin-top:auto}.btn-guida-maps:hover{background-color:var(--color-verde-salvia);border-color:var(--color-verde-salvia);color:var(--color-white);box-shadow:0 6px 16px #889c8259;transform:translateY(-1px)}.guida-map-pin{flex-shrink:0;color:var(--color-verde-salvia);transition:color .2s ease}.btn-guida-maps:hover .guida-map-pin{color:var(--color-white)}.ext-arrow{font-size:.95rem;font-weight:700;transition:transform .2s ease}.btn-guida-maps:hover .ext-arrow{transform:translate(2px,-2px)}.disponibilita-section{background-color:var(--color-sabbia);position:relative}.cal-search-card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid rgba(136,156,130,.25);padding:26px 30px;margin-bottom:28px}.cal-search-form{display:grid;grid-template-columns:1.2fr 1.2fr 1fr auto;gap:20px;align-items:flex-end}.cal-input-group{display:flex;flex-direction:column;gap:8px}.cal-label{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-dark-blue-navy);display:flex;align-items:center;gap:6px}.cal-date-input,.cal-select-input{padding:12px 16px;border:1.5px solid rgba(136,156,130,.35);border-radius:var(--radius-sm);font-family:inherit;font-size:.95rem;color:var(--color-dark-blue-navy);background-color:#fafbf9;transition:all .2s ease;outline:none}.cal-date-input:focus,.cal-select-input:focus{border-color:var(--color-verde-salvia);background-color:var(--color-white);box-shadow:0 0 0 3px #889c822e}.btn-cal-check{height:48px;padding:0 26px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.95rem;font-weight:600;white-space:nowrap}.cal-result-container{margin-bottom:30px}.cal-status-placeholder{display:flex;align-items:center;gap:16px;padding:18px 24px;background:#ffffffbf;border:1.5px dashed rgba(136,156,130,.4);border-radius:var(--radius-md);color:var(--color-text-secondary)}.cal-status-placeholder .cal-status-icon{font-size:2rem;line-height:1}.cal-status-placeholder strong{display:block;color:var(--color-dark-blue-navy);font-size:1.05rem;margin-bottom:2px}.cal-status-placeholder p{margin:0;font-size:.9rem}.cal-status-box{border-radius:var(--radius-md);padding:26px 30px;box-shadow:var(--shadow-md);transition:all .3s ease}.cal-status-box.status-evaluate{background:#fbfbf9;border:1.5px solid var(--color-verde-salvia)}.cal-status-box.status-available{background:#f3f8f1;border:1.5px solid #6fa864}.cal-status-box.status-unavailable{background:#fdf5f5;border:1.5px solid #d96868}.cal-status-header{display:flex;align-items:center;gap:14px;margin-bottom:12px;flex-wrap:wrap}.cal-status-header h4{font-size:1.25rem;color:var(--color-dark-blue-navy);margin:0}.cal-status-badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.badge-eval{background-color:var(--color-dark-blue-navy);color:#fff}.badge-green{background-color:#2e7d32;color:#fff}.badge-red{background-color:#c62828;color:#fff}.cal-status-explanation{font-size:.96rem;line-height:1.65;color:var(--color-text-secondary);margin-bottom:16px}.cal-status-explanation strong{color:var(--color-dark-blue-navy)}.cal-stay-details{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0 22px;padding:14px 20px;background:var(--color-white);border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.06)}.cal-detail-item{display:flex;flex-direction:column;gap:2px}.detail-label{font-size:.78rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase}.detail-value{font-size:1.05rem;font-weight:700;color:var(--color-dark-blue-navy)}.cal-actions-title{font-size:.95rem;font-weight:600;color:var(--color-dark-blue-navy);margin-bottom:12px}.cal-actions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.btn-cal-platform{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 18px;border-radius:var(--radius-sm);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;text-align:center}.btn-cal-platform:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.btn-cal-booking{background-color:#003580;color:#fff}.btn-cal-airbnb{background-color:#ff385c;color:#fff}.btn-cal-golden{background-color:var(--color-verde-salvia);color:#fff}.btn-cal-platform .platform-name{font-size:1.1rem;font-weight:700}.btn-cal-platform .platform-sub{font-size:.78rem;opacity:.9;margin-top:3px}.cal-status-hint{margin-top:10px;font-size:.92rem;color:#b71c1c}.calendar-wrapper{background:var(--color-white);border-radius:var(--radius-lg);padding:30px;box-shadow:var(--shadow-sm);border:1px solid rgba(136,156,130,.22)}.calendar-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:14px;padding-bottom:18px;border-bottom:1px solid rgba(136,156,130,.15)}.cal-nav-btn{padding:8px 18px;background-color:var(--color-verde-salvia-tint);border:1px solid rgba(136,156,130,.35);border-radius:999px;font-family:inherit;font-weight:600;font-size:.88rem;color:var(--color-dark-blue-navy);cursor:pointer;transition:all .2s ease}.cal-nav-btn:hover{background-color:var(--color-verde-salvia);color:var(--color-white);box-shadow:0 4px 10px #889c824d}.calendar-legend{display:flex;align-items:center;gap:20px;font-size:.84rem;font-weight:600;color:var(--color-text-secondary)}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:12px;height:12px;border-radius:3px}.dot-available{background:#f4f8f2;border:1.5px solid rgba(136,156,130,.4)}.dot-booked{background:#eee;border:1.5px solid #bdbdbd}.dot-selected{background:var(--color-verde-salvia);border:1.5px solid var(--color-dark-blue-navy)}.calendar-months-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.calendar-month-card{display:flex;flex-direction:column}.month-header h3{font-size:1.18rem;font-weight:700;color:var(--color-dark-blue-navy);text-align:center;margin-bottom:16px}.weekdays-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center;margin-bottom:8px;font-size:.78rem;font-weight:700;color:var(--color-verde-salvia);text-transform:uppercase}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cal-day{aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;font-family:inherit;font-size:.92rem;font-weight:500;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;cursor:default;transition:all .15s ease;-webkit-user-select:none;user-select:none}.cal-day.day-available{background-color:#f7faf5;border-color:#889c8247;color:var(--color-dark-blue-navy);cursor:pointer}.cal-day.day-available:hover{background-color:#889c824d;border-color:var(--color-verde-salvia);transform:scale(1.08);z-index:2;box-shadow:0 4px 8px #00000014}.cal-day.day-booked{background-color:#f2f2f2;color:#b5b5b5;cursor:not-allowed;text-decoration:line-through;border-color:#0000000a}.cal-day.day-past{opacity:.35;cursor:not-allowed}.cal-day.day-today{font-weight:800;border:2px solid var(--color-dark-blue-navy)!important}.cal-day.selected-range{background-color:var(--color-verde-salvia)!important;color:#fff!important;font-weight:700;border-color:var(--color-verde-salvia)!important;transform:scale(1.06);z-index:3;box-shadow:0 4px 12px #889c8273}.cal-day.day-in-range{background-color:#889c8240!important;color:var(--color-dark-blue-navy)!important;border-radius:0}.day-pill{position:absolute;bottom:2px;font-size:.58rem;text-transform:uppercase;font-weight:800;line-height:1}.prenota-section{background-color:var(--color-dark-blue-navy);color:var(--color-white);position:relative}.prenota-lead-desc{max-width:780px;margin:0 auto;font-size:1.12rem;font-weight:300;line-height:1.7;color:#ffffffd9}.prenota-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px;margin-bottom:40px}.platform-card{background:#ffffff0d;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);padding:36px 30px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;color:var(--color-white);transition:all var(--transition-normal);position:relative;overflow:hidden}.platform-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;opacity:0;transition:opacity var(--transition-normal)}.platform-card.card-booking:before{background:#003580}.platform-card.card-airbnb:before{background:#ff385c}.platform-card.card-golden:before{background:var(--color-verde-salvia)}.platform-card:hover{transform:translateY(-8px);background:#ffffff14}.platform-card:hover:before{opacity:1}.platform-card.card-booking:hover{border-color:#0050be80;box-shadow:0 16px 40px #00358059}.platform-card.card-airbnb:hover{border-color:#ff385c80;box-shadow:0 16px 40px #ff385c59}.platform-card.card-golden:hover{border-color:#889c8280;box-shadow:0 16px 40px #889c8259}.platform-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.platform-logo-wrap{display:inline-flex;align-items:center;padding:8px 16px;border-radius:8px}.logo-booking{background-color:#003580}.logo-booking .platform-logo-text{font-family:var(--font-heading);font-weight:700;font-size:1.15rem;letter-spacing:-.5px;color:#fff}.logo-booking .logo-dot{color:#00baf2}.logo-airbnb{background-color:#ff385c}.logo-airbnb .platform-logo-text{font-family:var(--font-heading);font-weight:700;font-size:1.25rem;letter-spacing:-.5px;color:#fff}.logo-golden{background:linear-gradient(135deg,#1c2e24,#2a4535);border:1px solid rgba(136,156,130,.4)}.logo-golden .platform-logo-text{font-family:var(--font-heading);font-weight:600;font-size:1.05rem;letter-spacing:.5px;color:#ebf1ea}.platform-tag{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:4px 10px;border-radius:20px;background:#ffffff1a;color:#fffc}.platform-tag.tag-golden{background:#889c8240;color:var(--color-verde-salvia-light)}.platform-card-body{margin-bottom:28px}.platform-title{font-family:var(--font-heading);font-size:1.4rem;font-weight:400;color:var(--color-white);margin-bottom:12px}.platform-text{font-size:.95rem;color:#ffffffbf;line-height:1.6;font-weight:300}.platform-btn-action{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-radius:var(--radius-sm);font-weight:600;font-size:.95rem;transition:all var(--transition-fast)}.btn-booking-action{background-color:#003580;color:#fff}.btn-booking-action:hover,.platform-card.card-booking:hover .btn-booking-action{background-color:#004fc4;transform:translate(4px)}.btn-airbnb-action{background-color:#ff385c;color:#fff}.btn-airbnb-action:hover,.platform-card.card-airbnb:hover .btn-airbnb-action{background-color:#e00b41;transform:translate(4px)}.btn-golden-action{background-color:var(--color-verde-salvia);color:#fff}.btn-golden-action:hover,.platform-card.card-golden:hover .btn-golden-action{background-color:var(--color-verde-salvia-hover);transform:translate(4px)}.platform-actions-group{display:flex;flex-direction:column;gap:12px}.platform-website-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:.84rem;color:#ffffffb3;text-decoration:underline;transition:color var(--transition-fast);padding:4px 0}.platform-website-link:hover{color:var(--color-verde-salvia-light)}.prenota-note-wrap{margin-top:20px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}.prenota-address-note{font-size:.95rem;color:#ffffffb3;font-weight:300}@media (max-width: 992px){.prenota-grid{grid-template-columns:1fr;max-width:520px;margin-left:auto;margin-right:auto}}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.modal.active{opacity:1;pointer-events:auto}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{position:relative;z-index:2001;max-width:90%;max-height:85vh;display:flex;flex-direction:column;align-items:center}.modal-content img{max-height:75vh;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);object-fit:contain}.modal-caption{margin-top:14px;color:var(--color-white);font-family:var(--font-heading);font-size:1.3rem}.modal-close{position:absolute;top:-40px;right:0;background:none;border:none;color:var(--color-white);font-size:2.5rem;cursor:pointer;line-height:1}.toast{position:fixed;bottom:30px;right:30px;z-index:3000;background-color:var(--color-verde-salvia);color:var(--color-white);padding:16px 24px;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);font-weight:600;transform:translateY(100px);opacity:0;transition:all var(--transition-normal)}.toast.show{transform:translateY(0);opacity:1}.footer{background-color:#050d18;color:var(--color-white);padding-top:60px}.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand p{margin-top:16px;opacity:.7;max-width:320px;font-size:.92rem}.footer-links h4,.footer-info h4{font-size:1.1rem;margin-bottom:18px;color:var(--color-verde-salvia)}.footer-links ul{display:flex;flex-direction:column;gap:10px}.footer-links a{opacity:.7;font-size:.92rem}.footer-links a:hover{opacity:1;color:var(--color-verde-salvia)}.footer-info p{opacity:.7;font-size:.92rem;line-height:1.6}.footer-bottom{padding:24px 0;text-align:center;font-size:.85rem;opacity:.5}@media (max-width: 992px){.hero-title{font-size:2.8rem}.hero-highlights{grid-template-columns:1fr;gap:16px}.location-wrapper,.contatti-box{grid-template-columns:1fr;gap:40px}.amenities-grid,.guida-cards-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.footer-content{grid-template-columns:1fr;gap:30px}}@media (max-width: 768px){.nav-toggle{display:flex}.nav-menu{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background-color:var(--color-sabbia);flex-direction:column;justify-content:center;gap:24px;box-shadow:var(--shadow-lg);transition:right var(--transition-normal);z-index:999}.nav-menu.open{right:0}.nav-link{color:var(--color-dark-blue-navy)!important;font-size:1.2rem}.hero{padding-top:140px;text-align:center}.hero-actions{flex-direction:column}.gallery-grid,.amenities-grid,.guida-cards-grid,.form-row{grid-template-columns:1fr}.section-title{font-size:2rem}.cal-search-card{padding:20px 16px}.cal-search-form{grid-template-columns:1fr}.btn-cal-check{grid-column:span 1}.calendar-wrapper{padding:20px 14px}.calendar-months-grid{grid-template-columns:1fr}.cal-stay-details{grid-template-columns:1fr 1fr}.cal-actions-grid{grid-template-columns:1fr}.calendar-controls{flex-direction:column;align-items:stretch}.calendar-legend{justify-content:center;flex-wrap:wrap;gap:12px}}
