@font-face {
  font-family: "Muli";
  src: url("/assets/fonts/muli-400.woff2") format("woff2");
  font-display: optional;
  font-weight: 400;
}

@font-face {
  font-family: "Muli";
  src: url("/assets/fonts/muli-600.woff2") format("woff2");
  font-display: optional;
  font-weight: 600;
}

@font-face {
  font-family: "Muli";
  src: url("/assets/fonts/muli-700.woff2") format("woff2");
  font-display: optional;
  font-weight: 700;
}

:root {
  --space-2xs: 0.125rem;
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4rem;
  --space-4xl: 6rem;

  --radius-sm: 0.4rem;
  --radius-md: 0.8rem;
  --radius-lg: 1.4rem;
  --radius-xl: 2rem;
  --radius-full: 999rem;

  --shadow-xs: 0 1px 2px rgb(0 0 0 / 0.05);
  --shadow-sm: 0 10px 30px rgb(7 15 10 / 0.08);
  --shadow-md: 0 30px 70px rgb(7 15 10 / 0.12);

  --text-sm: clamp(0.92rem, 0.86rem + 0.2vw, 0.98rem);
  --text-base: clamp(1.04rem, 0.98rem + 0.25vw, 1.12rem);
  --text-lg: clamp(1.18rem, 1.05rem + 0.55vw, 1.42rem);
  --text-xl: clamp(1.38rem, 1.2rem + 0.9vw, 1.76rem);
  --text-2xl: clamp(1.95rem, 1.55rem + 1.5vw, 2.95rem);
  --text-3xl: clamp(2.65rem, 2.15rem + 2.25vw, 4.25rem);

  --leading-tight: 1.04;
  --leading-snug: 1.22;
  --leading-normal: 1.58;
  --leading-relaxed: 1.74;

  --duration-fast: 160ms;
  --duration-normal: 240ms;
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
  --container: min(100% - 2rem, 76rem);
}

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

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-width: 20rem;
  font-family: "Muli", "Avenir Next", sans-serif;
  font-size: var(--text-base);
  line-height: var(--leading-relaxed);
  color: var(--color-text);
  background:
    radial-gradient(circle at top left, rgb(21 152 220 / 0.16), transparent 24rem),
    radial-gradient(circle at bottom right, rgb(8 28 48 / 0.08), transparent 28rem),
    linear-gradient(180deg, #f7fbff 0%, #eef6fc 52%, #f9fcff 100%);
}

img {
  max-width: 100%;
  display: block;
  height: auto;
}

picture {
  display: block;
}

a {
  color: inherit;
}

button,
input,
textarea {
  font: inherit;
}

button,
.button,
.site-nav__link,
.text-link {
  transition:
    transform var(--duration-fast) var(--ease-default),
    background-color var(--duration-normal) var(--ease-default),
    color var(--duration-normal) var(--ease-default),
    border-color var(--duration-normal) var(--ease-default);
}

.skip-link,
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.skip-link:focus {
  width: auto;
  height: auto;
  clip: auto;
  inset: var(--space-md);
  z-index: 20;
  padding: var(--space-sm) var(--space-md);
  background: var(--color-surface-raised);
  border-radius: var(--radius-sm);
}

.container {
  width: var(--container);
  margin-inline: auto;
}

.section,
.page-hero,
.post-shell {
  padding-block: clamp(3.5rem, 6vw, 6rem);
}

.section-soft {
  background: linear-gradient(180deg, rgb(255 255 255 / 0.92), rgb(227 242 251 / 0.7));
}

.section-rich {
  color: #f7f8f2;
  background:
    linear-gradient(135deg, rgb(8 28 48 / 0.98), rgb(13 62 101 / 0.94)),
    radial-gradient(circle at top right, rgb(21 152 220 / 0.24), transparent 24rem);
}

.section-decorated {
  position: relative;
  overflow: clip;
}

.section-decorated::before {
  content: "";
  position: absolute;
  inline-size: 20rem;
  block-size: 20rem;
  inset-inline-end: -6rem;
  inset-block-start: -4rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgb(120 205 255 / 0.34), transparent 70%);
}

.section-heading {
  max-width: 45rem;
  margin-block-end: var(--space-2xl);
}

.section-heading--light {
  color: #f7f8f2;
}

.section-heading--light p,
.section-heading--light .eyebrow {
  color: rgb(226 241 255 / 0.9);
}

.eyebrow,
.footer-kicker,
.timeline-card__period,
.pill {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  margin: 0 0 var(--space-md);
  font-size: var(--text-sm);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.eyebrow,
.footer-kicker,
.timeline-card__period {
  color: var(--color-primary);
}

.pill {
  padding: 0.45rem 0.75rem;
  border-radius: var(--radius-full);
  background: rgb(21 152 220 / 0.12);
  letter-spacing: 0.08em;
}

h1,
h2,
h3 {
  margin: 0 0 var(--space-md);
  font-weight: 700;
  line-height: var(--leading-tight);
  text-wrap: balance;
}

h1 {
  font-size: var(--text-3xl);
  max-width: 11ch;
}

h2 {
  font-size: var(--text-2xl);
  max-width: 16ch;
}

h3 {
  font-size: var(--text-xl);
}

p {
  margin: 0 0 var(--space-md);
  max-width: 65ch;
  color: var(--color-text-muted);
}

ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.button-row,
.section-actions,
.site-footer__meta,
.filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(0.85rem, 1.4vw, 1.15rem);
}

.button-row--stack {
  align-items: stretch;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.125rem;
  padding: 0.95rem 1.5rem;
  border: 1px solid transparent;
  border-radius: var(--radius-full);
  text-decoration: none;
  font-weight: 700;
}

.button:hover,
.button:focus-visible,
.site-nav__link:hover,
.site-nav__link:focus-visible,
.text-link:hover,
.text-link:focus-visible {
  transform: translateY(-1px);
}

.button:focus-visible,
.site-nav__link:focus-visible,
.faq-item__trigger:focus-visible,
input:focus-visible,
textarea:focus-visible,
.filter-chip:focus-visible,
.nav-toggle:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}

.button--primary {
  background: var(--color-primary);
  color: #f9fbf5;
}

.button--primary:hover {
  background: var(--color-primary-hover);
}

.button--secondary,
.button--ghost {
  border-color: var(--color-border);
  background: rgb(255 255 255 / 0.92);
  color: var(--color-text);
}

.button--secondary:hover,
.button--ghost:hover {
  background: rgb(241 248 253 / 0.98);
}

.text-link {
  font-weight: 700;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.2em;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 10;
  backdrop-filter: blur(16px);
  background: rgb(255 255 255 / 0.9);
  border-bottom: 1px solid rgb(16 41 63 / 0.08);
}

.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  min-height: 5.25rem;
}

.brandmark {
  display: inline-flex;
  align-items: center;
  gap: 0.9rem;
  text-decoration: none;
}

.brandmark__logo {
  inline-size: 3rem;
  block-size: 3rem;
  padding: 0.4rem;
  border-radius: 1rem;
  background: rgb(241 248 253 / 0.95);
  box-shadow: var(--shadow-xs);
}

.brandmark__logo picture {
  inline-size: 100%;
  block-size: 100%;
}

.brandmark__copy {
  display: none;
}

.brandmark__copy strong,
.brandmark__copy span {
  display: block;
}

.brandmark__copy span {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}

.nav-toggle {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.25rem;
  min-width: 2.75rem;
  min-height: 2.75rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / 0.96);
}

.nav-toggle__line {
  display: block;
  inline-size: 1.15rem;
  block-size: 2px;
  margin-inline: auto;
  background: var(--color-ink);
}

.site-nav {
  position: absolute;
  inset-inline: var(--space-md);
  inset-block-start: calc(100% + 0.5rem);
  display: none;
  padding: var(--space-lg);
  border-radius: var(--radius-lg);
  background: var(--color-surface-raised);
  box-shadow: var(--shadow-md);
}

.nav-open .site-nav {
  display: block;
}

.site-nav__list,
.footer-list,
.related-posts {
  display: grid;
  gap: var(--space-sm);
}

.site-nav__item {
  display: grid;
  gap: 0.65rem;
}

.site-nav__item--has-children {
  position: relative;
}

.site-nav__caret {
  margin-inline-start: 0.35rem;
  color: var(--color-primary);
  font-weight: 700;
}

.site-nav__link,
.footer-list a,
.related-posts a {
  text-decoration: none;
}

.site-nav__sublist {
  display: grid;
  gap: 0.55rem;
  padding-inline-start: 1rem;
  border-inline-start: 1px solid rgb(16 41 63 / 0.1);
}

.site-nav__sublink {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  text-decoration: none;
}

.site-nav__sublink.is-active,
.site-nav__sublink:hover,
.site-nav__sublink:focus-visible {
  color: var(--color-primary);
}

.site-nav__link.is-active {
  color: var(--color-primary);
}

.site-nav__cta {
  margin-block-start: var(--space-md);
}

.hero__grid,
.story-grid,
.contact-grid,
.post-shell__grid,
.narrative-grid {
  display: grid;
  gap: var(--space-2xl);
}

.hero__content,
.hero__visual,
.reveal {
  position: relative;
  z-index: 1;
}

.hero__content {
  display: grid;
  justify-items: center;
}

.hero__chip-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-sm);
  margin-block-end: var(--space-xl);
}

.hero__chip {
  display: inline-flex;
  align-items: center;
  min-height: 2.25rem;
  padding: 0.45rem 0.85rem;
  border: 1px solid rgb(171 219 255 / 0.2);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / 0.08);
  color: rgb(224 241 255 / 0.92);
  font-size: var(--text-sm);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.hero__visual {
  display: grid;
  gap: var(--space-lg);
  align-content: start;
}

.hero__frame {
  position: relative;
  display: grid;
  gap: var(--space-lg);
  padding: clamp(0.9rem, 1.5vw, 1.1rem);
  border: 1px solid rgb(171 219 255 / 0.16);
  border-radius: calc(var(--radius-xl) + 0.35rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.08), rgb(255 255 255 / 0.03));
  box-shadow: 0 28px 80px rgb(3 12 24 / 0.22);
  backdrop-filter: blur(14px);
}

.hero__lede,
.page-hero__lede,
.post-hero__lede {
  font-size: var(--text-lg);
  line-height: var(--leading-snug);
  color: inherit;
  max-width: 35rem;
}

.hero__identity {
  margin: 0 0 var(--space-sm);
  text-align: center;
  color: rgb(232 242 252 / 0.98);
  font-size: clamp(1.2rem, 1.05rem + 0.45vw, 1.45rem);
  font-weight: 700;
  letter-spacing: 0.01em;
}

.hero__content .eyebrow,
.hero__lede {
  text-align: center;
  margin-inline: auto;
}

.hero__content h1 {
  max-width: 14ch;
  margin-inline: auto;
  text-align: center;
  font-size: clamp(2.15rem, 1.75rem + 1.55vw, 3.35rem);
  line-height: 0.98;
  letter-spacing: -0.03em;
}

.hero__copy {
  display: grid;
  gap: var(--space-md);
  margin-block-end: var(--space-xl);
  justify-items: center;
}

.hero__copy p {
  margin-bottom: 0;
  max-width: 34rem;
  margin-inline: auto;
  text-align: center;
}

.hero__copy p,
.testimonials-band p,
.cta-band p,
.section-rich .timeline-card p,
.section-rich .feature-list li {
  color: rgb(229 241 252 / 0.92);
}

.hero__content .eyebrow,
.cta-band__content .eyebrow {
  color: rgb(143 213 255 / 0.98);
}

.hero__portrait {
  position: relative;
  overflow: hidden;
  border-radius: min(2.4rem, 7vw);
  box-shadow: var(--shadow-md);
}

.hero__portrait::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  block-size: 45%;
  background: linear-gradient(180deg, transparent, rgb(8 28 48 / 0.42));
}

.stat-card,
.service-card,
.spotlight-card,
.testimonial-card,
.authority-card,
.timeline-card,
.post-card,
.contact-panel,
.narrative-card,
.sticky-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: rgb(255 255 255 / 0.94);
  box-shadow: var(--shadow-sm);
}

.service-card,
.spotlight-card,
.testimonial-card,
.authority-card,
.timeline-card,
.post-card__body,
.contact-panel,
.narrative-card,
.sticky-card {
  padding: var(--space-lg);
}

.hero__signal {
  display: grid;
  gap: var(--space-sm);
  align-self: end;
  justify-items: center;
  max-width: 23rem;
  margin-inline: auto;
  padding: var(--space-lg);
  border: 1px solid rgb(171 219 255 / 0.18);
  border-radius: calc(var(--radius-lg) + 0.2rem);
  background: linear-gradient(180deg, rgb(6 24 41 / 0.88), rgb(9 35 58 / 0.82));
  box-shadow: 0 20px 50px rgb(5 19 34 / 0.22);
  text-align: center;
}

.hero__signal .eyebrow {
  margin-bottom: 0;
  color: rgb(143 213 255 / 0.96);
}

.hero__signal-title {
  margin: 0;
  max-width: 12ch;
  color: #fff;
  font-size: clamp(1.45rem, 1.1rem + 0.9vw, 2rem);
  font-weight: 700;
  line-height: 1.08;
}

.hero__signal p:last-child {
  margin-bottom: 0;
  color: rgb(221 236 250 / 0.86);
}

.hero__signal-list {
  display: grid;
  gap: var(--space-sm);
  justify-items: start;
  max-width: 18rem;
  text-align: left;
}

.hero__signal-list li {
  position: relative;
  padding-inline-start: 1.2rem;
  color: rgb(221 236 250 / 0.88);
}

.hero__signal-list li::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.72rem;
  inline-size: 0.45rem;
  block-size: 0.45rem;
  border-radius: 50%;
  background: rgb(115 212 255 / 0.96);
}

.stats-grid,
.service-grid,
.process-grid,
.spotlight-grid,
.testimonial-grid,
.authority-grid,
.timeline-grid,
.post-grid,
.audience-grid,
.offer-grid {
  display: grid;
  gap: var(--space-lg);
}

.hero__actions .button {
  min-width: 11.5rem;
}

.hero__actions {
  margin-block: var(--space-xl) var(--space-lg);
  justify-content: center;
}

.hero__chip-row,
.hero__copy,
.hero__actions,
.hero .stats-grid {
  inline-size: 100%;
}

.section-actions--spacious {
  margin-block-start: var(--space-xl);
}

.stat-card strong {
  display: block;
  margin-block-end: var(--space-xs);
  font-size: clamp(1.65rem, 1.35rem + 0.9vw, 2.1rem);
  color: var(--color-primary);
}

.stat-card {
  padding: clamp(1rem, 1.8vw, 1.35rem);
}

.stat-card span {
  display: block;
  margin-block-end: var(--space-xs);
  font-weight: 700;
  color: var(--color-ink);
}

.stat-card p {
  margin-bottom: 0;
  color: var(--color-text-muted);
}

.hero .stat-card {
  border-color: rgb(171 219 255 / 0.18);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.1), rgb(255 255 255 / 0.04));
  box-shadow: none;
  backdrop-filter: blur(12px);
}

.hero .stats-grid {
  margin-block-start: var(--space-md);
}

.hero .stat-card strong {
  color: rgb(115 212 255 / 0.98);
}

.hero .stat-card span {
  color: #fff;
}

.hero .stat-card p {
  color: rgb(221 236 250 / 0.8);
}

.audience-card,
.offer-card {
  padding: clamp(1.25rem, 2vw, 1.75rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: rgb(255 255 255 / 0.95);
  box-shadow: var(--shadow-sm);
}

.profile-shell,
.profile-pillars,
.credential-grid,
.focus-grid,
.path-grid,
.photo-grid {
  display: grid;
  gap: var(--space-lg);
}

.profile-card,
.profile-pillar,
.credential-card,
.author-card,
.focus-card,
.path-card,
.archive-callout,
.archive-banner {
  padding: clamp(1.35rem, 2.2vw, 1.85rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(240 248 255 / 0.92));
  box-shadow: var(--shadow-sm);
}

.profile-card--image {
  overflow: hidden;
  min-block-size: 24rem;
  padding: 0;
}

.profile-card--image img,
.author-card__image {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.profile-card--intro {
  display: grid;
  gap: var(--space-md);
  align-content: start;
}

.photo-card {
  display: grid;
  gap: var(--space-md);
  margin: 0;
  padding: clamp(1rem, 2vw, 1.3rem);
  border: 1px solid var(--color-border);
  border-radius: calc(var(--radius-xl) + 0.05rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(241 248 255 / 0.94));
  box-shadow: var(--shadow-sm);
}

.photo-card img {
  inline-size: 100%;
  aspect-ratio: 4 / 5;
  border-radius: calc(var(--radius-lg) + 0.05rem);
  object-fit: cover;
}

.photo-card__caption {
  display: grid;
  gap: 0.55rem;
}

.photo-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: fit-content;
  min-block-size: 1.9rem;
  padding: 0.35rem 0.75rem;
  border-radius: var(--radius-full);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.photo-card__badge--blue {
  background: rgb(21 152 220 / 0.14);
  color: rgb(12 109 173);
}

.photo-card__badge--green {
  background: rgb(21 167 125 / 0.14);
  color: rgb(12 124 94);
}

.photo-card__badge--purple {
  background: rgb(102 87 255 / 0.16);
  color: rgb(92 76 219);
}

.photo-card__badge--orange {
  background: rgb(244 138 42 / 0.16);
  color: rgb(193 102 17);
}

.photo-card__caption strong {
  color: var(--color-ink);
  font-size: clamp(1.08rem, 0.98rem + 0.28vw, 1.22rem);
  line-height: 1.25;
}

.photo-card__caption span {
  color: var(--color-text);
  font-size: clamp(0.98rem, 0.94rem + 0.08vw, 1.02rem);
  line-height: 1.72;
}

.profile-card--intro p:last-of-type {
  margin-bottom: 0;
}

.profile-pillar h3,
.author-card h2,
.focus-card h3,
.path-card h3 {
  max-width: 14ch;
}

.focus-card,
.path-card {
  display: grid;
  gap: var(--space-sm);
  align-content: start;
}

.card-with-mark {
  position: relative;
  overflow: hidden;
  gap: 0.9rem;
  padding-top: clamp(1.45rem, 2.5vw, 2rem);
  background:
    radial-gradient(circle at top right, rgb(255 255 255 / 0.9), transparent 10rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.99), rgb(240 248 255 / 0.94));
}

.card-with-mark > * {
  position: relative;
  z-index: 1;
}

.focus-card--service::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgb(21 152 220 / 0.02));
  pointer-events: none;
}

.signature-card--service,
.path-card--service,
.sticky-card--service {
  position: relative;
  overflow: hidden;
}

.signature-card--service::after,
.path-card--service::after,
.sticky-card--service::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgb(21 152 220 / 0.02));
  pointer-events: none;
}

.service-mark,
.tool-mark,
.industry-mark,
.brand-mark {
  position: relative;
  display: inline-grid;
  place-items: center;
  justify-self: start;
  flex-shrink: 0;
  inline-size: 3.85rem;
  block-size: 3.85rem;
  margin-bottom: 0.25rem;
  border-radius: 1.25rem;
  background: linear-gradient(180deg, rgb(255 255 255 / 0.96), rgb(237 246 255 / 0.92));
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.9),
    0 12px 28px rgb(12 30 48 / 0.08);
}

.service-mark::before,
.tool-mark::before,
.industry-mark::before,
.brand-mark::before {
  content: "";
  position: absolute;
  inset: 0.3rem;
  border-radius: 1rem;
  background: linear-gradient(180deg, rgb(255 255 255 / 0.9), rgb(231 242 252 / 0.82));
}

.service-mark svg,
.tool-mark svg,
.industry-mark svg,
.brand-mark svg {
  position: relative;
  z-index: 1;
  inline-size: 2.4rem;
  block-size: 2.4rem;
}

.value-area-mark {
  position: relative;
  display: inline-grid;
  place-items: center;
  flex-shrink: 0;
  inline-size: 2.9rem;
  block-size: 2.9rem;
  border-radius: 0.95rem;
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(235 246 255 / 0.94));
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.92),
    0 10px 22px rgb(12 30 48 / 0.08);
}

.value-area-mark::before {
  content: "";
  position: absolute;
  inset: 0.22rem;
  border-radius: 0.75rem;
  background: linear-gradient(180deg, rgb(255 255 255 / 0.92), rgb(229 242 252 / 0.86));
}

.value-area-mark svg {
  position: relative;
  z-index: 1;
  inline-size: 1.7rem;
  block-size: 1.7rem;
}

.focus-card--service h3,
.signature-card--service h3,
.path-card--service h3 {
  max-width: 12ch;
}

.focus-card--service p:not(.audience-card__kicker),
.signature-card--service p:not(.audience-card__kicker),
.path-card--service p:not(.audience-card__kicker) {
  max-width: 28ch;
}

.focus-card--service .text-link {
  margin-top: auto;
}

.signature-card--service .service-mark,
.path-card--service .service-mark,
.sticky-card--service .service-mark,
.narrative-card--service .service-mark {
  margin-bottom: 0.45rem;
}

.focus-card--tool,
.resource-card--tool,
.audience-card--industry,
.path-card--brand,
.result-story--brand {
  position: relative;
  overflow: hidden;
}

.focus-card--tool::after,
.resource-card--tool::after,
.audience-card--industry::after,
.path-card--brand::after,
.result-story--brand::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgb(21 152 220 / 0.02));
  pointer-events: none;
}

.focus-card--tool .tool-mark,
.resource-card--tool .tool-mark,
.audience-card--industry .industry-mark,
.path-card--brand .brand-mark,
.result-story--brand .brand-mark {
  margin-bottom: 0.45rem;
}

.focus-card--tool h3,
.resource-card--tool h3,
.audience-card--industry h3,
.path-card--brand h3,
.result-story--brand h3 {
  max-width: 12ch;
}

.focus-card--tool p:not(.audience-card__kicker),
.resource-card--tool p:not(.audience-card__kicker),
.audience-card--industry p:not(.audience-card__kicker),
.path-card--brand p:not(.audience-card__kicker),
.result-story--brand p:not(.audience-card__kicker):not(.result-story__result) {
  max-width: 28ch;
}

.audience-card--industry {
  display: grid;
  gap: 0.9rem;
  align-content: start;
}

.signature-card--featured .service-mark {
  background: linear-gradient(180deg, rgb(255 255 255 / 0.16), rgb(255 255 255 / 0.1));
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.14),
    0 18px 40px rgb(3 12 24 / 0.12);
}

.signature-card--featured .service-mark::before {
  background: linear-gradient(180deg, rgb(255 255 255 / 0.16), rgb(255 255 255 / 0.08));
}

.sticky-card--service {
  gap: var(--space-md);
}

.narrative-card--service {
  display: grid;
  align-content: start;
  gap: var(--space-md);
  background:
    radial-gradient(circle at top right, rgb(255 255 255 / 0.94), transparent 10rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(240 248 255 / 0.95));
}

.narrative-card--service h2 {
  max-width: 14ch;
}

.narrative-card--service p:not(.eyebrow) {
  max-width: 34ch;
  margin-bottom: 0;
}

.narrative-card--service .button-row {
  margin-top: var(--space-sm);
}

.focus-card h3,
.path-card h3 {
  margin-bottom: 0;
}

.path-card h3 {
  max-width: 18ch;
}

.focus-card h3 a,
.path-card h3 a {
  text-decoration: none;
}

.focus-card h3 a:hover,
.focus-card h3 a:focus-visible,
.path-card h3 a:hover,
.path-card h3 a:focus-visible {
  color: var(--color-primary);
}

.path-card--accent,
.focus-card--accent {
  border-color: rgb(21 152 220 / 0.28);
  background:
    linear-gradient(180deg, rgb(226 242 255 / 0.98), rgb(244 250 255 / 0.94)),
    radial-gradient(circle at top right, rgb(21 152 220 / 0.14), transparent 16rem);
}

.credential-card strong {
  display: block;
  margin-block-end: var(--space-xs);
  font-size: clamp(1.6rem, 1.28rem + 0.7vw, 2rem);
  color: var(--color-primary);
}

.credential-card span {
  display: block;
  margin-block-end: var(--space-xs);
  font-weight: 700;
  color: var(--color-ink);
}

.credential-card p {
  margin-bottom: 0;
}

.blog-stats-grid {
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.blog-stat-card {
  gap: 0.45rem;
  align-content: start;
  min-block-size: 0;
  padding: 1.25rem 1.1rem;
  border-radius: calc(var(--radius-lg) + 0.1rem);
}

.blog-stat-card--primary {
  border-color: rgb(21 152 220 / 0.24);
  background:
    radial-gradient(circle at top right, rgb(21 152 220 / 0.12), transparent 9rem),
    linear-gradient(180deg, rgb(246 252 255 / 0.99), rgb(236 247 255 / 0.95));
}

.blog-stat-card strong {
  margin-block-end: 0.15rem;
  font-size: clamp(2rem, 1.5rem + 1vw, 2.5rem);
  line-height: 1;
}

.blog-stat-card span {
  margin-block-end: 0.2rem;
  font-size: clamp(1rem, 0.96rem + 0.18vw, 1.12rem);
  line-height: 1.35;
}

.blog-stat-card p {
  max-width: 20ch;
  font-size: 0.98rem;
  line-height: 1.55;
  color: var(--color-text);
}

.approach-shell {
  display: grid;
  gap: var(--space-xl);
}

.approach-shell__heading {
  margin-bottom: 0;
}

.approach-grid {
  display: grid;
  gap: var(--space-lg);
}

.approach-card {
  padding: clamp(1.35rem, 2.2vw, 1.85rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(240 248 255 / 0.92));
  box-shadow: var(--shadow-sm);
}

.approach-card p {
  margin-bottom: 0;
  max-width: 34ch;
  color: var(--color-text);
  font-size: clamp(1.08rem, 0.98rem + 0.28vw, 1.22rem);
  line-height: 1.65;
}

.audience-card__kicker {
  margin-bottom: var(--space-sm);
  color: var(--color-primary);
  font-size: var(--text-sm);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.audience-card h3,
.offer-card h3 {
  max-width: 15ch;
}

.offer-card {
  background: linear-gradient(180deg, rgb(255 255 255 / 0.96), rgb(240 248 255 / 0.9));
}

.offer-card--value {
  display: grid;
  gap: 1rem;
  align-content: start;
}

.offer-card__header {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.9rem;
  align-items: center;
}

.offer-card--value h3 {
  max-width: none;
  margin-bottom: 0;
  line-height: 1.06;
}

.offer-card--value p {
  margin-bottom: 0;
}

.citation-grid {
  align-items: stretch;
}

.citation-card h3 {
  max-width: none;
  margin-bottom: var(--space-sm);
  font-size: clamp(1.12rem, 1.02rem + 0.28vw, 1.3rem);
}

.citation-card__answer {
  margin-bottom: 0;
  color: var(--color-text);
  font-size: clamp(1rem, 0.96rem + 0.1vw, 1.04rem);
  line-height: 1.72;
}

.service-detail__shell,
.service-detail__content,
.service-detail__coverage {
  display: grid;
  gap: var(--space-lg);
}

.service-detail__content h2,
.service-detail__coverage h2 {
  margin-bottom: 0;
  max-width: 16ch;
}

.service-detail__content p:not(.eyebrow),
.service-detail__coverage p:not(.eyebrow) {
  margin-bottom: 0;
}

.service-detail__grid {
  gap: var(--space-md);
}

.service-detail__card h3 {
  max-width: 17ch;
}

.service-detail__note {
  display: grid;
  gap: 0.55rem;
  padding: clamp(1rem, 2vw, 1.25rem);
  border: 1px solid rgb(255 158 61 / 0.18);
  border-radius: var(--radius-xl);
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.12), transparent 7rem),
    linear-gradient(180deg, rgb(255 249 243 / 0.98), rgb(241 248 255 / 0.94));
  box-shadow: var(--shadow-sm);
}

.service-detail__note strong {
  color: var(--color-ink);
  font-size: var(--text-sm);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.consultation-summary__question {
  margin-top: var(--space-md);
  margin-bottom: var(--space-sm);
  font-size: clamp(1.05rem, 0.98rem + 0.22vw, 1.18rem);
  color: var(--color-ink);
}

.logo-strip {
  display: grid;
  gap: var(--space-md);
}

.logo-pill {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  min-height: 5rem;
  padding: var(--space-md);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / 0.96);
}

.logo-pill picture {
  flex: 0 0 auto;
}

.logo-pill img {
  inline-size: 3rem;
  block-size: 3rem;
  object-fit: contain;
}

.brand-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 0.95rem;
}

.brand-cloud--compact {
  gap: 0.85rem;
}

.brand-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  min-height: 4.4rem;
  padding: 0.75rem 1rem;
  border: 1px solid var(--color-border);
  border-radius: calc(var(--radius-lg) + 0.05rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(241 248 255 / 0.94));
  box-shadow: var(--shadow-sm);
}

.brand-chip .brand-mark {
  inline-size: 3.25rem;
  block-size: 3.25rem;
  margin-bottom: 0;
}

.brand-chip span {
  color: var(--color-ink);
  font-size: var(--text-sm);
  font-weight: 700;
}

.service-card__icon {
  inline-size: 3.25rem;
  block-size: 3.25rem;
  margin-block-end: 0;
  border-radius: 1.1rem;
  background: linear-gradient(145deg, rgb(21 152 220 / 0.18), rgb(8 28 48 / 0.12));
}

.service-card {
  display: grid;
  gap: var(--space-sm);
  align-content: start;
}

.service-card h3,
.service-card h3 a {
  margin-bottom: 0;
}

.service-card h3 a {
  color: inherit;
  text-decoration: none;
}

.service-card h3 a:hover,
.service-card h3 a:focus-visible {
  color: var(--color-primary);
}

.service-card p {
  margin-bottom: 0;
}

.service-card .text-link,
.path-card .text-link {
  margin-top: auto;
}

.focus-card p,
.path-card p {
  margin-bottom: 0;
}

.service-card__icon--globe {
  clip-path: polygon(50% 0%, 82% 18%, 100% 50%, 82% 82%, 50% 100%, 18% 82%, 0% 50%, 18% 18%);
}

.service-card__icon--spark {
  clip-path: polygon(50% 0%, 61% 36%, 100% 50%, 61% 64%, 50% 100%, 39% 64%, 0% 50%, 39% 36%);
}

.service-card__icon--growth {
  clip-path: polygon(0 100%, 0 76%, 38% 76%, 38% 38%, 62% 38%, 62% 0, 100% 0, 100% 100%);
}

.service-card__icon--mentor {
  border-radius: 50% 50% 35% 35%;
}

.story-grid__media img,
.authority-card img,
.post-card__media img,
.narrative-card--image img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.authority-card picture,
.post-card__media picture,
.narrative-card--image picture {
  inline-size: 100%;
  block-size: 100%;
}

.story-grid__media {
  overflow: hidden;
  border-radius: var(--radius-xl);
  min-block-size: 22rem;
}

.feature-list {
  display: grid;
  gap: var(--space-sm);
}

.feature-list li {
  position: relative;
  padding-inline-start: 1.4rem;
}

.feature-list li::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.7rem;
  inline-size: 0.45rem;
  block-size: 0.45rem;
  border-radius: 50%;
  background: var(--color-primary);
}

.feature-list--compact li {
  font-size: var(--text-sm);
}

.feature-list--light li {
  color: rgb(229 241 252 / 0.92);
}

.feature-list--light li::before {
  background: rgb(115 212 255 / 0.96);
}

.process-card {
  padding: var(--space-lg);
  border-radius: var(--radius-lg);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.94), rgb(243 249 255 / 0.98));
  border: 1px solid var(--color-border);
}

.process-card__step {
  display: inline-block;
  margin-block-end: var(--space-md);
  font-weight: 700;
  color: var(--color-primary);
}

.channels-shell,
.channels-panel {
  display: grid;
  gap: var(--space-lg);
}

.channels-shell {
  gap: var(--space-2xl);
}

.channels-panel__heading {
  margin-bottom: 0;
}

.channels-note {
  padding: clamp(1.25rem, 2vw, 1.7rem);
  border: 1px solid rgb(21 152 220 / 0.14);
  border-radius: var(--radius-xl);
  background:
    linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(240 248 255 / 0.94)),
    radial-gradient(circle at top right, rgb(21 152 220 / 0.12), transparent 14rem);
  box-shadow: var(--shadow-sm);
}

.channels-note .feature-list {
  margin-top: var(--space-md);
  gap: 0.8rem;
}

.spotlight-card {
  display: grid;
  align-content: start;
  border: 1px solid rgb(16 41 63 / 0.08);
  border-radius: var(--radius-xl);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(247 251 255 / 0.95));
  box-shadow: 0 18px 40px rgb(7 15 10 / 0.08);
  overflow: hidden;
}

.spotlight-card__media {
  aspect-ratio: 16 / 11;
  overflow: hidden;
  background: linear-gradient(180deg, rgb(227 242 251 / 0.7), rgb(242 248 253 / 0.92));
}

.spotlight-card__media img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  transform: scale(1.01);
}

.spotlight-card__body {
  display: grid;
  gap: 0.7rem;
  padding: clamp(1.2rem, 2vw, 1.55rem);
}

.spotlight-card__kicker {
  margin-bottom: 0;
  color: var(--color-primary);
  font-size: var(--text-sm);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.spotlight-card h3 {
  margin-bottom: 0;
  max-width: 16ch;
  font-size: clamp(1.18rem, 1.02rem + 0.35vw, 1.45rem);
}

.spotlight-card p:not(.spotlight-card__kicker) {
  margin-bottom: 0;
  max-width: 30ch;
  line-height: var(--leading-normal);
}

.testimonial-grid,
.authority-grid,
.post-grid {
  align-items: start;
}

.testimonial-card {
  background: linear-gradient(180deg, rgb(255 255 255 / 0.14), rgb(255 255 255 / 0.08));
  border-color: rgb(208 233 252 / 0.32);
}

.testimonial-card p,
.testimonial-card footer span {
  color: rgb(239 247 255 / 0.96);
}

.testimonial-card footer {
  display: grid;
  gap: var(--space-2xs);
}

.testimonial-card--light {
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(240 248 255 / 0.94));
  border-color: var(--color-border);
}

.testimonial-card--light p,
.testimonial-card--light footer span,
.testimonial-card--light footer strong {
  color: var(--color-text);
}

.timeline-card__top {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  margin-block-end: var(--space-md);
}

.timeline-card__top img {
  inline-size: 4rem;
  block-size: 4rem;
  padding: var(--space-sm);
  border-radius: 1rem;
  background: rgb(241 248 253 / 0.98);
  object-fit: contain;
}

.timeline-card__company {
  font-size: var(--text-sm);
}

.post-card {
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(248 251 255 / 0.96));
  box-shadow: 0 18px 40px rgb(7 15 10 / 0.08);
}

.post-card__media {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.post-card__media img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.post-card--featured .post-card__media {
  aspect-ratio: 16 / 9;
}

.post-card__meta,
.post-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  align-items: center;
  margin-block-end: var(--space-md);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.post-card__body {
  display: grid;
  gap: var(--space-md);
  align-content: start;
  padding: clamp(1.25rem, 2vw, 1.6rem);
}

.post-card__title {
  margin-bottom: 0;
  max-width: 16ch;
  font-size: clamp(1.18rem, 1.03rem + 0.42vw, 1.5rem);
  line-height: 1.1;
}

.post-card__title a {
  text-decoration: none;
}

.post-card__title a:hover,
.post-card__title a:focus-visible {
  color: var(--color-primary);
}

.post-card__excerpt {
  margin-bottom: 0;
  max-width: 34ch;
  color: var(--color-text-muted);
  line-height: var(--leading-normal);
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.post-card__link {
  margin-top: auto;
}

.post-card--featured .post-card__title {
  max-width: 18ch;
  font-size: clamp(1.35rem, 1.12rem + 0.55vw, 1.8rem);
}

.post-card--featured .post-card__excerpt {
  -webkit-line-clamp: 5;
}

.faq-shell {
  display: grid;
  gap: var(--space-xl);
}

.faq-list {
  display: grid;
  gap: var(--space-md);
}

.faq-item {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: rgb(255 255 255 / 0.96);
}

.faq-item__trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  padding: var(--space-lg);
  border: 0;
  border-radius: inherit;
  background: transparent;
  text-align: left;
  color: var(--color-text);
}

.faq-item__plus {
  position: relative;
  inline-size: 1rem;
  block-size: 1rem;
}

.faq-item__plus::before,
.faq-item__plus::after {
  content: "";
  position: absolute;
  inset: 50%;
  inline-size: 100%;
  block-size: 2px;
  background: currentColor;
  transform: translate(-50%, -50%);
}

.faq-item__plus::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.faq-item__panel {
  display: none;
  padding: 0 var(--space-lg) var(--space-lg);
}

.faq-item.is-open .faq-item__panel {
  display: block;
}

.faq-item.is-open .faq-item__plus::after {
  opacity: 0;
}

.cta-band__shell {
  display: grid;
  gap: var(--space-xl);
  align-items: center;
}

.cta-band__content {
  max-width: 40rem;
}

.cta-band__panel {
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
  border: 1px solid rgb(171 219 255 / 0.18);
  border-radius: calc(var(--radius-lg) + 0.2rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.1), rgb(255 255 255 / 0.04));
  box-shadow: 0 20px 50px rgb(4 16 31 / 0.2);
  backdrop-filter: blur(14px);
}

.cta-band__panel .eyebrow {
  color: rgb(143 213 255 / 0.96);
}

.cta-band__panel-copy,
.cta-band__micro {
  color: rgb(221 236 250 / 0.88);
}

.cta-band__panel .feature-list {
  margin-block: var(--space-lg) var(--space-md);
}

.cta-band__micro {
  margin-bottom: 0;
  font-size: var(--text-sm);
}

.cta-band__actions {
  margin-block: var(--space-lg) var(--space-md);
}

.cta-band__actions .button {
  min-width: 12.5rem;
}

.section-rich .button--ghost,
.section-rich .button--secondary {
  border-color: rgb(226 241 255 / 0.36);
  background: rgb(255 255 255 / 0.08);
  color: rgb(244 249 255 / 0.98);
}

.section-rich .button--ghost:hover,
.section-rich .button--secondary:hover {
  background: rgb(255 255 255 / 0.16);
}

.page-hero {
  background: linear-gradient(180deg, rgb(255 255 255 / 0.96), rgb(227 242 251 / 0.72));
}

.post-hero {
  padding: clamp(1.45rem, 2.8vw, 2.1rem);
  border: 1px solid var(--color-border);
  border-radius: calc(var(--radius-xl) + 0.1rem);
  background:
    radial-gradient(circle at top right, rgb(21 152 220 / 0.1), transparent 13rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.99), rgb(243 249 255 / 0.95));
  box-shadow: var(--shadow-sm);
}

.post-hero__top {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  align-items: center;
  margin-block-end: var(--space-sm);
}

.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
  margin-block-end: var(--space-lg);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}

.post-shell__main {
  min-width: 0;
}

.post-hero__image {
  inline-size: 100%;
  margin-block-start: var(--space-lg);
  border-radius: var(--radius-lg);
  aspect-ratio: 16 / 9;
  overflow: hidden;
  box-shadow: 0 20px 48px rgb(10 25 44 / 0.12);
}

.post-hero__image picture,
.post-hero__image img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.prose {
  margin-block-start: var(--space-2xl);
  padding: clamp(1.25rem, 3vw, 2rem);
  border-radius: var(--radius-xl);
  background: rgb(255 255 255 / 0.97);
  border: 1px solid var(--color-border);
}

.prose p,
.prose li {
  max-width: 65ch;
  color: var(--color-text);
}

.prose img {
  display: block;
  inline-size: 100%;
  max-inline-size: 64rem;
  margin: 0 0 var(--space-xl);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: rgb(255 255 255 / 0.96);
  box-shadow: var(--shadow-sm);
}

.prose a {
  color: var(--color-primary);
}

.prose a:hover,
.prose a:focus-visible {
  color: var(--color-accent);
}

.prose h2,
.prose h3 {
  max-width: 22ch;
  margin-block-start: var(--space-2xl);
}

.prose iframe {
  inline-size: 100%;
  min-block-size: 5rem;
  border: 0;
  border-radius: var(--radius-lg);
}

.prose-video {
  margin-block-end: var(--space-xl);
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-sm);
}

.prose-video iframe {
  display: block;
  inline-size: 100%;
  aspect-ratio: 16 / 9;
  min-block-size: auto;
}

.prose-table {
  margin-block: var(--space-xl);
  overflow-x: auto;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: rgb(255 255 255 / 0.96);
  box-shadow: var(--shadow-sm);
}

.prose-table table {
  width: 100%;
  min-width: 42rem;
  border-collapse: collapse;
}

.prose-table th,
.prose-table td {
  padding: 0.95rem 1rem;
  border-bottom: 1px solid var(--color-border);
  text-align: left;
  vertical-align: top;
}

.prose-table th {
  color: var(--color-ink);
  background: rgb(227 242 251 / 0.72);
  font-size: var(--text-sm);
  letter-spacing: 0.02em;
}

.prose-table tr:last-child td {
  border-bottom: 0;
}

.prose-author {
  display: grid;
  gap: var(--space-lg);
  margin-block-start: var(--space-xl);
  padding: clamp(1.25rem, 3vw, 1.85rem);
  border: 1px solid var(--color-border);
  border-radius: calc(var(--radius-xl) + 0.05rem);
  background:
    radial-gradient(circle at top right, rgb(21 152 220 / 0.08), transparent 12rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.99), rgb(242 248 255 / 0.96));
  box-shadow: var(--shadow-sm);
}

.prose .prose-author__image {
  inline-size: 100%;
  max-inline-size: 14rem;
  aspect-ratio: 4 / 5;
  margin: 0;
  object-fit: cover;
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-sm);
}

.prose-author__body {
  display: grid;
  gap: 0.75rem;
}

.prose-author__body .eyebrow {
  margin-bottom: 0;
}

.prose-author__body h3,
.prose-author__body p {
  margin-bottom: 0;
  max-width: 38rem;
}

.prose-author__links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 0.35rem;
}

.prose .prose-author__links a {
  display: inline-flex;
  align-items: center;
  min-height: 2.5rem;
  padding: 0.5rem 0.9rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / 0.94);
  color: var(--color-ink);
  font-size: var(--text-sm);
  font-weight: 700;
  text-decoration: none;
}

.prose .prose-author__links a:hover,
.prose .prose-author__links a:focus-visible {
  color: var(--color-primary);
  border-color: rgb(21 152 220 / 0.3);
  background: rgb(227 242 251 / 0.78);
}

@media (min-width: 52rem) {
  .prose-author {
    grid-template-columns: minmax(12rem, 14rem) minmax(0, 1fr);
    align-items: start;
  }
}

.sticky-card {
  padding: var(--space-lg);
}

.author-card {
  display: grid;
  gap: var(--space-md);
}

.author-card__image {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-xs);
}

.author-card__image picture,
.author-card__image img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.author-card p:last-of-type {
  margin-bottom: 0;
}

.author-card .feature-list {
  gap: 0.7rem;
}

.author-card .button {
  justify-self: start;
}

.archive-callout {
  display: grid;
  gap: var(--space-xl);
  margin-block-end: var(--space-2xl);
}

.archive-callout__heading {
  margin-bottom: 0;
}

.archive-next-steps,
.post-next-steps {
  margin-block-start: var(--space-2xl);
}

.post-next-steps__heading {
  margin-bottom: var(--space-xl);
}

.archive-banner {
  display: grid;
  gap: var(--space-md);
  margin-block-start: var(--space-xl);
  background: linear-gradient(180deg, rgb(255 248 238 / 0.98), rgb(243 249 255 / 0.94));
}

.archive-banner h2,
.archive-banner p {
  max-width: 34rem;
}

.pill--link {
  text-decoration: none;
  color: var(--color-primary);
}

.pill--link:hover,
.pill--link:focus-visible {
  background: rgb(21 152 220 / 0.16);
}

.pill--archive {
  background: rgb(16 41 63 / 0.08);
  color: var(--color-text);
}

.sticky-card + .sticky-card {
  margin-block-start: var(--space-lg);
}

.related-posts li {
  padding-block: var(--space-sm);
  border-bottom: 1px solid var(--color-border);
}

.related-posts span {
  display: block;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}

.contact-panel__support {
  margin-block: var(--space-md) 0;
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}

.contact-panel__support a {
  color: var(--color-primary-dark);
}

.contact-panel__support a:hover,
.contact-panel__support a:focus-visible {
  color: var(--color-primary);
}

.contact-grid,
.narrative-grid {
  align-items: start;
}

.contact-panel--form,
.narrative-card--image {
  overflow: hidden;
}

.contact-form {
  display: grid;
  gap: var(--space-md);
}

.contact-form label {
  display: grid;
  gap: var(--space-xs);
}

.contact-form input,
.contact-form textarea {
  min-height: 3rem;
  padding: 0.8rem 0.95rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: rgb(255 255 255 / 0.95);
}

.form-status {
  min-height: 1.5rem;
  font-size: var(--text-sm);
}

.consultation-page__grid {
  display: grid;
  gap: var(--space-lg);
  align-items: start;
}

.consultation-page__main,
.consultation-page__side {
  display: grid;
  gap: var(--space-lg);
}

.card-surface,
.consultation-day,
.consultation-empty {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: rgb(255 255 255 / 0.94);
  box-shadow: var(--shadow-sm);
}

.consultation-calendar,
.consultation-summary,
.consultation-booking,
.consultation-day,
.consultation-empty {
  padding: var(--space-lg);
}

.consultation-calendar {
  display: grid;
  gap: var(--space-lg);
}

.consultation-calendar__header,
.consultation-day__header {
  display: flex;
  justify-content: space-between;
  gap: var(--space-md);
  align-items: baseline;
  flex-wrap: wrap;
}

.consultation-calendar__header h3,
.consultation-day__header h3,
.consultation-summary h3,
.consultation-booking h3 {
  margin-bottom: 0;
}

.consultation-calendar__timezone,
.consultation-day__header p,
.consultation-booking__selected {
  margin-bottom: 0;
  color: var(--color-text-muted);
}

.consultation-calendar__availability {
  display: grid;
  gap: var(--space-md);
}

.consultation-day {
  display: grid;
  gap: var(--space-md);
}

.consultation-day__slots {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.consultation-slot {
  display: grid;
  gap: 0.2rem;
  min-width: 8.8rem;
  padding: 0.9rem 1rem;
  border: 1px solid rgb(21 152 220 / 0.18);
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(241 248 255 / 0.96));
  color: var(--color-ink);
  text-align: left;
  font-weight: 700;
  cursor: pointer;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.consultation-slot:hover,
.consultation-slot:focus-visible {
  transform: translateY(-1px);
  border-color: rgb(21 152 220 / 0.44);
  box-shadow: 0 18px 36px rgb(21 152 220 / 0.12);
}

.consultation-slot small {
  color: var(--color-text-muted);
  font-size: 0.82rem;
  font-weight: 600;
}

.consultation-slot.is-selected {
  border-color: rgb(255 158 61 / 0.48);
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.18), transparent 7rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(247 242 236 / 0.94));
  box-shadow: 0 18px 36px rgb(255 158 61 / 0.14);
}

.consultation-summary .feature-list,
.consultation-booking .feature-list {
  margin-top: var(--space-md);
}

.consultation-form {
  display: grid;
  gap: var(--space-md);
}

.consultation-form label {
  display: grid;
  gap: var(--space-xs);
}

.consultation-form input,
.consultation-form textarea {
  min-height: 3rem;
  padding: 0.8rem 0.95rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: rgb(255 255 255 / 0.95);
}

.consultation-form textarea {
  min-height: 7rem;
}

.consultation-form__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.consultation-empty h3,
.consultation-empty p {
  margin-bottom: 0;
}

.filter-chip {
  min-height: 2.75rem;
  padding: 0.65rem 1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / 0.96);
}

.filter-chip.is-active {
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: rgb(21 152 220 / 0.1);
}

.pill-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  margin-top: var(--space-lg);
}

.pill-chip {
  display: inline-flex;
  align-items: center;
  min-height: 2.6rem;
  padding: 0.55rem 0.95rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / 0.96);
  color: var(--color-ink);
  font-size: var(--text-sm);
  font-weight: 700;
  box-shadow: var(--shadow-sm);
}

.site-footer {
  padding-block: var(--space-3xl) var(--space-xl);
  color: rgb(247 248 242 / 0.82);
  background:
    radial-gradient(circle at top right, rgb(21 152 220 / 0.18), transparent 24rem),
    linear-gradient(180deg, rgb(8 28 48 / 0.98), rgb(5 19 34 / 1));
}

.site-footer__grid {
  display: grid;
  gap: var(--space-2xl);
}

.site-footer__grid h2,
.site-footer__grid p,
.site-footer__grid a {
  color: inherit;
}

.site-footer__intro {
  display: grid;
  gap: var(--space-md);
  align-content: start;
}

.site-footer__title {
  margin-bottom: 0;
  max-width: 10ch;
  font-size: clamp(2rem, 1.55rem + 1.1vw, 3rem);
  line-height: 1.02;
  color: #fff;
}

.site-footer__lede {
  margin-bottom: 0;
  max-width: 34ch;
  color: rgb(230 239 249 / 0.92);
  font-size: clamp(1.08rem, 0.98rem + 0.25vw, 1.22rem);
  line-height: 1.65;
}

.footer-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: var(--space-sm);
}

.footer-pill {
  display: inline-flex;
  align-items: center;
  min-height: 2.3rem;
  padding: 0.5rem 0.9rem;
  border: 1px solid rgb(208 233 252 / 0.18);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / 0.06);
  color: rgb(232 242 252 / 0.92);
  font-size: var(--text-sm);
  font-weight: 700;
}

.profile-highlights {
  margin-top: var(--space-md);
}

.profile-highlights .footer-pill {
  gap: 0.55rem;
  border-color: rgb(255 158 61 / 0.24);
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.12), transparent 7rem),
    linear-gradient(180deg, rgb(255 248 241 / 0.98), rgb(239 247 255 / 0.96));
  color: var(--color-ink);
  box-shadow: var(--shadow-sm);
}

.profile-highlights .footer-pill::before {
  content: "";
  inline-size: 0.5rem;
  block-size: 0.5rem;
  border-radius: 50%;
  background: linear-gradient(180deg, var(--color-warm-accent), var(--color-primary));
}

.site-footer__panel {
  display: grid;
  gap: var(--space-md);
  align-content: start;
  padding-top: var(--space-sm);
}

.site-footer__panel .footer-list {
  gap: 0.9rem;
}

.site-footer__stack,
.site-footer__group {
  display: grid;
  gap: var(--space-md);
}

.site-footer__stack {
  gap: var(--space-lg);
}

.site-footer__subhead {
  margin-bottom: 0;
  color: rgb(229 239 249 / 0.72);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.footer-list--primary {
  gap: 0.8rem;
}

.footer-service-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10.75rem, 1fr));
  gap: 0.75rem;
}

.footer-service-link {
  display: flex;
  align-items: flex-start;
  min-height: 0;
  padding: 0.82rem 0.95rem;
  border: 1px solid rgb(208 233 252 / 0.14);
  border-radius: 1rem;
  background:
    radial-gradient(circle at top right, rgb(21 152 220 / 0.14), transparent 6rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.08), rgb(255 255 255 / 0.04));
  color: #fff;
  font-size: var(--text-sm);
  font-weight: 700;
  line-height: 1.35;
  text-decoration: none;
  text-wrap: balance;
  transition:
    transform 160ms ease,
    border-color 160ms ease,
    background 160ms ease;
}

.footer-service-link:hover,
.footer-service-link:focus-visible {
  transform: translateY(-1px);
  border-color: rgb(255 158 61 / 0.34);
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.16), transparent 6rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.1), rgb(255 255 255 / 0.05));
}

.site-footer__panel a {
  color: rgb(235 243 252 / 0.9);
}

.site-footer__panel a:hover,
.site-footer__panel a:focus-visible {
  color: #fff;
}

.site-footer__meta {
  justify-content: space-between;
  margin-block-start: var(--space-2xl);
  padding-block-start: var(--space-lg);
  border-top: 1px solid rgb(247 248 242 / 0.12);
}

@media (min-width: 48rem) {
  .brandmark__copy {
    display: block;
  }

  .logo-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .service-grid,
  .process-grid,
  .spotlight-grid,
  .authority-grid,
  .post-grid,
  .audience-grid,
  .offer-grid,
  .approach-grid,
  .profile-pillars,
  .credential-grid,
  .focus-grid,
  .path-grid,
  .photo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .channels-shell {
    grid-template-columns: minmax(16rem, 22rem) minmax(0, 1fr);
    align-items: start;
  }

  .archive-callout {
    grid-template-columns: minmax(15rem, 20rem) minmax(0, 1fr);
    align-items: start;
  }

  .testimonial-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .timeline-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-footer__grid {
    grid-template-columns: 1.15fr 1fr;
  }

  .service-detail__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem) {
  .nav-toggle {
    display: none;
  }

  .site-nav {
    position: static;
    display: flex;
    align-items: center;
    gap: var(--space-lg);
    padding: 0;
    border: 0;
    background: none;
    box-shadow: none;
  }

  .site-nav__list {
    display: flex;
    align-items: center;
    gap: var(--space-lg);
  }

  .site-nav__item {
    display: block;
  }

  .site-nav__item--has-children .site-nav__sublist {
    position: absolute;
    inset-inline-start: 0;
    inset-block-start: calc(100% + 0.85rem);
    min-inline-size: 16rem;
    padding: 1rem;
    border: 1px solid rgb(16 41 63 / 0.08);
    border-radius: var(--radius-lg);
    background: rgb(255 255 255 / 0.98);
    box-shadow: var(--shadow-md);
    opacity: 0;
    visibility: hidden;
    transform: translateY(0.35rem);
    transition:
      opacity 160ms ease,
      transform 160ms ease,
      visibility 160ms ease;
  }

  .site-nav__item--has-children:hover .site-nav__sublist,
  .site-nav__item--has-children:focus-within .site-nav__sublist {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  .site-nav__cta {
    margin-block-start: 0;
  }

  .hero__grid,
  .story-grid,
  .contact-grid,
  .post-shell__grid,
  .narrative-grid,
  .profile-shell {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
  }

  .hero__grid {
    align-items: start;
  }

  .stats-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hero .stats-grid {
    gap: var(--space-md);
  }

  .service-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .audience-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .spotlight-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .process-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .offer-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .authority-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .profile-pillars {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .photo-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .credential-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .blog-stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .blog-stat-card--primary {
    grid-column: span 2;
  }

  .focus-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .path-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .post-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .post-grid--featured {
    grid-template-columns: minmax(0, 1.2fr) repeat(2, minmax(0, 0.9fr));
    align-items: stretch;
  }

  .post-shell__grid {
    grid-template-columns: minmax(0, 2fr) minmax(18rem, 0.9fr);
    align-items: start;
  }

  .cta-band__shell {
    grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 24rem);
    gap: var(--space-2xl);
  }

  .post-sidebar {
    position: sticky;
    top: 6rem;
  }

  .timeline-card--full {
    grid-column: span 2;
  }
}

.home-stage {
  padding-block: clamp(4rem, 8vw, 7rem);
  background:
    radial-gradient(circle at top left, rgb(120 205 255 / 0.18), transparent 26rem),
    radial-gradient(circle at 80% 15%, rgb(21 152 220 / 0.22), transparent 20rem),
    linear-gradient(135deg, rgb(8 28 48 / 0.99), rgb(13 62 101 / 0.95));
}

.home-stage__shell,
.home-context__grid,
.home-signature__grid,
.home-platform__grid,
.home-voice__shell,
.home-cta__shell {
  display: grid;
  gap: clamp(2rem, 4vw, 4rem);
}

.home-stage__content {
  display: grid;
  gap: var(--space-lg);
  justify-items: center;
  text-align: center;
}

.home-stage__chips {
  margin-block-end: 0;
}

.home-stage__identity {
  margin: 0;
  color: rgb(235 244 252 / 0.98);
  font-size: clamp(1.18rem, 1rem + 0.45vw, 1.42rem);
  font-weight: 700;
  letter-spacing: -0.01em;
}

.home-stage__content h1 {
  max-width: 8.5ch;
  margin-bottom: 0;
  font-size: clamp(3rem, 2.35rem + 2.8vw, 5.3rem);
  line-height: 0.93;
  letter-spacing: -0.055em;
}

.accent-warm {
  color: var(--color-warm-accent);
}

.site-nav__cta,
.home-stage__actions .button--primary,
.home-cta__actions .button--primary {
  background: linear-gradient(135deg, var(--color-warm-accent), var(--color-warm-accent-dark));
  box-shadow: 0 18px 40px rgb(255 158 61 / 0.22);
}

.site-nav__cta:hover,
.home-stage__actions .button--primary:hover,
.home-cta__actions .button--primary:hover {
  background: linear-gradient(135deg, #ffab54, var(--color-warm-accent));
}

.home-stage__lede {
  margin-bottom: 0;
  max-width: 34rem;
  color: rgb(226 238 250 / 0.92);
  font-size: clamp(1.12rem, 1rem + 0.48vw, 1.42rem);
  line-height: 1.5;
}

.home-stage__actions {
  justify-content: center;
  margin-block: var(--space-sm) 0;
}

.home-stage__actions .button {
  min-width: 13rem;
}

.home-stage__stats,
.home-results__metrics,
.home-results__cases,
.home-media-grid,
.home-resources__grid,
.home-context__logos,
.home-context__offices {
  display: grid;
  gap: var(--space-lg);
}

.home-stage__stat {
  padding: clamp(1.2rem, 2vw, 1.55rem);
  border: 1px solid rgb(171 219 255 / 0.18);
  border-radius: calc(var(--radius-lg) + 0.15rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.12), rgb(255 255 255 / 0.05));
  backdrop-filter: blur(12px);
}

.home-stage__stat strong {
  display: block;
  margin-bottom: 0.35rem;
  color: rgb(117 215 255 / 1);
  font-size: clamp(1.8rem, 1.45rem + 1vw, 2.35rem);
  line-height: 1;
}

.home-stage__stat span {
  display: block;
  margin-bottom: 0.35rem;
  color: #fff;
  font-weight: 700;
}

.home-stage__stat p {
  margin-bottom: 0;
  color: rgb(219 233 246 / 0.8);
}

.home-stage__visual {
  display: grid;
  gap: var(--space-lg);
  align-content: start;
}

.home-stage__frame {
  display: grid;
  gap: 0;
}

.home-stage__portrait {
  overflow: hidden;
  min-block-size: 28rem;
  border-radius: clamp(1.8rem, 3vw, 2.8rem);
  box-shadow: 0 30px 80px rgb(3 12 24 / 0.28);
}

.home-stage__portrait picture,
.home-stage__portrait img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.home-stage__quote {
  position: relative;
  z-index: 1;
  max-width: 18.5rem;
  margin: -2.8rem 1rem 0 auto;
  padding: 1.1rem 1.15rem;
  border: 1px solid rgb(255 158 61 / 0.22);
  border-radius: 1.55rem;
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.14), transparent 9rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.97), rgb(236 246 255 / 0.92));
  box-shadow: 0 20px 45px rgb(4 16 31 / 0.18);
}

.home-stage__quote .eyebrow {
  margin-bottom: 0.6rem;
  color: var(--color-warm-accent-dark);
}

.home-stage__quote-text {
  margin-bottom: 0;
  color: var(--color-ink);
  font-size: clamp(1rem, 0.94rem + 0.2vw, 1.08rem);
  font-weight: 700;
  line-height: 1.45;
}

.home-stage__signal {
  display: grid;
  gap: var(--space-md);
  max-width: 26rem;
  margin-inline: auto;
  padding: clamp(1.4rem, 2.4vw, 1.95rem);
  border: 1px solid rgb(171 219 255 / 0.18);
  border-radius: calc(var(--radius-xl) + 0.15rem);
  background: linear-gradient(180deg, rgb(6 24 41 / 0.84), rgb(9 35 58 / 0.8));
  box-shadow: 0 22px 55px rgb(5 19 34 / 0.22);
  text-align: center;
}

.home-stage__signal .eyebrow {
  margin-bottom: 0;
  color: rgb(143 213 255 / 0.98);
}

.home-stage__signal-title {
  margin: 0;
  color: #fff;
  font-size: clamp(1.65rem, 1.3rem + 1vw, 2.3rem);
  line-height: 1;
  text-wrap: pretty;
}

.home-stage__signal .feature-list {
  justify-self: center;
  max-width: 20rem;
  text-align: left;
}

.home-context__copy,
.home-context__proof,
.home-platform__media,
.home-platform__copy {
  display: grid;
  gap: var(--space-lg);
  align-content: start;
}

.home-context__copy h2,
.home-signature__heading h2,
.home-platform__heading h2,
.home-voice__heading h2,
.home-resources .section-heading h2,
.home-results .section-heading h2 {
  max-width: 13ch;
}

.home-context__copy p:last-of-type {
  margin-bottom: 0;
}

.home-context__logos {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-context .logo-pill {
  min-height: 5.75rem;
  align-items: center;
  border-radius: 1.35rem;
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(241 248 255 / 0.94));
  box-shadow: 0 18px 45px rgb(7 15 10 / 0.08);
}

.home-context__clients,
.home-context__office {
  padding: clamp(1.15rem, 2vw, 1.45rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  background: rgb(255 255 255 / 0.96);
  box-shadow: var(--shadow-sm);
}

.home-context__mini-heading {
  margin-bottom: 0;
  color: var(--color-ink);
  font-size: var(--text-sm);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.home-context__clients .pill-cloud {
  margin-top: var(--space-md);
}

.home-context__office p:last-child {
  margin-bottom: 0;
  max-width: 30ch;
  color: var(--color-text);
}

.home-signature__heading {
  margin-bottom: 0;
}

.home-signature__cards {
  display: grid;
  gap: var(--space-lg);
}

.signature-card,
.result-stat,
.result-story,
.resource-card,
.media-card {
  border: 1px solid var(--color-border);
  border-radius: calc(var(--radius-lg) + 0.1rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(243 249 255 / 0.95));
  box-shadow: 0 18px 40px rgb(7 15 10 / 0.08);
}

.signature-card,
.result-story,
.resource-card {
  display: grid;
  gap: var(--space-sm);
  align-content: start;
  padding: clamp(1.35rem, 2.3vw, 1.85rem);
}

.signature-card h3,
.result-story h3,
.resource-card h3,
.media-card h3 {
  margin-bottom: 0;
}

.signature-card h3 a,
.resource-card h3 a {
  color: inherit;
  text-decoration: none;
}

.signature-card h3 a:hover,
.signature-card h3 a:focus-visible,
.resource-card h3 a:hover,
.resource-card h3 a:focus-visible {
  color: var(--color-primary);
}

.signature-card p,
.resource-card p,
.result-story p {
  margin-bottom: 0;
}

.signature-card--featured {
  position: relative;
  overflow: hidden;
  border-color: rgb(255 158 61 / 0.22);
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.18), transparent 16rem),
    linear-gradient(145deg, rgb(8 28 48 / 1), rgb(13 62 101 / 0.96));
  box-shadow: 0 28px 70px rgb(8 28 48 / 0.22);
}

.signature-card--featured::after {
  content: "";
  position: absolute;
  inset: auto -2rem -2rem auto;
  inline-size: 10rem;
  block-size: 10rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgb(255 158 61 / 0.24), transparent 68%);
}

.signature-card--featured h3,
.signature-card--featured p,
.signature-card--featured a,
.signature-card--featured .audience-card__kicker {
  position: relative;
  z-index: 1;
}

.signature-card--featured h3 a,
.signature-card--featured p:not(.audience-card__kicker),
.signature-card--featured .text-link {
  color: rgb(236 244 252 / 0.96);
}

.signature-card--featured .audience-card__kicker {
  color: rgb(255 191 133 / 0.98);
}

.signature-card--featured .text-link:hover,
.signature-card--featured .text-link:focus-visible {
  color: #fff;
}

.result-stat {
  padding: clamp(1.3rem, 2.2vw, 1.75rem);
}

.result-stat strong {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--color-warm-accent-dark);
  font-size: clamp(2rem, 1.55rem + 1.2vw, 2.7rem);
  line-height: 1;
}

.result-stat span {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--color-ink);
  font-weight: 700;
}

.result-stat p {
  margin-bottom: 0;
}

.result-story {
  gap: var(--space-md);
}

.result-story__result {
  color: var(--color-warm-accent-dark);
  font-size: clamp(1.08rem, 0.98rem + 0.38vw, 1.24rem);
  font-weight: 700;
  line-height: 1.45;
}

.result-story--featured {
  border-color: rgb(21 152 220 / 0.2);
  background:
    linear-gradient(180deg, rgb(229 243 255 / 0.98), rgb(244 250 255 / 0.95)),
    radial-gradient(circle at top right, rgb(21 152 220 / 0.14), transparent 15rem);
}

.home-platform__story {
  display: grid;
  gap: var(--space-xl);
}

.home-platform__image {
  overflow: hidden;
  min-block-size: 23rem;
  border-radius: calc(var(--radius-xl) + 0.2rem);
  box-shadow: 0 24px 60px rgb(7 15 10 / 0.12);
}

.home-platform__image picture,
.home-platform__image img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.home-platform__copy {
  padding: clamp(1.35rem, 2.4vw, 1.9rem);
  border: 1px solid var(--color-border);
  border-radius: calc(var(--radius-xl) + 0.15rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(241 248 255 / 0.94));
  box-shadow: var(--shadow-sm);
}

.home-platform__copy p:last-of-type {
  margin-bottom: 0;
}

.home-platform__heading {
  margin-bottom: 0;
}

.media-card {
  display: grid;
  overflow: hidden;
}

.media-card__media {
  aspect-ratio: 16 / 11;
  overflow: hidden;
}

.media-card__media picture,
.media-card__media img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  object-position: var(--media-position, center);
}

.media-card__body {
  display: grid;
  gap: 0.7rem;
  padding: clamp(1.2rem, 2vw, 1.55rem);
}

.media-card__kicker {
  margin-bottom: 0;
  color: var(--color-primary);
  font-size: var(--text-sm);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.media-card__body p:not(.media-card__kicker) {
  margin-bottom: 0;
}

.home-platform__heading h2 {
  max-width: 11ch;
  font-size: clamp(2.1rem, 1.75rem + 1.2vw, 3.15rem);
}

.home-platform__heading p {
  max-width: 42rem;
}

.home-media-grid {
  grid-template-columns: 1fr;
}

.media-card {
  border-radius: calc(var(--radius-xl) + 0.05rem);
}

.media-card__media {
  background: linear-gradient(180deg, rgb(226 242 255 / 0.8), rgb(241 248 255 / 0.92));
}

.media-card__body {
  gap: 0.85rem;
}

.media-card__body h3 {
  max-width: 14ch;
  font-size: clamp(1.45rem, 1.2rem + 0.75vw, 2rem);
  line-height: 1.03;
}

.media-card__body p:not(.media-card__kicker) {
  max-width: 28ch;
  color: var(--color-text);
  line-height: 1.6;
}

.media-card--feature {
  background:
    radial-gradient(circle at top right, rgb(21 152 220 / 0.12), transparent 14rem),
    linear-gradient(180deg, rgb(255 255 255 / 0.99), rgb(241 248 255 / 0.96));
}

.media-card--feature .media-card__media img {
  object-position: center top;
}

.media-card--youtube .media-card__media img {
  transform: scale(1.03);
}

.media-card--awards .media-card__media img {
  transform: scale(1.05);
}

.media-card--linkedin .media-card__media img {
  transform: scale(1.02);
}

.home-voice {
  background:
    radial-gradient(circle at top left, rgb(120 205 255 / 0.14), transparent 20rem),
    linear-gradient(145deg, rgb(8 28 48 / 0.99), rgb(7 41 68 / 0.96));
}

.home-voice__heading {
  margin-bottom: 0;
}

.home-resources__grid {
  align-items: start;
}

.resource-card--accent {
  border-color: rgb(255 158 61 / 0.22);
  background:
    linear-gradient(180deg, rgb(255 249 242 / 0.98), rgb(244 250 255 / 0.95)),
    radial-gradient(circle at top right, rgb(255 158 61 / 0.12), transparent 15rem);
}

.home-cta {
  background:
    radial-gradient(circle at top left, rgb(117 215 255 / 0.14), transparent 18rem),
    linear-gradient(140deg, rgb(8 28 48 / 0.99), rgb(11 51 84 / 0.97));
}

.home-cta__content {
  max-width: 38rem;
}

.home-cta__content h2 {
  color: #fff;
}

.home-cta__content p:not(.eyebrow) {
  color: rgb(227 238 250 / 0.9);
  font-size: clamp(1.08rem, 1rem + 0.22vw, 1.2rem);
  line-height: 1.7;
}

.home-cta__panel {
  padding: clamp(1.4rem, 2.6vw, 2rem);
  border: 1px solid rgb(171 219 255 / 0.18);
  border-radius: calc(var(--radius-xl) + 0.15rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.12), rgb(255 255 255 / 0.05));
  box-shadow: 0 24px 65px rgb(4 16 31 / 0.2);
  backdrop-filter: blur(14px);
}

.home-cta__panel .eyebrow {
  color: rgb(255 191 133 / 0.98);
}

.footer-pill {
  border-color: rgb(255 158 61 / 0.18);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.08), rgb(255 158 61 / 0.06));
}

.home-cta__actions {
  margin-block: var(--space-lg) var(--space-md);
}

.home-cta__actions .button {
  min-width: 13rem;
}

.home-cta__micro {
  margin-bottom: 0;
  color: rgb(221 236 250 / 0.88);
  font-size: var(--text-sm);
}

.site-header {
  background: rgb(255 255 255 / 0.82);
  border-bottom: 1px solid rgb(16 41 63 / 0.1);
  box-shadow: 0 14px 40px rgb(7 15 10 / 0.06);
}

.site-header__inner {
  min-height: 5.5rem;
}

.brandmark__logo {
  inline-size: 3.15rem;
  block-size: 3.15rem;
  padding: 0.45rem;
  border: 1px solid rgb(16 41 63 / 0.06);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.98), rgb(236 246 255 / 0.92));
}

.site-nav__link {
  color: var(--color-text-muted);
  font-weight: 700;
}

.site-nav__link:hover,
.site-nav__link:focus-visible {
  color: var(--color-ink);
}

.site-nav__cta {
  box-shadow: 0 18px 40px rgb(255 158 61 / 0.22);
}

.site-footer {
  background:
    radial-gradient(circle at top right, rgb(21 152 220 / 0.22), transparent 24rem),
    linear-gradient(180deg, rgb(7 24 40 / 1), rgb(5 19 34 / 1));
}

.site-footer__panel {
  padding: clamp(1rem, 2vw, 1.25rem);
  border: 1px solid rgb(208 233 252 / 0.12);
  border-radius: calc(var(--radius-lg) + 0.1rem);
  background: rgb(255 255 255 / 0.04);
}

.footer-list--offices li {
  display: grid;
  gap: 0.3rem;
}

.footer-list--offices strong {
  color: #fff;
}

.footer-list--offices span {
  color: rgb(230 239 249 / 0.78);
  font-size: var(--text-sm);
  line-height: 1.55;
}

.chat-dock {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 80;
  display: grid;
  justify-items: end;
  gap: 0.9rem;
}

.chat-launcher {
  display: grid;
  gap: 0.2rem;
  min-width: min(18rem, calc(100vw - 2rem));
  padding: 0.95rem 1rem;
  border: 1px solid rgb(255 158 61 / 0.22);
  border-radius: 1.35rem;
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.22), transparent 10rem),
    linear-gradient(145deg, rgb(8 28 48 / 0.98), rgb(13 62 101 / 0.96));
  color: #fff;
  box-shadow: 0 24px 60px rgb(8 28 48 / 0.22);
  text-align: left;
}

.chat-launcher strong {
  font-size: 1rem;
  font-weight: 800;
}

.chat-launcher span:last-child {
  color: rgb(230 239 249 / 0.88);
  font-size: 0.92rem;
  line-height: 1.45;
}

.chat-launcher__eyebrow {
  color: rgb(255 191 133 / 0.98);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.chat-panel {
  inline-size: min(25rem, calc(100vw - 2rem));
  max-block-size: min(40rem, calc(100vh - 2rem));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  border: 1px solid rgb(171 219 255 / 0.26);
  border-radius: calc(var(--radius-xl) + 0.15rem);
  background: linear-gradient(180deg, rgb(255 255 255 / 0.99), rgb(241 248 255 / 0.97));
  box-shadow: 0 28px 80px rgb(7 24 40 / 0.24);
}

.chat-panel[hidden] {
  display: none;
}

.chat-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  padding: 1rem 1rem 0.95rem;
  color: #fff;
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.22), transparent 12rem),
    linear-gradient(145deg, rgb(8 28 48 / 0.99), rgb(11 51 84 / 0.97));
}

.chat-panel__header h2,
.chat-panel__header p {
  margin-bottom: 0;
  color: inherit;
}

.chat-panel__header h2 {
  font-size: clamp(1.15rem, 1.05rem + 0.3vw, 1.35rem);
}

.chat-panel__eyebrow {
  color: rgb(255 191 133 / 0.98);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.chat-panel__close {
  min-height: 2.5rem;
  padding: 0.6rem 0.85rem;
  border: 1px solid rgb(255 255 255 / 0.16);
  border-radius: var(--radius-full);
  background: rgb(255 255 255 / 0.08);
  color: #fff;
  font-weight: 700;
}

.chat-thread {
  display: grid;
  gap: 0.85rem;
  padding: 1rem;
  overflow: auto;
  background:
    linear-gradient(180deg, rgb(247 251 255 / 0.98), rgb(238 246 255 / 0.9)),
    radial-gradient(circle at top right, rgb(21 152 220 / 0.08), transparent 14rem);
}

.chat-message {
  display: flex;
}

.chat-message--assistant {
  justify-content: flex-start;
}

.chat-message--user {
  justify-content: flex-end;
}

.chat-message__bubble {
  max-width: 85%;
  padding: 0.82rem 0.95rem;
  border-radius: 1.05rem;
  box-shadow: var(--shadow-sm);
  font-size: var(--text-sm);
  line-height: 1.6;
}

.chat-message--assistant .chat-message__bubble {
  border: 1px solid rgb(171 219 255 / 0.28);
  background: rgb(255 255 255 / 0.98);
  color: var(--color-ink);
}

.chat-message--user .chat-message__bubble {
  border: 1px solid rgb(255 158 61 / 0.18);
  background:
    radial-gradient(circle at top right, rgb(255 158 61 / 0.18), transparent 7rem),
    linear-gradient(145deg, rgb(8 28 48 / 0.98), rgb(13 62 101 / 0.96));
  color: #fff;
}

.chat-form {
  display: grid;
  gap: 0.8rem;
  padding: 1rem;
  border-top: 1px solid rgb(16 41 63 / 0.08);
  background: rgb(255 255 255 / 0.98);
}

.chat-form__input {
  min-height: 3rem;
  padding: 0.8rem 0.95rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: rgb(255 255 255 / 0.98);
}

.chat-form__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.chat-form__actions .button {
  min-width: 8.75rem;
}

.chat-form__help,
.chat-form__status {
  margin-bottom: 0;
  font-size: var(--text-sm);
  line-height: 1.55;
}

.chat-form__help {
  color: var(--color-text-muted);
}

.chat-form__status {
  min-height: 1.4rem;
  color: var(--color-ink);
}

.chat-dock.is-open .chat-launcher {
  opacity: 0;
  transform: translateY(0.4rem);
  pointer-events: none;
}

@media (min-width: 48rem) {
  .consultation-page__grid {
    grid-template-columns: minmax(0, 1.3fr) minmax(18rem, 0.82fr);
  }

  .chat-dock {
    right: 1.25rem;
    bottom: 1.25rem;
  }

  .home-stage__stats,
  .home-results__metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .home-context__grid,
  .home-platform__grid,
  .home-cta__shell {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }

  .home-signature__cards,
  .home-resources__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .signature-card--featured,
  .resource-card--accent {
    grid-column: span 2;
  }

  .home-results__cases {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .result-story--featured {
    grid-column: span 2;
  }

  .home-voice__shell {
    grid-template-columns: minmax(15rem, 24rem) minmax(0, 1fr);
    align-items: start;
  }

  .site-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .media-card {
    grid-template-columns: minmax(8.5rem, 10.5rem) minmax(0, 1fr);
    align-items: stretch;
  }

  .media-card__media {
    aspect-ratio: auto;
    min-block-size: 100%;
  }

  .media-card__media img {
    block-size: 100%;
  }

  .media-card--feature {
    grid-template-columns: minmax(10.5rem, 12.5rem) minmax(0, 1fr);
  }

  .media-card--feature .media-card__body h3 {
    max-width: 12ch;
    font-size: clamp(1.7rem, 1.45rem + 0.8vw, 2.2rem);
  }
}

@media (min-width: 64rem) {
  .home-stage__shell {
    grid-template-columns: minmax(0, 1.02fr) minmax(22rem, 0.98fr);
    align-items: center;
  }

  .home-stage__content {
    justify-items: start;
    text-align: left;
  }

  .home-stage__content .eyebrow,
  .home-stage__lede {
    margin-inline: 0;
    text-align: left;
  }

  .home-stage__actions {
    justify-content: flex-start;
  }

  .home-stage__chips {
    justify-content: flex-start;
  }

  .home-stage__signal {
    margin-inline: auto 0;
    text-align: left;
  }

  .home-stage__signal .feature-list {
    justify-self: start;
  }

  .home-context__grid {
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  }

  .home-signature__grid {
    grid-template-columns: minmax(16rem, 0.72fr) minmax(0, 1.28fr);
    align-items: start;
  }

  .home-signature__heading {
    position: sticky;
    top: 7rem;
  }

  .home-signature__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-detail__shell {
    grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
    align-items: start;
  }

  .home-results__cases {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .result-story--featured {
    grid-column: auto;
  }

  .home-platform__grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
  }

  .home-media-grid {
    grid-template-columns: 1fr;
  }

  .home-resources__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .resource-card--accent {
    grid-column: span 1;
  }

  .site-nav__list {
    gap: clamp(1rem, 2vw, 1.35rem);
  }

  .site-footer__grid {
    grid-template-columns: 1.15fr 1.4fr 0.95fr 0.9fr;
  }

  .footer-list--primary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 1.5rem;
  }
}
