:root{
  --navy:#06243b;--navy2:#0b3858;--deep:#031827;--sea:#0d86a6;--sky:#e9f8fb;--gold:#d99a2b;--gold2:#f2c166;
  --ink:#10273a;--muted:#667887;--soft:#f6fbfd;--white:#fff;--line:#e5eef3;
  --shadow:0 18px 50px rgba(6,36,59,.13);--shadow2:0 28px 80px rgba(6,36,59,.18);--radius:24px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55;overflow-x:hidden}a{color:inherit;text-decoration:none}.container{width:min(1180px,92%);margin:auto}.center{text-align:center;max-width:820px;margin:0 auto 36px}.topbar{background:linear-gradient(90deg,var(--navy),#083653);color:#fff;font-size:14px}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0;align-items:center}.topbar a{opacity:.95}.site-header{background:rgba(255,255,255,.96);backdrop-filter:blur(14px);position:sticky;top:0;z-index:50;box-shadow:0 8px 24px rgba(6,36,59,.06)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px 0}.brand img{height:72px;width:auto;display:block}.menu{display:flex;gap:26px;align-items:center;margin:0;padding:0;list-style:none}.menu a{font-weight:800;font-size:14px;letter-spacing:.02em;text-transform:uppercase;position:relative;padding:8px 0}.menu a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:.28s}.menu a:hover,.menu .current-menu-item a{color:var(--gold)}.menu a:hover:after,.menu .current-menu-item a:after{transform:scaleX(1)}.btn,.wp-block-button__link,.booking-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,var(--gold),#c27b13);color:#fff!important;border:none;border-radius:12px;padding:14px 22px;font-weight:900;box-shadow:0 10px 22px rgba(217,154,43,.28);cursor:pointer;transition:transform .25s,box-shadow .25s}.btn:hover,.booking-btn:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(217,154,43,.34)}.btn.secondary{background:rgba(255,255,255,.10);color:#fff!important;border:1px solid rgba(255,255,255,.55);box-shadow:none}.btn.navy{background:linear-gradient(135deg,var(--navy),#0e456a)}.hamb{display:none;background:transparent;border:0;font-size:30px;color:var(--navy)}
.hero{position:relative;min-height:700px;display:flex;align-items:center;color:#fff;overflow:hidden;background:var(--navy)}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.015);animation:heroZoom 24s ease-in-out infinite alternate;will-change:transform}.hero-logo-watermark{display:none}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,24,41,.66) 0%,rgba(2,34,55,.34) 48%,rgba(2,34,55,.06) 100%)}.hero:before{content:"";position:absolute;z-index:1;left:-10%;bottom:-22%;width:70%;height:52%;background:radial-gradient(circle,rgba(13,134,166,.38),transparent 66%);filter:blur(16px)}@keyframes heroZoom{0%{transform:scale(1.015) translateX(0)}100%{transform:scale(1.045) translateX(-0.8%)}}.hero-content{position:relative;z-index:2;max-width:670px;padding:96px 0 190px}.eyebrow{color:var(--gold2);font-weight:950;letter-spacing:.12em;text-transform:uppercase;font-size:14px}.hero h1,.page-hero h1{font-family:Georgia,serif;font-size:clamp(46px,6vw,84px);line-height:.96;margin:14px 0 20px;text-shadow:0 14px 40px rgba(0,0,0,.28)}.hero p{font-size:21px;max-width:590px;margin-bottom:30px;color:rgba(255,255,255,.92)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.booking-strip{position:relative;z-index:3;margin-top:-96px}.booking-card{background:#fff;border-radius:22px;box-shadow:var(--shadow2);padding:20px;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:end;border:1px solid rgba(229,238,243,.8)}.booking-card label,.booking-form label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:var(--muted);margin-bottom:6px}.booking-card input,.booking-card select,.booking-form input,.booking-form select,.booking-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 12px;background:#fff;color:var(--ink);font:inherit;transition:border .25s,box-shadow .25s}.booking-card input:focus,.booking-card select:focus,.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{outline:none;border-color:var(--sea);box-shadow:0 0 0 4px rgba(13,134,166,.10)}.booking-card .booking-btn{width:100%;margin-top:8px}
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:58px 0}.feature{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 12px 34px rgba(6,36,59,.06);transition:transform .3s,box-shadow .3s}.feature:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.feature .icon{font-size:34px;color:var(--gold)}.feature h3{margin:8px 0 6px}.section{padding:84px 0}.section.soft{background:linear-gradient(180deg,#f7fbfd,#fff)}.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.section-title{font-family:Georgia,serif;font-size:clamp(34px,4vw,52px);line-height:1.05;margin:8px 0 18px}.lead{font-size:18px;color:var(--muted)}.media-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#fff;position:relative}.media-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s ease}.media-card:hover img,.photo-zoom:hover img{transform:scale(1.08)}.checklist{list-style:none;padding:0;margin:22px 0}.checklist li{margin:10px 0;padding-left:30px;position:relative}.checklist li:before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:900}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.room-card,.event-card,.offer-card,.faq-box{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 16px 38px rgba(6,36,59,.08);transition:transform .35s ease,box-shadow .35s ease}.room-card:hover,.event-card:hover,.offer-card:hover{transform:translateY(-10px);box-shadow:var(--shadow2)}.room-card img,.event-card img{height:280px;width:100%;object-fit:cover;display:block;transition:transform 1.25s ease,filter .35s ease}.room-card:hover img,.event-card:hover img{transform:scale(1.10);filter:saturate(1.08) contrast(1.03)}.room-effects .room-card:nth-child(2){margin-top:28px}.room-effects .room-card:nth-child(3){margin-top:56px}.card-body{padding:26px}.card-body h3{font-family:Georgia,serif;font-size:28px;margin:0 0 8px}.card-body a{color:var(--sea);font-weight:900}.meta-list{list-style:none;margin:18px 0 0;padding:0;color:var(--muted);font-size:15px}.meta-list li{margin:7px 0}.page-hero{background:linear-gradient(120deg,rgba(6,36,59,.92),rgba(13,134,166,.72)),var(--navy);color:#fff;padding:86px 0}.page-hero p{max-width:720px;font-size:19px}.content-wrap{padding:60px 0}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery-grid img{width:100%;height:240px;object-fit:cover;border-radius:20px;box-shadow:0 10px 30px rgba(6,36,59,.08);transition:transform .5s,box-shadow .5s}.gallery-grid img:hover{transform:translateY(-6px) scale(1.025);box-shadow:var(--shadow)}.experience{background:linear-gradient(135deg,#f6fbfd 0%,#fff 65%)}.cta-final{background:linear-gradient(135deg,var(--navy),#0a496d);color:#fff;text-align:center;position:relative;overflow:hidden}.cta-final:before{content:"";position:absolute;inset:auto -10% -45% -10%;height:70%;background:radial-gradient(circle,rgba(13,134,166,.45),transparent 62%)}.cta-final .container{position:relative}.cta-final h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,56px);margin:0 0 10px}.booking-layout{display:grid;grid-template-columns:1.35fr .75fr;gap:30px;align-items:start}.booking-form{background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:var(--shadow)}.booking-form .grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-form .full{grid-column:1/-1}.booking-side{background:linear-gradient(180deg,var(--navy),#0d4162);color:#fff;border-radius:26px;padding:32px;position:sticky;top:120px;box-shadow:var(--shadow)}.booking-side h3{font-family:Georgia,serif;font-size:32px;margin-top:0}.booking-side ul{padding-left:20px}.booking-side li{margin:12px 0}.privacy label{text-transform:none;letter-spacing:0;font-weight:600}.notice{padding:24px;border-radius:18px;background:#eef9f2;border:1px solid #bfe8cc;color:#265b34}.site-footer{background:linear-gradient(180deg,var(--navy),#031a2d);color:#fff;margin-top:0}.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding:54px 0}.footer-logo img{max-width:220px}.footer-title{color:var(--gold2);font-weight:900;margin-bottom:12px;text-transform:uppercase;font-size:13px;letter-spacing:.1em}.footer a,.footer p,.site-footer li{color:rgba(255,255,255,.78)}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:7px 0}.copyright{border-top:1px solid rgba(255,255,255,.12);padding:18px 0;color:rgba(255,255,255,.68);font-size:14px}.wp-block-image img{border-radius:18px}.screen-reader-text{position:absolute;left:-9999px}.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.reveal-grid>*{opacity:0;transform:translateY(26px);transition:opacity .75s ease,transform .75s ease}.reveal-grid.visible>*{opacity:1;transform:none}.reveal-grid.visible>*:nth-child(2){transition-delay:.08s}.reveal-grid.visible>*:nth-child(3){transition-delay:.16s}.reveal-grid.visible>*:nth-child(4){transition-delay:.24s}

.timeline-events{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}.event-tile{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 14px 34px rgba(6,36,59,.07);transition:transform .35s ease,box-shadow .35s ease}.event-tile:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.event-tile span{display:inline-flex;background:#fff4dc;color:#9c640e;border:1px solid #f4d395;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px}.event-tile h3{font-family:Georgia,serif;font-size:24px;line-height:1.12;margin:0 0 10px}.event-tile p{color:var(--muted);margin:0}.experience-cards .event-card img{height:260px}.idea-panel{margin:36px 0;padding:30px;border-radius:26px;background:linear-gradient(135deg,var(--navy),#0d5278);color:#fff;box-shadow:var(--shadow)}.idea-panel h3{font-family:Georgia,serif;font-size:32px;margin:0 0 10px}.idea-panel p{font-size:18px;color:rgba(255,255,255,.88);margin:0}.center{text-align:center;max-width:850px;margin-left:auto;margin-right:auto}

@media(max-width:980px){.hamb{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:18px 4%}.nav.open{display:block}.menu{flex-direction:column;align-items:flex-start}.booking-card,.features,.cards,.split,.booking-layout,.footer-inner,.timeline-events{grid-template-columns:1fr}.room-effects .room-card{margin-top:0!important}.booking-card{margin-top:0}.hero-content{padding-bottom:135px}.hero-logo-watermark{display:none}.gallery-grid{grid-template-columns:1fr 1fr}.topbar .container{flex-direction:column;align-items:flex-start;gap:4px}.brand img{height:58px}.site-header .btn{display:none}}
@media(max-width:620px){.booking-form .grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.hero{min-height:590px}.hero h1{font-size:43px}.section{padding:56px 0}.room-card img,.event-card img{height:220px}.booking-strip{margin-top:-60px}.booking-card{padding:16px}.topbar{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal,.reveal-grid>*{opacity:1;transform:none}}


/* Pagina Cosa Fare - stile Experience */
.things-hero{position:relative;min-height:410px;display:flex;align-items:center;overflow:hidden;color:var(--navy);background:#f3fbff;border-bottom:1px solid var(--line)}
.things-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.23;filter:saturate(1.03) brightness(1.12);transform:scale(1.02);animation:heroZoom 28s ease-in-out infinite alternate}
.things-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.80),rgba(255,255,255,.96))}
.things-hero .container{position:relative;z-index:2;padding:64px 0 54px}.things-hero h1{font-family:Georgia,serif;font-size:clamp(44px,5vw,68px);line-height:1;margin:12px 0;color:var(--navy);text-shadow:none}.things-hero p{font-size:18px;color:#183b55;max-width:760px;margin:0 auto}.wave-line{color:var(--gold);font-size:30px;letter-spacing:5px;margin:-4px 0 16px}.things-section{background:linear-gradient(180deg,#fff,#f7fbfd 62%,#fff)}.thing-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.thing-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 18px 50px rgba(6,36,59,.08);transition:transform .35s ease,box-shadow .35s ease}.thing-card:hover{transform:translateY(-10px);box-shadow:var(--shadow2)}.thing-img-wrap{height:230px;overflow:hidden}.thing-img-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s ease,filter .35s ease}.thing-card:hover .thing-img-wrap img{transform:scale(1.09);filter:saturate(1.08) contrast(1.03)}.thing-body{display:grid;grid-template-columns:auto 1fr;gap:16px;padding:24px}.thing-icon{font-size:32px;color:var(--gold);line-height:1}.thing-body h3{font-family:Georgia,serif;font-size:24px;margin:0 0 8px}.thing-body p{color:var(--muted);margin:0 0 12px}.thing-body a{color:#cf8519;font-weight:900}.cycle-panel{margin-top:34px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);display:grid;grid-template-columns:360px 1fr 210px;gap:28px;padding:20px;align-items:center;overflow:hidden}.cycle-photo{height:250px;border-radius:20px;overflow:hidden}.cycle-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s ease}.cycle-panel:hover .cycle-photo img{transform:scale(1.08)}.cycle-content h2{font-family:Georgia,serif;font-size:34px;line-height:1.05;margin:4px 0 12px;color:var(--navy)}.cycle-content p{color:var(--muted);margin:0 0 18px}.cycle-checks{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:18px 0 22px}.cycle-checks span{font-weight:700;color:#31495b}.cycle-checks span::first-letter{color:var(--gold)}.cycle-stats{border-left:1px solid var(--line);padding-left:22px;display:grid;gap:17px}.cycle-stats strong{display:block;font-family:Georgia,serif;font-size:26px;color:var(--navy);line-height:1}.cycle-stats span{display:block;font-size:13px;color:var(--muted);line-height:1.35}.mini-itinerary{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}.mini-itinerary>div{background:linear-gradient(180deg,#fff,#f8fcfd);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 12px 34px rgba(6,36,59,.06)}.mini-itinerary h3{font-family:Georgia,serif;font-size:26px;margin:0 0 8px}.mini-itinerary p{color:var(--muted);margin:0}
@media(max-width:980px){.thing-cards,.cycle-panel,.mini-itinerary{grid-template-columns:1fr}.cycle-stats{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:18px}.cycle-checks{grid-template-columns:1fr}.things-hero{min-height:340px}.thing-img-wrap{height:220px}}
