/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/


.wp-block-uagb-container.uagb-block-0fe04aa5 {
    row-gap: 0 !important;      /* eliminates the white gap */
}

.ast-single-entry-banner[data-post-type="page"][data-banner-layout="layout-2"] {
    background-color: #002663;
    background-image: none;
    border-top: 2px solid #F5D88A;
}

.site-logo-img img {
    width: auto !important;
    height: auto !important;
    max-height: 120px !important; /* adjust if needed */
    image-rendering: auto;
}

@media (max-width: 921px) {
   .site-footer {
        padding-left: 0 !important;
        padding-right: 0 !important;
   }
}


/* RESET the Gutenberg forced width */
.wp-block-buttons .wp-block-button.has-custom-width .wp-block-button__link,
.wp-block-button__link,
.wp-block-button a {
    width: auto !important;
    max-width: 300px;
    display: inline-block;
    text-align: center;
}

/* Force all button groups to center on every device */
.wp-block-buttons.is-layout-flex,
.wp-block-buttons {
    justify-content: center !important;
}

/* Tablet */
@media (max-width: 1024px) {
    .wp-block-button__link,
    .wp-block-button a {
        max-width: 350px;
    }
}

/* Mobile full width + nicer shape & line behavior */
@media (max-width: 768px) {
    .wp-block-button__link,
    .wp-block-button a {
        width: 100% !important;
        max-width: 100% !important;
        padding: 14px 20px; 
        white-space: normal;
        line-height: 1.2;
        font-size: 16px;
        text-align: center;
    }
}

#glt-translate-trigger,
#glt-translate-trigger span,
#glt-translate-trigger * {
    text-shadow: none !important;
    box-shadow: none !important; /* also removes blur outline */
}


/* Make Legal menu align exactly like other footer lists */
.footer-widget-area[data-section="section-footer-menu"] #astra-footer-menu {
    display: block !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-align: left !important;
}

/* Tighter spacing between Legal list items */
.footer-widget-area[data-section="section-footer-menu"] #astra-footer-menu li {
    list-style: none;
    margin-bottom: 6px;
    padding: 0 !important;
    line-height: 1.5;
}

/* Remove additional link padding if present */
.footer-widget-area[data-section="section-footer-menu"] #astra-footer-menu a {
    padding-left: 0 !important;
    display: inline-block;
}

/* Make custom Location widget inherit styles of native Astra footer widgets */
.footer-widget-area[data-section="section-fb-html-2"] {
    padding: inherit !important;
    margin: inherit !important;
    text-align: inherit !important;
}

/* Inner HTML block mimic Astro widget styling */
.footer-widget-area[data-section="section-fb-html-2"] .ast-builder-html-element {
    padding: inherit !important;
    margin: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
}

/* Fix horizontal alignment */
.footer-widget-area[data-section="section-fb-html-2"] .ast-builder-html-element {
    padding: 25px !important;
}

/* Behave like normal footer widget */
.footer-widget-area[data-section="section-fb-html-2"] .ast-builder-html-element {
    padding: 0 25px !important;
    margin-top: 25px !important;
    margin-bottom: 25px !important;
    display: block !important;
}

/* Match Astra spacing */
.footer-widget-area[data-section="section-fb-html-2"] p {
    margin: 0 0 6px !important;
    line-height: 1.6 !important;
}

.footer-widget-area[data-section="section-fb-html-2"] strong {
    display: block;
    margin-bottom: 3px;
    line-height: 1.6;
}

/* Match spacing for Location widget */
.location-widget p {
    margin: 0 0 6px !important;
    padding: 0 !important;
    line-height: 1.6 !important;
    color: #ffffff;
}

.location-widget strong {
    display: block;
    margin-bottom: 3px;
}

/* Match Astra footer title spacing */
.footer-widget-area[data-section="section-fb-html-2"] h2.widget-title {
    margin-bottom: 20px !important;
}

/* Treat each <p> like a menu <li> */
.footer-widget-area[data-section="section-fb-html-2"] .location-item {
    margin: 0 0 6px !important;
    padding: 0 !important;
    line-height: 1.4 !important;
    list-style: none;
    display: block;
    color: #ffffff;
}

/* Make labels match footer headings */
.footer-widget-area[data-section="section-fb-html-2"] .location-item strong {
    display: block;
    margin-bottom: 2px;
    font-weight: 600;
    line-height: 1.4;
}

/* FIX: Make Location title match Astra widget titles */
.footer-widget-area[data-section="section-fb-html-2"] .widget-title {
    color: #F5D88A !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    margin-bottom: 20px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.3px !important;
    font-family: inherit !important;
}

/* Force the HTML Location widget to use Astra footer widget text sizing */
.footer-widget-area[data-section="section-fb-html-2"] .ast-builder-html-element,
.footer-widget-area[data-section="section-fb-html-2"] .location-item,
.footer-widget-area[data-section="section-fb-html-2"] p,
.footer-widget-area[data-section="section-fb-html-2"] span {
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #ffffff !important;
    margin: 0 0 6px !important;
    padding: 0 !important;
}

/* Make labels (Mailing Address:, Office Location:) match other widget bold items */
.footer-widget-area[data-section="section-fb-html-2"] .location-item strong {
    display: block;
    font-weight: 600;
    margin-bottom: 3px;
    line-height: 1.4 !important;
}

/* Make the Location title match Astra widget titles */
.footer-widget-area[data-section="section-fb-html-2"] .widget-title {
    color: #F5D88A !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    margin-bottom: 20px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.3px !important;
}

/* Fix vertical alignment of Location footer column */
.footer-widget-area[data-section="section-fb-html-2"] .ast-builder-html-element {
    margin-top: 28px !important; /* matches Astra widget spacing */
}

/* Align Legal column with Location column */
.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] {
    margin-top: 28px !important;
}
/* Remove default Astra widget margin ONLY for Legal (Widget 4) */
.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] .widget {
    margin: 0 !important;
    padding: 0 !important;
}

/* FIX: Restore correct footer padding for Location column */
.footer-widget-area[data-section="section-fb-html-2"] {
    padding: 0 25px !important; /* same as default widgets */
    margin: 0 !important;
}

.footer-widget-area[data-section="section-fb-html-2"] .ast-builder-html-element {
    padding: 0 !important; /* content itself */
}
/* Add spacing before Office Location and Hours of Operation */
.footer-widget-area[data-section="section-fb-html-2"] .location-item + .location-item {
    margin-top: 20px !important; /* Adjust spacing as needed */
}

/* FORCE ROUNDED CORNERS ON WPForms fields inside the modal */
#formModal .wpforms-form input,
#formModal .wpforms-form textarea,
#formModal .wpforms-form select {
    border-radius: 12px !important;
    background: #ffffff !important;
    border: 1px solid #bfbfbf !important;
    padding: 12px 14px !important;
    color: #000 !important;
}

/* Form background inside modal = your gray color */
#formModal .wpforms-form,
.odlaw-form .wpforms-form {
    background: #cbcbcb !important;
    padding: 25px !important;
    border-radius: 16px !important;
     /* BORDER LAYER 1: inner solid border */
    border: 3px solid #0d274d !important;

    /* BORDER LAYER 2: gold outer frame */
    box-shadow:
        0 0 0 6px #f5d88a !important; /* creates the second border */
}

/* Submit button styled in #cbcbcb + rounded */
#formModal .wpforms-form button[type="submit"] {
    display: block;                  /* allows margin auto centering */
    margin: 20px auto 20px auto !important;   /* centers button */
    background: #002663 !important;
    text-align: center;
    color: #fff !important;
    border-radius: 12px !important;
    border: none !important;
    padding: 15px 30px !important;
    width: 50%;
    font-size: 17px;
    font-weight: 600;
}

#formModal .wpforms-form button[type="submit"]:hover {
    background: #b5b5b5 !important;
}
/* Reduce field height by ~30% inside the modal */
#formModal .wpforms-form input[type="text"],
#formModal .wpforms-form input[type="email"],
#formModal .wpforms-form input[type="tel"],
#formModal .wpforms-form input[type="url"],
#formModal .wpforms-form input[type="number"],
#formModal .wpforms-form select {
    padding-top: 6px !important;       /* was ~12px */
    padding-bottom: 6px !important;    /* was ~12px */
    height: 36px !important;           /* normal is ~50px → this is 30% shorter */
    font-size: 15px;                   /* optional: slightly smaller text */
    border-radius: 12px !important;
}
/* Reduce the vertical spacing between fields (inside modal only) */
#formModal .wpforms-form .wpforms-field {
    margin-bottom: 10px !important;   /* Default is 20–25px → cut in half */
}

/* Reduce height of input boxes */
#formModal .wpforms-form input[type="text"],
#formModal .wpforms-form input[type="email"],
#formModal .wpforms-form input[type="tel"],
#formModal .wpforms-form input[type="url"],
#formModal .wpforms-form input[type="number"],
#formModal .wpforms-form select {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    height: 36px !important;          /* about 30% shorter */
    border-radius: 12px !important;
    background: #ffffff !important;
    border: 1px solid #bfbfbf !important;
}

/* Slightly reduce space above labels too */
#formModal .wpforms-form .wpforms-field-label {
    margin-bottom: 3px !important;    /* Default is ~8px */
}

/* Reduce spacing above/below multi-input fields (like First/Last Name) */
#formModal .wpforms-form .wpforms-field-row,
#formModal .wpforms-form .wpforms-field-row-block {
    margin-bottom: 8px !important;
}
/* Reduce padding inside the grey form container */
#formModal .wpforms-form {
    padding: 15px !important;   /* default was ~30px */
}

/* Reduce vertical spacing between fields */
#formModal .wpforms-form .wpforms-field {
    margin-bottom: 8px !important;   /* default ~20px */
}

/* Make input boxes smaller vertically */
#formModal .wpforms-form input[type="text"],
#formModal .wpforms-form input[type="email"],
#formModal .wpforms-form input[type="tel"],
#formModal .wpforms-form input[type="url"],
#formModal .wpforms-form input[type="number"],
#formModal .wpforms-form select {
    padding: 5px 10px !important;    /* smaller vertical padding */
    height: 32px !important;         /* previously ~50px → much shorter */
    font-size: 14px !important;
}

/* Smaller textarea height */
#formModal .wpforms-form textarea {
    height: 90px !important;       /* reduce from large default box */
    padding: 8px 10px !important;
    font-size: 14px !important;
}

/* Reduce spacing above labels */
#formModal .wpforms-form .wpforms-field-label {
    margin-bottom: 2px !important;
}

/* Shrink submit button */
#formModal .wpforms-form button[type="submit"] {
    padding: 10px 20px !important;
    font-size: 15px !important;
    letter-spacing: 1px;
}
/* Reduce spacing between fields inside the modal form */
#formModal .odlaw-form .wpforms-field {
    margin-bottom: 6px !important;   /* tighten field spacing */
}

/* Reduce spacing between the two half-width fields (First/Last, Phone/Email) */
#formModal .odlaw-form .wpforms-one-half {
    margin-bottom: 6px !important;
}

/* Remove extra padding WPForms adds to rows */
#formModal .odlaw-form .wpforms-field-row-block {
    margin-bottom: 6px !important;
}

/* Slightly reduce padding inside the grey background container */
#formModal .odlaw-form .wpforms-field-container {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

/* Disable link behavior for the "Se Habla Español" social item */
.ast-builder-social-element[href=""] {
    pointer-events: none !important;    /* disable clicking */
    cursor: default !important;          /* normal cursor */
    text-decoration: none !important;    /* no underline */
    outline: none !important;            /* no focus outline */
}

/* Remove keyboard tab focus */
.ast-builder-social-element[href=""]:focus,
.ast-builder-social-element[href=""]:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}

/* Remove hover effect */
.ast-builder-social-element[href=""]:hover {
    opacity: 1 !important;
    color: inherit !important;
}


/* SHARED FORM STYLING — Modal + Contact Page */

/* Container styling */
#formModal .wpforms-form,
.odlaw-form .wpforms-form {
    max-width: 600px;
    margin: 0 auto;
}

/* Field spacing */
#formModal .wpforms-form .wpforms-field,
.odlaw-form .wpforms-form .wpforms-field {
    margin-bottom: 12px !important;
}

/* Inputs + textareas */
#formModal .wpforms-form input,
#formModal .wpforms-form textarea,
.odlaw-form .wpforms-form input,
.odlaw-form .wpforms-form textarea {
    border-radius: 8px !important;
    padding: 10px 14px !important;
    border: 1px solid #ccc !important;
}

/* Submit button */
#formModal .wpforms-form button[type="submit"],
.odlaw-form .wpforms-form button[type="submit"] {
    background: #002663 !important;
    color: #fff !important;
    border-radius: 12px !important;
    border: none !important;
    padding: 12px 45px !important;
    width: 50% !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    display: block !important;
    margin: 0 auto !important; /* centers on iPad + mobile */
}

/* Footer logo thumbnail size — crisp and hi-res */
.ast-footer-copyright img {
    width: 128px !important;
    height: auto !important;
    max-width: none !important;
    image-rendering: auto;
}

/*WCAG Fixes */

#glt-translate-trigger {
    background-color: #0170b9  !important;
}

#glt-translate-trigger .notranslate {
    color: #ffffff !important;
}

.uagb-ifb-title {
    font-size: 1.8rem !important;
    font-weight: 600;
    margin-bottom: 0.3em;
}

/* Container */
.odlaw-header-social {
    display: flex;
    align-items: center;
    gap: 18px; /* spacing between Message & Phone */
}

/* Each item */
.odlaw-social-item {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #002663; /* your blue */
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
}

/* Icon color + alignment */
.odlaw-social-icon svg {
    width: 20px;
    height: 20px;
    fill: #002663;
}

/* Label text */
.odlaw-social-label {
    white-space: nowrap;
}

/* FINAL FIX — Prevent SUBMIT button text from wrapping */
#formModal .wpforms-form button[type="submit"],
.odlaw-form .wpforms-form button[type="submit"] {
    white-space: nowrap !important;       /* no text wrapping */
    display: inline-flex !important;      /* lets it shrink naturally */
    justify-content: center !important;
    align-items: center !important;

    padding: 12px 20px !important;        /* smaller sides = can shrink */
    width: auto !important;               /* REMOVE all forced widths */
    min-width: 120px !important;          /* keeps SUBMIT readable */
    max-width: 80% !important;            /* NEVER forces wrap */

    font-size: 17px !important;
    font-weight: 600 !important;

    border-radius: 12px !important;
    background: #002663 !important;
    color: #fff !important;
    margin: 20px auto !important;         /* stays centered */
}
