body.tniq-paywall-open { overflow: hidden; }

.tniq-paywall[hidden] { display: none !important; }

.tniq-paywall {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(8, 14, 35, .74);
  backdrop-filter: blur(10px);
  overflow: auto;
}

.tniq-paywall-dialog {
  position: relative;
  width: min(1040px, 100%);
  max-height: calc(100vh - 40px);
  overflow: auto;
  padding: 26px;
  border-radius: 28px;
  background: #fff;
  color: #14203b;
  box-shadow: 0 30px 90px rgba(0,0,0,.35);
}

.tniq-paywall-close {
  position: absolute;
  top: 17px;
  right: 20px;
  border: 0;
  background: transparent;
  color: #17233f;
  font-size: 34px;
  line-height: 1;
  cursor: pointer;
}

.tniq-paywall-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 48px 20px 0;
  border-bottom: 1px solid #e9ecf5;
}

.tniq-paywall-brand {
  font-size: 26px;
  font-weight: 900;
  color: #4d36ee;
}

.tniq-paywall-stripe {
  font-size: 14px;
  font-weight: 800;
  color: #5b42ef;
}

.tniq-paywall-grid {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 28px;
  padding: 28px 0 22px;
}

.tniq-paywall-intro small {
  color: #5d43ef;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.tniq-paywall-intro h2 {
  margin: 10px 0 12px;
  font-size: clamp(32px, 4vw, 54px);
  line-height: 1.03;
}

.tniq-paywall-intro p {
  margin: 0;
  font-size: 17px;
  line-height: 1.6;
  color: #58627a;
}

.tniq-paywall-preview {
  margin-top: 22px;
  padding: 18px;
  display: grid;
  gap: 8px;
  border: 1px solid #e0e4f1;
  border-radius: 18px;
  background: #f8f8ff;
}

.tniq-paywall-preview strong { margin-bottom: 5px; }
.tniq-paywall-preview span { color: #33405c; }

.tniq-paywall-includes {
  padding: 22px;
  border: 1px solid #e0e4f1;
  border-radius: 20px;
  box-shadow: 0 14px 40px rgba(27,39,73,.07);
}

.tniq-paywall-includes h3 { margin: 0 0 15px; font-size: 22px; }
.tniq-paywall-includes ul,
.tniq-paywall-plan ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 11px;
}

.tniq-paywall-includes li,
.tniq-paywall-plan li { line-height: 1.4; }

.tniq-paywall-plans {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.tniq-paywall-plan {
  position: relative;
  padding: 24px;
  border: 1px solid #e0e4f1;
  border-radius: 22px;
  background: #fff;
}

.tniq-paywall-plan.featured {
  border: 2px solid #5137f4;
  box-shadow: 0 16px 45px rgba(81,55,244,.14);
}

.tniq-paywall-check {
  position: absolute;
  top: 18px;
  right: 18px;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  color: #fff;
  background: #5137f4;
  font-weight: 900;
}

.tniq-paywall-plan h3 { margin: 0; font-size: 25px; color: #5137f4; }
.tniq-paywall-plan.compare h3 { color: #ff5b2e; }
.tniq-paywall-plan > p { margin: 6px 0 14px; color: #65708a; }

.tniq-paywall-price {
  margin-bottom: 16px;
  font-size: 36px;
  font-weight: 900;
}

.tniq-paywall-price small {
  font-size: 13px;
  font-weight: 600;
  color: #65708a;
}

.tniq-paywall-plan button {
  width: 100%;
  margin-top: 22px;
  padding: 14px 18px;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #6248ff, #4128e9);
  color: #fff;
  font-size: 16px;
  font-weight: 900;
  cursor: pointer;
}

.tniq-paywall-plan.compare button {
  background: linear-gradient(135deg, #ff7b37, #ff4d25);
}

.tniq-paywall-plan button:disabled {
  opacity: .65;
  cursor: wait;
}

.tniq-paywall-trust {
  margin: 18px 0 0;
  text-align: center;
  color: #58627a;
  font-weight: 700;
}

.tniq-paywall-message {
  min-height: 24px;
  margin-top: 10px;
  text-align: center;
  color: #5137f4;
  font-weight: 800;
}

@media (max-width: 760px) {
  .tniq-paywall { padding: 0; align-items: end; }
  .tniq-paywall-dialog {
    max-height: 94vh;
    padding: 20px;
    border-radius: 26px 26px 0 0;
  }
  .tniq-paywall-header { padding-bottom: 16px; }
  .tniq-paywall-grid,
  .tniq-paywall-plans { grid-template-columns: 1fr; }
  .tniq-paywall-grid { gap: 18px; padding-top: 20px; }
  .tniq-paywall-intro h2 { font-size: 34px; }
}


.tniq-free-dialog { width: min(960px, 100%); }
.tniq-free-badge {
  padding: 8px 12px;
  border-radius: 999px;
  background: #eefbf3;
  color: #1f8d4d;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .05em;
}
.tniq-free-layout {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 28px;
  padding-top: 28px;
}
.tniq-free-form {
  align-self: start;
  display: grid;
  gap: 12px;
  padding: 24px;
  border: 1px solid #e0e4f1;
  border-radius: 22px;
  background: #fafaff;
  box-shadow: 0 16px 45px rgba(81,55,244,.08);
}
.tniq-free-form label { font-weight: 900; }
.tniq-free-form input {
  width: 100%;
  box-sizing: border-box;
  padding: 15px 16px;
  border: 1px solid #ccd3e5;
  border-radius: 14px;
  font: inherit;
  outline: none;
}
.tniq-free-form input:focus {
  border-color: #6047f5;
  box-shadow: 0 0 0 4px rgba(96,71,245,.12);
}
.tniq-free-form button {
  padding: 15px 18px;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #6248ff, #4128e9);
  color: #fff;
  font-size: 16px;
  font-weight: 900;
  cursor: pointer;
}
.tniq-free-form button:disabled { opacity: .65; cursor: wait; }
.tniq-free-form > p { margin: 0; color: #65708a; font-size: 13px; line-height: 1.5; }
@media (max-width: 760px) { .tniq-free-layout { grid-template-columns: 1fr; } }

/* TripNestIQ Free First Plan WOW V2.3 — approved dark glass visual */
.tniq-paywall {
  align-items:center;
  justify-items:center;
  padding:14px;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 15%,rgba(91,70,222,.25),transparent 34%),
    radial-gradient(circle at 86% 75%,rgba(59,85,172,.22),transparent 36%),
    rgba(3,8,25,.82);
  backdrop-filter:blur(16px);
}

.tniq-wow-dialog {
  position:relative;
  box-sizing:border-box;
  width:min(1240px,calc(100vw - 28px));
  height:min(820px,calc(100vh - 28px));
  max-height:calc(100vh - 28px);
  padding:18px;
  overflow:auto;
  color:#f7f7ff;
  border:1px solid rgba(210,215,255,.34);
  border-radius:28px;
  background:
    radial-gradient(circle at 72% 18%,rgba(241,236,255,.88),transparent 32%),
    linear-gradient(116deg,
      rgba(21,29,64,.96) 0%,
      rgba(31,40,79,.94) 47%,
      rgba(238,236,250,.97) 48%,
      rgba(249,248,255,.99) 100%);
  box-shadow:
    0 42px 120px rgba(0,0,0,.58),
    inset 0 1px 0 rgba(255,255,255,.33);
  scrollbar-width:thin;
  scrollbar-color:rgba(149,132,255,.6) transparent;
}

.tniq-wow-dialog::before {
  content:'';
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(90deg,rgba(255,255,255,.03),transparent 42%),
    radial-gradient(circle at 36% 0%,rgba(113,89,255,.18),transparent 38%);
}

.tniq-wow-dialog::after {
  content:'';
  position:absolute;
  z-index:0;
  left:0;
  right:0;
  bottom:0;
  height:100px;
  pointer-events:none;
  opacity:.65;
  background:
    linear-gradient(164deg,transparent 38%,rgba(112,91,240,.15) 39% 52%,transparent 53%),
    linear-gradient(194deg,transparent 45%,rgba(181,171,255,.18) 46% 58%,transparent 59%);
}

.tniq-wow-header {
  position:relative;
  z-index:3;
  min-height:46px;
  padding:0 58px 13px 4px;
  border-bottom:1px solid rgba(220,223,255,.18);
}

.tniq-wow-header .tniq-paywall-brand {
  color:#9d8bff;
  font-size:27px;
  text-shadow:0 0 24px rgba(119,95,255,.28);
}

.tniq-wow-header .tniq-free-badge {
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.48);
  background:rgba(255,255,255,.14);
  color:#75d98d;
  backdrop-filter:blur(12px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.26);
}

.tniq-wow-dialog .tniq-paywall-close {
  z-index:8;
  top:15px;
  right:18px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#edf0ff;
  background:rgba(21,29,64,.62);
  font-size:29px;
  backdrop-filter:blur(10px);
}

.tniq-wow-layout {
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);
  gap:28px;
  padding-top:16px;
  align-items:start;
}

.tniq-wow-media,
.tniq-wow-content {
  min-width:0;
}

.tniq-wow-main {
  position:relative;
  height:clamp(315px,43vh,380px);
  overflow:hidden;
  border:1px solid rgba(196,202,255,.22);
  border-radius:22px;
  background:#11162a var(--tniq-poster) center/cover no-repeat;
  box-shadow:0 25px 60px rgba(0,0,0,.36);
}

.tniq-wow-main video,
.tniq-wow-fallback {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  background:
    radial-gradient(circle at 72% 28%,rgba(255,194,118,.72),transparent 24%),
    linear-gradient(145deg,#79c6ed 0%,#315d8f 48%,#26284c 100%);
  background-size:cover;
  background-position:center;
}

.tniq-wow-shade {
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(4,8,25,.06),rgba(4,8,25,.12) 42%,rgba(3,7,22,.86)),
    linear-gradient(90deg,rgba(8,12,34,.12),transparent 45%);
}

.tniq-wow-reel {
  position:absolute;
  top:16px;
  left:16px;
  padding:9px 13px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  color:#fff;
  background:rgba(9,15,38,.72);
  backdrop-filter:blur(12px);
  font-size:12px;
  font-weight:900;
}

.tniq-wow-play {
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:78px;
  height:78px;
  border:2px solid rgba(255,255,255,.88);
  border-radius:50%;
  color:#fff;
  background:linear-gradient(145deg,#7257ff,#4a2ee2);
  box-shadow:0 18px 44px rgba(54,29,195,.48);
  font-size:27px;
  cursor:pointer;
}

.tniq-wow-destination {
  position:absolute;
  left:22px;
  right:22px;
  bottom:18px;
  color:#fff;
}

.tniq-wow-destination strong {
  display:block;
  font-size:31px;
  line-height:1.05;
  text-shadow:0 3px 18px rgba(0,0,0,.54);
}

.tniq-wow-destination small {
  display:block;
  margin-top:5px;
  color:rgba(255,255,255,.82);
}

.tniq-wow-thumbs {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}

.tniq-wow-thumb {
  position:relative;
  height:100px;
  overflow:hidden;
  border:1px solid rgba(196,202,255,.18);
  border-radius:16px;
  background:linear-gradient(145deg,#b3c9e8,#5c69a3);
  background-size:cover;
  background-position:center;
  box-shadow:0 12px 28px rgba(0,0,0,.22);
}

.tniq-wow-thumb::after {
  content:'';
  position:absolute;
  inset:28% 0 0;
  background:linear-gradient(transparent,rgba(3,7,22,.88));
}

.tniq-wow-thumb span {
  position:absolute;
  z-index:2;
  left:10px;
  right:8px;
  bottom:8px;
  color:#fff;
  font-size:11px;
  line-height:1.2;
  font-weight:900;
}

.tniq-wow-summary {
  margin-top:10px;
  padding:14px 16px;
  border:1px solid rgba(191,197,255,.16);
  border-radius:18px;
  color:#fff;
  background:
    linear-gradient(145deg,rgba(40,48,91,.96),rgba(14,20,48,.98));
  box-shadow:0 16px 34px rgba(0,0,0,.22);
}

.tniq-wow-summary-title {
  margin-bottom:10px;
  color:#a99cff;
  font-weight:900;
}

.tniq-wow-summary-grid {
  display:grid;
  grid-template-columns:1.18fr 1.42fr .65fr .72fr;
  gap:8px;
}

.tniq-wow-summary-grid span {
  display:flex;
  gap:7px;
  align-items:center;
  min-width:0;
  color:#b9bfd4;
  font-size:12px;
}

.tniq-wow-summary-grid b {
  min-width:0;
  overflow:hidden;
  color:#fff;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.tniq-wow-chips {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.tniq-wow-chips span {
  padding:8px 11px;
  border:1px solid rgba(184,190,255,.16);
  border-radius:999px;
  color:#d9dcf1;
  background:rgba(12,18,45,.78);
  font-size:11px;
  font-weight:800;
  backdrop-filter:blur(8px);
}

.tniq-wow-content {
  display:flex;
  flex-direction:column;
  color:#19203b;
}

.tniq-wow-intro small {
  display:none;
}

.tniq-wow-intro h2 {
  max-width:530px;
  margin:2px 0 13px;
  color:#151a36;
  font-size:clamp(40px,3.65vw,57px);
  line-height:.95;
  letter-spacing:-.045em;
}

.tniq-wow-intro h2::first-line {
  color:#151a36;
}

.tniq-wow-intro p {
  margin:0;
  color:#4d5573;
  font-size:15px;
  line-height:1.5;
}

.tniq-wow-form {
  margin-top:17px;
  padding:18px;
  gap:11px;
  border:1px solid rgba(114,90,240,.18);
  border-radius:20px;
  background:rgba(255,255,255,.70);
  box-shadow:
    0 18px 44px rgba(64,43,174,.13),
    inset 0 1px 0 rgba(255,255,255,.92);
  backdrop-filter:blur(14px);
}

.tniq-wow-form label {
  color:#181d38;
  font-size:15px;
}

.tniq-wow-email-wrap {
  position:relative;
}

.tniq-wow-email-wrap span {
  position:absolute;
  left:15px;
  top:50%;
  transform:translateY(-50%);
  color:#777f9e;
}

.tniq-wow-email-wrap input {
  min-height:52px;
  padding-left:44px;
  border-color:#d8dced;
  background:rgba(255,255,255,.93);
}

.tniq-wow-form button {
  min-height:56px;
  margin-top:0;
  border-radius:14px;
  background:linear-gradient(135deg,#6f53ff,#4b2ddd);
  font-size:17px;
  box-shadow:0 15px 34px rgba(77,45,218,.28);
}

.tniq-wow-form > p {
  color:#68708d;
  font-size:12px;
}

.tniq-wow-form .tniq-paywall-message {
  min-height:0;
  margin-top:0;
  font-size:13px;
}

.tniq-wow-features {
  margin-top:14px;
  padding:16px 18px;
  border:1px solid rgba(115,92,235,.14);
  border-radius:20px;
  background:rgba(255,255,255,.54);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
  backdrop-filter:blur(12px);
}

.tniq-wow-features h3 {
  margin:0 0 12px;
  color:#232947;
  font-size:18px;
}

.tniq-wow-features > div {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 15px;
}

.tniq-wow-features span {
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  color:#47506f;
}

.tniq-wow-features i {
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  flex:0 0 31px;
  border-radius:10px;
  color:#654ced;
  background:rgba(238,235,255,.96);
  font-style:normal;
  font-weight:900;
}

.tniq-wow-features b {
  font-size:12px;
  line-height:1.22;
}

@media (max-width:980px) {
  .tniq-paywall {
    padding:8px;
    overflow:auto;
    align-items:start;
  }

  .tniq-wow-dialog {
    width:calc(100vw - 16px);
    height:auto;
    max-height:none;
    min-height:calc(100vh - 16px);
    border-radius:24px;
    background:
      linear-gradient(180deg,rgba(24,32,68,.98) 0 47%,rgba(247,246,255,.99) 47% 100%);
  }

  .tniq-wow-layout {
    grid-template-columns:1fr;
  }

  .tniq-wow-main {
    height:330px;
  }

  .tniq-wow-content {
    color:#1a203b;
  }
}

@media (max-width:620px) {
  .tniq-paywall {
    padding:0;
  }

  .tniq-wow-dialog {
    width:100vw;
    min-height:100vh;
    padding:15px;
    border-radius:0;
  }

  .tniq-wow-header {
    padding-bottom:10px;
  }

  .tniq-wow-layout {
    gap:16px;
    padding-top:10px;
  }

  .tniq-wow-intro h2 {
    font-size:36px;
  }

  .tniq-wow-main {
    height:270px;
    border-radius:18px;
  }

  .tniq-wow-thumb {
    height:78px;
  }

  .tniq-wow-summary-grid {
    grid-template-columns:1fr 1fr;
  }

  .tniq-wow-features > div {
    grid-template-columns:1fr;
  }
}
