/*
 * First Light canonical interior presentation.
 *
 * Beaver Builder owns page structure and content. This stylesheet supplies
 * low-specificity defaults for the four canonical page families so the global
 * Style Controls stylesheet can remain the final presentation authority.
 */

body.fls-reference-interior{
  --fls-ref-navy:var(--fls-brand-navy,#0B1644);
  --fls-ref-blue:var(--fls-brand-blue,#4D67AF);
  --fls-ref-pink:var(--fls-brand-pink,#EF8394);
  --fls-ref-ink:var(--fls-brand-ink,#243150);
  --fls-ref-line:var(--fls-brand-line,rgba(11,22,68,.14));
  --fls-ref-pale-blue:#F1F3F9;
  --fls-ref-pale-pink:#FCE9ED;
  --fls-ref-display:var(--fls-display-font,"Lusitana",serif);
  --fls-ref-support:var(--fls-support-font,"Open Sans",sans-serif);
  background:#fff;
  color:var(--fls-ref-ink);
}

/* ---------- Shared Beaver structure ---------- */

body.fls-reference-interior :where(.fls-ref-row) > .fl-row-content-wrap > .fl-row-content{
  width:100%;
  max-width:1160px;
  margin:0 auto;
}

body.fls-reference-interior :where(.fls-ref-row) .fl-col-group{
  width:100%;
}

body.fls-reference-interior :where(.fls-ref-row) .fl-col-content{
  padding:0;
}

body.fls-reference-interior :where(.fls-ref-row) .fl-module-content{
  margin:0;
}

body.fls-reference-interior :where(.fls-ref-column){
  min-width:0;
}

body.fls-reference-interior :where(.fls-ref-centered) > .fl-row-content-wrap{
  padding-top:clamp(58px,5.5vw,82px);
  padding-bottom:clamp(58px,5.5vw,82px);
}

body.fls-reference-interior :where(.fls-ref-centered) .fl-col{
  float:none!important;
  width:100%!important;
}

body.fls-reference-interior :where(.fls-ref-centered-copy){
  max-width:780px;
  margin:0 auto;
  text-align:center;
}

/* ---------- Shared hero ---------- */

body.fls-reference-interior:not(.fls-reference-faqs):not(.fls-reference-utility) :where(.fls-ref-simple-hero) > .fl-row-content-wrap{
  border:0;
}

body.fls-reference-interior:not(.fls-reference-faqs):not(.fls-reference-utility) :where(.fls-ref-simple-hero) > .fl-row-content-wrap > .fl-row-content{
  width:100%;
  max-width:1160px;
  margin:0 auto;
}

body.fls-reference-interior :where(.fls-ref-simple-hero-copy){
  float:none!important;
  width:100%!important;
  max-width:none;
  margin:0;
}

body.fls-reference-interior :where(.fls-ref-simple-hero-copy) > .fl-col-content{
  min-height:0;
  padding:0;
}

body.fls-reference-interior :where(.fls-ref-simple-hero-module){
  width:min(100%,900px);
  margin:0 auto;
}

body.fls-reference-interior :where(.fls-ref-simple-hero-module) .fl-module-content{
  margin:0;
}

body.fls-reference-interior :where(.fls-ref-simple-hero-module) .fls-hero{
  display:flex;
  min-height:0;
  max-width:none;
  flex-direction:column;
  align-items:center;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  text-align:center;
}

body.fls-reference-interior :where(.fls-ref-simple-hero-module) .fls-stack-kicker{
  margin:0 0 14px;
  color:var(--fls-kicker-color,var(--fls-ref-pink));
  font-family:var(--fls-kicker-font-family,var(--fls-ref-support));
  font-size:max(14px,var(--fls-kicker-font-size,12px));
  font-style:normal;
  font-weight:var(--fls-kicker-font-weight,600);
  line-height:var(--fls-kicker-line-height,1.35);
  letter-spacing:var(--fls-kicker-letter-spacing,.08em);
  text-transform:var(--fls-kicker-text-transform,uppercase);
}

body.fls-reference-interior :where(.fls-ref-simple-hero-module) .fls-stack-heading{
  max-width:850px;
  margin:0;
  color:var(--fls-heading-color,#fff);
  font-family:var(--fls-heading-font-family,var(--fls-ref-display));
  font-size:max(14px,var(--fls-heading-font-size,clamp(46px,5.8vw,68px)));
  font-style:normal;
  font-weight:var(--fls-heading-font-weight,400);
  line-height:var(--fls-heading-line-height,1.02);
  letter-spacing:var(--fls-heading-letter-spacing,-.025em);
  text-transform:var(--fls-heading-text-transform,none);
  text-shadow:none;
}

body.fls-reference-interior :where(.fls-ref-simple-hero-module) :where(.fls-stack-copy,.fls-stack-copy p){
  max-width:760px;
  margin:24px auto 0;
  color:var(--fls-body-color,rgba(255,255,255,.94));
  font-family:var(--fls-body-font-family,var(--fls-ref-support));
  font-size:max(14px,var(--fls-body-font-size,18px));
  font-style:normal;
  font-weight:var(--fls-body-font-weight,400);
  line-height:var(--fls-body-line-height,1.62);
  letter-spacing:var(--fls-body-letter-spacing,normal);
  text-transform:var(--fls-body-text-transform,none);
  text-shadow:none;
}

body.fls-reference-interior :where(.fls-ref-simple-hero-module) .fls-stack-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  justify-content:var(--fls-actions-alignment,center);
  margin:30px 0 0;
}

/* FAQ and legal/utility pages intentionally begin with content, not a hero. */
body.fls-reference-faqs :where(.fls-v0558-hero-row,.fls-v0561-background-hero,.fls-ref-simple-hero),
body.fls-reference-utility :where(.fls-v0558-hero-row,.fls-v0561-background-hero,.fls-ref-simple-hero){
  display:none!important;
}

/* ---------- Shared typography ---------- */

body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) .fls-info-box{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) :where(.fls-stack-kicker){
  margin:0 0 12px;
  color:var(--fls-ref-blue);
  font-family:var(--fls-ref-support);
  font-size:12px;
  font-style:normal;
  font-weight:600;
  line-height:1.35;
  letter-spacing:.07em;
  text-transform:uppercase;
}

body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) :where(.fls-stack-heading,.fls-stack-kicker-heading){
  margin:0 0 18px;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-display);
  font-size:clamp(32px,3vw,44px);
  font-style:normal;
  font-weight:400;
  line-height:1.1;
  letter-spacing:-.02em;
  text-transform:none;
}

body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) .fls-stack-subheading{
  margin:20px 0 6px;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-display);
  font-size:20px;
  font-style:normal;
  font-weight:400;
  line-height:1.18;
  letter-spacing:-.01em;
}

body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) :where(.fls-stack-editable,.fls-stack-copy,.fls-stack-list),
body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) :where(.fls-stack-editable,.fls-stack-copy) p,
body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) .fls-stack-list li{
  color:var(--fls-ref-ink);
  font-family:var(--fls-ref-support);
  font-size:16px;
  font-style:normal;
  font-weight:400;
  line-height:1.65;
}

body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) .fls-stack-editable p{
  margin:0 0 18px;
}

body.fls-reference-interior :where(.fls-ref-copy,.fls-ref-family-copy,.fls-ref-source-editorial-copy,.fls-ref-action-section-copy) .fls-stack-item{
  margin:22px 0 0;
  padding:0;
  border:0;
  background:transparent;
}

body.fls-reference-interior :where(
  .fls-stack-heading,
  .fls-stack-subheading,
  .fls-stack-kicker-heading
) :where(em,i),
body.fls-reference-interior .fls-serif-accent{
  font-family:var(--fls-ref-display);
  font-style:italic;
  font-weight:400;
}

body.fls-reference-interior :where(.fls-ref-dark,.fls-ref-copy--dark) :where(
  .fls-stack-heading,
  .fls-stack-kicker-heading,
  .fls-stack-subheading,
  .fls-stack-editable,
  .fls-stack-editable p,
  .fls-stack-list,
  .fls-stack-list li
){
  color:#fff;
}

/* ---------- Buttons ---------- */

body.fls-reference-interior :where(.fls-button,.fl-button,.pp-button,.uabb-button,.wp-block-button__link){
  display:inline-flex;
  min-height:46px;
  align-items:center;
  justify-content:center;
  padding:10px 23px;
  border-radius:999px;
  font-family:var(--fls-ref-support);
  font-size:16px;
  font-weight:600;
  line-height:1.2;
  text-decoration:none;
  box-shadow:none;
}

body.fls-reference-interior :where(.fls-button,.fls-stack-action-primary,.fl-button-primary){
  border:1px solid var(--fls-ref-pink);
  background:var(--fls-ref-pink);
  color:var(--fls-ref-navy);
}

body.fls-reference-interior :where(.fls-stack-action-secondary,.fl-button-secondary){
  border:1px solid var(--fls-ref-navy);
  background:transparent;
  color:var(--fls-ref-navy);
}

body.fls-reference-interior :where(.fls-ref-dark,.fls-ref-simple-hero-module) :where(.fls-stack-action-secondary,.fl-button-secondary){
  border-color:var(--fls-secondary-border-color,#fff);
  color:var(--fls-secondary-color,#fff);
}

/* ---------- Split rows and imagery ---------- */

body.fls-reference-interior :where(.fls-ref-split) .fl-col-group{
  display:flex!important;
  align-items:center;
  gap:clamp(44px,6vw,80px);
}

body.fls-reference-interior :where(.fls-ref-split) .fl-col{
  float:none!important;
  min-width:0;
}

body.fls-reference-interior :where(.fls-ref-split--text-photo) .fl-col:first-child{
  flex:0 1 56%;
  width:56%!important;
}

body.fls-reference-interior :where(.fls-ref-split--text-photo) .fl-col:last-child{
  flex:0 1 44%;
  width:44%!important;
}

body.fls-reference-interior :where(.fls-ref-split--photo-text) .fl-col:first-child{
  flex:0 1 44%;
  width:44%!important;
}

body.fls-reference-interior :where(.fls-ref-split--photo-text) .fl-col:last-child{
  flex:0 1 56%;
  width:56%!important;
}

body.fls-reference-interior :where(.fls-ref-circle-photo,.fls-ref-family-photo,.fls-ref-story-photo){
  width:min(100%,330px);
  margin:0 auto;
}

/* Beaver/PowerPack image modules own crop, radius, object fit and frame styling. */
body.fls-reference-interior :where(.fls-ref-circle-photo,.fls-ref-family-photo,.fls-ref-story-photo) img{
  display:block;
  max-width:100%;
  height:auto;
}

body.fls-reference-interior :where(.fls-ref-circle-photo--dark){
  width:min(100%,390px);
}

body.fls-reference-interior :where(.fls-ref-copy--resources){
  max-width:630px;
}

/* ---------- Program / Circles reference details ---------- */

body.fls-reference-interior :where(.fls-ref-dark--heading) > .fl-row-content-wrap{
  padding-bottom:20px;
}

body.fls-reference-interior :where(.fls-ref-feature-heading) .fls-info-box{
  border:0;
  background:transparent;
  text-align:center;
  box-shadow:none;
}

body.fls-reference-interior :where(.fls-ref-feature-heading) .fls-stack-kicker{
  color:var(--fls-ref-pink);
  font-family:var(--fls-ref-support);
  font-size:12px;
  font-weight:600;
  letter-spacing:.07em;
  text-transform:uppercase;
}

body.fls-reference-interior :where(.fls-ref-feature-heading) .fls-stack-heading{
  margin:0;
  color:#fff;
  font-family:var(--fls-ref-display);
  font-size:clamp(30px,3vw,42px);
  font-weight:400;
  line-height:1.15;
}

body.fls-reference-interior :where(.fls-ref-feature-grid) > .fl-row-content-wrap{
  padding-top:18px;
  padding-bottom:58px;
}

body.fls-reference-interior :where(.fls-ref-feature-grid) .fl-col-group{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:30px;
}

body.fls-reference-interior :where(.fls-ref-feature-grid) .fl-col{
  float:none!important;
  width:100%!important;
}

body.fls-reference-interior :where(.fls-ref-feature-item) .fls-info-box{
  padding:0;
  border:0;
  background:transparent;
  text-align:center;
  box-shadow:none;
}

body.fls-reference-interior :where(.fls-ref-feature-item) .fls-stack-icon{
  display:none;
}

body.fls-reference-interior :where(.fls-ref-feature-item) .fls-stack-heading{
  margin:0 auto 10px;
  color:#fff;
  font-family:var(--fls-ref-display);
  font-size:18px;
  font-weight:400;
  line-height:1.12;
}

body.fls-reference-interior :where(.fls-ref-feature-item) :where(.fls-stack-editable,.fls-stack-editable p){
  margin:0;
  color:rgba(255,255,255,.9);
  font-family:var(--fls-ref-support);
  font-size:13px;
  line-height:1.5;
}

body.fls-reference-interior :where(.fls-ref-closing-note) > .fl-row-content-wrap{
  padding-top:42px;
  padding-bottom:42px;
}

body.fls-reference-interior :where(.fls-ref-note-copy){
  max-width:780px;
  margin:0 auto;
  text-align:center;
}

body.fls-reference-interior :where(.fls-ref-note-copy) :where(.fls-stack-heading,.fls-stack-kicker-heading){
  margin:0 0 12px;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-display);
  font-size:clamp(28px,2.4vw,34px);
  font-weight:400;
  line-height:1.12;
  letter-spacing:-.01em;
}

body.fls-reference-interior :where(.fls-ref-note-copy) :where(.fls-stack-editable,.fls-stack-editable p){
  margin:0;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-support);
  font-size:14px;
  line-height:1.55;
}

/* ---------- Shared closing CTA ---------- */

body.fls-reference-interior :where(.fls-ref-final,.fls-ref-family-final,.fls-ref-faq-final,.fls-ref-action-final,.fls-ref-story-final) > .fl-row-content-wrap{
  padding-top:56px;
  padding-bottom:56px;
}

body.fls-reference-interior :where(
  .fls-ref-final-module,
  .fls-ref-family-final-module,
  .fls-ref-faq-final-module,
  .fls-ref-action-final-module,
  .fls-ref-story-final-module
){
  max-width:760px;
  margin:0 auto;
  text-align:center;
}

body.fls-reference-interior :where(
  .fls-ref-final-module,
  .fls-ref-family-final-module,
  .fls-ref-faq-final-module,
  .fls-ref-action-final-module,
  .fls-ref-story-final-module
) .fls-final-cta{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

body.fls-reference-interior :where(
  .fls-ref-final-module,
  .fls-ref-family-final-module,
  .fls-ref-faq-final-module,
  .fls-ref-action-final-module,
  .fls-ref-story-final-module
) .fls-stack-heading{
  margin:0 0 14px;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-display);
  font-size:clamp(32px,3vw,42px);
  font-weight:400;
  line-height:1.1;
}

body.fls-reference-interior :where(
  .fls-ref-final-module,
  .fls-ref-family-final-module,
  .fls-ref-faq-final-module,
  .fls-ref-action-final-module,
  .fls-ref-story-final-module
) :where(.fls-stack-editable,.fls-stack-copy,.fls-stack-copy p){
  color:var(--fls-ref-ink);
  font-family:var(--fls-ref-support);
  font-size:15px;
  line-height:1.6;
}

/* ---------- Plain page titles ---------- */

body.fls-reference-interior :where(.fls-ref-page-title){
  margin:0 0 clamp(22px,2.8vw,34px);
}

body.fls-reference-interior :where(.fls-ref-page-title) .fls-info-box{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

body.fls-reference-interior :where(.fls-ref-page-title) .fls-stack-heading{
  margin:0;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-display);
  font-size:clamp(38px,4.6vw,56px);
  font-style:normal;
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.025em;
}

/* ---------- FAQ / Utility ---------- */

body.fls-reference-faqs :where(.fls-ref-faq-row) > .fl-row-content-wrap{
  padding-top:44px;
  padding-bottom:44px;
  border-bottom:1px solid var(--fls-ref-line);
}

body.fls-reference-faqs :where(.fls-ref-faq-row) .fl-col-group{
  display:flex!important;
  align-items:flex-start;
  gap:54px;
}

body.fls-reference-faqs :where(.fls-ref-faq-row) .fl-col:first-child{
  float:none!important;
  flex:0 0 38%;
  width:38%!important;
}

body.fls-reference-faqs :where(.fls-ref-faq-row) .fl-col:last-child{
  float:none!important;
  flex:1 1 62%;
  width:62%!important;
}

body.fls-reference-faqs :where(.fls-ref-faq-category-title) .fls-info-box{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

body.fls-reference-faqs :where(.fls-ref-faq-category-title) .fls-stack-heading{
  margin:0;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-display);
  font-size:clamp(28px,2.6vw,36px);
  font-weight:400;
  line-height:1.12;
}

body.fls-reference-faqs :where(.fls-ref-faq-item){
  border-top:1px solid var(--fls-ref-line);
}

body.fls-reference-faqs :where(.fls-ref-faq-item:first-child){
  border-top:0;
}

body.fls-reference-faqs :where(.fls-ref-faq-item) .fl-module-content{
  margin:0;
}

body.fls-reference-faqs :where(.fls-ref-faq-box){
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

body.fls-reference-faqs :where(.fls-ref-faq-toggle){
  appearance:none;
  display:flex;
  width:100%;
  min-height:48px;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:14px 0;
  border:0;
  background:transparent;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-support);
  font-size:14px;
  font-weight:700;
  line-height:1.35;
  text-align:left;
  cursor:pointer;
}

body.fls-reference-faqs :where(.fls-ref-faq-chevron){
  position:relative;
  flex:0 0 13px;
  width:13px;
  height:13px;
}

body.fls-reference-faqs :where(.fls-ref-faq-chevron)::before,
body.fls-reference-faqs :where(.fls-ref-faq-chevron)::after{
  content:"";
  position:absolute;
  top:6px;
  width:8px;
  height:1px;
  background:var(--fls-ref-navy);
  transition:transform .18s ease;
}

body.fls-reference-faqs :where(.fls-ref-faq-chevron)::before{
  left:0;
  transform:rotate(45deg);
}

body.fls-reference-faqs :where(.fls-ref-faq-chevron)::after{
  right:0;
  transform:rotate(-45deg);
}

body.fls-reference-faqs :where(.fls-ref-faq-toggle[aria-expanded="true"]) .fls-ref-faq-chevron::before{
  transform:rotate(-45deg);
}

body.fls-reference-faqs :where(.fls-ref-faq-toggle[aria-expanded="true"]) .fls-ref-faq-chevron::after{
  transform:rotate(45deg);
}

body.fls-reference-faqs :where(.fls-ref-faq-panel){
  padding:0 34px 18px 0;
}

body.fls-reference-faqs :where(.fls-ref-faq-panel) :where(.fls-stack-editable,.fls-stack-editable p){
  margin:0;
  color:var(--fls-ref-ink);
  font-family:var(--fls-ref-support);
  font-size:14px;
  line-height:1.6;
}

body.fls-reference-utility :where(.fls-ref-utility-page-row) > .fl-row-content-wrap{
  padding-top:50px;
  padding-bottom:50px;
}

body.fls-reference-utility :where(.fls-ref-utility-page-row:first-of-type) > .fl-row-content-wrap{
  padding-top:72px;
}

body.fls-reference-utility :where(.fls-ref-utility-page-row + .fls-ref-utility-page-row) > .fl-row-content-wrap{
  border-top:1px solid var(--fls-ref-line);
}

body.fls-reference-utility :where(.fls-ref-utility-page-row) > .fl-row-content-wrap > .fl-row-content{
  max-width:900px;
}

body.fls-reference-utility :where(.fls-ref-utility-copy) .fls-info-box{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

body.fls-reference-utility :where(.fls-ref-utility-copy) .fls-stack-heading{
  margin:0 0 20px;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-display);
  font-size:clamp(34px,3.4vw,48px);
  font-weight:400;
  line-height:1.08;
}

body.fls-reference-utility :where(.fls-ref-utility-copy) :where(.fls-stack-editable,.fls-stack-copy,.fls-stack-copy p,.fls-stack-list,.fls-stack-list li){
  color:var(--fls-ref-ink);
  font-family:var(--fls-ref-support);
  font-size:15px;
  line-height:1.7;
}

/* ---------- Canonical family rows ---------- */

body.fls-reference-interior :where(.fls-ref-family-pair) .fl-col-group{
  display:flex!important;
  align-items:flex-start;
  gap:clamp(42px,5vw,72px);
}

body.fls-reference-interior :where(.fls-ref-family-pair) .fl-col{
  float:none!important;
  min-width:0;
}

body.fls-reference-interior :where(.fls-ref-family-pair) .fl-col:only-child{
  width:100%!important;
}

body.fls-reference-interior :where(.fls-ref-family-pair) .fl-col:not(:only-child){
  width:calc(50% - 36px)!important;
  flex:1 1 50%;
}

body.fls-reference-interior :where(.fls-ref-family-lead,.fls-ref-family-statement,.fls-ref-family-bridge) .fls-ref-family-copy{
  max-width:760px;
}

body.fls-reference-interior :where(.fls-ref-family-lead) .fls-ref-family-copy:not(.fls-ref-centered-copy){
  max-width:620px;
}

/* ---------- Action & Conversion ---------- */

body.fls-reference-action :where(.fls-ref-pathway-grid){
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:54px 72px;
}

body.fls-reference-action :where(.fls-ref-benefit-grid){
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:30px;
}

body.fls-reference-action :where(.fls-ref-pathway,.fls-ref-benefit){
  min-width:0;
}

body.fls-reference-action :where(.fls-ref-pathway,.fls-ref-benefit) .fls-stack-subheading{
  margin:0 0 10px;
  color:var(--fls-ref-navy);
  font-family:var(--fls-ref-display);
  font-size:24px;
  font-weight:400;
  line-height:1.15;
}

body.fls-reference-action :where(.fls-ref-pathway,.fls-ref-benefit) .fls-stack-copy{
  margin:0;
  color:var(--fls-ref-ink);
  font-family:var(--fls-ref-support);
  font-size:15px;
  line-height:1.65;
}

body.fls-reference-action :where(.fls-ref-benefit){
  text-align:center;
}

body.fls-reference-action :where(.fls-ref-action-section) > .fl-row-content-wrap{
  padding-top:clamp(54px,5vw,76px);
  padding-bottom:clamp(54px,5vw,76px);
}

body.fls-reference-action :where(.fls-ref-action-section) > .fl-row-content-wrap > .fl-row-content{
  max-width:980px;
}

body.fls-reference-action :where(.fls-ref-action-section) .fl-col{
  float:none!important;
  width:100%!important;
}

body.fls-reference-action :where(.fls-ref-action-section-copy){
  max-width:820px;
  margin:0 auto;
}

body.fls-reference-action :where(.fls-ref-action-functional-row) > .fl-row-content-wrap{
  padding:clamp(64px,6vw,92px) 28px;
}

body.fls-reference-action :where(.fls-ref-action-functional-row) > .fl-row-content-wrap > .fl-row-content{
  max-width:920px;
}

body.fls-reference-action :where(.fls-ref-action-functional-row) .fl-col{
  float:none!important;
  width:100%!important;
}

body.fls-reference-action :where(.fls-ref-action-functional-module,.fls-ref-action-form){
  width:100%;
  max-width:760px;
  margin:0 auto;
}

body.fls-reference-action :where(.fls-ref-action-functional-module,.fls-ref-action-form) :where(.fl-module-content,.fls-functional,.fls-form-shell,.gform_wrapper,form){
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  margin:0;
}

body.fls-reference-action :where(.fls-ref-action-functional-module,.fls-ref-action-form) :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  font-family:var(--fls-ref-support);
}

/* ---------- Story & Impact ---------- */

body.fls-reference-editorial :where(.fls-ref-story-belief-copy,.fls-ref-story-community-copy){
  max-width:800px;
}

body.fls-reference-editorial :where(.fls-ref-story-mission-vision) .fl-col-group{
  display:flex!important;
  align-items:stretch;
  gap:64px;
}

body.fls-reference-editorial :where(.fls-ref-story-mission-vision) .fl-col{
  float:none!important;
  width:calc(50% - 32px)!important;
}

body.fls-reference-editorial :where(.fls-ref-story-principle) .fls-info-box{
  height:100%;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

body.fls-reference-editorial :where(.fls-ref-story-people-copy){
  max-width:980px;
  margin:0 auto;
}

body.fls-reference-editorial :where(.fls-ref-story-people-copy) .fls-stack-editable{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:64px;
  margin-top:34px;
}

body.fls-reference-editorial :where(.fls-ref-story-people-copy) .fls-stack-item{
  margin:0;
  padding:0;
  border:0;
  background:transparent;
}

body.fls-reference-editorial :where(.fls-ref-source-editorial-row) > .fl-row-content-wrap{
  padding-top:clamp(58px,5.5vw,82px);
  padding-bottom:clamp(58px,5.5vw,82px);
}

body.fls-reference-editorial :where(.fls-ref-source-editorial-row) > .fl-row-content-wrap > .fl-row-content{
  max-width:960px;
}

body.fls-reference-editorial :where(.fls-ref-source-editorial-column){
  float:none!important;
  width:100%!important;
}

body.fls-reference-editorial :where(.fls-ref-source-editorial-copy){
  max-width:820px;
  margin:0 auto;
}

/* ---------- Responsive ---------- */

@media(max-width:900px){
  body.fls-reference-interior :where(.fls-ref-split) .fl-col-group,
  body.fls-reference-interior :where(.fls-ref-family-pair) .fl-col-group,
  body.fls-reference-faqs :where(.fls-ref-faq-row) .fl-col-group,
  body.fls-reference-editorial :where(.fls-ref-story-mission-vision) .fl-col-group{
    display:block!important;
  }

  body.fls-reference-interior :where(.fls-ref-split) .fl-col,
  body.fls-reference-interior :where(.fls-ref-family-pair) .fl-col,
  body.fls-reference-faqs :where(.fls-ref-faq-row) .fl-col,
  body.fls-reference-editorial :where(.fls-ref-story-mission-vision) .fl-col{
    float:none!important;
    width:100%!important;
    max-width:720px;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.fls-reference-interior :where(.fls-ref-split) .fl-col + .fl-col,
  body.fls-reference-interior :where(.fls-ref-family-pair) .fl-col + .fl-col,
  body.fls-reference-editorial :where(.fls-ref-story-mission-vision) .fl-col + .fl-col{
    margin-top:40px!important;
  }

  body.fls-reference-interior :where(.fls-ref-feature-grid) .fl-col-group{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:34px 26px;
  }

  body.fls-reference-action :where(.fls-ref-benefit-grid),
  body.fls-reference-editorial :where(.fls-ref-story-people-copy) .fls-stack-editable{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body.fls-reference-faqs :where(.fls-ref-faq-row) .fl-col:last-child{
    margin-top:24px!important;
  }
}

@media(max-width:600px){
  body.fls-reference-interior :where(.fls-ref-simple-hero-module) .fls-stack-heading{
    font-size:clamp(40px,11vw,52px);
  }

  body.fls-reference-interior :where(.fls-ref-simple-hero-module) :where(.fls-stack-copy,.fls-stack-copy p){
    font-size:16px;
  }

  body.fls-reference-interior :where(.fls-ref-feature-grid) .fl-col-group,
  body.fls-reference-action :where(.fls-ref-pathway-grid),
  body.fls-reference-action :where(.fls-ref-benefit-grid),
  body.fls-reference-editorial :where(.fls-ref-story-people-copy) .fls-stack-editable{
    grid-template-columns:1fr;
    gap:34px;
  }

  body.fls-reference-interior :where(.fls-ref-circle-photo,.fls-ref-family-photo,.fls-ref-story-photo){
    width:min(100%,300px);
  }

  body.fls-reference-faqs :where(.fls-ref-faq-row) > .fl-row-content-wrap{
    padding-top:36px;
    padding-bottom:36px;
  }

  body.fls-reference-action :where(.fls-ref-action-functional-row) > .fl-row-content-wrap{
    padding:52px 20px;
  }
}
