/* ==========================================================================
   Tour Basket USA — Design System per Elementor (Free) + Astra
   Le classi si assegnano in Elementor: Avanzate → Classi CSS.
   Layout (righe, colonne, larghezze, spaziature) = impostazioni Elementor.
   Questo file aggiunge: tipografia, colori, pelli dei componenti, effetti.
   ========================================================================== */

/* ---------- Font self-hosted (GDPR) ---------- */
@font-face{font-family:"Big Shoulders Display";src:url("fonts/big-shoulders-display-latin-900-normal.woff2") format("woff2");font-weight:900;font-display:swap}
@font-face{font-family:"Big Shoulders Display";src:url("fonts/big-shoulders-display-latin-800-normal.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-700-normal.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Figtree";src:url("fonts/figtree-latin-800-normal.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("fonts/instrument-serif-latin-400-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}

/* ---------- Token ---------- */
:root{
  --gp-orange:#FF5A1F;--gp-orange-600:#D9430C;--gp-orange-700:#B2360A;
  --gp-night:#0D1117;--gp-night-800:#171C24;--gp-night-700:#262D38;--gp-night-400:#9AA1AC;
  --gp-parquet:#E9B77A;--gp-parquet-100:#F7E6CF;
  --gp-paper:#F6F3EE;--gp-paper-2:#EDE8DF;--gp-white:#FFFFFF;--gp-line:#E4DED3;
  --gp-ink:#0D1117;--gp-ink-600:#5A616C;
  --gp-f-display:"Big Shoulders Display","Arial Narrow",Impact,sans-serif;
  --gp-f-body:"Figtree",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --gp-f-accent:"Instrument Serif",Georgia,serif;
  --gp-ease:cubic-bezier(.2,.8,.2,1);
}

/* ---------- Base ---------- */
body.gp{font-family:var(--gp-f-body);font-size:17px;line-height:1.65;color:var(--gp-ink);background:var(--gp-paper);-webkit-font-smoothing:antialiased}
.gp .site-content{background:var(--gp-paper)}
.gp .elementor a{color:inherit}
.gp .elementor :focus-visible{outline:3px solid var(--gp-orange);outline-offset:3px}
.gp .elementor p:last-child{margin-bottom:0}
.gp .elementor .elementor-widget-text-editor p{margin:0 0 1em}
.gp .elementor .elementor-widget-text-editor p:last-child{margin-bottom:0}
.gp .e-con[hidden]{display:none!important}
.gp-dark{color:var(--gp-paper)}
.gp-dark .elementor-heading-title{color:inherit}

/* ---------- Tipografia ---------- */
.gp :where(.elementor) :is(h1,h2,h3){font-family:var(--gp-f-display);font-weight:900;text-transform:uppercase;letter-spacing:-.005em;color:inherit;text-wrap:balance}
.gp :where(.elementor) h1{font-size:clamp(2.75rem,6vw,6rem);line-height:.9}
.gp :where(.elementor) h2{font-size:clamp(2.125rem,4.2vw,4rem);line-height:.95}
.gp :where(.elementor) h3{font-size:clamp(1.375rem,2.2vw,2rem);font-weight:800;line-height:1}
.gp :where(.elementor) :is(p,div).elementor-heading-title{font-family:var(--gp-f-body);font-weight:700;text-transform:none;letter-spacing:0;font-size:1rem;line-height:1.35}
.gp-accent{font-family:var(--gp-f-accent);font-style:italic;font-weight:400;text-transform:none;letter-spacing:0;color:var(--gp-orange)}
.gp-dark .gp-accent{color:var(--gp-parquet)}
.gp-dot{color:var(--gp-orange)}
.gp .gp-eyebrow .elementor-heading-title{font:700 .78rem/1.3 var(--gp-f-body);letter-spacing:.18em;text-transform:uppercase;color:var(--gp-orange-700)}
.gp .gp-dark .gp-eyebrow .elementor-heading-title{color:var(--gp-orange)}
.gp .gp-eyebrow--line .elementor-heading-title{display:inline-flex;align-items:center;gap:.6rem;color:var(--gp-parquet)!important}
.gp-eyebrow--line .elementor-heading-title::before{content:"";width:28px;height:2px;background:var(--gp-orange)}
.gp-lead{font-size:clamp(1.125rem,1.4vw,1.3125rem);line-height:1.5}
.gp-muted{color:var(--gp-ink-600)}
.gp-dark .gp-muted{color:#B7BDC6}
.gp-note{font-size:.85rem;color:var(--gp-night-400)}
.gp-link .elementor-heading-title a{font-weight:800;text-decoration:none;border-bottom:2px solid var(--gp-orange);padding-bottom:2px}

/* ---------- Pulsanti (widget Pulsante con classe gp-btnw) ---------- */
.gp .gp-btnw .elementor-button,.gp .gp-filter .elementor-button{border-radius:0;font:800 1rem/1 var(--gp-f-body);letter-spacing:.01em;transition:background .2s,border-color .2s,color .2s}
.gp .gp-btnw .elementor-button{min-height:52px;display:inline-flex;align-items:center;padding:.95rem 1.5rem;background:var(--gp-orange);color:var(--gp-night);border:2px solid var(--gp-orange)}
.gp .gp-btnw .elementor-button:hover{background:var(--gp-orange-600);border-color:var(--gp-orange-600);color:var(--gp-night)}
.gp .gp-btnw .elementor-button-icon svg{width:1em;height:1em;fill:currentColor;transition:transform .25s var(--gp-ease)}
.gp .gp-btnw .elementor-button:hover .elementor-button-icon svg{transform:translateX(4px)}
.gp .gp-btnw--ghost .elementor-button{background:transparent;color:var(--gp-white);border-color:var(--gp-white)}
.gp .gp-btnw--ghost .elementor-button:hover{background:var(--gp-white);color:var(--gp-night);border-color:var(--gp-white)}
.gp .gp-btnw--dark .elementor-button{background:var(--gp-night);color:var(--gp-paper);border-color:var(--gp-night)}
.gp .gp-btnw--dark .elementor-button:hover{background:var(--gp-night-700);border-color:var(--gp-night-700);color:var(--gp-paper)}
.gp .gp-btnw--full{width:100%;max-width:100%}
.gp .gp-btnw--full .elementor-button{width:100%}
.gp .gp-btnw--full .elementor-button-content-wrapper{width:100%;justify-content:space-between}

/* ---------- HERO ---------- */
.gp .e-con.gp-hero{--mx:70%;--my:35%;position:relative;overflow:hidden;isolation:isolate;background-color:var(--gp-night)}
.gp .e-con.gp-hero::before{content:"";position:absolute;inset:0;z-index:-2;opacity:1;background:
  radial-gradient(600px 420px at var(--mx) var(--my),rgba(255,90,31,.20),transparent 70%),
  linear-gradient(180deg,rgba(13,17,23,.55) 0%,rgba(13,17,23,.78) 55%,rgba(13,17,23,.98) 100%)}
.gp .e-con.gp-hero::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.12;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.gp-court{position:absolute;right:-10%;top:50%;width:min(62vw,900px);transform:translateY(-50%);z-index:-1;pointer-events:none;color:rgba(233,183,122,.5)}
.gp-court *{fill:none;stroke:currentColor;stroke-width:2;stroke-dasharray:2400;stroke-dashoffset:2400;animation:gp-draw 2.6s var(--gp-ease) forwards}
.gp-court .d2{animation-delay:.35s}.gp-court .d3{animation-delay:.7s}
@keyframes gp-draw{to{stroke-dashoffset:0}}
.gp .gp-hero__title .elementor-heading-title{font-size:clamp(3.5rem,10vw,10rem);line-height:.84;color:var(--gp-white)}
.gp .gp-hero--trip .gp-hero__title .elementor-heading-title{font-size:clamp(3.25rem,8.5vw,8.5rem)}
.gp-line{display:block;overflow:hidden;padding-bottom:.05em}
.gp-line>span{display:block;transform:translateY(105%);animation:gp-rise .9s var(--gp-ease) .15s forwards}
.gp-l2>span{animation-delay:.27s}
@keyframes gp-rise{to{transform:none}}
.gp-outline{color:transparent;-webkit-text-stroke:2px var(--gp-paper);background:linear-gradient(90deg,var(--gp-orange) 0 50%,transparent 50% 100%) 100% 0/200% 100% no-repeat;-webkit-background-clip:text;background-clip:text;animation:gp-fill 1.4s 1.1s var(--gp-ease) forwards}
@keyframes gp-fill{to{background-position:0 0;-webkit-text-stroke-color:var(--gp-orange)}}
.gp-hero__title{margin:1rem 0 0!important}
.gp .gp-hero__sub{font-size:clamp(1.125rem,1.4vw,1.3125rem);max-width:36ch;margin:1.5rem 0 2rem!important;color:#DADDE2}
.gp-hero__sub strong{color:var(--gp-white)}
.gp-hero__cities ul{display:flex;flex-wrap:wrap;gap:.25rem 1.1rem;margin:0;padding:0;list-style:none;font-size:.75rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gp-night-400)}
.gp-hero__cities li+li::before{content:"•";margin-right:1.1rem;color:var(--gp-orange)}
.gp .gp-hero__tag .elementor-heading-title{margin-top:.9rem;font:italic clamp(1.4rem,2.4vw,2.1rem)/1.1 var(--gp-f-accent);color:var(--gp-parquet);text-transform:none}
.gp .gp-back .elementor-heading-title{font-size:.9rem;margin-bottom:1rem}
.gp .gp-back a{color:#DADDE2;text-decoration:none}
.gp .gp-back a:hover{color:var(--gp-white)}

/* Tabellone countdown */
.gp .e-con.gp-board{position:relative;background:linear-gradient(180deg,#141922,#0B0E13);border:1px solid #2A3240;box-shadow:0 30px 80px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.06);max-width:440px;color:var(--gp-paper)}
.gp .e-con.gp-board::before{content:"";position:absolute;inset:6px;border:1px dashed rgba(233,183,122,.18);pointer-events:none}
.gp .gp-board__top .elementor-heading-title{display:flex;justify-content:space-between;gap:1rem;font-size:.7rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gp-parquet)}
.gp-board__live{display:inline-flex;align-items:center;gap:.45rem;color:var(--gp-orange)}
.gp-board__live::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gp-orange);animation:gp-pulse 1.8s infinite}
@keyframes gp-pulse{0%{box-shadow:0 0 0 0 rgba(255,90,31,.7)}70%{box-shadow:0 0 0 10px rgba(255,90,31,0)}100%{box-shadow:0 0 0 0 rgba(255,90,31,0)}}
.gp .e-con.gp-board__teams{border-block:1px solid #2A3240;padding:.8rem 0!important}
.gp .gp-board__team .elementor-heading-title{font:900 2.4rem/1 var(--gp-f-display)!important;text-align:center;color:var(--gp-white)}
.gp-board__team small{display:block;font:500 .72rem/1.4 var(--gp-f-body);color:var(--gp-night-400);margin-top:.25rem}
.gp .gp-board__vs .elementor-heading-title{font:italic 1.4rem/1 var(--gp-f-accent)!important;color:var(--gp-orange)}
.gp .gp-board__where .elementor-heading-title{font-weight:500;font-size:.78rem;color:var(--gp-night-400);text-align:center;margin-top:.6rem}
.gp .e-con.gp-count__cell{background:#07090C radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px) 0 0/4px 4px;border:1px solid #232A36;text-align:center;padding:.55rem .2rem .45rem!important}
.gp .gp-count__num .elementor-heading-title{font:900 clamp(2rem,3.2vw,2.75rem)/1 var(--gp-f-display)!important;color:var(--gp-orange);text-shadow:0 0 14px rgba(255,90,31,.55);font-variant-numeric:tabular-nums;text-align:center}
.gp .gp-count__unit .elementor-heading-title{font-size:.66rem!important;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gp-night-400);text-align:center}
.gp-cd-end{display:none}
.gp .gp-cd-end .elementor-heading-title{font:900 1.6rem/1 var(--gp-f-display)!important;text-transform:uppercase;color:var(--gp-orange)}
.gp-countdown.is-ended .gp-cd-end{display:block}
.gp-countdown.is-ended .gp-count__row{display:none!important}

/* ---------- Ticker ---------- */
.gp .e-con.gp-ticker{background:var(--gp-orange);color:var(--gp-night);overflow:hidden;border-block:2px solid var(--gp-night);flex-wrap:nowrap}
.gp .e-con.gp-ticker__track{width:max-content;max-width:none;flex:none;animation:gp-marquee 40s linear infinite}
.gp .gp-ticker:hover .gp-ticker__track{animation-play-state:paused}
.gp .gp-ticker__item{flex:none;width:auto!important}
.gp .gp-ticker__item .elementor-heading-title{font:900 1.35rem/1 var(--gp-f-display)!important;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;padding:.95rem .7rem;color:var(--gp-night)}
.gp-star{display:inline-block;margin-left:1.2rem;font-size:.9em}
@keyframes gp-marquee{to{transform:translateX(-100%)}}

/* ---------- Trust bar ---------- */
.gp .e-con.gp-trust{background:var(--gp-night);border-bottom:1px solid var(--gp-night-700)}
.gp .e-con.gp-trust__item{padding:1.3rem 1.25rem!important;border-left:1px solid var(--gp-night-700)}
.gp .e-con.gp-trust__item:first-child{border-left:0}
.gp .gp-trust__box .elementor-icon-box-wrapper{display:flex;align-items:center;gap:.9rem;text-align:left}
.gp .gp-trust__box .elementor-icon-box-icon{margin:0!important}
.gp .gp-trust__box .elementor-icon{font-size:26px;color:var(--gp-parquet);fill:var(--gp-parquet)}
.gp .gp-trust__box .elementor-icon svg{width:26px;height:26px;fill:var(--gp-parquet)}
.gp .gp-trust__box .elementor-icon-box-title{font:700 .95rem/1.3 var(--gp-f-body)!important;text-transform:none;color:var(--gp-white);margin:0}
.gp .gp-trust__box .elementor-icon-box-description{font-size:.85rem;color:var(--gp-night-400);margin:0}

/* ---------- Numeri (Counter) ---------- */
.gp .e-con.gp-stats{border-top:2px solid var(--gp-ink);margin-top:1.5rem}
.gp .gp-stat{flex:1;padding-top:1.5rem}
.gp .gp-stat .elementor-counter{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:.4rem}
.gp .gp-stat .elementor-counter-number-wrapper{font:900 clamp(2.75rem,5vw,4.5rem)/.9 var(--gp-f-display);color:var(--gp-ink);justify-content:flex-start;white-space:nowrap}
.gp .gp-stat .elementor-counter-title{font:700 .78rem/1.2 var(--gp-f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--gp-ink-600);text-align:left}

/* ---------- Card "biglietto" ---------- */
.gp .e-con.gp-ticket{--sx:50%;--sy:50%;position:relative;filter:drop-shadow(0 18px 30px rgba(13,17,23,.18));transition:transform .45s var(--gp-ease),filter .45s var(--gp-ease)}
.gp .e-con.gp-ticket:hover{transform:translateY(-8px) rotate(-.4deg);filter:drop-shadow(0 30px 45px rgba(13,17,23,.3))}
@media (min-width:1025px){.gp .e-con.gp-ticket--offset{margin-top:7rem}}
.gp .e-con.gp-ticket__media{position:relative;aspect-ratio:4/4.3;overflow:hidden;background:var(--gp-night);justify-content:flex-end}
.gp .gp-ticket__img{position:absolute!important;inset:0;width:100%!important;height:100%;margin:0!important;z-index:0}
.gp .gp-ticket__img a{display:block;height:100%}
.gp .gp-ticket__img img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;transition:transform .9s var(--gp-ease)}
.gp .gp-ticket:hover .gp-ticket__img img{transform:scale(1.06)}
.gp .e-con.gp-ticket__media::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:
  radial-gradient(420px circle at var(--sx) var(--sy),rgba(255,255,255,.14),transparent 60%),
  linear-gradient(0deg,rgba(13,17,23,.92) 0%,rgba(13,17,23,.2) 45%,rgba(13,17,23,.35) 100%)}
.gp .gp-ticket__badge{position:absolute!important;top:1.1rem;left:1.1rem;z-index:2;width:auto!important}
.gp .gp-ticket__badge .elementor-heading-title{background:var(--gp-paper);color:var(--gp-night);font-size:.72rem!important;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.45rem .75rem;border-radius:999px}
.gp .gp-ticket__badge--x .elementor-heading-title{background:var(--gp-orange)}
.gp .gp-ticket__num{position:absolute!important;right:1.1rem;top:.6rem;z-index:2;width:auto!important}
.gp .gp-ticket__num .elementor-heading-title{font:900 clamp(5rem,9vw,8rem)/1 var(--gp-f-display)!important;color:transparent;-webkit-text-stroke:1.5px rgba(246,243,238,.55)}
.gp .e-con.gp-ticket__head{position:relative;z-index:2;padding:0 1.4rem 1.3rem!important}
.gp .gp-ticket__city .elementor-heading-title{font-size:clamp(2.75rem,5.4vw,5rem)!important;line-height:.86!important;color:var(--gp-white)}
.gp .gp-ticket__city a{color:var(--gp-white)!important;text-decoration:none}
.gp .gp-ticket__tag .elementor-heading-title{margin-top:.5rem;font:italic 1.35rem/1.1 var(--gp-f-accent)!important;color:var(--gp-parquet)}
.gp .e-con.gp-ticket__stub{position:relative;background:var(--gp-night);color:var(--gp-paper);
  -webkit-mask:radial-gradient(circle 12px at 0 0,transparent 98%,#000) top left/51% 100% no-repeat,radial-gradient(circle 12px at 100% 0,transparent 98%,#000) top right/51% 100% no-repeat;
          mask:radial-gradient(circle 12px at 0 0,transparent 98%,#000) top left/51% 100% no-repeat,radial-gradient(circle 12px at 100% 0,transparent 98%,#000) top right/51% 100% no-repeat}
.gp .e-con.gp-ticket__stub::before{content:"";position:absolute;left:18px;right:18px;top:0;border-top:2px dashed rgba(233,183,122,.45)}
.gp .gp-ticket__meta{flex:1 1 220px}
.gp .gp-ticket__meta dl{display:grid;grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:0;font-size:.92rem}
.gp .gp-ticket__meta dt{font-size:.66rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gp-night-400);padding-top:.2rem}
.gp .gp-ticket__meta dd{margin:0;font-weight:700;color:var(--gp-paper)}
.gp .gp-ticket__price .elementor-heading-title{text-align:right}
.gp-ticket__price small{display:block;font-size:.66rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gp-night-400)}
.gp-ticket__price strong{display:block;font:900 clamp(2.4rem,3.6vw,3.2rem)/.9 var(--gp-f-display);color:var(--gp-orange);font-variant-numeric:tabular-nums}
.gp-ticket__price span{font-weight:500;font-size:.78rem;color:var(--gp-night-400)}
.gp .e-con.gp-ticket__go{width:100%;padding-top:.9rem!important;border-top:1px solid var(--gp-night-700)}
.gp .gp-ticket__link .elementor-button{background:none;padding:0;min-height:44px;color:var(--gp-paper);font:800 1rem/1 var(--gp-f-body);border:0}
.gp .gp-ticket__link .elementor-button:hover{background:none;color:var(--gp-orange)}
.gp .gp-ticket__link .elementor-button-icon svg{width:1em;height:1em;fill:currentColor;transition:transform .3s var(--gp-ease)}
.gp .gp-ticket:hover .gp-ticket__link .elementor-button-icon svg{transform:translateX(5px)}
.gp .gp-ticket__code{width:120px!important;flex:none}
.gp .gp-ticket__code .elementor-spacer-inner{height:22px!important;background:repeating-linear-gradient(90deg,var(--gp-paper) 0 2px,transparent 2px 4px,var(--gp-paper) 4px 5px,transparent 5px 8px,var(--gp-paper) 8px 11px,transparent 11px 13px);opacity:.35;transition:opacity .3s}
.gp .gp-ticket:hover .gp-ticket__code .elementor-spacer-inner{opacity:.8}

/* ---------- Parquet lucido ---------- */
.gp .e-con.gp-parquet{position:relative;overflow:hidden;isolation:isolate;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 900' preserveAspectRatio='xMinYMid slice'%3E%3Crect x='-40' y='250' width='560' height='400' fill='rgba(255,90,31,.22)'/%3E%3Cg fill='none' stroke='rgba(255,255,255,.75)' stroke-width='5'%3E%3Crect x='-40' y='250' width='560' height='400'/%3E%3Cpath d='M520 290A160 160 0 0 1 520 610'/%3E%3Cpath d='M-40 60H120A390 390 0 0 1 120 840H-40'/%3E%3Cline x1='1180' y1='0' x2='1180' y2='900'/%3E%3Ccircle cx='1180' cy='450' r='170'/%3E%3C/g%3E%3C/svg%3E") left center/cover no-repeat,#DDA86C url("img/parquet.webp") center/1440px auto repeat}
.gp .e-con.gp-parquet::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:1;background:
  radial-gradient(ellipse 22% 10% at 18% 6%,rgba(255,255,255,.55),transparent 70%),
  radial-gradient(ellipse 22% 10% at 50% 4%,rgba(255,255,255,.45),transparent 70%),
  radial-gradient(ellipse 22% 10% at 82% 6%,rgba(255,255,255,.55),transparent 70%),
  linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,0) 35%,rgba(120,60,10,.18) 100%)}
.gp .e-con.gp-parquet::after{content:"";position:absolute;inset:-20% -40%;z-index:-1;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.28) 47%,rgba(255,255,255,.06) 52%,transparent 60%);transform:translateX(-30%)}
@supports (animation-timeline:view()){.gp .e-con.gp-parquet::after{animation:gp-sheen linear both;animation-timeline:view()}}
@keyframes gp-sheen{from{transform:translateX(-35%)}to{transform:translateX(35%)}}
.gp .e-con.gp-panel{background:rgba(246,243,238,.93);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 30px 60px rgba(60,30,5,.25)}
/* pila di biglietti */
.gp .e-con.gp-stack{position:relative;min-height:560px;display:block}
.gp .e-con.gp-mini{position:absolute;left:50%;width:min(380px,88%);background:var(--gp-night);color:var(--gp-paper);box-shadow:0 24px 50px rgba(60,30,5,.35);transition:transform .5s var(--gp-ease)}
.gp .e-con.gp-mini::after{content:"";position:absolute;right:92px;top:0;bottom:0;border-left:2px dashed rgba(233,183,122,.4)}
.gp .e-con.gp-mini:nth-child(1){top:0;transform:translateX(-58%) rotate(-7deg)}
.gp .e-con.gp-mini:nth-child(2){top:170px;transform:translateX(-44%) rotate(4deg);background:var(--gp-orange);color:var(--gp-night)}
.gp .e-con.gp-mini:nth-child(2)::after{border-color:rgba(13,17,23,.35)}
.gp .e-con.gp-mini:nth-child(3){top:340px;transform:translateX(-54%) rotate(-3deg);background:var(--gp-paper);color:var(--gp-night)}
.gp .e-con.gp-mini:nth-child(3)::after{border-color:rgba(13,17,23,.25)}
.gp .gp-stack:hover .e-con.gp-mini:nth-child(1){transform:translateX(-62%) rotate(-10deg)}
.gp .gp-stack:hover .e-con.gp-mini:nth-child(3){transform:translateX(-50%) rotate(0deg)}
.gp .gp-mini .elementor-heading-title{color:inherit}
.gp .gp-mini__who .elementor-heading-title{font-size:.7rem!important;font-weight:800;letter-spacing:.18em;text-transform:uppercase;opacity:.75}
.gp .gp-mini__trip .elementor-heading-title{font:900 1.9rem/1 var(--gp-f-display)!important;text-transform:uppercase;margin:.35rem 0 .2rem}
.gp .gp-mini__when .elementor-heading-title{font-weight:500;font-size:.85rem;opacity:.8}
.gp .gp-mini__price{position:absolute!important;right:0;top:0;bottom:0;width:92px!important;display:flex;align-items:center;justify-content:center}
.gp .gp-mini__price .elementor-heading-title{font:900 1.6rem/1 var(--gp-f-display)!important;writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap}
/* caratteristiche (icon box) */
.gp .gp-feat{border-top:1px solid rgba(13,17,23,.12);padding:1rem 0}
.gp .gp-feat .elementor-icon-box-wrapper{display:flex;gap:.9rem;text-align:left;align-items:flex-start}
.gp .gp-feat .elementor-icon-box-icon{margin:0!important}
.gp .gp-feat .elementor-icon svg{width:24px;height:24px;fill:var(--gp-orange-700)}
.gp .gp-feat .elementor-icon-box-title{font:700 1.05rem/1.3 var(--gp-f-body)!important;text-transform:none;margin:0 0 .15rem;color:var(--gp-ink)}
.gp .gp-feat .elementor-icon-box-description{color:#3F4550;font-size:.95rem;margin:0}
.gp .e-con.gp-total{background:var(--gp-night);color:var(--gp-paper)}
.gp .gp-total p{font-size:.9rem;margin:0}
.gp .gp-total span{color:#B7BDC6}
.gp .gp-total__n .elementor-heading-title{font:900 2.2rem/1 var(--gp-f-display)!important;color:var(--gp-orange);white-space:nowrap}

/* ---------- Calendario ---------- */
.gp .e-con.gp-cal{background-color:var(--gp-night);background-image:radial-gradient(rgba(255,255,255,.045) 1.2px,transparent 1.3px);background-size:14px 14px}
.gp .gp-filter .elementor-button{min-height:44px;padding:.6rem 1.1rem;background:transparent;color:var(--gp-paper);border:1px solid var(--gp-night-700);font-size:.9rem}
.gp .gp-filter .elementor-button:hover{border-color:var(--gp-paper)}
.gp .gp-filter.is-on .elementor-button{background:var(--gp-orange);border-color:var(--gp-orange);color:var(--gp-night)}
.gp .e-con.gp-games{border-top:1px solid var(--gp-night-700)}
.gp .e-con.gp-game{border-bottom:1px solid var(--gp-night-700);transition:background .25s;flex-wrap:nowrap}
.gp .e-con.gp-game:hover{background:var(--gp-night-800)}
.gp .gp-game__date{width:5rem!important;flex:none}
.gp .gp-game__date .elementor-heading-title,.gp .gp-matchup__date .elementor-heading-title{display:flex;flex-direction:column}
.gp-game__date b,.gp-matchup__date b{font:900 3rem/.9 var(--gp-f-display);color:var(--gp-white)}
.gp-game__date span,.gp-matchup__date span{font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gp-orange)}
.gp .e-con.gp-game__info{flex:1}
.gp .gp-game__teams .elementor-heading-title{font-weight:800;font-size:clamp(1.05rem,1.6vw,1.3rem)!important;color:var(--gp-white)}
.gp-game__teams i,.gp-matchup__teams i{font-style:normal;font-weight:500;color:var(--gp-night-400);margin:0 .4rem;font-size:.85em}
.gp .gp-game__where .elementor-heading-title{font-weight:500;font-size:.9rem;color:var(--gp-night-400)}
.gp .gp-game__link{width:auto!important;flex:none}
.gp .gp-game__link .elementor-heading-title a{font-size:.9rem;font-weight:800;text-decoration:none;white-space:nowrap;border-bottom:2px solid var(--gp-orange);padding-bottom:2px;color:var(--gp-paper)}
.gp .gp-head__p{max-width:40ch}

/* ---------- Come funziona ---------- */
.gp .e-con.gp-step{border-top:2px solid var(--gp-ink);padding-top:1.5rem!important}
.gp .gp-step__num .elementor-heading-title{font:900 4.5rem/.9 var(--gp-f-display)!important;color:var(--gp-orange)}

/* ---------- FAQ (widget Accordion) ---------- */
.gp .gp-acc .elementor-accordion .elementor-accordion-item{border:0;border-top:1px solid var(--gp-line)}
.gp .gp-acc .elementor-accordion .elementor-accordion-item:last-child{border-bottom:1px solid var(--gp-line)}
.gp .gp-acc .elementor-accordion .elementor-tab-title{padding:1.3rem 0;display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:1rem;border:0}
.gp .gp-acc .elementor-accordion .elementor-tab-title a,.gp .gp-acc .elementor-accordion-title{font:800 1.1rem/1.35 var(--gp-f-body);text-transform:none;letter-spacing:0;color:var(--gp-ink)}
.gp .gp-acc .elementor-accordion .elementor-tab-title.elementor-active a{color:var(--gp-orange-700)}
.gp .gp-acc .elementor-accordion-icon svg{width:14px;height:14px;fill:var(--gp-ink)}
.gp .gp-acc .elementor-accordion .elementor-tab-content{padding:0 0 1.3rem;border:0;color:#3F4550;max-width:62ch}
.gp .gp-acc .elementor-accordion-icon{margin:0!important;width:auto}

/* ---------- CTA finale + form ---------- */
.gp .e-con.gp-final{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000'%3E%3Cg fill='none' stroke='rgba(13,17,23,.14)' stroke-width='3'%3E%3Ccircle cx='500' cy='500' r='300'/%3E%3Ccircle cx='500' cy='500' r='110'/%3E%3Cline x1='500' y1='0' x2='500' y2='1000'/%3E%3C/g%3E%3C/svg%3E") -8% 50%/min(70vw,980px) auto no-repeat,var(--gp-orange);color:var(--gp-night)}
.gp .gp-final .gp-eyebrow .elementor-heading-title{color:var(--gp-night)}
.gp .gp-final__title .elementor-heading-title{font-size:clamp(3rem,7vw,7rem)!important;line-height:.85!important}
.gp .gp-formw,.gp .e-con.gp-contact__form .gp-formw{background:var(--gp-white);padding:clamp(1.5rem,3vw,2.5rem);box-shadow:0 30px 60px rgba(120,40,0,.25)}
.gp .gp-contact .gp-formw{box-shadow:0 30px 60px rgba(13,17,23,.12);border-top:6px solid var(--gp-orange)}
.gp .gp-formw .ff-el-input--label label{font:700 .85rem/1.3 var(--gp-f-body);color:var(--gp-ink)}
.gp .gp-formw .ff-el-form-control{font:500 1rem var(--gp-f-body);min-height:48px;padding:.7rem .85rem;border:1.5px solid var(--gp-line);background:var(--gp-paper);color:var(--gp-ink);border-radius:4px}
.gp .gp-formw .ff-el-form-control:focus{border-color:var(--gp-night);box-shadow:none}
.gp .gp-formw .ff-el-form-check-label{font-size:.82rem;color:var(--gp-ink-600)}
.gp .gp-formw .ff-btn-submit,.gp .gp-formw button.ff-btn{background:var(--gp-night)!important;color:var(--gp-paper)!important;border:0;border-radius:0;font:800 1rem/1 var(--gp-f-body);min-height:52px;padding:.95rem 1.6rem}
.gp .gp-formw .ff-btn-submit:hover{background:var(--gp-night-700)!important}

/* ---------- Pagine viaggio ---------- */
.gp .e-con.gp-facts{position:relative;z-index:3;margin-top:-3.5rem;background:transparent}
.gp .e-con.gp-facts__row{background:var(--gp-night);color:var(--gp-paper);box-shadow:0 24px 50px rgba(13,17,23,.25);
  -webkit-mask:radial-gradient(circle 10px at 0 50%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 10px at 100% 50%,transparent 98%,#000) right/51% 100% no-repeat;
          mask:radial-gradient(circle 10px at 0 50%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 10px at 100% 50%,transparent 98%,#000) right/51% 100% no-repeat}
.gp .e-con.gp-fact{border-left:2px dashed rgba(233,183,122,.3)}
.gp .e-con.gp-fact:first-child{border-left:0}
.gp .gp-fact__k .elementor-heading-title{font-size:.68rem!important;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gp-orange)}
.gp .gp-fact__v .elementor-heading-title{font-weight:700;color:var(--gp-paper)}
.gp-fact__v small{display:block;font-weight:500;color:var(--gp-night-400);font-size:.82rem}
.gp .e-con.gp-summary{background:var(--gp-white);border:1px solid var(--gp-line);position:relative;margin-top:.5rem}
.gp .e-con.gp-summary::before{content:"In breve";position:absolute;top:-.7rem;left:1.5rem;background:var(--gp-orange);color:var(--gp-night);font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;padding:.3rem .6rem;line-height:1.2}
.gp .gp-summary p{font-size:1.05rem}
.gp .gp-trip__h2{margin-top:1.5rem}
.gp .gp-prose__text p{font-size:1.06rem;color:#2F343D}
.gp .gp-kicker .elementor-heading-title{font:italic 1.8rem/1.15 var(--gp-f-accent)!important;color:var(--gp-orange-700)}
.gp .e-con.gp-exps{border-bottom:1px solid var(--gp-line);margin-top:1rem}
.gp .e-con.gp-exp{border-top:1px solid var(--gp-line)}
.gp .gp-exp__num{width:6rem!important;flex:none}
.gp .gp-exp__num .elementor-heading-title{font:900 5.5rem/.8 var(--gp-f-display)!important;color:transparent;-webkit-text-stroke:2px var(--gp-orange);transition:color .4s var(--gp-ease)}
.gp .gp-exp:hover .gp-exp__num .elementor-heading-title{color:var(--gp-orange)}
.gp .e-con.gp-exp__body{flex:1}
.gp .e-con.gp-exp__body p{color:#3F4550}
.gp .e-con.gp-matchup{background:var(--gp-night) radial-gradient(rgba(255,255,255,.05) 1.2px,transparent 1.3px) 0 0/12px 12px;color:var(--gp-paper);flex-wrap:nowrap}
.gp .gp-matchup__date{width:auto!important;border-right:2px dashed rgba(233,183,122,.35);padding-right:1.25rem;flex:none}
.gp .e-con.gp-matchup__info{flex:1}
.gp .gp-matchup__teams .elementor-heading-title{font:900 clamp(1.4rem,2.4vw,2rem)/1 var(--gp-f-display)!important;text-transform:uppercase;color:var(--gp-white)}
.gp-matchup__teams i{font:italic 1.1rem var(--gp-f-accent);color:var(--gp-orange);text-transform:none}
.gp .gp-matchup__where .elementor-heading-title{font-weight:500;color:var(--gp-night-400);font-size:.9rem}
.gp .gp-matchup__abbr{width:auto!important;flex:none}
.gp .gp-matchup__abbr .elementor-heading-title{font:900 1.2rem/1 var(--gp-f-display)!important;letter-spacing:.1em;color:var(--gp-parquet);border:1px solid #2A3240;padding:.6rem .8rem}
.gp .e-con.gp-incl__box{background:var(--gp-white);border:1px solid var(--gp-line)}
.gp .e-con.gp-incl__box--no{background:transparent;border-style:dashed}
.gp .e-con.gp-incl__box h3{font-size:1.5rem}
.gp .gp-ticklist .elementor-icon-list-item{padding:.6rem 0!important;border-top:1px solid var(--gp-line);align-items:flex-start!important;font-size:.98rem;line-height:1.45}
.gp .gp-ticklist .elementor-icon-list-item:first-child{border-top:0}
.gp .gp-ticklist .elementor-icon-list-icon{width:18px;height:18px;min-width:18px;border-radius:50%;background:var(--gp-orange);display:flex;align-items:center;justify-content:center;margin:.15rem .75rem 0 0}
.gp .gp-ticklist .elementor-icon-list-icon svg{width:10px!important;height:10px!important;fill:var(--gp-night)!important}
.gp .gp-ticklist--no .elementor-icon-list-icon{background:var(--gp-paper-2)}
.gp .gp-ticklist--no .elementor-icon-list-icon svg{fill:var(--gp-ink-600)!important}
.gp .gp-ticklist--star .elementor-icon-list-icon{background:none}
.gp .gp-ticklist--star .elementor-icon-list-icon svg{width:16px!important;height:16px!important;fill:var(--gp-orange-700)!important}
.gp .gp-ticklist--star .elementor-icon-list-item{border-color:rgba(13,17,23,.12);font-weight:700}
.gp .gp-ticklist .elementor-icon-list-text{color:var(--gp-ink)}
/* card prezzi */
.gp .e-con.gp-trip-aside{position:sticky;top:110px;align-self:flex-start}
.gp .e-con.gp-pricecard{background:var(--gp-night);color:var(--gp-paper);box-shadow:0 30px 60px rgba(13,17,23,.25)}
.gp .e-con.gp-pricecard__top{background:linear-gradient(135deg,rgba(255,90,31,.18),transparent 60%)}
.gp .gp-pricecard .gp-eyebrow .elementor-heading-title{color:var(--gp-orange)}
.gp .gp-pricecard__title .elementor-heading-title{font:900 2.4rem/.9 var(--gp-f-display)!important;text-transform:uppercase;color:var(--gp-white)}
.gp .e-con.gp-pricecard__rows{position:relative}
.gp .e-con.gp-pricecard__rows::before{content:"";position:absolute;left:0;right:0;top:0;border-top:2px dashed rgba(233,183,122,.4)}
.gp .e-con.gp-price-row{border-bottom:1px solid var(--gp-night-700)}
.gp .e-con.gp-price-row:last-child{border-bottom:0}
.gp .gp-price-row__k .elementor-heading-title{font-weight:500;font-size:.92rem;color:#C9CED6}
.gp .gp-price-row__k,.gp .gp-price-row__v{width:auto!important}
.gp .gp-price-row__v .elementor-heading-title{font:900 2rem/1 var(--gp-f-display)!important;color:var(--gp-white);font-variant-numeric:tabular-nums}
.gp .e-con.gp-price-row:first-child .gp-price-row__v .elementor-heading-title{color:var(--gp-orange);font-size:2.4rem!important}
.gp .gp-pricecard__note .elementor-heading-title{font-weight:500;font-size:.8rem;color:var(--gp-night-400);text-align:center}
/* contatti */
.gp .gp-contact__list .elementor-icon-list-item{padding:1rem 0!important;border-top:1px solid var(--gp-line)}
.gp .gp-contact__list .elementor-icon-list-icon svg{width:22px!important;height:22px!important;fill:var(--gp-orange-700)!important}
.gp .gp-contact__list .elementor-icon-list-text{font-weight:800;color:var(--gp-ink)}
.gp .gp-disclaimer{font-size:.85rem;color:var(--gp-ink-600);border-left:3px solid var(--gp-parquet);padding-left:1rem}

/* ---------- Barra fissa mobile (stampata da functions.php) ---------- */
.gp-mbar{display:none}
@media (max-width:767px){
  .gp-mbar{position:fixed;left:0;right:0;bottom:0;z-index:99;display:block;padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom));background:rgba(13,17,23,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--gp-night-700)}
  .gp-mbar a{display:flex;align-items:center;justify-content:center;min-height:48px;font:800 .95rem/1 var(--gp-f-body);text-decoration:none;background:var(--gp-orange);color:var(--gp-night)!important}
  body.gp{padding-bottom:72px}
}

/* ---------- Motion ---------- */
.gp-js .gp-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--gp-ease),transform .8s var(--gp-ease)}
.gp-js .gp-reveal.gp-d1{transition-delay:90ms}.gp-js .gp-reveal.gp-d2{transition-delay:180ms}.gp-js .gp-reveal.gp-d3{transition-delay:270ms}
.gp-js .gp-reveal.is-in{opacity:1;transform:none}
.gp-js .e-con.gp-ticket.gp-reveal.is-in:hover{transform:translateY(-8px) rotate(-.4deg)}
.elementor-editor-active .gp-reveal{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){
  .gp *,.gp *::before,.gp *::after{animation:none!important;transition:none!important}
  .gp-line>span{transform:none}
  .gp-court *{stroke-dashoffset:0}
  .gp-outline{background-position:0 0;-webkit-text-stroke-color:var(--gp-orange)}
  .gp-js .gp-reveal{opacity:1;transform:none}
}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .gp-court{width:110vw;right:-30vw;top:34%}
  .gp .e-con.gp-trip-aside{position:static;order:-1}
  .gp .e-con.gp-trust__item:nth-child(3){border-left:0}
  .gp .gp-hero__title .elementor-heading-title{font-size:clamp(3.25rem,11vw,6rem)}
}
@media (max-width:767px){
  .gp .e-con.gp-trust__item{border-left:0;border-top:1px solid var(--gp-night-700);padding:1rem 0!important}
  .gp .e-con.gp-trust__item:first-child{border-top:0}
  .gp .e-con.gp-facts{margin-top:-2rem}
  .gp .e-con.gp-facts__row{-webkit-mask:none;mask:none}
  .gp .e-con.gp-fact{border-left:0;border-top:2px dashed rgba(233,183,122,.3)}
  .gp .e-con.gp-fact:first-child{border-top:0}
  .gp .gp-ticket__price .elementor-heading-title{text-align:left}
  .gp-ticket__price small,.gp-ticket__price strong{display:inline;margin-right:.5rem}
  .gp .e-con.gp-game{flex-wrap:wrap}
  .gp .gp-game__date{width:4rem!important}
  .gp .gp-game__link{margin-left:5.5rem}
  .gp .e-con.gp-stack{min-height:430px}
  .gp .e-con.gp-mini{width:86%}
  .gp .e-con.gp-mini:nth-child(2){top:130px}.gp .e-con.gp-mini:nth-child(3){top:260px}
  .gp .gp-mini__trip .elementor-heading-title{font-size:1.5rem!important}
  .gp .gp-exp__num .elementor-heading-title{font-size:3.5rem!important}
  .gp .e-con.gp-exp{flex-direction:column}
  .gp .e-con.gp-matchup{flex-wrap:wrap}
  .gp .gp-matchup__abbr{display:none}
  .gp .gp-board__team .elementor-heading-title{font-size:2rem!important}
  .gp .gp-final__title .elementor-heading-title{font-size:3.2rem!important}
}

/* ---------- Aggiunte ---------- */
.gp-line>span.gp-outline{animation:gp-rise .9s var(--gp-ease) .27s forwards,gp-fill 1.4s 1.1s var(--gp-ease) forwards}
.tbu-foot-claim{font-family:var(--gp-f-display);font-weight:900;font-size:40px;line-height:.9;text-transform:uppercase;color:var(--gp-paper)}
.tbu-foot-claim span{display:block;color:var(--gp-orange)}
.tbu-foot-h{color:var(--gp-paper);font-weight:800;letter-spacing:.14em;font-size:12px;text-transform:uppercase;margin-bottom:.5rem}
body.gp .gp-formw form .ff-btn.ff-btn-submit.ff_btn_style{background-color:var(--gp-night)!important;border-color:var(--gp-night)!important;color:var(--gp-paper)!important;border-radius:0!important;font:800 1rem/1 var(--gp-f-body)!important;min-height:52px;padding:.95rem 1.6rem!important}
body.gp .gp-formw form .ff-btn.ff-btn-submit.ff_btn_style:hover{background-color:var(--gp-night-700)!important;opacity:1}
body.gp .site-footer .ast-builder-social-element.ast-whatsapp{background:#25D366;border-radius:50%;width:44px;height:44px;justify-content:center;align-items:center}
body.gp .site-footer .ast-builder-social-element.ast-whatsapp svg{fill:var(--gp-night)!important;width:20px;height:20px}
body.gp .site-footer .ast-builder-html-element p{margin-bottom:.75rem}
body.gp .site-footer .tbu-foot-claim{margin-bottom:1rem}
.gp .e-con.gp-summary::before{inset:auto;top:-.7rem;left:1.5rem;right:auto;bottom:auto;width:auto;height:auto;z-index:2}
.gp .e-con.gp-count__row{flex-wrap:nowrap!important}
.gp .e-con.gp-count__cell{flex:1 1 0;width:auto!important;min-width:0}
@media (max-width:767px){
  body.gp #ast-scroll-top{bottom:84px}
  body.gp .site-footer .site-primary-footer-wrap,body.gp .site-footer .site-below-footer-wrap{padding-left:20px;padding-right:20px}
}
.gp .gp-feat .elementor-icon-box-wrapper,.gp .gp-trust__box .elementor-icon-box-wrapper{display:flex!important;flex-direction:row!important;text-align:left!important}
.gp .gp-feat .elementor-icon-box-icon,.gp .gp-trust__box .elementor-icon-box-icon{display:block!important;flex:none}
body.gp .ast-above-header-wrap .ast-builder-social-element svg{fill:#25D366!important}
body.gp .ast-above-header-wrap .ast-builder-social-element .social-item-label{color:var(--gp-paper)!important;font-size:13px;font-weight:700}

/* ---------- Pagine viaggio · fatti rapidi come biglietto NBA (prova C) ---------- */
.gp .e-con.gp-tixwrap{padding-bottom:1rem}
.gp .e-con.gp-tix{flex-direction:row;flex-wrap:nowrap;gap:0;filter:drop-shadow(0 26px 40px rgba(13,17,23,.35));transform:rotate(-.6deg);transition:transform .5s var(--gp-ease)}
.gp .e-con.gp-tix:hover{transform:rotate(0) translateY(-4px)}
.gp .e-con.gp-tix__main{flex:1 1 auto;width:auto;min-width:0;color:var(--gp-night);gap:0;
  background:repeating-linear-gradient(45deg,rgba(13,17,23,.045) 0 1px,transparent 1px 8px),repeating-linear-gradient(-45deg,rgba(13,17,23,.03) 0 1px,transparent 1px 8px),var(--gp-paper);
  -webkit-mask:radial-gradient(circle 14px at 0 58%,#0000 13.5px,#000 14px),radial-gradient(circle 13px at 100% 0,#0000 12.5px,#000 13px),radial-gradient(circle 13px at 100% 100%,#0000 12.5px,#000 13px);
  -webkit-mask-composite:source-in;
          mask:radial-gradient(circle 14px at 0 58%,#0000 13.5px,#000 14px),radial-gradient(circle 13px at 100% 0,#0000 12.5px,#000 13px),radial-gradient(circle 13px at 100% 100%,#0000 12.5px,#000 13px);
          mask-composite:intersect}
.gp .e-con.gp-tix__band{gap:1rem;padding:.7rem 1.75rem!important;background:var(--gp-parquet)}
.gp .gp-tix__band .elementor-widget{width:auto}
.gp .gp-tix__bt .elementor-heading-title{font:800 .7rem/1 var(--gp-f-body)!important;letter-spacing:.22em;text-transform:uppercase;color:var(--gp-night)}
.gp .gp-tix__brand .elementor-heading-title{font:900 1rem/1 var(--gp-f-display)!important;letter-spacing:.08em;text-transform:uppercase;color:var(--gp-night)}
.gp .e-con.gp-tix__body{display:grid;grid-template-columns:minmax(0,1.05fr) repeat(3,minmax(0,1fr));gap:0;padding:1.4rem 1.75rem 1.1rem!important}
.gp .e-con.gp-tix__cell{width:auto;border:2px solid var(--gp-night);margin-left:-2px;padding:.7rem 1rem .8rem!important;min-height:104px}
.gp .e-con.gp-tix__cell:first-child{margin-left:0}
.gp .gp-tix__k .elementor-heading-title{font:800 .64rem/1 var(--gp-f-body)!important;letter-spacing:.2em;text-transform:uppercase;color:var(--gp-orange-700)}
.gp .gp-tix__v .elementor-heading-title{font:900 clamp(1.35rem,1.9vw,1.85rem)/.98 var(--gp-f-display)!important;text-transform:uppercase;color:var(--gp-night)}
.gp .gp-tix__v small{display:block;margin-top:.3rem;font:600 .8rem/1.2 var(--gp-f-body);text-transform:none;letter-spacing:0;opacity:.75}
.gp .gp-tix__v i{font:italic 400 1rem/1 var(--gp-f-accent);text-transform:none;color:var(--gp-orange-700);margin:0 .15rem}
.gp .e-con.gp-tix__fine{gap:1rem;padding:0 1.75rem 1rem!important}
.gp .gp-tix__fine .elementor-widget{width:auto}
.gp .gp-tix__f .elementor-heading-title{font:600 .68rem/1.3 var(--gp-f-body)!important;letter-spacing:.12em;text-transform:uppercase;color:var(--gp-orange-700)}
.gp .e-con.gp-tix__stub{position:relative;width:230px;flex:none;gap:.6rem;padding:1.1rem 1.25rem 1rem!important;background:var(--gp-night);color:var(--gp-paper);text-align:center;
  -webkit-mask:radial-gradient(circle 13px at 0 0,#0000 12.5px,#000 13px),radial-gradient(circle 13px at 0 100%,#0000 12.5px,#000 13px),radial-gradient(circle 14px at 100% 58%,#0000 13.5px,#000 14px);
  -webkit-mask-composite:source-in;
          mask:radial-gradient(circle 13px at 0 0,#0000 12.5px,#000 13px),radial-gradient(circle 13px at 0 100%,#0000 12.5px,#000 13px),radial-gradient(circle 14px at 100% 58%,#0000 13.5px,#000 14px);
          mask-composite:intersect}
.gp .e-con.gp-tix__stub::before{content:"";display:block;position:absolute;inset:18px auto 18px 0;width:0;height:auto;background:none;opacity:1;border-radius:0;border-left:3px dotted var(--gp-paper)}
.gp .gp-tix__stub .elementor-widget{width:auto}
.gp .gp-tix__admit .elementor-heading-title{font:900 .95rem/1 var(--gp-f-display)!important;letter-spacing:.3em;text-transform:uppercase;padding:.35rem .6rem;border:2px solid currentColor;color:var(--gp-paper)}
.gp .gp-tix__price .elementor-heading-title{display:flex;flex-direction:column;align-items:center;color:var(--gp-paper)}
.gp .gp-tix__price small{font:800 .62rem/1 var(--gp-f-body);letter-spacing:.2em;text-transform:uppercase;opacity:.7}
.gp .gp-tix__price strong{font:900 2.7rem/.95 var(--gp-f-display);color:var(--gp-orange);font-variant-numeric:tabular-nums}
.gp .gp-tix__price span{font:500 .72rem/1.2 var(--gp-f-body);opacity:.7}
.gp .gp-tix__stub .gp-tix__code{width:100%}
.gp .gp-tix__code .elementor-spacer-inner{height:30px!important;background:repeating-linear-gradient(90deg,var(--gp-paper) 0 2px,transparent 2px 4px,var(--gp-paper) 4px 5px,transparent 5px 8px,var(--gp-paper) 8px 11px,transparent 11px 13px,var(--gp-paper) 13px 14px,transparent 14px 17px);opacity:.85}
.gp .gp-tix__no .elementor-heading-title{font:700 .62rem/1 var(--gp-f-body)!important;letter-spacing:.22em;text-transform:uppercase;color:var(--gp-paper);opacity:.7}
@media (max-width:1024px){
  .gp .e-con.gp-tix__body{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gp .e-con.gp-tix__cell:nth-child(3){margin-left:0}
  .gp .e-con.gp-tix__cell:nth-child(n+3){margin-top:-2px}
}
@media (max-width:767px){
  .gp .e-con.gp-tix{flex-direction:column;transform:none}
  .gp .e-con.gp-tix__band{flex-wrap:wrap;padding:.7rem 1.25rem!important}
  .gp .gp-tix__bt--r{display:none}
  .gp .e-con.gp-tix__body{grid-template-columns:1fr;padding:1.1rem 1.25rem .9rem!important}
  .gp .e-con.gp-tix__cell{margin-left:0!important;margin-top:-2px;min-height:0}
  .gp .e-con.gp-tix__cell:first-child{margin-top:0}
  .gp .e-con.gp-tix__fine{flex-direction:column;gap:.35rem;padding:0 1.25rem 1rem!important}
  .gp .e-con.gp-tix__main{-webkit-mask:radial-gradient(circle 13px at 0 100%,#0000 12.5px,#000 13px),radial-gradient(circle 13px at 100% 100%,#0000 12.5px,#000 13px);-webkit-mask-composite:source-in;mask:radial-gradient(circle 13px at 0 100%,#0000 12.5px,#000 13px),radial-gradient(circle 13px at 100% 100%,#0000 12.5px,#000 13px);mask-composite:intersect}
  .gp .e-con.gp-tix__stub{width:100%;flex-direction:row;flex-wrap:wrap;justify-content:space-between;
    -webkit-mask:radial-gradient(circle 13px at 0 0,#0000 12.5px,#000 13px),radial-gradient(circle 13px at 100% 0,#0000 12.5px,#000 13px);mask:radial-gradient(circle 13px at 0 0,#0000 12.5px,#000 13px),radial-gradient(circle 13px at 100% 0,#0000 12.5px,#000 13px)}
  .gp .e-con.gp-tix__stub::before{inset:0 18px auto 18px;border-left:0;border-top:3px dotted var(--gp-paper)}
  .gp .gp-tix__stub .gp-tix__code{width:100%;order:3}
  .gp .gp-tix__no{order:4}
}
@media (prefers-reduced-motion:reduce){.gp .e-con.gp-tix,.gp .e-con.gp-tix:hover{transform:none}}@media (max-width:1024px){.gp .gp-tix__bt--r{display:none}.gp .gp-tix__band .elementor-heading-title{white-space:nowrap}.gp .e-con.gp-tix__fine{flex-direction:column;gap:.35rem}}

/* ---------- Header Astra: link bianchi, niente contorno, tendina scura ---------- */
body.gp .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link,
body.gp .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link:visited,
body.gp .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link:focus,
body.gp .ast-builder-menu-1 .main-header-menu > .menu-item.focus > .menu-link{color:var(--gp-paper)}
body.gp .ast-builder-menu-1 .main-header-menu > .menu-item:hover > .menu-link,
body.gp .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link:focus-visible,
body.gp .ast-builder-menu-1 .main-header-menu > .menu-item.current-menu-item > .menu-link,
body.gp .ast-builder-menu-1 .main-header-menu > .menu-item.current-menu-ancestor > .menu-link{color:var(--gp-orange)}
body.gp .ast-builder-menu-1 .menu-item,
body.gp .ast-builder-menu-1 .menu-link,
body.gp .ast-builder-menu-1 .menu-link:focus,
body.gp .ast-builder-menu-1 .menu-item:focus-within{outline:0!important;border-color:transparent!important;box-shadow:none}
body.gp .ast-builder-menu-1 .menu-link:focus-visible{outline:2px solid var(--gp-orange)!important;outline-offset:-6px}
body.gp .ast-builder-menu-1 .menu-link .ast-icon svg,body.gp .ast-builder-menu-1 .menu-link .dropdown-menu-toggle{fill:currentColor;color:inherit}
body.gp.ast-desktop .ast-builder-menu-1 .main-header-menu .sub-menu{background:var(--gp-night-800);border:0!important;border-top:2px solid var(--gp-orange)!important;border-radius:0 0 6px 6px;box-shadow:0 24px 40px rgba(0,0,0,.4);padding:.4rem 0;width:260px}
body.gp .ast-builder-menu-1 .main-header-menu .sub-menu .menu-link,
body.gp .ast-builder-menu-1 .main-header-menu .sub-menu .menu-link:visited{color:var(--gp-paper)!important;background:transparent;padding:.8rem 1.25rem;font-weight:600;border:0!important;transition:color .2s,background-color .2s}
body.gp .ast-builder-menu-1 .main-header-menu .sub-menu .menu-item:hover > .menu-link,
body.gp .ast-builder-menu-1 .main-header-menu .sub-menu .menu-item.current-menu-item > .menu-link,
body.gp .ast-builder-menu-1 .main-header-menu .sub-menu .menu-link:focus-visible{color:var(--gp-orange)!important;background:var(--gp-night-700)}
body.gp .ast-builder-menu-1 .main-header-menu .sub-menu .menu-item + .menu-item{border-top:1px solid var(--gp-night-700)}

/* ---------- Hero home: centrato nello schermo (desktop) ---------- */
@media (min-width:1025px){
  .gp .e-con.gp-hero:not(.gp-hero--trip):not(.gp-hero--contact){--min-height:calc(100svh - 126px - var(--wp-admin--admin-bar--height,0px))!important;--padding-top:56px!important;--padding-bottom:56px!important;--align-items:center!important;min-height:max(600px,calc(100svh - 126px - var(--wp-admin--admin-bar--height,0px)))}
  .gp .gp-hero:not(.gp-hero--trip) .gp-hero__title .elementor-heading-title{font-size:clamp(3.5rem,min(10vw,17vh),10rem)}
}