@font-face{font-family:Montserrat;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/f3ff9d20-1141-4731-b239-e910fb18c5f0.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/1871b57e-a4b9-46a4-b861-7ec9a787164f.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Montserrat;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/1c69136b-00ba-413e-8236-ddd4b3f56560.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/e9b88227-5e7c-419e-9d43-38f708dd2338.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/efbb5dd0-2cf9-431a-8ab5-ee44df0c65f0.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/1e7d20ba-ba34-4e80-913b-c3756d126272.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ae5dc6d8-e44e-47ab-b01b-64db5f8dfac3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/575ff88e-cfd5-48d3-af9b-59e0b062acab.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/70f161ba-4c31-4060-8d90-96df1b5521ef.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/008f7911-74b9-41e1-933c-62f59f4d76d3.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/1e7d20ba-ba34-4e80-913b-c3756d126272.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ae5dc6d8-e44e-47ab-b01b-64db5f8dfac3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/575ff88e-cfd5-48d3-af9b-59e0b062acab.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/70f161ba-4c31-4060-8d90-96df1b5521ef.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/008f7911-74b9-41e1-933c-62f59f4d76d3.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/1e7d20ba-ba34-4e80-913b-c3756d126272.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ae5dc6d8-e44e-47ab-b01b-64db5f8dfac3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/575ff88e-cfd5-48d3-af9b-59e0b062acab.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/70f161ba-4c31-4060-8d90-96df1b5521ef.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/008f7911-74b9-41e1-933c-62f59f4d76d3.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/1e7d20ba-ba34-4e80-913b-c3756d126272.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ae5dc6d8-e44e-47ab-b01b-64db5f8dfac3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/575ff88e-cfd5-48d3-af9b-59e0b062acab.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/70f161ba-4c31-4060-8d90-96df1b5521ef.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/008f7911-74b9-41e1-933c-62f59f4d76d3.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Questrial;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fba4d70d-835e-49aa-8c5f-59dfafada0f0.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Questrial;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/5eced737-3690-409a-a50c-75552760db39.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Questrial;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/42a80f7d-d56a-40ee-b50e-e258542f7a7e.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--blue: #0073FF;--mint: #00DEC2;--navy: #0F1418;--grey: #F5F5F5;--yellow: #FFBF24;--blue-10: #E5F1FF;--blue-20: #CCE3FF;--blue-40: #99C7FF;--blue-60: #66AAFF;--blue-80: #338EFF;--blue-100: #0073FF;--blue-shade: #005CCC;--blue-deep: #0048A0;--mint-10: #E5FCF9;--mint-20: #CCF8F3;--mint-40: #99F2E7;--mint-60: #66EBDA;--mint-80: #33E5CE;--mint-100: #00DEC2;--mint-shade: #00B29B;--navy-10: #E7E8E8;--navy-20: #CFD0D1;--navy-40: #9FA2A3;--navy-60: #6F7375;--navy-80: #3F4447;--navy-100: #0F1418;--navy-soft: #1C242A;--grey-10: #FDFDFD;--grey-20: #FAFAFA;--grey-40: #F5F5F5;--grey-60: #EBEBEB;--grey-80: #DEDEDE;--grey-100: #CFCFCF;--grey-line: #E6E8EB;--yellow-10: #FFF9E9;--yellow-20: #FFF2D3;--yellow-40: #FFE5A7;--yellow-60: #FFD87C;--yellow-80: #FFCB50;--yellow-100: #FFBF24;--yellow-shade: #E0A500;--text-strong: var(--navy-100);--text-body: #2A3138;--text-muted: var(--navy-60);--text-faint: var(--navy-40);--text-on-dark: #FFFFFF;--text-on-blue: #FFFFFF;--text-link: var(--blue-100);--surface-page: #FFFFFF;--surface-subtle: var(--grey-40);--surface-card: #FFFFFF;--surface-sunken: var(--grey-20);--surface-dark: var(--navy-100);--surface-dark-2: var(--navy-soft);--surface-brand: var(--blue-100);--surface-mint: var(--mint-100);--border-subtle: var(--grey-line);--border-strong: var(--navy-20);--border-focus: var(--blue-100);--brand-primary: var(--blue-100);--brand-primary-hover: var(--blue-shade);--brand-primary-press: var(--blue-deep);--brand-secondary: var(--mint-100);--brand-secondary-hover:var(--mint-shade);--accent: var(--yellow-100);--success: var(--mint-shade);--success-bg: var(--mint-10);--warning: var(--yellow-shade);--warning-bg: var(--yellow-10);--error: #E5484D;--error-bg: #FDECEC;--info: var(--blue-100);--info-bg: var(--blue-10);--ring: 0 0 0 3px rgba(0, 115, 255, .28)}:root{--font-display: "Questrial", "Montserrat", system-ui, sans-serif;--font-body: "Montserrat", system-ui, sans-serif;--font-eyebrow: "Montserrat", system-ui, sans-serif;--fw-regular: 400;--fw-medium: 500;--fw-semibold:600;--fw-bold: 700;--text-display: clamp(2.75rem, 6vw, 4.5rem);--text-h1: clamp(2.25rem, 4.6vw, 3.25rem);--text-h2: clamp(1.75rem, 3.4vw, 2.5rem);--text-h3: clamp(1.375rem, 2.2vw, 1.75rem);--text-h4: 1.25rem;--text-lead: 1.25rem;--text-base: 1rem;--text-sm: .875rem;--text-xs: .75rem;--text-eyebrow: .8125rem;--lh-tight: 1.05;--lh-snug: 1.18;--lh-heading: 1.22;--lh-body: 1.6;--lh-relaxed: 1.75;--ls-display: -.02em;--ls-heading: -.01em;--ls-body: 0;--ls-eyebrow: .14em}.ff-display{font-family:var(--font-display);font-size:var(--text-display);line-height:var(--lh-tight);letter-spacing:var(--ls-display);color:var(--text-strong)}.ff-h1{font-family:var(--font-display);font-size:var(--text-h1);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);color:var(--text-strong)}.ff-h2{font-family:var(--font-display);font-size:var(--text-h2);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);color:var(--text-strong)}.ff-h3{font-family:var(--font-display);font-size:var(--text-h3);line-height:var(--lh-snug);color:var(--text-strong)}.ff-h4{font-family:var(--font-display);font-size:var(--text-h4);line-height:var(--lh-snug);color:var(--text-strong)}.ff-eyebrow{font-family:var(--font-eyebrow);font-weight:var(--fw-bold);font-size:var(--text-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--brand-primary)}.ff-lead{font-family:var(--font-body);font-size:var(--text-lead);line-height:var(--lh-relaxed);color:var(--text-body)}.ff-body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--lh-body);color:var(--text-body)}.ff-small{font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--lh-body);color:var(--text-muted)}:root{--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.5rem;--space-8: 3rem;--space-9: 4rem;--space-10: 5rem;--space-11: 6rem;--space-12: 8rem;--section-y: clamp(3.5rem, 2rem + 6vw, 7rem);--container-max: 1200px;--container-pad: clamp(1.25rem, .5rem + 3vw, 2.5rem);--radius-xs: 6px;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-pill: 999px;--radius-circle: 50%}:root{--shadow-xs: 0 1px 2px rgba(15, 20, 24, .06);--shadow-sm: 0 2px 8px rgba(15, 20, 24, .06);--shadow-md: 0 8px 24px rgba(15, 20, 24, .08);--shadow-lg: 0 18px 48px rgba(15, 20, 24, .1);--shadow-xl: 0 30px 70px rgba(15, 20, 24, .14);--shadow-brand: 0 14px 34px rgba(0, 115, 255, .28);--shadow-mint: 0 14px 34px rgba(0, 222, 194, .3);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .12s;--dur: .2s;--dur-slow: .36s}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--surface-subtle);-webkit-font-smoothing:antialiased}a{color:var(--text-link);text-decoration:none}a:hover{color:var(--brand-primary-hover);text-decoration:underline}@media (max-width: 900px){.ff-login-grid{grid-template-columns:1fr!important}.ff-login-aside{display:none!important}.ff-portal-grid{grid-template-columns:1fr!important}.ff-portal-aside{display:none!important}.ff-portal-mobile-logo{display:block!important}.ff-portal-bottomnav{display:flex!important}.ff-portal-grid>div>div:last-child{padding-bottom:96px!important}.ff-dash-top,.ff-dash-bottom{grid-template-columns:1fr!important}.ff-dash-stats{grid-template-columns:1fr 1fr!important}.ff-detail-tracker{flex-wrap:wrap;gap:14px}.calc-row2{grid-template-columns:1fr!important}}@media (max-width: 640px){.ff-portal-username,.ff-portal-hide-sm,.ff-ref-meter{display:none!important}.ff-step-label{display:none}}.ff-form-error{font-family:var(--font-body);font-size:13.5px;color:var(--error);background:var(--error-bg);border-radius:var(--radius-sm);padding:10px 14px;margin:0}.ff-page-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;font-family:var(--font-body);color:var(--text-muted);gap:10px}.ff-spinner{width:22px;height:22px;border-radius:50%;border:3px solid var(--blue-20);border-top-color:var(--brand-primary);animation:ffspin .8s linear infinite}@keyframes ffspin{to{transform:rotate(360deg)}}
