/**
 * Focusline Prep. Shared: rules used by two or more pages.
 * Generated by the theme builder from the approved page design. Edit the builder, not this file.
 */
/* The designed pages' own base: Astra styles the rest of the site. */
.fl-page{font-family:var(--fl-f-body, "Source Sans 3",system-ui,sans-serif);font-size:var(--fl-body, 18px);line-height:1.6;color:var(--fl-c-text, #14231F);-webkit-font-smoothing:antialiased}
/* Astra colors h1 to h6 directly. Headings here take their section's color unless a class sets one
   (:where keeps this rule as weak as a single class, so every later class rule wins). */
.fl-page :where(h1,h2,h3,h4,h5,h6){color:inherit}
.fl-container{max-width:var(--fl-size-1200, 1200px);margin:0 auto;padding:0 var(--fl-pad, 32px)}
.fl-btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--fl-size-52, 52px);padding:var(--fl-sp-14, 14px) var(--fl-sp-26, 26px);border:var(--fl-bw-1, 1px) solid transparent;border-radius:var(--fl-r-btn, 4px);font-family:var(--fl-f-body, "Source Sans 3",system-ui,sans-serif);font-size:var(--fl-fs-17, 17px);font-weight:600;line-height:1.2;text-decoration:none;text-align:center}
.fl-btn-primary{background:var(--fl-c-btn-bg, #0F6B5C);color:var(--fl-c-btn-fg, #FAF8F4)}
.fl-btn-primary:hover{background:var(--fl-c-btn-hover, #0B5248)}
.fl-link{display:inline-flex;align-items:center;min-height:var(--fl-size-44, 44px);color:var(--fl-c-accent, #0F6B5C);font-weight:600;text-decoration:underline;text-decoration-thickness:var(--fl-bw-1, 1px);text-underline-offset:var(--fl-sp-5, 5px)}
.fl-link:hover{text-decoration-thickness:var(--fl-bw-2, 2px)}
.fl-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--fl-sp-12, 12px) var(--fl-sp-28, 28px)}
.fl-btn:focus-visible,.fl-link:focus-visible{outline:var(--fl-bw-3, 3px) solid var(--fl-c-focus, #0F6B5C);outline-offset:var(--fl-sp-3, 3px)}
.fl-hero .fl-btn:focus-visible,.fl-hero .fl-link:focus-visible{outline-color:var(--fl-c-hero-focus, #0F6B5C)}
.fl-cta .fl-btn:focus-visible,.fl-cta .fl-link:focus-visible{outline-color:var(--fl-c-cta-focus, #E0A100)}
.fl-motif{position:relative;display:block;width:var(--fl-size-96, 96px);height:var(--fl-size-1, 1px);margin-bottom:var(--fl-sp-24, 24px);background:var(--fl-c-text, #14231F)}
.fl-motif::after{content:"";position:absolute;right:calc(var(--fl-sp-8, 8px) * -1);top:calc(var(--fl-sp-3-5, 3.5px) * -1);width:var(--fl-size-8, 8px);height:var(--fl-size-8, 8px);border-radius:50%;background:var(--fl-c-dot, #E0A100)}
.fl-sec{padding:var(--fl-sec-pad, 96px) 0;background:var(--fl-c-bg, #FAF8F4)}
.fl-sec-alt{background:var(--fl-c-alt, #F1EEE6)}
.fl-sec-head{max-width:46em;margin:0 0 var(--fl-sp-48, 48px)}
.fl-h2{margin:0;font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-h2, 44px);font-weight:var(--fl-head-w, 600);line-height:1.12;letter-spacing:-0.015em;color:var(--fl-c-text, #14231F);font-optical-sizing:auto;text-wrap:balance}
.fl-sec-intro{margin:var(--fl-sp-16, 16px) 0 0;color:var(--fl-c-muted, #4A5752);font-size:var(--fl-fs-20, 20px)}
.fl-hero{background:var(--fl-c-hero-bg, #FAF8F4);color:var(--fl-c-hero-text, #14231F);padding:var(--fl-sp-88, 88px) 0 var(--fl-sp-96, 96px)}
.fl-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);column-gap:var(--fl-sp-64, 64px);grid-template-areas:"eyebrow video" "title video" "body video";grid-template-rows:auto auto 1fr}
.fl-eyebrow{grid-area:eyebrow;display:flex;align-items:center;gap:var(--fl-sp-10, 10px);margin:0 0 var(--fl-sp-20, 20px);color:var(--fl-c-hero-accent, #0F6B5C);font-size:var(--fl-fs-15, 15px);font-weight:600;letter-spacing:.02em}
.fl-eyebrow::before{content:"";flex:none;width:var(--fl-size-8, 8px);height:var(--fl-size-8, 8px);border-radius:50%;background:var(--fl-c-dot, #E0A100)}
.fl-hero-title{grid-area:title;margin:0 0 var(--fl-sp-24, 24px);font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-h1, 60px);font-weight:var(--fl-head-w, 600);line-height:1.06;letter-spacing:-0.02em;color:inherit;font-optical-sizing:auto;text-wrap:balance}
.fl-hero-body{grid-area:body}
.fl-hero-intro{margin:0 0 var(--fl-sp-32, 32px);max-width:34em;font-size:var(--fl-fs-20, 20px);line-height:1.55}
.fl-hero .fl-actions{margin:0 0 var(--fl-sp-16, 16px)}
.fl-hero .fl-btn-primary{background:var(--fl-c-hero-btn-bg, #0F6B5C);color:var(--fl-c-hero-btn-fg, #FAF8F4)}
.fl-hero .fl-btn-primary:hover{background:var(--fl-c-hero-btn-hover, #0B5248)}
.fl-hero .fl-link{color:var(--fl-c-hero-link, #0F6B5C)}
.fl-hero-small{margin:0;color:var(--fl-c-hero-muted, #4A5752);font-size:var(--fl-fs-15, 15px)}
.fl-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--fl-sp-40, 40px);list-style:none;margin:0;padding:0;counter-reset:step}
.fl-step{counter-increment:step;padding-top:var(--fl-sp-24, 24px);border-top:var(--fl-bw-1, 1px) solid var(--fl-c-text, #14231F)}
.fl-step::before{content:counter(step,decimal-leading-zero);display:block;margin-bottom:var(--fl-sp-16, 16px);font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-fs-22, 22px);font-weight:600;color:var(--fl-c-accent, #0F6B5C);font-variant-numeric:lining-nums}
.fl-step-text{margin:0}
.fl-step-name{display:block;margin-bottom:var(--fl-sp-8, 8px);font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-fs-26, 26px);font-weight:var(--fl-head-w, 600);line-height:1.2}
.fl-faq-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--fl-sp-64, 64px)}
.fl-faq-head{margin:0}
.fl-faq-item{padding:var(--fl-sp-28, 28px) 0;border-top:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7)}
.fl-faq-item:last-child{border-bottom:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7)}
.fl-faq-q{margin:0 0 var(--fl-sp-8, 8px);font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-fs-23, 23px);font-weight:var(--fl-head-w, 600);line-height:1.3}
.fl-faq-a{margin:0;max-width:40em}
.fl-cta{background:var(--fl-c-cta-bg, #14231F);color:var(--fl-c-cta-text, #FAF8F4);padding:var(--fl-sp-104, 104px) 0}
.fl-cta .fl-motif{background:var(--fl-c-cta-line, #FAF8F4)}
.fl-cta-title{max-width:18em;margin:0 0 var(--fl-sp-16, 16px);font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-cta-h, 48px);font-weight:var(--fl-head-w, 600);line-height:1.12;letter-spacing:-0.015em;color:inherit;text-wrap:balance}
.fl-cta-line{margin:0 0 var(--fl-sp-36, 36px);color:var(--fl-c-cta-muted, #C9D3CF);font-size:var(--fl-fs-20, 20px)}
.fl-btn-cta{background:var(--fl-c-cta-btn-bg, #E0A100);color:var(--fl-c-cta-btn-fg, #14231F)}
.fl-btn-cta:hover{background:var(--fl-c-cta-btn-hover, #F2B51C)}
@media (max-width:921px){
  .fl-hero{padding:var(--fl-sp-56, 56px) 0 var(--fl-sp-72, 72px)}
  .fl-hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"eyebrow" "title" "body" "video";grid-template-rows:none}
  .fl-steps{grid-template-columns:minmax(0,1fr);gap:var(--fl-sp-32, 32px)}
  .fl-faq-grid{grid-template-columns:minmax(0,1fr);gap:var(--fl-sp-32, 32px)}
  .fl-cta{padding:var(--fl-sp-80, 80px) 0}
}
@media (max-width:544px){
  .fl-hero{padding:var(--fl-sp-40, 40px) 0 var(--fl-sp-56, 56px)}
  .fl-hero-intro{font-size:var(--fl-fs-18, 18px)}
  .fl-actions .fl-btn{width:100%}
  .fl-sec-head{margin-bottom:var(--fl-sp-32, 32px)}
  .fl-sec-intro{font-size:var(--fl-fs-18, 18px)}
  .fl-step-name{font-size:var(--fl-fs-23, 23px)}
  .fl-faq-q{font-size:var(--fl-fs-20, 20px)}
  .fl-faq-item{padding:var(--fl-sp-22, 22px) 0}
  .fl-cta{padding:var(--fl-sp-64, 64px) 0}
  .fl-cta-line{font-size:var(--fl-fs-18, 18px)}
}
.fl-inline-link{color:var(--fl-c-accent, #0F6B5C);text-decoration:underline;text-underline-offset:var(--fl-sp-3, 3px)}
.fl-inline-link:focus-visible{outline:var(--fl-bw-3, 3px) solid var(--fl-c-focus, #0F6B5C);outline-offset:var(--fl-sp-2, 2px)}
.fl-hero-solo{grid-template-columns:minmax(0,1fr);grid-template-areas:"eyebrow" "title" "body";grid-template-rows:none}
.fl-hero-solo .fl-hero-title{max-width:16em}
.fl-hero-solo .fl-hero-intro{max-width:38em}
.fl-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:var(--fl-sp-64, 64px)}
.fl-split > .fl-sec-head{margin:0}
.fl-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--fl-sp-48, 48px)}
.fl-col-title{margin:0 0 var(--fl-sp-4, 4px);padding-top:var(--fl-sp-20, 20px);border-top:var(--fl-bw-2, 2px) solid var(--fl-c-text, #14231F);font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-fs-24, 24px);font-weight:600;line-height:1.25}
.fl-col-no .fl-col-title{border-top-color:var(--fl-c-muted, #4A5752)}
.fl-list{list-style:none;margin:0;padding:0}
.fl-list-item{position:relative;padding:var(--fl-sp-16, 16px) 0 var(--fl-sp-16, 16px) var(--fl-sp-28, 28px);border-bottom:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7);font-size:var(--fl-fs-18, 18px);line-height:1.55}
.fl-list-item::before{content:"";position:absolute;left:var(--fl-sp-2, 2px);top:var(--fl-sp-26, 26px);width:var(--fl-size-9, 9px);height:var(--fl-size-9, 9px);border-radius:50%;background:var(--fl-teal, #0F6B5C)}
.fl-col-no .fl-list-item::before{background:transparent;border:var(--fl-bw-1-5, 1.5px) solid var(--fl-c-muted, #4A5752)}
.fl-split-body > .fl-col-no .fl-list,.fl-split-body > .fl-col-yes .fl-list{border-top:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7)}
.fl-steps-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--fl-sp-32, 32px)}
.fl-steps-4 .fl-step-name{font-size:var(--fl-fs-24, 24px)}
.fl-apply .fl-hero-intro{margin-bottom:var(--fl-sp-36, 36px)}
.fl-form-small{margin:var(--fl-sp-14, 14px) 0 0;color:var(--fl-c-muted, #4A5752);font-size:var(--fl-fs-15, 15px)}
.fl-btn[hidden],.fl-form-small[hidden]{display:none}
@media (max-width:921px){
  .fl-split{grid-template-columns:minmax(0,1fr)}
  .fl-split > .fl-sec-head{margin-bottom:var(--fl-sp-32, 32px)}
  .fl-cols{grid-template-columns:minmax(0,1fr);gap:var(--fl-sp-40, 40px)}
  .fl-steps-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:544px){
  .fl-steps-4{grid-template-columns:minmax(0,1fr)}
  .fl-list-item{font-size:var(--fl-fs-17, 17px)}
  .fl-list-item::before{top:var(--fl-sp-25, 25px)}
}
.fl-hero-solo .fl-hero-title{max-width:17em}
.fl-sq-list{list-style:none;margin:0;padding:0;border-top:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7)}
.fl-sq-item{position:relative;padding:var(--fl-sp-16, 16px) 0 var(--fl-sp-16, 16px) var(--fl-sp-30, 30px);border-bottom:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7);font-size:var(--fl-fs-19, 19px);line-height:1.5}
.fl-sq-item::before{content:"";position:absolute;left:var(--fl-sp-2, 2px);top:var(--fl-sp-26, 26px);width:var(--fl-size-9, 9px);height:var(--fl-size-9, 9px);background:var(--fl-teal, #0F6B5C)}
.fl-after-list{max-width:36em;margin:var(--fl-sp-24, 24px) 0 0;font-size:var(--fl-fs-18, 18px)}
@media (max-width:544px){
  .fl-sq-item{font-size:var(--fl-fs-17, 17px)}
  .fl-sq-item::before{top:var(--fl-sp-25, 25px)}
}
.fl-cols .fl-col{padding:var(--fl-sp-28, 28px) var(--fl-sp-28, 28px) var(--fl-sp-12, 12px);border:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7);border-radius:var(--fl-r-card, 4px);background:var(--fl-paper, #FAF8F4)}
.fl-cols .fl-col-yes{border-top:var(--fl-bw-4, 4px) solid var(--fl-teal, #0F6B5C)}
.fl-cols .fl-col-title{padding-top:0;border-top:0;margin-bottom:var(--fl-sp-8, 8px)}
.fl-cols .fl-list-item:last-child{border-bottom:0}
.fl-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--fl-sp-20, 20px);list-style:none;margin:0;padding:0;counter-reset:badge}
.fl-badge-step{counter-increment:badge;padding:var(--fl-sp-24, 24px) var(--fl-sp-22, 22px);border:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7);border-radius:var(--fl-r-4, 4px);background:var(--fl-paper, #FAF8F4)}
.fl-badge-step::before{content:counter(badge);display:flex;align-items:center;justify-content:center;width:var(--fl-size-40, 40px);height:var(--fl-size-40, 40px);margin-bottom:var(--fl-sp-16, 16px);border-radius:var(--fl-r-4, 4px);background:var(--fl-teal, #0F6B5C);color:var(--fl-paper, #FAF8F4);font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-fs-20, 20px);font-weight:600}
.fl-badge-text{margin:0;font-size:var(--fl-fs-17, 17px);line-height:1.5}
.fl-note-line{max-width:46em;margin:var(--fl-sp-24, 24px) 0 0;color:var(--fl-c-muted, #4A5752);font-size:var(--fl-fs-17, 17px)}
.fl-form-card{padding:var(--fl-sp-32, 32px);border:var(--fl-bw-1, 1px) solid var(--fl-c-line, #D9D4C7);border-top:var(--fl-bw-4, 4px) solid var(--fl-teal, #0F6B5C);border-radius:var(--fl-r-4, 4px);background:var(--fl-stone, #F1EEE6)}
@media (max-width:921px){
  .fl-badges{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:544px){
  .fl-badges{grid-template-columns:minmax(0,1fr)}
  .fl-form-card{padding:var(--fl-sp-22, 22px) var(--fl-sp-18, 18px)}
}
.fl-apply-head .fl-callout{max-width:40em}
.fl-hero{background:var(--fl-ink, #14231F);color:var(--fl-paper, #FAF8F4)}
.fl-hero .fl-eyebrow{color:var(--fl-teal-light, #A8D8CC)}
.fl-hero .fl-hero-small{color:var(--fl-on-dark-muted, #C9D3CF)}
.fl-hero .fl-btn-primary{background:var(--fl-amber, #E0A100);color:var(--fl-ink, #14231F)}
.fl-hero .fl-btn-primary:hover{background:var(--fl-amber-hover, #F2B51C)}
.fl-hero .fl-link{color:var(--fl-teal-light, #A8D8CC)}
.fl-hero .fl-btn:focus-visible,.fl-hero .fl-link:focus-visible{outline-color:var(--fl-amber, #E0A100)}
.fl-page{counter-reset:flsec}
.fl-sec-head{counter-increment:flsec}
.fl-sec-head::before{content:counter(flsec,decimal-leading-zero);display:block;margin:0 0 var(--fl-sp-12, 12px);color:var(--fl-teal, #0F6B5C);font-family:var(--fl-f-head, "Source Serif 4",Georgia,serif);font-size:var(--fl-fs-17, 17px);font-weight:600;letter-spacing:.08em}
.fl-faq-item{padding:0}
.fl-faq-sum{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:var(--fl-sp-24, 24px);min-height:var(--fl-size-44, 44px);padding:var(--fl-sp-24, 24px) 0;cursor:pointer;list-style:none}
.fl-faq-sum::-webkit-details-marker{display:none}
.fl-faq-sum .fl-faq-q{margin:0}
.fl-faq-sum::after{content:"+";flex:none;display:inline-flex;align-items:center;justify-content:center;width:var(--fl-size-36, 36px);height:var(--fl-size-36, 36px);border:var(--fl-bw-1, 1px) solid var(--fl-ink, #14231F);border-radius:var(--fl-r-4, 4px);font-family:var(--fl-f-body, "Source Sans 3",system-ui,sans-serif);font-size:var(--fl-fs-22, 22px);font-weight:600;line-height:1;color:var(--fl-ink, #14231F)}
.fl-faq-item[open] .fl-faq-sum::after{content:"\2212"}
.fl-faq-sum:hover .fl-faq-q{color:var(--fl-teal, #0F6B5C)}
.fl-faq-sum:focus-visible{outline:var(--fl-bw-3, 3px) solid var(--fl-teal, #0F6B5C);outline-offset:var(--fl-sp-3, 3px)}
.fl-faq-item .fl-faq-a{padding:0 var(--fl-sp-60, 60px) var(--fl-sp-24, 24px) 0}
@media (max-width:544px){
  .fl-faq-sum{padding:var(--fl-sp-20, 20px) 0}
  .fl-faq-item .fl-faq-a{padding:0 0 var(--fl-sp-20, 20px)}
}
