:root{
  --ug-yellow:#ffcf2d;
  --ug-yellow-soft:#fff4be;
  --ug-navy:#202b3a;
  --ug-ink:#151a22;
  --ug-muted:#6d7380;
  --ug-paper:#fbfaf7;
  --ug-warm:#f5f1e8;
  --ug-line:#e6e2d8;
  --ug-white:#fff;
  --ug-shadow:0 28px 80px rgba(24,32,45,.10);
  --ug-shadow-soft:0 16px 44px rgba(24,32,45,.07);
}


/* ==========================================================================
   HOME V2 CUSTOM HEADER
   Isolato alla sola pagina che contiene [ug_home_v2].
   ========================================================================== */
body.ug-home-v2-page .l-header,
body.ug-home-v2-page #page-header,
body.ug-home-v2-page header.site-header:not(.ughv2-site-header),
body.ug-home-v2-page .site-header:not(.ughv2-site-header){display:none!important}
body.ug-home-v2-page .l-canvas,
body.ug-home-v2-page .l-main{margin-top:0!important;padding-top:0!important}

.ughv2-site-header{position:sticky;top:0;z-index:999;padding:14px 0 8px;background:rgba(251,250,247,.88);backdrop-filter:blur(18px) saturate(1.1);-webkit-backdrop-filter:blur(18px) saturate(1.1);border-bottom:1px solid rgba(230,226,216,.72);transition:box-shadow .22s ease,background .22s ease,padding .22s ease}
.ughv2-site-header.is-scrolled{background:rgba(255,255,255,.96);padding-top:8px;box-shadow:0 12px 34px rgba(24,32,45,.08)}
.ughv2-site-header-inner{min-height:68px;display:grid;grid-template-columns:minmax(270px,.9fr) auto minmax(270px,.9fr);align-items:center;gap:26px}
.ughv2-site-brand{min-width:0;display:inline-flex;align-items:center;gap:12px;color:var(--ug-navy)!important;text-decoration:none!important}
.ughv2-site-brand img{width:48px;height:48px;object-fit:contain;flex:0 0 48px}
.ughv2-site-brand span{display:block;min-width:0}.ughv2-site-brand strong{display:block;font-size:13px;line-height:1.08;letter-spacing:.09em;white-space:nowrap}.ughv2-site-brand small{display:block;margin-top:5px;font-size:8px;line-height:1.1;color:#858b94;font-weight:800;letter-spacing:.10em;white-space:nowrap}
.ughv2-site-nav{display:flex;align-items:center;justify-content:center;gap:4px;padding:5px;border:1px solid rgba(225,221,211,.88);background:rgba(255,255,255,.76);border-radius:999px;box-shadow:0 5px 18px rgba(24,32,45,.035)}
.ughv2-site-nav a{position:relative;display:inline-flex;align-items:center;min-height:40px;padding:0 15px;border-radius:999px;color:#59616d!important;text-decoration:none!important;font-size:11px;font-weight:850;letter-spacing:.025em;transition:background .18s ease,color .18s ease,transform .18s ease}.ughv2-site-nav a:hover{color:var(--ug-navy)!important;background:#f7f3e9}.ughv2-site-nav a.is-active{color:var(--ug-navy)!important;background:var(--ug-yellow)}
.ughv2-site-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}.ughv2-header-cta{display:inline-flex;min-height:46px;padding:0 18px;align-items:center;justify-content:center;gap:9px;border-radius:999px;background:var(--ug-navy);color:#fff!important;text-decoration:none!important;font-size:11px;line-height:1;font-weight:900;box-shadow:0 11px 24px rgba(24,32,45,.14);transition:transform .2s ease,box-shadow .2s ease}.ughv2-header-cta:hover{color:#fff!important;transform:translateY(-2px);box-shadow:0 15px 30px rgba(24,32,45,.20)}.ughv2-header-cta span{color:var(--ug-yellow);font-size:15px}
.ughv2-menu-toggle{display:none;width:46px;height:46px;border:1px solid var(--ug-line);border-radius:50%;background:#fff;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:4px;cursor:pointer}.ughv2-menu-toggle span{display:block;width:17px;height:2px;border-radius:10px;background:var(--ug-navy);transition:transform .2s ease,opacity .2s ease}.ughv2-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.ughv2-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.ughv2-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
#ug-home-v2,#ug-ticket,#ug-servizi,#ug-location{scroll-margin-top:104px}
@media(max-width:1120px){.ughv2-site-header-inner{grid-template-columns:minmax(250px,1fr) auto}.ughv2-site-nav{position:absolute;top:calc(100% + 7px);left:18px;right:18px;display:none;padding:9px;border-radius:22px;background:rgba(255,255,255,.98);box-shadow:0 22px 60px rgba(24,32,45,.16)}.ughv2-site-header.menu-open .ughv2-site-nav{display:grid;grid-template-columns:repeat(4,1fr)}.ughv2-site-nav a{justify-content:center;min-height:46px}.ughv2-menu-toggle{display:flex}}
@media(max-width:767px){.ughv2-site-header{padding:7px 0 5px}.ughv2-site-header-inner{width:min(100% - 24px,1460px);min-height:58px;grid-template-columns:minmax(0,1fr) auto;gap:10px}.ughv2-site-brand{gap:8px}.ughv2-site-brand img{width:40px;height:40px;flex-basis:40px}.ughv2-site-brand strong{font-size:10px;letter-spacing:.055em}.ughv2-site-brand small{font-size:6.5px;letter-spacing:.055em;margin-top:3px}.ughv2-header-cta{display:none}.ughv2-menu-toggle{width:43px;height:43px}.ughv2-site-nav{left:12px;right:12px;top:calc(100% + 5px)}.ughv2-site-header.menu-open .ughv2-site-nav{grid-template-columns:1fr}.ughv2-site-nav a{justify-content:flex-start;padding:0 16px;font-size:12px}#ug-home-v2,#ug-ticket,#ug-servizi,#ug-location{scroll-margin-top:82px}}

/* Impreza / page wrapper cleanup only on the V2 page */
body.ug-home-v2-page .l-titlebar{display:none!important}
body.ug-home-v2-page .l-main>.l-section:first-child{padding-top:0!important;padding-bottom:0!important}
body.ug-home-v2-page .l-main>.l-section:first-child>.l-section-h{max-width:none!important;padding:0!important}
body.ug-home-v2-page .l-main{overflow:visible}

.ug-home-v2{
  background:
    radial-gradient(circle at 8% 3%,rgba(255,207,45,.10),transparent 24%),
    radial-gradient(circle at 95% 22%,rgba(32,43,58,.055),transparent 22%),
    var(--ug-paper);
  color:var(--ug-ink);
  overflow:hidden;
  font-family:inherit;
}
.ug-home-v2 *{box-sizing:border-box}
.ughv2-shell{width:min(1460px,calc(100% - 64px));margin:0 auto}

/* HERO */
.ughv2-hero{padding:24px 0 0}
.ughv2-hero-grid{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(320px,.68fr);gap:22px;align-items:stretch}
.ughv2-hero-photo{position:relative;min-height:650px;border-radius:36px;overflow:hidden;background-image:var(--ughv2-hero-image);background-size:cover;background-position:center;box-shadow:var(--ug-shadow);isolation:isolate}
.ughv2-hero-photo:after{content:"";position:absolute;inset:auto -12% -32% 32%;height:62%;background:radial-gradient(circle,rgba(255,207,45,.20),transparent 67%);pointer-events:none;z-index:-1}
.ughv2-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,14,.05) 0%,rgba(8,10,14,.14) 33%,rgba(8,10,14,.83) 100%);z-index:-2}
.ughv2-brand-pill{position:absolute;top:24px;left:24px;display:flex;align-items:center;gap:11px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);padding:8px 14px 8px 8px;border:1px solid rgba(255,255,255,.75);border-radius:999px;box-shadow:0 12px 32px rgba(0,0,0,.10)}
.ughv2-brand-pill img{width:40px;height:40px;object-fit:contain}
.ughv2-brand-pill span{font-weight:850;letter-spacing:.09em;font-size:11px;color:#24334a}
.ughv2-hero-content{position:absolute;left:0;right:0;bottom:0;padding:44px 48px 46px;color:#fff;max-width:1040px}
.ughv2-eyebrow,.ughv2-section-kicker,.ughv2-video-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;line-height:1;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#d6ad19}
.ughv2-eyebrow{color:var(--ug-yellow)}
.ughv2-hero h1{margin:12px 0 16px;font-size:clamp(44px,4.3vw,72px);line-height:1.01;letter-spacing:-.047em;color:#fff;max-width:990px;font-weight:800}
.ughv2-hero-content>p{margin:0;font-size:17px;line-height:1.5;color:rgba(255,255,255,.88)}
.ughv2-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}
.ughv2-btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:50px;padding:0 22px;border-radius:999px;text-decoration:none!important;font-size:13px;font-weight:850;letter-spacing:.02em;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;color:var(--ug-ink)}
.ughv2-btn:hover{transform:translateY(-2px)}
.ughv2-btn-primary{background:var(--ug-yellow);box-shadow:0 13px 28px rgba(255,207,45,.20)}
.ughv2-btn-primary:hover{background:#ffd951;color:var(--ug-ink)}
.ughv2-btn-ghost{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.36);color:#fff;backdrop-filter:blur(10px)}
.ughv2-btn-dark{background:var(--ug-navy);color:#fff;box-shadow:0 14px 32px rgba(24,32,45,.18)}

.ughv2-video-card{background:rgba(255,255,255,.90);border:1px solid rgba(218,215,207,.9);border-radius:36px;padding:18px;display:flex;flex-direction:column;box-shadow:var(--ug-shadow-soft);backdrop-filter:blur(12px)}
.ughv2-video-head{padding:11px 8px 16px}
.ughv2-video-head strong{display:block;margin-top:10px;font-size:27px;line-height:1.08;letter-spacing:-.035em;color:var(--ug-navy)}
.ughv2-video-head p{margin:9px 0 0;font-size:13px;line-height:1.5;color:#7b818b}
.ughv2-video-frame{position:relative;overflow:hidden;border-radius:24px;background:#111;aspect-ratio:16/10;min-height:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.ughv2-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ughv2-video-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:15px 7px 3px;font-size:11px;font-weight:800;color:#6f7681}
.ughv2-dot{width:8px;height:8px;background:var(--ug-yellow);border-radius:50%}
.ughv2-sep{color:#c4c7ce}

.ughv2-info-strip{position:relative;z-index:4;margin:-16px 32px 0;background:rgba(255,255,255,.96);border:1px solid var(--ug-line);border-radius:24px;padding:10px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 18px 48px rgba(24,32,45,.08);backdrop-filter:blur(10px)}
.ughv2-info-strip>div{padding:17px 20px;border-right:1px solid #eee9de;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:start}
.ughv2-info-strip>div:last-child{border-right:0}
.ughv2-info-strip span{grid-row:1/3;color:#c19a0f;font-weight:900;font-size:12px;margin-top:2px}
.ughv2-info-strip strong{font-size:14px;color:var(--ug-navy)}
.ughv2-info-strip small{font-size:11px;color:#7b818c;margin-top:3px;line-height:1.35}

/* SERVICES */
.ughv2-section{padding:112px 0 24px}
.ughv2-section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.6fr);gap:70px;align-items:end;margin-bottom:38px}
.ughv2-section-head h2,.ughv2-location h2,.ughv2-final h2{margin:10px 0 0;font-size:clamp(38px,4vw,60px);line-height:1.01;letter-spacing:-.047em;color:var(--ug-navy)}
.ughv2-section-head>p{font-size:16px;line-height:1.68;color:#6d7380;margin:0 0 5px}

.ughv2-ticket-feature{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:450px;background:#fff;border:1px solid var(--ug-line);border-radius:34px;overflow:hidden;text-decoration:none!important;color:var(--ug-ink);box-shadow:var(--ug-shadow-soft);transition:transform .28s ease,box-shadow .28s ease;margin-bottom:22px}
.ughv2-ticket-feature:hover{transform:translateY(-4px);box-shadow:0 26px 68px rgba(24,32,45,.13)}
.ughv2-ticket-image{position:relative;min-height:450px;background-image:linear-gradient(180deg,rgba(5,8,12,.06),rgba(5,8,12,.34)),var(--ughv2-ticket-image);background-size:cover;background-position:center;overflow:hidden}
.ughv2-ticket-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 62%,rgba(255,255,255,.12));pointer-events:none}
.ughv2-ticket-badge{position:absolute;left:24px;top:24px;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--ug-navy);font-size:10px;font-weight:900;letter-spacing:.11em}
.ughv2-ticket-number{position:absolute;right:24px;bottom:17px;font-size:104px;line-height:.8;font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.18)}
.ughv2-ticket-copy{padding:52px 52px 44px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,#fff 0%,#fffdfa 100%)}
.ughv2-ticket-copy h3{font-size:clamp(34px,3.1vw,50px);line-height:1.02;letter-spacing:-.045em;color:var(--ug-navy);margin:12px 0 14px}
.ughv2-ticket-copy>p{font-size:15px;line-height:1.68;color:#707783;margin:0;max-width:560px}
.ughv2-ticket-points{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 28px}
.ughv2-ticket-points span{display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;background:#f6f2e8;border:1px solid #ece4cf;color:#4f5662;font-size:11px;font-weight:800}
.ughv2-ticket-cta{display:inline-flex;align-items:center;gap:9px;color:var(--ug-navy);font-size:14px}
.ughv2-ticket-cta i{font-style:normal;color:#bc970e;font-size:18px}

.ughv2-services-mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:22px}
.ughv2-service-card{position:relative;min-height:355px;border-radius:30px;overflow:hidden;text-decoration:none!important;color:#fff;box-shadow:0 18px 44px rgba(24,32,45,.10);isolation:isolate;transition:transform .28s ease,box-shadow .28s ease}
.ughv2-service-card:hover{transform:translateY(-5px);box-shadow:0 28px 66px rgba(24,32,45,.15)}
.ughv2-service-card.is-dinner{grid-column:span 7}.ughv2-service-card.is-party{grid-column:span 5}.ughv2-service-card.is-lunch{grid-column:span 5}.ughv2-service-card.is-baby{grid-column:span 7}
.ughv2-service-bg{position:absolute;inset:0;background-image:var(--ughv2-card-image);background-size:cover;background-position:center;z-index:-2;transition:transform .55s ease}
.ughv2-service-card:hover .ughv2-service-bg{transform:scale(1.045)}
.ughv2-service-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,15,21,.07),rgba(11,15,21,.15) 30%,rgba(11,15,21,.91) 100%);z-index:-1}
.ughv2-service-top{position:absolute;left:22px;right:22px;top:22px;display:flex;justify-content:space-between;align-items:center}
.ughv2-service-top span{display:inline-flex;background:rgba(255,255,255,.94);color:#27364a;border-radius:999px;padding:8px 11px;font-size:9px;font-weight:900;letter-spacing:.11em}
.ughv2-service-top i{display:grid;place-items:center;width:41px;height:41px;border-radius:50%;background:rgba(255,255,255,.94);color:#27364a;font-style:normal;font-size:17px}
.ughv2-service-copy{position:absolute;left:27px;right:27px;bottom:25px}
.ughv2-service-copy h3{color:#fff;margin:0;font-size:31px;line-height:1.04;letter-spacing:-.038em}
.ughv2-service-card.is-dinner .ughv2-service-copy h3,.ughv2-service-card.is-baby .ughv2-service-copy h3{font-size:35px}
.ughv2-service-copy p{color:rgba(255,255,255,.80);font-size:13px;line-height:1.55;margin:10px 0 13px;max-width:610px}
.ughv2-service-copy strong{display:inline-flex;gap:8px;align-items:center;color:#fff;font-size:12px}
.ughv2-service-copy strong span{color:var(--ug-yellow)}

/* LOCATION */
.ughv2-location-wrap{margin-top:102px;background:linear-gradient(135deg,#202a38 0%,#29394e 60%,#1d2734 100%);color:#fff;position:relative;overflow:hidden}
.ughv2-location-wrap:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-210px;background:radial-gradient(circle,rgba(255,207,45,.22),rgba(255,207,45,0) 70%)}
.ughv2-location{min-height:530px;padding:82px 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:70px;align-items:center;position:relative;z-index:1}
.ughv2-location h2{color:#fff}
.ughv2-location-copy>p{font-size:16px;line-height:1.72;color:rgba(255,255,255,.72);max-width:760px;margin:18px 0 0}
.ughv2-location-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:28px 0 28px;max-width:690px}
.ughv2-location-facts>div{padding:15px 17px;border-radius:16px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055)}
.ughv2-location-facts b{display:block;font-size:13px;color:#fff}.ughv2-location-facts small{display:block;margin-top:4px;color:rgba(255,255,255,.55);font-size:11px}
.ughv2-location-visual{position:relative;min-height:370px;border-radius:34px;background:linear-gradient(145deg,#fff9d8 0%,#fff 58%,#f5f1e6 100%);box-shadow:0 30px 70px rgba(0,0,0,.22);overflow:hidden;color:var(--ug-navy);padding:38px}
.ughv2-location-visual:before{content:"";position:absolute;left:-72px;top:-72px;width:220px;height:220px;border-radius:50%;background:var(--ug-yellow);opacity:.75}
.ughv2-location-orbit{position:absolute;border:1px solid rgba(32,43,58,.08);border-radius:50%}.ughv2-location-orbit.one{width:340px;height:340px;right:-120px;bottom:-120px}.ughv2-location-orbit.two{width:230px;height:230px;right:-40px;bottom:-40px}
.ughv2-location-pin{position:absolute;right:34px;top:30px;font-size:42px;color:#c39d12}
.ughv2-location-date{position:absolute;left:40px;top:44px;display:grid;grid-template-columns:auto auto auto auto auto;align-items:end;gap:8px}
.ughv2-location-date b{font-size:62px;line-height:.8;letter-spacing:-.07em}.ughv2-location-date span{font-size:11px;font-weight:900;letter-spacing:.1em;margin-bottom:3px}.ughv2-location-date em{font-style:normal;font-size:26px;color:#c29b10;margin:0 4px 3px}
.ughv2-location-name{position:absolute;left:40px;right:40px;bottom:42px;font-size:25px;line-height:1.08;font-weight:700;letter-spacing:.02em}.ughv2-location-name strong{display:block;font-size:38px;line-height:1.02;letter-spacing:-.035em;margin-top:5px}.ughv2-location-name small{display:block;font-size:11px;letter-spacing:.18em;color:#737b86;margin-top:12px}

/* FINAL */
.ughv2-final{padding:88px 0 104px}
.ughv2-final-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fffdf5 100%);border:1px solid var(--ug-line);border-radius:34px;padding:48px 52px;display:flex;justify-content:space-between;gap:50px;align-items:center;box-shadow:var(--ug-shadow-soft)}
.ughv2-final-card:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-95px;bottom:-160px;background:var(--ug-yellow);opacity:.28;pointer-events:none}
.ughv2-final-copy{position:relative;z-index:1}.ughv2-final-card h2{font-size:clamp(35px,3.3vw,52px)}
.ughv2-final-card p{margin:12px 0 0;color:#737a86;font-size:15px}
.ughv2-final-card .ughv2-btn{flex:0 0 auto;position:relative;z-index:1}

@media(max-width:1180px){
  .ughv2-hero-grid{grid-template-columns:1fr}
  .ughv2-video-card{display:grid;grid-template-columns:.75fr 1.25fr;gap:18px;align-items:center}
  .ughv2-video-frame{aspect-ratio:16/9}.ughv2-video-foot{grid-column:1/-1}
  .ughv2-ticket-feature{grid-template-columns:1fr 1fr}
  .ughv2-location{grid-template-columns:1fr 340px;gap:40px}
}

@media(max-width:900px){
  .ughv2-shell{width:min(100% - 36px,1460px)}
  .ughv2-info-strip{margin:18px 0 0;grid-template-columns:repeat(2,1fr)}
  .ughv2-info-strip>div:nth-child(2){border-right:0}.ughv2-info-strip>div:nth-child(-n+2){border-bottom:1px solid #eee9de}
  .ughv2-section-head{grid-template-columns:1fr;gap:16px}
  .ughv2-ticket-feature{grid-template-columns:1fr}.ughv2-ticket-image{min-height:360px}.ughv2-ticket-copy{padding:38px}
  .ughv2-services-mosaic{grid-template-columns:1fr 1fr}.ughv2-service-card.is-dinner,.ughv2-service-card.is-party,.ughv2-service-card.is-lunch,.ughv2-service-card.is-baby{grid-column:span 1}
  .ughv2-location{grid-template-columns:1fr;gap:34px}.ughv2-location-visual{min-height:330px}
}

@media(max-width:767px){
  .ughv2-shell{width:min(100% - 28px,1460px)}
  .ughv2-hero{padding-top:10px}.ughv2-hero-photo{min-height:590px;border-radius:25px}.ughv2-brand-pill{top:15px;left:15px}.ughv2-brand-pill span{font-size:9px}.ughv2-brand-pill img{width:36px;height:36px}
  .ughv2-hero-content{padding:30px 21px}.ughv2-hero h1{font-size:40px;line-height:1.03}.ughv2-hero-content>p{font-size:14px}.ughv2-actions{flex-direction:column;align-items:stretch}
  .ughv2-video-card{display:block;padding:14px;border-radius:24px}.ughv2-video-head{padding:7px 5px 13px}.ughv2-video-head strong{font-size:22px}.ughv2-video-head p{font-size:12px}.ughv2-video-frame{aspect-ratio:16/9;border-radius:18px}
  .ughv2-info-strip{grid-template-columns:1fr;border-radius:20px}.ughv2-info-strip>div{border-right:0!important;border-bottom:1px solid #eee9de!important}.ughv2-info-strip>div:last-child{border-bottom:0!important}
  .ughv2-section{padding:76px 0 18px}.ughv2-section-head h2{font-size:39px}.ughv2-section-head>p{font-size:14px}
  .ughv2-ticket-feature{border-radius:25px}.ughv2-ticket-image{min-height:290px}.ughv2-ticket-copy{padding:30px 23px}.ughv2-ticket-copy h3{font-size:35px}.ughv2-ticket-points{gap:6px}.ughv2-ticket-points span{font-size:10px}
  .ughv2-services-mosaic{display:flex;flex-direction:column;gap:16px}.ughv2-service-card{min-height:345px;border-radius:25px}.ughv2-service-copy h3,.ughv2-service-card.is-dinner .ughv2-service-copy h3,.ughv2-service-card.is-baby .ughv2-service-copy h3{font-size:30px}
  .ughv2-location-wrap{margin-top:72px}.ughv2-location{padding:62px 0}.ughv2-location-facts{grid-template-columns:1fr}.ughv2-location-visual{min-height:310px;border-radius:26px;padding:28px}.ughv2-location-date{left:27px;top:34px}.ughv2-location-date b{font-size:49px}.ughv2-location-name{left:28px;bottom:30px}.ughv2-location-name strong{font-size:31px}
  .ughv2-final{padding:62px 0 80px}.ughv2-final-card{padding:31px 24px;display:block;border-radius:26px}.ughv2-final-card .ughv2-btn{margin-top:25px;width:100%}
}


/* ==========================================================================
   V1.3 REFINEMENTS
   ========================================================================== */

.ughv2-site-header{padding:10px 0 7px}
.ughv2-site-header-inner{min-height:70px}
.ughv2-site-brand img{width:54px;height:54px;flex-basis:54px}
.ughv2-site-brand strong{font-size:14px;letter-spacing:.082em}
.ughv2-site-brand small{font-size:8.5px}
.ughv2-site-header.is-scrolled{padding-top:6px}
.ughv2-site-header.is-scrolled .ughv2-site-brand img{width:48px;height:48px;flex-basis:48px}

.ughv2-hero-grid{grid-template-columns:minmax(0,1.78fr) minmax(300px,.62fr);gap:20px}
.ughv2-hero-photo{min-height:610px}
.ughv2-hero-content{padding:40px 46px 42px}
.ughv2-hero h1{font-size:clamp(43px,4.15vw,68px)}
.ughv2-hero-content>p{font-size:16px}

.ughv2-video-card{
  align-self:start;
  min-height:0;
  padding:17px;
  border-radius:30px;
}
.ughv2-video-head{padding:8px 7px 14px}
.ughv2-video-head strong{font-size:25px}
.ughv2-video-frame{aspect-ratio:16/9;border-radius:21px}
.ughv2-video-poster{
  position:relative;
  display:grid;
  place-items:center;
  min-height:0;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(13,17,23,.08),rgba(13,17,23,.48)),
    var(--ughv2-video-poster) center/cover no-repeat;
  text-decoration:none!important;
  isolation:isolate;
}
.ughv2-video-poster:after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 48%,rgba(255,207,45,.14),transparent 34%);
  pointer-events:none;
}
.ughv2-video-play{
  position:relative;
  z-index:2;
  display:grid;
  place-items:center;
  width:68px;
  height:68px;
  padding-left:5px;
  border-radius:50%;
  background:var(--ug-yellow);
  color:var(--ug-navy);
  font-size:25px;
  box-shadow:0 18px 44px rgba(0,0,0,.26);
  transition:transform .2s ease,box-shadow .2s ease;
}
.ughv2-video-label{
  position:absolute;
  z-index:2;
  left:18px;
  bottom:16px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--ug-navy);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ughv2-video-poster:hover .ughv2-video-play{
  transform:scale(1.06);
  box-shadow:0 22px 52px rgba(0,0,0,.32);
}
.ughv2-video-foot{padding-top:13px}

.ughv2-info-strip{box-shadow:0 11px 30px rgba(24,32,45,.055)}

.ughv2-section{padding:78px 0 12px}
.ughv2-section-head{margin-bottom:28px;gap:56px}
.ughv2-section-head h2{max-width:850px}
.ughv2-section-head>p{max-width:500px}

.ughv2-ticket-feature{min-height:425px;margin-bottom:18px}
.ughv2-ticket-copy{padding:44px 48px 40px}
.ughv2-ticket-copy>p{color:#626a76}

.ughv2-services-mosaic{gap:18px}
.ughv2-service-card{min-height:330px;border-radius:28px}
.ughv2-service-copy{left:25px;right:25px;bottom:23px}
.ughv2-service-copy p{min-height:40px;margin:8px 0 13px}
.ughv2-service-copy strong{
  min-height:34px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter:blur(8px);
}
.ughv2-service-copy strong span{font-size:15px}
.ughv2-service-top i{width:38px;height:38px}

.ughv2-location-wrap{margin-top:56px}
.ughv2-location{
  min-height:440px;
  padding:64px 0;
  grid-template-columns:minmax(0,1fr) minmax(360px,.67fr);
  gap:58px;
}
.ughv2-location-copy>p{font-size:15px;line-height:1.65}
.ughv2-location-facts{margin:24px 0}
.ughv2-location-visual{min-height:300px;border-radius:30px;padding:32px}
.ughv2-location-date{left:34px;top:36px}
.ughv2-location-date b{font-size:55px}
.ughv2-location-name{left:34px;right:34px;bottom:34px;font-size:20px}
.ughv2-location-name strong{
  max-width:330px;
  font-size:31px;
  line-height:1.01;
  white-space:normal;
}
.ughv2-location-name small{margin-top:9px}
.ughv2-location-pin{font-size:34px;right:30px;top:25px}

.ughv2-final{padding:58px 0 78px}
.ughv2-final-card-scenic{
  min-height:250px;
  padding:44px 50px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,253,245,.94) 56%,rgba(255,247,210,.86) 100%),
    url('img/party.webp') right center/48% auto no-repeat;
}
.ughv2-final-card-scenic:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent 0%,transparent 55%,rgba(255,207,45,.09) 100%);
  pointer-events:none;
}
.ughv2-final-card h2{max-width:780px}
.ughv2-final-card p{max-width:680px}
.ughv2-final-card .ughv2-btn-dark{min-height:54px;padding:0 24px}

@media(max-width:1180px){
  .ughv2-hero-grid{grid-template-columns:1fr}
  .ughv2-video-card{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:16px;
    align-items:center;
  }
  .ughv2-video-frame{aspect-ratio:16/9}
  .ughv2-location{grid-template-columns:1fr 330px;gap:34px}
}

@media(max-width:900px){
  .ughv2-section{padding-top:66px}
  .ughv2-service-card{min-height:325px}
  .ughv2-location-wrap{margin-top:44px}
  .ughv2-location{padding:54px 0}
  .ughv2-location-visual{min-height:285px}
  .ughv2-final{padding:50px 0 68px}
}

@media(max-width:767px){
  .ughv2-site-brand img{width:43px;height:43px;flex-basis:43px}
  .ughv2-site-brand strong{font-size:10.5px}
  .ughv2-site-brand small{font-size:6.5px}
  .ughv2-hero-photo{min-height:560px}
  .ughv2-video-card{display:block}
  .ughv2-video-play{width:60px;height:60px;font-size:21px}
  .ughv2-section{padding:58px 0 10px}
  .ughv2-section-head{margin-bottom:22px}
  .ughv2-ticket-copy{padding:29px 23px}
  .ughv2-service-card{min-height:330px}
  .ughv2-service-copy p{min-height:0}
  .ughv2-location-wrap{margin-top:36px}
  .ughv2-location{padding:48px 0}
  .ughv2-location-visual{min-height:270px}
  .ughv2-location-name strong{font-size:28px;max-width:260px}
  .ughv2-final{padding:44px 0 64px}
  .ughv2-final-card-scenic{
    min-height:0;
    padding:31px 24px;
    background:
      linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,249,222,.96)),
      url('img/party.webp') center/cover no-repeat;
  }
}

/* ==========================================================================
   V1.5 HERO REFINEMENT
   ========================================================================== */

.ughv2-hero{
  padding:28px 0 10px;
}
.ughv2-hero-stage{
  position:relative;
  min-height:690px;
  border-radius:40px;
  overflow:hidden;
  background:
    linear-gradient(92deg,rgba(8,11,16,.80) 0%,rgba(8,11,16,.58) 30%,rgba(8,11,16,.18) 56%,rgba(8,11,16,.34) 100%),
    var(--ughv2-hero-image) center/cover no-repeat;
  box-shadow:0 30px 90px rgba(24,32,45,.14);
  isolation:isolate;
}
.ughv2-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(8,10,14,.06) 0%,rgba(8,10,14,.12) 28%,rgba(8,10,14,.54) 100%),
    radial-gradient(circle at 18% 78%,rgba(255,207,45,.18),transparent 32%),
    linear-gradient(90deg,rgba(8,11,16,.26) 0%,rgba(8,11,16,0) 46%);
  z-index:-2;
}
.ughv2-hero-glow{
  position:absolute;
  width:580px;
  height:580px;
  right:-150px;
  bottom:-210px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,207,45,.27),rgba(255,207,45,0) 68%);
  pointer-events:none;
  z-index:-1;
}
.ughv2-hero-inner{
  position:relative;
  min-height:690px;
  padding:58px 56px 50px;
}
.ughv2-hero-copy{
  max-width:700px;
  padding-top:30px;
}
.ughv2-eyebrow{margin-bottom:4px}
.ughv2-hero h1{
  margin:12px 0 14px;
  max-width:690px;
  font-size:clamp(40px,4.12vw,72px);
  line-height:.99;
  letter-spacing:-.052em;
  text-wrap:balance;
}
.ughv2-hero-lead{
  margin:0;
  max-width:610px;
  font-size:17px;
  line-height:1.58;
  color:rgba(255,255,255,.90);
}
.ughv2-hero-accent{
  display:block;
  width:94px;
  height:4px;
  margin:20px 0 0;
  border-radius:999px;
  background:linear-gradient(90deg,var(--ug-yellow) 0%,rgba(255,207,45,.35) 100%);
  box-shadow:0 8px 20px rgba(255,207,45,.25);
}
.ughv2-actions{margin-top:30px}
.ughv2-hero-meta{
  display:inline-flex;
  flex-direction:column;
  gap:14px;
  margin-top:24px;
  padding:14px 16px 16px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(8,11,16,.30),rgba(8,11,16,.22));
  box-shadow:0 16px 28px rgba(9,13,21,.16);
  backdrop-filter:blur(10px);
}
.ughv2-hero-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:0;
}
.ughv2-hero-tags span{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.09);
  color:#fff;
  font-size:11px;
  font-weight:850;
  letter-spacing:.035em;
}
.ughv2-hero-note{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:0;
  color:rgba(255,255,255,.94);
  font-size:13px;
  font-weight:700;
}
.ughv2-hero-note i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--ug-yellow);
  box-shadow:0 0 0 6px rgba(255,207,45,.14);
  font-style:normal;
}

.ughv2-video-float{
  position:absolute;
  right:34px;
  bottom:34px;
  width:min(332px,29%);
  padding:18px 18px 16px;
  border-radius:30px;
  background:rgba(250,247,241,.95);
  border:1px solid rgba(214,205,189,.90);
  box-shadow:0 18px 46px rgba(14,20,31,.18);
  backdrop-filter:blur(16px);
}
.ughv2-video-float:before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,0) 18%);
  pointer-events:none;
}
.ughv2-video-copy{position:relative;z-index:1}
.ughv2-video-copy strong{
  display:block;
  margin-top:8px;
  color:var(--ug-navy);
  font-size:22px;
  line-height:1.08;
  letter-spacing:-.036em;
}
.ughv2-video-copy p{
  margin:9px 0 0;
  color:#6e7681;
  font-size:13px;
  line-height:1.52;
}
.ughv2-video-float .ughv2-video-frame{
  margin-top:14px;
  aspect-ratio:16/10;
  border-radius:22px;
}
.ughv2-video-float .ughv2-video-foot{
  padding:13px 5px 2px;
}

/* old split-hero elements removed in V1.4 */
.ughv2-hero-grid,
.ughv2-brand-pill,
.ughv2-video-card,
.ughv2-info-strip{display:none!important}

@media(max-width:1280px){
  .ughv2-hero-stage,
  .ughv2-hero-inner{min-height:650px}
  .ughv2-hero-copy{max-width:650px}
  .ughv2-video-float{width:min(318px,33%)}
}

@media(max-width:1120px){
  .ughv2-hero-stage,
  .ughv2-hero-inner{min-height:unset}
  .ughv2-hero-inner{
    padding:36px 34px 30px;
    display:flex;
    flex-direction:column;
    gap:22px;
  }
  .ughv2-hero-copy{max-width:100%;padding-top:0}
  .ughv2-hero-meta{display:flex;max-width:100%}
  .ughv2-hero h1{max-width:100%;font-size:clamp(40px,5.6vw,58px)}
  .ughv2-video-float{
    position:relative;
    right:auto;
    bottom:auto;
    width:100%;
    max-width:500px;
    margin-left:auto;
  }
}

@media(max-width:767px){
  .ughv2-hero{padding:12px 0 6px}
  .ughv2-hero-stage{border-radius:28px}
  .ughv2-hero-inner{padding:24px 20px 20px;gap:18px}
  .ughv2-hero h1{font-size:40px;line-height:1.01;margin:12px 0 14px}
  .ughv2-hero-accent{width:76px;height:3px;margin-top:16px}
  .ughv2-hero-lead{font-size:15px}
  .ughv2-actions{flex-direction:column;align-items:stretch;margin-top:24px}
  .ughv2-hero-meta{margin-top:18px;padding:12px 12px 14px;border-radius:18px;gap:12px}
  .ughv2-hero-tags{margin-top:0;gap:8px}
  .ughv2-hero-tags span{min-height:36px;padding:0 13px;font-size:10px}
  .ughv2-hero-note{margin-top:14px;font-size:12px}
  .ughv2-video-float{
    max-width:none;
    padding:14px;
    border-radius:22px;
  }
  .ughv2-video-copy strong{font-size:21px}
  .ughv2-video-copy p{font-size:12px}
  .ughv2-video-float .ughv2-video-frame{margin-top:12px;border-radius:18px;aspect-ratio:16/9}
}

/* ==========================================================================\n   V1.6 HERO — CLEAN META + PREMIUM COUNTDOWN/VIDEO CARD\n   ========================================================================== */

.ughv2-hero-meta,
.ughv2-hero-tags,
.ughv2-hero-note{display:none!important}

.ughv2-hero-copy{max-width:690px}
.ughv2-hero h1{max-width:680px}
.ughv2-hero-accent{margin-top:22px}
.ughv2-actions{margin-top:28px}

.ughv2-experience-card{
  right:30px;
  bottom:30px;
  width:min(350px,30%);
  padding:20px;
  border-radius:30px;
  color:#fff;
  background:
    linear-gradient(160deg,rgba(26,31,39,.93) 0%,rgba(17,21,28,.94) 62%,rgba(11,14,19,.96) 100%);
  border:1px solid rgba(255,207,45,.25);
  box-shadow:0 24px 58px rgba(3,6,11,.34),inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(18px) saturate(1.08);
}
.ughv2-experience-card:before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:
    radial-gradient(circle at 86% 5%,rgba(255,207,45,.18),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%);
  pointer-events:none;
}
.ughv2-countdown-head,
.ughv2-countdown,
.ughv2-countdown-passed,
.ughv2-experience-divider,
.ughv2-experience-card .ughv2-video-copy,
.ughv2-experience-card .ughv2-video-frame,
.ughv2-experience-foot{position:relative;z-index:1}

.ughv2-countdown-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:13px;
}
.ughv2-countdown-head span{
  color:var(--ug-yellow);
  font-size:9px;
  line-height:1;
  font-weight:950;
  letter-spacing:.18em;
}
.ughv2-countdown-head strong{
  color:rgba(255,255,255,.72);
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.ughv2-countdown{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:7px;
}
.ughv2-countdown>div{
  min-width:0;
  padding:11px 5px 9px;
  border-radius:16px;
  text-align:center;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.ughv2-countdown b{
  display:block;
  color:#fff;
  font-size:25px;
  line-height:1;
  letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;
}
.ughv2-countdown small{
  display:block;
  margin-top:7px;
  color:rgba(255,255,255,.48);
  font-size:7px;
  line-height:1;
  font-weight:900;
  letter-spacing:.12em;
}
.ughv2-countdown-passed{
  padding:13px 14px;
  border-radius:16px;
  background:rgba(255,207,45,.10);
  border:1px solid rgba(255,207,45,.24);
}
.ughv2-countdown-passed span{
  display:block;
  color:var(--ug-yellow);
  font-size:8px;
  font-weight:950;
  letter-spacing:.15em;
}
.ughv2-countdown-passed strong{
  display:block;
  margin-top:6px;
  color:#fff;
  font-size:20px;
  line-height:1.05;
}
.ughv2-experience-divider{
  height:1px;
  margin:16px 0 15px;
  background:linear-gradient(90deg,rgba(255,207,45,.55),rgba(255,255,255,.09) 55%,transparent);
}
.ughv2-experience-card .ughv2-video-copy strong{
  margin:0;
  color:#fff;
  font-size:20px;
  line-height:1.08;
  letter-spacing:-.035em;
}
.ughv2-experience-card .ughv2-video-copy p{
  margin:7px 0 0;
  color:rgba(255,255,255,.57);
  font-size:11px;
  line-height:1.5;
}
.ughv2-experience-card .ughv2-video-frame{
  margin-top:13px;
  aspect-ratio:16/9;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 14px 30px rgba(0,0,0,.22);
}
.ughv2-experience-card .ughv2-video-frame:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.28));
  pointer-events:none;
  z-index:1;
}
.ughv2-experience-card .ughv2-video-play{
  z-index:3;
  width:62px;
  height:62px;
  font-size:22px;
  box-shadow:0 16px 34px rgba(0,0,0,.30);
}
.ughv2-experience-card .ughv2-video-label{display:none!important}
.ughv2-experience-foot{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin-top:11px;
  color:rgba(255,255,255,.44);
  font-size:8px;
  font-weight:900;
  letter-spacing:.09em;
}
.ughv2-experience-foot i{
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--ug-yellow);
}

@media(max-width:1280px){
  .ughv2-experience-card{width:min(330px,32%)}
}

@media(max-width:1120px){
  .ughv2-experience-card{
    position:relative;
    right:auto;
    bottom:auto;
    width:100%;
    max-width:520px;
    margin-left:auto;
  }
}

@media(max-width:767px){
  .ughv2-hero-copy{max-width:100%}
  .ughv2-experience-card{
    max-width:none;
    padding:16px;
    border-radius:23px;
  }
  .ughv2-countdown b{font-size:23px}
  .ughv2-countdown>div{padding:10px 4px 8px}
  .ughv2-experience-card .ughv2-video-copy strong{font-size:19px}
  .ughv2-experience-card .ughv2-video-frame{border-radius:16px}
}

/* ==========================================================================
   V1.7 HERO CARD — CONVERSION CTA + VIDEO MODAL
   ========================================================================== */

.ughv2-experience-card{
  width:min(356px,30.5%);
  padding:21px;
  border-radius:31px;
  background:
    radial-gradient(circle at 92% 4%,rgba(255,207,45,.16),transparent 29%),
    linear-gradient(160deg,rgba(28,33,42,.95) 0%,rgba(16,20,27,.96) 66%,rgba(10,13,18,.98) 100%);
  border:1px solid rgba(255,207,45,.24);
  box-shadow:0 26px 66px rgba(2,5,10,.38),inset 0 1px 0 rgba(255,255,255,.055);
}
.ughv2-countdown-head{margin-bottom:14px}
.ughv2-countdown-head span{font-size:8.5px;letter-spacing:.16em}
.ughv2-countdown-head strong{
  color:rgba(255,255,255,.58);
  font-size:10px;
  letter-spacing:.12em;
}
.ughv2-countdown>div{
  padding:12px 4px 10px;
  border-radius:15px;
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035));
  border-color:rgba(255,255,255,.09);
}
.ughv2-countdown b{font-size:27px}
.ughv2-countdown small{font-size:6.5px;color:rgba(255,255,255,.42)}
.ughv2-experience-divider{margin:17px 0 16px}

.ughv2-ticket-promo{position:relative;z-index:2}
.ughv2-ticket-promo>span{
  display:inline-block;
  color:var(--ug-yellow);
  font-size:8px;
  font-weight:950;
  letter-spacing:.16em;
  line-height:1;
}
.ughv2-ticket-promo strong{
  display:block;
  margin-top:8px;
  color:#fff;
  font-size:24px;
  line-height:1.02;
  letter-spacing:-.04em;
}
.ughv2-ticket-promo p{
  margin:8px 0 0;
  color:rgba(255,255,255,.57);
  font-size:11px;
  line-height:1.45;
}

.ughv2-experience-card .ughv2-video-frame{
  margin-top:15px;
  aspect-ratio:16/8.7;
  border-radius:17px;
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 14px 32px rgba(0,0,0,.26);
}
.ughv2-experience-card .ughv2-video-frame:after{
  content:"VIDEO";
  position:absolute;
  top:11px;
  left:11px;
  z-index:4;
  padding:5px 7px;
  border-radius:999px;
  background:rgba(10,14,20,.60);
  border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.84);
  font-size:7px;
  line-height:1;
  font-weight:900;
  letter-spacing:.12em;
  backdrop-filter:blur(8px);
}
.ughv2-experience-card .ughv2-video-play{
  width:58px;
  height:58px;
  font-size:20px;
  box-shadow:0 16px 36px rgba(0,0,0,.34);
}

.ughv2-card-ticket-cta{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:50px;
  margin-top:14px;
  padding:0 17px 0 18px;
  border-radius:16px;
  background:var(--ug-yellow);
  color:var(--ug-navy)!important;
  text-decoration:none!important;
  font-size:12px;
  font-weight:950;
  letter-spacing:.01em;
  box-shadow:0 14px 30px rgba(255,207,45,.15);
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
}
.ughv2-card-ticket-cta i{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:50%;
  background:rgba(32,43,58,.10);
  font-style:normal;
  font-size:17px;
}
.ughv2-card-ticket-cta:hover{
  color:var(--ug-navy)!important;
  background:#ffda54;
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(255,207,45,.23);
}
.ughv2-experience-foot,
.ughv2-experience-card .ughv2-video-copy{display:none!important}

/* Video modal: YouTube/Vimeo resta dentro il sito */
html.ughv2-modal-open,
body.ughv2-modal-open{overflow:hidden!important}
.ughv2-video-modal{
  position:fixed;
  inset:0;
  z-index:100000;
  display:grid;
  place-items:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  transition:opacity .22s ease,visibility .22s ease;
}
.ughv2-video-modal.is-open{opacity:1;visibility:visible}
.ughv2-video-modal-backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(7,10,15,.84);
  backdrop-filter:blur(12px);
  cursor:pointer;
}
.ughv2-video-modal-panel{
  position:relative;
  z-index:1;
  width:min(1080px,92vw);
  border-radius:28px;
  padding:12px;
  background:#0e1219;
  border:1px solid rgba(255,255,255,.11);
  box-shadow:0 35px 110px rgba(0,0,0,.55);
  transform:translateY(18px) scale(.985);
  transition:transform .22s ease;
}
.ughv2-video-modal.is-open .ughv2-video-modal-panel{transform:none}
.ughv2-video-modal-ratio{
  position:relative;
  overflow:hidden;
  width:100%;
  aspect-ratio:16/9;
  border-radius:20px;
  background:#000;
}
.ughv2-video-modal-ratio iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.ughv2-video-modal-close{
  position:absolute;
  z-index:3;
  top:-18px;
  right:-18px;
  width:46px;
  height:46px;
  padding:0;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  background:#fff;
  color:var(--ug-navy);
  font-size:29px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 12px 34px rgba(0,0,0,.26);
}

@media(max-width:1280px){
  .ughv2-experience-card{width:min(340px,33%)}
}
@media(max-width:1120px){
  .ughv2-experience-card{width:100%;max-width:500px}
}
@media(max-width:767px){
  .ughv2-experience-card{padding:16px;border-radius:23px}
  .ughv2-ticket-promo strong{font-size:22px}
  .ughv2-ticket-promo p{font-size:10.5px}
  .ughv2-experience-card .ughv2-video-frame{aspect-ratio:16/9}
  .ughv2-card-ticket-cta{min-height:48px}
  .ughv2-video-modal{padding:14px}
  .ughv2-video-modal-panel{width:100%;padding:7px;border-radius:19px}
  .ughv2-video-modal-ratio{border-radius:14px}
  .ughv2-video-modal-close{top:-12px;right:-6px;width:42px;height:42px;font-size:26px}
}

/* ==========================================================================
   V1.8 HERO — COUNTDOWN LEFT + EDITORIAL INLINE VIDEO
   ========================================================================== */

/* Countdown: diventa parte della gerarchia del contenuto principale. */
.ughv2-hero-countdown-wrap{
  width:min(520px,100%);
  margin-top:25px;
}
.ughv2-hero-countdown-wrap .ughv2-countdown-head{
  display:block;
  margin:0 0 10px;
}
.ughv2-hero-countdown-wrap .ughv2-countdown-head span{
  color:var(--ug-yellow);
  font-size:9px;
  line-height:1;
  font-weight:950;
  letter-spacing:.18em;
}
.ughv2-hero-countdown-wrap .ughv2-countdown{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.ughv2-hero-countdown-wrap .ughv2-countdown>div{
  min-width:0;
  padding:11px 9px 9px;
  border-radius:15px;
  text-align:left;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.065));
  border:1px solid rgba(255,255,255,.15);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 26px rgba(0,0,0,.10);
  backdrop-filter:blur(10px);
}
.ughv2-hero-countdown-wrap .ughv2-countdown b{
  display:block;
  color:#fff;
  font-size:28px;
  line-height:1;
  letter-spacing:-.045em;
  font-variant-numeric:tabular-nums;
}
.ughv2-hero-countdown-wrap .ughv2-countdown small{
  display:block;
  margin-top:6px;
  color:rgba(255,255,255,.58);
  font-size:7px;
  line-height:1;
  font-weight:900;
  letter-spacing:.12em;
}
.ughv2-hero-countdown-wrap .ughv2-countdown-passed{
  max-width:360px;
  padding:12px 14px;
  border-radius:15px;
  background:rgba(255,207,45,.12);
  border:1px solid rgba(255,207,45,.24);
}
.ughv2-hero-countdown-wrap .ughv2-countdown-passed span{
  display:block;
  color:var(--ug-yellow);
  font-size:8px;
  font-weight:950;
  letter-spacing:.14em;
}
.ughv2-hero-countdown-wrap .ughv2-countdown-passed strong{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:18px;
  line-height:1.05;
}
.ughv2-hero-countdown-wrap + .ughv2-actions{margin-top:25px}

/* Video: un solo compito, creare atmosfera. */
.ughv2-story-card{
  right:34px;
  bottom:34px;
  width:min(340px,29.5%);
  padding:19px;
  border-radius:30px;
  color:#fff;
  background:
    radial-gradient(circle at 95% 0%,rgba(255,207,45,.13),transparent 29%),
    linear-gradient(155deg,rgba(21,26,34,.84),rgba(11,14,19,.91));
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 24px 58px rgba(2,5,10,.32),inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(17px) saturate(1.08);
}
.ughv2-story-card:before{
  content:"";
  position:absolute;
  top:0;
  left:22px;
  width:74px;
  height:3px;
  border-radius:0 0 999px 999px;
  background:var(--ug-yellow);
  box-shadow:0 6px 18px rgba(255,207,45,.24);
}
.ughv2-story-copy{
  position:relative;
  z-index:2;
  padding:9px 3px 15px;
}
.ughv2-story-copy>span{
  display:block;
  color:var(--ug-yellow);
  font-size:8.5px;
  line-height:1;
  font-weight:950;
  letter-spacing:.17em;
}
.ughv2-story-copy strong{
  display:block;
  max-width:285px;
  margin-top:9px;
  color:#fff;
  font-size:25px;
  line-height:1.04;
  letter-spacing:-.04em;
}
.ughv2-story-copy p{
  max-width:285px;
  margin:8px 0 0;
  color:rgba(255,255,255,.62);
  font-size:11.5px;
  line-height:1.48;
}

.ughv2-inline-video{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:20px;
  background:#080b10;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 16px 34px rgba(0,0,0,.27);
}
.ughv2-inline-video-poster{
  position:absolute;
  inset:0;
  z-index:2;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  border-radius:inherit;
  cursor:pointer;
  background:
    linear-gradient(180deg,rgba(4,7,12,.02),rgba(4,7,12,.28)),
    var(--ughv2-video-poster) center/cover no-repeat;
  transition:opacity .22s ease,visibility .22s ease,transform .28s ease;
}
.ughv2-inline-video-poster:after{
  content:"GUARDA IL VIDEO";
  position:absolute;
  left:14px;
  bottom:13px;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--ug-navy);
  font-size:7px;
  line-height:1;
  font-weight:950;
  letter-spacing:.12em;
}
.ughv2-inline-video .ughv2-video-play,
.ughv2-inline-video-link .ughv2-video-play{
  position:absolute;
  left:50%;
  top:50%;
  z-index:3;
  display:grid;
  place-items:center;
  width:62px;
  height:62px;
  padding-left:4px;
  border-radius:50%;
  background:var(--ug-yellow);
  color:var(--ug-navy);
  font-size:22px;
  box-shadow:0 16px 38px rgba(0,0,0,.32);
  transform:translate(-50%,-50%);
  transition:transform .2s ease,box-shadow .2s ease;
}
.ughv2-inline-video-poster:hover .ughv2-video-play,
.ughv2-inline-video-link:hover .ughv2-video-play{
  transform:translate(-50%,-50%) scale(1.07);
  box-shadow:0 20px 44px rgba(0,0,0,.38);
}
.ughv2-inline-video iframe{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  border:0;
  background:#000;
}
.ughv2-inline-video.is-playing .ughv2-inline-video-poster{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.ughv2-inline-video-link{
  background:
    linear-gradient(180deg,rgba(4,7,12,.02),rgba(4,7,12,.28)),
    var(--ughv2-video-poster) center/cover no-repeat;
}

/* Componenti V1.6/V1.7 non più usati. */
.ughv2-ticket-promo,
.ughv2-card-ticket-cta,
.ughv2-experience-divider,
.ughv2-video-modal{display:none!important}

@media(max-width:1280px){
  .ughv2-story-card{width:min(322px,31.5%)}
  .ughv2-hero-countdown-wrap{width:min(500px,100%)}
}

@media(max-width:1120px){
  .ughv2-story-card{
    position:relative;
    right:auto;
    bottom:auto;
    width:100%;
    max-width:500px;
    margin-left:auto;
  }
  .ughv2-hero-countdown-wrap{width:min(540px,100%)}
}

@media(max-width:767px){
  .ughv2-hero-countdown-wrap{margin-top:20px}
  .ughv2-hero-countdown-wrap .ughv2-countdown{gap:6px}
  .ughv2-hero-countdown-wrap .ughv2-countdown>div{padding:9px 5px 8px;border-radius:12px;text-align:center}
  .ughv2-hero-countdown-wrap .ughv2-countdown b{font-size:22px}
  .ughv2-hero-countdown-wrap .ughv2-countdown small{font-size:6px}
  .ughv2-hero-countdown-wrap + .ughv2-actions{margin-top:22px}
  .ughv2-story-card{max-width:none;padding:15px;border-radius:23px}
  .ughv2-story-copy{padding:7px 2px 13px}
  .ughv2-story-copy strong{font-size:22px}
  .ughv2-story-copy p{font-size:11px}
  .ughv2-inline-video{border-radius:17px}
  .ughv2-inline-video .ughv2-video-play,
  .ughv2-inline-video-link .ughv2-video-play{width:56px;height:56px;font-size:19px}
}


/* ==========================================================================
   V1.9 LOCATION REDESIGN
   ========================================================================== */
.ughv2-location-wrap{
  margin-top:54px;
  background:
    radial-gradient(circle at 85% 12%,rgba(255,207,45,.13),transparent 25%),
    linear-gradient(135deg,#202a38 0%,#27374b 56%,#1c2633 100%);
  color:#fff;
  position:relative;
  overflow:hidden;
}
.ughv2-location-wrap:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.45),transparent 78%);
  pointer-events:none;
}
.ughv2-location{
  min-height:0;
  padding:72px 0;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr);
  gap:72px;
  align-items:center;
  position:relative;
  z-index:1;
}
.ughv2-location-copy{max-width:660px}
.ughv2-location h2{
  margin:14px 0 0;
  color:#fff;
  font-size:clamp(44px,4.2vw,70px);
  line-height:.98;
  letter-spacing:-.052em;
}
.ughv2-location-copy>p{
  margin:20px 0 0;
  max-width:640px;
  color:rgba(255,255,255,.72);
  font-size:15px;
  line-height:1.72;
}
.ughv2-location-meta{
  display:grid;
  gap:10px;
  margin:27px 0 28px;
  max-width:610px;
}
.ughv2-location-meta-item{
  display:grid;
  grid-template-columns:40px 1fr;
  gap:14px;
  align-items:center;
  padding:13px 15px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(255,255,255,.045);
}
.ughv2-location-meta-item>span{color:var(--ug-yellow);font-size:10px;font-weight:900;letter-spacing:.08em}
.ughv2-location-meta-item b{display:block;color:#fff;font-size:13px}
.ughv2-location-meta-item small{display:block;margin-top:4px;color:rgba(255,255,255,.52);font-size:11px}
.ughv2-location-cta{min-height:52px;padding:0 22px}
.ughv2-location-photo{
  position:relative;
  min-height:430px;
  display:block;
  overflow:hidden;
  border-radius:34px;
  background:
    linear-gradient(180deg,rgba(11,15,21,.02),rgba(11,15,21,.12) 45%,rgba(11,15,21,.76) 100%),
    var(--ughv2-location-image) center/cover no-repeat;
  box-shadow:0 28px 70px rgba(0,0,0,.26);
  text-decoration:none!important;
  isolation:isolate;
  transition:transform .25s ease,box-shadow .25s ease;
}
.ughv2-location-photo:hover{transform:translateY(-3px);box-shadow:0 34px 82px rgba(0,0,0,.33)}
.ughv2-location-photo-shade{position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,207,45,.05),transparent 38%,rgba(10,15,22,.18));pointer-events:none}
.ughv2-location-photo-top{position:absolute;left:22px;right:22px;top:22px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ughv2-location-photo-pill{display:inline-flex;min-height:36px;align-items:center;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--ug-navy);font-size:9px;font-weight:900;letter-spacing:.10em}
.ughv2-location-photo-arrow{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ug-yellow);color:var(--ug-navy);font-size:18px;font-weight:900}
.ughv2-location-photo-date{position:absolute;top:82px;right:22px;display:flex;align-items:flex-end;gap:7px;padding:11px 13px;border-radius:17px;background:rgba(17,23,33,.76);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);color:#fff}
.ughv2-location-photo-date span{font-size:28px;line-height:.85;font-weight:900;letter-spacing:-.04em}
.ughv2-location-photo-date small{font-size:8px;font-weight:900;letter-spacing:.09em;margin-bottom:2px;color:var(--ug-yellow)}
.ughv2-location-photo-date i{font-style:normal;color:var(--ug-yellow);margin:0 2px 1px}
.ughv2-location-photo-caption{position:absolute;left:28px;right:28px;bottom:26px;color:#fff}
.ughv2-location-photo-caption small{display:block;font-size:9px;font-weight:900;letter-spacing:.13em;color:var(--ug-yellow)}
.ughv2-location-photo-caption strong{display:block;margin-top:8px;font-size:38px;line-height:1;letter-spacing:-.04em;color:#fff}
.ughv2-location-photo-caption em{display:block;margin-top:7px;font-style:normal;font-size:12px;font-weight:800;letter-spacing:.08em;color:rgba(255,255,255,.75)}
.ughv2-location-facts,.ughv2-location-visual,.ughv2-location-orbit,.ughv2-location-pin,.ughv2-location-date,.ughv2-location-name{display:none!important}
@media(max-width:1100px){.ughv2-location{grid-template-columns:1fr 1fr;gap:38px}.ughv2-location-photo{min-height:390px}}
@media(max-width:900px){.ughv2-location{grid-template-columns:1fr;gap:30px;padding:58px 0}.ughv2-location-copy{max-width:none}.ughv2-location-photo{min-height:420px}}
@media(max-width:767px){.ughv2-location-wrap{margin-top:36px}.ughv2-location{padding:48px 0;gap:26px}.ughv2-location h2{font-size:42px}.ughv2-location-copy>p{font-size:14px}.ughv2-location-meta{margin:22px 0 24px}.ughv2-location-photo{min-height:335px;border-radius:26px}.ughv2-location-photo-caption{left:22px;right:22px;bottom:22px}.ughv2-location-photo-caption strong{font-size:31px}.ughv2-location-photo-date{top:72px;right:16px}.ughv2-location-photo-top{left:16px;right:16px;top:16px}}


/* ==========================================================================\n   V1.9.7 LOCATION ONLY — full background photo\n   ========================================================================== */
.ughv2-location-wrap.ughv2-location-fullbg{
  position:relative;
  margin-top:54px;
  min-height:600px;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(13,20,30,.88) 0%,rgba(13,20,30,.76) 34%,rgba(13,20,30,.38) 62%,rgba(13,20,30,.18) 100%),
    var(--ughv2-location-image) center/cover no-repeat!important;
}
.ughv2-location-wrap.ughv2-location-fullbg:before{
  display:none!important;
}
.ughv2-location-bg-overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(11,16,24,.10) 0%,rgba(11,16,24,.16) 40%,rgba(11,16,24,.48) 100%),
    radial-gradient(circle at 16% 18%,rgba(255,207,45,.10),transparent 28%);
}
.ughv2-location-fullbg .ughv2-location{
  min-height:600px;
  padding:76px 0;
  display:grid;
  grid-template-columns:minmax(0,680px) 1fr!important;
  gap:72px;
  align-items:center;
  position:relative;
  z-index:1;
}
.ughv2-location-fullbg .ughv2-location-copy{
  max-width:650px;
}
.ughv2-location-fullbg .ughv2-location h2{
  margin:14px 0 0;
  color:#fff;
  text-shadow:0 2px 24px rgba(0,0,0,.20);
}
.ughv2-location-fullbg .ughv2-location-copy>p{
  max-width:590px;
  color:rgba(255,255,255,.82);
  text-shadow:0 1px 14px rgba(0,0,0,.16);
}
.ughv2-location-fullbg .ughv2-location-meta{
  max-width:560px;
}
.ughv2-location-fullbg .ughv2-location-meta-item{
  border:1px solid rgba(255,255,255,.16);
  background:rgba(17,25,36,.34);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.ughv2-location-fullbg .ughv2-location-meta-item b{color:#fff}
.ughv2-location-fullbg .ughv2-location-meta-item small{color:rgba(255,255,255,.64)}
.ughv2-location-fullbg .ughv2-location-photo{
  display:none!important;
}
@media(max-width:900px){
  .ughv2-location-wrap.ughv2-location-fullbg{
    min-height:560px;
    background:
      linear-gradient(90deg,rgba(13,20,30,.88) 0%,rgba(13,20,30,.70) 55%,rgba(13,20,30,.40) 100%),
      var(--ughv2-location-image) center/cover no-repeat!important;
  }
  .ughv2-location-fullbg .ughv2-location{
    min-height:560px;
    grid-template-columns:1fr!important;
    padding:58px 0;
  }
}
@media(max-width:767px){
  .ughv2-location-wrap.ughv2-location-fullbg{
    margin-top:36px;
    min-height:620px;
    background:
      linear-gradient(180deg,rgba(13,20,30,.58) 0%,rgba(13,20,30,.72) 38%,rgba(13,20,30,.90) 100%),
      var(--ughv2-location-image) 62% center/cover no-repeat!important;
  }
  .ughv2-location-fullbg .ughv2-location{
    min-height:620px;
    padding:46px 0 52px;
    align-items:end;
  }
  .ughv2-location-fullbg .ughv2-location-copy>p{font-size:14px}
  .ughv2-location-fullbg .ughv2-location-meta{margin:22px 0 24px}
}


/* ==========================================================================
   V1.9.8 — HOME WIDTH ONLY
   Undo Impreza's boxed canvas / content constraint for [ug_home_v2] alone.
   Keep all original sections, layout proportions, copy and mobile spacing.
   ========================================================================== */
body.ug-home-v2-page .l-canvas,
body.ug-home-v2-page .l-main {
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
/* Escape any remaining max-width from the theme's shortcode container. */
body.ug-home-v2-page .ug-home-v2 {
  position:relative;
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
/* A small responsive gutter replaces the old 1460px ceiling. */
@media (min-width:901px) {
  body.ug-home-v2-page .ug-home-v2 .ughv2-shell {
    width:calc(100% - clamp(40px,4vw,96px));
    max-width:none;
    margin-left:auto;
    margin-right:auto;
  }
}
/* The viewport-width breakout must not create a sideways scrollbar. */
body.ug-home-v2-page {overflow-x:clip;}

/* v1.10.0 — intestazioni Ticket / Servizi coordinate con menu e footer */
.ughv2-section-bar{display:flex;align-items:center;gap:16px;margin:0 0 24px;padding:17px 22px;border-radius:18px;background:#202b3a;border:1px solid rgba(255,255,255,.08);box-shadow:0 14px 34px rgba(17,25,36,.10);color:#fff}
.ughv2-section-bar span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#ffcf2d;color:#192331;font-size:11px;font-weight:900;letter-spacing:.04em}
.ughv2-section-bar h2{margin:0!important;color:#fff!important;font-size:clamp(22px,2.2vw,31px)!important;line-height:1.05!important;letter-spacing:-.025em!important;font-weight:850!important}
.ughv2-section-bar--services{margin-top:34px}
@media(max-width:767px){.ughv2-section-bar{margin-bottom:17px;padding:14px 15px;border-radius:15px}.ughv2-section-bar--services{margin-top:24px}.ughv2-section-bar h2{font-size:22px!important}}

/* v1.10.1 — Homepage only: editorial section headings and tighter vertical rhythm.
   The product links, seat selection, service cards and location markup are untouched. */
.ug-home-v2 .ughv2-section {
  padding-top:36px;
  padding-bottom:0;
}
.ug-home-v2 .ughv2-section-bar {
  display:flex;
  align-items:center;
  gap:14px;
  position:relative;
  margin:0 0 19px;
  padding:0 0 17px;
  min-height:53px;
  background:transparent;
  border:0;
  border-bottom:1px solid rgba(32,43,58,.16);
  border-radius:0;
  box-shadow:none;
  color:#202b3a;
}
.ug-home-v2 .ughv2-section-bar::after {
  content:"";
  position:absolute;
  bottom:-2px;
  left:0;
  width:72px;
  height:3px;
  background:#ffcf2d;
  border-radius:3px;
}
.ug-home-v2 .ughv2-section-bar > span {
  display:inline-flex;
  flex:0 0 38px;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:12px;
  background:#202b3a;
  color:#ffcf2d;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.035em;
}
.ug-home-v2 .ughv2-section-bar h2 {
  margin:0!important;
  color:#202b3a!important;
  font-size:clamp(26px,2.5vw,36px)!important;
  line-height:1.12!important;
  letter-spacing:-.045em!important;
  font-weight:850!important;
}
.ug-home-v2 .ughv2-ticket-feature {
  margin-bottom:0;
}
.ug-home-v2 .ughv2-section-bar--services {
  margin-top:34px;
}
.ug-home-v2 .ughv2-location-wrap.ughv2-location-fullbg {
  margin-top:38px;
}
@media(max-width:900px) {
  .ug-home-v2 .ughv2-section {padding-top:30px;}
  .ug-home-v2 .ughv2-section-bar--services {margin-top:30px;}
  .ug-home-v2 .ughv2-location-wrap.ughv2-location-fullbg {margin-top:30px;}
}
@media(max-width:767px) {
  .ug-home-v2 .ughv2-section {padding-top:24px;}
  .ug-home-v2 .ughv2-section-bar {gap:11px;margin-bottom:15px;padding-bottom:13px;min-height:47px;}
  .ug-home-v2 .ughv2-section-bar > span {flex-basis:34px;width:34px;height:34px;border-radius:10px;font-size:11px;}
  .ug-home-v2 .ughv2-section-bar h2 {font-size:clamp(23px,6vw,29px)!important;}
  .ug-home-v2 .ughv2-section-bar--services {margin-top:25px;}
  .ug-home-v2 .ughv2-location-wrap.ughv2-location-fullbg {margin-top:26px;}
}


/* v1.10.2 — Solo Home: ritmo verticale, allineamento titoli e terza intestazione location. */
.ug-home-v2 .ughv2-section {
  padding-top:0;
}
.ug-home-v2 .ughv2-section-bar {
  align-items:center;
  gap:14px;
}
.ug-home-v2 .ughv2-section-bar > span {
  align-self:center;
}
.ug-home-v2 .ughv2-section-bar h2 {
  display:flex!important;
  align-items:center;
  align-self:center;
  min-height:38px;
  padding:0!important;
  margin:0!important;
}
.ug-home-v2 .ughv2-section-bar::after {
  width:54px;
  height:2px;
  bottom:-1px;
}
.ug-home-v2 .ughv2-location-heading-wrap {
  padding-top:30px;
}
.ug-home-v2 .ughv2-location-heading-wrap .ughv2-section-bar {
  margin-bottom:0;
}
.ug-home-v2 .ughv2-location-wrap.ughv2-location-fullbg {
  margin-top:18px;
}
@media(max-width:900px) {
  .ug-home-v2 .ughv2-section {padding-top:4px;}
  .ug-home-v2 .ughv2-location-heading-wrap {padding-top:26px;}
  .ug-home-v2 .ughv2-location-wrap.ughv2-location-fullbg {margin-top:16px;}
}
@media(max-width:767px) {
  .ug-home-v2 .ughv2-section {padding-top:10px;}
  .ug-home-v2 .ughv2-section-bar {gap:11px;}
  .ug-home-v2 .ughv2-section-bar h2 {min-height:34px;}
  .ug-home-v2 .ughv2-location-heading-wrap {padding-top:22px;}
  .ug-home-v2 .ughv2-location-wrap.ughv2-location-fullbg {margin-top:14px;}
}

/* v1.10.3 — Solo Home: più respiro fra hero e intestazione Ticket evento.
   Nessuna modifica alle distanze fra titoli e schede o alle altre sezioni. */
.ug-home-v2 > .ughv2-hero + .ughv2-section {
  padding-top:34px;
}
@media (max-width:900px) {
  .ug-home-v2 > .ughv2-hero + .ughv2-section {padding-top:30px;}
}
@media (max-width:767px) {
  .ug-home-v2 > .ughv2-hero + .ughv2-section {padding-top:26px;}
}


/* v1.10.4 — Ticket evento: pannello blu/notte compatto, dettagli oro e CTA gialla.
   Solo la card ticket nella Home; nessuna modifica a hero, servizi o location. */
.ug-home-v2 .ughv2-ticket-feature {
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  min-height:360px;
  background:#202b3a;
  border-color:rgba(32,43,58,.16);
  border-radius:30px;
}
.ug-home-v2 .ughv2-ticket-image {
  min-height:360px;
}
.ug-home-v2 .ughv2-ticket-image::after {
  background:linear-gradient(90deg,transparent 76%,rgba(13,21,32,.16));
}
.ug-home-v2 .ughv2-ticket-badge {
  padding:9px 14px;
  background:#fffaf0;
  color:#202b3a;
  border:1px solid rgba(255,207,45,.38);
  font-size:10px;
}
.ug-home-v2 .ughv2-ticket-copy {
  min-width:0;
  padding:30px clamp(27px,3vw,46px);
  background:#202b3a;
  color:#fff;
  justify-content:center;
}
.ug-home-v2 .ughv2-ticket-copy .ughv2-section-kicker {
  color:#ffcf2d;
  font-size:10px;
  letter-spacing:.16em;
}
.ug-home-v2 .ughv2-ticket-copy h3 {
  margin:12px 0 12px;
  max-width:560px;
  font-size:clamp(31px,2.55vw,43px);
  line-height:1.09;
  letter-spacing:-.039em;
  color:#fff!important;
}
.ug-home-v2 .ughv2-ticket-copy > p {
  max-width:540px;
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:#d6dce5;
}
.ug-home-v2 .ughv2-ticket-points {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:18px 0 20px;
}
.ug-home-v2 .ughv2-ticket-points span {
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:31px;
  padding:6px 10px;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  color:#f6f7f9;
  font-size:11px;
  line-height:1.3;
  font-weight:750;
}
.ug-home-v2 .ughv2-ticket-points span::before {
  content:"";
  display:block;
  flex:0 0 5px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#ffcf2d;
}
.ug-home-v2 .ughv2-ticket-cta {
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  justify-content:center;
  gap:16px;
  min-height:49px;
  max-width:100%;
  padding:0 24px;
  background:#ffcf2d;
  border-radius:999px;
  color:#202b3a!important;
  font-size:13px;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.005em;
  box-shadow:0 10px 24px rgba(255,207,45,.12);
  transition:background .2s ease,box-shadow .2s ease,transform .2s ease;
}
.ug-home-v2 .ughv2-ticket-cta i {
  color:#202b3a;
  font-size:18px;
  line-height:1;
}
.ug-home-v2 .ughv2-ticket-feature:hover .ughv2-ticket-cta,
.ug-home-v2 .ughv2-ticket-feature:focus-visible .ughv2-ticket-cta {
  background:#ffda55;
  box-shadow:0 12px 26px rgba(255,207,45,.22);
}
.ug-home-v2 .ughv2-ticket-feature:focus-visible {
  outline:3px solid #ffcf2d;
  outline-offset:4px;
}
@media (max-width:900px) {
  .ug-home-v2 .ughv2-ticket-feature {
    grid-template-columns:1fr;
    min-height:0;
  }
  .ug-home-v2 .ughv2-ticket-image {
    min-height:260px;
    aspect-ratio:16/8;
  }
  .ug-home-v2 .ughv2-ticket-copy {
    padding:28px 30px 30px;
  }
  .ug-home-v2 .ughv2-ticket-copy h3 {
    font-size:clamp(29px,4.5vw,37px);
  }
}
@media (max-width:767px) {
  .ug-home-v2 .ughv2-ticket-feature {
    border-radius:24px;
  }
  .ug-home-v2 .ughv2-ticket-image {
    min-height:215px;
    aspect-ratio:16/10;
  }
  .ug-home-v2 .ughv2-ticket-copy {
    padding:25px 21px 27px;
  }
  .ug-home-v2 .ughv2-ticket-copy h3 {
    font-size:clamp(29px,7.4vw,35px);
    margin:10px 0;
  }
  .ug-home-v2 .ughv2-ticket-copy > p {
    font-size:13px;
  }
  .ug-home-v2 .ughv2-ticket-points {
    gap:6px;
    margin:16px 0 18px;
  }
  .ug-home-v2 .ughv2-ticket-points span {
    font-size:10px;
    padding:6px 8px;
  }
  .ug-home-v2 .ughv2-ticket-cta {
    min-height:48px;
    width:100%;
    padding:0 15px;
  }
}
