.elementor-5727 .elementor-element.elementor-element-f9d9810{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;}.elementor-5727 .elementor-element.elementor-element-63e812f{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-post-info .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-post-info .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-text, .elementor-widget-post-info .elementor-icon-list-text a{color:var( --e-global-color-secondary );}.elementor-widget-post-info .elementor-icon-list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-bottom:calc(26px/2);}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-top:calc(26px/2);}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:calc(26px/2);margin-left:calc(26px/2);}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-items.elementor-inline-items{margin-right:calc(-26px/2);margin-left:calc(-26px/2);}body.rtl .elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{left:calc(-26px/2);}body:not(.rtl) .elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{right:calc(-26px/2);}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-item:not(:last-child):after{content:"";border-color:#ddd;}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-top-style:solid;border-top-width:1px;}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-left-style:solid;}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-left-width:1px;}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-icon{width:0px;}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-icon i{font-size:0px;}.elementor-5727 .elementor-element.elementor-element-fbd1e95 .elementor-icon-list-icon svg{--e-icon-list-icon-size:0px;}.elementor-5727 .elementor-element.elementor-element-fbd1e95.elementor-element{--align-self:center;}.elementor-widget-theme-post-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-5727 .elementor-element.elementor-element-6f7fff1{text-align:start;}.elementor-widget-theme-post-excerpt .elementor-widget-container{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-5727 .elementor-element.elementor-element-a8ac8e1 .elementor-icon-list-icon{width:0px;}.elementor-5727 .elementor-element.elementor-element-a8ac8e1 .elementor-icon-list-icon i{font-size:0px;}.elementor-5727 .elementor-element.elementor-element-a8ac8e1 .elementor-icon-list-icon svg{--e-icon-list-icon-size:0px;}.elementor-5727 .elementor-element.elementor-element-1af4ef0{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;}.elementor-5727 .elementor-element.elementor-element-9c8c623{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-5727 .elementor-element.elementor-element-1e43616{text-align:start;}.elementor-5727 .elementor-element.elementor-element-1e43616.elementor-element{--align-self:center;}@media(min-width:768px){.elementor-5727 .elementor-element.elementor-element-f9d9810{--width:1180px;}.elementor-5727 .elementor-element.elementor-element-63e812f{--content-width:80%;}}/* Start custom CSS *//* =========================================================
   THEFFM FM
   SINGLE POST TEMPLATE
   FULL FM POST CSS
   ========================================================= */


/* =========================================================
   VARIABLES
   ========================================================= */

.ffm-post-header,
.ffm-post-main,
.ffm-post-layout,
.ffm-post-navigation {

    --ffm-bg: #efedf1;
    --ffm-surface: #f7f5f8;

    --ffm-text: #1d1b20;
    --ffm-muted: #716d75;

    --ffm-line: #d8d3dc;

    /* THEFFM PURPLE */

    --ffm-purple: #6f3fa5;
    --ffm-purple-dark: #4d286f;
    --ffm-purple-light: #f3eef8;
    --ffm-purple-soft: #faf7fc;

    --ffm-dark: #241c2b;

    --ffm-radius: 12px;
    --ffm-radius-small: 8px;
}


/* =========================================================
   GLOBAL
   ========================================================= */

body {

    background: #f7f6f3;

    color: #1d1b20;
}

.ffm-post-header *,
.ffm-post-main *,
.ffm-post-layout *,
.ffm-post-navigation * {

    box-sizing: border-box;
}


/* =========================================================
   POST HEADER
   ========================================================= */

.ffm-post-header {

    position: relative;

    width: 100%;

    padding: 48px 30px 42px !important;

    overflow: hidden;

    background: #f2f0f3 !important;

    border-bottom: 1px solid #d8d3dc !important;
}


/* Decorative FM */

.ffm-post-header::after {

    content: "FM27";

    position: absolute;

    right: -12px;
    bottom: -18px;

    z-index: 0;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: clamp(110px, 17vw, 230px);

    font-weight: 700;

    line-height: .8;

    letter-spacing: -12px;

    color: rgba(111, 63, 165, .065);

    pointer-events: none;
}


/* Keep header content above decoration */

.ffm-post-header > * {

    position: relative;

    z-index: 1;
}


/* =========================================================
   POST TERMS
   ========================================================= */

.ffm-post-terms {

    width: 100%;

    margin-bottom: 16px !important;
}

.ffm-post-terms .elementor-widget-container,
.ffm-post-terms .elementor-heading-title {

    font-family:
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 12px !important;

    font-weight: 700 !important;

    line-height: 1.4 !important;

    letter-spacing: 1.2px !important;

    text-transform: uppercase !important;

    color: #6f3fa5 !important;
}

.ffm-post-terms a {

    color: #6f3fa5 !important;

    text-decoration: none !important;
}

.ffm-post-terms a:hover {

    color: #4d286f !important;
}


/* =========================================================
   POST TITLE
   ========================================================= */

.ffm-post-title {

    width: 100%;

    max-width: 900px !important;

    margin: 0 !important;
}

.ffm-post-title .elementor-heading-title {

    max-width: 900px !important;

    margin: 0 !important;

    font-family:
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 48px !important;

    font-weight: 700 !important;

    line-height: 1.02 !important;

    letter-spacing: -1.8px !important;

    color: #1d1b20 !important;
}


/* Purple emphasis */

.ffm-post-title .elementor-heading-title em {

    color: #6f3fa5 !important;

    font-style: normal !important;
}


/* =========================================================
   POST EXCERPT
   ========================================================= */

.ffm-post-excerpt {

    width: 100%;

    max-width: 680px !important;

    margin-top: 22px !important;
}

.ffm-post-excerpt .elementor-widget-container {

    max-width: 680px !important;

    font-family:
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 18px !important;

    font-weight: 400 !important;

    line-height: 1.6 !important;

    color: #4f4b52 !important;
}


/* =========================================================
   POST INFO
   ========================================================= */

.ffm-post-info {

    width: 100%;

    margin-top: 28px !important;

    padding-top: 14px !important;

    border-top: 1px solid rgba(111, 63, 165, .28) !important;
}

.ffm-post-info .elementor-widget-container {

    display: flex;

    align-items: center;

    gap: 12px;

    font-family:
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 12px !important;

    font-weight: 700 !important;

    line-height: 1.4 !important;

    letter-spacing: 1px !important;

    text-transform: uppercase !important;

    color: #716d75 !important;
}


/* =========================================================
   OPTIONAL STATUS
   ========================================================= */

.ffm-post-status {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-top: 28px;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 12px;

    font-weight: 700;

    line-height: 1.4;

    letter-spacing: 1px;

    text-transform: uppercase;

    color: #716d75;
}

.ffm-post-status > span {

    display: block;

    width: 9px;
    height: 9px;

    flex: 0 0 9px;

    background: #6f3fa5;

    border-radius: 50%;
}


/* =========================================================
   POST MAIN
   ========================================================= */

.ffm-post-main {

    width: 100%;

    color: #1d1b20;

    font-family:
        "DM Sans",
        "Inter",
        "Lato",
        Arial,
        sans-serif;

    font-size: 17px;

    line-height: 1.75;
}


/* =========================================================
   MAIN PARAGRAPHS
   ========================================================= */

.ffm-post-main p {

    margin: 0 0 25px;
}

.ffm-post-main p:last-child {

    margin-bottom: 0;
}

.ffm-post-main strong {

    color: #4d286f;

    font-weight: 750;
}

.ffm-post-main em {

    color: inherit;
}


/* =========================================================
   HEADINGS
   ========================================================= */

.ffm-post-main h2 {

    position: relative;

    margin: 58px 0 27px;

    padding-left: 19px;

    color: #1d1b20;

    font-family:
        "DM Sans",
        "Inter",
        "Lato",
        Arial,
        sans-serif;

    font-size: clamp(28px, 3.5vw, 37px);

    font-weight: 800;

    line-height: 1.18;

    letter-spacing: -0.025em;
}

.ffm-post-main h2::before {

    content: "";

    position: absolute;

    top: 5px;
    bottom: 5px;
    left: 0;

    width: 4px;

    background: #6f3fa5;

    border-radius: 999px;
}


.ffm-post-main h3 {

    margin: 42px 0 18px;

    color: #4d286f;

    font-family:
        "DM Sans",
        "Inter",
        "Lato",
        Arial,
        sans-serif;

    font-size: 23px;

    font-weight: 750;

    line-height: 1.3;

    letter-spacing: -0.015em;
}


/* =========================================================
   LINKS
   ========================================================= */

.ffm-post-main a {

    color: #6f3fa5;

    text-decoration-thickness: 1px;

    text-underline-offset: 3px;

    transition:
        color .2s ease;
}

.ffm-post-main a:hover {

    color: #4d286f;
}


/* =========================================================
   IMAGES
   ========================================================= */

.ffm-post-main img {

    display: block;

    width: 100%;
    max-width: 100%;
    height: auto;

    margin: 32px 0;

    border-radius: 8px;
}


/* =========================================================
   FIGURES
   ========================================================= */

.ffm-post-main figure {

    width: 100%;

    margin: 38px 0 44px;
}

.ffm-post-main figure img {

    margin: 0;
}

.ffm-post-main figcaption {

    margin-top: 10px;

    color: #716d75;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 12px;

    line-height: 1.5;

    text-align: center;
}


/* =========================================================
   SCREENSHOT LABEL
   ========================================================= */

.ffm-label {

    display: block;

    margin: 0 0 10px;

    color: #716d75;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 11px;

    font-weight: 700;

    line-height: 1.3;

    letter-spacing: 1px;

    text-transform: uppercase;
}


/* =========================================================
   SCREENSHOT PLACEHOLDER
   ========================================================= */

.ffm-screenshot-placeholder {

    display: flex;

    align-items: center;
    justify-content: center;

    width: 100%;

    min-height: 340px;

    padding: 35px;

    box-sizing: border-box;

    background:
        repeating-linear-gradient(
            45deg,
            #f7f4f9,
            #f7f4f9 10px,
            #eee9f1 10px,
            #eee9f1 20px
        );

    border: 2px dashed #cfc5d6;

    border-radius: 8px;

    color: #716d75;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 12px;

    font-weight: 700;

    line-height: 1.5;

    letter-spacing: .08em;

    text-align: center;

    text-transform: uppercase;
}

.ffm-screenshot-placeholder span {

    display: block;

    max-width: 300px;
}


/* =========================================================
   STANDALONE SCREENSHOT
   ========================================================= */

.ffm-single-screenshot {

    width: 100%;

    margin: 38px 0 45px;
}

.ffm-single-screenshot .ffm-screenshot-placeholder {

    min-height: 390px;
}


/* =========================================================
   FM27 / FM26 COMPARISON
   ========================================================= */

.ffm-ui-comparison {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 22px;

    width: 100%;

    margin: 40px 0 46px;
}

.ffm-ui-shot {

    min-width: 0;
}

.ffm-ui-shot .ffm-screenshot-placeholder {

    min-height: 310px;
}

.ffm-ui-shot img {

    width: 100%;

    height: auto;

    margin: 0;

    border: 1px solid #d8d3dc;

    border-radius: 8px;
}


/* =========================================================
   OPTIONAL SCREENSHOT CAPTION
   ========================================================= */

.ffm-screenshot-caption {

    margin: 9px 0 0;

    color: #716d75;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 12px;

    line-height: 1.5;

    text-align: center;
}


/* =========================================================
   BLOCKQUOTES
   ========================================================= */

.ffm-post-main blockquote {

    margin: 35px 0;

    padding: 24px 28px;

    background: #f5f0f8;

    border-left: 4px solid #6f3fa5;

    border-radius:
        0
        8px
        8px
        0;

    color: #4d286f;

    font-size: 19px;

    line-height: 1.65;
}


/* =========================================================
   LISTS
   ========================================================= */

.ffm-post-main ul,
.ffm-post-main ol {

    margin: 0 0 28px;

    padding-left: 28px;
}

.ffm-post-main li {

    margin-bottom: 8px;
}


/* =========================================================
   FINAL ARTICLE SECTION
   ========================================================= */

.fm-article-ending {

    position: relative;

    margin-top: 80px !important;

    padding-top: 45px;

    border-top: 1px solid #d8d3dc;
}

.fm-badge {

    display: inline-block;

    margin-bottom: 18px;

    color: #6f3fa5;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 11px;

    font-weight: 700;

    line-height: 1.3;

    letter-spacing: 1px;

    text-transform: uppercase;
}

.fm-article-ending h2 {

    margin-top: 0;

    margin-bottom: 28px;
}


/* =========================================================
   CLICK LINE
   ========================================================= */

.fm-click-line {

    margin: 36px 0 !important;

    color: #4d286f;

    font-size: clamp(25px, 4vw, 34px);

    font-weight: 700;

    line-height: 1.25;

    text-align: center;
}

.fm-click-line strong {

    color: #4d286f;
}


/* =========================================================
   POST NAVIGATION
   ========================================================= */

.ffm-post-navigation {

    width: 100%;

    margin-top: 60px;

    padding-top: 25px;

    border-top: 1px solid #d8d3dc;
}

.ffm-post-navigation a {

    color: #6f3fa5;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;
}

.ffm-post-navigation a:hover {

    color: #4d286f;
}


/* =========================================================
   ELEMENTOR COMPATIBILITY
   ========================================================= */

.elementor-widget-text-editor .ffm-post-main {

    width: 100%;
}

.elementor-widget-text-editor .ffm-post-main h2 {

    margin-top: 58px;
}

.elementor-widget-text-editor .ffm-post-main p:last-child {

    margin-bottom: 0;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {


    /* Header */

    .ffm-post-header {

        padding: 36px 20px 34px !important;
    }


    .ffm-post-title .elementor-heading-title {

        font-size: 36px !important;

        line-height: 1.06 !important;

        letter-spacing: -1.2px !important;
    }


    .ffm-post-excerpt {

        margin-top: 18px !important;
    }


    .ffm-post-excerpt .elementor-widget-container {

        font-size: 17px !important;

        line-height: 1.6 !important;
    }


    /* Decorative FM */

    .ffm-post-header::after {

        right: -8px;

        bottom: -8px;

        font-size: 110px;

        letter-spacing: -7px;
    }


    /* Main */

    .ffm-post-main {

        font-size: 16px;

        line-height: 1.7;
    }


    .ffm-post-main h2 {

        margin-top: 45px;

        margin-bottom: 22px;

        padding-left: 15px;

        font-size: 28px;
    }


    .ffm-post-main h2::before {

        width: 3px;
    }


    .ffm-post-main h3 {

        margin-top: 35px;

        font-size: 22px;
    }


    .ffm-post-main p {

        margin-bottom: 21px;
    }


    /* Screenshots */

    .ffm-single-screenshot {

        margin: 32px 0 38px;
    }


    .ffm-single-screenshot .ffm-screenshot-placeholder {

        min-height: 250px;
    }


    .ffm-ui-comparison {

        grid-template-columns: 1fr;

        gap: 28px;

        margin: 32px 0 38px;
    }


    .ffm-ui-shot .ffm-screenshot-placeholder {

        min-height: 250px;
    }


    /* Ending */

    .fm-article-ending {

        margin-top: 55px !important;

        padding-top: 35px;
    }


    .fm-click-line {

        font-size: 25px;
    }


    /* Navigation */

    .ffm-post-navigation {

        margin-top: 45px;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {


    .ffm-post-header {

        padding:
            30px
            16px
            30px
            16px !important;
    }


    .ffm-post-title .elementor-heading-title {

        font-size: 32px !important;
    }


    .ffm-post-excerpt .elementor-widget-container {

        font-size: 16px !important;
    }


    .ffm-post-main {

        font-size: 15.5px;

        line-height: 1.68;
    }


    .ffm-post-main h2 {

        font-size: 25px;
    }


    .ffm-screenshot-placeholder {

        min-height: 220px;

        padding: 25px;
    }


    .ffm-ui-shot .ffm-screenshot-placeholder {

        min-height: 220px;
    }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .ffm-post-main a {

        transition: none;
    }

}/* End custom CSS */