/* Authority homepage — warm ivory / greige / espresso palette */
:root {
  --at-black: #3A2A1C;
  --at-black-2: #2F2218;
  --at-ink: #3A2A1C;
  --at-cream: #F8F5EE;
  --at-paper: #F8F5EE;
  --at-white: #FFFFFF;
  --at-greige: #C9BFB2;
  --at-espresso: #3A2A1C;
  --at-espresso-hover: #4A3726;
  --at-on-espresso: #F1E9DE;
  --at-muted-on-espresso: #C9BFB2;
  /* Legacy gold token → espresso accent (fills/CTAs). Text on dark uses --at-on-espresso. */
  --at-gold: #3A2A1C;
  --at-gold-light: #4A3726;
  --at-muted: rgba(58, 42, 28, 0.62);
  --at-serif: "Instrument Serif", Georgia, serif;
  --at-sans: Inter, system-ui, sans-serif;
  --at-card-radius: 18px;
  --at-chip-radius: 14px;
}

.at-home ::selection,
.header-area ::selection {
  color: #F1E9DE;
  background: #3A2A1C;
}

/* Shared storefront chrome: cream sticky bar */
.sub-header,
.header-area {
  border: 0 !important;
  background: rgba(248, 245, 238, 0.92) !important;
  box-shadow: none !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.header-area {
  position: sticky !important;
  top: 0;
  z-index: 1100;
  min-height: 64px;
  border-bottom: 1px solid rgba(58, 42, 28, 0.08) !important;
}

.sub-header {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.sub-header a,
.sub-header .nice-select .current,
.sub-header .right-sub i,
.header-area .primary-menu > li > a,
.header-area .toggle-bar,
.header-area .floating-searchbar > button {
  color: #3A2A1C !important;
}

.sub-header svg path,
.header-area .primary-end > div > a svg path {
  stroke: #3A2A1C !important;
}

.sub-header .primary-end .nice-control {
  width: auto;
  min-width: 108px;
  height: 32px;
  margin: -5px 2px 0 0;
  padding: 0 30px 0 13px !important;
  border: 1px solid rgba(58, 42, 28, 0.35) !important;
  border-radius: 999px;
  color: var(--at-cream) !important;
  background-color: rgba(255, 255, 255, 0.06) !important;
  background-position: right 12px center;
  background-size: 10px 7px;
  box-shadow: none !important;
  font-family: var(--at-sans);
  font-size: 11px;
  font-weight: 600;
  line-height: 30px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color-scheme: dark;
}

.sub-header .primary-end select.nice-control {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='m1 1 4 4 4-4' fill='none' stroke='%233A2A1C' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
}

.sub-header .primary-end .nice-select.nice-control::after {
  display: block;
  right: 13px;
  width: 6px;
  height: 6px;
  margin-top: -5px;
  border-color: var(--at-gold);
}

.sub-header .primary-end .nice-control .current {
  padding: 0 !important;
  color: var(--at-cream) !important;
}

.sub-header .primary-end .nice-select .list {
  overflow: hidden;
  min-width: 132px;
  margin-top: 7px;
  border: 1px solid rgba(58, 42, 28, 0.22);
  border-radius: 10px;
  background: var(--at-black-2);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.3);
}

.sub-header .primary-end .nice-select .option {
  color: rgba(255, 255, 255, 0.76);
  background: transparent;
}

.sub-header .primary-end .nice-select .option:hover,
.sub-header .primary-end .nice-select .option.focus,
.sub-header .primary-end .nice-select .option.selected.focus {
  color: var(--at-on-espresso);
  background: rgba(58, 42, 28, 0.1);
}

.header-area .primary-end > div > a svg path[fill] {
  fill: #3A2A1C !important;
}

.header-area .cfm-logo-link {
  display: flex;
  align-items: center;
}

body.home-template-authority .sub-header {
  display: none !important;
}

.header-area .cfm-logo-svg svg,
.footer-cfm-logo .cfm-logo-svg svg {
  display: block;
  height: 36px;
  width: auto;
  max-width: min(168px, 38vw);
}

.footer-cfm-logo .cfm-logo-svg svg {
  height: 56px;
  max-width: 280px;
}

.header-area .cfm-logo-on-light {
  display: block;
}

.header-area .cfm-logo-on-dark,
.header-area .header-logo-fallback,
.header-area .header-dark-logo,
.header-area .header-light-logo {
  display: none !important;
}

.footer-content .header-logo-fallback {
  display: none;
}

.header-area .primary-menu > li > a.active,
.header-area .primary-menu > li > a:hover {
  color: #3A2A1C !important;
}

.header-area .primary-menu > li > a::after {
  background: var(--at-gold) !important;
}

/* Courses mega-menu: clear chevron (theme gold fill was crushing the triangle) */
.header-area .primary-menu > li.have-mega-menu > a.menu-parent-a {
  padding-right: 20px !important;
}

.header-area .primary-menu > li.have-mega-menu > a.menu-parent-a::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 50% !important;
  right: 0 !important;
  left: auto !important;
  bottom: auto !important;
  width: 10px !important;
  height: 6px !important;
  margin-top: -2px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%233A2A1C' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 10px 6px !important;
  transform: none !important;
  transition: background-image 0.2s ease, transform 0.2s ease !important;
}

.header-area .primary-menu > li.have-mega-menu > a.menu-parent-a:hover::after,
.header-area .primary-menu > li.have-mega-menu > a.menu-parent-a.active::after,
.header-area .primary-menu > li.have-mega-menu:hover > a.menu-parent-a::after {
  width: 10px !important;
  height: 6px !important;
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%233A2A1C' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  transform: translateY(1px) !important;
}

.header-area,
.header-area * {
  box-sizing: border-box;
}

/* Logo | nav | search+cart+login+CTA. Actions never shrink off the right edge. */
.header-area > .container > .header-bar,
.header-area > .container > .row.header-bar {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 12px;
}

@media (min-width: 768px) {
  .header-area > .container > .header-bar,
  .header-area > .container > .row.header-bar {
    flex-wrap: nowrap !important;
    overflow: hidden;
  }
}

.header-area .header-nav-col {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
}

.header-area .header-menu {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.header-area .primary-menu {
  flex-wrap: nowrap;
  min-width: 0;
}

.header-area .primary-menu > li {
  padding: 4px 10px !important;
  flex: 0 0 auto;
}

.header-area .primary-menu > li > a {
  position: relative;
  padding: 8px 2px !important;
  font-family: var(--at-sans);
  font-size: 14px !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em;
  text-decoration: none !important;
  transition: color 0.18s ease;
}

.header-area .primary-menu > li > a::after {
  left: 0 !important;
  right: auto !important;
  width: 0 !important;
  height: 2px !important;
  border-radius: 999px;
  background: var(--at-espresso, #3A2A1C) !important;
  opacity: 1 !important;
  transition: width 0.2s ease;
}

.header-area .primary-menu > li > a:hover::after,
.header-area .primary-menu > li > a.active::after {
  width: 100% !important;
}

.header-area .header-actions-col {
  flex: 0 0 auto;
  flex-shrink: 0;
  max-width: none;
  margin-left: auto;
}

.header-area .header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.header-area .header-actions .primary-end {
  flex: 0 0 auto;
  gap: 8px;
}

.header-area .header-cart,
.header-area .primary-end .me-md-4,
.header-area .primary-end .me-md-5 {
  margin-left: 0 !important;
  margin-right: 8px !important;
}

.header-area .header-cta,
.header-area .cfm-header-cta,
.header-area .eBtn.gradient.header-cta,
.header-area .at-btn {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 10px 16px !important;
  min-height: 42px;
  border-radius: var(--at-chip-radius, 14px) !important;
  font-size: 13px !important;
  line-height: 1.2;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.header-area .header-cta:hover,
.header-area .cfm-header-cta:hover,
.header-area .at-btn:hover {
  transform: translateY(-1px);
}

@media (max-width: 1599.98px) {
  .header-area .primary-menu > li.nav-compact-hide {
    display: none;
  }
}

@media (max-width: 1199.98px) {
  .header-area .primary-menu > li {
    padding: 4px 6px !important;
  }
}

@media (min-width: 992px) {
  .header-area a.header-cta {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }
}

@media (max-width: 991.98px) {
  .header-area a.header-cta {
    display: none !important;
  }

  .header-area .header-nav-col,
  .header-area .nav-menu {
    display: none !important;
  }

  body.home-template-authority .header-area > .container,
  .header-area > .container {
    padding-right: max(12px, env(safe-area-inset-right)) !important;
    padding-left: max(12px, env(safe-area-inset-left)) !important;
  }

  .header-area .header-actions {
    gap: 2px;
  }

  .header-area .header-actions .primary-end {
    gap: 0;
  }

  .header-area .header-cart,
  .header-area .primary-end a {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .header-area .floating-searchbar > button {
    margin: 0 !important;
    padding: 8px !important;
    min-width: 44px;
    min-height: 44px;
  }

  .header-area .toggle-bar {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: 0 !important;
    line-height: 1;
  }
}

@media (max-width: 575.98px) {
  .header-area .Esearch_entry {
    display: none;
  }
}

.header-area .Esearch_entry {
  position: relative;
  z-index: 2;
  flex: 0 0 156px;
  width: 156px;
  max-width: 156px;
  min-width: 120px;
  margin: 0;
  padding-right: 0;
}

.header-area .Esearch_entry input {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  height: 42px;
  padding: 8px 44px 8px 14px !important;
  color: #3A2A1C !important;
  border: 1px solid rgba(58, 42, 28, 0.14) !important;
  background: #FFFFFF !important;
  border-radius: var(--at-chip-radius, 14px) !important;
  box-shadow: none !important;
}

.header-area .Esearch_entry input::placeholder {
  color: rgba(58, 42, 28, 0.4) !important;
}

.header-area .Esearch_entry button {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
}

.header-area .Esearch_entry button,
.header-area .Esearch_entry button i {
  color: #3A2A1C !important;
}

.header-area .eBtn.gradient {
  color: #3A2A1C !important;
  border: 1px solid #3A2A1C !important;
  background: transparent !important;
  box-shadow: none !important;
}

.header-area .cfm-header-cta {
  color: var(--at-on-espresso) !important;
  background: var(--at-espresso) !important;
  border: 1px solid var(--at-espresso) !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0.06em;
  box-shadow: 0 10px 22px rgba(58, 42, 28, 0.14);
}

.header-area .cfm-header-cta:hover {
  background: var(--at-espresso-hover, #4A3726) !important;
  border-color: var(--at-espresso-hover, #4A3726) !important;
}

.header-area .header-login-link {
  color: #3A2A1C !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(58, 42, 28, 0.22) !important;
  box-shadow: none !important;
  text-transform: none;
  font-weight: 650;
  letter-spacing: -0.01em;
}

.header-area .header-login-link:hover {
  border-color: rgba(58, 42, 28, 0.45) !important;
  background: #F8F5EE !important;
}

.at-home {
  overflow-x: hidden;
  overflow-x: clip;
  overflow-y: visible;
  width: 100%;
  max-width: none;
  color: var(--at-ink);
  background: var(--at-paper);
  font-family: var(--at-sans);
  -webkit-font-smoothing: antialiased;
}

/* LMS default layout wraps @yield in a bare <section>. Do not box the storefront. */
body.home-template-authority > .at-lms-yield,
body.at-funnel-page > .at-lms-yield {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.at-home *,
.at-home *::before,
.at-home *::after {
  box-sizing: border-box;
}

.at-home img {
  max-width: 100%;
}

@supports (padding: max(0px)) {
  .sub-header > .container,
  .header-area > .container,
  .at-home > section > .container {
    padding-right: calc(12px + env(safe-area-inset-right));
    padding-left: calc(12px + env(safe-area-inset-left));
  }
}

/* Full-bleed storefront: bands span the viewport; type sits in a wide inner column */
body.home-template-authority .container,
body.home-template-authority .container-lg,
body.home-template-authority .container-xl,
body.home-template-authority .container-xxl,
.at-home .container,
.at-welcome .container {
  max-width: min(1520px, 100%) !important;
  width: 100% !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: clamp(16px, 2.2vw, 40px) !important;
  padding-left: clamp(16px, 2.2vw, 40px) !important;
}

body.home-template-authority .header-area > .container,
body.home-template-authority .footer-area > .container,
body.home-template-authority .sub-header > .container {
  max-width: 100% !important;
}

@supports (padding: max(0px)) {
  body.home-template-authority .container,
  body.home-template-authority .container-lg,
  body.home-template-authority .container-xl,
  body.home-template-authority .container-xxl,
  .at-home .container,
  .at-welcome .container {
    padding-right: max(clamp(16px, 2.2vw, 40px), env(safe-area-inset-right)) !important;
    padding-left: max(clamp(16px, 2.2vw, 40px), env(safe-area-inset-left)) !important;
  }
}

.at-home h1,
.at-home h2,
.at-home h3,
.at-home p {
  padding: 0;
}

.at-hero {
  position: relative;
  padding: 40px 0 72px;
  color: #3A2A1C;
  background: var(--at-paper);
}

.at-orbit {
  display: none;
}

.at-orbit {
  position: absolute;
  border: 1px solid rgba(58, 42, 28, 0.13);
  border-radius: 50%;
  pointer-events: none;
}

.at-orbit-one {
  top: -360px;
  right: -180px;
  width: 760px;
  height: 760px;
}

.at-orbit-two {
  top: -190px;
  right: -10px;
  width: 420px;
  height: 420px;
}

.at-status {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px;
  color: rgba(58, 42, 28, 0.48);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.at-status span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--at-gold);
  box-shadow: 0 0 0 5px rgba(58, 42, 28, 0.1);
}

.at-kicker {
  margin: 0 0 17px;
  color: var(--at-gold);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.at-kicker-dark {
  color: #95742d;
}

.at-hero h1 {
  max-width: min(16ch, 100%);
  margin: 0 0 18px;
  color: #3A2A1C;
  font-family: var(--at-sans);
  font-size: clamp(32px, 4.4vw, 52px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.08;
}

.at-hero h1 em {
  display: block;
  color: #3A2A1C;
  font-family: var(--at-serif);
  font-size: 0.92em;
  font-style: italic;
  font-weight: 400;
  letter-spacing: -0.02em;
}

.at-lead {
  max-width: 60ch;
  margin: 0 0 34px;
  color: rgba(58, 42, 28, 0.62);
  font-size: 16px;
  line-height: 1.75;
}

.at-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.at-btn {
  display: inline-flex;
  min-height: 56px;
  align-items: center;
  justify-content: center;
  padding: 13px 24px;
  border-radius: 0;
  font-family: var(--at-sans);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: transform 0.2s ease, background 0.2s ease;
}

.at-btn:hover {
  transform: translateY(-2px);
}

.at-btn-gold {
  color: var(--at-on-espresso) !important;
  background: var(--at-espresso);
}

.at-btn-gold:hover {
  color: var(--at-on-espresso) !important;
  background: var(--at-espresso-hover);
}

.at-hero .at-btn-outline {
  color: #3A2A1C !important;
  border: 1px solid #3A2A1C;
  background: transparent;
}

.at-hero .at-cta-note {
  color: rgba(58, 42, 28, 0.55);
}

.at-btn-ink {
  color: var(--at-on-espresso) !important;
  background: var(--at-espresso);
}

.at-cta-note {
  margin: 14px 0 0;
  color: rgba(241, 233, 222, 0.78);
  font-size: 12px;
  line-height: 1.5;
}

.at-guarantee span::first-letter {
  color: var(--at-gold);
}

.at-progress {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1200;
  width: 100%;
  height: 2px;
  background: transparent;
  pointer-events: none;
}

.at-progress > span {
  display: block;
  width: 0;
  height: 100%;
  background: linear-gradient(90deg, var(--at-gold), var(--at-gold-light));
  transition: width 0.05s linear;
}

/* Never hide storefront copy. Tall sections used to miss IntersectionObserver (threshold 0.12) and look like empty white holes. */
.at-reveal,
.at-reveal.is-in {
  opacity: 1;
  transform: none;
}

.at-reveal[data-delay="120"] {
  transition-delay: 0.12s;
}

.at-offer-card {
  position: relative;
  padding: 34px;
  border: 1px solid rgba(58, 42, 28, 0.28);
  background:
    linear-gradient(180deg, rgba(58, 42, 28, 0.08), transparent 42%),
    rgba(255, 255, 255, 0.03);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.28);
}

.at-offer-label {
  margin: 0 0 14px;
  color: var(--at-gold);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.at-offer-card h2 {
  margin: 0 0 18px;
  color: #fff;
  font-family: var(--at-serif);
  font-size: clamp(28px, 3vw, 34px);
  font-weight: 400;
  line-height: 1.1;
}

.at-offer-price {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 18px;
}

.at-offer-price strong {
  color: var(--at-on-espresso);
  font-family: var(--at-serif);
  font-size: 42px;
  font-weight: 400;
}

.at-offer-price del {
  color: rgba(255, 255, 255, 0.35);
  font-size: 14px;
}

.at-offer-meta {
  display: grid;
  gap: 8px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
}

.at-offer-meta li {
  color: rgba(255, 255, 255, 0.55);
  font-size: 12px;
}

.at-offer-meta li::before {
  content: "→ ";
  color: var(--at-gold);
}

.at-offer-card .w-100 {
  width: 100%;
}

.at-offer-link {
  display: inline-block;
  margin-top: 16px;
  color: rgba(255, 255, 255, 0.55) !important;
  font-size: 11px;
  text-decoration: none !important;
}

.at-offer-link:hover {
  color: var(--at-on-espresso) !important;
}

.at-brief {
  position: relative;
  padding: 34px;
  border: 1px solid rgba(58, 42, 28, 0.22);
  background: rgba(255, 255, 255, 0.025);
}

.at-brief > p {
  margin: 0 0 18px;
  color: var(--at-gold);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.at-brief h2 {
  margin: 0;
  color: #fff;
  font-family: var(--at-serif);
  font-size: 35px;
  font-weight: 400;
  line-height: 1.05;
}

.at-brief-line {
  width: 36px;
  height: 1px;
  margin: 28px 0;
  background: var(--at-gold);
}

.at-brief > span {
  display: block;
  padding: 10px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.52);
  font-size: 11px;
}

.at-numbers {
  color: #fff;
  background: var(--at-black);
}

.at-number {
  padding: 28px 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
  border-right: 1px solid rgba(255, 255, 255, 0.09);
}

.at-number strong {
  display: block;
  color: var(--at-on-espresso);
  font-family: var(--at-serif);
  font-size: 34px;
  font-weight: 400;
}

.at-number span {
  color: rgba(255, 255, 255, 0.4);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.at-topics {
  padding: 26px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
  background: var(--at-black);
}

.at-topics .container {
  display: flex;
  align-items: center;
  gap: 32px;
}

.at-topics p {
  flex: 0 0 auto;
  margin: 0;
  color: rgba(255, 255, 255, 0.32);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.at-topics .container > div {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 24px;
}

.at-topics a {
  color: rgba(255, 255, 255, 0.6) !important;
  font-size: 11px;
  text-decoration: none !important;
}

.at-section {
  padding: clamp(48px, 7vw, 80px) 0;
}

.at-home > section[id] {
  scroll-margin-top: 76px;
  width: 100%;
}

.at-problem {
  background: var(--at-cream);
}

.at-problem h2,
.at-feature-copy h2,
.at-center-heading h2,
.at-program-heading h2,
.at-curriculum h2,
.at-guarantee-card h2,
.at-final h2 {
  margin: 0;
  font-family: var(--at-serif);
  font-size: clamp(42px, 5vw, 62px);
  font-weight: 400;
  letter-spacing: -0.035em;
  line-height: 1;
}

/* Real-blocker thesis panel */
.at-problem-lead {
  padding: clamp(32px, 4.5vw, 52px) clamp(28px, 4vw, 48px);
  border: 1px solid rgba(241, 233, 222, 0.12);
  border-radius: var(--at-card-radius, 18px);
  background: var(--at-espresso, #3A2A1C);
  color: var(--at-on-espresso, #F1E9DE);
  box-shadow: 0 22px 48px rgba(20, 12, 6, 0.18);
}

.at-problem-lead .at-kicker {
  color: var(--at-greige, #C9BFB2);
}

.at-problem-lead h2 {
  color: var(--at-on-espresso, #F1E9DE);
  font-size: clamp(34px, 4.2vw, 52px);
  line-height: 1.05;
}

.at-problem-lead .at-statement {
  margin: 0 0 18px;
  color: var(--at-on-espresso, #F1E9DE);
  font-size: clamp(22px, 2.6vw, 30px);
  line-height: 1.28;
}

.at-problem-lead .at-copy {
  color: rgba(241, 233, 222, 0.62);
  font-size: 15px;
  line-height: 1.7;
}

.at-skepticism {
  background: var(--at-paper);
}

.at-skepticism .at-center-heading h2 {
  color: var(--at-ink);
}

.at-skepticism .at-center-heading > p:last-child {
  color: var(--at-muted);
}

.at-clarify {
  height: 100%;
}

/* Clear-this-up cards: rounded ivory tiles */
#what-it-is .row.g-4 {
  --bs-gutter-x: 1.25rem;
  --bs-gutter-y: 1.25rem;
}

#what-it-is .at-clarify {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 30px 26px 32px;
  border: 1px solid rgba(58, 42, 28, 0.12);
  border-radius: var(--at-card-radius, 18px);
  background: #FFFFFF;
  box-shadow: 0 14px 34px rgba(58, 42, 28, 0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

#what-it-is .at-clarify:hover {
  transform: translateY(-4px);
  border-color: rgba(58, 42, 28, 0.22);
  box-shadow: 0 22px 44px rgba(58, 42, 28, 0.1);
}

#what-it-is .at-clarify span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0 0 20px;
  border: 1px solid rgba(58, 42, 28, 0.14);
  border-radius: var(--at-chip-radius, 14px);
  background: var(--at-cream, #F8F5EE);
  color: var(--at-espresso, #3A2A1C);
  font-family: var(--at-sans);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
}

#what-it-is .at-clarify h3 {
  margin: 0 0 12px;
  color: var(--at-espresso, #3A2A1C);
  font-size: clamp(24px, 2.2vw, 28px);
  letter-spacing: -0.02em;
}

#what-it-is .at-clarify p {
  margin: 0;
  color: rgba(58, 42, 28, 0.66);
  font-size: 15px;
  line-height: 1.65;
  flex: 1 1 auto;
}

.at-mid-cta {
  margin-top: 48px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  text-align: center;
}

.at-proof {
  color: var(--at-espresso, #3A2A1C);
  background: #FFFFFF;
}

#proof.at-proof .at-center-heading h2 {
  color: var(--at-espresso, #3A2A1C);
}

#proof.at-proof .at-center-heading > p:last-child {
  color: rgba(58, 42, 28, 0.66);
}

#proof.at-proof .at-kicker {
  color: var(--at-espresso, #3A2A1C) !important;
}

.at-curriculum {
  background: var(--at-cream);
}

.at-curriculum .at-center-heading h2 {
  color: var(--at-ink);
}

.at-include-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  border: 1px solid rgba(21, 25, 29, 0.14);
  background: #fff;
}

.at-include-grid article {
  padding: 36px 34px;
}

.at-include-grid article:first-child {
  border-right: 1px solid rgba(21, 25, 29, 0.14);
}

.at-include-grid h3 {
  margin: 0 0 20px;
  font-family: var(--at-serif);
  font-size: 28px;
  font-weight: 400;
}

.at-include-grid ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.at-include-grid li {
  position: relative;
  padding: 12px 0 12px 22px;
  border-bottom: 1px solid rgba(21, 25, 29, 0.08);
  color: #3d4348;
  font-size: 13px;
  line-height: 1.5;
}

.at-include-grid li:last-child {
  border-bottom: 0;
}

.at-include-grid li::before {
  position: absolute;
  left: 0;
  content: "→";
  color: #94752f;
}

.at-faq {
  color: #fff;
  background: var(--at-black-2);
}

.at-faq-list {
  max-width: 760px;
  margin: 0 auto;
}

.at-faq-list details {
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.at-faq-list summary {
  cursor: pointer;
  list-style: none;
  padding: 22px 0;
  color: #fff;
  font-family: var(--at-serif);
  font-size: 24px;
  line-height: 1.2;
}

.at-faq-list summary::-webkit-details-marker {
  display: none;
}

.at-faq-list summary::after {
  float: right;
  content: "+";
  color: var(--at-on-espresso);
  font-family: var(--at-sans);
  font-size: 18px;
}

.at-faq-list details[open] summary::after {
  content: "–";
}

.at-faq-list details p {
  margin: 0 0 22px;
  max-width: 58ch;
  color: rgba(255, 255, 255, 0.55);
  font-size: 13px;
  line-height: 1.7;
}

.at-guarantee-block {
  background: var(--at-paper);
}

.at-guarantee-card {
  max-width: 760px;
  margin: 0 auto;
  padding: 48px 42px;
  border: 1px solid rgba(21, 25, 29, 0.12);
  background: var(--at-cream);
  text-align: center;
}

.at-guarantee-card h2 {
  margin-bottom: 16px;
  color: var(--at-ink);
}

.at-guarantee-card > p:not(.at-kicker) {
  margin: 0 auto;
  max-width: 52ch;
  color: var(--at-muted);
  font-size: 14px;
  line-height: 1.7;
}

.at-final-note {
  margin-top: 18px !important;
  color: rgba(255, 255, 255, 0.42) !important;
  font-size: 12px !important;
  letter-spacing: 0;
  text-transform: none;
}

.at-final-note a {
  color: rgba(255, 255, 255, 0.55) !important;
  text-decoration: none !important;
}

.at-final-note a:hover {
  color: var(--at-on-espresso) !important;
}

.at-final-price {
  margin: 0 auto 18px !important;
  color: var(--at-on-espresso) !important;
  font-family: var(--at-serif);
  font-size: 28px !important;
}

.at-final-price del {
  margin-left: 10px;
  color: rgba(255, 255, 255, 0.35);
  font-size: 16px;
}

.at-curriculum-live {
  max-width: 860px;
  margin: 0 auto;
  border: 1px solid rgba(21, 25, 29, 0.12);
  background: #fff;
}

.at-module {
  border-bottom: 1px solid rgba(21, 25, 29, 0.1);
}

.at-module:last-child {
  border-bottom: 0;
}

.at-module summary {
  display: grid;
  grid-template-columns: 42px 1fr auto;
  gap: 14px;
  align-items: center;
  cursor: pointer;
  list-style: none;
  padding: 22px 24px;
}

.at-module summary::-webkit-details-marker {
  display: none;
}

.at-module summary span {
  color: #94752f;
  font-size: 11px;
  font-weight: 700;
}

.at-module summary strong {
  color: var(--at-ink);
  font-family: var(--at-serif);
  font-size: 22px;
  font-weight: 400;
}

.at-module summary em {
  color: var(--at-muted);
  font-size: 11px;
  font-style: normal;
}

.at-module ul {
  margin: 0;
  padding: 0 24px 22px 80px;
  list-style: none;
}

.at-module li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid rgba(21, 25, 29, 0.06);
  color: #3d4348;
  font-size: 13px;
}

.at-module mark {
  padding: 2px 8px;
  color: #725820;
  background: rgba(58, 42, 28, 0.22);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.at-curriculum-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  max-width: 860px;
  margin: 36px auto 0;
  padding: 24px 28px;
  background: var(--at-black);
  color: #fff;
}

.at-curriculum-cta strong {
  color: var(--at-on-espresso);
  font-family: var(--at-serif);
  font-size: 28px;
  font-weight: 400;
}

.at-curriculum-cta del {
  margin-left: 10px;
  color: rgba(255, 255, 255, 0.35);
}

.at-curriculum-cta span {
  display: block;
  margin-top: 4px;
  color: rgba(255, 255, 255, 0.45);
  font-size: 11px;
}

.at-dock {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1100;
  padding: 12px 0 max(12px, env(safe-area-inset-bottom));
  border-top: 1px solid rgba(58, 42, 28, 0.22);
  background: rgba(58, 42, 28, 0.97);
  backdrop-filter: blur(12px);
  transform: translateY(110%);
  transition: transform 0.35s ease;
}

body.at-dock-visible .at-home {
  padding-bottom: 96px;
}

body.at-dock-visible .at-dock {
  transform: none;
}

.at-dock[hidden] {
  display: block !important;
  pointer-events: none;
}

body.at-dock-visible .at-dock[hidden] {
  pointer-events: auto;
}

.at-dock-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
}

.at-dock-copy {
  min-width: 0;
  flex: 1 1 auto;
}

.at-dock-copy strong {
  display: block;
  overflow: hidden;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.at-dock-copy span {
  display: block;
  overflow: hidden;
  color: var(--at-on-espresso);
  font-family: var(--at-serif);
  font-size: clamp(15px, 1.4vw, 18px);
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.at-dock-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 10px;
}

.at-dock-actions .at-btn {
  white-space: nowrap;
}

.at-dock-inner del {
  margin-left: 8px;
  color: rgba(255, 255, 255, 0.35);
  font-size: 12px;
}

@media (max-width: 991.98px) {
  .at-dock {
    display: none !important;
  }

  body.at-dock-visible .at-home {
    padding-bottom: calc(88px + env(safe-area-inset-bottom));
  }
}

@media (prefers-reduced-motion: reduce) {
  .at-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

.at-statement {
  margin: 0 0 22px;
  font-family: var(--at-serif);
  font-size: clamp(25px, 3vw, 34px);
  line-height: 1.22;
}

.at-copy {
  margin: 0;
  color: #5e6468;
  font-size: 14px;
  line-height: 1.75;
}

.at-warning-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 56px;
  border: 0;
}

.at-warning-grid article {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 30px 26px 32px;
  border: 1px solid rgba(58, 42, 28, 0.12);
  border-radius: var(--at-card-radius, 18px);
  background: #FFFFFF;
  box-shadow: 0 14px 34px rgba(58, 42, 28, 0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.at-warning-grid article:hover {
  transform: translateY(-4px);
  border-color: rgba(58, 42, 28, 0.22);
  box-shadow: 0 22px 44px rgba(58, 42, 28, 0.1);
}

.at-warning-grid span,
.at-step > span {
  color: var(--at-espresso, #3A2A1C);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

.at-warning-grid span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0 0 20px;
  border: 1px solid rgba(58, 42, 28, 0.14);
  border-radius: var(--at-chip-radius, 14px);
  background: var(--at-cream, #F8F5EE);
  color: var(--at-espresso, #3A2A1C);
  font-family: var(--at-sans);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
}

.at-warning-grid h3 {
  margin: 0 0 12px;
  font-family: var(--at-serif);
  font-size: clamp(24px, 2.2vw, 28px);
  font-weight: 400;
  letter-spacing: -0.02em;
  color: var(--at-espresso, #3A2A1C);
}

.at-warning-grid p {
  margin: 0;
  color: rgba(58, 42, 28, 0.66);
  font-size: 15px;
  line-height: 1.65;
  flex: 1 1 auto;
}

@media (max-width: 991.98px) {
  .at-warning-grid {
    grid-template-columns: 1fr;
  }
}

.at-method {
  color: var(--at-on-espresso, #F1E9DE);
  background: var(--at-espresso, #3A2A1C);
}

.at-method .at-center-heading h2 {
  color: var(--at-on-espresso, #F1E9DE);
}

.at-method .at-center-heading > p:last-child {
  color: var(--at-muted-on-espresso, #C9BFB2);
}

.at-method .at-kicker {
  color: var(--at-on-espresso, #F1E9DE) !important;
}

.at-center-heading {
  max-width: 730px;
  margin: 0 auto 56px;
  text-align: center;
}

.at-center-heading h2 {
  color: #fff;
}

.at-center-heading > p:last-child {
  max-width: 55ch;
  margin: 18px auto 0;
  color: rgba(255, 255, 255, 0.48);
  font-size: 13px;
  line-height: 1.65;
}

.at-step {
  height: 100%;
  padding: 34px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: rgba(255, 255, 255, 0.025);
}

.at-step-featured {
  border-color: rgba(201, 191, 178, 0.45);
  background: rgba(255, 255, 255, 0.05);
}

.at-step h3 {
  margin: 54px 0 14px;
  color: #fff;
  font-family: var(--at-serif);
  font-size: 32px;
  font-weight: 400;
}

.at-step p {
  margin: 0;
  color: rgba(255, 255, 255, 0.48);
  font-size: 12px;
  line-height: 1.7;
}

/* How-it-works: ivory cards on espresso */
#how-it-works.at-method .at-step {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 32px 28px 36px;
  border: 1px solid rgba(241, 233, 222, 0.14);
  border-radius: var(--at-card-radius, 18px);
  background: var(--at-cream, #F8F5EE);
  color: var(--at-espresso, #3A2A1C);
  box-shadow: 0 18px 40px rgba(20, 12, 6, 0.22);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

#how-it-works.at-method .at-step:hover {
  transform: translateY(-5px);
  border-color: rgba(241, 233, 222, 0.35);
  box-shadow: 0 26px 52px rgba(20, 12, 6, 0.32);
}

#how-it-works.at-method .at-step > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0 0 22px;
  border: 1px solid rgba(58, 42, 28, 0.16);
  border-radius: var(--at-chip-radius, 14px);
  background: #FFFFFF;
  color: var(--at-espresso, #3A2A1C);
  font-family: var(--at-sans);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
}

#how-it-works.at-method .at-step h3 {
  margin: 0 0 14px;
  color: var(--at-espresso, #3A2A1C);
  font-size: clamp(26px, 2.5vw, 32px);
  line-height: 1.15;
  letter-spacing: -0.02em;
}

#how-it-works.at-method .at-step p {
  margin: 0;
  color: rgba(58, 42, 28, 0.68);
  font-size: 15px;
  line-height: 1.65;
  flex: 1 1 auto;
}

#how-it-works.at-method .at-step-featured {
  background: #FFFFFF;
  border-color: var(--at-greige, #C9BFB2);
  box-shadow:
    0 0 0 1px var(--at-greige, #C9BFB2),
    0 22px 48px rgba(20, 12, 6, 0.28);
}

#how-it-works.at-method .at-step-featured > span {
  background: var(--at-espresso, #3A2A1C);
  border-color: var(--at-espresso, #3A2A1C);
  color: var(--at-on-espresso, #F1E9DE);
}

#how-it-works.at-method .at-mid-cta {
  margin-top: 44px;
}

#how-it-works.at-method .at-mid-cta .at-btn-gold {
  color: var(--at-espresso, #3A2A1C) !important;
  background: var(--at-cream, #F8F5EE) !important;
  border: 1px solid var(--at-cream, #F8F5EE) !important;
  border-radius: var(--at-chip-radius, 14px) !important;
}

#how-it-works.at-method .at-mid-cta .at-btn-gold:hover {
  color: var(--at-espresso, #3A2A1C) !important;
  background: #FFFFFF !important;
  border-color: #FFFFFF !important;
}

.at-feature {
  background: var(--at-paper);
}

.at-feature-image,
.at-feature-copy {
  min-height: 0;
}

.at-feature-image {
  overflow: hidden;
  background: #d6d1c5;
}

.at-feature-image img {
  width: 100%;
  height: 100%;
  min-height: 280px;
  max-height: 520px;
  object-fit: cover;
  filter: grayscale(0.3) contrast(1.04);
}

.at-image-placeholder {
  display: flex;
  min-height: 280px;
  flex-direction: column;
  justify-content: flex-end;
  padding: 42px;
  color: #fff;
  background:
    linear-gradient(180deg, transparent 20%, rgba(11, 13, 15, 0.82)),
    radial-gradient(circle at 58% 24%, #816f4f, transparent 28%),
    linear-gradient(145deg, #8d8b82, #22282c);
}

.at-image-placeholder span {
  font-family: var(--at-serif);
  font-size: 48px;
}

.at-image-placeholder small {
  color: rgba(255, 255, 255, 0.55);
}

.at-feature-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 54px;
  background: var(--at-cream);
}

.at-feature-copy h2 {
  margin-bottom: 22px;
}

.at-feature-copy > p:not(.at-kicker) {
  margin: 0 0 24px;
  color: var(--at-muted);
  font-size: 14px;
  line-height: 1.75;
}

.at-feature-copy ul {
  display: grid;
  gap: 10px;
  margin: 0 0 30px;
  padding: 0;
  list-style: none;
}

.at-feature-copy li {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding-left: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
}

.at-feature-copy li::before {
  position: static;
  flex: 0 0 auto;
  content: "✓";
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(148, 117, 47, 0.45);
  color: #94752f;
  font-size: 12px;
}

.at-shift {
  color: #fff;
  background: var(--at-black);
}

.at-shift-list {
  max-width: 860px;
  margin: 0 auto;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.at-shift-list > div {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 18px;
  padding: 22px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.13);
}

.at-shift-list span {
  color: var(--at-on-espresso);
}

.at-shift-list p {
  margin: 0;
  color: rgba(255, 255, 255, 0.78);
  font-family: var(--at-serif);
  font-size: 23px;
}

.at-programs {
  background: var(--at-cream);
}

.at-program-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 48px;
}

.at-program-heading > div {
  max-width: 680px;
}

.at-program-heading > a {
  flex: 0 0 auto;
  color: #725820 !important;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none !important;
}

.at-course {
  display: block;
  height: 100%;
  color: inherit;
  background: #fff;
  text-decoration: none !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.at-course:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 42px rgba(21, 25, 29, 0.1);
}

.at-course-image {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #d6d1c5;
}

.at-course-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.7);
  transition: transform 0.4s ease;
}

.at-course:hover .at-course-image img {
  transform: scale(1.04);
}

.at-course-content {
  padding: 22px;
}

.at-course-content > span {
  color: #94752f;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.at-course-content h3 {
  min-height: 56px;
  margin: 10px 0 22px;
  color: var(--at-ink);
  font-family: var(--at-serif);
  font-size: 25px;
  font-weight: 400;
  line-height: 1.1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.at-course-content > div {
  display: flex;
  justify-content: space-between;
  padding-top: 14px;
  border-top: 1px solid rgba(21, 25, 29, 0.1);
  font-size: 10px;
}

.at-course-content small {
  color: var(--at-muted);
}

.at-empty {
  padding: 44px;
  border: 1px dashed rgba(21, 25, 29, 0.2);
  background: #fff;
  text-align: center;
}

.at-voices {
  color: #fff;
  background: var(--at-black-2);
}

.at-voice {
  height: 100%;
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.09);
}

.at-voice > div {
  color: var(--at-on-espresso);
  font-size: 10px;
  letter-spacing: 0.12em;
}

.at-voice blockquote {
  margin: 22px 0 28px;
  color: rgba(255, 255, 255, 0.72);
  font-family: var(--at-serif);
  font-size: 22px;
  line-height: 1.35;
}

.at-voice strong {
  color: #fff;
  font-size: 10px;
}

.at-final {
  padding: 120px 0;
  color: #fff;
  background:
    radial-gradient(600px 360px at 50% 120%, rgba(58, 42, 28, 0.16), transparent 70%),
    var(--at-black);
  text-align: center;
}

.at-final h2 {
  max-width: 14ch;
  margin: 0 auto 18px;
  color: #fff;
}

.at-final > .container > p:not(.at-kicker) {
  margin: 0 auto 30px;
  color: rgba(255, 255, 255, 0.48);
  font-size: 13px;
}

@media (max-width: 991.98px) {
  .at-hero {
    padding: 32px 0 calc(72px + env(safe-area-inset-bottom));
  }

  .at-status {
    margin-bottom: 14px;
  }

  .at-section {
    padding: clamp(40px, 6vw, 64px) 0;
  }

  .at-warning-grid {
    grid-template-columns: 1fr;
  }

  .at-feature-image {
    height: 420px;
    min-height: 0;
  }

  .at-feature-image img,
  .at-image-placeholder {
    height: 100%;
    min-height: 0;
  }

  .at-feature-copy {
    min-height: auto;
    padding: 48px;
  }

  .at-step h3 {
    margin-top: 34px;
  }
}

@media (max-width: 767.98px) {
  .sub-header {
    display: none !important;
  }

  .header-area {
    padding-top: max(14px, env(safe-area-inset-top)) !important;
    padding-bottom: 14px !important;
  }

  .at-hero h1 {
    max-width: 100%;
    font-size: clamp(42px, 12.5vw, 52px);
  }

  .at-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .at-guarantee {
    align-items: flex-start;
    flex-direction: column;
  }

  .at-number {
    padding: 22px 12px;
  }

  .at-number strong {
    font-size: 30px;
  }

  .at-number span {
    overflow-wrap: anywhere;
    letter-spacing: 0.08em;
  }

  .at-topics .container {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }

  .at-section {
    padding: 62px 0;
  }

  .at-problem h2,
  .at-feature-copy h2,
  .at-center-heading h2,
  .at-program-heading h2,
  .at-curriculum h2,
  .at-guarantee-card h2,
  .at-final h2 {
    font-size: clamp(36px, 10.5vw, 46px);
  }

  .at-include-grid {
    grid-template-columns: 1fr;
  }

  .at-include-grid article:first-child {
    border-right: 0;
    border-bottom: 1px solid rgba(21, 25, 29, 0.14);
  }

  .at-guarantee-card {
    padding: 36px 24px;
  }

  .at-faq-list summary {
    font-size: 20px;
  }

  .at-module summary {
    grid-template-columns: 32px 1fr;
  }

  .at-module summary em {
    grid-column: 2;
  }

  .at-module ul {
    padding-left: 24px;
    padding-right: 24px;
  }

  .at-curriculum-cta {
    align-items: stretch;
    flex-direction: column;
  }

  .at-dock-inner {
    gap: 12px;
  }

  .at-dock-copy strong {
    max-width: none;
    font-size: 11px;
  }

  .at-dock-actions .at-btn {
    min-height: 44px;
    padding-inline: 14px;
    white-space: nowrap;
  }

  .at-center-heading {
    margin-bottom: 38px;
  }

  .at-warning-grid {
    margin-top: 46px;
  }

  .at-warning-grid article,
  .at-step,
  .at-voice {
    padding: 26px;
  }

  .at-feature-copy {
    min-height: auto;
    padding: 34px 26px;
  }

  .at-feature-image {
    height: 320px;
  }

  .at-feature-image img,
  .at-image-placeholder {
    height: 100%;
  }

  .at-program-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .at-shift-list p {
    font-size: 20px;
  }

  .at-final {
    padding-top: 84px;
    padding-bottom: max(84px, calc(54px + env(safe-area-inset-bottom)));
  }
}

/* Narrow cover displays, including folded Galaxy Fold widths. */
@media (max-width: 374.98px) {
  .header-area {
    padding-right: env(safe-area-inset-right) !important;
    padding-left: env(safe-area-inset-left) !important;
  }

  .at-hero {
    padding: 28px 0 48px;
  }

  .at-status {
    margin-bottom: 12px;
    letter-spacing: 0.1em;
  }

  .at-hero h1 {
    font-size: clamp(30px, 9vw, 40px);
  }

  .at-lead {
    font-size: 14px;
    line-height: 1.65;
  }

  .at-btn {
    width: 100%;
    min-height: 48px;
    padding-inline: 16px;
  }

  .at-brief,
  .at-warning-grid article,
  .at-step,
  .at-voice {
    padding: 22px;
  }

  .at-number {
    padding-inline: 7px;
  }

  .at-number strong {
    font-size: 27px;
  }

  .at-number span {
    font-size: 8px;
  }

  .at-feature-copy {
    padding: 30px 22px;
  }

  .at-feature-image {
    height: 270px;
  }

  .at-feature-image img,
  .at-image-placeholder {
    height: 100%;
  }

  .at-image-placeholder {
    padding: 26px 22px;
  }

  .at-image-placeholder span {
    font-size: 38px;
  }

  .at-shift-list > div {
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 10px;
  }

  .at-course-content {
    padding: 18px;
  }
}

@media (hover: none) and (pointer: coarse) {
  .at-btn,
  .at-topics a,
  .at-program-heading > a {
    min-height: 44px;
  }

  .at-topics a,
  .at-program-heading > a {
    display: inline-flex;
    align-items: center;
  }

  .at-course:hover,
  .at-btn:hover {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .at-home *,
  .at-home *::before,
  .at-home *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* —— Enrollment welcome —— */
.at-welcome {
  min-height: 70vh;
  background:
    radial-gradient(900px 420px at 12% -10%, rgba(58, 42, 28, 0.16), transparent 55%),
    radial-gradient(700px 360px at 90% 0%, rgba(58, 42, 28, 0.08), transparent 50%),
    linear-gradient(180deg, #3A2A1C 0%, #2F2218 55%, #3A2A1C 100%);
  color: #F1E9DE;
}

.at-welcome-hero {
  padding: clamp(72px, 12vw, 120px) 0 clamp(80px, 10vw, 110px);
}

.at-welcome-hero .at-kicker {
  margin: 0 0 18px;
  color: var(--at-on-espresso);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.at-welcome-hero h1 {
  margin: 0 0 18px;
  max-width: 14ch;
  font-family: "Instrument Serif", Georgia, serif;
  font-size: clamp(40px, 7vw, 72px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #fff;
}

.at-welcome-lead {
  margin: 0 0 36px;
  max-width: 38rem;
  color: rgba(244, 239, 230, 0.72);
  font-size: 17px;
  line-height: 1.65;
}

.at-welcome-card {
  max-width: 34rem;
  margin: 0 0 36px;
  padding: 28px 30px;
  border: 1px solid rgba(58, 42, 28, 0.28);
  background: rgba(255, 255, 255, 0.03);
}

.at-welcome-card > span {
  display: block;
  margin-bottom: 10px;
  color: var(--at-on-espresso);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.at-welcome-card h2 {
  margin: 0 0 10px;
  font-family: "Instrument Serif", Georgia, serif;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 400;
  color: #fff;
  line-height: 1.2;
}

.at-welcome-card p {
  margin: 0;
  color: rgba(244, 239, 230, 0.66);
  font-size: 14px;
  line-height: 1.6;
}

.at-welcome-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

@media (max-width: 575.98px) {
  .at-welcome-actions {
    flex-direction: column;
  }

  .at-welcome-actions .at-btn {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* Funnel: cream by default. Dark featured bands use .at-funnel-alt. */
.at-home > section.at-funnel {
  color: #3A2A1C;
  background: var(--at-paper);
}

.at-home > section.at-funnel.at-funnel-alt {
  color: #F1E9DE;
  background: var(--at-black);
}

.at-home > section.at-funnel:not(.at-funnel-alt) .at-center-heading h2 {
  color: #3A2A1C;
}

.at-home > section.at-funnel:not(.at-funnel-alt) .at-center-heading > p:last-child {
  color: rgba(58, 42, 28, 0.62);
}

.at-home > section.at-funnel.at-funnel-alt .at-center-heading h2 {
  color: #fff;
}

.at-home > section.at-funnel.at-funnel-alt .at-center-heading > p:last-child {
  color: rgba(244, 239, 230, 0.72);
}

/* Sales-page extras mapped from Ondieki HTML */
.at-sales-nav {
  position: relative;
  z-index: 1;
  border-bottom: 1px solid rgba(58, 42, 28, 0.08);
  background: #FFFFFF;
}

.at-sales-nav-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 18px;
  min-height: 52px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.at-sales-nav-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.at-sales-nav-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 6px 14px;
  border: 1px solid rgba(58, 42, 28, 0.14);
  border-radius: 999px;
  color: rgba(58, 42, 28, 0.78) !important;
  background: #F8F5EE;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.at-sales-nav-links a:hover {
  color: #3A2A1C !important;
  border-color: rgba(58, 42, 28, 0.28);
  background: #FFFFFF;
}

.at-sales-nav-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  min-height: 36px;
  padding: 8px 16px;
  border: 1px solid var(--at-espresso, #3A2A1C);
  border-radius: var(--at-chip-radius, 14px);
  color: var(--at-on-espresso, #F1E9DE) !important;
  background: var(--at-espresso, #3A2A1C);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(58, 42, 28, 0.14);
  transition: background-color 0.18s ease, transform 0.18s ease;
}

.at-sales-nav-cta:hover {
  color: var(--at-on-espresso, #F1E9DE) !important;
  background: var(--at-espresso-hover, #4A3726);
  transform: translateY(-1px);
}

.at-proof-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin: 18px 0 8px;
  padding: 0;
  list-style: none;
  color: rgba(58, 42, 28, 0.62);
  font-size: 13px;
  font-weight: 600;
}

.at-proof-strip li {
  position: relative;
  padding-left: 14px;
}

.at-proof-strip li::before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 0;
  width: 7px;
  height: 7px;
  background: var(--at-gold);
}

.at-who-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 32px;
}

.at-who-split article {
  padding: 24px;
  border: 1px solid rgba(58, 42, 28, 0.1);
  background: #fff;
}

.at-who-split h3 {
  margin: 0 0 12px;
  font-family: var(--at-serif);
  font-size: 28px;
}

.at-who-split ul {
  margin: 0;
  padding-left: 18px;
  line-height: 1.7;
}

.at-hero .at-value-pill {
  color: #3A2A1C;
  border-color: rgba(58, 42, 28, 0.1);
}

.at-btn-outline {
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: transparent;
}

@media (max-width: 767.98px) {
  .at-who-split,
  .at-dash-split {
    grid-template-columns: 1fr;
  }

  .at-sales-nav {
    position: static;
  }

  .at-sales-nav-inner {
    gap: 10px;
  }

  .at-sales-nav-cta {
    width: 100%;
    margin-left: 0;
  }
}

.at-hero .at-kicker {
  color: #3A2A1C;
}

@media (max-width: 991.98px) {
  .at-sales-nav {
    position: static;
  }
}

.header-area .logo-image img {
  object-fit: contain !important;
}

/* ---------- Courses catalog (/courses) ---------- */
body.home-template-authority .cfm-catalog-banner {
  background: #F8F5EE !important;
  border-bottom: 1px solid rgba(58, 42, 28, 0.08) !important;
  padding-top: 28px !important;
  padding-bottom: 20px !important;
  color: #3A2A1C !important;
}

body.home-template-authority .cfm-catalog-banner .breadcrumb-item,
body.home-template-authority .cfm-catalog-banner .breadcrumb-item a,
body.home-template-authority .cfm-catalog-banner .breadcrumb-item.active {
  color: rgba(58, 42, 28, 0.5) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 12px !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.home-template-authority .cfm-catalog-banner .breadcrumb-item a:hover {
  color: #3A2A1C !important;
}

body.home-template-authority .cfm-catalog-banner .breadcrumb-item + .breadcrumb-item::before {
  color: rgba(58, 42, 28, 0.28) !important;
}

body.home-template-authority .cfm-catalog-banner .g-title,
body.home-template-authority .cfm-catalog-banner h3.g-title {
  color: #3A2A1C !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(28px, 4vw, 40px) !important;
  letter-spacing: -0.04em;
  line-height: 1.1 !important;
  margin: 4px 0 0 !important;
}

body.home-template-authority .cfm-catalog-banner .showing-text {
  color: rgba(58, 42, 28, 0.55) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 13px !important;
}

body.home-template-authority .cfm-catalog-banner .tab-list ul {
  background: transparent;
  border: 1px solid rgba(58, 42, 28, 0.1);
  border-radius: 0;
  padding: 4px;
  gap: 4px;
}

body.home-template-authority .cfm-catalog-banner .tab-list li {
  padding: 0;
}

body.home-template-authority .cfm-catalog-banner .tab-list a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  color: rgba(58, 42, 28, 0.55) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body.home-template-authority .cfm-catalog-banner .tab-list li.active {
  padding: 0;
  background: #3A2A1C;
  border-radius: 0;
}

body.home-template-authority .cfm-catalog-banner .tab-list li.active a,
body.home-template-authority .cfm-catalog-banner .tab-list a:hover {
  color: #F1E9DE !important;
}

body.home-template-authority .cfm-catalog {
  margin-top: 0 !important;
  padding-top: 36px !important;
  padding-bottom: 88px !important;
  background: #F8F5EE !important;
}

body.home-template-authority .cfm-catalog .sidebar,
body.home-template-authority .cfm-catalog .widget {
  border: 1px solid rgba(58, 42, 28, 0.1) !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.home-template-authority .cfm-catalog .widget {
  padding: 20px 18px !important;
  margin-bottom: 12px !important;
}

body.home-template-authority .cfm-catalog .widget-title {
  color: #3A2A1C !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 14px !important;
}

body.home-template-authority .cfm-catalog .form-check {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 0;
  padding-left: 0;
  margin-bottom: 10px;
}

body.home-template-authority .cfm-catalog .form-check-input,
body.home-template-authority .cfm-catalog .sidebar input[type="radio"],
body.home-template-authority .cfm-catalog .sidebar input[type="checkbox"] {
  flex: 0 0 18px;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: 0 !important;
  padding: 0;
  appearance: none;
  -webkit-appearance: none;
  border: 1.5px solid rgba(58, 42, 28, 0.28) !important;
  border-radius: 0 !important;
  background: #fff !important;
  background-image: none !important;
  box-shadow: none !important;
}

body.home-template-authority .cfm-catalog .form-check-input:checked,
body.home-template-authority .cfm-catalog .sidebar input[type="radio"]:checked,
body.home-template-authority .cfm-catalog .sidebar input[type="checkbox"]:checked {
  background-color: #3A2A1C !important;
  border-color: #3A2A1C !important;
  background-image: none !important;
  box-shadow: inset 0 0 0 3px #fff;
}

body.home-template-authority .cfm-catalog .form-check-label {
  color: rgba(58, 42, 28, 0.72) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.home-template-authority .cfm-catalog .g-star {
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.home-template-authority .cfm-catalog .g-star .color-g i {
  color: #3A2A1C;
}

body.home-template-authority .cfm-catalog .overlay-content.show-more p:last-child,
body.home-template-authority .cfm-catalog .overlay-content.show-less p:last-child {
  z-index: 2 !important;
}

body.home-template-authority .cfm-course-card,
body.home-template-authority .cfm-course-list {
  display: flex;
  flex-direction: column;
  height: auto !important;
  min-height: 0;
  overflow: hidden;
  text-decoration: none !important;
  color: inherit;
  background: #fff !important;
  border: 1px solid rgba(58, 42, 28, 0.1) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.home-template-authority .cfm-course-card:hover,
body.home-template-authority .cfm-course-list:hover {
  border-color: rgba(58, 42, 28, 0.28) !important;
  transform: none;
  box-shadow: none !important;
}

body.home-template-authority .cfm-course-list {
  display: grid;
  grid-template-columns: minmax(180px, 240px) 1fr;
  align-items: stretch;
}

body.home-template-authority .cfm-course-media {
  position: relative;
  height: 180px;
  overflow: hidden;
  background: #3A2A1C;
}

body.home-template-authority .cfm-course-list .cfm-course-media {
  height: 100%;
  min-height: 180px;
}

body.home-template-authority .cfm-course-media img:not(.cfm-course-media-mark) {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 1;
  filter: none;
  border-radius: 0 !important;
}

.cfm-course-media-mark,
body.home-template-authority .cfm-course-media-mark {
  position: absolute;
  left: 14px;
  bottom: 14px;
  z-index: 2;
  display: block;
  width: 36px;
  height: 36px;
  background: #3A2A1C url("../brand/CFM-icon-mark.svg") center / cover no-repeat;
  pointer-events: none;
  opacity: 1 !important;
  filter: none !important;
}

body.home-template-authority .cfm-course-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(58, 42, 28, 0.45));
  pointer-events: none;
}

body.home-template-authority .cfm-course-card .heart,
body.home-template-authority .cfm-course-list .heart {
  background: rgba(252, 252, 249, 0.92);
  color: #3A2A1C;
}

body.home-template-authority .cfm-course-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 6px;
  padding: 18px 18px 12px !important;
  margin: 0 !important;
}

body.home-template-authority .cfm-course-price,
body.home-template-authority .cfm-course-price h4 {
  position: static !important;
  margin: 0;
  color: #3A2A1C !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em;
  line-height: 1.2;
}

body.home-template-authority .cfm-course-price del {
  margin-left: 8px;
  color: rgba(58, 42, 28, 0.38) !important;
  font-size: 13px;
  font-weight: 500;
}

body.home-template-authority .cfm-course-card .entry-title,
body.home-template-authority .cfm-course-list .entry-title,
body.home-template-authority .cfm-course-card .entry-title h3,
body.home-template-authority .cfm-course-list .entry-title h3 {
  display: block;
  width: auto !important;
  margin: 0;
  color: #3A2A1C !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em;
  line-height: 1.3 !important;
}

body.home-template-authority .cfm-course-instructor,
body.home-template-authority .cfm-course-meta,
body.home-template-authority .cfm-course-list .description {
  margin: 0;
  color: rgba(58, 42, 28, 0.58) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.45;
}

body.home-template-authority .cfm-course-card .learn-more,
body.home-template-authority .cfm-course-list .learn-more {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
  margin: 0;
  padding: 12px 16px;
  color: #F1E9DE !important;
  background: #3A2A1C !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.home-template-authority .cfm-course-card .learn-more::after,
body.home-template-authority .cfm-course-list .learn-more::after {
  display: none !important;
}

body.home-template-authority .cfm-course-list .learn-creator {
  margin-top: auto;
  padding-top: 12px;
}

body.home-template-authority .cfm-course-list .learn-more {
  width: auto;
  min-width: 148px;
  margin-left: auto;
}

@media (max-width: 767.98px) {
  body.home-template-authority .cfm-course-list {
    grid-template-columns: 1fr;
  }

  body.home-template-authority .cfm-course-list .cfm-course-media {
    height: 160px;
    min-height: 160px;
  }

  body.home-template-authority .cfm-catalog-banner .tab-list ul {
    float: none;
    justify-content: flex-start;
  }
}

/* Video embeds (hero + proof) */
.cfm-video-embed {
  position: relative;
  width: 100%;
  border-radius: 18px;
  overflow: hidden;
  background: var(--at-black-2, #2F2218);
  border: 1px solid rgba(58, 42, 28, 0.08);
  box-shadow: 0 24px 60px rgba(58, 42, 28, 0.14);
}

.cfm-video-embed iframe,
.cfm-video-embed video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
  background: #3A2A1C;
}

.at-hero-media.cfm-video-embed,
.at-hero-media .cfm-video-embed {
  margin: 0;
}

.at-hero-media {
  position: relative;
  z-index: 1;
}

.at-hero .row.align-items-center {
  align-items: center !important;
}

@media (min-width: 992px) {
  .at-hero-media .cfm-video-embed {
    min-height: 315px;
  }
}

.cfm-video-placeholder {
  position: relative;
  aspect-ratio: 16 / 9;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 30% 20%, rgba(58, 42, 28, 0.18), transparent 42%),
    linear-gradient(145deg, #3A2A1C 0%, #2F2218 55%, #2F2218 100%);
}

.cfm-video-poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.55;
}

.cfm-video-scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(58, 42, 28, 0.15) 0%, rgba(58, 42, 28, 0.55) 55%, rgba(58, 42, 28, 0.78) 100%);
}

.cfm-video-center {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  gap: 12px;
  padding: 24px;
  text-align: center;
}

.cfm-video-kicker {
  color: rgba(58, 42, 28, 0.92);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.cfm-video-play {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  border: 0;
  background: var(--at-gold, #3A2A1C);
  color: #3A2A1C;
  box-shadow: 0 12px 32px rgba(58, 42, 28, 0.35);
}

.cfm-video-title {
  max-width: 18rem;
  color: #F8F5EE;
  font-family: var(--at-serif);
  font-size: clamp(1.05rem, 2vw, 1.35rem);
  line-height: 1.25;
}

.cfm-video-caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  margin: 0;
  padding: 14px 18px;
  font-size: 0.82rem;
  color: rgba(252, 252, 249, 0.82);
  background: linear-gradient(180deg, transparent, rgba(58, 42, 28, 0.82));
}

.cfm-ico {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  color: var(--at-gold, #3A2A1C);
}

.cfm-ico svg {
  display: block;
}

.at-value-pill-icon .cfm-ico {
  color: #3A2A1C;
}

.at-number .cfm-ico {
  display: flex;
  margin-bottom: 10px;
  color: var(--at-gold, #3A2A1C);
}

.at-persona .cfm-ico,
.at-about-grid .cfm-ico {
  display: inline-flex;
  margin-bottom: 12px;
  color: var(--at-gold, #3A2A1C);
}

/* Site-wide: no social icons on public storefront */
body.home-template-authority .f-socials,
body.at-funnel-page .f-socials,
body.home-template-authority .sub-header .fa-brands {
  display: none !important;
}

/* Typography polish */
.at-home h1,
.at-home h2,
.at-home h3 {
  letter-spacing: -0.02em;
}

.at-home .at-lead,
.at-home .at-copy,
.at-home .at-center-heading > p {
  line-height: 1.65;
}

.at-home .at-section {
  padding-top: clamp(3.5rem, 6vw, 5.5rem);
  padding-bottom: clamp(3.5rem, 6vw, 5.5rem);
}



/* ===== CFM palette rhythm (color-only pass) ===== */
.at-hero {
  color: #3A2A1C;
  background: #F8F5EE !important;
}

#promise.at-funnel {
  color: #3A2A1C !important;
  background: #FFFFFF !important;
}

#five-ways.at-funnel,
#five-ways.at-funnel-alt {
  color: #3A2A1C !important;
  background: #C9BFB2 !important;
}

#five-ways .at-center-heading h2,
#five-ways h2,
#five-ways h3,
#five-ways h4 {
  color: #3A2A1C !important;
}

#five-ways .at-center-heading > p:last-child {
  color: rgba(58, 42, 28, 0.72) !important;
}

#five-ways .at-kicker,
#five-ways .at-kicker-dark {
  color: #3A2A1C !important;
}

#five-ways .at-five-tabs button,
#five-ways .at-finder-opt {
  color: #3A2A1C !important;
  background: rgba(248, 245, 238, 0.55) !important;
  border-color: rgba(58, 42, 28, 0.28) !important;
  box-shadow: none !important;
}

#five-ways .at-five-tabs button:hover {
  color: #3A2A1C !important;
  background: rgba(248, 245, 238, 0.85) !important;
  border-color: rgba(58, 42, 28, 0.45) !important;
}

#five-ways .at-five-tabs button.is-on,
#five-ways .at-finder-opt.is-on {
  color: #F1E9DE !important;
  background: #3A2A1C !important;
  border-color: #3A2A1C !important;
  box-shadow: 0 10px 28px rgba(58, 42, 28, 0.22) !important;
}

#five-ways .at-five-tabs button.is-on:hover {
  color: #F1E9DE !important;
  background: #4A3726 !important;
  border-color: #4A3726 !important;
}

#five-ways .at-btn-gold {
  color: #F1E9DE !important;
  background: #3A2A1C !important;
}

#five-ways .at-btn-gold:hover {
  color: #F1E9DE !important;
  background: #4A3726 !important;
}

#mastery-system.at-funnel {
  color: #3A2A1C !important;
  background: #F8F5EE !important;
}

#proof.at-proof {
  color: #3A2A1C !important;
  background: #FFFFFF !important;
}

#proof.at-proof .at-center-heading h2,
#proof.at-proof .at-kicker {
  color: #3A2A1C !important;
}

#proof.at-proof .at-center-heading > p:last-child {
  color: rgba(58, 42, 28, 0.72) !important;
}

#cases.at-funnel {
  color: #3A2A1C !important;
  background: #C9BFB2 !important;
}

#cases .at-center-heading h2,
#cases h2,
#cases h3,
#cases h4,
#cases .at-kicker {
  color: #3A2A1C !important;
}

#cases .at-center-heading > p:last-child {
  color: rgba(58, 42, 28, 0.72) !important;
}

#who.at-funnel {
  color: #3A2A1C !important;
  background: #FFFFFF !important;
}

#who .at-kicker,
#who h2,
#who h3 {
  color: #3A2A1C !important;
}

#who .at-persona-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 8px;
}

#who .at-persona {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 220px;
  padding: 28px 24px 30px;
  border: 1px solid rgba(58, 42, 28, 0.12);
  border-radius: var(--at-card-radius, 18px);
  background: #F8F5EE;
  box-shadow: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

#who .at-persona:hover {
  transform: translateY(-4px);
  border-color: rgba(58, 42, 28, 0.28);
  background: #FFFFFF;
  box-shadow: 0 18px 40px rgba(58, 42, 28, 0.1);
}

#who .at-persona .cfm-ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin: 0 0 22px;
  border: 1px solid rgba(58, 42, 28, 0.14);
  border-radius: var(--at-chip-radius, 14px);
  background: #FFFFFF;
  color: #3A2A1C;
}

#who .at-persona .cfm-ico svg {
  width: 24px;
  height: 24px;
}

#who .at-persona h3 {
  margin: 0 0 10px;
  color: #3A2A1C !important;
  font-family: var(--at-serif, "Instrument Serif", Georgia, serif);
  font-size: clamp(22px, 2vw, 26px);
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

#who .at-persona p {
  margin: 0;
  margin-top: auto;
  color: rgba(58, 42, 28, 0.62) !important;
  font-size: 15px;
  line-height: 1.5;
}

@media (max-width: 991.98px) {
  #who .at-persona-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  #who .at-persona-grid {
    grid-template-columns: 1fr;
  }

  #who .at-persona {
    min-height: 0;
  }
}

/* Dark espresso bands (shift / final / dock / footer) */
#shift.at-funnel-alt,
.at-final {
  color: #F1E9DE !important;
  background: #3A2A1C !important;
}

#shift.at-funnel-alt .at-center-heading h2,
#shift.at-funnel-alt h2,
#shift.at-funnel-alt h3,
#shift.at-funnel-alt h4,
.at-final h2 {
  color: #F1E9DE !important;
}

#shift.at-funnel-alt .at-center-heading > p:last-child,
#shift.at-funnel-alt .at-transform li,
.at-final > .container > p:not(.at-kicker) {
  color: #C9BFB2 !important;
}

#shift.at-funnel-alt .at-kicker,
#shift.at-funnel-alt .at-kicker-dark,
#shift.at-funnel-alt .at-transform h3 {
  color: #F1E9DE !important;
}

.at-final {
  background:
    radial-gradient(600px 360px at 50% 120%, rgba(201, 191, 178, 0.12), transparent 70%),
    #3A2A1C !important;
}

.at-final-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  max-width: 920px;
  margin: 36px auto 0;
  border: 1px solid rgba(241, 233, 222, 0.35);
  overflow: hidden;
}

.at-final-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 64px;
  padding: 16px 18px;
  border: 0;
  border-right: 1px solid rgba(241, 233, 222, 0.28);
  background: transparent;
  color: #F1E9DE !important;
  font-family: var(--at-sans, Inter, system-ui, sans-serif);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.3;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background 0.18s ease, color 0.18s ease;
}

.at-final-tab:last-child {
  border-right: 0;
}

.at-final-tab:hover,
.at-final-tab:focus-visible {
  background: #F8F5EE;
  color: #3A2A1C !important;
  outline: none;
}

.at-final-tab:focus-visible {
  box-shadow: inset 0 0 0 2px #C9BFB2;
}

@media (max-width: 767.98px) {
  .at-final-tabs {
    grid-template-columns: 1fr;
  }

  .at-final-tab {
    min-height: 56px;
    border-right: 0;
    border-bottom: 1px solid rgba(241, 233, 222, 0.28);
  }

  .at-final-tab:last-child {
    border-bottom: 0;
  }
}

.at-final .at-btn-gold,
.at-dock .at-btn-gold {
  color: #F1E9DE !important;
  background: #3A2A1C !important;
  border: 1px solid #C9BFB2 !important;
}

.at-final .at-btn-gold:hover,
.at-dock .at-btn-gold:hover {
  background: #4A3726 !important;
  color: #F1E9DE !important;
}

.at-dock {
  border-top-color: rgba(201, 191, 178, 0.28) !important;
  background: rgba(58, 42, 28, 0.97) !important;
}

.at-dock-copy strong {
  color: #F1E9DE !important;
}

.at-dock-copy span {
  color: #C9BFB2 !important;
}

body.home-template-authority .footer-area {
  background: #3A2A1C !important;
  color: #F1E9DE !important;
}

body.home-template-authority .footer-area .footer-content p,
body.home-template-authority .footer-area .description,
body.home-template-authority .footer-area .footer-widget ul a,
body.home-template-authority .footer-area .copyright,
body.home-template-authority .footer-area .footer-bottom a {
  color: #C9BFB2 !important;
}

body.home-template-authority .footer-area .footer-widget h4,
body.home-template-authority .footer-area .newslater-bottom h4,
body.home-template-authority .footer-area .gradient-border-btn {
  color: #F1E9DE !important;
}

body.home-template-authority .footer-area .footer-widget ul a:hover,
body.home-template-authority .footer-area .footer-bottom a:hover {
  color: #F1E9DE !important;
}

/* Soft gold glows → espresso-tint on dark panels */
.at-home > section.at-funnel.at-funnel-alt:not(#five-ways) {
  color: #F1E9DE;
  background:
    radial-gradient(720px 380px at 8% 110%, rgba(201, 191, 178, 0.1), transparent 50%),
    #3A2A1C;
}


/* safety: remapped --at-gold is espresso; labels on dark need cream */
.at-final .at-kicker,
.at-welcome .at-kicker,
.at-shift-list span,
.at-voice > div,
.at-faq-list summary::after {
  color: var(--at-on-espresso) !important;
}


/* ===== Shared rounded card language (homepage inherits) ===== */
.at-home {
  --at-card-radius: 18px;
  --at-chip-radius: 14px;
}

.at-home .at-step,
.at-home .at-persona,
.at-home .at-clarify,
.at-home .at-problem-lead,
.at-home .at-warning-grid article,
.at-home .at-library-card,
.at-home .at-map-item,
.at-home .dl-case-card,
.at-home .dl-card,
.at-home .dl-resource-card,
.at-home .at-module,
.at-home .at-offer-card,
.at-home .at-value-pill,
.at-home .at-faq-list details,
.at-home .at-who-split article,
.at-home .at-transform > div {
  border-radius: var(--at-card-radius) !important;
}

.at-home .at-five-tabs button,
.at-home .at-finder-opt,
.at-home .at-btn,
.at-home .at-btn-gold,
.at-home .at-btn-ink,
.at-home .at-btn-outline,
.at-home .at-final-tabs,
.at-home .at-final-tab,
.at-home .at-mid-cta .at-btn-gold {
  border-radius: var(--at-chip-radius) !important;
}

.at-home .at-step > span,
.at-home .at-clarify span,
.at-home .at-warning-grid span,
.at-home .at-persona .cfm-ico,
.at-home .at-li-icon {
  border-radius: var(--at-chip-radius) !important;
}

.at-home .at-final-tabs {
  overflow: hidden;
}

.at-home .at-final-tab {
  border-radius: 0 !important;
}

.at-home .at-final-tabs .at-final-tab:first-child {
  border-radius: var(--at-chip-radius) 0 0 var(--at-chip-radius) !important;
}

.at-home .at-final-tabs .at-final-tab:last-child {
  border-radius: 0 var(--at-chip-radius) var(--at-chip-radius) 0 !important;
}

@media (max-width: 767.98px) {
  .at-home .at-final-tabs .at-final-tab:first-child {
    border-radius: var(--at-chip-radius) var(--at-chip-radius) 0 0 !important;
  }

  .at-home .at-final-tabs .at-final-tab:last-child {
    border-radius: 0 0 var(--at-chip-radius) var(--at-chip-radius) !important;
  }

  .at-home .at-final-tabs .at-final-tab:only-child {
    border-radius: var(--at-chip-radius) !important;
  }
}
