:root{
  /*
    AngelFlow design tokens (from Figma)
    Keep these as the single source of truth and map into Bootstrap below.
  */

  /* Brand / gold */
  --af-gold-50:  #FAF9F5;
  --af-gold-100: #F5F2E9;
  --af-gold-200: #E8E2CC;
  --af-gold-300: #DBD0AF;
  --af-gold-400: #BFA97C;
  --af-gold-500: #A48552; /* Primary */
  --af-gold-600: #947243;

  /* Greys / ink */
  --af-grey-100: #F5F5F5;
  --af-grey-200: #E3E4E6;
  --af-grey-300: #D4D5D6;
  --af-grey-500: #929396; /* muted copy */
  --af-grey-600: #767A87;
  --af-grey-700: #525870;
  --af-grey-800: #343B59;
  --af-grey-900: #1E2545;
  --af-grey-950: #0C112B; /* darkest */

  /* Surfaces */
  --af-surface-0: #FFFFFF;
  --af-surface-1: var(--af-gold-50);
  --af-surface-2: var(--af-gold-100);

  /* Typography */
  --af-font-body: "Fertigo Pro", "Lora", serif;
  --af-font-display: "Fertigo Pro", "Lora", serif;

  /* Radii */
  --af-radius-sm: 5px;
  --af-radius-md: 20px;
  --af-radius-pill: 999px;
  --af-radius-hero: 100px;

  /* In-page anchor offset (sticky navbar) */
  --af-scroll-offset: 96px;

  /* Shadows (from Figma: Drop Shadow/200 and /600) */
  --af-shadow-200: 0 1px 4px 0 rgba(12, 12, 13, 0.05), 0 1px 4px 0 rgba(12, 12, 13, 0.10);
  --af-shadow-300: 0 4px 4px -1px rgba(12, 12, 13, 0.05), 0 4px 4px -1px rgba(12, 12, 13, 0.10);
  --af-shadow-600: 0 16px 32px -8px rgba(12, 12, 13, 0.40);

  /* Bootstrap mapping */
  --bs-font-sans-serif: var(--af-font-body);
  --bs-body-font-family: var(--af-font-body);
  --bs-body-bg: var(--af-surface-1);
  --bs-body-color: var(--af-grey-800);

  --bs-primary: var(--af-gold-500);
  --bs-primary-rgb: 164, 133, 82;
  --bs-secondary: var(--af-grey-700);
  --bs-secondary-rgb: 82, 88, 112;

  --bs-dark: var(--af-grey-950);
  --bs-dark-rgb: 12, 17, 43;

  --bs-border-color: var(--af-grey-200);
  --bs-link-color: var(--af-gold-500);
  --bs-link-hover-color: var(--af-gold-600);

  --bs-focus-ring-color: rgba(164, 133, 82, 0.25);
}

body{
  font-family: var(--af-font-body);
  background: var(--bs-body-bg);
  color: var(--bs-body-color);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Legal pages */
.af-legal-page{
  padding-top: 40px;
  padding-bottom: 40px;
}

@media (min-width: 992px){
  .af-legal-page{ padding-top: 64px; padding-bottom: 64px; }
}

.af-legal-page__card{
  background: var(--af-surface-0);
  border-radius: var(--af-radius-md);
  box-shadow: var(--af-shadow-200);
  padding: 24px;
}

@media (min-width: 992px){
  .af-legal-page__card{ padding: 44px 56px; }
}

.af-legal-page__meta{
  color: var(--af-grey-700);
  line-height: 1.6;
}

.af-legal-page h2{
  margin-top: 26px;
}

.af-legal-page h3{
  margin-top: 18px;
}

.af-analytics-preference{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 20px;
  padding: 20px;
  border: 1px solid var(--af-gold-200);
  border-radius: var(--af-radius-sm);
  background: var(--af-surface-1);
}

.af-analytics-preference__title{
  margin: 0 0 4px;
  font-size: 1.2rem;
}

.af-analytics-preference__description{
  color: var(--af-grey-700);
}

.af-analytics-toggle{
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
  padding: 6px 10px 6px 6px;
  border: 1px solid var(--af-gold-500);
  border-radius: var(--af-radius-pill);
  background: var(--af-surface-0);
  color: var(--af-grey-800);
  font: inherit;
  line-height: 1;
  cursor: pointer;
}

.af-analytics-toggle__track{
  display: inline-flex;
  width: 38px;
  height: 22px;
  align-items: center;
  padding: 2px;
  border-radius: var(--af-radius-pill);
  background: var(--af-grey-500);
  transition: background-color 160ms ease;
}

.af-analytics-toggle__thumb{
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--af-surface-0);
  box-shadow: var(--af-shadow-200);
  transition: transform 160ms ease;
}

.af-analytics-toggle[aria-pressed="true"] .af-analytics-toggle__track{
  background: var(--af-gold-500);
}

.af-analytics-toggle[aria-pressed="true"] .af-analytics-toggle__thumb{
  transform: translateX(16px);
}

.af-analytics-toggle:focus-visible{
  outline: 3px solid var(--bs-focus-ring-color);
  outline-offset: 2px;
}

@media (max-width: 575.98px){
  .af-analytics-preference{
    align-items: flex-start;
    flex-direction: column;
  }
}

main > section[id]{
  scroll-margin-top: var(--af-scroll-offset);
}

/* Headings in the design are set in the display font. */
h1, h2, h3, h4, h5, h6,
.display-1, .display-2, .display-3, .display-4, .display-5, .display-6{
  font-family: var(--af-font-display);
}

/* Buttons are pill + uppercase in the Figma design. */
.btn{
  border-radius: var(--af-radius-pill);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.btn-primary{
  --bs-btn-bg: var(--af-gold-500);
  --bs-btn-border-color: var(--af-gold-500);
  --bs-btn-hover-bg: var(--af-gold-600);
  --bs-btn-hover-border-color: var(--af-gold-600);
  --bs-btn-active-bg: var(--af-gold-600);
  --bs-btn-active-border-color: var(--af-gold-600);
}

.btn-outline-secondary{
  --bs-btn-color: var(--af-grey-800);
  --bs-btn-border-color: var(--af-grey-300);
  --bs-btn-hover-bg: var(--af-grey-100);
  --bs-btn-hover-border-color: var(--af-grey-300);
}

/* Inputs in the design have a small radius and light surface. */
.form-control, .form-select{
  border-radius: var(--af-radius-sm);
  background-color: var(--af-grey-100);
  border-color: var(--af-grey-300);
}

.form-control:focus, .form-select:focus{
  border-color: rgba(164, 133, 82, 0.55);
  box-shadow: 0 0 0 .25rem rgba(164, 133, 82, 0.20);
}

/* Optional: a slightly roomier hero on large screens */
@media (min-width: 992px){
  .py-lg-6{ padding-top: 5rem !important; padding-bottom: 5rem !important; }
}

/* Hero (Figma) */
.af-hero{
  position: relative;
  height: 585px;
  background: var(--af-gold-100);
  overflow: hidden;
}

.af-hero__bg{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

@media (max-width: 991.98px){
  .af-hero__bg{ object-position: 32% 50%; }
}

@media (min-width: 992px){
  .af-hero__bg{
    width: calc(100% + 360px);
    left: -180px;
  }
}

.af-hero__content{
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  padding-top: 90px;
}

.af-hero__kicker,
.af-hero__title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
}

.af-hero__kicker{
  font-size: 28px;
  line-height: 1.25;
  letter-spacing: 0.02em;
  margin-bottom: 6px;
}

.af-hero__title{
  font-size: 52px;
  line-height: 1.15;
  letter-spacing: 0.01em;
  margin: 0;
}

.af-hero__kicker span,
.af-hero__title span{
  display: block;
}

@media (min-width: 992px){
  .af-hero__content{ padding-top: 214px; }
  .af-hero__kicker span,
  .af-hero__title span{
    display: inline;
  }
  .af-hero__kicker span + span::before,
  .af-hero__title span + span::before{
    content: " ";
  }
}

.af-hero__swoosh{
  display: block;
  width: 235px;
  height: auto;
}

@media (max-width: 991.98px){
  .af-hero__swoosh{ width: 180px; }
}

.af-hero__cta{
  height: 58px;
  width: min(316px, 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-family: var(--af-font-display);
  font-size: 18px;
  padding-left: 22px;
  padding-right: 14px;
}

.af-hero__cta-icon{
  width: 45px;
  height: 45px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--af-gold-50);
  color: var(--af-gold-500);
}

.af-hero__scroll{
  position: absolute;
  left: 50%;
  bottom: 36px;
  transform: translateX(-50%);
  z-index: 1;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #fff;
  color: var(--af-gold-500);
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.af-hero__scroll:hover,
.af-hero__scroll:focus{
  color: var(--af-gold-600);
  text-decoration: none;
}

/* USP block (Figma) */
.af-usp{
  background: var(--af-surface-0);
  padding-top: 64px;
  padding-bottom: 64px;
}

.af-usp__header{
  text-align: center;
  max-width: 900px;
  margin: 0 auto;
}

.af-usp__title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 38px;
  line-height: 46px;
  letter-spacing: 0.01em;
  margin: 0;
}

.af-usp__title span{ display: block; }

.af-usp__subtitle{
  font-family: var(--af-font-display);
  color: var(--af-grey-500);
  font-size: 20px;
  line-height: 26px;
}

.af-usp__grid{
  margin-top: 56px;
  row-gap: 56px;
}

.af-usp__item{
  max-width: 320px;
  margin: 0 auto;
}

.af-usp__icon{
  width: 135px;
  height: 135px;
  border-radius: 50%;
  margin: 0 auto 22px;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, #F4C57A 0%, #A58652 100%);
  /* Figma filter approximation: dy=16, blur=16, erode=8, black @ 0.4 */
  box-shadow: 0 16px 16px -8px rgba(12, 12, 13, 0.40);
}

.af-usp__icon img{
  width: 90px;
  height: 90px;
  object-fit: contain;
  display: block;
}

.af-usp__item-title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 22px;
  line-height: 1.25;
  margin-bottom: 14px;
}

.af-usp__item-text{
  font-family: var(--af-font-display);
  color: var(--af-grey-800);
  font-size: 18px;
  line-height: 24px;
}

.af-usp__cta{
  margin-top: 56px;
}

.af-usp__cta-title{
  font-family: var(--af-font-display);
  color: var(--af-grey-950);
  font-size: 22px;
  line-height: 30px;
}

.af-usp__cta-subtitle{
  font-family: var(--af-font-display);
  color: var(--af-grey-500);
  font-size: 18px;
  line-height: 30px;
}

.af-usp__cta-btn{
  height: 48px;
  width: min(350px, 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding-left: 22px;
  padding-right: 56px;
  font-family: var(--af-font-display);
  font-size: 16px;
  position: relative;
}

.af-usp__cta-btn-icon{
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: var(--af-gold-500);
  flex: 0 0 auto;
  position: absolute;
  right: 8px;
}

.af-usp__cta-btn-icon svg{
  width: 22px;
  height: 22px;
  display: block;
}

@media (min-width: 992px){
  .af-usp{ padding-top: 72px; padding-bottom: 72px; }
  .af-usp__title span{ display: inline; }
  .af-usp__title span + span::before{ content: " "; }
}

@media (max-width: 991.98px){
  .af-usp{ padding-top: 56px; padding-bottom: 56px; }
  .af-usp__title{ font-size: 36px; line-height: 46px; }
  .af-usp__subtitle{ line-height: 28px; }
  .af-usp__item{ max-width: 388px; }
  .af-usp__item-text{ line-height: 28px; }
  .af-usp__cta{ margin-top: 44px; }
  .af-usp__cta-subtitle{ line-height: 28px; }
  .af-usp__cta-btn{ height: 56px; width: min(388px, 100%); font-size: 18px; }
  .af-usp__cta-btn-icon{ width: 43px; height: 43px; }
}

/* What to Expect block (Figma) */
.af-expect{
  background: #fff;
  padding: 74px 0 70px;
}

.af-expect__header{ margin-bottom: 42px; }

.af-expect__title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 38px;
  line-height: 1.15;
  margin: 0;
}

.af-expect__title span{ display: block; }

.af-expect__card{
  background: var(--af-gold-50);
  border-radius: 20px;
  box-shadow: var(--af-shadow-200);
  position: relative;
  overflow: hidden;
  display: flex;
}

.af-expect__card-inner{
  position: relative;
  padding: 26px 24px 28px;
  text-align: center;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.af-expect__card::before{
  content: "";
  position: absolute;
  inset: 12.5px;
  border: 2px solid var(--af-gold-300);
  border-radius: 20px;
  pointer-events: none;
}

.af-expect__body{ width: 100%; }

.af-expect__footer{
  width: 100%;
  margin-top: auto;
  padding-top: 8px;
  padding-bottom: 12px;
}

.af-expect__icon{
  width: 70px;
  height: 70px;
  margin: 10px auto 12px;
  display: grid;
  place-items: center;
}

.af-expect__icon img{ width: 70px; height: 70px; display: block; }

.af-expect__card-title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 20px;
  margin: 0 0 10px;
  height: 48px;
  line-height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.af-expect__meta{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  color: var(--af-grey-500);
  font-family: var(--af-font-display);
  font-size: 18px;
  margin-bottom: 8px;
  min-height: 24px;
}

.af-expect__meta--spacer{
  visibility: hidden;
  width: 1px;
}

.af-expect__meta-icon{ color: var(--af-grey-500); display: inline-flex; }

.af-expect__ornament{
  width: 89.372px;
  height: 16px;
  aspect-ratio: 89.372 / 16;
  max-width: 100%;
  margin: 6px auto 14px;
  opacity: 0.95;
  display: flex;
  align-items: center;
  justify-content: center;
}

.af-expect__ornament img{ width: 100%; height: 100%; object-fit: contain; display: block; }

.af-expect__text{
  font-family: var(--af-font-display);
  color: var(--af-grey-700);
  font-size: 16px;
  line-height: 22px;
  margin: 0 0 12px;
}

.af-expect__note{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 16px;
  line-height: 20px;
  margin: 0;
}

.af-expect__btn{
  height: 44px;
  padding: 0 22px;
  border-radius: 100px;
  background: var(--af-gold-500);
  color: #fff;
  font-family: var(--af-font-display);
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  margin-top: 6px;
}

.af-expect__btn:hover,
.af-expect__btn:focus{
  background: #927245;
  color: #fff;
}

.af-expect__list{
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
}

.af-expect__list li{
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-family: var(--af-font-display);
  color: var(--af-grey-700);
  font-size: 16px;
  line-height: 22px;
  margin-bottom: 14px;
}

.af-expect__list li:last-child{ margin-bottom: 0; }

.af-expect__check{
  color: var(--af-gold-500);
  width: 34px;
  height: 34px;
  display: inline-flex;
  flex: 0 0 auto;
  margin-top: 0;
}

.af-expect__carousel{ margin-top: 18px; }
.af-expect__carousel .carousel-inner{ padding: 0 8px; }

.af-expect__more{
  margin-top: 12px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: var(--af-font-display);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  font-size: 14px;
  color: var(--af-grey-600);
  text-decoration: underline;
  cursor: pointer;
}

.af-expect__more-icon{ color: var(--af-grey-600); display: inline-flex; }

.af-expect__mobile-details{
  width: 100%;
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: height 320ms ease, opacity 220ms ease, margin-bottom 320ms ease;
  margin-bottom: 0;
}

.af-expect__mobile-details:not([hidden]){ display: block; }

.af-expect__mobile-details.is-open{
  opacity: 1;
  margin-bottom: 12px;
}

.af-expect__indicators{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 18px;
}

.af-expect__dot{
  width: 8px;
  height: 8px;
  border-radius: 999px;
  border: 0;
  background: rgba(12, 17, 43, 0.18);
}

.af-expect__dot.active{
  width: 36px;
  background: rgba(12, 17, 43, 0.55);
}

.af-expect__before{
  margin: 38px auto 0;
  width: min(638px, 100%);
  background: var(--af-gold-100);
  border-radius: 100px;
  box-shadow: var(--af-shadow-200);
  padding: 20px 22px;
  display: grid;
  grid-template-columns: 70px 1fr 60px;
  gap: 16px;
  align-items: center;
  color: inherit;
  text-decoration: none;
}

.af-expect__before-icon{
  width: 70px;
  height: 70px;
  display: grid;
  place-items: center;
}

.af-expect__before-icon img{ width: 70px; height: 70px; display: block; }

.af-expect__before-body{ display: grid; gap: 6px; }

.af-expect__before-kicker{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 20px;
  line-height: 1;
}

.af-expect__before-title{
  font-family: var(--af-font-display);
  color: var(--af-grey-950);
  font-size: 18px;
  line-height: 1.25;
}

.af-expect__before-sub{
  font-family: var(--af-font-display);
  color: var(--af-grey-700);
  font-size: 16px;
  line-height: 22px;
}

.af-expect__before-arrow{
  width: 60px;
  height: 60px;
  display: grid;
  place-items: center;
  color: var(--af-gold-500);
}

@media (max-width: 991.98px){
  .af-expect{ padding: 54px 0 44px; }
  .af-expect__header{ margin-bottom: 22px; }
  .af-expect__title{ font-size: 32px; line-height: 42px; }
  .af-expect__card-inner{ padding: 24px 22px 22px; }
  .af-expect__meta{ font-size: 18px; }
  .af-expect__btn{ width: min(260px, 100%); font-size: 16px; height: 44px; }

  /* Mobile carousel cards use a column flex layout; center fixed-width CTAs */
  .af-expect__carousel .af-expect__btn{
    align-self: center;
    margin-left: auto;
    margin-right: auto;
  }

  .af-expect__carousel .af-expect__more{ align-self: center; }
  .af-expect__before{
    width: min(388px, 100%);
    border-radius: 100px;
    padding: 18px 18px;
    grid-template-columns: 70px 1fr 60px;
  }
}

/* Gift card (Figma) */
.af-gift{
  position: relative;
  background: #fff;
  overflow: hidden;
  height: 760px;
}

/* Top-center bookfold notch (overlay) */
.af-gift__notch{
  position: absolute;
  left: 50%;
  top: -1px;
  transform: translateX(-50%);
  width: 420px;
  height: 110px;
  z-index: 2;
  pointer-events: none;
  display: block;
}

.af-gift__bg{
  position: absolute;
  inset: 0;
  background: url("../img/gift/gift-bg-mobile.png") 60% 45% / cover no-repeat;
  transform: scale(1.03);
  z-index: 0;
}

.af-gift__bg::before{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(12, 17, 43, 0.30);
  mix-blend-mode: multiply;
}

.af-gift__bg::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(12, 17, 43, 0) 0%, rgba(12, 17, 43, 0) 62%, rgba(12, 17, 43, 0.80) 100%);
}

.af-gift__content{
  position: relative;
  z-index: 3;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding-top: 140px;
  padding-bottom: 70px;
  color: #fff;
}

.af-gift__title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  font-size: 32px;
  line-height: 42px;
  letter-spacing: 0.01em;
  margin: 0;
}

.af-gift__copy{
  max-width: 388px;
}

.af-gift__lead{
  font-family: var(--af-font-display);
  font-size: 24px;
  line-height: 30px;
  margin: 0;
}

.af-gift__text{
  font-family: var(--af-font-display);
  font-size: 20px;
  line-height: 30px;
  margin: 0;
}

.af-gift__cta{
  position: relative;
  margin-top: auto;
  width: min(360px, 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.af-gift__card{
  position: absolute;
  left: 0px;
  top: -40px;
  transform: translateY(-50%);
  width: 161px;
  height: 129px;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.af-gift__card img{
  width: 140px;
  height: auto;
  transform: rotate(-18.29deg);
  filter: drop-shadow(0 16px 32px rgba(12, 12, 13, 0.40));
}

.af-gift__btn{
  height: 56px;
  width: min(300px, 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding-left: 28px;
  padding-right: 18px;
  font-family: var(--af-font-display);
  font-size: 18px;
}

.af-gift__btn-icon{
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.af-gift__btn-icon img{
  width: 100%;
  height: 100%;
  display: block;
}

@media (min-width: 992px){
  .af-gift{ height: 528px; }

  .af-gift__notch{ width: 560px; height: 130px; }

  .af-gift__bg{
    background-image: url("../img/gift/gift-bg-desktop.png");
    background-position: 50% 50%;
  }

  .af-gift__bg::before{ background: rgba(12, 17, 43, 0.18); }
  .af-gift__bg::after{
    background: linear-gradient(to bottom, rgba(12, 17, 43, 0) 0%, rgba(12, 17, 43, 0) 76%, rgba(12, 17, 43, 0.55) 100%);
  }

  .af-gift__title{ font-size: 38px; line-height: 1.15; }
  .af-gift__copy{ max-width: 860px; }

  .af-gift__cta{ margin-top: 46px; width: 420px; }
  .af-gift__card{ 
    left: -50px;
    top: 80%;
  }

  .af-gift__btn{ width: 282px; font-size: 16px; }
  .af-gift__btn-icon{ width: 28px; height: 28px; }
}

/* FAQ (Figma) */
.af-faq{
  background: var(--af-surface-0);
  padding: 64px 0 44px;
}

.af-faq__header{
  max-width: 980px;
  margin: 0 auto;
}

.af-faq__title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 32px;
  line-height: 42px;
  margin: 0;
}

.af-faq__title > span{ display: block; }

.af-faq__subtitle{
  font-family: var(--af-font-display);
  color: var(--af-grey-500);
  font-size: 20px;
  line-height: 30px;
  margin: 0;
}

.af-faq__subtitle > span{ display: block; }

.af-faq__top{
  width: 135px;
  height: 135px;
  border-radius: 50%;
  margin: 44px auto 36px;
  background: linear-gradient(180deg, #F4C57A 0%, #A58652 100%);
  box-shadow: 0 16px 32px rgba(12, 12, 13, 0.40);
  display: grid;
  place-items: center;
  position: relative;
  overflow: hidden;
}

.af-faq__top-five{
  position: absolute;
  left: 50%;
  top: 50%;
  height: 80px;
  width: auto;
  transform: translate(-50%, -50%);
  z-index: 0;
  pointer-events: none;
}

.af-faq__top-label{
  position: relative;
  z-index: 1;
  font-family: var(--af-font-display);
  text-transform: uppercase;
  font-size: 20px;
  line-height: 30px;
  color: #fff;
  letter-spacing: 0.01em;
}

.af-faq__list{
  display: flex;
  flex-direction: column;
  gap: 28px;
  align-items: center;
}

.af-faq__item{
  width: min(748px, 100%);
}

.af-faq__item--left .af-faq__bubble{ border-top-left-radius: 0; }
.af-faq__item--right .af-faq__bubble{ border-bottom-right-radius: 0; }

.af-faq__bubble{
  position: relative;
  background: var(--af-gold-200);
  border-radius: var(--af-radius-md);
  padding: 18px 22px 18px 30px;
}

.af-faq__bubble::before{
  content: "";
  position: absolute;
  width: 22px;
  height: 46px;
  background: var(--af-gold-200);
  pointer-events: none;
  z-index: 0;
}

.af-faq__item--left .af-faq__bubble::before{
  left: 0;
  top: -20px;
  -webkit-clip-path: polygon(0 0, 100% 44%, 0 100%);
  clip-path: polygon(0 0, 100% 44%, 0 100%);
}

.af-faq__item--right .af-faq__bubble::before{
  right: 0;
  bottom: -20px;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 56%);
  clip-path: polygon(100% 0, 100% 100%, 0 56%);
}

.af-faq__head,
.af-faq__a{ position: relative; z-index: 1; }

.af-faq__head{
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.af-faq__num{
  width: 31.533px;
  height: 31.533px;
  border-radius: 50%;
  background: var(--af-gold-500);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  font-family: var(--af-font-display);
  font-size: 20px;
  line-height: 1;
  transform: translateY(2px);
}

.af-faq__q{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 20px;
  line-height: 30px;
  color: var(--af-gold-500);
}

.af-faq__a{
  margin: 8px 0 0;
  font-family: var(--af-font-display);
  font-size: 18px;
  line-height: 24px;
  color: var(--af-grey-800);
  max-width: 640px;
}

.af-faq__footer{
  margin-top: 44px;
}

.af-faq__more{
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: var(--af-font-display);
  font-size: 18px;
  line-height: 24px;
  color: var(--af-gold-500);
  text-decoration: none;
}

.af-faq__more-text{ text-decoration: underline; }

.af-faq__more-icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--af-gold-500);
}

.af-faq__more-icon svg{
  width: 40px;
  height: 40px;
  display: block;
}

@media (min-width: 992px){
  .af-faq__title{ font-size: 38px; line-height: 1.15; }

  .af-faq__item{
    --x: 0px;
    transform: translateX(clamp(-160px, var(--x), 160px));
  }

  .af-faq__item:nth-child(1){ --x: -110px; }
  .af-faq__item:nth-child(2){ --x: 100px; }
  .af-faq__item:nth-child(3){ --x: -140px; }
  .af-faq__item:nth-child(4){ --x: 80px; }
  .af-faq__item:nth-child(5){ --x: -110px; }
}

@media (max-width: 991.98px){
  .af-faq{ padding: 56px 0 44px; }

  .af-faq__top{ margin: 40px auto 28px; }

  .af-faq__list{
    align-items: stretch;
    gap: 22px;
  }

  .af-faq__item{ width: 100%; }

  .af-faq__bubble{ border-radius: 20px; }

  .af-faq__more{
    flex-direction: column;
    gap: 14px;
  }

  .af-faq__more-icon svg{ width: 80px; height: 80px; }
}

/* Get in touch (Figma) */
.af-contact{
  position: relative;
  height: 560px;
  overflow: hidden;
  background: #898989;
}

.af-contact__bg{
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1800px;
  height: 585px;
  --af-contact-bg-x: 0px;
  --af-contact-bg-y: 0px;
  transform: translate(-50%, -50%) translate(var(--af-contact-bg-x), var(--af-contact-bg-y));
  object-fit: cover;
}

.af-contact::after{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(12,17,43,0.40);
  mix-blend-mode: multiply;
  pointer-events: none;
}

.af-contact__content{
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding-top: 86px;
}

.af-contact__icon{
  width: 135px;
  height: 135px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, #F4C57A 0%, #A58652 100%);
  box-shadow: var(--af-shadow-600);
}

.af-contact__icon img{
  width: 92px;
  height: 82px;
  display: block;
  transform: translateY(10px);
}

.af-contact__title{
  margin-top: 40px;
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: #fff;
  font-size: 24px;
  line-height: 36px;
  max-width: 760px;
}

.af-contact__text{
  margin-top: 12px;
  font-family: var(--af-font-display);
  color: #ededed;
  font-size: 20px;
  line-height: 28px;
  max-width: 760px;
}

.af-contact__cta{
  margin-top: 42px;
  height: 56px;
  width: min(336px, 100%);
  border-radius: 100px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  font-family: var(--af-font-display);
  font-size: 18px;
  text-transform: uppercase;
  position: relative;
}

.af-contact__cta-icon{
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 19px;
  top: 50%;
  transform: translateY(-50%);
}

.af-contact__cta-icon img{
  width: 24px;
  height: 24px;
  display: block;
}

@media (min-width: 992px){
  .af-contact__cta{
    height: 48px;
    width: 250px;
    font-size: 16px;
  }
}

@media (max-width: 991.98px){
  /* Move image left to reveal more of the right side */
  .af-contact__bg{ --af-contact-bg-x: -340px; }

  .af-contact__content{ padding-top: 51px; }
}

/* Feedback / Testimonials (Figma) */
.af-feedback{
  background: var(--af-gold-50);
  padding: 54px 0 56px;
}

.af-feedback__title{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 32px;
  line-height: 42px;
  text-transform: uppercase;
  color: var(--af-gold-500);
}

.af-feedback__grid{
  --af-feedback-edge-fade: 40px;
  --af-feedback-edge-padding: 40px;
  margin-top: 44px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 86px;
  max-width: 1100px;
  margin-inline: auto;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  scroll-padding-inline: var(--af-feedback-edge-padding);
  -webkit-mask-image: linear-gradient(
    to right,
    transparent 0,
    #000 var(--af-feedback-edge-fade),
    #000 calc(100% - var(--af-feedback-edge-fade)),
    transparent 100%
  );
  mask-image: linear-gradient(
    to right,
    transparent 0,
    #000 var(--af-feedback-edge-fade),
    #000 calc(100% - var(--af-feedback-edge-fade)),
    transparent 100%
  );
}

.af-feedback__grid::-webkit-scrollbar{ display: none; }

.af-feedback__card{
  position: relative;
  flex: 0 0 278px;
  width: 278px;
  height: 380px;
  border-radius: var(--af-radius-md);
  background: var(--af-gold-500);
  border: 2px solid var(--af-gold-400);
  box-shadow: var(--af-shadow-200);
  padding: 96px 22px 28px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  scroll-snap-align: start;
}

.af-feedback__card--expanded{
  height: auto;
  min-height: 380px;
}

.af-feedback__card::before{
  content: "";
  position: absolute;
  inset: 12px;
  border-radius: calc(var(--af-radius-md) - 8px);
  border: 2px solid rgba(219, 208, 175, 0.30);
  pointer-events: none;
}

.af-feedback__card--featured{
  box-shadow: var(--af-shadow-600);
  transform: translateY(-12px);
  z-index: 1;
}

.af-feedback__quote{
  position: absolute;
  top: 34px;
  left: 50%;
  transform: translateX(-50%);
  width: 72px;
  height: 50px;
  display: block;
}

.af-feedback__body{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 18px;
  line-height: 28px;
  color: var(--af-gold-50);
  text-align: center;
}

.af-feedback__body > span{ display: block; }

.af-feedback__details{
  width: 100%;
  transition: height 320ms ease;
}

.af-feedback__more{
  margin-top: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: var(--af-font-display);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  font-size: 14px;
  color: var(--af-gold-50);
  text-decoration: underline;
  cursor: pointer;
}

.af-feedback__footer{
  width: 100%;
  margin-top: auto;
  padding-top: 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.af-feedback__name{
  text-align: center;
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 20px;
  text-transform: uppercase;
  color: var(--af-gold-300);
}

.af-feedback__swoosh{
  width: 89px;
  height: 16px;
  display: block;
}

.af-feedback__dots{
  margin-top: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.af-feedback__dot{
  border: 0;
  padding: 0;
  appearance: none;
  cursor: pointer;
}

.af-feedback__dot--active{
  width: 36px;
  background: rgba(12, 17, 43, 0.55);
  border-radius: 999px;
}

@media (min-width: 992px){
  .af-feedback__title{
    font-size: 38px;
    line-height: 1.15;
  }

  .af-feedback__grid{
    padding: 18px var(--af-feedback-edge-padding) 20px;
  }
}

@media (max-width: 991.98px){
  .af-feedback{ padding: 56px 0 64px; }

  .af-feedback__grid{
    --af-feedback-edge-fade: 18px;
    --af-feedback-edge-padding: 18px;
    justify-content: flex-start;
    gap: 18px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 0 max(16px, calc(50vw - 139px));
    scrollbar-width: none;
  }

  .af-feedback__grid::-webkit-scrollbar{ display: none; }

  .af-feedback__card{
    flex: 0 0 auto;
    scroll-snap-align: center;
  }

  .af-feedback__card--featured{ transform: none; }
}

/* Contact (Form) (Figma) */
.af-contact-form{
  background: var(--af-gold-50);
}

.af-contact-form__wrap{
  display: grid;
  grid-template-columns: 1fr;
}

.af-contact-form__media{
  position: relative;
  background: var(--af-gold-50);
}

.af-contact-form__media-mask{
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.af-contact-form__photo{
  position: absolute;
  inset: 0;
  display: block;
  z-index: 0;
}

.af-contact-form__photo img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 50% 35%;
}

.af-contact-form__media-mask::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 148px;
  background: linear-gradient(180deg, rgba(12,17,43,0) 0%, rgba(12,17,43,0.80) 100%);
  pointer-events: none;
  z-index: 1;
}

.af-contact-form__watermark{
  position: absolute;
  left: -8px;
  right: -8px;
  bottom: -12px;
  width: calc(100% + 16px);
  height: auto;
  aspect-ratio: 724.875 / 160.146;
  opacity: 0.5;
  pointer-events: none;
  z-index: 2;
}

.af-contact-form__panel{
  background: var(--af-surface-0);
}

.af-contact-form__panel-inner{
  padding: 56px 42px 44px;
  max-width: 608px;
  margin: 0 auto;
}

.af-contact-form__title{
  margin: 0;
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 32px;
  line-height: 1.1;
}

.af-contact-form__intro{
  margin: 18px 0 0;
  font-family: var(--af-font-display);
  font-size: 20px;
  line-height: 28px;
  color: var(--af-grey-800);
}

.af-contact-form__fields{
  margin-top: 26px;
  display: grid;
  gap: 20px;
}

.af-contact-form__form{
  display: flex;
  flex-direction: column;
}

.af-contact-form__field .form-control{
  height: 50px;
  padding: 7px 18px;
  font-family: var(--af-font-display);
  font-size: 18px;
  line-height: 36px;
  color: var(--af-grey-800);
}

.af-contact-form__field textarea.form-control{
  height: 150px;
  padding-top: 10px;
  line-height: 28px;
  resize: none;
}

.af-contact-form__field .form-control::placeholder{
  color: var(--af-grey-500);
  opacity: 1;
}

.af-contact-form__meta{
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: flex-start;
}

.af-contact-form__captcha{
  flex: 0 0 auto;
}

.af-contact-form__captcha .cf-turnstile{
  display: block;
}

.af-contact-form__agree{
  display: flex;
  gap: 14px;
  align-items: flex-start;
  font-family: var(--af-font-body);
  font-size: 16px;
  line-height: 20px;
  color: var(--af-gold-500);
  max-width: 340px;
}

.af-contact-form__agree-input{
  -webkit-appearance: none;
  appearance: none;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  /* Unchecked state: gold border + light fill (matches card backgrounds) */
  background: var(--af-gold-50);
  border: 0;
  box-shadow: 0 0 0 2px var(--af-gold-500) inset;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  cursor: pointer;
}

.af-contact-form__agree-input:checked{
  /* Checked state: keep the existing solid-gold appearance */
  background: var(--af-gold-500);
  box-shadow: 0 0 0 1px rgba(164,133,82,0.35) inset;
}

.af-contact-form__agree-input::after{
  content: "";
  width: 10px;
  height: 6px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg) translate(1px, -1px);
  opacity: 0;
}

.af-contact-form__agree-input:checked::after{ opacity: 1; }

.af-contact-form__agree-input:focus-visible{
  outline: 3px solid rgba(164,133,82,0.25);
  outline-offset: 2px;
}

.af-contact-form__agree-text a{
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.af-contact-form__submit{
  margin-top: 26px;
  height: 56px;
  width: min(336px, 100%);
  border-radius: 100px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-left: 22px;
  /* Reserve space for the pinned icon so it can hug the pill contour */
  padding-right: 64px;
  font-family: var(--af-font-display);
  font-size: 18px;
  align-self: flex-start;
  position: relative;
}

.af-contact-form__submit-icon{
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(250,249,245,0.95);
  color: var(--af-gold-500);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}

@media (min-width: 992px){
  .af-contact-form__wrap{
    grid-template-columns: 1fr 1fr;
    min-height: 750px;
  }

  .af-contact-form__media{ min-height: 750px; background: transparent; }

  .af-contact-form__media-mask{ border-top-right-radius: 100px; }

  .af-contact-form__media-mask::after{ height: 211px; }

  .af-contact-form__panel{
    display: flex;
    align-items: stretch;
    justify-content: center;
    border-top-left-radius: 100px;
  }

  .af-contact-form__panel-inner{
    margin: 0;
    padding: 66px 72px 56px 42px;
    max-width: 720px;
  }

  .af-contact-form__title{ font-size: 38px; }

  .af-contact-form__meta{
    margin-top: 26px;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 22px;
  }

  .af-contact-form__captcha{
    align-self: flex-start;
  }

  .af-contact-form__submit{
    height: 48px;
    width: 250px;
    font-size: 16px;
    margin-top: 30px;
    align-self: flex-end;
  }
}

@media (min-width: 1400px){
  .af-contact-form__panel-inner{
    padding: 56px 64px 48px 42px;
  }
}

@media (max-width: 991.98px){
  .af-contact-form__media{ height: 400px; }

  .af-contact-form__media-mask{ border-top-right-radius: 100px; }
}

/* About block (Figma) */
.af-about{
  background: var(--af-surface-0);
}

.af-about__grid{
  display: grid;
  grid-template-columns: 1fr;
}

.af-about__media{
  position: relative;
  height: auto;
  aspect-ratio: 420 / 620;
  overflow: hidden;
  background: #111827;
  border-top-right-radius: 100px;
  /* box-shadow: var(--af-shadow-600); */
  filter: none;
}

.af-about__photo{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 82%;
  z-index: 0;
}

.af-about__media::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(12,17,43,0) 55%, rgba(12,17,43,0.80) 100%);
  border-top-right-radius: inherit;
  z-index: 1;
}

.af-about__badge{
  position: absolute;
  top: 68px;
  left: 0;
  z-index: 2;
  height: 35px;
  padding: 0 14px 0 28px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: var(--af-gold-500);
  color: #fff;
  font-family: var(--af-font-display);
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.af-about__badge-icon{
  width: 20px;
  height: 20px;
  display: block;
}

.af-about__quote{
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 48px;
  z-index: 2;
}

.af-about__quote-mark{
  width: 72px;
  height: auto;
  display: block;
  margin-bottom: 14px;
}

.af-about__quote-text{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  font-size: 22px;
  line-height: 32px;
  color: #fff;
  max-width: 540px;
}

.af-about__quote-text > span{
  background: var(--af-gold-500);
  padding: 6px 18px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.af-about__seal{
  position: absolute;
  right: 0;
  top: -20px;
  width: 110px;
  height: 110px;
  z-index: 2;
}

.af-about__panel{
  background: var(--af-gold-100);
}

.af-about__panel-inner{
  max-width: 720px;
  margin: 0 auto;
  padding: 56px 24px;
}

.af-about__title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 32px;
  line-height: 42px;
  margin: 0;
}

.af-about__lead{
  font-family: var(--af-font-display);
  color: var(--af-grey-800);
  font-size: 20px;
  line-height: 28px;
}

.af-about__body{
  margin-top: 8px;
}

.af-about__body p{
  position: relative;
  padding-left: 22px;
  margin: 0;
  font-family: var(--af-font-display);
  color: var(--af-grey-600);
  font-size: 18px;
  line-height: 28px;
}

.af-about__body p + p{ margin-top: 22px; }

.af-about__body p::before{
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 4px;
  background: var(--af-gold-500);
  border-radius: 2px;
}

.af-about__cta{
  margin-top: 34px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
}

.af-about__cta-title{
  font-family: var(--af-font-display);
  color: var(--af-grey-950);
  font-size: 20px;
  line-height: 36px;
}

.af-about__cta-btn{
  height: 56px;
  width: min(336px, 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding-left: 22px;
  /* Reserve space for the pinned icon so it can hug the pill contour */
  padding-right: 64px;
  font-family: var(--af-font-display);
  font-size: 18px;
  position: relative;
}

.af-about__cta-btn-icon{
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: var(--af-gold-500);
  flex: 0 0 auto;
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}

.af-about__cta-btn-icon svg{
  width: 22px;
  height: 22px;
  display: block;
}

@media (min-width: 992px){
  .af-about__grid{
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }

  .af-about__media{
    aspect-ratio: auto;
    min-height: 620px;
    height: 100%;
  }

  .af-about__panel{
    border-top-left-radius: var(--af-radius-hero);
  }

  .af-about__panel-inner{
    padding: 64px 50px;
    max-width: 720px;
  }

  .af-about__title{ font-size: 38px; line-height: 1.15; }

  .af-about__quote{
    left: 70px;
    right: auto;
    bottom: 48px;
    width: max-content;
    max-width: calc(100% - 240px);
  }

  .af-about__badge{
    left: -22px;
    padding-left: 92px;
    padding-right: 16px;
  }

  .af-about__seal{
    left: calc(100% - 90px);
    right: auto;
    top: -20px;
    width: 130px;
    height: 130px;
  }

  .af-about__cta{
    margin-top: 28px;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

@media (min-width: 1450px){
  .af-about__media{
    aspect-ratio: 720 / 620;
    min-height: unset;
    height: auto;
  }
}

/* About page */
.af-about-page{
  background: #fff;
}

.af-about-hero{
  position: relative;
  height: 585px;
  background: var(--af-grey-700);
  overflow: hidden;
}

.af-about-hero__picture{
  position: absolute;
  inset: 0;
  display: block;
}

.af-about-hero__bg{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

.af-about-hero__overlay{
  position: absolute;
  inset: 0;
  background: rgba(12, 17, 43, 0.45);
  mix-blend-mode: multiply;
}

.af-about-hero__content{
  position: relative;
  z-index: 1;
  height: 585px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  color: #fff;
  padding-top: 130px;
  padding-bottom: 48px;
}

.af-about-hero__title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  font-size: 38px;
  line-height: 50px;
  color: var(--af-gold-100);
  margin: 0;
  max-width: 720px;
}

.af-about-hero__title span,
.af-about-hero__lead span{
  display: block;
}

.af-about-hero__lead{
  font-family: var(--af-font-display);
  font-size: 24px;
  line-height: 38px;
  color: #fff;
  margin: 0;
  max-width: 640px;
}

.af-about-hero__cta{
  min-height: 48px;
  width: min(300px, 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding-left: 24px;
  padding-right: 56px;
  font-family: var(--af-font-display);
  font-size: 16px;
  position: relative;
}

.af-about-hero__cta-icon{
  position: absolute;
  top: 50%;
  right: 7px;
  transform: translateY(-50%);
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  color: var(--af-gold-500);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

@media (min-width: 992px){
  .af-about-hero__content{
    max-width: 820px;
  }
}

@media (max-width: 991.98px){
  .af-about-hero{
    height: 585px;
  }

  .af-about-hero__bg{
    object-position: 69% 50%;
    transform: scale(1.03);
  }

  .af-about-hero__content{
    height: 585px;
    padding-top: 98px;
    padding-bottom: 24px;
  }

  .af-about-hero__title{
    font-size: 34px;
    line-height: 42px;
    max-width: 320px;
  }

  .af-about-hero__lead{
    font-size: 20px;
    line-height: 32px;
    max-width: 360px;
  }

  .af-about-hero__cta{
    min-height: 58px;
    width: min(316px, 100%);
    font-size: 18px;
    padding-right: 62px;
    margin-top: 6px;
  }

  .af-about-hero__cta-icon{
    width: 44px;
    height: 44px;
    right: 7px;
  }
}

.af-about-usp{
  background: #fff;
  padding: 63px 0 44px;
}

.af-about-usp__header{
  max-width: 1120px;
  margin: 0 auto;
}

.af-about-usp__title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 38px;
  line-height: 1.21;
  margin: 0;
}

.af-about-usp__title span,
.af-about-usp__subtitle,
.af-about-usp__item-text{
  display: block;
}

.af-about-usp__subtitle{
  max-width: 638px;
  margin: 18px auto 0;
  font-family: var(--af-font-display);
  color: var(--af-grey-500);
  font-size: 20px;
  line-height: 26px;
}

.af-about-usp__grid{
  margin-top: 51px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px;
}

.af-about-usp__item{
  text-align: center;
}

.af-about-usp__icon-shell{
  width: 135px;
  height: 135px;
  margin: 0 auto 28px;
  border-radius: 50%;
  background: linear-gradient(180deg, #f1c068 0%, #b48a45 100%);
  box-shadow: var(--af-shadow-600);
  display: grid;
  place-items: center;
}

.af-about-usp__icon{
  display: block;
  object-fit: contain;
}

.af-about-usp__icon--holistic{
  width: 90px;
  height: 86px;
}

.af-about-usp__icon--balance{
  width: 71px;
  height: 80px;
}

.af-about-usp__icon--story{
  width: 84px;
  height: 82px;
}

.af-about-usp__item-title{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: var(--af-gold-500);
  font-size: 22px;
  line-height: 1.2;
  margin: 0 0 15px;
}

.af-about-usp__item-text{
  max-width: 307px;
  margin-left: auto;
  margin-right: auto;
  font-family: var(--af-font-display);
  color: var(--af-grey-800);
  font-size: 18px;
  line-height: 24px;
}

@media (min-width: 992px){
  .af-about-usp__title{
    white-space: nowrap;
  }
}

@media (max-width: 991.98px){
  .af-about-usp{
    padding-top: 41px;
    padding-bottom: 50px;
  }

  .af-about-usp__header{
    max-width: 388px;
  }

  .af-about-usp__title{
    font-size: 36px;
    line-height: 46px;
  }

  .af-about-usp__subtitle{
    max-width: 388px;
    margin-top: 26px;
    line-height: 28px;
  }

  .af-about-usp__grid{
    grid-template-columns: 1fr;
    gap: 54px;
    margin-top: 41px;
  }

  .af-about-usp__icon-shell{
    margin-bottom: 22px;
  }

  .af-about-usp__item-text{
    max-width: 388px;
  }
}

.af-about-journey{
  background: #fff;
}

.af-about-journey__grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 700px;
}

.af-about-journey__media,
.af-about-journey__panel{
  position: relative;
  min-width: 0;
}

.af-about-journey__media{
  background: #111827;
  border-top-right-radius: 100px;
  overflow: hidden;
}

.af-about-journey__photo-wrap,
.af-about-journey__photo{
  display: block;
  width: 100%;
  height: 100%;
}

.af-about-journey__photo{
  object-fit: cover;
  object-position: center;
}

.af-about-journey__photo-wrap{
  position: absolute;
  inset: 0;
}

.af-about-journey__media-overlay{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 211px;
  background: linear-gradient(180deg, rgba(12, 17, 43, 0) 0%, rgba(12, 17, 43, 0.8) 100%);
  border-top-right-radius: inherit;
}

.af-about-journey__quote{
  position: absolute;
  left: 70px;
  right: 92px;
  bottom: 36px;
}

.af-about-journey__quote-mark{
  display: block;
  width: 72px;
  height: 50px;
  margin: 0 0 10px;
}

.af-about-journey__quote-text{
  display: inline;
  font-family: var(--af-font-display);
  text-transform: uppercase;
  color: #fff;
  font-size: 24px;
  line-height: 1.5;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  background: var(--af-gold-500);
  padding: 8px 24px 10px 16px;
}

.af-about-journey__panel{
  background: var(--af-gold-100);
  border-top-left-radius: 100px;
}

.af-about-journey__panel-inner{
  box-sizing: border-box;
  width: min(100%, 720px);
  margin: 0 auto;
  padding: 66px 40px 54px;
}

.af-about-journey__title,
.af-about-journey__subhead{
  font-family: var(--af-font-display);
  text-transform: uppercase;
  margin: 0;
}

.af-about-journey__title{
  color: var(--af-gold-500);
  font-size: 38px;
  line-height: 1.15;
}

.af-about-journey__title span,
.af-about-journey__subhead span{
  display: block;
}

.af-about-journey__lead{
  margin-top: 26px;
  max-width: 608px;
  font-family: var(--af-font-display);
  color: var(--af-grey-800);
  font-size: 22px;
  line-height: 32px;
}

.af-about-journey__subhead{
  margin-top: 22px;
  color: var(--af-gold-500);
  font-size: 22px;
  line-height: 1.25;
}

.af-about-journey__body{
  margin-top: 24px;
}

.af-about-journey__body-block{
  position: relative;
  padding-left: 22px;
  max-width: 583px;
}

.af-about-journey__body-block + .af-about-journey__body-block{
  margin-top: 26px;
}

.af-about-journey__body-block::before{
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 4px;
  background: var(--af-gold-500);
}

.af-about-journey__body-block p{
  font-family: var(--af-font-display);
  color: var(--af-grey-600);
  font-size: 18px;
  line-height: 26px;
}

.af-about-journey__seal{
  display: block;
  width: 130px;
  height: 130px;
  margin: 24px auto 0;
}

.af-about-journey__seal img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media (max-width: 991.98px){
  .af-about-journey__grid{
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .af-about-journey__media{
    height: 700px;
  }

  .af-about-journey__photo{
    object-position: 42% 50%;
  }

  .af-about-journey__media-overlay{
    height: 300px;
  }

  .af-about-journey__quote{
    left: 16px;
    right: 20px;
    bottom: 38px;
  }

  .af-about-journey__quote-mark{
    width: 72px;
    height: 50px;
    margin-bottom: 8px;
  }

  .af-about-journey__quote-text{
    font-size: 22px;
    line-height: 32px;
    padding: 10px 18px 12px 16px;
  }

  .af-about-journey__panel{
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }

  .af-about-journey__panel-inner{
    padding: 46px 38px 42px;
    max-width: none;
  }

  .af-about-journey__title{
    font-size: 32px;
    line-height: 42px;
  }

  .af-about-journey__lead{
    margin-top: 28px;
    max-width: 346px;
    font-size: 20px;
    line-height: 28px;
  }

  .af-about-journey__subhead{
    margin-top: 24px;
    font-size: 22px;
    line-height: 1.15;
  }

  .af-about-journey__body{
    margin-top: 28px;
  }

  .af-about-journey__body-block{
    max-width: 323px;
    padding-left: 21px;
  }

  .af-about-journey__body-block + .af-about-journey__body-block{
    margin-top: 30px;
  }

  .af-about-journey__body-block p{
    font-size: 18px;
    line-height: 28px;
  }

  .af-about-journey__seal{
    margin: 36px auto 0;
  }
}

.af-about-certs{
  background: #fff;
  padding: 74px 0 80px;
}

.af-about-certs__header{
  max-width: 980px;
  margin: 0 auto;
}

.af-about-certs__title{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 38px;
  line-height: 1.15;
  text-transform: uppercase;
  color: var(--af-gold-500);
}

.af-about-certs__title span{
  display: block;
}

.af-about-certs__grid{
  margin-top: 108px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.af-about-certs__card{
  appearance: none;
  border: 0;
  padding: 12px;
  margin: 0;
  width: 100%;
  min-width: 0;
  min-height: 520px;
  border-radius: 20px;
  background: var(--af-gold-50);
  box-shadow: var(--af-shadow-200);
  text-align: center;
  color: inherit;
  cursor: zoom-in;
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.af-about-certs__card:hover,
.af-about-certs__card:focus-visible{
  transform: translateY(-3px);
  box-shadow: var(--af-shadow-600);
}

.af-about-certs__card:focus-visible{
  outline: 2px solid var(--af-gold-500);
  outline-offset: 3px;
}

.af-about-certs__card-frame{
  min-height: 495px;
  border: 2px solid var(--af-gold-300);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 42px 24px 26px;
}

.af-about-certs__name,
.af-about-certs__subtitle,
.af-about-certs__meta{
  font-family: var(--af-font-display);
  display: block;
}

.af-about-certs__name{
  color: var(--af-gold-500);
  font-size: 24px;
  line-height: 32px;
  text-transform: uppercase;
}

.af-about-certs__subtitle{
  color: var(--af-gold-500);
  font-size: 20px;
  line-height: 32px;
}

.af-about-certs__ornament{
  width: 88px;
  height: 16px;
  aspect-ratio: 235.535 / 42.167;
  object-fit: contain;
  display: block;
  margin-top: 4px;
}

.af-about-certs__meta{
  margin-top: 10px;
  color: var(--af-grey-700);
  font-size: 16px;
  line-height: 22px;
}

.af-about-certs__meta span{
  display: block;
}

.af-about-certs__preview{
  display: block;
  width: min(282px, 100%);
  aspect-ratio: 282.789 / 200;
  margin-top: auto;
  background-color: #fff;
  box-shadow: 0 6px 14px rgba(12, 17, 43, 0.08);
  user-select: none;
  -webkit-user-drag: none;
  overflow: hidden;
}

.af-about-certs__preview--portrait{
  width: 157px;
  aspect-ratio: 156.863 / 220;
  box-shadow: 0 4px 12px rgba(12, 17, 43, 0.08);
}

.af-about-certs__preview img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  user-select: none;
  -webkit-user-drag: none;
  pointer-events: none;
}

.af-about-certs__preview--portrait img{
  object-fit: contain;
}

.af-about-certs__carousel{
  margin-top: 52px;
}

.af-about-certs__carousel .carousel-inner{
  padding: 0 14px;
}

.af-about-certs__carousel .af-about-certs__card{
  width: min(360px, 100%);
  margin: 0 auto;
}

.af-about-certs__indicators{
  margin-top: 34px;
}

.af-cert-lightbox{
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: center;
  padding: 24px;
}

.af-cert-lightbox[hidden]{
  display: none;
}

.af-cert-lightbox__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(12, 17, 43, 0.82);
  backdrop-filter: blur(4px);
}

.af-cert-lightbox__dialog{
  position: relative;
  z-index: 1;
  width: min(1020px, calc(100vw - 48px));
  border-radius: 24px;
  background: var(--af-gold-50);
  box-shadow: var(--af-shadow-600);
  padding: 22px 22px 24px;
}

.af-cert-lightbox__close{
  appearance: none;
  border: 0;
  background: transparent;
  color: var(--af-grey-950);
  position: absolute;
  top: 16px;
  right: 16px;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.af-cert-lightbox__title{
  margin: 0 56px 18px 0;
  font-family: var(--af-font-display);
  font-size: 22px;
  line-height: 1.25;
  text-transform: uppercase;
  color: var(--af-gold-500);
}

.af-cert-lightbox__viewport{
  min-height: min(74vh, 820px);
  border-radius: 18px;
  background: #fff;
  display: grid;
  place-items: center;
  padding: 18px;
}

.af-cert-lightbox__image{
  width: 100%;
  height: min(68vh, 760px);
  display: block;
  object-fit: contain;
  object-position: center;
  user-select: none;
  -webkit-user-drag: none;
  pointer-events: none;
}

body.af-cert-lightbox-open{
  overflow: hidden;
}

@media (max-width: 991.98px){
  .af-about-certs{
    padding: 54px 0 62px;
  }

  .af-about-certs__title{
    font-size: 38px;
    line-height: 1.1;
  }

  .af-about-certs__card{
    min-height: 520px;
    padding: 12px;
  }

  .af-about-certs__card-frame{
    min-height: 495px;
    padding: 46px 18px 26px;
  }

  .af-about-certs__name{
    font-size: 24px;
    line-height: 32px;
  }

  .af-about-certs__subtitle{
    font-size: 20px;
    line-height: 32px;
  }

  .af-about-certs__ornament{
    width: 90px;
    height: 16px;
    margin-top: 2px;
  }

  .af-about-certs__meta{
    margin-top: 14px;
    font-size: 18px;
    line-height: 28px;
  }

  .af-about-certs__preview{
    width: 283px;
  }

  .af-about-certs__preview--portrait{
    width: 157px;
  }

  .af-cert-lightbox{
    padding: 16px;
  }

  .af-cert-lightbox__dialog{
    width: min(100vw - 32px, 520px);
    padding: 18px 18px 20px;
  }

  .af-cert-lightbox__title{
    margin-right: 40px;
    font-size: 18px;
    line-height: 24px;
  }

  .af-cert-lightbox__viewport{
    min-height: min(66vh, 560px);
    padding: 12px;
  }

  .af-cert-lightbox__image{
    height: min(58vh, 500px);
  }
}

.af-about-video{
  position: relative;
  min-height: 980px;
  background: var(--af-gold-500);
  overflow: hidden;
}

.af-about-video__bg,
.af-about-video__bg-image{
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.af-about-video__bg-image{
  object-fit: cover;
  object-position: center;
}

.af-about-video__overlay{
  position: absolute;
  inset: 0;
  background: rgba(164, 133, 82, 0.82);
}

.af-about-video__content{
  position: relative;
  z-index: 1;
  min-height: 980px;
  display: grid;
  align-items: center;
}

.af-about-video__frame{
  position: relative;
  width: 450px;
  height: 800px;
  border-radius: 24px;
  background: var(--af-grey-300);
  box-shadow: 0 4px 4px -4px rgba(12, 12, 13, 0.05), 0 16px 32px -4px rgba(12, 12, 13, 0.10);
  overflow: hidden;
}

.af-about-video__media{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  background: var(--af-grey-300);
}

.af-about-video__toggle{
  position: absolute;
  left: 18px;
  bottom: 18px;
  appearance: none;
  border: 0;
  border-radius: 999px;
  width: 52px;
  height: 52px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(12, 17, 43, 0.78);
  color: #fff;
  box-shadow: 0 10px 20px rgba(12, 17, 43, 0.22);
}

.af-about-video__toggle-icon{
  display: inline-flex;
  width: 38px;
  height: 38px;
}

.af-about-video__toggle-icon img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  pointer-events: none;
}

.af-about-video__toggle:hover,
.af-about-video__toggle:focus-visible{
  background: rgba(12, 17, 43, 0.9);
}

.af-about-video__toggle:focus-visible{
  outline: 2px solid #fff;
  outline-offset: 2px;
}

.af-about-video__copy{
  color: #fff;
  position: relative;
  z-index: 1;
}

.af-about-video__title{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 38px;
  line-height: 52px;
  text-transform: uppercase;
  color: #fff;
}

.af-about-video__title span{
  display: block;
}

@media (min-width: 992px){
  .af-about-video__content{
    grid-template-columns: minmax(340px, 450px) minmax(320px, 439px);
    justify-content: center;
    column-gap: clamp(44px, 8vw, 132px);
    padding-top: 90px;
    padding-bottom: 90px;
  }

  .af-about-video__frame{
    justify-self: center;
    width: min(100%, 450px);
    margin-left: 0;
  }

  .af-about-video__copy{
    align-self: center;
    max-width: 440px;
    margin-top: 0;
  }
}

@media (max-width: 991.98px){
  .af-about-video{
    min-height: 980px;
  }

  .af-about-video__bg-image{
    object-position: 46% center;
  }

  .af-about-video__overlay{
    background: rgba(164, 133, 82, 0.80);
  }

  .af-about-video__content{
    grid-template-columns: 1fr;
    align-content: start;
    padding-top: 42px;
    padding-bottom: 72px;
  }

  .af-about-video__copy{
    order: 1;
    max-width: 373px;
    margin: 0 auto;
  }

  .af-about-video__title{
    font-size: 32px;
    line-height: 46px;
  }

  .af-about-video__frame{
    order: 2;
    width: min(389px, calc(100vw - 32px));
    height: 691.635px;
    margin: 123px auto 0;
  }

  .af-about-video__toggle{
    left: 14px;
    bottom: 14px;
    width: 50px;
    height: 50px;
  }
}

.af-about-gallery{
  background: var(--af-gold-100);
  padding: 72px 0 42px;
}

.af-about-gallery__header{
  max-width: 980px;
  margin: 0 auto;
}

.af-about-gallery__title{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 38px;
  line-height: 1.15;
  text-transform: uppercase;
  color: var(--af-gold-500);
}

.af-about-gallery__title span{
  display: block;
}

.af-about-gallery__viewport{
  margin-top: 58px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-bottom: 4px;
}

.af-about-gallery__viewport::-webkit-scrollbar{
  display: none;
}

.af-about-gallery__track{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 60px) / 3);
  gap: 30px;
}

.af-about-gallery__card{
  margin: 0;
  aspect-ratio: 1 / 1;
  border-radius: 24px;
  overflow: hidden;
  background: #fff;
  scroll-snap-align: start;
}

.af-about-gallery__card img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.af-about-gallery__prompt{
  margin-top: 34px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.af-about-gallery__prompt-icon{
  width: 24px;
  height: 24px;
  display: block;
}

.af-about-gallery__prompt-label{
  margin-top: 4px;
  padding-bottom: 8px;
  min-width: 162.573px;
  border-bottom: 2px solid var(--af-gold-500);
  text-align: center;
  white-space: nowrap;
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
  color: var(--af-grey-800);
}

@media (max-width: 991.98px){
  .af-about-gallery{
    padding: 54px 0 56px;
    overflow: hidden;
  }

  .af-about-gallery__title{
    font-size: 32px;
    line-height: 42px;
  }

  .af-about-gallery__viewport{
    padding: 0 16px 4px;
  }

  .af-about-gallery__track{
    grid-auto-columns: min(339px, calc(100vw - 32px));
    gap: 28px;
  }

  .af-about-gallery__prompt{
    margin-top: 28px;
  }

  .af-about-gallery__prompt-label{
    width: 162.573px;
    min-width: 0;
    white-space: normal;
  }
}

.af-about-connect{
  position: relative;
  min-height: 500px;
  background-color: var(--af-gold-500);
  background-image: linear-gradient(rgba(164, 133, 82, 0.82), rgba(164, 133, 82, 0.82)), url("../img/about-page/connect/bg-desktop.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.af-about-connect__inner{
  min-height: 500px;
  padding-top: 174px;
  padding-bottom: 80px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.af-about-connect__title{
  margin: 0;
  max-width: 980px;
  font-family: var(--af-font-display);
  font-size: 38px;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
}

.af-about-connect__cta{
  margin-top: 74px;
  min-width: 250px;
  min-height: 48px;
  padding: 10px 21px 10px 42px;
  border: 1px solid #fff;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  text-decoration: none;
  color: #fff;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}

.af-about-connect__cta:hover,
.af-about-connect__cta:focus-visible{
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

.af-about-connect__cta-label{
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
}

.af-about-connect__cta-icon{
  width: 24px;
  height: 24px;
  display: block;
  flex: 0 0 24px;
}

@media (max-width: 991.98px){
  .af-about-connect{
    background-image: linear-gradient(rgba(164, 133, 82, 0.82), rgba(164, 133, 82, 0.82)), url("../img/about-page/connect/bg-mobile.png");
    background-position: center center;
  }

  .af-about-connect__inner{
    padding-top: 144px;
    padding-bottom: 64px;
  }

  .af-about-connect__title{
    font-size: 32px;
    line-height: 46px;
  }

  .af-about-connect__title span{
    display: block;
  }

  .af-about-connect__cta{
    margin-top: 78px;
    min-width: 300px;
    min-height: 58px;
    padding: 14px 26px 14px 36px;
    gap: 20px;
  }

  .af-about-connect__cta-label{
    font-size: 18px;
  }
}

/* Navbar (Figma header) */
.af-navbar{
  min-height: 80px;
  position: relative;
  z-index: 1051;
}

/* Only show a shadow once the page has been scrolled */
.af-navbar.af-navbar--scrolled{
  box-shadow: var(--af-shadow-300);
}

.af-navbar-toggler{
  border: 0;
  padding: 0;
  width: 44px;
  height: 44px;
  color: var(--af-gold-500);
  position: relative;
  z-index: 1052;
}

.af-navbar-toggler:focus{
  box-shadow: 0 0 0 .25rem rgba(164, 133, 82, 0.20);
}

.af-navbar-toggler .af-icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.af-navbar-toggler .af-icon-close{
  display: none;
}

.af-navbar-toggler[aria-expanded="true"] .af-icon-menu{
  display: none;
}

.af-navbar-toggler[aria-expanded="true"] .af-icon-close{
  display: inline-flex;
}

.af-navbar-brand{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
}

.af-navbar-brand img{
  display: block;
  width: auto;
  height: auto;
}

/* Desktop logo sizing (matches Figma header proportions) */
@media (min-width: 992px){
  .af-navbar-brand{
    gap: 12px;
  }

  /* Logo mark */
  .af-navbar-brand img:first-child{
    height: 60px;
  }

  /* Logo word */
  .af-navbar-brand img:last-child{
    height: 44px;
  }
}

.af-nav{
  gap: 1.5rem;
}

.af-navbar .nav-link{
  font-family: var(--af-font-display);
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--af-grey-700);
  padding-left: 0;
  padding-right: 0;
  display: inline-block;
  position: relative;
}

.af-navbar .nav-link:hover,
.af-navbar .nav-link:focus{
  color: var(--af-gold-500);
}

.af-navbar .nav-link.active{
  color: var(--af-gold-500);
}

/* Underline is rendered by the shared .af-nav__underline indicator */
.af-navbar .nav-link.active::after{ display: none; }

.af-nav__label{ display: inline-block; }

@media (min-width: 992px){
  .af-nav{ position: relative; }

  .af-nav__underline{
    position: absolute;
    height: 3px;
    background: var(--af-gold-500);
    bottom: 1px;
    left: 0;
    width: 0;
    opacity: 0;
    transform: translateX(0);
    transition: transform .18s ease, width .18s ease, opacity .12s ease;
    will-change: transform, width;
    pointer-events: none;
  }
}

@media (min-width: 992px){
}

@media (max-width: 991.98px){
  .af-nav__underline{ display: none; }
}

.af-btn-cta{
  height: 44px;
  padding: 0 16px 0 18px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--af-font-display);
  font-size: 16px;
}

.af-btn-cta__label{
  line-height: 1;
  white-space: nowrap;
}

.af-btn-cta__icon{
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: var(--af-gold-500);
  transform: translateX(-2px);
}

/* Desktop navbar tweaks (Figma header) */
@media (min-width: 992px){
  .af-btn-cta{
    width: 240px;
    justify-content: space-between;
    padding-right: 10px;
  }

  .af-btn-cta__icon{
    flex: 0 0 auto;
  }

  .af-social{
    gap: 16px !important;
  }

  .af-social-link svg{
    width: 20px;
    height: 20px;
    display: block;
  }
}

.af-social-link{
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--af-grey-700);
  text-decoration: none;
}

.af-social-link:hover,
.af-social-link:focus{
  background: var(--af-grey-900);
  color: #fff;
}

.af-mobile-menu-brand{
  display: none;
}

/* Mobile navbar overlay (matches Figma mobile open menu) */
@media (max-width: 991.98px){
  .af-navbar{
    min-height: 84px;
  }

  /* Keep brand mark + word at their intended proportions (avoid Chrome stretching) */
  .af-navbar-brand img{ width: auto; }
  .af-navbar-brand img:first-child{ height: 48px; }
  .af-navbar-brand img:last-child{ height: 32px; }

  .af-navbar .navbar-collapse{
    position: fixed;
    inset: 0;
    background: var(--af-surface-0);
    padding: 120px 24px 40px;
    overflow: auto;
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;
    z-index: 1050;
  }

  .af-navbar .navbar-collapse.show{
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

  /* Keep the close icon clickable above the overlay */
  .af-navbar-toggler[aria-expanded="true"]{
    position: fixed;
    top: 22px;
    right: 16px;
    z-index: 1052;
  }

  .af-mobile-menu-brand{
    display: flex;
    justify-content: center;
    margin-bottom: 36px;
  }

  /* mobile-emblem.svg uses preserveAspectRatio="none"; force a stable box ratio */
  .af-mobile-menu-brand img{
    width: 92px;
    height: 84px;
    object-fit: contain;
    display: block;
  }

  .af-nav{
    flex-direction: column;
    gap: 28px;
    align-items: center;
    margin-bottom: 52px;
  }

  .af-navbar .nav-link{
    font-size: 20px;
  }

  .af-navbar .nav-link.active::after{
    display: none;
  }

  .af-btn-cta{
    height: 56px;
    width: min(305px, 100%);
    justify-content: center;
    font-size: 18px;
    padding-left: 22px;
    padding-right: 62px;
    margin-inline: auto;
    position: relative;
  }

  .af-btn-cta__label{
    width: 100%;
    text-align: center;
  }

  /* Stack actions: button row, then socials row */
  .af-navbar .navbar-collapse > .d-flex{
    flex-direction: column;
    align-items: center;
    gap: 50px !important;
  }

  .af-btn-cta__icon{
    width: 43px;
    height: 43px;
    background: #fff;
    color: var(--af-gold-500);
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
  }

  .af-social{
    width: 100%;
    justify-content: center;
    gap: 24px !important;
  }

  .af-social-link{
    width: 50px;
    height: 50px;
    background: var(--af-grey-700);
  }

  .af-social-link svg{
    width: 22px;
    height: 22px;
  }
}

/* Footer (Figma) */
.af-footer{
  --af-footer-icon-size: 30px;
  background: var(--af-grey-950);
  color: var(--af-grey-600);
  padding: 32px 0 26px;
  position: relative;
  overflow: hidden;
}

.af-footer__inner{
  min-height: 420px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
}

.af-footer a{
  color: inherit;
  text-decoration: none;
}

.af-footer a:hover,
.af-footer a:focus{
  color: var(--af-gold-500);
  text-decoration: none;
}

.af-footer__logo{
  margin-top: 32px;
  width: 140px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.af-footer__logo-mark,
.af-footer__logo-word{
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
}

/* Scale logo proportionally inside the fixed-width logo container */
.af-footer__logo-word{ width: 100%; }
.af-footer__logo-mark{ width: 42.6%; }

.af-footer__nav{
  margin-top: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 52px;
  flex-wrap: wrap;
}

.af-footer__nav-link{
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--af-grey-600);
}

.af-footer__contacts{
  margin-top: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 36px;
  flex-wrap: wrap;
}

.af-footer__contact{
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 1.2;
  color: var(--af-grey-600);
}

.af-footer__icon{
  position: relative;
  width: var(--af-footer-icon-size);
  height: var(--af-footer-icon-size);
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.af-footer__icon img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.af-footer__icon-bg{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.af-footer__icon-fg{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(var(--af-footer-icon-size) * 0.53);
  height: calc(var(--af-footer-icon-size) * 0.53);
}

.af-footer__icon--insta{
  color: #fff;
}

.af-footer__insta-svg{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(var(--af-footer-icon-size) * 0.5);
  height: calc(var(--af-footer-icon-size) * 0.5);
  display: block;
}

.af-footer__cta{
  margin-top: 26px;
  width: 200px;
  height: 40px;
  background: var(--af-grey-900);
  border-radius: 100px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  font-family: var(--af-font-display);
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: #fff;
  padding-right: 46px;
}

.af-footer__cta:hover,
.af-footer__cta:focus{
  color: #fff;
}

.af-footer__cta-badge{
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  color: #fff;
}

.af-footer__cta-circle{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.af-footer__cta-arrow{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 22px;
  height: 22px;
  display: block;
}

.af-footer__legal{
  margin-top: 20px;
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 1.2;
  color: var(--af-grey-600);
}

.af-footer__legal-link{
  color: var(--af-grey-600);
}

.af-footer__ornament{
  margin-top: 20px;
  width: 89.372px;
  max-width: 100%;
  opacity: 0.95;
}

.af-footer__ornament img{
  width: 100%;
  height: 16px;
  display: block;
  object-fit: contain;
}

.af-footer__copyright{
  margin-top: 20px;
  padding-top: 0;
  padding-bottom: 6px;
  font-family: var(--af-font-display);
  font-size: 14px;
  line-height: 24px;
  color: var(--af-grey-800);
  text-align: center;
}

.af-footer__credit{
  margin-top: 2px;
}

.af-footer__credit-link{
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.af-footer__up{
  display: none;
}

@media (max-width: 991.98px){
  .af-footer{
    --af-footer-icon-size: 30px;
    padding: 40px 0 86px;
  }

  .af-footer__inner{ min-height: 696px; }

  .af-footer__logo{ margin-top: 0; }

  .af-footer__nav{
    margin-top: 34px;
    flex-direction: column;
    gap: 18px;
  }

  .af-footer__contacts{
    margin-top: 34px;
    gap: 22px;
  }

  .af-footer__contact{ gap: 0; }

  .af-footer__contact-text{ display: none; }

  .af-footer__cta{
    margin-top: 38px;
    font-size: 16px;
  }

  .af-footer__legal{ margin-top: 28px; }

  .af-footer__copyright{
    font-size: 16px;
    color: var(--af-grey-800);
    margin-top: 10px;
    padding-top: 0;
    line-height: 24px;
  }

  .af-footer__up{
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 74px;
    height: 33px;
    color: inherit;
  }

  .af-footer__up img{ width: 74px; height: 33px; display: block; }
}

/* FAQ page */
.af-faq-page-body{
  background: var(--af-gold-100);
  color: var(--af-grey-800);
}

.af-faq-page{
  min-height: 100vh;
  background: var(--af-gold-100);
}

.af-faq-page__desktop{
  min-height: 100vh;
  grid-template-columns: minmax(0, 1fr) minmax(520px, 1fr);
}

.af-faq-page__media,
.af-faq-page__panel{
  min-width: 0;
}

.af-faq-page__media{
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  background: var(--af-grey-950);
}

.af-faq-page__slideshow{
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(12, 17, 43, 0.1) 0%, rgba(12, 17, 43, 0.28) 100%);
}

.af-faq-page__slide,
.af-faq-page__slide-fallback{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.af-faq-page__slide{
  object-fit: cover;
  object-position: center;
  opacity: 0;
  transition: opacity .6s ease;
}

.af-faq-page__slide.is-active{
  opacity: 1;
}

.af-faq-page__slide-fallback{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  background: linear-gradient(180deg, rgba(164, 133, 82, 0.65) 0%, rgba(12, 17, 43, 0.55) 100%);
  color: #fff;
  text-align: center;
  font-family: var(--af-font-display);
  font-size: 20px;
  line-height: 1.5;
}

.af-faq-page__label{
  position: absolute;
  left: 0;
  top: 44px;
  z-index: 2;
  min-height: 60px;
  min-width: 377px;
  padding: 12px 32px 12px 48px;
  display: inline-flex;
  align-items: center;
  background: var(--af-gold-500);
  color: #fff;
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 36px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.af-faq-page__panel{
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  padding: 62px clamp(28px, 5vw, 88px) 48px;
  background: var(--af-gold-100);
}

.af-faq-page__back{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  text-decoration: none;
  color: var(--af-grey-800);
}

.af-faq-page__back:hover,
.af-faq-page__back:focus-visible{
  color: var(--af-gold-500);
}

.af-faq-page__back-icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--af-gold-500);
}

.af-faq-page__back-label{
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
}

.af-faq-page__panel-scroll{
  margin-top: 54px;
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding-right: 10px;
  scrollbar-width: thin;
  scrollbar-color: rgba(164, 133, 82, 0.45) transparent;
}

.af-faq-page__panel-scroll::-webkit-scrollbar{
  width: 8px;
}

.af-faq-page__panel-scroll::-webkit-scrollbar-thumb{
  background: rgba(164, 133, 82, 0.45);
  border-radius: 999px;
}

.af-faq-page__panel-stage{
  max-width: 562px;
}

.af-faq-theme + .af-faq-theme{
  margin-top: 72px;
}

.af-faq-page__status{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 20px;
  line-height: 1.6;
  color: var(--af-grey-700);
}

.af-faq-theme__title,
.af-faq-mobile-theme__title{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 32px;
  line-height: 1.12;
  text-transform: uppercase;
  color: var(--af-gold-500);
}

.af-faq-theme{
  display: flex;
  flex-direction: column;
}

.af-faq-theme--entering .af-faq-theme__title,
.af-faq-theme--entering .af-faq-theme__description,
.af-faq-accordion__item--entering{
  opacity: 0;
}

.af-faq-theme--entering .af-faq-theme__title,
.af-faq-theme--entering .af-faq-theme__description{
  animation: afFaqFadeIn .2s ease forwards;
}

.af-faq-accordion__item--entering{
  transform: translate3d(40px, 0, 0);
  animation: afFaqSwimIn .25s cubic-bezier(.22, 1, .36, 1) forwards;
  animation-delay: var(--af-faq-enter-delay, .2s);
}

.af-faq-theme__description,
.af-faq-mobile-theme__description{
  margin: 28px 0 0;
  font-family: var(--af-font-display);
  font-size: 20px;
  line-height: 30px;
  color: var(--af-grey-500);
}

.af-faq-accordion{
  margin-top: 48px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.af-faq-accordion__item{
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
}

.af-faq-accordion__trigger{
  width: 100%;
  min-height: 80px;
  padding: 20px 24px;
  border: 0;
  border-radius: 16px;
  background: var(--af-gold-200);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  text-align: left;
  color: var(--af-gold-500);
  position: relative;
  z-index: 2;
  list-style: none;
  cursor: pointer;
}

.af-faq-accordion__trigger::-webkit-details-marker{
  display: none;
}

.af-faq-accordion__trigger::marker{
  content: "";
}

.af-faq-accordion__title{
  font-family: var(--af-font-display);
  font-size: 22px;
  line-height: 30px;
}

.af-faq-accordion__icon{
  position: relative;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  color: var(--af-gold-500);
}

.af-faq-accordion__icon::before,
.af-faq-accordion__icon::after{
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 20px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transform: translate(-50%, -50%);
}

.af-faq-accordion__icon::after{
  width: 2px;
  height: 20px;
  transition: opacity .2s ease;
}

.af-faq-accordion__item[open] .af-faq-accordion__icon::after{
  opacity: 0;
}

.af-faq-accordion__panel{
  display: grid;
  grid-template-rows: 0fr;
  margin-top: 0;
  position: relative;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: grid-template-rows .28s cubic-bezier(.22, 1, .36, 1), opacity .2s ease, margin-top .28s cubic-bezier(.22, 1, .36, 1);
}

.af-faq-accordion__panel-inner{
  overflow: hidden;
}

.af-faq-accordion__panel-surface{
  background: #fff;
  border-radius: 16px;
  padding: 22px 26px 26px;
  box-shadow: var(--af-shadow-200);
  transform: translate3d(0, -8px, 0);
  transition: transform .28s cubic-bezier(.22, 1, .36, 1);
}

.af-faq-accordion__item[open] .af-faq-accordion__panel{
  grid-template-rows: 1fr;
  margin-top: -16px;
  opacity: 1;
  pointer-events: auto;
}

.af-faq-accordion__item[open] .af-faq-accordion__panel-surface{
  padding-top: 38px;
  transform: translate3d(0, 0, 0);
}

.af-faq-answer__paragraph,
.af-faq-answer__list{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 18px;
  line-height: 26px;
  color: var(--af-grey-800);
}

.af-faq-answer__paragraph + .af-faq-answer__paragraph,
.af-faq-answer__paragraph + .af-faq-answer__list,
.af-faq-answer__list + .af-faq-answer__paragraph,
.af-faq-answer__list + .af-faq-answer__list{
  margin-top: 18px;
}

.af-faq-answer__list{
  padding-left: 1.25rem;
}

.af-faq-answer__list li + li{
  margin-top: 10px;
}

.af-faq-answer a{
  color: var(--af-gold-500);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.12em;
}

.af-faq-answer a:hover,
.af-faq-answer a:focus-visible{
  color: var(--af-gold-600);
}

@keyframes afFaqFadeIn{
  from{
    opacity: 0;
  }
  to{
    opacity: 1;
  }
}

@keyframes afFaqSwimIn{
  from{
    opacity: 0;
    transform: translate3d(40px, 0, 0);
  }
  to{
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.af-faq-scroll-cue{
  margin: 0 auto;
  padding: 56px 0 0;
  border: 0;
  background: transparent;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: var(--af-gold-500);
}

.af-faq-scroll-cue:hover,
.af-faq-scroll-cue:focus-visible{
  color: var(--af-gold-600);
}

.af-faq-scroll-cue__icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.af-faq-scroll-cue__label{
  font-family: var(--af-font-display);
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: var(--af-grey-800);
}

.af-faq-closing{
  margin-top: 92px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.af-faq-closing__title{
  margin: 0;
  font-family: var(--af-font-display);
  font-size: 22px;
  line-height: 30px;
  color: var(--af-grey-950);
}

.af-faq-closing__cta{
  margin-top: 26px;
  min-width: 263px;
  min-height: 48px;
  padding: 8px 8px 8px 30px;
  border-radius: var(--af-radius-pill);
  background: var(--af-gold-500);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  text-decoration: none;
  color: #fff;
}

.af-faq-closing__cta:hover,
.af-faq-closing__cta:focus-visible{
  color: #fff;
  background: var(--af-gold-600);
}

.af-faq-closing__cta-label{
  font-family: var(--af-font-display);
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
}

.af-faq-closing__cta-icon{
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: var(--af-gold-500);
}

.af-faq-page__mobile{
  background: var(--af-gold-100);
}

.af-faq-page__mobile-header{
  padding: 26px 16px 18px;
  background: var(--af-gold-100);
}

.af-faq-page__mobile-hero{
  position: relative;
  height: 585px;
  overflow: hidden;
}

.af-faq-page__label--mobile{
  top: auto;
  bottom: 232px;
  left: 0;
  right: 0;
  min-width: 0;
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
  justify-content: center;
  font-size: 18px;
  text-align: center;
}

.af-faq-page__mobile-content{
  padding: 38px 16px 72px;
}

.af-faq-mobile-theme + .af-faq-mobile-theme{
  margin-top: 72px;
}

.af-faq-accordion--mobile{
  margin-top: 40px;
  gap: 20px;
}

.af-faq-accordion--mobile .af-faq-accordion__trigger{
  min-height: 80px;
  padding: 18px 22px;
}

.af-faq-accordion--mobile .af-faq-accordion__title{
  font-size: 18px;
  line-height: 24px;
}

.af-faq-accordion--mobile .af-faq-accordion__panel-surface{
  padding: 22px 22px 24px;
}

.af-faq-accordion--mobile .af-faq-accordion__item[open] .af-faq-accordion__panel{
  margin-top: -14px;
}

.af-faq-accordion--mobile .af-faq-accordion__item[open] .af-faq-accordion__panel-surface{
  padding-top: 34px;
}

.af-faq-closing--mobile{
  margin-top: 66px;
}

.af-faq-closing--mobile .af-faq-closing__title{
  font-size: 18px;
  line-height: 30px;
}

.af-faq-closing--mobile .af-faq-closing__cta{
  min-width: 316px;
  min-height: 58px;
  padding-left: 24px;
}

.af-faq-closing--mobile .af-faq-closing__cta-label{
  font-size: 18px;
}

.af-faq-page__mobile .af-faq-scroll-cue{
  display: none;
}

@media (min-width: 992px){
  .af-faq-page-body{
    height: 100vh;
    overflow: hidden;
  }

  .af-faq-page{
    height: 100vh;
    overflow: hidden;
  }

  .af-faq-page__desktop{
    height: 100vh;
    min-height: 0;
    align-items: stretch;
    overflow: hidden;
  }

  .af-faq-page__media,
  .af-faq-page__panel{
    height: 100vh;
    min-height: 0;
  }

  .af-faq-page__panel{
    overflow: hidden;
  }

  .af-faq-page__panel-scroll{
    overscroll-behavior: contain;
  }

  .af-faq-page__mobile{
    display: none;
  }
}

@media (max-width: 991.98px){
  .af-faq-page-body{
    overflow-x: hidden;
  }

  .af-faq-theme__title,
  .af-faq-mobile-theme__title{
    font-size: 32px;
    line-height: 1.08;
  }

  .af-faq-theme__description,
  .af-faq-mobile-theme__description{
    margin-top: 24px;
  }
}

@media (prefers-reduced-motion: reduce){
  .af-faq-theme--entering .af-faq-theme__title,
  .af-faq-theme--entering .af-faq-theme__description,
  .af-faq-accordion__item--entering{
    animation: none;
    opacity: 1;
    transform: none;
  }

  .af-faq-accordion__panel,
  .af-faq-accordion__panel-surface,
  .af-faq-accordion__icon::after{
    transition: none;
  }
}
