
/* Flixi Pricing Table */
.flixi-pt-wrap{
  width:100%;
  padding:34px 18px;
  border-radius: 24px;
  box-sizing:border-box;
}

.flixi-pt-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items:stretch;
  gap: 28px;
}

.flixi-pt-grid.cols-1{ grid-template-columns: 1fr; }
.flixi-pt-grid.cols-2{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
.flixi-pt-grid.cols-3{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
.flixi-pt-grid.cols-4{ grid-template-columns: repeat(4, minmax(0, 1fr)); }

.flixi-pt-card{
  position:relative;
  overflow:hidden;
  padding: 34px 34px 26px;
  min-height: 640px;
  border-radius: 34px;
  color: #eaf3ea;
  background: radial-gradient(1200px 600px at 55% 18%, rgba(255,255,255,0.07), rgba(255,255,255,0) 55%),
              linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01)),
              var(--flixi-card-bg, #162b2d);
  box-shadow: 0 18px 40px rgba(0,0,0,0.20);
  isolation:isolate;
}

.flixi-pt-card::before{
  content:"";
  position:absolute;
  inset:-20%;
  background:
    radial-gradient(circle at 35% 18%, rgba(44,141,148,0.55), rgba(44,141,148,0) 55%),
    radial-gradient(circle at 72% 60%, rgba(44,141,148,0.35), rgba(44,141,148,0) 55%),
    radial-gradient(circle at 45% 82%, rgba(44,141,148,0.25), rgba(44,141,148,0) 55%);
  filter: blur(var(--flixi-glow, 70px));
  opacity: 0.75;
  z-index:-1;
}

.flixi-pt-card::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(140deg, rgba(0,0,0,0.35), rgba(0,0,0,0) 60%);
  opacity: 0.6;
  pointer-events:none;
  z-index:-1;
}

.flixi-pt-card.is-featured{
  background: radial-gradient(1000px 550px at 50% 10%, rgba(255,255,255,0.10), rgba(255,255,255,0) 56%),
              linear-gradient(160deg, rgba(38,137,145,0.92), rgba(26,81,84,0.90)),
              var(--flixi-card-bg, #25787d);
}

.flixi-pt-head{
  padding-top: 0;
}

.flixi-pt-title{
  margin: 18px 0 10px;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 600;
}

.flixi-pt-subtitle{
  font-size: 15px;
  opacity: 0.92;
  font-weight: 500;
  margin-bottom: 18px;
}

.flixi-pt-price{
  font-size: 44px;
  line-height: 1.0;
  margin: 0 0 14px;
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing: 0.2px;
}

.flixi-pt-price-suffix{
  font-size: 28px;
  font-family: Georgia, "Times New Roman", serif;
  opacity: 0.9;
}

.flixi-pt-divider{
  height: 2px;
  background: rgba(255,255,255,0.20);
  border-radius: 2px;
  margin: 18px 0 18px;
}

.flixi-pt-desc{
  font-size: 14px;
  line-height: 1.55;
  opacity: 0.85;
  max-width: 92%;
  margin-bottom: 26px;
}

.flixi-pt-features{
  list-style:none;
  padding:0;
  margin:0 0 28px;
  display:flex;
  flex-direction:column;
  gap: 18px;
}

.flixi-pt-feature{
  display:flex;
  align-items:center;
  gap: 12px;
  font-size: 16px;
  line-height:1.2;
}

.flixi-pt-check{
  width:26px;
  height:26px;
  border-radius:999px;
  background:#2c8d94;
  flex: 0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}

.flixi-pt-feature-name{
  font-weight: 500;
  opacity: 0.95;
}

.flixi-pt-feature-time{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap: 12px;
  opacity: 0.9;
  font-weight: 500;
}

.flixi-pt-time-line{
  width: 30px;
  height: 2px;
  background: rgba(234,243,234,0.70);
  border-radius: 2px;
  display:block;
}

.flixi-pt-btn{
  margin-top:auto;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 16px 18px;
  border-radius: 999px;
  border: 2px solid rgba(234,243,234,0.55);
  text-decoration:none;
  color:#eaf3ea;
  background: rgba(0,0,0,0);
  position:relative;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
}

.flixi-pt-card.is-featured .flixi-pt-btn{
  background: #1f3d3f;
  border-color: transparent;
}

.flixi-pt-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 26px rgba(0,0,0,0.22);
}

.flixi-pt-btn-text{
  font-weight: 600;
  letter-spacing: 0.2px;
}

.flixi-pt-btn-arrow{
  position:absolute;
  right: 10px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #2c8d94;
  display:flex;
  align-items:center;
  justify-content:center;
}

.flixi-pt-btn-arrow svg{
  width: 18px;
  height: 18px;
}

@media (max-width: 1024px){
  .flixi-pt-grid.cols-3{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .flixi-pt-grid.cols-4{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .flixi-pt-card{ min-height: 620px; }
}

@media (max-width: 767px){
  .flixi-pt-wrap{ padding: 22px 12px; }
  .flixi-pt-grid{ grid-template-columns: 1fr !important; }
  .flixi-pt-card{
    padding: 44px 24px 22px;
    min-height: unset;
  }
  .flixi-pt-title{ font-size: 30px; }
  .flixi-pt-price{ font-size: 40px; }
}
