/* LIFED: the corporate wellness page (/corporate-wellness-programs).
   Same tokens as the homepage: Nunito throughout, ink #000000, body rgba(0,0,0,.82), teal #00AE9D,
   cards 28px, hero images 32px, buttons 20px and 58px tall (68px from lg).
   Everything is scoped under .lfd-tp and the page uses the site's own .container. */

.lfd-tp {
  --tp-teal: #00AE9D;
  --tp-teal-deep: #000000;
  --tp-teal-lit: #00AE9D;
  --tp-aqua: rgba(0,174,157,.16);
  --tp-aqua-soft: rgba(0,174,157,.06);
  --tp-ink: #000000;
  --tp-ink-deep: #000000;
  --tp-body: rgba(0,0,0,.82);
  --tp-muted: rgba(0,0,0,.68);
  --tp-band: rgba(0,0,0,.025);
  --tp-ash: rgba(0,0,0,.05);
  --tp-green-deep: #000000;
  --tp-white: #FFFFFF;
  --tp-gold: #00AE9D;
  --tp-line: rgba(0,0,0,.10);
  --tp-line-dark: rgba(255,255,255,.14);
  --tp-on-dark: #FFFFFF;
  --tp-on-dark-soft: rgba(255,255,255,.8);
  --tp-shadow: 0 18px 45px rgba(0,0,0,.10);
  --tp-font: "Nunito";

  font-family: var(--tp-font);
  color: var(--tp-body);
  background: var(--tp-white);
}
.lfd-tp *, .lfd-tp *::before, .lfd-tp *::after { box-sizing: border-box; }
.lfd-tp img { display: block; max-width: 100%; }
.lfd-tp button { font: inherit; color: inherit; }
.lfd-tp-sr {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* Shared type */
.lfd-tp-eyebrow {
  margin: 0 0 12px;
  font: 800 12px/1.2 var(--tp-font);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--tp-teal-deep);
}
.lfd-tp-h2 {
  margin: 0;
  font: 800 clamp(26px, 3vw, 38px)/1.1 var(--tp-font);
  letter-spacing: -0.035em;
  color: var(--tp-ink);
  text-wrap: balance;
}
.lfd-tp-lead {
  margin: 14px 0 0;
  font: 400 clamp(15.5px, 1.35vw, 18px)/1.6 var(--tp-font);
  color: var(--tp-body);
  max-width: 58ch;
}

/* Buttons */
.lfd-tp-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 58px;
  padding-inline: 26px;
  border: 1px solid transparent;
  border-radius: 20px;
  font: 800 16px/1 var(--tp-font);
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
@media (min-width: 992px) { .lfd-tp-btn { height: 68px; padding-inline: 32px; font-size: 18px; } }
.lfd-tp-btn:hover { transform: translateY(-1px); text-decoration: none; }
.lfd-tp-btn--go { background: var(--tp-teal); color: #FFFFFF; }
.lfd-tp-btn--go:hover { background: #00AE9D; color: #FFFFFF; }
.lfd-tp-btn--line { background: transparent; color: var(--tp-ink); border-color: rgba(0,0,0,.25); }
.lfd-tp-btn--line:hover { border-color: var(--tp-ink); color: var(--tp-ink); }
.lfd-tp-btn--onDark { background: var(--tp-teal); color: #FFFFFF; }
.lfd-tp-btn--onDark:hover { background: #00AE9D; color: #FFFFFF; }
.lfd-tp-btn--ghostDark { background: transparent; color: var(--tp-on-dark); border-color: rgba(255,255,255,.26); }
.lfd-tp-btn--ghostDark:hover { border-color: #FFFFFF; color: #FFFFFF; }
.lfd-tp-btn:focus-visible { outline: 2px solid var(--tp-teal-deep); outline-offset: 3px; }

/* ============================ Hero ============================ */
.lfd-tp-hero { padding-block: clamp(28px, 4vw, 56px) clamp(40px, 5vw, 72px); }
.lfd-tp-crumb {
  margin: 0 0 22px;
  font: 600 13px/1.4 var(--tp-font);
  color: var(--tp-muted);
}
.lfd-tp-crumb a { color: var(--tp-teal-deep); text-decoration: none; }
.lfd-tp-crumb a:hover { text-decoration: underline; }
.lfd-tp-hero-grid {
  display: grid;
  gap: clamp(28px, 4vw, 56px);
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
}
@media (min-width: 992px) {
  .lfd-tp-hero-grid { grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr); }
}
.lfd-tp-h1 {
  margin: 0;
  font: 800 clamp(31px, 4.2vw, 50px)/1.06 var(--tp-font);
  letter-spacing: -0.038em;
  color: var(--tp-ink);
  text-wrap: balance;
}
.lfd-tp-hero-sub {
  margin: 18px 0 0;
  font: 400 clamp(16px, 1.45vw, 19px)/1.6 var(--tp-font);
  color: var(--tp-body);
  max-width: 52ch;
}
.lfd-tp-hero-acts { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.lfd-tp-hero-note { margin: 18px 0 0; font: 400 14px/1.6 var(--tp-font); color: var(--tp-muted); }
.lfd-tp-hero-note b { font-weight: 800; color: var(--tp-ink); }

.lfd-tp-shot { position: relative; padding-bottom: 40px; }
.lfd-tp-shot-a {
  border-radius: 32px;
  overflow: hidden;
  background: var(--tp-aqua);
  box-shadow: var(--tp-shadow);
}
.lfd-tp-shot-a img { width: 100%; height: auto; aspect-ratio: 5 / 4; object-fit: cover; }
.lfd-tp-shot-b {
  position: absolute;
  left: 0; bottom: 0;
  width: min(44%, 220px);
  border-radius: 24px;
  overflow: hidden;
  border: 6px solid var(--tp-white);
  background: var(--tp-aqua);
}
.lfd-tp-shot-b img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }

/* ============================ Planner ============================ */
.lfd-tp-planner {
  background: var(--tp-band);
  padding-block: clamp(44px, 5.5vw, 84px);
}
.lfd-tp-planner-grid {
  display: grid;
  gap: clamp(18px, 2.2vw, 28px);
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  margin-top: clamp(24px, 3vw, 38px);
}
@media (min-width: 992px) {
  .lfd-tp-planner-grid { grid-template-columns: minmax(290px, 350px) minmax(0, 1fr); }
  .lfd-tp-rail { position: sticky; top: 24px; }
}

/* The three audiences, as three headings you can see and click */
.lfd-tp-who-label {
  margin: clamp(22px, 2.6vw, 32px) 0 12px;
  font: 700 12px/1.2 var(--tp-font);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--tp-muted);
}
.lfd-tp-who {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 768px) { .lfd-tp-who { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.lfd-tp-who button {
  display: block;
  width: 100%;
  padding: 18px 20px;
  text-align: left;
  background: var(--tp-white);
  border: 1px solid var(--tp-line);
  border-bottom: 3px solid var(--tp-line);
  border-radius: 20px;
  cursor: pointer;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.lfd-tp-who button:hover {
  transform: translateY(-2px);
  border-color: rgba(0,174,157,.4);
  box-shadow: var(--tp-shadow);
}
.lfd-tp-who button:focus-visible { outline: 2px solid var(--tp-teal-deep); outline-offset: 3px; }
.lfd-tp-who-h {
  display: block;
  font: 800 clamp(17px, 1.7vw, 20px)/1.25 var(--tp-font);
  letter-spacing: -0.03em;
  color: var(--tp-ink);
}
.lfd-tp-who-p {
  display: block;
  margin-top: 5px;
  font: 400 13.5px/1.45 var(--tp-font);
  color: var(--tp-muted);
}
.lfd-tp-who button[aria-selected="true"] {
  background: var(--tp-aqua-soft);
  border-color: rgba(0,174,157,.35);
  border-bottom-color: var(--tp-teal);
}
.lfd-tp-who button[aria-selected="true"] .lfd-tp-who-h { color: var(--tp-teal-deep); }
.lfd-tp-who button[aria-selected="true"] .lfd-tp-who-p { color: var(--tp-body); }

/* Format list */
.lfd-tp-list { display: grid; gap: 8px; }
.lfd-tp-opt {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr) 14px;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 14px 16px;
  text-align: left;
  background: var(--tp-white);
  border: 1px solid var(--tp-line);
  border-radius: 20px;
  cursor: pointer;
  transition: border-color .18s ease, transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.lfd-tp-opt:hover { border-color: rgba(0,174,157,.4); transform: translateX(2px); }
.lfd-tp-opt:focus-visible { outline: 2px solid var(--tp-teal-deep); outline-offset: 2px; }
.lfd-tp-opt-time {
  font: 800 12.5px/1.2 var(--tp-font);
  letter-spacing: -0.01em;
  color: var(--tp-teal-deep);
  text-align: right;
}
.lfd-tp-opt-name {
  font: 800 15.5px/1.3 var(--tp-font);
  letter-spacing: -0.025em;
  color: var(--tp-ink);
}
.lfd-tp-opt-where {
  display: block;
  margin-top: 2px;
  font: 400 13px/1.4 var(--tp-font);
  color: var(--tp-muted);
}
.lfd-tp-opt-mark {
  width: 8px; height: 8px;
  border-radius: 50%;
  border: 1px solid var(--tp-line);
  justify-self: end;
  transition: background .18s ease, border-color .18s ease;
}
.lfd-tp-opt[aria-selected="true"] {
  background: var(--tp-ink-deep);
  border-color: var(--tp-ink-deep);
  box-shadow: 0 14px 30px -20px rgba(0,0,0,.9);
}
.lfd-tp-opt[aria-selected="true"] .lfd-tp-opt-name { color: var(--tp-on-dark); }
.lfd-tp-opt[aria-selected="true"] .lfd-tp-opt-time { color: var(--tp-teal-lit); }
.lfd-tp-opt[aria-selected="true"] .lfd-tp-opt-where { color: var(--tp-on-dark-soft); }
.lfd-tp-opt[aria-selected="true"] .lfd-tp-opt-mark { background: var(--tp-teal-lit); border-color: var(--tp-teal-lit); }
.lfd-tp-opt[hidden] { display: none; }

/* Group size */
.lfd-tp-size {
  margin-top: 14px;
  padding: 14px 18px;
  background: var(--tp-white);
  border: 1px solid var(--tp-line);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.lfd-tp-size label { font: 700 14px/1.3 var(--tp-font); color: var(--tp-ink); }
.lfd-tp-stepper {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  background: var(--tp-aqua-soft);
  border-radius: 999px;
  padding: 3px;
}
.lfd-tp-stepper button {
  width: 32px; height: 32px;
  display: grid; place-items: center;
  border: 0;
  border-radius: 50%;
  background: var(--tp-white);
  color: var(--tp-ink);
  font: 600 17px/1 var(--tp-font);
  cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.lfd-tp-stepper button:hover { background: var(--tp-teal); color: #FFFFFF; }
.lfd-tp-stepper input {
  width: 52px;
  border: 0;
  background: transparent;
  text-align: center;
  font: 800 16px/1 var(--tp-font);
  font-variant-numeric: tabular-nums;
  color: var(--tp-ink);
  -moz-appearance: textfield;
}
.lfd-tp-stepper input::-webkit-outer-spin-button,
.lfd-tp-stepper input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* Detail panel */
.lfd-tp-panel {
  background: var(--tp-ink-deep);
  color: var(--tp-on-dark);
  border-radius: 28px;
  overflow: hidden;
}
.lfd-tp-card[hidden] { display: none; }
.lfd-tp-card { display: grid; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1100px) { .lfd-tp-card { grid-template-columns: minmax(0, .78fr) minmax(0, 1fr); } }

.lfd-tp-fig { position: relative; margin: 0; min-height: 240px; background: #000000; }
.lfd-tp-fig img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
@media (min-width: 1100px) {
  .lfd-tp-fig img { position: absolute; inset: 0; height: 100%; aspect-ratio: auto; }
}
.lfd-tp-tag {
  position: absolute;
  top: 16px; left: 16px;
  z-index: 2;
  padding: 7px 13px;
  border-radius: 8px;
  background: rgba(0,0,0,.74);
  font: 700 11px/1.2 var(--tp-font);
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--tp-on-dark);
}

.lfd-tp-body { padding: clamp(22px, 2.8vw, 36px); min-width: 0; }
.lfd-tp-name {
  margin: 0;
  font: 800 clamp(22px, 2.5vw, 31px)/1.14 var(--tp-font);
  letter-spacing: -0.035em;
  color: #FFFFFF;
  text-wrap: balance;
}
.lfd-tp-line {
  margin: 11px 0 0;
  font: 400 15.5px/1.6 var(--tp-font);
  color: var(--tp-on-dark-soft);
  max-width: 48ch;
}
.lfd-tp-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 30px;
  margin: 20px 0 0;
  padding: 18px 0 0;
  border-top: 1px solid var(--tp-line-dark);
}
.lfd-tp-meta dt {
  font: 700 10.5px/1.3 var(--tp-font);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--tp-on-dark-soft);
  opacity: .8;
}
.lfd-tp-meta dd {
  margin: 4px 0 0;
  font: 700 14.5px/1.4 var(--tp-font);
  letter-spacing: -0.02em;
  color: #FFFFFF;
}
.lfd-tp-fit {
  display: flex;
  gap: 8px;
  margin: 13px 0 0;
  font: 400 13.5px/1.5 var(--tp-font);
  color: var(--tp-on-dark-soft);
}
.lfd-tp-fit::before {
  content: "";
  flex: none;
  width: 6px; height: 6px;
  margin-top: 7px;
  border-radius: 50%;
  background: var(--tp-teal-lit);
}
.lfd-tp-fit[data-fit="over"]::before, .lfd-tp-fit[data-fit="under"]::before { background: #00AE9D; }

.lfd-tp-tabs {
  display: flex;
  gap: 22px;
  margin: 22px 0 0;
  border-bottom: 1px solid var(--tp-line-dark);
}
.lfd-tp-tabs button {
  position: relative;
  padding: 0 0 12px;
  border: 0;
  background: transparent;
  font: 700 14px/1.3 var(--tp-font);
  color: var(--tp-on-dark-soft);
  cursor: pointer;
  transition: color .16s ease;
}
.lfd-tp-tabs button:hover { color: #FFFFFF; }
.lfd-tp-tabs button::after {
  content: "";
  position: absolute; left: 0; right: 0; bottom: -1px;
  height: 2px;
  background: var(--tp-teal-lit);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
}
.lfd-tp-tabs button[aria-selected="true"] { color: #FFFFFF; }
.lfd-tp-tabs button[aria-selected="true"]::after { transform: scaleX(1); }
.lfd-tp-tabs button:focus-visible { outline: 2px solid var(--tp-teal-lit); outline-offset: 3px; }

.lfd-tp-pane { padding-top: 20px; }
.lfd-tp-pane[hidden] { display: none; }
.lfd-tp-pane p {
  margin: 0;
  font: 400 15.5px/1.68 var(--tp-font);
  color: var(--tp-on-dark-soft);
  max-width: 58ch;
}

.lfd-tp-day + .lfd-tp-day { margin-top: 22px; }
.lfd-tp-day-head { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.lfd-tp-day-name {
  font: 800 11.5px/1.2 var(--tp-font);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--tp-teal-lit);
}
.lfd-tp-day-sub { font: 400 13.5px/1.4 var(--tp-font); color: var(--tp-on-dark-soft); }
.lfd-tp-sched { margin: 0; padding: 0; list-style: none; }
.lfd-tp-sched li { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 14px; padding: 9px 0; }
.lfd-tp-sched li + li { border-top: 1px solid rgba(255,255,255,.07); }
.lfd-tp-time {
  font: 700 13px/1.5 var(--tp-font);
  font-variant-numeric: tabular-nums;
  color: var(--tp-on-dark-soft);
  white-space: nowrap;
}
.lfd-tp-what { font: 700 14.5px/1.5 var(--tp-font); letter-spacing: -0.02em; color: #FFFFFF; }
.lfd-tp-why { display: block; margin-top: 2px; font: 400 13.5px/1.55 var(--tp-font); color: var(--tp-on-dark-soft); }
.lfd-tp-flag {
  display: inline-block;
  margin-left: 8px;
  padding: 2px 8px;
  border-radius: 8px;
  font: 700 10px/1.5 var(--tp-font);
  letter-spacing: .07em;
  text-transform: uppercase;
  vertical-align: 2px;
}
.lfd-tp-flag[data-kind="yours"] { background: rgba(0,0,0,.22); color: #00AE9D; }
.lfd-tp-flag[data-kind="fixed"] { background: rgba(0,0,0,.16); color: var(--tp-teal-lit); }
.lfd-tp-flag[data-kind="rest"] { background: rgba(255,255,255,.1); color: var(--tp-on-dark-soft); }

.lfd-tp-incl { display: grid; gap: 10px 26px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 560px) { .lfd-tp-incl { grid-template-columns: 1fr 1fr; } }
.lfd-tp-incl li {
  display: grid;
  grid-template-columns: 17px minmax(0, 1fr);
  gap: 10px;
  font: 400 14.5px/1.5 var(--tp-font);
  color: var(--tp-on-dark-soft);
}
.lfd-tp-incl li::before {
  content: "";
  width: 16px; height: 16px;
  margin-top: 3px;
  border-radius: 50%;
  background: rgba(0,0,0,.14);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.6 2.6L12 5.6' fill='none' stroke='%2300AE9D' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.lfd-tp-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px 24px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--tp-line-dark);
}
.lfd-tp-price { font: 800 16px/1.3 var(--tp-font); letter-spacing: -0.02em; color: #FFFFFF; }
.lfd-tp-price small {
  display: block;
  margin-top: 4px;
  font: 400 12.5px/1.45 var(--tp-font);
  color: var(--tp-on-dark-soft);
  letter-spacing: 0;
}
.lfd-tp-acts { display: flex; flex-wrap: wrap; gap: 10px; }
.lfd-tp-acts .lfd-tp-btn { height: 52px; padding-inline: 22px; font-size: 15px; }

/* ============================ Trust ============================ */
.lfd-tp-trust { padding-block: clamp(44px, 5.5vw, 84px); }
.lfd-tp-trust-grid {
  display: grid;
  gap: clamp(16px, 2vw, 24px);
  grid-template-columns: minmax(0, 1fr);
  margin-top: clamp(24px, 3vw, 36px);
}
@media (min-width: 900px) { .lfd-tp-trust-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.lfd-tp-card-plain {
  padding: clamp(22px, 2.4vw, 30px);
  background: var(--tp-white);
  border: 1px solid var(--tp-line);
  border-radius: 28px;
  box-shadow: var(--tp-shadow);
}
.lfd-tp-card-plain:first-child { background: var(--tp-aqua-soft); box-shadow: none; }
.lfd-tp-h4 {
  margin: 0 0 14px;
  font: 800 17px/1.3 var(--tp-font);
  letter-spacing: -0.025em;
  color: var(--tp-ink);
}
.lfd-tp-marks { margin: 0; padding: 0; list-style: none; display: grid; gap: 11px; }
.lfd-tp-marks li {
  display: grid;
  grid-template-columns: 15px minmax(0, 1fr);
  gap: 11px;
  font: 400 14.5px/1.55 var(--tp-font);
  color: var(--tp-body);
}
.lfd-tp-marks li::before { content: ""; width: 14px; height: 14px; margin-top: 4px; border-radius: 50%; }
.lfd-tp-marks[data-mark="yes"] li::before {
  background: var(--tp-aqua);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.6 2.6L12 5.6' fill='none' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.lfd-tp-marks[data-mark="no"] li::before {
  background: rgba(0,0,0,.06);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 5l6 6M11 5l-6 6' fill='none' stroke='%23000000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.lfd-tp-note {
  margin: 22px 0 0;
  padding-left: 18px;
  border-left: 2px solid var(--tp-gold);
  font: 400 13.5px/1.65 var(--tp-font);
  color: var(--tp-muted);
  max-width: 92ch;
}

/* ============================ Proof ============================ */
.lfd-tp-proof { background: var(--tp-band); padding-block: clamp(40px, 4.5vw, 68px); }
.lfd-tp-proof-grid {
  display: grid;
  gap: clamp(18px, 2.4vw, 32px);
  grid-template-columns: minmax(0, 1fr);
  margin-top: clamp(20px, 2.6vw, 32px);
}
@media (min-width: 768px) { .lfd-tp-proof-grid { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); } }
.lfd-tp-also {
  margin: 18px 0 0;
  font: 400 15px/1.6 var(--tp-font);
  color: var(--tp-body);
}
.lfd-tp-also b { font-weight: 800; color: var(--tp-ink); }
.lfd-tp-client {
  padding: 22px 24px;
  background: var(--tp-white);
  border: 1px solid var(--tp-line);
  border-radius: 28px;
}
.lfd-tp-client-kind {
  margin: 0 0 8px;
  font: 700 11px/1.2 var(--tp-font);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--tp-teal-deep);
}
.lfd-tp-client-name {
  margin: 0;
  font: 800 19px/1.25 var(--tp-font);
  letter-spacing: -0.025em;
  color: var(--tp-ink);
}
.lfd-tp-client-line { margin: 8px 0 0; font: 400 14.5px/1.55 var(--tp-font); color: var(--tp-body); }
.lfd-tp-creds { display: flex; flex-wrap: wrap; gap: 8px; margin: clamp(20px, 2.4vw, 28px) 0 0; padding: 0; list-style: none; }
.lfd-tp-creds li {
  display: inline-flex;
  align-items: baseline;
  gap: 7px;
  padding: 9px 16px;
  background: var(--tp-white);
  border: 1px solid var(--tp-line);
  border-radius: 999px;
  font: 400 13.5px/1.3 var(--tp-font);
  color: var(--tp-body);
}
.lfd-tp-creds b { font: 800 13.5px/1.3 var(--tp-font); color: var(--tp-ink); }

/* ============================ FAQ ============================ */
.lfd-tp-faq { padding-block: clamp(44px, 5.5vw, 84px); }
.lfd-tp-faq-grid {
  display: grid;
  gap: clamp(28px, 4vw, 56px);
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  margin-top: clamp(22px, 2.8vw, 34px);
}
@media (min-width: 992px) {
  .lfd-tp-faq-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 360px); }
}
.lfd-tp-faq-list { margin: 0; }

/* Lifed curves: leaf shaped photo corners, with teal and aqua arcs behind */
.lfd-tp-curve {
  position: relative;
  padding: 46px 46px 0 0;
  max-width: 460px;
  margin-inline: auto;
}
@media (min-width: 992px) { .lfd-tp-curve { margin-inline: 0; } }
.lfd-tp-curve-arcs {
  position: absolute;
  top: 0; right: 0;
  width: 190px; height: 190px;
  pointer-events: none;
}
.lfd-tp-curve-shot {
  position: relative;
  overflow: hidden;
  border-radius: 72px 16px 72px 16px;   /* the brand leaf, scaled up */
  background: var(--tp-aqua);
  box-shadow: var(--tp-shadow);
}
.lfd-tp-curve-shot img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.lfd-tp-curve-ask {
  margin: 20px 0 0;
  font: 400 14.5px/1.6 var(--tp-font);
  color: var(--tp-body);
}
.lfd-tp-curve-ask b { display: block; font: 800 16px/1.4 var(--tp-font); color: var(--tp-ink); }
.lfd-tp-curve-ask a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  font: 800 15px/1.3 var(--tp-font);
  color: var(--tp-teal-deep);
  text-decoration: none;
}
.lfd-tp-curve-ask a:hover { color: var(--tp-ink); }
.lfd-tp-q {
  border-bottom: 1px solid var(--tp-line);
  padding: 4px 0;
}
.lfd-tp-q summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 0;
  cursor: pointer;
  list-style: none;
  font: 800 17px/1.4 var(--tp-font);
  letter-spacing: -0.02em;
  color: var(--tp-ink);
}
.lfd-tp-q summary::-webkit-details-marker { display: none; }
.lfd-tp-q summary h3 { margin: 0; font: inherit; letter-spacing: inherit; color: inherit; }
.lfd-tp-q summary::after {
  content: "";
  flex: none;
  width: 11px; height: 11px;
  border-right: 2px solid var(--tp-teal-deep);
  border-bottom: 2px solid var(--tp-teal-deep);
  transform: rotate(45deg) translate(-2px, -2px);
  transition: transform .22s ease;
}
.lfd-tp-q[open] summary::after { transform: rotate(-135deg) translate(-2px, -2px); }
.lfd-tp-q summary:hover { color: var(--tp-teal-deep); }
.lfd-tp-q summary:focus-visible { outline: 2px solid var(--tp-teal-deep); outline-offset: 3px; }
.lfd-tp-a {
  margin: 0;
  padding: 0 0 20px;
  font: 400 15.5px/1.68 var(--tp-font);
  color: var(--tp-body);
  max-width: 68ch;
}

/* ============================ Closing ============================ */
.lfd-tp-cta { padding-block: 0 clamp(48px, 6vw, 88px); }
.lfd-tp-cta-band {
  position: relative;
  padding: clamp(28px, 4vw, 52px);
  border-radius: 32px;
  background: var(--tp-ash);
  border: 1px solid rgba(0,0,0,.12);
  color: var(--tp-body);
  display: grid;
  gap: 24px 48px;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  overflow: hidden;
}
@media (min-width: 860px) { .lfd-tp-cta-band { grid-template-columns: minmax(0, 1fr) auto; } }
.lfd-tp-cta-h {
  margin: 0;
  font: 800 clamp(23px, 2.8vw, 34px)/1.15 var(--tp-font);
  letter-spacing: -0.035em;
  color: var(--tp-green-deep);
  text-wrap: balance;
}
.lfd-tp-cta-p { margin: 12px 0 0; font: 400 15.5px/1.62 var(--tp-font); color: var(--tp-body); max-width: 50ch; }
.lfd-tp-cta-who { margin: 18px 0 0; font: 400 13.5px/1.6 var(--tp-font); color: var(--tp-muted); }
.lfd-tp-cta-who a { color: var(--tp-green-deep); text-decoration: none; }
.lfd-tp-cta-who a:hover { color: var(--tp-ink); }
.lfd-tp-cta-acts { display: flex; flex-wrap: wrap; gap: 12px; }
.lfd-tp-cta-band .lfd-tp-btn--onDark { background: var(--tp-green-deep); color: #FFFFFF; }
.lfd-tp-cta-band .lfd-tp-btn--onDark:hover { background: var(--tp-teal-deep); color: #FFFFFF; }
.lfd-tp-cta-band .lfd-tp-btn--ghostDark {
  color: var(--tp-green-deep);
  border-color: rgba(0,0,0,.35);
}
.lfd-tp-cta-band .lfd-tp-btn--ghostDark:hover { border-color: var(--tp-green-deep); color: var(--tp-green-deep); }

/* ============================ Motion ============================ */
@media (prefers-reduced-motion: no-preference) {
  .lfd-tp-card[data-enter="1"] .lfd-tp-body > * { animation: lfd-tp-rise .4s cubic-bezier(.2, .7, .3, 1) both; }
  .lfd-tp-card[data-enter="1"] .lfd-tp-body > *:nth-child(2) { animation-delay: .04s; }
  .lfd-tp-card[data-enter="1"] .lfd-tp-body > *:nth-child(3) { animation-delay: .08s; }
  .lfd-tp-card[data-enter="1"] .lfd-tp-fig img { animation: lfd-tp-fade .45s ease both; }
}
@keyframes lfd-tp-rise { from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: none; } }
@keyframes lfd-tp-fade { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
  .lfd-tp *, .lfd-tp *::before, .lfd-tp *::after {
    transition-duration: .001ms !important;
    animation-duration: .001ms !important;
  }
}

/* Laravel integration: every rule is isolated to this Corporate page. */
.lfd-tp picture{display:contents}
.lfd-tp [hidden]{display:none!important}
.lfd-tp :focus-visible{outline:3px solid #000000;outline-offset:3px}
.lfd-tp .lfd-tp-panel :focus-visible{outline-color:#00AE9D}
.lfd-tp .lfd-tp-btn--go,.lfd-tp .lfd-tp-btn--onDark,.lfd-tp .lfd-tp-btn--go:hover,.lfd-tp .lfd-tp-btn--onDark:hover{color:#000000;background:#00AE9D}
.lfd-tp .lfd-tp-cta-band .lfd-tp-btn--onDark{color:#FFFFFF;background:#000000}
.lfd-tp .lfd-tp-stepper button:hover{color:#000000}
.lfd-tp .lfd-tp-proposal{font:700 12px/1.5 "Nunito";color:rgba(255,255,255,.8);margin:0 0 12px}
.lfd-tp .lfd-tp-support{padding:clamp(44px,5.5vw,84px) 0;background:rgba(0,0,0,.025)}
.lfd-tp .lfd-tp-support-item{padding:10px 0}
.lfd-tp .lfd-tp-support-body{padding:8px 0 26px;max-width:100%;font:400 16px/1.65 "Nunito";color:#000000}
.lfd-tp .lfd-tp-support-body h3{font:800 20px/1.3 "Nunito";margin:24px 0 12px;color:#000000}
.lfd-tp .lfd-tp-support-body p{margin:12px 0;max-width:85ch}
.lfd-tp .lfd-tp-support-body ul,.lfd-tp .lfd-tp-support-body ol{padding-left:22px}
.lfd-tp .lfd-tp-support-body li{margin:12px 0}
.lfd-tp .lfd-tp-support-body a{color:#000000;text-decoration:underline;text-underline-offset:3px}
.lfd-tp .lfd-tp-support-body [title]{color:inherit}
.lfd-tp .lfd-tp-support-body img{max-width:380px;width:100%;height:auto;border-radius:20px}
.lfd-tp .lfd-tp-support-body dl>div{display:flex;gap:20px}
.lfd-tp .lfd-tp-support-body dt{font-weight:800;min-width:120px}
.lfd-tp .lfd-tp-support-body dd{margin:0}
.lfd-tp .lfd-tp-support-body blockquote{border-left:2px solid #00AE9D;padding-left:18px}
.lfd-tp .lfd-tp-support-body [id]{scroll-margin-top:110px}
.lfd-tp .lfd-tp-tagline{font:700 15px/1.5 "Nunito";padding-bottom:28px;margin-bottom:0;color:#000000}
.lfd-tp .lfd-tp-live{--cp-ink:#000000;--cp-body:#000000;--cp-muted:rgba(0,0,0,.68);--cp-icon:#000000;--cp-icon-green:#00AE9D;--cp-teal-ink:#000000;--cp-soft:rgba(0,0,0,.025);--cp-head:"Nunito";--cp-text:"Nunito";padding-top:44px}
.lfd-tp .lfd-tp-inventory-note{font:600 16px/1.6 "Nunito";color:#000000}
.lfd-tp .lfd-tp-live .lfd-wellness-program-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.lfd-tp .lfd-tp-live .lfd-wellness-program-grid>div{display:flex;min-width:0}
.lfd-tp .lfd-tp-live .lfd-sec2-card{width:100%;height:100%;background:#FFFFFF;color:#000000;border-color:rgba(0,0,0,.14)}
.lfd-tp .lfd-tp-live .lfd-sec2-card-content{display:flex;flex-direction:column;flex:1}
.lfd-tp .lfd-tp-live .lfd-sec2-card-title>a{color:inherit;text-decoration:none}
.lfd-tp .lfd-tp-live .lfd-explore-price{display:grid;gap:4px;padding:14px 0;margin-top:8px;border-top:1px solid rgba(0,0,0,.12)}
.lfd-tp .lfd-tp-live .lfd-explore-price>span{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.lfd-tp .lfd-tp-live .lfd-explore-price strong{font-size:1.2rem}
.lfd-tp .lfd-tp-live .lfd-explore-book{display:block;padding:12px 14px;margin-bottom:16px;border:1px solid #000000;border-radius:12px;text-align:center;font-size:.85rem;font-weight:800;color:#000000}
.lfd-tp .lfd-tp-live .lfd-explore-book:hover{background:rgba(0,174,157,.12)}
.lfd-tp .lfd-tp-live .lfd-wellness-pagination{display:flex;justify-content:center;gap:24px;align-items:center;margin-top:32px}
.lfd-tp .lfd-tp-live .lfd-cp-tab{display:inline-flex;align-items:center;text-decoration:none;min-height:44px}
.lfd-tp .lfd-tp-live .lfd-cp-tab[aria-current="true"]{background:#000000;color:#FFFFFF}
.lfd-tp .lfd-tp-live .lfd-cp-tab[aria-current="true"] .c{color:#FFFFFF}
.lfd-tp .lfd-tp-live .lfd-wellness-program-grid>div:not([data-cp-col]){grid-column:1/-1;display:block;padding:24px 0}
@media(max-width:1199.98px){.lfd-tp .lfd-tp-live .lfd-wellness-program-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991.98px){.lfd-tp .lfd-tp-live .lfd-wellness-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575.98px){.lfd-tp .lfd-tp-live .lfd-wellness-program-grid{grid-template-columns:1fr}.lfd-tp .lfd-tp-live .lfd-wellness-pagination{flex-wrap:wrap}.lfd-tp .lfd-tp-btn{height:auto;min-height:52px;white-space:normal;padding:16px 20px}.lfd-tp .lfd-tp-tabs{gap:14px}.lfd-tp .lfd-tp-tabs button{font-size:13px}.lfd-tp .lfd-tp-support-body dl>div{display:block}}
/* Existing shared card geometry is retained; Corporate text uses the stricter three-colour palette. */
.lfd-tp .lfd-tp-live .lfd-sec2-card *{color:#000000}
.lfd-tp .lfd-tp-stepper button{width:44px;height:44px}
.lfd-tp .lfd-tp-tabs button{min-height:44px}
