/* Pagine interne */
.va-phero .va-hero-in{min-height:clamp(380px,48vh,500px)}
.va-phero .va-h1{font-size:clamp(40px,4.4vw,66px)}
.va-crumb{font-weight:800;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--va-red)}
.va-head{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;max-width:760px}
.va-head.c{align-items:center;text-align:center;margin-left:auto;margin-right:auto}
.va-head p{max-width:640px}
.va-alt{background:var(--va-sky2)}
.va-ivory{background:#FBF6EC}
/* card informative */
.va-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.va-card{background:#fff;border:1px solid #E1EEF9;border-radius:var(--va-r);box-shadow:var(--va-sh);padding:24px;display:flex;flex-direction:column;gap:10px}
.va-card svg{color:var(--va-red)}
.va-card .va-h{font-size:22px;line-height:1.05}
.va-card p{font-size:15px}
.va-card small{font-size:13px;color:#4a5d8f;font-weight:700}
/* prezzi */
.va-prices{display:grid;grid-template-columns:repeat(var(--c,3),minmax(0,1fr));gap:18px}
@media (max-width:1000px){.va-prices{grid-template-columns:repeat(min(var(--c,3),2),minmax(0,1fr))}}
@media (max-width:640px){.va-prices{grid-template-columns:1fr}}
.va-price{background:#fff;border:1px solid #E1EEF9;border-radius:var(--va-r);box-shadow:var(--va-sh);padding:24px;display:flex;flex-direction:column;gap:6px}
.va-price .va-p-n{font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--va-red)}
.va-price .va-p-v{font-family:"Lilita One",system-ui,sans-serif;font-size:44px;line-height:1;color:var(--va-navy)}
.va-price .va-p-v small{font-family:Nunito,sans-serif;font-weight:800;font-size:15px;margin-left:4px}
.va-price .va-p-u{font-weight:800;font-size:15px}
.va-price ul{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:14px;color:#34477a}
.va-price li{display:flex;gap:8px}
.va-price li::before{content:"";flex:0 0 6px;height:6px;margin-top:8px;border-radius:50%;background:var(--va-sky)}
.va-price.hl{background:var(--va-navy);border-color:var(--va-navy);color:#fff}
.va-price.hl .va-p-v{color:#fff}.va-price.hl ul{color:#dfe7fb}.va-price.hl .va-p-n{color:var(--va-sky)}
.va-note{margin-top:18px;font-size:14px;color:#4a5d8f}
/* blocco testo + foto */
.va-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.va-split.rev>.va-split-pic{order:2}
.va-split-pic{border-radius:var(--va-R);overflow:hidden;aspect-ratio:4/3;box-shadow:var(--va-sh);position:relative;background:var(--va-sky2)}
.va .va-split-pic img{width:100%;height:100%;object-fit:cover}
.va-split-pic .va-logo-badge{position:absolute;left:16px;bottom:16px;background:#fff;border-radius:14px;padding:8px 12px;max-width:150px}
.va .va-split-pic .va-logo-badge img{height:44px;width:auto;object-fit:contain}
.va-split .va-intro p{max-width:520px}
.va-dates{font-weight:800;color:var(--va-red);font-size:15px;letter-spacing:.04em;text-transform:uppercase}
@media (max-width:860px){.va-split{grid-template-columns:1fr}.va-split.rev>.va-split-pic{order:0}}
/* pacchetti con foto */
.va-packs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:1000px){.va-packs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.va-packs{grid-template-columns:1fr}}
.va-pack{background:#fff;border:1px solid #E1EEF9;border-radius:var(--va-r);overflow:hidden;box-shadow:var(--va-sh);display:flex;flex-direction:column}
.va-pack-pic{aspect-ratio:16/10;background:var(--va-sky2);overflow:hidden}
.va .va-pack-pic img{width:100%;height:100%;object-fit:cover}
.va-pack-b{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.va-pack-b .va-h{font-size:22px;line-height:1.05}
.va-pack-b p{font-size:15px;color:#34477a}
.va-pack-b b.va-tag{margin-top:auto;align-self:flex-start;background:var(--va-sky2);border-radius:999px;padding:6px 14px;font-weight:800;font-size:15px}
/* persone */
.va-people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.va-person{background:#fff;border-radius:var(--va-R);box-shadow:var(--va-sh);padding:24px 24px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.va-person-pic{width:180px;height:180px;border-radius:50%;background:var(--va-sky2);display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.va .va-person-pic img{width:88%;height:auto;object-fit:contain}
.va-person .va-h{font-size:26px}
.va-person p{font-size:15px;color:#34477a}
@media (max-width:860px){.va-people{grid-template-columns:1fr}}
/* storia a capitoli e domande */
.va-acc{border-bottom:1px solid #CFE3F5}
.va-acc summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 4px;font-weight:800;font-size:17px}
.va-acc summary::-webkit-details-marker{display:none}
.va-acc summary::after{content:"+";font-family:"Lilita One",sans-serif;font-size:28px;line-height:1;color:var(--va-red);transition:transform .2s}
.va-acc[open] summary::after{transform:rotate(45deg)}
.va-acc .va-acc-b{padding:0 4px 20px;display:flex;flex-direction:column;gap:12px;color:#34477a}
.va-acc .va-acc-b p{max-width:760px}
.va-chap summary b{font-family:"Lilita One",sans-serif;font-weight:400;color:var(--va-red);margin-right:12px}
.va-story{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.va .va-story-pic img{width:100%;height:auto}
@media (max-width:860px){.va-story{grid-template-columns:1fr}.va-story-pic{max-width:240px}}
/* recensioni */
.va-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.va-quote{background:#fff;border-radius:var(--va-r);box-shadow:var(--va-sh);padding:26px;display:flex;flex-direction:column;gap:14px;margin:0}
.va-quote blockquote{margin:0;font-size:16px}
.va-quote figcaption{font-weight:800;color:var(--va-red)}
@media (max-width:860px){.va-quotes{grid-template-columns:1fr}}
/* testo legale */
.va-doc{max-width:860px;margin:0 auto;font-size:16px;color:#22356a;display:flex;flex-direction:column;gap:14px}
.va-doc h2,.va-doc h3{font-family:"Lilita One",sans-serif;font-weight:400;text-transform:uppercase;color:var(--va-navy);margin:18px 0 0;line-height:1.05}
.va-doc p,.va-doc ul{margin:0}
.va-doc a{text-decoration:underline;word-break:break-word}
/* prenotazione online (BookingKit) */
.va-embed{background:#fff;border-radius:var(--va-R);box-shadow:var(--va-sh);padding:clamp(14px,2.5vw,32px);min-height:420px}
/* come arrivare */
.va-ways{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media (max-width:900px){.va-ways{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.va-ways{grid-template-columns:1fr}}
/* scelta soggiorno */
.va-stays{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.va-stay-c{position:relative;border-radius:var(--va-R);overflow:hidden;min-height:380px;display:flex;align-items:flex-end;color:#fff;text-decoration:none!important;box-shadow:var(--va-sh)}
.va .va-stay-c>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.va-stay-c:hover>img{transform:scale(1.04)}
.va-stay-c .va-stay-b{position:relative;width:100%;padding:90px 24px 24px;background:linear-gradient(0deg,rgba(9,28,72,.9),rgba(9,28,72,0));display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.va-stay-c .va-h{font-size:30px;color:#fff}
.va-stay-c p{color:#e6eefc;font-size:15px}
@media (max-width:900px){.va-stays{grid-template-columns:1fr}}
/* prodotti shop */
.va-shop{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}

/* =====================================================================
   Ritmo, spazi e uso della larghezza come i siti Stalle Lunghe
   (Chalet, Residence, Borgo): pagine larghe, sezioni ariose, meno box,
   titoli grandi su due righe bilanciate, testi su colonna leggibile.
   Vale solo per le pagine interne (questo file non si carica sulle home).
   ===================================================================== */
:root{--va-gap:clamp(28px,3vw,48px);--va-line:rgba(14,42,107,.14)}
.va .va-h{text-wrap:balance}
.va p{text-wrap:pretty}
.va-sec{padding:clamp(72px,7.5vw,120px) 0}
.va-sec.va-pt0{padding-top:0}
.va .va-h2{font-size:clamp(38px,4.2vw,64px);line-height:.96}
.va-eyebrow,.va-crumb{font-size:13px;letter-spacing:.16em}

/* apertura pagina */
.va-phero .va-hero-in{min-height:clamp(480px,64vh,660px);grid-template-columns:minmax(0,52fr) minmax(0,48fr)}
.va-phero .va-h1{font-size:clamp(44px,4.9vw,80px);line-height:.94}
.va-phero .va-hero-txt{gap:26px;padding-top:64px;padding-bottom:72px}
.va-phero .va-lead{font-size:clamp(18px,1.4vw,21px);line-height:1.6;max-width:30em}
@media (max-width:900px){.va-phero .va-hero-in{grid-template-columns:1fr;min-height:0}.va-phero .va-hero-txt{padding:32px var(--va-g) 24px}}

/* intestazione di sezione: titolo a sinistra, testo a destra (come Residence e Chalet) */
.va-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:var(--va-gap);row-gap:14px;align-items:end;max-width:none;margin-bottom:clamp(40px,4vw,64px)}
.va-head>.va-eyebrow{grid-column:1}
.va-head>.va-h2{grid-column:1}
.va-head>p{grid-column:2;grid-row:1/span 2;align-self:end;max-width:34em;font-size:18px;line-height:1.7;color:#34477a}
.va-head.c{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:900px}
.va-head.c>p{max-width:36em}
@media (max-width:900px){.va-head{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.va-head>p{font-size:17px;align-self:auto}}
.va-head.c>p,.va-story .va-head>p{align-self:auto}

/* card informative: niente box, colonne separate da una riga */
.va-cards,.va-ways{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;border-top:2px solid var(--va-navy)}
.va-card{background:none;border:0;border-radius:0;box-shadow:none;padding:28px clamp(18px,2vw,32px) 8px 0;gap:12px}
.va-cards>.va-card+.va-card,.va-ways>.va-card+.va-card{padding-left:clamp(18px,2vw,32px);border-left:1px solid var(--va-line)}
.va-card .va-h{font-size:clamp(22px,1.8vw,28px)}
.va-card p{font-size:17px;line-height:1.65;color:#34477a}
.va-card small{font-size:14px}
@media (max-width:640px){.va-cards>.va-card+.va-card,.va-ways>.va-card+.va-card{padding-left:0;border-left:0;border-top:1px solid var(--va-line)}.va-card{padding:24px 0}}

/* prezzi: fascia piena con colonne a filo, l'offerta principale resta in evidenza */
.va-prices{gap:0;border:1px solid var(--va-line);border-radius:var(--va-R);overflow:hidden;background:#fff}
.va-price{border:0;border-radius:0;box-shadow:none;padding:clamp(26px,2.6vw,40px);gap:8px}
.va-prices>.va-price+.va-price{border-left:1px solid var(--va-line)}
.va-price .va-p-v{font-size:clamp(46px,4vw,64px)}
.va-price ul{font-size:16px;gap:8px}
.va-price.hl{border-left:0!important}
.va-prices>.va-price:nth-child(n+4){border-top:1px solid var(--va-line)}
@media (max-width:1000px){.va-prices>.va-price{border-left:0!important;border-top:1px solid var(--va-line)}.va-prices>.va-price:first-child{border-top:0}}
.va-note{font-size:15px;margin-top:20px}

/* testo + foto: foto più grande, testo su colonna stretta */
.va-split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(40px,6vw,110px)}
.va-split.rev{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.va-split.rev>.va-split-pic{order:2}
.va-split-pic{aspect-ratio:5/4;box-shadow:none;border-radius:var(--va-R)}
.va-split .va-intro{gap:22px}
.va-split .va-intro p{max-width:32em;font-size:18px;line-height:1.7;color:#34477a}
.va-split .va-h2{font-size:clamp(36px,3.6vw,56px)}
@media (max-width:860px){.va-split,.va-split.rev{grid-template-columns:1fr;gap:28px}.va-split.rev>.va-split-pic{order:0}}

/* pacchetti: foto e testo, senza scatola */
.va-packs{gap:clamp(36px,3.4vw,56px) var(--va-gap)}
.va-pack{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible}
.va-pack-pic{border-radius:var(--va-r);aspect-ratio:4/3}
.va-pack-b{padding:22px 0 0;gap:10px}
.va-pack-b .va-h{font-size:clamp(24px,2vw,30px)}
.va-pack-b p{font-size:17px;line-height:1.65}
.va-pack-b b.va-tag{margin-top:6px;background:none;padding:10px 0 0;border-top:2px solid var(--va-red);border-radius:0;color:var(--va-navy);font-size:16px}

/* personaggi: senza scatola */
.va-people{gap:var(--va-gap)}
.va-person{background:none;box-shadow:none;border-radius:0;padding:0;gap:14px}
.va-person-pic{width:min(240px,70%);height:auto;aspect-ratio:1}
.va-person .va-h{font-size:clamp(26px,2.2vw,32px)}
.va-person p{font-size:17px;line-height:1.65;max-width:26em}

/* storia e domande */
.va-story{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(40px,6vw,110px)}
.va-story .va-head{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:24px}
.va-story .va-head>p{max-width:34em}
.va-acc{border-bottom:1px solid var(--va-line)}
.va-faq{border-top:2px solid var(--va-navy)}
.va-acc summary{padding:22px 0;font-size:clamp(17px,1.3vw,20px)}
.va-acc .va-acc-b{padding:0 0 26px;font-size:17px;line-height:1.7}
.va-acc .va-acc-b p{max-width:46em}

/* recensioni: citazioni grandi separate da righe */
.va-quotes{gap:0;border-top:2px solid var(--va-navy)}
.va-quote{background:none;box-shadow:none;border-radius:0;padding:30px clamp(18px,2vw,36px) 0 0;gap:18px}
.va-quotes>.va-quote+.va-quote{padding-left:clamp(18px,2vw,36px);border-left:1px solid var(--va-line)}
.va-quote blockquote{font-size:clamp(18px,1.4vw,21px);line-height:1.55}
@media (max-width:860px){.va-quotes>.va-quote+.va-quote{padding-left:0;border-left:0;border-top:1px solid var(--va-line)}.va-quote{padding:26px 0}}

/* soggiorni e banner */
.va-stays{gap:var(--va-gap)}
.va-stay-c{min-height:clamp(420px,34vw,560px);box-shadow:none}
.va-stay-c .va-h{font-size:clamp(30px,2.6vw,40px)}
.va-stay{min-height:clamp(280px,24vw,380px)}
.va-stay-t p{font-size:17px;max-width:30em}

/* contatti */
.va-contact{max-width:var(--va-max);padding:clamp(72px,7.5vw,120px) var(--va-g)!important;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,110px)}
.va-cinfo{gap:22px}
.va-cinfo .va-h2{font-size:clamp(34px,3.3vw,52px)}
.va-cinfo p{font-size:18px;line-height:1.7;max-width:30em;color:#34477a}
.va-clist{gap:18px;font-size:17px}
@media (max-width:900px){.va-contact{grid-template-columns:1fr;gap:32px}}

/* prenotazione e testi legali */
.va-embed{box-shadow:none;border:1px solid var(--va-line)}
.va-doc{max-width:46em;font-size:17px;line-height:1.75}
.va-doc h2{font-size:clamp(26px,2.2vw,34px);margin-top:28px}

@media (max-width:640px){.va-sec{padding:64px 0}.va-contact{padding:64px var(--va-g)!important}}
