/*
Theme Name: LexIA Theme
Theme URI: https://example.com/lexia-theme
Author: LexIA
Author URI: https://example.com
Description: Child theme for Hello Elementor, prepared for Elementor pages and native WordPress news content.
Version: 1.0.0
Template: hello-elementor
Text Domain: lexia-theme
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
  --lexia-brand: #0f172a;
  --lexia-brand-alt: #1d4ed8;
  --lexia-accent: #38bdf8;
  --lexia-surface: #f8fafc;
  --lexia-text: #0f172a;
  --lexia-muted: #475569;
  --lexia-border: rgba(15, 23, 42, 0.12);
}

/* ---------- Campos de formulario generales ---------- */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="search"],
select,
textarea,
.wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.wpcf7-form select,
.wpcf7-form textarea,
.wpforms-container input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.wpforms-container select,
.wpforms-container textarea {
  width: 100%;
  box-sizing: border-box;
  font-family: "Segoe UI", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--lexia-text, #0f172a);
  background: #faf7f0;
  border: 1.5px solid rgba(110, 100, 85, 0.22);
  border-radius: 10px;
  padding: 0.8em 1em;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

select {
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, #6e6455 50%), linear-gradient(135deg, #6e6455 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 12px) calc(50% - 2px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 2.8rem;
}

textarea,
.wpcf7-form textarea,
.wpforms-container textarea {
  min-height: 120px;
  resize: vertical;
}

label,
.wpcf7-form label,
.wpforms-container label {
  display: block;
  margin-bottom: 0.45rem;
  font-weight: 700;
  font-size: 0.9rem;
  color: #1a1712;
}

input:focus,
select:focus,
textarea:focus,
.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus,
.wpforms-container input:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus {
  outline: none;
  border-color: #b8862f;
  box-shadow: 0 0 0 3px rgba(184, 134, 47, 0.14);
}

input[type="checkbox"],
input[type="radio"],
.wpcf7-form input[type="checkbox"],
.wpcf7-form input[type="radio"],
.wpforms-container input[type="checkbox"],
.wpforms-container input[type="radio"] {
  width: auto;
  min-width: 1rem;
  height: 1rem;
  margin-top: 0.35em;
  accent-color: #b8862f;
  cursor: pointer;
  flex-shrink: 0;
}

.field--checkbox,
.wpcf7-form .wpcf7-list-item,
.wpforms-container .wpforms-field-checkbox,
.wpforms-container .wpforms-field-radio {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  margin: 0;
  font-size: 0.86rem;
  font-weight: 400;
  color: #6e6455;
}

.field--checkbox label,
.wpcf7-form .wpcf7-list-item-label,
.wpforms-container .wpforms-field-label {
  margin: 0;
  font-size: 0.86rem;
  font-weight: 400;
  color: #6e6455;
  line-height: 1.5;
}

.form-submit {
  margin-top: 1rem;
  display: inline-flex;
}

.form-submit input[type="submit"],
.form-submit button[type="submit"],
button.form-submit__button,
input.form-submit__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55em;
  font-family: "Segoe UI", Helvetica, Arial, sans-serif;
  font-size: 0.98rem;
  font-weight: 700;
  padding: 0.85em 1.6em;
  border: 2px solid transparent;
  border-radius: 10px;
  background: #b8862f;
  color: #1a1712;
  box-shadow: 0 8px 24px -14px rgba(26, 23, 18, 0.4);
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.form-submit input[type="submit"]:hover,
.form-submit button[type="submit"]:hover,
button.form-submit__button:hover,
input.form-submit__button:hover {
  transform: translateY(-2px);
  background: #d8a94b;
  color: #1a1712;
  box-shadow: 0 18px 48px -24px rgba(26, 23, 18, 0.45);
}

body.page-id-3476 .wpforms-container button[type="submit"],
body.page-id-3476 .wpforms-submit,
body.page-id-3476 #wpforms-submit-0,
body.page-id-3476 .wpforms-submit-container button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55em;
  font-family: "Segoe UI", Helvetica, Arial, sans-serif;
  font-size: 0.98rem;
  font-weight: 700;
  padding: 0.85em 1.6em;
  border: 2px solid transparent;
  border-radius: 10px;
  background: #b8862f;
  color: #1a1712;
  box-shadow: 0 8px 24px -14px rgba(26, 23, 18, 0.4);
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
}

body.page-id-3476 .wpforms-container button[type="submit"]:hover,
body.page-id-3476 .wpforms-submit:hover,
body.page-id-3476 #wpforms-submit-0:hover,
body.page-id-3476 .wpforms-submit-container button:hover {
  transform: translateY(-2px);
  background: #d8a94b;
  color: #1a1712;
  box-shadow: 0 18px 48px -24px rgba(26, 23, 18, 0.45);
}

body {
  color: var(--lexia-text);
  background: #ffffff;
  font-family: "Segoe UI", Helvetica, Arial, sans-serif;
}

img {
  max-width: 100%;
  height: auto;
}

.entry-content a,
.site-content a {
  text-decoration: underline;
}

.site-header,
.site-footer {
  background: var(--lexia-surface);
}

.site-main {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

/* Quitamos el espacio que deja la plantilla entre el header y la página */
.site-main,
.site-content,
.entry-content,
.page-content,
#content,
body .site-content .elementor,
body .elementor-page,
body .elementor-section-wrap,
body .elementor-location-single {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Ocultar títulos por defecto del theme; cada página usa su propio título en Elementor */
.entry-title,
.page-title,
.entry-header h1,
.page .entry-header,
.single .entry-header,
.archive .entry-header {
  display: none !important;
}

@media (max-width: 767px) {
  .site-main {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
