.elementor-9224 .elementor-element.elementor-element-fc8661c{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-9224 .elementor-element.elementor-element-fc8661c:not(.elementor-motion-effects-element-type-background), .elementor-9224 .elementor-element.elementor-element-fc8661c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-5da9ef4f );}.elementor-9224 .elementor-element.elementor-element-5bf859a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9224 .elementor-element.elementor-element-1662da5 > .elementor-widget-container{margin:36px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-9224 .elementor-element.elementor-element-1662da5{color:#FFFFFF;}.elementor-9224 .elementor-element.elementor-element-851955b{font-size:23px;color:#FFFFFF;}.elementor-9224 .elementor-element.elementor-element-b9dc619.elementor-element{--align-self:center;}.elementor-9224 .elementor-element.elementor-element-b9dc619{text-align:center;font-size:1px;}.elementor-9224 .elementor-element.elementor-element-4882c5d{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-9224 .elementor-element.elementor-element-cd02ca9 > .elementor-widget-container{margin:-24px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-9224 .elementor-element.elementor-element-cd02ca9.elementor-element{--align-self:center;}.elementor-9224 .elementor-element.elementor-element-cd02ca9{text-align:center;}.elementor-9224 .elementor-element.elementor-element-42d6e5c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-9224 .elementor-element.elementor-element-84c5045 img{width:95%;}.elementor-9224 .elementor-element.elementor-element-7c8283b{--display:flex;}.elementor-9224 .elementor-element.elementor-element-8ba20cf{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-9224 .elementor-element.elementor-element-8ba20cf .elementor-divider-separator{width:100%;}.elementor-9224 .elementor-element.elementor-element-8ba20cf .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-9224 .elementor-element.elementor-element-ffe092e{text-align:center;}.elementor-9224 .elementor-element.elementor-element-ffe092e .elementor-heading-title{font-size:37px;font-weight:700;}.elementor-9224 .elementor-element.elementor-element-b25c57d > .elementor-widget-container{margin:-17px 0px 0px 0px;}.elementor-9224 .elementor-element.elementor-element-b25c57d{text-align:center;font-size:20px;}.elementor-9224 .elementor-element.elementor-element-0d6e904 > .elementor-widget-container{margin:0px 0px -0px 0px;padding:0px 0px 0px 0px;}.elementor-9224 .elementor-element.elementor-element-45a91e4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-9224 .elementor-element.elementor-element-5e44879 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-9224 .elementor-element.elementor-element-198a872{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-9224 .elementor-element.elementor-element-198a872 .elementor-divider-separator{width:100%;}.elementor-9224 .elementor-element.elementor-element-198a872 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-accordion-icon{font-size:16px;margin-left:10px;color:#333;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header svg.fa-accordion-icon{height:16px;width:16px;line-height:16px;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .eael-accordion-tab-title{color:#333;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-accordion-icon-svg svg{color:#333;fill:#333;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header svg{fill:#333;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .eael-accordion-tab-title{color:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .fa-accordion-icon{color:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .fa-accordion-icon svg{color:#fff;fill:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover svg.fa-accordion-icon{fill:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active{color:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .eael-accordion-tab-title{color:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-accordion-icon{color:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-accordion-icon svg{color:#fff;fill:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active svg.fa-accordion-icon{fill:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-content{color:#333;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-toggle, .elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header > .fa-toggle-svg{font-size:16px;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header svg.fa-toggle{height:16px;width:16px;line-height:16px;fill:#444;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-toggle{color:#444;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-toggle svg{color:#444;fill:#444;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-toggle{color:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-toggle svg{color:#fff;fill:#fff;}.elementor-9224 .elementor-element.elementor-element-dad0f49 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active svg.fa-toggle{fill:#fff;}.elementor-9224 .elementor-element.elementor-element-2dd52a3{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-9224 .elementor-element.elementor-element-2dd52a3 .elementor-divider-separator{width:100%;}.elementor-9224 .elementor-element.elementor-element-2dd52a3 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-9224 .elementor-element.elementor-element-9522400 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-9224 .elementor-element.elementor-element-9522400 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-9224 .elementor-element.elementor-element-9522400 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-9224 .elementor-element.elementor-element-9522400 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-field-type-html{padding-bottom:0px;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-button[type="submit"]{color:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-9224 .elementor-element.elementor-element-9522400{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}@media(max-width:1024px){.elementor-9224 .elementor-element.elementor-element-4882c5d{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-9224 .elementor-element.elementor-element-fc8661c{--content-width:1497px;}.elementor-9224 .elementor-element.elementor-element-5bf859a{--width:50%;}.elementor-9224 .elementor-element.elementor-element-42d6e5c{--width:50%;}.elementor-9224 .elementor-element.elementor-element-7c8283b{--content-width:1497px;}}@media(max-width:767px){.elementor-9224 .elementor-element.elementor-element-1662da5{text-align:center;}.elementor-9224 .elementor-element.elementor-element-b9dc619 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-9224 .elementor-element.elementor-element-4882c5d{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}

/* Chips (estilo similar a Tailwind bg blanco translúcido sobre fondo oscuro) */
.chips-modelos {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
  margin-bottom: 12px;
}
.chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 9999px;
  font: 600 12px/1 system-ui, -apple-system, "Inter", Roboto, Arial, sans-serif;
  color: #0ea5e9;                 /* sky-500 */
  background: rgba(255, 255, 255, 0.10);
  border: 1px solid rgba(255, 255, 255, 0.16);
}

/* separación entre botones */
.botones-cta {
  display: inline-flex;
  gap: 24px; /* más separados */
  margin-top: 12px;
}

/* Tamaño grande común */
.btn-lg {
  padding: 14px 24px;       /* más grandes */
  font-size: 16px;          /* más grandes */
  border-radius: 14px;
}

/* Botón azul: "Ver precios" */
.btn-precios {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font: 700 16px/1.1 system-ui, -apple-system, "Inter", Roboto, Arial, sans-serif;
  color: #0F172A;              /* text-slate-900 */
  background: #38BDF8;         /* sky-400 */
  box-shadow: 0 8px 18px rgba(56, 189, 248, 0.28);
  text-decoration: none;
  transition: background .2s ease, transform .06s ease, box-shadow .2s ease;
}
.btn-precios:hover { background: #7DD3FC; }   /* sky-300 */
.btn-precios:active { transform: translateY(1px); }
.btn-precios:focus-visible { outline: 2px solid #0EA5E9; outline-offset: 2px; }

/* Botón blanco: "Contactar" */
.btn-contactar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font: 700 16px/1.1 system-ui, -apple-system, "Inter", Roboto, Arial, sans-serif;
  color: #0B1220;              /* negro suave */
  background: #FFFFFF;
  border: 1px solid #E2E8F0;   /* slate-200 */
  box-shadow: 0 3px 10px rgba(15, 23, 42, 0.08);
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease, transform .06s ease;
}
.btn-contactar:hover { background: #F1F5F9; }  /* slate-100 */
.btn-contactar:active { transform: translateY(1px); }
.btn-contactar:focus-visible { outline: 2px solid #0F172A; outline-offset: 2px; }
/* separación entre botones */
.botones-cta {
  display: inline-flex;
  gap: 20px;            /* un poco más separados */
}

/* Botón azul: "Ver precios" */
.btn-precios {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border-radius: 12px;
  font: 600 14px/1.1 system-ui, -apple-system, "Inter", Roboto, Arial, sans-serif;
  color: #0F172A;              /* text-slate-900 */
  background: #38BDF8;         /* sky-400 */
  box-shadow: 0 6px 14px rgba(56, 189, 248, 0.25);
  text-decoration: none;
  transition: background .2s ease, transform .06s ease, box-shadow .2s ease;
}
.btn-precios:hover { background: #7DD3FC; }   /* sky-300 */
.btn-precios:active { transform: translateY(1px); }
.btn-precios:focus-visible { outline: 2px solid #0EA5E9; outline-offset: 2px; }

/* Botón blanco: "Contactar" */
.btn-contactar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border-radius: 12px;
  font: 600 14px/1.1 system-ui, -apple-system, "Inter", Roboto, Arial, sans-serif;
  color: #0B1220;              /* negro suave */
  background: #FFFFFF;
  border: 1px solid #E2E8F0;   /* slate-200 */
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease, transform .06s ease;
}
.btn-contactar:hover { background: #F1F5F9; }  /* slate-100 */
.btn-contactar:active { transform: translateY(1px); }
.btn-contactar:focus-visible { outline: 2px solid #0F172A; outline-offset: 2px; }








/* Start custom CSS for html, class: .elementor-element-4c0618f *//* 3 por fila en desktop, 2 en tablet, 1 en móvil */
.catalogo__grid{
  display: grid !important;
  gap: 24px;
  grid-template-columns: 1fr;                /* móvil */
}
@media (min-width: 768px){
  .catalogo__grid{ grid-template-columns: repeat(2, 1fr); }   /* tablet */
}
@media (min-width: 1024px){
  .catalogo__grid{ grid-template-columns: repeat(3, 1fr) !important; } /* desktop: 3 */
}

/* Nombres en negrita */
.cat-head h3{
  margin: 0;
  font-size: 1rem;
  font-weight: 700;   /* negrita */
}
/* --- GRID robusto contra Elementor --- */
.catalogo__grid{
  display: grid !important;
  gap: 24px;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  align-items: start;
}

/* --- Tarjeta --- */
.cat-card{
  border: 1px solid #e2e8f0;
  background: #fff;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 2px 6px rgba(15,23,42,.06);
}

/* --- Marco de imagen uniforme (usa aspect-ratio) --- */
.cat-media{
  aspect-ratio: 4 / 3;         /* todas iguales */
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-bottom: 12px;
}

/* Imagen centrada y grande, con pequeño margen de respiración */
.cat-media img{
  width: 96%;
  height: 96%;
  object-fit: contain;          /* respeta proporciones */
  object-position: center;
  display: block;
  transform: scale(1.18);       /* << zoom para compensar bordes transparentes */
  transform-origin: center;
}

/* Si alguna queda aún pequeña, sube un poco el zoom aquí */
.cat-media--mas-zoom img { transform: scale(1.28); }

/* Tipos y badges */
.cat-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:6px; }
.cat-head h3{ margin:0; font-size:1rem; }
.pill{ display:inline-block; padding:2px 8px; border-radius:999px; background:#f1f5f9; color:#0f172a; font-size:.675rem; }
.pill--amber{ background:#fffbeb; color:#92400e; }
.cat-desc{ margin:.5rem 0 .25rem; color:#475569; font-size:.9rem; line-height:1.4; }
.cat-list{ margin:.5rem 0 0 1rem; color:#334155; font-size:.9rem; }
.cat-list li{ margin:.25rem 0; }
/* Lista de características pro */
.specs{
  list-style:none; margin:10px 0 0; padding:0;
  display:grid; gap:8px;
}
.specs li{ display:flex; align-items:flex-start; gap:10px; color:#334155; font-size:.92rem; }
.specs li svg{ flex:0 0 18px; margin-top:2px; color:#0ea5e9; }
.specs b{ font-weight:700; color:#0f172a; }

/* Línea resumen opcional bajo el título */
.kv{
  margin:.35rem 0 .4rem; color:#475569; font-size:.9rem;
}
.badges{ display:flex; flex-wrap:wrap; gap:6px; margin:.4rem 0 0; }
.badges .badge{
  background:#f1f5f9; color:#0f172a; font-size:.7rem; border-radius:999px;
  padding:3px 8px;
}
/* —— Mejora visual de las tarjetas —— */
.cat-card{
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background:#fff;
  padding: 18px;
  box-shadow: 0 2px 6px rgba(15,23,42,.06);
  transition: box-shadow .2s ease, transform .08s ease;
}
.cat-card:hover{
  box-shadow: 0 8px 24px rgba(15,23,42,.12);
  transform: translateY(-1px);
}

/* Título (ya en negrita por tu regla previa) */
.cat-head h3{
  font-weight:700;
  letter-spacing:.1px;
}

/* Línea de resumen (párrafo bajo el título) */
.cat-desc{
  margin: .4rem 0 .35rem;
  color:#475569;
  font-size:.95rem;
  line-height:1.5;
}

/* —— Lista de características: estilo “pro” con checks —— */
.cat-list{
  list-style:none;
  margin: .4rem 0 0;
  padding:0;
  display:grid;
  gap:8px;                    /* espacio entre bullets */
}
.cat-list li{
  position:relative;
  padding-left:28px;          /* sitio para el icono */
  color:#334155;
  font-size:.94rem;
  line-height:1.45;
}

/* Check redondo con SVG (compatible moderno) */
.cat-list li::before{
  content:"";
  position:absolute;
  left:0; top:.2em;
  width:18px; height:18px;
  border-radius:999px;
  background: linear-gradient(180deg,#0ea5e9,#38bdf8); /* azul bonito */
  box-shadow: 0 1px 2px rgba(2,132,199,.25) inset;
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill=\"%23fff\" d=\"M9 16.2 4.8 12l1.4-1.4L9 13.4l8.8-8.8L19.2 6z\"/></svg>') center/12px 12px no-repeat;
          mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill=\"%23fff\" d=\"M9 16.2 4.8 12l1.4-1.4L9 13.4l8.8-8.8L19.2 6z\"/></svg>') center/12px 12px no-repeat;
}

/* Fallback si algún navegador no soporta mask (opcional) */
@supports not (mask: url(#x)){
  .cat-list li::before{
    background:#e2f2ff;
    color:#0ea5e9;
    display:grid; place-items:center;
    font-weight:700;
    content:"✓";
    font-size:12px;
  }
}

/* Un poco más de énfasis tipográfico */
.cat-list b{ font-weight:700; color:#0f172a; }

/* Mantén 3 por fila en desktop (por si Elementor pisa algo) */
@media (min-width:1024px){
  .catalogo__grid{ grid-template-columns: repeat(3, 1fr) !important; }
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-0d6e904 *//* Botón negro legible aunque Elementor fuerce colores de enlaces */
.btn-dark{
  background:#0f172a;
  color:#fff !important;
  text-decoration:none !important;
  border:1px solid transparent;
  transition:background .2s ease, border-color .2s ease;
}
.btn-dark:hover,
.btn-dark:focus{
  background:#111827;          /* un pelín más claro para hover */
  border-color:#0b1220;
  color:#fff !important;
}

/* Botón azul (sigue el estilo que usas en la web) */
.btn-blue{
  background:#38BDF8;          /* sky-400 */
  color:#0F172A !important;    /* texto oscuro sobre azul claro */
  text-decoration:none !important;
  transition:background .2s ease;
}
.btn-blue:hover,
.btn-blue:focus{
  background:#7DD3FC;          /* sky-300 */
}

/* Por si Elementor aplica color global a <a> dentro de cards */
.price-card a{ color:inherit; }
/* ===== PRECIOS — Grid y tarjetas ===== */
#precios .grid{
  display:grid !important;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media (min-width:768px){ #precios .grid{ grid-template-columns: repeat(2,1fr); } }
@media (min-width:1024px){ #precios .grid{ grid-template-columns: repeat(3,1fr) !important; } }

#precios .price-card{
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:#fff;
  padding:20px;
  box-shadow:0 2px 10px rgba(15,23,42,.06);
}

#precios h2{ margin-bottom:.25rem; }
#precios p{ margin:0; }
#precios .price-card h3{
  margin:0 0 .25rem 0;
  font-weight:700;
  letter-spacing:.1px;
}
#precios .price-card .text-3xl{
  line-height:1.1;
  margin-bottom:.15rem;
}
#precios .text-xs{ color:#64748b; }   /* subtítulo "Precio por jornada" */

/* ===== Botones “Reservar” (negro y azul) ===== */
#precios a.btn-dark,
#precios a.btn-blue{
  display:inline-flex !important;
  width:100%;
  align-items:center; justify-content:center;
  border-radius:12px;
  padding:12px 14px;
  font-weight:700;
  letter-spacing:.2px;
  text-decoration:none !important;
  border:1px solid transparent;
  transition:background .2s ease, transform .06s ease, box-shadow .2s ease;
  box-shadow:0 6px 16px rgba(15,23,42,.08);
}

/* negro */
#precios a.btn-dark{
  background:#0f172a !important;
  color:#fff !important;
  border-color:#0b1220;
}
#precios a.btn-dark:hover,
#precios a.btn-dark:focus{
  background:#111827 !important;
  color:#fff !important;
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(15,23,42,.18);
}

/* azul destacado (tarjeta central) */
#precios a.btn-blue{
  background:#38BDF8 !important;   /* sky-400 */
  color:#0F172A !important;
  border-color:#22a9e6;
  box-shadow:0 8px 18px rgba(56,189,248,.35);
}
#precios a.btn-blue:hover,
#precios a.btn-blue:focus{
  background:#7DD3FC !important;   /* sky-300 */
}

/* ===== Separación general (mejora respiración) ===== */
#precios{ padding-top:56px; padding-bottom:56px; }
#precios .mt-8{ margin-top:24px !important; }
#precios .mt-4{ margin-top:16px !important; }/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-45a91e4 *//* ===== CÓMO FUNCIONA — Grid y tarjetas ===== */
#proceso .grid{
  display: grid !important;
  grid-template-columns: 1fr;            /* móvil */
  gap: 24px;
}
@media (min-width: 768px){ #proceso .grid{ grid-template-columns: repeat(2,1fr); } }
@media (min-width: 1024px){ #proceso .grid{ grid-template-columns: repeat(3,1fr) !important; } }

#proceso .grid > div{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:20px;
  box-shadow:0 2px 10px rgba(15,23,42,.06);
}
#proceso h2{ margin-bottom:.25rem; }
#proceso h3{ margin:0; font-weight:700; letter-spacing:.1px; }
#proceso p{ margin:.5rem 0 0; color:#475569; font-size:.95rem; line-height:1.55; }

/* ===== LEGAL — Grid, tarjetas y botón visible ===== */
#legal{ background:#f8fafc; } /* mismo fondo claro que usamos antes */
#legal .grid{
  display:grid !important;
  grid-template-columns: 1fr;            /* móvil */
  gap:24px;
}
@media (min-width:1024px){ #legal .grid{ grid-template-columns: 1fr 1fr !important; } }

#legal .grid > div{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:20px;
  box-shadow:0 2px 10px rgba(15,23,42,.06);
}
#legal h2{ margin-bottom:.25rem; }
#legal h3{ margin:0; font-weight:700; letter-spacing:.1px; }
#legal p{ margin:.5rem 0 0; color:#475569; font-size:.95rem; line-height:1.55; }
#legal ul{ margin:.5rem 0 0 1.1rem; color:#334155; font-size:.95rem; line-height:1.5; }
#legal li{ margin:.25rem 0; }

/* CTA azul del bloque legal (evita que se vea negro) */
#legal .btn-legal{
  display:inline-flex !important;
  width:100%;
  align-items:center; justify-content:center;
  border-radius:12px;
  padding:12px 14px;
  background:#38BDF8 !important;     /* azul visible */
  color:#0F172A !important;           /* texto oscuro */
  border:1px solid #22a9e6;
  text-decoration:none !important;
  box-shadow:0 8px 18px rgba(56,189,248,.35);
  transition:background .2s ease, transform .06s ease;
}
#legal .btn-legal:hover,
#legal .btn-legal:focus{
  background:#7DD3FC !important;
  transform:translateY(-1px);
}

/* Separación vertical coherente con “Precios” */
#proceso, #legal{ padding-top:56px; padding-bottom:56px; }/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-5e44879 *//* Botón del Pack Legal: visible aunque el tema/Elementor pisara estilos */
.btn-legal{
  background:#38BDF8 !important;   /* azul visible */
  color:#0F172A !important;         /* texto oscuro para contraste AAA sobre sky-400 */
  text-decoration:none !important;
  border:1px solid transparent;
  transition: background .2s ease, transform .06s ease;
}
.btn-legal:hover,
.btn-legal:focus{
  background:#7DD3FC !important;   /* hover */
  color:#0F172A !important;
}/* End custom CSS */






/* Start custom CSS for form, class: .elementor-element-9522400 *//* ================== FORMULARIO DRONPLUS — Elementor Pro ================== */
/* Contenedor general */
.form-dronplus .elementor-form{
  --dp-bg: #ffffff;
  --dp-card: #ffffff;
  --dp-border: #e2e8f0;      /* slate-200 */
  --dp-border-focus: #38BDF8;/* sky-400 */
  --dp-text: #0f172a;        /* slate-900 */
  --dp-muted: #64748b;       /* slate-500/600 */
  --dp-success: #16a34a;     /* green-600 */
  --dp-error: #ef4444;       /* red-500 */
  --dp-shadow: 0 6px 18px rgba(15,23,42,.08);
  --dp-radius: 14px;
  --dp-pad: 14px;
  color: var(--dp-text);
}

/* Tarjeta alrededor del formulario (opcional) */
.form-dronplus{
  background: var(--dp-card);
  border: 1px solid var(--dp-border);
  border-radius: 18px;
  padding: clamp(18px, 3vw, 28px);
  box-shadow: var(--dp-shadow);
}

/* Etiquetas */
.form-dronplus .elementor-field-group > label{
  display:block;
  font-weight:600;
  margin: 8px 0 6px;
  color: var(--dp-text);
  font-size: .95rem;
}

/* Campos base (input, textarea, select) */
.form-dronplus .elementor-field-group .elementor-field,
.form-dronplus .elementor-field-textual{
  width: 100%;
  background:#fff;
  border:1px solid var(--dp-border);
  border-radius: var(--dp-radius);
  padding: var(--dp-pad) 14px;
  color: var(--dp-text);
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
  outline: 0;
  box-shadow: none;
}
.form-dronplus .elementor-field:focus,
.form-dronplus .elementor-field:focus-visible{
  border-color: var(--dp-border-focus);
  box-shadow: 0 0 0 4px rgba(125,211,252,.45); /* sky-300 focus ring */
}

/* Placeholder */
.form-dronplus ::placeholder{ color: var(--dp-muted); opacity:.9; }

/* Textarea */
.form-dronplus textarea.elementor-field-textual{ min-height:120px; resize: vertical; }

/* Select con chevrón */
.form-dronplus select.elementor-field{
  appearance:none; -webkit-appearance:none; -moz-appearance:none;
  background-image:
    linear-gradient(45deg, transparent 50%, #94a3b8 50%),
    linear-gradient(135deg, #94a3b8 50%, transparent 50%);
  background-position:
    calc(100% - 18px) calc(1.05em),
    calc(100% - 12px) calc(1.05em);
  background-size:6px 6px, 6px 6px;
  background-repeat:no-repeat;
  padding-right: 38px;
}

/* Checkbox y radio (subgrupos) */
.form-dronplus .elementor-field-type-acceptance input,
.form-dronplus .elementor-field-type-checkbox input,
.form-dronplus .elementor-field-type-radio input{
  accent-color: var(--dp-border-focus);
  width: 18px; height: 18px;
}
.form-dronplus .elementor-field-subgroup label{
  color: var(--dp-text); font-weight:500;
}

/* Grupo con enfoque (resalta la fila en foco) */
.form-dronplus .elementor-field-group:focus-within{
  background:#f8fafc;
  border-radius: 12px;
}

/* Mensajes globales */
.form-dronplus .elementor-message{
  border-radius: 12px;
  padding: 10px 12px;
  font-size: .92rem;
}
.form-dronplus .elementor-message.elementor-message-success{
  background: #ecfdf5; color:#065f46; border:1px solid #a7f3d0;
}
.form-dronplus .elementor-message.elementor-message-danger{
  background: #fef2f2; color:#991b1b; border:1px solid #fecaca;
}
/* Errores inline por campo */
.form-dronplus .elementor-field-group .elementor-message-inline{
  margin-top:6px; font-size:.85rem; color: var(--dp-error);
}

/* ================== Botones ================== */
.form-dronplus .elementor-button{
  width: 100%;
  border-radius: 14px;
  padding: 12px 14px;
  font-weight:700;
  letter-spacing:.3px;
  transition: transform .06s ease, background .2s ease, box-shadow .2s ease;
  box-shadow: 0 6px 16px rgba(56,189,248,.35);
}

/* Botón oscuro por defecto */
.form-dronplus .elementor-button[type="submit"]{
  background:#0f172a; color:#fff !important; border:1px solid #0b1220;
  box-shadow: 0 6px 16px rgba(15,23,42,.25);
}
.form-dronplus .elementor-button[type="submit"]:hover{ background:#111827; transform: translateY(-1px); }
.form-dronplus .elementor-button[type="submit"]:focus{ outline:0; box-shadow:0 0 0 4px rgba(15,23,42,.25); }

/* Variante azul (añade clase extra 'is-blue' al botón en Elementor si la prefieres) */
.form-dronplus .elementor-button.is-blue{
  background:#38BDF8; color:#0F172A !important; border:1px solid #22a9e6;
  box-shadow: 0 6px 16px rgba(56,189,248,.45);
}
.form-dronplus .elementor-button.is-blue:hover{ background:#7DD3FC; }

/* Cargando */
.form-dronplus .elementor-form .elementor-button[disabled]{ opacity:.8; cursor:progress; }

/* ================== Layout en columnas ================== */
/* Activa el grid 2 columnas en desktop; usa clase 'is-1-1' para un campo a ancho completo */
@media (min-width: 992px){
  .form-dronplus .elementor-form-fields-wrapper{
    display:grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px 16px;
  }
  .form-dronplus .elementor-field-group{ margin:0 !important; }
  .form-dronplus .elementor-field-group.is-1-1{ grid-column: 1 / -1; }
}

/* ================== Aceptación de Política de Privacidad ================== */
/* Contenedor del campo de aceptación */
.form-dronplus .elementor-field-group.elementor-field-type-acceptance{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 8px;
  margin-bottom: 8px;
}

/* Checkbox personalizado */
.form-dronplus .elementor-field-type-acceptance input[type="checkbox"]{
  appearance: none; -webkit-appearance: none;
  width: 20px; height: 20px;
  margin: 2px 0 0;
  border: 2px solid #cbd5e1;         /* slate-300 */
  border-radius: 6px;
  background: #fff;
  display: inline-block;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
  outline: none;
}
.form-dronplus .elementor-field-type-acceptance input[type="checkbox"]:focus{
  border-color: #38BDF8;
  box-shadow: 0 0 0 4px rgba(125,211,252,.45);
}
.form-dronplus .elementor-field-type-acceptance input[type="checkbox"]:checked{
  background: #38BDF8; border-color: #22a9e6;
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="%23ffffff" d="M8.1 13.6 4.5 10l1.2-1.2 2.4 2.4 6.3-6.3 1.2 1.2z"/></svg>') center/14px 14px no-repeat;
          mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="%23ffffff" d="M8.1 13.6 4.5 10l1.2-1.2 2.4 2.4 6.3-6.3 1.2 1.2z"/></svg>') center/14px 14px no-repeat;
}

/* Texto/label y enlace */
.form-dronplus .elementor-field-type-acceptance label{
  margin: 0;
  line-height: 1.45;
  color: #334155;                     /* slate-700 */
  font-size: .92rem;
}
.form-dronplus .elementor-field-type-acceptance label a{
  color: #0ea5e9; text-decoration: underline; text-underline-offset: 2px;
}
.form-dronplus .elementor-field-type-acceptance label a:hover{
  color: #0284c7; text-decoration-thickness: 2px;
}

/* Error inline del campo de aceptación */
.form-dronplus .elementor-field-group.elementor-field-type-acceptance .elementor-message-inline{
  margin-left: 30px;
  margin-top: 6px;
  font-size: .85rem;
  color: var(--dp-error);
}

/* Variante visual para remarcar el bloque de aceptación (añade clase 'is-policy' al grupo si quieres) */
.form-dronplus .elementor-field-group.is-policy{
  padding: 10px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #f8fafc;
}
.form-dronplus .elementor-field-group.is-policy:focus-within{
  border-color: #38BDF8;
  box-shadow: 0 0 0 4px rgba(125,211,252,.35);
}

/* ================== Accesibilidad mínima ================== */
.form-dronplus .elementor-field:focus-visible{ outline:2px solid transparent; }
.form-dronplus .elementor-field:focus:not(:focus-visible){ outline: none; }/* End custom CSS */

