.elementor-2503 .elementor-element.elementor-element-47890fd{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:20px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-2503 .elementor-element.elementor-element-47890fd:not(.elementor-motion-effects-element-type-background), .elementor-2503 .elementor-element.elementor-element-47890fd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E7F7FE;background-image:url("https://imoveldepraia.com/wp-content/uploads/2021/11/sec-bg.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-2503 .elementor-element.elementor-element-f82b0d6{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;}.elementor-2503 .elementor-element.elementor-element-4a470d7{--display:flex;}.elementor-2503 .elementor-element.elementor-element-bae1aa1{--display:flex;}.elementor-2503 .elementor-element.elementor-element-c3196e6{text-align:center;}.elementor-2503 .elementor-element.elementor-element-b11a799{--divider-border-style:dashed;--divider-color:#480CA880;--divider-border-width:2px;margin:-15px 0px calc(var(--kit-widget-spacing, 0px) + -15px) 0px;--divider-icon-size:8px;}.elementor-2503 .elementor-element.elementor-element-b11a799 .elementor-divider-separator{width:20%;margin:0 auto;margin-center:0;}.elementor-2503 .elementor-element.elementor-element-b11a799 .elementor-divider{text-align:center;padding-block-start:15px;padding-block-end:15px;}.elementor-2503 .elementor-element.elementor-element-b11a799.elementor-view-stacked .elementor-icon{background-color:#00BBFF;}.elementor-2503 .elementor-element.elementor-element-b11a799.elementor-view-framed .elementor-icon, .elementor-2503 .elementor-element.elementor-element-b11a799.elementor-view-default .elementor-icon{color:#00BBFF;border-color:#00BBFF;}.elementor-2503 .elementor-element.elementor-element-b11a799.elementor-view-framed .elementor-icon, .elementor-2503 .elementor-element.elementor-element-b11a799.elementor-view-default .elementor-icon svg{fill:#00BBFF;}.elementor-2503 .elementor-element.elementor-element-b11a799 .elementor-icon i, .elementor-2503 .elementor-element.elementor-element-b11a799 .elementor-icon svg{transform:rotate(50deg);}.elementor-2503 .elementor-element.elementor-element-b11a799 .elementor-icon{border-width:2px;border-radius:0px;}.elementor-2503 .elementor-element.elementor-element-c162676{--display:flex;}.elementor-2503 .elementor-element.elementor-element-cca4db6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2503 .elementor-element.elementor-element-7aef40d{width:100%;max-width:100%;}@media(min-width:768px){.elementor-2503 .elementor-element.elementor-element-4a470d7{--width:20%;}.elementor-2503 .elementor-element.elementor-element-bae1aa1{--width:59.332%;}.elementor-2503 .elementor-element.elementor-element-c162676{--width:20%;}}@media(max-width:767px){.elementor-2503 .elementor-element.elementor-element-47890fd{--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-7aef40d *//* ====== Estilo dos Planos – itens centralizados + altura menor ====== */
.ipt-pricing{
  --pri: #2d2b7f;
  --sec: #2d8cff;
  --gold: #d4a11d;
  --gold2:#f5c451;
  --txt: #0f172a;
  --muted:#667085;
  --r: 18px;
  --gap: 32px;           /* cards mais separados */
  --card-min-h: 520px;   /* altura mínima menor (antes era 620px) */
  --card-pad: 22px 22px 20px;
  padding: 12px 0;
}

.ipt-pricing .plans-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(300px, 1fr));
  gap: var(--gap);
  max-width: 1120px;
  margin: 0 auto;
  align-items: stretch;
}

/* Card base */
.plan-card{
  position:relative;
  display:flex; flex-direction:column;
  background:#fff;
  border:1px solid #e6e9f2;
  border-radius:var(--r);
  padding:var(--card-pad);
  box-shadow:0 12px 30px rgba(15,23,42,.08);
  min-height: var(--card-min-h);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  overflow:hidden;
}
.plan-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 42px rgba(15,23,42,.14);
  border-color:#dfe5f7;
}

.plan-head{ text-align:center; margin-bottom:14px; }
.plan-title{ margin:0; font:800 1.35rem/1.2 "Montserrat",system-ui; color:#121826; letter-spacing:-.2px; }
.plan-sub{ margin:.45rem 0 0; color:var(--muted); font-size:1rem; }
.plan-price{ margin:.65rem 0 0; color:#121826; }
.plan-price strong{ font-size:2.3rem; font-weight:900; letter-spacing:-.6px; }
.plan-price small{ color:#6b7280; font-weight:700; }

/* LISTA: agora centralizada (texto e “bolinhas”) com mais espaço entre itens */
.plan-features{
  list-style:none; padding:0; margin:16px 0 18px;
  display:flex; flex-direction:column; align-items:center; text-align:center;
  gap:16px;            /* um pouco mais espaçado */
  flex:1;              /* empurra o footer para baixo */
}
.plan-features li{
  display:flex; align-items:center; justify-content:center;
  gap:10px;            /* espaço entre bolinha e texto */
  padding:0;           /* sem padding-left, pois a bolinha não é absoluta */
  color:#1f2937; font-weight:600; line-height:1.35;
}
.plan-features li::before{
  content:""; flex:0 0 14px; width:14px; height:14px; border-radius:50%;
  background: radial-gradient(circle at 30% 30%, #45c98f, #0fb87a);
  box-shadow:0 0 0 3px rgba(15,184,122,.15);
}

/* Footer / Botões */
.plan-foot{ display:flex; justify-content:center; margin-top:auto; }
.btn-primary{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:260px; height:52px; border-radius:999px; font-weight:900;
  color:#fff; text-decoration:none; border:0; cursor:pointer;
  background: linear-gradient(90deg, var(--pri), #3e39b6 40%, var(--sec));
  box-shadow:0 14px 30px rgba(45,43,127,.35);
  position:relative; overflow:hidden;
  transition:transform .2s ease, filter .2s ease, box-shadow .2s ease;
}
.btn-primary::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(120deg, transparent 40%, rgba(255,255,255,.26) 50%, transparent 60%);
  transform:translateX(-120%); transition:transform .6s ease;
}
.btn-primary:hover{ transform:translateY(-2px); filter:saturate(1.12); }
.btn-primary:hover::after{ transform:translateX(120%); }

/* GOLD */
.is-gold{
  background: linear-gradient(180deg,#ffffff 0%, #fbfbff 100%);
}
.is-gold .plan-title{ color:#8a6b14; }
.is-gold .plan-features li::before{
  background: radial-gradient(circle at 30% 30%, var(--gold2), var(--gold));
  box-shadow:0 0 0 3px rgba(212,161,29,.22);
}
.is-gold .btn-primary{
  background: linear-gradient(90deg, #c99917, var(--gold), #ffda6a);
  box-shadow:0 14px 30px rgba(201,153,23,.35);
}

/* MASTER com destaque */
.is-master{
  border-color:transparent;
  background: linear-gradient(180deg,#ffffff 0%, #f2f6ff 100%);
  animation: masterFloat 5s ease-in-out infinite;
}
.is-master::before{
  content:""; position:absolute; inset:-1px;
  border-radius:calc(var(--r) + 1px);
  padding:1px;
  background: conic-gradient(from 180deg, var(--sec), #7aa8ff, var(--pri), var(--sec));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  animation: masterRing 6s linear infinite;
}
@keyframes masterRing{ to { transform: rotate(1turn); } }
@keyframes masterFloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-4px); } }

/* Tarja vertical “RECOMENDADO” */
.ribbon-vertical{
  position:absolute; right:0; top:24px;
  padding:12px 10px;
  background: linear-gradient(180deg, var(--sec), #4e7fff);
  color:#fff; font-weight:900; letter-spacing:.8px;
  writing-mode: vertical-rl; transform: rotate(180deg);
  border-top-left-radius:12px; border-bottom-left-radius:12px;
  box-shadow:0 12px 26px rgba(45,140,255,.35);
}

/* Responsividade */
@media (max-width: 1024px){
  .ipt-pricing{ --card-min-h: 500px; }
  .plan-price strong{ font-size:2.1rem; }
}
@media (max-width: 900px){
  .ipt-pricing .plans-grid{ grid-template-columns:1fr; }
  .ipt-pricing{ --card-min-h: auto; }
  .plan-card{ min-height:auto; }
  .btn-primary{ width:100%; min-width:0; }
  .ribbon-vertical{ top:20px; }
}
@media (max-width: 480px){
  .plan-title{ font-size:1.2rem; }
  .plan-price strong{ font-size:1.9rem; }
  .plan-features{ gap:14px; }
}

/* Garantir texto branco nos botões (contra estilos do tema) */
.ipt-pricing .btn-primary,
.ipt-pricing .btn-primary:hover,
.ipt-pricing .btn-primary:focus{ color:#fff !important; }
.ipt-pricing .btn-primary *{ color:#fff !important; fill:#fff !important; stroke:#fff !important; }/* End custom CSS */