.elementor-kit-17{--e-global-color-primary:#161412;--e-global-color-secondary:#ACA394;--e-global-color-text:#F2EEE4;--e-global-color-accent:#96613F;--e-global-color-83e1b11:#161412;--e-global-color-fc05e46:#F2EEE4;--e-global-color-e8dd1da:#ACA394;--e-global-color-3d09022:#4A4540;--e-global-color-a3e7e33:#96613F;--e-global-color-9ae33ec:#22384A;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-size:42px;--e-global-typography-primary-font-weight:500;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-size:28px;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:13px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:1.5px;--e-global-typography-c8c8c80-font-family:"Arimo";--e-global-typography-c8c8c80-font-size:12px;--e-global-typography-c8c8c80-font-weight:500;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-17 button,.elementor-kit-17 input[type="button"],.elementor-kit-17 input[type="submit"],.elementor-kit-17 .elementor-button{background-color:var( --e-global-color-fc05e46 );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-83e1b11 );border-radius:0px 0px 0px 0px;padding:14px 28px 14px 28px;}.elementor-kit-17 e-page-transition{background-color:#FFBC7D;}.elementor-kit-17 a{color:var( --e-global-color-text );}.elementor-kit-17 h1{color:var( --e-global-color-fc05e46 );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h3{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h4{color:var( --e-global-color-fc05e46 );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h5{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-17{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-17 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h3{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h4{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h5{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 button,.elementor-kit-17 input[type="button"],.elementor-kit-17 input[type="submit"],.elementor-kit-17 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-17{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-17 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h2{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h3{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h4{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 h5{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-17 button,.elementor-kit-17 input[type="button"],.elementor-kit-17 input[type="submit"],.elementor-kit-17 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */.link-editorial {
  text-decoration: underline !important;
  text-underline-offset: 6px;
  text-decoration-thickness: 1px;
}

/* ==============================================================
   ESTILOS GLOBALES PARA MEMBERPRESS (MAGALLUM WINE CLUB)
   ============================================================== */

/* Fondo oscuro general para páginas autogeneradas por MemberPress */
body.memberpressproduct-template-default, 
body.mepr-account-page, 
body.mepr-login-page {
  background-color: #161412 !important;
  color: #F2EEE4 !important;
}

/* ================== TITULARES Y TEXTOS ================== */
.mp_wrapper h1, 
.mp_wrapper h2, 
.invoice-heading {
  font-family: 'Cormorant Garamond', serif !important;
  color: #F2EEE4 !important;
  font-weight: 300 !important;
  margin-bottom: 24px;
}
.mp_wrapper label, 
.mp_wrapper dt, 
.mp_wrapper p, 
.mp_cart_item_details, 
.mp-currency-cell {
  font-family: 'Inter', sans-serif !important;
  color: #F2EEE4 !important;
}
.mp_wrapper dt, 
.mp-form-label label {
  color: #ACA394 !important;
  font-size: 12px !important;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ================== PESTAÑAS (NAVEGACIÓN CUENTA) ================== */
.mp_wrapper #mepr-account-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  border-bottom: 1px solid #2A2724 !important;
  padding-bottom: 16px;
  margin-bottom: 40px;
  background: transparent !important;
}
.mp_wrapper #mepr-account-nav .mepr-nav-item a {
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #ACA394 !important;
  text-decoration: none !important;
  background: transparent !important;
  transition: color 0.2s ease;
}
.mp_wrapper #mepr-account-nav .mepr-active-nav-tab a,
.mp_wrapper #mepr-account-nav .mepr-nav-item a:hover {
  color: #F2EEE4 !important;
}

/* ================== CAMPOS DEL FORMULARIO ================== */
.mp_wrapper input[type="text"],
.mp_wrapper input[type="email"],
.mp_wrapper input[type="password"],
.mp_wrapper select {
  background-color: #1A1715 !important;
  border: 1px solid #2A2724 !important;
  border-radius: 0px !important;
  color: #F2EEE4 !important;
  padding: 14px 16px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  width: 100%;
}
.mp_wrapper input:focus,
.mp_wrapper select:focus {
  border-color: #ACA394 !important;
  outline: none !important;
}
.mp_wrapper select {
  -webkit-appearance: none;
  appearance: none;
}

/* ================== BOTONES DE ACCIÓN ================== */
.mp_wrapper input[type="submit"],
.mp_wrapper .mepr-submit,
.mp_wrapper .mepr-button {
  background-color: #F2EEE4 !important;
  color: #161412 !important;
  border: none !important;
  border-radius: 0px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 16px 32px !important;
  cursor: pointer;
  display: inline-block;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
.mp_wrapper input[type="submit"]:hover,
.mp_wrapper .mepr-submit:hover,
.mp_wrapper .mepr-button:hover {
  background-color: #ACA394 !important;
}

/* ================== TABLAS Y FACTURAS (CHECKOUT) ================== */
.mp_invoice, 
.mp-cart-footer {
  border: 1px solid #2A2724 !important;
  background-color: #1A1715 !important;
  padding: 24px !important;
}
.mp-cart-body li {
  border-bottom: 1px solid #2A2724 !important;
}
.mp_wrapper .desc {
  color: #ACA394 !important;
  font-style: italic;
}

/* ==============================================================
   ERRORES Y VALIDACIONES DE MEMBERPRESS (ESTILO MAGALLUM)
   ============================================================== */

/* Contenedor principal del mensaje de error */
.mepr_error,
.mepr-error,
ul.mepr-errors,
.mepr-form-has-errors {
  background-color: #1C1515 !important; /* Fondo carbón con tinte vino muy oscuro */
  border: 1px solid #6E2D2D !important; /* Línea fina vino/óxido, sin brillo agresivo */
  border-left: 3px solid #9E4343 !important; /* Acento editorial vertical en el lateral */
  border-radius: 0px !important;         /* Bordes rectos obligatorios */
  color: #F2EEE4 !important;             /* Texto Cal */
  padding: 16px 20px !important;
  margin: 20px 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  letter-spacing: 0.3px !important;
  list-style: none !important;
}

/* Quitar viñetas feas en las listas de errores */
ul.mepr-errors,
.mepr_error ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

ul.mepr-errors li,
.mepr_error li {
  color: #F2EEE4 !important;
  margin: 4px 0 !important;
  padding: 0 !important;
  list-style-type: none !important;
}

/* Errores en línea debajo de cada campo específico */
.mp_wrapper .cc-error,
.mepr-signup-form .cc-error,
.mepr-form-row .cc-error {
  color: #C47979 !important;             /* Tono arcilla/vino apagado (nunca rojo neón) */
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  margin-top: 6px !important;
  display: block !important;
}

/* Borde del campo que ha fallado */
.mp_wrapper input.mepr-invalid,
.mp_wrapper select.mepr-invalid,
.mp_wrapper input:invalid {
  border-color: #6E2D2D !important;
}


/* ==============================================================
   FORMULARIOS GLOBALES ELEMENTOR (ESTILO EDITORIAL MAGALLUM)
   ============================================================== */

/* 1. FILAS DE CAMPO (Línea inferior y distribución horizontal) */
.elementor-form .elementor-field-group:not(.elementor-field-type-acceptance):not(.elementor-field-type-submit) {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  border-bottom: 1px solid #2A2724 !important;
  padding: 18px 0 10px 0 !important;
  margin-bottom: 0 !important;
  background: transparent !important;
  transition: border-color 0.3s ease;
}

.elementor-form .elementor-field-group:not(.elementor-field-type-acceptance):not(.elementor-field-type-submit):focus-within {
  border-bottom-color: #ACA394 !important;
}

/* 2. ETIQUETAS (Izquierda: Inter, mayúsculas, tracking amplio) */
.elementor-form .elementor-field-group:not(.elementor-field-type-acceptance):not(.elementor-field-type-submit) .elementor-field-label {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  color: #ACA394 !important;
  margin-bottom: 0 !important;
  padding-right: 20px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* 3. CAMPOS DE TEXTO, TEXTAREA Y DESPLEGABLES (Derecha: Cormorant Garamond) */
.elementor-form .elementor-field-textual,
.elementor-form .elementor-field-group select {
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
  text-align: right !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 21px !important;
  font-weight: 300 !important;
  color: #F2EEE4 !important;
  width: 100% !important;
}

/* Placeholders tenues en cursiva */
.elementor-form .elementor-field-textual::placeholder {
  color: #55504A !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-style: italic !important;
  font-size: 21px !important;
}

/* Selectores desplegables */
.elementor-form .elementor-field-group select {
  text-align-last: right !important;
  direction: rtl !important;
  cursor: pointer !important;
}
.elementor-form .elementor-field-group select option {
  background-color: #161412 !important;
  color: #F2EEE4 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  direction: ltr !important;
}

/* 4. CASILLA DE ACEPTACIÓN / POLÍTICA */
.elementor-form .elementor-field-type-acceptance {
  padding: 26px 0 32px 0 !important;
  margin-bottom: 0 !important;
}
.elementor-form .elementor-field-type-acceptance .elementor-field-subgroup {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
.elementor-form .elementor-field-type-acceptance label {
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  color: #ACA394 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.3px !important;
  cursor: pointer !important;
}
.elementor-form .elementor-field-type-acceptance input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 14px !important;
  height: 14px !important;
  border: 1px solid #ACA394 !important;
  background: transparent !important;
  border-radius: 0px !important;
  cursor: pointer;
  margin: 0 !important;
  flex-shrink: 0;
  display: grid;
  place-content: center;
}
.elementor-form .elementor-field-type-acceptance input[type="checkbox"]:checked {
  background-color: #F2EEE4 !important;
  border-color: #F2EEE4 !important;
}

/* 5. BOTÓN DE ENVÍO GLOBAL */
.elementor-form .elementor-field-type-submit {
  padding-top: 10px !important;
}
.elementor-form .elementor-field-type-submit .elementor-button {
  background-color: #F2EEE4 !important;
  color: #161412 !important;
  border-radius: 0px !important;
  border: none !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform:
}

/* ==============================================================
   DESPLEGABLES (PAÍS Y NIVEL) - SEPARACIÓN DE FLECHA
   ============================================================== */

/* 1. Contenedor del desplegable */
.elementor-form .elementor-field-type-select .elementor-select-wrapper {
  flex: 1 !important;
  position: relative !important;
  width: 100% !important;
  display: flex !important;
  justify-content: flex-end !important;
}

/* 2. Campo Select: margen derecho para no pisar la flecha */
.elementor-form .elementor-field-group select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  cursor: pointer !important;
  direction: ltr !important;            /* Evita inversiones raras de texto */
  text-align: right !important;
  text-align-last: right !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 21px !important;
  font-weight: 300 !important;
  color: #F2EEE4 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 28px !important;       /* Espacio de seguridad reservado para la flecha */
  width: 100% !important;
}

/* 3. Estilo y color de la flecha de Elementor */
.elementor-form .elementor-select-wrapper::before {
  color: #ACA394 !important;            /* Color Piedra */
  font-size: 11px !important;
  right: 2px !important;                /* Pegada al extremo derecho */
  top: 50% !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;      /* Permite hacer clic a través de ella */
}

/* 4. Menú desplegable al abrirse */
.elementor-form .elementor-field-group select option {
  background-color: #161412 !important;
  color: #F2EEE4 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  direction: ltr !important;
  text-align: left !important;
}/* End custom CSS */