.wp-block-group.pcse-home-main,
.wp-block-group.pcse-page-main,
.wp-block-group.pcse-archive-main,
.wp-block-group.pcse-single-main {
  overflow: clip;
}

.wp-block-group.pcse-home-main {
  --wp--style--block-gap: 0;
}

.wp-block-group.pcse-home-main > .wp-block-group {
  margin-block: 0;
}

.wp-block-group.pcse-page-main--full > .wp-block-post-content.pcse-prose {
  margin-block-start: 0;
}

.wp-block-group.pcse-page-main--full > .wp-block-post-content.pcse-prose > .alignfull + .alignfull {
  margin-block-start: 0;
}

/*
 * pcse-single-intro est volontairement absent : les modeles Single posent leur
 * propre conteneur (.pcse-billet-shell, .pcse-product-shell) qui applique deja
 * la largeur et les gouttieres. Contraindre aussi le parent retirait une
 * seconde fois les gouttieres et ramenait le contenu a 1216px au lieu de 1280.
 */
:where(
  .wp-block-group.pcse-page-intro,
  .wp-block-group.pcse-page-content,
  .wp-block-group.pcse-archive-intro,
  .wp-block-columns.pcse-single-layout
) {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  margin-inline: auto;
  box-sizing: border-box;
}

.wp-block-group.pcse-section {
  padding-block: var(--wp--preset--spacing--3xl);
}

.pcse-breadcrumbs {
  margin: 0;
  color: var(--wp--preset--color--neutral-text);
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.35;
}

.pcse-breadcrumbs__list {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.4rem;
  margin: 0;
  padding: 0;
  overflow-x: auto;
  list-style: none;
  white-space: nowrap;
  scrollbar-width: none;
}

.pcse-breadcrumbs__list::-webkit-scrollbar {
  display: none;
}

.pcse-breadcrumbs__item {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.4rem;
  margin: 0;
  padding: 0;
}

.pcse-breadcrumbs__item::marker {
  content: "";
}

.pcse-breadcrumbs a {
  color: inherit;
  text-decoration: none;
  text-underline-offset: 0.18em;
}

.pcse-breadcrumbs a:hover,
.pcse-breadcrumbs a:focus-visible {
  color: var(--wp--preset--color--primary);
  text-decoration: underline;
}

.pcse-breadcrumbs__separator {
  color: color-mix(in srgb, currentColor 55%, transparent);
}

.pcse-breadcrumbs-wrap {
  width: 100%;
  max-width: 100%;
  margin: 0 0 var(--wp--preset--spacing--lg);
  box-sizing: border-box;
}

.pcse-breadcrumbs-wrap > .pcse-breadcrumbs {
  margin: 0;
}

.pcse-breadcrumbs-wrap--inverse .pcse-breadcrumbs,
.pcse-breadcrumbs-wrap--inverse .pcse-breadcrumbs__item,
.pcse-breadcrumbs-wrap--inverse .pcse-breadcrumbs__separator {
  color: var(--wp--preset--color--white);
}

.pcse-breadcrumbs-wrap--inverse .pcse-breadcrumbs a:hover,
.pcse-breadcrumbs-wrap--inverse .pcse-breadcrumbs a:focus-visible {
  color: var(--wp--preset--color--white);
}

.wp-block-group.is-layout-flow > .pcse-breadcrumbs-wrap + *,
.wp-block-group.is-layout-constrained > .pcse-breadcrumbs-wrap + * {
  margin-block-start: 0;
}

.wp-block-group.alignfull.pcse-articles-section,
.wp-block-group.alignfull.pcse-section:has(> .wp-block-group.alignwide.pcse-articles-shell) {
  padding-inline: 0;
}

.wp-block-group.pcse-section--soft {
  background: var(--wp--preset--color--surface-container-low);
}

.wp-block-group.pcse-section--white {
  background: var(--wp--preset--color--surface-container-lowest);
}

.wp-block-group.pcse-card {
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 25%, transparent);
  border-radius: var(--wp--custom--radius--md);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--sm);
}

.wp-block-group.pcse-card--lifted {
  box-shadow: var(--wp--preset--shadow--md);
}

.pcse-skip-link {
  margin: 0;
}

.pcse-skip-link a {
  position: absolute;
  top: -100vh;
  left: var(--wp--preset--spacing--md);
  z-index: 1000;
  padding: 0.85rem 1.2rem;
  border-radius: var(--wp--custom--radius--pill);
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  text-decoration: none;
}

.pcse-skip-link a:focus {
  top: var(--wp--preset--spacing--md);
}

.wp-block-group.pcse-site-header {
  position: fixed;
  inset: var(--pcse-admin-bar-offset) 0 auto;
  z-index: 100;
  padding-inline: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 40%, transparent);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--sm);
}

.wp-block-group.pcse-site-header
  .wc-block-mini-cart:not([data-wp-interactive="woocommerce/mini-cart"])
  .wc-block-mini-cart__badge {
  background-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
}

.wp-block-group.pcse-site-header.is-scrolled {
  background: color-mix(in srgb, var(--wp--preset--color--surface-container-lowest) 92%, transparent);
  box-shadow: var(--wp--preset--shadow--md);
  backdrop-filter: blur(var(--wp--custom--blur--md));
  -webkit-backdrop-filter: blur(var(--wp--custom--blur--md));
}

.wp-block-group.pcse-site-header__shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: var(--wp--preset--spacing--xs);
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  min-height: 0;
  margin-inline: auto;
  padding: var(--wp--preset--spacing--md) 0;
}

.wp-block-group.pcse-site-header__shell > * {
  min-width: 0;
}

.wp-block-group.pcse-site-header__brand {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 0;
}

nav.wp-block-navigation.pcse-site-header__nav {
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  margin-left: auto;
}

nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__container {
  gap: var(--wp--preset--spacing--lg);
}

.wp-block-group.pcse-site-header .wp-block-navigation-item__content {
  color: var(--wp--preset--color--neutral-text);
  font-family: var(--wp--preset--font-family--display);
  font-size: var(--wp--preset--font-size--sm);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}

.wp-block-group.pcse-site-header .current-menu-item > .wp-block-navigation-item__content,
.wp-block-group.pcse-site-header .wp-block-navigation-item__content:hover,
.wp-block-group.pcse-site-header .wp-block-navigation-item__content:focus-visible {
  color: var(--wp--preset--color--primary);
}

.wp-block-group.pcse-site-header__tools {
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  gap: var(--wp--preset--spacing--xs);
  margin-left: 0;
}

.wp-block-group.pcse-site-header__tools .wp-block-woocommerce-customer-account,
.wp-block-group.pcse-site-header__tools .wp-block-woocommerce-mini-cart,
.wp-block-group.pcse-site-header__shell > .wp-block-woocommerce-customer-account,
.wp-block-group.pcse-site-header__shell > .wp-block-woocommerce-mini-cart {
  margin: 0;
}

.wp-block-group.pcse-site-header :is(.wc-block-customer-account__account-icon, .wc-block-mini-cart__icon) {
  color: var(--wp--preset--color--primary);
}

.wp-block-group.pcse-site-header .wc-block-mini-cart__button {
  color: var(--wp--preset--color--primary);
}

.wp-block-group.pcse-site-header a.wc-block-mini-cart__button {
  text-decoration: none;
}

nav.wp-block-navigation.pcse-site-header__nav .wp-block-navigation__responsive-container-open,
nav.wp-block-navigation.pcse-site-header__nav .wp-block-navigation__responsive-container-close {
  border-radius: var(--wp--custom--radius--pill);
}

nav.wp-block-navigation.pcse-site-header__nav .wp-block-navigation__responsive-container-open {
  margin-left: auto;
}

.wp-block-site-title.pcse-site-title,
.wp-block-site-title.pcse-site-title a,
.wp-block-group.pcse-site-header .wp-block-site-title,
.wp-block-group.pcse-site-header .wp-block-site-title a {
  margin: 0;
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  letter-spacing: -0.03em;
}

.wp-block-group.pcse-hero {
  position: relative;
  overflow: hidden;
  padding: 8rem 0 5rem;
  background: var(--wp--preset--gradient--hero-sky);
}

.wp-block-group.pcse-hero__grid {
  display: grid;
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  gap: 4rem;
  align-items: center;
  margin-inline: auto;
}

.wp-block-group.pcse-hero__copy {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  max-width: 36rem;
}

.wp-block-group.pcse-hero__copy > * {
  margin: 0;
}

.pcse-kicker {
  display: inline-flex;
  align-items: center;
  width: max-content;
  margin: 0;
  padding: 0.375rem 1rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--wp--preset--color--secondary) 10%, transparent);
  color: var(--wp--preset--color--secondary);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.wp-block-heading.pcse-display {
  margin: 0;
  font-family: var(--wp--preset--font-family--display);
  font-size: clamp(3.2rem, 5vw, 4rem);
  font-weight: 800;
  line-height: 1.06;
  letter-spacing: -0.05em;
  white-space: normal;
}

.wp-block-heading.pcse-display .pcse-highlight {
  color: var(--wp--preset--color--primary);
}

h2.wp-block-heading {
  font-size: 2.25rem;
  line-height: 1.1;
  letter-spacing: -0.055em;
}

.pcse-lead {
  max-width: 35rem;
  color: var(--wp--preset--color--neutral-text);
  font-size: 1.125rem;
  line-height: 1.65;
}

.wp-block-buttons.pcse-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  padding-top: 0.25rem;
  margin: 0;
}

.wp-block-buttons.pcse-hero__actions .wp-block-button {
  margin: 0;
}

.wp-block-buttons.pcse-hero__actions .wp-block-button__link {
  min-height: auto;
  padding: 1rem 2rem;
  font-size: 1.125rem;
  line-height: 1;
  box-shadow: var(--wp--preset--shadow--md);
}

.wp-block-buttons.pcse-hero__actions .wp-block-button.is-style-outline .wp-block-button__link {
  border: 2px solid color-mix(in srgb, var(--wp--preset--color--primary) 20%, transparent);
  background: transparent;
  color: var(--wp--preset--color--primary);
  box-shadow: none;
}

.wp-block-image.pcse-media-card {
  overflow: hidden;
  border-radius: 0.75rem;
  box-shadow: var(--wp--preset--shadow--md);
}

.wp-block-image.pcse-media-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wp-block-group.pcse-hero__media-wrap {
  position: relative;
  width: 100%;
  max-width: 36rem;
  margin-left: auto;
}

.wp-block-group.pcse-hero__media-wrap::before {
  content: "";
  position: absolute;
  top: -2.5rem;
  right: -2.5rem;
  width: 16rem;
  height: 16rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--wp--preset--color--secondary) 10%, transparent);
  filter: blur(56px);
  z-index: 0;
}

.wp-block-image.pcse-hero__media {
  position: relative;
  z-index: 1;
  margin: 0;
  overflow: hidden;
  border-radius: var(--wp--custom--radius--media);
  box-shadow: none;
}

.wp-block-image.pcse-hero__media img {
  display: block;
  width: 100%;
  height: 31.25rem;
  object-fit: cover;
  border-radius: var(--wp--custom--radius--media);
  box-shadow: none;
}

.wp-block-group.pcse-media-badge {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  z-index: 2;
  display: none;
  width: 100%;
  max-width: 13rem;
  padding: 1.5rem;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest));
  border-radius: 0;
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: none;
}

.wp-block-group.pcse-media-badge__row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}

.wp-block-group.pcse-media-badge__row > * {
  margin: 0;
}

.wp-block-group.pcse-media-badge .pcse-media-badge__icon {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
}

.wp-block-group.pcse-media-badge .pcse-media-badge__icon::before {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23006D30' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 1.7 5.3L19 10l-5.3 1.7L12 17l-1.7-5.3L5 10l5.3-1.7L12 3Z'/%3E%3C/svg%3E");
}

.pcse-media-badge__eyebrow {
  color: var(--wp--preset--color--neutral-dark);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

.wp-block-group.pcse-media-badge .wp-block-heading.pcse-media-badge__value {
  display: flex;
  align-items: baseline;
  gap: 0.35rem;
  margin: 0;
  color: var(--wp--preset--color--primary);
  font-size: 2.5rem;
  line-height: 1;
  letter-spacing: -0.04em;
}

.wp-block-group.pcse-media-badge .wp-block-heading.pcse-media-badge__value span {
  color: color-mix(in srgb, var(--wp--preset--color--outline-variant) 78%, var(--wp--preset--color--neutral-dark));
  font-size: 0.875rem;
  font-weight: 500;
}

.wp-block-group.pcse-section.pcse-trust-band {
  display: flex;
  align-items: center;
  height: 240px;
  min-height: 240px;
  padding-block: 0;
  padding-inline: 0;
  background: var(--wp--preset--color--surface-container-lowest);
}

.is-layout-flow > .wp-block-group.pcse-stats-row {
  margin-block-start: 0;
}

.wp-block-group.pcse-stats-grid {
  display: grid;
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.75rem, 4vw, 3rem);
  align-items: center;
  margin-inline: auto;
}

.wp-block-group.pcse-stats-grid > * {
  margin: 0;
}

.wp-block-group.pcse-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  height: 100%;
  max-width: 12rem;
  margin-inline: auto;
  padding: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
}

.wp-block-group.pcse-stat > * {
  margin: 0;
}

.wp-block-group.pcse-stat__icon {
  display: grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  margin: 0;
  border-radius: 1rem;
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--md);
  color: var(--wp--preset--color--primary);
}

.wp-block-group.pcse-stat__icon::before {
  content: "";
  display: block;
  width: 30px;
  height: 36px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.wp-block-group.pcse-stat__icon.pcse-stat__icon--ticket::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23005292' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v2a2 2 0 0 0 0 4v2a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2a2 2 0 0 0 0-4V7Z'/%3E%3Cpath d='M9 9h.01M15 9h.01M9 15h6'/%3E%3C/svg%3E");
}

.wp-block-group.pcse-stat__icon.pcse-stat__icon--shield::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23005292' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-2.8 7.9-7 10-4.2-2.1-7-5.5-7-10V6l7-3Z'/%3E%3Cpath d='m9.5 12 1.7 1.7 3.3-3.4'/%3E%3C/svg%3E");
}

.wp-block-group.pcse-stat__icon.pcse-stat__icon--bolt::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23005292' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 5 14h5l-1 8 8-12h-5l1-8Z'/%3E%3C/svg%3E");
}

.wp-block-group.pcse-stat__icon.pcse-stat__icon--person::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23005292' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 20a6 6 0 0 0-12 0'/%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3C/svg%3E");
}

.pcse-stat__value {
  display: block;
  margin: 0;
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 2rem;
  letter-spacing: 0;
  white-space: nowrap;
}

.pcse-stat__label {
  margin: 0;
  color: var(--wp--preset--color--neutral-text);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
}

.wp-block-group.pcse-offers-grid,
.wp-block-group.pcse-pricing-grid,
.wp-block-group.pcse-editorial,
.wp-block-group.pcse-cta-layout {
  display: grid;
  gap: clamp(1.5rem, 3vw, 2rem);
  align-items: stretch;
}

.wp-block-group.alignwide.pcse-editorial {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  margin-inline: auto;
}

.wp-block-group.pcse-editorial-wellbeing,
.wp-block-group.pcse-section--soft:has(> .wp-block-group.pcse-editorial--media-right) {
  margin-block-start: 0;
}

.wp-block-group.alignfull.pcse-articles-section > .wp-block-group.pcse-articles-shell,
.wp-block-group.alignfull.pcse-section:has(> .wp-block-group.pcse-articles-shell) > .wp-block-group.pcse-articles-shell,
.wp-block-group.pcse-articles-shell,
.wp-block-group:has(> .pcse-offers-grid) {
  display: block;
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  margin-inline: auto !important;
  padding-inline: 0;
  text-align: left !important;
  box-sizing: border-box;
}

.wp-block-group.pcse-articles-shell.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.wp-block-group.pcse-articles-shell > :not(.alignleft):not(.alignright):not(.alignfull),
.wp-block-group:has(> .pcse-offers-grid).is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.wp-block-group:has(> .pcse-offers-grid) > :not(.alignleft):not(.alignright):not(.alignfull) {
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.wp-block-group.pcse-articles-shell > .pcse-offers-grid {
  width: 100%;
  max-width: none;
}

.wp-block-group.pcse-offers-grid {
  width: 100%;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(1.75rem, 2.8vw, 2.25rem);
  grid-auto-rows: 1fr;
}

.wp-block-group.pcse-offers-grid > * {
  margin: 0;
  align-self: stretch;
}

.wp-block-group.pcse-section > .wp-block-group.alignwide > .pcse-kicker,
.wp-block-group.pcse-section > .wp-block-group:has(> .pcse-offers-grid) > .pcse-kicker {
  display: block;
  margin: 0 0 0.5rem;
  width: auto;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: var(--wp--preset--color--secondary);
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.wp-block-group.pcse-section > .wp-block-group.alignwide > .pcse-kicker.pcse-offers-kicker,
.wp-block-group.pcse-section > .wp-block-group:has(> .pcse-offers-grid) > .pcse-kicker,
.wp-block-group.pcse-section > .wp-block-group:has(> .pcse-offers-grid) > .pcse-kicker.pcse-offers-kicker {
  display: inline-flex;
  width: fit-content !important;
  max-width: none !important;
  margin: 0 0 0.5rem 0 !important;
  margin-right: auto !important;
  justify-content: flex-start;
  text-align: left !important;
}

#pricing > .wp-block-group.alignwide > .pcse-kicker {
  color: var(--wp--preset--color--secondary);
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}

.wp-block-group#pricing > .wp-block-group.alignwide > .wp-block-heading {
  max-width: 46rem;
  margin-inline: auto;
  font-size: 2.25rem;
  line-height: 1.1;
  letter-spacing: -0.055em;
}

.wp-block-group.pcse-offer-card,
.wp-block-group.pcse-pricing-card {
  height: 100%;
  transition:
    transform var(--pcse-transition-base) ease,
    box-shadow var(--pcse-transition-base) ease;
}

.wp-block-group.pcse-offer-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0;
  border: 1px solid var(--wp--preset--color--surface-container-low);
  border-radius: var(--wp--custom--radius--media);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--md);
  text-align: left;
}

.wp-block-group.pcse-offer-card > * {
  margin: 0;
}

.wp-block-group.pcse-offer-card:hover,
.wp-block-group.pcse-offer-card:focus-within {
  box-shadow: var(--wp--preset--shadow--md);
}

.wp-block-group.pcse-pricing-card:hover,
.wp-block-group.pcse-pricing-card:focus-within {
  transform: translateY(-6px);
  box-shadow: var(--wp--preset--shadow--md);
}

.wp-block-group.pcse-offer-card .wp-block-image {
  display: block;
  width: 100%;
  margin: 0;
  border-radius: var(--wp--custom--radius--media) var(--wp--custom--radius--media) 0 0;
}

.wp-block-group.pcse-offer-card .wp-block-image img {
  display: block;
  width: 100%;
  max-width: none;
  height: 12rem;
  aspect-ratio: 191 / 96;
  object-fit: cover;
  border-radius: var(--wp--custom--radius--media) var(--wp--custom--radius--media) 0 0;
}

.wp-block-group.pcse-offer-card__body,
.wp-block-group.pcse-card-article__body,
.wp-block-group.pcse-post-card__body {
  display: grid;
  flex: 1 1 auto;
  align-content: start;
  justify-items: start;
  gap: 0.35rem;
  width: 100%;
  padding: 1.5rem;
  text-align: left;
}

.wp-block-group.pcse-offer-card__body > *,
.wp-block-group.pcse-card-article__body > *,
.wp-block-group.pcse-post-card__body > * {
  width: 100%;
  margin: 0;
  margin-inline: 0;
  justify-self: stretch;
  text-align: left;
}

.wp-block-group.pcse-offer-card__body p,
.wp-block-group.pcse-card-article__body p {
  color: var(--wp--preset--color--neutral-text);
  font-size: 0.875rem;
  line-height: 1.45;
  text-align: left;
}

.wp-block-group.pcse-offer-card__body .wp-block-heading {
  font-size: 1.25rem;
  font-weight: 700;
  text-align: left;
  line-height: 1.35;
  letter-spacing: -0.03em;
}

.pcse-offer-card__badge,
.pcse-badge-promo {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  z-index: 10;
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding-top: 0.25rem;
  padding-right: 0.75rem;
  padding-bottom: 0.25rem;
  padding-left: 0.75rem;
  background: var(--wp--preset--color--secondary);
  color: var(--wp--preset--color--white);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
  border-radius: 0;
  pointer-events: none;
  text-transform: uppercase;
}

.wp-block-heading.pcse-offers-heading,
.wp-block-group.pcse-section > .wp-block-group:has(> .pcse-offers-grid) > .wp-block-heading {
  display: block;
  width: auto !important;
  max-width: 44rem !important;
  margin: 0 0 clamp(2.4rem, 4vw, 3.15rem) 0 !important;
  margin-right: auto !important;
  padding: 0 !important;
  text-align: left !important;
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.055em;
}

.wp-block-group.pcse-articles-shell > .pcse-kicker.pcse-offers-kicker,
.wp-block-group.pcse-section > .wp-block-group.pcse-articles-shell > .pcse-kicker.pcse-offers-kicker,
.wp-block-group.pcse-section > .wp-block-group:has(> .pcse-offers-grid) > .pcse-kicker {
  display: flex;
  width: fit-content !important;
  max-width: none !important;
  margin: 0 0 0.5rem 0 !important;
  margin-right: auto !important;
  padding: 0 !important;
  justify-content: flex-start;
  text-align: left !important;
}

.wp-block-group.pcse-articles-shell > .pcse-kicker.pcse-offers-kicker.has-text-align-center,
.wp-block-group.pcse-articles-shell > .wp-block-heading.pcse-offers-heading.has-text-align-center,
.wp-block-group.pcse-section > .wp-block-group:has(> .pcse-offers-grid) > .pcse-kicker.has-text-align-center,
.wp-block-group.pcse-section > .wp-block-group:has(> .pcse-offers-grid) > .wp-block-heading.has-text-align-center,
.pcse-kicker.pcse-offers-kicker.has-text-align-center,
.wp-block-heading.pcse-offers-heading.has-text-align-center {
  text-align: left !important;
}

.wp-block-post-content.pcse-prose > .wp-block-group.alignfull.pcse-articles-section,
.wp-block-post-content.pcse-prose > .wp-block-group.alignfull.pcse-section:has(> .wp-block-group.pcse-articles-shell),
.wp-block-post-content.pcse-prose > .wp-block-group.alignfull.pcse-section:has(.pcse-offers-grid) {
  width: 100%;
  max-width: none;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-inline: 0 !important;
}

.wp-block-post-content.pcse-prose > .wp-block-group.alignfull.pcse-articles-section > .wp-block-group.pcse-articles-shell,
.wp-block-post-content.pcse-prose > .wp-block-group.alignfull.pcse-section:has(> .wp-block-group.pcse-articles-shell) > .wp-block-group.pcse-articles-shell,
.wp-block-post-content.pcse-prose > .wp-block-group.alignfull.pcse-section:has(.pcse-offers-grid) > .wp-block-group:has(> .pcse-offers-grid),
.wp-block-post-content.pcse-prose .wp-block-group.pcse-articles-shell,
.wp-block-post-content.pcse-prose .wp-block-group:has(> .pcse-offers-grid) {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  margin-inline: auto !important;
  padding-inline: 0;
}

.pcse-card-article__eyebrow {
  margin: 0;
  color: var(--wp--preset--color--secondary);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.wp-block-group.pcse-pricing-grid {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  grid-template-columns: minmax(0, 1fr);
  gap: 2rem;
  align-items: stretch;
  grid-auto-rows: 1fr;
  margin-top: clamp(2.5rem, 5vw, 4rem);
  margin-inline: auto;
}

.wp-block-group.pcse-pricing-grid > * {
  margin: 0;
  align-self: stretch;
}

.wp-block-group.pcse-pricing-section__intro {
  display: grid;
  gap: 1rem;
}

.wp-block-group.pcse-pricing-section__intro > * {
  margin: 0;
}

.wp-block-group.pcse-pricing-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  height: 100%;
  padding: clamp(2.25rem, 4vw, 2.5rem);
  border: 1px solid var(--wp--preset--color--surface-container-low);
  border-radius: 1rem;
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--md);
  text-align: left;
}

.wp-block-group.pcse-pricing-card > * {
  margin: 0;
}

.wp-block-group.pcse-pricing-card__head,
.wp-block-group.pcse-pricing-card__header {
  display: grid;
  gap: 0;
  width: 100%;
  justify-items: start;
  text-align: left;
}

.wp-block-group.pcse-pricing-card__head > *,
.wp-block-group.pcse-pricing-card__header > * {
  margin: 0;
}

#pricing .wp-block-group.pcse-pricing-card,
#pricing .wp-block-group.pcse-pricing-card__head,
#pricing .wp-block-group.pcse-pricing-card__header,
#pricing .wp-block-heading.pcse-pricing-title,
#pricing .wp-block-group.pcse-pricing-price-row,
#pricing .wp-block-group.pcse-pricing-price-row > *,
#pricing .wp-block-group.pcse-pricing-card .pcse-pricing-price,
#pricing .wp-block-group.pcse-pricing-card .pcse-pricing-unit,
#pricing .wp-block-group.pcse-pricing-card .pcse-pricing-note {
  text-align: left;
}

#pricing .wp-block-group.pcse-pricing-card__head,
#pricing .wp-block-group.pcse-pricing-card__header {
  justify-items: start;
}

#pricing .wp-block-group.pcse-pricing-price-row {
  justify-content: flex-start;
}

#pricing .wp-block-heading.pcse-pricing-title,
#pricing .wp-block-group.pcse-pricing-price-row,
#pricing .wp-block-group.pcse-pricing-card .pcse-pricing-price,
#pricing .wp-block-group.pcse-pricing-card .pcse-pricing-unit,
#pricing .wp-block-group.pcse-pricing-card .pcse-pricing-note {
  margin-inline: 0;
}

.wp-block-heading.pcse-pricing-title,
.wp-block-group.pcse-pricing-card > .wp-block-heading:not(.pcse-pricing-price) {
  margin: 0 0 1rem;
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.75rem;
  letter-spacing: 0;
  text-align: left;
}

.wp-block-group.pcse-pricing-price-row {
  display: flex;
  align-items: flex-end;
  gap: 0.4rem;
  flex-wrap: nowrap;
  justify-content: flex-start;
}

.wp-block-group.pcse-pricing-price-row > * {
  margin: 0;
}

.wp-block-group.pcse-pricing-card .wp-block-button,
.wp-block-button.pcse-pricing-card__cta {
  width: 100%;
  margin-top: auto;
}

.wp-block-group.pcse-pricing-card .wp-block-button__link,
.wp-block-button.pcse-pricing-card__cta .wp-block-button__link {
  display: flex;
  width: 100%;
  min-height: 3.5rem;
  align-items: center;
  justify-content: center;
  padding: 1rem 1.5rem;
  border-radius: 999px;
  font-size: 1rem;
  font-weight: 700;
  box-shadow: none;
  text-align: center;
  white-space: nowrap;
}

.wp-block-group.pcse-pricing-card .wp-block-button.is-style-outline .wp-block-button__link {
  border: 2px solid var(--wp--preset--color--primary);
  background: transparent;
  color: var(--wp--preset--color--primary);
}

.wp-block-group.pcse-pricing-card .pcse-pricing-price {
  margin: 0;
  color: inherit;
  font-family: var(--wp--preset--font-family--display);
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 2.5rem;
  letter-spacing: 0;
  text-align: left;
}

.pcse-pricing-unit {
  margin: 0;
  padding-bottom: 0.25rem;
  color: #56739a;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.2;
}

.pcse-pricing-note,
.pcse-pricing-caption {
  margin: 0.5rem 0 0;
  color: color-mix(in srgb, var(--wp--preset--color--outline-variant) 78%, var(--wp--preset--color--neutral-dark));
  font-size: 0.875rem;
  line-height: 1.5;
}

.wp-block-list.pcse-pricing-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 1.125rem;
  width: 100%;
  justify-items: start;
}

.wp-block-list.pcse-pricing-list li {
  display: grid;
  grid-template-columns: 1.2rem minmax(0, 1fr);
  gap: 0.75rem;
  align-items: start;
  padding-left: 0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.45;
}

.wp-block-list.pcse-pricing-list li::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  margin-top: 0.12rem;
  background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4.2 10.3 3.1 3.1 8-8' fill='none' stroke='%23006D30' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.wp-block-list.pcse-pricing-list .is-muted {
  color: var(--wp--preset--color--outline-variant);
}

.wp-block-list.pcse-pricing-list .is-muted::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m6 6 8 8M14 6l-8 8' fill='none' stroke='%23cbd5e1' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");
}

.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured {
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  border-color: transparent;
  transform: none;
  z-index: 2;
  box-shadow: 0 24px 48px color-mix(in srgb, var(--wp--preset--color--primary) 24%, transparent);
}

.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured p,
.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured li,
.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .wp-block-heading {
  color: inherit;
}

.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .pcse-pricing-caption,
.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .pcse-pricing-note,
.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .pcse-pricing-caption:first-line,
.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .pcse-pricing-caption em {
  color: color-mix(in srgb, var(--wp--preset--color--white) 68%, transparent);
}

.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .pcse-pricing-unit {
  color: color-mix(in srgb, var(--wp--preset--color--white) 82%, transparent);
}

.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .pcse-pricing-list li::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%238AF79F'/%3E%3Cpath d='m8 12.2 2.5 2.5L16.2 9' fill='none' stroke='%23005292' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .pcse-pricing-list li:first-child {
  font-weight: 700;
}

.wp-block-group.pcse-pricing-card.pcse-pricing-card--featured .wp-block-button__link {
  background: var(--wp--preset--color--white);
  color: var(--wp--preset--color--primary);
}

.pcse-pricing-badge {
  position: absolute;
  top: -1.0625rem;
  left: 50%;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.75rem;
  margin: 0;
  padding: 0.5rem 1.125rem;
  border-radius: 9999px;
  background: var(--wp--preset--color--secondary);
  box-shadow: 0 16px 28px color-mix(in srgb, var(--wp--preset--color--secondary) 22%, transparent);
  color: var(--wp--preset--color--white);
  z-index: 10;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.wp-block-group.pcse-editorial {
  gap: clamp(2.75rem, 6vw, 5.5rem);
  align-items: center;
}

.wp-block-group.pcse-editorial__copy {
  max-width: 35rem;
}

.wp-block-group.pcse-editorial__copy > * {
  margin: 0;
}

.wp-block-group.pcse-editorial__copy > * + * {
  margin-top: 1.35rem;
}

.wp-block-group.pcse-editorial__copy .wp-block-heading {
  font-size: 2.25rem;
  line-height: 1.1;
  letter-spacing: -0.055em;
}

.wp-block-group.pcse-editorial__copy p {
  color: var(--wp--preset--color--neutral-text);
  font-size: 1rem;
  line-height: 1.75;
}

.wp-block-group.pcse-editorial__media .wp-block-image.pcse-media-card {
  margin: 0;
  border-radius: var(--wp--custom--radius--media);
  box-shadow: none;
}

.wp-block-group.pcse-editorial__media .wp-block-image img {
  display: block;
  width: 100%;
  aspect-ratio: 1.48;
  max-height: 25rem;
  min-height: 0;
  object-fit: cover;
  border-radius: var(--wp--custom--radius--media);
  box-shadow: none;
}

.wp-block-group.pcse-dark-callout {
  position: relative;
  overflow: hidden;
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  margin-inline: auto;
  padding: clamp(2rem, 4vw, 3.5rem);
  border-radius: 1rem;
  background: var(--wp--preset--gradient--deep-ocean);
  color: var(--wp--preset--color--white);
}

.wp-block-group.pcse-dark-callout.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  width: 100%;
  max-width: none !important;
}

.wp-block-group.pcse-dark-callout::after {
  content: "";
  position: absolute;
  inset: 0 0 0 auto;
  width: min(50%, 24rem);
  background: linear-gradient(270deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 28%, transparent), transparent);
  pointer-events: none;
}

.wp-block-group.pcse-dark-callout p,
.wp-block-group.pcse-dark-callout .wp-block-heading {
  color: inherit;
}

.wp-block-group.pcse-cta-layout {
  position: relative;
  z-index: 1;
  align-items: center;
}

.wp-block-group.pcse-cta__copy p {
  max-width: 34rem;
  color: var(--wp--custom--color--primary-on-dark);
  font-size: 1.05rem;
}

.wp-block-buttons.pcse-cta__actions {
  display: flex;
  flex-wrap: nowrap;
  gap: 1rem;
  align-items: center;
}

.wp-block-group.pcse-dark-callout .wp-block-button.is-style-ghost .wp-block-button__link {
  border-color: color-mix(in srgb, var(--wp--preset--color--white) 16%, transparent);
  background: color-mix(in srgb, var(--wp--preset--color--white) 8%, transparent);
  color: var(--wp--preset--color--white);
}

.wp-block-group.pcse-site-footer {
  background: var(--wp--preset--color--neutral-dark);
  color: var(--wp--preset--color--white);
  padding: 5rem 2rem 2rem;
}

.wp-block-group.pcse-site-footer__inner {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-wide-width));
  max-width: var(--pcse-wide-width);
  margin-inline: auto;
}

.wp-block-group.pcse-site-footer__inner.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  width: 100%;
  max-width: none !important;
}

.pcse-payment-methods {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--wp--preset--spacing--sm);
  margin-top: var(--wp--preset--spacing--md);
}

.pcse-payment-methods img {
  box-sizing: border-box;
  width: auto;
  height: var(--wp--preset--spacing--xl);
  border: 1px solid var(--wp--preset--color--outline-variant);
  border-radius: var(--wp--custom--radius--sm);
}

.wp-block-group.pcse-site-footer .wp-block-columns {
  align-items: start;
}

.wp-block-group.pcse-site-footer__grid {
  gap: clamp(2rem, 4vw, 3rem);
}

.wp-block-column.pcse-site-footer__intro-column {
  flex-basis: 30%;
}

.wp-block-column.pcse-site-footer__nav-column,
.wp-block-column.pcse-site-footer__legal-column,
.wp-block-column.pcse-site-footer__contact-column {
  flex-basis: 23.333%;
}

.wp-block-site-title.pcse-site-footer__brand,
.wp-block-site-title.pcse-site-footer__brand a {
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--display);
  font-weight: 800;
  letter-spacing: -0.04em;
  text-decoration: none;
}

.wp-block-site-title.pcse-site-footer__brand {
  margin-block: 0 var(--wp--preset--spacing--md);
}

.wp-block-group.pcse-site-footer .wp-block-heading,
.pcse-site-footer__title {
  display: block;
  margin: 0 0 1.5rem;
  color: var(--wp--preset--color--white);
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1rem;
}

.wp-block-group.pcse-site-footer .pcse-site-footer__copy,
.wp-block-group.pcse-site-footer .pcse-site-footer__contact-link,
.wp-block-group.pcse-site-footer li,
.wp-block-group.pcse-site-footer a,
.wp-block-group.pcse-site-footer .wp-block-navigation-item__content {
  color: color-mix(in srgb, var(--wp--preset--color--outline-variant) 78%, var(--wp--preset--color--neutral-dark));
  font-size: 0.875rem;
}

.wp-block-group.pcse-site-footer .wp-block-site-title.pcse-site-footer__brand,
.wp-block-group.pcse-site-footer .wp-block-site-title.pcse-site-footer__brand a {
  color: var(--wp--preset--color--white);
}

.wp-block-group.pcse-site-footer a {
  text-decoration: none;
}

.wp-block-group.pcse-site-footer a:hover,
.wp-block-group.pcse-site-footer a:focus-visible {
  color: var(--wp--preset--color--white);
}

.wp-block-group.pcse-site-footer .wp-block-list,
.wp-block-group.pcse-site-footer .wp-block-navigation {
  margin: 0;
}

.wp-block-group.pcse-site-footer .wp-block-list {
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.95rem;
}

.wp-block-group.pcse-site-footer .wp-block-navigation {
  align-items: flex-start;
}

.wp-block-group.pcse-site-footer .wp-block-navigation__container {
  align-items: flex-start;
}

.wp-block-navigation.pcse-site-footer__menu .wp-block-navigation__container {
  gap: 0.95rem;
}

.wp-block-navigation.pcse-site-footer__menu .wp-block-navigation-item {
  width: 100%;
}

.wp-block-navigation.pcse-site-footer__menu .wp-block-navigation-item__content,
.wp-block-navigation.pcse-site-footer__legal-links-menu .wp-block-navigation-item__content {
  padding: 0;
}

.wp-block-group.pcse-site-footer__contact-list {
  gap: 1rem;
}

.wp-block-group.pcse-site-footer__contact-item {
  gap: 0.5rem;
  align-items: center;
}

.wp-block-group.pcse-site-footer__contact-link {
  margin: 0;
}

.pcse-inline-icon,
.pcse-social-icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.pcse-inline-icon {
  width: 1rem;
  height: 1rem;
}

.pcse-inline-icon::before {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.pcse-inline-icon--mail::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16v12H4z'/%3E%3Cpath d='m4 8 8 6 8-6'/%3E%3C/svg%3E");
}

.pcse-inline-icon--phone::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.4 19.4 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.1 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7l.4 3a2 2 0 0 1-.6 1.7L7.6 9.8a16 16 0 0 0 6.6 6.6l1.4-1.3a2 2 0 0 1 1.7-.6l3 .4a2 2 0 0 1 1.7 2Z'/%3E%3C/svg%3E");
}

.pcse-site-footer__socials {
  display: flex;
  gap: 1rem;
  padding-top: 0.25rem;
}

.pcse-social-icon {
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--wp--preset--color--white) 5%, transparent);
  transition:
    background-color var(--pcse-transition-base) ease,
    transform var(--pcse-transition-base) ease;
}

.pcse-social-icon::before {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.pcse-social-icon--share::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='5' r='3'/%3E%3Ccircle cx='6' cy='12' r='3'/%3E%3Ccircle cx='18' cy='19' r='3'/%3E%3Cpath d='m8.6 13.5 6.8 4M15.3 6.5l-6.7 4'/%3E%3C/svg%3E");
}

.pcse-social-icon--website::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a15 15 0 0 1 0 18M12 3a15 15 0 0 0 0 18'/%3E%3C/svg%3E");
}

.pcse-social-icon:hover,
.pcse-social-icon:focus-visible {
  background: var(--wp--preset--color--primary);
  transform: translateY(-1px);
}

.pcse-social-icon:hover::before,
.pcse-social-icon:focus-visible::before {
  filter: brightness(0) invert(1);
}

.wp-block-separator.pcse-site-footer__separator {
  margin-block: 2rem 1.5rem;
  opacity: 0.16;
}

.wp-block-group.pcse-site-footer__bottom {
  gap: 1rem;
}

.wp-block-navigation.pcse-site-footer__legal-links-menu .wp-block-navigation__container {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.75rem 1.5rem;
}

.wp-block-navigation.pcse-site-footer__legal-links-menu .wp-block-navigation-item__content {
  font-size: 0.78rem;
}

.wp-block-group.pcse-site-footer .wp-block-button.is-style-ghost .wp-block-button__link {
  background: color-mix(in srgb, var(--wp--preset--color--white) 8%, transparent);
  color: var(--wp--preset--color--white);
}

.wp-block-group.pcse-sidebar > .wp-block-group {
  position: sticky;
  top: calc(5rem + var(--wp--preset--spacing--md));
}

.wp-block-group.pcse-sidebar .wp-block-search__inside-wrapper,
.wp-block-group.pcse-sidebar .wp-block-categories,
.wp-block-group.pcse-sidebar .wp-block-tag-cloud,
.wp-block-group.pcse-sidebar .wp-block-group.pcse-sidebar-card {
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 28%, transparent);
  border-radius: var(--wp--custom--radius--md);
  background: var(--wp--preset--color--surface-container-lowest);
}

.wp-block-group.pcse-sidebar .wp-block-search__inside-wrapper {
  padding: 0.5rem;
}

.wp-block-group.pcse-sidebar .wp-block-search__button {
  border-radius: var(--wp--custom--radius--pill);
}

.wp-block-group.pcse-sidebar .wp-block-group.pcse-sidebar-card {
  padding: var(--wp--preset--spacing--lg);
}

.wp-block-group.pcse-sidebar .wp-block-tag-cloud a {
  display: inline-block;
  margin: 0.35rem;
  font-size: 0.9rem !important;
}

.wp-block-post-content.pcse-prose > * + * {
  margin-top: clamp(1.5rem, 3vw, 2rem);
}

.wp-block-group.pcse-page-intro > *,
.wp-block-group.pcse-page-content > * {
  width: 100%;
  max-width: none !important;
}

.wp-block-post-content.pcse-prose {
  width: 100%;
  max-width: none !important;
}

.wp-block-group.pcse-page-content .wp-block-post-content.pcse-prose > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: none !important;
}

.wp-block-group.pcse-archive-intro,
.wp-block-group.pcse-page-intro {
  padding-top: calc(var(--wp--preset--spacing--3xl) + 1rem);
}

/*
 * Reference de hauteur du fil d'Ariane : le degagement sous le header fixe est
 * le meme que celui de .pcse-post-hero (Single Article). Repris a l'identique
 * dans la requete >= 1440px, ou .pcse-section reimpose sinon son padding-block.
 */
.wp-block-group.pcse-single-intro {
  padding-top: calc(var(--pcse-admin-bar-offset) + var(--pcse-fixed-header-clearance));
}

body.pcse-has-page-hero .wp-block-group.pcse-page-intro {
  display: none;
}

body.pcse-has-page-hero .wp-block-group.pcse-page-content {
  padding-top: 0;
}

body.pcse-has-page-hero .wp-block-post-content.pcse-prose > .wp-block-group.alignfull.pcse-hero:first-child {
  width: 100vw;
  max-width: 100vw;
  margin-top: 0;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

body.pcse-has-page-hero .wp-block-post-content.pcse-prose > .wp-block-group.alignfull.pcse-hero:first-child + * {
  margin-top: 0;
}

.wp-block-group.pcse-billet-intro {
  padding-bottom: var(--wp--preset--spacing--xl);
}

.wp-block-group.pcse-billet-main {
  --pcse-billet-shell-max: var(--pcse-wide-width);
}

.wp-block-group.alignwide.pcse-billet-shell,
.wp-block-columns.alignwide.pcse-billet-shell {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-billet-shell-max));
  max-width: var(--pcse-billet-shell-max);
  margin-inline: auto;
  padding-inline: 0;
  box-sizing: border-box;
}

.pcse-billet-shell > .pcse-breadcrumbs-wrap,
.pcse-billet-shell > .wp-block-planete-cse-billet-hero,
.pcse-billet-shell > .wp-block-planete-cse-billet-access-bar,
.pcse-billet-content > .wp-block-post-content {
  width: 100%;
  max-width: 100%;
}


.wp-block-group.pcse-billet-access-wrap {
  background: var(--wp--preset--color--surface-container-low);
}

.wp-block-group.pcse-billet-content-wrap {
  padding-top: var(--wp--preset--spacing--2xl);
}

.wp-block-group.pcse-billet-content {
  max-width: 100%;
}

body.single-post {
  --pcse-post-shell-max: 1280px;
  --pcse-post-content-width: 790px;
  --pcse-post-sidebar-width: 360px;
  --pcse-post-grid-gap: clamp(2rem, 4vw, 4.5rem);
  --pcse-post-hero-overlay: linear-gradient(180deg, color-mix(in srgb, var(--wp--preset--color--neutral-dark) 18%, transparent) 0%, color-mix(in srgb, var(--wp--preset--color--neutral-dark) 78%, transparent) 72%, color-mix(in srgb, var(--wp--preset--color--neutral-dark) 92%, transparent) 100%);
}

.pcse-post-shell {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-post-shell-max));
  max-width: var(--pcse-post-shell-max);
  margin-inline: auto;
  padding-inline: 0;
  box-sizing: border-box;
}

.pcse-post-hero {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-end;
  min-height: clamp(26rem, 54vw, 42rem);
  padding: calc(var(--pcse-admin-bar-offset) + var(--pcse-fixed-header-clearance)) 0 clamp(2.5rem, 5vw, 4rem);
  color: var(--wp--preset--color--white);
  background: var(--wp--preset--color--neutral-dark);
  overflow: hidden;
}

.pcse-post-hero .pcse-breadcrumbs {
  margin: 0;
  color: var(--wp--preset--color--white);
}

.pcse-post-hero .pcse-breadcrumbs [aria-current="page"] {
  color: var(--wp--preset--color--white);
}

.pcse-post-hero .pcse-breadcrumbs a:hover,
.pcse-post-hero .pcse-breadcrumbs a:focus-visible {
  color: var(--wp--preset--color--white);
}

.pcse-post-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: var(--pcse-post-hero-overlay), var(--pcse-post-hero-image);
  background-size: cover;
  background-position: center;
  transform: scale(1.03);
}

.pcse-post-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(230, 185, 102, 0.22), transparent 32%);
  mix-blend-mode: screen;
  pointer-events: none;
}

.pcse-post-hero--no-image::before {
  background-image: linear-gradient(135deg, var(--wp--preset--color--neutral-dark) 0%, var(--wp--custom--color--deep-ocean-mid) 55%, color-mix(in srgb, var(--wp--custom--color--deep-ocean-mid) 60%, var(--wp--preset--color--primary-container)) 100%);
  transform: none;
}

.pcse-post-hero__shell {
  position: relative;
  z-index: 1;
}

.pcse-post-hero__top {
  position: relative;
  z-index: 1;
  margin-bottom: auto;
}

.pcse-post-hero__content {
  display: grid;
  gap: clamp(1rem, 2vw, 1.5rem);
  max-width: min(100%, var(--pcse-post-content-width));
}

.pcse-post-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem 1rem;
  align-items: center;
}

.pcse-post-hero__category {
  display: inline-flex;
  align-items: center;
  padding: 0.45rem 0.85rem;
  border: 0;
  border-radius: 999px;
  background: var(--wp--preset--color--primary);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pcse-post-hero__date {
  display: inline-flex;
  align-items: center;
  color: var(--wp--preset--color--white);
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1;
  opacity: 1;
}

.pcse-post-hero__title {
  margin: 0;
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--display);
  font-size: 3.75rem;
  font-weight: 800;
  line-height: 0.96;
  letter-spacing: -0.05em;
  text-wrap: balance;
}

.pcse-post-hero__author {
  display: flex;
  gap: 1rem;
  align-items: center;
  width: min(100%, 24rem);
  padding: 0;
  border: 0;
  background: transparent;
}

.pcse-post-hero__author-avatar {
  display: block;
  flex: 0 0 auto;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
}

.pcse-post-hero__author-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.15rem;
  min-width: 0;
  flex: 1 1 auto;
}

.pcse-post-hero__author-name,
.pcse-post-hero__author-title {
  display: block;
  margin: 0;
  color: var(--wp--preset--color--white);
}

.pcse-post-hero__author-name {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25;
}

.pcse-post-hero__author-title {
  margin-top: 0;
  font-size: 0.92rem;
  line-height: 1.25;
  opacity: 0.78;
}

.wp-block-group.pcse-post-content-wrap.pcse-section {
  padding-top: 0;
  background: var(--wp--preset--color--surface);
}

body.single-post .wp-site-blocks,
.wp-block-group.pcse-single-main.pcse-post-main {
  overflow: visible;
}

.wp-block-columns.pcse-post-shell.pcse-post-layout {
  display: grid;
  grid-template-columns: minmax(0, var(--pcse-post-content-width)) minmax(280px, var(--pcse-post-sidebar-width));
  gap: var(--pcse-post-grid-gap);
  align-items: start;
  justify-content: space-between;
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-post-shell-max));
  max-width: var(--pcse-post-shell-max);
  margin-inline: auto;
}

.wp-block-columns.pcse-post-shell.pcse-post-layout > .wp-block-column {
  min-width: 0;
  flex-basis: auto;
}

.wp-block-column.pcse-post-layout__content {
  width: 100%;
  max-width: var(--pcse-post-content-width);
}

.wp-block-column.pcse-post-layout__sidebar {
  width: 100%;
  max-width: var(--pcse-post-sidebar-width);
  align-self: start;
}

.wp-block-post-content.pcse-prose.pcse-post-content > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: none !important;
}

.wp-block-post-content.pcse-prose.pcse-post-content :is(h2, h3)[id] {
  scroll-margin-top: 8rem;
}

.pcse-post-sidebar {
  display: grid;
  gap: 1.25rem;
  position: static;
  top: auto;
  align-self: start;
}

.wp-block-group.pcse-sidebar.pcse-post-sidebar > .wp-block-group,
.wp-block-group.pcse-sidebar.pcse-post-sidebar > .wp-block-shortcode,
.wp-block-group.pcse-sidebar.pcse-post-sidebar > .pcse-post-toc {
  position: static;
  top: auto;
}

.pcse-post-layout__sidebar .pcse-post-sidebar.has-global-padding {
  padding-inline: 0;
}

.pcse-post-toc {
  display: block;
  position: static;
  width: 100%;
  max-width: none;
  padding: 0;
  border: 0;
  border-radius: calc(var(--wp--custom--radius--md) + 0.2rem);
  background: var(--wp--preset--color--surface-container-low);
  box-shadow: none;
  overflow: hidden;
}

.pcse-post-toc__details {
  width: 100%;
}

.pcse-post-toc__summary {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  padding: 1.1rem 1.25rem;
  list-style: none;
  cursor: pointer;
}

.pcse-post-toc__summary::-webkit-details-marker {
  display: none;
}

.pcse-post-toc__title {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1.2;
}

.pcse-post-toc__icon {
  flex: 0 0 auto;
  margin-left: auto;
  width: 0.8rem;
  height: 0.8rem;
  color: var(--wp--preset--color--neutral-dark);
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform 180ms ease;
}

.pcse-post-toc__details[open] .pcse-post-toc__icon {
  transform: rotate(225deg);
}

.pcse-post-toc__body {
  padding: 0 1.25rem 0.8rem;
  border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 24%, transparent);
}

.pcse-post-toc__list {
  display: grid;
  gap: 0.2rem;
  margin: 0;
  padding: 0.5rem 0 0;
  list-style: none;
}

.pcse-post-toc__item {
  margin: 0;
}

.pcse-post-toc__item.is-level-3 {
  padding-left: 1rem;
}

.pcse-post-toc__item a {
  display: block;
  color: var(--wp--preset--color--neutral-text);
  text-decoration: none;
  font-size: 0.95rem;
  line-height: 1.28;
}

.pcse-post-toc__item a:hover,
.pcse-post-toc__item a:focus-visible {
  color: var(--wp--preset--color--primary);
  text-decoration: none;
}

.pcse-post-related {
  padding-top: clamp(2.5rem, 5vw, 4rem);
}

.pcse-post-related__inner {
  display: grid;
  gap: 1.5rem;
  padding-top: clamp(2rem, 4vw, 3rem);
  border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 28%, transparent);
}

.pcse-post-related__title {
  margin: 0;
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: clamp(1.85rem, 3vw, 2.6rem);
  font-weight: 800;
  letter-spacing: -0.04em;
}

.pcse-post-related__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
}

.pcse-post-related-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 16%, transparent);
  border-radius: calc(var(--wp--custom--radius--md) + 0.25rem);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: 0 18px 36px color-mix(in srgb, var(--wp--preset--color--neutral-dark) 6%, transparent);
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.pcse-post-related-card:hover,
.pcse-post-related-card:focus-within {
  transform: translateY(-4px);
  box-shadow: 0 24px 52px color-mix(in srgb, var(--wp--preset--color--neutral-dark) 14%, transparent);
  border-color: color-mix(in srgb, var(--wp--preset--color--primary) 14%, var(--wp--preset--color--outline-variant));
}

.pcse-post-related-card__media {
  overflow: hidden;
  aspect-ratio: 16 / 10;
  background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest)) 0%, color-mix(in srgb, var(--wp--preset--color--primary-container) 30%, var(--wp--preset--color--surface-container-lowest)) 100%);
}

.pcse-post-related-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 320ms ease;
}

.pcse-post-related-card:hover .pcse-post-related-card__image,
.pcse-post-related-card:focus-within .pcse-post-related-card__image {
  transform: scale(1.06);
}

.pcse-post-related-card__image--placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest)) 0%, color-mix(in srgb, var(--wp--preset--color--primary-container) 30%, var(--wp--preset--color--surface-container-lowest)) 100%);
}

.pcse-post-related-card__body {
  display: grid;
  gap: 0.9rem;
  padding: 1.35rem;
}

.pcse-post-related-card__heading,
.pcse-post-related-card__excerpt {
  margin: 0;
}

.pcse-post-related-card__heading {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1.2;
}

.pcse-post-related-card__link {
  color: inherit;
  text-decoration: none;
}

.pcse-post-related-card__link::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

.pcse-post-related-card__link-label {
  position: relative;
  z-index: 2;
  text-decoration: none;
}

.pcse-post-related-card__link:hover .pcse-post-related-card__link-label,
.pcse-post-related-card__link:focus-visible .pcse-post-related-card__link-label {
  color: var(--wp--preset--color--primary);
}

.pcse-post-related-card__excerpt {
  color: var(--wp--preset--color--neutral-text);
  font-size: 0.96rem;
  line-height: 1.65;
}

body.single-solution {
  --pcse-solution-shell-max: 1280px;
  --pcse-solution-content-width: 848px;
  --pcse-solution-sidebar-width: 320px;
  --pcse-solution-grid-gap: clamp(2rem, 4vw, 4rem);
  --pcse-solution-green: var(--wp--preset--color--secondary);
  --pcse-solution-green-soft: color-mix(in srgb, var(--wp--preset--color--secondary) 8%, var(--wp--preset--color--surface-container-lowest));
  --pcse-solution-red: var(--wp--custom--color--danger);
  --pcse-solution-red-soft: color-mix(in srgb, var(--wp--custom--color--danger) 8%, var(--wp--preset--color--surface-container-lowest));
}

body.single-solution .wp-site-blocks,
.wp-block-group.pcse-single-main.pcse-solution-main {
  overflow: visible;
}

.wp-block-group.pcse-solution-wrap.pcse-section {
  padding-top: calc(var(--pcse-admin-bar-offset, 0px) + 6rem);
  background: var(--wp--preset--color--surface);
}

.pcse-solution-shell {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-solution-shell-max));
  max-width: var(--pcse-solution-shell-max);
  margin-inline: auto;
  padding-inline: 0;
  box-sizing: border-box;
}

.pcse-solution-layout {
  display: grid;
  grid-template-columns: minmax(0, var(--pcse-solution-content-width)) minmax(280px, var(--pcse-solution-sidebar-width));
  gap: var(--pcse-solution-grid-gap);
  align-items: stretch;
  justify-content: space-between;
}

.pcse-solution-layout.is-without-sidebar {
  grid-template-columns: minmax(0, var(--pcse-solution-content-width));
  justify-content: center;
}

.pcse-solution-layout__content {
  min-width: 0;
  width: 100%;
  max-width: var(--pcse-solution-content-width);
}

.pcse-solution-layout__sidebar {
  align-self: stretch;
  min-width: 0;
  width: 100%;
  max-width: var(--pcse-solution-sidebar-width);
}

.pcse-solution-hero {
  display: grid;
  gap: 1.75rem;
}

.pcse-solution-hero__copy {
  display: grid;
  gap: 1rem;
}

.pcse-solution-hero__title,
.pcse-solution-hero__excerpt,
.pcse-solution-section__title,
.pcse-solution-feature-card__title,
.pcse-solution-pricing-card__title,
.pcse-solution-offer-card__value,
.pcse-solution-list-panel__title,
.pcse-solution-sidebar__title,
.pcse-solution-alternative-card__title {
  margin: 0;
}

.pcse-solution-hero__title {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 3rem;
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: 0;
  text-wrap: balance;
}

.pcse-solution-hero__excerpt {
  color: var(--wp--preset--color--neutral-text);
  font-size: 1.12rem;
  line-height: 1.7;
}

.pcse-solution-hero__excerpt > * {
  margin: 0;
}

.pcse-solution-hero__media {
  overflow: hidden;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest)) 0%, color-mix(in srgb, var(--wp--preset--color--primary-container) 30%, var(--wp--preset--color--surface-container-lowest)) 100%);
}

.pcse-solution-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pcse-solution-section-nav {
  margin-top: 2rem;
}

.pcse-solution-layout__content > .pcse-solution-section-nav {
  padding-bottom: 0.9rem;
  border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 48%, transparent);
  background: var(--wp--preset--color--surface);
}

.pcse-solution-section-nav__list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.15rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pcse-solution-section-nav__item {
  margin: 0;
}

.pcse-solution-section-nav__item a {
  display: block;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--wp--preset--color--neutral-text);
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
}

.pcse-solution-section-nav__item a:hover,
.pcse-solution-section-nav__item a:focus-visible {
  border-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--primary);
}

.pcse-solution-sections {
  display: grid;
  gap: 3rem;
  margin-top: 3rem;
}

.pcse-solution-section {
  display: grid;
  gap: 1.25rem;
  scroll-margin-top: 8rem;
}

.pcse-solution-section__title {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.75rem;
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: 0;
}

.pcse-solution-description__body {
  padding: 2rem;
  border-radius: 0;
  background: var(--wp--preset--color--surface-container-low);
  color: var(--wp--preset--color--neutral-text);
}

.pcse-solution-description__body > *:first-child {
  margin-top: 0;
}

.pcse-solution-description__body > *:last-child {
  margin-bottom: 0;
}

.pcse-solution-features__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.pcse-solution-feature-card {
  display: grid;
  gap: 0.85rem;
  align-content: start;
  padding: 1.4rem;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 45%, transparent);
  border-radius: 0;
  background: var(--wp--preset--color--surface-container-lowest);
}

.pcse-solution-feature-card__icon {
  width: 3.5rem;
  height: 3.5rem;
}

.pcse-solution-feature-card__icon-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pcse-solution-feature-card__title {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.08rem;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0;
}

.pcse-solution-feature-card__description {
  margin: 0;
  color: var(--wp--preset--color--neutral-text);
  font-size: 0.96rem;
  line-height: 1.65;
}

.pcse-solution-pros-cons__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.pcse-solution-list-panel {
  display: grid;
  gap: 1rem;
  align-content: start;
  padding: 1.5rem;
  border-radius: 0;
}

.pcse-solution-list-panel--pros {
  background: var(--pcse-solution-green-soft);
}

.pcse-solution-list-panel--cons {
  background: var(--pcse-solution-red-soft);
}

.pcse-solution-list-panel__title {
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
}

.pcse-solution-list-panel--pros .pcse-solution-list-panel__title {
  color: var(--pcse-solution-green);
}

.pcse-solution-list-panel--cons .pcse-solution-list-panel__title {
  color: var(--pcse-solution-red);
}

.pcse-solution-list-panel__list {
  display: grid;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pcse-solution-list-panel__list li {
  position: relative;
  margin: 0;
  padding-left: 1.75rem;
  color: var(--wp--preset--color--neutral-dark);
  line-height: 1.55;
}

.pcse-solution-list-panel--pros .pcse-solution-list-panel__list li::before {
  content: "";
  position: absolute;
  top: 0.34rem;
  left: 0.2rem;
  width: 0.46rem;
  height: 0.8rem;
  border-right: 2px solid var(--pcse-solution-green);
  border-bottom: 2px solid var(--pcse-solution-green);
  transform: rotate(45deg);
}

.pcse-solution-list-panel--cons .pcse-solution-list-panel__list li::before,
.pcse-solution-list-panel--cons .pcse-solution-list-panel__list li::after {
  content: "";
  position: absolute;
  top: 0.75rem;
  left: 0.05rem;
  width: 0.9rem;
  height: 2px;
  background: var(--pcse-solution-red);
}

.pcse-solution-list-panel--cons .pcse-solution-list-panel__list li::before {
  transform: rotate(45deg);
}

.pcse-solution-list-panel--cons .pcse-solution-list-panel__list li::after {
  transform: rotate(-45deg);
}

.pcse-solution-offer-card {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 45%, transparent);
  border-radius: 0;
  background: color-mix(in srgb, var(--wp--preset--color--outline-variant) 45%, transparent);
}

.pcse-solution-offer-card__item {
  display: grid;
  gap: 0.45rem;
  padding: 1.35rem;
  background: var(--wp--preset--color--surface-container-lowest);
}

.pcse-solution-offer-card__label {
  color: var(--wp--preset--color--neutral-text);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.pcse-solution-offer-card__value {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.65rem;
  font-weight: 800;
  line-height: 1.15;
}

.pcse-solution-pricing__grid {
  display: grid;
  gap: 1rem;
}

.pcse-solution-pricing-card {
  display: grid;
  grid-template-columns: minmax(180px, 0.8fr) minmax(0, 1.2fr);
  gap: 0;
  align-items: start;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 45%, transparent);
  border-radius: 0;
  background: var(--wp--preset--color--surface-container-lowest);
}

.pcse-solution-pricing-card__main {
  display: grid;
  gap: 0.75rem;
  padding: 1.5rem;
}

.pcse-solution-pricing-card__title {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
}

.pcse-solution-pricing-card__price {
  margin: 0;
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.85rem;
  font-weight: 800;
  line-height: 1.1;
}

.pcse-solution-pricing-card__list {
  display: block;
  align-self: stretch;
  margin: 0;
  padding: 0 1.25rem;
  list-style: none;
  background: #f2eadf;
}

.pcse-solution-pricing-card__list li {
  position: relative;
  margin: 0;
  padding: 0.85rem 0 0.85rem 1.55rem;
  color: var(--wp--preset--color--neutral-dark);
  line-height: 1.55;
}

.pcse-solution-pricing-card__list li + li {
  border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 52%, transparent);
}

.pcse-solution-pricing-card__list li::before {
  content: "";
  position: absolute;
  top: 1.35rem;
  left: 0;
  width: 0.48rem;
  height: 0.48rem;
  border-top: 2px solid var(--wp--preset--color--primary);
  border-right: 2px solid var(--wp--preset--color--primary);
  transform: rotate(45deg);
}

.pcse-solution-faq__list {
  display: grid;
  gap: 1rem;
}

.pcse-solution-faq__item {
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 45%, transparent);
  border-radius: 0;
  background: var(--wp--preset--color--surface-container-lowest);
}

.pcse-solution-faq__question {
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: space-between;
  padding: 1.15rem 1.25rem;
  color: var(--wp--preset--color--neutral-dark);
  font-weight: 800;
  line-height: 1.35;
  cursor: pointer;
  list-style: none;
}

.pcse-solution-faq__question::-webkit-details-marker {
  display: none;
}

.pcse-solution-faq__icon {
  position: relative;
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
}

.pcse-solution-faq__icon::before,
.pcse-solution-faq__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--wp--preset--color--primary);
  transform: translateY(-50%);
}

.pcse-solution-faq__icon::after {
  transform: translateY(-50%) rotate(90deg);
}

.pcse-solution-faq__item[open] .pcse-solution-faq__icon::after {
  transform: translateY(-50%) rotate(0deg);
}

.pcse-solution-faq__answer {
  padding: 0 1.25rem 1.25rem;
  color: var(--wp--preset--color--neutral-text);
  line-height: 1.65;
}

.pcse-solution-faq__answer > *:first-child {
  margin-top: 0;
}

.pcse-solution-faq__answer > *:last-child {
  margin-bottom: 0;
}

.pcse-solution-alternatives__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.pcse-solution-alternative-card {
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 45%, transparent);
  border-radius: 0;
  background: var(--wp--preset--color--surface-container-lowest);
}

.pcse-solution-alternative-card__link {
  display: grid;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.pcse-solution-alternative-card__media {
  overflow: hidden;
  aspect-ratio: 16 / 10;
  background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest)) 0%, color-mix(in srgb, var(--wp--preset--color--primary-container) 30%, var(--wp--preset--color--surface-container-lowest)) 100%);
}

.pcse-solution-alternative-card__image,
.pcse-solution-alternative-card__placeholder {
  width: 100%;
  height: 100%;
}

.pcse-solution-alternative-card__image {
  object-fit: cover;
  transition: transform 220ms ease;
}

.pcse-solution-alternative-card__placeholder {
  display: block;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--secondary) 10%, transparent), color-mix(in srgb, var(--wp--custom--color--deep-ocean-mid) 16%, transparent)),
    var(--wp--preset--color--surface-container-low);
}

.pcse-solution-alternative-card:hover .pcse-solution-alternative-card__image,
.pcse-solution-alternative-card:focus-within .pcse-solution-alternative-card__image {
  transform: scale(1.04);
}

.pcse-solution-alternative-card__body {
  display: grid;
  gap: 0.7rem;
  align-content: start;
  padding: 1rem;
}

.pcse-solution-alternative-card__title {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0;
}

.pcse-solution-alternative-card__excerpt {
  margin: 0;
  color: var(--wp--preset--color--neutral-text);
  font-size: 0.92rem;
  line-height: 1.55;
}

.pcse-solution-sidebar {
  min-height: 100%;
  padding-left: 1.5rem;
}

.pcse-solution-offer-panel {
  display: grid;
  padding: 1.25rem;
  border-radius: 8px;
  background: var(--wp--preset--color--surface-container-low);
  color: var(--wp--preset--color--neutral-text);
}

.pcse-solution-offer-panel__header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.85rem;
  align-items: center;
}

.pcse-solution-offer-panel__logo {
  width: 4rem;
  height: 4rem;
  margin: 0;
  overflow: hidden;
  border-radius: 8px;
  background: var(--wp--preset--color--surface-container-lowest);
}

.pcse-solution-offer-panel__logo-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pcse-solution-offer-panel__intro {
  display: grid;
  gap: 0.2rem;
  min-width: 0;
}

.pcse-solution-offer-panel__header > .pcse-solution-offer-panel__intro:first-child {
  grid-column: 1 / -1;
}

.pcse-solution-offer-panel__title,
.pcse-solution-offer-panel__membership,
.pcse-solution-offer-panel__discount p,
.pcse-solution-offer-panel__validity p {
  margin: 0;
}

.pcse-solution-offer-panel__title,
.pcse-solution-offer-panel__discount p {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-weight: 800;
  line-height: 1.2;
}

.pcse-solution-offer-panel__title {
  font-size: 1rem;
}

.pcse-solution-offer-panel__membership {
  font-size: 0.86rem;
  line-height: 1.35;
}

.pcse-solution-offer-panel__separator {
  display: block;
  width: 80%;
  height: 1px;
  margin: 1rem auto;
  background: color-mix(in srgb, var(--wp--preset--color--outline-variant) 56%, transparent);
}

.pcse-solution-offer-panel__discount {
  padding: 1rem;
  border-radius: 8px;
  background: var(--wp--preset--color--surface-container-lowest);
  text-align: center;
}

.pcse-solution-offer-panel__discount p {
  font-size: 1.25rem;
}

.pcse-solution-offer-panel__validity {
  display: grid;
  gap: 0.35rem;
}

.pcse-solution-offer-panel__label {
  color: var(--wp--preset--color--neutral-dark);
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1.2;
}

.pcse-solution-offer-panel__validity p {
  font-size: 0.95rem;
  line-height: 1.5;
}

.pcse-solution-offer-panel__secret {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  width: 100%;
  margin-top: 1.1rem;
  padding: 0.75rem 0.9rem;
  box-sizing: border-box;
  border-radius: 8px;
  background: var(--pcse-solution-green);
  color: var(--wp--preset--color--white);
  font-size: 0.92rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
}

.pcse-solution-offer-panel__secret-icon {
  position: relative;
  flex: 0 0 auto;
  width: 0.82rem;
  height: 0.62rem;
  border: 2px solid currentColor;
  border-radius: 3px;
}

.pcse-solution-offer-panel__secret-icon::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: calc(100% - 1px);
  width: 0.52rem;
  height: 0.45rem;
  border: 2px solid currentColor;
  border-bottom: 0;
  border-radius: 0.5rem 0.5rem 0 0;
  transform: translateX(-50%);
}

.pcse-solution-offer-panel__secret-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: currentColor;
  transform: translate(-50%, -50%);
}

.pcse-solution-offer-panel__notice {
  margin: 0.75rem 0 0;
  font-size: 0.8rem;
  font-style: italic;
  line-height: 1.5;
  text-align: center;
}

@media (min-width: 961px) {
  .pcse-solution-layout__content > .pcse-solution-section-nav {
    position: sticky;
    top: calc(var(--pcse-admin-bar-offset, 0px) + 4.2rem);
    z-index: 10;
    margin-inline: -0.25rem;
    padding: 0.85rem 0.25rem 0.9rem;
  }

  .pcse-solution-offer-panel {
    position: sticky;
    top: calc(var(--pcse-admin-bar-offset, 0px) + 6rem);
  }
}

@media (max-width: 1024px) {
  body.single-solution {
    --pcse-solution-sidebar-width: 300px;
    --pcse-solution-grid-gap: 2rem;
  }
}

@media (max-width: 960px) {
  .wp-block-group.pcse-solution-wrap.pcse-section {
    padding-top: calc(var(--pcse-admin-bar-offset, 0px) + 5rem);
  }

  .pcse-solution-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .pcse-solution-layout__content,
  .pcse-solution-layout__sidebar {
    max-width: none;
  }

  .pcse-solution-sidebar {
    padding-left: 0;
  }
}

@media (max-width: 767px) {
  .pcse-solution-hero__title {
    font-size: 2.2rem;
  }

  .pcse-solution-hero__excerpt {
    font-size: 1rem;
  }

  .pcse-solution-section-nav__list {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 0.25rem;
    scrollbar-width: thin;
  }

  .pcse-solution-section-nav__item {
    flex: 0 0 auto;
  }

  .pcse-solution-description__body {
    padding: 1.25rem;
  }

  .pcse-solution-features__grid,
  .pcse-solution-pros-cons__grid,
  .pcse-solution-offer-card,
  .pcse-solution-pricing-card,
  .pcse-solution-alternatives__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.wp-block-group.pcse-author-box {
  margin-top: var(--wp--preset--spacing--2xl);
  padding: var(--wp--preset--spacing--lg);
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 28%, transparent);
  border-radius: var(--wp--custom--radius--md);
  background: var(--wp--preset--color--surface-container-low);
}

.wp-block-group.pcse-author-box > * + * {
  margin-top: var(--wp--preset--spacing--sm);
}

.wp-block-columns.pcse-single-layout {
  gap: var(--wp--preset--spacing--2xl);
}

.wp-block-column.pcse-single-layout__content {
  flex-basis: 68%;
}

.wp-block-column.pcse-single-layout__sidebar {
  flex-basis: 32%;
}

.wp-block-group.pcse-single-related {
  margin-top: var(--wp--preset--spacing--2xl);
}

.pcse-post-archive {
  --pcse-post-shell-max: 1280px;
  display: block;
  padding-bottom: clamp(3rem, 6vw, 5rem);
  background:
    linear-gradient(
      180deg,
      var(--wp--preset--color--surface) 0%,
      var(--wp--preset--color--surface-container-lowest) 18rem,
      var(--wp--preset--color--surface-container-lowest) 100%
    );
}

.pcse-post-archive__hero-wrap {
  padding-top: calc(var(--pcse-admin-bar-offset) + var(--pcse-fixed-header-clearance));
}

.pcse-post-archive__hero-intro {
  display: grid;
  gap: 0;
  margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

.pcse-post-archive__breadcrumbs-shell {
  margin-bottom: var(--wp--preset--spacing--lg);
}

.pcse-post-archive__breadcrumbs-shell .pcse-breadcrumbs {
  margin: 0;
}

.pcse-post-archive__screen-title {
  max-width: 50%;
  margin: 0;
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: 0;
  text-wrap: balance;
}

.pcse-post-archive__description {
  max-width: 46rem;
  margin: clamp(0.9rem, 2vw, 1.35rem) 0 0;
  color: var(--wp--preset--color--neutral-text);
  font-size: 1rem;
  line-height: 1.65;
}

.pcse-post-archive__description > * {
  margin: 0;
}

.pcse-post-archive__description > * + * {
  margin-top: 0.75rem;
}

.pcse-post-archive-hero {
  width: 100%;
}

.pcse-post-archive-hero__shell,
.pcse-post-archive-empty-hero__shell {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-post-shell-max));
  max-width: var(--pcse-post-shell-max);
  margin-inline: auto;
  padding-inline: 0;
  box-sizing: border-box;
}

.pcse-post-archive-hero__shell {
  width: min(calc(100% - (2 * var(--pcse-root-gutter))), var(--pcse-post-shell-max));
  max-width: var(--pcse-post-shell-max);
}

.pcse-post-archive-hero__article {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(24rem, 1.04fr);
  min-height: clamp(26rem, 40vw, 34rem);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: 0 28px 64px color-mix(in srgb, var(--wp--preset--color--neutral-dark) 12%, transparent);
  overflow: hidden;
}

.pcse-post-archive-hero__media {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest)) 0%, color-mix(in srgb, var(--wp--preset--color--primary-container) 34%, var(--wp--preset--color--surface-container-lowest)) 100%);
}

.pcse-post-archive-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb, var(--wp--preset--color--white) 0%, transparent) 46%,
      color-mix(in srgb, var(--wp--preset--color--white) 50%, transparent) 66%,
      color-mix(in srgb, var(--wp--preset--color--white) 88%, transparent) 84%,
      var(--wp--preset--color--surface-container-lowest) 100%
    );
  pointer-events: none;
}

.pcse-post-archive-hero__media-link {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.pcse-post-archive-hero__image,
.pcse-post-archive-hero__image--placeholder {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100%;
  object-fit: cover;
}

.pcse-post-archive-hero__image--placeholder {
  background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest)) 0%, color-mix(in srgb, var(--wp--preset--color--primary-container) 34%, var(--wp--preset--color--surface-container-lowest)) 100%);
}

.pcse-post-archive-hero__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: clamp(1.1rem, 2vw, 1.75rem);
  padding: clamp(2rem, 4vw, 3.5rem) clamp(1.75rem, 4vw, 4rem);
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--wp--preset--color--white) 94%, transparent) 0%,
      var(--wp--preset--color--surface-container-lowest) 100%
    );
}

.pcse-post-archive-hero__label,
.pcse-post-archive-empty-hero__label {
  margin: 0;
  color: var(--wp--preset--color--secondary);
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.pcse-post-archive-hero__title {
  margin: 0;
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: clamp(2.5rem, 4vw, 3.5rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-wrap: balance;
}

.pcse-post-archive-hero__title-link {
  color: inherit;
  text-decoration: none;
}

.pcse-post-archive-hero__title-link:hover,
.pcse-post-archive-hero__title-link:focus-visible {
  color: var(--wp--preset--color--primary-container);
}

.pcse-post-archive-hero__excerpt,
.pcse-post-archive-empty-hero__description {
  max-width: 34rem;
  margin: 0;
  color: var(--wp--preset--color--neutral-text);
  font-size: clamp(1rem, 1.3vw, 1.35rem);
  line-height: 1.65;
}

.pcse-post-archive-hero__footer {
  display: flex;
  align-items: flex-end;
  gap: 1.25rem;
  margin-top: 0.35rem;
}

.pcse-post-archive-hero__author {
  display: grid;
  gap: 0.25rem;
  flex: 1 1 auto;
  min-width: 0;
}

.pcse-post-archive-hero__author > p:empty,
.pcse-post-archive-hero__author-meta > p:empty {
  display: none;
}

.pcse-post-archive-hero__author-name,
.pcse-post-archive-hero__author-title {
  display: block;
  margin: 0;
}

.pcse-post-archive-hero__author-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 0.9rem;
  align-items: center;
}

.pcse-post-archive-hero__author-name {
  color: var(--wp--preset--color--neutral-dark);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;
}

.pcse-post-archive-hero__author-title,
.pcse-post-archive-hero__date {
  color: color-mix(in srgb, var(--wp--preset--color--neutral-text) 88%, var(--wp--preset--color--white));
  font-size: 0.94rem;
  line-height: 1.45;
}

.pcse-post-archive-hero__author-meta > * + * {
  position: relative;
  padding-left: 0.9rem;
}

.pcse-post-archive-hero__author-meta > * + *::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.26rem;
  height: 0.26rem;
  border-radius: 50%;
  background: currentColor;
  transform: translateY(-50%);
  opacity: 0.6;
}

.pcse-post-archive-hero__date {
  font-weight: 600;
  white-space: nowrap;
}

.pcse-post-archive-hero__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  margin-left: auto;
  width: 3.4rem;
  height: 3.4rem;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 42%, transparent);
  border-radius: 50%;
  background: color-mix(in srgb, var(--wp--preset--color--white) 92%, transparent);
  color: var(--wp--preset--color--neutral-dark);
  font-size: 1.5rem;
  line-height: 1;
  text-decoration: none;
}

.pcse-post-archive-hero__arrow:hover,
.pcse-post-archive-hero__arrow:focus-visible {
  border-color: transparent;
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  transform: translateX(2px);
}

.pcse-post-archive-empty-hero {
  padding-bottom: 0.5rem;
}

.pcse-post-archive-empty-hero__shell {
  display: grid;
  gap: 1rem;
  padding: clamp(2rem, 4vw, 3rem);
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 18%, transparent);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: 0 18px 42px color-mix(in srgb, var(--wp--preset--color--neutral-dark) 8%, transparent);
}

.pcse-post-archive__body {
  display: grid;
  gap: clamp(1.25rem, 2vw, 1.75rem);
  padding-top: clamp(1.5rem, 3vw, 2.25rem);
}

.pcse-post-archive__filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 1.5rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 30%, transparent);
}

.pcse-post-archive__filters-label {
  margin: 0;
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 0.95rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pcse-post-archive__filters-list {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.pcse-post-archive__filter-link {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  padding: 0.55rem 1rem;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 40%, transparent);
  background: var(--wp--preset--color--surface-container-lowest);
  color: var(--wp--preset--color--neutral-dark);
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  transition:
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

.pcse-post-archive__filter-link:hover,
.pcse-post-archive__filter-link:focus-visible,
.pcse-post-archive__filter-link.is-active {
  border-color: var(--wp--preset--color--primary);
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  transform: translateY(-1px);
}

.pcse-query-results {
  display: grid;
  gap: 1.5rem;
  transition: opacity 180ms ease;
}

.pcse-query-results.is-loading {
  opacity: 0.5;
}

.pcse-post-archive__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(0.75rem, 1.4vw, 1rem);
}

.pcse-post-archive-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 16%, transparent);
  border-radius: calc(var(--wp--custom--radius--md) + 0.25rem);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: 0 18px 36px color-mix(in srgb, var(--wp--preset--color--neutral-dark) 6%, transparent);
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.pcse-post-archive-card:hover,
.pcse-post-archive-card:focus-within {
  transform: translateY(-4px);
  box-shadow: 0 24px 52px color-mix(in srgb, var(--wp--preset--color--neutral-dark) 14%, transparent);
  border-color: color-mix(in srgb, var(--wp--preset--color--primary) 14%, var(--wp--preset--color--outline-variant));
}

.pcse-post-archive-card__media {
  overflow: hidden;
  aspect-ratio: 5 / 4;
  background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest)) 0%, color-mix(in srgb, var(--wp--preset--color--primary-container) 30%, var(--wp--preset--color--surface-container-lowest)) 100%);
}

.pcse-post-archive-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 320ms ease;
}

.pcse-post-archive-card:hover .pcse-post-archive-card__image,
.pcse-post-archive-card:focus-within .pcse-post-archive-card__image {
  transform: scale(1.06);
}

.pcse-post-archive-card__image--placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--primary-container) 15%, var(--wp--preset--color--surface-container-lowest)) 0%, color-mix(in srgb, var(--wp--preset--color--primary-container) 30%, var(--wp--preset--color--surface-container-lowest)) 100%);
}

.pcse-post-archive-card__body {
  display: grid;
  gap: 0.38rem;
  height: 100%;
  padding: 0.82rem 0.85rem 0.8rem;
}

.pcse-post-archive-card__category,
.pcse-post-archive-card__title,
.pcse-post-archive-card__excerpt,
.pcse-post-archive-card__date {
  margin: 0;
}

.pcse-post-archive-card__category {
  color: var(--wp--preset--color--primary);
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.pcse-post-archive-card__title {
  color: var(--wp--preset--color--neutral-dark);
  font-family: var(--wp--preset--font-family--display);
  font-size: 1.02rem;
  font-weight: 800;
  line-height: 1.12;
}

.pcse-post-archive-card__title-link {
  color: inherit;
  text-decoration: none;
}

.pcse-post-archive-card__title-link::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

.pcse-post-archive-card__title-label {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.pcse-post-archive-card__title-link:hover .pcse-post-archive-card__title-label,
.pcse-post-archive-card__title-link:focus-visible .pcse-post-archive-card__title-label {
  color: var(--wp--preset--color--primary);
}

.pcse-post-archive-card__excerpt {
  color: var(--wp--preset--color--neutral-text);
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: 0.86rem;
  line-height: 1.45;
}

.pcse-post-archive-card__date {
  margin-top: auto;
  color: color-mix(in srgb, var(--wp--preset--color--neutral-text) 88%, var(--wp--preset--color--white));
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.3;
}

.pcse-post-archive__empty {
  display: grid;
  gap: 0.75rem;
  padding: clamp(1.75rem, 3vw, 2.5rem);
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 20%, transparent);
  border-radius: var(--wp--custom--radius--md);
  background: var(--wp--preset--color--surface-container-lowest);
}

.pcse-post-archive__empty > * {
  margin: 0;
}

.pcse-post-archive__pagination .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.pcse-post-archive__pagination .page-numbers a,
.pcse-post-archive__pagination .page-numbers span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.75rem;
  min-height: 2.75rem;
  padding: 0.45rem 0.85rem;
  border-radius: var(--wp--custom--radius--pill);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--sm);
  color: var(--wp--preset--color--neutral-dark);
  text-decoration: none;
}

.pcse-post-archive__pagination .page-numbers .current,
.pcse-post-archive__pagination .page-numbers a:hover,
.pcse-post-archive__pagination .page-numbers a:focus-visible {
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
}

.wp-block-group.pcse-related-post__body {
  padding: var(--wp--preset--spacing--md);
}

.wp-block-group.pcse-related-post__body > * {
  margin-block: 0;
}

.wp-block-group.pcse-post-grid .wp-block-post-template,
.wp-block-group.pcse-query-results .wp-block-post-template {
  display: grid;
  gap: var(--wp--preset--spacing--xl);
}

.wp-block-group.pcse-post-grid .wp-block-post,
.wp-block-group.pcse-query-results .wp-block-post {
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 25%, transparent);
  border-radius: var(--wp--custom--radius--md);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--sm);
}

.wp-block-group.pcse-post-grid .wp-block-post-featured-image img,
.wp-block-group.pcse-query-results .wp-block-post-featured-image img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.wp-block-post-terms {
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.wp-block-post-excerpt__excerpt {
  color: var(--wp--preset--color--neutral-text);
}

.wp-block-query-pagination {
  gap: 0.75rem;
}

.wp-block-query-pagination a,
.wp-block-query-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  min-height: 2.5rem;
  padding: 0.35rem 0.7rem;
  border-radius: var(--wp--custom--radius--pill);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--sm);
  text-decoration: none;
}

.wp-block-heading.pcse-404-suggestions {
  margin-top: var(--wp--preset--spacing--2xl);
}

.wp-block-group.pcse-testimonial {
  padding: var(--wp--preset--spacing--xl);
}

.wp-block-column.pcse-testimonial__media {
  flex-basis: 30%;
}

.wp-block-column.pcse-testimonial__content {
  flex-basis: 70%;
}

.wp-block-group.is-style-card {
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 28%, transparent);
  border-radius: var(--wp--custom--radius--md);
  background: var(--wp--preset--color--surface-container-lowest);
}

.wp-block-group.is-style-card-shadow {
  border-radius: var(--wp--custom--radius--md);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--md);
}

.wp-block-group.is-style-highlighted {
  border-radius: var(--wp--custom--radius--md);
  background: color-mix(in srgb, var(--wp--preset--color--accent) 12%, var(--wp--preset--color--surface-container-lowest));
}

.wp-block-group.pcse-faq-accordion {
  display: grid;
  justify-items: center;
  width: min(100%, var(--pcse-content-width));
  gap: var(--wp--preset--spacing--md);
  margin-inline: auto;
}

.wp-block-group.pcse-faq-accordion > * {
  margin-block-start: 0;
}

.wp-block-group.pcse-faq-accordion > .wp-block-heading {
  width: 100%;
  text-align: center;
}

.wp-block-details.pcse-faq-accordion__item {
  box-sizing: border-box;
  width: 100%;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 70%, transparent);
  border-radius: var(--wp--custom--radius--md);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--sm);
  transition:
    border-color var(--wp--custom--duration--base) ease-in-out,
    box-shadow var(--wp--custom--duration--base) ease-in-out;
}

.wp-block-details.pcse-faq-accordion__item[open] {
  border-color: color-mix(in srgb, var(--wp--preset--color--primary) 35%, var(--wp--preset--color--outline-variant));
  box-shadow: var(--wp--preset--shadow--md);
}

.wp-block-details.pcse-faq-accordion__item summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--wp--preset--spacing--md);
  align-items: center;
  padding: var(--wp--preset--spacing--md) var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--display);
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
  cursor: pointer;
  list-style: none;
}

.wp-block-details.pcse-faq-accordion__item summary:focus-visible {
  outline: 2px solid var(--wp--preset--color--primary-container);
  outline-offset: -2px;
}

.wp-block-details.pcse-faq-accordion__item summary::-webkit-details-marker {
  display: none;
}

.wp-block-details.pcse-faq-accordion__item summary::after {
  content: "";
  flex: 0 0 auto;
  width: var(--wp--preset--spacing--md);
  height: var(--wp--preset--spacing--md);
  background:
    linear-gradient(currentColor, currentColor) center / 100% 2px no-repeat,
    linear-gradient(currentColor, currentColor) center / 2px 100% no-repeat;
  color: currentColor;
  transition: transform var(--wp--custom--duration--base) ease-in-out;
}

.wp-block-details.pcse-faq-accordion__item[open] summary::after {
  transform: rotate(180deg);
  background: linear-gradient(currentColor, currentColor) center / 100% 2px no-repeat;
}

.wp-block-details.pcse-faq-accordion__item > :not(summary) {
  margin: 0;
  padding: var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--surface-container-lowest);
  color: var(--wp--preset--color--neutral-text);
  line-height: 1.65;
}

.wp-block-details.pcse-faq-accordion__item > :not(summary) + :not(summary) {
  padding-top: 0;
}

@supports selector(::details-content) and (interpolate-size: allow-keywords) {
  .wp-block-details.pcse-faq-accordion__item {
    interpolate-size: allow-keywords;
  }

  .wp-block-details.pcse-faq-accordion__item::details-content {
    height: 0;
    overflow: clip;
    transition:
      height var(--wp--custom--duration--slow) ease-in-out,
      content-visibility var(--wp--custom--duration--slow) allow-discrete;
  }

  .wp-block-details.pcse-faq-accordion__item[open]::details-content {
    height: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .wp-block-details.pcse-faq-accordion__item,
  .wp-block-details.pcse-faq-accordion__item summary::after {
    transition: none;
  }

  .wp-block-details.pcse-faq-accordion__item::details-content {
    transition: none;
  }
}

.wp-block-button.is-style-ghost .wp-block-button__link {
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 40%, transparent);
  background: transparent;
  color: var(--wp--preset--color--primary);
  box-shadow: none;
}

.wp-block-image.is-style-framed img {
  padding: 0.8rem;
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 30%, transparent);
  border-radius: calc(var(--wp--custom--radius--md) + 0.2rem);
  background: var(--wp--preset--color--surface-container-lowest);
  box-shadow: var(--wp--preset--shadow--sm);
}

@media (max-width: 767px) {
  .wp-block-group.pcse-section {
    padding-block: clamp(2.5rem, 9vw, 3.25rem);
  }

  /* padding-block ci-dessus ecraserait le degagement du header fixe. */
  .wp-block-group.pcse-single-intro {
    padding-top: calc(var(--pcse-admin-bar-offset) + var(--pcse-fixed-header-clearance));
  }

  .wp-block-group.pcse-site-header__shell {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    gap: var(--wp--preset--spacing--xs);
    padding: 0.875rem 0;
  }

  nav.wp-block-navigation.pcse-site-header__nav {
    order: 1;
    justify-self: start;
    margin-left: 0;
  }

  .wp-block-group.pcse-site-header__brand {
    order: 2;
    justify-self: center;
  }

  .wp-block-group.pcse-site-header__tools {
    display: contents;
  }

  .wp-block-group.pcse-site-header__tools .wp-block-woocommerce-customer-account {
    order: 3;
  }

  .wp-block-group.pcse-site-header__tools .wp-block-woocommerce-mini-cart {
    order: 4;
  }

  nav.wp-block-navigation.pcse-site-header__nav .wp-block-navigation__responsive-container-open {
    width: auto;
    height: auto;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .wp-block-heading.pcse-display {
    font-size: clamp(2.9rem, 11vw, 4rem);
    line-height: 1;
  }

  .wp-block-group.pcse-hero {
    padding: 7rem 0 4rem;
    gap: 2.5rem;
  }

  .wp-block-buttons.pcse-hero__actions {
    width: 100%;
  }

  .wp-block-buttons.pcse-hero__actions .wp-block-button,
  .wp-block-buttons.pcse-cta__actions .wp-block-button {
    flex: 1 1 100%;
  }

  .wp-block-buttons.pcse-hero__actions .wp-block-button__link {
    width: 100%;
    justify-content: center;
  }

  .wp-block-image.pcse-hero__media img {
    height: auto;
    aspect-ratio: 1.02;
  }

  .wp-block-group.pcse-hero__media-wrap {
    max-width: none;
  }

  .wp-block-group.pcse-media-badge {
    display: none;
  }

  .wp-block-group.pcse-stats-grid {
    gap: 1.5rem 1rem;
  }

  .wp-block-group.pcse-section.pcse-trust-band {
    height: auto;
    min-height: 240px;
    padding-block: 2rem;
  }

  .wp-block-group.pcse-pricing-card {
    padding: 1.5rem;
  }

  .wp-block-buttons.pcse-cta__actions {
    width: 100%;
    flex-wrap: wrap;
  }

  .wp-block-group.pcse-dark-callout,
  .wp-block-group.pcse-testimonial,
  .wp-block-group.pcse-author-box,
  .wp-block-group.pcse-sidebar .wp-block-group.pcse-sidebar-card,
  .wp-block-group.pcse-offer-card__body,
  .wp-block-group.pcse-post-card__body,
  .wp-block-group.pcse-card-article__body {
    padding: 1.25rem;
  }

  .wp-block-group.pcse-editorial,
  .wp-block-group.pcse-cta-layout,
  .wp-block-columns.pcse-single-layout,
  .wp-block-group.pcse-site-footer__grid {
    gap: 1.5rem;
  }

  .wp-block-group.pcse-dark-callout::after {
    display: none;
  }

  .wp-block-group.pcse-site-footer__bottom {
    align-items: flex-start;
  }

  .wp-block-navigation.pcse-site-footer__legal-links-menu .wp-block-navigation__container {
    justify-content: flex-start;
  }

  .wp-block-group.pcse-site-footer {
    padding: 4rem var(--pcse-root-gutter) 2rem;
  }

  .wp-block-post-content.pcse-prose :is(h1, h2, h3, h4, h5, h6, p, li, a) {
    overflow-wrap: anywhere;
  }
}

@media (max-width: 782px) {
  /*
   * pcse-single-intro garde le degagement du header fixe, comme .pcse-post-hero
   * (Single Article) : ces intros portent le fil d'Ariane, dont la hauteur doit
   * rester identique sur tous les modeles. Le supplement 2xl reste utile aux
   * intros qui commencent directement par un titre.
   */
  .wp-block-group.pcse-page-intro,
  .wp-block-group.pcse-archive-intro,
  .wp-block-group.pcse-page-content:first-child {
    padding-top: calc(var(--pcse-fixed-header-clearance) + var(--wp--preset--spacing--2xl));
  }
}

@media (max-width: 1024px) {
  .wp-block-group.pcse-site-header__shell {
    gap: var(--wp--preset--spacing--xs);
  }

  nav.wp-block-navigation.pcse-site-header__nav {
    margin-left: auto;
  }

  nav.wp-block-navigation.pcse-site-header__nav .wp-block-navigation__responsive-container-open {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--wp--preset--spacing--2xl);
    height: var(--wp--preset--spacing--2xl);
    padding: 0;
    border: 1px solid color-mix(in srgb, var(--wp--preset--color--outline-variant) 70%, transparent);
    background: var(--wp--preset--color--surface-container-lowest);
    color: var(--wp--preset--color--primary);
    box-shadow: none;
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none;
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed;
    inset: 0;
    display: flex;
    flex-direction: column;
    padding: var(--wp--preset--spacing--md) var(--pcse-root-gutter) var(--wp--preset--spacing--xl);
    background: var(--wp--preset--color--surface-container-lowest);
    color: var(--wp--preset--color--neutral-dark);
    overflow: auto;
    z-index: 100000;
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close {
    width: 100%;
    max-width: none;
    margin: 0;
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
    position: relative;
    margin: 0;
    box-sizing: border-box;
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--wp--preset--spacing--2xl);
    height: var(--wp--preset--spacing--2xl);
    padding: 0;
    color: var(--wp--preset--color--primary);
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: flex-start;
    padding-top: calc(var(--wp--preset--spacing--xl) + 24px);
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,
  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list,
  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    gap: var(--wp--preset--spacing--xs);
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
    width: 100%;
    padding: 0;
    white-space: normal;
    font-size: var(--wp--preset--font-size--md);
    line-height: 1.35;
  }
}

@media (max-width: 767px) {
  nav.wp-block-navigation.pcse-site-header__nav {
    margin-left: 0;
  }

  nav.wp-block-navigation.pcse-site-header__nav .wp-block-navigation__responsive-container-open {
    width: auto;
    height: auto;
    border: 0;
    border-radius: 0;
    background: transparent;
  }
}

html.has-modal-open .wp-block-group.pcse-site-header {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

@media (min-width: 1025px) {
  nav.wp-block-navigation.pcse-site-header__nav {
    flex: 1 1 auto;
    justify-content: center;
    margin-inline: auto;
  }

  nav.wp-block-navigation.pcse-site-header__nav .wp-block-navigation__responsive-container-open {
    display: none;
  }

  nav.wp-block-navigation.pcse-site-header__nav > .wp-block-navigation__container {
    justify-content: center;
    gap: var(--wp--preset--spacing--xl);
  }
}

@media (min-width: 768px) {
  .wp-block-group.pcse-stats-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .wp-block-group.pcse-offers-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .wp-block-group.pcse-hero__grid,
  .wp-block-group.pcse-editorial,
  .wp-block-group.pcse-cta-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .wp-block-group.pcse-pricing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .wp-block-buttons.pcse-cta__actions {
    justify-content: flex-end;
  }

  .wp-block-buttons.pcse-cta__actions .wp-block-button {
    flex: 0 0 auto;
  }

  .wp-block-group.pcse-post-grid .wp-block-post-template,
  .wp-block-group.pcse-query-results .wp-block-post-template {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .wp-block-group.pcse-media-badge {
    display: block;
  }

  .wp-block-group.pcse-offers-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2rem;
  }

  .wp-block-group.pcse-pricing-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .wp-block-group.pcse-pricing-card {
    min-height: 31rem;
  }

  .wp-block-group.pcse-pricing-card.pcse-pricing-card--featured {
    transform: translateY(-0.75rem);
    min-height: 32rem;
  }

  .wp-block-buttons.pcse-cta__actions {
    justify-content: flex-end;
  }

  .wp-block-group.pcse-post-grid .wp-block-post-template,
  .wp-block-group.pcse-query-results .wp-block-post-template {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1440px) {
  .wp-block-group.pcse-section {
    padding-block: clamp(4.5rem, 7vw, 6rem);
  }

  /* padding-block ci-dessus ecraserait le degagement du header fixe. */
  .wp-block-group.pcse-single-intro {
    padding-top: calc(var(--pcse-admin-bar-offset) + var(--pcse-fixed-header-clearance));
  }
}

@media (max-width: 1024px) {
  body.single-post {
    --pcse-post-grid-gap: clamp(1.5rem, 3vw, 2rem);
    --pcse-post-sidebar-width: 320px;
  }

  .pcse-post-archive-hero__article {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 1fr);
  }

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

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

@media (min-width: 961px) {
  .wp-block-column.pcse-post-layout__sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: calc(5rem + 1rem);
    height: fit-content;
  }

  .pcse-post-toc {
    position: static;
    top: auto;
  }
}

@media (max-width: 960px) {
  .pcse-post-archive-hero__article {
    grid-template-columns: minmax(0, 1fr);
    min-height: auto;
  }

  .pcse-post-archive-hero__media {
    min-height: 22rem;
  }

  .pcse-post-archive-hero__media::after {
    background:
      linear-gradient(
        180deg,
        color-mix(in srgb, var(--wp--preset--color--white) 0%, transparent) 48%,
        color-mix(in srgb, var(--wp--preset--color--white) 72%, transparent) 82%,
        var(--wp--preset--color--surface-container-lowest) 100%
      );
  }

  .pcse-post-archive-hero__footer {
    align-items: flex-start;
  }

  .pcse-post-archive__filters {
    align-items: flex-start;
  }

  .pcse-post-archive__filters-list {
    width: 100%;
  }

  .pcse-post-hero {
    min-height: auto;
    padding-bottom: var(--wp--preset--spacing--xl);
  }

  .wp-block-columns.pcse-post-shell.pcse-post-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
  }

  .wp-block-column.pcse-post-layout__sidebar {
    order: -1;
    max-width: none;
  }

  .wp-block-column.pcse-post-layout__content {
    max-width: none;
  }

  .pcse-post-sidebar {
    position: static;
    top: auto;
  }

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

@media (max-width: 767px) {
  .pcse-post-archive__hero-wrap {
    padding-top: calc(var(--pcse-admin-bar-offset) + var(--pcse-fixed-header-clearance));
  }

  .pcse-post-archive__hero-intro {
    gap: 0.85rem;
    margin-bottom: 1.25rem;
  }

  .pcse-post-archive__screen-title {
    max-width: 100%;
    font-size: 2.5rem;
  }

  .pcse-post-archive-hero__media {
    min-height: 18rem;
  }

  .pcse-post-archive-hero__content {
    padding: 1.6rem 1.2rem 1.5rem;
  }

  .pcse-post-archive-hero__title {
    font-size: clamp(2.35rem, 11vw, 3.5rem);
  }

  .pcse-post-archive__body {
    gap: 1.25rem;
    padding-top: 1.25rem;
  }

  .pcse-post-archive__filters {
    gap: 0.9rem;
    padding-bottom: 1rem;
  }

  .pcse-post-archive__filters-list {
    gap: 0.6rem;
  }

  .pcse-post-archive__filter-link {
    min-height: 2.55rem;
    padding: 0.5rem 0.85rem;
    font-size: 0.9rem;
  }

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

  .pcse-post-archive__pagination .page-numbers {
    gap: 0.5rem;
  }

  .wp-block-group.pcse-post-content-wrap.pcse-section {
    padding-top: 0;
  }

  .pcse-post-hero__title {
    font-size: 3.75rem;
  }

  .pcse-post-hero__author {
    width: 100%;
  }
}

.wc-block-mini-cart .wc-block-cart-item__image > a + a,
.wc-block-mini-cart .wc-block-cart-item__image > a + img,
.wc-block-mini-cart .wc-block-cart-item__image > img + img,
.wc-block-mini-cart__drawer .wc-block-cart-item__image > a + a,
.wc-block-mini-cart__drawer .wc-block-cart-item__image > a + img,
.wc-block-mini-cart__drawer .wc-block-cart-item__image > img + img,
.wc-block-mini-cart__template-part .wc-block-cart-item__image > a + a,
.wc-block-mini-cart__template-part .wc-block-cart-item__image > a + img,
.wc-block-mini-cart__template-part .wc-block-cart-item__image > img + img {
  display: none !important;
}

/*
 * Titre du mini-panier (« Votre panier (articles : X) »). WooCommerce le rend en
 * <h2 class="wc-block-mini-cart__title"> avec « font-size: 2em » : dans le tiroir
 * etroit du mobile, le libelle et le compteur cassaient chacun sur deux lignes.
 * On borne la taille du titre et on rend le compteur plus discret (insecable).
 */
.wc-block-mini-cart__drawer .wc-block-mini-cart__title,
.wc-block-mini-cart__template-part .wc-block-mini-cart__title {
  flex-wrap: wrap;
  column-gap: 0.5rem;
  font-size: 1.5rem;
  line-height: 1.2;
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__title > *:last-child,
.wc-block-mini-cart__template-part .wc-block-mini-cart__title > *:last-child,
.wc-block-mini-cart__title .wp-block-woocommerce-mini-cart-title-items-counter-block {
  font-size: 0.7em;
  font-weight: 600;
  white-space: nowrap;
}

@media (max-width: 767px) {
  .wc-block-mini-cart__drawer .wc-block-mini-cart__title,
  .wc-block-mini-cart__template-part .wc-block-mini-cart__title {
    font-size: 1.3rem;
  }
}
