:root {
    --fmt-services-blue: #087cff;
    --fmt-services-blue-dark: #0668db;
    --fmt-services-deep: #08234a;
    --fmt-services-text: #10264a;
    --fmt-services-muted: #60718d;
    --fmt-services-line: #d8e8f8;
    --fmt-services-soft: #eff8ff;
    --fmt-services-white: #ffffff;
    --fmt-services-shadow: 0 18px 45px rgba(27, 82, 132, .10);
}

/* =========================================================
   BASE
   ========================================================= */

.fmt-services-page,
.fmt-services-page * {
    box-sizing: border-box;
}

main.fmt-services-page {
    width: 100%;
    max-width: none;
    overflow-x: hidden;
    overflow-y: visible;
    color: var(--fmt-services-text);
    background: #fff;
    font-family: inherit;
}

body.fmt-services-page {
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

.fmt-services-page button,
.fmt-services-page input,
.fmt-services-page textarea {
    font: inherit;
}

.fmt-services-page button {
    cursor: pointer;
}

.fmt-services-page .fmt-container {
    width: min(1180px, calc(100% - 40px));
    max-width: 1180px;
    margin-inline: auto;
}

/* =========================================================
   HERO
   ========================================================= */

.fmt-services-hero {
    position: relative;
    min-height: 395px;
    overflow: hidden;
    isolation: isolate;
    background-color: #eaf7ff;
}

.fmt-services-hero-has-image {
    background-image: var(--fmt-services-hero-image);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.fmt-services-hero-overlay {
    position: absolute;
    z-index: 1;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(248, 253, 255, .99) 0%,
            rgba(245, 252, 255, .97) 28%,
            rgba(240, 250, 255, .91) 43%,
            rgba(235, 248, 255, .68) 56%,
            rgba(235, 248, 255, .22) 72%,
            rgba(235, 248, 255, .02) 90%
        );
}

.fmt-services-hero-inner {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    min-height: 395px;
    padding-block: 44px 42px;
}

.fmt-services-hero-copy {
    width: min(660px, 58%);
}

.fmt-services-eyebrow {
    display: inline-block;
    margin: 0 0 12px;
    color: #296393;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: .09em;
}

.fmt-services-hero h1 {
    max-width: 650px;
    margin: 0;
    color: #09264e;
    font-size: clamp(42px, 4.2vw, 61px);
    font-weight: 900;
    line-height: .98;
    letter-spacing: -.048em;
}

.fmt-services-hero h1 strong {
    color: var(--fmt-services-deep);
    font-weight: inherit;
}

.fmt-services-hero-copy > p {
    max-width: 610px;
    margin: 17px 0 23px;
    color: #435f80;
    font-size: 18px;
    line-height: 1.48;
}

/* =========================================================
   SEARCH
   ========================================================= */

.fmt-services-search {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    align-items: center;
    width: min(100%, 620px);
    min-height: 63px;
    padding: 6px 7px 6px 18px;
    border: 1px solid rgba(127, 190, 239, .72);
    border-radius: 15px;
    background: rgba(255, 255, 255, .97);
    box-shadow:
        0 18px 38px rgba(25, 102, 163, .16),
        inset 0 1px 0 rgba(255,255,255,.8);
    backdrop-filter: blur(8px);
}

.fmt-services-search-icon,
.fmt-services-search > span {
    color: #0879ef;
    font-size: 27px;
    font-weight: 900;
    line-height: 1;
}

.fmt-services-search input {
    min-width: 0;
    height: 49px;
    padding: 0 10px;
    border: 0;
    outline: 0;
    color: #173353;
    background: transparent;
    font-size: 16px;
    font-weight: 650;
}

.fmt-services-search input::placeholder {
    color: #6d8099;
    opacity: 1;
}

.fmt-services-search button,
.fmt-service-submit {
    min-height: 49px;
    padding: 0 24px;
    border: 0;
    border-radius: 10px;
    color: #fff;
    background: linear-gradient(135deg, #066be5, #0b8cff);
    box-shadow: 0 10px 24px rgba(0, 111, 238, .24);
    font-weight: 850;
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.fmt-services-search button:hover,
.fmt-service-submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(0, 111, 238, .30);
}

.fmt-services-search button b,
.fmt-service-submit b {
    margin-left: 13px;
}

/* =========================================================
   TRUST STRIP
   ========================================================= */

.fmt-services-trust {
    border-block: 1px solid #dbeaf7;
    background:
        linear-gradient(90deg, #f6fbff, #ecf7ff, #f8fcff);
}

.fmt-services-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    min-height: 78px;
}

.fmt-services-trust article {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 13px 22px;
}

.fmt-services-trust article + article {
    border-left: 1px solid #cadfee;
}

.fmt-services-trust i {
    display: grid;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 50%;
    color: #0576f3;
    background:
        linear-gradient(145deg, #fff, #edf8ff);
    box-shadow: 0 7px 17px rgba(27, 92, 151, .12);
    font-size: 23px;
    font-style: normal;
    font-weight: 900;
}

.fmt-services-trust strong,
.fmt-services-trust span {
    display: block;
}

.fmt-services-trust strong {
    color: #0c2c53;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.2;
}

.fmt-services-trust span {
    margin-top: 3px;
    color: #60758e;
    font-size: 12px;
}

/* =========================================================
   CATALOG
   ========================================================= */

.fmt-services-catalog {
    padding: 48px 0 34px;
    background:
        radial-gradient(circle at 5% 25%, rgba(0, 126, 255, .045), transparent 25%),
        radial-gradient(circle at 93% 75%, rgba(42, 164, 123, .035), transparent 25%),
        #fff;
}

.fmt-services-heading {
    text-align: center;
}

.fmt-services-heading h2,
.fmt-services-process header h2 {
    margin: 0;
    color: #0b2850;
    font-size: clamp(30px, 3vw, 40px);
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -.035em;
}

.fmt-services-heading p,
.fmt-services-process header p {
    margin: 7px 0 0;
    color: #647792;
    font-size: 16px;
}

/* =========================================================
   FILTERS
   ========================================================= */

.fmt-services-filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin: 24px 0 25px;
}

.fmt-services-filters button {
    min-height: 42px;
    padding: 0 23px;
    border: 1px solid #9bcdf6;
    border-radius: 999px;
    color: #294a70;
    background: #fff;
    font-size: 14px;
    font-weight: 750;
    transition:
        .2s ease;
}

.fmt-services-filters button:hover {
    border-color: #087cff;
    color: #0872e5;
    background: #f1f9ff;
}

.fmt-services-filters button.is-active {
    border-color: #087cff;
    color: #fff;
    background: linear-gradient(135deg, #087cff, #0a8af5);
    box-shadow: 0 8px 18px rgba(8, 124, 255, .22);
}

/* =========================================================
   SERVICE GRID
   ========================================================= */

.fmt-services-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 17px;
}

.fmt-service-card {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 252px;
    flex-direction: column;
    padding: 20px 21px 19px;
    border: 1px solid #d7e5f1;
    border-radius: 17px;
    background:
        linear-gradient(180deg, #fff 0%, #fbfdff 100%);
    box-shadow:
        0 7px 20px rgba(29, 76, 119, .06);
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease;
}

.fmt-service-card.is-featured {
    border-color: #c7e5fa;
    background:
        linear-gradient(145deg, #effaff, #e8f6ff 68%, #f9fdff);
}

.fmt-service-card:hover {
    border-color: #8fc6f3;
    box-shadow:
        0 19px 38px rgba(18, 91, 153, .14);
    transform: translateY(-5px);
}

.fmt-service-featured {
    position: absolute;
    top: 14px;
    right: 14px;
    padding: 6px 10px;
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, #53aaff, #1686f3);
    box-shadow: 0 5px 12px rgba(18, 120, 226, .22);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .02em;
}

.fmt-service-icon {
    display: grid;
    width: 76px;
    height: 69px;
    margin: 1px auto 13px;
    place-items: center;
    border: 1px solid rgba(133, 194, 239, .40);
    border-radius: 20px;
    color: #0871e1;
    background:
        linear-gradient(145deg, #fff, #d8efff);
    box-shadow:
        0 12px 24px rgba(31, 113, 190, .15);
    font-family: Arial, sans-serif;
    font-size: 40px;
    font-weight: 900;
    line-height: 1;
}

.fmt-service-card h3 {
    margin: 0 0 7px;
    color: #0c274b;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.18;
    letter-spacing: -.02em;
}

.fmt-service-card p {
    margin: 0 0 15px;
    color: #576c86;
    font-size: 14px;
    line-height: 1.42;
}

.fmt-service-request {
    width: max-content;
    margin-top: auto;
    padding: 0;
    border: 0;
    color: #056fe8;
    background: transparent;
    font-size: 14px;
    font-weight: 900;
}

.fmt-service-request b {
    margin-left: 8px;
    transition: margin .18s ease;
}

.fmt-service-request:hover b {
    margin-left: 13px;
}

/* hidden states */
.fmt-service-card[hidden],
.fmt-services-grid[hidden],
.fmt-services-empty[hidden],
.fmt-service-modal[hidden] {
    display: none !important;
}

/* =========================================================
   EMPTY STATE
   ========================================================= */

.fmt-services-empty {
    padding: 64px 20px;
    border: 1px dashed #b9d9f3;
    border-radius: 17px;
    text-align: center;
    background: linear-gradient(180deg, #f7fcff, #f1f9ff);
}

.fmt-services-empty > span {
    color: #087cff;
    font-size: 42px;
}

.fmt-services-empty h3 {
    margin: 8px 0 5px;
    color: #153458;
    font-size: 22px;
}

.fmt-services-empty p {
    margin: 0;
    color: var(--fmt-services-muted);
}

/* =========================================================
   PROCESS
   ========================================================= */

.fmt-services-process {
    padding: 0 0 40px;
    background: #fff;
}

.fmt-services-process > .fmt-container {
    padding: 25px 32px 27px;
    border: 1px solid #dcebf7;
    border-radius: 20px;
    background:
        radial-gradient(circle at 0% 50%, rgba(12, 139, 255, .055), transparent 26%),
        linear-gradient(120deg, #f4fbff, #fff, #eef9ff);
    box-shadow: 0 10px 28px rgba(42, 88, 131, .06);
}

.fmt-services-process header {
    text-align: center;
}

.fmt-services-process header h2 {
    font-size: 26px;
}

.fmt-services-process header p {
    font-size: 14px;
}

.fmt-services-process-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 52px;
    margin-top: 25px;
}

.fmt-services-process-grid article {
    position: relative;
    display: grid;
    grid-template-columns: 34px 55px 1fr;
    align-items: center;
    gap: 12px;
}

.fmt-services-process-grid article:not(:last-child)::after {
    position: absolute;
    top: 50%;
    right: -35px;
    width: 0;
    height: 0;
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
    border-left: 13px solid #c9e6fa;
    content: "";
    transform: translateY(-50%);
}

.fmt-services-process-grid article > b {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(135deg, #258df7, #0a7aee);
    box-shadow: 0 5px 13px rgba(26, 126, 222, .20);
    font-size: 14px;
}

.fmt-services-process-grid article > i {
    color: #087cf2;
    font-size: 40px;
    font-style: normal;
    font-weight: 900;
}

.fmt-services-process-grid h3 {
    margin: 0 0 4px;
    color: #10294d;
    font-size: 15px;
    font-weight: 900;
}

.fmt-services-process-grid p {
    margin: 0;
    color: #586d86;
    font-size: 12px;
    line-height: 1.4;
}

/* =========================================================
   MODAL
   ========================================================= */

body.fmt-service-modal-open {
    overflow: hidden !important;
}

.fmt-service-modal {
    position: fixed;
    z-index: 999999;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 20px;
}

.fmt-service-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(3, 21, 46, .71);
    backdrop-filter: blur(7px);
}

.fmt-service-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(630px, 100%);
    max-height: calc(100vh - 40px);
    overflow: auto;
    padding: 32px;
    border: 1px solid #c5def1;
    border-radius: 23px;
    background:
        linear-gradient(180deg, #fff, #fbfdff);
    box-shadow:
        0 32px 85px rgba(0, 24, 59, .32);
}

.fmt-service-modal-close {
    position: absolute;
    top: 15px;
    right: 15px;
    display: grid;
    width: 39px;
    height: 39px;
    place-items: center;
    border: 1px solid #d6e6f2;
    border-radius: 50%;
    color: #15345b;
    background: #f5faff;
    font-size: 25px;
    line-height: 1;
    transition: .18s ease;
}

.fmt-service-modal-close:hover {
    color: #006fe9;
    background: #eaf6ff;
    transform: rotate(3deg);
}

.fmt-service-modal-kicker {
    color: #0876ed;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .12em;
}

.fmt-service-modal-dialog h2 {
    margin: 7px 45px 4px 0;
    color: #092750;
    font-size: 30px;
    font-weight: 900;
    line-height: 1.12;
}

.fmt-service-modal-dialog > p {
    margin: 0 0 21px;
    color: #63758d;
}

/* =========================================================
   FORM
   ========================================================= */

.fmt-service-request-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.fmt-service-request-form label span {
    display: block;
    margin: 0 0 6px;
    color: #18375e;
    font-size: 12px;
    font-weight: 850;
}

.fmt-service-request-form input,
.fmt-service-request-form textarea {
    width: 100%;
    border: 1px solid #caddea;
    border-radius: 11px;
    outline: 0;
    color: #102d50;
    background: #fbfdff;
    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}

.fmt-service-request-form input {
    height: 48px;
    padding: 0 13px;
}

.fmt-service-request-form textarea {
    min-height: 105px;
    padding: 12px 13px;
    resize: vertical;
}

.fmt-service-request-form input:focus,
.fmt-service-request-form textarea:focus {
    border-color: #1686f5;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(22, 134, 245, .11);
}

.fmt-service-form-wide,
.fmt-service-submit,
.fmt-service-form-status {
    grid-column: 1 / -1;
}

.fmt-service-submit {
    width: 100%;
}

.fmt-service-submit:disabled {
    cursor: wait;
    opacity: .7;
}

.fmt-service-form-status {
    margin: 0;
    text-align: center;
    color: #087445;
    font-size: 13px;
    font-weight: 850;
}

.fmt-service-form-status.is-error {
    color: #c43434;
}

.fmt-service-form-status.is-success {
    color: #078349;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    .fmt-services-hero {
        min-height: 370px;
    }

    .fmt-services-hero-inner {
        min-height: 370px;
    }

    .fmt-services-hero-copy {
        width: 62%;
    }

    .fmt-services-hero h1 {
        font-size: clamp(39px, 5vw, 52px);
    }

    .fmt-services-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .fmt-services-trust article {
        padding-inline: 14px;
    }
}

/* =========================================================
   MOBILE / TABLET
   ========================================================= */

@media (max-width: 780px) {

    .fmt-services-page .fmt-container {
        width: min(100% - 28px, 1180px);
    }

    .fmt-services-hero {
        min-height: 0;
        background-position: 68% center;
    }

    .fmt-services-hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(246, 252, 255, .97) 0%,
                rgba(242, 251, 255, .94) 47%,
                rgba(237, 248, 255, .82) 72%,
                rgba(237, 248, 255, .70) 100%
            );
    }

    .fmt-services-hero-inner {
        min-height: 0;
        padding-block: 40px 36px;
    }

    .fmt-services-hero-copy {
        width: 100%;
        text-align: center;
    }

    .fmt-services-hero h1 {
        max-width: 620px;
        margin-inline: auto;
        font-size: clamp(36px, 9vw, 49px);
    }

    .fmt-services-hero-copy > p {
        margin-inline: auto;
        font-size: 16px;
    }

    .fmt-services-hero-copy > p br {
        display: none;
    }

    .fmt-services-search {
        margin-inline: auto;
        text-align: left;
    }

    .fmt-services-trust-grid {
        grid-template-columns: 1fr 1fr;
    }

    .fmt-services-trust article:nth-child(3) {
        border-left: 0;
    }

    .fmt-services-trust article:nth-child(n+3) {
        border-top: 1px solid #c8dced;
    }

    .fmt-services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fmt-services-process-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .fmt-services-process-grid article:not(:last-child)::after {
        display: none;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 540px) {

    .fmt-services-hero {
        background-position: 70% center;
    }

    .fmt-services-hero-inner {
        padding-block: 34px 30px;
    }

    .fmt-services-eyebrow {
        font-size: 10px;
    }

    .fmt-services-hero h1 {
        font-size: clamp(34px, 11vw, 43px);
        line-height: 1.01;
    }

    .fmt-services-hero-copy > p {
        margin-top: 14px;
        font-size: 15px;
    }

    .fmt-services-search {
        grid-template-columns: 30px minmax(0, 1fr);
        padding: 7px 8px 7px 13px;
        border-radius: 14px;
    }

    .fmt-services-search button {
        grid-column: 1 / -1;
        width: 100%;
        margin-top: 4px;
    }

    .fmt-services-trust-grid,
    .fmt-services-grid {
        grid-template-columns: 1fr;
    }

    .fmt-services-trust article + article,
    .fmt-services-trust article:nth-child(3) {
        border-top: 1px solid #c8dced;
        border-left: 0;
    }

    .fmt-services-catalog {
        padding-top: 36px;
    }

    .fmt-services-filters {
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 6px;
        scrollbar-width: none;
    }

    .fmt-services-filters::-webkit-scrollbar {
        display: none;
    }

    .fmt-services-filters button {
        flex: 0 0 auto;
    }

    .fmt-service-card {
        min-height: 225px;
    }

    .fmt-services-process > .fmt-container {
        padding-inline: 18px;
    }

    .fmt-service-modal {
        padding: 12px;
    }

    .fmt-service-modal-dialog {
        padding: 28px 18px 21px;
        border-radius: 18px;
    }

    .fmt-service-modal-dialog h2 {
        font-size: 25px;
    }

    .fmt-service-request-form {
        grid-template-columns: 1fr;
    }

    .fmt-service-form-wide,
    .fmt-service-submit,
    .fmt-service-form-status {
        grid-column: auto;
    }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .fmt-services-page *,
    .fmt-services-page *::before,
    .fmt-services-page *::after {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}

/* =========================================================
   FINAL SERVICES FIX
   HERO IMAGE + PAGE SCROLL
========================================================= */

html {
    overflow-y: auto !important;
}

body.fmt-services-page {
    position: static !important;
    height: auto !important;
    min-height: 100% !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

main#fmt-services-page {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 100vh !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    left: auto !important;
    right: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* HERO */

#fmt-services-page .fmt-services-hero {
    position: relative;
    min-height: 395px;
    overflow: hidden;

    background-image:
        linear-gradient(
            90deg,
            rgba(244, 251, 255, .98) 0%,
            rgba(244, 251, 255, .96) 28%,
            rgba(239, 249, 255, .86) 45%,
            rgba(239, 249, 255, .22) 68%,
            rgba(239, 249, 255, 0) 100%
        ),
        var(--fmt-services-hero-image);

    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}


/* remove old generated hero decoration */

#fmt-services-page .fmt-services-hero::before,
#fmt-services-page .fmt-services-hero::after,
#fmt-services-page .fmt-services-hero-art,
#fmt-services-page .fmt-services-globe,
#fmt-services-page .fmt-services-plane,
#fmt-services-page .fmt-services-bag {
    display: none !important;
}


/* HERO CONTENT */

#fmt-services-page .fmt-services-hero-inner {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    min-height: 395px;
    padding-top: 38px;
    padding-bottom: 38px;
}


#fmt-services-page .fmt-services-hero-copy {
    width: min(650px, 58%);
    position: relative;
    z-index: 3;
}


#fmt-services-page .fmt-services-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}


/* MOBILE */

@media (max-width: 780px) {

    #fmt-services-page .fmt-services-hero {
        min-height: 480px;

        background-position: 66% center;

        background-image:
            linear-gradient(
                180deg,
                rgba(246, 252, 255, .98) 0%,
                rgba(246, 252, 255, .95) 48%,
                rgba(246, 252, 255, .45) 74%,
                rgba(246, 252, 255, .12) 100%
            ),
            var(--fmt-services-hero-image);
    }

    #fmt-services-page .fmt-services-hero-inner {
        align-items: flex-start;
        min-height: 480px;
    }

    #fmt-services-page .fmt-services-hero-copy {
        width: 100%;
    }
}

/* v1.3.8 luxury service catalogue */
.fmt-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.fmt-services-catalog{padding:68px 0 54px;background:radial-gradient(circle at 8% 16%,rgba(19,139,222,.08),transparent 26%),radial-gradient(circle at 92% 72%,rgba(214,174,83,.08),transparent 24%),linear-gradient(180deg,#f8fcff 0%,#fff 55%,#f7fbff 100%)}
.fmt-services-filters{padding:8px;border:1px solid rgba(134,185,224,.35);border-radius:999px;background:rgba(255,255,255,.82);box-shadow:0 18px 40px rgba(13,65,105,.08);width:max-content;max-width:100%;margin:28px auto 34px}
.fmt-services-grid{gap:22px}
.fmt-service-card{min-height:300px;padding:25px 24px 22px;border:1px solid rgba(126,177,216,.34);border-radius:24px;background:linear-gradient(150deg,#fff 0%,#f8fcff 72%,#edf8ff 100%);box-shadow:0 16px 42px rgba(7,48,83,.08),inset 0 1px 0 #fff;overflow:hidden}
.fmt-service-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#0d78d5,#25b5f2,#ddb85d);opacity:0;transition:.25s}
.fmt-service-card::after{content:"";position:absolute;width:150px;height:150px;right:-65px;bottom:-75px;border-radius:50%;background:radial-gradient(circle,rgba(31,157,229,.12),transparent 68%);pointer-events:none}
.fmt-service-card:hover{transform:translateY(-8px);border-color:rgba(20,133,207,.52);box-shadow:0 28px 58px rgba(5,48,83,.15)}
.fmt-service-card:hover::before{opacity:1}
.fmt-service-card.is-featured{background:linear-gradient(145deg,#f5fbff,#eaf7ff 68%,#fff);border-color:rgba(42,158,225,.42)}
.fmt-service-featured{top:18px;right:18px;background:linear-gradient(135deg,#d6a947,#f1d17c);color:#17334a;box-shadow:0 8px 18px rgba(164,121,25,.18);text-transform:uppercase;letter-spacing:.08em}
.fmt-service-icon{width:74px;height:74px;margin:2px 0 23px;border:1px solid rgba(117,180,224,.38);border-radius:22px;background:linear-gradient(145deg,#fff,#e5f5ff);box-shadow:0 14px 30px rgba(12,104,169,.14)}
.fmt-service-icon img{width:44px;height:44px;object-fit:contain;transition:transform .25s ease}
.fmt-service-card:hover .fmt-service-icon img{transform:scale(1.08)}
.fmt-service-card h3{font-size:19px;line-height:1.3;margin-bottom:9px;color:#082b4d}
.fmt-service-card>p{font-size:14px;line-height:1.7;color:#657b8f;margin:0 0 22px}
.fmt-service-request{margin-top:auto;width:100%;min-height:46px;border:1px solid rgba(15,126,205,.25)!important;border-radius:13px!important;padding:0 16px!important;color:#0875c6!important;background:rgba(255,255,255,.8)!important;font-weight:800!important;text-align:left!important;display:flex!important;align-items:center;justify-content:space-between;transition:.2s!important}
.fmt-service-request:hover{color:#fff!important;background:linear-gradient(135deg,#075da8,#0b91df)!important;border-color:transparent!important;transform:translateY(-1px)}
.fmt-services-process{padding:78px 0 88px;background:linear-gradient(135deg,#031f38,#073a61 58%,#075f91);color:#fff;position:relative;overflow:hidden}
.fmt-services-process::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 20%,rgba(33,172,240,.18),transparent 30%),radial-gradient(circle at 90% 76%,rgba(224,185,89,.13),transparent 25%);pointer-events:none}
.fmt-services-process .fmt-container{position:relative;z-index:1}
.fmt-services-process header h2{color:#fff}.fmt-services-process header p{color:#bdd4e5}.fmt-services-section-label{color:#efcb72!important}
.fmt-services-process-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;margin-top:38px!important;position:relative}
.fmt-services-process-grid::before{content:"";position:absolute;left:16%;right:16%;top:42px;height:1px;background:linear-gradient(90deg,transparent,rgba(239,203,114,.65),transparent)}
.fmt-services-process-grid article{position:relative;z-index:1;display:block!important;min-height:220px!important;padding:30px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:23px!important;background:rgba(255,255,255,.07)!important;box-shadow:0 20px 50px rgba(0,0,0,.16)!important;backdrop-filter:blur(10px);text-align:left!important}
.fmt-process-number{display:grid!important;width:58px!important;height:58px!important;place-items:center;margin:0 0 28px!important;border:1px solid rgba(239,203,114,.55);border-radius:50%;color:#f2ce74!important;background:#082f50!important;font-weight:900!important}
.fmt-services-process-grid h3{margin:0 0 9px!important;color:#fff!important;font-size:20px!important}.fmt-services-process-grid p{margin:0!important;color:#bfd1df!important;line-height:1.7!important}
/* v1.3.9: neutralise the legacy white inner panel so the luxury process
   section remains readable in themes that load the earlier rule first. */
#fmt-services-page .fmt-services-process > .fmt-container{
    padding-top:0!important;
    padding-bottom:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
#fmt-services-page .fmt-services-process header h2{
    color:#fff!important;
    text-shadow:0 2px 20px rgba(0,0,0,.16);
}
#fmt-services-page .fmt-services-process header p{color:#c6dceb!important}
#fmt-services-page .fmt-services-process-grid article{
    color:#fff!important;
    background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.055))!important;
}
#fmt-services-page .fmt-services-process-grid article::after{display:none!important}
@media(max-width:900px){.fmt-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fmt-services-process-grid{grid-template-columns:1fr!important}.fmt-services-process-grid::before{display:none}}
@media(max-width:560px){.fmt-services-grid{grid-template-columns:1fr}.fmt-services-filters{width:100%;border-radius:22px}.fmt-service-card{min-height:270px}.fmt-services-process{padding:58px 0}}
