.elementor-856 .elementor-element.elementor-element-996d092{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-856 .elementor-element.elementor-element-ef82a81{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:50px 150px 50px 150px;--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;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-labels-inline .elementor-field-group > label{padding-left:15px;}body:not(.rtl) .elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-labels-inline .elementor-field-group > label{padding-right:15px;}body .elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-labels-above .elementor-field-group > label{padding-bottom:15px;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-field-group > label, .elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-field-subgroup label{color:#4F2718;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-field-type-html{padding-bottom:0px;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .e-form__buttons__wrapper__button-next{background-color:#4F2718;color:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-button[type="submit"]{background-color:#4F2718;color:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .e-form__buttons__wrapper__button-next:hover{background-color:#7A7A7A;color:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-button[type="submit"]:hover{background-color:#7A7A7A;color:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-856 .elementor-element.elementor-element-ef82a81 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-856 .elementor-element.elementor-element-8ebd520{--display:flex;--min-height:47vh;--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-856 .elementor-element.elementor-element-e6779e7 iframe{height:500px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-856 .elementor-element.elementor-element-ef82a81{margin:50px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 50px 0px;}}@media(min-width:768px){.elementor-856 .elementor-element.elementor-element-996d092{--content-width:1600px;}}/* Start custom CSS for html, class: .elementor-element-d920396 */:root {
    --cream-50: #F9F5EB;
    --cream-100: #F1ECE0;
    --cream-200: #E7DFCC;
    --burgundy-900: #3A1B11;
    --burgundy-800: #4F2719;
    --burgundy-700: #5C2E1F;
    --burgundy-600: #783F2C;
    --burgundy-300: #B68A78;
    --ink-900: #1F120B;
    --ink-700: #3E2A1F;
    --ink-500: #6F5A4D;
    --line: rgba(92, 46, 31, .14);
    --line-strong: rgba(92, 46, 31, .35);
    --line-dark: rgba(241, 236, 224, .22);
    --gold: #C99B3F;
    --serif: "Cormorant Garamond", Georgia, serif;
    --sans: "Inter", system-ui, sans-serif;
    --mono: "JetBrains Mono", monospace;
  }

  *, *::before, *::after { box-sizing: border-box; }
  html, body { margin: 0; padding: 0; }
  body { font-family: var(--sans); color: var(--ink-900); background: var(--cream-100); font-size: 16.5px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
  img { max-width: 100%; display: block; height: auto; }
  a { color: inherit; text-decoration: none; }
  
  h1, h2, h3 { font-family: var(--serif); font-weight: 500; margin: 0; color: var(--burgundy-800); letter-spacing: -.018em; }
  h1 { font-size: clamp(48px, 8vw, 100px); line-height: .95; }
  h2 { font-size: clamp(32px, 5vw, 70px); line-height: 1; }
  h3 { font-size: clamp(18px, 1.6vw, 24px); line-height: 1.2; }
  
  p { margin: 0 0 16px; }
  .lead { font-size: clamp(16px, 1.1vw, 19px); line-height: 1.6; color: var(--ink-700); max-width: 65ch; }
  
  .wrap { max-width: 1400px; margin: 0 auto; padding: 0 20px; }
  section { padding: clamp(60px, 10vw, 120px) 0; }
  
  .btn { display: inline-flex; align-items: center; gap: 12px; padding: 14px 28px; background: var(--burgundy-800); color: var(--cream-100); text-decoration: none; font-family: var(--sans); font-weight: 500; font-size: 13px; letter-spacing: .04em; text-transform: uppercase; border: 1px solid var(--burgundy-800); cursor: pointer; transition: all .25s; }
  .btn:hover { background: var(--burgundy-900); transform: translateY(-1px); box-shadow: 0 8px 20px rgba(58,27,17,.2); }
  
  .bg-cream { background: var(--cream-100); position: relative; }
  .bg-cream-soft { background: linear-gradient(135deg, var(--cream-50) 0%, #FAF8F3 100%); position: relative; }
  .bg-burgundy { background: linear-gradient(135deg, var(--burgundy-700) 0%, #4A2415 100%); color: var(--cream-100); position: relative; }

  /* HERO */
  .hero { position: relative; min-height: 60vh; display: flex; flex-direction: column; justify-content: center; overflow: hidden; background: linear-gradient(135deg, var(--burgundy-800) 0%, var(--burgundy-700) 100%); color: var(--cream-100); }
  .hero-inner { position: relative; z-index: 2; text-align: center; }
  .hero h1 { color: var(--cream-100); margin-bottom: 16px; }
  .hero p { color: var(--cream-200); font-size: clamp(16px, 1.2vw, 20px); line-height: 1.6; }

  /* CONTACT SECTION */
  .contact-section { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start; }
  .contact-text h2 { margin-bottom: 24px; }
  .contact-text p { font-size: 15px; line-height: 1.7; margin-bottom: 20px; color: var(--ink-700); }
  
  .contact-info { display: flex; flex-direction: column; gap: 32px; }
  .info-block { display: flex; gap: 20px; }
  .info-icon { width: 48px; height: 48px; background: var(--burgundy-800); color: var(--cream-100); display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 24px; }
  .info-content h3 { font-size: 16px; margin-bottom: 8px; color: var(--burgundy-800); }
  .info-content p { margin: 0; font-size: 15px; color: var(--ink-700); line-height: 1.6; }
  .info-content a { color: var(--burgundy-800); font-weight: 600; text-decoration: none; }
  .info-content a:hover { color: var(--burgundy-600); }

  /* TABLET */
  @media (max-width: 1024px) {
    .wrap { padding: 0 16px; }
    section { padding: clamp(48px, 8vw, 80px) 0; }
    .contact-section { grid-template-columns: 1fr; gap: 40px; }
  }

  /* MOBILE */
  @media (max-width: 640px) {
    .wrap { padding: 0 12px; }
    section { padding: clamp(36px, 6vw, 60px) 0; }
    h1 { font-size: clamp(26px, 6vw, 40px); }
    h2 { font-size: clamp(20px, 4vw, 32px); }
    
    .hero { min-height: 50vh; }
    .hero h1 { font-size: clamp(24px, 6vw, 40px); margin-bottom: 12px; }
    .hero p { font-size: clamp(13px, 2vw, 16px); }
    
    .contact-section { gap: 32px; }
    .contact-text p { font-size: 13px; }
    .info-icon { width: 40px; height: 40px; font-size: 18px; }
    .info-content h3 { font-size: 14px; }
    .info-content p { font-size: 13px; }
    
    .btn { padding: 12px 20px; font-size: 11px; }
  }


/* =========================================================
   AJUSTES FINALES RESPONSIVE · CONTACTO · ELEMENTOR
   ========================================================= */

.emt-contact-page{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  background:var(--cream-100);
  color:var(--ink-900);
  font-family:var(--sans);
}

.emt-contact-page *,
.emt-contact-page *::before,
.emt-contact-page *::after{
  box-sizing:border-box;
}

.emt-contact-page img{
  max-width:100%;
  height:auto;
}

.emt-contact-page .wrap{
  width:100%;
  max-width:1400px;
  margin:0 auto;
}

.emt-contact-page .btn{
  justify-content:center;
  text-align:center;
  line-height:1.25;
}

/* Proceso: 3 pasos responsive aunque venga con style inline */
.emt-contact-page section.bg-cream .wrap > div[style*="max-width: 800px"] > div[style*="grid-template-columns"]{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

/* Contacto separado */
.emt-contact-page .contact-section{
  width:100%;
}

.emt-contact-page #formulario-contacto{
  border:1px solid var(--line);
  border-radius:0;
}

/* Tablet */
@media (max-width:1024px){
  .emt-contact-page .wrap{
    padding-left:28px !important;
    padding-right:28px !important;
  }

  .emt-contact-page section{
    padding:70px 0 !important;
  }

  .emt-contact-page .contact-section{
    grid-template-columns:1fr !important;
    gap:42px !important;
  }

  .emt-contact-page section.bg-cream .wrap > div[style*="max-width: 800px"] > div[style*="grid-template-columns"]{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }

  .emt-contact-page .hero{
    min-height:48vh !important;
  }

  .emt-contact-page .hero-inner{
    max-width:850px;
    margin:0 auto;
  }
}

/* Móvil */
@media (max-width:767px){
  html, body{
    max-width:100%;
    overflow-x:hidden;
  }

  .emt-contact-page{
    overflow-x:hidden;
  }

  .emt-contact-page .wrap{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .emt-contact-page section{
    padding:54px 0 !important;
  }

  .emt-contact-page .hero{
    min-height:auto !important;
    padding:76px 0 68px !important;
  }

  .emt-contact-page .hero h1{
    font-size:clamp(42px, 13vw, 58px) !important;
    line-height:.98 !important;
    margin-bottom:18px !important;
  }

  .emt-contact-page .hero p{
    font-size:16px !important;
    line-height:1.6 !important;
  }

  .emt-contact-page h2{
    font-size:clamp(34px, 10vw, 46px) !important;
    line-height:1.02 !important;
  }

  .emt-contact-page h3{
    font-size:22px !important;
    line-height:1.15 !important;
  }

  .emt-contact-page p,
  .emt-contact-page .lead,
  .emt-contact-page .contact-text p,
  .emt-contact-page .info-content p{
    font-size:16px !important;
    line-height:1.7 !important;
  }

  .emt-contact-page .btn{
    width:100%;
    padding:15px 18px !important;
    font-size:12px !important;
  }

  .emt-contact-page .contact-section{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:32px !important;
  }

  .emt-contact-page .contact-text{
    width:100% !important;
  }

  .emt-contact-page .contact-info{
    gap:22px !important;
  }

  .emt-contact-page .info-block{
    gap:15px !important;
    align-items:flex-start !important;
  }

  .emt-contact-page .info-icon{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    font-size:18px !important;
  }

  .emt-contact-page .info-content h3{
    font-size:18px !important;
    margin-bottom:6px !important;
  }

  .emt-contact-page #formulario-contacto{
    min-height:260px !important;
    padding:24px 18px !important;
  }

  .emt-contact-page section.bg-cream .wrap > div[style*="max-width: 800px"] > div[style*="grid-template-columns"]{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:26px !important;
    margin-bottom:36px !important;
  }

  .emt-contact-page section.bg-cream .wrap > div[style*="max-width: 800px"] > div[style*="grid-template-columns"] > div{
    text-align:left !important;
    padding:22px !important;
    border:1px solid var(--line);
    background:var(--cream-50);
  }

  .emt-contact-page section.bg-cream .wrap > div[style*="max-width: 800px"] > div[style*="grid-template-columns"] > div > div:first-child{
    margin-left:0 !important;
    margin-right:0 !important;
  }
}

@media (max-width:420px){
  .emt-contact-page .wrap{
    padding-left:15px !important;
    padding-right:15px !important;
  }

  .emt-contact-page .hero h1{
    font-size:40px !important;
  }

  .emt-contact-page h2{
    font-size:34px !important;
  }

  .emt-contact-page .info-block{
    display:grid !important;
    grid-template-columns:42px minmax(0,1fr) !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0fc8cc7 *//* Bloque contacto: centrado, tarjetas iguales y responsive */
.emt-contact-page .bg-cream .wrap{
  max-width:1240px !important;
  padding-left:48px !important;
  padding-right:48px !important;
}

.emt-contact-page .contact-section{
  display:block !important;
  width:100% !important;
}

.emt-contact-page .contact-text{
  width:100% !important;
  max-width:100% !important;
}

.emt-contact-page .contact-text > p{
  max-width:980px !important;
}

.emt-contact-page .contact-info{
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:24px !important;
}

.emt-contact-page .info-block{
  width:100% !important;
  min-height:176px !important;
  padding:26px 24px !important;
  border:1px solid var(--line-strong) !important;
  background:var(--cream-50) !important;
  display:block !important;
}

.emt-contact-page .info-icon{
  width:48px !important;
  height:48px !important;
  margin-bottom:18px !important;
}

.emt-contact-page .info-content h3{
  margin-bottom:8px !important;
  font-size:18px !important;
}

.emt-contact-page .info-content p{
  font-size:15px !important;
  line-height:1.55 !important;
}

.emt-contact-page .info-content a{
  word-break:normal !important;
  overflow-wrap:anywhere !important;
}

/* Tablet */
@media (max-width:1024px){
  .emt-contact-page .bg-cream .wrap{
    padding-left:32px !important;
    padding-right:32px !important;
  }

  .emt-contact-page .contact-info{
    grid-template-columns:1fr !important;
  }

  .emt-contact-page .info-block{
    min-height:auto !important;
  }
}

/* Móvil */
@media (max-width:767px){
  .emt-contact-page .bg-cream .wrap{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .emt-contact-page .contact-text h2{
    font-size:42px !important;
    line-height:1 !important;
  }

  .emt-contact-page .contact-info{
    gap:18px !important;
  }

  .emt-contact-page .info-block{
    padding:22px !important;
  }
}/* End custom CSS */