/*
Theme Name: Twenty Twenty-Five Child
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Template: twentytwentyfive
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Tags: one-column,custom-colors,custom-menu,custom-logo,editor-style,featured-images,full-site-editing,block-patterns,rtl-language-support,sticky-post,threaded-comments,translation-ready,wide-blocks,block-styles,style-variations,accessibility-ready,blog,portfolio,news
Version: 1.2.1769830852
Updated: 2026-01-30 21:40:52

*/

/* =========================================================
   EI / Jade — Minimal App UI for Gravity Forms
   Scope: pages using WordPress "Blank" template (page-template-blank)
   ========================================================= */

:root{
  --ei-bg: #f6f7fb;
  --ei-card: #ffffff;
  --ei-text: #111827;
  --ei-muted: #6b7280;
  --ei-border: rgba(17, 24, 39, .14);
  --ei-shadow: 0 10px 30px rgba(17, 24, 39, .08);
  --ei-radius: 14px;
  --ei-gap: 12px;        /* controla qué tan compacto se ve */
  --ei-pad: 18px;
  --ei-input-pad-y: 10px;
  --ei-input-pad-x: 12px;
}
:where(.wp-site-blocks) > :last-child
Specificity: (0,1,0)
 {
    /* margin-block-end: 0; */
}

.wp-block-group {
    box-sizing: border-box;
}
:where(.wp-site-blocks) > * {
    margin-block-start: 0;
    margin-block-end: 0;
}
/* Fondo “app” */
body.page-template-blank{
  background: var(--ei-bg);
  color: var(--ei-text);
}

/* Quita márgenes exagerados del theme en blank */
body.page-template-blank .wp-site-blocks,
body.page-template-blank .entry-content{
  padding: 0 !important;
  margin: 0 !important;
}

/* Centrado y contenedor tipo card */
body.page-template-blank .gform_wrapper{
  max-width: 1180px;
  margin: 16px auto;
  padding: var(--ei-pad);
  background: var(--ei-card);
  border: 1px solid var(--ei-border);
  border-radius: var(--ei-radius);
  box-shadow: var(--ei-shadow);
}

/* Título del form (si lo usas) */
body.page-template-blank .gform_title{
  margin: 0 0 10px 0;
  font-size: 18px;
  line-height: 1.2;
}

/* ---------------------------------------------------------
   GRID: hace que quepan más campos (reduce scroll)
   --------------------------------------------------------- */

/* Default: 2 columnas (desktop normal) */
body.page-template-blank .gform_wrapper form .gform_fields{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--ei-gap);
  margin: 0 !important;
}

/* Pantallas grandes: 4 columnas */
@media (min-width: 1100px){
  body.page-template-blank .gform_wrapper form .gform_fields{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  /* Por defecto cada campo ocupa 2 columnas (quedan 2 campos por fila) */
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield{
    grid-column: span 2;
  }
}

/* En 2 columnas, cada campo ocupa 1 columna (2 por fila) */
@media (max-width: 1099px){
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield{
    grid-column: span 1;
  }
}

/* Mobile: 1 columna */
@media (max-width: 680px){
  body.page-template-blank .gform_wrapper form .gform_fields{
    grid-template-columns: 1fr;
  }
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield{
    grid-column: span 1;
  }
}

/* Campos que normalmente deberían ir full width */
body.page-template-blank .gform_wrapper .gfield.gsection,
body.page-template-blank .gform_wrapper .gfield.gfield_html,
body.page-template-blank .gform_wrapper .gfield:has(textarea),
body.page-template-blank .gform_wrapper .gfield:has(.ginput_container_textarea),
body.page-template-blank .gform_wrapper .gfield:has(.ginput_container_fileupload){
  grid-column: 1 / -1;
}

/* Si tu navegador no soporta :has(), al menos forzamos textarea por selector clásico */
body.page-template-blank .gform_wrapper .ginput_container_textarea{
  grid-column: 1 / -1;
}

/* ---------------------------------------------------------
   Tipografía y espaciado compacto
   --------------------------------------------------------- */

body.page-template-blank .gform_wrapper .gfield{
  margin: 0 !important;
  padding: 0 !important;
}

body.page-template-blank .gform_wrapper .gfield_label{
  font-size: 12px;
  font-weight: 600;
  color: var(--ei-muted);
  margin: 0 0 6px 0;
}

body.page-template-blank .gform_wrapper .gfield_description,
body.page-template-blank .gform_wrapper .validation_message{
  font-size: 12px;
  line-height: 1.25;
  margin-top: 6px;
}

/* Inputs / selects / textarea */
body.page-template-blank .gform_wrapper input[type="text"],
body.page-template-blank .gform_wrapper input[type="number"],
body.page-template-blank .gform_wrapper input[type="email"],
body.page-template-blank .gform_wrapper input[type="tel"],
body.page-template-blank .gform_wrapper input[type="url"],
body.page-template-blank .gform_wrapper input[type="date"],
body.page-template-blank .gform_wrapper select,
body.page-template-blank .gform_wrapper textarea{
  width: 100% !important;
  box-sizing: border-box;
  border: 1px solid var(--ei-border);
  border-radius: 12px;
  padding: var(--ei-input-pad-y) var(--ei-input-pad-x);
  background: #fff;
  color: var(--ei-text);
  font-size: 14px;
  line-height: 1.2;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}

/* Focus bonito */
body.page-template-blank .gform_wrapper input:focus,
body.page-template-blank .gform_wrapper select:focus,
body.page-template-blank .gform_wrapper textarea:focus{
  border-color: rgba(17, 24, 39, .35);
  box-shadow: 0 0 0 4px rgba(17, 24, 39, .06);
}

/* Reduce altura del textarea por defecto (más “sin scroll”) */
body.page-template-blank .gform_wrapper textarea{
  min-height: 90px;
  resize: vertical;
}

/* ---------------------------------------------------------
   Footer / botón enviar (opcional: sticky)
   --------------------------------------------------------- */

body.page-template-blank .gform_wrapper .gform_footer{
  margin-top: 14px !important;
  padding-top: 12px !important;
  border-top: 1px solid rgba(17, 24, 39, .08);
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}

/* Sticky: deja el botón siempre a la mano (quita si no te gusta) */
body.page-template-blank .gform_wrapper .gform_footer{
  position: sticky;
  bottom: 0;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(8px);
  border-radius: 0 0 var(--ei-radius) var(--ei-radius);
}

/* Botón */
body.page-template-blank .gform_wrapper .gform_button,
body.page-template-blank .gform_wrapper input[type="submit"]{
  border: 1px solid rgba(17, 24, 39, .18);
  border-radius: 12px;
  padding: 10px 14px;
  font-weight: 700;
  cursor: pointer;
  background: #111827;
  color: #fff;
  transition: transform .05s ease, opacity .15s ease;
}

body.page-template-blank .gform_wrapper .gform_button:active,
body.page-template-blank .gform_wrapper input[type="submit"]:active{
  transform: translateY(1px);
}

body.page-template-blank .gform_wrapper .gform_button:hover,
body.page-template-blank .gform_wrapper input[type="submit"]:hover{
  opacity: .92;
}

/* Mensajes de error más limpios */
body.page-template-blank .gform_wrapper .validation_error,
body.page-template-blank .gform_wrapper .gfield_error .gfield_label,
body.page-template-blank .gform_wrapper .gfield_error .validation_message{
  color: #b91c1c;
}
/* =========================================================
   EI / Jade — Grid control por clases (2 o 3 columnas)
   Scope: blank template pages
   ========================================================= */

:root{
  --ei-gap: 12px;
}

/* 6 columnas en desktop/laptop */
@media (min-width: 900px){
  body.page-template-blank .gform_wrapper form .gform_fields{
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: var(--ei-gap);
  }

  /* Default: 1/2 (3 de 6) => 2 columnas por fila */
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield{
    grid-column: span 3;
  }

  /* === Clases que tú asignas en cada campo === */
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield.ei-1-3{ grid-column: span 2; } /* 1/3 */
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield.ei-2-3{ grid-column: span 4; } /* 2/3 */

  body.page-template-blank .gform_wrapper form .gform_fields > .gfield.ei-1-2{ grid-column: span 3; } /* 1/2 */
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield.ei-1-1{ grid-column: 1 / -1; } /* full */

  /* Cuartos por si algún día te pones creativo */
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield.ei-1-4{ grid-column: span 1; } /* 1/6 real (min) */
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield.ei-2-4{ grid-column: span 3; } /* 1/2 */
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield.ei-3-4{ grid-column: span 5; } /* 5/6 */
}

/* Tablet/móvil: todo a 1 columna */
@media (max-width: 899px){
  body.page-template-blank .gform_wrapper form .gform_fields{
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--ei-gap);
  }
  body.page-template-blank .gform_wrapper form .gform_fields > .gfield{
    grid-column: auto;
  }
}
/* Oculta pares extra */
.ei-li-hidden{
  display:none !important;
}

/* Botón + minimal */
.ei-li-add{
  margin-left: 10px;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
  cursor: pointer;
  line-height: 1;
  font-size: 18px;
}

/* Para que input + botón queden alineados */
.ei-li-cost-inline{
  display:flex;
  gap:10px;
  align-items:center;
}

.ei-li-cost-inline .ginput_container{
  flex: 1;
}

