.wp-block-ai-foundry-section,
.wp-block-ai-foundry-card,
.wp-block-ai-foundry-container,
.wp-block-ai-foundry-motion-group {
  box-sizing: border-box;
}

.hp-block-section {
  --hp-section-padding-block: var(--wp--custom--section--space-default);
  --hp-section-padding-inline: var(--wp--custom--section--gutter-default, var(--wp--preset--spacing--md));
  --hp-section-content-width: min(
    var(--wp--custom--shell--content, var(--wp--style--global--content-size)),
    calc(100vw - (var(--hp-section-padding-inline) * 2))
  );
  --hp-section-wide-width: min(
    var(--wp--custom--shell--wide, var(--wp--style--global--wide-size)),
    calc(100vw - (var(--hp-section-padding-inline) * 2))
  );
  position: relative;
  padding-block: var(--hp-section-padding-block);
  padding-inline: var(--hp-section-padding-inline);
}

.hp-block-section--variant-hero-home,
.hp-block-section--variant-hero-subpage {
  --hp-section-padding-block: var(--wp--custom--section--space-hero);
}

.hp-block-section--variant-cta  { --hp-section-padding-block: var(--wp--custom--section--space-cta); }
.hp-block-section--space-none   { --hp-section-padding-block: 0; }
.hp-block-section--space-sm     { --hp-section-padding-block: var(--wp--preset--spacing--sm); }
.hp-block-section--space-md     { --hp-section-padding-block: var(--wp--preset--spacing--md); }
.hp-block-section--space-lg     { --hp-section-padding-block: var(--wp--custom--section--space-default); }
.hp-block-section--space-xl     { --hp-section-padding-block: var(--wp--preset--spacing--2xl); }
.hp-block-section--space-hero   { --hp-section-padding-block: var(--wp--custom--section--space-hero); }
.hp-block-section--space-cta    { --hp-section-padding-block: var(--wp--custom--section--space-cta); }

/* Apply WordPress block gap between direct children so the frontend matches
   the editor's visual spacing. --wp--style--block-gap is generated by WP from
   the theme.json blockGap setting; fall back to the xl spacing token. */
.hp-block-section > * + * {
  margin-block-start: var(--wp--style--block-gap, var(--wp--preset--spacing--xl));
}

.hp-block-section--constrained > *,
.hp-block-section--content > * {
  max-width: var(--hp-section-content-width);
  margin-inline: auto;
}

.hp-block-section--wide > * {
  max-width: var(--hp-section-wide-width);
  margin-inline: auto;
}

.hp-block-section--full { width: 100%; }
.hp-block-section--surface-transparent { background: transparent; }
.hp-block-section--surface-porcelain   { background: var(--wp--preset--color--porcelain); }
.hp-block-section--surface-linen       { background: var(--wp--preset--color--linen); }
.hp-block-section--surface-paper-glow  { background: var(--wp--preset--gradient--paper-glow); }

.hp-block-section--surface-night {
  background: radial-gradient(circle at top left, rgba(220, 233, 239, 0.1), transparent 34%), var(--wp--preset--color--night);
  color: var(--wp--preset--color--foam);
}
.hp-block-section--surface-hero-ocean {
  background: var(--wp--preset--gradient--hero-ocean);
  color: var(--wp--preset--color--foam);
}
.hp-block-section--surface-editorial-depth {
  background: var(--wp--preset--gradient--editorial-depth);
  color: var(--wp--preset--color--foam);
}

.hp-block-section--surface-hero-ocean,
.hp-block-section--surface-editorial-depth { overflow: hidden; isolation: isolate; }

.hp-block-section--surface-hero-ocean::before,
.hp-block-section--surface-editorial-depth::before {
  position: absolute; inset: 0;
  background: radial-gradient(circle at top left, rgba(220, 233, 239, 0.16), transparent 32%), radial-gradient(circle at bottom right, rgba(220, 233, 239, 0.1), transparent 24%);
  content: ""; pointer-events: none;
}
.hp-block-section--surface-hero-ocean::after {
  position: absolute; inset: 0;
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.06), transparent 34%);
  content: ""; pointer-events: none;
}
.hp-block-section--surface-hero-ocean > *,
.hp-block-section--surface-editorial-depth > * { position: relative; z-index: 1; }

.hp-block-section--surface-night :where(h1,h2,h3,h4,h5,h6,p,li,blockquote,cite),
.hp-block-section--surface-hero-ocean :where(h1,h2,h3,h4,h5,h6,p,li,blockquote,cite),
.hp-block-section--surface-editorial-depth :where(h1,h2,h3,h4,h5,h6,p,li,blockquote,cite) { color: inherit; }

.hp-block-section--variant-hero-home h1,
.hp-block-section--variant-hero-subpage h1 {
  max-width: 12ch;
  font-size: var(--wp--custom--hero--title-size);
  font-weight: var(--wp--custom--hero--title-weight);
  line-height: 0.92;
}
.hp-block-section--variant-hero-subpage h1 { max-width: 16ch; }

.hp-block-section--variant-hero-home .is-style-hp-hero-subtitle,
.hp-block-section--variant-hero-subpage .is-style-hp-hero-subtitle {
  max-width: var(--wp--custom--hero--subtitle-measure);
  font-size: var(--wp--custom--hero--subtitle-size);
}

.hp-block-card { border-radius: var(--wp--custom--radius--lg); }
.hp-block-card--pad-sm { padding: var(--wp--custom--card--padding-sm); }
.hp-block-card--pad-md { padding: var(--wp--custom--card--padding-md); }
.hp-block-card--pad-lg { padding: var(--wp--custom--card--padding-lg); }
.hp-block-card--surface-card { background: var(--wp--custom--card--surface); }
.hp-block-card--surface-transparent { background: transparent; }
.hp-block-card--surface-ink { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--foam); }
.hp-block-card--surface-porcelain { background: var(--wp--preset--color--porcelain); }
.hp-block-card--surface-glow, .hp-block-card--variant-glow { background: var(--wp--custom--card--surface-glow); }
.hp-block-card--variant-dark, .hp-block-card--surface-night { background: color-mix(in srgb, var(--wp--preset--color--night) 90%, transparent); color: var(--wp--preset--color--foam); }
.hp-block-card--variant-step { box-shadow: 0 16px 28px rgba(8, 17, 29, 0.06); }
.hp-block-card--variant-notice { border-left: 4px solid var(--wp--preset--color--water); border-radius: 0 var(--wp--custom--radius--md) var(--wp--custom--radius--md) 0; background: color-mix(in srgb, var(--wp--preset--color--foam) 64%, white); }
.hp-block-card--border-none { border: 0; }
.hp-block-card--border-soft { border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink-soft) 32%, transparent); }
.hp-block-card--border-light { border: 1px solid color-mix(in srgb, var(--wp--preset--color--foam) 42%, transparent); }
.hp-block-card--shadow-none { box-shadow: none; }
.hp-block-card--shadow-card { box-shadow: var(--wp--custom--shadow--card); }
.hp-block-card--shadow-strong { box-shadow: var(--wp--custom--shadow--strong); }


/* ════════════════════════════════════════════════════════════════════════════
   VISUAL STYLES  (is-style-hp-*)
   Typography, color, decoration ONLY — never layout.
   ════════════════════════════════════════════════════════════════════════════ */

.is-style-hp-eyebrow,
.is-style-hp-card-meta {
  font-size: 0.8em;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.is-style-hp-eyebrow:not(.has-text-color),
.is-style-hp-card-meta:not(.has-text-color) { color: var(--wp--preset--color--water); }

.hp-block-section--surface-night .is-style-hp-eyebrow:not(.has-text-color),
.hp-block-section--surface-night .is-style-hp-card-meta:not(.has-text-color),
.hp-block-section--surface-hero-ocean .is-style-hp-eyebrow:not(.has-text-color),
.hp-block-section--surface-hero-ocean .is-style-hp-card-meta:not(.has-text-color),
.hp-block-section--surface-editorial-depth .is-style-hp-eyebrow:not(.has-text-color),
.hp-block-section--surface-editorial-depth .is-style-hp-card-meta:not(.has-text-color),
.hp-block-card--variant-dark .is-style-hp-card-meta:not(.has-text-color),
.hp-block-card--surface-night .is-style-hp-card-meta:not(.has-text-color) {
  color: color-mix(in srgb, var(--wp--preset--color--foam) 82%, transparent);
}

.is-style-hp-section-lede, .is-style-hp-lede, .is-style-hp-hero-subtitle {
  font-size: clamp(1em, 0.98em + 0.18vw, 1.08em);
}
.is-style-hp-section-lede:not(.has-text-color),
.is-style-hp-lede:not(.has-text-color),
.is-style-hp-hero-subtitle:not(.has-text-color) { color: var(--wp--preset--color--ink-soft); }

.hp-block-section--surface-night .is-style-hp-section-lede:not(.has-text-color),
.hp-block-section--surface-night .is-style-hp-lede:not(.has-text-color),
.hp-block-section--surface-night .is-style-hp-hero-subtitle:not(.has-text-color),
.hp-block-section--surface-hero-ocean .is-style-hp-section-lede:not(.has-text-color),
.hp-block-section--surface-hero-ocean .is-style-hp-lede:not(.has-text-color),
.hp-block-section--surface-hero-ocean .is-style-hp-hero-subtitle:not(.has-text-color),
.hp-block-section--surface-editorial-depth .is-style-hp-section-lede:not(.has-text-color),
.hp-block-section--surface-editorial-depth .is-style-hp-lede:not(.has-text-color),
.hp-block-section--surface-editorial-depth .is-style-hp-hero-subtitle:not(.has-text-color),
.hp-block-card--variant-dark .is-style-hp-section-lede:not(.has-text-color),
.hp-block-card--variant-dark .is-style-hp-lede:not(.has-text-color),
.hp-block-card--variant-dark .is-style-hp-hero-subtitle:not(.has-text-color),
.hp-block-card--surface-night .is-style-hp-section-lede:not(.has-text-color),
.hp-block-card--surface-night .is-style-hp-lede:not(.has-text-color),
.hp-block-card--surface-night .is-style-hp-hero-subtitle:not(.has-text-color) {
  color: color-mix(in srgb, var(--wp--preset--color--foam) 82%, transparent);
}

.wp-block-separator.is-style-hp-accent-divider {
  width: 5rem; height: 4px; margin: 1rem 0 1.35rem; border: 0; opacity: 1;
  border-radius: var(--wp--custom--radius--pill);
  background: linear-gradient(90deg, var(--wp--preset--color--water), color-mix(in srgb, var(--wp--preset--color--foam) 80%, transparent));
}
.hp-section__heading--center > .wp-block-separator.is-style-hp-accent-divider,
.has-text-align-center.wp-block-separator.is-style-hp-accent-divider { margin-inline: auto; }

.wp-block-group.is-style-hp-notice {
  padding: 1.3rem 1.4rem;
  border-left: 4px solid var(--wp--preset--color--water);
  border-radius: 0 var(--wp--custom--radius--md) var(--wp--custom--radius--md) 0;
  background: color-mix(in srgb, var(--wp--preset--color--foam) 64%, white);
  color: var(--wp--preset--color--ink);
}
.wp-block-group.is-style-hp-notice > *:last-child { margin-bottom: 0; }

/* list-style-type: none on both ul and li is required — ::marker { display:none }
   is spec-invalid and unreliable; list-style suppression must live on the element. */
.is-style-hp-checklist,
.is-style-hp-mini-list { list-style-type: none !important; padding-left: 0; }
.is-style-hp-checklist li,
.is-style-hp-mini-list li { position: relative; padding-left: 1.55rem; list-style-type: none !important; }
.is-style-hp-checklist li::marker,
.is-style-hp-mini-list li::marker { content: none; }
.is-style-hp-checklist li + li,
.is-style-hp-mini-list li + li { margin-top: 0.75rem; }
.is-style-hp-checklist li::before,
.is-style-hp-mini-list li::before { position: absolute; top: 0.1rem; left: 0; color: var(--wp--preset--color--water); font-weight: 800; content: "•"; }
.is-style-hp-checklist li::before { content: "✓"; font-size: 0.9em; }

.wp-block-list.is-style-hp-list-custom-marker { --hp-list-marker-gap: 1.55rem; list-style-type: none !important; padding-left: 0; }
.wp-block-list.is-style-hp-list-custom-marker li { list-style-type: none !important; padding-left: var(--hp-list-marker-gap); }
.wp-block-list.is-style-hp-list-custom-marker li::marker { content: none; }
.wp-block-list.is-style-hp-list-custom-marker li::before { display: none; content: none; }

.is-style-hp-list-fluid, .is-style-hp-list-fluid li { font-size: clamp(1rem, 1.5vw, 1.375rem); }


/* ════════════════════════════════════════════════════════════════════════════
   LAYOUT UTILITIES  (hp-layout-*)
   Structural properties ONLY — no color, no font, no decoration.
   Applied by the HP Layout sidebar panel. Composable with any is-style-*.

   DISPLAY
     hp-layout-block          display: block
     hp-layout-flex-row       display: flex / flex-direction: row / flex-wrap: wrap
     hp-layout-flex-col       display: flex / flex-direction: column
     hp-layout-grid           display: grid / auto columns
     hp-layout-inline         display: inline-block

   WIDTH
     hp-layout-full           width: 100% / max-width: 100%
     hp-layout-fluid-group    fill + center flex column (Group + H2 scaling)
     hp-layout-content-max    constrain to content width
     hp-layout-wide-max       constrain to wide width

   ALIGNMENT (inline / block)
     hp-layout-center         margin-inline auto + text-align center + img centering
     hp-layout-text-left      text-align: left
     hp-layout-text-right     text-align: right
     hp-layout-items-center   align-items: center  (flex/grid parents)
     hp-layout-items-start    align-items: flex-start
     hp-layout-items-end      align-items: flex-end
     hp-layout-justify-center justify-content: center
     hp-layout-justify-between justify-content: space-between
     hp-layout-justify-end    justify-content: flex-end

   DISTRIBUTION
     hp-layout-distribute     flex row equal distribution (lists)

   OVERFLOW
     hp-layout-clip           overflow: hidden
     hp-layout-scroll-x       overflow-x: auto / overflow-y: hidden

   SPACING
     hp-layout-gap-sm         gap: var(--wp--preset--spacing--sm)
     hp-layout-gap-md         gap: var(--wp--preset--spacing--md)
     hp-layout-gap-lg         gap: var(--wp--preset--spacing--lg)

   VISIBILITY
     hp-layout-hide-mobile    hidden below 782px
     hp-layout-hide-desktop   hidden above 781px
   ════════════════════════════════════════════════════════════════════════════ */

/* ── Display ─────────────────────────────────────────────────────────────── */

.hp-layout-block   { display: block; }
.hp-layout-inline  { display: inline-block; }

.hp-layout-flex-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.hp-layout-flex-col {
  display: flex;
  flex-direction: column;
}

.hp-layout-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
}

/* ── Width ───────────────────────────────────────────────────────────────── */

.hp-layout-full {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.hp-layout-content-max {
  max-width: var(--wp--style--global--content-size);
  margin-inline: auto;
  box-sizing: border-box;
}

.hp-layout-wide-max {
  max-width: var(--wp--style--global--wide-size);
  margin-inline: auto;
  box-sizing: border-box;
}

.hp-layout-fluid-group {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.hp-layout-fluid-group > h2,
.hp-layout-fluid-group > .wp-block-heading {
  width: 100%;
  text-align: center;
  font-size: clamp(1.5rem, 4vw, 3.75rem);
}

/* ── Alignment — text ────────────────────────────────────────────────────── */

.hp-layout-center {
  display: block;
  margin-inline: auto;
  text-align: center;
}
.hp-layout-center li { text-align: center; }
.hp-layout-center figure, .hp-layout-center img { display: block; margin-inline: auto; }
.hp-layout-center .wc-block-components-product-image,
.hp-layout-center .wc-block-components-product-image img,
.hp-layout-center .wp-block-woocommerce-product-image figure,
.hp-layout-center .wp-block-woocommerce-product-image img { display: block; margin-inline: auto; }

.hp-layout-text-left  { text-align: left; }
.hp-layout-text-right { text-align: right; }

/* ── Alignment — flex/grid children ─────────────────────────────────────── */

.hp-layout-items-center  { align-items: center; }
.hp-layout-items-start   { align-items: flex-start; }
.hp-layout-items-end     { align-items: flex-end; }

.hp-layout-justify-center  { justify-content: center; }
.hp-layout-justify-between { justify-content: space-between; }
.hp-layout-justify-end     { justify-content: flex-end; }

/* ── Distribution (list flex row) ────────────────────────────────────────── */

.hp-layout-distribute {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem 1.5rem;
  padding-left: 0;
  list-style: none;
}
.hp-layout-distribute li {
  flex: 1 1 auto;
  text-align: center;
  list-style: none;
  font-size: clamp(0.9rem, 1.25vw, 1.25rem);
}

/* ── Gap ─────────────────────────────────────────────────────────────────── */

.hp-layout-gap-sm  { gap: var(--wp--preset--spacing--sm, 1rem); }
.hp-layout-gap-md  { gap: var(--wp--preset--spacing--md, 1.5rem); }
.hp-layout-gap-lg  { gap: var(--wp--preset--spacing--lg, 2.25rem); }

/* ── Overflow ────────────────────────────────────────────────────────────── */

.hp-layout-clip     { overflow: hidden; }
.hp-layout-scroll-x { overflow-x: auto; overflow-y: hidden; }

/* ── Visibility ──────────────────────────────────────────────────────────── */

.hp-layout-hide-mobile  { display: revert; }
.hp-layout-hide-desktop { display: none; }

@media (max-width: 781px) {
  .hp-layout-hide-mobile  { display: none; }
  .hp-layout-hide-desktop { display: revert; }
}

/* ── Legacy aliases (is-style-hp-* → hp-layout-* for old content) ──────── */

.is-style-hp-fluid-group { width: 100%; display: flex; flex-direction: column; align-items: center; }
.is-style-hp-fluid-group > h2, .is-style-hp-fluid-group > .wp-block-heading { width: 100%; text-align: center; font-size: clamp(1.5rem, 4vw, 3.75rem); }
.is-style-hp-list-full { width: 100%; max-width: 100%; box-sizing: border-box; }
.is-style-hp-list-center { display: block; margin-inline: auto; text-align: center; padding-left: 0; list-style-position: inside; }
.is-style-hp-list-center li { text-align: center; list-style-position: inside; }
.is-style-hp-list-distribute { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.5rem 1.5rem; padding-left: 0; list-style: none; }
.is-style-hp-list-distribute li { flex: 1 1 auto; text-align: center; list-style: none; font-size: clamp(0.9rem, 1.25vw, 1.25rem); }


/* ════════════════════════════════════════════════════════════════════════════
   MOTION  (data-hp-motion-*)
   ════════════════════════════════════════════════════════════════════════════ */

[data-hp-motion] {
  --hp-motion-duration: var(--wp--custom--motion--base);
  --hp-motion-delay: 0ms;
  --hp-motion-easing: var(--wp--custom--motion--easing-standard);
  transition:
    opacity var(--hp-motion-duration) var(--hp-motion-easing) var(--hp-motion-delay),
    transform var(--hp-motion-duration) var(--hp-motion-easing) var(--hp-motion-delay);
  will-change: opacity, transform;
}

[data-hp-motion-duration="fast"]  { --hp-motion-duration: var(--wp--custom--motion--fast); }
[data-hp-motion-duration="slow"]  { --hp-motion-duration: var(--wp--custom--motion--slow); }
[data-hp-motion-easing="entrance"]{ --hp-motion-easing: var(--wp--custom--motion--easing-entrance); }
[data-hp-motion-easing="sharp"]   { --hp-motion-easing: var(--wp--custom--motion--easing-sharp); }

[data-hp-motion][data-hp-motion-state="idle"] { opacity: 0; }
[data-hp-motion="fade-up"][data-hp-motion-state="idle"]     { transform: translateY(1rem); }
[data-hp-motion="slide-left"][data-hp-motion-state="idle"]  { transform: translateX(1.25rem); }
[data-hp-motion="slide-right"][data-hp-motion-state="idle"] { transform: translateX(-1.25rem); }
[data-hp-motion="scale-in"][data-hp-motion-state="idle"]    { transform: scale(0.96); }
[data-hp-motion="rise-soft"][data-hp-motion-state="idle"]   { transform: translate3d(0, 1.75rem, 0) scale(0.985); }
[data-hp-motion="sweep-left"][data-hp-motion-state="idle"]  { transform: translate3d(2.25rem, 0, 0) scale(0.985); }
[data-hp-motion="sweep-right"][data-hp-motion-state="idle"] { transform: translate3d(-2.25rem, 0, 0) scale(0.985); }
[data-hp-motion="zoom-soft"][data-hp-motion-state="idle"]   { transform: scale(0.92); }
[data-hp-motion="tilt-in"][data-hp-motion-state="idle"]     { transform: perspective(48rem) rotateX(4deg) translate3d(0, 1rem, 0); }
[data-hp-motion="pop"][data-hp-motion-state="idle"]         { transform: scale(0.88); }

[data-hp-motion][data-hp-motion-state="visible"],
[data-hp-motion="none"] { opacity: 1; transform: none; }
/* will-change is intentionally NOT reset here — resetting it while a
   transition is in flight destroys the compositing layer and causes a
   visual pop. JS cleans up will-change via transitionend if needed. */

[data-hp-motion-stagger] > * {
  --hp-motion-child-index: 0;
  transition:
    opacity var(--hp-motion-duration, var(--wp--custom--motion--base)) var(--hp-motion-easing, var(--wp--custom--motion--easing-standard)) var(--hp-motion-delay, 0ms),
    transform var(--hp-motion-duration, var(--wp--custom--motion--base)) var(--hp-motion-easing, var(--wp--custom--motion--easing-standard)) var(--hp-motion-delay, 0ms);
  transition-delay: calc(var(--hp-motion-delay, 0ms) + (var(--hp-motion-stagger-step, 0ms) * var(--hp-motion-child-index)));
}

[data-hp-motion-stagger] > :nth-child(1)  { --hp-motion-child-index: 0; }
[data-hp-motion-stagger] > :nth-child(2)  { --hp-motion-child-index: 1; }
[data-hp-motion-stagger] > :nth-child(3)  { --hp-motion-child-index: 2; }
[data-hp-motion-stagger] > :nth-child(4)  { --hp-motion-child-index: 3; }
[data-hp-motion-stagger] > :nth-child(5)  { --hp-motion-child-index: 4; }
[data-hp-motion-stagger] > :nth-child(6)  { --hp-motion-child-index: 5; }
[data-hp-motion-stagger] > :nth-child(7)  { --hp-motion-child-index: 6; }
[data-hp-motion-stagger] > :nth-child(8)  { --hp-motion-child-index: 7; }
[data-hp-motion-stagger] > :nth-child(9)  { --hp-motion-child-index: 8; }
[data-hp-motion-stagger] > :nth-child(10) { --hp-motion-child-index: 9; }
[data-hp-motion-stagger] > :nth-child(11) { --hp-motion-child-index: 10; }
[data-hp-motion-stagger] > :nth-child(12) { --hp-motion-child-index: 11; }

[data-hp-motion-stagger][data-hp-motion-state="idle"] > * { opacity: 0; transform: translateY(0.75rem); }
[data-hp-motion-stagger][data-hp-motion-state="visible"] > * { opacity: 1; transform: none; }

.hp-block--hide-desktop { display: none; }

@media (max-width: 781px) {
  .hp-block-section { --hp-section-padding-inline: var(--wp--custom--section--gutter-mobile, var(--wp--preset--spacing--md)); }
  .hp-block--hide-mobile  { display: none; }
  .hp-block--hide-desktop { display: revert; }
}

@media (prefers-reduced-motion: reduce) {
  [data-hp-motion], [data-hp-motion-stagger] > * { opacity: 1; transform: none; transition: none; will-change: auto; }
}


/* ════════════════════════════════════════════════════════════════════════════
   CONTAINER BLOCK
   ════════════════════════════════════════════════════════════════════════════ */

.wp-block-homoplasticus-container { box-sizing: border-box; }
.hp-block-container--w-constrained { max-width: var(--wp--style--global--content-size); margin-inline: auto; }
.hp-block-container--w-wide { max-width: var(--wp--style--global--wide-size); margin-inline: auto; }
.hp-block-container--w-full { width: 100%; }
.hp-block-container--h-full { min-height: 100dvh; }
.hp-block-container--h-viewport-minus-header { min-height: calc(100dvh - var(--hp-header-height, 0px)); }
