/* Clean background on obra nueva page */
body:has(.aic_obra_nueva_page) {
    background: none;
}

body:has(.aic_obra_nueva_page) main {
    background: #fff;
}

/* Hero Section */
.aic_obra_nueva_hero {
    text-align: center;
    padding: 40px 20px 30px;
    max-width: 1200px;
    margin: 0 auto;
}

.aic_obra_nueva_hero h1 {
    color: var(--gr-salmon);
    font-size: 56px;
    font-weight: 300;
    margin-bottom: 15px;
}

.aic_obra_nueva_hero p {
    color: var(--gr-gris-oscuro);
    font-size: 24px;
    font-weight: 300;
    line-height: 1.7;
}

/* Toolbar: show only filter button + results count */
.aic_obra_nueva_page #aic_sort_post,
.aic_obra_nueva_page .aic_toolbar > div:last-child {
    display: none !important;
}

/* Filter panel: hide tipo inmueble column */
.aic_obra_nueva_page .aic_filter_body .aic_section:nth-child(2) .aic_row .aic_col:last-child {
    display: none;
}

/* Filter panel: hide sections 3+ (precio, dormitorios, baños, otras, referencia) */
.aic_obra_nueva_page .aic_filter_body .aic_section:nth-child(n+3) {
    display: none;
}

/* Filter panel: remove scroll, auto height for few filters */
.aic_obra_nueva_page #aic_aside .aic_filters {
    height: auto;
}

.aic_obra_nueva_page .aic_filter_body {
    overflow: visible;
}

/* 3-column grid */
.aic_obra_nueva_page #aic_grid[data-format="grid"] article.aic_article {
    width: calc((100% - 40px) / 3);
}

/* Price below title: flatten and reorder */
.aic_obra_nueva_page .aic_info {
    flex-direction: column;
}

.aic_obra_nueva_page .aic_basic_info {
    display: contents;
}

.aic_obra_nueva_page .aic_info h3 { order: 1; }
.aic_obra_nueva_page .aic_data_aside { order: 2; }
.aic_obra_nueva_page .aic_address { order: 3; }
.aic_obra_nueva_page .aic_data { order: 4; }

/* Hide description in obra nueva cards */
.aic_obra_nueva_page .aic_description {
    display: none !important;
}

/* Contact form section */
.aic_obra_nueva_form {
    max-width: 1200px;
    margin: 40px auto;
    padding: 50px 60px;
    background: var(--gr-gris-fondo);
    border-radius: 10px;
    font-size: 24px;
    font-weight: 300;
}

/* Required fields legend */
.aic_obra_nueva_form .aic_required_legend {
    grid-column: 1 / -1;
    width: 100%;
    text-align: left;
    font-size: 0.8em;
    color: var(--gr-gris-medio);
    margin: -8px 0 -4px;
    padding: 0;
    line-height: 1;
}

/* Form title (first HTML field) */
.aic_obra_nueva_form .gfield_html:first-child {
    color: var(--gr-salmon);
    font-size: 37px;
    font-weight: 300;
    text-align: center;
    margin-bottom: 10px;
}

/* RGPD text: match consent checkbox label style */
.aic_obra_nueva_form #field_1_16 {
    font-size: 16px !important;
    font-weight: 300;
    margin-top: -10px;
}

/* Hide WP contact button block (already have GF form) */
body:has(.aic_obra_nueva_page) .wp-block-button__link[href*="contactar"] {
    display: none !important;
}

/* Form submit button */
.aic_obra_nueva_form .gform_footer,
.aic_obra_nueva_form .gform-footer {
    text-align: center !important;
    justify-content: center !important;
}

.aic_obra_nueva_form .gform_footer .gform_button,
.aic_obra_nueva_form .gform_footer button[type="button"],
.aic_obra_nueva_form .gform_footer input[type="submit"],
.aic_obra_nueva_form .gform-footer .gform_button,
.aic_obra_nueva_form .gform-footer button[type="button"],
.aic_obra_nueva_form .gform-footer input[type="submit"] {
    background: var(--gr-salmon) !important;
    border: none !important;
    color: #fff !important;
    padding: 12px 30px !important;
    font-size: 1.1em !important;
    font-weight: 300 !important;
    border-radius: 10px !important;
    cursor: pointer !important;
}

.aic_obra_nueva_form .gform_footer .gform_button:hover,
.aic_obra_nueva_form .gform-footer .gform_button:hover,
.aic_obra_nueva_form .gform_footer button:hover,
.aic_obra_nueva_form .gform-footer button:hover {
    opacity: 0.7 !important;
}

/* RGPD link */
.aic_obra_nueva_form .gfield_html a {
    color: var(--gr-salmon) !important;
}

.aic_obra_nueva_form .gfield_html a:hover {
    opacity: 0.7;
}

/* Remove blue focus outline */
.aic_obra_nueva_form input:focus,
.aic_obra_nueva_form textarea:focus,
.aic_obra_nueva_form select:focus {
    outline: none !important;
    box-shadow: none !important;
    border-color: var(--gr-salmon) !important;
}

/* Force font size on form fields */
.aic_obra_nueva_form input,
.aic_obra_nueva_form textarea,
.aic_obra_nueva_form select {
    font-size: 24px !important;
}

/* Placeholder color */
.aic_obra_nueva_form input::placeholder,
.aic_obra_nueva_form textarea::placeholder {
    color: #aaa !important;
    opacity: 1 !important;
    font-weight: 300 !important;
}

/* Consent field: pointer on checkbox */
.aic_obra_nueva_form .ginput_container_consent input[type="checkbox"] {
    cursor: pointer;
}

/* Required asterisk */
.aic_obra_nueva_form legend.gfield_label,
.aic_obra_nueva_form label.gfield_label {
    font-size: 24px !important;
    gap: 0 !important;
}

.aic_obra_nueva_form span.gfield_required {
    margin: 0 0 0 1px !important;
    padding: 0 !important;
    font-size: inherit !important;
    gap: 0 !important;
}

/* Form validation errors */
.aic_input_error {
    border-color: #c0392b !important;
    box-shadow: 0 0 0 1px #c0392b !important;
}

.aic_field_error {
    color: #c0392b;
    font-size: 0.8em;
    margin-top: 5px;
}

/* Responsive: 2 columns */
@media screen and (max-width: 960px) {
    .aic_obra_nueva_page #aic_grid[data-format="grid"] article.aic_article {
        width: calc(50% - 10px);
    }
}

/* Responsive: 1 column */
@media screen and (max-width: 768px) {
    .aic_obra_nueva_page #aic_grid[data-format="grid"] article.aic_article {
        width: 100%;
    }
}
