/* VTS OVERRIDES — unico file CSS custom (consolidato) */
html, body { background: #06102a !important; }

/* ═══ KEYFRAMES ═══ */
@keyframes hotpulse{0%,100%{box-shadow:0 0 0 0 rgba(220,38,38,.65)}70%{box-shadow:0 0 0 10px rgba(220,38,38,0)}}
@keyframes vts-pulse-red{0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,.5)}50%{box-shadow:0 0 0 7px rgba(239,68,68,0)}}
@keyframes pulse-red{0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,.5)}50%{box-shadow:0 0 0 6px rgba(239,68,68,0)}}

/* ═══ GLOBAL HIDES ═══ */
#vts-categories{display:none!important}

/* ═══ SEZIONE IN EVIDENZA — wrapper & top ═══ */
.inevidenza-wrap{background:#1A3C8F;border-radius:32px;padding:36px;margin:40px 32px}
.inevidenza-top{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:28px}
.inevidenza-left{}
.inevidenza-eyebrow{display:none!important}
.inevidenza-h2{font-size:38px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:0.03em!important;color:#fff!important;line-height:1.05}
.inevidenza-h2 em{font-style:normal!important;color:#FFCC00!important}
.inevidenza-filters{display:flex;gap:8px;flex-wrap:wrap}

/* ═══ FILTRI ═══ */
.iev-filter{font-size:14px!important;font-weight:700!important;padding:12px 26px!important;border-radius:50px!important;min-height:44px!important;border:1.5px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:rgba(255,255,255,.7);cursor:pointer!important;transition:all .18s;font-family:inherit;letter-spacing:0.02em!important}
.iev-filter:hover{background:rgba(255,255,255,.12);color:#fff}
.iev-filter.active{background:#FFCC00;color:#0D2260;border-color:#FFCC00;font-weight:800}

/* ═══ GRID ═══ */
.inevidenza-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:14px!important}

/* ═══ IEV-CARD ═══ */
.iev-card{border-radius:18px!important;overflow:hidden!important;background:#0c1929!important;border:1px solid rgba(255,255,255,.07)!important;cursor:pointer!important;transition:transform .25s,box-shadow .25s!important;display:flex!important;flex-direction:column!important}
.iev-card:hover{transform:translateY(-5px)!important;box-shadow:0 16px 40px rgba(0,0,0,.45)!important}
.iev-card[data-filter]{display:flex!important}
.iev-card.hidden{display:none!important}

/* ═══ IEV-IMG ═══ */
.iev-img{position:relative!important;height:155px!important;overflow:hidden!important;flex-shrink:0!important}
.iev-img img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;transition:transform .4s!important}
.iev-card:hover .iev-img img{transform:scale(1.06)!important}
.iev-img-overlay{position:absolute!important;inset:0!important;background:linear-gradient(to bottom,rgba(0,0,0,.15) 0%,rgba(0,0,0,0) 30%,rgba(0,0,0,.7) 100%)!important}

/* ═══ BADGE ═══ */
.iev-badge-top{position:absolute!important;top:10px!important;left:10px!important;z-index:3!important;display:flex!important;gap:5px!important;flex-wrap:wrap!important}
.iev-bdg-hot{background:#dc2626!important;color:#fff!important;font-size:9px!important;font-weight:900!important;padding:4px 9px!important;border-radius:6px!important;letter-spacing:0.04em!important;text-transform:uppercase!important;animation:hotpulse 1.8s infinite!important;display:inline-block!important}
.iev-bdg-flash{background:#FFCC00!important;color:#0D2260!important;font-size:9px!important;font-weight:900!important;padding:4px 9px!important;border-radius:6px!important;letter-spacing:0.04em!important;text-transform:uppercase!important;display:inline-block!important}
.iev-bdg-early{background:#059669!important;color:#fff!important;font-size:9px!important;font-weight:900!important;padding:4px 9px!important;border-radius:6px!important;letter-spacing:0.04em!important;text-transform:uppercase!important;display:inline-block!important}
.iev-bdg-group{display:inline-flex!important;align-items:center!important;gap:4px!important;background:#7c3aed!important;color:#fff!important;font-size:9px!important;font-weight:900!important;padding:4px 9px!important;border-radius:6px!important;text-transform:uppercase!important}
.iev-bdg-theme{display:inline-flex!important;align-items:center!important;gap:4px!important;background:#0891b2!important;color:#fff!important;font-size:9px!important;font-weight:900!important;padding:4px 9px!important;border-radius:6px!important;text-transform:uppercase!important}
.iev-bdg-rated{display:inline-flex!important;align-items:center!important;gap:4px!important;background:#1A3C8F!important;color:#fff!important;font-size:9px!important;font-weight:900!important;padding:4px 9px!important;border-radius:6px!important;text-transform:uppercase!important}

/* ═══ VOLO BADGE ═══ */
.iev-fly-in{background:rgba(255,255,255,.18)!important;color:#fff!important;font-size:9px!important;font-weight:700!important;padding:3px 8px!important;border-radius:6px!important;border:1px solid rgba(255,255,255,.3)!important;white-space:nowrap!important;display:inline-block!important}
.iev-fly-out{background:rgba(0,0,0,.3)!important;color:rgba(255,255,255,.5)!important;font-size:9px!important;font-weight:700!important;padding:3px 8px!important;border-radius:6px!important;border:none!important;white-space:nowrap!important;display:inline-block!important}

/* ═══ TIMER ═══ */
.iev-timer-bot{position:absolute!important;bottom:8px!important;left:8px!important;right:8px!important;z-index:3!important}
.iev-timer{background:rgba(5,10,30,.8)!important;backdrop-filter:blur(8px)!important;border:1px solid rgba(255,204,0,.4)!important;border-radius:8px!important;padding:6px 10px!important;display:flex!important;align-items:center!important;gap:8px!important}
.iev-timer-lbl{font-size:8px!important;font-weight:700!important;color:rgba(255,204,0,.5)!important;text-transform:uppercase!important;letter-spacing:0.06em!important;white-space:nowrap!important}
.iev-timer-blocks{display:flex!important;align-items:center!important;gap:3px!important}
.iev-tb{display:flex!important;flex-direction:column!important;align-items:center!important;background:transparent!important;border-radius:4px!important;padding:2px 5px!important}
.iev-tn{font-size:13px!important;font-weight:900!important;color:#FFCC00!important;line-height:1!important}
.iev-tl{font-size:6px!important;color:rgba(255,204,0,.5)!important;font-weight:600!important;text-transform:uppercase!important}
.iev-tsep{color:rgba(255,204,0,.5)!important;font-weight:900!important;font-size:12px!important;margin-bottom:4px!important}

/* ═══ BODY CARD ═══ */
.iev-body{padding:12px 14px 14px!important;display:flex!important;flex-direction:column!important;flex:1!important}
.iev-name-row{display:flex!important;align-items:center!important;gap:6px!important;margin-bottom:4px!important}
.iev-name{font-size:15px!important;font-weight:900!important;color:#fff!important;line-height:1.2!important}
.iev-loc{font-size:10px!important;color:rgba(255,255,255,.45)!important;margin-bottom:10px!important;font-weight:500!important}
.iev-extra{font-size:9px!important;font-weight:700!important;color:rgba(255,255,255,.6)!important;margin-top:4px!important}
.iev-sep{height:1px!important;background:rgba(255,255,255,.07)!important;margin-bottom:10px!important}

/* ═══ FEATURES CHIPS ═══ */
.iev-features{display:flex!important;flex-wrap:wrap!important;gap:4px!important;margin-bottom:10px!important}
.iev-feat{background:rgba(255,255,255,.07)!important;color:rgba(255,255,255,.6)!important;border:1px solid rgba(255,255,255,.08)!important;font-size:9px!important;font-weight:700!important;padding:3px 7px!important;border-radius:5px!important;white-space:nowrap!important}

/* ═══ FOOT & PRICE ═══ */
.iev-foot{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:8px!important;margin-top:auto!important}
.iev-price{display:flex!important;flex-direction:column!important;gap:1px!important}
.iev-orig{font-size:10px!important;color:rgba(255,255,255,.35)!important;text-decoration:line-through!important;font-weight:500!important}
.iev-disc{display:flex!important;align-items:baseline!important;gap:3px!important}
.iev-from{font-size:9px!important;color:rgba(255,255,255,.4)!important;font-weight:500!important}
.iev-val{font-size:20px!important;font-weight:900!important;color:#FFCC00!important;line-height:1!important}
.iev-night{font-size:9px!important;color:rgba(255,255,255,.4)!important;font-weight:500!important}
.iev-pct{background:rgba(255,204,0,.15)!important;color:#FFCC00!important;font-size:9px!important;font-weight:800!important;padding:2px 6px!important;border-radius:4px!important}
.iev-btn{background:linear-gradient(135deg,#1A3C8F,#0D2260)!important;color:#fff!important;border:none!important;border-radius:9px!important;padding:9px 16px!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important;font-family:inherit!important;white-space:nowrap!important;transition:opacity .2s,transform .15s!important}
.iev-btn:hover{opacity:.9!important;transform:scale(1.03)!important}

/* ═══ RCARD (Resort Cards) ═══ */
.rcard{border-radius:24px!important;overflow:hidden!important;position:relative!important;background:#fff!important;box-shadow:0 8px 32px rgba(13,34,96,.13)!important;cursor:pointer!important;transition:transform .25s,box-shadow .25s!important}
.rcard:hover{transform:translateY(-6px)!important;box-shadow:0 20px 48px rgba(13,34,96,.18)!important}
.rcard-img{position:relative!important;height:280px!important;overflow:hidden!important}
.rcard-img img{width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .4s!important}
.rcard:hover .rcard-img img{transform:scale(1.05)!important}
.rcard-img-overlay{position:absolute!important;inset:0!important;background:linear-gradient(to bottom,rgba(0,0,0,0.05) 0%,rgba(0,0,0,0) 40%,rgba(13,34,96,0.55) 100%)!important}
.rcard-badges{position:absolute!important;top:16px!important;left:16px!important;display:flex!important;gap:6px!important;flex-wrap:wrap!important;z-index:2!important}
.bdg{font-size:11px!important;font-weight:800!important;padding:5px 12px!important;border-radius:50px!important;letter-spacing:0.06em!important;text-transform:uppercase!important}
.bdg-hot,.bdg-hot-deal{background:#ef4444!important;color:#fff!important;animation:pulse-red 1.8s infinite!important}
.bdg-flash{background:linear-gradient(135deg,#f59e0b,#ef4444)!important;color:#fff!important}
.bdg-eb,.bdg-early{background:#16a34a!important;color:#fff!important}
.bdg-nft{background:#7c3aed!important;color:#fff!important}
.bdg-volo{background:rgba(255,255,255,0.2)!important;color:#fff!important;border:1px solid rgba(255,255,255,0.5)!important;backdrop-filter:blur(8px)!important}
.rcard-body{padding:20px 20px 18px!important}
.rcard-cat{font-size:11px!important;font-weight:700!important;letter-spacing:0.1em!important;text-transform:uppercase!important;color:var(--blue,#1A3C8F)!important;margin-bottom:6px!important}
.rcard-name{font-size:20px!important;font-weight:800!important;color:#0D2260!important;margin-bottom:4px!important;line-height:1.2!important}
.rcard-loc{font-size:13px!important;color:#6b7280!important;margin-bottom:14px!important}
.rcard-foot{display:flex!important;align-items:center!important;justify-content:space-between!important}
.rcard-price-wrap{display:flex!important;flex-direction:column!important}
.rcard-price-lbl{font-size:11px!important;color:#9ca3af!important;font-weight:600!important}
.rcard-price{font-size:22px!important;font-weight:900!important;color:var(--blue,#1A3C8F)!important}
.rcard-btn{background:var(--blue,#1A3C8F)!important;color:#fff!important;border:none!important;border-radius:50px!important;padding:11px 22px!important;font-size:14px!important;font-weight:700!important;cursor:pointer!important;font-family:inherit!important;transition:background .2s,transform .15s!important;min-height:44px!important}
.rcard-btn:hover{background:#0D2260!important;transform:scale(1.04)!important}

/* ═══ MEDIA QUERIES ═══ */
@media(max-width:1100px){.inevidenza-grid{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:800px){.inevidenza-grid{grid-template-columns:1fr 1fr!important}}
@media(max-width:520px){.inevidenza-grid{grid-template-columns:1fr!important}.inevidenza-wrap{margin:24px 16px;padding:24px}.inevidenza-top{flex-direction:column;align-items:flex-start}}

/* === CARD 3x2 CLEAN — Apr 2026 === */
.inevidenza-wrap{margin:0 20px !important;padding:36px !important}
.inevidenza-grid{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:24px !important}
@media(max-width:960px){.inevidenza-grid{grid-template-columns:1fr 1fr !important}}
@media(max-width:600px){.inevidenza-grid{grid-template-columns:1fr !important}}
.iev-card{background:#0a1628 !important;border-radius:22px !important;overflow:hidden !important;border:1px solid rgba(255,255,255,.09) !important;display:flex !important;flex-direction:column !important;transition:transform .22s,box-shadow .22s !important;cursor:pointer !important}
.iev-card.hidden{display:none !important}
.iev-card:hover{transform:translateY(-7px) !important;box-shadow:0 24px 56px rgba(0,0,0,.55) !important}
.iev-img{height:380px !important;position:relative !important;overflow:hidden !important;flex-shrink:0 !important;background:#050e20 !important}
.iev-img img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important;transition:transform .4s !important}
.iev-card:hover .iev-img img{transform:scale(1.06) !important}
.iev-img-overlay{position:absolute !important;inset:0 !important;background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,0) 30%,rgba(4,10,28,.92) 100%) !important}
.iev-badge-top{position:absolute !important;top:18px !important;left:18px !important;z-index:3 !important}
.iev-bdg-hot{display:inline-block !important;font-size:13px !important;font-weight:900 !important;letter-spacing:.08em !important;text-transform:uppercase !important;padding:8px 18px !important;border-radius:8px !important;background:#dc2626 !important;color:#fff !important;animation:hotpulse 1.8s infinite !important}
.iev-bdg-flash{display:inline-block !important;font-size:13px !important;font-weight:900 !important;letter-spacing:.08em !important;text-transform:uppercase !important;padding:8px 18px !important;border-radius:8px !important;background:#FFCC00 !important;color:#0D2260 !important}
.iev-bdg-early{display:inline-block !important;font-size:13px !important;font-weight:900 !important;letter-spacing:.08em !important;text-transform:uppercase !important;padding:8px 18px !important;border-radius:8px !important;background:#059669 !important;color:#fff !important}
.iev-bdg-group{display:inline-block !important;font-size:13px !important;font-weight:900 !important;letter-spacing:.08em !important;text-transform:uppercase !important;padding:8px 18px !important;border-radius:8px !important;background:#7c3aed !important;color:#fff !important}
.iev-bdg-rated{display:inline-block !important;font-size:13px !important;font-weight:900 !important;letter-spacing:.08em !important;text-transform:uppercase !important;padding:8px 18px !important;border-radius:8px !important;background:#0891b2 !important;color:#fff !important}
.iev-fly-in{position:absolute !important;top:18px !important;right:18px !important;z-index:3 !important;font-size:12px !important;font-weight:800 !important;padding:8px 14px !important;border-radius:7px !important;background:rgba(5,150,105,.9) !important;color:#fff !important;letter-spacing:.06em !important}
.iev-fly-out{display:none !important}
.iev-timer-bot{position:absolute !important;bottom:0 !important;left:0 !important;right:0 !important;z-index:3 !important;padding:12px 16px 14px !important;background:linear-gradient(0deg,rgba(4,10,28,.97) 0%,rgba(4,10,28,.5) 100%) !important}
.iev-timer{display:flex !important;align-items:center !important;gap:16px !important}
.iev-timer-lbl{font-size:11px !important;font-weight:700 !important;color:rgba(255,204,0,.65) !important;letter-spacing:.1em !important;text-transform:uppercase !important;white-space:nowrap !important}
.iev-timer-blocks{display:flex !important;align-items:center !important;gap:8px !important}
.iev-tb{display:flex !important;flex-direction:column !important;align-items:center !important;min-width:38px !important}
.iev-tn{font-size:28px !important;font-weight:900 !important;color:#FFCC00 !important;line-height:1 !important}
.iev-tl{font-size:10px !important;font-weight:700 !important;color:rgba(255,204,0,.5) !important;text-transform:uppercase !important;letter-spacing:.07em !important;margin-top:3px !important}
.iev-tsep{font-size:24px !important;font-weight:900 !important;color:#FFCC00 !important;margin-bottom:10px !important;opacity:.6 !important}
.iev-body{padding:22px !important;flex:1 !important;display:flex !important;flex-direction:column !important}
.iev-name{font-size:22px !important;font-weight:900 !important;color:#fff !important;line-height:1.2 !important;margin-bottom:6px !important}
.iev-cat{font-size:13px !important;color:rgba(255,255,255,.4) !important;font-weight:700 !important;margin-bottom:16px !important;text-transform:uppercase !important;letter-spacing:.07em !important}
.iev-feats{display:flex !important;gap:8px !important;flex-wrap:wrap !important;margin-bottom:18px !important}
.iev-feat{font-size:12px !important;font-weight:700 !important;padding:6px 13px !important;border-radius:7px !important;background:rgba(26,60,143,.4) !important;color:#7eb3ff !important;border:1px solid rgba(26,60,143,.6) !important}
.iev-sep{height:1px !important;background:rgba(255,255,255,.07) !important;margin-bottom:18px !important}
.iev-foot{display:flex !important;align-items:flex-end !important;justify-content:space-between !important;margin-top:auto !important;gap:14px !important}
.iev-price{display:flex !important;flex-direction:column !important;gap:4px !important}
.iev-orig{font-size:15px !important;color:rgba(255,255,255,.28) !important;text-decoration:line-through !important;font-weight:600 !important}
.iev-disc{display:flex !important;align-items:baseline !important;gap:8px !important;flex-wrap:wrap !important}
.iev-val{font-size:30px !important;font-weight:900 !important;color:#FFCC00 !important;line-height:1 !important}
.iev-night{font-size:13px !important;color:rgba(255,255,255,.4) !important;font-weight:600 !important}
.iev-pct{font-size:13px !important;font-weight:900 !important;padding:5px 12px !important;border-radius:7px !important;background:#dc2626 !important;color:#fff !important}
.iev-btn{background:linear-gradient(135deg,#2451c4,#0D2260) !important;color:#fff !important;font-size:15px !important;font-weight:800 !important;padding:15px 28px !important;border-radius:12px !important;border:none !important;cursor:pointer !important;white-space:nowrap !important;font-family:inherit !important;letter-spacing:.03em !important;min-height:52px !important;transition:all .2s !important;box-shadow:0 4px 20px rgba(26,60,143,.5) !important}
.iev-btn:hover{background:linear-gradient(135deg,#3060d4,#1A3C8F) !important;box-shadow:0 8px 28px rgba(26,60,143,.7) !important;transform:translateY(-2px) !important}
#vts-categories{display:none !important}
/* ═══════════════════════════════════════════════════════════════
   VTS · TOUR PROPOSTI — CSS
   Appendere a public/css/vts-overrides.css
   ═══════════════════════════════════════════════════════════════ */



/* ══════════════════════════════════════════════════════
   TOUR CARD v3 — mappa 50% full-height · volo/hotel overlay · expand btn
   ══════════════════════════════════════════════════════ */
#vts-tours-proposti { font-family: 'Urbanist', sans-serif; }
#vts-tours-proposti .leaflet-container { background: #071428 !important; }
#vts-tours-proposti .leaflet-tile-pane { filter: brightness(.92) saturate(1.1); }

.vts-tc {
  background: linear-gradient(145deg, #0d1e4a, #0a1640);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 24px; overflow: hidden; position: relative;
  display: grid !important;
  grid-template-columns: 50% 50% !important;
  grid-template-rows: 1fr !important;
  min-height: 300px; flex-direction: unset !important;
  cursor: pointer;
  transition: transform .22s ease, box-shadow .22s ease;
}
.vts-tc:hover { transform: translateY(-5px); box-shadow: 0 28px 70px rgba(0,0,0,.55), 0 0 0 1px rgba(255,204,0,.22); }

.vts-tc-map {
  grid-column: 1 !important; grid-row: 1 !important;
  width: 100% !important; height: 100% !important;
  min-height: 300px !important; position: relative !important;
  overflow: hidden;
}
.vts-tc-map-fade {
  position: absolute; inset: 0;
  background: linear-gradient(to right, transparent 55%, #0d1e4a 100%) !important;
  z-index: 2; pointer-events: none;
}

.vts-tc-expand-btn {
  position: absolute; top: 10px; left: 10px; z-index: 20;
  width: 32px; height: 32px;
  background: rgba(0,0,0,.5);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: background .15s;
}
.vts-tc-expand-btn:hover { background: rgba(26,60,143,.85); }
.vts-tc-expand-btn svg { width: 14px; height: 14px; stroke: #fff; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

.vts-tc-badges {
  position: absolute; top: 10px; left: 50px; z-index: 20;
  display: flex; gap: 5px; flex-wrap: wrap;
}
.vts-badge { font-size: 11px; font-weight: 800; padding: 4px 11px; border-radius: 50px; letter-spacing: .03em; font-family: 'Urbanist', sans-serif; }
.vts-badge-hot   { background: #FF4D6D; color: #fff; }
.vts-badge-flash { background: #FF8C00; color: #fff; }
.vts-badge-early { background: rgba(255,204,0,.15); border: 1px solid rgba(255,204,0,.4); color: #FFCC00; }
.vts-badge-new   { background: rgba(26,60,143,.9); color: #fff; }
.vts-badge-nights { background: rgba(0,0,0,.6); color: rgba(255,255,255,.9); font-size: 11px; font-weight: 700; padding: 4px 11px; border-radius: 50px; }

.vts-ft-wrap {
  position: absolute !important;
  bottom: 14px !important; left: 12px !important;
  top: auto !important; right: auto !important;
  z-index: 20 !important;
  display: flex !important; gap: 6px !important; flex-wrap: wrap !important;
}
.vts-ft-btn {
  background: rgba(0,0,0,.48) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  color: rgba(255,255,255,.92) !important;
  border-radius: 50px !important;
  padding: 5px 13px !important;
  font-size: 11px !important; font-weight: 700 !important;
  cursor: pointer !important;
  font-family: 'Urbanist', sans-serif !important;
  transition: background .15s !important;
}
.vts-ft-btn:hover { background: rgba(26,60,143,.75) !important; }
.vts-ft-btn.active { background: rgba(26,60,143,.9) !important; border-color: rgba(255,255,255,.45) !important; color: #fff !important; }

.vts-tc-body {
  grid-column: 2 !important; grid-row: 1 !important;
  padding: 20px 18px 0 14px !important;
  display: flex !important; flex-direction: column !important;
  gap: 10px !important; overflow: hidden; flex: unset !important;
}

.vts-tc-title { font-size: 22px !important; font-weight: 900 !important; color: #fff !important; line-height: 1.15 !important; }
.vts-tc-sub   { font-size: 13px !important; color: rgba(255,255,255,.48) !important; font-weight: 600 !important; letter-spacing: .04em !important; margin-top: 3px !important; }

.vts-rb { display: flex !important; align-items: center !important; gap: 4px !important; flex-wrap: wrap !important; }
.vts-rb-stop { display: flex; align-items: center; gap: 3px; }
.vts-rb-d  { display: none !important; }
.vts-rb-ni { display: none !important; }
.vts-rb-n  { font-size: 13px !important; font-weight: 700 !important; color: rgba(255,255,255,.85) !important; background: rgba(255,255,255,.07) !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 8px !important; padding: 3px 9px !important; }
.vts-rb-l  { color: rgba(255,204,0,.55) !important; font-size: 11px !important; font-weight: 700 !important; margin: 0 1px !important; }

.vts-resorts { display: flex !important; flex-direction: column !important; gap: 5px !important; flex: 1 !important; }
.vts-ri      { background: transparent !important; border: none !important; padding: 0 !important; display: flex !important; align-items: flex-start !important; gap: 7px !important; }
.vts-ri-num  { width: 7px; height: 7px; border-radius: 50%; background: #FFCC00 !important; flex-shrink: 0; margin-top: 5px; font-size: 0 !important; }
.vts-ri-name { font-size: 14px !important; font-weight: 800 !important; color: rgba(255,255,255,.9) !important; line-height: 1.25 !important; }
.vts-ri-nights { font-size: 12px !important; color: rgba(255,255,255,.42) !important; margin-top: 1px !important; }
.vts-ri-tr   { display: none !important; }
.vts-kpi-row { display: none !important; }

.vts-tc-footer {
  margin-top: auto !important;
  padding: 12px 18px 16px 0 !important;
  border-top: 1px solid rgba(255,255,255,.07) !important;
  display: flex !important; align-items: center !important;
  justify-content: space-between !important; gap: 10px !important;
}
.vts-price-from { font-size: 11px !important; color: rgba(255,255,255,.38) !important; margin-bottom: 2px; }
.vts-price-num  { font-size: 26px !important; font-weight: 900 !important; color: #FFCC00 !important; line-height: 1 !important; }
.vts-price-pp   { font-size: 11px !important; color: rgba(255,255,255,.38) !important; margin-top: 2px; }
.vts-btn-tour {
  background: linear-gradient(135deg, #1A3C8F, #2550c0) !important;
  color: #fff !important; border: none !important; border-radius: 50px !important;
  padding: 10px 18px !important; font-size: 12px !important; font-weight: 800 !important;
  cursor: pointer; font-family: 'Urbanist', sans-serif !important; transition: opacity .15s;
}
.vts-btn-tour:hover { opacity: .85; }

/* MODAL */
.vts-tour-modal-overlay { display: none; position: fixed; inset: 0; background: rgba(5,10,30,.92); backdrop-filter: blur(8px); z-index: 9999; align-items: center; justify-content: center; padding: 20px; }
.vts-tour-modal-overlay.vts-modal-open { display: flex !important; }
.vts-tour-modal { background: linear-gradient(145deg, #0d1e4a, #0a1640); border: 1px solid rgba(255,255,255,.1); border-radius: 28px; overflow: hidden; width: 100%; max-width: 840px; max-height: 90vh; overflow-y: auto; position: relative; font-family: 'Urbanist', sans-serif; }
.vts-modal-close { position: absolute; top: 16px; right: 16px; z-index: 10; background: rgba(255,255,255,.1); border: none; border-radius: 50%; width: 38px; height: 38px; color: #fff; font-size: 20px; cursor: pointer; display: flex; align-items: center; justify-content: center; font-family: 'Urbanist', sans-serif; }
.vts-modal-close:hover { background: rgba(255,255,255,.2); }
.vts-modal-hero { display: grid; grid-template-columns: 48% 52%; min-height: 270px; }
.vts-modal-map { position: relative; background: linear-gradient(160deg, #071428, #0b2050); overflow: hidden; min-height: 270px; }
.vts-modal-map-fade { position: absolute; top: 0; right: 0; bottom: 0; width: 60px; background: linear-gradient(to right, transparent, #0d1e4a); z-index: 3; pointer-events: none; }
.vts-modal-info { padding: 28px 28px 20px 22px; display: flex; flex-direction: column; gap: 14px; }
.vts-modal-title { font-size: 26px; font-weight: 900; color: #fff; line-height: 1.15; }
.vts-modal-sub { font-size: 13px; color: rgba(255,255,255,.5); font-weight: 600; letter-spacing: .05em; }
.vts-modal-kpis { display: flex; gap: 8px; flex-wrap: wrap; }
.vts-modal-kpi { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.09); border-radius: 12px; padding: 10px 14px; text-align: center; flex: 1; min-width: 80px; }
.vts-modal-kpi-v { font-size: 15px; font-weight: 900; color: #FFCC00; }
.vts-modal-kpi-l { font-size: 10px; color: rgba(255,255,255,.45); margin-top: 2px; text-transform: uppercase; letter-spacing: .05em; }
.vts-modal-body { padding: 0 28px 20px; }
.vts-modal-section { font-size: 11px; font-weight: 800; color: rgba(255,255,255,.3); text-transform: uppercase; letter-spacing: .1em; margin: 20px 0 10px; }
.vts-modal-route { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.vts-modal-stop { font-size: 14px; font-weight: 700; color: rgba(255,255,255,.85); background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.1); border-radius: 8px; padding: 5px 12px; }
.vts-modal-arrow { color: rgba(255,204,0,.5); font-size: 13px; }
.vts-modal-structs { display: flex; flex-direction: column; gap: 10px; }
.vts-modal-struct { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); border-radius: 14px; padding: 14px 16px; display: flex; align-items: flex-start; gap: 12px; }
.vts-modal-num { width: 26px; height: 26px; border-radius: 50%; background: rgba(255,204,0,.15); border: 1px solid rgba(255,204,0,.3); color: #FFCC00; font-size: 12px; font-weight: 800; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 2px; }
.vts-modal-resort-name { font-size: 15px; font-weight: 800; color: #fff; }
.vts-modal-resort-detail { font-size: 12px; color: rgba(255,255,255,.5); margin-top: 3px; }
.vts-modal-footer { padding: 20px 28px 28px; border-top: 1px solid rgba(255,255,255,.07); display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.vts-modal-price-from { font-size: 11px; color: rgba(255,255,255,.4); }
.vts-modal-price { font-size: 34px; font-weight: 900; color: #FFCC00; line-height: 1; }
.vts-modal-price-pp { font-size: 12px; color: rgba(255,255,255,.4); margin-top: 2px; }
.vts-modal-btn-cta { background: linear-gradient(135deg, #1A3C8F, #2550c0); color: #fff; border: none; border-radius: 50px; padding: 14px 28px; font-size: 15px; font-weight: 800; cursor: pointer; font-family: 'Urbanist', sans-serif; transition: opacity .15s; text-decoration: none; display: inline-flex; align-items: center; }
.vts-modal-btn-cta:hover { opacity: .85; }
.vts-modal-btn-outline { background: transparent; color: rgba(255,255,255,.7); border: 1px solid rgba(255,255,255,.2); border-radius: 50px; padding: 13px 22px; font-size: 14px; font-weight: 700; cursor: pointer; font-family: 'Urbanist', sans-serif; }

/* RESPONSIVE */
@media (max-width: 1024px) {
  #vts-tours-grid { grid-template-columns: 1fr 1fr !important; }
  .vts-tc { grid-template-columns: 46% 54% !important; }
}
@media (max-width: 640px) {
  #vts-tours-grid { grid-template-columns: 1fr !important; }
  .vts-tc { grid-template-columns: 1fr !important; grid-template-rows: 200px 1fr !important; }
  .vts-tc-map { grid-column: 1 !important; grid-row: 1 !important; min-height: 200px !important; height: 200px !important; }
  .vts-tc-body { grid-column: 1 !important; grid-row: 2 !important; }
  .vts-modal-hero { grid-template-columns: 1fr !important; }
}

/* Nav dropdown Tour */
.nav-dropdown-wrap { position: relative; display: flex; align-items: center; }
.nav-has-dropdown::after { content: ' ▾'; font-size: 10px; opacity: .7; }
.nav-dropdown { display: none; position: absolute; top: 100%; left: 0; background: #0D2260; border: 1px solid rgba(255,204,0,.25); border-radius: 10px; padding: 6px 0; min-width: 160px; z-index: 9999; box-shadow: 0 8px 24px rgba(0,0,0,.4); }
.nav-dropdown-wrap:hover .nav-dropdown { display: block; }
.nav-dropdown-item { display: block; padding: 9px 18px; color: rgba(255,255,255,.82); font-size: 13.5px; font-family: 'Urbanist', sans-serif; text-decoration: none; transition: color .2s, background .2s; white-space: nowrap; }
.nav-dropdown-item:hover { color: #FFCC00; background: rgba(255,255,255,.06); }

/* Nav CTA area cleanup */
.nav-wallet, .nav-wallet-dot { display: none !important; }
.nav-cta { display: none !important; }
a.nav-accedi {
  display: inline-flex;
  align-items: center;
  padding: 8px 20px;
  border: 1.5px solid rgba(255,204,0,.6);
  border-radius: 20px;
  color: #FFCC00;
  font-family: 'Urbanist', sans-serif;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: background .2s, color .2s;
  white-space: nowrap;
}
a.nav-accedi:hover {
  background: #FFCC00;
  color: #0D2260;
}

/* Hero: padding simmetrico — stessa distanza dai bordi */
.hero-left {
  padding-left: clamp(40px, 5vw, 100px) !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}
.hero-right {
  padding-right: clamp(40px, 5vw, 100px) !important;
  padding-left: 24px !important;
  box-sizing: border-box !important;
}
#vts-concierge-card {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* VCC badge logo: stile come nav logo ma più piccolo, senza sfondo */
#vcc-ai-badge {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
}

/* ===== OFFERS V2 ===== */

#offers-layout-list { display:block !important; grid-template-columns:unset !important; margin-bottom:0; padding-bottom:0; }
#offers-layout-list.list-hidden { display:none !important; }
#offers-layout-split { display:none; }
#offers-layout-split.split-active { display:block !important; }
.offers-page { background:#06102a !important; }

.offers-hero { position:relative; height:320px; overflow:hidden; }
.hero-photo { position:absolute; inset:0; background:url('https://images.unsplash.com/photo-1514282401047-d79a71a590e8?w=1400&q=80') center 40%/cover; transition:transform .4s; }
.offers-hero:hover .hero-photo { transform:scale(1.02); }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(to bottom, rgba(6,16,42,.05) 0%, rgba(6,16,42,.55) 55%, rgba(6,16,42,1) 100%); }
.hero-body { position:absolute; bottom:0; left:0; right:0; padding:0 40px 36px; text-align:center; }
.hero-tag { display:inline-flex; align-items:center; gap:8px; background:rgba(255,204,0,.12); border:1px solid rgba(255,204,0,.35); color:#FFCC00; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; padding:6px 18px; border-radius:20px; margin-bottom:16px; }
.hero-tag-dot { width:6px; height:6px; background:#FFCC00; border-radius:50%; flex-shrink:0; }
.hero-tag-txt { color:#FFCC00; }
.hero-h1 { font-size:clamp(52px, 6.8vw, 94px); font-weight:900; color:#fff; letter-spacing:-.03em; line-height:1; margin-bottom:12px; font-family:'Urbanist',sans-serif; }
.hero-h1 em { color:#FFCC00; font-style:normal; }
.hero-sub-txt { font-size:16px; color:rgba(255,255,255,.7); font-weight:500; line-height:1.5; }

.offers-pills { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; padding:24px 40px 16px; }
.o-pill { font-size:14px; font-weight:700; padding:11px 24px; border-radius:50px; border:1.5px solid rgba(255,255,255,.18); color:rgba(255,255,255,.8); background:transparent; cursor:pointer; transition:all .18s; font-family:'Urbanist',sans-serif; white-space:nowrap; }
.o-pill.on { background:#FFCC00; color:#0D2260; border-color:#FFCC00; font-weight:900; }
.o-pill:hover:not(.on) { border-color:#fff; color:#fff; }

.offers-sort-row { display:flex; align-items:center; gap:8px; padding:0 40px 20px; border-bottom:1px solid rgba(255,255,255,.06); flex-wrap:nowrap; }
.offers-sort-label { font-size:13px; font-weight:700; color:rgba(255,255,255,.4); line-height:1; display:flex; align-items:center; white-space:nowrap; }
.o-sort-chip { font-size:13px; font-weight:700; padding:9px 18px; border-radius:50px; border:1.5px solid rgba(255,255,255,.12); color:rgba(255,255,255,.65); background:transparent; cursor:pointer; font-family:'Urbanist',sans-serif; transition:all .15s; height:40px; display:flex; align-items:center; justify-content:center; line-height:1; white-space:nowrap; }
.o-sort-chip.on { background:#1A3C8F; color:#fff; border-color:#1A3C8F; }
.o-sort-chip:hover:not(.on) { border-color:rgba(255,255,255,.35); color:#fff; }
.offers-view-toggle { margin-left:auto; display:flex; align-items:center; background:rgba(255,255,255,.07); border-radius:10px; padding:4px; gap:3px; flex-shrink:0; }
.o-view-btn { font-size:13px; font-weight:700; padding:9px 22px; border-radius:7px; color:rgba(255,255,255,.6); background:transparent; cursor:pointer; font-family:'Urbanist',sans-serif; transition:all .15s; display:flex; align-items:center; justify-content:center; gap:7px; border:none; white-space:nowrap; height:40px; line-height:1; }
.o-view-btn.on { background:#1A3C8F; color:#fff; }
.o-view-btn:hover:not(.on) { color:#fff; }

.offers-section { margin-bottom:0; padding:0 40px; }
.offers-section-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }
.offers-section-title { font-size:22px; font-weight:900; color:#fff; font-family:'Urbanist',sans-serif; letter-spacing:-.01em; }
.offers-section-more { font-size:13px; color:#FFCC00; font-weight:700; background:transparent; border:none; cursor:pointer; font-family:'Urbanist',sans-serif; }
.offers-count { display:none; }

.offers-grid-3col { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }

.oc { background:#0d1e42; border:1px solid rgba(255,255,255,.09); border-radius:16px; overflow:hidden; cursor:pointer; transition:all .2s; }
.oc:hover { border-color:rgba(255,204,0,.4); transform:translateY(-4px); box-shadow:0 16px 40px rgba(0,0,0,.4); }
.oc-placeholder { border-radius:16px; background:transparent; min-height:1px; }

.oc-photo { height:185px; position:relative; overflow:hidden; }
.oc-photo-img { position:absolute; inset:0; background-size:cover; background-position:center; transition:transform .4s; }
.oc:hover .oc-photo-img { transform:scale(1.05); }
.oc-photo-grad { position:absolute; inset:0; background:linear-gradient(to bottom, rgba(0,0,0,0) 30%, rgba(6,16,42,.96) 100%); }
.oc-badges { position:absolute; top:10px; left:10px; display:flex; gap:5px; flex-wrap:wrap; z-index:2; }
.ob { font-size:11px; font-weight:800; padding:4px 10px; border-radius:5px; letter-spacing:.02em; }
.ob-hot { background:#ef4444; color:#fff; }
.ob-flash { background:#f97316; color:#fff; }
.ob-eb { background:#16a34a; color:#fff; }
.ob-volo { background:#1A3C8F; color:#fff; }
.oc-disc { position:absolute; top:10px; right:10px; font-size:12px; font-weight:900; color:#fff; background:rgba(239,68,68,.9); padding:4px 8px; border-radius:6px; z-index:2; }
.oc-photo-btm { position:absolute; bottom:12px; left:12px; right:12px; z-index:2; }
.oc-resort { font-size:12px; font-weight:800; color:rgba(255,204,0,.9); letter-spacing:.06em; text-transform:uppercase; margin-bottom:5px; }
.oc-timer { display:inline-flex; align-items:center; gap:5px; background:rgba(6,16,42,.7); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); border:1px solid rgba(255,204,0,.35); padding:4px 10px; border-radius:20px; }
.oc-timer svg { flex-shrink:0; }
.oc-timer-txt { font-size:12px; font-weight:800; color:#FFCC00; }

.oc-body { padding:16px 18px; }
.oc-title { font-size:17px; font-weight:900; color:#fff; line-height:1.25; margin-bottom:10px; font-family:'Urbanist',sans-serif; }
.oc-meta { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:14px; align-items:center; }
.oc-nights { font-size:13px; color:#fff; font-weight:700; opacity:.85; }
.oc-tag { font-size:12px; color:#fff; background:rgba(255,255,255,.1); padding:4px 10px; border-radius:20px; font-weight:600; }
.oc-pr { display:flex; align-items:flex-end; justify-content:space-between; }
.oc-old { font-size:13px; color:rgba(255,255,255,.4); text-decoration:line-through; line-height:1; margin-bottom:3px; }
.oc-new { font-size:26px; font-weight:900; color:#FFCC00; line-height:1; font-family:'Urbanist',sans-serif; }
.oc-pp { font-size:12px; color:rgba(255,204,0,.7); font-weight:600; margin-top:3px; }
.oc-btn { font-size:13px; font-weight:800; background:#1A3C8F; color:#fff; padding:12px 18px; border-radius:10px; border:none; cursor:pointer; font-family:'Urbanist',sans-serif; letter-spacing:.01em; transition:background .15s; white-space:nowrap; }
.oc-btn:hover { background:#2451c4; }

.offers-split-wrap { display:grid; grid-template-columns:600px 1fr; height:calc(100vh - 90px); min-height:700px; }
.offers-split-list { overflow-y:auto; background:#06102a; padding:12px; display:flex; flex-direction:column; gap:0; height:100%; }
.offers-split-list::-webkit-scrollbar { width:4px; }
.offers-split-list::-webkit-scrollbar-track { background:transparent; }
.offers-split-list::-webkit-scrollbar-thumb { background:rgba(255,255,255,.15); border-radius:2px; }
.offers-split-map { position:relative; overflow:hidden; height:100%; }
.offers-explore-section.map-hidden { display:none !important; }
#offers-map-canvas-v2 { position:absolute; inset:0; height:100% !important; width:100% !important; }

.split-mc { display:flex; background:#0d1e42; border:1px solid rgba(255,255,255,.08); border-radius:14px; overflow:hidden; margin-bottom:12px; cursor:pointer; transition:all .18s; flex-shrink:0; min-height:115px; }
.split-mc:hover { border-color:rgba(255,204,0,.3); background:#122040; }
.split-mc.active { border-color:#FFCC00; background:#132244; box-shadow:0 0 16px rgba(255,204,0,.15); }
.smc-img { width:140px; min-width:140px; height:115px; position:relative; overflow:hidden; flex-shrink:0; }
.smc-img-grad { position:absolute; inset:0; background:linear-gradient(to right,transparent 60%,rgba(13,30,66,.4)); }
.smc-badge { position:absolute; top:6px; left:6px; font-size:9px; font-weight:800; padding:3px 7px; border-radius:4px; z-index:2; }
.b-hot { background:#ef4444; color:#fff; }
.b-flash { background:#f97316; color:#fff; }
.b-eb { background:#16a34a; color:#fff; }
.b-volo { background:#1A3C8F; color:#fff; top:6px; right:6px; left:auto; }
.smc-body { padding:14px 16px; flex:1; min-width:0; display:flex; flex-direction:column; justify-content:space-between; }
.smc-resort { font-size:11px; font-weight:800; color:rgba(255,204,0,.85); letter-spacing:.05em; text-transform:uppercase; margin-bottom:4px; }
.smc-title { font-size:16px; font-weight:900; color:#fff; line-height:1.25; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; font-family:'Urbanist',sans-serif; }
.smc-nights { font-size:12px; color:rgba(255,255,255,.5); margin-top:4px; display:block; }
.smc-timer { display:flex; align-items:center; gap:4px; margin-top:6px; }
.smc-timer span { font-size:12px; font-weight:700; color:#FFCC00; }
.smc-price-row { margin-top:8px; }
.smc-old { font-size:12px; color:rgba(255,255,255,.3); text-decoration:line-through; line-height:1; }
.smc-new { font-size:22px; font-weight:900; color:#FFCC00; line-height:1; font-family:'Urbanist',sans-serif; }
.smc-pp { font-size:12px; color:rgba(255,204,0,.6); margin-top:2px; }

.vts-price-pin { background:#FFCC00; color:#0D2260; font-size:12px; font-weight:900; padding:6px 12px; border-radius:20px; white-space:nowrap; cursor:pointer; box-shadow:0 2px 10px rgba(255,204,0,.4); transition:all .18s; position:relative; }
.vts-price-pin::after { content:''; position:absolute; bottom:-5px; left:50%; transform:translateX(-50%); border:5px solid transparent; border-top-color:#FFCC00; border-bottom:none; }
.vts-price-pin:hover, .vts-price-pin.active { background:#fff; box-shadow:0 4px 16px rgba(255,255,255,.35); transform:scale(1.08); }
.vts-price-pin.active::after { border-top-color:#fff; }

.vts-map-popup .leaflet-popup-content-wrapper { background:#0d1e42; border:1.5px solid rgba(255,204,0,.5); border-radius:14px; padding:0; overflow:hidden; box-shadow:0 8px 40px rgba(0,0,0,.7); }
.vts-map-popup .leaflet-popup-content { margin:0; width:360px !important; }
.vts-map-popup .leaflet-popup-tip-container { display:none; }
.vts-map-popup .leaflet-popup-close-button { color:rgba(255,255,255,.7) !important; font-size:18px !important; top:6px !important; right:8px !important; }

/* Leaflet zoom glassmorphism */
.leaflet-control-zoom { background:rgba(6,16,42,.55) !important; -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.15) !important; border-radius:12px !important; overflow:hidden; box-shadow:0 4px 16px rgba(0,0,0,.3) !important; }
.leaflet-control-zoom a { background:transparent !important; color:#fff !important; width:36px !important; height:36px !important; line-height:36px !important; font-size:18px !important; font-weight:700 !important; border:none !important; border-bottom:1px solid rgba(255,255,255,.1) !important; }
.leaflet-control-zoom a:last-child { border-bottom:none !important; }
.leaflet-control-zoom a:hover { background:rgba(255,255,255,.12) !important; }

@media (max-width:900px) {
  .offers-grid-3col { grid-template-columns:1fr 1fr; }
}
@media (max-width:768px) {
  .offers-split-wrap { grid-template-columns:1fr; grid-template-rows:50vh 50vh; height:100vh; }
}
@media (max-width:600px) {
  .offers-grid-3col { grid-template-columns:1fr; }
  .offers-split-wrap { grid-template-columns:1fr; }
  .offers-sort-row { flex-wrap:wrap; }
  .offers-view-toggle { margin-left:0; margin-top:8px; width:100%; }
}

/* ===== END OFFERS V2 ===== */

/* ===== VTS FOOTER GLOBAL ===== */
.offers-explore-section { padding:36px 40px 40px; background:#06102a; transition:opacity .2s; }
.oex-head { margin-bottom:22px; }
.oex-title { font-size:20px; font-weight:900; color:#fff; font-family:'Urbanist',sans-serif; letter-spacing:-.01em; }
.oex-sub { font-size:13px; color:rgba(255,255,255,.55); font-weight:500; margin-top:4px; }
.oex-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.oex-card { position:relative; border-radius:14px; overflow:hidden; cursor:pointer; aspect-ratio:16/9; }
.oex-card:hover .oex-img { transform:scale(1.06); }
.oex-img { position:absolute; inset:0; background-size:cover; background-position:center; transition:transform .4s; }
.oex-grad { position:absolute; inset:0; background:linear-gradient(to bottom, rgba(6,16,42,.05) 0%, rgba(6,16,42,.8) 100%); }
.oex-body { position:absolute; bottom:0; left:0; right:0; padding:14px 16px; }
.oex-card-title { font-size:15px; font-weight:900; color:#fff; font-family:'Urbanist',sans-serif; }
.oex-card-count { font-size:11px; color:rgba(255,204,0,.85); font-weight:700; margin-top:3px; }
.offers-cta-band { padding:44px 36px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:32px; background:#0d1e42 !important; }
.octa-tag { display:inline-flex; align-items:center; gap:6px; background:rgba(255,204,0,.12); border:1px solid rgba(255,204,0,.3); color:#FFCC00; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; padding:4px 12px; border-radius:20px; margin-bottom:14px; }
.octa-dot { width:6px; height:6px; background:#FFCC00; border-radius:50%; display:inline-block; }
.octa-h2 { font-size:30px; font-weight:900; color:#fff; line-height:1.1; letter-spacing:-.02em; margin-bottom:10px; font-family:'Urbanist',sans-serif; }
.octa-h2 em { color:#FFCC00; font-style:normal; }
.octa-sub { font-size:14px; color:rgba(255,255,255,.7); line-height:1.6; max-width:520px; }
.octa-right { display:flex; flex-direction:column; gap:10px; min-width:210px; }
.octa-btn-primary { font-size:13px; font-weight:800; background:#FFCC00; color:#0D2260; padding:15px 24px; border-radius:12px; text-decoration:none; text-align:center; display:block; font-family:'Urbanist',sans-serif; white-space:nowrap; }
.octa-btn-secondary { font-size:13px; font-weight:700; background:transparent; color:#fff; padding:14px 24px; border-radius:12px; border:1.5px solid rgba(255,255,255,.25); text-decoration:none; text-align:center; display:block; font-family:'Urbanist',sans-serif; white-space:nowrap; }
.offers-trust-band { display:grid; grid-template-columns:repeat(4,1fr); background:#070f24; padding:0; }
.otrust-item { padding:28px 32px; display:flex; align-items:center; justify-content:center; gap:16px; }
.otrust-icon-wrap { width:48px; height:48px; background:rgba(255,204,0,.1); border-radius:12px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.otrust-t { font-size:14px; font-weight:800; color:#fff; line-height:1.3; }
.otrust-s { font-size:12px; color:rgba(255,255,255,.55); font-weight:500; margin-top:3px; }
.offers-footer { background:#040c1e; padding:36px 28px 24px; }
.ofooter-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:32px; margin-bottom:28px; }
.ofooter-logo { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.ofooter-logo-circle { width:36px; height:36px; background:#FFCC00; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:900; color:#0D2260; flex-shrink:0; }
.ofooter-logo-txt { font-size:14px; font-weight:900; color:#fff; }
.ofooter-tagline { font-size:12px; color:rgba(255,255,255,.5); line-height:1.65; max-width:220px; }
.ofooter-email { display:flex; align-items:center; gap:6px; margin-top:16px; font-size:12px; color:#FFCC00; font-weight:700; text-decoration:none; }
.ofooter-col-title { font-size:11px; font-weight:800; color:rgba(255,255,255,.45); letter-spacing:.08em; text-transform:uppercase; margin-bottom:14px; }
.ofooter-links { display:flex; flex-direction:column; gap:9px; }
.ofooter-link { font-size:13px; color:rgba(255,255,255,.65); font-weight:500; text-decoration:none; }
.ofooter-link:hover { color:#fff; }
.ofooter-bottom { display:flex; align-items:center; justify-content:space-between; padding-top:20px; border-top:1px solid rgba(255,255,255,.06); flex-wrap:wrap; gap:10px; }
.ofooter-copy { font-size:11px; color:rgba(255,255,255,.3); }
.ofooter-legal { display:flex; gap:18px; flex-wrap:wrap; }
.ofooter-legal-link { font-size:11px; color:rgba(255,255,255,.35); text-decoration:none; }
.ofooter-legal-link:hover { color:rgba(255,255,255,.7); }
@media (max-width:900px) {
  .oex-grid { grid-template-columns:1fr 1fr; }
  .offers-cta-band { grid-template-columns:1fr; }
  .offers-trust-band { grid-template-columns:1fr 1fr; }
  .ofooter-top { grid-template-columns:1fr 1fr; gap:20px; }
}
@media (max-width:600px) {
  .oex-grid { grid-template-columns:1fr; }
  .offers-trust-band { grid-template-columns:1fr; }
  .ofooter-top { grid-template-columns:1fr; }
  .offers-cta-band { padding:28px 20px; }
}
/* ===== END VTS FOOTER GLOBAL ===== */

/* ===== OFFER DETAIL PAGE ===== */
.offer-page { background:#06102a; min-height:100vh; padding-top:64px; }
.offer-breadcrumb { background:#070f24; padding:10px 36px; display:flex; align-items:center; gap:6px; border-bottom:1px solid rgba(255,255,255,.05); }
.ob-link { font-size:12px; color:rgba(255,255,255,.45); text-decoration:none; cursor:pointer; transition:color .15s; }
.ob-link:hover { color:#fff; }
.ob-sep { font-size:12px; color:rgba(255,255,255,.2); }
.ob-cur { font-size:12px; color:#fff; font-weight:600; }

.offer-hero { height:300px; position:relative; overflow:hidden; }
.offer-hero-img { position:absolute; inset:0; background-size:cover; background-position:center; transition:transform .4s; }
.offer-hero:hover .offer-hero-img { transform:scale(1.02); }
.offer-hero-ov { position:absolute; inset:0; background:linear-gradient(to bottom, rgba(6,16,42,.1) 0%, rgba(6,16,42,.55) 55%, rgba(6,16,42,1) 100%); }
.offer-hero-body { position:absolute; bottom:0; left:0; right:0; padding:0 36px 24px; display:flex; align-items:flex-end; justify-content:space-between; }
.offer-hero-badges { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:10px; }
.ohb { font-size:10px; font-weight:800; padding:4px 10px; border-radius:5px; }
.ohb-hot { background:#ef4444; color:#fff; }
.ohb-flash { background:#f97316; color:#fff; }
.ohb-eb { background:#16a34a; color:#fff; }
.ohb-volo { background:#1A3C8F; color:#fff; }
.ohb-disc { background:rgba(239,68,68,.9); color:#fff; }
.offer-hero-resort { font-size:11px; font-weight:800; color:rgba(255,204,0,.85); letter-spacing:.06em; text-transform:uppercase; margin-bottom:6px; }
.offer-hero-title { font-size:30px; font-weight:900; color:#fff; letter-spacing:-.02em; line-height:1.1; font-family:'Urbanist',sans-serif; }
.offer-hero-meta { display:flex; gap:14px; margin-top:10px; flex-wrap:wrap; }
.ohm-item { display:flex; align-items:center; gap:5px; font-size:13px; color:rgba(255,255,255,.65); }
.offer-hero-timer { display:flex; align-items:center; gap:6px; background:rgba(255,204,0,.12); border:1px solid rgba(255,204,0,.3); padding:8px 16px; border-radius:20px; white-space:nowrap; }
.offer-hero-timer span { font-size:12px; font-weight:700; color:#FFCC00; }

.offer-gallery { padding:4px 36px 0; }
.offer-gallery-grid { display:grid; grid-template-columns:2fr 1fr; gap:4px; height:200px; border-radius:12px; overflow:hidden; }
.og-main { position:relative; overflow:hidden; }
.og-video { background:#000; }
.og-video-el { width:100%; height:100%; object-fit:cover; }
.og-video-label { position:absolute; bottom:10px; left:12px; display:flex; align-items:center; gap:6px; background:rgba(0,0,0,.6); padding:5px 12px; border-radius:20px; font-size:11px; font-weight:700; color:#FFCC00; }
.og-side { display:flex; flex-direction:column; gap:4px; }
.og-thumb { position:relative; overflow:hidden; flex:1; cursor:pointer; transition:filter .2s; }
.og-thumb:hover { filter:brightness(1.15); }
.og-thumb-last { position:relative; }
.og-more { position:absolute; inset:0; background:rgba(6,16,42,.65); display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:800; color:#fff; }

.offer-main-grid { display:grid; grid-template-columns:1fr 320px; gap:28px; padding:24px 36px 32px; align-items:start; }
.offer-tabs { display:flex; gap:0; border-bottom:1px solid rgba(255,255,255,.08); margin-bottom:24px; overflow-x:auto; }
.offer-tab { font-size:13px; font-weight:700; color:rgba(255,255,255,.45); padding:11px 18px; border-bottom:2px solid transparent; cursor:pointer; transition:all .15s; white-space:nowrap; background:transparent; border-top:none; border-left:none; border-right:none; font-family:'Urbanist',sans-serif; }
.offer-tab.on { color:#fff; border-bottom-color:#FFCC00; }
.offer-tab:hover:not(.on) { color:rgba(255,255,255,.75); }

.otc-desc { font-size:15px; color:rgba(255,255,255,.7); line-height:1.75; margin-bottom:24px; }
.otc-incl-title { font-size:16px; font-weight:800; color:#fff; margin-bottom:14px; font-family:'Urbanist',sans-serif; }
.otc-incl-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:24px; }
.otc-incl-item { display:flex; align-items:center; gap:10px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); border-radius:10px; padding:12px 14px; }
.otc-icon { width:36px; height:36px; background:rgba(255,204,0,.1); border-radius:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.otc-it { font-size:13px; font-weight:700; color:#fff; }
.otc-is { font-size:11px; color:rgba(255,255,255,.45); margin-top:2px; }
.otc-info-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.otc-info-card { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); border-radius:10px; padding:14px 16px; }
.otc-info-label { font-size:10px; font-weight:700; color:rgba(255,255,255,.4); letter-spacing:.06em; text-transform:uppercase; margin-bottom:6px; }
.otc-info-val { font-size:15px; font-weight:800; color:#fff; font-family:'Urbanist',sans-serif; }
.otc-info-sub { font-size:11px; color:rgba(255,204,0,.7); margin-top:3px; }

.offer-cta-box { background:#0d1e42; border:1px solid rgba(255,255,255,.1); border-radius:14px; overflow:hidden; position:sticky; top:80px; }
.octa-price-sec { padding:20px 20px 14px; }
.octa-old { font-size:13px; color:rgba(255,255,255,.35); text-decoration:line-through; }
.octa-new { font-size:32px; font-weight:900; color:#FFCC00; line-height:1; margin:4px 0; font-family:'Urbanist',sans-serif; }
.octa-pp { font-size:12px; color:rgba(255,204,0,.6); }
.octa-disc { display:inline-flex; align-items:center; gap:5px; background:rgba(239,68,68,.12); border:1px solid rgba(239,68,68,.25); color:#fca5a5; font-size:11px; font-weight:700; padding:4px 10px; border-radius:20px; margin-top:8px; }
.octa-timer { display:flex; align-items:center; gap:6px; background:rgba(255,204,0,.08); border-top:1px solid rgba(255,255,255,.06); padding:10px 20px; }
.octa-timer span { font-size:12px; font-weight:700; color:#FFCC00; }
.octa-btns { padding:14px 20px; display:flex; flex-direction:column; gap:8px; }
.octa-btn-call { font-size:13px; font-weight:700; background:transparent; color:#fff; padding:12px 18px; border-radius:10px; border:1.5px solid rgba(255,255,255,.2); cursor:pointer; font-family:'Urbanist',sans-serif; transition:all .15s; }
.octa-btn-call:hover { border-color:#fff; }
.octa-btn-quote { font-size:13px; font-weight:700; background:#1A3C8F; color:#fff; padding:12px 18px; border-radius:10px; border:none; cursor:pointer; font-family:'Urbanist',sans-serif; transition:background .15s; }
.octa-btn-quote:hover { background:#2451c4; }
.octa-btn-book { font-size:14px; font-weight:900; background:#FFCC00; color:#0D2260; padding:14px 18px; border-radius:10px; border:none; cursor:pointer; font-family:'Urbanist',sans-serif; transition:all .15s; }
.octa-btn-book:hover { background:#ffd740; }
.octa-deposit { padding:0 20px 10px; display:flex; align-items:center; gap:6px; font-size:11px; color:rgba(255,255,255,.4); }
.octa-note { padding:0 20px 16px; font-size:10px; color:rgba(255,255,255,.3); text-align:center; }

.offer-similar-section { padding:0 36px 40px; }
.offer-similar-title { font-size:20px; font-weight:900; color:#fff; margin-bottom:18px; font-family:'Urbanist',sans-serif; letter-spacing:-.01em; }
.offer-similar-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.osim-card { background:#0d1e42; border:1px solid rgba(255,255,255,.08); border-radius:12px; overflow:hidden; cursor:pointer; transition:all .18s; }
.osim-card:hover { border-color:rgba(255,204,0,.3); transform:translateY(-3px); }
.osim-photo { height:130px; position:relative; overflow:hidden; }
.osim-photo-grad { position:absolute; inset:0; background:linear-gradient(to bottom,transparent 30%,rgba(6,16,42,.95)); }
.osim-resort { position:absolute; bottom:8px; left:10px; font-size:9px; font-weight:800; color:rgba(255,204,0,.85); letter-spacing:.05em; text-transform:uppercase; }
.osim-body { padding:12px 14px; }
.osim-title { font-size:13px; font-weight:800; color:#fff; margin-bottom:6px; line-height:1.25; font-family:'Urbanist',sans-serif; }
.osim-price { font-size:20px; font-weight:900; color:#FFCC00; font-family:'Urbanist',sans-serif; }
.osim-pp { font-size:10px; color:rgba(255,204,0,.6); }

@media (max-width:900px) {
  .offer-main-grid { grid-template-columns:1fr; }
  .offer-right-col { order:-1; }
  .offer-similar-grid { grid-template-columns:1fr 1fr; }
  .otc-incl-grid { grid-template-columns:1fr; }
  .otc-info-grid { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .offer-similar-grid { grid-template-columns:1fr; }
  .offer-main-grid { padding:16px 16px 24px; }
  .offer-hero-title { font-size:22px; }
}
/* ===== END OFFER DETAIL PAGE ===== */

/* ===== ADMIN OFFERTE GLASSMORPHISM ===== */
.offers-admin-wrap{padding:0 !important;background:transparent !important}
.offers-top-bar{display:flex !important;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}
.offers-title{color:#fff !important;font-size:24px !important;font-weight:800 !important;font-family:'Urbanist',sans-serif !important}
.offers-title span{color:#FFCC00}
.offers-sub{color:rgba(255,255,255,.45);font-size:13px;margin-top:3px}
.offers-btn-group{display:flex;gap:10px;flex-wrap:wrap}
.btn-glass-vts{display:flex !important;align-items:center;gap:8px;padding:10px 18px !important;border-radius:14px !important;border:1px solid rgba(255,255,255,.14) !important;background:rgba(255,255,255,.06) !important;color:rgba(255,255,255,.85) !important;font-size:13px;font-weight:600 !important;cursor:pointer !important;font-family:'Urbanist',sans-serif !important;transition:all .2s}
.btn-glass-vts:hover{background:rgba(255,255,255,.11) !important;border-color:rgba(255,255,255,.22)}
.btn-gold-vts{display:flex !important;align-items:center;gap:8px;padding:10px 20px !important;border-radius:14px !important;background:#FFCC00 !important;border:none !important;color:#06102a !important;font-size:13px;font-weight:800 !important;cursor:pointer !important;font-family:'Urbanist',sans-serif !important;box-shadow:0 4px 20px rgba(255,204,0,.28);transition:all .2s}
.btn-gold-vts:hover{box-shadow:0 6px 24px rgba(255,204,0,.4);transform:translateY(-1px)}
.btn-gold-outline-vts{display:flex !important;align-items:center;gap:8px;padding:10px 18px !important;border-radius:14px !important;background:rgba(255,204,0,.09) !important;border:1px solid rgba(255,204,0,.35) !important;color:#FFCC00 !important;font-size:13px;font-weight:700 !important;cursor:pointer !important;font-family:'Urbanist',sans-serif !important}
.offers-progress{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:13px 18px;margin-bottom:16px;display:flex;align-items:center;gap:14px}
.offers-progress-label{font-size:13px;color:rgba(255,255,255,.7);font-weight:600;flex:1;font-family:'Urbanist',sans-serif}
.offers-progress-track{flex:2;height:6px;background:rgba(255,255,255,.08);border-radius:10px;overflow:hidden}
.offers-progress-fill{height:100%;background:#FFCC00;border-radius:10px;transition:width .4s}
.offers-progress-count{font-size:12px;color:#FFCC00;font-weight:700}
.offers-alert-resort{background:rgba(255,204,0,.07);border:1px solid rgba(255,204,0,.22);border-radius:14px;padding:13px 18px;margin-bottom:18px;display:flex;align-items:center;gap:12px}
.offers-alert-icon{width:34px;height:34px;border-radius:10px;background:rgba(255,204,0,.14);display:flex;align-items:center;justify-content:center;color:#FFCC00;font-size:18px;font-weight:900;flex-shrink:0}
.offers-alert-text{color:rgba(255,255,255,.75);font-size:13px;font-weight:500;flex:1;font-family:'Urbanist',sans-serif}
.offers-alert-text strong{color:#FFCC00;font-weight:700}
.offers-alert-link{color:#FFCC00;font-size:12px;font-weight:700;background:rgba(255,204,0,.1);padding:6px 14px;border-radius:10px;border:1px solid rgba(255,204,0,.22);cursor:pointer;white-space:nowrap;font-family:'Urbanist',sans-serif}
.offers-tabs-bar{display:flex !important;gap:5px;margin-bottom:20px;background:rgba(255,255,255,.04) !important;padding:5px !important;border-radius:15px !important;border:1px solid rgba(255,255,255,.09) !important;overflow-x:auto}
.offers-tab{padding:8px 16px !important;border-radius:11px !important;font-size:13px;font-weight:600 !important;color:rgba(255,255,255,.45) !important;cursor:pointer !important;transition:all .2s;display:flex !important;align-items:center;gap:7px;white-space:nowrap;border:1px solid transparent !important;font-family:'Urbanist',sans-serif !important}
.offers-tab.active{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.12)}
.offers-tab-count{background:rgba(255,255,255,.1);color:rgba(255,255,255,.6);font-size:11px;font-weight:700;padding:2px 7px;border-radius:20px}
.offers-tab.active .offers-tab-count{background:#FFCC00;color:#06102a}
.offers-settings-panel{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:18px 22px;margin-bottom:18px;display:flex;gap:24px;align-items:flex-end;flex-wrap:wrap}
.offers-setting-field{display:flex;flex-direction:column;gap:6px}
.offers-setting-label{font-size:11px;color:rgba(255,255,255,.4);font-weight:700;letter-spacing:.7px;text-transform:uppercase;font-family:'Urbanist',sans-serif}
.offers-setting-input{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 14px;color:#fff;font-size:14px;font-weight:600;font-family:'Urbanist',sans-serif;width:130px}
.offers-setting-last{font-size:12px;color:rgba(255,255,255,.3);padding:8px 0;font-family:'Urbanist',sans-serif}
.offers-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px}
.offer-card-vts{background:rgba(255,255,255,.05) !important;border:1px solid rgba(255,255,255,.1) !important;border-radius:20px !important;overflow:hidden;transition:border-color .2s}
.offer-card-vts:hover{border-color:rgba(255,255,255,.2)}
.offer-card-vts.price-update{border-color:rgba(239,68,68,.35)}
.offer-card-img{width:100%;height:130px;object-fit:cover;background:linear-gradient(135deg,#1A3C8F,#0D2260);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.15);font-size:32px;position:relative}
.offer-card-badges{position:absolute;top:10px;left:10px;display:flex;gap:5px;flex-wrap:wrap}
.offer-badge{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px;font-family:'Urbanist',sans-serif}
.offer-badge-blue{background:rgba(26,60,143,.8);color:#7eb6ff;border:1px solid rgba(126,182,255,.25)}
.offer-badge-gold{background:#FFCC00;color:#06102a}
.offer-badge-green{background:rgba(34,197,94,.18);color:#4ade80;border:1px solid rgba(74,222,128,.25)}
.offer-badge-purple{background:rgba(139,92,246,.18);color:#a78bfa;border:1px solid rgba(167,139,250,.25)}
.offer-badge-gray{background:rgba(255,255,255,.08);color:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.12)}
.offer-badge-red{background:rgba(239,68,68,.15);color:#f87171;border:1px solid rgba(248,113,113,.25)}
.offer-badge-conf{background:rgba(255,255,255,.08);color:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.12);font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;font-family:'Urbanist',sans-serif}
.offer-card-body{padding:15px}
.offer-card-resort{font-size:10px;color:rgba(255,255,255,.4);font-weight:700;letter-spacing:.8px;text-transform:uppercase;margin-bottom:5px;font-family:'Urbanist',sans-serif}
.offer-card-title{font-size:14px;color:#fff;font-weight:700;margin-bottom:10px;line-height:1.3;font-family:'Urbanist',sans-serif}
.offer-card-meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:11px}
.offer-meta-pill{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);color:rgba(255,255,255,.6);font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;font-family:'Urbanist',sans-serif}
.offer-card-price{display:flex;align-items:baseline;gap:6px;margin-bottom:13px}
.offer-price-from{font-size:11px;color:rgba(255,255,255,.35);font-weight:600}
.offer-price-val{font-size:20px;color:#FFCC00;font-weight:900;font-family:'Urbanist',sans-serif}
.offer-price-orig{font-size:12px;color:rgba(255,255,255,.28);text-decoration:line-through}
.offer-price-disc{font-size:11px;color:#4ade80;font-weight:700}
.offer-card-actions{display:flex;gap:7px}
.btn-approve-vts{flex:1;padding:8px;border-radius:11px;border:none;background:#FFCC00;color:#06102a;font-size:12px;font-weight:800;cursor:pointer;font-family:'Urbanist',sans-serif;box-shadow:0 2px 10px rgba(255,204,0,.2)}
.btn-icon-vts{padding:8px 12px;border-radius:11px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:rgba(255,255,255,.65);font-size:12px;cursor:pointer;font-family:'Urbanist',sans-serif}
.btn-del-vts{padding:8px 12px;border-radius:11px;border:1px solid rgba(239,68,68,.22);background:rgba(239,68,68,.06);color:rgba(239,68,68,.75);font-size:12px;cursor:pointer;font-family:'Urbanist',sans-serif}
.offers-conf-bar{height:4px;border-radius:4px;margin-top:5px;background:rgba(255,255,255,.08);overflow:hidden;width:60px}
.offers-conf-fill{height:100%;border-radius:4px}
.offers-empty-state{text-align:center;padding:60px 20px;color:rgba(255,255,255,.4)}
.offers-empty-state h3{font-size:18px;font-weight:700;color:rgba(255,255,255,.6);margin-bottom:8px;font-family:'Urbanist',sans-serif}
.offers-doc-row{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:14px 18px;margin-bottom:10px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.offers-doc-info{flex:1;min-width:200px}
.offers-doc-name{font-size:13px;font-weight:700;color:#fff;font-family:'Urbanist',sans-serif;margin-bottom:3px}
.offers-doc-resort{font-size:11px;color:rgba(255,255,255,.4);font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-family:'Urbanist',sans-serif}
.offers-doc-stats{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.offers-doc-actions{display:flex;gap:7px}
@media(max-width:768px){.offers-top-bar{flex-direction:column;align-items:flex-start}.offers-settings-panel{flex-direction:column;gap:14px}.offers-cards-grid{grid-template-columns:1fr}}
/* ===== END ADMIN OFFERTE ===== */

/* ===== OFFER EDIT MODAL ===== */
.oem-overlay{position:fixed;inset:0;background:rgba(4,8,22,.9);z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding:20px;overflow-y:auto;min-height:100vh}
.oem-wrap{width:100% !important;max-width:920px !important;min-height:500px;background:linear-gradient(160deg,#0e1f55,#06102a) !important;border:1px solid rgba(255,255,255,.12) !important;border-radius:24px !important;overflow:hidden;font-family:'Urbanist',sans-serif !important;margin:auto;box-sizing:border-box !important}
.oem-hd{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.1);gap:16px}
.oem-hd-info{flex:1;min-width:0}
.oem-title{color:#fff;font-size:16px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.oem-sub{color:rgba(255,255,255,.38);font-size:11px;margin-top:2px}
.oem-hd-right{display:flex;align-items:center;gap:8px;flex-shrink:0}
.oem-ai-badge{background:rgba(139,92,246,.15);color:#a78bfa;font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;border:1px solid rgba(139,92,246,.25)}
.oem-close{width:32px;height:32px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.6);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0}
.oem-body{display:grid !important;grid-template-columns:1fr 240px !important;min-height:400px}
.oem-left{border-right:none !important;border-left:1px solid rgba(255,255,255,.1);padding:16px;order:2}
.oem-right{padding:20px 24px 24px;overflow-y:auto;max-height:75vh;order:1;min-width:0}
.oem-img{width:100%;height:148px;border-radius:14px;background:linear-gradient(135deg,#1A3C8F,#06102a);display:flex;align-items:center;justify-content:center;font-size:36px;margin-bottom:11px;border:1px solid rgba(255,255,255,.1);overflow:hidden}
.oem-img img{width:100%;height:100%;object-fit:cover}
.oem-upload{width:100%;padding:8px;border-radius:10px;border:1px dashed rgba(255,204,0,.35);background:rgba(255,204,0,.06);color:#FFCC00;font-size:12px;font-weight:700;cursor:pointer;font-family:'Urbanist',sans-serif;margin-bottom:14px;text-align:center;display:block}
.oem-fg{margin-bottom:13px}
.oem-lbl{font-size:10px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:rgba(255,255,255,.32);margin-bottom:5px;display:block;font-family:'Urbanist',sans-serif}
.oem-inp{width:100% !important;background:rgba(255,255,255,.06) !important;border:1px solid rgba(255,255,255,.12) !important;border-radius:10px !important;padding:8px 12px !important;color:#fff !important;font-size:13px !important;font-weight:600;font-family:'Urbanist',sans-serif !important;box-sizing:border-box !important}
.oem-sel{width:100% !important;background:rgba(255,255,255,.06) !important;border:1px solid rgba(255,255,255,.12) !important;border-radius:10px !important;padding:8px 12px !important;color:#fff !important;font-size:13px !important;font-family:'Urbanist',sans-serif !important;cursor:pointer;box-sizing:border-box !important}
.oem-status-row{display:flex;gap:5px;flex-wrap:wrap}
.oem-sbtn{font-size:11px;font-weight:700;padding:4px 11px;border-radius:20px;cursor:pointer;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:rgba(255,255,255,.4);font-family:'Urbanist',sans-serif;transition:all .15s}
.oem-sbtn.s-draft{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.22)}
.oem-sbtn.s-published{background:rgba(74,222,128,.14);color:#4ade80;border-color:rgba(74,222,128,.28)}
.oem-sbtn.s-featured{background:rgba(255,204,0,.13);color:#FFCC00;border-color:rgba(255,204,0,.28)}
.oem-sbtn.s-needs_review{background:rgba(239,68,68,.11);color:#f87171;border-color:rgba(239,68,68,.25)}
.oem-conf-bar{height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:4px}
.oem-conf-fill{height:100%;border-radius:4px}
.oem-conf-txt{font-size:10px;color:rgba(255,255,255,.3);margin-top:3px;font-family:'Urbanist',sans-serif}
.oem-ainote{font-size:11px;color:rgba(255,255,255,.3);line-height:1.5;font-family:'Urbanist',sans-serif}
.oem-tabs{display:flex;gap:4px;margin-bottom:15px;background:rgba(255,255,255,.04);padding:4px;border-radius:11px;border:1px solid rgba(255,255,255,.08);overflow-x:auto;white-space:nowrap}
.oem-tab{padding:6px 14px;border-radius:8px;font-size:12px;font-weight:600;color:rgba(255,255,255,.38);cursor:pointer;font-family:'Urbanist',sans-serif;transition:all .15s;border:1px solid transparent;white-space:nowrap;flex-shrink:0}
.oem-tab.active{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.14)}
.oem-ai-warn{background:rgba(139,92,246,.08);border:1px solid rgba(139,92,246,.18);border-radius:10px;padding:8px 12px;font-size:11px;color:rgba(167,139,250,.85);font-family:'Urbanist',sans-serif;margin-bottom:13px}
.oem-lang-tabs{display:flex;gap:4px;margin-bottom:10px;flex-wrap:wrap}
.oem-ltab{padding:4px 10px;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;font-family:'Urbanist',sans-serif;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);color:rgba(255,255,255,.38);transition:all .15s}
.oem-ltab.active{background:rgba(255,204,0,.1);border-color:rgba(255,204,0,.3);color:#FFCC00}
.oem-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:13px}
.oem-grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:13px}
.oem-ta{width:100% !important;background:rgba(255,255,255,.06) !important;border:1px solid rgba(255,255,255,.12) !important;border-radius:10px !important;padding:9px 12px !important;color:#fff !important;font-size:13px !important;font-family:'Urbanist',sans-serif !important;resize:vertical;min-height:72px;box-sizing:border-box !important}
.oem-ta:focus{outline:none;border-color:rgba(255,204,0,.4)}
.oem-sec{font-size:10px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:9px;padding-top:13px;border-top:1px solid rgba(255,255,255,.08);font-family:'Urbanist',sans-serif}
.oem-price-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:13px}
.oem-pbox{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:11px}
.oem-plbl{font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:4px}
.oem-pinp{background:transparent !important;border:none !important;color:#FFCC00 !important;font-size:17px !important;font-weight:900 !important;font-family:'Urbanist',sans-serif !important;width:100% !important;outline:none !important;box-sizing:border-box !important;padding:4px 0 !important}
.oem-psub{font-size:10px;color:rgba(255,255,255,.28);margin-top:2px}
.oem-disc-badge{font-size:11px;color:#4ade80;font-weight:700}
.oem-badge-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:13px}
.oem-bpill{font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;cursor:pointer;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:rgba(255,255,255,.4);font-family:'Urbanist',sans-serif;transition:all .15s}
.oem-bpill.on{background:rgba(255,204,0,.13);border-color:rgba(255,204,0,.35);color:#FFCC00}
.oem-inc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:13px}
.oem-ipill{padding:7px 6px;border-radius:10px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);color:rgba(255,255,255,.4);font-size:11px;font-weight:600;text-align:center;cursor:pointer;font-family:'Urbanist',sans-serif;transition:all .15s}
.oem-ipill.on{background:rgba(26,60,143,.28);border-color:rgba(130,180,255,.28);color:#7eb6ff}
.oem-chk-row{display:flex;align-items:center;gap:8px;margin-bottom:13px}
.oem-chk-row input{accent-color:#FFCC00;width:16px;height:16px;cursor:pointer}
.oem-chk-row label{font-size:13px;color:rgba(255,255,255,.7);font-family:'Urbanist',sans-serif;cursor:pointer}
.oem-ft{padding:14px 20px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.oem-ft-l{display:flex;gap:8px}
.oem-ft-r{display:flex;align-items:center;gap:8px}
.oem-btn-del{padding:9px 18px;border-radius:12px;border:1px solid rgba(239,68,68,.25) !important;background:rgba(239,68,68,.07) !important;color:rgba(239,68,68,.8) !important;font-size:13px;font-weight:700;cursor:pointer;font-family:'Urbanist',sans-serif}
.oem-btn-draft{padding:9px 18px;border-radius:12px !important;border:1px solid rgba(255,255,255,.16) !important;background:rgba(255,255,255,.06) !important;color:rgba(255,255,255,.75) !important;font-size:13px;font-weight:700;cursor:pointer;font-family:'Urbanist',sans-serif}
.oem-btn-pub{padding:9px 22px;border-radius:12px !important;background:#FFCC00 !important;border:none !important;color:#06102a !important;font-size:13px;font-weight:800;cursor:pointer;font-family:'Urbanist',sans-serif;box-shadow:0 3px 14px rgba(255,204,0,.22)}
.oem-saving{font-size:12px;color:rgba(255,255,255,.35);font-family:'Urbanist',sans-serif}
@media(max-width:680px){.oem-body{grid-template-columns:1fr !important}.oem-left{border-left:none !important;border-top:1px solid rgba(255,255,255,.1);order:2}.oem-right{max-height:none;order:1}.oem-grid2,.oem-grid3,.oem-price-grid{grid-template-columns:1fr 1fr}.oem-inc-grid{grid-template-columns:repeat(3,1fr)}}
/* ===== END OFFER EDIT MODAL ===== */


/* OffersV2 form inputs — testo bianco forzato */
#ov2-root .ov2-inp,
#ov2-root .ov2-sel,
#ov2-root .ov2-ta {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
#ov2-root .ov2-inp::placeholder,
#ov2-root .ov2-ta::placeholder {
  color: rgba(255,255,255,.3) !important;
  -webkit-text-fill-color: rgba(255,255,255,.3) !important;
}
#ov2-root .ov2-sel option {
  background: #0f2344;
  color: #ffffff;
}

/* PacchettiTour — forza colore testo */
#sec-pacchetti-tour .section-body,
#sec-pacchetti-tour .section-body *:not(select):not(option) {
  color: #e2e8f0;
}
#vt2-root { color: #e2e8f0 !important; }
#vt2-root h2, #vt2-root strong, #vt2-root .vt2-stop-name { color: #ffffff !important; }
#vt2-root .vt2-lbl { color: #64748b !important; }
#vt2-root .vt2-inp, #vt2-root .vt2-sel, #vt2-root .vt2-ta { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; }
#vt2-root .vt2-sel option { background: #0f2344; color: #ffffff; }
#vt2-root .vt2-tab { color: rgba(255,255,255,.45); }
#vt2-root .vt2-tab.on { color: #ffffff !important; }
#vt2-root .vt2-btn-g { color: #06102a !important; }

/* PacchettiTour layout fix */
#sec-pacchetti-tour {
  width: 100% !important;
  min-height: calc(100vh - 56px) !important;
  padding: 0 !important;
}
#sec-pacchetti-tour .section-body {
  width: 100% !important;
  min-height: 100% !important;
  padding: 0 !important;
  background: #06102a !important;
}
#vt2-root {
  width: 100% !important;
  min-height: 100vh !important;
  background: #06102a !important;
  box-sizing: border-box !important;
}

/* ════════════════════════════════════════════════════════════════
   GUIDE MEGA-MENU (dropdown sotto nav-link Guide)
   Auto-injected da vts-nav.js · 2026-05-03
   ════════════════════════════════════════════════════════════════ */
.vts-mm-item { position: relative; display: inline-block; }
.vts-mm-item .nav-link { display: inline-flex !important; align-items: center !important; gap: 4px !important; }
.vts-mm-caret {
  font-size: 9px !important;
  opacity: 0.7;
  transition: transform 200ms ease;
  display: inline-block;
}
.vts-mm-item:hover .vts-mm-caret,
.vts-mm-item.vts-mm-open .vts-mm-caret { transform: rotate(180deg); opacity: 1; }

.vts-mm-dd {
  position: absolute;
  top: calc(100% + 14px);
  left: 50%;
  transform: translateX(-50%) translateY(-8px);
  width: min(720px, 92vw);
  background: rgba(10, 26, 78, 0.96);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  backdrop-filter: blur(20px) saturate(180%);
  border: 1.5px solid rgba(255, 255, 255, 0.12);
  border-radius: 18px;
  padding: 18px;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 204, 0, 0.06);
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: opacity 200ms ease, transform 240ms cubic-bezier(.2,.6,.2,1), visibility 0s linear 200ms;
  z-index: 9998;
}
.vts-mm-item:hover .vts-mm-dd,
.vts-mm-item:focus-within .vts-mm-dd,
.vts-mm-item.vts-mm-open .vts-mm-dd {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
  transition: opacity 200ms ease, transform 240ms cubic-bezier(.2,.6,.2,1), visibility 0s;
}

.vts-mm-dd::before {
  content: '';
  position: absolute;
  top: -7px; left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 14px; height: 14px;
  background: rgba(10, 26, 78, 0.96);
  border-left: 1.5px solid rgba(255, 255, 255, 0.12);
  border-top: 1.5px solid rgba(255, 255, 255, 0.12);
}

.vts-mm-loading,
.vts-mm-empty {
  padding: 40px 20px;
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
  font-family: Urbanist, sans-serif;
  font-size: 13px;
  font-weight: 600;
}

.vts-mm-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.vts-mm-card {
  display: flex;
  flex-direction: column;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  transition: transform 200ms cubic-bezier(.2,.6,.2,1), border-color 200ms, background 200ms;
}
.vts-mm-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 204, 0, 0.4);
  background: rgba(255, 204, 0, 0.06);
}

.vts-mm-card-img {
  aspect-ratio: 16/10;
  background-size: cover;
  background-position: center;
  background-color: #050a1a;
  position: relative;
}
.vts-mm-card-img::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 60%, rgba(0,0,0,0.4));
}

.vts-mm-card-body {
  padding: 10px 12px 12px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.vts-mm-card-cat {
  font-family: Urbanist, sans-serif;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #FFCC00;
  margin-bottom: 2px;
}
.vts-mm-card-title {
  font-family: Urbanist, sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  margin: 0;
}
.vts-mm-card-meta {
  font-family: Urbanist, sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.45);
  letter-spacing: 0.3px;
  margin-top: auto;
}

.vts-mm-footer {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  text-align: center;
}
.vts-mm-footer a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Urbanist, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: #FFCC00;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 999px;
  background: rgba(255, 204, 0, 0.1);
  border: 1px solid rgba(255, 204, 0, 0.25);
  transition: background 200ms, border-color 200ms;
}
.vts-mm-footer a:hover {
  background: rgba(255, 204, 0, 0.18);
  border-color: rgba(255, 204, 0, 0.5);
}

/* Tablet/mobile: dropdown full-width allineato sotto nav, 2-col grid */
@media (max-width: 1024px) {
  .vts-mm-dd {
    width: calc(100vw - 24px);
    left: 12px;
    right: 12px;
    transform: translateY(-8px);
  }
  .vts-mm-item:hover .vts-mm-dd,
  .vts-mm-item.vts-mm-open .vts-mm-dd { transform: translateY(0); }
  .vts-mm-dd::before { left: 50%; }
  .vts-mm-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .vts-mm-grid { grid-template-columns: 1fr; }
  .vts-mm-card { flex-direction: row; align-items: stretch; }
  .vts-mm-card-img { aspect-ratio: auto; width: 110px; flex-shrink: 0; }
  .vts-mm-card-body { padding: 10px 14px; }
}
