/* Rifinitura richiesta 2026-10-06: riflesso oro, controlli stabili, soggetti leggibili. */
.button,.header-cta{border-radius:12px;min-height:54px;padding:15px 25px;gap:12px;justify-content:center;overflow:hidden;isolation:isolate;position:relative;transition:background-color .25s,color .25s,border-color .25s,box-shadow .25s;transform:none}
.button.gold,.header-cta,.button.black{background:#d4b777;color:#14130e;border:1px solid #e2c894;box-shadow:inset 0 1px 0 #fff4d24d,inset 0 -2px 0 #76532426}
.button.outline{color:var(--paper);border-color:#9f895b;background:transparent}
.button:before,.button.priority:before,.header-cta:before{content:"";position:absolute;inset:-30% -25%;z-index:-1;background:linear-gradient(105deg,transparent 37%,#fff9de00 40%,#fff9de85 47%,#fffef6c2 50%,#fff9de35 55%,transparent 63%);transform:translateX(-120%);transition:none;pointer-events:none}
.button:hover,.button:focus-visible,.header-cta:hover,.header-cta:focus-visible{transform:none;background:#efd078;border-color:#f7df98;color:#14130e;box-shadow:inset 0 1px 0 #fff6d999,0 3px 18px #c4a55c20}
.button:hover:before,.button:focus-visible:before,.button.priority:hover:before,.button.priority:focus-visible:before,.header-cta:hover:before,.header-cta:focus-visible:before{animation:gold-sheen .72s cubic-bezier(.25,.6,.3,1) both}
.header-cta{min-height:43px;padding:10px 20px;font-size:12px;white-space:nowrap}
.header-cta[aria-current=page]{color:#14130e;background:#e8c979}
.button:active,.header-cta:active{transform:none;box-shadow:inset 0 2px 5px #6c4b2840}
.button:focus-visible,.header-cta:focus-visible{outline:2px solid var(--paper);outline-offset:4px}
.media-control,.clip,.menu-btn,.close{transition:background-color .22s,color .22s,border-color .22s}
.media-control:hover,.media-control:focus-visible,.clip:hover,.clip:focus-visible,.menu-btn:hover,.close:hover{background:#d4b777;color:#14130e;border-color:#d4b777}
.experience-card:nth-child(1)>img{object-position:50% 15%;transform-origin:50% 22%}
.experience-card:nth-child(2)>img{object-position:50% 8%;transform-origin:50% 16%}
.experience-card:nth-child(3)>img{object-position:50% 27%;transform-origin:50% 28%}
@media(hover:hover) and (pointer:fine){.experience-card:hover>img,.experience-card:focus-visible>img{transform:scale(1.025)}.experience-card:hover .card-copy,.experience-card:focus-visible .card-copy{transform:translateY(-4px)}}
@keyframes gold-sheen{from{transform:translateX(-120%)}to{transform:translateX(120%)}}
@media(max-width:850px){.header-cta{display:none}.button{padding:16px 23px;min-height:54px}.experience-card:nth-child(1)>img{object-position:50% 15%}.experience-card:nth-child(2)>img{object-position:50% 8%}.experience-card:nth-child(3)>img{object-position:50% 27%}}
@media(prefers-reduced-motion:reduce){.button:before,.button.priority:before,.header-cta:before{display:none}.button,.header-cta,.experience-card>img{transition:none}.experience-card:hover>img,.experience-card:focus-visible>img{transform:none}}

/* Le dissolvenze tra pagine non intercettano clic o tocchi. */
::view-transition,::view-transition-group(root),::view-transition-image-pair(root),::view-transition-old(root),::view-transition-new(root){pointer-events:none}

/* Navigazione immediata: nessun livello di transizione intercetta l’interazione. */
@view-transition{navigation:none}

/* Media a proporzioni native e tour piu ampio, 9 ottobre 2026. */
.reel video{width:100%;height:auto;max-height:none;aspect-ratio:16/9;object-fit:contain;background:transparent}
.reel-window{aspect-ratio:16/9;contain:layout paint}
.reel-window video{transform:translateZ(0)}
.ticker>div{gap:0}
.ticker span{flex-shrink:0;padding-right:40px}
.aerial-poster{max-height:560px;aspect-ratio:3.4/1}
.aerial-poster>img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 65%}
.page-index openframe-tour{--tour-stage-height:clamp(560px,65vw,820px)}
.page-tour .dedicated-tour{padding-left:clamp(22px,2.5vw,50px);padding-right:clamp(22px,2.5vw,50px)}
.page-tour openframe-tour{--tour-stage-height:clamp(660px,calc(100svh - 32px),1000px)}
@media(max-width:760px){.aerial-poster{aspect-ratio:2.4/1}.page-index openframe-tour{--tour-stage-height:clamp(490px,110vw,610px)}.page-tour openframe-tour{--tour-stage-height:clamp(590px,calc(100svh - 32px),850px)}}
@media(prefers-reduced-motion:reduce){.ticker span{padding:0 var(--pad)}}
