:root{--cream:#f4efe5;--paper:#fffdf8;--forest:#173f35;--forest-dark:#0f3028;--copper:#b5653b;--ink:#252822;--sage:#839488;--line:#d9d1c3;--shadow:0 22px 60px rgba(35,43,36,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,system-ui,sans-serif;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.site-header{height:90px;padding:0 clamp(24px,5vw,80px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;background:rgba(244,239,229,.94);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);border-bottom:1px solid rgba(217,209,195,.65)}.brand{font:600 clamp(31px,3vw,47px)/1 Cormorant Garamond,serif;color:var(--forest);letter-spacing:-.04em}.brand span{font-weight:500;color:var(--copper)}.main-nav{display:flex;gap:42px;font-size:14px;font-weight:600}.main-nav a{position:relative}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--copper);transition:.2s}.main-nav a:hover:after{right:0}.header-actions{justify-self:end;display:flex;align-items:center;gap:14px}.language select{appearance:none;border:0;background:transparent;padding:10px;font:600 13px Manrope;color:var(--forest);cursor:pointer}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:54px;padding:0 27px;border-radius:10px;border:1px solid transparent;font-weight:700;cursor:pointer;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-outline{border-color:var(--copper);color:#8b4629}.button-outline:hover{background:var(--copper);color:#fff}.button-primary{background:var(--forest);color:#fff}.button-primary:hover{background:var(--forest-dark)}.menu-toggle{display:none}.hero{min-height:calc(100vh - 90px);display:grid;grid-template-columns:42% 58%;position:relative;padding-bottom:94px}.hero-copy{padding:clamp(55px,7vh,100px) 9vw 60px clamp(24px,5vw,80px);align-self:center}.eyebrow{text-transform:uppercase;color:var(--copper);font-size:12px;font-weight:700;letter-spacing:.18em;margin:0 0 24px}.eyebrow:after{content:"";display:block;width:62px;height:2px;background:var(--copper);margin-top:15px}.hero h1,.section h2,.location h2{font:500 clamp(54px,5.5vw,88px)/.94 Cormorant Garamond,serif;letter-spacing:-.045em;color:var(--forest);margin:0 0 27px}.lead{font-size:clamp(16px,1.25vw,20px);max-width:580px;margin:0 0 34px;color:#50534d}.safe-note{font-size:13px;color:#6a6d67;margin:15px 0}.safe-note span{color:var(--forest);font-weight:bold}.hero-photo{position:relative;min-height:660px;overflow:hidden;background:#d9d1c3}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,63,53,.08),transparent 35%)}.rating-pill{position:absolute;top:28px;right:28px;z-index:1;background:rgba(255,253,248,.92);backdrop-filter:blur(10px);border-radius:12px;padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow)}.rating-pill b{font:600 27px Cormorant Garamond;color:var(--forest)}.rating-pill span{color:var(--copper);font-size:11px;letter-spacing:2px}.rating-pill small{display:block;color:#666;letter-spacing:0}.booking-card{position:absolute;z-index:3;left:37.5%;bottom:30px;width:min(740px,59vw);background:var(--paper);border-radius:16px;box-shadow:var(--shadow);padding:23px 32px}.booking-row{display:grid;grid-template-columns:1fr 1fr .8fr}.booking-row label{padding:0 24px;border-right:1px solid var(--line);font-size:12px;font-weight:700;color:#666}.booking-row label:first-child{padding-left:0}.booking-row label:last-child{border:0}.booking-row input,.booking-row select,.contact-grid input{width:100%;border:0;background:transparent;color:var(--ink);font:600 15px Manrope;padding:8px 0 0;outline:none}.booking-row input:focus,.booking-row select:focus,.contact-grid input:focus{box-shadow:0 2px 0 var(--sage)}.price-lock{width:100%;background:none;border:0;border-top:1px solid var(--line);margin-top:18px;padding:15px 0 0;color:#687b6f;font:600 13px Manrope;cursor:pointer}.price-lock span{color:var(--copper)}.form-message{color:#a33d2e;font-size:13px;font-weight:600;text-align:center;padding-top:8px}.contact-panel{border-top:1px solid var(--line);margin-top:15px;padding-top:18px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-grid label{font-size:12px;font-weight:700;color:#666}.contact-grid input{border-bottom:1px solid var(--line);padding:8px 0}.privacy-copy{font-size:11px;color:#686b65;line-height:1.5}.consent{display:flex;gap:10px;font-size:11px;align-items:flex-start;margin:11px 0 16px}.consent input{margin-top:3px;accent-color:var(--forest)}.full{width:100%;border:0}.quote{border-top:1px solid var(--line);margin-top:17px;padding-top:17px;display:grid;grid-template-columns:1fr 1fr auto;gap:25px;align-items:end}.quote[hidden],.contact-panel[hidden]{display:none}.quote span{display:block;font-size:11px;color:#777}.quote strong{font:600 24px Cormorant Garamond;color:var(--forest)}.whatsapp{background:#1d854d;color:#fff;font-size:12px;min-height:47px}.proof{display:grid;grid-template-columns:repeat(4,1fr);max-width:1400px;margin:auto;border-bottom:1px solid var(--line)}.proof div{padding:27px 30px;text-align:center;border-right:1px solid var(--line)}.proof div:last-child{border:0}.proof strong{font:600 27px Cormorant Garamond;color:var(--forest);display:block}.proof span{font-size:12px;color:#6b6d67}.section{padding:120px clamp(24px,6vw,96px);max-width:1600px;margin:auto}.section-heading{max-width:690px}.section h2,.location h2{font-size:clamp(45px,4.5vw,70px)}.section-heading>p:last-child{color:#696c66}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:60px}.service-grid article{background:var(--paper);padding:42px}.service-number{color:var(--copper);font:600 13px Manrope}.service-grid h3{font:600 31px Cormorant Garamond;color:var(--forest);margin:36px 0 10px}.service-grid p{font-size:14px;color:#686b65}.gallery{padding-top:50px}.horizontal{max-width:none;display:flex;justify-content:space-between;align-items:end}.horizontal>p{text-align:right}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:290px 290px;gap:16px;margin-top:45px}.gallery-grid figure{margin:0;overflow:hidden;border-radius:3px}.gallery-grid .photo-1{grid-row:1/3}.gallery-grid .photo-2{grid-column:2/4}.gallery-grid img{transition:transform .6s}.gallery-grid figure:hover img{transform:scale(1.025)}.location{display:grid;grid-template-columns:43% 57%;background:var(--forest);color:#e6e3d9}.location-copy{padding:100px clamp(24px,6vw,96px)}.location h2{color:#fff}.location-copy>p:not(.eyebrow){color:#c5cec9}.distance{display:grid;gap:12px;margin-top:36px}.distance span{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:10px}.distance b{color:#d6a07e}.location iframe{width:100%;height:100%;min-height:530px;border:0;filter:saturate(.75)}footer{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:30px;align-items:center;padding:48px clamp(24px,5vw,80px);background:#0f3028;color:#d7ddd9;font-size:13px}footer .brand{color:white}footer p:last-child{text-align:right}footer small{color:#aebbb5}@media(max-width:1000px){.site-header{grid-template-columns:1fr auto}.main-nav{display:none}.header-actions .button{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding:0}.hero-copy{padding:65px 7vw}.hero-photo{min-height:560px}.booking-card{position:relative;left:auto;bottom:auto;width:auto;margin:-75px 5vw 45px;grid-column:1;z-index:4}.proof{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:1fr}.location{grid-template-columns:1fr}.menu-toggle{display:block;width:40px;height:40px;border:0;background:none}.menu-toggle span{display:block;width:22px;height:2px;background:var(--forest);margin:6px}.menu-open .main-nav{display:flex;position:fixed;inset:90px 0 auto;background:var(--paper);padding:28px;flex-direction:column;gap:22px;box-shadow:var(--shadow)}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .photo-1{grid-row:1/3}.gallery-grid .photo-2{grid-column:auto}.header-actions{position:absolute;right:70px}}@media(max-width:650px){.site-header{height:72px;padding:0 18px}.brand{font-size:31px}.header-actions{right:55px}.hero-copy{padding:52px 22px}.hero h1{font-size:54px}.hero-photo{min-height:400px}.booking-card{margin:-35px 14px 40px;padding:22px}.booking-row{grid-template-columns:1fr 1fr}.booking-row label{padding:0 8px}.booking-row label:nth-child(2){border:0}.booking-row label:last-child{grid-column:1/3;border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.contact-grid,.quote{grid-template-columns:1fr}.quote-total{border-top:1px solid var(--line);padding-top:10px}.proof{grid-template-columns:1fr 1fr}.proof div{padding:20px 10px}.section{padding:80px 20px}.service-grid{margin-top:35px}.service-grid article{padding:30px}.horizontal{display:block}.horizontal>p{text-align:left}.gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4,260px)}.gallery-grid .photo-1,.gallery-grid .photo-2{grid-row:auto;grid-column:auto}.location-copy{padding:75px 22px}.location iframe{min-height:380px}footer{grid-template-columns:1fr;text-align:left}footer p:last-child{text-align:left}.rating-pill{top:14px;right:14px}.main-nav{inset:72px 0 auto!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.wind-guide-section{padding:90px clamp(24px,7vw,110px);display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);gap:clamp(42px,7vw,105px);align-items:center;background:#e9e1d3;border-top:1px solid var(--line)}.wind-guide-copy{max-width:670px}.wind-guide-copy h2{font:500 clamp(45px,4.7vw,68px)/.96 Cormorant Garamond,serif;letter-spacing:-.04em;color:var(--forest);margin:0 0 22px}.wind-guide-intro{color:#5d615b;font-size:16px;line-height:1.75}.wind-guide-summary{list-style:none;padding:0;margin:28px 0 0;border-top:1px solid rgba(23,63,53,.18)}.wind-guide-summary li{display:flex;justify-content:space-between;gap:24px;padding:11px 0;border-bottom:1px solid rgba(23,63,53,.18);font-size:12px}.wind-guide-summary strong{color:var(--forest)}.wind-guide-summary span{color:#6b6d67;text-align:right}.wind-map-preview{position:relative;display:block;width:100%;aspect-ratio:1.54;padding:0;border:0;border-radius:16px;overflow:hidden;background:var(--forest);box-shadow:var(--shadow);cursor:zoom-in}.wind-map-preview img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.wind-map-preview:hover img{transform:scale(1.025)}.wind-map-preview:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(8,28,22,.88))}.wind-map-preview span{position:absolute;z-index:1;left:24px;bottom:21px;color:#fff;font:700 13px Manrope}.wind-map-preview span b{margin-left:7px;font-size:18px}.wind-map-modal{width:min(1500px,96vw);max-width:none;max-height:94vh;margin:auto;padding:0;border:0;border-radius:18px;background:#101b18;color:#fff;box-shadow:0 35px 110px rgba(0,0,0,.55);overflow:hidden}.wind-map-modal::backdrop{background:rgba(8,20,17,.9);backdrop-filter:blur(10px)}.wind-map-dialog{display:flex;flex-direction:column;max-height:94vh}.wind-map-dialog-head{min-height:70px;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:14px 18px 14px 28px;background:#101b18}.wind-map-dialog-head h2{margin:0;font:500 clamp(22px,2.4vw,34px)/1.1 Cormorant Garamond,serif}.wind-map-dialog-head button{flex:0 0 auto;width:44px;height:44px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:transparent;color:#fff;font-size:29px;line-height:1;cursor:pointer}.wind-map-dialog>img{display:block;width:100%;height:auto;max-height:calc(94vh - 70px);object-fit:contain;background:#0b1613}.wind-map-open{overflow:hidden}@media(max-width:900px){.wind-guide-section{grid-template-columns:1fr}.wind-map-preview{max-width:760px}}@media(max-width:650px){.wind-guide-section{padding:70px 20px;gap:32px}.wind-guide-copy h2{font-size:50px}.wind-guide-summary li{display:block}.wind-guide-summary span{display:block;text-align:left;margin-top:3px}.wind-map-preview{border-radius:11px}.wind-map-preview span{left:17px;bottom:15px}.wind-map-modal{width:100vw;height:100vh;max-height:100vh;border-radius:0}.wind-map-dialog{height:100vh;max-height:100vh}.wind-map-dialog-head{min-height:68px;padding:12px 12px 12px 18px}.wind-map-dialog>img{flex:1;min-height:0;max-height:calc(100vh - 68px)}}
.form-message.has-whatsapp{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 12px 2px;line-height:1.5}.unavailable-whatsapp{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:8px;background:#1d854d;color:#fff;font-size:12px;font-weight:700}.unavailable-whatsapp:before{content:"●";margin-right:8px}.consent a{color:#8b4629;text-decoration:underline;text-underline-offset:2px;font-weight:700}footer a:not(.brand){text-decoration:underline;text-decoration-color:rgba(255,255,255,.3);text-underline-offset:3px}footer a:not(.brand):hover{text-decoration-color:#d6a07e}.site-header{grid-template-columns:auto minmax(0,1fr) auto}.main-nav{justify-self:center;gap:clamp(12px,1.7vw,30px);font-size:13px;white-space:nowrap}#availability,#services,#hospitality,#house-gallery,#guide,#location{scroll-margin-top:110px}@media(max-width:1180px){.site-header{grid-template-columns:1fr auto}.main-nav{display:none}.menu-toggle{display:block;width:40px;height:40px;border:0;background:none}.menu-toggle span{display:block;width:22px;height:2px;background:var(--forest);margin:6px}.header-actions{position:absolute;right:70px}.header-actions .button{display:none}.menu-open .main-nav{display:flex;position:fixed;inset:90px 0 auto;background:var(--paper);padding:28px;flex-direction:column;gap:22px;box-shadow:var(--shadow)}}@media(max-width:650px){#availability,#services,#hospitality,#house-gallery,#guide,#location{scroll-margin-top:84px}.menu-open .main-nav{inset:72px 0 auto}}
.service-icon{display:block;width:38px;height:38px;color:var(--copper)}.service-grid .service-icon+h3{margin-top:28px}
.rating-pill{border:0;cursor:pointer;text-align:left}.proof-review{padding:27px 30px;text-align:center;border:0;border-right:1px solid var(--line);background:transparent;cursor:pointer;font:inherit;color:inherit}.proof-review strong{font:600 27px Cormorant Garamond;color:var(--forest);display:block}.proof-review span{font-size:12px;color:#6b6d67}.modal-open{overflow:hidden}.reviews-modal[hidden]{display:none}.reviews-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.reviews-backdrop{position:absolute;inset:0;background:rgba(20,31,27,.72);backdrop-filter:blur(8px)}.reviews-dialog{position:relative;width:min(920px,96vw);max-height:94vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 100px rgba(0,0,0,.35);padding:30px 42px 22px}.reviews-close{position:absolute;right:18px;top:14px;width:42px;height:42px;border:0;border-radius:50%;background:#f2f2f2;font-size:28px;cursor:pointer;z-index:2}.reviews-head{text-align:center;padding:0 30px 24px}.review-score{display:flex;justify-content:center;align-items:center;gap:12px;color:#b8952c}.review-score strong{font:700 58px/1 Manrope;color:#222}.review-score span{font-size:38px}.reviews-head h2{font:700 19px Manrope;margin:12px 0 4px}.reviews-head>p{font-size:14px;color:#666;max-width:530px;margin:0 auto 20px}.score-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #ddd;border-bottom:1px solid #ddd}.score-grid span{font-size:11px;padding:12px 8px;border-right:1px solid #ddd}.score-grid span:last-child{border:0}.score-grid b{font-size:17px;display:block}.reviews-stage{overflow:hidden;touch-action:pan-y;cursor:grab;border-radius:14px;background:#fafafa}.reviews-track{display:flex;transition:transform .45s cubic-bezier(.22,.61,.36,1)}.review-slide{min-width:100%;position:relative;padding:12px 34px 8px;display:grid;align-items:center}.review-slide.is-featured{background:linear-gradient(135deg,#fffdf8,#f5eee2)}.featured-label{position:absolute;right:28px;top:19px;z-index:2;background:#173f35;color:#fff;border-radius:999px;padding:6px 11px;font-size:10px;font-weight:700}.review-crop{width:100%;max-width:690px;aspect-ratio:690 / var(--review-height);overflow:hidden;margin:auto;background:#fff}.review-crop img{display:block;width:100%;height:auto;max-width:none;margin-top:calc(var(--review-top-pct) * -1);object-fit:initial}.normalized-date{position:absolute;left:calc(50% - 270px);top:75px;z-index:3;background:#fff;color:#717171;font-size:14px;padding:1px 20px 2px 5px}.reviews-controls{display:flex;justify-content:center;align-items:center;gap:22px;padding:17px 0 4px;background:#fff;color:#333}.reviews-controls button{width:43px;height:43px;border:1px solid #bbb;border-radius:50%;background:#fff;font-size:20px;cursor:pointer}.reviews-controls span{min-width:72px;text-align:center;font-weight:700;font-size:13px}.reviews-source{text-align:center;color:#777;font-size:10px;margin:7px 0 0}@media(max-width:760px){.reviews-dialog{padding:24px 12px 16px}.reviews-head{padding:0 10px 17px}.review-score strong{font-size:45px}.score-grid{grid-template-columns:repeat(3,1fr)}.review-slide{padding:10px 0}.review-crop{min-height:0}.normalized-date{left:12%;top:calc(70 / 690 * (100vw - 64px));font-size:12px}.featured-label{right:9px;top:12px;font-size:8px}
.proof-review{padding:20px 10px}}
.review-slide{min-height:0;padding:42px clamp(24px,7vw,78px) 35px;display:flex;flex-direction:column;justify-content:center;text-align:center;background:#fff}.review-slide.is-featured{background:radial-gradient(circle at 50% 0,#fff9e9 0,#fffdf8 48%,#f6efe4 100%);box-shadow:inset 0 0 0 1px rgba(181,101,59,.13)}.review-avatar{width:72px;height:72px;flex:0 0 72px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 5px #fff,0 8px 25px rgba(27,48,41,.18);margin:0 auto 14px}.review-slide h3{font:700 18px Manrope;margin:0;color:#222}.review-meta{font-size:12px;color:#717171;margin:2px 0 8px}.review-stars{color:#b78c18;font-size:15px;letter-spacing:3px;margin-bottom:15px}.review-slide blockquote{max-width:690px;margin:0 auto;font:500 clamp(17px,2vw,23px)/1.52 Cormorant Garamond,serif;color:#30342f}.review-slide.is-featured blockquote{color:#173f35}.featured-label{background:#b5653b;letter-spacing:.04em}.reviews-source a{text-decoration:underline;font-weight:700;color:#173f35}@media(max-width:760px){.review-slide{min-height: 0;padding:48px 22px 32px}.review-slide blockquote{font-size:19px}.review-avatar{width:64px;height:64px;flex-basis:64px}.featured-label{top:10px;right:10px}}
.reviews-track {align-items:flex-start;transition:
        transform 0.45s cubic-bezier(.22, .61, .36, 1),
        height 0.35s ease;
}

/* Elenco completo dei servizi */
.services-trigger{display:inline-flex;align-items:center;gap:10px;margin-top:18px;padding:0 0 7px;border:0;border-bottom:1px solid var(--copper);background:transparent;color:#8b4629;font:700 13px Manrope;cursor:pointer}.services-trigger span{font-size:18px;transition:transform .2s}.services-trigger:hover span{transform:translateX(4px)}.services-modal[hidden]{display:none}.services-modal{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:20px}.services-backdrop{position:absolute;inset:0;background:rgba(20,31,27,.72);backdrop-filter:blur(8px)}.services-dialog{position:relative;width:min(920px,96vw);max-height:92vh;overflow:auto;background:var(--paper);border-radius:22px;box-shadow:0 30px 100px rgba(0,0,0,.35);padding:42px 48px 50px}.services-close{position:absolute;right:18px;top:14px;width:42px;height:42px;border:0;border-radius:50%;background:#eee9df;color:var(--forest);font-size:28px;cursor:pointer}.services-modal-head{max-width:650px;margin-bottom:30px}.services-modal-head .eyebrow{margin-bottom:18px}.services-modal-head h2{font:500 clamp(38px,5vw,56px)/1 Cormorant Garamond,serif;letter-spacing:-.035em;color:var(--forest);margin:0 0 14px}.services-modal-head>p:last-child{color:#686b65;margin:0}.amenities-list{display:grid;grid-template-columns:1fr 1fr;gap:0 34px;border-top:1px solid var(--line)}.amenities-list article{display:grid;grid-template-columns:34px 1fr;gap:16px;align-items:start;padding:20px 0;border-bottom:1px solid var(--line)}.amenity-icon{width:28px;height:28px;display:block;fill:currentColor;color:var(--ink);border:0;background:transparent}.amenities-list h3{font:700 14px/1.35 Manrope;margin:1px 0 4px;color:var(--ink)}.amenities-list p{font-size:11px;line-height:1.5;color:#686b65;margin:0}@media(max-width:650px){.services-dialog{padding:34px 20px 35px;border-radius:16px}.services-modal-head{padding-right:35px}.amenities-list{grid-template-columns:1fr}.amenities-list article{padding:17px 0}.services-close{right:10px;top:10px}}

/* Ospitalità inclusiva — Quiet luxury mediterranea */
.welcome-section{padding:115px clamp(24px,6vw,96px);background:var(--forest);color:#e9e3d8;display:grid;grid-template-columns:minmax(280px,.8fr) minmax(580px,1.35fr);gap:clamp(45px,7vw,110px);align-items:center}.welcome-heading{max-width:520px}.welcome-heading .eyebrow{color:#d9a17f}.welcome-heading .eyebrow:after{background:#d9a17f}.welcome-heading h2{font:500 clamp(50px,5vw,76px)/.96 Cormorant Garamond,serif;letter-spacing:-.045em;color:#fff;margin:0 0 24px}.welcome-heading>p:last-child{color:#bdc9c4;font-size:17px;max-width:470px}.welcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.welcome-card{position:relative;min-height:330px;padding:40px 36px;background:#f8f3e9;color:var(--ink);border:1px solid rgba(181,101,59,.28);border-radius:18px;box-shadow:0 24px 55px rgba(5,24,19,.2);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.welcome-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--copper)}.welcome-card:hover{transform:translateY(-5px);box-shadow:0 30px 65px rgba(5,24,19,.3)}.welcome-icon{width:58px;height:58px;border:1px solid #c7bba8;border-radius:50%;display:grid;place-items:center;color:var(--copper);font-size:25px;margin-bottom:48px;background:#fffdf8}.welcome-card h3{font:600 35px/1.05 Cormorant Garamond,serif;color:var(--forest);margin:0 0 18px}.welcome-card p{font-size:14px;line-height:1.75;color:#5e625c;margin:0}.pride-heart{font:500 38px/1 Cormorant Garamond;position:relative}.pride-heart:after{content:"";position:absolute;width:22px;height:3px;bottom:9px;left:18px;border-radius:4px;background:linear-gradient(90deg,#e45b55 0 20%,#e8aa3a 20% 40%,#5f9d68 40% 60%,#4b83bd 60% 80%,#8a67a7 80%)}@media(max-width:1000px){.welcome-section{grid-template-columns:1fr;padding:90px 7vw}.welcome-heading{max-width:680px}.welcome-grid{max-width:850px}}@media(max-width:650px){.welcome-section{padding:75px 20px;gap:35px}.welcome-grid{grid-template-columns:1fr}.welcome-card{min-height:0;padding:32px 28px}.welcome-icon{margin-bottom:30px}.welcome-heading h2{font-size:52px}}

/* Galleria completa degli ambienti */
.gallery-cta{display:flex;justify-content:center;margin-top:34px}.gallery-trigger{background:var(--forest);color:#fff;border-radius:10px}.gallery-trigger:hover{background:var(--forest-dark)}.gallery-trigger span{font-size:20px;transition:transform .2s}.gallery-trigger:hover span{transform:translateX(4px)}.gallery-modal[hidden]{display:none}.gallery-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px}.gallery-backdrop{position:absolute;inset:0;background:rgba(8,20,17,.92);backdrop-filter:blur(12px)}.gallery-dialog{position:relative;width:min(1180px,96vw);max-height:96vh;overflow:auto;background:#101b18;border:1px solid rgba(255,255,255,.12);border-radius:20px;box-shadow:0 35px 110px rgba(0,0,0,.55);padding:24px 26px 20px;color:#fff}.gallery-close{position:absolute;z-index:4;right:18px;top:16px;width:44px;height:44px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(16,27,24,.78);color:#fff;font-size:29px;cursor:pointer}.gallery-viewer{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:18px;align-items:center}.gallery-viewer figure{margin:0;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);background:#172521;border-radius:14px;overflow:hidden;min-height:570px}.gallery-viewer figure>img{height:570px;background:#0c1512;object-fit:contain}.gallery-viewer figcaption{display:flex;flex-direction:column;justify-content:flex-end;padding:42px 32px;background:linear-gradient(150deg,#173f35,#102720)}.gallery-counter{font-size:11px;font-weight:700;letter-spacing:.16em;color:#d5a181;text-transform:uppercase;margin:0 0 18px}.gallery-viewer h2{font:500 clamp(34px,4vw,52px)/1 Cormorant Garamond,serif;margin:0 0 16px;color:#fff}.gallery-viewer figcaption>p:last-child{font-size:14px;line-height:1.75;color:#c5d0cb;margin:0}.gallery-arrow{width:48px;height:48px;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:transparent;color:#fff;font-size:20px;cursor:pointer;transition:.2s}.gallery-arrow:hover{background:#fff;color:var(--forest)}.gallery-thumbs{display:flex;gap:9px;overflow-x:auto;padding:15px 2px 2px;scrollbar-width:thin}.gallery-thumb{flex:0 0 78px;width:78px;height:58px;padding:0;border:2px solid transparent;border-radius:7px;overflow:hidden;background:#22332e;opacity:.58;cursor:pointer}.gallery-thumb.is-active{border-color:#d79a76;opacity:1}.gallery-thumb img{width:100%;height:100%;object-fit:cover}@media(max-width:900px){.gallery-dialog{padding:58px 14px 16px}.gallery-viewer{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px}.gallery-viewer figure{grid-template-columns:1fr;min-height:0}.gallery-viewer figure>img{height:min(58vh,520px)}.gallery-viewer figcaption{padding:24px}.gallery-arrow{width:42px;height:42px}}@media(max-width:650px){.gallery-modal{padding:0}.gallery-dialog{width:100vw;max-height:100vh;height:100vh;border:0;border-radius:0;padding:58px 10px 14px}.gallery-viewer{display:block}.gallery-viewer figure>img{height:54vh}.gallery-viewer figcaption{padding:20px;min-height:170px}.gallery-viewer h2{font-size:34px}.gallery-arrow{position:absolute;z-index:3;top:calc(58px + 27vh);background:rgba(8,20,17,.7)}.gallery-prev{left:18px}.gallery-next{right:18px}.gallery-thumb{flex-basis:68px;width:68px;height:52px}}

/* Guida locale e punti di interesse */
.local-guide{max-width:none;background:#e9e1d3}.local-guide .section-heading{max-width:1600px;margin:auto}.local-guide .horizontal>p{max-width:470px}.places-preview{max-width:1400px;margin:55px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.place-card{position:relative;min-height:390px;border-radius:16px;overflow:hidden;background:var(--forest);box-shadow:0 18px 45px rgba(35,43,36,.14)}.place-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(8,28,22,.94))}.place-card>img{position:absolute;inset:0;transition:transform .6s}.place-card:hover>img{transform:scale(1.035)}.place-card>div{position:absolute;z-index:1;inset:auto 0 0;padding:30px;color:#fff}.place-card span,.place-list-card span{font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#e0a27d}.place-card h3{font:600 34px/1 Cormorant Garamond,serif;margin:7px 0 9px}.place-card p{font-size:12px;line-height:1.6;color:#d4ddd8;margin:0}.places-cta{display:flex;justify-content:center;margin-top:38px}.places-trigger{background:var(--copper);color:#fff}.places-trigger:hover{background:#994d2d}.places-trigger span{font-size:20px}.places-modal[hidden]{display:none}.places-modal{position:fixed;inset:0;z-index:115;display:grid;place-items:center;padding:20px}.places-backdrop{position:absolute;inset:0;background:rgba(20,31,27,.76);backdrop-filter:blur(9px)}.places-dialog{position:relative;width:min(1080px,96vw);max-height:94vh;overflow:auto;background:var(--paper);border-radius:22px;box-shadow:0 30px 100px rgba(0,0,0,.4);padding:44px 48px 52px}.places-close{position:absolute;z-index:2;right:18px;top:15px;width:42px;height:42px;border:0;border-radius:50%;background:#eee8dc;color:var(--forest);font-size:28px;cursor:pointer}.places-head{max-width:680px;margin-bottom:34px}.places-head .eyebrow{margin-bottom:18px}.places-head h2{font:500 clamp(42px,5vw,62px)/.95 Cormorant Garamond,serif;color:var(--forest);margin:0 0 18px}.places-head>p:last-child{color:#686b65}.places-list{display:grid;grid-template-columns:1fr 1fr;gap:22px}.place-list-card{display:grid;grid-template-columns:170px 1fr;min-height:190px;background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.place-list-card>img{height:100%;min-height:190px}.place-list-card>div{padding:20px}.place-list-card h3{font:600 26px/1.05 Cormorant Garamond,serif;color:var(--forest);margin:6px 0 8px}.place-list-card p{font-size:11px;line-height:1.55;color:#686b65;margin:0 0 13px}.place-list-card a{font-size:11px;font-weight:700;color:#8b4629;border-bottom:1px solid #c58664;padding-bottom:3px}@media(max-width:1000px){.places-preview{grid-template-columns:repeat(2,1fr)}.places-list{grid-template-columns:1fr}}@media(max-width:650px){.places-preview{grid-template-columns:1fr;margin-top:34px}.place-card{min-height:350px}.places-modal{padding:0}.places-dialog{width:100vw;height:100vh;max-height:100vh;border-radius:0;padding:55px 16px 34px}.places-head{padding-right:25px}.place-list-card{grid-template-columns:120px 1fr;min-height:175px}.place-list-card>img{min-height:175px}.place-list-card>div{padding:16px 13px}.place-list-card h3{font-size:23px}}


/* Sezione contatti */
.contact-section{padding:110px clamp(24px,7vw,110px);display:grid;grid-template-columns:minmax(260px,.75fr) minmax(520px,1.25fr);gap:clamp(45px,8vw,120px);align-items:start;background:var(--paper)}.contact-section-copy{position:sticky;top:125px}.contact-section-copy h2{font:500 clamp(52px,5.5vw,82px)/.94 Cormorant Garamond,serif;letter-spacing:-.045em;color:var(--forest);margin:0 0 25px}.contact-section-copy>p:last-child{max-width:510px;color:#5f625d;font-size:17px;line-height:1.75}.contact-form{background:var(--cream);border:1px solid var(--line);border-radius:18px;padding:clamp(26px,4vw,46px);box-shadow:var(--shadow)}.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 22px}.contact-form label{display:block;font-size:12px;font-weight:700;color:#5d615b}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:8px;border:1px solid #cfc7b9;border-radius:9px;background:#fffdf8;color:var(--ink);font:500 15px Manrope;padding:13px 14px;outline:none;transition:border-color .2s,box-shadow .2s}.contact-form textarea{resize:vertical;min-height:150px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(131,148,136,.18)}.contact-form-message{grid-column:1/-1}.contact-consent{display:flex!important;align-items:flex-start;gap:10px;margin:22px 0}.contact-form .contact-consent input[type="checkbox"]{display:inline-block;width:auto;min-width:16px;height:16px;margin:2px 0 0;padding:0;flex:0 0 auto;border-radius:3px;accent-color:var(--forest);box-shadow:none}.contact-form .contact-consent span{display:inline;line-height:1.5}.contact-form .button{min-width:190px}.contact-form-status{min-height:24px;margin:16px 0 0;font-size:13px;font-weight:700}.contact-form-status.is-success{color:#17653f}.contact-form-status.is-error{color:#a13f2d}.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}#contacts{scroll-margin-top:110px}@media(max-width:900px){.contact-section{grid-template-columns:1fr;padding:85px 7vw}.contact-section-copy{position:static}.contact-form{max-width:760px}}@media(max-width:650px){.contact-section{padding:72px 20px}.contact-form-grid{grid-template-columns:1fr}.contact-form-message{grid-column:auto}.contact-form{padding:25px 20px}.contact-section-copy h2{font-size:52px}#contacts{scroll-margin-top:84px}}

.review-submit-cta{margin:16px 0 0;text-align:center}.review-submit-cta a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:999px;background:#164f43;color:#fff;text-decoration:none;font-weight:700}.review-submit-cta a:hover{filter:brightness(.94)}

.hero-review-link{display:inline-flex;align-items:center;gap:10px;margin-top:10px;color:#164f43;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(22,79,67,.35);padding-bottom:3px}.hero-review-link:hover{border-bottom-color:#164f43}.hero-review-link span{transition:transform .2s ease}.hero-review-link:hover span{transform:translateX(3px)}
