/* ===================================================================
   Bahia Serena page
   Turquoise variant over the shared refactor system
   =================================================================== */

.bahia-serena-page {
  --bahia-teal: #10b6be;
  --bahia-teal-deep: #0b8f9a;
  --bahia-teal-soft: #57e1ea;
  --bahia-teal-glow: rgba(16, 182, 190, 0.34);
  --bahia-line: rgba(87, 225, 234, 0.35);
  --bahia-card: rgba(9, 25, 36, 0.62);
}

.bahia-serena-page .bg-color {
  background:
    radial-gradient(ellipse 1400px 900px at 8% -8%, rgba(16,182,190,.36) 0%, transparent 68%),
    radial-gradient(ellipse 750px 550px at 92% 10%, rgba(221,186,104,.24) 0%, transparent 55%),
    radial-gradient(ellipse 620px 440px at 48% 44%, rgba(87,225,234,.20) 0%, transparent 58%),
    radial-gradient(ellipse 850px 520px at 12% 78%, rgba(11,143,154,.24) 0%, transparent 60%),
    radial-gradient(ellipse 520px 380px at 88% 82%, rgba(87,225,234,.22) 0%, transparent 56%),
    linear-gradient(180deg, #07141b 0%, #08171f 24%, #08131c 48%, #07111a 72%, #060d15 100%);
}

.bahia-serena-page .nav {
  border-bottom-color: rgba(16,182,190,.18);
}

.bahia-serena-page .nav-logo img {
  filter: drop-shadow(0 0 8px rgba(16,182,190,.45));
}

.bahia-serena-page .nav-links a.active,
.bahia-serena-page .nav-phone {
  color: #f1d48a;
}

.bahia-serena-page .eyebrow,
.bahia-serena-page .eyebrow-small {
  color: #9ff4f8;
}


.bahia-serena-page .nav-links a::after {
  background: var(--ci-gold);
}

.bahia-serena-page .nav-links a:hover::after,
.bahia-serena-page .nav-links a.active::after { width: 100%; }

.bahia-serena-page .prism-divider,
.bahia-serena-page .s-dark::after,
.bahia-serena-page .s-light::after,
.bahia-serena-page .footer::before {
  background: linear-gradient(90deg, transparent 0%, rgba(16,182,190,.58) 20%, rgba(221,186,104,.45) 50%, rgba(87,225,234,.45) 80%, transparent 100%);
}

.bahia-serena-page .nav-drawer a.active,
.bahia-serena-page .nav-drawer a:hover {
  color: #f1d48a;
}

.bahia-serena-page .s-light .title em,
.bahia-serena-page .bahia-title {
  color: #c8fbff;
}

.bahia-serena-page .nav-cta,
.bahia-serena-page .nav-drawer-cta,
.bahia-serena-page .btn-outline-light:hover {
  background:
    linear-gradient(180deg, rgba(255,255,255,.24) 0%, rgba(255,255,255,.05) 40%, transparent 58%),
    linear-gradient(175deg, rgba(16,182,190,.26), rgba(4,77,82,.52));
  border-color: rgba(87,225,234,.40);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 0 18px rgba(16,182,190,.18);
}

.bahia-serena-page .btn-gold {
  box-shadow: 0 10px 32px rgba(221,186,104,.18), 0 0 24px rgba(16,182,190,.10);
}

.bahia-serena-page .btn-outline-light {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border-radius: 999px;
  color: #ebffff;
  border: 1px solid rgba(159,244,248,.28);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
}

.bahia-hero {
  min-height: 100svh;
  padding-top: var(--nav-h);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

.bahia-hero::before {
  background: linear-gradient(180deg, rgba(5,16,22,.14) 0%, rgba(4,12,20,.46) 100%);
}

.bahia-hero .hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(6,17,24,.18) 0%, rgba(6,17,24,.66) 100%),
    radial-gradient(circle at 50% 24%, rgba(16,182,190,.16), transparent 42%);
}

.bahia-hero__content {
  max-width: 860px;
  min-height: calc(100svh - var(--nav-h));
  margin: 0 auto;
  padding: 24px 24px 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 14px;
}

.bahia-hero__plate {
  margin: 6px 0 10px;
}


.bahia-hero h1 {
  text-shadow:
    0 0 3px rgba(0,0,0,.55),
    0 0 16px rgba(16,182,190,.38),
    0 5px 10px rgba(0,0,0,.5),
    0 0 28px rgba(221,186,104,.24);
}

.bahia-hero__actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 10px;
}

.bahia-facts {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.bahia-facts span {
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(4, 18, 24, 0.56);
  border: 1px solid rgba(159,244,248,.18);
  color: rgba(240,255,255,.88);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .2px;
  box-shadow: 0 10px 30px rgba(0,0,0,.15);
}

.bahia-section {
  position: relative;
  z-index: 10;
}


.bahia-section--light {
  background: linear-gradient(180deg, rgba(236,251,252,.97), rgba(228,247,248,.97));
}

.bahia-section--light .bahia-title {
  color: #0d3c43;
}

.bahia-intro {
  max-width: 760px;
  margin: 0 auto 34px;
  color: rgba(240,244,255,.78);
  line-height: 1.7;
  text-align: center;
}

.bahia-intro--light {
  color: rgba(7,27,39,.68);
}

.bahia-serena-page .beneficios-grid .card {
  background: linear-gradient(180deg, rgba(8,25,37,.74), rgba(6,17,25,.58));
  border-color: rgba(87,225,234,.18);
  box-shadow: 0 12px 28px rgba(0,0,0,.28), inset 0 0 18px rgba(16,182,190,.10);
}

.bahia-serena-page .beneficios-grid .card h4,
.bahia-serena-page .section h2,
.bahia-serena-page .lote-info h3 {
  color: #f7ebc2;
}

.bahia-serena-page .beneficios-grid .card h4::before {
  color: var(--bahia-teal-soft);
  text-shadow: 0 0 8px rgba(16,182,190,.50), 0 0 16px rgba(221,186,104,.22);
}

.bahia-serena-page .beneficios-grid .card:hover {
  border-color: rgba(87,225,234,.42);
  box-shadow: 0 0 28px rgba(16,182,190,.28), 0 0 40px rgba(221,186,104,.12), inset 0 0 18px rgba(255,255,255,.05);
}

.bahia-serena-page .gallery-img {
  border-color: rgba(87,225,234,.26);
  box-shadow: 0 12px 28px rgba(0,0,0,.34), 0 0 28px rgba(16,182,190,.16);
}

.bahia-serena-page .gallery-img:hover {
  box-shadow: 0 0 36px rgba(16,182,190,.28), 0 0 52px rgba(221,186,104,.16);
}

.bahia-plan {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 32px;
  align-items: center;
}

.bahia-plan__card {
  padding: 18px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(8,25,37,.72), rgba(6,17,25,.56));
  border: 1px solid rgba(87,225,234,.16);
  box-shadow: 0 18px 46px rgba(0,0,0,.28);
}

.bahia-plan__image {
  width: 100%;
  display: block;
  border-radius: 18px;
  border: 1px solid rgba(87,225,234,.14);
}

.bahia-location {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 24px;
  align-items: stretch;
}

.bahia-location__copy {
  display: grid;
  gap: 16px;
}

.bahia-note {
  padding: 22px;
  border-radius: 22px;
  background: rgba(255,255,255,.66);
  border: 1px solid rgba(11,143,154,.12);
  box-shadow: 0 12px 28px rgba(11,34,46,.08);
}

.bahia-note strong {
  display: block;
  margin-bottom: 8px;
  color: #0d3c43;
  font-family: var(--fd);
}

.bahia-note p {
  color: rgba(7,27,39,.70);
}

.bahia-serena-page .map-frame {
  min-height: 420px;
  box-shadow: 0 18px 36px rgba(11,34,46,.12);
  border: 1px solid rgba(11,143,154,.16);
}

.bahia-serena-page table {
  border-color: rgba(111,167,255,.18);
  box-shadow: 0 0 20px rgba(47,102,203,.14);
}

.bahia-serena-page th {
  background: linear-gradient(180deg, #3d79d9, #214b93);
  color: #eef5ff;
}

.bahia-serena-page th,
.bahia-serena-page td {
  border-color: rgba(9, 26, 52, 0.82);
}

.bahia-serena-page tr:nth-child(even) td {
  background: rgba(47,102,203,.14);
}

.bahia-serena-page tr:nth-child(odd) td {
  background: rgba(47,102,203,.10);
}

.bahia-serena-page td {
  color: rgba(240,244,255,.94);
}

.bahia-serena-page td:first-child {
  background: rgba(47,102,203,.16);
  color: #f1d48a;
  font-weight: 800;
  box-shadow: inset 4px 0 0 rgba(221,186,104,.72);
}

.bahia-serena-page tr:hover td {
  background: rgba(111,167,255,.18);
  box-shadow: inset 0 0 8px rgba(111,167,255,.22);
}

.bahia-serena-page tr.selected td {
  background: rgba(47,102,203,.20) !important;
  box-shadow: inset 0 0 0 1px rgba(111,167,255,.20);
}

.bahia-serena-page tr.row-vendido td {
  background: linear-gradient(180deg, rgba(88,24,34,.92), rgba(52,12,18,.90)) !important;
  border-color: rgba(56,12,18,.96);
  color: rgba(255,236,236,.92);
}

.bahia-serena-page tr.row-vendido td:first-child {
  background: linear-gradient(180deg, rgba(112,30,42,.96), rgba(64,14,22,.92)) !important;
  color: #ffe4e4;
}

.bahia-serena-page .status-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}

.bahia-serena-page .status-text--disponible {
  color: #dff9ea;
  background: rgba(29,132,83,.24);
  border-color: rgba(94,224,157,.24);
}

.bahia-serena-page .status-text--apartado {
  color: #fff1c8;
  background: rgba(132,101,24,.24);
  border-color: rgba(221,186,104,.22);
}

.bahia-serena-page .status-text--vendido {
  color: #ffd9dd;
  background: rgba(134,32,46,.28);
  border-color: rgba(255,140,153,.18);
}

.bahia-serena-page .lote-info {
  border-color: rgba(87,225,234,.45);
  box-shadow: 0 0 24px rgba(16,182,190,.18);
}

.bahia-serena-page .opciones {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 18px;
}

.bahia-serena-page .cta-opcion {
  background: linear-gradient(135deg, #10b6be, #0b6f79);
}

.bahia-serena-page .cta-opcion.active {
  background: linear-gradient(135deg, #10b6be, #0b6f79);
}

.bahia-namebox {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.bahia-namebox label {
  color: rgba(240,244,255,.86);
  font-weight: 600;
}

.bahia-namebox input {
  width: 100%;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(87,225,234,.24);
  background: rgba(255,255,255,.08);
  color: #fff;
}

.bahia-namebox input::placeholder {
  color: rgba(240,244,255,.42);
}

.bahia-serena-page .warning,
.bahia-serena-page .small-note,
.bahia-serena-page .info-precio {
  color: rgba(240,244,255,.82);
}

.bahia-serena-page #final-cta {
  margin-top: 20px;
  text-align: center;
}

.bahia-serena-page .cta-whatsapp {
  box-shadow: 0 0 25px rgba(37,211,102,.45);
}

.bahia-cta {
  position: relative;
  z-index: 10;
  background: radial-gradient(circle at top, rgba(16,182,190,.14), transparent 48%);
}

@media (max-width: 900px) {
  .bahia-plan,
  .bahia-location {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .bahia-hero {
    min-height: 820px;
  }

  .bahia-hero__content {
    padding: 0 18px;
  }

  .bahia-facts {
    gap: 8px;
  }

  .bahia-facts span {
    font-size: 12px;
  }
}

@media (max-width: 560px) {
  .bahia-hero__actions {
    width: 100%;
    flex-direction: column;
  }

  .bahia-hero__actions .btn,
  .bahia-hero__actions .btn-outline-light {
    width: 100%;
  }

  /* Facts: una por fila para que no queden cortadas */
  .bahia-facts {
    flex-direction: column;
    align-items: center;
  }

  .bahia-facts span {
    width: 100%;
    max-width: 280px;
    text-align: center;
  }

  /* Beneficios cards: ancho completo sin max-width */
  .bahia-serena-page .beneficios-grid .card {
    max-width: none;
  }

  /* Map: reducir altura en móvil */
  .bahia-serena-page .map-frame {
    min-height: 260px;
  }
}




.bahia-hero h1::before {
  content: none;
}

.bahia-hero h1 {
  color: #f3f7f6;
  letter-spacing: -0.03em;
  text-shadow: 0 8px 24px rgba(0,0,0,.28);
}

.bahia-serena-page .bahia-title,
.bahia-serena-page .section-title,
.bahia-serena-page .cta-inner h2,
.bahia-serena-page .lote-info h3 {
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
  color: #f3f0df;
  -webkit-text-fill-color: currentColor;
  text-shadow: none;
  letter-spacing: -0.03em;
}

.bahia-section--light .bahia-title {
  color: #103d43;
}

.bahia-serena-page .section-title::after,
.bahia-serena-page #desarrollos h2::after,
.bahia-serena-page #propiedades h2::after,
.bahia-serena-page #mapa-propiedades h2::after,
.bahia-serena-page .cta-inner h2::after {
  content: none;
}

.bahia-serena-page .cta-inner h2 {
  color: #f2eed8;
}

.bahia-serena-page .beneficios-grid .card h4,
.bahia-serena-page .bahia-note strong {
  text-shadow: none;
}

.bahia-hero .ci-plate {
  width: clamp(200px, 24vw, 280px);
}

.bahia-hero .ci-plate__logo {
  width: 84%;
  height: 84%;
  object-fit: contain;
}

.bahia-hero .hero-question {
  max-width: 54ch;
  margin: 0;
  font-size: clamp(1rem, 1.1vw + .8rem, 1.12rem);
  line-height: 1.5;
}

.bahia-hero__actions {
  margin-top: 6px;
}

.bahia-facts {
  margin-top: 10px;
}

@media (max-width: 768px) {
  .bahia-hero {
    min-height: 100svh;
  }

  .bahia-hero__content {
    min-height: calc(100svh - var(--nav-h));
    padding: 18px 18px 24px;
    gap: 12px;
  }

  .bahia-hero .ci-plate {
    width: 128px;
  }
}

@media (max-width: 560px) {
  /* Hero mobile — fix definitivo:
     1. height: 100svh pisa developments.css que pone height: 70vh (box fijo que clippeaba).
     2. El content recibe la altura exacta disponible bajo el nav.
     3. justify-content: space-between distribuye los 6 items en ese espacio — nada se desborda.
     4. El overflow visible evita clipping en la sombra de la placa. */
  .bahia-hero {
    height: 100svh;
    overflow: visible;
    align-items: stretch;
  }

  .bahia-hero__content {
    height: calc(100svh - var(--nav-h));
    min-height: 0;
    max-height: calc(100svh - var(--nav-h));
    justify-content: space-between;
    padding: 20px 20px 24px;
    gap: 0;
    overflow: visible;
  }

  .bahia-hero .ci-plate {
    width: 128px;
    border-radius: 20px;
  }

  .bahia-serena-page .hero-content h1 {
    font-size: clamp(2.4rem, 1.6rem + 4vw, 3rem);
    line-height: .94;
    margin-bottom: 0;
  }

  .bahia-hero .hero-question {
    font-size: .88rem;
    line-height: 1.38;
    margin-bottom: 0;
    margin-top: 0;
  }

  .bahia-hero .bahia-hero__actions {
    margin-top: 0;
  }

  .bahia-facts {
    gap: 6px;
    margin-top: 0;
  }

  .bahia-facts span {
    padding: 7px 14px;
    font-size: 12px;
  }
}

.bahia-serena-page .table-wrap {
  overflow-x: auto;
  padding-bottom: 6px;
}

.bahia-serena-page #tabla-lotes {
  min-width: 920px;
}

.bahia-serena-page .info-precio {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.bahia-serena-page .payment-summary {
  display: grid;
  gap: 10px;
  padding: 18px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border: 1px solid rgba(87,225,234,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 10px 24px rgba(0,0,0,.16);
}

.bahia-serena-page .payment-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(87,225,234,.12);
  color: rgba(240,244,255,.84);
}

.bahia-serena-page .payment-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.bahia-serena-page .payment-row span {
  color: rgba(240,244,255,.68);
}

.bahia-serena-page .payment-row strong {
  color: #f5f2df;
  font-family: var(--fd);
  font-size: 1rem;
}

.bahia-serena-page .payment-row--strong strong,
.bahia-serena-page .payment-row--total strong {
  color: #9ff4f8;
  font-size: 1.08rem;
}

.bahia-serena-page .payment-row--total {
  padding-top: 4px;
}

.bahia-serena-page .payment-row--note span:last-child {
  color: rgba(240,244,255,.52);
}

@media (max-width: 560px) {
  .bahia-serena-page .payment-row {
    flex-direction: column;
    align-items: flex-start;
  }
}

.bahia-serena-page .table-wrap {
  overflow: visible;
  padding-bottom: 0;
}

.bahia-serena-page #tabla-lotes {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.bahia-serena-page th,
.bahia-serena-page td {
  padding: 12px 8px;
  font-size: .84rem;
  line-height: 1.35;
}

.bahia-serena-page th {
  font-size: .78rem;
  letter-spacing: .02em;
}

.bahia-serena-page td {
  word-break: break-word;
}

.bahia-serena-page .lote-info {
  padding: 28px;
  display: none;
  text-align: left;
}

.bahia-serena-page .lote-info__head {
  display: grid;
  gap: 8px;
  margin-bottom: 18px;
}

.bahia-serena-page .lote-info__eyebrow {
  margin-bottom: 0;
}

.bahia-serena-page .lote-info__lead {
  margin: 0;
  color: rgba(240,244,255,.64);
  max-width: 58ch;
}

.bahia-serena-page .lote-detalles {
  margin: 0 0 18px;
  gap: 12px;
}

.bahia-serena-page .lote-meta-card {
  padding: 16px 18px;
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border: 1px solid rgba(87,225,234,.16);
  display: grid;
  gap: 6px;
}

.bahia-serena-page .lote-meta-label {
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(159,244,248,.72);
}

.bahia-serena-page .lote-meta-card strong {
  font-family: var(--fd);
  font-size: 1.08rem;
  color: #f5f2df;
}

.bahia-serena-page .opciones {
  justify-content: flex-start;
}

.bahia-serena-page .payment-row--note span:last-child {
  color: rgba(240,244,255,.72);
}

@media (max-width: 900px) {
  .bahia-serena-page th,
  .bahia-serena-page td {
    font-size: .76rem;
    padding: 10px 6px;
  }
}

@media (max-width: 700px) {
  .bahia-serena-page #tabla-lotes thead {
    display: none;
  }

  .bahia-serena-page #tabla-lotes,
  .bahia-serena-page #tabla-lotes tbody,
  .bahia-serena-page #tabla-lotes tr,
  .bahia-serena-page #tabla-lotes td {
    display: block;
    width: 100%;
  }

  .bahia-serena-page #tabla-lotes,
  .bahia-serena-page #tabla-lotes tbody {
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .bahia-serena-page #tabla-lotes tr {
    margin-bottom: 14px;
    padding: 14px 16px;
    border-radius: 18px;
    border: 1px solid rgba(87,225,234,.12);
    background: linear-gradient(180deg, rgba(38,84,168,.24), rgba(22,51,103,.18));
    box-shadow: 0 12px 28px rgba(0,0,0,.16);
  }

  .bahia-serena-page #tabla-lotes td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border: none;
    padding: 9px 0;
    text-align: right;
    font-size: .92rem;
    line-height: 1.35;
    font-weight: 600;
    color: rgba(240,244,255,.94);
    background: transparent !important;
    box-shadow: none !important;
  }

  .bahia-serena-page #tabla-lotes td::before {
    content: attr(data-label);
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--ci-gold);
    text-align: left;
    flex: 0 0 92px;
    max-width: 92px;
  }

  .bahia-serena-page #tabla-lotes td:first-child {
    padding-top: 0;
    margin-bottom: 8px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(221,186,104,.16);
    color: #f1d48a;
    font-size: 1.04rem;
    font-weight: 800;
    letter-spacing: .01em;
    box-shadow: inset 4px 0 0 rgba(221,186,104,.72);
  }

  .bahia-serena-page #tabla-lotes td:first-child::before {
    color: rgba(221,186,104,.72);
    font-size: .78rem;
  }

  .bahia-serena-page #tabla-lotes td:last-child {
    padding-bottom: 0;
  }

  .bahia-serena-page #tabla-lotes tr.selected {
    border-color: rgba(111,167,255,.28);
    box-shadow: 0 14px 30px rgba(0,0,0,.18), 0 0 0 1px rgba(111,167,255,.16);
  }

  .bahia-serena-page #tabla-lotes tr.selected td {
    background: transparent !important;
    box-shadow: none !important;
  }

  .bahia-serena-page #tabla-lotes tr.row-vendido {
    border-color: rgba(255,140,153,.34) !important;
    background: linear-gradient(180deg, rgba(128,32,46,.98), rgba(72,14,24,.94)) !important;
    box-shadow: 0 14px 30px rgba(0,0,0,.22), 0 0 24px rgba(186,49,68,.24) !important;
  }

  .bahia-serena-page #tabla-lotes tr.row-vendido td {
    opacity: 1;
    color: rgba(255,236,236,.92);
  }

  .bahia-serena-page #tabla-lotes tr.row-vendido td:first-child {
    color: #ffe4e4;
    border-bottom-color: rgba(255,151,151,.24);
    box-shadow: inset 4px 0 0 rgba(255,140,153,.72);
  }

  .bahia-serena-page #tabla-lotes td .status-text {
    white-space: nowrap;
    margin-left: auto;
  }

  .bahia-serena-page .lote-info {
    padding: 22px 18px;
  }
}

.bahia-serena-page .opciones,
.bahia-serena-page #final-cta {
  display: flex;
  gap: 12px;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.bahia-serena-page .lot-action-btn {
  flex: 1 1 220px;
  justify-content: center;
  min-height: 42px;
}

.bahia-serena-page .lot-action-btn.active {
  transform: translateY(-2px) scale(1.01);
  background:
    linear-gradient(180deg, rgba(255,255,255,.28) 0%, rgba(255,255,255,.07) 40%, transparent 58%),
    linear-gradient(175deg,
      rgba(255,218,80,.32), rgba(221,186,104,.22),
      rgba(140,92,0,.55), rgba(88,52,0,.68));
  box-shadow:
    0 0 0 1.5px rgba(221,186,104,.8),
    0 1.5px 0 0 rgba(255,244,178,.8) inset,
    0 6px 16px rgba(0,0,0,.46),
    0 0 20px rgba(221,186,104,.5),
    0 0 40px rgba(221,186,104,.28);
}

.bahia-serena-page .lot-action-btn.active::after {
  background: linear-gradient(118deg,
    rgba(221,186,104,.92), rgba(255,228,118,.78),
    rgba(47,102,203,.52), rgba(221,186,104,.92));
  opacity: .9;
}

.bahia-serena-page .cta-emoji {
  display: none;
}

@media (max-width: 560px) {
  .bahia-serena-page .opciones,
  .bahia-serena-page #final-cta {
    display: grid;
    width: 100%;
  }

  .bahia-serena-page .lot-action-btn {
    width: 100%;
    min-width: 0;
  }
}





.bahia-serena-page .bahia-title,
.bahia-serena-page .section-title,
.bahia-serena-page .cta-inner h2,
.bahia-serena-page .lote-info h3 {
  max-width: 14ch;
  margin: 0 auto;
  font-size: clamp(2rem, 1.3rem + 2vw, 3.15rem);
  line-height: 1.02;
  letter-spacing: -0.045em;
  text-wrap: balance;
}

.bahia-serena-page #caracteristicas .bahia-title,
.bahia-serena-page #galeria .bahia-title,
.bahia-serena-page #plano .bahia-title,
.bahia-serena-page #ubicacion .bahia-title,
.bahia-serena-page #lotes .bahia-title,
.bahia-serena-page .cta-inner h2 {
  max-width: 12ch;
}

.bahia-serena-page .lote-info h3 {
  margin: 0;
  max-width: none;
  font-size: clamp(1.55rem, 1.2rem + 1vw, 2rem);
  line-height: 1.08;
}

.bahia-hero h1 {
  max-width: 10ch;
  margin: 0;
  font-size: clamp(3.5rem, 2.2rem + 4vw, 6rem);
  line-height: .92;
  letter-spacing: -0.06em;
  text-wrap: balance;
}

.bahia-hero .hero-question,
.bahia-intro,
.bahia-note p,
.bahia-serena-page .beneficios-grid .card p,
.bahia-serena-page .lote-info__lead,
.bahia-serena-page .cta-inner p {
  font-size: clamp(1rem, .94rem + .28vw, 1.08rem);
  line-height: 1.68;
  text-wrap: pretty;
}

.bahia-intro {
  max-width: 64ch;
  margin: 14px auto 34px;
}

.bahia-hero .hero-question {
  max-width: 58ch;
}

.bahia-serena-page .beneficios-grid .card h4,
.bahia-serena-page .bahia-note strong {
  line-height: 1.12;
  letter-spacing: -0.025em;
}

.bahia-plan {
  align-items: start;
}

.bahia-plan > div:first-child {
  display: grid;
  align-content: start;
  gap: 14px;
}

.bahia-plan__gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.bahia-plan__card {
  height: 100%;
}

.bahia-plan__image,
.bahia-serena-page .gallery-img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.bahia-serena-page #galeria .bahia-intro,
.bahia-serena-page #ubicacion .bahia-intro,
.bahia-serena-page #lotes .bahia-intro {
  max-width: 60ch;
}

@media (max-width: 900px) {
  .bahia-plan__gallery {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 700px) {
  .bahia-serena-page .bahia-title,
  .bahia-serena-page .section-title,
  .bahia-serena-page .cta-inner h2 {
    max-width: 11ch;
    font-size: clamp(1.8rem, 1.25rem + 3vw, 2.5rem);
  }

  .bahia-hero h1 {
    font-size: clamp(3rem, 2.1rem + 6vw, 4.4rem);
  }

  .bahia-plan__gallery {
    grid-template-columns: 1fr;
  }
}

.bahia-gallery-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.bahia-media-card {
  position: relative;
  margin: 0;
  overflow: hidden;
  border-radius: 24px;
}

.bahia-media-card--env {
  min-height: clamp(320px, 34vw, 520px);
}

.bahia-media-img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.bahia-media-card--env .bahia-media-img {
  aspect-ratio: auto;
  min-height: clamp(320px, 34vw, 520px);
}


.bahia-plan {
  grid-template-columns: minmax(300px, .9fr) minmax(0, 1.1fr);
  gap: 36px;
  align-items: center;
}

.bahia-plan__copy {
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 14px;
}

.bahia-plan__copy .bahia-intro {
  margin: 0;
  max-width: 58ch;
}

.bahia-plan__cta {
  align-self: start;
}

.bahia-plan__gallery {
  grid-template-columns: minmax(0, 1.35fr) minmax(220px, .75fr);
  gap: 18px;
  align-items: stretch;
}

.bahia-plan__card {
  position: relative;
  min-height: 100%;
}

.bahia-plan__card--primary {
  min-height: clamp(430px, 46vw, 660px);
}

.bahia-plan__card--secondary {
  min-height: clamp(430px, 46vw, 660px);
}

.bahia-plan__image {
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.bahia-plan__card--primary .bahia-plan__image {
  object-position: center center;
}

.bahia-lightbox {
  position: fixed;
  inset: 0;
  display: none;
  place-items: center;
  padding: 28px;
  background: rgba(3, 10, 16, .92);
  backdrop-filter: blur(10px);
  z-index: 1200;
}

.bahia-lightbox.is-open {
  display: grid;
}

.bahia-lightbox__image {
  max-width: min(96vw, 1400px);
  max-height: 88vh;
  width: auto;
  height: auto;
  border-radius: 22px;
  box-shadow: 0 24px 60px rgba(0,0,0,.42);
}

.bahia-lightbox__close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(159,244,248,.28);
  border-radius: 999px;
  background: rgba(8, 20, 28, .74);
  color: #f6fbfb;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 12px 30px rgba(0,0,0,.28);
}

body.bahia-lightbox-open {
  overflow: hidden;
}

@media (max-width: 900px) {
  .bahia-gallery-grid,
  .bahia-plan__gallery {
    grid-template-columns: 1fr;
  }

  .bahia-plan {
    grid-template-columns: 1fr;
  }

  .bahia-plan__copy {
    justify-items: center;
    text-align: center;
  }

  .bahia-plan__cta {
    justify-self: center;
  }

  .bahia-plan__copy .bahia-intro {
    margin: 0 auto;
  }
}

@media (max-width: 640px) {
  .bahia-media-card--env,
  .bahia-media-card--env .bahia-media-img,
  .bahia-plan__card--primary,
  .bahia-plan__card--secondary {
    min-height: 300px;
  }

  .bahia-lightbox {
    padding: 18px;
  }

  .bahia-lightbox__close {
    top: 12px;
    right: 12px;
    width: 46px;
    height: 46px;
  }
}

.bahia-media-card {
  cursor: zoom-in;
}

.bahia-media-trigger {
  cursor: zoom-in;
}

.bahia-media-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(4, 12, 18, .14) 100%);
  pointer-events: none;
  opacity: .72;
  transition: opacity .2s ease;
}

.bahia-media-card:hover::after {
  opacity: .92;
}

.bahia-serena-page .bg-grid {
  display: none;
}

.bahia-hero .hero-bg {
  filter: brightness(1.18) saturate(1.06);
}

.bahia-hero::before {
  background: linear-gradient(180deg, rgba(5,16,22,.06) 0%, rgba(4,12,20,.22) 100%);
}

.bahia-hero .hero-overlay {
  background:
    linear-gradient(180deg, rgba(6,17,24,.06) 0%, rgba(6,17,24,.34) 100%),
    radial-gradient(circle at 50% 24%, rgba(16,182,190,.10), transparent 46%);
}

.bahia-serena-page section > .container > .eyebrow-small,
.bahia-serena-page section > .container-wide > .eyebrow-small {
  display: block;
  width: fit-content;
  margin: 0 auto 14px;
  text-align: center;
  font-size: 14px;
  letter-spacing: .14em;
}

.bahia-plan__copy {
  justify-items: center;
  text-align: center;
}

.bahia-plan__copy .bahia-intro {
  margin: 0 auto;
}

.bahia-plan__cta {
  justify-self: center;
}

.bahia-plan__gallery--single {
  grid-template-columns: minmax(0, 1fr);
  max-width: 820px;
  width: 100%;
  margin: 0 auto;
}

.bahia-plan__gallery--single .bahia-plan__card--primary {
  min-height: clamp(460px, 50vw, 700px);
}

.bahia-plan__gallery--single .bahia-plan__image {
  object-position: center 52%;
}

@media (max-width: 900px) {
  .bahia-plan__gallery--single {
    max-width: none;
  }
}

.bahia-serena-page #ubicacion {
  background:
    radial-gradient(circle at 12% 18%, rgba(87,225,234,.18), transparent 34%),
    radial-gradient(circle at 88% 10%, rgba(221,186,104,.14), transparent 28%),
    linear-gradient(180deg, rgba(239,252,253,.98), rgba(228,247,248,.96));
}

.bahia-serena-page .bahia-location {
  align-items: center;
  gap: 30px;
}

.bahia-serena-page .bahia-location__copy {
  gap: 18px;
}

.bahia-serena-page .bahia-note {
  position: relative;
  padding: 24px 24px 22px;
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.84) 0%, rgba(255,255,255,.58) 100%),
    linear-gradient(135deg, rgba(87,225,234,.10), rgba(255,255,255,.04));
  border: 1px solid rgba(137,221,227,.34);
  backdrop-filter: blur(18px) saturate(1.2);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.78),
    inset 0 -1px 0 rgba(87,225,234,.12),
    0 18px 38px rgba(10, 34, 46, .10),
    0 0 0 1px rgba(255,255,255,.36);
  overflow: hidden;
}

.bahia-serena-page .bahia-note::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(125deg, rgba(255,255,255,.28), transparent 38%, transparent 70%, rgba(87,225,234,.08));
  pointer-events: none;
}

.bahia-serena-page .bahia-note strong {
  margin-bottom: 10px;
  color: #0a3c43;
  font-size: 1.08rem;
}

.bahia-serena-page .bahia-note p {
  color: rgba(8,30,42,.78);
}

.bahia-serena-page .map-frame {
  width: min(100%, 720px);
  min-height: 460px;
  margin: 0 auto;
  display: block;
  align-self: center;
  justify-self: center;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,255,255,.56));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.66),
    0 24px 54px rgba(10,34,46,.14),
    0 0 0 1px rgba(137,221,227,.28);
  border: 1px solid rgba(137,221,227,.32);
  overflow: hidden;
}

@media (max-width: 900px) {
  .bahia-serena-page .map-frame {
    width: 100%;
    min-height: 420px;
  }
}

.bahia-serena-page .beneficios-grid .card,
.bahia-serena-page .bahia-media-card,
.bahia-serena-page .bahia-plan__card,
.bahia-serena-page .bahia-note,
.bahia-serena-page .table-wrap,
.bahia-serena-page .lote-info,
.bahia-serena-page .lote-meta-card,
.bahia-serena-page .payment-summary,
.bahia-serena-page .bahia-map-shell,
.bahia-serena-page .bahia-namebox,
.bahia-serena-page .opciones,
.bahia-serena-page #final-cta {
  position: relative;
  overflow: hidden;
}

.bahia-serena-page .beneficios-grid .card::before,
.bahia-serena-page .bahia-media-card::before,
.bahia-serena-page .bahia-plan__card::before,
.bahia-serena-page .bahia-note::before,
.bahia-serena-page .table-wrap::before,
.bahia-serena-page .lote-info::before,
.bahia-serena-page .lote-meta-card::before,
.bahia-serena-page .payment-summary::before,
.bahia-serena-page .bahia-map-shell::before,
.bahia-serena-page .bahia-namebox::before,
.bahia-serena-page .opciones::before,
.bahia-serena-page #final-cta::before {
  content: "";
  position: absolute;
  top: 0;
  left: 10%;
  right: 10%;
  height: 1.5px;
  border-radius: 999px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(159,232,255,.52) 22%,
    rgba(255,255,255,.82) 50%,
    rgba(221,186,104,.48) 78%,
    transparent 100%);
  pointer-events: none;
  z-index: 2;
}

.bahia-serena-page .beneficios-grid .card,
.bahia-serena-page .bahia-plan__card,
.bahia-serena-page .lote-info,
.bahia-serena-page .payment-summary,
.bahia-serena-page .bahia-namebox,
.bahia-serena-page .opciones,
.bahia-serena-page #final-cta,
.bahia-serena-page .table-wrap {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 18px 42px rgba(0,0,0,.22),
    0 0 30px rgba(16,182,190,.12);
}

.bahia-serena-page .table-wrap,
.bahia-serena-page .opciones,
.bahia-serena-page #final-cta,
.bahia-serena-page .bahia-namebox {
  border-radius: 22px;
  border: 1px solid rgba(87,225,234,.14);
  background: linear-gradient(180deg, rgba(5,15,26,.82), rgba(7,18,30,.68));
  padding: 18px;
}

.bahia-serena-page .opciones,
.bahia-serena-page #final-cta {
  align-items: center;
}

.bahia-serena-page .bahia-map-shell {
  width: min(100%, 720px);
  margin: 0 auto;
  border-radius: 28px;
  border: 1px solid rgba(137,221,227,.32);
  background:
    linear-gradient(180deg, rgba(255,255,255,.84) 0%, rgba(255,255,255,.60) 100%),
    linear-gradient(135deg, rgba(87,225,234,.08), rgba(255,255,255,.04));
  backdrop-filter: blur(20px) saturate(1.2);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.78),
    0 24px 54px rgba(10,34,46,.14),
    0 0 0 1px rgba(255,255,255,.34);
  padding: 10px;
}

.bahia-serena-page .map-frame {
  width: 100%;
  min-height: 460px;
  margin: 0;
  display: block;
  border: 0;
  border-radius: 20px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24);
}

.bahia-serena-page .bahia-note {
  background:
    linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(255,255,255,.62) 100%),
    linear-gradient(135deg, rgba(87,225,234,.10), rgba(255,255,255,.04));
}

.bahia-serena-page .beneficios-grid .card > *,
.bahia-serena-page .bahia-plan__card > *,
.bahia-serena-page .bahia-note > *,
.bahia-serena-page .lote-info > *,
.bahia-serena-page .lote-meta-card > *,
.bahia-serena-page .payment-summary > *,
.bahia-serena-page .bahia-namebox > *,
.bahia-serena-page .opciones > *,
.bahia-serena-page #final-cta > *,
.bahia-serena-page .table-wrap > *,
.bahia-serena-page .bahia-map-shell > * {
  position: relative;
  z-index: 1;
}

@media (max-width: 900px) {
  .bahia-serena-page .bahia-map-shell {
    width: 100%;
  }

  .bahia-serena-page .map-frame {
    min-height: 420px;
  }
}

.bahia-serena-page .bg-grid {
  display: block;
  opacity: .26;
  mix-blend-mode: screen;
}

.bahia-serena-page .bahia-cta {
  position: relative;
  z-index: 10;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 12%, rgba(76, 163, 223, .12), transparent 24%),
    radial-gradient(circle at 86% 10%, rgba(221, 186, 104, .12), transparent 22%),
    linear-gradient(180deg, rgba(247, 251, 255, .96), rgba(235, 243, 250, .98));
}

.bahia-serena-page .bahia-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.44), transparent 38%),
    radial-gradient(circle at top, rgba(255,255,255,.28), transparent 52%),
    linear-gradient(rgba(77, 122, 170, .10) 1px, transparent 1px),
    linear-gradient(90deg, rgba(77, 122, 170, .10) 1px, transparent 1px);
  background-size: auto, auto, 34px 34px, 34px 34px;
  background-position: center, center, center, center;
}

.bahia-serena-page .bahia-cta .cta-inner {
  position: relative;
  z-index: 1;
  max-width: 840px;
  margin: 0 auto;
  padding: 38px 32px;
  border-radius: 30px;
  border: 1px solid rgba(134, 171, 212, .26);
  background:
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(245,249,253,.72)),
    linear-gradient(135deg, rgba(91, 156, 217, .08), rgba(255,255,255,.02));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.88),
    0 16px 34px rgba(16, 35, 58, .10);
  backdrop-filter: blur(12px) saturate(135%);
  -webkit-backdrop-filter: blur(12px) saturate(135%);
}

.bahia-serena-page .bahia-cta .cta-inner h2 {
  color: #10314d;
}

.bahia-serena-page .bahia-cta .cta-inner p {
  color: rgba(16, 49, 77, .72);
}

.bahia-serena-page .bahia-cta .btn-gold {
  box-shadow: 0 14px 30px rgba(125, 93, 24, .16);
}


.bahia-serena-page .bg-grid {
  display: block;
  opacity: .34;
  mix-blend-mode: screen;
}

.bahia-serena-page .bahia-section--light,
.bahia-serena-page #ubicacion,
.bahia-serena-page .bahia-cta {
  position: relative;
  overflow: hidden;
}

.bahia-serena-page .bahia-section--light {
  background:
    radial-gradient(circle at 12% 14%, rgba(76, 163, 223, .10), transparent 24%),
    radial-gradient(circle at 86% 10%, rgba(221, 186, 104, .10), transparent 22%),
    linear-gradient(180deg, rgba(236,251,252,.88), rgba(228,247,248,.84));
}

.bahia-serena-page #ubicacion {
  background:
    radial-gradient(circle at 12% 18%, rgba(87,225,234,.16), transparent 34%),
    radial-gradient(circle at 88% 10%, rgba(221,186,104,.12), transparent 28%),
    linear-gradient(180deg, rgba(239,252,253,.88), rgba(228,247,248,.84));
}

.bahia-serena-page .bahia-section--light::before,
.bahia-serena-page #ubicacion::before,
.bahia-serena-page .bahia-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(rgba(77, 122, 170, .10) 1px, transparent 1px),
    linear-gradient(90deg, rgba(77, 122, 170, .10) 1px, transparent 1px);
  background-size: 34px 34px, 34px 34px;
  background-position: center;
  opacity: .8;
}

.bahia-serena-page .bahia-section--light > *,
.bahia-serena-page #ubicacion > *,
.bahia-serena-page .bahia-cta > * {
  position: relative;
  z-index: 1;
}

.bahia-serena-page .bahia-cta {
  background:
    radial-gradient(circle at 14% 18%, rgba(53, 116, 214, .18), transparent 26%),
    radial-gradient(circle at 82% 14%, rgba(112, 174, 255, .16), transparent 24%),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.34), transparent 34%),
    linear-gradient(180deg, rgba(245, 250, 255, .92), rgba(232, 241, 250, .90));
}

.bahia-serena-page .bahia-cta::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,.40), transparent 34%),
    radial-gradient(circle at top, rgba(255,255,255,.24), transparent 48%),
    linear-gradient(rgba(66, 112, 166, .12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(66, 112, 166, .12) 1px, transparent 1px);
  background-size: auto, auto, 34px 34px, 34px 34px;
}

.bahia-serena-page .bahia-cta .cta-inner {
  max-width: 920px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.bahia-serena-page .bahia-cta .cta-inner h2,
.bahia-serena-page .bahia-cta .cta-inner p,
.bahia-serena-page .bahia-cta .cta-inner a {
  position: relative;
  z-index: 1;
}

.bahia-serena-page .bahia-cta .cta-inner h2 {
  color: #12365c;
}

.bahia-serena-page .bahia-cta .cta-inner p {
  color: rgba(18, 54, 92, .72);
}

body.home.bahia-serena-page .bg-grid {
  opacity: .52;
  mix-blend-mode: screen;
  background-image:
    repeating-linear-gradient(0deg, transparent, transparent 32px, rgba(90,140,255,.082) 32px, rgba(90,140,255,.082) 33px),
    repeating-linear-gradient(90deg, transparent, transparent 32px, rgba(221,186,104,.060) 32px, rgba(221,186,104,.060) 33px),
    repeating-linear-gradient(45deg, transparent, transparent 64px, rgba(255,255,255,.034) 64px, rgba(255,255,255,.034) 65px);
}

.bahia-serena-page .bahia-section--light::before,
.bahia-serena-page #ubicacion::before,
.bahia-serena-page .bahia-cta::after {
  background:
    linear-gradient(rgba(66, 112, 166, .13) 1px, transparent 1px),
    linear-gradient(90deg, rgba(66, 112, 166, .13) 1px, transparent 1px),
    repeating-linear-gradient(45deg, transparent, transparent 64px, rgba(255,255,255,.048) 64px, rgba(255,255,255,.048) 65px);
  background-size: 34px 34px, 34px 34px, auto;
  background-position: center, center, center;
  opacity: .92;
}

.bahia-serena-page .bahia-cta::before {
  content: none;
}

.bahia-serena-page .cta-list::before {
  content: none;
  animation: none;
}

.bahia-serena-page #galeria .eyebrow-small,
.bahia-serena-page #ubicacion .eyebrow-small {
  color: rgba(19, 54, 92, .78);
  text-shadow: none;
}

.bahia-serena-page .bahia-namebox {
  background: linear-gradient(160deg, rgba(13,34,53,.94), rgba(4,6,14,.90));
  border: 1px solid rgba(47,102,203,.22);
  border-radius: 24px;
  backdrop-filter: blur(32px) saturate(1.8);
  -webkit-backdrop-filter: blur(32px) saturate(1.8);
  box-shadow:
    0 0 0 1px rgba(47,102,203,.18),
    0 40px 100px rgba(0,0,0,.42),
    0 0 55px rgba(47,102,203,.08);
}

.bahia-serena-page .bahia-namebox::before {
  height: 1.5px;
  background: linear-gradient(90deg, transparent, rgba(47,102,203,.78) 20%, rgba(221,186,104,.62) 50%, rgba(47,102,203,.52) 80%, transparent);
}

.bahia-serena-page .bahia-namebox input {
  background: rgba(255,255,255,.04);
  border: 1.5px solid rgba(47,102,203,.18);
  border-radius: 13px;
  padding: 13px 17px;
}

.bahia-serena-page .bahia-namebox input:hover {
  border-color: rgba(111,167,255,.40);
  background: rgba(47,102,203,.11);
}

.bahia-serena-page .bahia-namebox input:focus {
  border-color: rgba(111,167,255,.50);
  background: rgba(255,255,255,.06);
  box-shadow: 0 0 18px rgba(47,102,203,.12);
}

.bahia-serena-page .bahia-namebox input::placeholder {
  color: rgba(175,203,255,.26);
}
















.bahia-serena-page .lote-info {
  text-align: center;
  background: linear-gradient(160deg, rgba(13,34,53,.94), rgba(4,6,14,.90));
  border: 1px solid rgba(47,102,203,.22);
  border-radius: 24px;
  backdrop-filter: blur(32px) saturate(1.7);
  -webkit-backdrop-filter: blur(32px) saturate(1.7);
  box-shadow:
    0 0 0 1px rgba(47,102,203,.18),
    0 40px 100px rgba(0,0,0,.42),
    0 0 55px rgba(47,102,203,.08);
}

.bahia-serena-page .lote-info::before {
  height: 1.5px;
  background: linear-gradient(90deg, transparent, rgba(47,102,203,.78) 20%, rgba(221,186,104,.62) 50%, rgba(47,102,203,.52) 80%, transparent);
}

.bahia-serena-page .lote-info__head {
  justify-items: center;
  text-align: center;
}

.bahia-serena-page .lote-info__lead {
  max-width: 52ch;
  margin: 0 auto;
}

.bahia-serena-page .lote-detalles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
}

.bahia-serena-page .lote-meta-card {
  text-align: center;
  background: linear-gradient(180deg, rgba(47,102,203,.14), rgba(255,255,255,.04));
  border: 1px solid rgba(47,102,203,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 12px 28px rgba(0,0,0,.16);
}

.bahia-serena-page .opciones,
.bahia-serena-page #final-cta {
  justify-content: center;
}

.bahia-serena-page .lot-action-btn {
  flex: 0 1 260px;
  min-width: 220px;
  min-height: 48px;
  border-radius: 14px;
  border: 1px solid rgba(47,102,203,.22);
  background: linear-gradient(180deg, rgba(47,102,203,.18), rgba(18,42,86,.88));
  color: #eef5ff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 14px 28px rgba(0,0,0,.18), 0 0 24px rgba(47,102,203,.08);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.bahia-serena-page .lot-action-btn:hover {
  transform: translateY(-1px);
  border-color: rgba(111,167,255,.34);
  background: linear-gradient(180deg, rgba(63,122,217,.26), rgba(20,50,100,.92));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 16px 30px rgba(0,0,0,.22), 0 0 28px rgba(47,102,203,.12);
}

.bahia-serena-page .lot-action-btn.active {
  transform: translateY(-2px);
  border-color: rgba(221,186,104,.62);
}

.bahia-serena-page #final-cta {
  margin-top: 18px;
}

@media (max-width: 700px) {
  .bahia-serena-page .lote-detalles {
    grid-template-columns: 1fr;
  }

  .bahia-serena-page .lot-action-btn {
    flex-basis: 100%;
    min-width: 0;
  }
}





.bahia-serena-page .lote-info .opciones,
.bahia-serena-page .lote-info #final-cta {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
  border-radius: 0;
}

.bahia-serena-page .lote-info .opciones::before,
.bahia-serena-page .lote-info #final-cta::before {
  content: none;
}

.bahia-serena-page .lote-info,
.bahia-serena-page .lote-info .opciones,
.bahia-serena-page .lote-info #final-cta {
  overflow: visible;
}

.bahia-serena-page .lote-info .opciones {
  margin-top: 22px;
  padding-inline: 2px;
}

.bahia-serena-page .lote-info #final-cta {
  margin-top: 22px;
  padding-inline: 2px;
}
