/* These hero rules apply only to the explicitly selected content-sized variant. */
.section-hero.section-hero-fit .hero-box {
  min-height: 0;
  height: auto;
  padding-top: 75px;
  padding-bottom: 50px;
  align-items: center;
}
.section-hero.section-hero-fit .hero-content { width: 100%; min-width: 0; }
.section-hero.section-hero-fit .hero-content-inside { overflow-wrap: break-word; }
.section-hero.section-hero-fit .hero-content-inside > :first-child { margin-top: 0; }

/* The desktop header overlays the first section above this breakpoint. */
@media (min-width: 1201px) {
  .section-hero.section-hero-fit .hero-box { padding-top: 200px; }
}

.fcta, .ffaq { color: #1c1a17; }
.fcta { padding: 48px 0; background: #fff; }
.fcta--button-only { padding: 40px 0; }
.fcta__inner, .ffaq__inner { max-width: 1440px; margin: 0 auto; padding: 0 clamp(20px, 5.85vw, 100px); }
.fcta__inner { display: flex; flex-direction: column; align-items: center; gap: 26px; text-align: center; }
.fcta.fcta--colored {
  box-sizing: border-box;
  max-width: 2000px;
  margin: clamp(28px, 3.5vw, 48px) auto;
  padding: 0 15px;
  background: transparent;
}
.fcta--colored .fcta__inner {
  max-width: none;
  padding: clamp(36px, 4.6vw, 64px) clamp(24px, 5.85vw, 100px);
  border: 0;
  border-radius: 24px;
  background: transparent linear-gradient(180deg, #FFFFFF 0%, #F8F6F2 100%) 0% 0% no-repeat padding-box;
}
.fcta .fcta__content { max-width: 1040px; min-width: 0; width: 100%; font-family: var(--font-secondary, Montserrat, sans-serif); font-size: clamp(20px, 2.1vw, 26px); line-height: 1.5; font-weight: 500; overflow-wrap: break-word; }
.fcta .fcta__content p { margin: 0 0 .7em; font: inherit; }
.fcta .fcta__content > :first-child { margin-top: 0; }
.fcta .fcta__content > :last-child { margin-bottom: 0; }
.fcta .fcta__content strong, .fcta .fcta__content b { font-weight: 700; }
.fcta .fcta__content h2, .fcta .fcta__content h3 { margin: 0 0 .6em; font-family: var(--font-primary, termina, sans-serif); font-size: clamp(26px, 3vw, 40px); line-height: 1.25; font-weight: 500; }
.fcta .fcta__content a, .ffaq .ffaq__answer a { color: #a64c08; text-decoration: underline; text-underline-offset: .2em; }
.fcta .fcta__content img { max-width: 100%; height: auto; }
.fcta .fcta__content ul, .fcta .fcta__content ol { padding-left: 1.4em; }
.fcta__button { display: flex; justify-content: center; max-width: 100%; }
.fcta .flooren-section-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 14px; max-width: 100%; min-height: 52px;
  padding: 16px 28px; border: 0; border-radius: 32px; background: linear-gradient(100deg, #ff6200, #ff9100);
  box-shadow: 0 8px 18px #42230014; color: #fff; font-family: var(--font-secondary, Montserrat, sans-serif);
  font-size: 16px; line-height: 1.4; font-weight: 600; text-decoration: none; text-align: center;
}
.fcta .flooren-section-button:hover { background: linear-gradient(100deg, #e65700, #ee8500); color: #fff; }
.fcta .flooren-section-button svg { flex: 0 0 16px; width: 16px; height: 16px; fill: none; transform: none; }
.fcta .flooren-section-button:focus-visible, .fcta__content a:focus-visible, .ffaq__answer a:focus-visible { outline: 3px solid #9a4404; outline-offset: 5px; }

.ffaq { padding: clamp(48px, 6.5vw, 88px) 0; background: transparent; }
.ffaq.ffaq--colored { background: #f8f6f2; }
.ffaq .ffaq__heading { max-width: 1000px; margin: 0 auto 40px; color: inherit; text-align: center; font-family: var(--font-primary, termina, sans-serif); font-size: clamp(28px, 3vw, 42px); font-weight: 500; line-height: 1.25; letter-spacing: -.035em; }
.ffaq__list { max-width: 1040px; margin: 0 auto; display: grid; gap: 12px; }
.ffaq .ffaq__item { min-width: 0; margin: 0; padding: 0; border: 1px solid #e7e0d6; border-radius: 16px; background: #fff; overflow-wrap: break-word; }
.ffaq .ffaq__question { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 28px; cursor: pointer; list-style: none; border-radius: 16px; }
.ffaq .ffaq__question::-webkit-details-marker { display: none; }
.ffaq .ffaq__question::marker { content: ''; }
.ffaq .ffaq__question h3 { min-width: 0; margin: 0; color: inherit; font-family: var(--font-secondary, Montserrat, sans-serif); font-size: 18px; font-weight: 600; line-height: 1.5; }
.ffaq__icon { display: flex; align-items: center; justify-content: center; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 50%; color: #a64c08; background: #f8f6f2; }
.ffaq__icon svg { display: block; width: 16px; height: 16px; fill: none; }
.ffaq__item[open] .ffaq__icon { transform: rotate(180deg); }
.ffaq .ffaq__question:hover { background: #fdfbf8; }
.ffaq .ffaq__question:focus-visible { outline: 3px solid #9a4404; outline-offset: -4px; }
.ffaq .ffaq__answer { padding: 0 84px 26px 28px; font-family: var(--font-secondary, Montserrat, sans-serif); font-size: 16px; line-height: 1.75; }
.ffaq .ffaq__answer p { margin: 0 0 1em; font: inherit; }
.ffaq .ffaq__answer > :first-child { margin-top: 0; }
.ffaq .ffaq__answer > :last-child { margin-bottom: 0; }
.ffaq .ffaq__answer ul, .ffaq .ffaq__answer ol { padding-left: 1.4em; }
.ffaq .ffaq__answer li { margin: .4em 0; }
.ffaq .ffaq__answer strong { font-weight: 650; }
.flooren-section-note { padding: 22px; border: 1px dashed #b6a58f; border-radius: 14px; color: #665f56; font: 15px/1.6 Montserrat, sans-serif; }

/* Match the text/video rich-text treatment without the theme's descendant resets. */
.section-acf-description-1 .acf-description-1-box .right-col {
  min-width: 0;
  color: #1c1a17;
  font-family: var(--font-secondary, Montserrat, sans-serif);
  font-size: 17px;
  line-height: 1.7;
  font-weight: 400;
  overflow-wrap: break-word;
}
.section-acf-description-1 .acf-description-1-box .right-col * {
  font-family: inherit !important;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: inherit;
}
.section-acf-description-1 .acf-description-1-box .right-col p { margin: 0 0 1.1em; }
.section-acf-description-1 .acf-description-1-box .right-col :is(strong, b) { font-weight: 650; }
.section-acf-description-1 .acf-description-1-box .right-col a { color: #a64c08; text-decoration: underline; text-underline-offset: .2em; text-decoration-thickness: 1px; }
.section-acf-description-1 .acf-description-1-box .right-col a:hover { color: #783b0e; }
.section-acf-description-1 .acf-description-1-box .right-col a:focus-visible { outline: 3px solid #9a4404; outline-offset: 5px; }
.section-acf-description-1 .acf-description-1-box .right-col :is(ul, ol) { margin: 0 0 1.2em; padding-left: 1.4em; }
.section-acf-description-1 .acf-description-1-box .right-col li { margin: .45em 0; padding-left: .15em; }
.section-acf-description-1 .acf-description-1-box .right-col li::marker { color: #bb5a0d; }
.section-acf-description-1 .acf-description-1-box .right-col :is(h2, h3, h4, h5, h6) {
  margin: 1.35em 0 .7em;
  font-family: var(--font-primary, termina, sans-serif) !important;
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: -.035em;
  text-wrap: pretty;
}
.section-acf-description-1 .acf-description-1-box .right-col h2 { font-size: clamp(28px, 3vw, 42px); }
.section-acf-description-1 .acf-description-1-box .right-col h3 { font-size: clamp(26px, 2.7vw, 38px); }
.section-acf-description-1 .acf-description-1-box .right-col h4 { font-size: 23px; }
.section-acf-description-1 .acf-description-1-box .right-col :is(h5, h6) { font-size: 20px; }
.section-acf-description-1 .acf-description-1-box .right-col blockquote { margin: 1.5em 0; padding: 20px 24px; border: 0; border-left: 3px solid #ef842b; border-radius: 0 14px 14px 0; background: #f8f6f2; font-weight: 500; }
.section-acf-description-1 .acf-description-1-box .right-col img { max-width: 100%; height: auto; border-radius: 14px; }
.section-acf-description-1 .acf-description-1-box .right-col > :first-child { margin-top: 0; }
.section-acf-description-1 .acf-description-1-box .right-col > :last-child,
.section-acf-description-1 .acf-description-1-box .right-col blockquote > :last-child { margin-bottom: 0; }

/* Align top-level numbered list text with paragraphs in the description column. */
@media (min-width: 769px) {
  .section-acf-description-1 .acf-description-1-box .right-col > ol {
    margin-inline-start: 0;
    padding-inline-start: 0;
    list-style-position: outside;
  }
  .section-acf-description-1 .acf-description-1-box .right-col > ol > li { padding-left: 0; }
}

@media (max-width: 768px) {
  .section-acf-description-1 .padding-glob { padding-left: 22px; padding-right: 22px; }
  .section-acf-description-1 .acf-description-1-box { gap: 22px; padding-left: 0; padding-right: 0; }
  .section-acf-description-1 .acf-description-1-box .left-col { min-width: 0; width: 100%; text-align: center; }
  .section-acf-description-1 .acf-description-1-box .left-col :is(h1, h2, h3, h4, h5, h6, p) { text-align: center; }
  .section-acf-description-1 .acf-description-1-box .right-col { width: 100%; font-size: 16px; line-height: 1.75; text-align: left; }
  .section-acf-description-1 .acf-description-1-box .right-col :is(h2, h3) { font-size: clamp(27px, 6.9vw, 34px); line-height: 1.25; letter-spacing: -.03em; margin-bottom: 22px; }
  .section-acf-description-1 .acf-description-1-box .right-col h4 { font-size: 22px; }
  .section-acf-description-1 .acf-description-1-box .right-col blockquote { padding: 18px 20px; }
}

@media (max-width: 767px) {
  .section-hero.section-hero-fit .hero-box .hero-content .hero-content-inside :is(h1, h2, h3) { font-size: clamp(28px, 8vw, 40px); line-height: 1.22; }
  .fcta, .fcta--button-only { padding: 34px 0; }
  .fcta__inner, .ffaq__inner { padding: 0 22px; }
  .fcta__inner { gap: 22px; }
  .fcta.fcta--colored { margin: 28px auto; }
  .fcta--colored .fcta__inner { padding: 32px 22px; border-radius: 20px; }
  .fcta .fcta__content { font-size: 20px; }
  .ffaq { padding: 42px 0; }
  .ffaq .ffaq__heading { font-size: clamp(27px, 6.9vw, 34px); margin-bottom: 28px; }
  .ffaq .ffaq__question { padding: 20px; gap: 16px; }
  .ffaq .ffaq__question h3 { font-size: 16px; }
  .ffaq .ffaq__answer { padding: 0 20px 22px; }
}
