:root {
  --premium-canvas: var(--wp--preset--color--two, #222022);
  --premium-surface: #2a282d;
  --premium-surface-strong: #1b1a1e;
  --premium-mist: #3c3942;
  --premium-ink: var(--wp--preset--color--one, #ebe2c2);
  --premium-muted: rgba(235, 226, 194, 0.82);
  --premium-accent: #e3d7af;
  --premium-accent-strong: #f1e8cb;
  --premium-highlight: var(--wp--preset--color--highlight, #b68d68);
  --premium-border: rgba(235, 226, 194, 0.24);
  --premium-shadow: none;
  --premium-radius: 0;
  --premium-radius-small: 0;
  --premium-font-body: var(--wp--preset--font-family--inter, "Inter", sans-serif);
  --premium-font-button: var(--wp--custom--button--typography--font-family, var(--wp--preset--font-family--inter, "Inter", sans-serif));
}

.home .entry-content,
.page .entry-content,
.single .entry-content {
  display: grid;
  gap: clamp(1.6rem, 3vw, 2.7rem);
  font-family: var(--premium-font-body);
  color: var(--premium-ink);
  background: var(--premium-canvas);
}

.editor-styles-wrapper {
  font-family: var(--premium-font-body);
  color: var(--premium-ink);
  background: var(--premium-canvas);
}

.home .entry-content > *,
.page .entry-content > *,
.single .entry-content > * {
  margin-block: 0;
}

.entry-content p,
.entry-summary p {
  color: var(--premium-muted);
}

.entry-content a {
  color: var(--premium-accent);
}

.entry-content a:hover,
.entry-content a:focus {
  color: var(--premium-accent-strong);
}

.premium-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(3rem, 7vw, 6rem) clamp(1.5rem, 5vw, 4rem);
  border: 1px solid var(--premium-border);
  border-radius: var(--premium-radius);
  background: linear-gradient(160deg, var(--premium-surface-strong), var(--premium-surface));
  color: var(--premium-ink);
  box-shadow: var(--premium-shadow);
}

.entry-content .premium-hero {
  padding: clamp(3rem, 7vw, 6rem) clamp(1.5rem, 5vw, 4rem);
}

.premium-eyebrow {
  margin: 0 0 1rem;
  color: var(--premium-accent-strong);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.premium-lead {
  max-width: 38rem;
  color: var(--premium-muted);
}

.premium-surface,
.premium-card,
.premium-posts .wp-block-post,
.premium-stat-card,
.premium-quote-card,
.premium-table-shell,
.premium-highlight-panel,
.premium-note-card {
  height: 100%;
  padding: clamp(1.25rem, 2.4vw, 1.75rem);
  border: 1px solid var(--premium-border);
  border-radius: var(--premium-radius);
  background: var(--premium-surface);
  color: var(--premium-ink);
  box-shadow: none;
}

.premium-surface.is-dark,
.premium-cta {
  color: var(--premium-ink);
  background:
    linear-gradient(140deg, #17161a, #252329),
    #1b1a1e;
}

.premium-section {
  display: grid;
  gap: 1.4rem;
}

.premium-section > h2,
.premium-page-intro h1,
.single .entry-title {
  margin-bottom: 0.35rem;
}

.premium-section .wp-block-columns {
  margin-bottom: 0;
}

.premium-card-grid .wp-block-column > .wp-block-group,
.premium-feature-grid .wp-block-column > .wp-block-group,
.premium-grid .wp-block-column > .wp-block-group,
.premium-case-study-grid .wp-block-column > .wp-block-group,
.premium-resource-grid .wp-block-column > .wp-block-group,
.premium-quote-grid .wp-block-column > .wp-block-group {
  height: 100%;
}

.premium-checklist ul,
.premium-utility-list {
  margin: 0;
  padding-left: 1.2rem;
  color: var(--premium-muted);
}

.premium-checklist li,
.premium-utility-list li {
  margin-bottom: 0.75rem;
}

.premium-note {
  color: var(--premium-muted);
  font-size: 0.95rem;
}

.premium-mini-stat {
  margin: 0 0 0.25rem;
  color: var(--premium-accent-strong);
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.1;
}

.premium-meta {
  margin: 0 0 0.85rem;
  color: var(--premium-muted);
  font-size: 0.92rem;
}

.premium-page-intro {
  max-width: 44rem;
}

.premium-page-intro.is-wide {
  max-width: 56rem;
}

.premium-ribbon,
.premium-logo-row,
.premium-grid,
.premium-quote-grid {
  display: grid;
  gap: 1rem;
}

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

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

.premium-logo-row {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.premium-stat-card {
  padding: 1.1rem 1.25rem;
  background: var(--premium-surface-strong);
}

.premium-tag,
.premium-logo-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.7rem 1rem;
  border: 1px solid var(--premium-border);
  border-radius: var(--premium-radius);
  color: var(--premium-ink);
  background: var(--premium-surface-strong);
  font-size: 0.92rem;
  font-weight: 600;
}

.premium-logo-pill {
  width: 100%;
  color: var(--premium-muted);
}

.premium-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin: 0;
}

.premium-rail {
  gap: clamp(1.25rem, 3vw, 2rem);
}

.premium-rail .wp-block-column:last-child {
  display: grid;
  gap: 1rem;
}

.premium-highlight-panel {
  background: linear-gradient(160deg, var(--premium-surface-strong), var(--premium-mist));
}

.premium-profile-card {
  display: grid;
  gap: 1rem;
}

.premium-profile-photo,
.premium-person-photo {
  margin: 0;
}

.premium-profile-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  border-radius: var(--premium-radius);
}

.premium-profile-facts {
  padding-left: 1.1rem;
}

.premium-profile-facts strong {
  color: var(--premium-ink);
}

.premium-table-shell {
  overflow-x: auto;
}

.premium-table {
  width: 100%;
  border-collapse: collapse;
}

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

.premium-table th {
  color: var(--premium-accent-strong);
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

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

.premium-faq {
  display: grid;
  gap: 0.9rem;
}

.premium-details {
  padding: 1rem 1.15rem;
  border: 1px solid var(--premium-border);
  border-radius: var(--premium-radius-small);
  background: var(--premium-surface);
}

.premium-details summary {
  cursor: pointer;
  color: var(--premium-ink);
  font-weight: 600;
}

.premium-details p {
  margin: 0.85rem 0 0;
}

.premium-quote-card blockquote,
.single .entry-content blockquote {
  margin: 0;
  padding: 0;
  border: 0;
}

.premium-quote-card p,
.single .entry-content blockquote p {
  color: var(--premium-ink);
  font-size: 1.05rem;
}

.premium-quote-card cite {
  display: block;
  margin-top: 1rem;
  color: var(--premium-muted);
  font-style: normal;
}

.single .entry-content h2,
.single .entry-content h3 {
  margin-top: 2.2rem;
  margin-bottom: 0.85rem;
}

.single .entry-content ul,
.single .entry-content ol {
  padding-left: 1.3rem;
}

.single .entry-content li + li {
  margin-top: 0.55rem;
}

.premium-posts .wp-block-post-template {
  display: grid !important;
  gap: 1.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.premium-posts .wp-block-post-template > .wp-block-post {
  width: auto !important;
  min-width: 0;
  margin: 0;
}

.premium-posts .wp-block-post {
  display: grid;
  align-content: start;
  gap: 0.9rem;
}

.premium-posts .wp-block-post-title {
  min-width: 0;
  margin-bottom: 0.75rem;
  font-size: 1.35rem;
}

.premium-posts .wp-block-post-date,
.premium-posts .wp-block-post-excerpt p {
  color: var(--premium-muted);
}

.premium-posts .wp-block-post-excerpt p {
  margin-bottom: 0;
}

.premium-posts .wp-block-read-more {
  align-self: end;
  font-weight: 600;
}

.premium-cta {
  overflow: hidden;
  padding: clamp(2rem, 4vw, 3rem);
  border-radius: var(--premium-radius);
}

.premium-cta .premium-eyebrow,
.premium-cta p,
.premium-cta li {
  color: var(--premium-ink);
}

.premium-cta .wp-block-button.is-style-outline .wp-block-button__link {
  border-color: var(--premium-border);
  color: var(--premium-ink);
}

.premium-cta .wp-block-button.is-style-outline .wp-block-button__link:hover,
.premium-cta .wp-block-button.is-style-outline .wp-block-button__link:focus {
  border-color: var(--premium-accent-strong);
}

.premium-callout {
  border-left: 4px solid var(--premium-highlight);
}

.premium-blog-sidebar,
.premium-stack-card,
.premium-profile-section {
  display: grid;
  gap: 1rem;
}

.premium-link-list {
  display: grid;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.premium-link-list a {
  display: flex;
  justify-content: space-between;
  padding: 0.85rem 0;
  border-bottom: 1px solid var(--premium-border);
  color: var(--premium-ink);
  font-weight: 650;
  text-decoration: none;
}

.premium-link-list a::after {
  content: ">";
  color: var(--premium-highlight);
}

.premium-link-list li:last-child a {
  border-bottom: 0;
}

.premium-people-grid .wp-block-column {
  display: flex;
}

.premium-people-grid .wp-block-column > .wp-block-group {
  width: 100%;
}

.premium-person-card {
  display: grid;
  grid-template-columns: minmax(10rem, 0.9fr) minmax(0, 1.4fr);
  gap: clamp(1rem, 3vw, 1.75rem);
  align-items: center;
}

.premium-person-card .premium-person-copy {
  display: grid;
  gap: 0.9rem;
}

.premium-person-card h2 {
  margin: 0;
}

.premium-person-card h2 a {
  color: var(--premium-ink);
  text-decoration: none;
}

.premium-person-card h2 a:hover,
.premium-person-card h2 a:focus {
  color: var(--premium-accent-strong);
}

.premium-person-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--premium-radius);
}

.premium-directory-placeholder {
  background: linear-gradient(160deg, var(--premium-surface-strong), var(--premium-surface));
}

.premium-tab-nav {
  position: sticky;
  top: 1rem;
  z-index: 3;
  gap: 0.55rem;
  padding: 0.75rem;
  border: 1px solid var(--premium-border);
  border-radius: var(--premium-radius);
  background: var(--premium-surface-strong);
  box-shadow: none;
  backdrop-filter: none;
}

.premium-tab-nav .wp-block-button__link {
  padding: 0.62rem 0.9rem;
  border-color: transparent;
  border-radius: var(--premium-radius);
  color: var(--premium-ink);
  background: var(--premium-mist);
  font-family: var(--premium-font-button);
  font-size: 0.9rem;
}

.premium-tab-nav .wp-block-button__link:hover,
.premium-tab-nav .wp-block-button__link:focus {
  color: #17161a;
  background: var(--premium-accent-strong);
}

.premium-profile-layout .wp-block-column:last-child {
  display: grid;
  gap: 1rem;
}

.premium-profile-section {
  scroll-margin-top: 6rem;
}

@media (max-width: 1024px) {
  .premium-ribbon,
  .premium-grid,
  .premium-logo-row,
  .premium-quote-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .premium-posts .wp-block-post-template {
    grid-template-columns: 1fr;
  }

  .premium-person-card {
    grid-template-columns: 1fr;
  }

  .premium-tab-nav {
    position: static;
    border-radius: var(--premium-radius-small);
  }
}

@media (max-width: 781px) {
  .premium-hero,
  .entry-content .premium-hero {
    padding-inline: 1.35rem;
  }

  .premium-surface,
  .premium-card,
  .premium-posts .wp-block-post,
  .premium-cta,
  .premium-stat-card,
  .premium-quote-card,
  .premium-table-shell,
  .premium-highlight-panel,
  .premium-note-card {
    padding: 1.25rem;
  }

  .premium-ribbon,
  .premium-grid,
  .premium-logo-row,
  .premium-quote-grid {
    grid-template-columns: 1fr;
  }
}
