.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 );line-height:var( --e-global-typography-text-line-height );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-341 .elementor-element.elementor-element-396e6fd{--display:flex;}.elementor-341 .elementor-element.elementor-element-fefad73{width:var( --container-widget-width, 38% );max-width:38%;--container-widget-width:38%;--container-widget-flex-grow:0;}.elementor-341 .elementor-element.elementor-element-fefad73.elementor-element{--align-self:stretch;--flex-grow:0;--flex-shrink:0;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-341 .elementor-element.elementor-element-fefad73{--container-widget-width:346px;--container-widget-flex-grow:0;width:var( --container-widget-width, 346px );max-width:346px;}}@media(max-width:767px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-341 .elementor-element.elementor-element-fefad73{width:100%;max-width:100%;column-gap:22px;text-align:start;}.elementor-341 .elementor-element.elementor-element-fefad73.elementor-element{--flex-grow:0;--flex-shrink:0;}}/* Start custom CSS for text-editor, class: .elementor-element-9bc96a0 */.elementor-341 .elementor-element.elementor-element-9bc96a0 {
    --tcc-navy: #101f4d;
    --tcc-navy-dark: #061325;
    --tcc-yellow: #ffce00;

    position: relative;
    overflow: hidden;
    width: 100%;
    padding: 0;
    background: linear-gradient(
        135deg,
        var(--tcc-navy) 0%,
        var(--tcc-navy-dark) 100%
    );
}

/* Force the text widget to use the full width */
.elementor-341 .elementor-element.elementor-element-9bc96a0 .elementor-widget,
.elementor-341 .elementor-element.elementor-element-9bc96a0 .elementor-widget-container,
.elementor-341 .elementor-element.elementor-element-9bc96a0 .elementor-widget-text-editor,
.elementor-341 .elementor-element.elementor-element-9bc96a0 .elementor-widget-text-editor .elementor-widget-container,
.elementor-341 .elementor-element.elementor-element-9bc96a0 .elementor-text-editor {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Main hero */
.elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding: 85px 30px;
    text-align: center;
    color: #ffffff;
}

/* Left dot texture */
.elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 280px;
    height: 250px;
    background-image: radial-gradient(
        rgba(255,255,255,0.26) 1.4px,
        transparent 1.4px
    );
    background-size: 20px 20px;
    opacity: 0.34;
    pointer-events: none;
}

/* Right angled shape */
.elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero::after {
    content: "";
    position: absolute;
    right: -140px;
    top: -150px;
    width: 420px;
    height: 420px;
    background: rgba(255,255,255,0.05);
    transform: rotate(45deg);
    pointer-events: none;
}

/* Content above background effects */
.elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero__content {
    position: relative;
    z-index: 2;
    max-width: 900px;
    margin: 0 auto;
}

/* Eyebrow */
.elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero__eyebrow {
    margin: 0 0 12px;
    color: var(--tcc-yellow) !important;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

/* Main heading */
.elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero h1 {
    margin: 0;
    color: #ffffff !important;
    font-size: clamp(42px, 6vw, 64px);
    line-height: 1.05;
    letter-spacing: -0.03em;
}

/* Supporting text */
.elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero__subtext {
    max-width: 760px;
    margin: 22px auto 0;
    color: rgba(255,255,255,0.88) !important;
    font-size: 17px;
    line-height: 1.65;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero {
        padding: 62px 22px;
    }

    .elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero__subtext {
        font-size: 16px;
    }

    .elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero::before {
        width: 190px;
        height: 190px;
    }

    .elementor-341 .elementor-element.elementor-element-9bc96a0 .tcc-contact-hero::after {
        right: -190px;
        top: -170px;
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-fefad73 */.elementor-341 .elementor-element.elementor-element-fefad73 {
    --tcc-navy: #101f4d;
    --tcc-yellow: #ffce00;
    --tcc-text: #344567;
    --tcc-border: #dfe4ec;
    --tcc-soft: #f4f6f9;

    min-width: 0;
    padding: 32px;

    background: #ffffff;
    border: 1px solid var(--tcc-border);
    border-radius: 16px;
    box-shadow: 0 14px 34px rgba(16, 31, 77, 0.08);

    box-sizing: border-box;
}

/* Remove unwanted spacing without controlling card width */
.elementor-341 .elementor-element.elementor-element-fefad73 .elementor-widget-text-editor,
.elementor-341 .elementor-element.elementor-element-fefad73 .elementor-widget-container,
.elementor-341 .elementor-element.elementor-element-fefad73 .elementor-text-editor {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}

/* Headings */
.elementor-341 .elementor-element.elementor-element-fefad73 h2 {
    margin: 0 0 18px;
    color: var(--tcc-navy);
    font-size: 27px;
    line-height: 1.2;
}

.elementor-341 .elementor-element.elementor-element-fefad73 h2::after {
    content: "";
    display: block;
    width: 48px;
    height: 3px;
    margin-top: 12px;
    border-radius: 999px;
    background: var(--tcc-yellow);
}

.elementor-341 .elementor-element.elementor-element-fefad73 h3 {
    margin: 28px 0 10px;
    color: var(--tcc-navy);
    font-size: 21px;
    line-height: 1.25;
}

/* Body text */
.elementor-341 .elementor-element.elementor-element-fefad73 p {
    margin: 0 0 14px;
    color: var(--tcc-text);
    font-size: 15px;
    line-height: 1.65;
}

/* Links */
.elementor-341 .elementor-element.elementor-element-fefad73 a {
    color: var(--tcc-navy);
    font-weight: 700;
    text-decoration-color: var(--tcc-yellow);
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}

/* Hours table */
.elementor-341 .elementor-element.elementor-element-fefad73 table {
    width: 100%;
    max-width: 100%;
    margin-top: 14px;

    border: 1px solid var(--tcc-border);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 11px;
    overflow: hidden;
    background: #ffffff;
}

.elementor-341 .elementor-element.elementor-element-fefad73 table tr:nth-child(odd) {
    background: var(--tcc-soft);
}

.elementor-341 .elementor-element.elementor-element-fefad73 table tr:nth-child(even) {
    background: #ffffff;
}

.elementor-341 .elementor-element.elementor-element-fefad73 table td {
    padding: 14px 15px;
    border: 0;
    border-bottom: 1px solid var(--tcc-border);

    color: var(--tcc-text);
    font-size: 14px;
    vertical-align: middle;
}

.elementor-341 .elementor-element.elementor-element-fefad73 table tr:last-child td {
    border-bottom: 0;
}

.elementor-341 .elementor-element.elementor-element-fefad73 table td:first-child {
    width: 42%;
    color: var(--tcc-navy);
    font-weight: 700;
}

.elementor-341 .elementor-element.elementor-element-fefad73 table td:last-child {
    white-space: nowrap;
}

.elementor-341 .elementor-element.elementor-element-fefad73 table tr:nth-last-child(-n + 2) td:last-child {
    color: #9b3039;
    font-weight: 700;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-341 .elementor-element.elementor-element-fefad73 {
        padding: 24px 20px;
        border-radius: 13px;
    }

    .elementor-341 .elementor-element.elementor-element-fefad73 h2 {
        font-size: 24px;
    }

    .elementor-341 .elementor-element.elementor-element-fefad73 table td {
        padding: 12px 10px;
        font-size: 13px;
    }
}/* End custom CSS */
/* Start custom CSS *//* =========================================
   TCC CONTACT FORM ONLY
========================================= */

.tcc-contact-form-wrap {
    --tcc-navy: #101f4d;
    --tcc-navy-dark: #061325;
    --tcc-yellow: #ffce00;
    --tcc-text: #344567;
    --tcc-muted: #7a859b;
    --tcc-border: #dfe4ec;
    --tcc-soft: #f6f8fb;

    padding: 34px 36px !important;
    background: #ffffff !important;
    border: 1px solid var(--tcc-border) !important;
    border-radius: 16px !important;
    box-shadow: 0 14px 34px rgba(16, 31, 77, 0.08) !important;
    box-sizing: border-box !important;
}

.tcc-contact-form-wrap *,
.tcc-contact-form-wrap *::before,
.tcc-contact-form-wrap *::after {
    box-sizing: border-box;
}

.tcc-contact-form-wrap .elementor-widget,
.tcc-contact-form-wrap .elementor-widget-container,
.tcc-contact-form-wrap form {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.tcc-contact-form-wrap form {
    display: flex !important;
    flex-direction: column !important;
    gap: 17px !important;
}

.tcc-contact-form-wrap form > *,
.tcc-contact-form-wrap [class*="field"],
.tcc-contact-form-wrap [class*="input"],
.tcc-contact-form-wrap [class*="form"] {
    max-width: none !important;
    min-width: 0 !important;
}

/* Labels */
.tcc-contact-form-wrap label {
    display: block !important;
    margin: 0 0 7px !important;
    color: var(--tcc-navy) !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

/* Inputs */
.tcc-contact-form-wrap input[type="text"],
.tcc-contact-form-wrap input[type="email"],
.tcc-contact-form-wrap input[type="tel"],
.tcc-contact-form-wrap input[type="url"],
.tcc-contact-form-wrap input[type="number"],
.tcc-contact-form-wrap input[type="search"],
.tcc-contact-form-wrap select,
.tcc-contact-form-wrap textarea {
    display: block !important;
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 14px 16px !important;

    background: var(--tcc-soft) !important;
    border: 1px solid var(--tcc-border) !important;
    border-radius: 9px !important;

    color: var(--tcc-text) !important;
    font-family: inherit !important;
    font-size: 15px !important;
    line-height: 1.4 !important;

    outline: none !important;
    box-shadow: none !important;
    appearance: none !important;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease !important;
}

.tcc-contact-form-wrap textarea {
    min-height: 150px !important;
    resize: vertical !important;
}

.tcc-contact-form-wrap input::placeholder,
.tcc-contact-form-wrap textarea::placeholder {
    color: var(--tcc-muted) !important;
    opacity: 1 !important;
}

.tcc-contact-form-wrap input[type="text"]:focus,
.tcc-contact-form-wrap input[type="email"]:focus,
.tcc-contact-form-wrap input[type="tel"]:focus,
.tcc-contact-form-wrap input[type="url"]:focus,
.tcc-contact-form-wrap input[type="number"]:focus,
.tcc-contact-form-wrap input[type="search"]:focus,
.tcc-contact-form-wrap select:focus,
.tcc-contact-form-wrap textarea:focus {
    background: #ffffff !important;
    border-color: var(--tcc-yellow) !important;
    box-shadow: 0 0 0 4px rgba(255, 206, 0, 0.17) !important;
}

/* Checkbox */
.tcc-contact-form-wrap input[type="checkbox"] {
    display: inline-block !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;

    margin: 2px 9px 0 0 !important;
    padding: 0 !important;

    accent-color: var(--tcc-yellow) !important;
    vertical-align: top !important;
}

.tcc-contact-form-wrap input[type="checkbox"] + label,
.tcc-contact-form-wrap [class*="checkbox"] label {
    display: inline !important;
    margin: 0 !important;
    color: var(--tcc-text) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

/* Submit button */
.tcc-contact-form-wrap button,
.tcc-contact-form-wrap button[type="submit"],
.tcc-contact-form-wrap input[type="submit"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 190px !important;
    min-height: 50px !important;

    margin: 4px 0 0 !important;
    padding: 14px 26px !important;

    background: var(--tcc-yellow) !important;
    border: 1px solid var(--tcc-navy) !important;
    border-radius: 8px !important;

    color: var(--tcc-navy-dark) !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    cursor: pointer !important;
    box-shadow: 0 8px 18px rgba(16, 31, 77, 0.12) !important;

    transition:
        transform 0.2s ease,
        color 0.2s ease,
        background-color 0.2s ease,
        box-shadow 0.2s ease !important;
}

.tcc-contact-form-wrap button:hover,
.tcc-contact-form-wrap button[type="submit"]:hover,
.tcc-contact-form-wrap input[type="submit"]:hover {
    transform: translateY(-2px) !important;
    background: var(--tcc-navy) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 24px rgba(16, 31, 77, 0.18) !important;
}

/* Validation */
.tcc-contact-form-wrap [aria-invalid="true"] {
    border-color: #a12c38 !important;
}

.tcc-contact-form-wrap [class*="error"] {
    color: #a12c38 !important;
    font-size: 13px !important;
}

/* Mobile */
@media (max-width: 767px) {
    .tcc-contact-form-wrap {
        padding: 24px 20px !important;
        border-radius: 13px !important;
    }

    .tcc-contact-form-wrap input[type="text"],
    .tcc-contact-form-wrap input[type="email"],
    .tcc-contact-form-wrap input[type="tel"],
    .tcc-contact-form-wrap input[type="url"],
    .tcc-contact-form-wrap input[type="number"],
    .tcc-contact-form-wrap input[type="search"],
    .tcc-contact-form-wrap select,
    .tcc-contact-form-wrap textarea {
        min-height: 50px !important;
        font-size: 16px !important;
    }

    .tcc-contact-form-wrap button,
    .tcc-contact-form-wrap button[type="submit"],
    .tcc-contact-form-wrap input[type="submit"] {
        width: 100% !important;
    }
}/* End custom CSS */