.elementor-47 .elementor-element.elementor-element-ed052bb{--display:flex;}.elementor-47 .elementor-element.elementor-element-ed052bb.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-47 .elementor-element.elementor-element-0565654{--spacer-size:110px;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:19px;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-19px;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-47 .elementor-element.elementor-element-614d177 .elementor-labels-inline .elementor-field-group > label{padding-left:9px;}body:not(.rtl) .elementor-47 .elementor-element.elementor-element-614d177 .elementor-labels-inline .elementor-field-group > label{padding-right:9px;}body .elementor-47 .elementor-element.elementor-element-614d177 .elementor-labels-above .elementor-field-group > label{padding-bottom:9px;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-group > label, .elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-subgroup label{color:var( --e-global-color-primary );}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-group > label{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-type-html{padding-bottom:0px;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-radius:10px 10px 10px 10px;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-radius:10px 10px 10px 10px;}.elementor-47 .elementor-element.elementor-element-614d177 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-primary );color:#ffffff;transition-duration:0ms;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-button[type="submit"]{background-color:var( --e-global-color-primary );color:#ffffff;transition-duration:0ms;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-button[type="submit"] svg *{fill:#ffffff;transition-duration:0ms;}.elementor-47 .elementor-element.elementor-element-614d177 .e-form__buttons__wrapper__button-previous{color:#ffffff;transition-duration:0ms;}.elementor-47 .elementor-element.elementor-element-614d177 .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-primary );color:#F5F5F5;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-primary );color:#F5F5F5;}.elementor-47 .elementor-element.elementor-element-614d177 .elementor-button[type="submit"]:hover svg *{fill:#F5F5F5;}.elementor-47 .elementor-element.elementor-element-614d177 .e-form__buttons__wrapper__button-previous:hover{background-color:var( --e-global-color-primary );color:#ffffff;}.elementor-47 .elementor-element.elementor-element-614d177{--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;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-47 .elementor-element.elementor-element-ed052bb{--width:99.505%;}}/* Start custom CSS for form, class: .elementor-element-614d177 */.elementor-47 .elementor-element.elementor-element-614d177{
  opacity:0;
  height:0;
  overflow:hidden;
  position:absolute;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ed052bb */<style>
/* 1. ESTRUCTURA LUXURY */
.ritual-contact-section .rc-pro {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  min-height: 80vh;
  background: #fdfdfd;
  overflow: hidden;
}

/* 2. EFECTO CINEMÁTICO: SLOW HORIZONTAL PAN */
/* Desplazamiento lateral muy lento, evita la sensación de "respiración" del zoom */
.rc-img {
  background: url("https://ritualspecialtycoffee.com/wp-content/uploads/2026/05/jarek-ceborski-IhqDpFz7I8Q-unsplash-scaled.jpg") center/cover no-repeat;
  position: relative;
  width: 120%; /* Sobredimensionado para permitir el recorrido */
  height: 100%;
  animation: luxurySlide 60s linear forwards;
}

@keyframes luxurySlide {
  from { transform: translateX(0); }
  to { transform: translateX(-10%); }
}

.rc-img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(0,0,0,0.35), transparent);
}

/* 3. CAJA DE TEXTO */
.rc-box {
  padding: clamp(40px, 8vw, 90px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #ffffff;
  z-index: 2;
}

.rc-title {
  font-family: 'Cormorant Infant', serif;
  font-size: clamp(34px, 5vw, 46px);
  font-weight: 300;
  color: #1a1a1a;
  line-height: 1.15;
  margin-bottom: 15px;
}

.rc-sub {
  font-family: 'Cormorant Infant', sans-serif;
  font-size: 14px;
  color: #777;
  margin-bottom: 50px;
  line-height: 1.7;
}

/* 4. CAMPOS REFINADOS */
.rc-field {
  position: relative;
  margin-bottom: 35px;
}

.rc-field input, 
.rc-field textarea {
  width: 100%;
  border: none !important;
  border-bottom: 1px solid #ddd !important;
  padding: 14px 0;
  background: transparent !important;
  outline: none !important;
  font-family: 'Lato', sans-serif;
  font-size: 15px;
  color: #1a1a1a;
  box-shadow: none !important;
  transition: border-color 0.4s ease;
}

.rc-field input:focus, 
.rc-field textarea:focus {
  border-bottom: 1px solid #B68C2F !important;
}

.rc-field label {
  position: absolute;
  top: 14px;
  left: 0;
  font-size: 12px;
  color: #999;
  transition: 0.3s cubic-bezier(0.2, 0, 0.2, 1);
  pointer-events: none;
}

.rc-field input:focus + label, 
.rc-field input:valid + label,
.rc-field textarea:focus + label, 
.rc-field textarea:valid + label {
  top: -15px;
  font-size: 10px;
  color: #B68C2F;
}

/* 5. BOTÓN (ELIMINACIÓN TOTAL DEL ROSADO) */
.rc-btn {
  margin-top: 30px;
  background: #1a1a1a !important;
  color: #ffffff !important;
  border: 1px solid #1a1a1a !important;
  padding: 20px;
  cursor: pointer;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-size: 11px;
  transition: all 0.4s ease !important;
  position: relative;
  outline: none !important;
}

/* Hover Negro -> Oro Ritual */
.rc-btn:hover {
  background: #B68C2F !important;
  border-color: #B68C2F !important;
  color: #ffffff !important;
  transform: translateY(-2px);
}

/* Bloqueo de color rosado en foco o activo */
.rc-btn:active, .rc-btn:focus, .rc-btn:visited {
  background: #1a1a1a !important;
  border-color: #1a1a1a !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.rc-loader {
  width: 16px;
  height: 16px;
  border: 1px solid #ffffff;
  border-top-color: transparent;
  border-radius: 50%;
  display: none;
  margin-left: 10px;
  animation: spin .8s linear infinite;
  vertical-align: middle;
}

.rc-btn.loading .rc-loader { display: inline-block; }

.rc-success {
  margin-top: 30px;
  color: #B68C2F;
  font-family: 'Cormorant Infant', serif;
  font-style: italic;
  font-size: 18px;
  opacity: 0;
  text-align: center;
  transition: 1s ease;
}

.rc-success.show { opacity: 1; }

@keyframes spin { to { transform: rotate(360deg); } }

/* 6. MOBILE */
@media(max-width: 768px) {
  .ritual-contact-section .rc-pro { grid-template-columns: 1fr; }
  .rc-img { height: 350px; width: 100%; animation: none; transform: none; }
  .rc-box { padding: 50px 25px; }
}
<\/style>/* End custom CSS */