.elementor-widget-text-editor{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-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}/* Start custom CSS for text-editor, class: .elementor-element-04a4e5d *//* =========================================================================
   Program Management System — FxMedSupport product page styles
   Scoped prefix: .prog-
   Palette: navy #062D60 · orange #F89C0C · blue #2384F4 · cream #FFF8EC
   ========================================================================= */
.prog-root{
  --g-navy:#062D60;--g-navy-soft:#0C3A73;--g-orange:#F89C0C;--g-orange-deep:#C97E0A;
  --g-blue:#2384F4;--g-cream:#FFF8EC;--g-cream-2:#F6F4ED;--g-ink:#41506A;--g-line:#E8E6DF;--g-white:#FFFFFF;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--g-ink);background:var(--g-white);
  line-height:1.6;-webkit-font-smoothing:antialiased;box-sizing:border-box;}
.prog-root *,.prog-root *::before,.prog-root *::after{box-sizing:border-box;}
.prog-wrap{max-width:1100px;margin:0 auto;padding:0 32px;}
.prog-display{font-family:'Fraunces',Georgia,serif;font-weight:400;color:var(--g-navy);letter-spacing:-0.5px;margin:0;}
.prog-em{font-style:italic;color:var(--g-orange);}
.prog-eyebrow{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--g-orange-deep);margin:0 0 14px 0;}
.prog-eyebrow .prog-dash{color:var(--g-orange);}
.prog-hero{padding:84px 0 60px 0;position:relative;overflow:hidden;background:radial-gradient(circle at 18% 16%,rgba(35,132,244,0.06),transparent 42%),radial-gradient(circle at 84% 28%,rgba(248,156,12,0.07),transparent 45%);}
.prog-hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:40px;align-items:center;}
.prog-hero h1{font-size:clamp(38px,5.4vw,58px);line-height:1.08;}
.prog-hero .prog-sub{font-family:'Fraunces',Georgia,serif;font-size:clamp(18px,2.2vw,21px);color:var(--g-ink);margin:22px 0 0 0;line-height:1.55;max-width:560px;}
.prog-badge{display:inline-flex;align-items:center;gap:10px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--g-navy);background:var(--g-cream);border:1px solid #EFE4C7;border-radius:40px;padding:9px 18px;margin-bottom:24px;}
.prog-badge .prog-dot{width:8px;height:8px;border-radius:50%;background:var(--g-orange);box-shadow:0 0 0 4px rgba(248,156,12,0.18);}
.prog-cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px;}
.prog-btn{display:inline-block;font-family:'Inter',sans-serif;font-size:15px;font-weight:600;text-decoration:none;padding:15px 32px;border-radius:8px;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;}
.prog-btn-fill{background:var(--g-navy);color:var(--g-white);border:2px solid var(--g-navy);}
.prog-btn-fill:hover{background:var(--g-navy-soft);transform:translateY(-2px);box-shadow:0 10px 24px rgba(6,45,96,0.22);}
.prog-btn-outline{background:transparent;color:var(--g-navy);border:2px solid var(--g-navy);}
.prog-btn-outline:hover{background:var(--g-navy);color:var(--g-white);transform:translateY(-2px);}
.prog-btn-ghost{background:transparent;color:var(--g-orange-deep);border:2px solid transparent;padding-left:18px;padding-right:18px;}
.prog-btn-ghost:hover{color:var(--g-navy);border-color:#EFE4C7;background:var(--g-cream);}
.prog-btn-ghost .prog-ext{font-family:'JetBrains Mono',monospace;font-weight:700;margin-left:2px;}
.prog-section{padding:64px 0;}
.prog-section-tight{padding:40px 0;}
.prog-section h2{font-family:'Fraunces',Georgia,serif;font-weight:400;color:var(--g-navy);font-size:clamp(28px,4vw,40px);line-height:1.15;letter-spacing:-0.5px;margin:0 0 18px 0;}
.prog-lead{font-family:'Fraunces',Georgia,serif;font-size:clamp(17px,2vw,20px);color:var(--g-ink);max-width:740px;line-height:1.6;margin:0;}
.prog-center{text-align:center;}
.prog-center .prog-lead{margin-left:auto;margin-right:auto;}
.prog-why{background:var(--g-cream-2);border-radius:14px;padding:44px 48px;border-left:4px solid var(--g-orange);}
.prog-why h2{margin-top:0;}
.prog-why p{font-family:'Fraunces',Georgia,serif;font-size:clamp(17px,2vw,20px);color:var(--g-ink);margin:0 0 16px 0;line-height:1.6;}
.prog-why p:last-child{margin-bottom:0;}
.prog-why strong{color:var(--g-navy);}
.prog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px;}
.prog-card{background:var(--g-white);border:1px solid var(--g-line);border-radius:14px;padding:30px 26px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.prog-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(6,45,96,0.08);border-color:#E0DCCB;}
.prog-card .prog-icon{width:44px;height:44px;border-radius:11px;background:var(--g-cream);display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.prog-card .prog-icon svg{width:22px;height:22px;}
.prog-card h3{font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:21px;color:var(--g-navy);margin:0 0 10px 0;}
.prog-card p{margin:0;font-size:15px;}
.prog-emphasis{background:var(--g-navy);border-radius:18px;padding:56px 48px;text-align:center;color:var(--g-cream);position:relative;overflow:hidden;}
.prog-emphasis::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 18% 30%,rgba(35,132,244,0.25),transparent 40%),radial-gradient(circle at 84% 70%,rgba(248,156,12,0.20),transparent 42%);}
.prog-emphasis>*{position:relative;z-index:1;}
.prog-emphasis .prog-eyebrow{color:var(--g-orange);}
.prog-emphasis h2{color:var(--g-cream);margin-bottom:16px;}
.prog-emphasis p{font-family:'Fraunces',Georgia,serif;font-size:clamp(17px,2vw,21px);color:#D7E0EE;max-width:720px;margin:0 auto;line-height:1.6;}
.prog-emphasis .prog-em{color:var(--g-orange);}
.prog-closing{background:var(--g-cream);border-radius:18px;padding:56px 48px;text-align:center;}
.prog-closing h2{margin-bottom:8px;}
.prog-signoff{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:clamp(16px,2vw,19px);color:var(--g-orange-deep);margin:0 0 26px 0;}
.prog-footer{padding:40px 0 56px 0;border-top:1px solid var(--g-line);margin-top:64px;}
.prog-footer p{margin:0 0 4px 0;font-size:14px;}
.prog-footer .prog-fname{color:var(--g-navy);font-weight:600;}
.prog-footer .prog-fmeta{color:#7A899E;font-size:13px;}
.prog-illo{width:100%;height:auto;display:block;}
/* ---- program enrollment animation (synced 6s loop) ---- */
.prog-card-mock{transform-box:fill-box;transform-origin:center;animation:prog-float 5s ease-in-out infinite;}
@keyframes prog-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);}}
/* patient enrolls at trigger */
.prog-enroll{transform-box:fill-box;transform-origin:center;opacity:0;animation:prog-enroll 6s ease-out infinite;}
@keyframes prog-enroll{0%{opacity:0;transform:scale(0.7) translateX(-10px);}8%{opacity:1;transform:scale(1.06) translateX(0);}12%{transform:scale(1);}90%{opacity:1;}96%,100%{opacity:0;}}
/* trigger pulse ring */
.prog-trigring{transform-box:fill-box;transform-origin:center;opacity:0;animation:prog-trigring 6s ease-out infinite;}
@keyframes prog-trigring{0%,12%{opacity:0;transform:scale(0.6);}18%{opacity:0.8;transform:scale(1.1);}28%{opacity:0;transform:scale(1.8);}100%{opacity:0;}}
/* week-day appointment cards cascade in (staggered via delay) */
.prog-day{transform-box:fill-box;transform-origin:top center;opacity:0;animation:prog-day 6s ease-out infinite;}
@keyframes prog-day{0%,18%{opacity:0;transform:scaleY(0.3) translateY(-6px);}26%{opacity:1;transform:scaleY(1.06) translateY(0);}30%{transform:scaleY(1);}90%{opacity:1;}96%,100%{opacity:0;}}
/* connecting sweep line across the week */
.prog-weekline{stroke-dasharray:6 6;opacity:0;animation:prog-weekline 6s ease-in-out infinite;animation-delay:0.4s;}
@keyframes prog-weekline{0%,18%{opacity:0;stroke-dashoffset:60;}30%{opacity:1;}55%{opacity:1;stroke-dashoffset:0;}70%{opacity:0.4;}100%{opacity:0;}}
.prog-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease;}
.prog-reveal.prog-in{opacity:1;transform:none;}
@media (max-width:860px){.prog-hero-grid{grid-template-columns:1fr;}.prog-grid{grid-template-columns:1fr;}.prog-wrap{padding:0 22px;}.prog-why,.prog-emphasis,.prog-closing{padding-left:28px;padding-right:28px;}}
@media (prefers-reduced-motion:reduce){.prog-root *,.prog-root *::before,.prog-root *::after{animation:none !important;transition:none !important;}.prog-reveal{opacity:1;transform:none;}.prog-trigring,.prog-weekline{opacity:0;}.prog-enroll,.prog-day{opacity:1;transform:none;}}/* End custom CSS */