:root{--paper:#faf8f1;--ink:#153f3d;--green:#174b46;--mute:#4e6560;--line:#d6d8ca;--orange:#ac5430}
html{scroll-behavior:smooth;scroll-padding-top:22px}body.vs-page{margin:0;background:var(--paper);color:var(--ink)}.vs,.vs *{box-sizing:border-box}.vs{background:var(--paper);color:var(--ink);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;text-align:left}.vs .wrap{width:min(1240px,90%);margin:0 auto}.vs a{color:inherit;text-decoration:none}.vs a:hover{text-decoration:underline;text-underline-offset:4px}.vs :focus-visible{outline:3px solid #ba652e;outline-offset:4px}.vs .skip{position:absolute;left:12px;top:-80px;background:#fff;padding:8px;z-index:99}.vs .skip:focus{top:8px}.vs-header{border-bottom:1px solid var(--line)}.vs .nav{min-height:78px;display:flex;align-items:center;gap:clamp(16px,3.6vw,60px)}.vs .brand{display:flex;align-items:center;gap:9px;font:bold 33px/1 Georgia,serif;letter-spacing:-1.8px}.vs .brand svg{width:40px;height:34px}.vs .brand-dot{color:var(--orange)}.vs .nav nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:550}.vs .nav-cta,.vs .primary{display:inline-flex;gap:24px;align-items:center;justify-content:space-between;background:var(--green);color:#fff;border:0;border-radius:4px;padding:13px 20px;font:600 14px/1.3 system-ui;cursor:pointer;transition:background .15s}.vs .nav-cta:hover,.vs .primary:hover{background:#286057;text-decoration:none}.vs .nav-cta span,.vs .primary span{font-size:20px;line-height:1}.vs .hero{display:grid;grid-template-columns:.83fr 1.17fr;align-items:center;gap:clamp(24px,5vw,82px);padding:clamp(36px,5vw,77px) 0}.vs h1,.vs h2,.vs h3,.vs p,.vs figure{margin:0}.vs h1,.vs h2,.vs h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:inherit}.vs h1{font-size:clamp(72px,7.55vw,118px);line-height:.92;letter-spacing:-.066em;margin:29px 0 21px}.vs h1 em,.vs h2 em{font-weight:400}.vs .eyebrow,.vs figcaption,.vs .index,.vs .vehicle-text small,.vs footer small{font:650 10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em}.vs .eyebrow{display:flex;gap:9px;align-items:center}.vs .eyebrow i{width:20px;height:2px;background:#b4613d}.vs .hero-copy>p,.vs .booking-copy>p{max-width:35ch;color:var(--mute);font-size:clamp(16px,1.25vw,19px);line-height:1.6}.vs .hero-copy .primary{margin-top:28px}.vs .poster{border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#f1efdf}.vs .poster img{width:100%;height:auto;display:block;aspect-ratio:1.48;object-fit:cover}.vs figcaption{padding:9px 13px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.11em}.vs .fleet{background:#f0efe5;border-block:1px solid var(--line);padding:clamp(44px,5vw,74px) 0}.vs .section-intro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:26px;gap:18px}.vs h2{font-size:clamp(39px,4.55vw,66px);line-height:1.02;letter-spacing:-.055em;margin-top:11px}.vs .section-intro>p,.vs .vehicle p,.vs .story p{color:var(--mute)}.vs .section-intro>p{font-size:15px}.vs .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.vs .vehicle{border:1px solid #cbd0c4;border-radius:4px;overflow:hidden;background:var(--paper);display:flex;flex-direction:column}.vs .vehicle-art{position:relative;background:#e9d9c9;padding:15px 18px 1px}.vs .lagoon .vehicle-art{background:#d7e3d8}.vs .sand .vehicle-art{background:#e8dfc9}.vs .index{position:absolute;left:15px;top:12px;font-size:9px}.vs .vehicle-art img{display:block;width:100%;height:auto}.vs .vehicle-text{padding:22px 22px 17px;display:flex;flex:1;flex-direction:column}.vs .vehicle-text small{font-size:9px}.vs h3{font-size:clamp(25px,2.25vw,36px);line-height:1.14;letter-spacing:-.045em}.vs .vehicle h3{margin:6px 0 11px}.vs .vehicle p{font-size:14px;line-height:1.55;flex:1}.vs .vehicle a{display:flex;justify-content:space-between;align-items:center;padding:14px 0 1px;border-top:1px solid var(--line);margin-top:17px;font-size:14px;font-weight:650}.vs .vehicle a span{font-size:20px}.vs .booking{background:#183e3b;color:#fff8e9;padding:clamp(47px,6vw,92px) 0}.vs .booking-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(25px,7vw,100px);align-items:start}.vs .booking-copy{padding-top:12px}.vs .booking .eyebrow i{background:#ecab76}.vs .booking h2{font-size:clamp(56px,6.4vw,96px);margin:23px 0}.vs .booking-copy>p{color:#e0e6d9}.vs .side-note{display:flex;gap:9px;align-items:baseline;max-width:34ch;margin-top:24px;font-size:13px;color:#cbd6c8}.vs .side-note span{color:#efaf7b}.vs .form{background:var(--paper);color:var(--ink);border-radius:5px;padding:clamp(20px,3vw,40px);display:grid;gap:14px}.vs .form h3{margin-bottom:5px;font-size:32px}.vs .form label{display:grid;gap:5px;font-size:13px;font-weight:650}.vs .form input,.vs .form select{width:100%;min-width:0;max-width:100%;border:1px solid #9ea99f;border-radius:3px;min-height:45px;background:#fffefa;color:var(--ink);padding:9px 10px;font:400 16px system-ui;box-sizing:border-box}.vs .twocol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vs .form .fine,.vs .availability,.vs .notice{font-size:13px;line-height:1.5;color:#415b54}.vs .fine a{text-decoration:underline}.vs .notice:empty,.vs .availability:empty{display:none}.vs .notice:not(:empty){padding:12px;border-left:3px solid var(--orange);background:#eeeee3}.vs button:disabled{opacity:.65;cursor:wait}.vs .about{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:clamp(45px,6vw,88px) 0;align-items:center}.vs .story p+p{margin-top:12px}.vs footer{border-top:1px solid var(--line);padding:30px 0}.vs .footer{display:flex;align-items:center;justify-content:space-between;gap:25px}.vs footer strong{font:700 32px Georgia,serif;letter-spacing:-.06em}.vs footer small{display:block;margin-bottom:6px}.vs footer p{font-size:13px;color:var(--mute)}.vs footer a{font-size:16px}
@media(max-width:820px){.vs .nav{min-height:65px}.vs .hero{gap:22px;grid-template-columns:.9fr 1.1fr}.vs h1{font-size:72px}.vs .cards{gap:10px}.vs .vehicle-text{padding:15px}.vs .vehicle-art{padding:20px 5px 3px}.vs .index{top:7px;left:10px}.vs .booking-grid{gap:25px}}
@media(max-width:650px){.vs .wrap{width:90%}.vs .nav{gap:14px}.vs .nav nav{gap:0}.vs .nav nav a:not(:first-child){display:none}.vs .nav-cta{padding:10px 12px;gap:12px}.vs .brand{font-size:28px;gap:6px}.vs .brand svg{width:30px}.vs .hero{grid-template-columns:1fr;gap:24px;padding:34px 0}.vs h1{font-size:clamp(72px,15vw,89px);margin:19px 0 15px}.vs .hero-copy .primary{margin-top:18px}.vs .poster img{aspect-ratio:1.8}.vs .section-intro,.vs .footer{align-items:start;flex-direction:column}.vs .section-intro{gap:10px}.vs .section-intro br{display:none}.vs .cards,.vs .booking-grid,.vs .about{grid-template-columns:1fr}.vs .cards{gap:18px}.vs .vehicle-art img{max-width:345px;margin:auto}.vs .vehicle-text{padding:17px 20px}.vs .booking-copy{padding:0}.vs .about{gap:20px}.vs .booking h2 br{display:none}.vs .booking h2 br:after{content:' '}.vs .booking-copy h2{font-size:48px}.vs .side-note{margin-top:12px}.vs .booking-grid{gap:24px}.vs .footer{gap:18px}.vs .twocol{gap:8px}.vs .form input[type=date]{font-size:15px;padding:7px 4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.vs *{transition:none!important}}

.vs .vehicle-art{padding:0}
.vs .vehicle-art img{width:100%;max-width:none;aspect-ratio:4/3;height:auto;object-fit:cover;filter:contrast(1.035) saturate(1.045)}
.vs .sand .vehicle-art img{object-position:center bottom}
.vs .vs-travel{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:64px}
.vs .vs-travel figure{margin:0}
.vs .vs-travel img{width:100%;height:auto;display:block;aspect-ratio:4/3;object-fit:cover;border-radius:4px}
.vs .vs-travel figcaption{padding:10px 0}
@media(max-width:640px){.vs .vs-travel{grid-template-columns:1fr;gap:18px;margin-bottom:40px}}
.vs .kicker{font:600 11px/1.5 system-ui;letter-spacing:.13em}
#prenota{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:12px;align-items:end;background:#faf8f1;color:#153f3d;padding:20px;border-radius:9px;box-shadow:0 8px 35px #1426202a;scroll-margin:15px}
#prenota label{display:grid;gap:6px;font-size:13px;font-weight:650;min-width:0}
#prenota input,#prenota select{min-width:0;width:100%;box-sizing:border-box;border:1px solid #b9c6be;background:white;border-radius:4px;padding:0 10px;height:46px;color:#153f3d;font:inherit}
#prenota button{height:46px}#richiesta{width:min(440px,90vw);border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);padding:30px}#richiesta::backdrop{background:#0f2426a8}#richiesta h2{margin:8px 0;font-size:40px}#richiesta p{margin:12px 0}#riepilogo{font-weight:680}#chiudi{float:right;font-size:26px;background:transparent;color:var(--ink);border:0;cursor:pointer}#copia{border:0;background:transparent;text-decoration:underline;color:var(--ink);padding:12px;cursor:pointer}#manuale{width:100%;min-height:100px}
@media(max-width:800px){#prenota{grid-template-columns:1fr 1fr}#prenota label:first-child,#prenota button{grid-column:1/-1}}

.vs .brand img{width:clamp(138px,15vw,184px);height:auto;display:block}
.vs .footer-badge{display:block;width:90px;height:auto;margin-bottom:10px}
.vs .lead{background:var(--paper);padding:clamp(18px,3vw,44px) 0 20px}
.vs .lead-inner{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(20px,5vw,80px)}
.vs .lead-title h1{max-width:6.3em;font-size:clamp(65px,7.6vw,110px);margin:20px 0 0}
.vs .lead-title .kicker{color:#356761;font-size:11px}
.vs .lead-photo{display:block;width:100%;height:auto;border-radius:8px;aspect-ratio:4/3}
.vs .booking-bar{padding-top:15px}
#prenota{box-shadow:none;border:1px solid #c9cfc5;background:#fffdf8;grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(0,1fr)) auto}
#prenota input[type=date]{appearance:none;-webkit-appearance:none;max-width:100%;font-size:16px}
#prenota input[type=date]::-webkit-date-and-time-value{text-align:left}
@media(max-width:800px){
 .vs .lead{padding:18px 0 16px}
 .vs .lead-inner{display:flex;flex-direction:column;align-items:stretch;gap:15px}
 .vs .lead-title h1{max-width:none;font-size:clamp(38px,9.7vw,64px);margin:5px 0 0}
 .vs .lead-title .kicker{font-size:10px;letter-spacing:.09em}
 .vs .booking-bar{padding-top:12px}
 #prenota{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:13px}
 #prenota label{min-width:0;font-size:12px}
 #prenota input,#prenota select{min-width:0}
 .vs .nav{gap:10px}.vs .nav-cta{white-space:nowrap}
}
@media(max-width:350px){.vs .brand img{width:118px}.vs .nav-cta{gap:5px}}

.vs .brand{display:flex;flex-direction:column;align-items:center;gap:0;padding:5px 0}
.vs .brand-mantra{color:#18354a;font:650 clamp(10px,.82vw,12px)/1.25 system-ui,sans-serif;letter-spacing:.065em;white-space:nowrap}
