/* Bridge Business Partners - Custom Evolution Styles */
/* Unique color system with semantic naming */
:root {
    --ocean-depths: #003566;
    --cloud-mist: #e6eaf0;
    --midnight-blue: #002346;
    --success-meadow: #28a745;
    --meadow-light: #d4edda;
    --warning-amber: #ffc107;
    --amber-glow: #fff3cd;
    --action-coral: #dc3545;
    --coral-blush: #f8d7da;
    --neutral-slate: #6c757d;
    --slate-whisper: #f8f9fa;
    --info-sky: #17a2b8;
    --accent-flame: #fd7e14;
    --text-primary: #002346;
    --surface-primary: #e6eaf0;
}

/* Global reset with human-like inconsistencies */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Lato', -apple-system, BlinkMacSystemFont, sans-serif;
    line-height: 1.6;
    color: var(--text-primary);
    font-size: 16px;
    background: var(--cloud-mist);
}

/* Typography with intentional imperfections */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Oswald', Georgia, serif;
    font-weight: 600;
    margin-bottom: 21px; /* Slightly odd spacing for human feel */
    line-height: 1.3;
}

h1 {
    font-size: 3.4rem;
    color: #ffffff;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

h2 {
    font-size: 2.8rem;
    color: var(--ocean-depths);
}

h3 {
    font-size: 2.1rem;
    color: var(--midnight-blue);
}

p {
    margin-bottom: 17px; /* Human-like irregular spacing */
    color: #555566;
    line-height: 1.7;
}

/* Container system with neomorphic elements */
.containerWrapper {
    max-width: 1280px; /* Non-standard breakpoint */
    margin: 0 auto;
    padding: 0 20px;
}

.rowContent {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -13px; /* Slightly off-grid */
}

.fullHeight {
    height: 100vh;
}

.alignCenter {
    align-items: center;
}

.justifyCenter {
    justify-content: center;
}

.textCenter {
    text-align: center;
}

.alignItemsCenter {
    align-items: center;
}

/* Navigation with neomorphic design */
.primaryNavigation {
    background: var(--cloud-mist);
    padding: 17px 0; /* Human-like spacing */
    box-shadow: 0 4px 12px rgba(0, 53, 102, 0.1);
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
}

.navigationPanel {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.brandIdentity img {
    height: 42px;
    width: auto;
}

.navigationToggle {
    display: none;
}

.toggleController {
    display: none;
    cursor: pointer;
    padding: 13px;
    z-index: 2;
}

.menuIcon {
    width: 28px;
    height: 3px;
    background: var(--ocean-depths);
    position: relative;
    transition: all 0.32s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.menuIcon:before,
.menuIcon:after {
    content: '';
    position: absolute;
    width: 28px;
    height: 3px;
    background: var(--ocean-depths);
    transition: all 0.32s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.menuIcon:before {
    top: -7px;
}

.menuIcon:after {
    top: 7px;
}

.navigationContainer {
    display: flex;
    align-items: center;
}

.navigationList {
    display: flex;
    list-style: none;
    gap: 34px; /* Custom spacing */
    margin: 0;
}

.navigationItem {
    position: relative;
}

.navigationLink {
    color: var(--text-primary);
    text-decoration: none;
    font-size: 16px;
    font-weight: 420; /* Slightly unusual weight */
    transition: color 0.28s ease;
    padding: 8px 0;
}

.navigationLink:hover {
    color: var(--ocean-depths);
}

/* Hero section with dramatic styling */
.welcomeZone {
    position: relative;
    width: 100%;
    margin-top: 76px; /* Account for fixed nav */
}

.heroContainer {
    position: relative;
    height: 100vh;
}

.singleHeroSlide {
    position: relative;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.backgroundOverlay {
    position: relative;
    z-index: 1;
}

.backgroundOverlay::after {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background: linear-gradient(135deg, rgba(0, 53, 102, 0.7), rgba(0, 35, 70, 0.5));
}

.contentColumn {
    flex: 0 0 66.67%;
    max-width: 66.67%;
    padding: 0 13px;
}

.heroTextContent h1 {
    margin-bottom: 28px;
    animation: slideInUp 0.8s ease-out;
}

.heroTextContent p {
    color: #ffffff;
    font-size: 18px;
    margin-bottom: 37px;
    animation: slideInUp 1.2s ease-out;
}

.heroButtonGroup {
    display: flex;
    align-items: center;
    gap: 23px;
    flex-wrap: wrap;
    animation: slideInUp 1.6s ease-out;
}

.primaryButton {
    display: inline-block;
    min-width: 190px;
    height: 52px;
    line-height: 48px;
    font-size: 15px;
    font-weight: 520;
    padding: 0 31px;
    text-align: center;
    text-transform: uppercase;
    color: #ffffff;
    background: var(--ocean-depths);
    border: 2px solid var(--ocean-depths);
    text-decoration: none;
    transition: all 0.42s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    /* Neomorphic button effect */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.2),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.primaryButton:hover {
    background: var(--midnight-blue);
    transform: translateY(-2px);
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.3),
            -12px -12px 24px rgba(255, 255, 255, 0.2);
}

.marginRight {
    margin-right: 23px;
}

.heroContactEmail {
    color: #ffffff;
    font-size: 17px;
    font-weight: 420;
    text-decoration: none;
}

.heroContactEmail:hover {
    color: var(--cloud-mist);
}

/* Metrics showcase with neomorphic cards */
.metricsShowcase {
    padding: 87px 0;
    background: var(--surface-primary);
}

.metricColumn {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0 13px;
    margin-bottom: 34px;
}

.metricCard {
    background: var(--cloud-mist);
    padding: 43px 21px;
    /* Neomorphic card design */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.1),
            -12px -12px 24px rgba(255, 255, 255, 0.8);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.metricCard:hover {
    transform: translateY(-5px);
    box-shadow:
            16px 16px 32px rgba(0, 53, 102, 0.15),
            -16px -16px 32px rgba(255, 255, 255, 0.9);
}

.metricIcon {
    margin-bottom: 19px;
}

.metricIcon img {
    width: 48px;
    height: 48px;
    filter: invert(13%) sepia(89%) saturate(1729%) hue-rotate(202deg) brightness(96%) contrast(101%);
}

.metricCard h3 {
    font-size: 2.7rem;
    color: var(--ocean-depths);
    margin-bottom: 13px;
    font-weight: 720;
}

.metricCard p {
    color: var(--neutral-slate);
    margin-bottom: 0;
    font-size: 15px;
}

/* Services showcase section */
.servicesShowcase {
    padding: 89px 0;
    background: #ffffff;
}

.sectionBackground {
    position: relative;
}

.titleColumn {
    flex: 0 0 75%;
    max-width: 75%;
    margin: 0 auto 67px;
    padding: 0 13px;
}

.sectionTitle {
    font-size: 2.9rem;
    margin-bottom: 27px;
    color: var(--ocean-depths);
}

.leadText {
    font-size: 18px;
    color: var(--neutral-slate);
    line-height: 1.8;
}

.serviceColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
    margin-bottom: 43px;
}

.serviceBlock {
    background: var(--cloud-mist);
    padding: 39px 31px;
    height: 100%;
    display: flex;
    align-items: flex-start;
    gap: 23px;
    /* Neomorphic service cards */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.08),
            -8px -8px 16px rgba(255, 255, 255, 0.7);
    transition: all 0.38s ease;
}

.serviceBlock:hover {
    transform: translateY(-3px);
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.12),
            -12px -12px 24px rgba(255, 255, 255, 0.8);
}

.serviceIconContainer {
    background: var(--ocean-depths);
    width: 67px;
    height: 67px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    /* Circular neomorphic icon container */
    box-shadow:
            inset 4px 4px 8px rgba(0, 35, 70, 0.3),
            inset -4px -4px 8px rgba(0, 91, 166, 0.1);
}

.serviceIconContainer img {
    width: 32px;
    height: 32px;
    filter: invert(100%);
}

.serviceDetails h3 {
    font-size: 1.4rem;
    color: var(--midnight-blue);
    margin-bottom: 17px;
    font-weight: 620;
}

.serviceDetails p {
    color: var(--neutral-slate);
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 0;
}

/* Success stories section */
.successStoriesArea {
    padding: 93px 0;
    background: var(--surface-primary);
}

.titleSection {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 13px;
    margin-bottom: 57px;
}

.sectionHeader h3 {
    font-size: 2.6rem;
    color: var(--ocean-depths);
    margin-bottom: 23px;
}

.sectionHeader p {
    font-size: 17px;
    color: var(--neutral-slate);
    line-height: 1.8;
}

.imageColumn {
    flex: 0 0 41.67%;
    max-width: 41.67%;
    padding: 0 13px;
}

.contentThumbnail {
    /* Neomorphic image container */
    box-shadow:
            16px 16px 32px rgba(0, 53, 102, 0.1),
            -16px -16px 32px rgba(255, 255, 255, 0.9);
    overflow: hidden;
}

.contentThumbnail img {
    width: 100%;
    height: auto;
    display: block;
}

.contentColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.offsetColumn {
    margin-left: 8.33%;
}

.caseStudyInfo h4 {
    font-size: 1.6rem;
    color: var(--midnight-blue);
    margin-bottom: 19px;
    margin-top: 31px;
}

.caseStudyInfo h4:first-child {
    margin-top: 0;
}

.caseStudyInfo p {
    margin-bottom: 27px;
}

.caseStudyActions {
    margin-top: 37px;
}

.styledButton {
    display: inline-block;
    font-size: 15px;
    font-weight: 520;
    border: 2px solid var(--ocean-depths);
    text-align: center;
    color: var(--ocean-depths);
    text-decoration: none;
    text-transform: capitalize;
    transition: all 0.42s ease;
    padding: 17px 34px;
    background: transparent;
    /* Neomorphic button styling */
    box-shadow:
            6px 6px 12px rgba(0, 53, 102, 0.1),
            -6px -6px 12px rgba(255, 255, 255, 0.7);
}

.styledButton:hover {
    background: var(--ocean-depths);
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow:
            10px 10px 20px rgba(0, 53, 102, 0.2),
            -10px -10px 20px rgba(255, 255, 255, 0.8);
}

/* CTA section with background */
.ctaMediaArea {
    padding: 127px 0;
    background: linear-gradient(135deg, var(--ocean-depths), var(--midnight-blue));
    position: relative;
}

.backgroundImage {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.backdropOverlay {
    position: relative;
    z-index: 1;
}

.backdropOverlay::before {
    position: absolute;
    content: "";
    background: rgba(0, 53, 102, 0.8);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.fullColumn {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 13px;
}

.ctaContent span {
    font-size: 16px;
    color: #ffffff;
    display: block;
}

.ctaContent h3 {
    font-size: 3.1rem;
    color: #ffffff;
    line-height: 1.2;
    font-weight: 620;
    text-transform: uppercase;
    margin: 23px 0;
}

.ctaContent span:last-of-type {
    font-size: 21px;
    font-weight: 520;
    margin-bottom: 47px;
}

.ctaButton {
    width: 89px;
    height: 89px;
    background: var(--action-coral);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.35s ease;
    /* Circular neomorphic CTA button */
    box-shadow:
            12px 12px 24px rgba(220, 53, 69, 0.3),
            -12px -12px 24px rgba(255, 255, 255, 0.1);
}

.ctaButton:hover {
    background: var(--accent-flame);
    transform: scale(1.1);
    box-shadow:
            16px 16px 32px rgba(253, 126, 20, 0.4),
            -16px -16px 32px rgba(255, 255, 255, 0.2);
}

.ctaButton img {
    width: 28px;
    height: 28px;
    filter: invert(100%);
}

/* Footer section */
.businessFooter {
    background: var(--midnight-blue);
    padding-top: 73px;
    color: #ffffff;
}

.footerColumn {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0 13px;
    margin-bottom: 31px;
}

.footerBrandSection .footerLogo {
    margin-bottom: 29px;
}

.footerBrandSection .footerLogo img {
    height: 128px;
    filter: brightness(0) invert(1);
}

.footerBrandSection p {
    color: #b2b7c2;
    margin-bottom: 31px;
    font-size: 15px;
}

.socialConnections h6 {
    color: #ffffff;
    font-weight: 520;
    text-transform: uppercase;
    margin-bottom: 19px;
    font-size: 14px;
}

.socialConnections a {
    display: inline-block;
    margin-right: 17px;
    padding: 8px;
    transition: transform 0.3s ease;
}

.socialConnections a:hover {
    transform: translateY(-2px);
}

.socialConnections img {
    width: 21px;
    height: 21px;
    filter: invert(100%);
}

.footerWidget h5 {
    font-size: 18px;
    font-weight: 620;
    color: #ffffff;
    text-transform: uppercase;
    margin-bottom: 29px;
}

.navigationMenu {
    list-style: none;
}

.navigationMenu li {
    margin-bottom: 17px;
}

.navigationMenu a {
    color: #b2b7c2;
    text-decoration: none;
    font-size: 15px;
    transition: color 0.3s ease;
}

.navigationMenu a:hover {
    color: #ffffff;
}

.contactDetails {
    list-style: none;
}

.contactDetails li {
    display: flex;
    align-items: flex-start;
    margin-bottom: 19px;
    font-size: 15px;
    color: #b2b7c2;
}

.contactDetails img {
    width: 18px;
    height: 18px;
    margin-right: 12px;
    margin-top: 2px;
    filter: invert(71%) sepia(6%) saturate(340%) hue-rotate(202deg) brightness(95%) contrast(85%);
    flex-shrink: 0;
}

.contactDetails span {
    color: #ffffff;
    font-weight: 520;
    margin-right: 8px;
    min-width: 48px;
}

.copyrightSection {
    background: rgba(0, 35, 70, 0.8);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 23px 0;
    margin-top: 43px;
}

.copyrightText {
    font-size: 14px;
    color: #b2b7c2;
}

/* Animation keyframes */
@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Mobile responsive design - custom breakpoints */
@media screen and (max-width: 890px) {
    .toggleController {
        display: block;
    }

    .navigationContainer {
        position: fixed;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100vh;
        background: #ffffff;
        transition: all 0.32s ease;
        padding-top: 87px;
        flex-direction: column;
        align-items: center;
    }

    .navigationList {
        flex-direction: column;
        align-items: center;
        gap: 23px;
    }

    .navigationItem {
        width: 100%;
        text-align: center;
    }

    .navigationLink {
        display: inline-block;
        padding: 13px 21px;
        font-size: 17px;
    }

    .navigationToggle:checked ~ .navigationContainer {
        left: 0;
    }

    .navigationToggle:checked ~ .toggleController .menuIcon {
        background: transparent;
    }

    .navigationToggle:checked ~ .toggleController .menuIcon:before {
        transform: rotate(45deg);
        top: 0;
    }

    .navigationToggle:checked ~ .toggleController .menuIcon:after {
        transform: rotate(-45deg);
        top: 0;
    }

    h1 {
        font-size: 2.3rem;
    }

    .sectionTitle {
        font-size: 2.1rem;
    }

    .metricColumn,
    .serviceColumn,
    .footerColumn {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 31px;
    }

    .contentColumn,
    .imageColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .offsetColumn {
        margin-left: 0;
        margin-top: 34px;
    }

    .heroButtonGroup {
        flex-direction: column;
        align-items: flex-start;
        gap: 19px;
    }

    .marginRight {
        margin-right: 0;
    }

    .serviceBlock {
        flex-direction: column;
        text-align: center;
        padding: 31px 23px;
    }

    .ctaContent h3 {
        font-size: 2.1rem;
    }

    .metricsShowcase,
    .servicesShowcase,
    .successStoriesArea {
        padding: 57px 0;
    }

    .ctaMediaArea {
        padding: 73px 0;
    }
}

@media screen and (max-width: 640px) {
    .containerWrapper {
        padding: 0 16px;
    }

    h1 {
        font-size: 1.9rem;
    }

    .heroTextContent p {
        font-size: 16px;
    }

    .metricCard {
        padding: 31px 17px;
    }

    .serviceBlock {
        padding: 23px 17px;
    }

    .primaryButton {
        min-width: 160px;
        height: 47px;
        line-height: 43px;
        font-size: 14px;
        padding: 0 23px;
    }
}

/* High-resolution displays */
@media screen and (min-width: 1600px) {
    .containerWrapper {
        max-width: 1520px;
    }

    h1 {
        font-size: 4.2rem;
    }

    .sectionTitle {
        font-size: 3.4rem;
    }

    .metricsShowcase,
    .servicesShowcase,
    .successStoriesArea {
        padding: 110px 0;
    }
}

/* Mission Text Section Styles */
.missionTextArea {
    padding: 93px 0;
    background-color: #f9f9f9;
}

.missionContentHeader {
    margin-bottom: 34px;
}

.missionContentHeader h1 {
    font-size: 3.2rem;
    line-height: 1.2em;
    margin-bottom: 0;
    margin-top: 0;
    font-weight: 720;
    color: var(--ocean-depths);
    text-align: center;
}

.missionTitle {
    font-size: 2.7rem;
    margin-bottom: 27px;
    color: var(--ocean-depths);
    text-align: center;
}

.missionSectionContent {
    margin-top: 37px;
    max-width: 890px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 23px;
}

.missionSectionContent p {
    margin-bottom: 23px;
    color: #6a7175;
    font-size: 17px;
    font-weight: 420;
    line-height: 28px;
    text-align: center;
}

/* Philosophy Text+Image Section Styles */
.philosophyImageSection {
    padding: 89px 0;
    background: #ffffff;
}

.philosophyTextColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.philosophyTextBlock {
    padding-right: 31px;
}

.philosophySectionHeading {
    font-size: 2.1rem;
    font-weight: 720;
    color: var(--midnight-blue);
    margin-bottom: 27px;
}

.philosophySectionText {
    font-size: 17px;
    line-height: 1.7;
    color: #666666;
    margin-bottom: 19px;
}

.philosophyImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.philosophyImageBlock {
    overflow: hidden;
    /* Neomorphic image styling */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.1),
            -12px -12px 24px rgba(255, 255, 255, 0.8);
    transition: transform 0.42s ease;
}

.philosophyImageBlock img {
    width: 100%;
    height: auto;
    transition: transform 0.45s ease;
}

.philosophyImageBlock:hover {
    transform: translateY(-3px);
}

.philosophyImageBlock:hover img {
    transform: scale(1.06);
}

.philosophyActionButton {
    display: inline-block;
    border: 2px solid var(--ocean-depths);
    font-weight: 620;
    padding: 14px 37px;
    background: var(--ocean-depths);
    color: #ffffff;
    margin-top: 19px;
    transition: all 0.52s ease;
    text-decoration: none;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.2),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.philosophyActionButton:hover {
    border-color: var(--ocean-depths);
    background: transparent;
    color: var(--ocean-depths);
    transform: translateY(-2px);
}

/* Values Features Section Styles */
.valuesShowcaseSection {
    padding: 2.9em 0;
    background: var(--cloud-mist);
}

.valuesHeaderRow {
    margin-bottom: 47px;
}

.valuesTextColumn {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    padding: 0 13px;
}

.valuesImageFluid {
    max-width: 100%;
    height: auto;
}

.valuesWidthQuarter {
    width: 23%;
}

.valuesMarginBottom {
    margin-bottom: 19px !important;
}

.valuesFeatureTitle {
    font-size: 1.47rem;
    color: var(--midnight-blue);
    margin-bottom: 17px;
    font-weight: 620;
}

.valuesTextColumn p {
    color: var(--neutral-slate);
    font-size: 15px;
    line-height: 1.7;
}

.valuesTextColumn img {
    filter: invert(13%) sepia(89%) saturate(1729%) hue-rotate(202deg) brightness(96%) contrast(101%);
}

/* Approach Simple Text Section Styles */
.approachTextSection {
    padding: 7.8em 0;
    position: relative;
}

.approachNoPadding {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.approachBackground {
    background: #f6f7fc !important;
}

.approachColumn {
    flex: 0 0 83.33%;
    max-width: 83.33%;
    margin: 0 auto;
    padding: 0 13px;
}

.approachHeadingSection {

}

.approachPadding {
    padding: 47px 0;
}

.approachSubheading {
    font-size: 14px;
    display: block;
    font-weight: 720;
    color: var(--accent-flame);
    text-transform: uppercase;
    letter-spacing: 2.3px;
    margin-bottom: 21px;
}

.approachHeadingSection h2 {
    font-size: 2.3rem;
    font-weight: 720;
    color: var(--ocean-depths);
    margin-bottom: 29px;
}

.approachMarginBottom {
    margin-bottom: 31px !important;
}

.approachMarginTop {
    margin-top: 37px;
}

.approachButton {
    padding: 15px 19px;
    cursor: pointer;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    font-weight: 620;
    text-decoration: none;
    transition: all 0.38s ease;
    /* Neomorphic button styling */
    box-shadow:
            6px 6px 12px rgba(0, 53, 102, 0.1),
            -6px -6px 12px rgba(255, 255, 255, 0.7);
}

.approachButton:hover,
.approachButton:active,
.approachButton:focus {
    outline: none;
    transform: translateY(-2px);
}

.approachButtonPrimary {
    background: var(--accent-flame);
    border: 2px solid var(--accent-flame);
    color: #ffffff;
}

.approachButtonPrimary:hover {
    border: 2px solid var(--accent-flame);
    background: transparent;
    color: var(--accent-flame);
    box-shadow:
            10px 10px 20px rgba(253, 126, 20, 0.2),
            -10px -10px 20px rgba(255, 255, 255, 0.8);
}

/* Foundation Cards Section Styles */
.foundationCardsSection {
    background: var(--midnight-blue);
}

.foundationTitle {
    padding-top: 69px;
    padding-bottom: 71px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.foundationTitleColumn {
    flex: 0 0 75%;
    max-width: 75%;
    margin: 0 auto;
}

.foundationSectionTitle h2 {
    color: #ffffff;
    font-size: 2.8rem;
    font-weight: 620;
    margin-bottom: 23px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.foundationSectionTitle p {
    color: #ffffff;
    margin-bottom: 0;
    font-size: 16px;
    line-height: 1.7;
}

.foundationPadding {
    padding-left: 47px;
    padding-right: 47px;
}

.foundationContainerFluid {
    width: 100%;
    padding: 0;
}

.foundationCardColumn {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0;
}

.foundationCardItem {
    height: 520px;
    padding-left: 69px;
    padding-top: 180px;
    padding-right: 41px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    transition: all 0.32s ease;
    position: relative;
}

.foundationCardItem:hover {
    transform: translateY(-7px);
    /* Enhanced shadow on hover */
    box-shadow:
            0 16px 32px rgba(0, 35, 70, 0.3),
            0 8px 16px rgba(0, 35, 70, 0.2);
}

.foundationCardItem:hover::before {
    opacity: 1;
}

.foundationCardItem::before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 7px;
    background: var(--action-coral);
    content: "";
    opacity: 0;
    transition: all 0.32s;
}

.foundationCardItem h4 {
    font-weight: 620;
    color: #ffffff;
    text-transform: uppercase;
    margin-bottom: 24px;
    font-size: 19px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.foundationCardItem p {
    color: #ffffff;
    margin-bottom: 43px;
    line-height: 1.6;
    font-size: 15px;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.foundationPrimaryButton {
    display: inline-block;
    font-size: 14px;
    font-weight: 620;
    padding: 0 16px;
    color: #ffffff;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    width: 175px;
    height: 51px;
    border-left: 2px solid var(--accent-flame);
    border-right: 2px solid var(--action-coral);
    line-height: 47px;
    position: relative;
    z-index: 1;
    background: linear-gradient(to right, var(--action-coral), var(--accent-flame));
    transition: all 0.42s ease;
    text-decoration: none;
}

.foundationPrimaryButton::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background: linear-gradient(to right, var(--accent-flame), var(--action-coral));
    opacity: 0;
    transition: opacity 0.52s ease;
}

.foundationPrimaryButton:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(253, 126, 20, 0.4);
}

.foundationPrimaryButton:hover::after {
    opacity: 1;
}

.foundationSetBg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* Mobile responsiveness for About page */
@media screen and (max-width: 890px) {
    .missionContentHeader h1 {
        font-size: 2.1rem;
    }

    .missionTitle {
        font-size: 1.9rem;
    }

    .missionTextArea {
        padding: 57px 0;
    }

    .philosophyImageSection {
        padding: 57px 0;
    }

    .philosophyTextColumn,
    .philosophyImageColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .philosophyTextBlock {
        padding-right: 0;
        margin-bottom: 31px;
    }

    .valuesTextColumn,
    .foundationCardColumn {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 31px;
    }

    .foundationCardItem {
        height: 420px;
        padding-left: 31px;
        padding-top: 120px;
        padding-right: 31px;
        text-align: center;
    }

    .foundationPadding {
        padding-left: 23px;
        padding-right: 23px;
    }

    .approachColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .approachTextSection {
        padding: 57px 0;
    }
}

@media screen and (max-width: 640px) {
    .missionSectionContent {
        padding: 0 17px;
    }

    .valuesWidthQuarter {
        width: 34%;
    }

    .foundationSectionTitle h2 {
        font-size: 2.1rem;
    }

    .foundationCardItem {
        padding-left: 23px;
        padding-right: 23px;
    }

    .foundationPrimaryButton {
        width: 160px;
        height: 47px;
        line-height: 43px;
    }
}

/* Затемнение фонового изображения в заголовке секции */
.foundationTitle.foundationSetBg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.4); /* 40% затемнение */
    z-index: 1;
}

.foundationTitle {
    position: relative;
}

.foundationTitle .containerWrapper {
    position: relative;
    z-index: 2;
}

/* Затемнение фоновых изображений в карточках */
.foundationContainerFluid .foundationCardItem.foundationSetBg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.4); /* 40% затемнение */
    z-index: 1;
}

.foundationContainerFluid .foundationCardItem {
    position: relative;
}

.foundationContainerFluid .foundationCardItem h4,
.foundationContainerFluid .foundationCardItem p,
.foundationContainerFluid .foundationCardItem .foundationPrimaryButton {
    position: relative;
    z-index: 2;
}

/* Эффект при наведении */
.foundationContainerFluid .foundationCardItem.foundationSetBg:hover::before {
    background-color: rgba(0, 0, 0, 0.6); /* 60% затемнение при наведении */
    transition: background-color 0.3s ease;
}

/* Strategic Services Section Styles */
.strategicServicesSection {
    padding: 7.8em 0;
    position: relative;
    background: #ffffff;
}

.strategicHeadingColumn {
    flex: 0 0 66.67%;
    max-width: 66.67%;
    margin: 0 auto;
    padding: 0 13px;
    margin-bottom: 47px;
}

.strategicSubheading {
    font-size: 14px;
    display: block;
    font-weight: 780;
    color: var(--accent-flame);
    text-transform: uppercase;
    letter-spacing: 2.3px;
    margin-bottom: 19px;
}

.strategicHeadingColumn h2 {
    font-size: 2.3rem;
    font-weight: 780;
    color: var(--ocean-depths);
}

.strategicServiceColumn {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    padding: 0 13px;
    display: block;
    width: 100%;
    position: relative;
    transition: all 0.37s ease;
}

.strategicBlockFlex {
    margin-bottom: 24px;
    display: flex;
    align-items: flex-start;
    padding: 23px;
    background: var(--cloud-mist);
    /* Neomorphic card styling */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.08),
            -8px -8px 16px rgba(255, 255, 255, 0.7);
    transition: all 0.39s ease;
}

.strategicBlockFlex:hover {
    transform: translateY(-3px);
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.12),
            -12px -12px 24px rgba(255, 255, 255, 0.8);
}

.strategicIconContainer {
    line-height: 1.5;
    position: relative;
    width: 79px;
    height: 79px;
    margin: 0 auto;
    z-index: 0;
    background: var(--ocean-depths);
    /* Neomorphic icon container */
    box-shadow:
            inset 4px 4px 8px rgba(0, 35, 70, 0.3),
            inset -4px -4px 8px rgba(0, 91, 166, 0.1);
    display: flex;
    flex-shrink: 0;
}

.strategicIconContainer img {
    width: 34px;
    height: 34px;
    filter: invert(100%);
}

.strategicMediaBody {
    flex: 1;
}

.strategicPaddingLeft {
    padding-left: 19px;
}

.strategicMediaBody h3 {
    font-weight: 780;
    font-size: 17px;
    color: var(--midnight-blue);
    margin-bottom: 13px;
}

.strategicMediaBody p {
    color: var(--neutral-slate);
    font-size: 15px;
    margin-bottom: 17px;
}

.strategicButtonCustom {
    font-size: 14px;
    font-weight: 570;
    text-transform: uppercase;
    color: var(--ocean-depths);
    border-bottom: 2px solid #e8e8e8;
    text-decoration: none;
    transition: all 0.35s ease;
}

.strategicButtonCustom:hover {
    color: var(--midnight-blue);
    border-color: var(--midnight-blue);
}

/* Operational Services Background Section Styles */
.operationalServicesArea {
    padding: 7.9em 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}

.operationalServicesArea > .containerWrapper {
    z-index: 2;
}

.operationalServicesArea::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background-color: rgba(0, 53, 102, 0.74);
}

.operationalTitleColumn {
    flex: 0 0 75%;
    max-width: 75%;
    margin: 0 auto;
    margin-bottom: 53px;
}

.operationalScissors {
    position: relative;
    padding-bottom: 34px;
    margin-bottom: 34px;
    font-size: 2.7rem;
    color: var(--accent-flame);
}

.operationalScissors::after {
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    font-size: 21px;
    content: "✧";
    position: absolute;
    color: var(--cloud-mist);
}

.operationalPrimaryIcon::after {
    color: var(--accent-flame);
}

.operationalTextWhite {
    color: #ffffff !important;
}

.operationalLeadText {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 0;
}

.operationalColumn {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0 13px;
    margin-bottom: 37px;
}

.operationalServiceBlock {
    text-align: center;
    padding: 31px 23px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(8px);
    transition: all 0.34s ease;
    height: 100%;
}

.operationalServiceBlock:hover {
    transform: translateY(-7px);
    background: rgba(255, 255, 255, 0.15);
    box-shadow:
            0 16px 32px rgba(0, 35, 70, 0.2),
            0 8px 16px rgba(0, 35, 70, 0.1);
}

.operationalServiceBlock:hover::before {
    opacity: 1;
}

.operationalServiceBlock::before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 5px;
    background: var(--action-coral);
    content: "";
    opacity: 0;
    transition: all 0.34s;
}

.operationalServiceIcon {
    background: var(--accent-flame);
    width: 89px;
    height: 89px;
    margin-bottom: 23px;
    position: relative;
    display: inline-block;
    border: 3px solid var(--accent-flame);
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.operationalServiceIcon img {
    width: 37px;
    height: 37px;
    filter: invert(100%);
}

.operationalServiceContent h3,
.operationalServiceContent p {
    color: #ffffff;
}

.operationalServiceContent h3 {
    margin-bottom: 17px;
    font-size: 18px;
    font-weight: 620;
}

.operationalServiceContent p {
    font-size: 14px;
    line-height: 1.6;
}

/* Financial Text+Image Section Styles */
.financialTextImageSection {
    background: var(--surface-primary);
}

.financialSectionPadding {
    padding: 89px 0;
}

.financialTextColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.financialImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.financialTextImageContent h2 {
    color: var(--ocean-depths);
    font-size: 2.4rem;
    font-weight: 620;
    margin-bottom: 23px;
}

.financialLead {
    color: var(--neutral-slate);
    font-size: 18px;
    font-weight: 420;
    margin-bottom: 23px;
    font-style: italic;
}

.financialTextImageContent p {
    color: var(--neutral-slate);
    font-size: 16px;
    font-weight: 420;
    line-height: 1.8;
    margin-bottom: 23px;
}

.financialFeatureList {
    list-style: none;
    padding: 0;
    margin: 31px 0;
}

.financialFeatureList li {
    color: var(--neutral-slate);
    font-size: 16px;
    font-weight: 420;
    margin-bottom: 17px;
    position: relative;
    padding-left: 34px;
    display: flex;
    align-items: center;
}

.financialFeatureList li img {
    width: 18px;
    height: 18px;
    position: absolute;
    left: 0;
    top: 3px;
    filter: invert(41%) sepia(89%) saturate(1234%) hue-rotate(97deg) brightness(95%) contrast(89%);
}

.financialTextImageImg {
    text-align: center;
}

.financialImgFluid {
    max-width: 100%;
    height: auto;
    /* Neomorphic image styling */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.1),
            -12px -12px 24px rgba(255, 255, 255, 0.9);
    transition: transform 0.42s ease;
}

.financialTextImageImg:hover .financialImgFluid {
    transform: scale(1.03);
}

.financialTemplateBtn {
    color: #ffffff !important;
    background: var(--ocean-depths);
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 620;
    display: inline-block;
    padding: 17px 32px !important;
    transition: all 0.52s;
    text-decoration: none;
    margin-top: 23px;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.2),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.financialTemplateBtn:hover {
    background: var(--midnight-blue);
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow:
            12px 12px 24px rgba(0, 35, 70, 0.3),
            -12px -12px 24px rgba(255, 255, 255, 0.2);
}

/* Investment Text+Image Reverse Section Styles */
.investmentTextImageSectionReverse {
    background: #ffffff;
}

.investmentSectionPadding {
    padding: 91px 0;
}

.investmentTextColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.investmentImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.investmentTextImageContent h2 {
    color: var(--ocean-depths);
    font-size: 2.4rem;
    font-weight: 620;
    margin-bottom: 23px;
}

.investmentLead {
    color: var(--neutral-slate);
    font-size: 18px;
    font-weight: 420;
    margin-bottom: 23px;
    font-style: italic;
}

.investmentTextImageContent p {
    color: var(--neutral-slate);
    font-size: 16px;
    font-weight: 420;
    line-height: 1.8;
    margin-bottom: 23px;
}

.investmentStatsWrap {
    display: flex;
    margin: 31px 0;
    gap: 43px;
}

.investmentSingleStat h3 {
    color: var(--accent-flame);
    font-size: 2.9rem;
    font-weight: 720;
    margin-bottom: 11px;
}

.investmentSingleStat p {
    color: var(--neutral-slate);
    font-size: 16px;
    font-weight: 620;
    text-transform: uppercase;
    margin: 0;
}

.investmentTextImageImg {
    text-align: center;
}

.investmentImgFluid {
    max-width: 100%;
    height: auto;
    /* Neomorphic image styling */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.1),
            -12px -12px 24px rgba(255, 255, 255, 0.9);
    transition: transform 0.42s ease;
}

.investmentTextImageImg:hover .investmentImgFluid {
    transform: scale(1.03);
}

.investmentSecondaryBtn {
    color: var(--ocean-depths);
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 620;
    display: inline-block;
    transition: all 0.52s;
    text-decoration: none;
    margin-top: 23px;
}

.investmentSecondaryBtn:hover {
    color: var(--accent-flame);
    text-decoration: none;
}

.investmentSecondaryBtn:hover .investmentArrow {
    margin-left: 17px;
    color: var(--accent-flame);
}

.investmentArrow {
    font-size: 14px;
    margin-left: 12px;
    transition: 0.3s;
}

/* Services CTA Section Styles */
.servicesCtaSection {
    padding: 7.3em 0;
    position: relative;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.servicesOverlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 53, 102, 0.8);
}

.servicesCtaColumn {
    flex: 0 0 66.67%;
    max-width: 66.67%;
    margin: 0 auto;
    padding: 0 13px;
}

.servicesCtaContent {
    position: relative;
    z-index: 2;
}

.servicesSubheading {
    font-size: 16px;
    display: block;
    margin-bottom: 19px;
    color: var(--cloud-mist);
    line-height: 1;
    font-weight: 420;
}

.servicesCtaContent h2 {
    font-size: 2.7rem;
    font-weight: 720;
    color: #ffffff;
    text-transform: uppercase;
    margin-bottom: 23px;
}

.servicesCtaContent p {
    color: #ffffff;
    margin-bottom: 31px;
    font-size: 17px;
    line-height: 1.7;
}

.servicesCtaButtons {
    margin-top: 32px;
}

.servicesButtonPrimary {
    background: var(--accent-flame);
    border: 2px solid var(--accent-flame);
    color: #ffffff;
    padding: 14px 27px;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    display: inline-block;
    transition: all 0.52s ease;
    font-weight: 620;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(253, 126, 20, 0.3),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.servicesButtonPrimary:hover {
    border: 2px solid var(--accent-flame);
    background: transparent;
    color: var(--accent-flame);
    transform: translateY(-2px);
}

.servicesMarginRight {
    margin-right: 19px;
}

.servicesButtonWhite {
    border-color: rgba(255, 255, 255, 0.8);
    background: none;
    border-width: 2px;
    color: #ffffff;
    padding: 14px 27px;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    display: inline-block;
    transition: all 0.52s ease;
    font-weight: 620;
}

.servicesButtonOutlineWhite {
    border-style: solid;
}

.servicesButtonWhite:hover {
    background: var(--accent-flame);
    border-color: var(--accent-flame);
    color: #ffffff;
    transform: translateY(-2px);
}

/* Mobile responsiveness for Services page */
@media screen and (max-width: 890px) {
    .strategicServicesSection,
    .operationalServicesArea,
    .financialSectionPadding,
    .investmentSectionPadding,
    .servicesCtaSection {
        padding: 57px 0;
    }

    .strategicServiceColumn,
    .operationalColumn {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 31px;
    }

    .financialTextColumn,
    .financialImageColumn,
    .investmentTextColumn,
    .investmentImageColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .financialTextImageContent,
    .investmentTextImageContent {
        margin-bottom: 31px;
    }

    .investmentStatsWrap {
        flex-direction: column;
        gap: 23px;
    }

    .servicesCtaColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .servicesCtaContent h2 {
        font-size: 2.1rem;
    }

    .servicesCtaButtons {
        text-align: center;
    }

    .servicesMarginRight {
        margin-right: 0;
        margin-bottom: 17px;
        display: block;
    }
}

@media screen and (max-width: 640px) {
    .strategicHeadingColumn h2,
    .operationalScissors {
        font-size: 1.9rem;
    }

    .financialTextImageContent h2,
    .investmentTextImageContent h2 {
        font-size: 1.8rem;
    }

    .strategicBlockFlex {
        flex-direction: column;
        text-align: center;
        padding: 19px;
    }

    .strategicPaddingLeft {
        padding-left: 0;
        margin-top: 17px;
    }

    .operationalServiceBlock {
        padding: 23px 17px;
    }

    .investmentSingleStat h3 {
        font-size: 2.3rem;
    }

    .servicesButtonPrimary,
    .servicesButtonWhite {
        width: 100%;
        margin-bottom: 13px;
    }
}

/* Deep Expertise Text Section Styles */
.expertiseTextArea {
    padding: 8.1em 0;
    position: relative;
}

.industryNoPadding {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.industryBackground {
    background: #f6f7fc !important;
}

.expertiseColumn {
    flex: 0 0 87%;
    max-width: 87%;
    margin: 0 auto;
    padding: 0 13px;
}

.expertiseHeadingSection {

}

.expertisePadding {
    padding: 51px 0;
}

.expertiseSubheading {
    font-size: 15px;
    display: block;
    font-weight: 750;
    color: var(--accent-flame);
    text-transform: uppercase;
    letter-spacing: 2.4px;
    margin-bottom: 22px;
}

.expertiseHeadingSection h2 {
    font-size: 2.5rem;
    font-weight: 750;
    color: var(--ocean-depths);
    margin-bottom: 31px;
}

.expertiseMarginBottom {
    margin-bottom: 33px !important;
}

.expertiseHeadingSection p {
    color: var(--neutral-slate);
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 24px;
}

.expertiseMarginTop {
    margin-top: 39px;
}

.expertiseButton {
    padding: 16px 21px;
    cursor: pointer;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1.3px;
    font-weight: 640;
    text-decoration: none;
    transition: all 0.41s ease;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.12),
            -8px -8px 16px rgba(255, 255, 255, 0.8);
}

.expertiseButton:hover,
.expertiseButton:active,
.expertiseButton:focus {
    outline: none;
    transform: translateY(-3px);
}

.expertiseButtonPrimary {
    background: var(--ocean-depths);
    border: 2px solid var(--ocean-depths);
    color: #ffffff;
}

.expertiseButtonPrimary:hover {
    border: 2px solid var(--ocean-depths);
    background: transparent;
    color: var(--ocean-depths);
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.18),
            -12px -12px 24px rgba(255, 255, 255, 0.9);
}

/* Industry Challenges Cards Section Styles */
.challengesCardsSection {
    background: var(--midnight-blue);
}

.challengesTitle {
    padding-top: 71px;
    padding-bottom: 73px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
}

.challengesTitle::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: rgba(0, 53, 102, 0.85);
}

.challengesTitleColumn {
    flex: 0 0 79%;
    max-width: 79%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

.challengesSectionTitle h2 {
    color: #ffffff;
    font-size: 2.9rem;
    font-weight: 640;
    margin-bottom: 25px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.challengesSectionTitle p {
    color: #ffffff;
    margin-bottom: 0;
    font-size: 17px;
    line-height: 1.8;
}

.challengesPadding {
    padding-left: 49px;
    padding-right: 49px;
}

.challengesContainerFluid {
    width: 100%;
    padding: 0;
}

.challengesCardColumn {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0;
}

.challengesCardItem {
    height: 540px;
    padding-left: 71px;
    padding-top: 190px;
    padding-right: 43px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    transition: all 0.35s ease;
    position: relative;
}

.challengesCardItem::after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: linear-gradient(135deg, rgba(0, 53, 102, 0.8), rgba(0, 35, 70, 0.6));
    z-index: 1;
}

.challengesCardItem > * {
    position: relative;
    z-index: 2;
}

.challengesCardItem:hover {
    transform: translateY(-9px);
    /* Enhanced shadow on hover */
    box-shadow:
            0 18px 36px rgba(0, 35, 70, 0.4),
            0 9px 18px rgba(0, 35, 70, 0.3);
}

.challengesCardItem:hover::before {
    opacity: 1;
}

.challengesCardItem::before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 8px;
    background: var(--accent-flame);
    content: "";
    opacity: 0;
    transition: all 0.35s;
    z-index: 3;
}

.challengesCardItem h4 {
    font-weight: 640;
    color: #ffffff;
    text-transform: uppercase;
    margin-bottom: 26px;
    font-size: 20px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
}

.challengesCardItem p {
    color: #ffffff;
    margin-bottom: 45px;
    line-height: 1.7;
    font-size: 15px;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6);
}

.challengesPrimaryButton {
    display: inline-block;
    font-size: 15px;
    font-weight: 640;
    padding: 0 18px;
    color: #ffffff;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    width: 180px;
    height: 53px;
    border-left: 2px solid var(--accent-flame);
    border-right: 2px solid var(--action-coral);
    line-height: 49px;
    position: relative;
    z-index: 1;
    background: linear-gradient(to right, var(--action-coral), var(--accent-flame));
    transition: all 0.45s ease;
    text-decoration: none;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(253, 126, 20, 0.3),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.challengesPrimaryButton::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background: linear-gradient(to right, var(--accent-flame), var(--action-coral));
    opacity: 0;
    transition: opacity 0.55s ease;
}

.challengesPrimaryButton:hover {
    transform: translateY(-3px);
    box-shadow:
            12px 12px 24px rgba(253, 126, 20, 0.5),
            -12px -12px 24px rgba(255, 255, 255, 0.2);
}

.challengesPrimaryButton:hover::after {
    opacity: 1;
}

.challengesSetBg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* Solutions Text+Image Section Styles */
.solutionsTextImageSection {
    background: #ffffff;
}

.solutionsSectionPadding {
    padding: 93px 0;
}

.solutionsTextColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.solutionsImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.solutionsTextBlock {
    padding-right: 33px;
}

.solutionsSectionHeading {
    font-size: 2.2rem;
    font-weight: 750;
    color: var(--midnight-blue);
    margin-bottom: 29px;
}

.solutionsSectionText {
    font-size: 17px;
    line-height: 1.8;
    color: var(--neutral-slate);
    margin-bottom: 21px;
}

.solutionsImageBlock {
    overflow: hidden;
    /* Neomorphic image styling */
    box-shadow:
            14px 14px 28px rgba(0, 53, 102, 0.12),
            -14px -14px 28px rgba(255, 255, 255, 0.9);
    transition: transform 0.45s ease;
}

.solutionsImageBlock img {
    width: 100%;
    height: auto;
    transition: transform 0.48s ease;
}

.solutionsImageBlock:hover {
    transform: translateY(-4px);
}

.solutionsImageBlock:hover img {
    transform: scale(1.07);
}

.solutionsActionButton {
    display: inline-block;
    border: 2px solid var(--ocean-depths);
    font-weight: 640;
    padding: 16px 39px;
    background: var(--ocean-depths);
    color: #ffffff;
    margin-top: 21px;
    transition: all 0.55s ease;
    text-decoration: none;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.2),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.solutionsActionButton:hover {
    border-color: var(--ocean-depths);
    background: transparent;
    color: var(--ocean-depths);
    transform: translateY(-3px);
}

/* Regulatory Features Section Styles */
.regulatoryShowcaseSection {
    padding: 3.1em 0;
    background: var(--cloud-mist);
}

.regulatoryHeaderRow {
    margin-bottom: 49px;
}

.regulatoryTextColumn {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    padding: 0 13px;
}

.regulatoryImageFluid {
    max-width: 100%;
    height: auto;
}

.regulatoryWidthQuarter {
    width: 25%;
}

.regulatoryMarginBottom {
    margin-bottom: 21px !important;
}

.regulatoryFeatureTitle {
    font-size: 1.5rem;
    color: var(--midnight-blue);
    margin-bottom: 19px;
    font-weight: 640;
}

.regulatoryTextColumn p {
    color: var(--neutral-slate);
    font-size: 15px;
    line-height: 1.8;
}

.regulatoryTextColumn img {
    filter: invert(13%) sepia(89%) saturate(1729%) hue-rotate(202deg) brightness(96%) contrast(101%);
}

/* Industry Expertise Alternative CTA Section Styles */
.industryCtaStatsSection {
    padding: 7.5em 0;
    position: relative;
    background: var(--surface-primary);
}

.industryCtaTextColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.industryCtaImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.industryCtaSubheading {
    font-size: 14px;
    display: block;
    font-weight: 750;
    color: var(--accent-flame);
    text-transform: uppercase;
    letter-spacing: 2.3px;
    margin-bottom: 21px;
}

.industryCtaTextContent h2 {
    font-size: 2.4rem;
    font-weight: 750;
    color: var(--ocean-depths);
    margin-bottom: 25px;
}

.industryCtaTextContent p {
    color: var(--neutral-slate);
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 25px;
}

.industryCtaStats {
    margin: 32px 0;
}

.industryFlexDisplay {
    display: flex;
}

.industryStatItem {
    text-align: center;
}

.industryMarginRight {
    margin-right: 43px;
}

.industryStatNumber {
    color: var(--accent-flame);
    font-size: 3.1rem;
    font-weight: 750;
    margin-bottom: 12px;
    line-height: 1;
}

.industryStatLabel {
    font-size: 15px;
    color: var(--neutral-slate);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 0;
    font-weight: 620;
}

.industryMarginTop {
    margin-top: 39px !important;
}

.industryButtonPrimary {
    background: var(--ocean-depths);
    border: 2px solid var(--ocean-depths);
    color: #ffffff;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 640;
    text-decoration: none;
    transition: all 0.55s ease;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.2),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.industryPaddingX {
    padding-left: 1.7rem !important;
    padding-right: 1.7rem !important;
}

.industryPaddingY {
    padding-top: 1.1rem !important;
    padding-bottom: 1.1rem !important;
}

.industryButtonPrimary:hover {
    border: 2px solid var(--ocean-depths);
    background: transparent;
    color: var(--ocean-depths);
    transform: translateY(-3px);
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.3),
            -12px -12px 24px rgba(255, 255, 255, 0.2);
}

.industryCtaImage {
    text-align: center;
}

.industryImgFluid {
    max-width: 100%;
    height: auto;
    /* Neomorphic image styling */
    box-shadow:
            14px 14px 28px rgba(0, 53, 102, 0.12),
            -14px -14px 28px rgba(255, 255, 255, 0.9);
    transition: transform 0.45s ease;
}

.industryCtaImage:hover .industryImgFluid {
    transform: scale(1.04);
}

/* Mobile responsiveness for Industries page */
@media screen and (max-width: 890px) {
    .expertiseTextArea,
    .solutionsSectionPadding,
    .industryCtaStatsSection {
        padding: 59px 0;
    }

    .expertiseColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .challengesCardColumn {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 33px;
    }

    .challengesCardItem {
        height: 450px;
        padding-left: 33px;
        padding-top: 130px;
        padding-right: 33px;
        text-align: center;
    }

    .solutionsTextColumn,
    .solutionsImageColumn,
    .industryCtaTextColumn,
    .industryCtaImageColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .solutionsTextBlock {
        padding-right: 0;
        margin-bottom: 33px;
    }

    .industryCtaTextContent {
        margin-bottom: 33px;
    }

    .regulatoryTextColumn {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 33px;
    }

    .industryCtaStats {
        flex-direction: column;
    }

    .industryStatItem {
        margin-bottom: 25px;
    }

    .industryMarginRight {
        margin-right: 0;
    }

    .challengesPadding {
        padding-left: 25px;
        padding-right: 25px;
    }
}

@media screen and (max-width: 640px) {
    .expertiseHeadingSection h2,
    .challengesSectionTitle h2 {
        font-size: 2.0rem;
    }

    .solutionsSectionHeading,
    .industryCtaTextContent h2 {
        font-size: 1.9rem;
    }

    .regulatoryWidthQuarter {
        width: 36%;
    }

    .challengesCardItem {
        padding-left: 25px;
        padding-right: 25px;
    }

    .challengesPrimaryButton {
        width: 165px;
        height: 49px;
        line-height: 45px;
    }

    .industryStatNumber {
        font-size: 2.5rem;
    }

    .industryButtonPrimary {
        width: 100%;
        text-align: center;
    }
}

/* Knowledge Center Cards Section Styles */
.knowledgeAdaptArea {
    padding-bottom: 99px;
    padding-top: 135px;
    background: var(--cloud-mist);
}

.justifyBetween {
    justify-content: space-between;
}

.knowledgeColumn {
    flex: 0 0 41.67%;
    max-width: 41.67%;
    padding: 0 13px;
}

.knowledgeColumnsArea {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.knowledgeAdaptHelp .knowledgeSectionTitle p {
    color: #65666e;
    line-height: 31px;
    font-size: 17px;
    margin-bottom: 54px;
    margin-top: 34px;
}

.knowledgeAdaptAbout .knowledgeSingleAdapt {
    margin-bottom: 44px;
    /* Neomorphic card styling */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.08),
            -12px -12px 24px rgba(255, 255, 255, 0.9);
    background: #ffffff;
    padding: 44px 44px 37px 44px;
    transition: transform 0.32s ease;
}

.knowledgeAdaptAbout .knowledgeSingleAdapt:hover {
    transform: translateY(-4px);
    box-shadow:
            16px 16px 32px rgba(0, 53, 102, 0.12),
            -16px -16px 32px rgba(255, 255, 255, 1);
}

.knowledgeCardColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.knowledgeAdaptAbout .knowledgeSingleAdapt .knowledgeAdaptContent h3 {
    font-size: 61px;
    font-weight: 720;
    color: var(--ocean-depths);
    display: inline-block;
    margin-bottom: 6px;
    margin-top: 26px;
    line-height: 1;
}

.knowledgeAdaptAbout .knowledgeSingleAdapt .knowledgeAdaptContent p {
    font-size: 19px;
    color: #7d7d7d;
    font-weight: 420;
    display: block;
    margin-bottom: 0;
    line-height: 1.5;
}

.knowledgeAdaptAbout .knowledgeSingleAdapt img {
    width: 52px;
    height: 52px;
    filter: invert(13%) sepia(89%) saturate(1729%) hue-rotate(202deg) brightness(96%) contrast(101%);
}

.knowledgeSectionTitle h3 {
    font-size: 2.9rem;
    font-weight: 720;
    line-height: 1.2;
    color: var(--ocean-depths);
}

.knowledgeSectionTitle h3 span {
    font-weight: 320;
    color: var(--accent-flame);
}

.knowledgeBoxedBtn {
    font-size: 17px;
    font-weight: 520;
    color: #ffffff;
    padding: 21px 61px;
    display: inline-block;
    background: linear-gradient(0deg, var(--accent-flame) 0%, var(--action-coral) 99%);
    transition: all 0.32s ease;
    border: none;
    text-decoration: none;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(253, 126, 20, 0.3),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.knowledgeBoxedBtn:hover {
    background-size: 200% 200%;
    color: #ffffff;
    transform: translateY(-3px);
    box-shadow:
            12px 12px 24px rgba(253, 126, 20, 0.4),
            -12px -12px 24px rgba(255, 255, 255, 0.2);
}

/* Industry Research Features Section Styles */
.researchItemsArea {
    padding-bottom: 125px;
    padding-top: 150px;
    background-image: url('../belvedere/research-bg.png');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.researchItemsArea::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: rgba(230, 234, 240, 0.92);
}

.researchItemsArea > .containerWrapper {
    position: relative;
    z-index: 2;
}

.researchFullColumn {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 13px;
}

.researchFeatureColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.researchItemsArea .researchFeaturedDelicious {
    margin-bottom: 39px;
    padding: 31px;
    background: #ffffff;
    /* Neomorphic card styling */
    box-shadow:
            10px 10px 20px rgba(0, 53, 102, 0.1),
            -10px -10px 20px rgba(255, 255, 255, 0.8);
    transition: all 0.35s ease;
}

.researchItemsArea .researchFeaturedDelicious:hover {
    transform: translateY(-3px);
    box-shadow:
            14px 14px 28px rgba(0, 53, 102, 0.15),
            -14px -14px 28px rgba(255, 255, 255, 0.9);
}

.researchItemsArea .researchFeaturedDelicious .researchThumb {
    flex-shrink: 0;
    width: 89px;
    height: 89px;
    margin-right: 23px;
}

.researchItemsArea .researchFeaturedDelicious .researchThumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.researchItemsArea .researchFeaturedDelicious .researchInfo {
    flex: 1;
    padding-left: 24px;
}

.researchItemsArea .researchFeaturedDelicious .researchInfo h3 {
    font-size: 1.6rem;
    color: var(--midnight-blue);
    font-weight: 750;
    margin-bottom: 17px;
}

.researchItemsArea .researchFeaturedDelicious .researchInfo p {
    font-size: 16.7px;
    font-weight: 440;
    line-height: 1.7;
    margin-top: 19px;
    margin-bottom: 9px;
    color: var(--neutral-slate);
}

.researchItemsArea .researchFeaturedDelicious .researchInfo span {
    display: block;
    font-weight: 750;
    font-size: 15px;
    color: var(--accent-flame);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.researchItemsArea .researchItemActions {
    margin-top: 54px;
    text-align: center;
}

.researchItemsArea .researchItemActions a {
    display: inline-block;
}

.researchMainTitle {
    margin-bottom: 64px;
}

.researchMarginBottom {
    margin-bottom: 87px;
}

.researchMainTitle span {
    color: var(--accent-flame);
    font-size: 1.9rem;
    font-weight: 440;
    margin-bottom: 21px;
    display: block;
}

.researchMainTitle h3 {
    font-size: 3.1rem;
    font-weight: 750;
    color: var(--ocean-depths);
    text-transform: uppercase;
}

.researchStyledBtn {
    display: inline-block;
    font-size: 16.7px;
    font-weight: 640;
    border: 2px solid var(--ocean-depths);
    text-align: center;
    color: var(--ocean-depths) !important;
    text-transform: capitalize;
    transition: 0.54s;
    padding: 25px 49px;
    cursor: pointer;
    background: transparent;
    text-decoration: none;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.15),
            -8px -8px 16px rgba(255, 255, 255, 0.8);
}

.researchStyledBtn:hover {
    background: var(--ocean-depths);
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.25),
            -12px -12px 24px rgba(255, 255, 255, 0.9);
}

.flexDisplay {
    display: flex;
}

/* Whitepapers Text+Image Section Styles */
.whitepaperMainSection {
    padding: 7.8rem 0;
    background: #ffffff;
}

.whitepaperImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.whitepaperTextColumn {
    flex: 0 0 41.67%;
    max-width: 41.67%;
    padding: 0 13px;
}

.marginLeftAuto {
    margin-left: auto;
}

.marginBottomMobile {
    margin-bottom: 0;
}

.whitepaperMarginBottom {
    margin-bottom: 1.2rem;
}

.whitepaperMainSection h2 {
    font-weight: 420;
    color: var(--ocean-depths);
    font-size: 2.3rem;
}

.whitepaperMainSection p {
    line-height: 1.8;
    color: var(--neutral-slate);
    font-weight: 420;
    font-size: 1.1rem;
}

.whitepaperButton {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.3rem;
    padding: 14px 24px;
    text-decoration: none;
    transition: all 0.35s ease;
    /* Neomorphic button styling */
    box-shadow:
            6px 6px 12px rgba(231, 76, 60, 0.2),
            -6px -6px 12px rgba(255, 255, 255, 0.1);
}

.whitepaperButtonMain {
    background: var(--action-coral);
    border: 2px solid var(--action-coral);
    color: #ffffff;
}

.whitepaperButtonMain:hover {
    background: transparent;
    color: var(--action-coral);
    transform: translateY(-2px);
}

.whitepaperButton:active,
.whitepaperButton:focus {
    outline: none;
    box-shadow: none;
}

.whitepaperImageResponsive {
    max-width: 100%;
    height: auto;
    /* Neomorphic image styling */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.1),
            -12px -12px 24px rgba(255, 255, 255, 0.9);
    transition: transform 0.42s ease;
}

.whitepaperImageColumn:hover .whitepaperImageResponsive {
    transform: scale(1.03);
}

/* Business Trends Text+Image Reverse Section Styles */
.trendsMainSection {
    padding: 7.9rem 0;
    background: var(--surface-primary);
}

.trendsTextColumn {
    flex: 0 0 41.67%;
    max-width: 41.67%;
    padding: 0 13px;
}

.trendsImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
    margin-left: auto;
}

.trendsMarginBottom {
    margin-bottom: 1.2rem;
}

.trendsMainSection h2 {
    font-weight: 420;
    color: var(--ocean-depths);
    font-size: 2.3rem;
}

.trendsMainSection p {
    line-height: 1.8;
    color: var(--neutral-slate);
    font-weight: 420;
    font-size: 1.1rem;
}

.trendsButton {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.3rem;
    padding: 14px 24px;
    text-decoration: none;
    transition: all 0.35s ease;
    /* Neomorphic button styling */
    box-shadow:
            6px 6px 12px rgba(0, 53, 102, 0.15),
            -6px -6px 12px rgba(255, 255, 255, 0.8);
}

.trendsButtonMain {
    background: var(--ocean-depths);
    border: 2px solid var(--ocean-depths);
    color: #ffffff;
}

.trendsButtonMain:hover {
    background: transparent;
    color: var(--ocean-depths);
    transform: translateY(-2px);
}

.trendsButton:active,
.trendsButton:focus {
    outline: none;
    box-shadow: none;
}

.trendsImageResponsive {
    max-width: 100%;
    height: auto;
    /* Neomorphic image styling */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.1),
            -12px -12px 24px rgba(255, 255, 255, 0.9);
    transition: transform 0.42s ease;
}

.trendsImageColumn:hover .trendsImageResponsive {
    transform: scale(1.03);
}

/* Mobile responsiveness for Resources page */
@media screen and (max-width: 890px) {
    .knowledgeAdaptArea {
        padding-top: 69px;
        padding-bottom: 69px;
    }

    .knowledgeColumn,
    .knowledgeColumnsArea {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .knowledgeAdaptHelp {
        padding-bottom: 69px;
    }

    .knowledgeSectionTitle h3 {
        font-size: 2.1rem;
        line-height: 1.3;
    }

    .researchItemsArea {
        padding-top: 54px;
        padding-bottom: 44px;
    }

    .researchFeatureColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .researchItemsArea .researchFeaturedDelicious {
        display: block !important;
        text-align: center;
        padding: 25px;
    }

    .researchItemsArea .researchFeaturedDelicious .researchInfo {
        padding-left: 0;
        margin-top: 24px;
    }

    .whitepaperMainSection,
    .trendsMainSection {
        padding: 3.7rem 0;
    }

    .whitepaperImageColumn,
    .whitepaperTextColumn,
    .trendsTextColumn,
    .trendsImageColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .marginBottomMobile {
        margin-bottom: 2.5rem !important;
    }

    .trendsImageColumn {
        margin-left: 0;
    }
}

@media screen and (min-width: 768px) and (max-width: 891px) {
    .knowledgeAdaptArea {
        padding-top: 109px;
        padding-bottom: 19px;
    }

    .knowledgeAdaptHelp {
        margin-bottom: 47px;
    }

    .knowledgeSectionTitle h3 {
        font-size: 2.3rem;
        line-height: 1.2;
    }

    .researchItemsArea .researchFeaturedDelicious {
        display: block !important;
    }

    .researchItemsArea .researchFeaturedDelicious .researchInfo {
        padding-left: 0;
        margin-top: 34px;
    }
}

@media screen and (max-width: 640px) {
    .knowledgeCardColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .knowledgeAdaptAbout .knowledgeSingleAdapt {
        padding: 31px 31px 27px 31px;
    }

    .knowledgeAdaptAbout .knowledgeSingleAdapt .knowledgeAdaptContent h3 {
        font-size: 47px;
    }

    .researchMainTitle h3 {
        font-size: 2.3rem;
    }

    .whitepaperMainSection h2,
    .trendsMainSection h2 {
        font-size: 1.9rem;
    }

    .researchItemsArea .researchFeaturedDelicious .researchThumb {
        width: 69px;
        height: 69px;
        margin: 0 auto 17px;
    }

    .researchStyledBtn {
        padding: 19px 37px;
        font-size: 15px;
    }
}

/* Open Positions Features Section Styles */
.positionsItemsArea {
    padding-bottom: 127px;
    padding-top: 152px;
    background-image: url('../belvedere/careers-bg.png');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.positionsItemsArea::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: rgba(0, 53, 102, 0.89);
}

.positionsItemsArea > .containerWrapper {
    position: relative;
    z-index: 2;
}

.positionsFullColumn {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 13px;
}

.positionsFeatureColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.positionsItemsArea .positionsFeaturedDelicious {
    margin-bottom: 41px;
    padding: 33px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(6px);
    /* Neomorphic card styling */
    box-shadow:
            12px 12px 24px rgba(0, 35, 70, 0.2),
            -12px -12px 24px rgba(255, 255, 255, 0.1);
    transition: all 0.37s ease;
}

.positionsItemsArea .positionsFeaturedDelicious:hover {
    transform: translateY(-4px);
    background: rgba(255, 255, 255, 1);
    box-shadow:
            16px 16px 32px rgba(0, 35, 70, 0.3),
            -16px -16px 32px rgba(255, 255, 255, 0.2);
}

.positionsItemsArea .positionsFeaturedDelicious .positionsThumb {
    flex-shrink: 0;
    width: 91px;
    height: 91px;
    margin-right: 25px;
}

.positionsItemsArea .positionsFeaturedDelicious .positionsThumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.positionsItemsArea .positionsFeaturedDelicious .positionsInfo {
    flex: 1;
    padding-left: 26px;
}

.positionsItemsArea .positionsFeaturedDelicious .positionsInfo h3 {
    font-size: 1.7rem;
    color: var(--midnight-blue);
    font-weight: 770;
    margin-bottom: 19px;
}

.positionsItemsArea .positionsFeaturedDelicious .positionsInfo p {
    font-size: 16.9px;
    font-weight: 460;
    line-height: 1.8;
    margin-top: 21px;
    margin-bottom: 11px;
    color: var(--neutral-slate);
}

.positionsItemsArea .positionsFeaturedDelicious .positionsInfo span {
    display: block;
    font-weight: 770;
    font-size: 15px;
    color: var(--accent-flame);
    text-transform: uppercase;
    letter-spacing: 0.6px;
}

.positionsItemsArea .positionsItemActions {
    margin-top: 56px;
    text-align: center;
}

.positionsItemsArea .positionsItemActions a {
    display: inline-block;
}

.positionsMainTitle {
    margin-bottom: 66px;
}

.positionsMarginBottom {
    margin-bottom: 89px;
}

.positionsMainTitle span {
    color: #ffffff;
    font-size: 2.0rem;
    font-weight: 460;
    margin-bottom: 23px;
    display: block;
}

.positionsMainTitle h3 {
    font-size: 3.2rem;
    font-weight: 770;
    color: #ffffff;
    text-transform: uppercase;
}

.positionsStyledBtn {
    display: inline-block;
    font-size: 17.1px;
    font-weight: 660;
    border: 2px solid #ffffff;
    text-align: center;
    color: #ffffff !important;
    text-transform: capitalize;
    transition: 0.56s;
    padding: 27px 51px;
    cursor: pointer;
    background: transparent;
    text-decoration: none;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(255, 255, 255, 0.1),
            -8px -8px 16px rgba(0, 35, 70, 0.3);
}

.positionsStyledBtn:hover {
    background: #ffffff;
    color: var(--ocean-depths) !important;
    transform: translateY(-3px);
    box-shadow:
            12px 12px 24px rgba(255, 255, 255, 0.2),
            -12px -12px 24px rgba(0, 35, 70, 0.4);
}

/* Company Culture Text+Image Section Styles */
.cultureMainSection {
    padding: 8.1rem 0;
    background: #ffffff;
}

.cultureImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.cultureTextColumn {
    flex: 0 0 41.67%;
    max-width: 41.67%;
    padding: 0 13px;
}

.cultureMarginLeftAuto {
    margin-left: auto;
}

.cultureMarginBottomMobile {
    margin-bottom: 0;
}

.cultureMarginBottom {
    margin-bottom: 1.3rem;
}

.cultureMainSection h2 {
    font-weight: 440;
    color: var(--ocean-depths);
    font-size: 2.4rem;
}

.cultureMainSection p {
    line-height: 1.8;
    color: var(--neutral-slate);
    font-weight: 440;
    font-size: 1.1rem;
}

.cultureButton {
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.35rem;
    padding: 16px 26px;
    text-decoration: none;
    transition: all 0.38s ease;
    /* Neomorphic button styling */
    box-shadow:
            6px 6px 12px rgba(0, 53, 102, 0.15),
            -6px -6px 12px rgba(255, 255, 255, 0.8);
}

.cultureButtonMain {
    background: var(--ocean-depths);
    border: 2px solid var(--ocean-depths);
    color: #ffffff;
}

.cultureButtonMain:hover {
    background: transparent;
    color: var(--ocean-depths);
    transform: translateY(-2px);
}

.cultureButton:active,
.cultureButton:focus {
    outline: none;
    box-shadow: none;
}

.cultureImageResponsive {
    max-width: 100%;
    height: auto;
    /* Neomorphic image styling */
    box-shadow:
            14px 14px 28px rgba(0, 53, 102, 0.12),
            -14px -14px 28px rgba(255, 255, 255, 0.9);
    transition: transform 0.44s ease;
}

.cultureImageColumn:hover .cultureImageResponsive {
    transform: scale(1.04);
}

/* Development Programs Cards Section Styles */
.developmentAdaptArea {
    padding-bottom: 101px;
    padding-top: 137px;
    background: var(--cloud-mist);
}

.developmentColumn {
    flex: 0 0 41.67%;
    max-width: 41.67%;
    padding: 0 13px;
}

.developmentColumnsArea {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.developmentAdaptHelp .developmentSectionTitle p {
    color: #65666e;
    line-height: 32px;
    font-size: 17px;
    margin-bottom: 56px;
    margin-top: 36px;
}

.developmentAdaptAbout .developmentSingleAdapt {
    margin-bottom: 46px;
    /* Neomorphic card styling */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.09),
            -12px -12px 24px rgba(255, 255, 255, 0.95);
    background: #ffffff;
    padding: 46px 46px 39px 46px;
    transition: transform 0.34s ease;
}

.developmentAdaptAbout .developmentSingleAdapt:hover {
    transform: translateY(-5px);
    box-shadow:
            16px 16px 32px rgba(0, 53, 102, 0.13),
            -16px -16px 32px rgba(255, 255, 255, 1);
}

.developmentCardColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.developmentAdaptAbout .developmentSingleAdapt .developmentAdaptContent h3 {
    font-size: 63px;
    font-weight: 740;
    color: var(--ocean-depths);
    display: inline-block;
    margin-bottom: 8px;
    margin-top: 28px;
    line-height: 1;
}

.developmentAdaptAbout .developmentSingleAdapt .developmentAdaptContent p {
    font-size: 19px;
    color: #7d7d7d;
    font-weight: 440;
    display: block;
    margin-bottom: 0;
    line-height: 1.5;
}

.developmentAdaptAbout .developmentSingleAdapt img {
    width: 54px;
    height: 54px;
    filter: invert(13%) sepia(89%) saturate(1729%) hue-rotate(202deg) brightness(96%) contrast(101%);
}

.developmentSectionTitle h3 {
    font-size: 3.0rem;
    font-weight: 740;
    line-height: 1.2;
    color: var(--ocean-depths);
}

.developmentSectionTitle h3 span {
    font-weight: 340;
    color: var(--accent-flame);
}

.developmentBoxedBtn {
    font-size: 17px;
    font-weight: 540;
    color: #ffffff;
    padding: 23px 63px;
    display: inline-block;
    background: linear-gradient(0deg, var(--accent-flame) 0%, var(--action-coral) 99%);
    transition: all 0.34s ease;
    border: none;
    text-decoration: none;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(253, 126, 20, 0.3),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.developmentBoxedBtn:hover {
    background-size: 200% 200%;
    color: #ffffff;
    transform: translateY(-3px);
    box-shadow:
            12px 12px 24px rgba(253, 126, 20, 0.4),
            -12px -12px 24px rgba(255, 255, 255, 0.2);
}

/* Benefits & Advantages Text+Image Reverse Section Styles */
.benefitsMainSection {
    padding: 8.2rem 0;
    background: var(--surface-primary);
}

.benefitsTextColumn {
    flex: 0 0 41.67%;
    max-width: 41.67%;
    padding: 0 13px;
}

.benefitsImageColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
    margin-left: auto;
}

.benefitsMarginBottomMobile {
    margin-bottom: 0;
}

.benefitsMarginBottom {
    margin-bottom: 1.3rem;
}

.benefitsMainSection h2 {
    font-weight: 440;
    color: var(--ocean-depths);
    font-size: 2.4rem;
}

.benefitsMainSection p {
    line-height: 1.8;
    color: var(--neutral-slate);
    font-weight: 440;
    font-size: 1.1rem;
}

.benefitsButton {
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.35rem;
    padding: 16px 26px;
    text-decoration: none;
    transition: all 0.38s ease;
    /* Neomorphic button styling */
    box-shadow:
            6px 6px 12px rgba(220, 53, 69, 0.2),
            -6px -6px 12px rgba(255, 255, 255, 0.1);
}

.benefitsButtonMain {
    background: var(--action-coral);
    border: 2px solid var(--action-coral);
    color: #ffffff;
}

.benefitsButtonMain:hover {
    background: transparent;
    color: var(--action-coral);
    transform: translateY(-2px);
}

.benefitsButton:active,
.benefitsButton:focus {
    outline: none;
    box-shadow: none;
}

.benefitsImageResponsive {
    max-width: 100%;
    height: auto;
    /* Neomorphic image styling */
    box-shadow:
            14px 14px 28px rgba(0, 53, 102, 0.12),
            -14px -14px 28px rgba(255, 255, 255, 0.9);
    transition: transform 0.44s ease;
}

.benefitsImageColumn:hover .benefitsImageResponsive {
    transform: scale(1.04);
}

/* Mobile responsiveness for Careers page */
@media screen and (max-width: 890px) {
    .positionsItemsArea {
        padding-top: 56px;
        padding-bottom: 46px;
    }

    .positionsFeatureColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .positionsItemsArea .positionsFeaturedDelicious {
        display: block !important;
        text-align: center;
        padding: 27px;
    }

    .positionsItemsArea .positionsFeaturedDelicious .positionsInfo {
        padding-left: 0;
        margin-top: 26px;
    }

    .developmentAdaptArea {
        padding-top: 71px;
        padding-bottom: 71px;
    }

    .developmentColumn,
    .developmentColumnsArea {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .developmentAdaptHelp {
        padding-bottom: 71px;
    }

    .developmentSectionTitle h3 {
        font-size: 2.2rem;
        line-height: 1.3;
    }

    .cultureMainSection,
    .benefitsMainSection {
        padding: 3.9rem 0;
    }

    .cultureImageColumn,
    .cultureTextColumn,
    .benefitsTextColumn,
    .benefitsImageColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .cultureMarginBottomMobile,
    .benefitsMarginBottomMobile {
        margin-bottom: 2.7rem !important;
    }

    .benefitsImageColumn {
        margin-left: 0;
    }
}

@media screen and (min-width: 768px) and (max-width: 891px) {
    .developmentAdaptArea {
        padding-top: 111px;
        padding-bottom: 21px;
    }

    .developmentAdaptHelp {
        margin-bottom: 49px;
    }

    .developmentSectionTitle h3 {
        font-size: 2.5rem;
        line-height: 1.2;
    }

    .positionsItemsArea .positionsFeaturedDelicious {
        display: block !important;
    }

    .positionsItemsArea .positionsFeaturedDelicious .positionsInfo {
        padding-left: 0;
        margin-top: 36px;
    }
}

@media screen and (max-width: 640px) {
    .developmentCardColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .developmentAdaptAbout .developmentSingleAdapt {
        padding: 33px 33px 29px 33px;
    }

    .developmentAdaptAbout .developmentSingleAdapt .developmentAdaptContent h3 {
        font-size: 49px;
    }

    .positionsMainTitle h3 {
        font-size: 2.5rem;
    }

    .cultureMainSection h2,
    .benefitsMainSection h2 {
        font-size: 2.0rem;
    }

    .positionsItemsArea .positionsFeaturedDelicious .positionsThumb {
        width: 71px;
        height: 71px;
        margin: 0 auto 19px;
    }

    .positionsStyledBtn {
        padding: 21px 39px;
        font-size: 15px;
    }

    .developmentBoxedBtn {
        padding: 19px 47px;
        font-size: 16px;
    }
}

/* Main Office Information Text Section Styles */
.officeTextArea {
    background: #fdfdfd;
    padding: 109px 0 79px 0;
}

.officeFullColumn {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 13px;
}

.officeSectionTitle span {
    color: var(--accent-flame);
    font-size: 2.1rem;
    font-weight: 720;
    display: block;
    margin-bottom: 19px;
}

.officeSectionTitle h3 {
    font-size: 2.9rem;
    font-weight: 720;
    color: var(--ocean-depths);
}

.officeMarginBottom {
    margin-bottom: 79px;
}

.officeTextHeading {
    margin-bottom: 34px;
    font-size: 1.7rem;
    color: var(--midnight-blue);
    font-weight: 620;
}

.officeTextContent p {
    color: var(--neutral-slate);
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 17px;
}

.officeTextContent p:nth-child(3),
.officeTextContent p:nth-child(4),
.officeTextContent p:nth-child(5) {
    font-weight: 520;
    color: var(--midnight-blue);
}

/* Contact Form Section Styles */
.contactFormWrapper {
    padding: 69px 0;
    background: var(--cloud-mist);
}

.contactFullColumn {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 13px;
}

.contactFormColumn {
    flex: 0 0 75%;
    max-width: 75%;
    padding: 0 13px;
}

.contactMarginAuto {
    margin: 0 auto;
}

.contactMainTitle {
    font-size: 2.4rem;
    font-weight: 640;
    color: var(--ocean-depths);
    margin-bottom: 24px;
    text-align: center;
}

.contactMainDescription {
    text-align: center;
    margin-bottom: 44px;
    color: var(--neutral-slate);
    font-size: 17px;
    line-height: 1.7;
}

.contactFormMain .contactFormGroup {
    margin-bottom: 24px;
}

.contactFormMain .contactFormControl {
    height: 46px;
    padding-left: 22px;
    border: 2px solid transparent;
    background: rgba(0, 53, 102, 0.08);
    width: 100%;
    font-size: 15px;
    color: var(--midnight-blue);
    /* Neomorphic input styling */
    box-shadow:
            inset 4px 4px 8px rgba(0, 53, 102, 0.1),
            inset -4px -4px 8px rgba(255, 255, 255, 0.9);
    transition: all 0.32s ease;
}

.contactFormMain .contactFormControl:focus {
    outline: 0;
    border-color: var(--ocean-depths);
    background: rgba(230, 234, 240, 0.7);
    box-shadow:
            inset 2px 2px 4px rgba(0, 53, 102, 0.15),
            inset -2px -2px 4px rgba(255, 255, 255, 1),
            0 0 0 3px rgba(0, 53, 102, 0.1);
}

.contactFormMain .contactFormControl::placeholder {
    color: var(--neutral-slate);
    font-weight: 420;
}

.contactFormMain textarea.contactFormControl {
    height: 160px;
    resize: vertical;
    padding-top: 17px;
    font-family: inherit;
}

.contactSubmitBtn {
    display: inline-block;
    border: 2px solid var(--ocean-depths);
    color: #ffffff;
    font-weight: 540;
    padding: 16px 58px;
    background: var(--ocean-depths);
    transition: all 0.47s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.2),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.contactSubmit {
    font-size: 15px;
    padding: 14px 47px;
    border: none;
}

.contactSubmitBtn:hover {
    border-color: var(--ocean-depths);
    background: transparent;
    color: var(--ocean-depths);
    transform: translateY(-2px);
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.3),
            -12px -12px 24px rgba(255, 255, 255, 0.2);
}

.contactErrorMessage {
    color: var(--action-coral);
    font-size: 14px;
    margin-top: 6px;
    display: none;
}

.contactFormControl.error {
    border-color: var(--action-coral);
    background: rgba(220, 53, 69, 0.1);
}

.contactFormControl.success {
    border-color: var(--success-meadow);
    background: rgba(40, 167, 69, 0.1);
}

/* Support Office Features Section Styles */
.supportFeatureList {
    padding-bottom: 89px;
    background: #ffffff;
}

.supportColumn {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 59px;
}

.supportFeatureList h2 {
    font-size: 1.4rem;
    margin-bottom: 18px;
    text-transform: capitalize;
    transition: all 0.34s ease 0s;
    color: var(--ocean-depths);
    font-weight: 640;
}

.supportTwentyOne {
    font-size: 1.4rem;
}

.supportFeatureList .supportList {
    margin: 0;
    padding: 0;
    list-style: none;
}

.supportFeatureList .supportList li {
    margin-bottom: 13px;
    color: var(--neutral-slate);
    font-size: 15.7px;
    font-weight: 440;
    line-height: 27px;
    position: relative;
    padding-left: 23px;
}

.supportFeatureList .supportList li::before {
    content: "•";
    color: var(--accent-flame);
    font-weight: 720;
    position: absolute;
    left: 0;
    font-size: 18px;
}

.supportFeatureList .supportList li:nth-child(2),
.supportFeatureList .supportList li:nth-child(3),
.supportFeatureList .supportList li:nth-child(4) {
    font-weight: 520;
    color: var(--midnight-blue);
}

/* Success Modal Styles */
.successModal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 53, 102, 0.8);
    backdrop-filter: blur(4px);
}

.successModalContent {
    background-color: #ffffff;
    margin: 5% auto;
    padding: 0;
    border: none;
    width: 90%;
    max-width: 520px;
    position: relative;
    /* Neomorphic modal styling */
    box-shadow:
            20px 20px 40px rgba(0, 53, 102, 0.3),
            -20px -20px 40px rgba(255, 255, 255, 0.1);
    animation: modalSlideIn 0.4s ease-out;
}

@keyframes modalSlideIn {
    from {
        opacity: 0;
        transform: translateY(-50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.successModalClose {
    color: var(--neutral-slate);
    float: right;
    font-size: 28px;
    font-weight: 720;
    position: absolute;
    right: 17px;
    top: 12px;
    cursor: pointer;
    z-index: 1001;
}

.successModalClose:hover,
.successModalClose:focus {
    color: var(--ocean-depths);
    text-decoration: none;
}

.successModalBody {
    padding: 47px 37px;
    text-align: center;
}

.successIcon {
    width: 67px;
    height: 67px;
    margin-bottom: 23px;
    filter: invert(41%) sepia(89%) saturate(1234%) hue-rotate(97deg) brightness(95%) contrast(89%);
}

.successModalBody h3 {
    color: var(--ocean-depths);
    font-size: 1.9rem;
    margin-bottom: 19px;
    font-weight: 640;
}

.successModalBody p {
    color: var(--neutral-slate);
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 0;
}

/* Form validation and interaction styles */
.contactFormControl:valid {
    border-color: var(--success-meadow);
}

.contactFormControl:invalid:not(:placeholder-shown) {
    border-color: var(--action-coral);
}

/* Mobile responsiveness for Contact page */
@media screen and (max-width: 1000px) {
    .contactFormWrapper {
        padding: 69px 0;
    }
}

@media screen and (max-width: 890px) {
    .officeTextArea {
        padding: 69px 0 49px 0;
    }

    .officeMarginBottom {
        margin-bottom: 49px;
    }

    .officeSectionTitle h3 {
        font-size: 2.3rem;
    }

    .contactFormColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .contactMainTitle {
        font-size: 2.0rem;
    }

    .supportColumn {
        padding: 0 23px;
    }

    .supportFeatureList {
        padding-bottom: 44px;
    }

    .successModalContent {
        width: 95%;
        margin: 15% auto;
    }

    .successModalBody {
        padding: 33px 23px;
    }
}

@media screen and (max-width: 640px) {
    .officeSectionTitle span {
        font-size: 1.7rem;
    }

    .officeSectionTitle h3 {
        font-size: 1.9rem;
    }

    .officeTextHeading {
        font-size: 1.4rem;
    }

    .contactMainTitle {
        font-size: 1.7rem;
    }

    .contactFormMain .contactFormControl {
        height: 44px;
        padding-left: 17px;
        font-size: 14px;
    }

    .contactSubmitBtn {
        padding: 13px 37px;
        font-size: 14px;
    }

    .supportFeatureList .supportList li {
        font-size: 15px;
        padding-left: 19px;
    }

    .successIcon {
        width: 54px;
        height: 54px;
    }

    .successModalBody h3 {
        font-size: 1.6rem;
    }
}

/* Case Studies Cards Section Styles */
.caseStudiesCardsSection {
    background: var(--midnight-blue);
}

.caseStudiesTitle {
    padding-top: 73px;
    padding-bottom: 75px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
}

.caseStudiesTitle::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: rgba(0, 53, 102, 0.87);
}

.caseStudiesTitleColumn {
    flex: 0 0 83%;
    max-width: 83%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

.caseStudiesSectionTitle h2 {
    color: #ffffff;
    font-size: 3.1rem;
    font-weight: 660;
    margin-bottom: 27px;
    margin-top: 5%;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.caseStudiesSectionTitle p {
    color: #ffffff;
    margin-bottom: 0;
    font-size: 18px;
    line-height: 1.8;
}

.caseStudiesPadding {
    padding-left: 51px;
    padding-right: 51px;
}

.caseStudiesContainerFluid {
    width: 100%;
    padding: 0;
}

.caseStudiesCardColumn {
    flex: 0 0 20%;
    max-width: 20%;
    padding: 0;
}

.caseStudiesCardItem {
    height: 560px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    position: relative;
    transition: all 0.37s ease;
}

.caseStudiesOverlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0, 53, 102, 0.85), rgba(0, 35, 70, 0.75));
    padding: 73px 43px 47px 43px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    transition: all 0.37s ease;
}

.caseStudiesCardItem:hover {
    transform: translateY(-11px);
    box-shadow:
            0 20px 40px rgba(0, 35, 70, 0.4),
            0 10px 20px rgba(0, 35, 70, 0.3);
}

.caseStudiesCardItem:hover::before {
    opacity: 1;
}

.caseStudiesCardItem::before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 9px;
    background: var(--accent-flame);
    content: "";
    opacity: 0;
    transition: all 0.37s;
    z-index: 3;
}

.caseStudiesOverlay h4 {
    font-weight: 660;
    color: #ffffff;
    text-transform: uppercase;
    margin-bottom: 28px;
    font-size: 21px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
}

.caseStudiesOverlay p {
    color: #ffffff;
    margin-bottom: 47px;
    line-height: 1.7;
    font-size: 15px;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.7);
}

.caseStudiesPrimaryButton {
    display: inline-block;
    font-size: 14px;
    font-weight: 660;
    padding: 0 19px;
    color: #ffffff;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-align: center;
    width: 185px;
    height: 55px;
    border-left: 2px solid var(--accent-flame);
    border-right: 2px solid var(--action-coral);
    line-height: 51px;
    position: relative;
    z-index: 1;
    background: linear-gradient(to right, var(--action-coral), var(--accent-flame));
    transition: all 0.47s ease;
    text-decoration: none;
    /* Neomorphic button styling */
    box-shadow:
            8px 8px 16px rgba(253, 126, 20, 0.3),
            -8px -8px 16px rgba(255, 255, 255, 0.1);
}

.caseStudiesPrimaryButton::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background: linear-gradient(to right, var(--accent-flame), var(--action-coral));
    opacity: 0;
    transition: opacity 0.57s ease;
}

.caseStudiesPrimaryButton:hover {
    transform: translateY(-3px);
    box-shadow:
            12px 12px 24px rgba(253, 126, 20, 0.5),
            -12px -12px 24px rgba(255, 255, 255, 0.2);
}

.caseStudiesPrimaryButton:hover::after {
    opacity: 1;
}

.caseStudiesSetBg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* Case Study Text+Image Section Styles */
.manufacturingCaseSection {
    background: #ffffff;
}

.technologyCaseReverse {
    background: var(--surface-primary);
}

.caseStudySectionPadding {
    padding: 97px 0;
}

.caseStudyTextColumn {
    flex: 0 0 58.33%;
    max-width: 58.33%;
    padding: 0 13px;
}

.caseStudyImageColumn {
    flex: 0 0 41.67%;
    max-width: 41.67%;
    padding: 0 13px;
}

.caseStudyTextBlock {
    padding-right: 35px;
}

.technologyCaseReverse .caseStudyTextBlock {
    padding-right: 0;
    padding-left: 35px;
}

.caseStudySectionHeading {
    font-size: 2.3rem;
    font-weight: 770;
    color: var(--ocean-depths);
    margin-bottom: 31px;
}

.caseStudyContent {
    margin-bottom: 39px;
}

.caseStudyBlock {
    margin-bottom: 29px;
    padding: 23px;
    background: var(--cloud-mist);
    /* Neomorphic content block styling */
    box-shadow:
            6px 6px 12px rgba(0, 53, 102, 0.08),
            -6px -6px 12px rgba(255, 255, 255, 0.9);
    transition: all 0.32s ease;
}

.technologyCaseReverse .caseStudyBlock {
    background: #ffffff;
}

.caseStudyBlock:hover {
    transform: translateY(-2px);
    box-shadow:
            8px 8px 16px rgba(0, 53, 102, 0.12),
            -8px -8px 16px rgba(255, 255, 255, 1);
}

.caseStudyBlock h4 {
    font-size: 1.2rem;
    color: var(--midnight-blue);
    margin-bottom: 13px;
    font-weight: 660;
    display: flex;
    align-items: center;
    gap: 11px;
}

.caseStudyBlock h4 img {
    width: 19px;
    height: 19px;
    filter: invert(13%) sepia(89%) saturate(1729%) hue-rotate(202deg) brightness(96%) contrast(101%);
}

.caseStudyBlock p {
    color: var(--neutral-slate);
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 0;
}

.clientTestimonial {
    background: var(--ocean-depths);
    color: #ffffff;
    padding: 31px 27px;
    font-style: italic;
    font-size: 16px;
    line-height: 1.7;
    margin: 0;
    position: relative;
    /* Neomorphic testimonial styling */
    box-shadow:
            inset 4px 4px 8px rgba(0, 35, 70, 0.3),
            inset -4px -4px 8px rgba(0, 91, 166, 0.1);
}

.clientTestimonial::before {
    content: """;
    font-size: 4rem;
    position: absolute;
    top: -13px;
    left: 23px;
    color: var(--accent-flame);
    font-weight: 720;
}

.clientTestimonial cite {
    display: block;
    margin-top: 17px;
    font-size: 14px;
    font-weight: 520;
    color: var(--cloud-mist);
    text-align: right;
}

.caseStudyImageBlock {
    overflow: hidden;
    /* Neomorphic image styling */
    box-shadow:
            16px 16px 32px rgba(0, 53, 102, 0.15),
            -16px -16px 32px rgba(255, 255, 255, 0.9);
    transition: transform 0.47s ease;
}

.caseStudyImageBlock img {
    width: 100%;
    height: auto;
    transition: transform 0.49s ease;
}

.caseStudyImageBlock:hover {
    transform: translateY(-5px);
}

.caseStudyImageBlock:hover img {
    transform: scale(1.08);
}

/* Healthcare Case Study Features Section Styles */
.healthcareCaseItemsArea {
    padding-bottom: 131px;
    padding-top: 157px;
    background-image: url('../belvedere/healthcare-case-bg.png');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.healthcareCaseItemsArea::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: rgba(230, 234, 240, 0.94);
}

.healthcareCaseItemsArea > .containerWrapper {
    position: relative;
    z-index: 2;
}

.caseStudyFullColumn {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 13px;
}

.healthcareFeatureColumn {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 13px;
}

.healthcareCaseItemsArea .healthcareFeaturedDelicious {
    margin-bottom: 41px;
    padding: 33px;
    background: #ffffff;
    /* Neomorphic card styling */
    box-shadow:
            12px 12px 24px rgba(0, 53, 102, 0.12),
            -12px -12px 24px rgba(255, 255, 255, 0.9);
    transition: all 0.37s ease;
}

.healthcareCaseItemsArea .healthcareFeaturedDelicious:hover {
    transform: translateY(-4px);
    box-shadow:
            16px 16px 32px rgba(0, 53, 102, 0.18),
            -16px -16px 32px rgba(255, 255, 255, 1);
}

.healthcareCaseItemsArea .healthcareFeaturedDelicious .healthcareThumb {
    flex-shrink: 0;
    width: 93px;
    height: 93px;
    margin-right: 27px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--ocean-depths);
    /* Neomorphic thumb styling */
    box-shadow:
            inset 4px 4px 8px rgba(0, 35, 70, 0.3),
            inset -4px -4px 8px rgba(0, 91, 166, 0.1);
}

.healthcareCaseItemsArea .healthcareFeaturedDelicious .healthcareThumb img {
    width: 39px;
    height: 39px;
    filter: invert(100%);
}

.healthcareCaseItemsArea .healthcareFeaturedDelicious .healthcareInfo {
    flex: 1;
    padding-left: 26px;
}

.healthcareCaseItemsArea .healthcareFeaturedDelicious .healthcareInfo h3 {
    font-size: 1.7rem;
    color: var(--midnight-blue);
    font-weight: 770;
    margin-bottom: 19px;
}

.healthcareCaseItemsArea .healthcareFeaturedDelicious .healthcareInfo p {
    font-size: 16.9px;
    font-weight: 460;
    line-height: 1.8;
    margin-top: 21px;
    margin-bottom: 11px;
    color: var(--neutral-slate);
}

.healthcareCaseItemsArea .healthcareFeaturedDelicious .healthcareInfo span {
    display: block;
    font-weight: 770;
    font-size: 15px;
    color: var(--accent-flame);
    text-transform: uppercase;
    letter-spacing: 0.6px;
}

.caseStudyMainTitle {
    margin-bottom: 68px;
}

.caseStudyMarginBottom {
    margin-bottom: 91px;
}

.caseStudyMainTitle span {
    color: var(--accent-flame);
    font-size: 2.1rem;
    font-weight: 460;
    margin-bottom: 23px;
    display: block;
}

.caseStudyMainTitle h3 {
    font-size: 3.3rem;
    font-weight: 770;
    color: var(--ocean-depths);
    text-transform: uppercase;
}

.healthcareTestimonialSection {
    margin-top: 57px;
    text-align: center;
}

.healthcareTestimonial {
    background: var(--ocean-depths);
    color: #ffffff;
    padding: 43px 39px;
    font-style: italic;
    font-size: 17px;
    line-height: 1.8;
    margin: 0 auto;
    max-width: 87%;
    position: relative;
    /* Neomorphic testimonial styling */
    box-shadow:
            inset 6px 6px 12px rgba(0, 35, 70, 0.3),
            inset -6px -6px 12px rgba(0, 91, 166, 0.1);
}

.healthcareTestimonial::before {
    content: """;
    font-size: 4.3rem;
    position: absolute;
    top: -17px;
    left: 39px;
    color: var(--accent-flame);
    font-weight: 720;
}

.healthcareTestimonial cite {
    display: block;
    margin-top: 21px;
    font-size: 15px;
    font-weight: 540;
    color: var(--cloud-mist);
    text-align: right;
}

/* Mobile responsiveness for Case Studies page */
@media screen and (max-width: 890px) {
    .caseStudiesCardColumn {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 35px;
    }

    .caseStudiesCardItem {
        height: 470px;
    }

    .caseStudiesOverlay {
        padding: 53px 33px 37px 33px;
        text-align: center;
    }

    .caseStudiesPadding {
        padding-left: 27px;
        padding-right: 27px;
    }

    .caseStudySectionPadding {
        padding: 61px 0;
    }

    .caseStudyTextColumn,
    .caseStudyImageColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .caseStudyTextBlock,
    .technologyCaseReverse .caseStudyTextBlock {
        padding-right: 0;
        padding-left: 0;
        margin-bottom: 35px;
    }

    .healthcareCaseItemsArea {
        padding-top: 61px;
        padding-bottom: 51px;
    }

    .healthcareFeatureColumn {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .healthcareCaseItemsArea .healthcareFeaturedDelicious {
        flex-direction: column;
        text-align: center;
        padding: 29px;
    }

    .healthcareCaseItemsArea .healthcareFeaturedDelicious .healthcareInfo {
        padding-left: 0;
        margin-top: 25px;
    }

    .healthcareTestimonial {
        max-width: 100%;
        padding: 33px 27px;
    }
}

@media screen and (max-width: 640px) {
    .caseStudiesSectionTitle h2 {
        font-size: 2.3rem;
    }

    .caseStudySectionHeading {
        font-size: 1.9rem;
    }

    .caseStudyMainTitle h3 {
        font-size: 2.5rem;
    }

    .caseStudiesCardItem {
        height: 420px;
    }

    .caseStudiesOverlay {
        padding: 43px 25px 27px 25px;
    }

    .caseStudiesPrimaryButton {
        width: 170px;
        height: 51px;
        line-height: 47px;
    }

    .caseStudyBlock {
        padding: 19px;
    }

    .clientTestimonial,
    .healthcareTestimonial {
        padding: 25px 19px;
        font-size: 15px;
    }

    .healthcareCaseItemsArea .healthcareFeaturedDelicious .healthcareThumb {
        width: 73px;
        height: 73px;
        margin: 0 auto 19px;
    }
}