.elementor-kit-5{--e-global-color-primary:#00538A;--e-global-color-secondary:#CF202F;--e-global-color-text:#F78D2A;--e-global-color-accent:#000000;--e-global-color-a537030:#FDE8D4;--e-global-color-84d38e4:#6D6E71;--e-global-color-5d8e8bb:#018137;--e-global-color-836d5e5:#F8B413;--e-global-color-c6adc1e:#000000;--e-global-color-68448d0:#FFFFFF;--e-global-typography-primary-font-family:"Raleway";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Raleway";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Raleway";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:20px;--e-global-typography-accent-font-family:"Raleway";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:16px;color:var( --e-global-color-accent );font-family:"Raleway", Sans-serif;font-size:16px;font-weight:400;line-height:28px;}.elementor-kit-5 p{margin-block-end:15px;}.elementor-kit-5 a{color:var( --e-global-color-primary );font-family:"Raleway", Sans-serif;font-size:16px;font-weight:500;line-height:24px;}.elementor-kit-5 a:hover{color:var( --e-global-color-primary );font-family:"Raleway", Sans-serif;font-size:16px;font-weight:700;line-height:24px;}.elementor-kit-5 h1{font-family:"Raleway", Sans-serif;font-size:54px;font-weight:700;line-height:60px;}.elementor-kit-5 h2{font-family:"Raleway", Sans-serif;font-size:36px;font-weight:700;text-transform:uppercase;line-height:40px;letter-spacing:2px;}.elementor-kit-5 h3{font-family:"Raleway", Sans-serif;font-size:30px;font-weight:700;line-height:34px;}.elementor-kit-5 h4{font-family:"Raleway", Sans-serif;font-size:20px;font-weight:700;text-transform:uppercase;line-height:24px;}.elementor-kit-5 h5{font-family:"Raleway", Sans-serif;font-size:20px;font-weight:500;text-transform:uppercase;line-height:24px;letter-spacing:2px;}.elementor-kit-5 h6{font-family:"Raleway", Sans-serif;font-size:16px;font-weight:500;text-transform:uppercase;line-height:16px;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-family:"Raleway", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:24px;letter-spacing:1px;color:var( --e-global-color-68448d0 );background-color:var( --e-global-color-text );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-text );border-radius:0px 0px 0px 0px;padding:15px 40px 15px 40px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{color:var( --e-global-color-text );background-color:#02010100;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:80%;}.e-con{--container-max-width:80%;--container-default-padding-top:75px;--container-default-padding-right:0px;--container-default-padding-bottom:75px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-kit-5 e-page-transition{background-color:var( --e-global-color-5d8e8bb );}@media(max-width:1024px){.elementor-kit-5{font-size:16px;line-height:28px;}.elementor-kit-5 h1{font-size:50px;line-height:54px;}.elementor-kit-5 h2{font-size:32px;line-height:36px;letter-spacing:2px;word-spacing:3px;}.elementor-kit-5 h3{font-size:30px;line-height:34px;}.elementor-kit-5 h4{font-size:20px;line-height:24px;}.elementor-kit-5 h5{font-size:20px;line-height:24px;letter-spacing:2px;}.elementor-kit-5 h6{font-size:20px;line-height:24px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:90%;}.e-con{--container-max-width:90%;--container-default-padding-top:50px;--container-default-padding-right:0px;--container-default-padding-bottom:50px;--container-default-padding-left:0px;}}@media(max-width:720px){.elementor-kit-5 h1{font-size:44px;line-height:48px;}.elementor-kit-5 h2{font-size:32px;line-height:36px;letter-spacing:2px;}.elementor-kit-5 h3{font-size:28px;line-height:32px;}.elementor-kit-5 h5{font-size:20px;line-height:24px;letter-spacing:2px;}.elementor-kit-5 h6{font-size:20px;line-height:24px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:85%;}.e-con{--container-max-width:85%;--container-default-padding-top:40px;--container-default-padding-right:0px;--container-default-padding-bottom:40px;--container-default-padding-left:0px;}}/* Start custom CSS *//* ========= REMOVES SPACE BELOW CLOSING PARAGRAPH TAG ====== */

.elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}


/* =========== OFFSET ELEMENTOR ANCHOR TARGETS FOR STICKY HEADER ======== */
html {
    scroll-padding-top: 75px;
    scroll-behavior: smooth;
}

/* ======== REDUCE BULLET-LIST INDENTS ========= */
.bullet-list ul {
    margin: 0;
    padding-left: 16px;
}

.bullet-list li {
    margin-left: 0;
    padding-left: 0;
}

/* =========================
  HEADER DONATE DROPDOWN
========================= */

.donate-menu {
    position: relative;
}

/* Hide donation options by default */
.donate-options {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9999;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(-5px);
    transition:
        opacity 0.2s ease,
        transform 0.2s ease,
        visibility 0.2s;
}

/* Show dropdown */
.donate-menu.is-open .donate-options {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}


/* =========================
   SERVICES GRID
========================= */

.services-grid {
    align-items: stretch;
}


/* =========================
   DESKTOP + TABLET
========================= */

@media (min-width: 768px) {

    .service-column {
        display: grid !important;
        grid-template-rows: subgrid;
        grid-row: span 2;
        padding: 0 !important;
    }

    .service-top {
        grid-row: 1;
        width: 100%;
    }

    .card-wrap {
        grid-row: 2;
        height: 100%;
    }
}


/* =========================
   CARD WRAPPER
========================= */

.card-wrap {
    position: relative;
    display: flex;

    width: 100%;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    overflow: visible !important;
}


/* =========================
   ORANGE ARROW
========================= */

.card-wrap::before {
    content: "";

    position: absolute;
    z-index: 10;

    top: -17px;
    left: 50%;

    width: 145px;
    height: 34px;

    transform: translateX(-50%);

    background: #F78D2A;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}


/* =========================
   BLUE BOX
========================= */

.service-blue {
    flex: 1;
    width: 100%;
    height: 100%;

    background: #00528A !important;

    clip-path: polygon(
        0 0,
        calc(50% - 42px) 0,
        50% 20px,
        calc(50% + 42px) 0,
        100% 0,
        100% 100%,
        0 100%
    );
}


/* =========================
   OUTLINE SVG ICONS
========================= */

.line-icon .elementor-icon {
    line-height: 0;
}

.line-icon .elementor-icon svg {
    display: block;
    fill: none !important;
}

.line-icon .elementor-icon svg
:is(path, line, polyline, polygon, circle, ellipse, rect) {
    fill: none !important;
    stroke: currentColor !important;
}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .service-column {
        display: flex !important;
        flex-direction: column;
    }

    .card-wrap,
    .service-blue {
        height: auto;
    }
}


/* =========================
   ELEMENTOR BUILDER ONLY

   Prevent subgrid from making the
   editor difficult to work with.
========================= */

body.elementor-editor-active .service-column {
    display: flex !important;
    flex-direction: column !important;
}

body.elementor-editor-active .card-wrap {
    flex: 1;
}

body.elementor-editor-active .service-blue {
    flex: 1;
    height: auto;
}

/* ==== PATH TO STABILITY HOTSPOT OVERLAY ==== */

/* ==== HOTSPOT WIDGET ==== */

.path-hotspots {
    position: relative;
}

.path-hotspots > .elementor-widget-container {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

/* ==== HOTSPOT ICONS ==== */

.path-hotspots .e-hotspot__button {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.path-hotspots .e-hotspot__button::before,
.path-hotspots .e-hotspot__button::after {
    display: none !important;
}

.path-hotspots .e-hotspot__icon {
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    margin: 0 !important;
}

.path-hotspots .e-hotspot__icon svg,
.path-hotspots .e-hotspot__icon img {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
}

@media (hover: hover) and (pointer: fine) {
    .path-hotspots .e-hotspot__button:hover {
        transform: scale(1.06);
    }
}

/* ==== HIDE DEFAULT ELEMENTOR TOOLTIPS ==== */

.path-hotspots .e-hotspot__tooltip,
.path-hotspots .e-hotspot__direction-mask {
    display: none !important;
}

/* ==== OVERLAY ==== */

.path-hotspots .path-overlay {
    position: absolute;
    inset: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 25px;
    background: rgba(255,255,255,0.84);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease,
                visibility 0.25s ease;
}

.path-hotspots.is-open .path-overlay {
    opacity: 1;
    visibility: visible;
}

/* ==== CARD STRUCTURE ==== */

.path-hotspots .path-overlay-card {
    position: relative;
    width: 370px;
    max-width: 100%;
    max-height: 100%;
    padding: 0;
    border: 1px solid var(--card-border);
    border-radius: 24px;
    background: var(--card-bg);
    box-shadow: 0 8px 22px rgba(0,0,0,0.12);
    overflow-y: auto;
    opacity: 0;
    transform: translateY(10px) scale(0.97);
    transition: opacity 0.25s ease,
                transform 0.25s ease;
}

.path-hotspots.is-open .path-overlay-card {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.path-hotspots .path-overlay-card-inner,
.path-hotspots .path-card-content {
    width: 100%;
    margin: 0;
    padding: 0;
}

/* ==== LEVEL COLORS ==== */

.path-hotspots .theme-red,
.path-hotspots [data-theme="red"] {
    --card-color: #CF202F;
    --card-bg: #F2F7F9;
    --card-border: #D3E4EB;
}

.path-hotspots .theme-orange,
.path-hotspots [data-theme="orange"] {
    --card-color: #F78D2A;
    --card-bg: #FFF5EB;
    --card-border: #F2D9C2;
}

.path-hotspots .theme-green,
.path-hotspots [data-theme="green"] {
    --card-color: #018137;
    --card-bg: #EFF8F3;
    --card-border: #CFE7DC;
}

/* ==== LEVEL HEADER ==== */

.path-hotspots .path-card-heading {
    margin: 0;
    padding: 20px 25px;
    background: var(--card-color);
    color: #FFFFFF !important;
    font-family: "Raleway", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.1;
    text-align: left;
    text-transform: uppercase;
}

/* ==== LIGHT CONTENT AREA ==== */

.path-hotspots .path-card-details {
    padding: 18px 25px 24px;
    background: var(--card-bg);
    color: #000000;
    text-align: left;
}

/* ==== MONTHS ==== */

.path-hotspots .path-card-subheading {
    margin: 0;
    color: var(--card-color) !important;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.1;
    text-transform: none;
}

/* ==== RELIEF / STABILIZATION / RESTORATION ==== */

.path-hotspots .path-card-phase {
    margin: 3px 0 9px;
    color: #000000;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 27px;
    font-weight: 500;
    line-height: 1.1;
}

/* ==== DIVIDER ==== */

.path-hotspots .path-card-divider {
    height: 0;
    margin: 0 0 18px;
    padding: 0;
    border: 0;
    border-top: 2px solid var(--card-color);
    opacity: 0.45;
}

/* ==== BODY TEXT ==== */

.path-hotspots .path-card-body {
    margin: 0;
    padding: 0;
    color: #000000;
    font-family: "Raleway", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
}

.path-hotspots .path-card-body p,
.path-hotspots .path-card-body strong,
.path-hotspots .path-card-body span,
.path-hotspots .path-card-body em,
.path-hotspots .path-card-body a {
    color: #000000 !important;
}

/* ==== FEE / FINANCIAL OBLIGATION ==== */

.path-hotspots .path-card-body .path-card-fee {
    margin: 0 0 16px !important;
    padding: 0;
    color: #000000 !important;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 22px;
    font-weight: 400;
    font-style: italic;
    line-height: 1.2;
    text-align: center;
}

/* ==== BULLET POINTS ==== */

.path-hotspots .path-card-body ul {
    margin: 0;
    padding: 0 0 0 23px;
    color: #000000;
    list-style: disc;
}

.path-hotspots .path-card-body li {
    margin: 0;
    padding: 0;
    color: #000000 !important;
    font-family: "Raleway", sans-serif !important;
    font-size: inherit;
    font-weight: 400;
    line-height: 1.5;
}

.path-hotspots .path-card-body li * {
    color: #000000 !important;
    font-family: "Raleway", sans-serif !important;
}

/* ==== TABLET ==== */

@media (max-width: 1024px) {
    .path-hotspots .path-overlay {
        padding: 20px;
    }

    .path-hotspots .path-overlay-card {
        width: 340px;
        border-radius: 22px;
    }

    .path-hotspots .path-card-heading {
        font-size: 31px;
        padding: 17px 22px;
    }

    .path-hotspots .path-card-details {
        padding: 16px 22px 20px;
    }
}

/* ==== MOBILE ==== */

@media (max-width: 767px) {
    .path-hotspots .path-overlay {
        padding: 12px;
    }

    .path-hotspots .path-overlay-card {
        width: 310px;
        border-radius: 20px;
    }

    .path-hotspots .path-card-heading {
        font-size: 27px;
        padding: 15px 20px;
    }

    .path-hotspots .path-card-details {
        padding: 14px 20px 18px;
    }

    .path-hotspots .path-card-subheading {
        font-size: 21px;
    }

    .path-hotspots .path-card-phase {
        font-size: 24px;
        margin-bottom: 8px;
    }

    .path-hotspots .path-card-divider {
        margin-bottom: 12px;
    }

    .path-hotspots .path-card-body {
        font-size: 14px;
        line-height: 1.4;
    }

    .path-hotspots .path-card-body .path-card-fee {
        font-size: 19px;
        margin-bottom: 12px !important;
    }

    .path-hotspots .path-card-body li {
        line-height: 1.4;
    }
}

/* ==== TOUCH DEVICE OVERLAY CLOSE ==== */

@media (hover: none), (pointer: coarse) {
    .path-hotspots.is-open .path-overlay {
        pointer-events: auto;
    }
}


/* ======== REDUCE BULLET-LIST INDENTS ========= */
.bullet-list ul {
    margin: 0;
    padding-left: 16px;
    line-height: 24px;
}

.bullet-list li {
    margin-left: 0;
    padding-left: 0;
    padding-bottom: 10px;
}

/* =======  KEEP ELEMENTOR BUTTON TEXT REGULAR WHILE ALLOWING LINKS TO BOLD ON HOVER =========== */

.elementor-kit-5 a.elementor-button:hover,
.elementor-kit-5 a.elementor-button:focus {
    font-weight: 400;
}/* End custom CSS */