body.page-id-394529 #main-content .container {
    max-width: none;
    padding-top: 0;
    width: 100%;
}

body.page-id-394529 #left-area {
    padding-right: 0;
    width: 100%;
}

body.page-id-394529 #sidebar,
body.page-id-394529 #main-content .container::before,
body.page-id-394529 .et_post_meta_wrapper,
body.page-id-394529 .entry-title {
    display: none;
}

body.page-id-394529 .pfi-mountain-page,
body.page-id-394529 .pfi-mountain-page * {
    box-sizing: border-box;
}

body.page-id-394529 .pfi-mountain-page {
    background: #fbf7ef;
    color: #1c2733;
    padding: 68px 0;
}

body.page-id-394529 .pfi-mountain-page > .et_pb_row,
body.page-id-394529 .pfi-mountain-page .et_pb_row {
    margin-inline: auto;
    max-width: min(calc(100vw - 48px), 1120px);
    width: min(calc(100vw - 48px), 1120px);
}

body.page-id-394529 .pfi-mountain-page h1,
body.page-id-394529 .pfi-mountain-page h2,
body.page-id-394529 .pfi-mountain-page h3 {
    color: #14212b;
    letter-spacing: 0;
    margin: 0;
}

body.page-id-394529 .pfi-mountain-page h1 {
    font-size: clamp(3rem, 5.7vw, 5.7rem);
    line-height: 0.96;
    max-width: 9.5ch;
}

body.page-id-394529 .pfi-mountain-page h2 {
    font-size: clamp(2rem, 3.4vw, 3.6rem);
    line-height: 1.03;
    max-width: 14ch;
}

body.page-id-394529 .pfi-mountain-page h3 {
    font-size: 1.1rem;
    line-height: 1.18;
}

body.page-id-394529 .pfi-mountain-page p,
body.page-id-394529 .pfi-mountain-page li,
body.page-id-394529 .pfi-mountain-page a {
    color: #46515d;
    font-size: 1.02rem;
    line-height: 1.68;
}

body.page-id-394529 .pfi-mountain-page p {
    margin: 0 0 1rem;
}

body.page-id-394529 .pfi-mountain-page p:last-child {
    margin-bottom: 0;
}

body.page-id-394529 .pfi-mountain-eyebrow {
    color: #7d1518;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.2;
    margin-bottom: 0.9rem;
    text-transform: uppercase;
}

body.page-id-394529 .pfi-mountain-lead {
    color: #2f3a45;
    font-size: clamp(1.08rem, 1.45vw, 1.3rem);
    line-height: 1.58;
    max-width: 760px;
}

body.page-id-394529 .pfi-mountain-text-measure {
    max-width: 840px;
}

body.page-id-394529 .pfi-mountain-hero {
    background: #fbf7ef;
    min-height: 82vh;
    padding: 78px 0 72px;
}

body.page-id-394529 .pfi-mountain-split-row,
body.page-id-394529 .pfi-mountain-cta-row {
    align-items: center;
    display: grid !important;
    gap: 44px;
    grid-template-columns: minmax(0, 1.02fr) minmax(300px, 0.82fr);
}

body.page-id-394529 .pfi-mountain-hero-row {
    align-items: center;
}

body.page-id-394529 .pfi-mountain-hero-copy {
    max-width: 780px;
}

body.page-id-394529 .pfi-mountain-button-row {
    align-items: center;
    display: flex !important;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
}

body.page-id-394529 .pfi-mountain-button-row--wrap {
    margin-top: 28px;
}

body.page-id-394529 .pfi-mountain-button .et_pb_button,
body.page-id-394529 .et_pb_button.pfi-mountain-button,
body.page-id-394529 .pfi-mountain-button a {
    align-items: center;
    border: 1px solid #7d1518 !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    font-size: 0.95rem !important;
    font-weight: 900 !important;
    justify-content: center;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
    min-height: 50px;
    padding: 0.85rem 1.12rem !important;
    text-decoration: none;
}

body.page-id-394529 .pfi-mountain-button--primary .et_pb_button,
body.page-id-394529 .et_pb_button.pfi-mountain-button--primary,
body.page-id-394529 .pfi-mountain-button--primary a {
    background: #7d1518 !important;
    color: #ffffff !important;
}

body.page-id-394529 .pfi-mountain-button--secondary .et_pb_button,
body.page-id-394529 .et_pb_button.pfi-mountain-button--secondary,
body.page-id-394529 .pfi-mountain-button--secondary a {
    background: transparent !important;
    color: #7d1518 !important;
}

body.page-id-394529 .pfi-mountain-media img {
    aspect-ratio: 4 / 3;
    border-radius: 6px;
    display: block;
    height: auto;
    object-fit: cover;
    width: 100%;
}

body.page-id-394529 .pfi-mountain-hero-media img {
    aspect-ratio: 3 / 4;
    min-height: 520px;
}

body.page-id-394529 .pfi-mountain-proof {
    background: #14212b;
    padding: 34px 0;
}

body.page-id-394529 .pfi-mountain-proof-grid,
body.page-id-394529 .pfi-mountain-card-row,
body.page-id-394529 .pfi-mountain-project-row {
    display: grid;
    gap: 16px;
}

body.page-id-394529 .pfi-mountain-proof-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.page-id-394529 .pfi-mountain-card-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 28px;
}

body.page-id-394529 .pfi-mountain-fleet-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.page-id-394529 .pfi-mountain-project-row {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-top: 30px;
}

body.page-id-394529 .pfi-mountain-card {
    background: #ffffff;
    border: 1px solid rgba(20, 33, 43, 0.12);
    border-radius: 6px;
    min-width: 0;
    padding: 22px;
}

body.page-id-394529 .pfi-mountain-proof-grid .pfi-mountain-card {
    background: transparent;
    border-color: rgba(255, 255, 255, 0.18);
}

body.page-id-394529 .pfi-mountain-proof-grid h3,
body.page-id-394529 .pfi-mountain-proof-grid p {
    color: #fffdf8;
}

body.page-id-394529 .pfi-mountain-card h3 {
    margin-bottom: 0.75rem;
}

body.page-id-394529 .pfi-mountain-card-link {
    color: #7d1518 !important;
    display: inline-block;
    font-weight: 900;
    margin-top: 0.65rem;
    text-decoration: none;
}

body.page-id-394529 .pfi-mountain-callout,
body.page-id-394529 .pfi-mountain-cta-panel {
    background: #ffffff;
    border: 1px solid rgba(125, 21, 24, 0.2);
    border-left: 5px solid #7d1518;
    border-radius: 6px;
    color: #2f3a45;
    display: block;
    font-size: 1.02rem;
    line-height: 1.6;
    margin-top: 24px;
    padding: 22px;
}

body.page-id-394529 .pfi-mountain-bullet-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

body.page-id-394529 .pfi-mountain-bullet-list li {
    border-top: 1px solid rgba(20, 33, 43, 0.1);
    padding: 0.72rem 0 0.72rem 1.25rem;
    position: relative;
}

body.page-id-394529 .pfi-mountain-bullet-list li:first-child {
    border-top: 0;
}

body.page-id-394529 .pfi-mountain-bullet-list li::before {
    background: #7d1518;
    border-radius: 999px;
    content: "";
    height: 6px;
    left: 0;
    position: absolute;
    top: 1.32rem;
    width: 6px;
}

body.page-id-394529 .pfi-mountain-stat-strip {
    display: flex;
    gap: 14px;
    margin: 24px 0 4px;
}

body.page-id-394529 .pfi-mountain-stat-strip div {
    background: #14212b;
    border-radius: 6px;
    color: #fffdf8;
    min-width: 180px;
    padding: 18px 20px;
}

body.page-id-394529 .pfi-mountain-stat-strip strong {
    color: #fffdf8;
    display: block;
    font-size: 2rem;
    line-height: 1;
}

body.page-id-394529 .pfi-mountain-stat-strip span {
    color: rgba(255, 253, 248, 0.82);
    display: block;
    font-size: 0.86rem;
    font-weight: 800;
    letter-spacing: 0;
    margin-top: 0.35rem;
    text-transform: uppercase;
}

body.page-id-394529 .pfi-mountain-page.pfi-mountain-cta {
    background: #fffdf8 !important;
}

body.page-id-394529 .pfi-mountain-page.pfi-mountain-cta h2 {
    color: #14212b !important;
}

body.page-id-394529 .pfi-mountain-page.pfi-mountain-cta p {
    color: #46515d !important;
}

body.page-id-394529 .pfi-mountain-page.pfi-mountain-cta .pfi-mountain-eyebrow {
    color: #7d1518 !important;
}

body.page-id-394529 .pfi-mountain-cta-panel {
    margin-top: 0;
}

body.page-id-394529 .pfi-mountain-cta-panel h3 {
    margin-bottom: 1rem;
}

body.page-id-394529 .pfi-mountain-cta-panel a {
    color: #7d1518;
    font-weight: 900;
}

@media (max-width: 1180px) {
    body.page-id-394529 .pfi-mountain-project-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.page-id-394529 .pfi-mountain-fleet-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    body.page-id-394529 .pfi-mountain-split-row,
    body.page-id-394529 .pfi-mountain-cta-row {
        grid-template-columns: 1fr;
    }

    body.page-id-394529 .pfi-mountain-hero-media img {
        aspect-ratio: 16 / 10;
        min-height: 0;
    }

    body.page-id-394529 .pfi-mountain-proof-grid,
    body.page-id-394529 .pfi-mountain-card-row,
    body.page-id-394529 .pfi-mountain-project-row,
    body.page-id-394529 .pfi-mountain-fleet-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    body:is(.page-id-394529, .page-id-393115) #left-area,
    body:is(.page-id-394529, .page-id-393115) #main-content .container {
        padding-right: 0;
        width: 100%;
    }

    body:is(.page-id-394529, .page-id-393115) #main-content .container {
        max-width: none;
        padding-top: 0;
    }

    body:is(.page-id-394529, .page-id-393115) #sidebar,
    body:is(.page-id-394529, .page-id-393115) #main-content .container::before,
    body:is(.page-id-394529, .page-id-393115) .et_post_meta_wrapper,
    body:is(.page-id-394529, .page-id-393115) .entry-title {
        display: none;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) {
        overflow-x: hidden;
        padding-block: 42px !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) > .et_pb_row {
        margin-inline: auto !important;
        max-width: min(calc(100vw - 32px), 1120px) !important;
        width: min(calc(100vw - 32px), 1120px) !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) :where(h1, h2, h3, p, li, a) {
        overflow-wrap: anywhere;
        word-break: normal;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) h1 {
        font-size: clamp(2.15rem, 9.4vw, 2.75rem) !important;
        line-height: 1.02 !important;
        max-width: 14ch !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) h2 {
        font-size: clamp(1.75rem, 8vw, 2.35rem) !important;
        line-height: 1.06 !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) h3 {
        font-size: 1.12rem !important;
        line-height: 1.14 !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) p,
    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) li {
        font-size: 1rem !important;
        line-height: 1.56 !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-lead, .pfi-region-lead) {
        font-size: 0.99rem !important;
        line-height: 1.46 !important;
        max-width: none !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-eyebrow, .pfi-region-eyebrow) {
        font-size: 0.72rem !important;
        letter-spacing: 0 !important;
        margin-bottom: 0.8rem !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-hero, .pfi-region-hero) {
        background-position: center top !important;
        border-left-width: 6px !important;
        min-height: auto !important;
        padding-block: 34px 38px !important;
    }

    body.page-id-394529 .pfi-mountain-hero {
        background-image:
            linear-gradient(180deg, rgba(255,253,248,0.97) 0%, rgba(255,253,248,0.92) 64%, rgba(255,253,248,0.78) 100%),
            url("/wp-content/uploads/2025/07/PFI-25081-Ustick-1.jpg") !important;
    }

    body.page-id-393115 .pfi-region-hero {
        background-image:
            linear-gradient(180deg, rgba(255,253,248,0.97) 0%, rgba(255,253,248,0.92) 64%, rgba(255,253,248,0.78) 100%),
            url("/wp-content/uploads/2023/05/PF-SandIsland-092022-26.jpg") !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-split-row, .pfi-region-split-row, .pfi-mountain-cta-row, .pfi-region-cta-row) {
        align-items: stretch !important;
        gap: 22px !important;
        grid-template-columns: 1fr !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-card-row, .pfi-region-card-row, .pfi-mountain-project-row, .pfi-region-project-row, .pfi-mountain-proof-grid, .pfi-region-proof-grid) {
        gap: 14px !important;
        grid-template-columns: 1fr !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-proof, .pfi-region-proof) {
        padding-block: 30px !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-proof-grid, .pfi-region-proof-grid) > div {
        border-top: 1px solid rgba(255, 253, 248, 0.24);
        padding-top: 14px;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-proof-grid, .pfi-region-proof-grid) > div:first-child {
        border-top: 0;
        padding-top: 0;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-card, .pfi-region-card) {
        gap: 0.58rem !important;
        padding: 18px !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-card--media, .pfi-region-card--media) {
        padding: 0 !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-card--media, .pfi-region-card--media) > :not(.et_pb_image) {
        padding-inline: 18px !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-card--media, .pfi-region-card--media) > :last-child {
        padding-bottom: 18px !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-media img, .pfi-region-media img, .pfi-mountain-card-image img, .pfi-region-card-image img) {
        aspect-ratio: 16 / 11 !important;
        box-shadow: 0 12px 28px rgba(20, 33, 43, 0.1) !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-button, .pfi-region-button) {
        margin-bottom: 10px !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.et_pb_button.pfi-mountain-button, .pfi-mountain-button .et_pb_button, .pfi-mountain-button a, .et_pb_button.pfi-region-button, .pfi-region-button .et_pb_button, .pfi-region-button a) {
        display: flex !important;
        min-height: 52px !important;
        width: 100% !important;
    }
}

@media (max-width: 420px) {
    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) > .et_pb_row {
        max-width: min(calc(100vw - 28px), 1120px) !important;
        width: min(calc(100vw - 28px), 1120px) !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-page, .pfi-region-page) h1 {
        font-size: clamp(2.05rem, 9vw, 2.5rem) !important;
    }

    body:is(.page-id-394529, .page-id-393115) :is(.pfi-mountain-hero, .pfi-region-hero) {
        padding-block: 32px 36px !important;
    }
}

/*
 * Regional Markets cards
 *
 * The image, heading, and body remain native Divi modules. These rules only
 * provide the full-bleed stacking and legibility treatment that Divi cannot
 * express as one editable card setting.
 */
.pfi-core-region-surface-page#markets
    .pfi-core-region-card-row {
    align-items: stretch !important;
    display: grid !important;
    gap: clamp(16px, 2.2vw, 24px) !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card-row > .et_pb_column {
    flex: none !important;
    max-width: none !important;
    min-width: 0 !important;
    width: 100% !important;
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay {
    background-color: #14212b !important;
    border: 0 !important;
    border-radius: 6px;
    box-shadow: 0 12px 28px rgba(20, 33, 43, 0.14);
    cursor: default;
    display: flex !important;
    flex-direction: column;
    isolation: isolate;
    justify-content: flex-end;
    min-height: 440px;
    overflow: hidden;
    padding: 0 !important;
    position: relative;
    transform: none !important;
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay::after {
    background-image: linear-gradient(
        180deg,
        rgba(10, 16, 23, 0) 18%,
        rgba(10, 16, 23, 0.12) 36%,
        rgba(10, 16, 23, 0.78) 68%,
        rgba(10, 16, 23, 0.96) 100%
    );
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay > .pfi-core-region-card-image {
    height: 100%;
    inset: 0;
    margin: 0 !important;
    position: absolute;
    width: 100%;
    z-index: 0;
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay > .pfi-core-region-card-image .et_pb_image_wrap,
.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay > .pfi-core-region-card-image img {
    border-radius: inherit;
    box-shadow: none !important;
    display: block;
    height: 100%;
    max-width: none !important;
    object-fit: cover;
    width: 100%;
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay > .et_pb_text {
    padding-inline: 22px;
    position: relative;
    z-index: 2;
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay > .et_pb_text:last-child {
    padding-bottom: 22px;
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay h3 {
    color: #ffffff !important;
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.28);
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay p {
    color: rgba(255, 253, 248, 0.92) !important;
    text-shadow: 0 1px 10px rgba(0, 0, 0, 0.32);
}

.pfi-core-region-surface-page#markets
    .pfi-core-region-card--overlay:hover {
    transform: none !important;
}

@media (max-width: 980px) {
    .pfi-core-region-surface-page#markets
        .pfi-core-region-card-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pfi-core-region-surface-page#markets
        .pfi-core-region-card--overlay {
        min-height: 420px;
    }
}

@media (max-width: 767px) {
    .pfi-core-region-surface-page#markets
        .pfi-core-region-card-row {
        grid-template-columns: 1fr;
    }

    .pfi-core-region-surface-page#markets
        .pfi-core-region-card--overlay {
        min-height: 390px;
    }

    .pfi-core-region-surface-page#markets
        .pfi-core-region-card--overlay > .et_pb_text {
        padding-inline: 18px;
    }

    .pfi-core-region-surface-page#markets
        .pfi-core-region-card--overlay > .et_pb_text:last-child {
        padding-bottom: 18px;
    }
}

/* Regional project grids must win over Divi row flex sizing. */
:is(.pfi-core-region-surface-page, .pfi-region-page, .pfi-mountain-page)#projects
    :is(.pfi-core-region-surface-project-row, .pfi-region-project-row, .pfi-mountain-project-row) {
    display: grid !important;
    gap: 16px;
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
}

:is(.pfi-core-region-surface-page, .pfi-region-page, .pfi-mountain-page)#projects
    :is(.pfi-core-region-surface-project-row, .pfi-region-project-row, .pfi-mountain-project-row) > .et_pb_column {
    flex: none !important;
    max-width: none !important;
    min-width: 0 !important;
    width: 100% !important;
}

:is(.pfi-core-region-surface-page, .pfi-region-page, .pfi-mountain-page):is(
    #overview, #markets, #capabilities, #equipment, #projects, #contact
) {
    scroll-margin-top: 96px;
}

@media (max-width: 900px) {
    :is(.pfi-core-region-surface-page, .pfi-region-page, .pfi-mountain-page)#projects
        :is(.pfi-core-region-surface-project-row, .pfi-region-project-row, .pfi-mountain-project-row) {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    :is(.pfi-core-region-surface-page, .pfi-region-page, .pfi-mountain-page)#projects
        :is(.pfi-core-region-surface-project-row, .pfi-region-project-row, .pfi-mountain-project-row) {
        grid-template-columns: 1fr !important;
    }

    :is(.pfi-core-region-surface-page, .pfi-region-page, .pfi-mountain-page):is(
        #overview, #markets, #capabilities, #equipment, #projects, #contact
    ) {
        scroll-margin-top: 120px;
    }
}
