.elementor-kit-5{--e-global-color-primary:#0A3351;--e-global-color-secondary:#656D75;--e-global-color-text:#00111F;--e-global-color-accent:#E11B22;--e-global-color-a53ce58:#F6E7DC;--e-global-color-f6bcc93:#FBF8F6;--e-global-typography-primary-font-family:"Encode Sans";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Encode Sans Condensed";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Encode Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Encode Sans Condensed";--e-global-typography-accent-font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --ua-navy:#0c3251; --ua-red:#f00100; --ua-cream:#fcf8f7; --ua-peach:#f6e7dc; --ua-heading-font:Encode Sans Condensed; --ua-body-font:Encode Sans; }
/* Start custom CSS *//* Import Google Font: Encode Sans Condensed */
@import url('https://fonts.googleapis.com/css2?family=Encode+Sans+Condensed:wght@400;500;600;700&display=swap');

/* Apply font to all SocioActiv Engine components */
.sa-highlights-list,
.sa-connectivity-list,
.sa-floorplans-grid,
.sa-amenities-grid {
    font-family: 'Encode Sans Condensed', sans-serif !important;
}

/* ==========================================================================
   1. KEY HIGHLIGHTS & CONNECTIVITY LISTS
   ========================================================================== */
.sa-highlights-list,
.sa-connectivity-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 12px;
}

.sa-highlights-list li,
.sa-connectivity-list li {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #0A3351; /* Accent Primary Bar */
    padding: 12px 16px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 500;
    color: #1e293b;
    display: flex;
    align-items: center;
    transition: all 0.2s ease-in-out;
}

.sa-highlights-list li:hover,
.sa-connectivity-list li:hover {
    background: #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transform: translateY(-2px);
}

/* ==========================================================================
   2. FLOOR PLANS GRID & CARDS
   ========================================================================== */
.sa-floorplans-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
    gap: 24px !important;
}

.sa-fp-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 20px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
}

.sa-fp-card:hover {
    border-color: #cbd5e1 !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
    transform: translateY(-4px);
}

.sa-fp-card img {
    border-radius: 8px !important;
    object-fit: cover;
    margin-bottom: 15px !important;
    border: 1px solid #f1f5f9;
}

.sa-fp-card h4 {
    font-family: 'Encode Sans Condensed', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #0c3251 !important;
    margin: 0 0 8px 0 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sa-fp-card p {
    font-size: 15px !important;
    color: #475569 !important;
    margin: 0 0 6px 0 !important;
}

.sa-fp-card p strong {
    color: #1e293b !important;
    font-weight: 600;
}

/* Highlight price line */
.sa-fp-card p:nth-of-type(2) {
    font-size: 16px !important;
    color: #0A3351 !important; /* Accent Blue */
    font-weight: 700 !important;
}

/* ==========================================================================
   3. AMENITIES GRID & CARDS
   ========================================================================== */
.sa-amenities-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important;
    gap: 16px !important;
}

.sa-amenity-card {
    background: #ffffff !important;
    border: 1px solid #f1f5f9 !important;
    border-radius: 10px !important;
    padding: 16px 12px !important;
    text-align: center !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
    transition: all 0.25s ease;
}

.sa-amenity-card:hover {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    transform: translateY(-3px);
}

.sa-amenity-card img {
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.05));
    margin-bottom: 10px !important;
}

.sa-amenity-card h5 {
    font-family: 'Encode Sans Condensed', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #0c3251 !important;
    margin: 0 0 4px 0 !important;
  
    text-align: center;
}

.sa-amenity-card p {
    font-size: 14px !important;
    line-height: 1.3 !important;
    color: #64748b !important;
    text-align: center;
}


/* Container Wrapper */
.sa-video-wrapper {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px 0;
}

/* HTML5 Video Element */
.sa-responsive-video {
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    object-fit: contain;
}

/* Detect Vertical Video (Aspect ratio height > width) */
@supports (aspect-ratio: 1) {
    .sa-responsive-video {
        max-height: 80vh; /* Prevents video from exceeding viewport height */
    }
    
    /* When video is portrait/vertical mode */
    .sa-responsive-video[style*="aspect-ratio"],
    .sa-responsive-video {
        /* Auto constrains portrait videos on wider screens */
        margin: 0 auto;
    }
}

/* Optional explicit class if vertical container needed */
.sa-video-wrapper:has(video[height="1920"]),
.sa-video-wrapper:has(video[style*="9/16"]) {
    max-width: 380px;
    margin: 0 auto;
}/* End custom CSS */