.elementor-954 .elementor-element.elementor-element-e76bacb{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-954 .elementor-element.elementor-element-0880c86{--display:flex;--min-height:100vh;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.55;--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-954 .elementor-element.elementor-element-0880c86::before, .elementor-954 .elementor-element.elementor-element-0880c86 > .elementor-background-video-container::before, .elementor-954 .elementor-element.elementor-element-0880c86 > .e-con-inner > .elementor-background-video-container::before, .elementor-954 .elementor-element.elementor-element-0880c86 > .elementor-background-slideshow::before, .elementor-954 .elementor-element.elementor-element-0880c86 > .e-con-inner > .elementor-background-slideshow::before, .elementor-954 .elementor-element.elementor-element-0880c86 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#00000000;--background-overlay:'';}.elementor-954 .elementor-element.elementor-element-0880c86:not(.elementor-motion-effects-element-type-background), .elementor-954 .elementor-element.elementor-element-0880c86 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background:url("https://blacksandresidence.com/wp-content/uploads/2026/02/01-atardecer-low.jpg") 50% 50%;background-size:cover;}.elementor-954 .elementor-element.elementor-element-368821e{--display:flex;--min-height:100vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-954 .elementor-element.elementor-element-bb83732{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--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-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-954 .elementor-element.elementor-element-70132c3{width:var( --container-widget-width, 64% );max-width:64%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:64%;--container-widget-flex-grow:0;text-align:center;}.elementor-954 .elementor-element.elementor-element-70132c3.elementor-element{--align-self:flex-end;}.elementor-954 .elementor-element.elementor-element-70132c3 .elementor-heading-title{font-family:"velvo", Sans-serif;font-size:18px;font-weight:600;letter-spacing:2px;color:#FFFFFF;}.elementor-954 .elementor-element.elementor-element-ea961f4{width:var( --container-widget-width, 64% );max-width:64%;--e-transform-translateY:70px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:64%;--container-widget-flex-grow:0;text-align:center;}.elementor-954 .elementor-element.elementor-element-ea961f4.elementor-element{--align-self:flex-end;}.elementor-954 .elementor-element.elementor-element-ea961f4 .elementor-heading-title{font-family:"Aboreto", Sans-serif;font-size:70px;font-weight:800;mix-blend-mode:color-dodge;color:#FFFFFF;}.elementor-widget-lottie{--caption-color:var( --e-global-color-text );}.elementor-widget-lottie .e-lottie__caption{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-954 .elementor-element.elementor-element-e41cd88{--e-transform-translateY:75px;--lottie-container-width:100%;--lottie-container-max-width:4%;}.elementor-954 .elementor-element.elementor-element-e41cd88 .e-lottie__container{filter:brightness( 200% ) contrast( 0% ) saturate( 190% ) blur( 0.3px ) hue-rotate( 360deg );}.elementor-954 .elementor-element.elementor-element-3e1c2b8{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-954 .elementor-element.elementor-element-e76bacb{margin-top:0px;margin-bottom:60px;}}@media(max-width:767px){.elementor-954 .elementor-element.elementor-element-ea961f4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 30px;--container-widget-width:281px;--container-widget-flex-grow:0;width:var( --container-widget-width, 281px );max-width:281px;}.elementor-954 .elementor-element.elementor-element-ea961f4 .elementor-heading-title{font-size:43px;}}@media(min-width:768px){.elementor-954 .elementor-element.elementor-element-0880c86{--content-width:100%;}.elementor-954 .elementor-element.elementor-element-368821e{--width:100%;}.elementor-954 .elementor-element.elementor-element-bb83732{--width:40%;}.elementor-954 .elementor-element.elementor-element-3e1c2b8{--width:60%;}}/* Start custom CSS for shortcode, class: .elementor-element-a535d29 *//* --- ESTILOS GENERALES DEL FORMULARIO --- */
.black-sand-form {
    background-color: rgba(40, 43, 51, 0.95); /* NEGRO (arena) con sutil transparencia */
    border-radius: 12px; /* Esquinas redondeadas y modernas */
    padding: 35px; /* Más espacio interior para respirar */
    max-width: 450px; /* Ancho elegante */
    margin: 0 auto; /* Centrar en su contenedor */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4); /* Sombra suave para profundidad */
    font-family: 'Montserrat', sans-serif; /* O la fuente principal de tu sitio */
}

/* --- ESTILOS PARA LAS ETIQUETAS (LABELS) --- */
.black-sand-form label {
    color: #fff; /* DORADO para el texto de etiqueta */
    display: block;
    margin-bottom: 8px; /* Espacio antes del campo de entrada */
    font-weight: 500;
    text-transform: uppercase; /* Etiquetas en mayúsculas para elegancia */
    letter-spacing: 1px; /* Espaciado sutil entre letras */
    font-size: 20px;
}

/* --- ESTILOS PARA LOS CAMPOS DE ENTRADA Y SELECT --- */
.black-sand-form input[type="text"],
.black-sand-form input[type="email"],
.black-sand-form input[type="tel"],
.black-sand-form select {
    background-color: #1e2025; /* Tono más oscuro de NEGRO para los campos */
    border: 1px solid #E5BC88; /* Borde DORADO sutil */
    color: #FFFFFF; /* BLANCO para el texto que escribe el usuario */
    padding: 14px 18px;
    border-radius: 6px;
    width: 100%;
    margin-bottom: 22px; /* Espacio entre campos */
    font-size: 20px;
    transition: all 0.3s ease; /* Transición suave en focus */
}

/* Estilo al hacer foco en un campo */
.black-sand-form input:focus,
.black-sand-form select:focus {
    border-color: #FFFFFF; /* Borde BLANCO al hacer foco */
    background-color: #2e313a;
    outline: none;
}

/* Color del texto provisional (placeholder) */
.black-sand-form ::placeholder {
    color: rgba(255, 255, 255, 0.6);
}

/* --- ESTILOS PARA LA CASILLA DE VERIFICACIÓN (CHECKBOX) PERSONALIZADA --- */
.black-sand-form .wpcf7-acceptance {
    display: block;
    margin-bottom: 25px;
}

.black-sand-form .wpcf7-acceptance .wpcf7-list-item {
    margin: 0; /* Resetea márgenes por defecto de CF7 */
}

/* Estilo del texto y alineación */
.black-sand-form .wpcf7-acceptance label {
    display: flex;
    align-items: center;
    cursor: pointer;
    color: #FFFFFF;
    font-size: 14px;
    text-transform: none; /* Para que no esté en mayúsculas */
    font-weight: normal;
}

/* Oculta visualmente el input real, pero lo mantiene activo para clics */
.black-sand-form .wpcf7-acceptance input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Crea el contenedor relativo para la marca */
.black-sand-form .wpcf7-list-item-label {
    position: relative;
    display: flex;
    align-items: center;
}

/* El cuadro base dorado */
.black-sand-form .wpcf7-list-item-label::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid #E5BC88;
    border-radius: 4px;
    margin-right: 12px;
    transition: all 0.2s ease;
    flex-shrink: 0; /* Evita que el cuadro se encoja */
}

/* La palomita (oculta por defecto) */
.black-sand-form .wpcf7-list-item-label::after {
    content: "\2713";
    position: absolute;
    left: 5px;
    color: #282b33; /* Texto negro arena para contraste */
    font-size: 16px;
    font-weight: bold;
    opacity: 0;
    transition: all 0.2s ease;
}

/* ESTADOS ACTIVOS: Cuando se hace clic (checked) */
.black-sand-form .wpcf7-acceptance input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
    background-color: #E5BC88; /* Rellena el cuadro de dorado */
}

.black-sand-form .wpcf7-acceptance input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
    opacity: 1; /* Muestra la palomita */
}

/* --- ESTILOS PARA EL BOTÓN DE ENVÍO (SUBMIT) --- */
.black-sand-form input[type="submit"] {
    background-color: #E5BC88; /* Fondo DORADO para destacar */
    color: #282b33; /* Texto NEGRO (arena) para contraste */
    border: 2px solid #E5BC88;
    padding: 16px 30px;
    border-radius: 6px;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 16px;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 10px;
    width: 100%; /* Botón de ancho completo */
    letter-spacing: 1px;
}

/* Efecto hover en el botón */
.black-sand-form input[type="submit"]:hover {
    background-color: transparent; /* Fondo transparente al hover */
    color: #E5BC88; /* Texto DORADO */
}



/* --- ESTILOS PARA LA LISTA DE PAÍSES DEL TELÉFONO --- */

/* Fondo de la lista desplegable */
.black-sand-form .iti__country-list {
    background-color: #282b33 !important; /* Fondo negro arena */
    border: 1px solid #E5BC88 !important; /* Borde dorado */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5) !important;
}

/* Color del nombre del país */
.black-sand-form .iti__country-name {
    color: #FFFFFF !important; /* Texto blanco */
}

/* Color del código numérico (+502, +93, etc.) */
.black-sand-form .iti__dial-code {
    color: #E5BC88 !important; /* Dorado para que resalte */
}

/* Color al pasar el mouse sobre un país (Hover) */
.black-sand-form .iti__country.iti__highlight, 
.black-sand-form .iti__country:hover {
    background-color: #1e2025 !important; /* Un negro más oscuro */
}

/* Ajuste de márgenes para el contenedor del teléfono */
.black-sand-form .iti {
    width: 100%;
    margin-bottom: 22px;
}

.black-sand-form .iti input {
    margin-bottom: 0 !important; /* Evita que se sume el margen del input con el del contenedor */
}

/* Ajustar el texto del input para que no se encime con la bandera */
.black-sand-form .iti__selected-flag {
    background-color: transparent !important;
}

.wpcf7-response-output {
    
    color: #fff;
}/* End custom CSS */