:root {
  --orange: #ea580c;
  --orange-bright: #ff6422;
  --orange-dark: #c94308;
  --orange-soft: #fff0e8;
  --nav-accent: var(--orange);
  --ink: #17181d;
  --ink-2: #252730;
  --charcoal: #171717;
  --charcoal-2: #262626;
  --paper: #ffffff;
  --mist: #f5f5f5;
  --muted: #737373;
  --line: #d4d4d4;
  --font-display: "Geologica", sans-serif;
  --font-body: "Geologica", sans-serif;
  --container: min(1180px, calc(100% - 48px));
  --promo-h: 39px;
  --header-h: 72px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  min-width: 320px;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-h) + 18px);
}

body {
  margin: 0;
  overflow-x: hidden;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 14px;
  font-variation-settings:
    "CRSV" 0,
    "SHRP" 0;
  line-height: 20px;
  -webkit-font-smoothing: antialiased;
}

body.menu-open {
  overflow: hidden;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input {
  font: inherit;
  font-variation-settings:
    "CRSV" 0,
    "SHRP" 0;
}

button {
  color: inherit;
}

svg {
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

::selection {
  background: rgb(234 88 12 / 25%);
}

:focus-visible {
  outline: 3px solid rgb(234 88 12 / 38%);
  outline-offset: 3px;
}

[hidden] {
  display: none !important;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

.container {
  width: var(--container);
  margin-inline: auto;
}

/* Announcement */
html.promo-dismissed .promo {
  display: none;
}

.promo {
  position: relative;
  z-index: 70;
  height: var(--promo-h);
  background: var(--nav-accent);
  color: #fff;
}

.promo__inner {
  position: relative;
  display: flex;
  width: min(920px, calc(100% - 64px));
  height: 100%;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-inline: auto;
  font-size: 12px;
  font-weight: 700;
}

.promo a {
  border-bottom: 1px solid rgb(255 255 255 / 70%);
  line-height: 1.2;
}

.promo button {
  position: absolute;
  right: -36px;
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
}

/* Header */
.header {
  position: sticky;
  z-index: 60;
  top: 0;
  height: var(--header-h);
  border-bottom: 1px solid #efefef;
  background: #fff;
  transition:
    height 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.header.is-scrolled {
  border-color: var(--line);
  box-shadow: 0 8px 28px rgb(20 21 26 / 8%);
}

.header__inner {
  position: relative;
  display: flex;
  width: calc(100% - 104px);
  max-width: none;
  height: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin-inline: auto;
}

.brand {
  flex: 0 0 auto;
}

.brand img {
  width: 190px;
}

.desktop-nav {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-left: auto;
}

.desktop-nav a,
.desktop-nav .nav-trigger {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 11px 13px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #353841;
  cursor: pointer;
  font-family: inherit;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.035em;
  text-transform: uppercase;
  transition:
    color 0.2s ease,
    background 0.2s ease;
}

.desktop-nav a:hover,
.desktop-nav .nav-trigger:hover,
.desktop-nav .nav-trigger[aria-expanded="true"] {
  background: #f5f5f4;
  color: var(--orange);
}

.desktop-nav svg {
  width: 11px;
  height: 11px;
  stroke-width: 1.6;
  transition: transform 0.2s ease;
}

.desktop-nav .nav-trigger[aria-expanded="true"] svg {
  transform: rotate(180deg);
}

.nav-item--mega {
  position: static;
}

.mega-menu {
  position: absolute;
  z-index: 70;
  top: calc(100% + 2px);
  left: 0;
  right: 0;
  padding-top: 10px;
}

.mega-menu[hidden] {
  display: none;
}

.mega-menu__panel {
  display: grid;
  grid-template-columns: 1.05fr 1.05fr 1fr;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow:
    0 18px 50px rgb(23 24 29 / 12%),
    0 2px 8px rgb(23 24 29 / 6%);
}

.mega-menu__col {
  padding: 22px 20px 20px;
}

.mega-menu__col + .mega-menu__col {
  border-left: 1px solid #ececec;
}

.mega-menu__col--accent {
  background: linear-gradient(180deg, #eef7f6 0%, #f4fbfa 100%);
}

.mega-menu__heading {
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e5e5e5;
  color: #525252;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 18px;
}

.mega-menu__list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mega-menu__list a {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  width: 100%;
  padding: 10px 8px;
  border-radius: 10px;
  color: inherit;
  text-align: left;
  text-transform: none;
  font-size: inherit;
  font-weight: inherit;
}

.mega-menu__list a:hover {
  background: #f7f7f6;
  color: inherit;
}

.mega-menu__col--accent .mega-menu__list a:hover {
  background: rgb(255 255 255 / 75%);
}

.mega-menu__icon {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid #e4e4e4;
  border-radius: 9px;
  background: #fff;
  color: #3f4654;
}

.mega-menu__icon svg {
  width: 16px;
  height: 16px;
  stroke-width: 1.7;
}

.mega-menu__list span {
  min-width: 0;
}

.mega-menu__list strong,
.mega-menu__title {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
  line-height: 18px;
}

.mega-menu__title > span:first-child {
  min-width: 0;
}

.mega-menu__list em {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 16px;
}

.ai-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: 24px;
  height: 15px;
  padding: 0 6px;
  border-radius: 999px;
  background: linear-gradient(
    105deg,
    #ff7a33 0%,
    var(--orange-bright) 38%,
    #0d9488 100%
  );
  background-size: 180% 100%;
  box-shadow: 0 1px 0 rgb(255 255 255 / 25%) inset;
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1;
  text-transform: uppercase;
  animation: ai-badge-shimmer 2.4s ease-in-out infinite;
}

@keyframes ai-badge-shimmer {
  0%,
  100% {
    background-position: 0% 50%;
    transform: translateY(0);
  }
  50% {
    background-position: 100% 50%;
    transform: translateY(-0.5px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ai-badge {
    animation: none;
    background-position: 50% 50%;
  }
}

.mega-menu__link,
.mega-menu__cta {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  padding: 10px 12px !important;
  color: var(--orange) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.mega-menu__cta {
  justify-content: center;
  width: auto;
  border-radius: 6px !important;
  background: var(--orange-bright) !important;
  box-shadow: 0 7px 18px rgb(234 88 12 / 18%);
  color: #fff !important;
}

.mega-menu__cta:hover {
  background: var(--orange-dark) !important;
  color: #fff !important;
}

.mega-menu__link:hover {
  background: transparent !important;
  color: var(--orange-dark) !important;
}

.mobile-nav__group {
  border-bottom: 1px solid var(--line);
}

.mobile-nav__trigger {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  padding: 14px 8px;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  text-align: left;
}

.mobile-nav__trigger svg {
  width: 12px;
  height: 12px;
  transition: transform 0.2s ease;
}

.mobile-nav__trigger[aria-expanded="true"] svg {
  transform: rotate(180deg);
}

.mobile-mega {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 0 8px 14px;
}

.mobile-mega[hidden] {
  display: none;
}

.mobile-mega__label {
  margin: 10px 0 4px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.mobile-mega a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 4px;
  border-bottom: 1px solid #f0f0f0;
  color: #353841;
  font-size: 13px;
  font-weight: 600;
}

.mobile-mega a > span:first-child {
  min-width: 0;
}

.mobile-mega .ai-badge {
  margin-left: auto;
}

.mobile-mega__all {
  margin-top: 8px;
  border-bottom: 0 !important;
  color: var(--orange) !important;
  font-weight: 800 !important;
  text-transform: uppercase;
}

.header__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 11px;
}

.language-selector,
.language-picker {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: stretch;
}

.language-picker__native {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.language-picker__trigger {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  gap: 5px;
  padding: 0 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: #525252;
  cursor: pointer;
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 16px;
  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    box-shadow 0.2s ease,
    color 0.2s ease;
}

.language-picker__trigger:hover {
  border-color: rgb(234 88 12 / 35%);
  background: var(--orange-soft);
  color: var(--orange);
}

.language-picker__trigger:focus-visible {
  border-color: var(--orange);
  background: #fff;
  box-shadow: 0 0 0 3px var(--orange-soft);
  color: var(--orange);
  outline: 0;
}

.language-picker__trigger[aria-expanded="true"] {
  border-color: var(--orange);
  background: #fff;
  box-shadow: 0 0 0 3px var(--orange-soft);
  color: var(--orange);
}

.language-picker__icon,
.language-picker__chevron {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
  stroke-width: 1.7;
}

.language-picker__chevron {
  width: 10px;
  height: 10px;
  stroke-width: 1.6;
  transition: transform 0.2s ease;
}

.language-picker__trigger[aria-expanded="true"] .language-picker__chevron {
  transform: rotate(180deg);
}

.language-picker__value {
  min-width: 1.5em;
  text-align: center;
}

.language-picker__menu {
  position: absolute;
  z-index: 120;
  top: calc(100% + 6px);
  right: 0;
  min-width: 148px;
  margin: 0;
  padding: 4px;
  border: 1px solid rgb(234 88 12 / 18%);
  border-radius: 10px;
  background: #fff;
  box-shadow:
    0 10px 28px rgb(23 24 29 / 12%),
    0 0 0 1px rgb(234 88 12 / 6%);
  list-style: none;
}

.language-picker__option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 7px;
  color: var(--ink);
  cursor: pointer;
  font-size: 12px;
  line-height: 1.2;
  transition:
    background 0.15s ease,
    color 0.15s ease;
}

.language-picker__option:hover,
.language-picker__option:focus-visible {
  background: var(--orange-soft);
  color: var(--orange);
  outline: 0;
}

.language-picker__option.is-selected,
.language-picker__option[aria-selected="true"] {
  background: rgb(234 88 12 / 10%);
  color: var(--orange);
}

.language-picker__option-code {
  min-width: 1.75em;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.language-picker__option-name {
  color: #737373;
  font-size: 11px;
  font-weight: 500;
}

.language-picker__option.is-selected .language-picker__option-name,
.language-picker__option[aria-selected="true"] .language-picker__option-name,
.language-picker__option:hover .language-picker__option-name,
.language-picker__option:focus-visible .language-picker__option-name {
  color: inherit;
}

@media (prefers-reduced-motion: reduce) {
  .language-picker__trigger,
  .language-picker__chevron,
  .language-picker__option {
    transition: none;
  }
}

.login-link {
  color: var(--orange);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.header-cta,
.mobile-nav__cta {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 9px 22px;
  border-radius: 3px;
  background: var(--orange-bright);
  box-shadow: none;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.035em;
  text-transform: uppercase;
  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

.header-cta:hover,
.mobile-nav__cta:hover {
  transform: translateY(-2px);
  background: var(--orange-dark);
}

.header-cta span {
  font-size: 17px;
}

.menu-toggle {
  display: none;
  width: 43px;
  height: 43px;
  place-content: center;
  gap: 5px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: var(--ink);
  cursor: pointer;
}

.menu-toggle span {
  display: block;
  width: 19px;
  height: 2px;
  background: #fff;
  transition:
    transform 0.2s ease,
    opacity 0.2s ease;
}

.menu-toggle[aria-expanded="true"] span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.menu-toggle[aria-expanded="true"] span:nth-child(2) {
  opacity: 0;
}

.menu-toggle[aria-expanded="true"] span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.mobile-nav {
  position: fixed;
  z-index: 58;
  inset: var(--header-h) 0 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 24px;
  background: #fff;
  box-shadow: 0 20px 50px rgb(0 0 0 / 15%);
}

.mobile-nav > a:not(.mobile-nav__cta) {
  padding: 14px 8px;
  border-bottom: 1px solid var(--line);
  font-size: 14px;
  font-weight: 700;
}

.mobile-nav__cta {
  margin-top: 12px;
}

/* Hero */
.hero {
  display: grid;
  min-height: 575px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  overflow: hidden;
}

.hero__copy {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  background:
    linear-gradient(150deg, rgb(255 255 255 / 4%), transparent 45%),
    linear-gradient(145deg, #1e1b2c, #171720 70%);
  color: #fff;
}

.hero__copy::before,
.hero__copy::after {
  position: absolute;
  border: 1px solid rgb(255 255 255 / 4%);
  content: "";
  transform: rotate(33deg);
}

.hero__copy::before {
  top: -130px;
  left: -120px;
  width: 330px;
  height: 330px;
}

.hero__copy::after {
  right: -180px;
  bottom: -190px;
  width: 410px;
  height: 410px;
}

.hero__copy-inner {
  position: relative;
  z-index: 2;
  width: min(100%, 590px);
  margin-left: max(28px, calc((100vw - 1180px) / 2));
  padding: 66px 58px 65px 0;
}

.eyebrow,
.section-kicker {
  margin: 0;
  color: var(--orange-bright);
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.hero h1 {
  max-width: 620px;
  margin: 9px 0 0;
  font-family: var(--font-display);
  font-size: clamp(38px, 4.2vw, 59px);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.98;
  text-transform: uppercase;
}

.hero h1 span {
  display: block;
  color: var(--orange-bright);
}

.hero__lead {
  max-width: 530px;
  margin: 22px 0 0;
  color: rgb(255 255 255 / 78%);
  font-size: 15px;
  line-height: 1.55;
}

.lead-form {
  margin-top: 24px;
}

.lead-form label,
.signup-card label {
  display: block;
  margin-bottom: 7px;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.lead-form__row {
  display: grid;
  grid-template-columns: 1fr 175px;
  gap: 9px;
}

.lead-form input,
.signup-card input {
  min-width: 0;
  height: 48px;
  padding: 0 15px;
  border: 2px solid transparent;
  border-radius: 4px;
  outline: 0;
  background: #fff;
  color: var(--ink);
  font-size: 13px;
}

.lead-form input:focus,
.signup-card input:focus {
  border-color: var(--orange-bright);
}

.lead-form button,
.signup-card button {
  min-height: 48px;
  padding: 10px 18px;
  border: 0;
  border-radius: 4px;
  background: var(--orange-bright);
  color: #fff;
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  transition:
    background 0.2s ease,
    transform 0.2s ease;
}

.lead-form button:hover,
.signup-card button:hover {
  transform: translateY(-1px);
  background: var(--orange-dark);
}

.form-status {
  min-height: 18px;
  margin: 7px 0 0;
  color: #fed7aa;
  font-size: 11px;
  font-weight: 600;
}

.hero__benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  margin-top: 16px;
}

.hero__benefits span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: rgb(255 255 255 / 80%);
  font-size: 12px;
  font-weight: 600;
}

.hero__benefits svg {
  width: 20px;
  height: 20px;
  padding: 3px;
  border-radius: 5px;
  background: var(--orange);
  color: #fff;
  stroke-width: 2.5;
}

.hero__visual {
  position: relative;
  display: grid;
  min-width: 0;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 80% 20%, rgb(234 88 12 / 18%), transparent 30%),
    linear-gradient(140deg, #fbfaf7, #ece9e3);
}

.hero__visual-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgb(23 24 29 / 5%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(23 24 29 / 5%) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: radial-gradient(circle at center, #000, transparent 78%);
}

.hero__orbit {
  position: absolute;
  border: 28px solid rgb(234 88 12 / 12%);
  border-radius: 50%;
}

.hero__orbit--one {
  top: -95px;
  right: -70px;
  width: 360px;
  height: 360px;
}

.hero__orbit--two {
  bottom: -165px;
  left: -95px;
  width: 420px;
  height: 420px;
  border-color: rgb(23 23 23 / 8%);
}

.hero-product {
  --hero-shift: 0px;
  position: relative;
  z-index: 2;
  width: min(94%, 740px);
  height: 460px;
  transform: translateY(var(--hero-shift));
  transition: transform 0.12s linear;
}

.hero-product__desktop,
.hero-product__phone {
  position: absolute;
  margin: 0;
}

.hero-product__desktop {
  top: 52px;
  left: -4%;
  width: 94%;
  overflow: hidden;
  border: 1px solid rgb(35 36 42 / 20%);
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 32px 70px rgb(27 24 21 / 24%);
  transform: perspective(1000px) rotateY(-4deg) rotateZ(-1deg);
}

.hero-product__desktop::after {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 55%);
  content: "";
  pointer-events: none;
}

.browser-dots {
  display: flex;
  height: 17px;
  align-items: center;
  gap: 4px;
  padding-left: 7px;
  border-bottom: 1px solid #eee;
  background: #fafafa;
}

.browser-dots i {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #d0d0d0;
}

.browser-dots i:first-child {
  background: var(--orange-bright);
}

.hero-product__desktop img {
  width: 100%;
}

.hero-product__phone {
  z-index: 4;
  right: -1%;
  bottom: -24px;
  width: 18.5%;
  filter: drop-shadow(0 24px 25px rgb(20 18 16 / 28%));
  transform: rotate(2deg);
}

.hero-product__phone img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: top center;
  border: 3px solid #17191d;
  border-radius: 22px;
}

.hero-product__badge {
  position: absolute;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 11px;
  border: 1px solid rgb(255 255 255 / 70%);
  border-radius: 8px;
  background: rgb(255 255 255 / 88%);
  box-shadow: 0 12px 30px rgb(28 26 23 / 14%);
  backdrop-filter: blur(12px);
}

.hero-product__badge--clients {
  top: 22px;
  right: 4%;
}

.hero-product__badge--ai {
  right: 17%;
  bottom: 2px;
}

.badge-icon {
  display: grid;
  width: 31px;
  height: 31px;
  place-items: center;
  border-radius: 7px;
  background: var(--orange-soft);
  color: var(--orange);
}

.badge-icon svg {
  width: 18px;
  height: 18px;
}

.badge-icon--dark {
  background: var(--ink);
  color: #fff;
  font-size: 13px;
}

.hero-product__badge small,
.hero-product__badge strong {
  display: block;
  line-height: 1.35;
}

.hero-product__badge small {
  color: #8a8d94;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.hero-product__badge strong {
  color: var(--ink);
  font-size: 10px;
}

.hero-quote {
  position: absolute;
  z-index: 8;
  right: 4%;
  bottom: 18px;
  left: 6%;
  display: grid;
  min-height: 75px;
  grid-template-columns: 116px 1fr;
  align-items: center;
  gap: 18px;
  padding: 13px 18px;
  border: 1px solid #dedede;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 35px rgb(28 26 23 / 15%);
}

.hero-quote__rating {
  padding-right: 17px;
  border-right: 1px solid #e5e5e5;
  color: var(--orange-bright);
  font-size: 19px;
  letter-spacing: 2px;
}

.hero-quote p {
  margin: 0;
  color: #2e3037;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.hero-quote > span {
  grid-column: 2;
  margin-top: -18px;
  color: #858891;
  font-size: 9px;
}

/* Social proof */
.proof {
  position: relative;
  padding: 72px 0 78px;
  overflow: hidden;
  border-bottom: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
}

.proof::before {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgb(23 24 29 / 4%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(23 24 29 / 4%) 1px, transparent 1px);
  background-size: 42px 42px;
  content: "";
  mask-image: linear-gradient(180deg, rgb(0 0 0 / 35%), transparent 88%);
  pointer-events: none;
}

.proof__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 42px;
}

.proof__heading {
  display: grid;
  max-width: 760px;
  gap: 14px;
}

.proof__kicker {
  color: var(--orange);
}

.proof__heading h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(34px, 4.4vw, 56px);
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1.02;
}

.proof__heading h2 span {
  display: block;
  color: var(--orange-bright);
}

.proof__heading > p {
  margin: 0;
  max-width: 54ch;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.65;
}

.proof__partners {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.proof__partner {
  display: grid;
  gap: 18px;
  justify-items: start;
  min-height: 210px;
  padding: 28px 24px 30px;
  border-right: 1px solid var(--line);
  animation: proofRise 0.7s ease both;
}

.proof__partner:last-child {
  border-right: 0;
}

.proof__partner:nth-child(1) { animation-delay: 0.05s; }
.proof__partner:nth-child(2) { animation-delay: 0.12s; }
.proof__partner:nth-child(3) { animation-delay: 0.19s; }
.proof__partner:nth-child(4) { animation-delay: 0.26s; }

.proof__mark {
  display: flex;
  width: 100%;
  min-height: 88px;
  align-items: center;
  justify-content: flex-start;
}

.proof__mark img {
  display: block;
  width: auto;
  max-width: min(100%, 168px);
  height: 58px;
  object-fit: contain;
  filter: drop-shadow(0 8px 18px rgb(23 24 29 / 10%));
  transition: transform 0.35s ease, filter 0.35s ease;
}

.proof__partner:nth-child(2) .proof__mark img {
  height: 76px;
}

.proof__partner:nth-child(4) .proof__mark img {
  height: 72px;
}

.proof__partner:hover .proof__mark img {
  transform: translateY(-3px) scale(1.03);
  filter: drop-shadow(0 16px 28px rgb(255 100 34 / 22%));
}

.proof__meta {
  display: grid;
  gap: 5px;
}

.proof__meta strong {
  color: var(--ink);
  font-family: var(--font-display);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.25;
}

.proof__meta span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.4;
}

@keyframes proofRise {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .proof__partner {
    animation: none;
  }

  .proof__partner:hover .proof__mark img {
    transform: none;
  }
}

/* Trust / audience */
.trust {
  padding: 78px 0 88px;
  border-bottom: 1px solid #e5e5e5;
  background:
    radial-gradient(circle at 80% 12%, rgb(255 100 34 / 9%), transparent 30%),
    #fff;
}

.audience-heading {
  display: grid;
  max-width: 920px;
  grid-template-columns: 1fr 0.72fr;
  gap: 10px 58px;
  align-items: end;
  margin-bottom: 35px;
}

.audience-heading .section-kicker {
  grid-column: 1 / -1;
}

.audience-heading h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(32px, 4.1vw, 52px);
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1.02;
}

.audience-heading h2 span {
  display: block;
  color: var(--orange);
}

.audience-heading > p:last-child {
  margin: 0 0 3px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}

.audience-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 13px;
  margin-top: 8px;
}

.audience-card {
  position: relative;
  display: flex;
  min-height: 330px;
  flex-direction: column;
  padding: 21px;
  overflow: hidden;
  border: 1px solid #e5e5e5;
  border-radius: 13px;
  background: #fff;
  transition:
    transform 0.25s ease,
    border-color 0.25s ease,
    box-shadow 0.25s ease;
}

.audience-card:hover {
  transform: translateY(-5px);
  border-color: rgb(234 88 12 / 38%);
  box-shadow: 0 20px 44px rgb(23 24 29 / 9%);
}

.audience-card--accent {
  border-color: rgb(234 88 12 / 22%);
  background: var(--orange-soft);
}

.audience-card--dark {
  border-color: var(--ink);
  background: var(--ink);
  color: #fff;
}

.audience-card__number {
  position: absolute;
  top: 20px;
  right: 20px;
  color: #c7c7c7;
  font-size: 9px;
  font-weight: 800;
}

.audience-card--dark .audience-card__number {
  color: rgb(255 255 255 / 30%);
}

.audience-card__icon {
  display: grid;
  width: 54px;
  height: 54px;
  place-items: center;
  margin-bottom: 40px;
  border: 1px solid #e4e4e4;
  border-radius: 14px;
  background: #f7f7f7;
  color: var(--orange);
}

.audience-card--accent .audience-card__icon {
  border-color: rgb(234 88 12 / 18%);
  background: #fff;
}

.audience-card--dark .audience-card__icon {
  border-color: rgb(255 255 255 / 13%);
  background: rgb(255 255 255 / 6%);
}

.audience-card__icon svg {
  width: 29px;
  height: 29px;
  stroke-width: 1.7;
}

.audience-card small {
  display: block;
  color: var(--orange);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.audience-card h3 {
  margin: 8px 0 10px;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.25;
}

.audience-card--dark h3 {
  color: #fff;
}

.audience-card p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.55;
}

.audience-card--dark p {
  color: rgb(255 255 255 / 54%);
}

.audience-card > strong {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: auto;
  padding-top: 25px;
  color: var(--orange);
  font-size: 10px;
  text-transform: uppercase;
}

.audience-card > strong span {
  font-size: 16px;
  transition: transform 0.2s ease;
}

.audience-card:hover > strong span {
  transform: translateX(4px);
}

/* Feature matrix */
.features {
  padding: 70px 0 76px;
  background: var(--mist);
}

.section-heading {
  max-width: 760px;
  margin: 0 auto 58px;
  text-align: center;
}

.section-heading h2,
.delivery__heading h2,
.product-showcase h2,
.signup-band h2 {
  margin: 8px 0 0;
  font-family: var(--font-display);
  font-size: clamp(29px, 4vw, 47px);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.04;
  text-transform: uppercase;
}

.section-heading h2 span {
  color: var(--orange);
}

.section-heading__copy {
  max-width: 650px;
  margin: 18px auto 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 20px;
}

.feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 50px;
}

.feature {
  min-height: 405px;
  padding: 6px 0 44px;
  border-bottom: 1px solid #d7d9de;
}

.feature:nth-child(n + 4) {
  border-bottom: 0;
}

.feature__icon {
  display: block;
  width: 58px;
  height: 58px;
  margin-bottom: 19px;
  color: var(--orange);
}

.feature__icon svg {
  width: 100%;
  height: 100%;
  stroke-width: 2;
}

.feature h3 {
  margin: 0;
  color: var(--ink);
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 28px;
}

.feature p {
  max-width: 330px;
  margin: 12px 0 17px;
  color: #353740;
  font-size: 14px;
  line-height: 20px;
}

.feature__tag {
  display: block;
  margin: -4px 0 8px;
  color: var(--orange);
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}

.feature__highlights {
  display: grid;
  gap: 7px;
  margin: 0 0 21px;
}

.feature__highlights li {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  padding-left: 15px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
}

.feature__highlights li::before {
  position: absolute;
  top: 6px;
  left: 1px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--orange);
  content: "";
}

.feature__highlights .ai-badge {
  transform: translateY(-0.5px);
}

.feature a,
.delivery-card a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--orange-bright);
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}

.feature a span,
.delivery-card a span {
  font-size: 18px;
  transition: transform 0.2s ease;
}

.feature a:hover span,
.delivery-card a:hover span {
  transform: translateX(4px);
}

.feature:nth-child(n + 4) {
  padding-top: 45px;
}

.features-all {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 18px;
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.features-all strong,
.features-all > div > span {
  display: block;
}

.features-all strong {
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
}

.features-all > div > span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 12px;
  line-height: 16px;
}

.features-all > a {
  display: inline-flex;
  min-height: 40px;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
  padding: 8px 15px;
  border-radius: 6px;
  background: var(--orange);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  transition:
    background 0.2s ease,
    transform 0.2s ease;
}

.features-all > a:hover {
  transform: translateY(-2px);
  background: var(--orange-dark);
}

/* Consolidated AI feature tabs (homepage) */
.ai-features {
  position: relative;
  overflow: hidden;
  padding: 82px 0 72px;
  background:
    radial-gradient(circle at 88% 5%, rgb(234 88 12 / 24%), transparent 28%),
    radial-gradient(circle at 8% 90%, rgb(234 88 12 / 10%), transparent 24%),
    var(--charcoal);
  color: #fff;
}

.ai-features::before {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgb(255 255 255 / 2.8%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 255 255 / 2.8%) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 85%);
  content: "";
  pointer-events: none;
}

.ai-features > .container {
  position: relative;
  z-index: 1;
}

.ai-features__intro {
  max-width: 760px;
  margin: 0 auto 32px;
  text-align: center;
}

.ai-features__intro h2 {
  margin: 9px 0 0;
  font-family: var(--font-display);
  font-size: clamp(34px, 4.6vw, 56px);
  font-weight: 800;
  line-height: 1.04;
  text-transform: uppercase;
}

.ai-features__intro h2 span {
  display: block;
  color: var(--orange-bright);
}

.ai-features__intro > p:last-child {
  max-width: 560px;
  margin: 16px auto 0;
  color: rgb(255 255 255 / 66%);
  font-size: 14px;
  line-height: 1.55;
}

.ai-features__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  max-width: 820px;
  margin: 0 auto 36px;
  padding: 6px;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 14px;
  background: rgb(0 0 0 / 28%);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 4%);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}

.ai-features__tab {
  flex: 1 1 auto;
  min-height: 44px;
  min-width: max-content;
  padding: 11px 18px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: rgb(255 255 255 / 55%);
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: -0.01em;
  line-height: 1.25;
  white-space: nowrap;
  transition:
    background 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease;
}

.ai-features__tab:hover {
  color: #fff;
  background: rgb(255 255 255 / 6%);
}

.ai-features__tab:focus-visible {
  outline: 3px solid rgb(234 88 12 / 45%);
  outline-offset: 2px;
}

.ai-features__tab.is-active {
  background: var(--orange);
  color: #fff;
  box-shadow: 0 10px 22px rgb(234 88 12 / 28%);
}

.ai-features__panels {
  position: relative;
  min-width: 0;
}

.ai-feature-panel[hidden] {
  display: none !important;
}

.ai-feature-panel.is-active {
  display: block;
  animation: ai-feature-panel-in 0.38s ease both;
}

@keyframes ai-feature-panel-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

/* Light-theme panel headers adapt to the shared dark shell */
.ai-features .paper-transform__header h2,
.ai-features .body-scan-transform__header h2 {
  color: #fff;
}

.ai-features .paper-transform__header h2 span,
.ai-features .body-scan-transform__header h2 span {
  color: var(--orange-bright);
}

.ai-features .paper-transform__header > div:last-child > p,
.ai-features .body-scan-transform__header > div:last-child > p {
  color: rgb(255 255 255 / 66%);
}

.ai-features .paper-transform__header > div:last-child > a,
.ai-features .body-scan-transform__header > div:last-child > a {
  color: #fb923c;
}

.ai-features .paper-transform__header > div:last-child > a:hover,
.ai-features .body-scan-transform__header > div:last-child > a:hover {
  color: #fff;
}

.ai-features .paper-demo-steps {
  border-color: rgb(255 255 255 / 9%);
  background: rgb(255 255 255 / 9%);
}

.ai-features .paper-demo-steps span {
  background: #1e1e1e;
  color: rgb(255 255 255 / 58%);
}

.ai-features .paper-demo-steps b {
  color: var(--orange-bright);
}

.ai-features .body-scan-demo-steps {
  border-color: rgb(255 255 255 / 9%);
  background: rgb(255 255 255 / 9%);
}

.ai-features .body-scan-demo-steps span {
  background: #1e1e1e;
  color: rgb(255 255 255 / 58%);
}

.ai-features .body-scan-demo-steps b {
  color: var(--orange-bright);
}

@media (max-width: 720px) {
  .ai-features__tabs {
    flex-wrap: nowrap;
    justify-content: flex-start;
    max-width: none;
    margin-bottom: 28px;
  }

  .ai-features__tab {
    flex: 0 0 auto;
  }

  .ai-features__intro {
    margin-bottom: 24px;
    text-align: start;
  }

  .ai-features__intro > p:last-child {
    margin-inline: 0;
  }
}

@media (max-width: 560px) {
  .ai-features {
    padding: 60px 0 54px;
  }

  .ai-features__intro h2 {
    font-size: clamp(31px, 9.5vw, 40px);
  }

  .ai-features__tab {
    padding: 10px 14px;
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ai-feature-panel.is-active {
    animation: none;
  }

  .ai-features__tab {
    transition: none;
  }
}

html[dir="rtl"] .ai-features__intro,
html[dir="rtl"] .ai-features__tab {
  text-align: right;
}

/* AI raw text transformation */
.ai-transform {
  position: relative;
  overflow: hidden;
  padding: 82px 0 72px;
  background:
    radial-gradient(circle at 88% 5%, rgb(234 88 12 / 24%), transparent 28%),
    radial-gradient(circle at 8% 90%, rgb(234 88 12 / 10%), transparent 24%),
    var(--charcoal);
  color: #fff;
}

.ai-transform::before {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgb(255 255 255 / 2.8%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 255 255 / 2.8%) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 85%);
  content: "";
  pointer-events: none;
}

.ai-transform > .container {
  position: relative;
  z-index: 1;
}

.ai-transform__header {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
  align-items: end;
  gap: 60px;
  margin-bottom: 40px;
}

.ai-transform__header h2 {
  max-width: 720px;
  margin: 9px 0 0;
  font-family: var(--font-display);
  font-size: clamp(34px, 4.6vw, 58px);
  font-weight: 800;
  line-height: 1.04;
  text-transform: uppercase;
}

.ai-transform__header h2 span {
  display: block;
  color: var(--orange-bright);
}

.ai-transform__header > div:last-child > p {
  max-width: 530px;
  margin: 0;
  color: rgb(255 255 255 / 66%);
  font-size: 14px;
  line-height: 20px;
}

.ai-transform__header > div:last-child > a {
  display: inline-flex;
  margin-top: 16px;
  color: #fb923c;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}

.ai-transform__header > div:last-child > a:hover {
  color: #fff;
}

.ai-demo {
  display: grid;
  grid-template-columns: minmax(290px, 0.74fr) 64px minmax(560px, 1.26fr);
  align-items: center;
  gap: 16px;
}

.ai-demo__source,
.ai-demo__result {
  min-width: 0;
}

.ai-demo__source {
  padding: 22px;
  border: 1px solid rgb(255 255 255 / 11%);
  border-radius: 16px;
  background: rgb(255 255 255 / 4%);
  box-shadow: 0 24px 55px rgb(0 0 0 / 18%);
}

.ai-demo__result {
  padding: 16px;
  border-radius: 16px;
  background: #f5f5f5;
  box-shadow: 0 30px 70px rgb(0 0 0 / 34%);
  color: var(--ink);
}

.ai-demo__panel-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}

.ai-demo__panel-heading > span {
  display: grid;
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 7px;
  background: var(--orange);
  color: #fff;
  font-size: 10px;
  font-weight: 600;
}

.ai-demo__panel-heading small,
.ai-demo__panel-heading strong {
  display: block;
}

.ai-demo__panel-heading small {
  color: rgb(255 255 255 / 46%);
  font-size: 10px;
  font-weight: 500;
  line-height: 16px;
  text-transform: uppercase;
}

.ai-demo__panel-heading strong {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}

.ai-demo__panel-heading--result small {
  color: var(--muted);
}

.ai-demo__panel-heading--result strong {
  color: var(--ink);
}

.ai-prompt {
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 13%);
  border-radius: 9px;
  background: #0f0f0f;
}

.ai-prompt__bar,
.ai-prompt__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 12px;
  color: rgb(255 255 255 / 45%);
  font-size: 10px;
  font-weight: 500;
  line-height: 16px;
}

.ai-prompt__bar {
  border-bottom: 1px solid rgb(255 255 255 / 8%);
}

.ai-prompt__bar span:first-child {
  color: #fb923c;
  font-weight: 600;
  text-transform: uppercase;
}

.ai-prompt__text {
  display: flex;
  min-height: 124px;
  align-items: flex-start;
  padding: 18px 16px;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 28px;
}

.ai-prompt__text i {
  width: 2px;
  height: 22px;
  flex: 0 0 auto;
  margin: 2px 0 0 2px;
  background: var(--orange-bright);
  animation: ai-cursor 0.75s steps(1) infinite;
}

.ai-prompt__footer {
  border-top: 1px solid rgb(255 255 255 / 8%);
}

.ai-prompt__footer button {
  padding: 4px 7px;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 5px;
  background: transparent;
  color: rgb(255 255 255 / 72%);
  cursor: pointer;
  font-size: 10px;
  font-weight: 500;
}

.ai-prompt__footer button:hover {
  border-color: var(--orange);
  color: #fff;
}

.ai-agent-status {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  padding: 11px 12px;
  border: 1px solid rgb(234 88 12 / 24%);
  border-radius: 8px;
  background: rgb(234 88 12 / 8%);
}

.ai-agent-status__spark {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 7px;
  background: var(--orange);
  box-shadow: 0 0 22px rgb(234 88 12 / 30%);
  color: #fff;
  font-size: 12px;
}

.ai-agent-status small,
.ai-agent-status strong {
  display: block;
}

.ai-agent-status small {
  color: rgb(255 255 255 / 42%);
  font-size: 9px;
  font-weight: 500;
  line-height: 16px;
  text-transform: uppercase;
}

.ai-agent-status strong {
  color: #fff;
  font-size: 11px;
  font-weight: 500;
  line-height: 16px;
}

.ai-agent-status__dots {
  display: flex;
  gap: 3px;
  opacity: 0;
}

.ai-agent-status__dots i {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #fb923c;
}

.ai-demo.is-analyzing .ai-agent-status__dots {
  opacity: 1;
}

.ai-demo.is-analyzing .ai-agent-status__dots i {
  animation: ai-dot 0.9s ease-in-out infinite;
}

.ai-demo.is-analyzing .ai-agent-status__dots i:nth-child(2) {
  animation-delay: 0.15s;
}

.ai-demo.is-analyzing .ai-agent-status__dots i:nth-child(3) {
  animation-delay: 0.3s;
}

.ai-detection {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 27px;
  margin-top: 12px;
}

.ai-detection span {
  padding: 5px 7px;
  border: 1px solid rgb(255 255 255 / 10%);
  border-radius: 9999px;
  background: rgb(255 255 255 / 5%);
  color: rgb(255 255 255 / 68%);
  font-size: 9px;
  font-weight: 500;
  line-height: 16px;
}

.ai-demo.is-sequenced:not(.is-analyzing):not(.is-complete) .ai-detection span {
  opacity: 0;
  transform: translateY(5px);
}

.ai-demo.is-analyzing .ai-detection span {
  animation: ai-detect 0.35s ease both;
}

.ai-demo.is-analyzing .ai-detection span:nth-child(2) {
  animation-delay: 0.35s;
}

.ai-demo.is-analyzing .ai-detection span:nth-child(3) {
  animation-delay: 0.7s;
}

.ai-demo__bridge {
  position: relative;
  display: grid;
  width: 64px;
  height: 64px;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 50%;
  background: #202020;
  color: #fb923c;
  font-size: 12px;
  font-weight: 700;
}

.ai-demo__bridge::before,
.ai-demo__bridge::after {
  position: absolute;
  top: 50%;
  width: 17px;
  height: 1px;
  background: rgb(255 255 255 / 13%);
  content: "";
}

.ai-demo__bridge::before {
  right: 100%;
}

.ai-demo__bridge::after {
  left: 100%;
}

.ai-demo__bridge i {
  position: absolute;
  inset: -1px;
  transform: rotate(-90deg);
  border: 2px solid transparent;
  border-top-color: var(--orange);
  border-radius: 50%;
  opacity: 0;
}

.ai-demo.is-analyzing .ai-demo__bridge {
  box-shadow: 0 0 25px rgb(234 88 12 / 22%);
}

.ai-demo.is-analyzing .ai-demo__bridge i {
  opacity: 1;
  animation: ai-spin 0.9s linear infinite;
}

.ai-result {
  padding: 14px;
  border-radius: 12px;
  background: #ededed;
}

.ai-result__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.ai-result__toolbar > strong {
  color: #525252;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

.ai-result__toolbar > span {
  padding: 7px 11px;
  border: 1px solid #d4d4d4;
  border-radius: 6px;
  background: #fff;
  color: #525252;
  font-size: 11px;
  font-weight: 500;
  line-height: 16px;
}

.ai-result__items {
  display: grid;
  gap: 8px;
}

.ai-result-row {
  padding: 10px 12px;
  border: 1px solid #d4d4d4;
  border-radius: 6px;
  background: #fff;
  transition:
    opacity 0.45s ease,
    transform 0.45s cubic-bezier(0.2, 0.75, 0.2, 1),
    border-color 0.3s ease;
}

.ai-result-row__title {
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
}

.ai-result-row__handle {
  color: #737373;
  font-size: 12px;
}

.ai-result-row__title > strong {
  min-width: 0;
  color: #171717;
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
}

.ai-result-row__title > strong b {
  margin-right: 3px;
  font-weight: 600;
}

.ai-result-row__title > strong small {
  margin-right: 7px;
  color: #525252;
  font-size: 11px;
  font-weight: 500;
}

.ai-result-row__title > strong em {
  display: inline-flex;
  margin-left: 7px;
  padding: 2px 5px;
  border-radius: 9999px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 8px;
  font-style: normal;
  font-weight: 600;
  line-height: 12px;
}

.ai-result-row__title button {
  padding: 4px 6px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: var(--orange);
  cursor: pointer;
  font-size: 9px;
  font-weight: 600;
}

.ai-result-row__title button:hover {
  background: var(--orange-soft);
}

.ai-result-row__macros {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
  margin: 8px 0 0 32px;
}

.ai-result-row__macros span {
  min-width: 0;
}

.ai-result-row__macros small,
.ai-result-row__macros strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-result-row__macros small {
  color: #737373;
  font-size: 8px;
  font-weight: 400;
  line-height: 12px;
}

.ai-result-row__macros strong {
  color: #171717;
  font-size: 10px;
  font-weight: 500;
  line-height: 16px;
}

.ai-result__total {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) repeat(3, auto) auto;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 7px;
  background: #171717;
  color: #fff;
  transition:
    opacity 0.45s ease 0.45s,
    transform 0.45s ease 0.45s;
}

.ai-result__total div small,
.ai-result__total div strong {
  display: block;
}

.ai-result__total div small {
  color: rgb(255 255 255 / 47%);
  font-size: 8px;
  font-weight: 500;
  line-height: 12px;
  text-transform: uppercase;
}

.ai-result__total div strong {
  margin-top: 2px;
  font-size: 15px;
  font-weight: 600;
  line-height: 20px;
}

.ai-result__total > span {
  color: rgb(255 255 255 / 56%);
  font-size: 8px;
  line-height: 12px;
}

.ai-result__total > span b {
  display: block;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  line-height: 16px;
}

.ai-result__total button {
  min-height: 34px;
  padding: 7px 9px;
  border: 0;
  border-radius: 5px;
  background: var(--orange);
  color: #fff;
  cursor: pointer;
  font-size: 9px;
  font-weight: 600;
  line-height: 16px;
}

.ai-result__total button:hover {
  background: var(--orange-dark);
}

.ai-result__note {
  margin: 9px 2px 0;
  color: #737373;
  font-size: 8px;
  line-height: 12px;
}

.ai-demo.is-sequenced:not(.is-complete) .ai-result-row,
.ai-demo.is-sequenced:not(.is-complete) .ai-result__total {
  opacity: 0;
  transform: translateY(12px) scale(0.985);
}

.ai-demo.is-sequenced.is-complete .ai-result-row {
  border-color: rgb(234 88 12 / 25%);
}

.ai-demo.is-sequenced.is-complete .ai-result-row,
.ai-demo.is-sequenced.is-complete .ai-result__total {
  opacity: 1;
  transform: none;
}

.ai-demo.is-sequenced.is-complete .ai-result-row:nth-child(2) {
  transition-delay: 0.14s;
}

.ai-demo.is-sequenced.is-complete .ai-result-row:nth-child(3) {
  transition-delay: 0.28s;
}

.ai-demo-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  overflow: hidden;
  margin-top: 24px;
  border: 1px solid rgb(255 255 255 / 9%);
  border-radius: 8px;
  background: rgb(255 255 255 / 9%);
}

.ai-demo-steps span {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 52px;
  padding: 10px 14px;
  background: #1e1e1e;
  color: rgb(255 255 255 / 58%);
  font-size: 10px;
  font-weight: 500;
  line-height: 16px;
}

.ai-demo-steps b {
  color: var(--orange-bright);
  font-size: 9px;
  font-weight: 600;
}

@keyframes ai-cursor {
  0%,
  45% {
    opacity: 1;
  }
  46%,
  100% {
    opacity: 0;
  }
}

@keyframes ai-dot {
  0%,
  60%,
  100% {
    transform: translateY(0);
    opacity: 0.35;
  }
  30% {
    transform: translateY(-3px);
    opacity: 1;
  }
}

@keyframes ai-detect {
  from {
    opacity: 0;
    transform: translateY(5px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes ai-spin {
  to {
    transform: rotate(270deg);
  }
}

/* AI paper diet transformation */
.paper-transform {
  position: relative;
  overflow: hidden;
  padding: 82px 0 72px;
  background:
    radial-gradient(circle at 10% 12%, rgb(234 88 12 / 8%), transparent 24%),
    #fff;
}

.paper-transform__header {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
  align-items: end;
  gap: 60px;
  margin-bottom: 40px;
}

.paper-transform__header h2 {
  max-width: 760px;
  margin: 9px 0 0;
  font-family: var(--font-display);
  font-size: clamp(34px, 4.6vw, 58px);
  font-weight: 800;
  line-height: 1.04;
  text-transform: uppercase;
}

.paper-transform__header h2 span {
  display: block;
  color: var(--orange);
}

.paper-transform__header > div:last-child > p {
  max-width: 540px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 20px;
}

.paper-transform__header > div:last-child > a {
  display: inline-flex;
  margin-top: 16px;
  color: var(--orange);
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}

.paper-transform__header > div:last-child > a:hover {
  color: var(--orange-dark);
}

.paper-demo {
  display: grid;
  grid-template-columns: minmax(285px, 0.66fr) 64px minmax(620px, 1.34fr);
  align-items: center;
  gap: 16px;
}

.paper-demo__source,
.paper-demo__result {
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 16px;
}

.paper-demo__source {
  background: #f5f5f5;
  box-shadow: 0 22px 45px rgb(24 24 24 / 9%);
}

.paper-demo__result {
  background: #fff;
  box-shadow: 0 30px 65px rgb(24 24 24 / 12%);
}

.paper-demo__panel-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
}

.paper-demo__panel-heading > span {
  display: grid;
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 7px;
  background: var(--orange);
  color: #fff;
  font-size: 10px;
  font-weight: 600;
}

.paper-demo__panel-heading small,
.paper-demo__panel-heading strong {
  display: block;
}

.paper-demo__panel-heading small {
  color: var(--muted);
  font-size: 9px;
  font-weight: 500;
  line-height: 16px;
  text-transform: uppercase;
}

.paper-demo__panel-heading strong {
  color: var(--ink);
  font-size: 13px;
  font-weight: 600;
  line-height: 20px;
}

.paper-document {
  position: relative;
  overflow: hidden;
  width: min(100%, 340px);
  max-height: 390px;
  margin: 0 auto;
  border: 1px solid #c9c9c9;
  border-radius: 9px;
  background: #e7e4dc;
  box-shadow: 0 18px 32px rgb(24 24 24 / 17%);
}

.paper-document > img {
  width: 100%;
  transform: scale(1.01);
}

.paper-document__shade {
  position: absolute;
  inset: 0;
  background: rgb(23 23 23 / 36%);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
}

.paper-document__scan {
  position: absolute;
  z-index: 2;
  inset: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

.paper-document__scan::before {
  position: absolute;
  right: 12px;
  left: 12px;
  height: 2px;
  background: var(--orange-bright);
  box-shadow:
    0 0 12px rgb(234 88 12 / 90%),
    0 0 34px rgb(234 88 12 / 60%);
  content: "";
}

.paper-document__scan i {
  position: absolute;
  right: 12px;
  left: 12px;
  height: 48px;
  transform: translateY(-48px);
  background: linear-gradient(to bottom, rgb(234 88 12 / 25%), transparent);
}

.paper-demo.is-scanning .paper-document__shade {
  opacity: 1;
}

.paper-demo.is-scanning .paper-document__scan {
  opacity: 1;
}

.paper-demo.is-scanning .paper-document__scan::before {
  animation: paper-scan-line 2.4s ease-in-out infinite;
}

.paper-demo.is-scanning .paper-document__scan i {
  animation: paper-scan-glow 2.4s ease-in-out infinite;
}

.paper-document figcaption {
  position: absolute;
  z-index: 3;
  right: 9px;
  bottom: 9px;
  left: 9px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 7px 9px;
  border: 1px solid rgb(255 255 255 / 20%);
  border-radius: 6px;
  background: rgb(17 17 17 / 82%);
  backdrop-filter: blur(8px);
  color: #fff;
}

.paper-document figcaption span {
  font-size: 9px;
  font-weight: 600;
  line-height: 16px;
}

.paper-document figcaption strong {
  color: rgb(255 255 255 / 58%);
  font-size: 8px;
  font-weight: 500;
  line-height: 12px;
}

.paper-agent-status {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 9px;
  margin-top: 13px;
  padding: 10px 11px;
  border: 1px solid rgb(234 88 12 / 25%);
  border-radius: 7px;
  background: var(--orange-soft);
}

.paper-agent-status > span {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  border-radius: 7px;
  background: var(--orange);
  color: #fff;
  font-size: 11px;
}

.paper-agent-status small,
.paper-agent-status strong {
  display: block;
}

.paper-agent-status small {
  color: #a84a18;
  font-size: 8px;
  font-weight: 500;
  line-height: 12px;
  text-transform: uppercase;
}

.paper-agent-status strong {
  color: #713612;
  font-size: 10px;
  font-weight: 600;
  line-height: 16px;
}

.paper-agent-status > i {
  width: 16px;
  height: 16px;
  border: 2px solid rgb(234 88 12 / 24%);
  border-top-color: var(--orange);
  border-radius: 50%;
  opacity: 0;
}

.paper-demo.is-scanning .paper-agent-status > i,
.paper-demo.is-structuring .paper-agent-status > i {
  opacity: 1;
  animation: paper-spin 0.8s linear infinite;
}

.paper-extracted {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  min-height: 50px;
  margin-top: 11px;
}

.paper-extracted span {
  padding: 5px 7px;
  border: 1px solid #d4d4d4;
  border-radius: 9999px;
  background: #fff;
  color: #525252;
  font-size: 8px;
  font-weight: 500;
  line-height: 12px;
  transition:
    opacity 0.35s ease,
    transform 0.35s ease;
}

.paper-demo.is-sequenced:not(.is-structured):not(.is-complete) .paper-extracted span {
  opacity: 0;
  transform: translateY(5px);
}

.paper-demo.is-structured .paper-extracted span,
.paper-demo.is-complete .paper-extracted span {
  opacity: 1;
  transform: none;
}

.paper-demo.is-structured .paper-extracted span:nth-child(2) {
  transition-delay: 0.12s;
}

.paper-demo.is-structured .paper-extracted span:nth-child(3) {
  transition-delay: 0.24s;
}

.paper-demo.is-structured .paper-extracted span:nth-child(4) {
  transition-delay: 0.36s;
}

.paper-replay {
  margin-top: 8px;
  padding: 5px 8px;
  border: 1px solid #d4d4d4;
  border-radius: 5px;
  background: #fff;
  color: #525252;
  cursor: pointer;
  font-size: 9px;
  font-weight: 500;
}

.paper-replay:hover {
  border-color: var(--orange);
  color: var(--orange);
}

.paper-demo__bridge {
  position: relative;
  display: grid;
  width: 64px;
  height: 64px;
  place-items: center;
  border: 1px solid #d4d4d4;
  border-radius: 50%;
  background: #fff;
  color: var(--orange);
  font-size: 12px;
  font-weight: 700;
}

.paper-demo__bridge::before,
.paper-demo__bridge::after {
  position: absolute;
  top: 50%;
  width: 17px;
  height: 1px;
  background: #d4d4d4;
  content: "";
}

.paper-demo__bridge::before {
  right: 100%;
}

.paper-demo__bridge::after {
  left: 100%;
}

.paper-demo__bridge i {
  position: absolute;
  inset: -1px;
  transform: rotate(-90deg);
  border: 2px solid transparent;
  border-top-color: var(--orange);
  border-radius: 50%;
  opacity: 0;
}

.paper-demo.is-scanning .paper-demo__bridge i,
.paper-demo.is-structuring .paper-demo__bridge i {
  opacity: 1;
  animation: paper-spin 0.8s linear infinite;
}

.meal-plan-ui {
  padding: 13px;
  border: 1px solid #d4d4d4;
  border-radius: 10px;
  background: #fff;
}

.meal-plan-ui__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 10px;
}

.meal-plan-ui__topbar > strong {
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
}

.meal-plan-ui__topbar > div {
  display: flex;
  gap: 5px;
}

.meal-plan-ui__topbar button {
  padding: 4px 7px;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  background: #fff;
  color: #525252;
  font-size: 8px;
  font-weight: 500;
}

.meal-plan-ui__assignment {
  display: grid;
  grid-template-columns: 1fr 1.2fr 0.8fr;
  gap: 7px;
  padding: 9px;
  border-radius: 6px;
  background: #f5f5f5;
}

.meal-plan-ui__assignment span {
  min-width: 0;
}

.meal-plan-ui__assignment small,
.meal-plan-ui__assignment strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.meal-plan-ui__assignment small {
  color: #737373;
  font-size: 7px;
  font-weight: 500;
  line-height: 12px;
  text-transform: uppercase;
}

.meal-plan-ui__assignment strong {
  margin-top: 2px;
  color: #171717;
  font-size: 9px;
  font-weight: 500;
  line-height: 16px;
}

.meal-plan-ui__week {
  display: grid;
  grid-template-columns: auto auto auto 1fr;
  align-items: center;
  gap: 7px;
  padding: 11px 2px 8px;
}

.meal-plan-ui__week button {
  display: grid;
  width: 22px;
  height: 22px;
  place-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: #737373;
  font-size: 17px;
}

.meal-plan-ui__week > strong {
  color: #525252;
  font-size: 9px;
  font-weight: 500;
}

.meal-plan-ui__week label {
  display: flex;
  align-items: center;
  justify-self: end;
  gap: 5px;
  color: #737373;
  font-size: 7px;
  font-weight: 500;
}

.meal-plan-ui__week label i {
  position: relative;
  width: 25px;
  height: 14px;
  border-radius: 9999px;
  background: #d4d4d4;
}

.meal-plan-ui__week label i::after {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fff;
  content: "";
}

.meal-plan-days {
  display: grid;
  gap: 7px;
}

.meal-plan-day {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: stretch;
  gap: 6px;
  transition:
    opacity 0.42s ease,
    transform 0.42s cubic-bezier(0.2, 0.75, 0.2, 1);
}

.meal-plan-day > header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  background: #f5f5f5;
}

.meal-plan-day > header span {
  color: #525252;
  font-size: 8px;
  font-weight: 600;
  line-height: 12px;
}

.meal-plan-day > header small {
  color: #737373;
  font-size: 7px;
  line-height: 12px;
}

.meal-plan-day > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
  min-height: 55px;
  padding: 6px;
  border-radius: 5px;
  background: #f5f5f5;
}

.meal-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: 6px 7px;
  border: 1px solid #bbf7d0;
  border-radius: 5px;
  background: #ecfdf5;
  transition:
    opacity 0.35s ease,
    transform 0.35s ease;
}

.meal-card small,
.meal-card strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.meal-card small {
  color: #15803d;
  font-size: 6px;
  font-weight: 500;
  line-height: 10px;
  text-transform: uppercase;
}

.meal-card strong {
  margin-top: 2px;
  color: #166534;
  font-size: 7px;
  font-weight: 600;
  line-height: 12px;
}

.meal-card--lunch {
  border-color: #fed7aa;
  background: #fff7ed;
}

.meal-card--lunch small,
.meal-card--lunch strong {
  color: #c2410c;
}

.meal-card--dinner {
  border-color: #bfdbfe;
  background: #eff6ff;
}

.meal-card--dinner small,
.meal-card--dinner strong {
  color: #1d4ed8;
}

.paper-demo.is-sequenced:not(.is-complete) .meal-plan-day,
.paper-demo.is-sequenced:not(.is-complete) .meal-plan-ui__footer {
  opacity: 0;
  transform: translateY(10px);
}

.paper-demo.is-complete .meal-plan-day,
.paper-demo.is-complete .meal-plan-ui__footer {
  opacity: 1 !important;
  transform: none !important;
}

.paper-demo.is-complete .meal-plan-day:nth-child(2) {
  transition-delay: 0.12s;
}

.paper-demo.is-complete .meal-plan-day:nth-child(3) {
  transition-delay: 0.24s;
}

.paper-demo.is-complete .meal-plan-day:nth-child(4) {
  transition-delay: 0.36s;
}

.meal-plan-ui__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 9px;
  padding-top: 9px;
  border-top: 1px solid #e5e5e5;
  transition:
    opacity 0.4s ease 0.48s,
    transform 0.4s ease 0.48s;
}

.meal-plan-ui__footer span {
  color: #737373;
  font-size: 8px;
  font-weight: 500;
}

.meal-plan-ui__footer button {
  min-height: 32px;
  padding: 6px 10px;
  border: 0;
  border-radius: 5px;
  background: var(--orange);
  color: #fff;
  font-size: 9px;
  font-weight: 600;
}

.paper-result-note {
  margin: 9px 2px 0;
  color: #737373;
  font-size: 8px;
  line-height: 12px;
}

.paper-demo-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  overflow: hidden;
  margin-top: 24px;
  border: 1px solid #d4d4d4;
  border-radius: 8px;
  background: #d4d4d4;
}

.paper-demo-steps span {
  display: flex;
  min-height: 52px;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  background: #fff;
  color: #737373;
  font-size: 10px;
  font-weight: 500;
  line-height: 16px;
}

.paper-demo-steps b {
  color: var(--orange);
  font-size: 9px;
  font-weight: 600;
}

@keyframes paper-scan-line {
  0%,
  100% {
    top: 4%;
  }
  50% {
    top: 93%;
  }
}

@keyframes paper-scan-glow {
  0%,
  100% {
    top: 4%;
  }
  50% {
    top: 93%;
  }
}

@keyframes paper-spin {
  to {
    transform: rotate(360deg);
  }
}

/* AI workout text transformation */
.workout-transform {
  position: relative;
  overflow: hidden;
  padding: 82px 0 72px;
  background:
    radial-gradient(circle at 90% 8%, rgb(234 88 12 / 25%), transparent 27%),
    radial-gradient(circle at 8% 90%, rgb(234 88 12 / 8%), transparent 22%),
    var(--charcoal);
  color: #fff;
}

.workout-transform::before {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgb(255 255 255 / 2.7%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 255 255 / 2.7%) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 90%);
  content: "";
  pointer-events: none;
}

.workout-transform > .container {
  position: relative;
  z-index: 1;
}

.workout-transform__header {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
  align-items: end;
  gap: 60px;
  margin-bottom: 40px;
}

.workout-transform__header h2 {
  max-width: 780px;
  margin: 9px 0 0;
  font-family: var(--font-display);
  font-size: clamp(34px, 4.6vw, 58px);
  font-weight: 800;
  line-height: 1.04;
  text-transform: uppercase;
}

.workout-transform__header h2 span {
  display: block;
  color: var(--orange-bright);
}

.workout-transform__header > div:last-child > p {
  max-width: 550px;
  margin: 0;
  color: rgb(255 255 255 / 66%);
  font-size: 14px;
  line-height: 20px;
}

.workout-transform__header > div:last-child > a {
  display: inline-flex;
  margin-top: 16px;
  color: #fb923c;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}

.workout-transform__header > div:last-child > a:hover {
  color: #fff;
}

.workout-demo {
  display: grid;
  grid-template-columns: minmax(290px, 0.68fr) 64px minmax(620px, 1.32fr);
  align-items: center;
  gap: 16px;
}

.workout-demo__source,
.workout-demo__result {
  min-width: 0;
  padding: 18px;
  border: 1px solid rgb(255 255 255 / 11%);
  border-radius: 16px;
}

.workout-demo__source {
  background: rgb(255 255 255 / 4%);
  box-shadow: 0 24px 55px rgb(0 0 0 / 20%);
}

.workout-demo__result {
  background: #f5f5f5;
  box-shadow: 0 30px 70px rgb(0 0 0 / 34%);
  color: #171717;
}

.workout-demo__panel-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
}

.workout-demo__panel-heading > span {
  display: grid;
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 7px;
  background: var(--orange);
  color: #fff;
  font-size: 10px;
  font-weight: 600;
}

.workout-demo__panel-heading small,
.workout-demo__panel-heading strong {
  display: block;
}

.workout-demo__panel-heading small {
  color: rgb(255 255 255 / 45%);
  font-size: 9px;
  font-weight: 500;
  line-height: 16px;
  text-transform: uppercase;
}

.workout-demo__panel-heading strong {
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 20px;
}

.workout-demo__panel-heading--result small {
  color: #737373;
}

.workout-demo__panel-heading--result strong {
  color: #171717;
}

.workout-prompt {
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 13%);
  border-radius: 9px;
  background: #0f0f0f;
}

.workout-prompt__bar,
.workout-prompt__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 12px;
  color: rgb(255 255 255 / 44%);
  font-size: 9px;
  font-weight: 500;
  line-height: 16px;
}

.workout-prompt__bar {
  border-bottom: 1px solid rgb(255 255 255 / 8%);
}

.workout-prompt__bar span:first-child {
  color: #fb923c;
  font-weight: 600;
  text-transform: uppercase;
}

.workout-prompt__text {
  display: flex;
  min-height: 180px;
  align-items: flex-start;
  padding: 16px 14px;
}

.workout-prompt__text pre {
  max-width: calc(100% - 4px);
  margin: 0;
  overflow: hidden;
  color: #fff;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 500;
  line-height: 24px;
  white-space: pre-wrap;
}

.workout-prompt__text > i {
  width: 2px;
  height: 20px;
  flex: 0 0 auto;
  margin: 2px 0 0 2px;
  background: var(--orange-bright);
  animation: ai-cursor 0.75s steps(1) infinite;
}

.workout-prompt__footer {
  border-top: 1px solid rgb(255 255 255 / 8%);
}

.workout-prompt__footer button {
  padding: 4px 7px;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 5px;
  background: transparent;
  color: rgb(255 255 255 / 72%);
  cursor: pointer;
  font-size: 9px;
  font-weight: 500;
}

.workout-prompt__footer button:hover {
  border-color: var(--orange);
  color: #fff;
}

.workout-agent-status {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 9px;
  margin-top: 12px;
  padding: 10px 11px;
  border: 1px solid rgb(234 88 12 / 25%);
  border-radius: 7px;
  background: rgb(234 88 12 / 8%);
}

.workout-agent-status > span {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  border-radius: 7px;
  background: var(--orange);
  color: #fff;
  font-size: 11px;
}

.workout-agent-status small,
.workout-agent-status strong {
  display: block;
}

.workout-agent-status small {
  color: rgb(255 255 255 / 42%);
  font-size: 8px;
  font-weight: 500;
  line-height: 12px;
  text-transform: uppercase;
}

.workout-agent-status strong {
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  line-height: 16px;
}

.workout-agent-status > i {
  width: 16px;
  height: 16px;
  border: 2px solid rgb(234 88 12 / 25%);
  border-top-color: #fb923c;
  border-radius: 50%;
  opacity: 0;
}

.workout-demo.is-parsing .workout-agent-status > i,
.workout-demo.is-building .workout-agent-status > i {
  opacity: 1;
  animation: paper-spin 0.8s linear infinite;
}

.workout-detection {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  min-height: 48px;
  margin-top: 11px;
}

.workout-detection span {
  padding: 5px 7px;
  border: 1px solid rgb(255 255 255 / 10%);
  border-radius: 9999px;
  background: rgb(255 255 255 / 5%);
  color: rgb(255 255 255 / 66%);
  font-size: 8px;
  font-weight: 500;
  line-height: 12px;
  transition:
    opacity 0.35s ease,
    transform 0.35s ease;
}

.workout-demo.is-sequenced:not(.is-parsed):not(.is-complete) .workout-detection span {
  opacity: 0;
  transform: translateY(5px);
}

.workout-demo.is-parsed .workout-detection span,
.workout-demo.is-complete .workout-detection span {
  opacity: 1;
  transform: none;
}

.workout-demo.is-parsed .workout-detection span:nth-child(2) {
  transition-delay: 0.1s;
}

.workout-demo.is-parsed .workout-detection span:nth-child(3) {
  transition-delay: 0.2s;
}

.workout-demo.is-parsed .workout-detection span:nth-child(4) {
  transition-delay: 0.3s;
}

.workout-demo__bridge {
  position: relative;
  display: grid;
  width: 64px;
  height: 64px;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 50%;
  background: #202020;
  color: #fb923c;
  font-size: 12px;
  font-weight: 700;
}

.workout-demo__bridge::before,
.workout-demo__bridge::after {
  position: absolute;
  top: 50%;
  width: 17px;
  height: 1px;
  background: rgb(255 255 255 / 13%);
  content: "";
}

.workout-demo__bridge::before {
  right: 100%;
}

.workout-demo__bridge::after {
  left: 100%;
}

.workout-demo__bridge i {
  position: absolute;
  inset: -1px;
  transform: rotate(-90deg);
  border: 2px solid transparent;
  border-top-color: var(--orange);
  border-radius: 50%;
  opacity: 0;
}

.workout-demo.is-parsing .workout-demo__bridge i,
.workout-demo.is-building .workout-demo__bridge i {
  opacity: 1;
  animation: paper-spin 0.8s linear infinite;
}

.workout-builder-ui {
  padding: 12px;
  border: 1px solid #d4d4d4;
  border-radius: 10px;
  background: #f5f5f5;
}

.workout-builder-ui__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 9px;
  padding-bottom: 9px;
  border-bottom: 1px solid #d4d4d4;
}

.workout-builder-ui__toolbar > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.workout-builder-ui__toolbar strong {
  color: #525252;
  font-size: 10px;
  font-weight: 600;
  line-height: 16px;
}

.workout-builder-ui__toolbar span {
  padding: 4px 7px;
  border-radius: 9999px;
  background: #fff;
  color: #525252;
  font-size: 7px;
  line-height: 12px;
}

.workout-builder-ui__toolbar label {
  color: #737373;
  font-size: 8px;
  line-height: 12px;
}

.workout-builder-ui__toolbar label b {
  display: inline-flex;
  margin-left: 4px;
  padding: 5px 7px;
  border: 1px solid #d4d4d4;
  border-radius: 5px;
  background: #fff;
  color: #171717;
  font-weight: 500;
}

.workout-exercises {
  display: grid;
  gap: 7px;
}

.workout-exercise {
  overflow: hidden;
  border: 1px solid #d4d4d4;
  border-radius: 7px;
  background: #fff;
  transition:
    opacity 0.42s ease,
    transform 0.42s cubic-bezier(0.2, 0.75, 0.2, 1);
}

.workout-exercise > header {
  display: grid;
  grid-template-columns: 20px 27px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  padding: 8px 9px;
}

.workout-exercise__handle {
  color: #737373;
  font-size: 9px;
}

.workout-exercise__number {
  display: grid;
  width: 27px;
  height: 27px;
  place-items: center;
  border-radius: 6px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 8px;
  font-weight: 600;
}

.workout-exercise > header div {
  min-width: 0;
}

.workout-exercise > header strong,
.workout-exercise > header small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workout-exercise > header strong {
  color: #171717;
  font-size: 10px;
  font-weight: 600;
  line-height: 16px;
}

.workout-exercise > header small {
  color: #737373;
  font-size: 7px;
  font-weight: 400;
  line-height: 12px;
}

.workout-exercise__time {
  padding: 4px 6px;
  border-radius: 9999px;
  background: #f5f5f5;
  color: #525252;
  font-size: 7px;
  line-height: 12px;
}

.workout-set-table {
  margin: 0 9px;
  overflow: hidden;
  border: 1px solid #e5e5e5;
  border-radius: 5px;
}

.workout-set-table > div {
  display: grid;
  grid-template-columns: 0.6fr 1fr 1fr 1fr;
  min-height: 22px;
  align-items: center;
  border-bottom: 1px solid #e5e5e5;
}

.workout-set-table > div:last-child {
  border-bottom: 0;
}

.workout-set-table > div:first-child {
  background: #fafafa;
}

.workout-set-table b,
.workout-set-table span {
  padding: 3px 7px;
  color: #525252;
  font-size: 7px;
  font-weight: 400;
  line-height: 12px;
}

.workout-set-table b {
  color: #737373;
  font-weight: 500;
}

.workout-exercise > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 7px 9px 8px;
}

.workout-exercise > footer span {
  color: #737373;
  font-size: 7px;
  font-weight: 500;
  line-height: 12px;
}

.workout-demo.is-sequenced:not(.is-complete) .workout-exercise,
.workout-demo.is-sequenced:not(.is-complete) .workout-builder-ui__footer {
  opacity: 0;
  transform: translateY(10px);
}

.workout-demo.is-complete .workout-exercise,
.workout-demo.is-complete .workout-builder-ui__footer {
  opacity: 1;
  transform: none;
}

.workout-demo.is-complete .workout-exercise:nth-child(2) {
  transition-delay: 0.14s;
}

.workout-demo.is-complete .workout-exercise:nth-child(3) {
  transition-delay: 0.28s;
}

.workout-builder-ui__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 9px;
  padding-top: 9px;
  border-top: 1px solid #d4d4d4;
  transition:
    opacity 0.4s ease 0.42s,
    transform 0.4s ease 0.42s;
}

.workout-builder-ui__footer span {
  color: #737373;
  font-size: 8px;
  font-weight: 500;
  line-height: 12px;
}

.workout-builder-ui__footer button {
  min-height: 32px;
  padding: 6px 10px;
  border: 0;
  border-radius: 5px;
  background: var(--orange);
  color: #fff;
  font-size: 9px;
  font-weight: 600;
}

.workout-result-note {
  margin: 9px 2px 0;
  color: #737373;
  font-size: 8px;
  line-height: 12px;
}

.workout-demo-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  overflow: hidden;
  margin-top: 24px;
  border: 1px solid rgb(255 255 255 / 9%);
  border-radius: 8px;
  background: rgb(255 255 255 / 9%);
}

.workout-demo-steps span {
  display: flex;
  min-height: 52px;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  background: #1e1e1e;
  color: rgb(255 255 255 / 58%);
  font-size: 10px;
  font-weight: 500;
  line-height: 16px;
}

.workout-demo-steps b {
  color: var(--orange-bright);
  font-size: 9px;
  font-weight: 600;
}

/* AI body-composition report import */
.body-scan-transform {
  position: relative;
  overflow: hidden;
  padding: 82px 0 72px;
  background:
    radial-gradient(circle at 6% 12%, rgb(234 88 12 / 9%), transparent 25%),
    radial-gradient(circle at 94% 86%, rgb(15 118 110 / 8%), transparent 24%),
    #f3f1ed;
}

.body-scan-transform::before {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgb(23 23 23 / 3%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(23 23 23 / 3%) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 88%);
  content: "";
  pointer-events: none;
}

.body-scan-transform > .container {
  position: relative;
  z-index: 1;
}

.body-scan-transform__header {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
  align-items: end;
  gap: 60px;
  margin-bottom: 40px;
}

.body-scan-transform__header h2 {
  max-width: 820px;
  margin: 9px 0 0;
  font-family: var(--font-display);
  font-size: clamp(34px, 4.6vw, 58px);
  font-weight: 800;
  line-height: 1.04;
  text-transform: uppercase;
}

.body-scan-transform__header h2 span {
  display: block;
  color: var(--orange);
}

.body-scan-transform__header > div:last-child > p {
  max-width: 560px;
  margin: 0;
  color: #65615b;
  font-size: 14px;
  line-height: 21px;
}

.body-scan-transform__header > div:last-child > a {
  display: inline-flex;
  margin-top: 16px;
  color: #c2410c;
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
}

.body-scan-transform__header > div:last-child > a:hover {
  color: #171717;
}

.body-scan-demo {
  display: grid;
  grid-template-columns: minmax(300px, 0.72fr) 64px minmax(610px, 1.28fr);
  align-items: center;
  gap: 16px;
}

.body-scan-demo__source,
.body-scan-demo__result {
  min-width: 0;
  padding: 18px;
  border: 1px solid rgb(23 23 23 / 10%);
  border-radius: 16px;
  background: rgb(255 255 255 / 88%);
  box-shadow: 0 26px 65px rgb(41 37 32 / 10%);
  backdrop-filter: blur(8px);
}

.body-scan-demo__result {
  box-shadow: 0 30px 75px rgb(41 37 32 / 14%);
}

.body-scan-demo__panel-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
}

.body-scan-demo__panel-heading > span {
  display: grid;
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 7px;
  background: var(--orange);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
}

.body-scan-demo__panel-heading small,
.body-scan-demo__panel-heading strong {
  display: block;
}

.body-scan-demo__panel-heading small {
  color: #8b8580;
  font-size: 9px;
  font-weight: 600;
  line-height: 15px;
  text-transform: uppercase;
}

.body-scan-demo__panel-heading strong {
  color: #171717;
  font-size: 13px;
  font-weight: 700;
  line-height: 19px;
}

.body-report {
  position: relative;
  overflow: hidden;
  min-height: 354px;
  padding: 15px;
  border: 1px solid #d8d4cf;
  border-radius: 9px;
  background:
    linear-gradient(90deg, transparent 49.8%, rgb(23 23 23 / 4%) 50%, transparent 50.2%),
    #fff;
  box-shadow: 0 12px 30px rgb(23 23 23 / 7%);
}

.body-report__top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 2px solid #252525;
}

.body-report__top strong {
  color: #171717;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.body-report__top strong i {
  color: var(--orange);
  font-style: normal;
}

.body-report__top > span {
  color: #737373;
  font-size: 6px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.body-report__identity {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 10px 0;
  border-bottom: 1px solid #e5e5e5;
}

.body-report__identity span {
  padding: 6px 7px;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  background: #fafafa;
}

.body-report__identity small,
.body-report__identity strong {
  display: block;
}

.body-report__identity small {
  color: #a3a3a3;
  font-size: 6px;
  line-height: 10px;
  text-transform: uppercase;
}

.body-report__identity strong {
  color: #404040;
  font-size: 8px;
  line-height: 13px;
}

.body-report__content {
  display: grid;
  grid-template-columns: 0.78fr 1.22fr;
  gap: 12px;
  padding-top: 12px;
}

.body-report__figure {
  display: flex;
  min-height: 220px;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  border: 1px solid #ece8e3;
  border-radius: 6px;
  background:
    radial-gradient(circle, rgb(234 88 12 / 9%), transparent 65%),
    #faf9f7;
}

.body-report__figure svg {
  width: 64px;
  height: 118px;
  color: #85807a;
  fill: rgb(234 88 12 / 8%);
  stroke: currentColor;
  stroke-width: 2;
}

.body-report__figure span {
  margin-top: 5px;
  color: #a3a3a3;
  font-size: 6px;
  font-weight: 600;
  text-transform: uppercase;
}

.body-report__rows {
  display: grid;
  align-content: start;
  gap: 6px;
}

.body-report__rows span {
  display: flex;
  min-height: 30px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 5px 8px;
  border-bottom: 1px dotted #d4d4d4;
}

.body-report__rows b {
  color: #737373;
  font-size: 7px;
  font-weight: 600;
}

.body-report__rows em {
  color: #262626;
  font-size: 8px;
  font-style: normal;
  font-weight: 800;
}

.body-report__scan {
  position: absolute;
  z-index: 2;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.body-report__scan::before {
  position: absolute;
  top: -25%;
  right: 0;
  left: 0;
  height: 28%;
  background: linear-gradient(to bottom, transparent, rgb(234 88 12 / 9%));
  content: "";
  animation: body-report-scan 4.8s ease-in-out infinite;
}

.body-report__scan i {
  position: absolute;
  top: 3%;
  right: 12px;
  left: 12px;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--orange), transparent);
  box-shadow: 0 0 12px rgb(234 88 12 / 55%);
  animation: body-report-line 4.8s ease-in-out infinite;
}

.body-report-status {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 9px;
  margin-top: 12px;
  padding: 10px 11px;
  border: 1px solid rgb(234 88 12 / 18%);
  border-radius: 7px;
  background: rgb(234 88 12 / 6%);
}

.body-report-status > span {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  border-radius: 7px;
  background: var(--orange);
  color: #fff;
  font-size: 11px;
}

.body-report-status small,
.body-report-status strong {
  display: block;
}

.body-report-status small {
  color: #9a928b;
  font-size: 8px;
  line-height: 12px;
  text-transform: uppercase;
}

.body-report-status strong {
  color: #3f3b37;
  font-size: 10px;
  line-height: 16px;
}

.body-report-status > i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 4px rgb(34 197 94 / 10%);
}

.body-report-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 10px;
}

.body-report-tags span {
  padding: 5px 7px;
  border: 1px solid #e1ddd8;
  border-radius: 9999px;
  background: #fff;
  color: #7a746e;
  font-size: 8px;
  font-weight: 600;
  line-height: 12px;
}

.body-scan-demo__bridge {
  position: relative;
  display: grid;
  width: 64px;
  height: 64px;
  place-items: center;
  border: 1px solid rgb(234 88 12 / 20%);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 12px 28px rgb(41 37 32 / 10%);
  color: var(--orange);
  font-size: 12px;
  font-weight: 800;
}

.body-scan-demo__bridge::before,
.body-scan-demo__bridge::after {
  position: absolute;
  top: 50%;
  width: 17px;
  height: 1px;
  background: rgb(23 23 23 / 13%);
  content: "";
}

.body-scan-demo__bridge::before {
  right: 100%;
}

.body-scan-demo__bridge::after {
  left: 100%;
}

.body-scan-demo__bridge i {
  position: absolute;
  inset: -1px;
  transform: rotate(-90deg);
  border: 2px solid transparent;
  border-top-color: var(--orange);
  border-radius: 50%;
  animation: paper-spin 1.25s linear infinite;
}

.body-metrics-ui {
  padding: 12px;
  border: 1px solid #dedbd7;
  border-radius: 10px;
  background: #f8f7f5;
}

.body-metrics-ui__toolbar {
  display: flex;
  min-height: 54px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 10px;
  padding: 0 2px 10px;
  border-bottom: 1px solid #ddd9d4;
}

.body-metrics-ui__client {
  display: flex;
  align-items: center;
  gap: 9px;
}

.body-metrics-ui__client > span {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--orange), #fb923c);
  color: #fff;
  font-size: 9px;
  font-weight: 800;
}

.body-metrics-ui__client small,
.body-metrics-ui__client strong,
.body-metrics-ui__source span,
.body-metrics-ui__source strong {
  display: block;
}

.body-metrics-ui__client small,
.body-metrics-ui__source span {
  color: #a3a3a3;
  font-size: 7px;
  font-weight: 600;
  line-height: 12px;
}

.body-metrics-ui__client strong {
  color: #262626;
  font-size: 11px;
  line-height: 16px;
}

.body-metrics-ui__source {
  text-align: right;
}

.body-metrics-ui__source strong {
  color: #525252;
  font-size: 9px;
  line-height: 15px;
}

.body-metrics-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.body-metrics-grid article {
  position: relative;
  min-height: 112px;
  overflow: hidden;
  padding: 12px;
  border: 1px solid #e3dfda;
  border-radius: 8px;
  background: #fff;
}

.body-metrics-grid article::after {
  position: absolute;
  right: -22px;
  bottom: -22px;
  width: 65px;
  height: 65px;
  border-radius: 50%;
  background: radial-gradient(circle, rgb(234 88 12 / 8%), transparent 68%);
  content: "";
}

.body-metric-icon {
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  margin-bottom: 9px;
  border-radius: 6px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 7px;
  font-weight: 800;
}

.body-metrics-grid small,
.body-metrics-grid strong,
.body-metrics-grid > article > i {
  position: relative;
  z-index: 1;
  display: block;
}

.body-metrics-grid small {
  color: #85807a;
  font-size: 7px;
  font-weight: 600;
  line-height: 11px;
  text-transform: uppercase;
}

.body-metrics-grid strong {
  margin-top: 3px;
  color: #1f1f1f;
  font-size: 18px;
  font-weight: 800;
  line-height: 22px;
}

.body-metrics-grid strong em {
  color: #737373;
  font-size: 8px;
  font-style: normal;
  font-weight: 600;
}

.body-metrics-grid > article > i {
  margin-top: 5px;
  color: #16a34a;
  font-size: 7px;
  font-style: normal;
  font-weight: 600;
}

.body-metrics-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
}

.body-metrics-checks span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 7px;
  border: 1px solid rgb(34 197 94 / 16%);
  border-radius: 9999px;
  background: rgb(34 197 94 / 5%);
  color: #667064;
  font-size: 7px;
  font-weight: 600;
  line-height: 11px;
}

.body-metrics-checks i {
  color: #16a34a;
  font-style: normal;
}

.body-metrics-ui__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #ddd9d4;
}

.body-metrics-ui__footer small,
.body-metrics-ui__footer strong {
  display: block;
}

.body-metrics-ui__footer small {
  color: #a3a3a3;
  font-size: 7px;
  font-weight: 600;
  line-height: 11px;
}

.body-metrics-ui__footer strong {
  color: #525252;
  font-size: 9px;
  line-height: 15px;
}

.body-metrics-ui__footer button {
  min-height: 34px;
  padding: 7px 11px;
  border: 0;
  border-radius: 6px;
  background: var(--orange);
  color: #fff;
  font-size: 9px;
  font-weight: 700;
}

.body-scan-result-note {
  margin: 9px 2px 0;
  color: #77716a;
  font-size: 8px;
  line-height: 13px;
}

.body-scan-demo-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  overflow: hidden;
  margin-top: 24px;
  border: 1px solid rgb(23 23 23 / 8%);
  border-radius: 8px;
  background: rgb(23 23 23 / 8%);
}

.body-scan-demo-steps span {
  display: flex;
  min-height: 52px;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  background: rgb(255 255 255 / 72%);
  color: #716b65;
  font-size: 10px;
  font-weight: 600;
  line-height: 16px;
}

.body-scan-demo-steps b {
  color: var(--orange);
  font-size: 9px;
  font-weight: 700;
}

@keyframes body-report-scan {
  0%,
  12% {
    transform: translateY(0);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  68% {
    transform: translateY(460px);
    opacity: 1;
  }
  76%,
  100% {
    transform: translateY(460px);
    opacity: 0;
  }
}

@keyframes body-report-line {
  0%,
  12% {
    top: 3%;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  68% {
    top: 95%;
    opacity: 1;
  }
  76%,
  100% {
    top: 95%;
    opacity: 0;
  }
}

/* Connected product showcase */
.product-showcase {
  padding: 78px 0;
  background: #fff;
}

.product-showcase__heading {
  max-width: 760px;
  margin-inline: auto;
  text-align: center;
}

.product-showcase__heading h2 {
  margin-top: 8px;
  font-family: var(--font-display);
  font-size: clamp(30px, 4vw, 48px);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.04;
  text-transform: uppercase;
}

.product-showcase__heading h2 span {
  display: block;
  color: var(--orange);
}

.product-showcase__heading > p:last-child {
  max-width: 650px;
  margin: 17px auto 0;
  color: var(--muted);
  font-size: 14px;
}

.platform-showcase {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(330px, 0.7fr);
  gap: 22px;
  margin-top: 42px;
}

.dashboard-showcase,
.mobile-showcase {
  position: relative;
  overflow: hidden;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 14px;
}

.dashboard-showcase {
  background:
    radial-gradient(circle at 8% 8%, rgb(234 88 12 / 8%), transparent 32%),
    #f7f7f7;
}

.mobile-showcase {
  background:
    radial-gradient(circle at 82% 15%, rgb(234 88 12 / 28%), transparent 34%),
    var(--charcoal);
  color: #fff;
}

.showcase-label {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 20px;
}

.showcase-label > span {
  display: grid;
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 8px;
  background: var(--orange);
  color: #fff;
  font-family: var(--font-display);
  font-size: 10px;
  font-weight: 800;
}

.showcase-label small,
.showcase-label strong {
  display: block;
  line-height: 1.35;
}

.showcase-label small {
  color: #84878e;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.showcase-label strong {
  font-family: var(--font-display);
  font-size: 15px;
  letter-spacing: 0;
}

.mobile-showcase .showcase-label small {
  color: rgb(255 255 255 / 50%);
}

.dashboard-frame {
  overflow: hidden;
  margin: 0;
  border: 1px solid #d4d4d4;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 24px 45px rgb(35 31 28 / 13%);
}

.dashboard-frame::before {
  display: block;
  height: 20px;
  border-bottom: 1px solid #ececec;
  background:
    radial-gradient(circle at 12px center, #ff6422 0 2px, transparent 2.5px),
    radial-gradient(circle at 22px center, #d7d7d7 0 2px, transparent 2.5px),
    radial-gradient(circle at 32px center, #d7d7d7 0 2px, transparent 2.5px),
    #fafafa;
  content: "";
}

.dashboard-frame img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: top center;
}

.progress-dashboard-mockup {
  display: grid;
  min-height: 315px;
  grid-template-columns: 42px 1fr;
  background: #f5f5f5;
}

.progress-dashboard-mockup > aside {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 18px 0;
  background: var(--ink);
}

.progress-dashboard-mockup > aside i {
  width: 20px;
  height: 20px;
  border-radius: 6px;
  background: rgb(255 255 255 / 10%);
}

.progress-dashboard-mockup > aside i:first-child {
  background: var(--orange);
}

.progress-dashboard-mockup > div {
  min-width: 0;
  padding: 18px;
}

.progress-dashboard-mockup > div > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.progress-dashboard-mockup header small,
.progress-dashboard-mockup header strong {
  display: block;
}

.progress-dashboard-mockup header small {
  color: var(--orange);
  font-size: 7px;
  font-weight: 800;
}

.progress-dashboard-mockup header strong {
  margin-top: 3px;
  color: var(--ink);
  font-size: 13px;
}

.progress-dashboard-mockup header button {
  padding: 6px 8px;
  border: 1px solid #dedede;
  border-radius: 6px;
  background: #fff;
  color: #6b7280;
  font-size: 7px;
}

.progress-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin: 15px 0 10px;
}

.progress-metrics > span {
  padding: 10px;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  background: #fff;
}

.progress-metrics small,
.progress-metrics strong {
  display: block;
}

.progress-metrics small {
  color: #8a8f98;
  font-size: 7px;
}

.progress-metrics strong {
  margin: 4px 0 8px;
  color: var(--ink);
  font-size: 13px;
}

.progress-metrics i {
  display: block;
  width: 100%;
  height: 4px;
  overflow: hidden;
  border-radius: 5px;
  background: #eeeeee;
}

.progress-metrics i::before {
  display: block;
  width: var(--metric);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--orange), #0d9488);
  content: "";
}

.progress-chart {
  min-height: 150px;
  padding: 12px;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  background: #fff;
}

.progress-chart > header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.progress-chart header strong {
  font-size: 9px;
}

.progress-chart header small {
  color: #9a9da4;
  font-size: 6px;
}

.progress-chart > div {
  display: flex;
  height: 95px;
  align-items: flex-end;
  gap: 9px;
  margin-top: 10px;
  padding: 0 5px;
  border-bottom: 1px solid #dedede;
}

.progress-chart > div i {
  flex: 1;
  border-radius: 3px 3px 0 0;
  background: var(--orange-soft);
}

.progress-chart > div i:nth-child(1) { height: 40%; }
.progress-chart > div i:nth-child(2) { height: 55%; }
.progress-chart > div i:nth-child(3) { height: 48%; }
.progress-chart > div i:nth-child(4) { height: 70%; background: #ffd9c7; }
.progress-chart > div i:nth-child(5) { height: 66%; background: #f5b995; }
.progress-chart > div i:nth-child(6) { height: 82%; background: var(--orange); }
.progress-chart > div i:nth-child(7) { height: 92%; background: #0d9488; }

.dashboard-points {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 17px;
}

.dashboard-points span {
  padding: 6px 9px;
  border: 1px solid #dedede;
  border-radius: 999px;
  background: #fff;
  color: #50535b;
  font-size: 9px;
  font-weight: 700;
}

.mobile-screens {
  display: flex;
  min-height: 445px;
  align-items: flex-end;
  justify-content: center;
  gap: 0;
  padding: 4px 0 0;
}

.app-phone {
  position: relative;
  width: min(44%, 168px);
  margin: 0;
  filter: drop-shadow(0 24px 25px rgb(20 18 16 / 28%));
}

.app-phone img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 472 / 1024;
  border: 3px solid #17191d;
  border-radius: 22px;
  object-fit: cover;
  object-position: top center;
  background: #f3f4f6;
}

.app-phone--home {
  z-index: 1;
  margin-right: -36px;
  transform: rotate(-2deg);
}

.app-phone--physique {
  z-index: 2;
  transform: translateY(-7px) rotate(2deg);
}

.app-phone figcaption {
  position: absolute;
  right: 7px;
  bottom: 8px;
  left: 7px;
  padding: 6px 5px;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 7px;
  background: rgb(12 12 12 / 78%);
  backdrop-filter: blur(8px);
  color: #fff;
  font-size: 7px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
}

.store-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 19px;
}

.store-links a {
  display: block;
  width: 100%;
  max-width: 180px;
  justify-self: center;
  overflow: hidden;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  transition: transform 0.2s ease;
}

.store-links a:hover {
  transform: translateY(-2px);
}

.store-links img {
  display: block;
  width: 100%;
  height: auto;
}

/* Dark cards */
.delivery {
  padding: 54px 0 34px;
  background:
    linear-gradient(135deg, rgb(255 255 255 / 3%), transparent 45%),
    var(--charcoal);
  color: #fff;
}

.delivery__heading {
  max-width: 700px;
  margin: 0 auto 34px;
  text-align: center;
}

.section-kicker--light {
  color: #fb923c;
}

.delivery__heading h2 {
  font-size: clamp(28px, 3.4vw, 42px);
}

.delivery-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.delivery-card {
  display: flex;
  min-height: 380px;
  flex-direction: column;
  padding: 28px 25px;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 12px 25px rgb(0 0 0 / 18%);
  color: var(--ink);
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.delivery-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 40px rgb(0 0 0 / 22%);
}

.delivery-card__icon {
  display: block;
  width: 63px;
  height: 63px;
  margin-bottom: 23px;
  color: var(--orange);
}

.delivery-card__icon svg {
  width: 100%;
  height: 100%;
  stroke-width: 1.9;
}

.delivery-card h3 {
  margin: 0;
  color: var(--ink);
  font-family: var(--font-display);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.15;
  text-transform: uppercase;
}

.delivery-card p {
  margin: 17px 0 22px;
  color: #3d3f47;
  font-size: 12px;
  line-height: 1.55;
}

.delivery-card a {
  margin-top: auto;
  font-size: 12px;
}

/* KPI stats */
.impact {
  padding: 0 0 54px;
  background: var(--charcoal);
  color: #fff;
}

.impact__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.impact-card {
  display: flex;
  min-height: 148px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 34px 24px 30px;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 25px rgb(0 0 0 / 18%);
  text-align: center;
}

.impact-card__value {
  display: block;
  color: var(--orange);
  font-family: var(--font-display);
  font-size: clamp(38px, 5.2vw, 58px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.impact-card__label {
  display: block;
  margin-top: 12px;
  color: #52525b;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.35;
  text-transform: uppercase;
}

/* How it works */
.how-it-works {
  padding: 96px 0 104px;
  background:
    radial-gradient(circle at 8% 18%, rgb(255 100 34 / 9%), transparent 28%),
    #fff;
}

.how-it-works__heading,
.stories__heading {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  align-items: end;
  gap: 60px;
  margin-bottom: 48px;
}

.how-it-works__heading h2,
.stories__heading h2,
.integrations-security__heading h2 {
  max-width: 760px;
  margin: 8px 0 0;
  color: var(--ink);
  font-size: clamp(34px, 4.5vw, 56px);
  font-weight: 800;
  letter-spacing: -0.047em;
  line-height: 1.02;
}

.how-it-works__heading > p {
  margin: 0 0 3px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
}

.workflow-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.workflow-steps::before {
  position: absolute;
  z-index: 0;
  top: 90px;
  right: 8%;
  left: 8%;
  height: 1px;
  background: linear-gradient(90deg, var(--orange), #0d9488);
  content: "";
}

.workflow-steps > li {
  position: relative;
  z-index: 1;
  min-height: 350px;
  padding: 18px;
  border: 1px solid #e5e5e5;
  border-radius: 15px;
  background: rgb(255 255 255 / 96%);
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.workflow-steps > li:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgb(23 24 29 / 8%);
}

.workflow-step__number {
  display: block;
  margin-bottom: 14px;
  color: var(--orange);
  font-size: 10px;
  font-weight: 850;
}

.workflow-step__visual {
  display: grid;
  height: 125px;
  place-items: center;
  margin-bottom: 25px;
  overflow: hidden;
  border-radius: 11px;
  background:
    linear-gradient(90deg, rgb(23 24 29 / 4%) 1px, transparent 1px) 0 0 / 24px 24px,
    #f7f7f7;
}

.workflow-window {
  position: relative;
  display: flex;
  width: 132px;
  height: 75px;
  align-items: flex-start;
  gap: 4px;
  padding: 10px;
  border: 1px solid #dedede;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 9px 20px rgb(23 24 29 / 9%);
}

.workflow-window i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #d5d5d5;
}

.workflow-window i:first-child {
  background: var(--orange);
}

.workflow-window b {
  position: absolute;
  right: 10px;
  bottom: 13px;
  left: 10px;
  padding: 7px;
  border-radius: 5px;
  background: var(--ink);
  color: #fff;
  font-size: 8px;
  text-align: center;
}

.workflow-people {
  position: relative;
  display: flex;
  align-items: center;
}

.workflow-people i {
  display: block;
  width: 50px;
  height: 50px;
  margin-left: -12px;
  border: 4px solid #f7f7f7;
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 35%, #fff 0 17%, transparent 18%),
    radial-gradient(circle at 50% 95%, #fff 0 34%, transparent 35%),
    linear-gradient(135deg, var(--orange), #f59e0b);
}

.workflow-people i:first-child {
  margin-left: 0;
}

.workflow-people i:nth-child(2) {
  background:
    radial-gradient(circle at 50% 35%, #fff 0 17%, transparent 18%),
    radial-gradient(circle at 50% 95%, #fff 0 34%, transparent 35%),
    linear-gradient(135deg, #0d9488, #36b5aa);
}

.workflow-people i:nth-child(3) {
  background:
    radial-gradient(circle at 50% 35%, #fff 0 17%, transparent 18%),
    radial-gradient(circle at 50% 95%, #fff 0 34%, transparent 35%),
    linear-gradient(135deg, #374151, #111827);
}

.workflow-people b {
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  margin-left: -8px;
  border: 3px solid #f7f7f7;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
}

.workflow-builder {
  position: relative;
  display: grid;
  width: 145px;
  gap: 7px;
}

.workflow-builder i {
  display: block;
  height: 18px;
  border: 1px solid #e0e0e0;
  border-radius: 5px;
  background: #fff;
}

.workflow-builder i::before {
  display: block;
  width: 45%;
  height: 4px;
  margin: 6px 0 0 8px;
  border-radius: 5px;
  background: #d8d8d8;
  content: "";
}

.workflow-builder b {
  position: absolute;
  top: -9px;
  right: -9px;
  display: grid;
  width: 33px;
  height: 22px;
  place-items: center;
  border-radius: 999px;
  background: linear-gradient(105deg, var(--orange-bright), #0d9488);
  color: #fff;
  font-size: 9px;
}

.workflow-chart {
  position: relative;
  display: flex;
  width: 145px;
  height: 75px;
  align-items: flex-end;
  justify-content: center;
  gap: 10px;
  padding: 10px 28px 8px 12px;
  border-bottom: 1px solid #d9d9d9;
  border-left: 1px solid #d9d9d9;
}

.workflow-chart i {
  width: 19px;
  border-radius: 4px 4px 0 0;
  background: var(--orange);
}

.workflow-chart i:nth-child(1) {
  height: 28px;
}

.workflow-chart i:nth-child(2) {
  height: 42px;
  background: #f59e0b;
}

.workflow-chart i:nth-child(3) {
  height: 57px;
  background: #0d9488;
}

.workflow-chart b {
  position: absolute;
  top: -4px;
  right: 0;
  color: #0d9488;
  font-size: 23px;
}

.workflow-steps small {
  color: var(--orange);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.workflow-steps h3 {
  margin: 8px 0 10px;
  color: var(--ink);
  font-size: 19px;
}

.workflow-steps p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.6;
}

/* Illustrative outcome stories */
.stories {
  padding: 94px 0 102px;
  background: #f3f3f2;
}

.stories__heading > div:last-child p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.65;
}

.stories__heading > div:last-child > span {
  display: inline-flex;
  margin-top: 13px;
  padding: 5px 8px;
  border-radius: 999px;
  background: #fff;
  color: #737373;
  font-size: 8px;
  font-weight: 750;
  text-transform: uppercase;
}

.story-grid {
  display: grid;
  grid-template-columns: 1.08fr 0.92fr 0.92fr;
  gap: 16px;
}

.story-card {
  display: flex;
  min-height: 420px;
  flex-direction: column;
  padding: 26px;
  border: 1px solid #e1e1e1;
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 12px 32px rgb(23 24 29 / 5%);
}

.story-card--featured {
  border-color: rgb(234 88 12 / 26%);
  background:
    radial-gradient(circle at 80% 10%, rgb(255 100 34 / 12%), transparent 28%),
    #fff;
}

.story-card--dark {
  border-color: var(--ink);
  background: var(--ink);
  color: #fff;
}

.story-card__top {
  display: grid;
  grid-template-columns: 58px 1fr;
  align-items: center;
  gap: 13px;
}

.story-avatar {
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 32%, #fff 0 14%, transparent 15%),
    radial-gradient(circle at 50% 95%, #fff 0 32%, transparent 33%),
    linear-gradient(135deg, var(--orange), #f59e0b);
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 30%);
}

.story-avatar--nutrition {
  background:
    radial-gradient(circle at 50% 32%, #fff 0 14%, transparent 15%),
    radial-gradient(circle at 50% 95%, #fff 0 32%, transparent 33%),
    linear-gradient(135deg, #0d9488, #42b9af);
}

.story-avatar--team {
  background:
    radial-gradient(circle at 50% 32%, #fff 0 14%, transparent 15%),
    radial-gradient(circle at 50% 95%, #fff 0 32%, transparent 33%),
    linear-gradient(135deg, #4b5563, #111827);
}

.story-avatar span {
  position: relative;
  z-index: 1;
  align-self: end;
  margin-bottom: 6px;
  color: rgb(255 255 255 / 76%);
  font-size: 7px;
  font-weight: 800;
}

.story-card__top small,
.story-card__top strong,
.story-card__top span {
  display: block;
}

.story-card__top small {
  color: var(--orange);
  font-size: 7px;
  font-weight: 800;
  line-height: 1.4;
  text-transform: uppercase;
}

.story-card__top strong {
  margin-top: 4px;
  color: var(--ink);
  font-size: 13px;
}

.story-card--dark .story-card__top strong {
  color: #fff;
}

.story-card__top div > span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 9px;
}

.story-card--dark .story-card__top div > span {
  color: rgb(255 255 255 / 48%);
}

.story-card blockquote {
  margin: 54px 0 38px;
  color: var(--ink);
  font-size: clamp(19px, 2vw, 25px);
  font-weight: 650;
  letter-spacing: -0.025em;
  line-height: 1.35;
}

.story-card--dark blockquote {
  color: #fff;
}

.story-result {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid #e8e8e8;
}

.story-card--dark .story-result {
  border-color: rgb(255 255 255 / 13%);
}

.story-result strong {
  color: var(--orange);
  font-size: 40px;
  letter-spacing: -0.05em;
  line-height: 0.9;
}

.story-result span {
  max-width: 125px;
  color: var(--muted);
  font-size: 8px;
  font-weight: 700;
  line-height: 1.35;
  text-transform: uppercase;
}

.story-card--dark .story-result span {
  color: rgb(255 255 255 / 48%);
}

/* Integration and security */
.integrations-security {
  padding: 96px 0 105px;
  background: #fff;
}

.integrations-security__heading {
  max-width: 860px;
  margin-bottom: 42px;
}

.calendar-integration {
  display: grid;
  grid-template-columns: minmax(300px, 0.78fr) minmax(540px, 1.22fr);
  min-height: 560px;
  overflow: hidden;
  border: 1px solid #e3e3e3;
  border-radius: 20px;
  background: #fafafa;
  box-shadow: 0 24px 64px rgb(23 24 29 / 8%);
}

.calendar-integration__copy {
  padding: 42px;
  background:
    radial-gradient(circle at 10% 8%, rgb(255 100 34 / 11%), transparent 30%),
    #fff;
}

.integration-status,
.security-state {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgb(13 148 136 / 9%);
  color: #0d8076;
  font-size: 8px;
  font-weight: 800;
  text-transform: uppercase;
}

.integration-status i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #0d9488;
  box-shadow: 0 0 0 3px rgb(13 148 136 / 12%);
}

.google-calendar-mark {
  position: relative;
  display: grid;
  width: 57px;
  height: 57px;
  place-items: center;
  margin: 62px 0 20px;
  overflow: hidden;
  border: 1px solid #dedede;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 10px 24px rgb(23 24 29 / 9%);
}

.google-calendar-mark::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 13px;
  background: linear-gradient(90deg, #4285f4 0 25%, #34a853 25% 50%, #fbbc04 50% 75%, #ea4335 75%);
  content: "";
}

.google-calendar-mark span {
  margin-top: 9px;
  color: #4285f4;
  font-size: 21px;
  font-weight: 750;
}

.calendar-integration__copy h3,
.security-panel__intro h3 {
  margin: 8px 0 14px;
  color: var(--ink);
  font-size: clamp(27px, 3.2vw, 40px);
  letter-spacing: -0.035em;
  line-height: 1.08;
}

.calendar-integration__copy > p:not(.section-kicker),
.security-panel__intro > p:not(.section-kicker) {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.65;
}

.calendar-integration__copy ul {
  display: grid;
  gap: 8px;
  margin: 24px 0 27px;
  padding: 0;
  list-style: none;
}

.calendar-integration__copy li {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #4b515b;
  font-size: 10px;
  font-weight: 650;
}

.calendar-integration__copy li span {
  color: var(--orange);
}

.calendar-integration__copy > a,
.security-panel__intro > a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--orange);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.calendar-integration__copy > a span,
.security-panel__intro > a span {
  font-size: 16px;
}

.calendar-integration__visual {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  padding: 50px;
  background:
    linear-gradient(90deg, rgb(255 255 255 / 6%) 1px, transparent 1px) 0 0 / 36px 36px,
    linear-gradient(135deg, #202229, #101116);
}

.sync-calendar {
  width: min(100%, 580px);
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 13%);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 28px 55px rgb(0 0 0 / 32%);
}

.sync-calendar > header {
  display: flex;
  height: 52px;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  border-bottom: 1px solid #e8e8e8;
}

.sync-calendar > header button {
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border: 1px solid #e3e3e3;
  border-radius: 6px;
  background: #fff;
}

.sync-calendar > header strong {
  color: var(--ink);
  font-size: 11px;
}

.sync-calendar__days {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  border-bottom: 1px solid #e8e8e8;
}

.sync-calendar__days span {
  display: grid;
  min-height: 55px;
  place-items: center;
  padding: 7px;
  border-right: 1px solid #eeeeee;
}

.sync-calendar__days span:last-child {
  border-right: 0;
}

.sync-calendar__days small {
  color: #9a9da4;
  font-size: 6px;
  font-weight: 750;
}

.sync-calendar__days b {
  color: var(--ink);
  font-size: 12px;
}

.sync-calendar__days .is-active b {
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
}

.sync-calendar__events {
  display: grid;
  gap: 9px;
  padding: 18px;
}

.event {
  display: grid;
  grid-template-columns: 42px 1fr auto;
  align-items: center;
  gap: 9px;
  padding: 11px;
  border-left: 3px solid var(--orange);
  border-radius: 6px;
  background: var(--orange-soft);
}

.event--google {
  border-left-color: #4285f4;
  background: #eef4ff;
}

.event small {
  color: #8a8f98;
  font-size: 7px;
}

.event strong {
  color: var(--ink);
  font-size: 9px;
}

.event b {
  color: var(--orange);
  font-size: 7px;
}

.event--google b {
  color: #4285f4;
}

.sync-orbit {
  position: absolute;
  right: 28px;
  bottom: 24px;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 8px;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 999px;
  background: rgb(16 17 22 / 88%);
  box-shadow: 0 10px 24px rgb(0 0 0 / 24%);
}

.sync-orbit span {
  display: grid;
  width: 27px;
  height: 27px;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: #4285f4;
  font-size: 10px;
  font-weight: 850;
}

.sync-orbit span:last-child {
  background: var(--orange);
  color: #fff;
}

.sync-orbit i {
  color: rgb(255 255 255 / 54%);
  font-style: normal;
}

.security-panel {
  display: grid;
  grid-template-columns: minmax(280px, 0.72fr) minmax(520px, 1.28fr);
  gap: 55px;
  margin-top: 22px;
  padding: 44px;
  border: 1px solid #e3e3e3;
  border-radius: 20px;
  background: #f6f6f5;
}

.security-shield {
  display: grid;
  width: 55px;
  height: 55px;
  place-items: center;
  margin-bottom: 29px;
  border-radius: 14px;
  background: var(--ink);
  color: var(--orange);
}

.security-shield svg {
  width: 31px;
  height: 31px;
}

.security-panel__intro > a {
  margin-top: 25px;
}

.security-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.security-grid article {
  min-height: 185px;
  padding: 20px;
  border: 1px solid #e2e2e2;
  border-radius: 12px;
  background: #fff;
}

.security-state--built {
  background: rgb(13 148 136 / 10%);
  color: #0d8076;
}

.security-state--standard {
  background: #eef4ff;
  color: #3b6cb7;
}

.security-state--confirm {
  background: #fff4e8;
  color: #b45a17;
}

.security-grid h4 {
  margin: 28px 0 8px;
  color: var(--ink);
  font-size: 15px;
}

.security-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.6;
}

/* Pricing */
.pricing {
  padding: 88px 0 96px;
  background:
    radial-gradient(circle at top center, #fff4ec 0%, transparent 42%),
    linear-gradient(180deg, #fafafa 0%, #fff 55%, #f7f7f7 100%);
}

.pricing__header {
  max-width: 640px;
  margin: 0 auto 42px;
  text-align: center;
}

.pricing__header h2 {
  margin: 8px 0 12px;
  color: var(--ink);
  font-size: clamp(28px, 3.6vw, 42px);
  font-weight: 800;
  line-height: 1.15;
}

.pricing__header > p {
  margin: 0 auto 28px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.55;
}

.pricing-toggle {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 8px 24px rgb(23 24 29 / 5%);
}

.pricing-toggle button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #525252;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.pricing-toggle button span {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 0 8px;
  border-radius: 999px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 10px;
  font-weight: 800;
}

.pricing-toggle button.is-active {
  background: var(--ink);
  color: #fff;
}

.pricing-toggle button.is-active span {
  background: rgb(255 255 255 / 14%);
  color: #fff;
}

.pricing-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

.pricing-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 28px 24px 26px;
  border: 1px solid #e5e5e5;
  border-top: 3px solid #d4d4d4;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 14px 36px rgb(23 24 29 / 5%);
}

.pricing-card--pro {
  border-top-color: var(--orange-bright);
  box-shadow:
    0 18px 44px rgb(234 88 12 / 12%),
    0 8px 24px rgb(23 24 29 / 5%);
}

.pricing-card--elite {
  border-top-color: var(--ink);
}

.pricing-card__badge {
  position: absolute;
  top: 18px;
  right: 18px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #ffe8da;
  color: var(--orange);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.pricing-card__top h3 {
  margin: 0 0 8px;
  color: var(--ink);
  font-size: 28px;
  font-weight: 800;
  line-height: 1.1;
}

.pricing-card__top p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.pricing-card__price {
  margin: 22px 0 18px;
}

.pricing-card__eyebrow,
.pricing-card__price-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: #8a8f98;
  font-size: 12px;
  font-weight: 600;
}

.pricing-card__price > p {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  margin: 6px 0 0;
  color: var(--ink);
}

.pricing-card__price strong {
  font-size: 42px;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1;
}

.pricing-card__price > p > span {
  font-size: 20px;
  font-weight: 800;
}

.pricing-card__price small {
  color: #8a8f98;
  font-size: 14px;
  font-weight: 600;
}

.pricing-card__limit {
  display: inline-flex;
  margin-top: 12px;
  padding: 7px 12px;
  border-radius: 999px;
  background: #f3f3f3;
  color: var(--orange);
  font-size: 12px;
  font-weight: 700;
}

.pricing-select {
  position: relative;
  margin-bottom: 16px;
}

.pricing-select__trigger {
  display: flex;
  width: 100%;
  min-height: 48px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid #d8d8d8;
  border-radius: 12px;
  background: #fff;
  color: var(--ink);
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
  text-align: left;
}

.pricing-select__trigger svg {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
  transition: transform 0.2s ease;
}

.pricing-select__trigger[aria-expanded="true"] svg {
  transform: rotate(180deg);
}

.pricing-select__list {
  position: absolute;
  z-index: 5;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  max-height: 220px;
  overflow: auto;
  margin: 0;
  padding: 8px;
  border: 1px solid #d8d8d8;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 16px 36px rgb(23 24 29 / 12%);
  list-style: none;
}

.pricing-select__list[hidden] {
  display: none;
}

.pricing-select__list li {
  padding: 11px 12px;
  border-radius: 8px;
  color: var(--ink);
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
}

.pricing-select__list li:hover,
.pricing-select__list li[aria-selected="true"] {
  background: #fff0e8;
  color: var(--orange);
}

.pricing-card__cta {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 18px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

.pricing-card__cta:hover {
  transform: translateY(-1px);
}

.pricing-card__cta--dark {
  background: var(--ink);
  color: #fff;
}

.pricing-card__cta--dark:hover {
  background: #2a2c34;
}

.pricing-card__cta--orange {
  background: var(--orange-bright);
  box-shadow: 0 10px 24px rgb(234 88 12 / 22%);
  color: #fff;
}

.pricing-card__cta--orange:hover {
  background: var(--orange-dark);
}

.pricing-card__note {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 12px;
  text-align: center;
}

.pricing-card__note--accent {
  color: var(--orange);
  font-weight: 600;
}

.pricing-card__plus {
  margin-top: 22px;
}

.pricing-card__plus > p {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
}

.pricing-card__features {
  display: grid;
  gap: 10px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}

.pricing-card__plus .pricing-card__features {
  margin-top: 0;
}

.pricing-card__features li {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  color: #3f4654;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
}

.pricing-card__features li::before {
  content: "✓";
  flex: 0 0 auto;
  color: var(--orange-bright);
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
}

.pricing-card__features li small {
  margin-left: 2px;
  padding: 2px 7px;
  border-radius: 999px;
  background: #f0f0f0;
  color: #737373;
  font-size: 10px;
  font-weight: 700;
}

.pricing-card .ai-badge {
  margin-left: 0;
}

/* Pricing modules */
.pricing-v2 {
  padding: 96px 0 110px;
  background:
    radial-gradient(circle at 12% 2%, rgb(255 100 34 / 10%), transparent 25%),
    linear-gradient(180deg, #fffaf7 0%, #fff 28%, #f7f7f8 100%);
}

.pricing-v2__header {
  max-width: 760px;
  margin: 0 auto 38px;
  text-align: center;
}

.pricing-v2__header h2 {
  margin: 9px 0 14px;
  color: var(--ink);
  font-size: clamp(36px, 4.8vw, 60px);
  font-weight: 800;
  letter-spacing: -0.05em;
  line-height: 1;
}

.pricing-v2__header > p {
  max-width: 640px;
  margin: 0 auto;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.65;
}

.pricing-modules {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 940px;
  gap: 8px;
  margin: 0 auto 48px;
  padding: 7px;
  border: 1px solid #e4e4e7;
  border-radius: 18px;
  background: rgb(255 255 255 / 88%);
  box-shadow: 0 18px 50px rgb(23 24 29 / 7%);
}

.pricing-modules button {
  display: flex;
  min-height: 62px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #686b73;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.25;
  transition:
    background 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.pricing-modules button span {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid #dedee2;
  border-radius: 50%;
  color: #8b8d94;
  font-size: 10px;
  font-weight: 800;
}

.pricing-modules button:hover {
  color: var(--ink);
  transform: translateY(-1px);
}

.pricing-modules button.is-active {
  background: var(--ink);
  color: #fff;
  box-shadow: 0 10px 22px rgb(23 24 29 / 18%);
}

.pricing-modules button.is-active span {
  border-color: rgb(255 255 255 / 18%);
  background: var(--orange-bright);
  color: #fff;
}

.pricing-module[hidden] {
  display: none;
}

.pricing-module {
  animation: pricingModuleIn 0.35s ease both;
}

@keyframes pricingModuleIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.pricing-module__header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 34px;
  margin-bottom: 28px;
}

.pricing-module__header > div:first-child {
  max-width: 760px;
}

.pricing-module__number {
  display: block;
  margin-bottom: 8px;
  color: var(--orange);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.pricing-module__header h3 {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: clamp(27px, 3.2vw, 42px);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.pricing-module__header p {
  max-width: 680px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}

.pricing-module__header .pricing-toggle {
  flex: 0 0 auto;
}

.plan-grid {
  display: grid;
  gap: 18px;
  align-items: stretch;
}

.plan-grid--professionals {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.plan-grid--facilities {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.plan-card {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 26px;
  overflow: hidden;
  border: 1px solid #e1e1e5;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 16px 42px rgb(23 24 29 / 6%);
}

.plan-card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: #d9dade;
  content: "";
}

.plan-card--featured {
  border-color: rgb(234 88 12 / 28%);
  box-shadow:
    0 22px 54px rgb(234 88 12 / 13%),
    0 8px 24px rgb(23 24 29 / 5%);
}

.plan-card--featured::before {
  background: linear-gradient(90deg, var(--orange), var(--orange-bright));
}

.plan-card--dark {
  border-color: #292b32;
  background:
    radial-gradient(circle at 90% 0%, rgb(255 100 34 / 18%), transparent 30%),
    var(--ink);
  color: #fff;
  box-shadow: 0 22px 52px rgb(23 24 29 / 18%);
}

.plan-card--dark::before {
  background: var(--orange-bright);
}

.plan-card__badge {
  position: absolute;
  top: 18px;
  inset-inline-end: 18px;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.plan-card__header {
  min-height: 126px;
  padding-inline-end: 4px;
}

.plan-card--featured .plan-card__header {
  padding-inline-end: 90px;
}

.plan-card__header > span {
  display: block;
  margin-bottom: 7px;
  color: var(--orange);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.plan-card__header h4 {
  margin: 0 0 9px;
  color: var(--ink);
  font-size: 25px;
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.05;
}

.plan-card__header p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.plan-card--dark .plan-card__header h4,
.plan-card--dark .plan-card__price,
.plan-card--dark h5,
.plan-card--dark .plan-card__limits b,
.plan-card--dark .plan-card__marketplace strong {
  color: #fff;
}

.plan-card--dark .plan-card__header p,
.plan-card--dark .plan-card__price small,
.plan-card--dark .plan-card__limits,
.plan-card--dark .plan-card__features,
.plan-card--dark .plan-card__marketplace p {
  color: rgb(255 255 255 / 64%);
}

.plan-card__price {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: end;
  gap: 2px 8px;
  margin: 24px 0 18px;
  color: var(--ink);
}

.plan-card__price strong {
  grid-row: 1 / span 2;
  font-size: 46px;
  font-weight: 850;
  letter-spacing: -0.055em;
  line-height: 0.9;
}

.plan-card__price > span {
  font-size: 12px;
  font-weight: 750;
}

.plan-card__price small {
  color: #8b8d94;
  font-size: 10px;
  font-weight: 650;
}

.plan-card__limits {
  display: grid;
  gap: 7px;
  margin-bottom: 24px;
  padding: 14px;
  border: 1px solid #ececef;
  border-radius: 12px;
  background: #f8f8f9;
  color: #686b73;
  font-size: 11px;
  line-height: 1.35;
}

.plan-card__limits span {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.plan-card__limits b {
  color: var(--ink);
  font-size: 12px;
}

.plan-card--dark .plan-card__limits {
  border-color: rgb(255 255 255 / 12%);
  background: rgb(255 255 255 / 6%);
}

.plan-card h5 {
  margin: 0 0 12px;
  color: var(--ink);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.plan-card__features {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  color: #4c505a;
  font-size: 11px;
  line-height: 1.45;
  list-style: none;
}

.plan-card__features li {
  position: relative;
  padding-inline-start: 20px;
}

.plan-card__features li::before {
  position: absolute;
  top: 1px;
  inset-inline-start: 0;
  display: grid;
  width: 14px;
  height: 14px;
  place-items: center;
  border-radius: 50%;
  background: var(--orange-soft);
  color: var(--orange);
  content: "✓";
  font-size: 8px;
  font-weight: 900;
}

.plan-card--dark .plan-card__features li::before {
  background: rgb(255 100 34 / 20%);
  color: #ff9b6d;
}

.plan-card__marketplace {
  margin-top: auto;
  padding-top: 22px;
}

.plan-card__marketplace strong {
  color: var(--ink);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.plan-card__marketplace p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.5;
}

.plan-card__cta {
  display: flex;
  min-height: 46px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 20px;
  padding: 12px 16px;
  border-radius: 10px;
  background: var(--ink);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

.plan-card__cta:hover {
  background: #30323a;
  transform: translateY(-2px);
}

.plan-card__cta--accent {
  background: var(--orange-bright);
  box-shadow: 0 10px 24px rgb(234 88 12 / 20%);
}

.plan-card__cta--accent:hover {
  background: var(--orange-dark);
}

.plan-card__cta--light {
  background: #fff;
  color: var(--ink);
}

.plan-card__cta--light:hover {
  background: #f2f2f2;
}

.pricing-rationale {
  display: grid;
  grid-template-columns: minmax(180px, 0.34fr) minmax(0, 1fr);
  gap: 34px;
  margin-top: 24px;
  padding: 26px 30px;
  border: 1px solid #e3e3e6;
  border-radius: 16px;
  background: rgb(255 255 255 / 72%);
}

.pricing-rationale span {
  color: var(--orange);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pricing-rationale p {
  margin: 0;
  color: #656871;
  font-size: 12px;
  line-height: 1.65;
}

.addon-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
  gap: 20px;
}

.credit-card {
  padding: 30px;
  border: 1px solid #e1e1e5;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 16px 42px rgb(23 24 29 / 6%);
}

.credit-card__intro {
  display: flex;
  align-items: start;
  gap: 15px;
  margin-bottom: 26px;
}

.credit-card__intro .ai-badge {
  margin: 2px 0 0;
}

.credit-card__intro h4 {
  margin: 0 0 6px;
  color: var(--ink);
  font-size: 25px;
  font-weight: 800;
  letter-spacing: -0.035em;
}

.credit-card__intro p {
  max-width: 560px;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.credit-costs {
  display: grid;
  margin: 0;
  padding: 0;
  border-top: 1px solid #ececef;
  list-style: none;
}

.credit-costs li {
  display: grid;
  grid-template-columns: minmax(160px, 0.8fr) minmax(180px, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 16px 0;
  border-bottom: 1px solid #ececef;
}

.credit-costs span {
  color: var(--ink);
  font-size: 12px;
  font-weight: 750;
}

.credit-costs small {
  color: var(--muted);
  font-size: 11px;
}

.credit-costs strong {
  min-width: 76px;
  padding: 7px 10px;
  border-radius: 999px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 10px;
  text-align: center;
  text-transform: uppercase;
}

.topup-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.topup-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 24px 20px;
  border: 1px solid #e1e1e5;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 16px 42px rgb(23 24 29 / 6%);
}

.topup-card--accent {
  border-color: rgb(234 88 12 / 30%);
  background:
    radial-gradient(circle at 100% 0%, rgb(255 100 34 / 14%), transparent 40%),
    #fff;
}

.topup-card > span {
  color: var(--orange);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.topup-card h4 {
  margin: 8px 0 20px;
  color: var(--ink);
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.035em;
}

.topup-card > p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
}

.topup-card > p strong {
  display: block;
  color: var(--ink);
  font-size: 34px;
  font-weight: 850;
  letter-spacing: -0.05em;
  line-height: 1;
}

.topup-card > div {
  display: grid;
  gap: 2px;
  margin: 24px 0;
}

.topup-card > div b {
  color: var(--ink);
  font-size: 18px;
}

.topup-card > div small {
  color: var(--muted);
  font-size: 9px;
}

.topup-card a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #ececef;
  color: var(--orange);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

@media (max-width: 1080px) {
  .plan-grid--professionals,
  .plan-grid--facilities {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .plan-grid--facilities .plan-card:last-child {
    grid-column: 1 / -1;
  }

  .addon-layout {
    grid-template-columns: 1fr;
  }

  .topup-cards {
    max-width: none;
  }
}

@media (max-width: 760px) {
  .pricing-v2 {
    padding: 72px 0 82px;
  }

  .pricing-modules {
    grid-template-columns: 1fr;
    margin-bottom: 36px;
  }

  .pricing-modules button {
    justify-content: flex-start;
  }

  .pricing-module__header {
    align-items: start;
    flex-direction: column;
  }

  .pricing-module__header .pricing-toggle {
    width: 100%;
  }

  .pricing-toggle button {
    flex: 1;
    justify-content: center;
    padding-inline: 12px;
  }

  .plan-grid--professionals,
  .plan-grid--facilities {
    grid-template-columns: 1fr;
  }

  .plan-grid--facilities .plan-card:last-child {
    grid-column: auto;
  }

  .plan-card__header {
    min-height: 0;
  }

  .pricing-rationale {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 22px;
  }

  .credit-costs li {
    grid-template-columns: 1fr auto;
    gap: 5px 14px;
  }

  .credit-costs small {
    grid-column: 1;
  }

  .credit-costs strong {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
}

@media (max-width: 520px) {
  .pricing-v2__header h2 {
    font-size: 38px;
  }

  .pricing-module__header .pricing-toggle {
    display: grid;
    border-radius: 16px;
  }

  .pricing-toggle button {
    min-height: 44px;
  }

  .plan-card {
    padding: 23px 20px;
  }

  .plan-card--featured .plan-card__header {
    padding-inline-end: 0;
    padding-top: 30px;
  }

  .topup-cards {
    grid-template-columns: 1fr;
  }
}

/* FAQ */
.faq {
  padding: 94px 0 100px;
  scroll-margin-top: calc(var(--header-h) + 20px);
  background: var(--ink);
  color: #fff;
}

.faq__layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(520px, 1.28fr);
  align-items: start;
  gap: 84px;
}

.faq__header {
  position: sticky;
  top: calc(var(--header-h) + 28px);
}

.faq__header .section-kicker {
  color: var(--orange-bright);
}

.faq__header h2 {
  max-width: 520px;
  margin: 9px 0 16px;
  font-size: clamp(34px, 4.2vw, 54px);
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1.02;
}

.faq__header > p:not(.section-kicker) {
  max-width: 470px;
  margin: 0 0 25px;
  color: rgb(255 255 255 / 58%);
  font-size: 14px;
  line-height: 1.65;
}

.faq__header > a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--orange-bright);
  font-size: 12px;
  font-weight: 750;
}

.faq__header > a span {
  font-size: 17px;
  transition: transform 0.2s ease;
}

.faq__header > a:hover span {
  transform: translateX(4px);
}

.faq__list {
  border-top: 1px solid rgb(255 255 255 / 16%);
}

.faq__list details {
  border-bottom: 1px solid rgb(255 255 255 / 16%);
}

.faq__list summary {
  display: flex;
  min-height: 82px;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 20px 2px;
  cursor: pointer;
  list-style: none;
  color: #fff;
  font-size: 17px;
  font-weight: 650;
  line-height: 1.35;
}

.faq__list summary::-webkit-details-marker {
  display: none;
}

.faq__list summary i {
  position: relative;
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  border: 1px solid rgb(255 255 255 / 18%);
  border-radius: 50%;
  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    transform 0.25s ease;
}

.faq__list summary i::before,
.faq__list summary i::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 1px;
  transform: translate(-50%, -50%);
  background: var(--orange-bright);
  content: "";
}

.faq__list summary i::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.faq__list details[open] summary i {
  transform: rotate(45deg);
  border-color: var(--orange-bright);
  background: rgb(255 100 34 / 9%);
}

.faq__list details[open] summary {
  color: #fff;
}

.faq__list details > div {
  max-width: 690px;
  padding: 0 52px 24px 2px;
}

.faq__list details p {
  margin: 0;
  color: rgb(255 255 255 / 58%);
  font-size: 13px;
  line-height: 1.75;
}

.faq__list summary:hover i {
  border-color: var(--orange-bright);
}

/* Signup */
.get-started {
  padding: 48px 0 63px;
  background: #fff;
}

.signup-band {
  display: grid;
  max-width: 820px;
  grid-template-columns: minmax(0, 0.95fr) minmax(320px, 1.05fr);
  align-items: center;
  gap: 45px;
  margin-inline: auto;
}

.signup-band__copy h2 {
  margin-top: 6px;
  color: var(--ink);
  font-size: clamp(27px, 3.4vw, 40px);
}

.signup-band__copy > p:not(.section-kicker) {
  margin: 12px 0 15px;
  color: var(--muted);
  font-size: 12px;
}

.signup-band__copy ul {
  display: grid;
  gap: 8px;
}

.signup-band__copy li,
.closing-copy li {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #33363e;
  font-size: 10px;
  font-weight: 700;
}

.signup-band__copy li span,
.closing-copy li span {
  display: grid;
  width: 17px;
  height: 17px;
  place-items: center;
  border-radius: 5px;
  background: var(--orange);
  color: #fff;
  font-size: 10px;
}

.signup-card-wrap {
  position: relative;
  min-height: 230px;
}

.signup-card-wrap__accent,
.signup-card {
  position: absolute;
  inset: 20px 5px 5px 5px;
  clip-path: polygon(0 0, 100% 16%, 100% 84%, 0 100%);
  border-radius: 12px;
}

.signup-card-wrap__accent {
  z-index: 0;
  inset: 3px 0 30px 14%;
  transform: rotate(-4deg);
  background: linear-gradient(135deg, var(--orange-bright), #ff8c4e);
}

.signup-card {
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 40px 37px;
  background: linear-gradient(135deg, var(--charcoal-2), #0f0f0f);
  color: #fff;
}

.signup-card input {
  width: 100%;
  height: 42px;
}

.signup-card button {
  min-height: 42px;
  margin-top: 8px;
  font-size: 11px;
}

.signup-card .form-status {
  min-height: 16px;
  margin-bottom: -16px;
  font-size: 9px;
}

.closing-copy {
  display: grid;
  max-width: 820px;
  grid-template-columns: 1fr 1fr;
  gap: 68px;
  margin: 58px auto 0;
  padding-top: 34px;
  border-top: 1px solid var(--line);
}

.closing-copy h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 19px;
  letter-spacing: 0;
  line-height: 1.15;
}

.closing-copy p {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.65;
}

.closing-copy ul {
  display: grid;
  align-content: center;
  gap: 12px;
}

/* Footer */
.footer {
  padding: 46px 0 22px;
  background: #121218;
  color: rgb(255 255 255 / 68%);
}

.footer__grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 50px;
}

.footer__brand img {
  width: 154px;
}

.footer__brand p {
  margin: 9px 0 0;
  font-size: 12px;
}

.footer-store-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.footer-store-links a {
  display: block;
  width: 124px;
  overflow: hidden;
  padding: 0;
  border: 0;
  border-radius: 6px;
  transition: transform 0.2s ease;
}

.footer-store-links a:hover {
  transform: translateY(-2px);
}

.footer-store-links img {
  display: block;
  width: 100%;
  height: auto;
}

.footer nav {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 35px;
}

.footer nav div {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.footer nav strong {
  margin-bottom: 3px;
  color: #fff;
  font-size: 11px;
  text-transform: uppercase;
}

.footer nav a {
  font-size: 11px;
}

.footer nav a:hover,
.footer__bottom a:hover {
  color: var(--orange-bright);
}

.footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 38px;
  padding-top: 18px;
  border-top: 1px solid rgb(255 255 255 / 9%);
  font-size: 10px;
}

/* Feature detail pages */
.feature-page {
  background: #fff;
}

.feature-page-header {
  position: sticky;
  z-index: 50;
  top: 0;
  height: 88px;
  border-top: 16px solid var(--nav-accent);
  border-bottom: 1px solid var(--line);
  background: #fff;
}

.feature-page-header__inner {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

.feature-page-header img {
  width: 190px;
}

.feature-page-header nav {
  display: flex;
  align-items: center;
  gap: 10px;
}

.feature-page-header .language-selector,
.feature-page-header .language-picker {
  min-height: 34px;
}

.feature-page-header nav a {
  color: #50535b;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.feature-page-header nav a:hover {
  color: var(--orange);
}

.feature-page-header .feature-page-header__cta {
  padding: 11px 22px;
  border-radius: 3px;
  background: var(--orange-bright);
  color: #fff;
  text-transform: uppercase;
}

.feature-page-header .feature-page-header__cta:hover {
  background: var(--orange-dark);
  color: #fff;
}

.feature-detail {
  overflow: hidden;
  padding: 36px 0 0;
  background:
    radial-gradient(circle at 92% 8%, rgb(234 88 12 / 22%), transparent 27%),
    var(--charcoal);
  color: #fff;
}

.feature-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  color: rgb(255 255 255 / 48%);
  font-size: 10px;
}

.feature-breadcrumb a:hover {
  color: #fff;
}

.feature-breadcrumb strong {
  overflow: hidden;
  max-width: 440px;
  color: rgb(255 255 255 / 78%);
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feature-detail__hero {
  display: grid;
  min-height: 650px;
  grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
  align-items: center;
  gap: 58px;
  padding: 62px 0 68px;
}

.feature-detail__copy h1 {
  max-width: 610px;
  margin: 11px 0 0;
  font-family: var(--font-display);
  font-size: clamp(38px, 5vw, 66px);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.98;
  text-transform: uppercase;
}

.feature-detail__lead {
  max-width: 590px;
  margin: 23px 0 0;
  color: rgb(255 255 255 / 67%);
  font-size: 14px;
  line-height: 1.7;
}

.feature-detail__list {
  display: grid;
  gap: 10px;
  margin-top: 25px;
}

.feature-detail__list li {
  display: flex;
  align-items: center;
  gap: 9px;
  color: rgb(255 255 255 / 82%);
  font-size: 11px;
}

.feature-detail__list li span {
  display: grid;
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 5px;
  background: var(--orange);
  color: #fff;
  font-size: 10px;
}

.feature-detail__list strong {
  font-weight: 600;
}

.feature-detail__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 31px;
}

.feature-primary-action,
.feature-secondary-action {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 5px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.feature-primary-action {
  background: var(--orange);
  color: #fff;
}

.feature-primary-action:hover {
  background: var(--orange-dark);
}

.feature-secondary-action {
  border: 1px solid rgb(255 255 255 / 18%);
  color: #fff;
}

.feature-secondary-action:hover {
  border-color: rgb(255 255 255 / 35%);
  background: rgb(255 255 255 / 6%);
}

.feature-detail__visual {
  overflow: hidden;
  margin: 0;
  border: 1px solid rgb(255 255 255 / 15%);
  border-radius: 13px;
  background: #f6f6f6;
  box-shadow: 0 35px 70px rgb(0 0 0 / 34%);
  transform: perspective(1200px) rotateY(-3deg);
}

.feature-detail__visual-bar {
  display: flex;
  height: 34px;
  align-items: center;
  gap: 5px;
  padding: 0 11px;
  border-bottom: 1px solid #e7e7e7;
  background: #fff;
}

.feature-detail__visual-bar i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #d5d5d5;
}

.feature-detail__visual-bar i:first-child {
  background: var(--orange);
}

.feature-detail__visual-bar span {
  margin-left: auto;
  color: #888b92;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.feature-detail__visual > img {
  width: 100%;
  max-height: 610px;
  object-fit: contain;
  object-position: center top;
}

.feature-detail__visual > img.is-mobile-screen {
  height: 590px;
  padding: 22px;
  object-fit: contain;
  background:
    radial-gradient(circle, rgb(234 88 12 / 12%), transparent 45%),
    #ececec;
}

.feature-proof {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgb(255 255 255 / 10%);
}

.feature-proof > div {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 22px 20px;
  border-right: 1px solid rgb(255 255 255 / 10%);
}

.feature-proof > div:last-child {
  border-right: 0;
}

.feature-proof span {
  color: var(--orange-bright);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0;
}

.feature-proof strong {
  font-family: var(--font-display);
  font-size: 12px;
  letter-spacing: 0;
}

.feature-related {
  padding: 72px 0 80px;
  background: var(--mist);
}

.feature-related header {
  max-width: 620px;
}

.feature-related h2,
.feature-app h2 {
  margin: 7px 0 0;
  font-family: var(--font-display);
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.05;
  text-transform: uppercase;
}

.feature-related__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 32px;
}

.feature-related__grid a {
  display: flex;
  min-height: 180px;
  flex-direction: column;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.feature-related__grid a:hover {
  transform: translateY(-3px);
  border-color: rgb(234 88 12 / 35%);
  box-shadow: 0 18px 35px rgb(35 31 28 / 9%);
}

.feature-related__grid small {
  color: var(--orange);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.feature-related__grid strong {
  margin-top: 12px;
  font-family: var(--font-display);
  font-size: 18px;
  letter-spacing: 0;
  line-height: 1.15;
}

.feature-related__grid span {
  margin-top: auto;
  color: var(--orange);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.feature-app {
  padding: 55px 0;
  background:
    radial-gradient(circle at 85% 20%, rgb(234 88 12 / 24%), transparent 28%),
    var(--charcoal);
  color: #fff;
}

.feature-app__inner {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 45px;
}

.feature-app h2 {
  max-width: 670px;
}

.feature-app__stores {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  min-width: 0;
  margin: 0;
}

.feature-app__stores a {
  display: block;
  width: 155px;
  max-width: calc(50% - 6px);
  overflow: hidden;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  transition: transform 0.2s ease;
}

.feature-app__stores a:hover {
  transform: translateY(-2px);
}

.feature-app__stores img {
  display: block;
  width: 100%;
  height: auto;
}

.feature-page-footer {
  padding-top: 1px;
}

.feature-page-footer .footer__bottom {
  margin-top: 0;
}

/* Grouped feature catalog */
.features-page {
  background: #fff;
}

.features-hero {
  padding: 80px 0 76px;
  background:
    radial-gradient(circle at 87% 12%, rgb(234 88 12 / 28%), transparent 27%),
    var(--charcoal);
  color: #fff;
}

.features-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(330px, 0.9fr);
  align-items: end;
  gap: 72px;
}

.features-hero h1 {
  max-width: 760px;
  margin: 12px 0 0;
  font-family: var(--font-display);
  font-size: clamp(44px, 6vw, 76px);
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.features-hero h1 span {
  display: block;
  color: var(--orange-bright);
}

.features-hero__copy > p {
  max-width: 530px;
  margin: 0;
  color: rgb(255 255 255 / 68%);
  font-size: 16px;
  line-height: 24px;
}

.audience-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 23px;
}

.audience-chips span {
  padding: 7px 10px;
  border: 1px solid rgb(255 255 255 / 14%);
  border-radius: 9999px;
  background: rgb(255 255 255 / 5%);
  color: rgb(255 255 255 / 82%);
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
}

.feature-catalog-nav {
  position: sticky;
  z-index: 40;
  top: 74px;
  border-bottom: 1px solid var(--line);
  background: rgb(255 255 255 / 94%);
  backdrop-filter: blur(15px);
}

.feature-catalog-nav .container {
  display: flex;
  overflow-x: auto;
  scrollbar-width: none;
}

.feature-catalog-nav .container::-webkit-scrollbar {
  display: none;
}

.feature-catalog-nav a {
  position: relative;
  flex: 0 0 auto;
  padding: 17px 18px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
}

.feature-catalog-nav a::after {
  position: absolute;
  right: 18px;
  bottom: -1px;
  left: 18px;
  height: 2px;
  transform: scaleX(0);
  background: var(--orange);
  content: "";
  transition: transform 0.2s ease;
}

.feature-catalog-nav a:hover,
.feature-catalog-nav a.is-active {
  color: var(--foreground, #171717);
}

.feature-catalog-nav a.is-active::after {
  transform: scaleX(1);
}

.feature-catalog {
  background: #fff;
}

.feature-category {
  padding: 82px 0;
  border-bottom: 1px solid var(--line);
  scroll-margin-top: 128px;
}

.feature-category:last-child {
  border-bottom: 0;
}

.feature-category__header {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: start;
  gap: 20px;
  margin-bottom: 34px;
}

.feature-category__index {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 8px;
  background: var(--orange);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}

.feature-category__header h2 {
  margin: 6px 0 0;
  font-family: var(--font-display);
  font-size: clamp(28px, 3.5vw, 42px);
  font-weight: 700;
  line-height: 1.14;
}

.feature-category__header div > p:last-child {
  max-width: 710px;
  margin: 11px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 20px;
}

.feature-category__header > a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 8px 13px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: #525252;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  transition:
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.feature-category__header > a:hover {
  transform: translateY(-2px);
  border-color: rgb(234 88 12 / 45%);
  color: var(--orange);
}

.feature-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.feature-catalog-card {
  min-height: 210px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

.feature-catalog-card:hover {
  transform: translateY(-3px);
  border-color: rgb(234 88 12 / 32%);
  box-shadow: 0 16px 35px rgb(24 24 24 / 7%);
}

.feature-catalog-card--accent {
  border-color: rgb(234 88 12 / 28%);
  background: #fff7ed;
}

.feature-catalog-card > span {
  display: inline-flex;
  padding: 4px 7px;
  border-radius: 9999px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}

.feature-catalog-card h3,
.feature-catalog-card__title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0 0;
  font-family: var(--font-display);
  font-size: 20px;
  font-weight: 600;
  line-height: 28px;
}

.feature-catalog-card__title > span:first-child {
  min-width: 0;
}

.feature-catalog-card p {
  margin: 9px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 20px;
}

.catalog-app {
  overflow: hidden;
  padding: 72px 0 0;
  background:
    radial-gradient(circle at 80% 8%, rgb(234 88 12 / 25%), transparent 30%),
    var(--charcoal);
  color: #fff;
}

.catalog-app__inner {
  display: grid;
  min-height: 570px;
  grid-template-columns: minmax(0, 0.9fr) minmax(400px, 1.1fr);
  align-items: center;
  gap: 70px;
}

.catalog-app__copy h2 {
  max-width: 590px;
  margin: 9px 0 0;
  font-family: var(--font-display);
  font-size: clamp(34px, 4.5vw, 56px);
  font-weight: 800;
  line-height: 1.05;
  text-transform: uppercase;
}

.catalog-app__copy > p:not(.section-kicker) {
  max-width: 520px;
  margin: 17px 0 0;
  color: rgb(255 255 255 / 65%);
  font-size: 14px;
  line-height: 20px;
}

.catalog-app__stores {
  width: min(100%, 400px);
  margin-top: 26px;
}

.catalog-app__phones {
  position: relative;
  align-self: end;
  height: 535px;
}

.catalog-app__phones img {
  position: absolute;
  bottom: -25px;
  border: 4px solid #080808;
  border-radius: 26px;
  box-shadow: 0 30px 55px rgb(0 0 0 / 35%);
}

.catalog-app__phones img:first-child {
  z-index: 1;
  left: 3%;
  width: 31%;
  transform: rotate(-4deg);
}

.catalog-app__phones img:last-child {
  z-index: 2;
  right: 7%;
  width: 44%;
  transform: rotate(3deg);
}

.catalog-footer-links {
  display: flex;
  align-items: center;
  gap: 16px;
}

/* Motion */
.reveal {
  opacity: 0;
  transform: translateY(25px);
  transition:
    opacity 0.65s ease var(--delay, 0ms),
    transform 0.65s cubic-bezier(0.22, 0.75, 0.24, 1) var(--delay, 0ms);
}

.reveal.is-visible {
  opacity: 1;
  transform: none;
}

@media (max-width: 1180px) {
  .hero__copy-inner {
    margin-left: 32px;
    padding-right: 36px;
  }

  .desktop-nav a,
  .desktop-nav .nav-trigger {
    padding-inline: 10px;
    font-size: 11px;
  }

  .mega-menu__panel {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .pricing-grid {
    gap: 16px;
  }

  .pricing-card {
    padding: 24px 18px 22px;
  }

  .pricing-card__price strong {
    font-size: 36px;
  }

  .mega-menu__col {
    padding: 18px 14px 16px;
  }

  .mega-menu__list a {
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 8px;
    padding: 8px 6px;
  }

  .mega-menu__icon {
    width: 30px;
    height: 30px;
  }

  .mega-menu__list strong {
    font-size: 12px;
    line-height: 16px;
  }

  .mega-menu__list em {
    font-size: 11px;
    line-height: 15px;
  }

  .feature-grid {
    gap: 0 36px;
  }

  .delivery-grid {
    gap: 14px;
  }

  .delivery-card {
    padding: 24px 20px;
  }
}

@media (max-width: 980px) {
  :root {
    --header-h: 72px;
  }

  .header__inner {
    width: calc(100% - 32px);
  }

  .desktop-nav,
  .login-link {
    display: none;
  }

  .menu-toggle {
    display: grid;
  }

  .header-cta {
    min-height: 41px;
    padding: 9px 16px;
    font-size: 11px;
  }

  .pricing-grid {
    grid-template-columns: 1fr;
    max-width: 460px;
    margin-inline: auto;
  }

  .pricing-card--pro {
    order: -1;
  }

  .pricing__header {
    margin-bottom: 28px;
  }

  .faq__layout {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .faq__header {
    position: static;
  }

  .hero {
    grid-template-columns: 1fr;
  }

  .hero__copy-inner {
    width: var(--container);
    max-width: 720px;
    margin-inline: auto;
    padding: 72px 0 76px;
    text-align: center;
  }

  .hero__lead {
    margin-inline: auto;
  }

  .lead-form {
    max-width: 570px;
    margin-inline: auto;
    text-align: left;
  }

  .hero__benefits {
    justify-content: center;
  }

  .hero__visual {
    min-height: 560px;
  }

  .hero-product {
    width: min(92%, 720px);
  }

  .platform-showcase {
    grid-template-columns: 1fr;
  }

  .mobile-screens {
    min-height: 455px;
  }

  .feature-detail__hero {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .feature-detail__copy {
    max-width: 720px;
  }

  .feature-detail__visual {
    transform: none;
  }

  .feature-app__inner {
    grid-template-columns: 1fr;
  }

  .feature-app__stores {
    flex-direction: column;
    align-items: flex-start;
    width: min(100%, 430px);
    min-width: 0;
  }

  .feature-app__stores a {
    max-width: 180px;
    width: 155px;
  }

  .feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .feature:nth-child(n) {
    min-height: 280px;
    padding: 36px 0 38px;
    border-bottom: 1px solid #d7d9de;
  }

  .feature:nth-child(odd) {
    padding-right: 28px;
  }

  .feature:nth-child(even) {
    padding-left: 28px;
  }

  .feature:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  .delivery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }

  .delivery-card {
    min-height: 330px;
  }

  .features-hero__inner {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .features-hero__copy > p {
    max-width: 720px;
  }

  .feature-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .catalog-app__inner {
    grid-template-columns: minmax(0, 0.9fr) minmax(330px, 1.1fr);
    gap: 35px;
  }
}

@media (max-width: 760px) {
  :root {
    --container: min(620px, calc(100% - 32px));
  }

  .promo__inner {
    width: calc(100% - 56px);
    justify-content: flex-start;
    overflow: hidden;
    font-size: 10px;
    white-space: nowrap;
  }

  .promo__inner span {
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .promo button {
    right: -27px;
  }

  .brand img {
    width: 136px;
  }

  .hero h1 {
    font-size: clamp(36px, 10vw, 50px);
  }

  .hero__visual {
    min-height: 470px;
  }

  .hero-product {
    height: 390px;
  }

  .hero-product__desktop {
    top: 54px;
    left: -2%;
    width: 93%;
  }

  .hero-product__phone {
    right: 0;
    bottom: -2px;
    width: 19.5%;
  }

  .hero-product__badge--clients {
    top: 14px;
    right: 0;
  }

  .hero-product__badge--ai {
    display: none;
  }

  .hero-quote {
    right: 3%;
    bottom: 12px;
    left: 3%;
    grid-template-columns: 90px 1fr;
    padding-inline: 12px;
  }

  .hero-quote__rating {
    padding-right: 10px;
    font-size: 14px;
  }

  .hero-quote p {
    font-size: 9px;
  }

  .proof__partners {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .proof__partner {
    min-height: 180px;
    border-bottom: 1px solid var(--line);
  }

  .proof__partner:nth-child(2n) {
    border-right: 0;
  }

  .proof__partner:nth-child(n + 3) {
    border-bottom: 0;
  }

  .features {
    padding-top: 58px;
  }

  .section-heading {
    margin-bottom: 30px;
  }

  .feature-grid {
    grid-template-columns: 1fr;
  }

  .feature:nth-child(n) {
    min-height: 0;
    padding: 30px 0 35px;
    border-bottom: 1px solid #d7d9de;
  }

  .feature:last-child {
    border-bottom: 0;
  }

  .feature__icon {
    width: 53px;
    height: 53px;
  }

  .product-showcase {
    padding: 58px 0;
  }

  .platform-showcase {
    grid-template-columns: 1fr;
  }

  .dashboard-showcase,
  .mobile-showcase {
    padding: 18px;
  }

  .mobile-screens {
    min-height: 420px;
  }

  .app-phone {
    width: min(42%, 158px);
  }

  .app-phone--home {
    margin-right: -30px;
  }

  .signup-band {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .signup-card-wrap {
    min-height: 250px;
  }

  .closing-copy {
    grid-template-columns: 1fr;
    gap: 26px;
    margin-top: 35px;
  }

  .footer__grid {
    grid-template-columns: 1fr;
  }

  .feature-page-header nav > a:not(.feature-page-header__cta) {
    display: none;
  }

  .feature-detail__hero {
    min-height: 0;
    padding: 48px 0 55px;
  }

  .feature-detail__copy h1 {
    font-size: clamp(36px, 9vw, 54px);
  }

  .feature-proof {
    grid-template-columns: 1fr;
  }

  .feature-proof > div {
    border-right: 0;
    border-bottom: 1px solid rgb(255 255 255 / 10%);
  }

  .feature-proof > div:last-child {
    border-bottom: 0;
  }

  .feature-related__grid {
    grid-template-columns: 1fr;
  }

  .feature-related__grid a {
    min-height: 145px;
  }

  .features-all {
    align-items: flex-start;
    flex-direction: column;
  }

  .feature-category {
    padding: 62px 0;
  }

  .feature-category__header {
    grid-template-columns: 44px minmax(0, 1fr);
  }

  .feature-category__header > a {
    grid-column: 2;
    justify-self: start;
  }

  .feature-catalog-grid {
    grid-template-columns: 1fr;
  }

  .feature-catalog-card {
    min-height: 0;
  }

  .catalog-app {
    padding-top: 55px;
  }

  .catalog-app__inner {
    min-height: 0;
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .catalog-app__phones {
    width: min(100%, 560px);
    height: 465px;
    margin-inline: auto;
  }

  .catalog-footer-links {
    flex-wrap: wrap;
  }
}

@media (max-width: 560px) {
  .header__actions {
    gap: 8px;
  }

  .header-cta {
    display: none;
  }

  .hero__copy-inner {
    padding: 56px 0 62px;
  }

  .eyebrow,
  .section-kicker {
    font-size: 11px;
  }

  .hero h1 {
    font-size: clamp(33px, 10.5vw, 45px);
  }

  .hero__lead {
    font-size: 13px;
  }

  .lead-form__row {
    grid-template-columns: 1fr;
  }

  .hero__benefits {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .hero__visual {
    min-height: 400px;
  }

  .hero-product {
    width: 96%;
    height: 320px;
  }

  .hero-product__desktop {
    top: 57px;
  }

  .hero-product__phone {
    bottom: -3px;
    width: 21.5%;
  }

  .hero-product__badge--clients {
    display: none;
  }

  .hero-quote {
    grid-template-columns: 1fr;
    gap: 4px;
    min-height: 66px;
    text-align: center;
  }

  .hero-quote__rating {
    padding: 0;
    border: 0;
  }

  .hero-quote > span {
    grid-column: 1;
    margin-top: 0;
  }

  .proof {
    padding: 56px 0 62px;
  }

  .proof__partners {
    grid-template-columns: 1fr 1fr;
  }

  .section-heading h2,
  .delivery__heading h2,
  .product-showcase__heading h2,
  .signup-band h2 {
    font-size: clamp(27px, 9vw, 38px);
  }

  .delivery-grid {
    grid-template-columns: 1fr;
  }

  .delivery-card {
    min-height: 310px;
  }

  .impact__grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .impact-card {
    min-height: 128px;
    padding: 28px 20px 24px;
  }

  .product-showcase {
    padding-top: 39px;
  }

  .mobile-screens {
    min-height: 350px;
    gap: 0;
  }

  .app-phone {
    width: min(46%, 142px);
  }

  .app-phone--home {
    margin-right: -24px;
  }

  .store-links {
    grid-template-columns: 1fr;
  }

  .feature-page-header img {
    width: 132px;
  }

  .feature-page-header__inner {
    gap: 12px;
  }

  .feature-page-header .feature-page-header__cta {
    padding: 9px 11px;
    font-size: 9px;
  }

  .feature-breadcrumb strong {
    max-width: 190px;
  }

  .feature-detail {
    padding-top: 25px;
  }

  .feature-detail__visual > img.is-mobile-screen {
    height: 480px;
    padding: 14px;
  }

  .feature-detail__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .feature-related,
  .feature-app {
    padding: 48px 0;
  }

  .features-hero {
    padding: 56px 0;
  }

  .features-hero h1 {
    font-size: clamp(36px, 11vw, 50px);
  }

  .features-hero__copy > p {
    font-size: 14px;
    line-height: 20px;
  }

  .feature-catalog-nav a {
    padding: 15px 12px;
  }

  .feature-catalog-nav a::after {
    right: 12px;
    left: 12px;
  }

  .feature-category {
    padding: 52px 0;
  }

  .feature-category__header {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 13px;
    margin-bottom: 24px;
  }

  .feature-category__index {
    width: 34px;
    height: 34px;
  }

  .feature-category__header h2 {
    font-size: 28px;
    line-height: 36px;
  }

  .catalog-app__copy h2 {
    font-size: 34px;
  }

  .catalog-app__phones {
    height: 390px;
  }

  .catalog-app__phones img:first-child {
    width: 34%;
  }

  .catalog-app__phones img:last-child {
    width: 49%;
  }

  .signup-card {
    padding-inline: 28px;
  }

  .footer nav {
    gap: 25px;
  }

  .footer__bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }
}

@media (max-width: 1180px) {
  .ai-demo {
    grid-template-columns: minmax(270px, 0.7fr) 52px minmax(500px, 1.3fr);
    gap: 11px;
  }

  .ai-demo__bridge {
    width: 52px;
    height: 52px;
  }

  .ai-demo__bridge::before,
  .ai-demo__bridge::after {
    width: 12px;
  }

  .ai-demo__source {
    padding: 17px;
  }

  .ai-demo__result {
    padding: 12px;
  }

  .ai-result-row__macros {
    gap: 4px;
  }

  .ai-result__total {
    grid-template-columns: minmax(105px, 1fr) repeat(3, auto);
  }

  .ai-result__total button {
    grid-column: 1 / -1;
  }

  .paper-demo {
    grid-template-columns: minmax(260px, 0.62fr) 52px minmax(560px, 1.38fr);
    gap: 11px;
  }

  .paper-demo__bridge {
    width: 52px;
    height: 52px;
  }

  .paper-demo__bridge::before,
  .paper-demo__bridge::after {
    width: 12px;
  }

  .paper-demo__source,
  .paper-demo__result {
    padding: 13px;
  }

  .workout-demo {
    grid-template-columns: minmax(270px, 0.64fr) 52px minmax(570px, 1.36fr);
    gap: 11px;
  }

  .workout-demo__bridge {
    width: 52px;
    height: 52px;
  }

  .workout-demo__bridge::before,
  .workout-demo__bridge::after {
    width: 12px;
  }

  .workout-demo__source,
  .workout-demo__result {
    padding: 13px;
  }
}

@media (max-width: 980px) {
  .ai-transform__header {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .ai-transform__header > div:last-child > p {
    max-width: 720px;
  }

  .ai-demo {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .ai-demo__source,
  .ai-demo__result {
    width: min(100%, 760px);
    margin-inline: auto;
  }

  .ai-demo__bridge {
    justify-self: center;
    width: 54px;
    height: 54px;
  }

  .ai-demo__bridge::before,
  .ai-demo__bridge::after {
    left: 50%;
    width: 1px;
    height: 17px;
    transform: translateX(-50%);
  }

  .ai-demo__bridge::before {
    top: auto;
    right: auto;
    bottom: 100%;
  }

  .ai-demo__bridge::after {
    top: 100%;
  }

  .paper-transform__header {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .paper-transform__header > div:last-child > p {
    max-width: 720px;
  }

  .paper-demo {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .paper-demo__source,
  .paper-demo__result {
    width: min(100%, 760px);
    margin-inline: auto;
  }

  .paper-document {
    max-height: 455px;
  }

  .paper-demo__bridge {
    justify-self: center;
    width: 54px;
    height: 54px;
  }

  .paper-demo__bridge::before,
  .paper-demo__bridge::after {
    left: 50%;
    width: 1px;
    height: 17px;
    transform: translateX(-50%);
  }

  .paper-demo__bridge::before {
    top: auto;
    right: auto;
    bottom: 100%;
  }

  .paper-demo__bridge::after {
    top: 100%;
  }

  .workout-transform__header {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .workout-transform__header > div:last-child > p {
    max-width: 720px;
  }

  .workout-demo {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .workout-demo__source,
  .workout-demo__result {
    width: min(100%, 760px);
    margin-inline: auto;
  }

  .workout-demo__bridge {
    justify-self: center;
    width: 54px;
    height: 54px;
  }

  .workout-demo__bridge::before,
  .workout-demo__bridge::after {
    left: 50%;
    width: 1px;
    height: 17px;
    transform: translateX(-50%);
  }

  .workout-demo__bridge::before {
    top: auto;
    right: auto;
    bottom: 100%;
  }

  .workout-demo__bridge::after {
    top: 100%;
  }
}

@media (max-width: 760px) {
  .ai-transform {
    padding: 60px 0 54px;
  }

  .ai-transform__header {
    margin-bottom: 28px;
  }

  .ai-result-row__macros {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }

  .ai-result__total {
    grid-template-columns: repeat(3, 1fr);
  }

  .ai-result__total > div,
  .ai-result__total button {
    grid-column: 1 / -1;
  }

  .ai-demo-steps {
    grid-template-columns: 1fr 1fr;
  }

  .paper-transform {
    padding: 60px 0 54px;
  }

  .paper-transform__header {
    margin-bottom: 28px;
  }

  .paper-demo-steps {
    grid-template-columns: 1fr 1fr;
  }

  .workout-transform {
    padding: 60px 0 54px;
  }

  .workout-transform__header {
    margin-bottom: 28px;
  }

  .workout-demo-steps {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 560px) {
  .ai-transform__header h2 {
    font-size: clamp(31px, 9.5vw, 40px);
  }

  .ai-demo__source,
  .ai-demo__result {
    padding: 12px;
    border-radius: 12px;
  }

  .ai-prompt__bar span:last-child,
  .ai-prompt__footer > span {
    display: none;
  }

  .ai-prompt__text {
    min-height: 112px;
    padding: 15px 13px;
    font-size: 16px;
    line-height: 24px;
  }

  .ai-agent-status {
    grid-template-columns: auto 1fr;
  }

  .ai-agent-status__dots {
    display: none;
  }

  .ai-detection span {
    width: 100%;
  }

  .ai-result {
    padding: 9px;
  }

  .ai-result-row {
    padding: 9px;
  }

  .ai-result-row__title {
    grid-template-columns: 20px minmax(0, 1fr) auto;
  }

  .ai-result-row__title > strong em {
    margin-left: 3px;
  }

  .ai-result-row__macros {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-left: 27px;
  }

  .ai-result__total {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .ai-demo-steps {
    grid-template-columns: 1fr;
  }

  .paper-transform__header h2 {
    font-size: clamp(31px, 9.5vw, 40px);
  }

  .paper-demo__source,
  .paper-demo__result {
    padding: 12px;
    border-radius: 12px;
  }

  .paper-document {
    max-height: 390px;
  }

  .paper-agent-status {
    grid-template-columns: auto 1fr;
  }

  .paper-agent-status > i {
    display: none;
  }

  .paper-extracted span {
    width: 100%;
  }

  .meal-plan-ui {
    padding: 9px;
  }

  .meal-plan-ui__assignment {
    grid-template-columns: 1fr 1fr;
  }

  .meal-plan-ui__assignment span:last-child {
    grid-column: 1 / -1;
  }

  .meal-plan-ui__week {
    grid-template-columns: auto auto auto;
  }

  .meal-plan-ui__week label {
    display: none;
  }

  .meal-plan-day {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .meal-plan-day > div {
    grid-template-columns: 1fr;
  }

  .meal-card {
    min-height: 39px;
  }

  .paper-demo-steps {
    grid-template-columns: 1fr;
  }

  .workout-transform__header h2 {
    font-size: clamp(31px, 9.5vw, 40px);
  }

  .workout-demo__source,
  .workout-demo__result {
    padding: 12px;
    border-radius: 12px;
  }

  .workout-prompt__bar span:last-child,
  .workout-prompt__footer > span {
    display: none;
  }

  .workout-prompt__text {
    min-height: 170px;
    padding: 14px 12px;
  }

  .workout-prompt__text pre {
    font-size: 12px;
    line-height: 22px;
  }

  .workout-agent-status {
    grid-template-columns: auto 1fr;
  }

  .workout-agent-status > i {
    display: none;
  }

  .workout-detection span {
    width: 100%;
  }

  .workout-builder-ui {
    padding: 8px;
  }

  .workout-builder-ui__toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .workout-exercise > header {
    grid-template-columns: 17px 25px minmax(0, 1fr);
  }

  .workout-exercise__time {
    display: none;
  }

  .workout-set-table {
    overflow-x: auto;
  }

  .workout-set-table > div {
    min-width: 280px;
  }

  .workout-demo-steps {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }

  .reveal {
    opacity: 1;
    transform: none;
  }

  .ai-prompt__text i,
  .ai-agent-status__dots i,
  .ai-demo__bridge i,
  .ai-detection span {
    animation: none !important;
  }

  .paper-document__scan::before,
  .paper-document__scan i,
  .paper-agent-status > i,
  .paper-demo__bridge i {
    animation: none !important;
  }

  .workout-prompt__text > i,
  .workout-agent-status > i,
  .workout-demo__bridge i {
    animation: none !important;
  }
}

/* Standalone feature pages */
.fp-hero {
  overflow: hidden;
  padding: 26px 0 72px;
  background:
    radial-gradient(circle at 82% 18%, rgb(255 100 34 / 13%), transparent 31%),
    linear-gradient(180deg, #fff 0%, #f7f7f6 100%);
}

.fp-hero__grid {
  display: grid;
  min-height: 540px;
  grid-template-columns: minmax(0, 0.85fr) minmax(520px, 1.15fr);
  align-items: center;
  gap: 58px;
}

.fp-hero__copy h1,
.fp-directory-hero h1 {
  max-width: 760px;
  margin: 10px 0 18px;
  color: var(--ink);
  font-size: clamp(42px, 5.3vw, 72px);
  font-weight: 800;
  letter-spacing: -0.05em;
  line-height: 0.98;
}

.fp-hero__copy > p:not(.section-kicker),
.fp-directory-hero .container > p:last-child {
  max-width: 660px;
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.65;
}

.fp-hero__copy ul {
  display: grid;
  gap: 10px;
  margin: 26px 0 28px;
  padding: 0;
  list-style: none;
}

.fp-hero__copy li {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #3f4654;
  font-size: 14px;
  font-weight: 650;
}

.fp-hero__copy li span {
  display: grid;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 12px;
}

.fp-preview {
  overflow: hidden;
  min-height: 390px;
  border: 1px solid #d8d8d8;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 30px 70px rgb(23 24 29 / 14%);
}

.fp-preview__bar {
  display: flex;
  height: 46px;
  align-items: center;
  gap: 6px;
  padding: 0 16px;
  border-bottom: 1px solid #e8e8e8;
  background: #fbfbfb;
}

.fp-preview__bar > span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d4d4d4;
}

.fp-preview__bar > span:first-child {
  background: var(--orange-bright);
}

.fp-preview__bar strong {
  margin-left: auto;
  color: #8a8f98;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.fp-preview__body {
  display: grid;
  min-height: 344px;
  grid-template-columns: 54px 1fr;
}

.fp-preview__sidebar {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 13px;
  padding: 22px 0;
  background: var(--ink);
}

.fp-preview__sidebar i {
  width: 22px;
  height: 22px;
  border-radius: 7px;
  background: rgb(255 255 255 / 12%);
}

.fp-preview__sidebar i:first-child {
  background: var(--orange-bright);
}

.fp-preview__content {
  padding: 26px;
  background:
    linear-gradient(90deg, rgb(23 24 29 / 3%) 1px, transparent 1px) 0 0 / 40px 40px,
    #f7f7f7;
}

.fp-preview__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 20px;
}

.fp-preview__heading b {
  color: var(--ink);
  font-size: 18px;
}

.fp-preview__heading button {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 0;
  border-radius: 8px;
  background: var(--orange-bright);
  color: #fff;
  font-size: 18px;
}

.fp-preview__cards {
  display: grid;
  gap: 12px;
}

.fp-preview__cards article {
  padding: 16px;
  border: 1px solid #e5e5e5;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 16px rgb(23 24 29 / 5%);
}

.fp-preview__cards small {
  display: block;
  color: var(--orange);
  font-size: 9px;
  font-weight: 800;
}

.fp-preview__cards strong {
  display: block;
  margin: 4px 0 12px;
  color: var(--ink);
  font-size: 13px;
}

.fp-preview__cards article > div {
  height: 5px;
  overflow: hidden;
  border-radius: 10px;
  background: #eeeeee;
}

.fp-preview__cards article i {
  display: block;
  width: var(--w);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--orange-bright), #0d9488);
}

/* Nutrition product previews */
.fp-nutrition-preview,
.fp-mealplan-preview,
.fp-macros-preview {
  min-height: 0;
  background: #f7f7f7;
}

.fp-nutrition-preview__header,
.fp-mealplan-preview__header,
.fp-macros-preview__header {
  display: flex;
  min-height: 68px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 18px;
  border-bottom: 1px solid #e6e6e6;
  background: #fff;
}

.fp-nutrition-preview__header div,
.fp-mealplan-preview__header div,
.fp-macros-preview__header div {
  min-width: 0;
}

.fp-nutrition-preview__header small,
.fp-mealplan-preview__header small,
.fp-macros-preview__header small {
  display: block;
  color: var(--orange);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.fp-nutrition-preview__header strong,
.fp-mealplan-preview__header strong,
.fp-macros-preview__header strong {
  display: block;
  overflow: hidden;
  margin-top: 3px;
  color: var(--ink);
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fp-nutrition-preview__header > span {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 999px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 10px;
  font-weight: 750;
}

.fp-meal-list {
  display: grid;
  gap: 8px;
  padding: 14px;
}

.fp-meal-list article {
  display: grid;
  grid-template-columns: 76px 1fr;
  align-items: center;
  gap: 12px;
  padding: 11px 12px;
  border: 1px solid #e7e7e7;
  border-radius: 11px;
  background: #fff;
}

.fp-meal-list__time {
  display: flex;
  align-items: center;
  gap: 7px;
}

.fp-meal-list__time i {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--orange-bright);
  box-shadow: 0 0 0 4px var(--orange-soft);
}

.fp-meal-list__time small {
  color: #6b7280;
  font-size: 9px;
  font-weight: 700;
}

.fp-meal-list__content {
  min-width: 0;
}

.fp-meal-list__content > strong {
  display: block;
  overflow: hidden;
  color: var(--ink);
  font-size: 11px;
  line-height: 16px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fp-meal-list__content > div {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 6px;
}

.fp-meal-list__content b,
.fp-meal-list__content span {
  padding: 2px 5px;
  border-radius: 4px;
  background: #f1f3f4;
  color: #626873;
  font-size: 8px;
  font-weight: 700;
}

.fp-meal-list__content b {
  background: var(--orange-soft);
  color: var(--orange);
}

.fp-nutrition-preview__total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 18px 14px;
  border-top: 1px solid #e5e5e5;
  color: #747982;
  font-size: 9px;
}

.fp-nutrition-preview__total strong {
  color: var(--ink);
  font-size: 11px;
}

.fp-mealplan-preview__header button {
  flex: 0 0 auto;
  padding: 7px 10px;
  border: 0;
  border-radius: 7px;
  background: var(--orange-bright);
  color: #fff;
  font-size: 9px;
  font-weight: 750;
}

.fp-mealplan-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 14px;
}

.fp-mealplan-grid > article {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e4e4e4;
  border-radius: 10px;
  background: #fff;
}

.fp-mealplan-grid > article > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 7px 9px;
  border-bottom: 1px solid #ededed;
  background: #fbfbfb;
}

.fp-mealplan-grid header span {
  color: var(--orange);
  font-size: 9px;
  font-weight: 850;
}

.fp-mealplan-grid header small {
  color: #9a9da4;
  font-size: 8px;
}

.fp-mealplan-grid ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 8px;
  list-style: none;
}

.fp-mealplan-grid li {
  display: grid;
  min-width: 0;
  grid-template-columns: 6px 1fr;
  align-items: start;
  gap: 6px;
}

.fp-mealplan-grid li > i {
  width: 5px;
  height: 5px;
  margin-top: 5px;
  border-radius: 50%;
  background: #0d9488;
}

.fp-mealplan-grid li > span {
  min-width: 0;
}

.fp-mealplan-grid li small,
.fp-mealplan-grid li strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fp-mealplan-grid li small {
  color: #9a9da4;
  font-size: 7px;
}

.fp-mealplan-grid li strong {
  margin-top: 1px;
  color: #3f4654;
  font-size: 8px;
  font-weight: 650;
}

.fp-macros-preview__header .ai-badge {
  height: 19px;
  min-width: 31px;
}

.fp-macro-items {
  display: grid;
  gap: 8px;
  padding: 14px 14px 10px;
}

.fp-macro-items article {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 48px 62px;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid #e7e7e7;
  border-radius: 9px;
  background: #fff;
}

.fp-macro-items article > span {
  color: var(--orange);
  font-size: 8px;
  font-weight: 850;
}

.fp-macro-items strong {
  overflow: hidden;
  color: var(--ink);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fp-macro-items small {
  color: #8a8f98;
  font-size: 9px;
}

.fp-macro-items b {
  color: #3f4654;
  font-size: 9px;
  text-align: right;
}

.fp-macro-total {
  display: grid;
  grid-template-columns: 1.15fr repeat(3, 1fr);
  margin: 0 14px 14px;
  overflow: hidden;
  border: 1px solid #dfdfdf;
  border-radius: 10px;
  background: #fff;
}

.fp-macro-total > div,
.fp-macro-total > span {
  padding: 10px;
  border-right: 1px solid #e7e7e7;
}

.fp-macro-total > span:last-child {
  border-right: 0;
}

.fp-macro-total small,
.fp-macro-total strong,
.fp-macro-total b {
  display: block;
}

.fp-macro-total small {
  color: #92969e;
  font-size: 7px;
  font-weight: 700;
}

.fp-macro-total strong {
  margin-top: 3px;
  color: var(--orange);
  font-size: 12px;
}

.fp-macro-total b {
  margin-top: 3px;
  color: var(--ink);
  font-size: 10px;
}

/* AI macros + CIQUAL reference demo */
.fp-ciqual {
  padding: 92px 0;
  background:
    radial-gradient(circle at 18% 16%, rgb(255 100 34 / 12%), transparent 32%),
    #f7f7f6;
}

.fp-ciqual header {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  align-items: end;
  gap: 64px;
  margin-bottom: 38px;
}

.fp-ciqual h2 {
  max-width: 700px;
  margin: 8px 0 0;
  color: var(--ink);
  font-size: clamp(32px, 4vw, 50px);
  letter-spacing: -0.04em;
  line-height: 1.06;
}

.fp-ciqual header > p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
}

.fp-ciqual__flow {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) 88px minmax(0, 1.22fr);
  align-items: center;
  gap: 18px;
}

.fp-ciqual__input,
.fp-ciqual__result {
  position: relative;
  border: 1px solid #e0e0e0;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 44px rgb(23 24 29 / 8%);
}

.fp-ciqual__input {
  min-height: 310px;
  padding: 26px;
}

.fp-ciqual__input > span,
.fp-ciqual__result > span {
  position: absolute;
  top: 20px;
  right: 20px;
  color: #c6c6c6;
  font-size: 11px;
  font-weight: 800;
}

.fp-ciqual__input > small,
.fp-ciqual__result-head small {
  color: var(--orange);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.fp-ciqual__input blockquote {
  margin: 48px 0 38px;
  color: var(--ink);
  font-size: 19px;
  font-weight: 650;
  line-height: 1.5;
}

.fp-ciqual__input > div {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 16px;
  border-top: 1px solid #ececec;
  color: #757982;
  font-size: 10px;
  font-weight: 650;
}

.fp-ciqual__input > div i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #0d9488;
  box-shadow: 0 0 0 4px rgb(13 148 136 / 12%);
}

.fp-ciqual__agent {
  position: relative;
  display: grid;
  width: 76px;
  height: 76px;
  place-items: center;
  justify-self: center;
  border: 1px solid rgb(255 100 34 / 28%);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 12px 30px rgb(234 88 12 / 16%);
}

.fp-ciqual__agent::before,
.fp-ciqual__agent::after {
  position: absolute;
  top: 50%;
  width: 19px;
  height: 1px;
  background: var(--orange);
  content: "";
}

.fp-ciqual__agent::before {
  right: 100%;
}

.fp-ciqual__agent::after {
  left: 100%;
}

.fp-ciqual__agent i {
  position: absolute;
  inset: 7px;
  border: 1px dashed var(--orange);
  border-radius: 50%;
  animation: fp-ciqual-orbit 5s linear infinite;
}

.fp-ciqual__agent span {
  color: var(--orange);
  font-size: 17px;
  font-weight: 850;
}

.fp-ciqual__agent small {
  position: absolute;
  bottom: 9px;
  color: #8a8f98;
  font-size: 6px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

@keyframes fp-ciqual-orbit {
  to {
    transform: rotate(360deg);
  }
}

.fp-ciqual__result {
  overflow: hidden;
}

.fp-ciqual__result-head {
  display: flex;
  min-height: 76px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 52px 18px 20px;
  border-bottom: 1px solid #e8e8e8;
}

.fp-ciqual__result-head strong {
  display: block;
  margin-top: 3px;
  color: var(--ink);
  font-size: 15px;
}

.fp-ciqual__result-head > b {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgb(13 148 136 / 10%);
  color: #0d8076;
  font-size: 8px;
  text-transform: uppercase;
}

.fp-ciqual__result ul {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0 20px;
  list-style: none;
}

.fp-ciqual__result li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 60px 68px;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  border-bottom: 1px solid #eeeeee;
  color: var(--ink);
  font-size: 10px;
}

.fp-ciqual__result li small {
  color: #8a8f98;
}

.fp-ciqual__result li strong {
  text-align: right;
}

.fp-ciqual__result footer {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 6px;
  background: var(--ink);
  color: #fff;
}

.fp-ciqual__result footer div {
  padding: 13px 10px;
  border-right: 1px solid rgb(255 255 255 / 13%);
}

.fp-ciqual__result footer div:last-child {
  border-right: 0;
}

.fp-ciqual__result footer small,
.fp-ciqual__result footer strong {
  display: block;
}

.fp-ciqual__result footer small {
  color: rgb(255 255 255 / 52%);
  font-size: 7px;
}

.fp-ciqual__result footer strong {
  margin-top: 3px;
  font-size: 10px;
}

.fp-ciqual__note {
  max-width: 860px;
  margin: 22px auto 0;
  color: #858990;
  font-size: 10px;
  line-height: 1.6;
  text-align: center;
}

.fp-preview--image {
  display: grid;
  place-items: center;
  padding: 20px;
  background: #f5f5f5;
}

.fp-preview--image img {
  width: 100%;
  max-height: 520px;
  object-fit: contain;
  border-radius: 12px;
}

.fp-capabilities {
  padding: 90px 0;
  background: var(--ink);
  color: #fff;
}

.fp-capabilities header {
  display: grid;
  grid-template-columns: 0.65fr 1.35fr;
  align-items: end;
  gap: 40px;
  margin-bottom: 42px;
}

.fp-capabilities header h2,
.fp-showcases h2,
.fp-related h2 {
  margin: 0;
  font-size: clamp(30px, 4vw, 48px);
  font-weight: 780;
  letter-spacing: -0.035em;
  line-height: 1.08;
}

.fp-capabilities__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgb(255 255 255 / 14%);
  border-left: 1px solid rgb(255 255 255 / 14%);
}

.fp-capabilities__grid article {
  min-height: 230px;
  padding: 28px;
  border-right: 1px solid rgb(255 255 255 / 14%);
  border-bottom: 1px solid rgb(255 255 255 / 14%);
}

.fp-capabilities__grid article > span {
  color: var(--orange-bright);
  font-size: 11px;
  font-weight: 800;
}

.fp-capabilities__grid h3 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 38px 0 10px;
  font-size: 20px;
}

.fp-capabilities__grid p {
  margin: 0;
  color: rgb(255 255 255 / 62%);
  font-size: 13px;
  line-height: 1.6;
}

.fp-showcases {
  padding: 100px 0;
  background: #fff;
}

.fp-showcases .container {
  display: grid;
  gap: 90px;
}

.fp-showcases .container > article {
  display: grid;
  grid-template-columns: minmax(260px, 0.7fr) minmax(520px, 1.3fr);
  align-items: center;
  gap: 70px;
}

.fp-showcases .container > article:nth-child(even) > div:first-child {
  order: 2;
}

.fp-showcases .container > article:nth-child(even) {
  grid-template-columns: minmax(520px, 1.3fr) minmax(260px, 0.7fr);
}

.fp-showcases .container > article.fp-showcase--paper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
}

.fp-showcases .container > article.fp-showcase--paper > div:first-child {
  order: 0;
  max-width: 700px;
}

.fp-paper-demo {
  width: 100%;
}

.fp-paper-sheet {
  min-height: 252px;
  padding: 25px 22px 62px;
  background:
    linear-gradient(90deg, transparent 25px, rgb(220 73 64 / 16%) 26px, transparent 27px),
    repeating-linear-gradient(#fffef8 0 27px, #dce8ef 28px, #fffef8 29px);
  color: #43505b;
  font-family: "Segoe Print", "Bradley Hand", cursive;
  transform: rotate(-0.45deg);
}

.fp-paper-sheet header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 13px;
  padding-bottom: 7px;
  border-bottom: 2px solid rgb(234 88 12 / 36%);
  color: #2f3a43;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 800;
}

.fp-paper-sheet header span {
  color: var(--orange);
  font-size: 8px;
}

.fp-paper-sheet p {
  margin: 0;
  font-size: 10px;
  line-height: 27px;
  white-space: nowrap;
}

.fp-paper-sheet p b {
  color: #21333f;
  font-size: 9px;
}

.fp-paper-sheet aside {
  display: inline-block;
  margin-top: 8px;
  padding: 3px 7px;
  transform: rotate(-1.5deg);
  border-radius: 4px;
  background: rgb(255 196 64 / 20%);
  color: #76551e;
  font-size: 8px;
}

.fp-paper-demo .paper-document {
  max-height: none;
}

.fp-paper-demo .paper-demo__source,
.fp-paper-demo .paper-demo__result {
  min-height: 570px;
}

.fp-paper-demo .paper-demo__source {
  display: flex;
  flex-direction: column;
}

.fp-paper-demo .paper-extracted {
  margin-bottom: 2px;
}

.fp-paper-demo .paper-replay {
  align-self: flex-start;
  margin-top: auto;
}

.fp-paper-demo .paper-demo__result {
  display: flex;
  flex-direction: column;
}

.fp-paper-demo .meal-plan-ui {
  flex: 1;
}

.fp-paper-demo.is-sequenced:not(.is-complete) .meal-plan-day,
.fp-paper-demo.is-sequenced:not(.is-complete) .meal-plan-ui__footer {
  opacity: 0;
  transform: translateY(10px);
}

.fp-paper-demo.is-complete .meal-plan-day,
.fp-paper-demo.is-complete .meal-plan-ui__footer {
  opacity: 1;
  transform: none;
}

.fp-workout-preview {
  min-height: 0;
  background: #f6f6f6;
}

.fp-workout-preview__header {
  display: flex;
  min-height: 66px;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 12px 18px;
  border-bottom: 1px solid #e4e4e4;
  background: #fff;
}

.fp-workout-preview__header small,
.fp-workout-preview__header strong {
  display: block;
}

.fp-workout-preview__header small {
  color: var(--orange);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.fp-workout-preview__header strong {
  margin-top: 3px;
  color: var(--ink);
  font-size: 14px;
}

.fp-workout-preview__header > span {
  padding: 5px 9px;
  border-radius: 999px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 9px;
  font-weight: 750;
}

.fp-workout-preview__rows {
  display: grid;
  gap: 8px;
  padding: 13px;
}

.fp-workout-preview__rows > article {
  display: grid;
  grid-template-columns: 25px minmax(120px, 1fr);
  gap: 6px 10px;
  padding: 11px 12px 9px;
  border: 1px solid #e3e3e3;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 4px 12px rgb(23 24 29 / 4%);
}

.fp-workout-preview__rows > article > span {
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 6px;
  background: var(--orange);
  color: #fff;
  font-size: 8px;
  font-weight: 800;
}

.fp-workout-preview__rows > article > div {
  min-width: 0;
}

.fp-workout-preview__rows > article > div strong,
.fp-workout-preview__rows > article > div small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fp-workout-preview__rows > article > div strong {
  color: var(--ink);
  font-size: 10px;
}

.fp-workout-preview__rows > article > div small {
  margin-top: 2px;
  color: #8a8f98;
  font-size: 7px;
}

.fp-workout-preview__rows dl {
  display: grid;
  grid-column: 2;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
  margin: 2px 0 0;
}

.fp-workout-preview__rows dl > div {
  padding: 5px 6px;
  border-radius: 6px;
  background: #f5f5f5;
}

.fp-workout-preview__rows dt,
.fp-workout-preview__rows dd {
  margin: 0;
}

.fp-workout-preview__rows dt {
  color: #9a9da4;
  font-size: 6px;
  font-weight: 700;
  text-transform: uppercase;
}

.fp-workout-preview__rows dd {
  margin-top: 2px;
  color: #3f4654;
  font-size: 8px;
  font-weight: 750;
}

.fp-workout-preview__rows footer {
  display: flex;
  grid-column: 2;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #8a8f98;
  font-size: 7px;
}

.fp-workout-preview__rows footer b {
  color: var(--orange);
  font-weight: 700;
}

.fp-workout-preview__rows > article.fp-program-row {
  grid-template-columns: 25px minmax(120px, 1fr) auto;
  align-items: center;
}

.fp-program-row dl {
  grid-column: 2;
  grid-template-columns: repeat(3, 1fr);
}

.fp-program-row > b {
  display: grid;
  grid-column: 3;
  grid-row: 1 / 3;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 6px;
  background: #f2f2f2;
  color: var(--orange);
}

.fp-workout-preview__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 17px 13px;
  border-top: 1px solid #e6e6e6;
  color: #8a8f98;
  font-size: 8px;
}

.fp-workout-preview__footer strong {
  color: #4e5560;
  font-size: 8px;
}

.fp-showcases .container > article.fp-showcase--workout-ai {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
}

.fp-showcases .container > article.fp-showcase--workout-ai > div:first-child {
  order: 0;
  max-width: 700px;
}

.fp-workout-ai-demo {
  width: 100%;
}

.fp-workout-ai-demo .workout-demo__source {
  min-height: 625px;
  background: var(--ink);
}

.fp-workout-ai-demo .workout-demo__result {
  min-height: 625px;
}

.fp-workout-ai-demo.is-sequenced:not(.is-complete) .workout-exercise,
.fp-workout-ai-demo.is-sequenced:not(.is-complete) .workout-builder-ui__footer {
  opacity: 0;
  transform: translateY(10px);
}

.fp-workout-ai-demo.is-complete .workout-exercise,
.fp-workout-ai-demo.is-complete .workout-builder-ui__footer {
  opacity: 1;
  transform: none;
}

.fp-showcases .container > article > div:first-child > p:not(.section-kicker) {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}

.fp-showcases .fp-preview {
  min-height: 330px;
  box-shadow: 0 22px 54px rgb(23 24 29 / 10%);
}

.fp-showcases .fp-preview__body {
  min-height: 284px;
}

.fp-proof {
  padding: 34px 0;
  background: var(--orange-bright);
  color: #fff;
}

.fp-proof .container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.fp-proof div {
  display: flex;
  min-height: 96px;
  flex-direction: column;
  justify-content: center;
  padding: 0 34px;
  border-right: 1px solid rgb(255 255 255 / 24%);
}

.fp-proof div:last-child {
  border-right: 0;
}

.fp-proof strong {
  font-size: 36px;
  line-height: 1;
}

.fp-proof span {
  margin-top: 7px;
  font-size: 12px;
  font-weight: 650;
  text-transform: uppercase;
}

.fp-related {
  padding: 88px 0;
  background: #f5f5f5;
}

.fp-related header {
  max-width: 650px;
  margin-bottom: 34px;
}

.fp-related .container > div {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.fp-related a {
  position: relative;
  display: flex;
  min-height: 170px;
  flex-direction: column;
  justify-content: flex-end;
  padding: 24px;
  border: 1px solid #e1e1e1;
  border-radius: 14px;
  background: #fff;
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.fp-related a:hover {
  transform: translateY(-3px);
  border-color: var(--orange);
}

.fp-related small {
  color: var(--orange);
  font-weight: 750;
  text-transform: uppercase;
}

.fp-related strong {
  margin-top: 7px;
  color: var(--ink);
  font-size: 22px;
}

.fp-related a > span {
  position: absolute;
  top: 22px;
  right: 22px;
  font-size: 22px;
}

.fp-directory-hero {
  padding: 96px 0 68px;
  background: var(--ink);
  color: #fff;
}

.fp-directory-hero h1 {
  color: #fff;
}

.fp-directory-hero .container > p:last-child {
  color: rgb(255 255 255 / 62%);
}

.fp-directory {
  padding: 68px 0 96px;
  background: #f7f7f7;
}

.fp-directory .container {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.fp-directory a {
  display: grid;
  min-height: 300px;
  align-content: end;
  padding: 30px;
  border: 1px solid #e2e2e2;
  border-radius: 16px;
  background: #fff;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.fp-directory a:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgb(23 24 29 / 8%);
}

.fp-directory a > span {
  align-self: start;
  margin-bottom: auto;
  color: var(--orange);
  font-size: 12px;
  font-weight: 800;
}

.fp-directory small {
  color: var(--muted);
  font-weight: 700;
  text-transform: uppercase;
}

.fp-directory h2 {
  margin: 7px 0 10px;
  color: var(--ink);
  font-size: 34px;
}

.fp-directory p {
  margin: 0 0 24px;
  color: var(--muted);
  line-height: 1.6;
}

.fp-directory strong {
  color: var(--orange);
  font-size: 12px;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .fp-hero__grid,
  .fp-showcases .container > article,
  .fp-showcases .container > article:nth-child(even) {
    grid-template-columns: 1fr;
  }

  .fp-hero__grid {
    min-height: 0;
    gap: 42px;
  }

  .fp-showcases .container > article:nth-child(even) > div:first-child {
    order: 0;
  }

  .fp-paper-demo .paper-demo__source,
  .fp-paper-demo .paper-demo__result,
  .fp-workout-ai-demo .workout-demo__source,
  .fp-workout-ai-demo .workout-demo__result {
    min-height: 0;
  }

  .fp-capabilities__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fp-ciqual header,
  .fp-ciqual__flow {
    grid-template-columns: 1fr;
  }

  .fp-ciqual header {
    gap: 18px;
  }

  .fp-ciqual__flow {
    gap: 22px;
  }

  .fp-ciqual__agent {
    width: 68px;
    height: 68px;
  }

  .fp-ciqual__agent::before,
  .fp-ciqual__agent::after {
    top: auto;
    left: 50%;
    width: 1px;
    height: 12px;
  }

  .fp-ciqual__agent::before {
    right: auto;
    bottom: 100%;
  }

  .fp-ciqual__agent::after {
    top: 100%;
  }
}

@media (max-width: 700px) {
  .faq {
    padding: 68px 0 74px;
  }

  .faq__layout {
    gap: 32px;
  }

  .faq__header h2 {
    font-size: clamp(32px, 10vw, 44px);
  }

  .faq__list summary {
    min-height: 72px;
    gap: 16px;
    font-size: 15px;
  }

  .faq__list details > div {
    padding-right: 4px;
  }

  .fp-hero {
    padding-bottom: 52px;
  }

  .fp-hero__copy h1,
  .fp-directory-hero h1 {
    font-size: clamp(38px, 12vw, 56px);
  }

  .fp-preview {
    min-height: 320px;
  }

  .fp-preview__body {
    min-height: 274px;
    grid-template-columns: 42px 1fr;
  }

  .fp-preview__content {
    padding: 18px 14px;
  }

  .fp-nutrition-preview,
  .fp-mealplan-preview,
  .fp-macros-preview {
    min-height: 0;
  }

  .fp-meal-list article {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .fp-workout-preview__rows dl {
    grid-template-columns: repeat(2, 1fr);
  }

  .fp-workout-preview__rows > article.fp-program-row {
    grid-template-columns: 25px minmax(0, 1fr);
  }

  .fp-program-row > b {
    display: none;
  }

  .fp-meal-list__content > strong {
    white-space: normal;
  }

  .fp-mealplan-grid {
    grid-template-columns: 1fr;
  }

  .fp-mealplan-grid li strong {
    font-size: 9px;
  }

  .fp-macro-items article {
    grid-template-columns: 20px minmax(0, 1fr) 42px 54px;
    gap: 5px;
    padding-inline: 9px;
  }

  .fp-macro-total {
    grid-template-columns: repeat(2, 1fr);
  }

  .fp-macro-total > div,
  .fp-macro-total > span {
    border-right: 1px solid #e7e7e7;
    border-bottom: 1px solid #e7e7e7;
  }

  .fp-macro-total > span:nth-child(2),
  .fp-macro-total > span:last-child {
    border-right: 0;
  }

  .fp-macro-total > span:nth-child(3),
  .fp-macro-total > span:last-child {
    border-bottom: 0;
  }

  .fp-ciqual {
    padding: 70px 0;
  }

  .fp-ciqual__input {
    min-height: 280px;
    padding: 22px;
  }

  .fp-ciqual__input blockquote {
    margin-top: 42px;
    font-size: 17px;
  }

  .fp-ciqual__result-head {
    align-items: flex-start;
    flex-direction: column;
    padding-right: 48px;
  }

  .fp-ciqual__result li {
    grid-template-columns: minmax(0, 1fr) 46px 58px;
    gap: 6px;
  }

  .fp-ciqual__result footer {
    grid-template-columns: repeat(2, 1fr);
  }

  .fp-ciqual__result footer div:nth-child(2) {
    border-right: 0;
  }

  .fp-ciqual__result footer div:nth-child(-n + 2) {
    border-bottom: 1px solid rgb(255 255 255 / 13%);
  }

  .fp-capabilities header {
    grid-template-columns: 1fr;
  }

  .fp-capabilities__grid,
  .fp-related .container > div,
  .fp-directory .container,
  .fp-proof .container {
    grid-template-columns: 1fr;
  }

  .fp-capabilities__grid article {
    min-height: 190px;
  }

  .fp-showcases {
    padding: 72px 0;
  }

  .fp-showcases .container {
    gap: 64px;
  }

  .fp-proof div {
    border-right: 0;
    border-bottom: 1px solid rgb(255 255 255 / 24%);
  }

  .fp-proof div:last-child {
    border-bottom: 0;
  }
}

@media (max-width: 1080px) {
  .audience-grid,
  .workflow-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .workflow-steps::before {
    display: none;
  }

  .story-grid {
    grid-template-columns: 1fr 1fr;
  }

  .story-card--featured {
    grid-column: 1 / -1;
  }

  .calendar-integration {
    grid-template-columns: 1fr 1.25fr;
  }
}

@media (max-width: 820px) {
  .audience-heading,
  .how-it-works__heading,
  .stories__heading,
  .calendar-integration,
  .security-panel {
    grid-template-columns: 1fr;
  }

  .proof__partners {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .calendar-integration__copy {
    padding: 34px;
  }

  .calendar-integration__visual {
    min-height: 490px;
  }

  .security-panel {
    gap: 38px;
  }
}

@media (max-width: 560px) {
  .proof,
  .trust,
  .how-it-works,
  .stories,
  .integrations-security {
    padding: 68px 0 74px;
  }

  .proof__heading h2,
  .audience-heading h2,
  .how-it-works__heading h2,
  .stories__heading h2,
  .integrations-security__heading h2 {
    font-size: clamp(31px, 10vw, 43px);
  }

  .proof__partners,
  .audience-grid,
  .workflow-steps,
  .story-grid,
  .security-grid {
    grid-template-columns: 1fr;
  }

  .proof__partner {
    min-height: 0;
    padding: 22px 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .proof__partner:last-child {
    border-bottom: 0;
  }

  .proof__mark img,
  .proof__partner:nth-child(2) .proof__mark img,
  .proof__partner:nth-child(4) .proof__mark img {
    height: 56px;
  }

  .story-card--featured {
    grid-column: auto;
  }

  .audience-card,
  .workflow-steps > li {
    min-height: 300px;
  }

  .story-card {
    min-height: 380px;
    padding: 22px;
  }

  .story-card blockquote {
    margin-top: 42px;
  }

  .calendar-integration__copy,
  .security-panel {
    padding: 25px 21px;
  }

  .calendar-integration__visual {
    min-height: 420px;
    padding: 25px 14px;
  }

  .event {
    grid-template-columns: 35px 1fr;
  }

  .event b {
    display: none;
  }

  .sync-orbit {
    right: 14px;
    bottom: 14px;
  }
}

/* Arabic / RTL */
html[dir="rtl"] body {
  direction: rtl;
  font-family: Tahoma, Arial, var(--font-body);
  text-align: right;
}

html[dir="rtl"] .header__inner,
html[dir="rtl"] .desktop-nav,
html[dir="rtl"] .header__actions,
html[dir="rtl"] .footer__grid,
html[dir="rtl"] .footer__bottom {
  direction: rtl;
}

html[dir="rtl"] .desktop-nav {
  margin-right: auto;
  margin-left: 0;
}

html[dir="rtl"] .mega-menu__list a,
html[dir="rtl"] .mobile-nav__trigger,
html[dir="rtl"] .mobile-mega,
html[dir="rtl"] .feature-breadcrumb {
  text-align: right;
}

html[dir="rtl"] .nav-trigger svg,
html[dir="rtl"] .mobile-nav__trigger svg {
  transform: scaleX(-1);
}

html[dir="rtl"] .language-picker__menu {
  right: auto;
  left: 0;
}

html[dir="rtl"] .nav-trigger[aria-expanded="true"] svg,
html[dir="rtl"] .mobile-nav__trigger[aria-expanded="true"] svg {
  transform: scaleX(-1) rotate(180deg);
}

html[dir="rtl"] .mega-menu__col + .mega-menu__col {
  border-right: 1px solid #ececec;
  border-left: 0;
}

html[dir="rtl"] .mobile-mega .ai-badge {
  margin-right: auto;
  margin-left: 0;
}

html[dir="rtl"] .hero__copy-inner {
  margin-right: auto;
  margin-left: 0;
  padding-right: 0;
  padding-left: 60px;
}

html[dir="rtl"] .lead-form__row,
html[dir="rtl"] .hero__benefits,
html[dir="rtl"] .feature__highlights li,
html[dir="rtl"] .pricing-card__features li,
html[dir="rtl"] .faq__header > a,
html[dir="rtl"] .calendar-integration__copy li,
html[dir="rtl"] .feature-detail__actions,
html[dir="rtl"] .store-links {
  direction: rtl;
}

html[dir="rtl"] .feature__highlights li {
  padding-right: 15px;
  padding-left: 0;
}

html[dir="rtl"] .feature__highlights li::before {
  right: 1px;
  left: auto;
}

html[dir="rtl"] .feature a span,
html[dir="rtl"] .delivery-card a span,
html[dir="rtl"] .audience-card > strong span,
html[dir="rtl"] .calendar-integration__copy > a span,
html[dir="rtl"] .security-panel__intro > a span {
  transform: scaleX(-1);
}

html[dir="rtl"] .feature a:hover span,
html[dir="rtl"] .delivery-card a:hover span,
html[dir="rtl"] .audience-card:hover > strong span {
  transform: scaleX(-1) translateX(4px);
}

html[dir="rtl"] .audience-card__number {
  right: auto;
  left: 20px;
}

html[dir="rtl"] .pricing-card__badge {
  right: auto;
  left: 18px;
}

html[dir="rtl"] .pricing-card__price-row,
html[dir="rtl"] .pricing-select__trigger,
html[dir="rtl"] .faq__list summary,
html[dir="rtl"] .sync-calendar > header,
html[dir="rtl"] .security-grid,
html[dir="rtl"] .fp-preview__heading,
html[dir="rtl"] .fp-nutrition-preview__header,
html[dir="rtl"] .fp-mealplan-preview__header,
html[dir="rtl"] .fp-macros-preview__header,
html[dir="rtl"] .fp-workout-preview__header {
  direction: rtl;
}

html[dir="rtl"] .event {
  border-right: 3px solid var(--orange);
  border-left: 0;
}

html[dir="rtl"] .event--google {
  border-right-color: #4285f4;
}

html[dir="rtl"] .security-panel__intro,
html[dir="rtl"] .calendar-integration__copy,
html[dir="rtl"] .story-card,
html[dir="rtl"] .workflow-steps > li,
html[dir="rtl"] .audience-card,
html[dir="rtl"] .pricing-card,
html[dir="rtl"] .fp-hero__copy,
html[dir="rtl"] .fp-capabilities,
html[dir="rtl"] .fp-showcases,
html[dir="rtl"] .fp-related,
html[dir="rtl"] .fp-directory {
  text-align: right;
}

html[dir="rtl"] .story-result,
html[dir="rtl"] .story-card__top,
html[dir="rtl"] .fp-meal-list article,
html[dir="rtl"] .fp-workout-preview__rows > article,
html[dir="rtl"] .workout-exercise > header,
html[dir="rtl"] .paper-demo__panel-heading {
  direction: rtl;
}

html[dir="rtl"] .fp-preview__sidebar {
  order: 2;
}

html[dir="rtl"] .fp-preview__body {
  grid-template-columns: 1fr 54px;
}

html[dir="rtl"] .fp-preview__content {
  grid-column: 1;
  grid-row: 1;
}

html[dir="rtl"] .fp-preview__sidebar {
  grid-column: 2;
  grid-row: 1;
}

html[dir="rtl"] .fp-ciqual__input > span,
html[dir="rtl"] .fp-ciqual__result > span {
  right: auto;
  left: 20px;
}

html[dir="rtl"] .fp-ciqual__result-head {
  padding-right: 20px;
  padding-left: 52px;
}

html[dir="rtl"] .fp-related a > span {
  right: auto;
  left: 22px;
  transform: scaleX(-1);
}

html[dir="rtl"] .pricing-card__price > p,
html[dir="rtl"] [data-pro-amount],
html[dir="rtl"] .fp-macro-total,
html[dir="rtl"] .workout-set-table,
html[dir="rtl"] .progress-metrics,
html[dir="rtl"] .sync-calendar,
html[dir="rtl"] .meal-plan-ui {
  direction: ltr;
  text-align: left;
}

@media (max-width: 980px) {
  html[dir="rtl"] .hero__copy-inner {
    margin-inline: auto;
    padding-right: 0;
    padding-left: 0;
  }
}

@media (max-width: 700px) {
  html[dir="rtl"] .fp-preview__body {
    grid-template-columns: 1fr 42px;
  }
}

/* AI body-composition import responsive and RTL */
@media (max-width: 1180px) {
  .body-scan-demo {
    grid-template-columns: minmax(275px, 0.66fr) 52px minmax(560px, 1.34fr);
    gap: 11px;
  }

  .body-scan-demo__bridge {
    width: 52px;
    height: 52px;
  }

  .body-scan-demo__bridge::before,
  .body-scan-demo__bridge::after {
    width: 12px;
  }

  .body-scan-demo__source,
  .body-scan-demo__result {
    padding: 13px;
  }
}

@media (max-width: 980px) {
  .body-scan-transform__header {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .body-scan-transform__header > div:last-child > p {
    max-width: 720px;
  }

  .body-scan-demo {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .body-scan-demo__source,
  .body-scan-demo__result {
    width: min(100%, 760px);
    margin-inline: auto;
  }

  .body-scan-demo__bridge {
    justify-self: center;
    width: 54px;
    height: 54px;
  }

  .body-scan-demo__bridge::before,
  .body-scan-demo__bridge::after {
    left: 50%;
    width: 1px;
    height: 17px;
    transform: translateX(-50%);
  }

  .body-scan-demo__bridge::before {
    top: auto;
    right: auto;
    bottom: 100%;
  }

  .body-scan-demo__bridge::after {
    top: 100%;
  }
}

@media (max-width: 760px) {
  .body-scan-transform {
    padding: 60px 0 54px;
  }

  .body-scan-transform__header {
    margin-bottom: 28px;
  }

  .body-scan-demo-steps {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 560px) {
  .body-scan-transform__header h2 {
    font-size: clamp(31px, 9.5vw, 40px);
  }

  .body-scan-demo__source,
  .body-scan-demo__result {
    padding: 12px;
    border-radius: 12px;
  }

  .body-report {
    min-height: 330px;
    padding: 11px;
  }

  .body-report__top {
    align-items: flex-start;
    flex-direction: column;
  }

  .body-report__content {
    grid-template-columns: 0.68fr 1.32fr;
    gap: 7px;
  }

  .body-report__figure {
    min-height: 205px;
  }

  .body-report__figure svg {
    width: 52px;
  }

  .body-report-status {
    grid-template-columns: auto 1fr;
  }

  .body-report-status > i {
    display: none;
  }

  .body-metrics-ui {
    padding: 8px;
  }

  .body-metrics-ui__toolbar,
  .body-metrics-ui__footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .body-metrics-ui__source {
    text-align: left;
  }

  .body-metrics-grid {
    grid-template-columns: 1fr 1fr;
  }

  .body-metrics-ui__footer button {
    width: 100%;
  }

  .body-scan-demo-steps {
    grid-template-columns: 1fr;
  }
}

html[dir="rtl"] .body-scan-transform,
html[dir="rtl"] .body-scan-demo__source,
html[dir="rtl"] .body-scan-demo__result,
html[dir="rtl"] .body-metrics-grid article {
  text-align: right;
}

html[dir="rtl"] .body-scan-demo__panel-heading,
html[dir="rtl"] .body-report-status,
html[dir="rtl"] .body-metrics-ui__client,
html[dir="rtl"] .body-metrics-checks,
html[dir="rtl"] .body-metrics-ui__footer,
html[dir="rtl"] .body-scan-demo-steps span {
  direction: rtl;
}

html[dir="rtl"] .body-metrics-ui__source {
  text-align: left;
}

html[dir="rtl"] .body-metrics-grid article::after {
  right: auto;
  left: -22px;
}

@media (max-width: 560px) {
  html[dir="rtl"] .body-metrics-ui__source {
    text-align: right;
  }
}

/* Modular pricing (pricing-v2) */
.pricing-v2 {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse 70% 45% at 8% -10%, rgb(255 100 34 / 16%), transparent 55%),
    radial-gradient(ellipse 55% 40% at 92% 8%, rgb(23 24 29 / 8%), transparent 50%),
    radial-gradient(circle at 50% 100%, rgb(255 100 34 / 6%), transparent 42%),
    linear-gradient(180deg, #ffffff 0%, #f7f7f8 42%, #f3f4f6 100%);
}

.pricing-v2::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image:
    url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.045'/%3E%3C/svg%3E");
  opacity: 0.55;
  pointer-events: none;
  content: "";
}

.pricing-v2__highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  max-width: 980px;
  margin: 0 auto 34px;
  padding: 0;
  list-style: none;
}

.pricing-v2__highlight {
  display: grid;
  gap: 4px;
  padding: 16px 18px;
  border: 1px solid rgb(234 88 12 / 14%);
  border-radius: 16px;
  background:
    linear-gradient(160deg, rgb(255 255 255 / 92%), rgb(255 240 232 / 55%));
  box-shadow: 0 12px 30px rgb(23 24 29 / 5%);
  animation: pricingHighlightIn 0.55s ease both;
}

.pricing-v2__highlight:nth-child(2) {
  animation-delay: 0.08s;
}

.pricing-v2__highlight:nth-child(3) {
  animation-delay: 0.16s;
}

.pricing-v2__highlight-mark {
  width: 28px;
  height: 3px;
  margin-bottom: 6px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--orange), var(--orange-bright));
}

.pricing-v2__highlight strong {
  color: var(--ink);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.pricing-v2__highlight span:last-child {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.pricing-v2__tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  gap: 6px;
  max-width: 560px;
  margin: 0 auto 40px;
  padding: 6px;
  border: 1px solid #e4e4e7;
  border-radius: 16px;
  background: rgb(255 255 255 / 82%);
  box-shadow: 0 16px 40px rgb(23 24 29 / 6%);
}

.pricing-v2__tab {
  min-height: 48px;
  padding: 12px 14px;
  border: 0;
  border-radius: 11px;
  background: transparent;
  color: #686b73;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: -0.01em;
  line-height: 1.25;
  transition:
    background 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.pricing-v2__tab:hover {
  color: var(--ink);
  transform: translateY(-1px);
}

.pricing-v2__tab:focus-visible {
  outline: 3px solid rgb(234 88 12 / 35%);
  outline-offset: 2px;
}

.pricing-v2__tab.is-active {
  background: var(--ink);
  color: #fff;
  box-shadow: 0 10px 22px rgb(23 24 29 / 16%);
}

.pricing-v2__panel {
  animation: pricingPanelIn 0.4s ease both;
}

.pricing-v2__panel[hidden] {
  display: none;
}

.pricing-v2__panel-intro {
  max-width: 720px;
  margin: 0 auto 28px;
  text-align: center;
}

.pricing-v2__panel-eyebrow {
  margin: 0 0 8px;
  color: var(--orange);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.pricing-v2__panel-intro h3 {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1.08;
}

.pricing-v2__panel-intro p:last-child {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}

.pricing-v2__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}

.pricing-v2__grid--coaches {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.pricing-v2__grid--coaches .pricing-v2__card {
  padding: 48px 20px 22px;
}

.pricing-v2__grid--coaches .pricing-v2__price strong {
  font-size: clamp(34px, 3vw, 42px);
}

.pricing-v2__grid--coaches .pricing-v2__popular {
  top: 18px;
  inset-inline-start: 20px;
  inset-inline-end: auto;
}

/* Keeps the capacity chip on the same line across all four plans. */
.pricing-v2__grid--coaches .pricing-v2__card-top {
  min-height: 112px;
  padding-inline-end: 8px;
}

.pricing-v2__card,
.pricing-v2__topup {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 26px 24px 24px;
  overflow: hidden;
  border: 1px solid #e2e2e6;
  border-radius: 22px;
  background:
    linear-gradient(180deg, #fff 0%, #fbfbfc 100%);
  box-shadow: 0 16px 42px rgb(23 24 29 / 6%);
  transition:
    transform 0.28s ease,
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

.pricing-v2__card::before,
.pricing-v2__topup::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: #d9dade;
  content: "";
}

.pricing-v2__card:hover,
.pricing-v2__topup:hover {
  transform: translateY(-4px);
  box-shadow: 0 22px 48px rgb(23 24 29 / 10%);
}

.pricing-v2__card--featured {
  border-color: rgb(234 88 12 / 32%);
  background:
    radial-gradient(circle at 100% 0%, rgb(255 100 34 / 12%), transparent 38%),
    linear-gradient(180deg, #fff 0%, #fff7f2 100%);
  box-shadow:
    0 26px 60px rgb(234 88 12 / 14%),
    0 10px 28px rgb(23 24 29 / 6%);
  animation: pricingFeaturedIn 0.65s ease both;
}

.pricing-v2__card--featured::before {
  height: 4px;
  background: linear-gradient(90deg, var(--orange), var(--orange-bright));
}

.pricing-v2__card--featured:hover {
  transform: translateY(-6px);
  box-shadow:
    0 30px 64px rgb(234 88 12 / 18%),
    0 12px 30px rgb(23 24 29 / 8%);
}

.pricing-v2__card--elite {
  border-color: #2a2c34;
  background:
    radial-gradient(circle at 88% 0%, rgb(255 100 34 / 20%), transparent 34%),
    linear-gradient(180deg, #1c1e25 0%, #14151a 100%);
  color: #fff;
  box-shadow: 0 22px 52px rgb(23 24 29 / 18%);
}

.pricing-v2__card--elite::before {
  background: var(--orange-bright);
}

.pricing-v2__popular {
  position: absolute;
  top: 16px;
  inset-inline-end: 16px;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--orange-soft);
  color: var(--orange-dark);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.pricing-v2__card-top {
  padding-inline-end: 8px;
}

.pricing-v2__card--featured .pricing-v2__card-top {
  padding-inline-end: 96px;
}

.pricing-v2__grid--coaches .pricing-v2__card--featured .pricing-v2__card-top {
  padding-inline-end: 8px;
}

.pricing-v2__card-eyebrow {
  margin: 0 0 8px;
  color: var(--orange);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.pricing-v2__card--elite .pricing-v2__card-eyebrow {
  color: #ff9b6d;
}

.pricing-v2__card-top h4,
.pricing-v2__topup h4 {
  margin: 0 0 8px;
  color: var(--ink);
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.pricing-v2__card--elite .pricing-v2__card-top h4,
.pricing-v2__card--elite .pricing-v2__price {
  color: #fff;
}

.pricing-v2__card-audience {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.pricing-v2__card--elite .pricing-v2__card-audience,
.pricing-v2__card--elite .pricing-v2__features,
.pricing-v2__card--elite .pricing-v2__price small {
  color: rgb(255 255 255 / 66%);
}

.pricing-v2__price {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 4px 8px;
  margin: 22px 0 14px;
  color: var(--ink);
}

.pricing-v2__price strong {
  font-size: clamp(42px, 4.2vw, 52px);
  font-weight: 850;
  letter-spacing: -0.06em;
  line-height: 0.9;
}

.pricing-v2__price span {
  padding-bottom: 4px;
  font-size: 14px;
  font-weight: 750;
}

.pricing-v2__price small {
  padding-bottom: 5px;
  color: #8b8d94;
  font-size: 12px;
  font-weight: 650;
}

.pricing-v2__price--compact {
  margin: 14px 0 12px;
}

.pricing-v2__price--compact strong {
  font-size: 40px;
}

.pricing-v2__chip {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 12px;
  padding: 7px 11px;
  border: 1px solid #e8e8eb;
  border-radius: 999px;
  background: #f7f7f8;
  color: var(--ink);
  font-size: 11px;
  font-weight: 750;
  line-height: 1.2;
}

.pricing-v2__chip--highlight {
  gap: 6px;
  border-color: rgb(234 88 12 / 30%);
  background: var(--orange-soft);
  color: var(--orange-dark);
  font-weight: 850;
}

.pricing-v2__chip--highlight > span {
  font-size: 14px;
  line-height: 1;
}

.pricing-v2__card--elite .pricing-v2__chip {
  border-color: rgb(255 255 255 / 14%);
  background: rgb(255 255 255 / 8%);
  color: #fff;
}

.pricing-v2__card--elite .pricing-v2__chip--highlight {
  border-color: rgb(255 100 34 / 42%);
  background: rgb(255 100 34 / 18%);
  color: #ffb08a;
}

.pricing-v2__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.pricing-v2__badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: #f0f1f3;
  color: #4c505a;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1.2;
}

.pricing-v2__badge--ai {
  background: var(--orange-soft);
  color: var(--orange-dark);
}

.pricing-v2__badge--fee {
  background: #eceef2;
  color: #2f3340;
}

.pricing-v2__badge--zero {
  background: #e7f7ec;
  color: #15743a;
}

.pricing-v2__card--elite .pricing-v2__badge {
  background: rgb(255 255 255 / 10%);
  color: rgb(255 255 255 / 82%);
}

.pricing-v2__card--elite .pricing-v2__badge--ai {
  background: rgb(255 100 34 / 18%);
  color: #ffb08a;
}

.pricing-v2__card--elite .pricing-v2__badge--zero {
  background: rgb(46 180 96 / 18%);
  color: #8de3ad;
}

.pricing-v2__features {
  display: grid;
  gap: 10px;
  margin: 0 0 16px;
  padding: 0;
  color: #4c505a;
  font-size: 12px;
  line-height: 1.5;
  list-style: none;
}

.pricing-v2__features li {
  position: relative;
  padding-inline-start: 22px;
}

.pricing-v2__features li::before {
  position: absolute;
  top: 1px;
  inset-inline-start: 0;
  display: grid;
  width: 15px;
  height: 15px;
  place-items: center;
  border-radius: 50%;
  background: var(--orange-soft);
  color: var(--orange);
  content: "✓";
  font-size: 8px;
  font-weight: 900;
}

.pricing-v2__card--elite .pricing-v2__features li::before {
  background: rgb(255 100 34 / 20%);
  color: #ff9b6d;
}

.pricing-v2__feature--ai {
  color: #33363f;
  font-weight: 700;
}

.pricing-v2__card--elite .pricing-v2__feature--ai {
  color: #fff;
}

.pricing-v2__feature--ai::before {
  content: none;
}

.pricing-v2__ai-spark {
  position: absolute;
  top: 1px;
  inset-inline-start: 0;
  display: grid;
  width: 15px;
  height: 15px;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(140deg, var(--orange-bright), var(--orange-dark));
  color: #fff;
  font-size: 8px;
  font-style: normal;
  line-height: 1;
  animation: pricingAiSpark 2.6s ease-in-out infinite;
}

.pricing-v2__ai-spark::after {
  content: "✦";
}

@keyframes pricingAiSpark {
  0% {
    box-shadow: 0 0 0 0 rgb(255 100 34 / 50%);
    transform: scale(1) rotate(0deg);
  }

  45% {
    box-shadow: 0 0 0 6px rgb(255 100 34 / 0%);
    transform: scale(1.16) rotate(90deg);
  }

  100% {
    box-shadow: 0 0 0 0 rgb(255 100 34 / 0%);
    transform: scale(1) rotate(0deg);
  }
}

.pricing-v2__not-included {
  margin: 0 0 8px;
  padding: 12px 14px;
  border: 1px dashed #e0e0e4;
  border-radius: 12px;
  background: #fafafa;
  color: #6b6f79;
  font-size: 11px;
  line-height: 1.5;
}

.pricing-v2__not-included > strong {
  display: block;
  margin-bottom: 10px;
  color: #4a4e58;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.pricing-v2__not-included ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pricing-v2__not-included li {
  display: grid;
  gap: 2px;
}

.pricing-v2__not-included li > strong {
  color: #3f434d;
  font-size: 11px;
  font-weight: 800;
}

.pricing-v2__not-included li > span {
  color: #6b6f79;
  font-size: 11px;
  line-height: 1.45;
}

.pricing-v2__cta {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding: 12px 16px;
  border-radius: 12px;
  background: var(--ink);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-decoration: none;
  text-transform: uppercase;
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    box-shadow 0.2s ease;
}

.pricing-v2__cta:hover {
  background: #30323a;
  transform: translateY(-2px);
}

.pricing-v2__cta--accent {
  background: var(--orange-bright);
  box-shadow: 0 12px 28px rgb(234 88 12 / 22%);
}

.pricing-v2__cta--accent:hover {
  background: var(--orange-dark);
}

.pricing-v2__card--elite .pricing-v2__cta {
  background: #fff;
  color: var(--ink);
}

.pricing-v2__card--elite .pricing-v2__cta:hover {
  background: #f2f2f2;
}

.pricing-v2__ai-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  gap: 18px;
  align-items: start;
}

.pricing-v2__consumption {
  padding: 28px;
  border: 1px solid #e2e2e6;
  border-radius: 22px;
  background: rgb(255 255 255 / 92%);
  box-shadow: 0 16px 42px rgb(23 24 29 / 6%);
}

.pricing-v2__consumption h4 {
  margin: 0 0 18px;
  color: var(--ink);
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.pricing-v2__cost-list {
  display: grid;
  margin: 0;
  padding: 0;
  border-top: 1px solid #ececef;
  list-style: none;
}

.pricing-v2__cost-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 0;
  border-bottom: 1px solid #ececef;
}

.pricing-v2__cost-list span {
  display: block;
  color: var(--ink);
  font-size: 13px;
  font-weight: 750;
}

.pricing-v2__cost-list small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.4;
}

.pricing-v2__cost-list strong {
  flex: 0 0 auto;
  min-width: 84px;
  padding: 8px 11px;
  border-radius: 999px;
  background: var(--orange-soft);
  color: var(--orange-dark);
  font-size: 10px;
  font-weight: 850;
  text-align: center;
  text-transform: uppercase;
}

.pricing-v2__topups {
  display: grid;
  gap: 14px;
}

.pricing-v2__topup p:not(.pricing-v2__card-eyebrow) {
  margin: 0 0 18px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.pricing-v2__topup--featured {
  border-color: rgb(234 88 12 / 28%);
  background:
    radial-gradient(circle at 100% 0%, rgb(255 100 34 / 12%), transparent 40%),
    #fff;
}

.pricing-v2__topup--featured::before {
  background: linear-gradient(90deg, var(--orange), var(--orange-bright));
}

@keyframes pricingHighlightIn {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pricingPanelIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pricingFeaturedIn {
  from {
    opacity: 0;
    transform: translateY(16px) scale(0.985);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .pricing-v2__highlight,
  .pricing-v2__panel,
  .pricing-v2__card--featured,
  .pricing-v2__ai-spark {
    animation: none;
  }

  .pricing-v2__card,
  .pricing-v2__topup,
  .pricing-v2__tab,
  .pricing-v2__cta {
    transition: none;
  }
}

@media (max-width: 1180px) {
  .pricing-v2__grid--coaches {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }

  .pricing-v2__grid--coaches .pricing-v2__card {
    padding: 48px 24px 24px;
  }

  .pricing-v2__grid--coaches .pricing-v2__popular {
    inset-inline-start: 24px;
  }

  .pricing-v2__grid--coaches .pricing-v2__card-top {
    min-height: 96px;
  }
}

@media (max-width: 980px) {
  .pricing-v2__grid,
  .pricing-v2__highlights {
    grid-template-columns: 1fr;
  }

  .pricing-v2__grid--coaches {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pricing-v2__ai-layout {
    grid-template-columns: 1fr;
  }

  .pricing-v2__card--featured {
    order: -1;
  }

  .pricing-v2__grid--coaches .pricing-v2__card--featured {
    order: 0;
  }
}

@media (max-width: 760px) {
  .pricing-v2__grid--coaches {
    grid-template-columns: 1fr;
  }

  .pricing-v2__tabs {
    grid-template-columns: 1fr;
    margin-bottom: 28px;
  }

  .pricing-v2__tab {
    text-align: start;
  }

  .pricing-v2__card,
  .pricing-v2__topup,
  .pricing-v2__consumption {
    padding: 22px;
  }

  .pricing-v2__card--featured .pricing-v2__card-top {
    padding-inline-end: 0;
    padding-top: 28px;
  }

  .pricing-v2__grid--coaches .pricing-v2__card-top {
    min-height: 0;
  }

  .pricing-v2__grid--coaches .pricing-v2__card--featured .pricing-v2__card-top {
    padding-top: 0;
  }

  .pricing-v2__cost-list li {
    align-items: start;
    flex-direction: column;
    gap: 10px;
  }
}

@media (max-width: 520px) {
  .pricing-v2__price strong {
    font-size: 44px;
  }
}

/* Dedicated pricing page FAQ (list + guarantee card) */
.pricing-page .pricing.pricing-v2 {
  padding-top: calc(var(--header-h) + 48px);
}

.pricing-faq {
  padding: 94px 0 100px;
  scroll-margin-top: calc(var(--header-h) + 20px);
  background: var(--ink);
  color: #fff;
}

.pricing-faq__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(260px, 0.7fr);
  align-items: start;
  gap: 56px;
}

.pricing-faq__intro {
  margin-bottom: 28px;
}

.pricing-faq__intro .section-kicker {
  color: var(--orange-bright);
}

.pricing-faq__intro h2 {
  max-width: 560px;
  margin: 9px 0 14px;
  font-size: clamp(30px, 3.8vw, 46px);
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1.05;
}

.pricing-faq__intro > p:not(.section-kicker) {
  max-width: 520px;
  margin: 0;
  color: rgb(255 255 255 / 58%);
  font-size: 14px;
  line-height: 1.65;
}

.pricing-faq__list {
  border-top: 1px solid rgb(255 255 255 / 16%);
}

.pricing-faq__aside {
  position: sticky;
  top: calc(var(--header-h) + 28px);
}

.pricing-guarantee {
  padding: 28px 26px 26px;
  border: 1px solid rgb(255 255 255 / 14%);
  border-radius: 18px;
  background:
    linear-gradient(165deg, rgb(255 100 34 / 12%) 0%, transparent 42%),
    var(--ink-2);
}

.pricing-guarantee__eyebrow {
  margin: 0 0 10px;
  color: var(--orange-bright);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pricing-guarantee h3 {
  margin: 0 0 14px;
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.15;
}

.pricing-guarantee > p {
  margin: 0 0 18px;
  color: rgb(255 255 255 / 62%);
  font-size: 13px;
  line-height: 1.7;
}

.pricing-guarantee > p strong {
  color: #fff;
  font-weight: 700;
}

.pricing-guarantee__points {
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.pricing-guarantee__points li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: rgb(255 255 255 / 78%);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
}

.pricing-guarantee__points li::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-top: 5px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--orange-bright);
}

.pricing-guarantee__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: var(--orange-bright);
  color: #fff;
  font-size: 13px;
  font-weight: 750;
  transition: background 0.2s ease, transform 0.2s ease;
}

.pricing-guarantee__cta:hover {
  background: var(--orange-dark);
}

.pricing-guarantee__contact {
  display: block;
  text-align: center;
  color: rgb(255 255 255 / 55%);
  font-size: 12px;
  font-weight: 600;
}

.pricing-guarantee__contact:hover {
  color: var(--orange-bright);
}

html[dir="rtl"] .pricing-guarantee__points li {
  flex-direction: row-reverse;
}

html[dir="rtl"] .pricing-guarantee__cta span {
  transform: scaleX(-1);
}

@media (max-width: 980px) {
  .pricing-faq__layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .pricing-faq__aside {
    position: static;
  }
}

@media (max-width: 640px) {
  .pricing-page .pricing.pricing-v2 {
    padding-top: calc(var(--header-h) + 28px);
  }

  .pricing-faq {
    padding: 64px 0 72px;
  }

  .pricing-guarantee {
    padding: 22px 18px;
  }
}

/* =============================================================================
   MARKETPLACE DISABLED — remove this block to re-enable public marketplace UI
   (homepage carousel, nav/footer links). Also set MARKETPLACE_ENABLED in
   marketplace.js and uncomment the index.html marketplace script/styles.
   ============================================================================= */
.marketplace-preview,
a[href="./marketplace"],
a[href="/marketplace"],
a.market-back[href="./marketplace"] {
  display: none !important;
}
