:root {
    --depointe-accent: #ff7900;
    --depointe-ink: #182332;
}

body,
body .elementor-widget-text-editor,
body .elementor-button,
body button,
body input,
body select,
body textarea {
    font-family: "Poppins", sans-serif !important;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .elementor-heading-title,
body .elementor-heading-title *,
body .h1,
body .h2,
body .h3,
body .h4,
body .h5,
body .h6 {
    font-family: "Plus Jakarta Sans", sans-serif !important;
    line-height: 1.28 !important;
}

body p,
body blockquote,
body .elementor-widget-text-editor,
body .elementor-widget-text-editor li {
    line-height: 1.7 !important;
}

body .entry-content li {
    line-height: 1.5 !important;
}

/* Decorative icons stay inside their section and never take space from copy. */
body .depointe-icon-section {
    position: relative;
    isolation: isolate;
    overflow: clip !important;
}

body .depointe-icon-section > .elementor-container {
    position: relative;
    z-index: 1;
}

body .depointe-icon-section .depointe-section-art {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    clip-path: inset(0);
}

body .depointe-icon-section .depointe-section-art svg {
    position: sticky;
    top: clamp(145px, 31vh, 270px);
    display: block;
    width: 260px;
    height: 260px;
    margin: 0 25px 0 auto;
    stroke: var(--depointe-accent);
    opacity: .19;
    transform-origin: center;
    animation: depointe-icon-drift 7s ease-in-out infinite alternate;
}

@keyframes depointe-icon-drift {
    from { transform: translateY(0) rotate(-4deg); }
    to { transform: translateY(15px) rotate(5deg); }
}

/* Align the site header and Home content while keeping their backgrounds full width. */
[data-elementor-type="header"] section.elementor-top-section > .elementor-container,
.page-id-6022 [data-elementor-type="wp-page"] section.elementor-top-section > .elementor-container {
    width: min(1400px, calc(100% - 32px)) !important;
    max-width: 1400px !important;
}

[data-elementor-type="header"] section.elementor-inner-section > .elementor-container {
    width: 100%;
    max-width: 1400px !important;
}

/* Home hero: retain its artwork and copy, but give the message the leading edge. */
.page-id-6022 [data-elementor-type="wp-page"] section.elementor-top-section .depointe-home-title-accent {
    color: var(--depointe-accent) !important;
}

.page-id-6022 [data-elementor-type="wp-page"] section.elementor-element-215410d2
    .elementor-element-1e13372 .depointe-home-title-accent {
    color: #ffffff !important;
}

.page-id-6022 .elementor-element-215410d2 {
    min-height: max(690px, calc(100svh - 80px));
    padding: 110px 0 75px !important;
    display: flex;
    align-items: center;
}

.page-id-6022 .elementor-element-215410d2 > .elementor-container {
    width: 100%;
    align-items: center;
}

.page-id-6022 .elementor-element-215410d2 .elementor-element-6f204dae > .elementor-widget-wrap {
    align-content: center;
    padding-left: 20px;
    padding-right: 20px;
}

.page-id-6022 .elementor-element-1e13372 .elementor-heading-title {
    max-width: 920px;
    font-size: clamp(44px, 4.45vw, 72px) !important;
    font-weight: 800;
    line-height: 1.16 !important;
    letter-spacing: -0.035em;
    text-wrap: balance;
}

.page-id-6022 .depointe-hero-accent {
    color: var(--depointe-accent);
}

.page-id-6022 .elementor-element-215410d2 .elementor-widget-heading:not(.elementor-element-1e13372) .elementor-heading-title {
    max-width: 630px;
    line-height: 1.5;
}

.page-id-6022 .elementor-element-215410d2 .elementor-widget-text-editor {
    width: 100%;
    max-width: min(100%, 630px);
    min-width: 0;
    line-height: 1.7;
}

.page-id-6022 .elementor-element-215410d2 .elementor-widget-button {
    width: auto;
    display: inline-block;
    margin: 8px 12px 0 0;
}

.page-id-6022 .elementor-element-215410d2 .elementor-widget-button .elementor-button {
    border-radius: 4px;
}

/* A small, consistent visual language for the five updated content pages. */
:is(.page-id-6022, .page-id-6339, .page-id-6415, .page-id-6745, .page-id-6526)
    .elementor-top-section[id] {
    scroll-margin-top: 110px;
}

:is(.page-id-6022, .page-id-6339, .page-id-6415, .page-id-6745, .page-id-6526)
    .elementor-top-section[id] .elementor-heading-title {
    letter-spacing: -0.025em;
}

.page-id-6022 :is(#our-focus, #why-depointe, #nehemiah-impact-framework),
.page-id-6339 :is(#vision-and-mission, #our-purpose, #what-makes-us-different, #team-and-associates),
.page-id-6415 #services-overview {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.page-id-6022 :is(#our-focus, #why-depointe, #nehemiah-impact-framework)::before,
.page-id-6339 :is(#vision-and-mission, #our-purpose, #what-makes-us-different, #team-and-associates)::before,
.page-id-6415 #services-overview::before {
    content: "";
    position: absolute;
    width: 320px;
    height: 320px;
    right: -130px;
    top: -160px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 121, 0, .18), rgba(255, 121, 0, 0) 72%);
    pointer-events: none;
    z-index: -1;
}

.page-id-6022 #our-focus {
    background: linear-gradient(115deg, #fff 58%, #fff3e9);
}

.page-id-6022 #our-focus li {
    display: inline-flex;
    margin: 6px 12px 6px 0;
    padding: 10px 15px;
    border-radius: 30px;
    background: #fff;
    box-shadow: 0 9px 24px rgba(24, 35, 50, .09);
}

.page-id-6022 #our-focus ul {
    padding: 0;
    list-style: none;
}

.page-id-6022 #why-depointe {
    background: #f6f8fb;
}

.page-id-6022 #why-depointe .depointe-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: 28px;
}

.page-id-6022 #why-depointe .depointe-benefit {
    padding: 28px;
    border: 1px solid rgba(24, 35, 50, .07);
    border-top: 3px solid var(--depointe-accent);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(24, 35, 50, .06);
    transition: transform .35s ease, box-shadow .35s ease;
}

.page-id-6022 #why-depointe .depointe-benefit:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 48px rgba(24, 35, 50, .13);
}

.page-id-6022 #why-depointe .depointe-benefit h3 {
    margin-top: 0;
    color: var(--depointe-ink);
}

.page-id-6022 #nehemiah-impact-framework {
    background: linear-gradient(120deg, #182332, #29394b) !important;
    color: #ecf1f4;
}

.page-id-6022 #nehemiah-impact-framework .elementor-heading-title,
.page-id-6022 #nehemiah-impact-framework p {
    color: #fff !important;
}

.page-id-6022 #nehemiah-impact-framework .depointe-nif-steps {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    counter-reset: nif;
    padding: 28px 0 0;
    list-style: none;
}

.page-id-6022 #nehemiah-impact-framework .depointe-nif-steps li {
    counter-increment: nif;
    min-height: 105px;
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 12px;
    background: rgba(255, 255, 255, .08);
    font-weight: 600;
    backdrop-filter: blur(8px);
}

.page-id-6022 #nehemiah-impact-framework .depointe-nif-steps li::before {
    content: counter(nif, decimal-leading-zero);
    display: block;
    color: #ff9b40;
    font: 700 24px/1.3 "Plus Jakarta Sans", sans-serif;
    margin-bottom: 8px;
}

.page-id-6339 .elementor-element-97c02eb .elementor-element-ac7f412 h2 {
    margin: 0 0 24px;
    font-size: clamp(36px, 4.5vw, 60px);
    font-weight: 300;
    letter-spacing: -.025em;
}

.page-id-6339 :is(#vision-and-mission, #our-purpose, #team-and-associates) {
    background: linear-gradient(135deg, #f6f8fb, #fff8f2) !important;
}

.page-id-6339 #vision-and-mission .elementor-column > .elementor-widget-wrap {
    margin: 10px;
    padding: 28px;
    border-radius: 16px;
    border-left: 4px solid var(--depointe-accent);
    background: #fff;
    box-shadow: 0 16px 36px rgba(24, 35, 50, .07);
}

.page-id-6339 #vision-and-mission > .depointe-section-art {
    display: none !important;
}

.page-id-6339 #what-makes-us-different {
    border-top: 1px solid #f4d9c2;
}

.page-id-6339 [data-elementor-type="wp-page"] section.elementor-element-9193c09 {
    display: none !important;
}

/* About Us: editorial sequence for the five primary story sections. */
.page-id-6339 [data-elementor-type="wp-page"] section:is(
    .elementor-element-97c02eb, .elementor-element-bf3ad49,
    #our-purpose, #what-makes-us-different, #team-and-associates
) {
    padding: clamp(76px, 8vw, 120px) 24px !important;
}

.page-id-6339 [data-elementor-type="wp-page"] section:is(
    .elementor-element-97c02eb, .elementor-element-bf3ad49,
    #our-purpose, #what-makes-us-different, #team-and-associates
) > .elementor-container {
    width: min(1400px, 100%) !important;
    max-width: 1400px !important;
}

.page-id-6339 [data-elementor-type="wp-page"] section:is(
    .elementor-element-97c02eb, .elementor-element-bf3ad49,
    #our-purpose, #what-makes-us-different, #team-and-associates
) h2 {
    font-size: clamp(38px, 4.2vw, 62px) !important;
    font-weight: 350 !important;
    line-height: 1.18 !important;
    letter-spacing: -.04em !important;
    text-wrap: balance;
}

.page-id-6339 [data-elementor-type="wp-page"] section:is(
    .elementor-element-97c02eb, .elementor-element-bf3ad49,
    #our-purpose, #what-makes-us-different, #team-and-associates
) :is(.elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-widget-heading p) {
    text-align: left !important;
}

.page-id-6339 .elementor-element-97c02eb {
    background: linear-gradient(120deg, #f5f8fb, #fff9f3 85%);
}

.page-id-6339 .elementor-element-97c02eb .elementor-element-ac7f412 .elementor-widget-container {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 0 clamp(40px, 8vw, 130px);
}

.page-id-6339 .elementor-element-97c02eb .elementor-element-ac7f412 h2 {
    grid-column: 1;
    grid-row: 1 / span 4;
    align-self: start;
    position: sticky;
    top: 120px;
    max-width: 450px;
    margin: 0;
}

.page-id-6339 .elementor-element-97c02eb .elementor-element-ac7f412 h2::before,
.page-id-6339 .elementor-element-bf3ad49 .elementor-element-a9e79c2 h2::before,
.page-id-6339 #our-purpose .elementor-element-8d2497bb h2::before,
.page-id-6339 #what-makes-us-different .elementor-element-8dfdafee h2::before,
.page-id-6339 #team-and-associates .elementor-element-548009a8 h2::before {
    display: block;
    margin-bottom: 22px;
    color: var(--depointe-accent);
    font: 700 12px/1.4 "Poppins", sans-serif;
    letter-spacing: .18em;
}

.page-id-6339 .elementor-element-97c02eb h2::before { content: "01 / THE COMPANY"; }
.page-id-6339 .elementor-element-bf3ad49 h2::before { content: "02 / OUR APPROACH"; }
.page-id-6339 #our-purpose h2::before { content: "03 / OUR WHY"; }
.page-id-6339 #what-makes-us-different h2::before { content: "04 / THE DIFFERENCE"; }
.page-id-6339 #team-and-associates h2::before { content: "05 / OUR PEOPLE"; }

.page-id-6339 .elementor-element-97c02eb .elementor-element-ac7f412 p {
    grid-column: 2;
    max-width: 680px;
    margin: 0 0 23px;
    color: #384557;
    font-size: clamp(16px, 1.3vw, 19px);
}

.page-id-6339 .elementor-element-97c02eb .elementor-element-ac7f412 p:first-of-type {
    color: var(--depointe-ink);
    font-size: clamp(20px, 1.7vw, 25px);
    font-weight: 500;
    line-height: 1.5 !important;
}

.page-id-6339 .elementor-element-97c02eb .depointe-section-art svg {
    margin-right: auto;
    margin-left: max(30px, calc((100vw - 1350px) / 2));
    opacity: .12;
}

.page-id-6339 .elementor-element-bf3ad49 {
    background: #142332 !important;
    color: #eef2f6;
}

.page-id-6339 .elementor-element-bf3ad49 > .elementor-container {
    align-items: center;
    gap: clamp(32px, 5vw, 80px);
}

.page-id-6339 .elementor-element-bf3ad49 .elementor-element-f87b986,
.page-id-6339 .elementor-element-bf3ad49 .elementor-element-8d763b0 {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
}

.page-id-6339 .elementor-element-bf3ad49 .elementor-element-741e0c6 {
    position: relative;
    max-width: 540px;
}

.page-id-6339 .elementor-element-bf3ad49 .elementor-element-741e0c6::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: -15px;
    left: 34px;
    width: 48px;
    height: 30px;
    background: var(--depointe-accent);
}

.page-id-6339 .depointe-about-work-visual {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 22px;
    background: radial-gradient(circle at 46% 42%, #263d52, #162a3c 68%, #102130);
}

.page-id-6339 .depointe-about-work-visual svg {
    display: block;
    width: 100%;
    height: auto;
    max-height: 500px;
}

.page-id-6339 .depointe-work-orbit {
    fill: none;
    stroke: rgba(255, 255, 255, .1);
    stroke-width: 1;
    stroke-dasharray: 4 10;
}

.page-id-6339 .depointe-work-route {
    fill: none;
    stroke: url(#depointe-work-line);
    stroke-width: 2;
    stroke-dasharray: 7 9;
}

.page-id-6339 .depointe-work-node circle:first-child {
    fill: #22384b;
    stroke: #ff7900;
    stroke-width: 2;
}

.page-id-6339 .depointe-work-node circle:not(:first-child),
.page-id-6339 .depointe-work-node path {
    fill: none;
    stroke: #ffad64;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.page-id-6339 .depointe-work-node text {
    fill: #fff;
    text-anchor: middle;
    font: 700 12px "Plus Jakarta Sans", sans-serif;
    letter-spacing: 2px;
}

.page-id-6339 .elementor-element-bf3ad49 :is(h2, .elementor-element-3851883 p) {
    color: #fff !important;
}

.page-id-6339 .elementor-element-bf3ad49 .elementor-element-3851883 p {
    max-width: 560px;
    margin: 20px 0 28px;
    font-size: clamp(19px, 1.6vw, 23px) !important;
    line-height: 1.55 !important;
}

.page-id-6339 .depointe-about-work-stages {
    counter-reset: stage;
    margin: 0;
    padding: 0;
    list-style: none;
}

.page-id-6339 .depointe-about-work-stages li {
    counter-increment: stage;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 0 16px;
    padding: 15px 0;
    border-top: 1px solid rgba(255, 255, 255, .18);
}

.page-id-6339 .depointe-about-work-stages li::before {
    content: "0" counter(stage);
    grid-row: 1 / span 2;
    color: #ff9b40;
    font: 700 14px/1.8 "Plus Jakarta Sans", sans-serif;
}

.page-id-6339 .depointe-about-work-stages strong {
    color: #fff;
    font: 600 18px/1.4 "Plus Jakarta Sans", sans-serif;
}

.page-id-6339 .depointe-about-work-stages span {
    color: #cbd5df;
    font-size: 15px;
}

.page-id-6339 #our-purpose {
    background: linear-gradient(120deg, #fff9f3, #f5f8fb) !important;
}

.page-id-6339 #our-purpose .elementor-element-8d2497bb {
    margin-bottom: 30px;
}

.page-id-6339 #our-purpose .elementor-element-1951410b .elementor-widget-container {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 48px;
    max-width: 1150px;
}

.page-id-6339 #our-purpose .elementor-element-1951410b p:first-child {
    grid-column: 1 / -1;
    max-width: 1050px;
    margin: 0 0 22px;
    padding-left: clamp(22px, 3vw, 44px);
    border-left: 5px solid var(--depointe-accent);
    color: var(--depointe-ink);
    font: 500 clamp(27px, 3.2vw, 45px)/1.35 "Plus Jakarta Sans", sans-serif;
    letter-spacing: normal;
    word-spacing: .08em;
}

.page-id-6339 #our-purpose .elementor-element-1951410b p:not(:first-child) {
    margin: 0;
    padding: 25px;
    border: 1px solid rgba(255, 121, 0, .14);
    border-radius: 16px;
    background: rgba(255, 255, 255, .8);
    font-size: 17px;
}

.page-id-6339 #what-makes-us-different {
    background: #172434 !important;
    color: #edf2f8;
    border-top: 0;
}

.page-id-6339 #what-makes-us-different :is(h2, h3, p) {
    color: #f4f6f9 !important;
}

.page-id-6339 #what-makes-us-different .elementor-element-8dfdafee {
    margin-bottom: 32px;
}

.page-id-6339 .depointe-about-contrast {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 34px;
    margin-bottom: 32px;
}

.page-id-6339 .depointe-about-contrast p {
    margin: 0;
    padding: 16px 22px;
    border-left: 2px solid rgba(255, 121, 0, .75);
    background: rgba(255, 255, 255, .055);
    font-size: clamp(16px, 1.3vw, 19px);
}

.page-id-6339 #what-makes-us-different .elementor-element-f1b693da > .elementor-widget-container > p:not(.depointe-about-closing) {
    margin: 0 0 24px;
    color: #ffad64 !important;
    font-weight: 600;
}

.page-id-6339 .depointe-about-pillars {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.page-id-6339 .depointe-about-pillar {
    min-width: 0;
    min-height: 275px;
    padding: clamp(22px, 2.2vw, 32px);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 16px;
    background: rgba(255, 255, 255, .065);
    transition: transform .9s ease, border-color .9s ease, background .9s ease;
}

.page-id-6339 .depointe-about-pillar:hover {
    transform: translateY(-7px);
    border-color: rgba(255, 121, 0, .75);
    background: rgba(255, 255, 255, .11);
}

.page-id-6339 .depointe-about-pillar > span {
    color: #ff9b40;
    font: 700 14px/1.3 "Plus Jakarta Sans", sans-serif;
}

.page-id-6339 .depointe-about-pillar h3 {
    margin: 24px 0 14px;
    font-size: clamp(22px, 2vw, 28px);
    font-weight: 600;
}

.page-id-6339 .depointe-about-pillar p {
    margin: 0;
    color: #cbd5df !important;
    font-size: 15px;
}

.page-id-6339 .depointe-about-closing {
    max-width: 850px;
    margin: 36px 0 0;
    padding-left: 24px;
    border-left: 3px solid var(--depointe-accent);
    font-size: 18px;
}

.page-id-6339 #team-and-associates {
    background: linear-gradient(135deg, #f6f8fb, #fff8f2) !important;
}

.page-id-6339 #team-and-associates .elementor-element-548009a8 {
    margin-bottom: 32px;
}

.page-id-6339 #team-and-associates .elementor-element-40e71e3c .elementor-widget-container {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 0 clamp(32px, 5vw, 80px);
}

.page-id-6339 #team-and-associates .elementor-element-40e71e3c p:nth-of-type(-n + 2) {
    grid-column: 1;
    margin: 0 0 20px;
    color: #394657;
    font-size: clamp(17px, 1.4vw, 20px);
}

.page-id-6339 #team-and-associates .elementor-element-40e71e3c p:first-of-type {
    color: var(--depointe-ink);
    font-size: clamp(23px, 2vw, 30px);
    font-weight: 600;
    line-height: 1.4 !important;
}

.page-id-6339 #team-and-associates .elementor-element-40e71e3c p:nth-of-type(3) {
    grid-column: 2;
    grid-row: 1;
    margin: 0 0 18px;
    color: var(--depointe-ink);
    font-weight: 600;
}

.page-id-6339 #team-and-associates .depointe-about-team-actions {
    grid-column: 1;
    grid-row: 3;
    display: flex;
    flex-wrap: wrap;
    align-self: start;
    gap: 12px;
    margin: 14px 0 24px;
}

.page-id-6339 #team-and-associates .depointe-about-team-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 11px 19px;
    border: 1px solid var(--depointe-accent);
    border-radius: 7px;
    background: var(--depointe-accent);
    color: #fff;
    font: 600 14px/1.4 "Poppins", sans-serif;
    text-align: center;
    text-decoration: none;
    transition: background .3s ease, color .3s ease, transform .3s ease;
}

.page-id-6339 #team-and-associates .depointe-about-team-actions a + a {
    background: transparent;
    color: var(--depointe-ink);
}

.page-id-6339 #team-and-associates .depointe-about-team-actions a:hover,
.page-id-6339 #team-and-associates .depointe-about-team-actions a:focus-visible {
    transform: translateY(-3px);
    background: #d86500;
    color: #fff;
}

.page-id-6339 #team-and-associates .elementor-element-40e71e3c ul {
    grid-column: 2;
    grid-row: 2 / span 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.page-id-6339 #team-and-associates .elementor-element-40e71e3c li {
    min-width: 0;
    padding: 12px 15px;
    border: 1px solid #e6ebf1;
    border-radius: 9px;
    background: #fff;
    color: #233247;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5 !important;
}

.page-id-6339 #team-and-associates .elementor-element-40e71e3c li::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-right: 9px;
    border-radius: 50%;
    background: var(--depointe-accent);
    vertical-align: middle;
}

.page-id-6339 #team-and-associates .elementor-element-40e71e3c p:last-child {
    grid-column: 1 / -1;
    margin: 34px 0 0;
    padding: 23px 28px;
    border-left: 3px solid var(--depointe-accent);
    background: rgba(255, 255, 255, .8);
}

@media (max-width: 1024px) {
    .page-id-6339 .depointe-about-pillars {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .page-id-6339 [data-elementor-type="wp-page"] section:is(
        .elementor-element-97c02eb, .elementor-element-bf3ad49,
        #our-purpose, #what-makes-us-different, #team-and-associates
    ) {
        padding: 70px 20px !important;
    }

    .page-id-6339 .elementor-element-97c02eb .elementor-element-ac7f412 .elementor-widget-container,
    .page-id-6339 #our-purpose .elementor-element-1951410b .elementor-widget-container,
    .page-id-6339 #team-and-associates .elementor-element-40e71e3c .elementor-widget-container,
    .page-id-6339 .depointe-about-contrast {
        display: block;
    }

    .page-id-6339 .elementor-element-97c02eb .elementor-element-ac7f412 h2 {
        position: static;
        margin-bottom: 28px;
    }

    .page-id-6339 .elementor-element-bf3ad49 .elementor-element-f87b986,
    .page-id-6339 .elementor-element-bf3ad49 .elementor-element-8d763b0 {
        flex-basis: 100%;
        width: 100%;
    }

    .page-id-6339 .elementor-element-bf3ad49 .elementor-element-741e0c6 {
        margin-bottom: 42px;
    }

    .page-id-6339 #our-purpose .elementor-element-1951410b p:not(:first-child) {
        margin-bottom: 12px;
    }

    .page-id-6339 .depointe-about-contrast p {
        margin-bottom: 10px;
    }

    .page-id-6339 .depointe-about-pillars {
        grid-template-columns: 1fr;
    }

    .page-id-6339 .depointe-about-pillar {
        min-height: 0;
    }

    .page-id-6339 #team-and-associates .elementor-element-40e71e3c ul {
        grid-template-columns: 1fr;
    }

    .page-id-6339 #team-and-associates .depointe-about-team-actions a {
        flex: 1 1 170px;
    }
}

/* The Events announcement is confined to the Events page. */
.page-id-6758 section.elementor-element-97c02eb {
    padding: 65px 24px !important;
    background: linear-gradient(120deg, #f5f8fb, #fff8f2);
}

.page-id-6758 section.elementor-element-97c02eb > .elementor-container {
    max-width: 1100px;
}

.page-id-6758 .elementor-element-f548f9d p {
    margin: 0;
    padding: 25px 30px;
    border-left: 4px solid var(--depointe-accent);
    border-radius: 0 12px 12px 0;
    background: #fff;
    color: var(--depointe-ink);
    font-size: clamp(17px, 2vw, 23px);
    box-shadow: 0 15px 36px rgba(24, 35, 50, .07);
}

body.depointe-modal-open {
    overflow: hidden !important;
}

.page-id-6758 .depointe-event-modal[hidden] {
    display: none !important;
}

.page-id-6758 .depointe-event-modal {
    position: fixed;
    z-index: 100001;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
}

.page-id-6758 .depointe-event-modal__shade {
    position: absolute;
    inset: 0;
    background: rgba(9, 20, 33, .78);
    backdrop-filter: blur(9px);
}

.page-id-6758 .depointe-event-modal__panel {
    position: relative;
    overflow: hidden;
    width: min(100%, 600px);
    max-height: min(90vh, 760px);
    overflow-y: auto;
    padding: clamp(34px, 6vw, 64px);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 24px;
    background: radial-gradient(circle at 100% 0, #33475d 0, #182838 46%, #101c2b 100%);
    box-shadow: 0 36px 110px rgba(0, 0, 0, .38);
    color: #fff;
    animation: depointe-event-arrive .7s ease both;
}

.page-id-6758 .depointe-event-modal__panel::after {
    content: "";
    position: absolute;
    top: -92px;
    right: -105px;
    width: 310px;
    height: 310px;
    border: 1px solid rgba(255, 121, 0, .2);
    border-radius: 50%;
    box-shadow: 0 0 0 38px rgba(255, 121, 0, .035), 0 0 0 76px rgba(255, 121, 0, .02);
    pointer-events: none;
}

.page-id-6758 .depointe-event-modal__close {
    position: absolute;
    z-index: 1;
    top: 20px;
    right: 20px;
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    padding: 9px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    cursor: pointer;
}

.page-id-6758 .depointe-event-modal__close svg {
    width: 20px;
    height: 20px;
}

.page-id-6758 .depointe-event-modal__eyebrow {
    display: block;
    margin-bottom: 30px;
    color: #ffac68;
    font: 700 12px/1.4 "Poppins", sans-serif;
    letter-spacing: .2em;
}

.page-id-6758 .depointe-event-modal__icon {
    display: grid;
    place-items: center;
    width: 72px;
    height: 72px;
    margin-bottom: 26px;
    border: 1px solid rgba(255, 121, 0, .45);
    border-radius: 19px;
    background: rgba(255, 121, 0, .12);
    color: #ff9b40;
}

.page-id-6758 .depointe-event-modal__icon svg {
    width: 37px;
    height: 37px;
}

.page-id-6758 .depointe-event-modal__panel h2 {
    position: relative;
    margin: 0 0 16px;
    color: #fff !important;
    font-size: clamp(32px, 4.3vw, 47px);
    font-weight: 600;
    letter-spacing: -.035em;
}

.page-id-6758 .depointe-event-modal__panel p {
    position: relative;
    max-width: 420px;
    margin: 0 0 34px;
    color: #d8e1eb;
    font-size: clamp(16px, 1.7vw, 19px);
}

.page-id-6758 .depointe-event-modal__dismiss {
    position: relative;
    min-width: 132px;
    min-height: 48px;
    padding: 11px 22px;
    border: 1px solid var(--depointe-accent);
    border-radius: 7px;
    background: var(--depointe-accent);
    color: #fff;
    font: 600 15px/1.4 "Poppins", sans-serif;
    cursor: pointer;
}

.page-id-6758 .depointe-event-modal__dismiss:hover {
    background: #d86500;
}

.page-id-6758 .depointe-event-modal :is(button:focus-visible) {
    outline: 3px solid #fff;
    outline-offset: 3px;
}

@keyframes depointe-event-arrive {
    from { opacity: 0; transform: translateY(22px) scale(.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .page-id-6758 .depointe-event-modal__panel {
        animation: none;
    }
}

.page-id-6415 .elementor-top-section[id^="learning-"],
.page-id-6415 .elementor-top-section[id^="organisational-"],
.page-id-6415 .elementor-top-section[id^="project-"],
.page-id-6415 .elementor-top-section[id^="coaching-"],
.page-id-6415 .elementor-top-section[id^="impact-"],
.page-id-6415 .elementor-top-section[id^="digital-"] {
    background-image: radial-gradient(circle at 95% 8%, rgba(255, 121, 0, .09), transparent 35%);
}

.page-id-6415 :is(#learning-training, #project-programme-management, #impact-evaluation-sustainability) {
    background-color: #fff !important;
}

.page-id-6415 :is(#organisational-solutions, #coaching-personal-development, #digital-growth-communications) {
    background-color: #0b0b0b !important;
    background-image: radial-gradient(circle at 95% 8%, rgba(255, 121, 0, .14), transparent 38%);
    color: #f5f5f5;
}

.page-id-6415 :is(#organisational-solutions, #coaching-personal-development, #digital-growth-communications)
    :is(.elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p) {
    color: #f5f5f5 !important;
}

.page-id-6415 .elementor-top-section[id] .elementor-column:has(.elementor-widget-image) img,
.page-id-6022 .depointe-pin-media .elementor-widget-image img,
.page-id-6339 .depointe-pin-media .elementor-widget-image img {
    border-radius: 16px;
    box-shadow: 0 24px 60px rgba(24, 35, 50, .17);
}

.page-id-6415 .elementor-top-section[id] h2.elementor-heading-title {
    border-left: 4px solid var(--depointe-accent);
    padding-left: 18px;
}

/* Services: two-tone editorial titles, image markers and angled colour changes. */
.page-id-6415 :is(#learning-training, #organisational-solutions, #project-programme-management, #coaching-personal-development, #impact-evaluation-sustainability, #digital-growth-communications)
    h2.elementor-heading-title {
    border: 0;
    padding-left: 0;
    font-size: clamp(36px, 3.7vw, 56px) !important;
    font-weight: 300 !important;
    line-height: 1.2 !important;
    letter-spacing: -.035em;
}

.page-id-6415 :is(#learning-training, #organisational-solutions, #project-programme-management, #coaching-personal-development, #impact-evaluation-sustainability, #digital-growth-communications)
    h2.elementor-heading-title .depointe-service-title-accent {
    color: var(--depointe-accent) !important;
    font-family: inherit !important;
}

.page-id-6415 :is(#learning-training, #organisational-solutions, #project-programme-management, #coaching-personal-development, #impact-evaluation-sustainability, #digital-growth-communications)
    h2.elementor-heading-title::after {
    content: "";
    display: block;
    width: 130px;
    height: 2px;
    margin: 32px 0 38px;
    background: var(--depointe-accent);
}

.page-id-6415 :is(#learning-training, #organisational-solutions, #project-programme-management, #coaching-personal-development, #impact-evaluation-sustainability, #digital-growth-communications)
    .elementor-widget-image:not(.depointe-pinned-image) {
    position: relative;
}

.page-id-6415 :is(#learning-training, #organisational-solutions, #project-programme-management, #coaching-personal-development, #impact-evaluation-sustainability, #digital-growth-communications)
    .elementor-widget-image::before {
    content: "";
    position: absolute;
    top: -50px;
    left: 20%;
    width: 42px;
    height: 30px;
    background: var(--depointe-accent);
    pointer-events: none;
}

.page-id-6415 :is(#learning-training, #organisational-solutions, #project-programme-management, #coaching-personal-development, #impact-evaluation-sustainability, #digital-growth-communications)
    .elementor-column:has(.elementor-widget-image) img {
    border-radius: 0;
    box-shadow: none;
}

.page-id-6415 :is(#organisational-solutions, #coaching-personal-development, #digital-growth-communications) {
    position: relative;
}

.page-id-6415 :is(#organisational-solutions, #coaching-personal-development, #digital-growth-communications)::before,
.page-id-6415 :is(#organisational-solutions, #coaching-personal-development, #digital-growth-communications)::after {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    height: 27px;
    background: #fff;
    pointer-events: none;
    z-index: 1;
}

.page-id-6415 :is(#organisational-solutions, #coaching-personal-development, #digital-growth-communications)::before {
    top: -1px;
    clip-path: polygon(0 0, 100% 0, 0 100%);
}

.page-id-6415 :is(#organisational-solutions, #coaching-personal-development, #digital-growth-communications)::after {
    bottom: -1px;
    clip-path: polygon(100% 0, 100% 100%, 0 100%);
}

@media (max-width: 768px) {
    .page-id-6415 :is(#learning-training, #organisational-solutions, #project-programme-management, #coaching-personal-development, #impact-evaluation-sustainability, #digital-growth-communications)
        .elementor-widget-image::before {
        top: -35px;
        width: 32px;
        height: 23px;
    }
}

.page-id-6745 .elementor-element-97c02eb .elementor-widget-text-editor,
.page-id-6526 .elementor-element-d5fc10a .elementor-column:last-child > .elementor-widget-wrap {
    border-radius: 16px;
    background: linear-gradient(135deg, #fff8f2, #fff);
    box-shadow: 0 16px 42px rgba(24, 35, 50, .07);
}

.page-id-6745 .elementor-element-97c02eb .elementor-widget-text-editor {
    padding: 30px;
    border-left: 4px solid var(--depointe-accent);
}

.page-id-6526 .elementor-element-d5fc10a .elementor-column:last-child > .elementor-widget-wrap {
    padding: 28px;
}

.page-id-7170 .elementor-element-f9ec14c > .elementor-container {
    width: min(1400px, calc(100% - 32px));
    max-width: 1400px !important;
    align-items: stretch;
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-ea5f163,
.page-id-7170 .elementor-element-f9ec14c .elementor-element-de7170b {
    padding: 14px;
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-ea5f163 > .elementor-widget-wrap,
.page-id-7170 .elementor-element-f9ec14c .elementor-element-de7170b > .elementor-widget-wrap {
    align-content: flex-start;
    height: 100%;
    padding: clamp(26px, 3vw, 48px);
    border-radius: 22px;
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-ea5f163 > .elementor-widget-wrap {
    background: #fffaf6;
    border: 1px solid #f8e8d9;
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-de7170b > .elementor-widget-wrap {
    background: #fff;
    border: 1px solid #ede9e5;
    box-shadow: 0 18px 48px rgba(24, 35, 50, .06);
}

.page-id-7170 .elementor-element-f9ec14c :is(.elementor-element-089119a, .elementor-element-de7170a) .elementor-heading-title {
    font-size: clamp(25px, 2.4vw, 36px) !important;
    line-height: 1.4 !important;
    font-weight: 500;
    letter-spacing: normal !important;
    text-align: left;
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-089119a {
    margin-bottom: 24px;
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-94a3455 ul {
    margin: 0;
    padding-left: 1.3em;
    font-size: clamp(17px, 1.4vw, 20px);
    line-height: 1.7;
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-94a3455 li {
    padding-left: 5px;
    margin-bottom: 18px;
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-94a3455 li::marker {
    color: var(--depointe-accent);
}

.page-id-7170 .elementor-element-f9ec14c .elementor-element-de7170a {
    margin-bottom: 26px;
}

@media (max-width: 900px) {
    .page-id-7170 .elementor-element-f9ec14c .elementor-element-ea5f163,
    .page-id-7170 .elementor-element-f9ec14c .elementor-element-de7170b {
        width: 100%;
        flex-basis: 100%;
    }
}

@media (min-width: 769px) {
    .depointe-pin-media > .elementor-container > .elementor-column .elementor-widget-image.depointe-pinned-image {
        position: sticky;
        top: 110px;
        align-self: flex-start;
        width: 100%;
        z-index: 1;
    }
}

@media (max-width: 1024px) {
    body .depointe-section-art {
        display: none;
    }
    .page-id-6022 #why-depointe .depointe-benefits {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .page-id-6022 #nehemiah-impact-framework .depointe-nif-steps {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (prefers-reduced-motion: reduce) {
    body .depointe-icon-section .depointe-section-art svg {
        animation: none;
    }
}

@media (max-width: 768px) {
    .elementor-element-c4d7d89 img {
        width: min(185px, 48vw) !important;
        height: auto;
    }
    .page-id-6022 .elementor-element-215410d2 {
        min-height: 650px;
        padding: 120px 0 60px !important;
    }
    .page-id-6022 .elementor-element-215410d2 .elementor-element-6f204dae {
        width: 100% !important;
        flex-basis: 100%;
    }
    .page-id-6022 .elementor-element-215410d2 .elementor-element-6f204dae > .elementor-widget-wrap {
        padding: 20px 24px;
    }
    .page-id-6022 .elementor-element-215410d2 .elementor-widget-text-editor {
        width: 100% !important;
        max-width: 100% !important;
        overflow-wrap: anywhere;
    }
    .elementor-element-8f3d5e0 .elementor-menu-toggle {
        transform: translateX(-24px);
    }
    .page-id-6022 .elementor-element-1e13372 .elementor-heading-title {
        font-size: clamp(38px, 9vw, 58px) !important;
    }
    .page-id-6022 .elementor-element-215410d2 .elementor-element-9c5a6f5 {
        display: none;
    }
    .page-id-6022 #why-depointe .depointe-benefits,
    .page-id-6022 #nehemiah-impact-framework .depointe-nif-steps {
        grid-template-columns: 1fr;
    }
}
