@font-face  {
    font-family:Manrope;
    src:url('/assets/fonts/manrope-400.woff2') format('woff2');
    font-weight:400;
    font-style:normal;
    font-display:swap
}

@font-face  {
    font-family:Manrope;
    src:url('/assets/fonts/manrope-500.woff2') format('woff2');
    font-weight:500;
    font-style:normal;
    font-display:swap
}

@font-face  {
    font-family:Manrope;
    src:url('/assets/fonts/manrope-600.woff2') format('woff2');
    font-weight:600;
    font-style:normal;
    font-display:swap
}

@font-face  {
    font-family:Manrope;
    src:url('/assets/fonts/manrope-700.woff2') format('woff2');
    font-weight:700;
    font-style:normal;
    font-display:swap
}

@font-face  {
    font-family:Manrope;
    src:url('/assets/fonts/manrope-800.woff2') format('woff2');
    font-weight:800;
    font-style:normal;
    font-display:swap
}

:root  {
    --fg-ink:#153447;
    --fg-muted:#556575;
    --fg-blue:#235bbb;
    --fg-blue-hover:#174a9f;
    --fg-paper:#f7f8fa;
    --fg-line:#dce3e9;
    --fg-soft:#edf3fa;
    --fg-sand:#f0eadf;
    --fg-mint:#e7f0e5;
    --fg-radius:22px;
    --fg-max:1240px;
    --fg-header:80px;
    --bg:#f7f8fa;
    --bg-2:#edf2f6;
    --surface:#fff;
    --surface-2:#f0f4f8;
    --ink:#153447;
    --muted:#556575;
    --line:#dce3e9;
    --acc:#235bbb;
    --acc-hi:#174a9f;
    --acc-dark:#235bbb;
    --acc-ink:#fff;
    --acc-glow:#edf3fa;
    --gold:#aa7536;
    --gold-ink:#81561e;
    --gold-soft:#f0eadf;
    --danger:#ad352e;
    --warning:#81561e;
    --success:#256747;
    --font:Manrope,'Segoe UI',Arial,sans-serif;
    --display:Manrope,'Segoe UI',Arial,sans-serif;
    --max-w:1240px;
    --shadow-warm:0 4px 20px #15344708;
    --shadow-warm-lg:0 20px 50px #15344714
}

*,*::before,*::after  {
    box-sizing:border-box
}

html  {
    scroll-behavior:smooth;
    scroll-padding-top:100px
}

body  {
    margin:0;
    background:var(--fg-paper);
    font-family:var(--font);
    font-size:16px;
    line-height:1.7;
    color:var(--fg-ink);
    -webkit-font-smoothing:antialiased
}

h1,h2,h3,h4,p,figure  {
    margin:0
}

button,input,textarea,select  {
    font:inherit
}

button,a,input,summary,select,textarea  {
    -webkit-tap-highlight-color:transparent
}

button  {
    cursor:pointer
}

button:disabled  {
    cursor:wait;
    opacity:.65
}

a  {
    color:var(--fg-blue);
    text-underline-offset:4px
}

img  {
    max-width:100%;
    height:auto
}

svg  {
    flex-shrink:0
}

button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible  {
    outline:3px solid #235bbb;
    outline-offset:4px
}

button:focus:not(:focus-visible),[tabindex='-1']:focus  {
    outline:none
}

::selection  {
    background:#d8e7ff;
    color:#153447
}

[hidden]  {
    display:none!important
}

.fg-icon  {
    width:22px;
    height:22px;
    vertical-align:middle
}

.fg-skip  {
    position:fixed;
    top:8px;
    left:16px;
    z-index:3000;
    transform:translateY(-160%);
    background:#153447;
    color:white;
    padding:10px 18px;
    border-radius:8px
}

.fg-skip:focus  {
    transform:none
}

/* One navigation tree for desktop and touch. */
.fg-header  {
    position:sticky;
    top:0;
    z-index:300;
    background:rgba(255,255,255,.97);
    border-bottom:1px solid #e4e8ed;
    backdrop-filter:blur(14px)
}

.fg-header-inner  {
    max-width:1376px;
    min-height:var(--fg-header);
    padding:0 32px;
    display:flex;
    align-items:center;
    gap:32px;
    margin:auto
}

.fg-brand  {
    display:inline-flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    color:var(--fg-ink);
    flex-shrink:0;
    font-size:25px;
    font-weight:800;
    letter-spacing:-1.1px;
    line-height:1
}

.fg-brand img  {
    width:39px;
    height:39px
}

.fg-brand-word  {
    white-space:nowrap
}

.fg-brand-word span  {
    font-weight:500
}

.fg-nav  {
    display:flex;
    align-items:center;
    gap:3px;
    flex:1
}

.fg-nav>a,.fg-nav-group>summary  {
    min-height:44px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:9px 13px;
    font-size:13px;
    line-height:1.4;
    text-decoration:none;
    font-weight:700;
    color:#445a69;
    border-radius:9px;
    white-space:nowrap
}

.fg-nav>a:hover,.fg-nav-group>summary:hover  {
    background:#f1f5f8;
    color:var(--fg-ink)
}

.fg-nav [aria-current=page]  {
    color:var(--fg-blue)
}

.fg-nav-group  {
    position:relative
}

.fg-nav-group>summary  {
    list-style:none;
    cursor:pointer
}

.fg-nav-group>summary::-webkit-details-marker  {
    display:none
}

.fg-nav-group>summary .fg-icon  {
    width:13px;
    height:13px
}

.fg-nav-group[open]>summary  {
    background:var(--fg-soft)
}

.fg-nav-group[open]>summary .fg-icon  {
    transform:rotate(180deg)
}

.fg-mega  {
    position:absolute;
    top:calc(100% + 17px);
    left:-20px;
    width:620px;
    max-width:calc(100vw - 50px);
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5px;
    padding:19px;
    background:white;
    border:1px solid var(--fg-line);
    border-radius:20px;
    box-shadow:0 24px 65px #15344720
}

.fg-mega-intro  {
    grid-column:1/-1;
    border-bottom:1px solid var(--fg-line);
    padding:6px 10px 15px;
    margin-bottom:5px
}

.fg-mega-intro>span  {
    font-size:11px;
    letter-spacing:1.5px;
    text-transform:uppercase;
    font-weight:800;
    color:#6c7c88
}

.fg-mega-intro p  {
    font-size:14px;
    color:var(--fg-ink);
    margin-top:4px
}

.fg-mega>a  {
    display:flex;
    align-items:flex-start;
    gap:13px;
    min-height:77px;
    padding:12px;
    border-radius:12px;
    text-decoration:none;
    color:var(--fg-ink)
}

.fg-mega>a:hover  {
    background:#f0f5fa
}

.fg-mega>a>.fg-icon  {
    width:22px;
    height:22px;
    margin-top:3px;
    color:var(--fg-blue)
}

.fg-mega a strong  {
    display:block;
    font-size:14px;
    font-weight:750
}

.fg-mega a small  {
    display:block;
    font-size:12px;
    color:var(--fg-muted);
    margin-top:2px;
    line-height:1.5
}

.fg-nav-group-resources .fg-mega  {
    left:auto;
    right:-110px;
    width:520px
}

.fg-header-actions  {
    display:flex;
    align-items:center;
    gap:16px;
    margin-left:auto;
    flex-shrink:0
}

.fg-login-link  {
    font-size:13px;
    font-weight:750;
    color:var(--fg-ink);
    text-decoration:none;
    white-space:nowrap
}

.fg-header-trial  {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    text-decoration:none;
    background:var(--fg-blue);
    color:white;
    font-size:13px;
    font-weight:750;
    border-radius:10px;
    min-height:44px;
    padding:10px 17px;
    box-shadow:0 4px 8px #1534470b;
    white-space:nowrap
}

.fg-header-trial:hover  {
    background:var(--fg-blue-hover)
}

.fg-header-trial .fg-icon  {
    width:16px;
    height:16px
}

.fg-menu-button  {
    display:none;
    background:white;
    border:1px solid var(--fg-line);
    border-radius:10px;
    width:44px;
    height:44px;
    align-items:center;
    justify-content:center;
    color:var(--fg-ink)
}

.fg-menu-button .fg-close-icon  {
    display:none
}

.fg-header[data-menu-open] .fg-menu-button .fg-close-icon  {
    display:block
}

.fg-header[data-menu-open] .fg-menu-button .fg-menu-icon  {
    display:none
}

.fg-nav-mobile-actions  {
    display:none
}

/* Shared layout, type and actions. */
.fg-container,.container  {
    width:100%;
    max-width:var(--fg-max);
    margin:0 auto;
    padding:0 36px
}

.fg-section  {
    padding:88px 0;
    position:relative
}

.fg-section-sm  {
    padding:56px 0
}

.fg-band  {
    background:white;
    border-block:1px solid #e4e8ed
}

.fg-eyebrow  {
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:#566d7e;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    margin-bottom:18px
}

.fg-eyebrow::before  {
    content:'';
    display:block;
    width:20px;
    height:2px;
    background:#b88c54
}

.fg-title  {
    font-size:clamp(35px,4.2vw,61px);
    line-height:1.12;
    font-weight:800;
    letter-spacing:-2.7px;
    color:var(--fg-ink);
    max-width:940px;
    text-wrap:balance
}

.fg-title em  {
    font-style:normal;
    color:var(--fg-blue)
}

.fg-lead  {
    font-size:17px;
    line-height:1.85;
    color:var(--fg-muted);
    max-width:640px;
    margin-top:22px
}

.fg-section h2  {
    font-size:clamp(28px,3vw,41px);
    font-weight:800;
    line-height:1.22;
    letter-spacing:-1.5px;
    text-wrap:balance
}

.fg-section h3  {
    font-size:19px;
    line-height:1.4;
    letter-spacing:-.4px;
    font-weight:750
}

.fg-section-heading  {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:35px;
    margin-bottom:35px
}

.fg-section-heading>div  {
    max-width:710px
}

.fg-section-heading p  {
    color:var(--fg-muted);
    max-width:640px;
    margin-top:15px
}

.fg-section-heading>.fg-text-link  {
    flex-shrink:0
}

.fg-muted  {
    color:var(--fg-muted)
}

.fg-actions  {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:30px
}

.fg-btn,.btn-main,.btn-ghost  {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:52px;
    padding:13px 23px;
    border-radius:11px;
    font-size:14px;
    font-weight:750;
    line-height:1.5;
    text-decoration:none;
    text-align:center;
    border:1px solid transparent;
    transition:background .16s,color .16s,box-shadow .16s;
    cursor:pointer
}

.fg-btn .fg-icon  {
    width:18px;
    height:18px
}

.fg-btn-primary,.btn-main  {
    color:white;
    background:var(--fg-blue);
    box-shadow:0 4px 9px #1534470b
}

.fg-btn-primary:hover,.btn-main:hover  {
    background:var(--fg-blue-hover);
    box-shadow:0 7px 16px #235bbb20
}

.fg-btn-secondary,.btn-ghost  {
    background:transparent;
    color:var(--fg-ink);
    border-color:#c9d3db
}

.fg-btn-secondary:hover,.btn-ghost:hover  {
    background:white;
    border-color:#8fa6b6
}

.fg-btn-light  {
    background:white;
    color:var(--fg-ink);
    border-color:white
}

.fg-btn-light:hover  {
    background:#edf3fa
}

.fg-text-link  {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--fg-blue);
    font-size:14px;
    font-weight:750;
    text-decoration:none;
    min-height:44px
}

.fg-text-link:hover  {
    text-decoration:underline
}

.fg-text-link .fg-icon  {
    width:17px;
    height:17px
}

.fg-trial-note  {
    display:flex;
    flex-wrap:wrap;
    gap:7px 20px;
    color:#526674;
    font-size:11px;
    line-height:1.7;
    margin:21px 0 0
}

.fg-trial-note span  {
    display:inline-flex;
    align-items:center;
    gap:5px
}

.fg-trial-note .fg-icon  {
    width:14px;
    height:14px;
    color:#2c7052
}

.fg-breadcrumb  {
    display:flex;
    gap:9px;
    align-items:center;
    flex-wrap:wrap;
    font-size:11px;
    color:#647787;
    margin-bottom:26px
}

.fg-breadcrumb a  {
    color:inherit;
    text-decoration:none
}

.fg-breadcrumb a:hover  {
    text-decoration:underline
}

.fg-breadcrumb [aria-current]  {
    color:var(--fg-ink)
}

.fg-grid  {
    display:grid;
    gap:22px;
    min-width:0
}

.fg-grid-2  {
    grid-template-columns:repeat(2,minmax(0,1fr))
}

.fg-grid-3  {
    grid-template-columns:repeat(3,minmax(0,1fr))
}

.fg-grid-4  {
    grid-template-columns:repeat(4,minmax(0,1fr))
}

.fg-split  {
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:65px;
    min-width:0
}

.fg-split>*  {
    min-width:0
}

.fg-split p  {
    color:var(--fg-muted);
    margin-top:16px
}

.fg-card  {
    min-width:0;
    background:white;
    border:1px solid var(--fg-line);
    border-radius:var(--fg-radius);
    padding:30px
}

.fg-card p  {
    color:var(--fg-muted);
    font-size:14px;
    line-height:1.85;
    margin-top:12px
}

.fg-card>.fg-text-link  {
    margin-top:22px
}

.fg-card-icon  {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:47px;
    height:47px;
    border-radius:13px;
    background:var(--fg-soft);
    color:#36639b;
    margin-bottom:24px
}

.fg-card-icon .fg-icon  {
    width:23px;
    height:23px
}

.fg-card h3+.fg-checklist  {
    margin-top:18px
}

.fg-tag  {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:5px 10px;
    background:var(--fg-soft);
    color:#3d5e79;
    border-radius:7px;
    font-size:11px;
    font-weight:750;
    line-height:1.5
}

.fg-checklist  {
    list-style:none;
    padding:0;
    margin:24px 0 0;
    display:grid;
    gap:15px
}

.fg-checklist li  {
    position:relative;
    padding-left:26px;
    font-size:14px;
    line-height:1.8;
    color:#435c6d
}

.fg-checklist li::before  {
    content:'✓';
    position:absolute;
    top:0;
    left:0;
    font-weight:800;
    color:#2b7253
}

.fg-checklist strong  {
    color:var(--fg-ink)
}

.fg-note  {
    padding:22px 25px;
    background:var(--fg-soft);
    border:1px solid #dae5f0;
    border-radius:15px;
    font-size:13px;
    line-height:1.9;
    color:#465f73;
    margin-top:28px
}

.fg-note strong  {
    color:var(--fg-ink)
}

.fg-note p+p  {
    margin-top:10px
}

.fg-note a  {
    font-weight:700
}

.fg-steps  {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:25px;
    counter-reset:fg-steps;
    margin-top:35px
}

.fg-step  {
    position:relative;
    padding:28px 0 0;
    border-top:1px solid #bdcddb;
    counter-increment:fg-steps
}

.fg-step::before  {
    content:counter(fg-steps,decimal-leading-zero);
    display:block;
    color:var(--fg-blue);
    font-size:13px;
    font-weight:800;
    margin-bottom:17px;
    letter-spacing:1px
}

.fg-step p  {
    color:var(--fg-muted);
    font-size:14px;
    line-height:1.9;
    margin-top:12px
}

.fg-step>span.fg-step-number  {
    display:none
}

.fg-subnav  {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:25px
}

.fg-subnav a  {
    display:inline-flex;
    align-items:center;
    min-height:42px;
    border:1px solid #d4dfe8;
    padding:8px 14px;
    border-radius:9px;
    font-size:12px;
    font-weight:700;
    color:#38576d;
    text-decoration:none;
    background:white
}

.fg-subnav a:hover  {
    background:var(--fg-soft);
    border-color:#9db4c9
}

.fg-faq  {
    background:white;
    border-bottom:1px solid var(--fg-line);
    padding:0 0 0;
    margin:0
}

.fg-faq summary  {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    padding:24px 3px;
    cursor:pointer;
    font-weight:700;
    font-size:15px;
    list-style:none;
    color:var(--fg-ink);
    line-height:1.7
}

.fg-faq summary::-webkit-details-marker  {
    display:none
}

.fg-faq summary::after  {
    content:'+';
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    width:26px;
    height:26px;
    border:1px solid #d3dde5;
    border-radius:50%;
    font-size:20px;
    line-height:1;
    font-weight:400;
    color:#4f6577
}

.fg-faq[open] summary::after  {
    content:'−';
    background:var(--fg-soft)
}

.fg-faq>p,.fg-faq>div  {
    padding:0 38px 24px 3px;
    color:var(--fg-muted);
    font-size:14px;
    line-height:1.95
}

.fg-faq p+p  {
    margin-top:10px
}

.fg-faq li  {
    margin:8px 0
}

.fg-faq-section  {
    max-width:880px;
    margin:auto
}

/* Recognisable product, no fabricated interface or customer results. */
.fg-hero  {
    padding:52px 0 64px
}

.fg-hero-split  {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:54px;
    align-items:center;
    min-width:0
}

.fg-hero-split>*  {
    min-width:0
}

.fg-hero .fg-lead  {
    font-size:16px
}

.fg-hero:has(.fg-breadcrumb)  {
    padding-top:30px
}

.fg-shot  {
    min-width:0;
    margin:0;
    background:white;
    border:1px solid #cfdae4;
    border-radius:15px;
    overflow:hidden;
    box-shadow:0 24px 60px #15344712
}

.fg-shot-bar  {
    min-height:37px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:0 13px;
    border-bottom:1px solid #e4e9ef;
    background:#fdfefe;
    font-size:9px;
    color:#5c7182;
    font-weight:650
}

.fg-shot-bar>.fg-icon  {
    width:12px;
    height:12px;
    color:#8192a0
}

.fg-shot-dots  {
    display:flex;
    gap:4px;
    flex:0 0 32px
}

.fg-shot-dots i  {
    display:block;
    width:5px;
    height:5px;
    background:#d9e2e9;
    border-radius:50%
}

.fg-shot img  {
    display:block;
    width:100%;
    height:auto;
    object-fit:contain
}

.fg-shot figcaption  {
    display:block;
    text-align:center;
    padding:9px 12px;
    color:#63798b;
    font-size:9px;
    background:#fff;
    border-top:1px solid #e9eef2
}

.fg-shot-mobile  {
    max-width:260px;
    margin:auto;
    border-radius:22px;
    box-shadow:0 25px 65px #071c3638
}

.fg-shot-mobile .fg-shot-bar  {
    padding-inline:12px
}

.fg-shot-mobile .fg-shot-dots  {
    display:none
}

.fg-shot-mobile figcaption  {
    font-size:9px;
    padding:9px
}

.fg-hero-split .fg-shot  {
    box-shadow:0 22px 65px #15344716
}

/* Home: asymmetric introduction, product workbench and editorial stories. */
.fg-home-hero  {
    padding:69px 0 53px;
    background:linear-gradient(110deg,#f7f8fa 48%,#eaf0f5 100%);
    position:relative
}

.fg-home-hero .fg-hero-split  {
    grid-template-columns:1.05fr 1.12fr;
    gap:38px
}

.fg-home-hero .fg-title  {
    font-size:clamp(42px,4.55vw,66px);
    line-height:1.1;
    letter-spacing:-3px
}

.fg-home-hero .fg-lead  {
    max-width:485px;
    font-size:15px;
    margin-top:24px
}

.fg-hero-product  {
    position:relative;
    padding:33px 0 30px;
    min-width:0
}

.fg-hero-product::before  {
    content:'';
    position:absolute;
    inset:0 21px 6px -22px;
    border-radius:34px;
    background:#dee7ee;
    transform:rotate(-3deg)
}

.fg-hero-product .fg-shot  {
    position:relative;
    transform:rotate(0);
    border-radius:11px;
    box-shadow:0 25px 50px #1534471e
}

.fg-hero-product .fg-shot-bar  {
    min-height:29px;
    font-size:8px
}

.fg-hero-caption  {
    display:flex;
    align-items:center;
    gap:10px;
    position:relative;
    margin:20px 15px -10px;
    color:#37576d;
    font-size:11px;
    line-height:1.6;
    font-weight:650
}

.fg-hero-caption .fg-icon  {
    width:19px;
    height:19px;
    color:#3d7762
}

.fg-intro-strip  {
    display:grid;
    grid-template-columns:1.1fr repeat(3,1fr);
    gap:25px;
    padding:24px 0;
    border-top:1px solid #dbe4eb;
    border-bottom:1px solid #dbe4eb;
    margin-top:46px;
    font-size:11px;
    color:#5b7181;
    align-items:center
}

.fg-intro-strip>strong  {
    font-size:11px;
    color:#2d4a60
}

.fg-intro-strip>span  {
    display:flex;
    align-items:center;
    gap:9px
}

.fg-intro-strip .fg-icon  {
    width:18px;
    height:18px;
    color:#3b6582
}

.fg-home-problem  {
    padding-top:76px
}

.fg-bento  {
    display:grid;
    grid-template-columns:1.15fr 1fr 1fr;
    gap:18px
}

.fg-bento .fg-card  {
    padding:27px 25px;
    display:flex;
    flex-direction:column;
    background:white;
    border-color:#e2e8ee
}

.fg-bento .fg-card:first-child  {
    background:#eaf0f6;
    border-color:#e0e7ed
}

.fg-bento .fg-card:last-child  {
    background:#f1eee7;
    border-color:#e8e2d8
}

.fg-bento .fg-card>span:first-child  {
    font-size:11px;
    color:#536e83;
    font-weight:800;
    letter-spacing:1.5px;
    margin-bottom:32px
}

.fg-bento .fg-card .fg-text-link  {
    margin-top:auto;
    padding-top:24px
}

.fg-workbench  {
    background:white
}

.fg-tabs  {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
    margin:28px 0
}

.fg-tabs button  {
    border:1px solid #d5dfe7;
    border-radius:9px;
    background:white;
    min-height:44px;
    padding:10px 19px;
    font-size:12px;
    font-weight:750;
    color:#526c7f;
    display:inline-flex;
    align-items:center;
    gap:8px
}

.fg-tabs button .fg-icon  {
    width:17px;
    height:17px
}

.fg-tabs button[aria-selected=true]  {
    background:var(--fg-ink);
    color:white;
    border-color:var(--fg-ink)
}

.fg-workbench-layout  {
    display:grid;
    grid-template-columns:1fr 2.15fr;
    gap:45px;
    align-items:center;
    min-width:0
}

.fg-workbench-copy h3  {
    font-size:27px;
    letter-spacing:-1px
}

.fg-workbench-copy p  {
    font-size:14px;
    color:var(--fg-muted);
    margin-top:14px
}

.fg-workbench-copy .fg-checklist  {
    gap:11px
}

.fg-workbench-copy .fg-text-link  {
    margin-top:20px
}

.fg-workbench-panel  {
    min-width:0
}

.fg-workbench-panel .fg-shot  {
    box-shadow:0 16px 50px #1534470e
}

.fg-mobile-section  {
    background:#153447;
    color:white;
    overflow:hidden
}

.fg-mobile-section h2,.fg-mobile-section h3  {
    color:white
}

.fg-mobile-section .fg-eyebrow  {
    color:#adc5d5
}

.fg-mobile-section .fg-eyebrow::before  {
    background:#e4c89b
}

.fg-mobile-section p,.fg-mobile-section .fg-checklist li  {
    color:#c7d8e3
}

.fg-mobile-section .fg-checklist li::before  {
    color:#bddbc7
}

.fg-mobile-section .fg-text-link  {
    color:#fff
}

.fg-mobile-layout  {
    display:grid;
    grid-template-columns:1.2fr 1fr;
    gap:80px;
    align-items:center
}

.fg-mobile-art  {
    position:relative;
    padding:22px 45px;
    min-width:0
}

.fg-mobile-art::before  {
    content:'';
    position:absolute;
    inset:40px -25px 40px;
    border:1px solid #53768b55;
    border-radius:50%;
    transform:rotate(-28deg)
}

.fg-mobile-art .fg-shot  {
    position:relative
}

.fg-mobile-art .fg-shot-mobile  {
    max-width:228px
}

.fg-small-label  {
    font-size:11px;
    display:inline-block;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:1.4px;
    color:#bfd0db;
    margin-bottom:18px
}

.fg-price-preview  {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    margin-top:30px
}

.fg-price-mini  {
    border:1px solid var(--fg-line);
    padding:29px;
    border-radius:18px;
    background:white;
    position:relative
}

.fg-price-mini.is-featured  {
    border-color:#8eaac4;
    box-shadow:0 12px 35px #15344709
}

.fg-price-mini .fg-tag  {
    margin-bottom:15px
}

.fg-price-mini h3  {
    font-size:19px
}

.fg-price-mini>p  {
    font-size:13px;
    color:var(--fg-muted);
    margin-top:12px;
    line-height:1.8
}

.fg-price-value  {
    display:flex;
    align-items:baseline;
    gap:6px;
    margin:22px 0 14px
}

.fg-price-value strong  {
    font-size:39px;
    font-weight:800;
    letter-spacing:-1.5px;
    line-height:1.1
}

.fg-price-value span  {
    font-size:12px;
    color:var(--fg-muted)
}

.fg-price-mini .fg-checklist  {
    gap:8px;
    margin-top:17px
}

.fg-price-mini .fg-checklist li  {
    font-size:12px
}

.fg-price-mini .fg-text-link  {
    margin-top:17px
}

.fg-blog-grid  {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px
}

.fg-blog-card  {
    text-decoration:none;
    color:var(--fg-ink);
    background:white;
    border:1px solid var(--fg-line);
    border-radius:17px;
    overflow:hidden;
    display:flex;
    flex-direction:column
}

.fg-blog-card>img  {
    width:100%;
    height:170px;
    object-fit:cover
}

.fg-blog-card>div  {
    padding:24px
}

.fg-blog-card h3  {
    font-size:16px;
    line-height:1.6
}

.fg-blog-card p  {
    color:var(--fg-muted);
    font-size:12px;
    margin-top:12px;
    line-height:1.8
}

.fg-blog-card .fg-text-link  {
    margin-top:17px
}

.fg-blog-card:hover h3  {
    color:var(--fg-blue)
}

/* Registration, login, verification and recovery keep a single complete flow. */
.auth-section  {
    padding:85px 0;
    background:#edf2f7;
    scroll-margin-top:95px
}

.fg-auth-layout  {
    display:grid;
    grid-template-columns:1fr 1.08fr;
    gap:80px;
    align-items:start
}

.fg-auth-intro  {
    padding-top:22px
}

.fg-auth-intro h2  {
    font-size:clamp(31px,3vw,43px);
    letter-spacing:-1.6px;
    line-height:1.2;
    font-weight:800
}

.fg-auth-intro>p  {
    color:var(--fg-muted);
    font-size:14px;
    line-height:1.9;
    margin-top:18px
}

.fg-auth-intro .fg-checklist  {
    margin-top:26px
}

.auth-box  {
    min-width:0;
    background:white;
    border:1px solid #d4e0e9;
    border-radius:20px;
    padding:30px;
    box-shadow:0 16px 45px #1534470a
}

.auth-tabs  {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:4px;
    padding:4px;
    background:#edf2f6;
    border-radius:11px;
    margin-bottom:27px
}

.auth-tab  {
    border:0;
    background:transparent;
    border-radius:8px;
    min-height:43px;
    font-size:13px;
    font-weight:750;
    color:#647b8c;
    cursor:pointer
}

.auth-tab.active  {
    background:white;
    color:var(--fg-ink);
    box-shadow:0 2px 6px #1534470c
}

.auth-field  {
    margin-bottom:19px
}

.auth-field label  {
    display:block;
    font-size:12px;
    line-height:1.6;
    color:var(--fg-ink);
    font-weight:750;
    margin-bottom:7px
}

.auth-field input,.auth-field select  {
    width:100%;
    min-height:48px;
    padding:11px 14px;
    color:var(--fg-ink);
    border:1px solid #cbd7e1;
    border-radius:9px;
    background:white;
    font-size:14px
}

.auth-field input::placeholder  {
    color:#718493;
    opacity:1
}

.auth-field small  {
    font-size:10px;
    line-height:1.8;
    color:#647989;
    display:block;
    margin-top:7px
}

.auth-field input:focus,.auth-field select:focus  {
    border-color:#487fba;
    outline:3px solid #d8e7fb;
    outline-offset:0
}

.auth-btn  {
    display:flex;
    width:100%;
    min-height:50px;
    align-items:center;
    justify-content:center;
    background:var(--fg-blue);
    border:0;
    border-radius:10px;
    color:white;
    font-size:14px;
    font-weight:750;
    cursor:pointer
}

.auth-btn:hover  {
    background:var(--fg-blue-hover)
}

.auth-box fieldset a  {
    color:var(--fg-blue)!important
}

.auth-box fieldset input  {
    accent-color:var(--fg-blue)!important
}

.auth-trust  {
    display:flex;
    flex-wrap:wrap;
    gap:9px 14px;
    border-top:1px solid var(--fg-line);
    margin-top:24px;
    padding-top:17px;
    color:#647989;
    font-size:9px
}

.auth-trust span  {
    display:inline-flex;
    align-items:center;
    gap:5px
}

.auth-trust svg  {
    width:13px;
    height:13px
}

.auth-msg  {
    display:none;
    border-radius:10px;
    padding:13px 15px;
    font-size:12px;
    margin-bottom:20px;
    line-height:1.9
}

.auth-msg.error  {
    display:block;
    color:#9f332b;
    background:#fff1ed;
    border:1px solid #f0c8bc
}

.auth-msg.success  {
    display:block;
    color:#256747;
    background:#edf6ef;
    border:1px solid #c3dfcd
}

.auth-msg .btn-secondary  {
    border:1px solid currentColor;
    padding:8px 12px;
    border-radius:7px;
    color:inherit;
    background:transparent;
    font-size:12px
}

.fg-password  {
    position:relative
}

.fg-password input  {
    padding-right:77px
}

.fg-password-toggle  {
    position:absolute;
    right:6px;
    top:5px;
    min-height:37px;
    border:0;
    background:#eff3f7;
    border-radius:6px;
    color:#436278;
    padding:6px 10px;
    font-size:10px;
    font-weight:700
}

.fg-auth-footnote  {
    font-size:11px;
    color:#607888;
    margin-top:22px;
    line-height:1.9
}

/* Footer: useful destinations instead of repeated sales copy. */
.fg-cta-section  {
    padding-top:45px;
    padding-bottom:75px
}

.fg-cta-panel  {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;
    background:#153447;
    color:#fff;
    border-radius:25px;
    padding:43px 48px
}

.fg-cta-panel h2  {
    color:white;
    font-size:32px;
    letter-spacing:-1.2px;
    max-width:660px
}

.fg-cta-panel p  {
    color:#c2d2df;
    font-size:13px;
    line-height:1.9;
    margin-top:15px;
    max-width:560px
}

.fg-cta-panel .fg-eyebrow  {
    color:#bcd0de
}

.fg-cta-panel .fg-eyebrow::before  {
    background:#e4c89b
}

.fg-cta-panel .fg-actions  {
    flex:0 0 auto;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    margin-top:0;
    gap:9px
}

.fg-cta-panel .fg-text-link  {
    color:#d9e6f0
}

.fg-footer  {
    background:#fff;
    border-top:1px solid #e0e7ee;
    padding:54px 0 22px;
    font-size:12px;
    color:#607688
}

.fg-footer-grid  {
    display:grid;
    grid-template-columns:1.7fr 1fr 1fr 1fr;
    gap:45px
}

.fg-footer .fg-brand  {
    font-size:26px;
    margin-bottom:20px
}

.fg-footer .fg-brand img  {
    width:37px;
    height:37px
}

.fg-footer-about p  {
    max-width:280px;
    color:#5b7180;
    line-height:1.95
}

.fg-footer-about>a:not(.fg-brand)  {
    display:inline-flex;
    margin-top:16px;
    font-size:12px;
    text-decoration:none;
    font-weight:700
}

.fg-footer-col h2  {
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:1.3px;
    color:#415e72;
    font-weight:800;
    margin-bottom:15px
}

.fg-footer-col a,.fg-cookie-settings  {
    display:block;
    color:#5b7180;
    font-size:11px;
    line-height:1.8;
    text-decoration:none;
    padding:5px 0
}

.fg-footer-col a:hover,.fg-cookie-settings:hover  {
    text-decoration:underline;
    color:var(--fg-blue)
}

.fg-cookie-settings  {
    border:0;
    background:none;
    text-align:left;
    cursor:pointer
}

.fg-footer-bottom  {
    border-top:1px solid var(--fg-line);
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:12px;
    margin-top:36px;
    padding-top:21px;
    font-size:10px
}

.fg-footer-bottom a  {
    color:#4d677b
}

.fg-footer-note  {
    margin-top:19px;
    font-size:10px;
    color:#5e7383
}

.fg-back-top  {
    position:fixed;
    right:22px;
    bottom:22px;
    z-index:160;
    display:flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border:1px solid #cedae4;
    border-radius:12px;
    background:white;
    color:var(--fg-ink);
    box-shadow:0 5px 17px #15344715
}

.fg-back-top .fg-icon  {
    transform:rotate(-90deg);
    width:17px;
    height:17px
}

/* Legacy public tools, editorial articles and legal documents inherit the new shell. */
body:not(.fg-public) h1,body:not(.fg-public) h2,body:not(.fg-public) h3  {
    font-family:var(--font);
    text-transform:none;
    letter-spacing:-.025em
}

body:not(.fg-public) .hero  {
    padding-top:50px
}

body:not(.fg-public) section:not(.fg-section)  {
    padding-block:55px
}

body:not(.fg-public) footer.fg-footer  {
    padding:54px 0 22px
}

body:not(.fg-public) .hero h1  {
    line-height:1.2
}

body:not(.fg-public) .reveal,body:not(.fg-public) .fx-up  {
    opacity:1;
    transform:none
}

@media(min-width:1400px)  {
    .fg-home-hero .fg-container  {
        max-width:1320px
    }
    .fg-home-hero .fg-title  {
        font-size:70px
    }
}

@media(max-width:1160px)  {
    .fg-header-inner  {
        gap:20px;
        padding-inline:24px
    }
    .fg-nav>a,.fg-nav-group>summary  {
        padding-inline:9px;
        font-size:12px
    }
    .fg-header-actions  {
        gap:12px
    }
    .fg-header-trial  {
        padding-inline:13px
    }
    .fg-brand  {
        font-size:23px
    }
    .fg-hero-split  {
        gap:35px
    }
    .fg-home-hero .fg-title  {
        font-size:55px
    }
    .fg-home-hero .fg-hero-split  {
        grid-template-columns:1fr 1fr
    }
    .fg-auth-layout  {
        gap:45px
    }
    .fg-workbench-layout  {
        gap:30px
    }
}

@media(max-width:980px)  {
    :root  {
        --fg-header:72px
    }
    .fg-header-inner  {
        min-height:72px;
        gap:20px;
        flex-wrap:wrap;
        padding:0 24px
    }
    .fg-menu-button  {
        display:inline-flex
    }
    .fg-header-actions  {
        margin-left:auto
    }
    .fg-header-actions .fg-login-link  {
        display:none
    }
    .fg-nav  {
        flex:0 0 100%;
        order:4;
        flex-direction:column;
        align-items:stretch;
        padding:4px 0 25px;
        gap:0;
        max-height:calc(100dvh - 100px);
        overflow:auto
    }
    .fg-js .fg-nav  {
        display:none
    }
    .fg-header[data-menu-open] .fg-nav  {
        display:flex
    }
    .fg-nav>a,.fg-nav-group>summary  {
        font-size:14px;
        padding:14px 10px;
        border-radius:0;
        min-height:51px;
        border-bottom:1px solid var(--fg-line);
        display:flex;
        justify-content:space-between;
        width:100%
    }
    .fg-nav-group[open]>summary  {
        background:transparent
    }
    .fg-mega,.fg-nav-group-resources .fg-mega  {
        position:static;
        width:auto;
        max-width:none;
        box-shadow:none;
        padding:10px 0;
        border:0;
        border-radius:0;
        background:transparent;
        grid-template-columns:1fr 1fr
    }
    .fg-mega-intro  {
        display:none
    }
    .fg-mega>a  {
        padding:12px 8px;
        min-height:70px
    }
    .fg-mega a small  {
        font-size:11px
    }
    .fg-nav-mobile-actions  {
        display:flex;
        align-items:center;
        gap:15px;
        padding-top:20px
    }
    .fg-nav-mobile-actions>.fg-btn  {
        flex:1
    }
    .fg-brand  {
        font-size:24px
    }
    .fg-brand img  {
        width:36px;
        height:36px
    }
    .fg-home-hero  {
        padding-top:52px
    }
    .fg-home-hero .fg-hero-split  {
        grid-template-columns:1fr;
        gap:22px
    }
    .fg-home-hero .fg-title  {
        font-size:clamp(42px,7.5vw,63px);
        max-width:680px
    }
    .fg-home-hero .fg-lead  {
        max-width:590px;
        font-size:16px
    }
    .fg-hero-product  {
        max-width:750px;
        margin:15px 0 0;
        padding:18px 12px 20px
    }
    .fg-hero-product::before  {
        inset:0 22px 10px -12px
    }
    .fg-intro-strip  {
        margin-top:32px
    }
    .fg-bento  {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .fg-bento .fg-card  {
        padding:25px 20px
    }
    .fg-hero-split  {
        grid-template-columns:1fr
    }
    .fg-hero-split>.fg-shot  {
        max-width:760px;
        margin-top:12px
    }
    .fg-workbench-layout  {
        grid-template-columns:1fr;
        gap:30px
    }
    .fg-workbench-copy  {
        max-width:620px
    }
    .fg-workbench-copy .fg-checklist  {
        grid-template-columns:1fr 1fr
    }
    .fg-mobile-layout  {
        gap:40px;
        grid-template-columns:1.1fr 1fr
    }
    .fg-mobile-art  {
        padding:18px 10px
    }
    .fg-price-mini  {
        padding:23px
    }
    .fg-footer-grid  {
        gap:28px;
        grid-template-columns:1.4fr 1fr 1fr
    }
    .fg-footer-about  {
        grid-column:1/-1;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:10px 30px
    }
    .fg-footer-about .fg-brand  {
        grid-column:1
    }
    .fg-footer-about p  {
        grid-column:2;
        grid-row:1/3;
        align-self:center;
        max-width:400px
    }
    .fg-footer-about>a:not(.fg-brand)  {
        grid-column:1;
        margin-top:0
    }
    .fg-auth-layout  {
        grid-template-columns:1fr 1.1fr;
        gap:30px
    }
    .auth-box  {
        padding:24px
    }
    .fg-cta-panel  {
        padding:36px;
        gap:32px
    }
    .fg-cta-panel h2  {
        font-size:28px
    }
    .fg-cta-panel .fg-btn  {
        padding-inline:19px
    }
}

@media(max-width:720px)  {
    .fg-container,.container  {
        padding-inline:23px
    }
    .fg-section  {
        padding-block:61px
    }
    .fg-section-sm  {
        padding-block:38px
    }
    .fg-title  {
        font-size:40px;
        letter-spacing:-1.8px;
        line-height:1.17
    }
    .fg-lead  {
        font-size:15px;
        line-height:1.9
    }
    .fg-section h2  {
        font-size:30px;
        letter-spacing:-1.1px
    }
    .fg-section h3  {
        font-size:18px
    }
    .fg-section-heading  {
        display:block;
        margin-bottom:26px
    }
    .fg-section-heading>.fg-text-link  {
        margin-top:14px
    }
    .fg-grid-3,.fg-grid-4  {
        grid-template-columns:1fr 1fr
    }
    .fg-split  {
        grid-template-columns:1fr;
        gap:35px
    }
    .fg-card  {
        padding:25px
    }
    .fg-bento  {
        grid-template-columns:1fr
    }
    .fg-bento .fg-card  {
        padding:26px
    }
    .fg-bento .fg-card>span:first-child  {
        margin-bottom:16px
    }
    .fg-bento .fg-card .fg-text-link  {
        padding-top:12px
    }
    .fg-bento h3  {
        font-size:21px
    }
    .fg-hero  {
        padding:35px 0 45px
    }
    .fg-home-hero  {
        padding:42px 0 34px
    }
    .fg-home-hero .fg-title  {
        font-size:46px;
        letter-spacing:-2px;
        line-height:1.12;
        max-width:580px
    }
    .fg-home-hero .fg-lead  {
        font-size:14px;
        line-height:1.9;
        margin-top:20px
    }
    .fg-actions  {
        gap:10px;
        margin-top:25px
    }
    .fg-intro-strip  {
        grid-template-columns:1fr 1fr;
        gap:18px;
        padding:22px 0;
        font-size:10px
    }
    .fg-intro-strip>strong  {
        grid-column:1/-1;
        font-size:11px
    }
    .fg-intro-strip>span:last-child  {
        grid-column:1/-1
    }
    .fg-mobile-layout  {
        grid-template-columns:1fr;
        gap:35px
    }
    .fg-mobile-art  {
        padding:14px 20px
    }
    .fg-mobile-art::before  {
        inset:40px 35px
    }
    .fg-mobile-art .fg-shot-mobile  {
        max-width:224px
    }
    .fg-price-preview  {
        grid-template-columns:1fr
    }
    .fg-price-mini  {
        padding:28px
    }
    .fg-price-value strong  {
        font-size:39px
    }
    .fg-price-mini .fg-checklist  {
        grid-template-columns:1fr 1fr
    }
    .fg-blog-grid  {
        grid-template-columns:1fr
    }
    .fg-blog-card  {
        display:grid;
        grid-template-columns:1fr 1.6fr
    }
    .fg-blog-card>img  {
        height:100%;
        min-height:200px
    }
    .fg-blog-card>div  {
        padding:21px
    }
    .fg-steps  {
        grid-template-columns:1fr;
        gap:22px
    }
    .fg-step  {
        padding-top:20px
    }
    .fg-auth-layout  {
        grid-template-columns:1fr;
        gap:30px
    }
    .fg-auth-intro  {
        padding:0
    }
    .fg-auth-intro h2  {
        max-width:510px
    }
    .fg-auth-intro .fg-checklist  {
        display:none
    }
    .auth-section  {
        padding:58px 0
    }
    .fg-cta-panel  {
        flex-direction:column;
        align-items:flex-start;
        gap:25px;
        padding:32px 27px;
        border-radius:20px
    }
    .fg-cta-panel .fg-actions  {
        width:100%;
        align-items:flex-start;
        gap:10px
    }
    .fg-cta-panel h2  {
        font-size:29px
    }
    .fg-footer  {
        padding-top:40px
    }
    .fg-footer-grid  {
        grid-template-columns:1fr 1fr;
        gap:28px 20px
    }
    .fg-footer-about  {
        grid-column:1/-1;
        display:block
    }
    .fg-footer-about p  {
        max-width:440px
    }
    .fg-footer-about>a:not(.fg-brand)  {
        margin-top:12px
    }
    .fg-footer-col h2  {
        font-size:10px
    }
    .fg-footer-col a,.fg-cookie-settings  {
        font-size:12px;
        padding:7px 0;
        min-height:35px
    }
    .fg-footer-bottom  {
        display:block;
        line-height:2
    }
    .fg-footer-bottom>*+*  {
        margin-top:9px
    }
    .fg-cta-section  {
        padding-block:40px 55px
    }
}

@media(max-width:440px)  {
    .fg-header-inner  {
        padding-inline:17px;
        gap:10px
    }
    .fg-header-actions  {
        gap:10px
    }
    .fg-brand  {
        font-size:21px;
        gap:7px;
        letter-spacing:-.9px
    }
    .fg-brand img  {
        width:33px;
        height:33px
    }
    .fg-header-trial  {
        font-size:11px;
        min-height:40px;
        padding:9px 11px
    }
    .fg-header-trial .fg-icon  {
        display:none
    }
    .fg-menu-button  {
        width:40px;
        height:40px
    }
    .fg-container,.container  {
        padding-inline:20px
    }
    .fg-home-hero .fg-title  {
        font-size:41px;
        letter-spacing:-1.7px;
        line-height:1.14
    }
    .fg-home-hero .fg-actions  {
        align-items:stretch;
        flex-direction:column
    }
    .fg-home-hero .fg-btn  {
        width:100%;
        min-height:50px
    }
    .fg-trial-note  {
        gap:8px 13px;
        font-size:10px
    }
    .fg-trial-note span:first-child  {
        flex:0 0 100%
    }
    .fg-hero-product  {
        margin-top:7px;
        padding-inline:0
    }
    .fg-hero-product::before  {
        inset:0 10px 10px -7px
    }
    .fg-hero-caption  {
        margin-top:15px;
        font-size:10px
    }
    .fg-title  {
        font-size:34px;
        letter-spacing:-1.4px
    }
    .fg-eyebrow  {
        font-size:10px;
        letter-spacing:1.5px
    }
    .fg-grid-2,.fg-grid-3,.fg-grid-4  {
        grid-template-columns:1fr
    }
    .fg-workbench-copy .fg-checklist  {
        grid-template-columns:1fr
    }
    .fg-tabs  {
        gap:6px;
        justify-content:flex-start
    }
    .fg-tabs button  {
        font-size:11px;
        padding:9px 12px
    }
    .fg-price-mini .fg-checklist  {
        grid-template-columns:1fr
    }
    .fg-blog-card  {
        display:block
    }
    .fg-blog-card>img  {
        height:170px;
        min-height:0
    }
    .fg-nav-mobile-actions  {
        flex-direction:column;
        align-items:stretch
    }
    .fg-mega,.fg-nav-group-resources .fg-mega  {
        grid-template-columns:1fr
    }
    .fg-mega>a  {
        min-height:65px
    }
    .auth-box  {
        padding:22px 19px
    }
    .auth-box fieldset legend  {
        font-size:11px!important
    }
    .auth-box fieldset label  {
        font-size:11px!important
    }
    .fg-faq summary  {
        font-size:14px;
        padding-block:21px
    }
    .fg-faq>p,.fg-faq>div  {
        font-size:13px;
        padding-right:8px
    }
    .fg-btn  {
        font-size:13px;
        padding:12px 17px
    }
    .fg-cta-panel .fg-btn  {
        width:100%
    }
    .fg-cta-panel .fg-actions  {
        align-items:stretch
    }
    .fg-back-top  {
        right:12px;
        bottom:14px;
        width:38px;
        height:38px
    }
}

@media(max-width:359px)  {
    .fg-header-trial  {
        display:none
    }
    .fg-header-inner  {
        gap:8px
    }
    .fg-home-hero .fg-title  {
        font-size:36px
    }
    .fg-container,.container  {
        padding-inline:17px
    }
    .fg-hero .fg-actions  {
        flex-direction:column;
        align-items:stretch
    }
    .fg-footer-grid  {
        grid-template-columns:1fr 1fr;
        gap:27px 15px
    }
}

.fg-shot figcaption  {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    font-size:10px;
    text-align:left
}

.fg-shot-open  {
    display:inline-flex;
    align-items:center;
    gap:5px;
    font-size:10px;
    font-weight:700;
    min-height:28px;
    text-decoration:none;
    white-space:nowrap
}

.fg-shot-open .fg-icon  {
    width:12px;
    height:12px
}

.fg-image-dialog  {
    padding:0;
    width:min(1400px,calc(100vw - 30px));
    max-height:92dvh;
    border:1px solid #c9d6e1;
    border-radius:16px;
    background:white;
    color:var(--fg-ink);
    overflow:auto;
    box-shadow:0 30px 100px #07172b55
}

.fg-image-dialog::backdrop  {
    background:#102e46c7
}

.fg-image-dialog-bar  {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    position:sticky;
    top:0;
    background:white;
    padding:12px 18px;
    border-bottom:1px solid var(--fg-line);
    font-size:12px
}

.fg-image-dialog-bar button  {
    min-height:40px;
    border:1px solid #c7d5e0;
    border-radius:8px;
    padding:7px 15px;
    color:var(--fg-ink);
    background:white;
    font-weight:700;
    font-size:12px
}

.fg-image-dialog>img  {
    display:block;
    max-height:calc(92dvh - 68px);
    max-width:100%;
    width:auto;
    height:auto;
    object-fit:contain;
    margin:auto
}

.fg-section-heading:has(> h2)  {
    display:block
}

.fg-section-heading>h2  {
    max-width:840px
}

.fg-section-heading>p  {
    margin-top:16px
}

.fg-steps  {
    list-style:none;
    padding:0
}

.fg-steps li.fg-step::before  {
    content:none
}

.fg-steps li.fg-step .fg-tag  {
    margin-bottom:18px
}

.fg-card h2  {
    font-size:26px;
    line-height:1.35;
    letter-spacing:-1px
}

.fg-anchor  {
    scroll-margin-top:105px
}

.auth-section  {
    scroll-margin-top:15px
}

@media(prefers-reduced-motion:reduce)  {
    html  {
        scroll-behavior:auto
    }
    *,*::before,*::after  {
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        transition-duration:.01ms!important
    }
}

.fg-table-scroll  {
    width:100%;
    max-width:100%;
    overflow:auto;
    border-radius:10px
}

.fg-nav  {
    position:static;
    z-index:auto;
    background:transparent;
    backdrop-filter:none;
    border:0
}

.fg-header .fg-nav  {
    box-shadow:none
}

.legal-body a  {
    overflow-wrap:anywhere
}

.legal-body table  {
    min-width:350px
}

.fg-footer-about>a:not(.fg-brand) .fg-icon  {
    width:14px;
    height:14px;
    margin-left:6px
}

.fg-pricing-intro .fg-title  {
    font-size:clamp(34px,3.9vw,52px);
    letter-spacing:-1.8px
}

.fg-pricing-intro .fg-lead  {
    max-width:800px
}

.fg-pricing-card>.fg-tag  {
    align-self:flex-start
}

.fg-pricing-card .fg-pricing-fit  {
    font-size:13px;
    min-height:44px;
    line-height:1.8;
    margin:10px 0 18px
}

.fg-pricing-card .fg-pricing-billing  {
    font-size:11px;
    min-height:38px;
    line-height:1.8;
    margin:8px 0 17px
}

.fg-pricing-features  {
    font-size:12px;
    line-height:1.8;
    gap:10px;
    margin-bottom:21px
}

.fg-pricing-capacity  {
    padding:14px 0;
    margin-bottom:18px
}

.fg-pricing-capacity span  {
    font-size:11px
}

.fg-pricing-plan-note  {
    font-size:10px
}

.fg-header .fg-nav  {
    border:0;
    background:transparent;
    backdrop-filter:none
}

@media(min-width:981px)  {
    .fg-header .fg-nav  {
        padding:0
    }
}

.fg-pricing-page .fg-hero  {
    padding-top:22px
}

.fg-pricing-page .fg-breadcrumb  {
    margin-bottom:18px
}

.fg-pricing-intro>.fg-eyebrow  {
    margin-bottom:12px
}

.fg-pricing-intro>.fg-lead  {
    margin-top:16px
}

.fg-pricing-intro>.fg-trial-note  {
    margin-top:14px
}

.fg-pricing-toggle  {
    margin-top:18px;
    margin-bottom:8px
}

.fg-pricing-period-note  {
    min-height:24px
}

.fg-pricing-grid  {
    margin-top:22px
}

@media(min-width:721px)  {
    .fg-blog-grid  {
        grid-template-columns:repeat(auto-fit,minmax(280px,1fr))
    }
}

#fincagestCookieBanner,#fincagestCookieModal  {
    font-family:var(--font)!important
}

#fincagestCookieBanner  {
    border-top:1px solid #d2dfe8!important
}

#fincagestCookieBanner .kb-btn,#fincagestCookieModal .kb-btn  {
    min-height:44px;
    border-radius:9px!important;
    font-size:12px!important
}

#fincagestCookieBanner .kb-btn-accept  {
    background:#235bbb!important;
    color:#fff!important
}

#fincagestCookieBanner .kb-btn-necessary  {
    background:#fff!important;
    border:1px solid #cbd8e2!important;
    color:#153447!important
}

#fincagestCookieModal .kb-modal  {
    border-radius:20px!important;
    border:1px solid #d3dfe8
}

#fincagestCookieModal .kb-close  {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    flex-shrink:0;
    border-radius:10px;
    background:#f0f4f8!important;
    color:#153447!important
}

#fincagestCookieModal .kb-cat-note  {
    color:#556575!important
}

.fg-shot-open {
    font-size:11px;
    min-height:32px
}

.auth-box fieldset label {
    min-height:28px;
    padding-block:3px
}

@media(max-width:720px) {
    .auth-field input,.auth-field select {
        font-size:16px
    }
    .auth-box fieldset label {
        font-size:12px!important
    }
}
