@charset "UTF-8";
/* Quitar selección y menú táctil en elementos de interfaz */
a,
button,
.elementor-button,
[class*=btn],
[class*=button],
img,
svg,
.icon,
.elementor-icon,
.elementor-widget-button,
.elementor-widget-icon,
.elementor-widget-image,
.ac-dual-button,
.ac-dual-button * {
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

/* Mantener texto normal seleccionable */
p,
span,
li,
td,
th,
h1, h2, h3, h4, h5, h6,
strong,
em,
small,
label,
div,
section,
article {
  -webkit-user-select: text;
  -moz-user-select: text;
       user-select: text;
  -webkit-touch-callout: default;
}

/* Formularios sí deben permitir selección */
input,
textarea,
select,
option,
[contenteditable=true] {
  -webkit-user-select: text;
  -moz-user-select: text;
       user-select: text;
  -webkit-touch-callout: default;
}

/* Quitar resaltado visual al seleccionar */
::-moz-selection {
  background: transparent;
  color: inherit;
}
::selection {
  background: transparent;
  color: inherit;
}

.logo .contenido-logo {
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  width: 150px;
  height: 150px;
  align-items: center;
  justify-content: center;
}

.red-activa {
  background-color: #6A1944;
  border: 2px solid #B64A7C;
  padding: 0 7px;
  border-radius: 20px;
  margin: auto;
  line-height: 2;
}
.red-activa .elementor-icon-list-icon {
  position: relative;
  top: 0;
}

.actividades img {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  -ms-border-radius: 20px;
  -o-border-radius: 20px;
}

.sticky-header .site-content {
  min-height: auto !important;
}

@media (max-width: 767px) {
  .logo .contenido-logo {
    width: 130px;
    height: 130px;
  }
}
/* Solo Home + móvil */
@media (max-width: 768px) {
  /* Barra superior */
  body.ac-custom-header .ac-home-mobilebar {
    position: fixed;
    top: 0;
    z-index: 999;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    padding: 10px 14px;
    width: 100%;
  }
  body.ac-custom-header .ac-home-mobilebar .ac-logo {
    flex: 1;
    display: flex;
    justify-content: start;
    align-items: center;
  }
  body.ac-custom-header .ac-home-mobilebar .ac-logo img {
    height: 20px;
    width: auto;
    display: block;
    margin-top: 5px;
  }
  body.ac-custom-header .ac-home-mobilebar .ac-user {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  body.ac-custom-header .ac-burger {
    width: 44px;
    height: 44px;
    border: 0;
    background: transparent;
    padding: 10px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
  }
  body.ac-custom-header .ac-burger span {
    height: 2px;
    width: 22px;
    background: #111;
    display: block;
  }
  /* Overlay fullscreen */
  body.ac-custom-header .ac-home-overlay {
    position: fixed;
    inset: 0;
    z-index: 1000000;
    background: rgba(0, 0, 0, 0.35);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
  }
  body.ac-custom-header .ac-home-overlay.is-open {
    opacity: 1;
    pointer-events: auto;
  }
  /* Header del overlay */
  body.ac-custom-header .ac-home-overlay__header {
    /*position: absolute;*/
    top: 0;
    left: 0;
    right: 0;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    z-index: 3;
    margin-bottom: 20px;
  }
  body.ac-custom-header .ac-home-overlay__title {
    font-weight: 700;
    font-size: 18px;
    color: #88214C;
  }
  body.ac-custom-header .ac-home-overlay__close {
    width: 44px;
    height: 44px;
    border: 0;
    background: transparent;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    color: #88214C;
  }
  /* Panel base */
  body.ac-custom-header .ac-home-overlay__nav {
    position: absolute;
    top: 15px;
    left: 0;
    right: 0;
    bottom: 0;
    background: #FDF3FB;
    transform: translateY(-10px);
    transition: transform 0.25s ease;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 16px;
  }
  /* Si lo quiere con espacio a los costados */
  body.ac-custom-header .ac-home-overlay--boxed .ac-home-overlay__nav {
    left: 12px;
    right: 12px;
    bottom: 12px;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
  }
  /* Si lo quiere pantalla completa, use el overlay sin esa clase extra */
  body.ac-custom-header .ac-home-overlay.is-open .ac-home-overlay__nav {
    transform: translateY(0);
  }
  /* Menú */
  body.ac-custom-header .ac-home-overlay__menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  body.ac-custom-header .ac-home-overlay__menu > li {
    margin: 0;
    padding: 0;
  }
  body.ac-custom-header .ac-home-overlay__menu > li > a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 68px;
    padding: 14px 18px 14px 58px;
    text-decoration: none;
    color: #88214C;
    font-weight: 500;
    font-size: 17px;
    line-height: 1.3;
    background: #fdf3fb;
    transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
    border-radius: 10px;
    box-shadow: 0px 2px 22px 0 rgba(0, 0, 0, 0.1215686275);
  }
  /* Primera y última fila con bordes suaves */
  body.ac-custom-header .ac-home-overlay__menu > li:first-child > a {
    border-top-left-radius: 14px;
    border-top-right-radius: 14px;
  }
  body.ac-custom-header .ac-home-overlay__menu > li:last-child > a {
    border-bottom-left-radius: 14px;
    border-bottom-right-radius: 14px;
  }
  /* Quitar doble borde visual entre filas */
  body.ac-custom-header .ac-home-overlay__menu > li + li > a {
    margin-top: -1px;
  }
  /* Hover / active */
  body.ac-custom-header .ac-home-overlay__menu > li > a:hover {
    background: #fcf8fb;
    border-color: #ead9e3;
  }
  body.ac-custom-header .ac-home-overlay__menu > li > a:active {
    transform: scale(0.995);
  }
  /* Flecha derecha */
  body.ac-custom-header .ac-home-overlay__menu > li > a::after {
    content: "›";
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    line-height: 1;
    color: #88214C;
  }
  /* Ícono base */
  body.ac-custom-header .ac-home-overlay__menu > li > a::before {
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
    text-align: center;
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    font-size: 22px;
    color: #88214C;
    content: "\f059"; /* ícono por defecto: círculo info */
  }
  #menu-item-4840 a::before {
    content: "\f81d";
  }
  #menu-item-4839 a::before {
    content: "\f2f7";
  }
  #menu-item-5270 a::before {
    content: "\f0eb";
  }
  #menu-item-5269 a::before {
    content: "\f005";
  }
  /* Ejemplo de item activo / destacado */
  body.ac-custom-header .ac-home-overlay__menu > li.current-menu-item > a,
  body.ac-custom-header .ac-home-overlay__menu > li.current_page_item > a {
    color: #8a1e55 !important;
    font-weight: 700;
    background: #fff;
  }
  body.ac-custom-header .ac-home-overlay__menu > li.current-menu-item > a::before,
  body.ac-custom-header .ac-home-overlay__menu > li.current_page_item > a::before {
    color: #8a1e55;
  }
  /* Bloquear scroll cuando overlay abierto */
  body.ac-lock-scroll {
    overflow: hidden;
    height: 100%;
  }
  /* Oculta el header móvil original del BuddyBoss (para que no se duplique en Home) */
  body.ac-custom-header .bb-mobile-header-wrapper {
    display: none !important;
  }
}
/* SOLO Home desktop */
@media (min-width: 768px) {
  body.ac-custom-header .ac-home-overlay__nav {
    padding: 22px;
  }
  body.ac-custom-header .ac-home-overlay--boxed .ac-home-overlay__nav {
    left: 24px;
    right: 24px;
    bottom: 24px;
  }
  body.ac-custom-header .ac-home-overlay__menu > li > a {
    font-size: 18px;
    min-height: 74px;
  }
  body.ac-custom-header .ac-home-mobilebar,
  body.ac-custom-header .ac-home-overlay {
    display: none !important;
  }
  body.ac-custom-header .ac-home-desktopbar {
    background: #fff;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 990;
  }
  body.ac-custom-header .ac-home-desktopbar__inner {
    max-width: 1400px;
    margin: 0 auto;
    padding: 12px 18px;
    display: flex;
    align-items: center;
    gap: 18px;
  }
  body.ac-custom-header .ac-home-desktopbar__logo img {
    height: 30px;
    width: auto;
    display: block;
    filter: grayscale(1);
  }
  body.ac-custom-header .ac-home-desktopbar__nav {
    flex: 1;
  }
  body.ac-custom-header .ac-home-desktopbar__menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
  }
  body.ac-custom-header .ac-home-desktopbar__menu a {
    text-decoration: none;
    font-family: "Inter", Sans-serif;
    font-size: 15px;
    font-weight: 400;
  }
  body.ac-custom-header .ac-home-desktopbar__menu a:hover {
    color: #FDC7E0 !important;
  }
  body.ac-custom-header .ac-home-desktopbar__user {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
}
body.ac-custom-header .ac-home-mobilebar .ac-logo img,
body.ac-custom-header .ac-home-desktopbar .ac-home-desktopbar__logo img {
  filter: brightness(0) invert(1);
  -webkit-filter: brightness(0) invert(1);
  transition: filter 0.25s ease, opacity 0.25s ease;
}

/* Al hacer scroll → logo normal */
body.ac-custom-header.ac-home-scrolled .ac-home-mobilebar .ac-logo img,
body.ac-custom-header.ac-home-scrolled .ac-home-desktopbar .ac-home-desktopbar__logo img {
  filter: none;
  -webkit-filter: none;
}

.titulosection h2 {
  font-size: 1.5rem;
  margin-bottom: 15px;
  margin-top: 15px;
}
.titulosection p {
  font-weight: 400;
  color: #54444A;
}
.titulosection a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #A62B5D !important;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  cursor: pointer;
  padding: 10px 0;
  background: transparent;
  border: none;
}

.btn-amigo:focus {
  background-color: #fff !important;
  color: #000 !important;
  border-color: #D6D9DD !important;
}

.ep-toast {
  position: fixed;
  top: 24px;
  right: 24px;
  z-index: 999999;
  min-width: 320px;
  max-width: 420px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid #eadfe5;
  box-shadow: 0 18px 40px rgba(45, 10, 25, 0.16);
  backdrop-filter: blur(10px);
  transform: translateY(-14px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.25s ease;
}

.ep-toast.is-show {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.ep-toast__icon {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  font-weight: 900;
  flex: 0 0 34px;
}

.ep-toast__content {
  flex: 1 1 auto;
  min-width: 0;
}

.ep-toast__content strong {
  display: block;
  font-size: 14px;
  font-weight: 800;
  color: #2D0A19;
  margin-bottom: 3px;
}

.ep-toast__content div {
  font-size: 13px;
  line-height: 1.35;
  color: #6f5e67;
}

.ep-toast__close {
  border: 0;
  background: transparent;
  color: #9b8e95;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  margin-top: -2px;
}

.ep-toast--success .ep-toast__icon {
  background: #eaf7ef;
  color: #1f8a4c;
}

.ep-toast--error .ep-toast__icon {
  background: #fff0f0;
  color: #c53939;
}

@media (max-width: 767px) {
  .ep-toast {
    left: 12px;
    right: 12px;
    top: 12px;
    min-width: 0;
    max-width: none;
  }
}
/* ---------- MÓVIL ---------- */
@media (max-width: 768px) {
  /* Arriba: transparente + todo blanco */
  body.ac-custom-header .ac-home-mobilebar {
    background: transparent;
  }
  body.ac-custom-header .ac-burger span {
    background: #fff !important;
  }
  /* Tus iconos del shortcode (FontAwesome) y colores */
  body.ac-custom-header .ac-home-mobilebar .h-pill-account-container {
    background: transparent !important;
    box-shadow: none !important;
  }
  body.ac-custom-header .ac-home-mobilebar .h-pill-trigger {
    color: #fff;
  }
  body.ac-custom-header .ac-home-mobilebar .h-pill-divider {
    background: rgba(255, 255, 255, 0.25) !important;
  }
  /* Scrolled: fondo blanco y colores normales */
  body.ac-custom-header.ac-home-scrolled .ac-home-mobilebar {
    background: #fff !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
  }
  body.ac-custom-header.ac-home-scrolled .ac-burger span {
    background: #111 !important;
  }
  body.ac-custom-header.ac-home-scrolled .ac-home-mobilebar .h-pill-account-container {
    background: transparent !important;
  }
  body.ac-custom-header.ac-home-scrolled .ac-home-mobilebar .h-pill-trigger {
    color: #A62B5D !important;
  }
  body.ac-custom-header.ac-home-scrolled .ac-home-mobilebar .h-pill-divider {
    background: #F0E2E7 !important;
  }
}
/* ---------- DESKTOP ---------- */
@media (min-width: 769px) {
  /* Arriba: transparente + texto/shortcode blanco */
  body.ac-custom-header .ac-home-desktopbar {
    background: transparent;
  }
  body.ac-custom-header .ac-home-desktopbar__menu a {
    color: #fff;
  }
  /* Shortcode pill en blanco */
  body.ac-custom-header .ac-home-desktopbar .h-pill-account-container {
    background: transparent !important;
    box-shadow: none !important;
  }
  body.ac-custom-header .ac-home-desktopbar .h-pill-trigger {
    color: #fff;
  }
  body.ac-custom-header .ac-home-desktopbar .h-pill-divider {
    background: transparent !important;
  }
  /* Scrolled: fondo blanco + colores normales */
  body.ac-custom-header.ac-home-scrolled .ac-home-desktopbar {
    background: #fff !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
  }
  body.ac-custom-header.ac-home-scrolled .ac-home-desktopbar__menu a {
    color: #111 !important;
  }
  body.ac-custom-header.ac-home-scrolled .ac-home-desktopbar .h-pill-account-container {
    background: #fff !important;
  }
  body.ac-custom-header.ac-home-scrolled .ac-home-desktopbar .h-pill-trigger {
    color: #A62B5D !important;
  }
  body.ac-custom-header.ac-home-scrolled .ac-home-desktopbar .h-pill-divider {
    background: #F0E2E7 !important;
  }
}
/* ================================
   LOGIN PILL – HOME TRANSPARENTE vs BLANCO
================================ */
/* Estado TRANSPARENTE (inicio) → botón blanco */
body.ac-custom-header .h-login-pill-subtle {
  background: transparent !important;
  color: #fff !important;
}

body.ac-custom-header .h-login-pill-subtle i {
  color: #fff !important;
}

/* Hover en transparente */
body.ac-custom-header .h-login-pill-subtle:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  color: #fff !important;
  box-shadow: none;
}

/* Estado SCROLLED → volver a estilo normal (oscuro) */
body.ac-custom-header.ac-home-scrolled .h-login-pill-subtle {
  background: rgba(255, 255, 255, 0.4509803922) !important;
  border: none;
  color: #000 !important;
}

body.ac-custom-header.ac-home-scrolled .h-login-pill-subtle i {
  color: #A62B5D !important;
}

@media (max-width: 768px) {
  body.ac-custom-header .ac-home-desktopbar {
    display: none !important;
  }
  .home-page .ac-home-mobilebar,
  .ac-home-mobilebar.is-home-transparent {
    background-color: transparent !important;
  }
  .ac-home-mobilebar {
    background-color: #7d3a5e !important;
  }
}
@media (min-width: 769px) {
  body.ac-custom-header .ac-home-mobilebar,
  body.ac-custom-header .ac-home-overlay {
    display: none !important;
  }
}
.current-menu-item a {
  color: #FDC7E0 !important;
}

:root {
  --primary-purple: #461127;
  --soft-purple: #fdf5f8;
  --gradient-btn: linear-gradient(90deg, #b05c8d 0%, #7d3a5e 100%);
  --input-border: #f0e6eb;
}

.wrap {
  background-color: #F3E0F4;
}

.app-container {
  max-width: 800px;
  margin: 0 auto;
  min-height: 100vh;
  padding: 15px;
  font-family: "Montserrat", sans-serif;
  width: 100%;
}

/* Header de Pasos */
.step-header {
  text-align: center;
  margin-bottom: 0;
}

.step-bars {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin-bottom: 30px;
}

.bar {
  width: 45px;
  height: 6px;
  background: #fff;
  border-radius: 10px;
}

.bar.active {
  background: #b05c8d;
}

.step-text {
  color: #6f2149;
  font-size: 16px;
}

/* Tipografía */
.main-title {
  color: #6F2149;
  font-size: 26px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 5px;
  font-family: "Montserrat", Sans-serif;
}

.subtitle {
  color: #888;
  text-align: center;
  font-size: 15px;
}

/* Inputs Estilo 1-login.jpeg */
.input-group {
  position: relative;
  margin-bottom: 15px;
}

.alerta {
  padding: 7px 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}

.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}

.alert-success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}

body.ac-custom-header #masthead {
  display: none !important;
}

.ac-custom-header {
  background-color: #FDF3FB;
}

.wp-singular .ac-home-desktopbar {
  background-color: #6F2149 !important;
}

.input-icon {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.5;
}

/* Botón Principal */
.btn-gradient {
  width: 100%;
  padding: 18px;
  border: none;
  border-radius: 50px;
  /*background: var(--gradient-btn);*/
  background-color: #b05c8d;
  color: white;
  font-size: 18px;
  font-weight: 600;
  margin-top: 20px;
  box-shadow: 0 4px 15px rgba(176, 92, 141, 0.3);
  cursor: pointer;
}

.btn-gradient:focus,
.btn-gradient:hover {
  background-color: #6A1944;
}

.btn-general {
  width: 100%;
  padding: 12px 18px;
  border: 1px solid #c54b93;
  border-radius: 50px;
  /*background: var(--gradient-btn);*/
  color: white;
  font-size: 18px;
  font-weight: 600;
  margin-top: 20px;
  box-shadow: 0 4px 15px rgba(176, 92, 141, 0.3);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0.02) 45%, rgba(0, 0, 0, 0.08) 100%), linear-gradient(90deg, #7c2055 0%, #b02c77 22%, #c43f8e 50%, #b02c77 78%, #7f2358 100%);
  cursor: pointer;
  display: block;
  text-align: center;
}

.btn-general:focus,
.btn-general:hover {
  background-color: #6A1944;
  color: #fff;
  border: 1px solid #c54b93;
}

.entry-header {
  margin-bottom: 0 !important;
}

/* Footer info */
.footer-info {
  text-align: center;
  font-size: 12px;
  color: #888;
  margin-top: 15px;
}

.social-proof {
  text-align: center;
  color: #aaa;
  font-size: 13px;
  margin-top: 30px;
}

/* Iconos FontAwesome dentro de inputs */
.input-group {
  position: relative;
  margin-bottom: 15px;
}

.input-icon-fa {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--primary-purple);
  opacity: 0.6;
  font-size: 18px;
}

.input-group input {
  width: 100%;
  padding: 16px 16px 16px 50px;
  border: 1px solid rgba(150, 74, 117, 0.2196078431);
  border-radius: 15px;
  font-size: 15px;
  outline: none;
  background-color: transparent;
}

.input-group input::-moz-placeholder {
  color: #863175;
}

.input-group input::placeholder {
  color: #863175;
}

.icon-left {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  color: #b05c8d;
  font-size: 20px;
}

.btn-toggle-eye {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: #b05c8d;
  cursor: pointer;
  font-size: 18px;
  opacity: 0.6;
}

/* Botón de mostrar contraseña */
.toggle-pass {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: var(--primary-purple);
  opacity: 0.5;
  cursor: pointer;
  padding: 5px;
}

/* Checkbox estilizado */
.checkbox-container {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 20px 0;
  font-size: 14px;
  color: #666;
}

.checkbox-container input {
  width: 18px;
  height: 18px;
  accent-color: var(--primary-purple);
  background-color: transparent;
}

/*paso 2*/
/* Específicos del Paso 2 */
.photo-upload-container {
  background: var(--bg-light-purple);
  border-radius: 20px;
  padding: 20px;
  text-align: center;
  margin-bottom: 20px;
}

.avatar-preview {
  width: 80px;
  height: 80px;
  background: #e9dce3;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 15px;
  color: #b05c8d;
  font-size: 30px;
  overflow: hidden;
}

.avatar-preview img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.section-label {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 10px;
  display: block;
  text-align: left;
}

.gallery-grid {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}

.gallery-item {
  flex: 1;
  aspect-ratio: 1;
  background: var(--bg-light-purple);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px dashed #dec9d4;
  color: #b05c8d;
}

/* Selectores con flecha personalizada */
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg fill='%23461127' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
  background-repeat: no-repeat;
  background-position: right 15px center;
}

textarea {
  width: 100%;
  height: 100px;
  border-radius: 20px;
  border: 1px solid var(--input-border);
  padding: 15px;
  font-family: inherit;
  resize: none;
}

.btn-submit-disabled {
  width: 100%;
  padding: 18px;
  border: 1px solid #dec9d4;
  border-radius: 50px;
  background: #fdf5f8;
  color: #b05c8d;
  font-size: 16px;
  margin-top: 20px;
}

.ac-legal-wrap {
  --ac-primary: #A62B5D;
  --ac-secondary: #4B0D28;
  --ac-text: #2b2b2b;
  --ac-muted: #666666;
  --ac-bg: #ffffff;
  --ac-border: #ead7df;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  color: var(--ac-text);
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.7;
}

.ac-legal-card {
  border: 1px solid var(--ac-border);
  border-radius: 18px;
  padding: 32px;
  box-shadow: 0 10px 30px rgba(75, 13, 40, 0.08);
  background: #fff;
}

.ac-legal-title {
  margin: 0 0 10px;
  font-size: 34px;
  line-height: 1.2;
  font-weight: 700;
  color: var(--ac-secondary);
}

.ac-legal-update {
  margin: 0 0 30px;
  font-size: 14px;
  color: var(--ac-muted);
}

.ac-legal-section {
  margin-bottom: 28px;
}

.ac-legal-section:last-child {
  margin-bottom: 0;
}

.ac-legal-heading {
  margin: 0 0 12px;
  font-size: 20px;
  line-height: 1.35;
  font-weight: 700;
  color: var(--ac-primary);
  text-transform: uppercase;
}

.ac-legal-text {
  margin: 0 0 12px;
  font-size: 16px;
  color: var(--ac-text);
}

.ac-legal-list {
  margin: 0;
  padding-left: 20px;
}

.ac-legal-list li {
  margin-bottom: 8px;
  font-size: 16px;
  color: var(--ac-text);
}

.ac-legal-highlight {
  padding: 14px 16px;
  border-left: 4px solid var(--ac-primary);
  background: rgba(166, 43, 93, 0.06);
  border-radius: 10px;
  margin-top: 12px;
}

.ac-legal-contact {
  display: inline-block;
  color: var(--ac-primary);
  font-weight: 700;
  text-decoration: none;
  word-break: break-word;
}

.ac-legal-contact:hover {
  color: var(--ac-secondary);
  text-decoration: underline;
}

@media (max-width: 767px) {
  .ac-legal-wrap {
    padding: 0;
  }
  .ac-legal-card {
    padding: 22px 18px;
    border-radius: 14px;
  }
  .ac-legal-title {
    font-size: 28px;
  }
  .ac-legal-heading {
    font-size: 18px;
  }
  .ac-legal-text,
  .ac-legal-list li {
    font-size: 15px;
  }
}
.ac-terms-box {
  margin-top: 10px;
  margin-left: 34px;
  padding: 14px 16px;
  border-radius: 14px;
  background: #fff7fb;
  border: 1px solid #f1dbe7;
  color: #54444A;
  font-size: 13px;
  line-height: 1.55;
  box-shadow: 0 8px 20px rgba(45, 10, 25, 0.06);
}

.ac-terms-box p {
  margin: 0;
}

#ac-terms-toggle {
  color: #A62B5D;
  font-weight: 500;
  text-decoration: underline;
  cursor: pointer;
}

.p3-backlink {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0.02) 45%, rgba(0, 0, 0, 0.08) 100%), linear-gradient(90deg, #7c2055 0%, #b02c77 22%, #c43f8e 50%, #b02c77 78%, #7f2358 100%);
  padding: 5px 20px;
  color: #fff !important;
  border-radius: 20px;
  margin-bottom: 20px;
  display: inline-block;
  margin-top: 30px;
}/*# sourceMappingURL=custom.css.map */