.elementor-2100 .elementor-element.elementor-element-5a535616{--display:flex;--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;}.elementor-2100 .elementor-element.elementor-element-b59d1d{--display:flex;--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;--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-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );color:var( --e-global-color-primary );}.elementor-2100 .elementor-element.elementor-element-7240d1ef{text-align:center;}.elementor-2100 .elementor-element.elementor-element-7240d1ef .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:clamp(1.275rem, 1.2rem + 2vw, 2.5rem);font-weight:400;}.elementor-widget-text-editor{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 );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2100 .elementor-element.elementor-element-c19ffd0{width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;text-align:center;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;word-spacing:0em;}.elementor-2100 .elementor-element.elementor-element-c19ffd0.elementor-element{--align-self:center;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-2100 .elementor-element.elementor-element-9657425 .elementor-button-content-wrapper{flex-direction:row;}.elementor-2100 .elementor-element.elementor-element-9657425 .elementor-button:hover, .elementor-2100 .elementor-element.elementor-element-9657425 .elementor-button:focus{color:var( --e-global-color-text );}.elementor-2100 .elementor-element.elementor-element-9657425 .elementor-button:hover svg, .elementor-2100 .elementor-element.elementor-element-9657425 .elementor-button:focus svg{fill:var( --e-global-color-text );}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-2100 .elementor-element.elementor-element-c19ffd0{--container-widget-width:70%;--container-widget-flex-grow:0;width:var( --container-widget-width, 70% );max-width:70%;font-size:14px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-2100 .elementor-element.elementor-element-c19ffd0{--container-widget-width:90%;--container-widget-flex-grow:0;width:var( --container-widget-width, 90% );max-width:90%;font-size:14px;line-height:1.5em;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}/* Start custom CSS for shortcode, class: .elementor-element-8da2e27 */.cabinet-location-map {
    height: 600px; /* Cambiar altura */
    border-radius: 8px; /* Bordes redondeados */
}/* End custom CSS */
/* Start custom CSS *//* ----------------------------------------------------------------
   1. GLOBAL VARIABLES (Colors and Font)
   ---------------------------------------------------------------- */
:root {
    --color-primary: #387693; /* A primary color for links and accents (Teal/Blue) */
    --color-text-dark: #222; /* Darker text for titles */
    --color-text-light: #555; /* Slightly darker gray for meta info */
    --color-border: #e0e0e0;
    --color-background-card: #fff;
    --shadow-light: 0 4px 12px rgba(0, 0, 0, 0.05);
    --font-family-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* ----------------------------------------------------------------
   2. MAIN CONTAINER (GRID)
   ---------------------------------------------------------------- */

.location-projects-container .projects-grid{
    /* Uses Grid to manage card layout */
    display: grid;
    gap: 20px; /* Spacing between cards */
    padding: 10px;
    max-width: 1200px;
    margin: 0 auto;
}

/* ----------------------------------------------------------------
   3. INDIVIDUAL CARD STYLES (.project-card)
   ---------------------------------------------------------------- */

.project-card {
    background-color: var(--color-background-card);
    border: 1px solid var(--color-border);
    border-radius: 8px; /* Rounded corners */
    padding: 24px;
    box-shadow: var(--shadow-light); /* Subtle shadow like in the example */
    transition: all 0.3s ease;
    height: 100%; /* Ensures all cards have the same height within the grid cell */
    display: flex;
    flex-direction: column;
}

/* Smooth hover effect */
.project-card:hover {
    border-color: var(--color-primary);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);
}

/* Project Title (e.g., The Woods) - Bolder title to match the image */
.project-title {
    font-size: 1.15rem;
    font-weight: 700; /* Increased from 600 to 700 for bolder appearance */
    color: var(--color-text-dark);
    margin-top: 0;
    margin-bottom: 16px;
    line-height: 1.2;
}

/* Styles for the builder and address */
.project-builder,
.project-address {
    display: flex;
    align-items: center;
    font-size: 0.9rem;
    color: var(--color-text-light);
    margin-bottom: 8px;
}

/* Spacing and size for SVG icons */
.project-builder svg,
.project-address svg {
    margin-right: 8px;
    min-width: 16px; /* Prevents text from pushing them */
}

/* Maps Link */
.project-link {
    display: inline-flex;
    align-items: center;
    color: var(--color-primary);
    text-decoration: none;
    font-weight: 600;
    margin-top: auto; /* Pushes the link to the bottom */
    padding-top: 10px; /* Visual spacing from the bottom edge */
}

.project-link:hover {
    text-decoration: underline;
}

/* Arrow icon inside the link */
.project-link .arrow-icon {
    margin-left: 6px;
    transition: transform 0.2s ease;
}

.project-link:hover .arrow-icon {
    transform: translateX(2px);
}

/* ----------------------------------------------------------------
   4. RESPONSIVENESS (Media Queries)
   ---------------------------------------------------------------- */

/* Small screens (Mobile) */
@media (max-width: 767px) {
    .location-projects-container .projects-grid {
        /* 1 column on mobile */
        grid-template-columns: 1fr;
        padding: 0;
    }
    .project-card {
        padding: 20px;
    }
    h1.location-title {
    font-size: 34px;
    }
}

/* Medium screens (Tablets) */
@media (min-width: 768px) and (max-width: 1023px) {
    .location-projects-container .projects-grid {
        /* 2 columns on tablets */
        grid-template-columns: repeat(2, 1fr);
    }
    h1.location-title {
    font-size: 60px;
    }
}

/* Large screens (Desktop) */
@media (min-width: 1024px) {
    .location-projects-container .projects-grid{
        /* 3 columns on desktop, replicating the example */
        grid-template-columns: repeat(3, 1fr);
    }
}/* End custom CSS */