@charset "UTF-8";
/*------------------------------------*\
	RESET
\*------------------------------------*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

body {
  margin: 0;
  min-height: 100vh;
}

body, h1, h2, h3, h4,
p, figure, blockquote, dl, dd {
  margin-block-start: 0;
  margin-block-end: 0;
}

h1, h2, h3, h4 {
  text-wrap: pretty;
}

ul,
ol {
  margin: unset;
  padding: unset;
  list-style: none;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

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

input, button,
textarea, select {
  font-family: inherit;
  font-size: inherit;
}

button {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}

button:disabled, button[aria-disabled=true],
input:disabled,
input[aria-disabled=true],
select:disabled,
select[aria-disabled=true],
textarea:disabled,
textarea[aria-disabled=true] {
  cursor: not-allowed;
}

a[aria-disabled=true] {
  cursor: not-allowed;
}

fieldset {
  border: none;
  padding: 0;
}

textarea {
  max-width: 100%;
  box-sizing: border-box;
}

textarea:not([rows]) {
  min-height: 10em;
}

:where([popover]) {
  border: none;
  padding: 0;
}

:target {
  scroll-margin-block: 5ex;
}

/*------------------------------------*\
	MEDIA QUERY

	Wraps content in the appropriate media query.

	Usage:
	.block {
		@include media-query('768') { ... }
	}

	Available aliases:
	portrait, landscape
	768, 768-plus
	900, 900-plus
	1024, 1024-plus
	1440, 1440-plus
	1920, 1920-plus
\*------------------------------------*/
/*------------------------------------*\
	GRID
\*------------------------------------*/
.grid {
  display: grid;
  grid-column: 1/-1;
  row-gap: var(--grid-gap, 25px);
  column-gap: var(--grid-gap, 25px);
  width: 100%;
}

.grid--in-cell {
  grid-column: auto;
}

.grid--1 {
  grid-template-columns: 100%;
}

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

@media screen and (max-width: 767px) {
  .grid--2 {
    grid-template-columns: 100%;
  }
}
.grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media screen and (max-width: 767px) {
  .grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media screen and (max-width: 767px) {
  .grid--4 {
    grid-template-columns: 100%;
  }
}
.grid--5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

@media screen and (max-width: 767px) {
  .grid--5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.grid--6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

@media screen and (max-width: 1024px) {
  .grid--6 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media screen and (max-width: 767px) {
  .grid--6 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.grid--split {
  grid-template-columns: var(--grid-columns, 1fr 1fr);
}

.grid--2-1 {
  grid-template-columns: 2fr 1fr;
}

.grid--1-2 {
  grid-template-columns: 1fr 2fr;
}

@media screen and (max-width: 1024px) {
  .grid--split, .grid--2-1, .grid--1-2 {
    grid-template-columns: 100%;
  }
}
.grid--center {
  align-items: center;
}

.grid--align-start {
  align-items: start;
}

/*------------------------------------*\
	BREATHE — vertical-rhythm utility
\*------------------------------------*/
.breathe {
  display: block;
}

.breathe:not([class*=breathe--]) {
  margin-top: 24px;
  margin-bottom: 24px;
}

.breathe[style*="--breathe-top"] {
  margin-top: var(--breathe-top);
}

.breathe[style*="--breathe-bottom"] {
  margin-bottom: var(--breathe-bottom);
}

.breathe--top {
  margin-top: 24px !important;
}

.breathe--top-tiny {
  margin-top: 4px !important;
}

.breathe--top-mini {
  margin-top: 8px !important;
}

.breathe--top-small {
  margin-top: 12px !important;
}

.breathe--top-large {
  margin-top: 40px !important;
}

.breathe--top-huge {
  margin-top: 64px !important;
}

.breathe--top-auto {
  margin-top: auto !important;
}

.breathe--bottom {
  margin-bottom: 24px !important;
}

.breathe--bottom-tiny {
  margin-bottom: 4px !important;
}

.breathe--bottom-mini {
  margin-bottom: 8px !important;
}

.breathe--bottom-small {
  margin-bottom: 12px !important;
}

.breathe--bottom-large {
  margin-bottom: 40px !important;
}

.breathe--bottom-huge {
  margin-bottom: 64px !important;
}

.breathe--bottom-auto {
  margin-bottom: auto !important;
}

/*------------------------------------*\
	IMAGES
\*------------------------------------*/
/*------------------------------------*\
	TRANSITIONS
\*------------------------------------*/
.hover-zoom {
  display: block;
  overflow: hidden;
}

.hover-zoom img {
  transition: all 300ms ease;
  width: 100%;
  height: auto;
}

.hover-zoom:hover img {
  transform: scale(1.08);
}

.img--cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.img--contain {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

/*------------------------------------*\
	VISIBILITY
\*------------------------------------*/
.is-hidden {
  display: none;
}

@media screen and (max-width: 767px) {
  .is-hidden--mobile {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  .is-hidden--tablet {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) {
  .is-hidden--desktop {
    display: none !important;
  }
}
@media (orientation: portrait) {
  .is-hidden--portrait {
    display: none !important;
  }
}
@media (orientation: landscape) {
  .is-hidden--landscape {
    display: none !important;
  }
}
/*------------------------------------*\
	HOVER

	Generates hover, focus, and active states.
	Pass $include-active: true to also include
	:active and .is-active states.
\*------------------------------------*/
/*------------------------------------*\
	BACKGROUND

	Shorthand for rgba background with opacity.

	Usage: @include background($dark-charcoal, 0.8);
\*------------------------------------*/
/*------------------------------------*\
	METRICS
	Spacing + containers + icons + radii from SAS1.
	Radii = 0 (SAS1 uses sharp corners across the board).
	Gutter = 24px (SAS1 canonical grid gap = spacing-5).
\*------------------------------------*/
/*------------------------------------*\
	PALETTE
	Raw colour values from SAS1 styleguide. Trimmed 2026-07-30 to only the
	values MAS43 actually paints with — colours defined but never rendered
	in the mockup are dropped (candidates return when a later mockup adopts
	them). See build-prompts/artsabers/theme-classes.md for the extraction
	protocol.

	Use directly by Sass name (fallback) or via the CSS custom property
	surface in _brand-tokens.scss (preferred).
\*------------------------------------*/
/*------------------------------------*\
	TYPOGRAPHY
	Fonts + weights + rhythm from SAS1 styleguide.
	SAS1 title_defaults: Orbitron 600 upright. body_defaults: Onest 400.

	THREE faces, not two. This block previously said Space Grotesk was
	dropped because MAS43 painted every chrome slot in Orbitron — that was
	reversed on 2026-08-06 when the theme turned out to be unable to render
	its own styleguide, and the chrome face below is loaded and live. The
	old note is kept only in this sentence so the reversal is legible; do
	not re-derive the two-family reading from it.
\*------------------------------------*/
/*------------------------------------*\
	BRAND TOKENS — :root custom properties (single source)

	The ARTSABERS brand token set. Trimmed 2026-07-30 to only what MAS43
	actually paints with. Every colour defined here is referenced somewhere
	in MAS43's rendered CSS; every colour previously defined but only
	speculatively (SAS1 styleguide extras never used in the mockup) has
	been dropped. Same principle for fonts — Space Grotesk dropped since
	MAS43 uses Orbitron for every chrome slot.

	Mixin used twice — once in artsabers.scss :root (front end) and once
	in tokens.scss on .editor-styles-wrapper (editor canvas).

	See build-prompts/artsabers/theme-classes.md for the per-mockup
	colour-extraction protocol.
\*------------------------------------*/
/*------------------------------------*\
	WORDPRESS FONT-SIZE PRESETS — pinned to the brand scale

	`artsabers_block_typography_settings()` registers the picker with
	`var(--fs-*)` sizes, so WordPress emits
	`--wp--preset--font-size--{slug}: var(--fs-{step})` in its own `:root`
	block. On the front end that resolves, because the brand tokens are on
	`:root` too.

	In the block-editor canvas it does NOT. tokens.scss deliberately scopes the
	brand tokens to `.editor-styles-wrapper` rather than `:root` (so third-party
	admin CSS setting the same generic property names can't win on load order),
	while WordPress still writes its preset block to `:root`. A custom property
	resolves against the element it is declared on, so on `:root` the
	`var(--fs-small)` reference has nothing to read, the preset becomes
	guaranteed-invalid, and `.has-small-font-size` silently falls back to
	inherited size. Symptom: the operator picks Small in the sidebar and the
	canvas does not change.

	Emitting the mapping from inside `brand-token-vars` fixes it by construction
	— the presets are always declared on the same element as the tokens they
	reference, on whichever surface the mixin is called.

	The last three are WordPress's own slugs. `defaultFontSizes: false` drops
	them from the picker but core still emits their off-scale values (20/36/42px)
	and its `.has-{slug}-font-size` rules carry `!important`. Re-pointing the
	custom property lands legacy content on the nearest brand step without
	fighting `!important`. A fallback, not a supported route — content should
	carry a brand slug.

	THIS LIST MUST MATCH THE PICKER IN `artsabers_block_typography_settings()`.
	Nothing enforces that, and on 2026-09-09 three registered slugs were missing
	here — `prose`, `heading-lg` and `title-lg`, all added to the scale and to the
	picker during August, none added to this bridge. The failure is invisible in
	the worst way: the FRONT END is correct, because core writes its own preset
	block to `:root` where the tokens also live, so a published page renders the
	right size. Only the canvas is wrong, so an author picks Heading Large, sees
	nothing change, and concludes the size does not work — while the page they
	publish is fine.

	When a step is added to the scale and offered in the picker, add it here in
	the same commit. `wp tf brand-tokens --url=<brand>` prints the three surfaces
	side by side and names any slug offered without a property behind it.
\*------------------------------------*/
/*------------------------------------*\
	WORDPRESS FONT-FAMILY PRESETS — pinned to the brand faces

	Exactly the fault described above, one property family across. The picker
	registers `var(--font-*)` families, WordPress writes
	`--wp--preset--font-family--{slug}: var(--font-{role})` to its own `:root`,
	and in the canvas that reference has nothing to read — so the preset
	computes to the guaranteed-invalid value and `.has-{slug}-font-family`
	falls through to whatever the wrapper inherits.

	It is worth stating that the failure is INVISIBLE rather than broken: every
	paragraph still renders in a real brand face (the body one), so an operator
	picking Display sees text that looks deliberate and is simply the wrong
	face. Measured 2026-09-09 — all four slugs computed Onest in the canvas
	while the tokens themselves resolved correctly, which is why the CSS-level
	check that core emitted the rules passed and told us nothing.

	Same fix as the sizes, for the same reason: declared from inside
	`brand-token-vars`, so the presets always land on the element that carries
	the tokens they reference.

	Core registers no font families of its own — `wp-includes/theme.json` has
	no `fontFamilies` — so unlike the sizes above there are no core slugs to
	re-point, and there is no `defaultFontFamilies` setting to disable.
\*------------------------------------*/
body {
  color: var(--chrome-warm);
}

:where(h1, h2, h3, h4, h5, h6, .eyebrow) em {
  font-style: normal;
}

/*------------------------------------*\
	COMPONENTS
	One @use per authored brand component. Accrues as the section walk
	lands each. See build-prompts/artsabers/theme-classes.md for the
	registry of what's authored and what's queued.
\*------------------------------------*/
.accessory-tile {
  display: flex;
  flex-direction: column;
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(3px);
  box-shadow: var(--panel-lift);
  transition: box-shadow 200ms, transform 200ms;
}

.accessory-tile:hover {
  transform: translateY(-3px);
  box-shadow: var(--panel-lift-hover), 0 0 32px rgba(255, 122, 46, 0.18);
}

.accessory-tile__media {
  aspect-ratio: 1/1;
  background-color: var(--hull-panel-dark);
  background-image: var(--bg-image, none);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.accessory-tile__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-4-5) var(--space-5) var(--space-5);
  background: var(--hull-panel-lift);
  flex: 1;
}

.accessory-tile__cat {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.accessory-tile__name {
  margin-bottom: var(--space-1);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-base);
  letter-spacing: 0.02em;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.accessory-tile__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: auto;
  padding-top: var(--space-4);
  border-top: 1px dotted rgba(184, 176, 166, 0.2);
}

.accessory-tile__price {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-large);
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.accessory-tile__add {
  padding: var(--space-2) var(--space-4);
  background: transparent;
  border: 1px solid rgba(255, 122, 46, 0.55);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  cursor: pointer;
  transition: background 150ms, box-shadow 150ms;
}

.accessory-tile__add:hover {
  background: rgba(255, 122, 46, 0.08);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.25);
}

.account-dashboard-shell {
  position: relative;
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 0;
  align-items: start;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0;
  /*
   * NO GROUND HERE. The section band this sits in owns the ground — see
   * my-account.php, which wraps the shell in `.section--carbon --flush`.
   * Painting carbon on the shell as well is the same colour declared twice,
   * and it is what made the shell a visible island above 1440: the band ran
   * edge to edge while the shell's own carbon stopped at its max-width.
   *
   * The sidebar keeps its background because that is a SURFACE, not a ground —
   * a distinct panel that has to read as raised against whatever it sits on.
   */
}

.account-dashboard-shell__sidebar-wrap {
  position: relative;
  background: var(--charcoal-warm);
  border-right: 1px solid rgba(255, 122, 46, 0.28);
  box-shadow: 1px 0 24px -12px rgba(255, 122, 46, 0.15);
}

.account-dashboard-shell__main {
  padding: var(--space-7) var(--space-6-5) var(--space-8) var(--space-7);
  --intro-cluster-mb: 34px;
  --content-group-knockout: var(--carbon);
}

@media (max-width: 900px) {
  .account-dashboard-shell {
    grid-template-columns: minmax(0, 1fr);
  }
  .account-dashboard-shell__sidebar-wrap {
    border-right: 0;
    border-bottom: 1px solid rgba(255, 122, 46, 0.28);
  }
  .account-dashboard-shell__main {
    padding: var(--space-6) var(--space-5) var(--space-7);
  }
}
.account-sidebar {
  position: sticky;
  top: 92px;
  padding: var(--space-6) 0;
}

.account-sidebar__header {
  padding: 0 var(--space-5) var(--space-4-5);
  border-bottom: 1px solid rgba(255, 122, 46, 0.2);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-micro);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.account-sidebar__loyalty {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-top: var(--space-5);
  padding: var(--space-4-5) var(--space-5);
  border-top: 1px solid rgba(255, 122, 46, 0.2);
}

.account-sidebar__loyalty-points {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-subheading);
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
  color: var(--ember);
}

.account-sidebar__loyalty-tier {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

@media (max-width: 900px) {
  .account-sidebar {
    position: static;
    padding: var(--space-4-5) 0;
  }
}
.account-tab-nav {
  display: flex;
  flex-direction: column;
}

.account-tab-nav__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 52px;
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid rgba(255, 122, 46, 0.14);
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-small);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.account-tab-nav__item:hover {
  background: rgba(255, 122, 46, 0.05);
  color: var(--chrome-highlight);
}

.account-tab-nav__item--nested {
  padding-left: var(--space-6-5);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.08em;
}

.account-tab-nav__item--active {
  background: rgba(255, 122, 46, 0.09);
  color: var(--chrome-highlight);
}

.account-tab-nav__item--active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--ember);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.55);
}

.account-tab-nav__item--active .account-tab-nav__count {
  background: rgba(255, 122, 46, 0.14);
  color: var(--ember);
}

.account-tab-nav__count {
  padding: 3px var(--space-2);
  background: rgba(255, 255, 255, 0.03);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.08em;
  color: var(--chrome-dim);
}

.address-summary {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.75;
  color: var(--chrome-warm);
}

.address-summary strong {
  font-weight: 600;
  color: var(--chrome-highlight);
}

.address-summary__phone {
  display: block;
  margin-top: var(--space-3);
  font-family: var(--font-body);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-eyebrow);
}

.address-summary__actions {
  display: flex;
  gap: var(--space-4-5);
  margin-top: var(--space-4-5);
}

.address-summary__editing {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ember);
}

.answer-callout {
  margin-top: var(--space-4-5);
  padding: var(--space-4-5) var(--space-5);
  background: var(--hull-panel);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3), 0 6px 16px -8px rgba(0, 0, 0, 0.7);
  position: relative;
}

.answer-callout__label {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  margin-bottom: var(--space-2);
  display: block;
}

.answer-callout__body {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
  margin: 0;
}

.answer-callout--key {
  border-left: 2px solid var(--ember);
}

.answer-callout--key .answer-callout__label {
  color: var(--ember);
}

.answer-callout--did {
  border-left: 2px solid var(--chrome-glint);
}

.answer-callout--did .answer-callout__label {
  color: var(--chrome-glint);
}

.answer-callout--caution {
  border-left: 2px solid var(--ember-forge);
  background: linear-gradient(90deg, rgba(232, 93, 24, 0.06) 0%, var(--hull-panel) 60%);
}

.answer-callout--caution .answer-callout__label {
  color: var(--ember-forge);
}

.archive-header {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.archive-header__crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.archive-header__crumbs-sep {
  opacity: 0.6;
}

.archive-header__crumbs-current {
  color: var(--chrome-warm);
}

.archive-header__title-accent {
  color: var(--ember);
}

.archive-header__desc {
  max-width: 640px;
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.55;
  color: var(--chrome-warm);
}

.archive-header__stats {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--chrome-warm);
}

.archive-header__stats strong {
  font-weight: 600;
  color: var(--chrome-highlight);
}

.article-blockquote {
  margin: var(--space-6) 0 0;
  padding: var(--space-4-5) 0 0;
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.35);
}

.article-blockquote__text {
  margin-bottom: var(--space-4);
  font-family: var(--font-body);
  font-style: italic;
  font-size: var(--fs-prose);
  line-height: 1.55;
  color: var(--chrome-highlight);
}

.article-blockquote__cite {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-style: normal;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.article-blockquote__cite::before {
  content: "—";
  color: var(--ember);
}

.article-body {
  padding: var(--space-8) 0;
}

.article-body__inner {
  max-width: var(--site-max-width-default);
  margin: 0 auto;
}

@media (max-width: 700px) {
  .article-body {
    padding: var(--space-7) 0 var(--space-6-5);
  }
}
.article-feature {
  position: relative;
  display: block;
  margin: var(--space-6-5) 0 var(--space-8);
  overflow: hidden;
  isolation: isolate;
  background: var(--charcoal-warm, #161412);
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.55), inset 0 -1px 0 rgba(255, 122, 46, 0.55), 0 -2px 40px rgba(255, 122, 46, 0.18), 0 2px 40px rgba(255, 122, 46, 0.18);
}

.article-feature__inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
}

.article-feature__media {
  position: relative;
  min-width: 0;
  overflow: hidden;
  background: var(--hull-panel-dark);
}

.article-feature__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 55%, rgba(6, 6, 6, 0.55) 100%);
  pointer-events: none;
}

.article-feature__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 400ms ease;
}

.article-feature:hover .article-feature__img {
  transform: scale(1.03);
}

.article-feature__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-4-5);
  padding: var(--space-7) var(--space-8) var(--space-7) var(--space-7);
}

.article-feature__eyebrow {
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ember-glow);
  text-shadow: 0 0 20px rgba(255, 122, 46, 0.35);
}

.article-feature__eyebrow::before {
  content: "";
  display: inline-block;
  width: 32px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.6);
}

.article-feature__chip {
  align-self: flex-start;
  padding: var(--space-2) var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  background: rgba(255, 122, 46, 0.05);
  border: 1px solid rgba(255, 122, 46, 0.4);
}

.article-feature__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-title);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.article-feature__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.article-feature__meta span + span::before {
  content: "·";
  margin-right: 8px;
  color: var(--chrome-dim);
}

.article-feature__excerpt {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
  opacity: 0.92;
}

.article-feature__cta {
  align-self: flex-start;
  margin-top: var(--space-1);
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-5);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember-glow);
  background: rgba(255, 122, 46, 0.06);
  border: 1px solid rgba(255, 122, 46, 0.55);
  transition: background 200ms, box-shadow 200ms, color 200ms;
}

.article-feature__cta:hover {
  color: var(--chrome-highlight);
  background: rgba(255, 122, 46, 0.14);
  box-shadow: 0 0 24px rgba(255, 122, 46, 0.35);
}

.article-feature__bloom {
  position: absolute;
  z-index: 1;
  right: -140px;
  bottom: -140px;
  width: 420px;
  height: 420px;
  background: radial-gradient(circle, rgba(255, 179, 71, 0.16) 0%, rgba(255, 122, 46, 0.08) 35%, transparent 68%);
  filter: blur(12px);
  pointer-events: none;
}

@media (max-width: 1024px) {
  .article-feature__inner {
    grid-template-columns: 1fr;
  }
  .article-feature__copy {
    padding: var(--space-6-5) var(--space-6);
  }
  .article-feature__title {
    font-size: var(--fs-heading);
  }
}
.article-section-head {
  padding: var(--space-7) 0 var(--space-6);
}

.article-section-head__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
}

.article-section-head__eyebrow::before {
  content: "";
  display: inline-block;
  width: 28px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.55);
}

.article-section-head__title {
  margin: 0 0 var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-heading-lg);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.article-section-head__lede {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--chrome-dim);
}

.article-share {
  max-width: var(--site-max-width-default);
  margin-inline: auto;
  padding: var(--space-6) var(--gutter-small) 0;
}

.article-share__inner {
  display: flex;
  align-items: center;
  gap: var(--space-4-5);
  max-width: var(--article-column);
  margin-inline: 0 auto;
}

.article-share__label {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.article-share__list {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
}

.article-share__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: transparent;
  color: var(--chrome-warm);
  border: 1px solid rgba(184, 176, 166, 0.2);
  transition: color 200ms ease, border-color 200ms ease, background 200ms ease;
}

.article-share__button:hover {
  color: var(--ember);
  background: rgba(255, 122, 46, 0.06);
  border-color: var(--ember);
}

.article-share__button svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}

.article-tags {
  max-width: var(--site-max-width-default);
  margin-inline: auto;
  padding: var(--space-6-5) var(--gutter-small) 0;
}

.article-tags__inner {
  max-width: var(--article-column);
  margin-inline: 0 auto;
}

.article-tags__label {
  margin-bottom: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.article-tags__list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  list-style: none;
  margin: 0;
  padding: 0;
}

.article-tags__chip {
  display: inline-flex;
  align-items: center;
  padding: var(--space-2) var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  background: var(--hull-panel);
  border: 1px solid rgba(255, 122, 46, 0.3);
  text-decoration: none;
  transition: border-color 200ms ease, background 200ms ease;
}

.article-tags__chip:hover {
  background: var(--hull-panel-lift);
  border-color: var(--ember);
}

.button, .affwp-form input[type=submit], .cart-drawer__checkout, .cart-drawer__empty-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-3);
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font-family: var(--font-chrome);
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: box-shadow 200ms ease, transform 200ms ease, background 200ms ease, color 200ms ease;
}

.button--primary, .affwp-form input[type=submit], .cart-drawer__checkout, .cart-drawer__empty-cta, .atc__submit {
  padding: var(--space-4-5) var(--space-6-5);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.14em;
  color: var(--on-primary-fixed);
  background: linear-gradient(180deg, var(--ember-glow) 0%, var(--ember) 50%, var(--ember-deep) 100%);
  box-shadow: var(--ember-glow-sm);
}

.button--primary:hover, .affwp-form input[type=submit]:hover, .cart-drawer__checkout:hover, .cart-drawer__empty-cta:hover, .atc__submit:hover {
  box-shadow: var(--ember-glow-md);
  transform: translateY(-1px);
}

.button--ghost {
  padding: var(--space-4-5) var(--space-6);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.16em;
  color: var(--chrome-warm);
  background: transparent;
  border: 1px solid rgba(62, 62, 62, 0.65);
}

.button--ghost:hover {
  background: var(--hull-panel-lift);
  color: var(--chrome-highlight);
  box-shadow: var(--chrome-top-soft);
}

.button--ghost-ember {
  padding: var(--space-4-5) var(--space-6);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.14em;
  color: var(--ember);
  background: transparent;
  border: 1px solid rgba(255, 122, 46, 0.6);
}

.button--ghost-ember:hover {
  background: rgba(255, 122, 46, 0.08);
  color: var(--ember-glow);
  box-shadow: var(--ember-glow-sm);
}

.button--dark {
  padding: var(--space-4-5) var(--space-6-5);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.14em;
  color: var(--ember-glow);
  background: var(--hull-panel-dark);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45), var(--chrome-top-soft);
}

.button--dark:hover {
  color: var(--chrome-highlight);
  background: var(--hull-panel-lift);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.75), var(--ember-glow-sm);
}

.button--large {
  padding: var(--space-5) var(--space-7);
  font-size: var(--fs-small);
}

.button--block, .cart-drawer__checkout {
  display: flex;
  width: 100%;
}

.button__arrow {
  display: inline-block;
  margin-left: var(--space-1);
}

.button:disabled, .affwp-form input[type=submit]:disabled, .cart-drawer__checkout:disabled, .cart-drawer__empty-cta:disabled, .button[aria-disabled=true], .affwp-form input[aria-disabled=true][type=submit], [aria-disabled=true].cart-drawer__checkout, [aria-disabled=true].cart-drawer__empty-cta, .button--disabled {
  background: var(--hull-panel-dark);
  background-image: none;
  border-color: rgba(250, 250, 250, 0.08);
  color: var(--chrome-dim);
  box-shadow: none;
  opacity: 0.55;
}

.button:disabled .button__arrow, .affwp-form input[type=submit]:disabled .button__arrow, .cart-drawer__checkout:disabled .button__arrow, .cart-drawer__empty-cta:disabled .button__arrow, .button[aria-disabled=true] .button__arrow, .affwp-form input[aria-disabled=true][type=submit] .button__arrow, [aria-disabled=true].cart-drawer__checkout .button__arrow, [aria-disabled=true].cart-drawer__empty-cta .button__arrow, .button--disabled .button__arrow {
  opacity: 0.4;
}

.button:disabled:hover, .affwp-form input[type=submit]:disabled:hover, .cart-drawer__checkout:disabled:hover, .cart-drawer__empty-cta:disabled:hover, .button[aria-disabled=true]:hover, .affwp-form input[aria-disabled=true][type=submit]:hover, [aria-disabled=true].cart-drawer__checkout:hover, [aria-disabled=true].cart-drawer__empty-cta:hover, .button--disabled:hover {
  background: var(--hull-panel-dark);
  background-image: none;
  border-color: rgba(250, 250, 250, 0.08);
  color: var(--chrome-dim);
  box-shadow: none;
  transform: none;
}

.composite_button,
.atc {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  align-items: stretch;
  gap: var(--space-3);
}

.composite_button:has(.atc__quantity:is(.hidden, :has(input[type=hidden]))),
.atc:has(.atc__quantity:is(.hidden, :has(input[type=hidden]))) {
  grid-template-columns: minmax(0, 1fr);
}

.atc__quantity {
  grid-column: 1;
}

.atc__submit {
  grid-column: 2;
  width: 100%;
  white-space: nowrap;
}

.atc__submit.atc__submit {
  padding: var(--space-4-5) var(--space-6);
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.14em;
}

@media (max-width: 480px) {
  .composite_button,
  .atc {
    grid-template-columns: minmax(0, 1fr);
  }
  .atc__quantity,
  .atc__submit {
    grid-column: 1;
  }
}
.atc__quantity {
  display: grid;
  grid-template-columns: 36px 1fr 36px;
  min-width: 112px;
  max-width: 148px;
  align-items: stretch;
  background: var(--hull-panel);
  box-shadow: inset 0 0 0 1px rgba(62, 62, 62, 0.55), inset 0 1px 0 rgba(250, 250, 250, 0.08);
}

.atc__quantity.hidden, .atc__quantity:has(input[type=hidden]) {
  display: none;
}

.atc__quantity__button {
  padding: 0;
  background: transparent;
  border: 0;
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  line-height: 1;
  color: var(--chrome-warm);
  cursor: pointer;
  transition: color 160ms ease, background 160ms ease;
}

.atc__quantity__button:hover:not(:disabled) {
  background: rgba(255, 122, 46, 0.08);
  color: var(--ember);
}

.atc__quantity__button:focus-visible {
  outline: 1px solid rgba(255, 122, 46, 0.7);
  outline-offset: -2px;
}

.atc__quantity__button:disabled {
  color: var(--chrome-dim);
  opacity: 0.4;
}

.atc__quantity input {
  width: 100%;
  padding: var(--space-4) 0;
  background: transparent;
  border: 0;
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-base);
  text-align: center;
  color: var(--chrome-highlight);
  outline: none;
  appearance: textfield;
}

.atc__quantity input::-webkit-outer-spin-button, .atc__quantity input::-webkit-inner-spin-button {
  appearance: none;
  margin: 0;
}

.atc-row {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: var(--space-3);
  margin-top: var(--space-3);
}

.atc-row__qty {
  display: grid;
  grid-template-columns: 1fr 40px 1fr;
  align-items: center;
  background: var(--hull-panel);
  box-shadow: inset 0 0 0 1px rgba(62, 62, 62, 0.55), inset 0 1px 0 rgba(250, 250, 250, 0.08);
}

.atc-row__qty-btn {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  color: var(--chrome-warm);
  padding: var(--space-4) 0;
  background: transparent;
  border: 0;
  cursor: pointer;
}

.atc-row__qty-value {
  text-align: center;
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-base);
  color: var(--chrome-highlight);
}

@media (max-width: 700px) {
  .atc-row {
    grid-template-columns: 100px 1fr;
  }
}
.auth-card-wrap {
  display: flex;
  justify-content: center;
  padding: 0 var(--space-5) var(--space-8);
}

.auth-card-wrap[hidden] {
  display: none;
}

.auth-card-wrap--first {
  padding-top: var(--space-8);
}

.auth-card-wrap--follow {
  padding-top: var(--space-6-5);
}

.auth-swap {
  max-width: 560px;
  margin: 0 auto;
}

.auth-swap .auth-card {
  max-width: 560px;
}

.auth-card {
  position: relative;
  width: 100%;
  max-width: 460px;
  padding: var(--space-6-5) var(--space-6-5) var(--space-6);
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  border: 1px solid var(--hull-edge);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.4), 0 18px 48px -14px rgba(0, 0, 0, 0.95);
}

.auth-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(to right, transparent 0%, rgba(255, 122, 46, 0.4) 15%, rgba(255, 179, 71, 0.55) 50%, rgba(255, 122, 46, 0.4) 85%, transparent 100%);
  pointer-events: none;
}

.auth-card__eyebrow {
  margin-bottom: var(--space-3);
  font-family: var(--font-chrome, var(--font-display));
  font-weight: 500;
  font-size: var(--fs-nano);
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--ember);
}

.auth-card__title {
  margin-bottom: var(--space-5);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-heading-lg);
  line-height: 1.15;
  letter-spacing: 0.05em;
  color: var(--chrome-highlight);
}

.auth-card__explainer {
  margin-bottom: var(--space-6);
  font-family: var(--font-body);
  font-weight: 400;
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-dim);
}

.auth-card--confirm {
  text-align: center;
}

.auth-card--confirm .auth-card__title {
  margin-bottom: var(--space-4);
}

.auth-card--confirm .auth-card__body {
  margin-bottom: var(--space-4);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.auth-card--confirm .auth-card__meta {
  margin-bottom: var(--space-6);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

@media (max-width: 720px) {
  .auth-card {
    padding: var(--space-5) var(--space-4-5);
  }
  .auth-card__title {
    font-size: var(--fs-heading);
  }
}
@media (max-width: 460px) {
  .auth-card__title {
    font-size: var(--fs-heading);
    letter-spacing: 0.05em;
  }
}
.confirm-badge {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin: 0 auto var(--space-5);
  background: radial-gradient(circle at center, rgba(255, 179, 71, 0.28) 0%, rgba(255, 122, 46, 0.1) 60%, transparent 100%);
  border-radius: 50%;
  box-shadow: var(--ember-hot-rim);
}

.confirm-badge__check {
  width: 20px;
  height: 12px;
  border-left: 2.5px solid var(--ember-glow);
  border-bottom: 2.5px solid var(--ember-glow);
  transform: rotate(-45deg) translate(1px, -3px);
  filter: drop-shadow(0 0 3px rgba(255, 179, 71, 0.7));
}

.email-token {
  font-family: var(--font-chrome, var(--font-display));
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--ember);
}

.badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--badge-mb, 0);
  padding: var(--space-2) var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.badge__dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.8);
}

.badge--dark {
  background: rgba(6, 6, 6, 0.85);
  border: 1px solid rgba(255, 122, 46, 0.4);
  color: var(--ember);
  font-weight: 700;
  letter-spacing: 0.14em;
}

.badge--ember {
  background: rgba(255, 122, 46, 0.16);
  border: 1px solid rgba(255, 122, 46, 0.65);
  color: var(--ember-glow);
  letter-spacing: 0.18em;
}

.badge--low {
  color: var(--ember-glow);
  border-color: rgba(255, 179, 71, 0.5);
}

.badge--low .badge__dot {
  background: var(--ember-glow);
}

.badge--large {
  padding: var(--space-3) var(--space-4-5);
  font-size: var(--fs-small);
  letter-spacing: 0.14em;
}

.blade-showreel {
  position: relative;
}

.blade-showreel__topseam {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 122, 46, 0.6) 30%, rgba(255, 179, 71, 0.7) 50%, rgba(255, 122, 46, 0.6) 70%, transparent 100%);
  box-shadow: 0 0 20px rgba(255, 122, 46, 0.25);
}

.blade-showreel__inner {
  text-align: center;
}

.blade-showreel__eyebrow {
  margin-bottom: var(--space-4-5);
}

.blade-showreel__title {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-title);
  line-height: 1.15;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
  margin: 0 0 var(--space-4);
}

.blade-showreel__subline {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--chrome-dim);
  margin: 0 0 var(--space-7);
}

.blade-showreel__grid {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: var(--space-3);
}

@media (max-width: 768px) {
  .blade-showreel__grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 480px) {
  .blade-showreel__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.blade-tile {
  position: relative;
  aspect-ratio: 180/220;
  background: linear-gradient(180deg, var(--hull-panel-dark) 0%, var(--carbon) 100%);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.08), 0 8px 24px -8px rgba(0, 0, 0, 0.9);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding: var(--space-3) var(--space-2);
}

.blade-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.14);
  pointer-events: none;
  z-index: 4;
}

.blade-tile__blade {
  position: absolute;
  bottom: 46px;
  left: 50%;
  transform: translateX(-50%);
  width: 7px;
  height: calc(100% - 78px);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, var(--blade-color) 30%, var(--blade-color) 100%);
  box-shadow: 0 0 6px 2px var(--blade-color), 0 0 18px 6px var(--blade-color), 0 0 42px 14px color-mix(in srgb, var(--blade-color) 55%, transparent), 0 0 80px 24px color-mix(in srgb, var(--blade-color) 25%, transparent);
  z-index: 2;
}

.blade-tile__emitter {
  position: absolute;
  bottom: 34px;
  left: 50%;
  transform: translateX(-50%);
  width: 22px;
  height: 14px;
  background: linear-gradient(180deg, var(--hull-edge) 0%, var(--hull-panel-lift) 40%, var(--hull-panel-dark) 100%);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.5), 0 2px 6px rgba(0, 0, 0, 0.6);
  z-index: 3;
}

.blade-tile__hilt {
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%);
  width: 14px;
  height: 22px;
  background: linear-gradient(180deg, var(--hull-panel-lift) 0%, var(--hull-panel-dark) 100%);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3), 0 2px 4px rgba(0, 0, 0, 0.7);
  z-index: 3;
}

.blade-tile__label {
  position: relative;
  z-index: 5;
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.9);
}

.blade-tile--custom .blade-tile__blade {
  background: linear-gradient(180deg, #FFFFFF 0%, #FF7A2E 15%, #FFB347 30%, #33D65A 50%, #2E82FF 70%, #A75DFF 100%);
  box-shadow: 0 0 6px 2px rgba(255, 180, 71, 0.7), 0 0 24px 8px rgba(167, 93, 255, 0.4), 0 0 60px 20px rgba(46, 130, 255, 0.25);
}

@keyframes artsabers-spin {
  to {
    transform: rotate(360deg);
  }
}
.woocommerce-cart-form > .blockUI,
.cart_totals > .blockUI {
  display: none !important;
}

.woocommerce-checkout-payment > .blockUI,
.woocommerce-checkout-review-order-table > .blockUI,
#order_review > .blockUI {
  display: none !important;
}

.blockUI.blockOverlay {
  background: var(--void) !important;
  opacity: 0.84 !important;
  z-index: 20;
}

.blockUI.blockOverlay::before {
  width: 34px;
  height: 34px;
  margin-top: calc(var(--space-4) * -1);
  margin-left: calc(var(--space-4) * -1);
  background: none;
  border: 2px solid rgba(255, 122, 46, 0.2);
  border-top-color: var(--ember);
  border-radius: 50%;
  box-shadow: 0 0 20px rgba(255, 122, 46, 0.3);
  animation: artsabers-spin 900ms linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .blockUI.blockOverlay::before {
    animation: none;
    border-top-color: rgba(255, 122, 46, 0.2);
    box-shadow: 0 0 20px rgba(255, 122, 46, 0.18);
  }
}
.box-item {
  position: relative;
  padding: var(--space-5);
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
}

.box-item::before, .box-item::after {
  content: "";
  position: absolute;
  top: 6px;
  z-index: 2;
  width: 6px;
  height: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.box-item::before {
  left: 6px;
}

.box-item::after {
  right: 6px;
}

.box-item__stage {
  position: relative;
  aspect-ratio: 4/3;
  margin-bottom: var(--space-4);
  padding: var(--space-4);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: var(--hull-panel-dark);
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.75), inset 0 0 0 1px rgba(0, 0, 0, 0.6);
  font-family: var(--font-body);
  font-style: italic;
  font-size: var(--fs-micro);
  line-height: 1.45;
  color: var(--chrome-dim);
  overflow: hidden;
}

.box-item__stage::after {
  content: "PHOTOGRAPH BRIEF";
  position: absolute;
  top: 8px;
  left: 10px;
  font-family: var(--font-display);
  font-style: normal;
  font-size: var(--fs-nano);
  letter-spacing: 0.24em;
  color: var(--ember);
}

.box-item__idx {
  margin-bottom: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  color: var(--ember);
}

.box-item__title {
  margin-bottom: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-base);
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.box-item__caption {
  font-size: var(--fs-small);
  line-height: 1.45;
  color: var(--chrome-dim);
}

.box-item__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.breadcrumb {
  padding: var(--space-4-5) 0;
  background: var(--carbon);
  box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.35);
}

.breadcrumb__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding: 0 var(--gutter-small, var(--space-4-5));
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.breadcrumb__inner a {
  color: var(--chrome-dim);
  text-decoration: none;
  transition: color 200ms ease;
}

.breadcrumb__inner a:hover {
  color: var(--ember);
}

.breadcrumb__sep {
  color: var(--ember);
  opacity: 0.6;
}

.breadcrumb__current {
  color: var(--chrome-warm);
}

.breadcrumb--inline {
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.breadcrumb--inline .breadcrumb__inner {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
}

.camcom__breadcrumbs {
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding: var(--space-4-5) var(--gutter-small, var(--space-4-5));
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.camcom__breadcrumbs a {
  color: var(--chrome-dim);
  text-decoration: none;
  transition: color 200ms ease;
}

.camcom__breadcrumbs a:hover, .camcom__breadcrumbs a:focus-visible {
  color: var(--ember);
}

.camcom__breadcrumbs .rank-math-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

.bundle-buy-box {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.bundle-buy-box .line-list {
  margin: 0;
}

.bundle-buy-box__note {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.buy-actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.byline-row {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  max-width: 56ch;
  padding-top: var(--space-4-5);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.06);
}

.byline-row__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(20, 20, 20, 0.94);
  border: 1px solid rgba(255, 122, 46, 0.4);
  box-shadow: inset 0 0 12px rgba(255, 122, 46, 0.15), 0 0 12px rgba(255, 122, 46, 0.2);
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 700;
  color: var(--ember);
}

.byline-row__meta {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.byline-row__author {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.byline-row__details {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.byline-row__details span + span::before {
  content: "·";
  margin-right: 8px;
  color: var(--chrome-dim);
}

.byline-row--standalone {
  max-width: 1200px;
  margin: 0 auto;
  padding: var(--space-5) var(--gutter-small, var(--space-4-5));
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.25);
}

.callout {
  margin-top: var(--space-7);
  padding: var(--space-6);
  background: var(--hull-panel-dark);
  box-shadow: var(--panel-lift);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--space-5);
  align-items: center;
  position: relative;
}

.callout::before, .callout::after {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  top: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.callout::before {
  left: 6px;
}

.callout::after {
  right: 6px;
}

@media (max-width: 700px) {
  .callout {
    grid-template-columns: 1fr;
  }
}
.callout__badge {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
  padding: var(--space-3) var(--space-4);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.55);
  white-space: nowrap;
}

.callout__copy {
  font-size: var(--fs-small);
  color: var(--chrome-warm);
  line-height: 1.55;
}

.callout__copy strong {
  color: var(--chrome-highlight);
  font-family: var(--font-display);
  letter-spacing: 0.04em;
}

.carbon-scanline {
  background-image: linear-gradient(180deg, rgba(250, 250, 250, 0.05) 0, rgba(250, 250, 250, 0.05) 1px, transparent 1px), radial-gradient(ellipse 55% 60% at 4% 20%, rgba(255, 122, 46, 0.14), transparent 55%), radial-gradient(ellipse 40% 45% at 100% 100%, rgba(255, 122, 46, 0.06), transparent 55%), repeating-linear-gradient(0deg, transparent 0px, transparent 3px, rgba(250, 250, 250, 0.006) 3px, rgba(250, 250, 250, 0.006) 4px), repeating-linear-gradient(90deg, transparent 0px, transparent 319px, rgba(250, 250, 250, 0.02) 319px, rgba(250, 250, 250, 0.02) 320px), linear-gradient(180deg, transparent 0%, rgba(250, 250, 250, 0.016) 55%, transparent 100%);
}

.carbon-scanline--lines, .guide-layout > .article-body {
  background-image: linear-gradient(180deg, rgba(250, 250, 250, 0.05) 0, rgba(250, 250, 250, 0.05) 1px, transparent 1px), repeating-linear-gradient(0deg, transparent 0px, transparent 3px, rgba(250, 250, 250, 0.006) 3px, rgba(250, 250, 250, 0.006) 4px), repeating-linear-gradient(90deg, transparent 0px, transparent 319px, rgba(250, 250, 250, 0.02) 319px, rgba(250, 250, 250, 0.02) 320px), linear-gradient(180deg, transparent 0%, rgba(250, 250, 250, 0.016) 55%, transparent 100%);
}

.cart-drawer {
  background-color: var(--charcoal);
  color: var(--chrome-warm);
  box-shadow: -16px 0 48px rgba(0, 0, 0, 0.6);
}

.cart-drawer__inner {
  background-color: var(--charcoal);
}

.cart-drawer__header {
  background-color: var(--charcoal);
  border-bottom: 1px solid rgba(255, 122, 46, 0.25);
}

.cart-drawer__title {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.cart-drawer__full-link, .cart-drawer__continue {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  transition: color 0.2s ease;
}

.cart-drawer__full-link:hover, .cart-drawer__continue:hover {
  color: var(--ember);
}

.cart-drawer__close {
  color: var(--chrome-warm);
  background: transparent;
  border: none;
  cursor: pointer;
}

.cart-drawer__close .icon {
  fill: var(--chrome-warm);
}

.cart-drawer__close:hover {
  color: var(--ember);
}

.cart-drawer__close:hover .icon {
  fill: var(--ember);
}

.cart-drawer__body {
  background-color: var(--charcoal);
}

.cart-drawer__item__qty__button {
  color: var(--chrome-warm);
  border-color: var(--hull-edge);
  border-radius: 0;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.cart-drawer__item__qty__button:hover:not(:disabled), .cart-drawer__item__qty__button:focus-visible {
  color: var(--ember);
  border-color: var(--ember);
}

.cart-drawer__item__remove {
  color: var(--chrome-dim);
  transition: color 0.2s ease;
}

.cart-drawer__item__remove:hover, .cart-drawer__item__remove:focus-visible {
  color: var(--ember);
}

.cart-drawer__footer {
  background-color: var(--charcoal);
  border-top: 1px solid rgba(255, 122, 46, 0.25);
}

.cart-drawer__empty {
  color: var(--chrome-dim);
  text-align: center;
}

.cart-drawer__empty-lead {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.55;
  color: var(--chrome-warm);
  margin-bottom: var(--space-5);
}

.composite-buy-box,
.entry-summary .cart {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.composite-buy-box .composite_component,
.entry-summary .cart .composite_component {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.composite-buy-box .summary_content,
.entry-summary .cart .summary_content {
  display: block;
}

.composite-buy-box .composited_product_title_wrapper:empty,
.composite-buy-box .composited_product_title_wrapper[data-show_title=no],
.entry-summary .cart .composited_product_title_wrapper:empty,
.entry-summary .cart .composited_product_title_wrapper[data-show_title=no] {
  padding: 0;
}

.composite-buy-box.composite_form .component .component_inner,
.entry-summary .cart.composite_form .component .component_inner {
  padding-bottom: 0;
}

.composite-buy-box.composite_form .composite_wrap,
.entry-summary .cart.composite_form .composite_wrap {
  padding-top: 0;
}

.composite-buy-box .component_title,
.composite-buy-box .component_section_title,
.entry-summary .cart .component_title,
.entry-summary .cart .component_section_title {
  display: block;
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.composite-buy-box .component_title,
.entry-summary .cart .component_title {
  margin: 0;
}

.composite-buy-box .component_section_title,
.entry-summary .cart .component_section_title {
  margin: 0 0 var(--space-3);
}

.composite-buy-box .select_label,
.entry-summary .cart .select_label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.composite-buy-box .component_option_radio_buttons_fieldset,
.entry-summary .cart .component_option_radio_buttons_fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

.composite-buy-box .aria_title,
.entry-summary .cart .aria_title {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.composite-buy-box .component .component_options,
.entry-summary .cart .component .component_options {
  overflow: visible;
}

.composite-buy-box .component_option_radio_buttons_container,
.entry-summary .cart .component_option_radio_buttons_container {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.composite-buy-box .component_option_radio_button_container,
.entry-summary .cart .component_option_radio_button_container {
  width: auto;
  float: none;
  list-style: none;
}

.composite-buy-box .component_option_radio_button,
.entry-summary .cart .component_option_radio_button {
  position: relative;
}

.composite-buy-box .radio_button,
.entry-summary .cart .radio_button {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.composite-buy-box .radio_button_input,
.entry-summary .cart .radio_button_input {
  display: contents;
}

.composite-buy-box .radio_button_description,
.entry-summary .cart .radio_button_description {
  width: 100%;
}

.composite-buy-box .radio_button_description .radio_button_title,
.entry-summary .cart .radio_button_description .radio_button_title {
  margin: 0;
  text-align: center;
}

.composite-buy-box .component_description,
.composite-buy-box .component_description_wrapper,
.entry-summary .cart .component_description,
.entry-summary .cart .component_description_wrapper {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.composite-buy-box .composite_availability .stock,
.entry-summary .cart .composite_availability .stock {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.composite-buy-box .composite_availability .stock::before,
.entry-summary .cart .composite_availability .stock::before {
  content: "";
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  background: var(--ember);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.75);
}

.composite-buy-box .composite_availability .out-of-stock::before,
.entry-summary .cart .composite_availability .out-of-stock::before {
  background: var(--chrome-dim);
  box-shadow: none;
}

.composite-buy-box .composite_message,
.entry-summary .cart .composite_message {
  font-family: var(--font-body);
  font-size: var(--fs-small);
}

.cart-gift {
  position: relative;
  isolation: isolate;
  padding: var(--space-6) 0;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0.14) 0%, rgba(255, 122, 46, 0.06) 45%, rgba(6, 6, 6, 0.3) 100%), var(--carbon);
}

.cart-gift::before, .cart-gift::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  z-index: 2;
  height: 1px;
  background: rgba(255, 122, 46, 0.55);
  box-shadow: 0 0 14px rgba(255, 122, 46, 0.4);
}

.cart-gift::before {
  top: 0;
}

.cart-gift::after {
  bottom: 0;
}

.cart-gift__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  min-height: 72px;
}

.cart-gift__body {
  display: flex;
  align-items: center;
  gap: var(--space-4-5);
  flex: 1;
  min-width: 0;
}

.cart-gift__glyph {
  display: grid;
  place-items: center;
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  background: rgba(255, 122, 46, 0.14);
  border: 1px solid rgba(255, 122, 46, 0.55);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.3), 0 0 24px rgba(255, 122, 46, 0.3);
  color: var(--ember);
}

.cart-gift__glyph svg {
  width: 30px;
  height: 30px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
}

.cart-gift__text {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.45;
  color: var(--chrome-warm);
}

.cart-gift__text .tag {
  display: inline-block;
  margin-right: var(--space-3);
  padding: 3px var(--space-3) 3px 0;
  border-right: 1px solid rgba(255, 122, 46, 0.35);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-base);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.cart-gift__text strong {
  color: var(--chrome-highlight);
  font-weight: 600;
}

.cart-gift__preview {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  flex: 0 0 auto;
  padding: var(--space-3) var(--space-4) var(--space-3) var(--space-3);
  background: rgba(6, 6, 6, 0.55);
  border: 1px solid rgba(255, 122, 46, 0.35);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.15);
}

.cart-gift__preview-media {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  background-color: var(--void);
  background-image: var(--bg-image, none);
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(250, 250, 250, 0.06);
}

.cart-gift__preview-body {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.cart-gift__preview-name {
  overflow: hidden;
  max-width: 260px;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: var(--chrome-highlight);
}

.cart-gift__preview-tag {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.cart-gift__change {
  padding-bottom: 2px;
  border-bottom: 1px dotted rgba(255, 122, 46, 0.6);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  white-space: nowrap;
}

.cart-gift__change:hover {
  border-bottom-style: solid;
}

@media (max-width: 820px) {
  .cart-gift__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-4);
  }
  .cart-gift__body {
    width: 100%;
  }
}
.cart-gift__toggle {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  flex: 0 0 auto;
  padding: var(--space-3) var(--space-4-5);
  background: rgba(255, 122, 46, 0.1);
  border: 1px solid var(--ember);
  font-family: var(--font-title);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  cursor: pointer;
  transition: background 160ms ease, color 160ms ease;
}

.cart-gift__toggle:hover {
  background: rgba(255, 122, 46, 0.18);
  color: var(--ember);
}

.cart-gift__toggle-caret {
  transition: transform 200ms ease;
}

.cart-gift__toggle[aria-expanded=true] .cart-gift__toggle-caret {
  transform: rotate(180deg);
}

.cart-gift__drawer.is-collapsible {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 260ms ease;
}

.cart-gift__drawer.is-collapsible.is-open {
  grid-template-rows: 1fr;
}

.cart-gift__drawer-clip {
  overflow: hidden;
  min-height: 0;
}

.cart-gift__drawer-inner {
  padding: var(--space-6) 0;
  border-top: 1px solid rgba(255, 122, 46, 0.22);
}

.gift-tile {
  display: grid;
  grid-template-columns: 80px 1fr auto;
  grid-template-areas: "media name   worth" "media choose choose";
  column-gap: var(--space-4);
  row-gap: var(--space-2);
  align-content: start;
  height: 100%;
  padding: var(--space-3);
  background: var(--hull-panel-dark);
  border: 1px solid rgba(250, 250, 250, 0.05);
}

.gift-tile__media {
  grid-area: media;
  width: 80px;
  height: 80px;
  background-color: var(--bg-input);
  background-image: var(--bg-image);
  background-size: cover;
  background-position: center;
}

.gift-tile__name {
  grid-area: name;
  align-self: center;
  min-width: 0;
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.gift-tile__worth {
  grid-area: worth;
  align-self: center;
  justify-self: end;
  white-space: nowrap;
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.gift-tile__component {
  grid-area: pick;
  min-width: 0;
}

.gift-tile__component-select {
  width: 100%;
  padding: var(--space-2) var(--space-3);
  background: var(--bg-input);
  border: 1px solid var(--hull-edge);
  font-family: var(--font-body);
  font-size: var(--fs-nano);
  color: var(--chrome-highlight);
}

.gift-tile__component-select:focus-visible {
  outline: 1px solid var(--ember);
  outline-offset: -2px;
}

.gift-tile__choose {
  grid-area: choose;
  align-self: end;
  padding: var(--space-2) var(--space-4);
  font-size: var(--fs-nano);
  white-space: nowrap;
}

.gift-tile:has(.gift-tile__component) {
  grid-template-areas: "media name worth" "media pick choose";
  column-gap: var(--space-3);
}

.cart-line {
  position: relative;
  display: grid;
  grid-template-columns: 100px 1fr auto;
  gap: var(--space-5);
  padding: var(--space-5) 0 var(--space-4-5);
  border-top: 1px solid rgba(250, 250, 250, 0.06);
  align-items: flex-start;
}

.cart-line:first-of-type {
  padding-top: var(--space-2);
  border-top: none;
}

.cart-line__media {
  width: 100px;
  height: 100px;
  background-color: var(--hull-panel-dark);
  background-image: var(--bg-image, none);
  background-size: cover;
  background-position: center;
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.08), inset 0 0 0 1px rgba(255, 122, 46, 0.15);
}

.cart-line__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  min-width: 0;
}

.cart-line__name {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-prose);
  letter-spacing: 0.03em;
  line-height: 1.15;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.cart-line__name .core {
  margin-left: var(--space-2);
  color: var(--chrome-warm);
  font-weight: 500;
}

.cart-line__actions {
  display: flex;
  gap: var(--space-5);
  margin-top: var(--space-1);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.cart-line__actions a {
  padding-bottom: 1px;
  border-bottom: 1px dotted rgba(184, 176, 166, 0.4);
}

.cart-line__actions a:hover {
  color: var(--ember);
  border-bottom-color: var(--ember);
}

.cart-line__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-3);
  min-width: 180px;
}

.cart-line__prices {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  margin-top: var(--space-1);
}

.cart-line__unit {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.cart-line__unit .val {
  margin-left: var(--space-1);
  color: var(--chrome-warm);
  font-variant-numeric: tabular-nums;
}

.cart-line__included {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.cart-line--bundled {
  border-left: 1px solid var(--ember-hairline-soft);
  padding-left: var(--space-4);
}

.cart-line__total {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-subheading);
  letter-spacing: 0.02em;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.cart-line--child {
  position: relative;
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: var(--space-4-5);
  padding: var(--space-3) 0 var(--space-5) var(--space-6-5);
  border-top: none;
  align-items: center;
  min-height: 60px;
}

.cart-line--child::before {
  content: "";
  position: absolute;
  left: 22px;
  top: 0;
  width: 12px;
  height: 26px;
  border-left: 1px solid rgba(255, 122, 46, 0.28);
  border-bottom: 1px solid rgba(255, 122, 46, 0.28);
}

.cart-line__component {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.cart-line__component-label {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
  opacity: 0.85;
}

.cart-line__component-name {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-small);
  letter-spacing: 0.04em;
  line-height: 1.35;
  color: var(--chrome-warm);
}

.cart-line__component-name strong {
  color: var(--chrome-highlight);
  font-weight: 600;
}

.cart-line__component-name .sep {
  margin: 0 var(--space-2);
  opacity: 0.6;
  color: var(--chrome-dim);
}

@media (max-width: 640px) {
  .cart-line {
    grid-template-columns: 72px 1fr;
    gap: var(--space-4);
  }
  .cart-line__right {
    grid-column: 1/-1;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    min-width: 0;
  }
  .cart-line--child {
    grid-template-columns: 60px 1fr;
    padding-left: var(--space-5);
  }
}
.blade-slot {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  width: 60px;
  height: 60px;
  background-color: var(--void);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.08), inset 0 0 0 1px rgba(255, 255, 255, 0.04);
}

.blade-slot::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: radial-gradient(ellipse 70% 90% at 50% 50%, rgba(250, 250, 250, 0.08) 0%, transparent 65%);
}

.blade-slot__silhouette {
  position: absolute;
  left: 50%;
  top: 8px;
  bottom: 8px;
  width: 6px;
  transform: translateX(-50%);
  z-index: 2;
  background: linear-gradient(180deg, rgba(250, 250, 250, 0.92) 0%, rgba(230, 225, 215, 0.78) 45%, rgba(180, 175, 165, 0.62) 100%);
  box-shadow: 0 0 4px rgba(255, 255, 255, 0.35), 0 0 10px rgba(255, 255, 255, 0.2), 0 0 18px rgba(255, 255, 255, 0.1);
}

.blade-slot__silhouette::after {
  content: "";
  position: absolute;
  left: -3px;
  right: -3px;
  bottom: -3px;
  height: 6px;
  z-index: 3;
  background: linear-gradient(180deg, var(--hull-edge) 0%, var(--hull-chrome-shadow) 100%);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.35);
}

.cart-status {
  display: none;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  padding: var(--space-3);
  background: rgba(255, 122, 46, 0.06);
  border-left: 2px solid var(--ember);
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.cart-status__mark {
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  border: 2px solid rgba(255, 122, 46, 0.22);
  border-top-color: var(--ember);
  border-radius: 50%;
}

.cart-status__text {
  display: none;
}

.cart-status--working {
  display: flex;
}

.cart-status--working .cart-status__mark {
  animation: artsabers-spin 800ms linear infinite;
}

.cart-status--working .cart-status__text--working {
  display: inline;
}

.cart-status--done {
  display: flex;
}

.cart-status--done .cart-status__mark {
  border-color: var(--ember);
  background: var(--ember);
  box-shadow: 0 0 10px rgba(255, 122, 46, 0.45);
}

.cart-status--done .cart-status__text--done {
  display: inline;
}

@media (prefers-reduced-motion: reduce) {
  .cart-status--working .cart-status__mark {
    animation: none;
    border-top-color: rgba(255, 122, 46, 0.22);
  }
}
.woocommerce-cart-form.processing .cart-status:not(.cart-status--done),
.cart_totals.processing .cart-status:not(.cart-status--done),
.cart_totals.is-updating .cart-status:not(.cart-status--done) {
  display: flex;
}

.woocommerce-cart-form.processing .cart-status:not(.cart-status--done) .cart-status__text--working,
.cart_totals.processing .cart-status:not(.cart-status--done) .cart-status__text--working,
.cart_totals.is-updating .cart-status:not(.cart-status--done) .cart-status__text--working {
  display: inline;
}

.woocommerce-cart-form.is-updating .delivery-options,
.woocommerce-cart-form.processing .delivery-options {
  opacity: 0.45;
  pointer-events: none;
  transition: opacity 120ms;
}

.category-hit {
  background: var(--carbon);
  padding: var(--space-7) 0 var(--space-8);
  position: relative;
}

.category-hit__row {
  margin-top: var(--space-6);
  display: flex;
  align-items: center;
  gap: var(--space-4);
  flex-wrap: wrap;
}

.category-hit__chip {
  display: inline-flex;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4-5) var(--space-5);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  border: 1px solid rgba(255, 122, 46, 0.55);
  background: linear-gradient(180deg, rgba(255, 122, 46, 0.06) 0%, rgba(255, 122, 46, 0.02) 100%);
  transition: box-shadow 180ms ease, background 180ms ease;
}

.category-hit__chip:hover {
  background: rgba(255, 122, 46, 0.12);
  box-shadow: var(--ember-glow-sm), var(--chrome-top-soft);
}

@media (max-width: 900px) {
  .category-hit__chip {
    padding: var(--space-4) var(--space-4-5);
    font-size: var(--fs-eyebrow);
  }
}
.category-hit__arrow {
  color: var(--ember);
  font-size: var(--fs-base);
}

.category-hit__chip-count {
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.16em;
  color: var(--chrome-dim);
  text-transform: uppercase;
  padding-left: var(--space-3);
  border-left: 1px solid rgba(255, 122, 46, 0.35);
}

@media (max-width: 900px) {
  .category-hit__chip-count {
    padding-left: var(--space-2);
    font-size: var(--fs-micro);
  }
}
.channel-band {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  padding-block: var(--section-padding, var(--space-9));
  margin-block: calc(-1 * var(--section-padding, var(--space-9)));
}

.channel-band::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: linear-gradient(90deg, rgb(11, 11, 11) 0%, rgb(15, 15, 15) 49.85%, rgba(255, 179, 71, 0.75) 49.95%, var(--ember) 50%, rgba(255, 179, 71, 0.75) 50.05%, rgb(15, 15, 15) 50.15%, rgb(11, 11, 11) 100%);
}

.channel-band::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: radial-gradient(ellipse at 50% 50%, rgba(255, 122, 46, 0.14) 0%, transparent 32%), linear-gradient(180deg, rgba(6, 6, 6, 0.68) 0%, rgba(6, 6, 6, 0.72) 100%);
}

.channel-band__inner {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
  padding-inline: var(--gutter-small, var(--space-4-5));
}

.channel-band__eyebrow {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--ember);
  margin-bottom: var(--space-4-5);
  display: inline-flex;
  align-items: center;
  gap: var(--space-4);
}

.channel-band__eyebrow::before, .channel-band__eyebrow::after {
  content: "";
  width: 32px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.6);
}

.channel-band__title {
  font-family: var(--font-display);
  font-size: var(--fs-title);
  font-weight: 700;
  line-height: 1.1;
  color: var(--chrome-highlight);
  letter-spacing: 0.8px;
  margin: 0 0 var(--space-4);
}

.channel-band__lede {
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.55;
  color: var(--chrome-warm);
  max-width: 52ch;
  margin: 0 auto var(--space-6-5);
}

.channel-band__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  justify-content: center;
  margin-bottom: var(--space-5);
}

.channel-band__response {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
  letter-spacing: 0.02em;
  margin: 0;
}

.channel-band__dot {
  color: var(--ember);
  margin: 0 var(--space-3);
}

@media (max-width: 900px) {
  .channel-band__title {
    font-size: var(--fs-heading-lg);
  }
  .channel-band__ctas {
    flex-direction: column;
    align-items: stretch;
  }
}
.character-tile {
  position: relative;
  z-index: 0;
  display: block;
  overflow: hidden;
  aspect-ratio: 3/4;
  background: var(--hull-panel-dark);
  box-shadow: var(--panel-lift);
  text-decoration: none;
  transition: transform 300ms ease, box-shadow 300ms ease;
}

.character-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  box-shadow: var(--chrome-top-soft);
  pointer-events: none;
}

.character-tile:hover {
  transform: translateY(-4px);
  box-shadow: var(--panel-lift-hover);
}

.character-tile__img {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.character-tile__scrim {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(180deg, rgba(15, 15, 15, 0.15) 0%, rgba(15, 15, 15, 0.55) 55%, rgba(15, 15, 15, 0.92) 100%);
}

.character-tile__body {
  position: absolute;
  right: 26px;
  bottom: 24px;
  left: 26px;
  z-index: 4;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.character-tile__meta {
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
}

.character-tile__name {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 600;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.character-tile__hint {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.character-tile__hint-arrow {
  color: var(--ember);
  transition: transform 300ms ease;
}

.character-tile:hover .character-tile__hint-arrow {
  transform: translateX(3px);
}

.checkbox {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.4;
  color: var(--chrome-warm);
  cursor: pointer;
}

.checkbox__input {
  position: absolute;
  width: 18px;
  height: 18px;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.checkbox__input:focus-visible + .checkbox__box {
  border-color: var(--ember);
  box-shadow: var(--ember-focus);
}

.checkbox__box {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  background: transparent;
  border: 1px solid var(--hull-edge);
  transition: border-color 0.2s ease, background 0.2s ease;
  pointer-events: none;
}

.checkbox__text {
  color: var(--chrome-warm);
}

.checkbox__text--fine {
  font-size: var(--fs-eyebrow);
  line-height: 1.5;
  color: var(--chrome-dim);
}

.checkbox__text--fine strong {
  font-weight: 500;
  color: var(--chrome-warm);
}

.checkbox--checked .checkbox__box, .checkbox__input:checked + .checkbox__box {
  background: transparent;
  border-color: var(--ember);
}

.checkbox--checked .checkbox__box::after, .checkbox__input:checked + .checkbox__box::after {
  content: "";
  width: 10px;
  height: 6px;
  border-left: 2px solid var(--ember);
  border-bottom: 2px solid var(--ember);
  transform: rotate(-45deg) translate(1px, -1px);
}

.checkbox--checked .checkbox__box {
  background: transparent;
  border-color: var(--ember);
}

.checkbox--checked .checkbox__box::after {
  content: "";
  width: 10px;
  height: 6px;
  border-left: 2px solid var(--ember);
  border-bottom: 2px solid var(--ember);
  transform: rotate(-45deg) translate(1px, -1px);
}

.checkbox--top {
  align-items: flex-start;
  margin-bottom: var(--space-3);
}

.checkbox--top .checkbox__box {
  margin-top: 2px;
}

.checkbox-row {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-warm);
  cursor: pointer;
}

.checkbox-row input[type=checkbox] {
  position: relative;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  margin-top: 1px;
  background: var(--bg-input);
  border: 1px solid var(--hull-edge);
  border-radius: 0;
  appearance: none;
  cursor: pointer;
  transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
}

.checkbox-row input[type=checkbox]:checked {
  background: var(--ember);
  border-color: var(--ember);
  box-shadow: var(--ember-glow-sm);
}

.checkbox-row input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 1px;
  left: 5px;
  width: 5px;
  height: 10px;
  border: solid var(--on-primary-fixed);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

body.woocommerce-checkout,
body.woocommerce-cart,
body.woocommerce-order-received,
body.woocommerce-account,
body.page-template-page-thankyou-preview,
body.page-template-page-my-account-preview,
.checkout-atmosphere {
  background: radial-gradient(1200px 900px at 8% 660px, rgba(255, 122, 46, 0.12), transparent 60%), radial-gradient(900px 700px at 95% calc(40% + 60px), rgba(255, 122, 46, 0.04), transparent 65%), repeating-linear-gradient(to bottom, transparent 0, transparent 239px, rgba(250, 250, 250, 0.035) 239px, rgba(250, 250, 250, 0.035) 240px), linear-gradient(180deg, var(--charcoal) 0%, var(--charcoal-warm) 40%, var(--charcoal) 100%);
  background-attachment: fixed;
  background-color: var(--charcoal);
}

body.woocommerce-checkout > main.wrapper > h1.title,
body.woocommerce-checkout > main.wrapper > .title.title__primary,
body.woocommerce-cart > main.wrapper > h1.title,
body.woocommerce-cart > main.wrapper > .title.title__primary,
body.woocommerce-order-received > main.wrapper > h1.title,
body.woocommerce-order-received > main.wrapper > .title.title__primary,
body.woocommerce-account > main.wrapper > h1.title,
body.woocommerce-account > main.wrapper > .title.title__primary,
body.page-template-page-thankyou-preview > main.wrapper > h1.title,
body.page-template-page-thankyou-preview > main.wrapper > .title.title__primary,
body.page-template-page-my-account-preview > main.wrapper > h1.title,
body.page-template-page-my-account-preview > main.wrapper > .title.title__primary {
  display: none;
}

body.woocommerce-checkout > main.wrapper,
body.woocommerce-cart > main.wrapper,
body.woocommerce-order-received > main.wrapper,
body.woocommerce-account > main.wrapper,
body.page-template-page-thankyou-preview > main.wrapper,
body.page-template-page-my-account-preview > main.wrapper {
  max-width: none;
  padding: 0;
}

.checkout-form-column {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  min-width: 0;
}

.checkout-form-column > *:empty {
  display: none;
}

.checkout-summary {
  position: sticky;
  top: 24px;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  align-self: start;
}

@media (max-width: 1024px) {
  .checkout-summary {
    position: static;
    top: auto;
  }
}
.checkout-summary .button--block {
  margin-top: var(--space-5);
}

.cart-actions {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  margin-top: var(--space-5);
}

.ship-to {
  margin-top: 0;
  margin-bottom: var(--space-6);
}

.ship-to .checkbox-row {
  font-size: var(--fs-base);
}

.shipping_address {
  margin-bottom: var(--space-7);
}

.form__grid--flat {
  display: grid;
  grid-template-columns: repeat(22, 1fr);
  gap: var(--space-4-5);
}

.form__grid--flat > .form-row {
  grid-column: span 22;
  margin-bottom: 0;
}

.form__grid--flat > .form-row-first,
.form__grid--flat > .form-row-last {
  grid-column: span 11;
}

.form__grid--flat > .form__row--town {
  grid-column: span 10;
}

.form__grid--flat > .form__row--postcode {
  grid-column: span 5;
}

.form__grid--flat > .form__row--region {
  grid-column: span 7;
}

@media (max-width: 640px) {
  .form__grid--flat {
    grid-template-columns: 1fr;
  }
  .form__grid--flat > .form-row {
    grid-column: 1/-1;
  }
}
.chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-bottom: var(--chip-row-mb, 0);
}

.closing-cta {
  position: relative;
  overflow: hidden;
  text-align: center;
}

.closing-cta::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60%;
  height: 72px;
  background: radial-gradient(ellipse at 50% 100%, rgba(255, 122, 46, 0.28) 0%, transparent 70%);
  pointer-events: none;
}

.closing-cta__inner {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.closing-cta__eyebrow {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ember);
  margin-bottom: var(--space-5);
  display: inline-flex;
  align-items: center;
  gap: var(--space-4);
}

.closing-cta__eyebrow::before, .closing-cta__eyebrow::after {
  content: "";
  width: 32px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.6);
}

.closing-cta__title {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-title-lg);
  line-height: 1.1;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
  margin: 0 0 var(--space-5);
}

.closing-cta__subline {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
  margin: 0 0 var(--space-6-5);
}

.closing-cta__cta {
  min-width: min(380px, 100%);
  max-width: 100%;
  margin-bottom: var(--space-4-5);
}

.closing-cta__note {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  line-height: 1.6;
}

@media (max-width: 768px) {
  .closing-cta__title {
    font-size: var(--fs-heading-lg);
  }
}
.common-searches {
  background: var(--carbon);
  padding: var(--space-8) 0;
  position: relative;
}

.common-searches__head {
  margin-bottom: var(--space-5);
}

.common-searches__eyebrow {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--ember);
  margin: 0 0 var(--space-3);
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
}

.common-searches__eyebrow::before {
  content: "";
  width: 30px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.55);
}

.common-searches__lede {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
  margin: 0;
}

.common-searches__cluster {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-4-5);
}

@media (max-width: 900px) {
  .common-searches__cluster {
    gap: var(--space-2);
  }
}
.comparison-table__wrap {
  overflow-x: auto;
  background: rgba(15, 15, 15, 0.85);
  box-shadow: var(--panel-lift);
}

.comparison-table__table--equal-cols {
  table-layout: fixed;
}

.comparison-table__table--equal-cols th:first-child,
.comparison-table__table--equal-cols td:first-child {
  width: 16%;
}

.comparison-table__table {
  width: 100%;
  min-width: 900px;
  border-collapse: collapse;
}

.comparison-table__table th,
.comparison-table__table td {
  padding: var(--space-4-5);
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid rgba(250, 250, 250, 0.05);
}

.comparison-table__table thead th {
  padding-top: var(--space-5);
  padding-bottom: var(--space-5);
  background: rgba(10, 10, 10, 0.75);
  border-bottom: 1px solid rgba(250, 250, 250, 0.1);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  vertical-align: bottom;
}

.comparison-table__table thead th small {
  display: block;
  margin-top: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 400;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.comparison-table__table tbody th {
  width: 200px;
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.comparison-table__table td {
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-small);
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--chrome-warm);
}

.comparison-table__col-selected {
  position: relative;
  background: rgba(255, 122, 46, 0.06);
  color: var(--chrome-highlight) !important;
  box-shadow: inset 2px 0 0 rgba(255, 122, 46, 0.35);
}

.comparison-table__yes {
  color: var(--ember);
  font-weight: 600;
}

.comparison-table__no {
  color: var(--chrome-dim);
}

.consent-banner {
  position: fixed;
  inset-inline: var(--space-4);
  inset-block-end: var(--space-4);
  z-index: 9990;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4) var(--space-8);
  max-width: var(--site-max-width);
  margin-inline: auto;
  padding: var(--space-6) var(--space-8);
  border: 1px solid var(--hairline);
  border-block-start: 2px solid var(--ember);
  border-radius: var(--radius-card);
  background-color: var(--charcoal);
  box-shadow: var(--card-shadow-hover);
}

.consent-banner[hidden] {
  display: none;
}

.consent-banner__text {
  flex: 1 1 28rem;
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.consent-banner__link {
  margin-inline-start: var(--space-2);
  color: var(--ember);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.consent-banner__link:hover {
  color: var(--ember-bright);
}

.consent-banner__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3) var(--space-4);
}

@media (max-width: 640px) {
  .consent-banner {
    padding: var(--space-5);
  }
  .consent-banner__actions .button {
    flex: 1 1 auto;
  }
}
.consent-button--link {
  padding: 0;
  border: 0;
  background: none;
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  cursor: pointer;
}

.consent-button--link:hover {
  color: var(--ember);
}

.consent-panel {
  position: fixed;
  inset: 0;
  z-index: 9991;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-4);
  background-color: rgba(0, 0, 0, 0.72);
}

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

.consent-panel__dialog {
  width: 100%;
  max-width: 36rem;
  max-height: 100%;
  overflow-y: auto;
  padding: var(--space-7);
  border: 1px solid var(--hairline);
  border-block-start: 2px solid var(--ember);
  border-radius: var(--radius-card);
  background-color: var(--charcoal);
  box-shadow: var(--card-shadow-hover);
}

.consent-panel__dialog:focus {
  outline: none;
}

.consent-panel__title {
  margin: 0 0 var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 600;
  line-height: 1.2;
  color: var(--chrome-highlight);
}

.consent-panel__text, .consent-panel__description {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.consent-panel__group {
  margin-block-start: var(--space-6);
  padding-block-start: var(--space-6);
  border-block-start: 1px solid var(--hairline);
}

.consent-panel__toggle {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-block-end: var(--space-2);
  cursor: pointer;
}

.consent-panel__toggle input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--ember);
}

.consent-panel__name {
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.consent-panel__always {
  margin-inline-start: auto;
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember);
}

.consent-panel__cookies {
  margin-block-start: var(--space-3);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.consent-panel__cookies summary {
  color: var(--ember);
  cursor: pointer;
}

.consent-panel__cookies ul {
  margin: var(--space-2) 0 0;
  padding-inline-start: var(--space-6);
}

.consent-panel__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-3) var(--space-4);
  margin-block-start: var(--space-6);
  padding-block-start: var(--space-6);
  border-block-start: 1px solid var(--hairline);
}

html.consent-panel-open {
  overflow: hidden;
}

.consent-cookies__group + .consent-cookies__group {
  margin-block-start: var(--space-8);
}

.consent-cookies__title {
  margin: 0 0 var(--space-2);
}

.consent-cookies__text {
  margin: 0 0 var(--space-4);
}

.consent-cookies__table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.consent-cookies__table th {
  padding: var(--space-3);
  border-block-end: 1px solid var(--ember-hairline);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.12em;
  text-align: start;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.consent-cookies__table td {
  padding: var(--space-3);
  border-block-end: 1px solid var(--hairline);
  vertical-align: top;
}

.consent-cookies__table code {
  font-family: var(--font-mono);
  font-size: var(--fs-small);
  white-space: nowrap;
  color: var(--chrome-highlight);
}

@media (max-width: 640px) {
  .consent-cookies__table thead {
    display: none;
  }
  .consent-cookies__table tr {
    display: block;
    padding-block: var(--space-3);
    border-block-end: 1px solid var(--hairline);
  }
  .consent-cookies__table td {
    display: block;
    padding: 0;
    border: 0;
  }
  .consent-cookies__table code {
    white-space: normal;
    overflow-wrap: anywhere;
  }
}
.consent-settings-link {
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  color: inherit;
  text-decoration: underline;
  cursor: pointer;
}

.consent-settings-link:hover {
  color: var(--ember);
}

.content-group {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: var(--space-6);
  background: var(--hull-panel);
  border: 1px solid var(--hairline-strong);
  box-shadow: var(--panel-lift);
}

:not(.grid) > .content-group + .content-group {
  margin-top: var(--space-6-5);
}

.content-group--spaced {
  margin-top: var(--space-6-5);
}

.content-group__legend {
  position: absolute;
  top: -11px;
  left: 24px;
  z-index: 2;
  padding: 0 var(--space-3);
  background: var(--content-group-knockout, var(--charcoal));
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.content-group__legend-meta {
  margin-left: 2px;
  font-style: normal;
  font-weight: 400;
  color: var(--ember);
}

.content-group__sub {
  margin-bottom: var(--space-5);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-dim);
}

.content-group--flat {
  padding: var(--space-7) 0 var(--space-6-5);
  background: transparent;
  border: 0;
  border-top: 1px solid var(--ember-hairline-soft);
  box-shadow: none;
}

.content-group--flat:first-of-type {
  padding-top: var(--space-2);
  border-top: 0;
}

.content-group--flat .content-group__legend {
  position: static;
  display: block;
  margin-bottom: var(--space-2);
  padding: 0;
  background: transparent;
  font-size: var(--fs-base);
  letter-spacing: 0.14em;
  color: var(--chrome-highlight);
}

.content-group--flat .content-group__sub {
  margin-bottom: var(--space-6);
}

@media (max-width: 640px) {
  .content-group {
    padding: var(--space-6) var(--space-4-5) var(--space-5);
  }
  .content-group__legend {
    left: 16px;
  }
}
.contents-rail {
  position: sticky;
  top: 104px;
  align-self: start;
  background: var(--charcoal-warm);
  box-shadow: var(--panel-lift), inset -1px 0 0 var(--ember-hairline-soft);
}

@media (max-width: 1024px) {
  .contents-rail {
    position: relative;
    top: auto;
  }
}
.contents-rail__head {
  padding: var(--space-4-5) var(--space-4-5) var(--space-4);
}

@media (max-width: 1024px) {
  .contents-rail__head {
    padding-bottom: var(--space-3);
  }
}
.contents-rail__chip {
  display: inline-flex;
  padding: var(--space-1) var(--space-3);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
}

.contents-rail__list {
  display: flex;
  flex-direction: column;
}

@media (max-width: 1024px) {
  .contents-rail__list {
    flex-direction: row;
    overflow-x: auto;
    scrollbar-width: none;
  }
}
.contents-rail__link {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-height: 44px;
  padding: 0 var(--space-4-5);
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--chrome-dim);
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.12);
  transition: color 180ms ease, background 180ms ease;
}

@media (max-width: 1024px) {
  .contents-rail__link {
    flex: none;
    box-shadow: inset 1px 0 0 rgba(255, 122, 46, 0.12);
  }
}
.contents-rail__link:hover {
  color: var(--chrome-warm);
  background: rgba(250, 250, 250, 0.02);
}

.contents-rail__idx {
  min-width: 18px;
  font-size: var(--fs-micro);
  letter-spacing: 0.12em;
  color: var(--chrome-dim);
  opacity: 0.6;
  font-variant-numeric: tabular-nums;
}

.contents-rail__link--active {
  color: var(--chrome-highlight);
  background: var(--bg-card-lift);
}

.contents-rail__link--active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 2px;
  background: var(--ember);
  box-shadow: 0 0 10px rgba(255, 122, 46, 0.8);
}

@media (max-width: 1024px) {
  .contents-rail__link--active::before {
    left: 12px;
    right: 12px;
    top: auto;
    bottom: 0;
    width: auto;
    height: 2px;
  }
}
.contents-rail__link--active .contents-rail__idx {
  color: var(--ember);
  opacity: 1;
}

.contents-rail__foot {
  padding: var(--space-4) var(--space-4-5) var(--space-4-5);
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.3);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

@media (max-width: 1024px) {
  .contents-rail__foot {
    display: none;
  }
}
.contents-rail__foot-em {
  color: var(--chrome-warm);
}

.cost-table {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.cost-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--space-3);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.cost-row__label {
  display: inline-flex;
  align-items: baseline;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.cost-row__label .idx {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--ember);
}

.cost-row__value {
  font-family: var(--font-display);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  color: var(--chrome-warm);
}

.cost-row__rate {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-body);
  text-align: right;
  cursor: pointer;
}

.cost-row__rate input {
  flex: 0 0 auto;
  margin: 0;
  accent-color: var(--ember);
}

.cost-row--shipping {
  align-items: flex-start;
}

.cost-row--shipping .cost-row__value {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-2);
}

.cost-row--discount .cost-row__value {
  color: var(--ember-glow);
}

.cost-row--free .cost-row__value {
  font-weight: 700;
  color: var(--ember-glow);
}

.cost-row--tax .cost-row__value {
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.02em;
  text-transform: none;
  color: var(--chrome-dim);
}

.total-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--space-3);
  padding: var(--space-1) 0 var(--space-2);
}

.total-row__label {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-small);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.total-row__value {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-heading);
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
  color: var(--ember);
  text-shadow: 0 0 24px rgba(255, 122, 46, 0.45);
}

@media (max-width: 640px) {
  .total-row__value {
    font-size: var(--fs-subheading);
  }
}
.loyalty-earn {
  margin-top: var(--space-1);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-align: right;
  color: var(--chrome-dim);
}

.loyalty-earn strong {
  font-weight: 600;
  color: var(--ember);
}

.coupon {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.coupon__row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--space-2);
}

.coupon__input {
  padding: var(--space-3);
  background: var(--bg-input);
  border: 1px solid var(--hairline);
  border-bottom: 1px solid var(--hull-edge);
  border-radius: 0;
  color: var(--chrome-warm);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  outline: none;
}

.coupon__input:focus {
  border-color: var(--ember);
  box-shadow: var(--ember-focus);
}

.coupon__btn {
  padding: 0 var(--space-4-5);
  background: transparent;
  border: 1px solid rgba(62, 62, 62, 0.6);
  color: var(--chrome-warm);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  transition: background 0.15s, box-shadow 0.15s;
}

.coupon__btn:hover {
  background: var(--hull-panel-lift);
  box-shadow: var(--chrome-top-soft);
}

.coupon__chip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-3);
  background: linear-gradient(180deg, rgba(255, 122, 46, 0.08) 0%, rgba(255, 122, 46, 0.02) 100%);
  border: 1px solid var(--ember-hairline);
  box-shadow: var(--chrome-top-soft);
}

.coupon__chip-code {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember-glow);
}

.coupon__chip-amount {
  margin-left: auto;
  margin-right: var(--space-3);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  font-variant-numeric: tabular-nums;
  color: var(--ember-glow);
}

.coupon__chip-remove {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  cursor: pointer;
}

.coupon__chip-remove:hover {
  color: var(--chrome-warm);
}

.cta-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 380px;
  padding: var(--space-6-5);
  background: var(--bg-card);
  box-shadow: var(--panel-lift);
  transition: box-shadow 220ms ease, transform 220ms ease;
}

.cta-card::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: rgba(250, 250, 250, 0.35);
  pointer-events: none;
}

.cta-card:hover {
  box-shadow: var(--panel-lift-hover);
  transform: translateY(-2px);
}

.cta-card__glyph {
  width: 48px;
  height: 48px;
  color: var(--ember);
  margin-bottom: var(--space-6);
  filter: drop-shadow(0 0 10px rgba(255, 122, 46, 0.35));
}

.cta-card__name {
  margin: 0 0 var(--space-4);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-heading);
  line-height: 1.15;
  letter-spacing: -0.005em;
  color: var(--chrome-highlight);
}

.cta-card__description {
  margin: 0 0 var(--space-5);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.55;
  color: var(--chrome-warm);
}

.cta-card__response {
  align-self: flex-start;
  margin: 0 0 var(--space-6);
}

.cta-card__cta {
  margin-top: auto;
  align-self: stretch;
}

.cross-sell-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: rgba(20, 20, 20, 0.94);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
  transition: box-shadow 250ms ease, transform 250ms ease;
  text-decoration: none;
}

.cross-sell-card::before, .cross-sell-card::after {
  content: "";
  position: absolute;
  top: 6px;
  z-index: 2;
  width: 6px;
  height: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.cross-sell-card::before {
  left: 6px;
}

.cross-sell-card::after {
  right: 6px;
}

.cross-sell-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
}

.cross-sell-card__stage {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: var(--hull-panel-dark);
}

.cross-sell-card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.cross-sell-card__tag {
  position: absolute;
  top: 12px;
  right: 12px;
  padding: var(--space-1) var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-style: normal;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.55);
}

.cross-sell-card__info {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-4-5) var(--space-5);
  background: var(--hull-panel-lift);
}

.cross-sell-card__eyebrow {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.cross-sell-card__title {
  font-family: var(--font-display);
  font-size: var(--fs-base);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.cross-sell-card__meta {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-top: var(--space-1);
}

.cross-sell-card__tier {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.cross-sell-card__price {
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-prose);
  font-weight: 600;
  color: var(--ember);
}

.cta-legal {
  margin-top: var(--space-3);
  font-size: var(--fs-micro);
  line-height: 1.5;
  text-align: center;
  color: var(--chrome-dim);
}

.cta-legal a {
  color: var(--ember);
}

.decision-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: subgrid;
  grid-row: span 7;
  row-gap: var(--space-4);
  align-content: start;
  padding: var(--space-6);
  background: var(--bg-card);
  box-shadow: var(--panel-lift), inset 0 0 0 1px rgba(255, 122, 46, 0.28);
}

@media (max-width: 767px) {
  .decision-card {
    padding: var(--space-5);
  }
}
.decision-card__idx {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ember);
  display: flex;
  align-items: center;
  gap: var(--space-3);
}

.decision-card__idx::after {
  content: "";
  flex: 1;
  height: 1px;
  background: rgba(255, 122, 46, 0.3);
}

.decision-card__title {
  font-family: var(--font-title);
  font-size: var(--fs-subheading);
  font-weight: 600;
  line-height: 1.22;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.decision-card__desc {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.decision-card__badge {
  justify-self: start;
  align-self: start;
}

.decision-card__label {
  margin-top: var(--space-2);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  align-self: end;
}

.decision-card__example {
  width: 100%;
  min-width: 0;
}

@media (max-width: 1199px) and (min-width: 768px) {
  .decision-card__example .catalogue-card__name {
    font-size: var(--fs-prose);
  }
}
.decision-card__example .catalogue-card {
  height: 100%;
}

.decision-card__cta {
  padding-top: var(--space-3);
}

.deflection {
  margin-top: var(--space-7);
  padding: var(--space-7) 0 var(--space-2);
  border-top: 1px solid rgba(255, 122, 46, 0.28);
}

.deflection-cell {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  min-height: 220px;
  padding: var(--space-6) var(--space-5) var(--space-5);
  background: var(--hull-panel);
  box-shadow: var(--panel-lift);
  transition: box-shadow 220ms ease, transform 220ms ease;
}

.deflection-cell:hover {
  transform: translateY(-2px);
  box-shadow: var(--panel-lift-hover);
}

.deflection-cell--compact {
  gap: var(--space-2);
  min-height: 0;
  padding: var(--space-4) var(--space-4-5);
}

.deflection-cell--compact .deflection-cell__cta {
  padding-top: var(--space-2);
  border-top: 0;
}

.deflection-cell--imaged {
  background-color: var(--hull-panel);
  background-image: linear-gradient(90deg, rgba(10, 10, 10, 0.94) 0%, rgba(10, 10, 10, 0.7) 45%, rgba(10, 10, 10, 0.15) 100%), var(--cell-image, none);
  background-position: center, right center;
  background-size: cover;
}

.deflection-cell--imaged .deflection-cell__text {
  color: var(--chrome-warm);
}

.deflection-cell__index {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ember);
}

.deflection-cell__num {
  color: var(--chrome-highlight);
  font-weight: 700;
}

.deflection-cell__title {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-prose);
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: var(--chrome-warm);
}

.deflection-cell__text {
  flex: 1;
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-dim);
}

.deflection-cell__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding-top: var(--space-3);
  border-top: 1px solid rgba(46, 46, 46, 0.6);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember);
  transition: color 160ms ease, gap 160ms ease;
}

.deflection-cell__cta:hover {
  gap: var(--space-3);
  color: var(--ember-glow);
}

.deflection-cell__arrow {
  color: var(--ember);
  font-size: var(--fs-small);
}

.delivery-options {
  margin-top: var(--space-5);
  padding-top: var(--space-5);
  border-top: 1px solid rgba(255, 122, 46, 0.18);
}

.delivery-options__legend {
  margin-bottom: var(--space-3);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.delivery-radio {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4);
  background: var(--hull-panel-dark);
  border: 1px solid rgba(250, 250, 250, 0.04);
  cursor: pointer;
  transition: background 120ms, border-color 120ms;
}

.delivery-radio__input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  appearance: none;
  opacity: 0;
  border: 0;
  cursor: pointer;
}

.delivery-radio__dot {
  position: relative;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  background: var(--bg-input);
  border: 1px solid var(--hull-edge);
  border-radius: 50%;
}

.delivery-radio:has(.delivery-radio__input:focus-visible) {
  outline: 2px solid var(--ember);
  outline-offset: 2px;
}

.delivery-radio__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  flex: 1;
}

.delivery-radio__title {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.delivery-radio__eta {
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  color: var(--chrome-dim);
}

.delivery-radio__price {
  margin-top: 2px;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-small);
  color: var(--chrome-warm);
  font-variant-numeric: tabular-nums;
}

.delivery-radio__price--free {
  color: var(--ember);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.delivery-radio:has(.delivery-radio__input:checked) {
  background: rgba(255, 122, 46, 0.05);
  border-color: var(--ember);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.08);
}

.delivery-radio:has(.delivery-radio__input:checked) .delivery-radio__dot {
  border-color: var(--ember);
}

.delivery-radio:has(.delivery-radio__input:checked) .delivery-radio__dot::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 4px;
  width: 8px;
  height: 8px;
  background: var(--ember);
  border-radius: 50%;
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.55);
}

.editorial-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 260px;
  gap: var(--space-4-5);
}

@media (max-width: 768px) {
  .editorial-grid {
    grid-template-columns: 100%;
    grid-auto-rows: 320px;
  }
  .editorial-grid .media-card--hero,
  .editorial-grid .media-card--wide {
    grid-column: auto;
    grid-row: auto;
  }
}
.editorial-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-6);
  padding: var(--space-9);
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  box-shadow: var(--panel-lift);
}

.editorial-panel__eyebrow {
  margin-bottom: calc(var(--eyebrow-to-title) - var(--space-6));
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--ember);
}

.editorial-panel__lede {
  max-width: 520px;
  font-size: var(--fs-prose);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.editorial-panel__lede em, .editorial-panel__lede-em {
  color: var(--ember);
  font-style: normal;
  font-weight: 600;
}

.editorial-panel__facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: var(--space-4-5);
  padding: var(--space-5) 0 var(--space-2);
  border-top: 1px solid rgba(62, 62, 62, 0.4);
  border-bottom: 1px solid rgba(62, 62, 62, 0.4);
  font-family: var(--font-display);
}

.editorial-panel__fact-label {
  display: block;
  margin-bottom: var(--space-2);
  font-size: var(--fs-nano);
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.editorial-panel__fact-value {
  overflow-wrap: anywhere;
  font-size: var(--fs-heading);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--chrome-highlight);
}

.editorial-panel__fact-value-em {
  color: var(--ember);
}

.editorial-panel__cta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4-5);
  margin-top: var(--space-3);
}

.editorial-panel__link-em {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

@media (max-width: 700px) {
  .editorial-panel {
    padding: var(--space-8) var(--space-6-5);
    gap: var(--space-5);
  }
  .editorial-panel__facts {
    gap: var(--space-4);
  }
}
.editorial-panel--bare {
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.editorial-prose > .eyebrow {
  margin-bottom: var(--space-4);
}

.editorial-prose > p {
  margin-top: var(--space-4-5);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.7;
  color: var(--chrome-warm);
}

.editorial-prose > p:first-of-type {
  margin-top: var(--space-5);
}

.editorial-prose > p.editorial-prose__close {
  font-style: italic;
  font-size: var(--fs-base);
  color: var(--chrome-highlight);
}

.empty-state {
  padding: var(--space-8) 0 var(--space-9);
}

.empty-state__inner {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 var(--gutter-small, var(--space-4-5));
  text-align: center;
}

.empty-state__hairline {
  height: 1px;
  margin-bottom: var(--space-7);
  background: linear-gradient(90deg, transparent 0%, var(--ember) 20%, var(--ember-glow) 50%, var(--ember) 80%, transparent 100%);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.5);
}

.empty-state__eyebrow {
  margin-bottom: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.empty-state__title {
  margin: 0 0 var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-heading);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.empty-state__body {
  max-width: 58ch;
  margin: 0 auto var(--space-6);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.empty-state__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-4);
}

.empty-state__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-5);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember);
  background: transparent;
  border: 1px solid rgba(255, 122, 46, 0.5);
  text-decoration: none;
  transition: background 200ms ease, border-color 200ms ease, box-shadow 200ms ease, color 200ms ease;
}

.empty-state__cta:hover {
  color: var(--chrome-highlight);
  background: rgba(255, 122, 46, 0.06);
  border-color: var(--ember);
  box-shadow: 0 0 20px rgba(255, 122, 46, 0.25);
}

.empty-state__cta-arrow {
  font-size: var(--fs-small);
}

@media (max-width: 900px) {
  .empty-state {
    padding: var(--space-6-5) 0 var(--space-8);
  }
  .empty-state__title {
    font-size: var(--fs-subheading);
  }
}
.editorial-content {
  /*
   * Core sets `counter-reset: footnotes` on `.entry-content`, and this container
   * used to be called that — so renaming it to `.editorial-content` on
   * 2026-09-09 silently took the footnote numbering with it. Core's rule still
   * exists in the block library stylesheet; it simply no longer matches
   * anything we render. Re-declared here so the rename costs nothing.
   *
   * It is the ONLY thing this component inherited from the old name, checked
   * against the core stylesheet rather than assumed.
   */
  counter-reset: footnotes;
  max-width: var(--site-max-width-default);
  margin-inline: auto;
  padding-inline: var(--gutter-small);
  color: var(--chrome-warm);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.65;
}

.editorial-content > * + * {
  margin-block-start: 1.5em;
}

.editorial-content > * + :is(h1, h2, h3, h4, h5, h6) {
  margin-block-start: 2em;
}

.editorial-content :where(p, h1, h2, h3, h4, h5, h6, ul, ol, blockquote, .wp-block-details, .wp-block-file, .wp-block-latest-posts) {
  max-width: var(--article-column);
  margin-inline: 0 auto;
}

.editorial-content :where(.wp-block-column, .wp-block-cover, .wp-block-media-text) :where(p, h1, h2, h3, h4, h5, h6, ul, ol, blockquote) {
  max-width: none;
}

.editorial-content > * + .wp-block-group:has(> .wp-block-group__inner-container > :is(h1, h2):first-child) {
  margin-block-start: 5em;
  padding-block-start: 3em;
  border-block-start: 1px solid var(--rule-on-anchor);
}

.editorial-content .alignwide:not(.wp-block-column *) {
  width: min(var(--article-alignwide), 100vw - var(--gutter) * 2);
  max-width: none;
  margin-left: 50%;
  transform: translateX(-50%);
}

.editorial-content .alignfull:not(.wp-block-column *) {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.editorial-content h1, .editorial-content h2, .editorial-content h3, .editorial-content h4, .editorial-content h5, .editorial-content h6 {
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--chrome-highlight);
  letter-spacing: 0.8px;
}

.editorial-content h1 {
  font-size: var(--fs-title);
  font-weight: 700;
  line-height: 1.1;
}

.editorial-content h2 {
  font-size: var(--fs-heading-lg);
  font-weight: 700;
  line-height: 1.2;
}

.editorial-content h3 {
  font-size: var(--fs-subheading);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.6px;
}

.editorial-content h4 {
  font-size: var(--fs-large);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.6px;
}

.editorial-content h5 {
  font-size: var(--fs-prose);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.4px;
}

.editorial-content h6 {
  font-size: var(--fs-base);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.editorial-content p {
  font-size: var(--fs-prose);
  line-height: 1.65;
  color: var(--chrome-warm);
}

.editorial-content h3.wp-block-heading {
  line-height: 1.55;
}

.editorial-content > .wp-block-group__inner-container > * + h3.wp-block-heading {
  margin-block-start: var(--space-6-5);
}

.editorial-content > .wp-block-group__inner-container > h2.wp-block-heading + * {
  margin-block-start: var(--space-7);
}

.editorial-content > .wp-block-group__inner-container > h3.wp-block-heading + :where(p, ul, ol, blockquote) {
  margin-block-start: var(--space-3);
}

.editorial-content p:is(.has-small-font-size, .has-eyebrow-font-size, .has-micro-font-size) {
  color: var(--chrome-dim);
}

.editorial-content p.has-drop-cap::first-letter {
  float: left;
  padding: var(--space-2) var(--space-4) 0 0;
  margin: 0;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-hero);
  line-height: 0.9;
  letter-spacing: -0.02em;
  color: var(--ember);
  text-shadow: var(--ember-glow-sm);
}

.editorial-content :is(.wp-block-paragraph,
.wp-block-list,
.wp-block-quote,
.wp-block-pullquote,
.wp-block-verse,
.wp-block-preformatted,
.wp-block-table td,
.wp-block-table th,
figcaption) a {
  color: var(--ember-glow);
  text-decoration: underline;
  text-decoration-color: rgba(255, 122, 46, 0.4);
  text-underline-offset: 3px;
  transition: color 200ms ease, text-decoration-color 200ms ease;
}

.editorial-content :is(.wp-block-paragraph,
.wp-block-list,
.wp-block-quote,
.wp-block-pullquote,
.wp-block-verse,
.wp-block-preformatted,
.wp-block-table td,
.wp-block-table th,
figcaption) a:hover {
  color: var(--ember);
  text-decoration-color: var(--ember);
}

.editorial-content strong {
  color: var(--chrome-highlight);
  font-weight: 600;
}

.editorial-content em {
  color: var(--chrome-glint);
  font-style: italic;
}

.editorial-content :where(ul, ol) {
  padding-left: var(--space-5);
}

.editorial-content :where(ul, ol) li {
  margin-bottom: var(--space-2);
  font-size: var(--fs-prose);
  color: var(--chrome-warm);
}

.editorial-content :where(ul, ol) li:last-child {
  margin-bottom: 0;
}

@media (max-width: 700px) {
  .editorial-content > * + .wp-block-group:has(> .wp-block-group__inner-container > :is(h1, h2):first-child) {
    margin-block-start: 3em;
    padding-block-start: 2em;
  }
  .editorial-content h1 {
    font-size: var(--fs-heading-lg);
  }
  .editorial-content h2 {
    font-size: var(--fs-heading);
  }
  .editorial-content h3 {
    font-size: var(--fs-large);
  }
  .editorial-content p,
  .editorial-content :where(ul, ol) li {
    font-size: var(--fs-base);
  }
  .editorial-content p.has-drop-cap::first-letter {
    font-size: var(--fs-section);
  }
}
.era-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: var(--space-4-5);
  row-gap: var(--space-6-5);
}

.era-strip__item {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.era-strip__item > .era-tile {
  flex: 1;
}

.era-strip__node {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--space-3);
  height: 24px;
  margin-bottom: var(--space-4);
}

.era-strip__node::before {
  content: "";
  position: absolute;
  left: 0;
  right: calc(-1 * var(--space-4-5));
  top: 50%;
  z-index: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0.6) 0%, rgba(255, 122, 46, 0.6) 100%);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.32);
}

.era-strip__item:nth-child(4n) .era-strip__node::before {
  right: 0;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0.6) 0%, rgba(255, 122, 46, 0) 100%);
}

.era-strip__node-mark {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: 11px;
  height: 11px;
  background: var(--ember);
  box-shadow: 0 0 14px rgba(255, 122, 46, 0.85);
}

.era-strip__node-idx {
  position: relative;
  z-index: 1;
  padding: 0 var(--space-2);
  font-family: var(--font-title);
  font-size: var(--fs-small);
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--chrome-dim);
  font-variant-numeric: tabular-nums;
  background: var(--charcoal);
}

.era-strip__node-date {
  position: relative;
  z-index: 1;
  padding: 0 var(--space-2);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  background: var(--charcoal);
}

.era-strip__item--aside .era-strip__node::before {
  height: 0;
  background: none;
  box-shadow: none;
  border-top: 1px dashed rgba(184, 176, 166, 0.35);
}

.era-strip__item--aside .era-strip__node-mark {
  background: transparent;
  box-shadow: inset 0 0 0 1px var(--ember);
}

.era-strip .era-tile__body {
  padding: var(--space-5);
}

.era-strip .era-tile__title {
  font-size: var(--fs-prose);
  line-height: 1.25;
}

@media (max-width: 1100px) {
  .era-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .era-strip__item:nth-child(4n) .era-strip__node::before {
    right: calc(-1 * var(--space-4-5));
    background: linear-gradient(90deg, rgba(255, 122, 46, 0.6) 0%, rgba(255, 122, 46, 0.6) 100%);
  }
  .era-strip__item:nth-child(2n) .era-strip__node::before {
    right: 0;
    background: linear-gradient(90deg, rgba(255, 122, 46, 0.6) 0%, rgba(255, 122, 46, 0) 100%);
  }
  .era-strip__item--aside .era-strip__node::before {
    background: none;
  }
}
@media (max-width: 767px) {
  .era-strip {
    display: flex;
    gap: var(--space-4);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: var(--gutter-small);
    margin-inline: calc(-1 * var(--gutter-small));
    padding-inline: var(--gutter-small);
    padding-bottom: var(--space-3);
  }
  .era-strip__item {
    flex: 0 0 78%;
    scroll-snap-align: start;
  }
  .era-strip__item:nth-child(n) .era-strip__node::before {
    right: calc(-1 * var(--space-4));
  }
}
.guide-layout {
  --grid-gap: var(--space-7);
  --grid-columns: 240px minmax(0, 1fr);
  align-items: start;
}

@media (max-width: 1024px) {
  .guide-layout {
    --grid-gap: var(--space-5);
  }
}
.guide-layout > .article-body {
  padding: var(--space-8) var(--space-6-5) var(--space-7);
  border: 1px solid var(--hull-edge);
  background-color: var(--hull-panel-dark);
}

@media (max-width: 767px) {
  .guide-layout > .article-body {
    padding: var(--space-7) var(--space-5);
  }
}
.guide-layout > .article-body .content-group__legend,
.guide-layout > .article-body .callout-box__icon {
  background-color: var(--hull-panel-dark);
}

.guide-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  padding-top: var(--space-4-5);
  box-shadow: inset 0 1px 0 var(--hairline);
  max-width: 56ch;
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.guide-meta__item + .guide-meta__item::before {
  content: "·";
  margin-right: var(--space-3);
  color: var(--ember);
}

.guide-meta__em {
  color: var(--chrome-warm);
  font-variant-numeric: tabular-nums;
}

.guide-section {
  scroll-margin-top: 112px;
}

.guide-section__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
}

.guide-section__title {
  font-family: var(--font-title);
  font-size: var(--fs-heading-lg);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

@media (max-width: 900px) {
  .guide-section__title {
    font-size: var(--fs-heading);
  }
}
.guide-section__lede {
  margin-bottom: var(--space-5);
  padding-left: var(--space-4);
  box-shadow: inset 2px 0 0 var(--ember-hairline);
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  font-style: italic;
  line-height: 1.6;
  color: var(--chrome-warm);
}

.guide-section__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 400px);
  gap: var(--space-7);
  align-items: start;
}

@media (max-width: 1199px) {
  .guide-section__body {
    grid-template-columns: 100%;
    gap: var(--space-6);
  }
}
.guide-section__prose {
  min-width: 0;
  max-width: 68ch;
}

.guide-section__prose .editorial-content {
  padding-inline: 0;
}

.guide-section__aside {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding-top: 10px;
}

@media (max-width: 1199px) {
  .guide-section__aside {
    padding-top: 0;
  }
}
.guide-section__aside > .wp-block-tff-callout-box:first-child {
  margin-top: var(--space-2);
}

.guide-section__aside > .wp-block-tff-callout-box:last-child {
  margin-bottom: 0;
}

.guide-section__specs {
  margin-top: 0;
}

.guide-section__cta {
  display: flex;
  justify-content: flex-start;
  margin-top: var(--space-6);
}

.guide-section__tier {
  display: none;
}

.guide-layout > .article-body {
  --guide-card-pad: var(--space-6-5);
}

@media (max-width: 767px) {
  .guide-layout > .article-body {
    --guide-card-pad: var(--space-5);
  }
}
.guide-layout > .article-body .guide-section[class*=guide-section--tier-] {
  margin-block-start: 0;
}

.guide-layout > .article-body .section-break[class*=section-break--tier-] {
  margin-block: var(--space-7) var(--space-6-5);
}

.guide-layout > .article-body .guide-section:not(.guide-section--tier-baselit) + .section-break--tier-baselit,
.guide-layout > .article-body .guide-section:not(.guide-section--tier-pixel) + .section-break--tier-pixel,
.guide-layout > .article-body .guide-section:not(.guide-section--tier-programmable) + .section-break--tier-programmable {
  display: none;
}

.guide-layout > .article-body .guide-section__tier {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-2) var(--space-4);
  margin: var(--space-8) calc(-1 * var(--guide-card-pad)) var(--space-5);
  padding: var(--space-6) var(--guide-card-pad) var(--space-5);
  border-top: 1px solid var(--ember-hairline);
  background-image: linear-gradient(180deg, rgba(255, 122, 46, 0.1) 0%, rgba(255, 122, 46, 0) 100%);
  box-shadow: 0 -10px 18px -12px rgba(255, 122, 46, 0.45);
  font-family: var(--font-display);
  text-transform: uppercase;
}

.guide-layout > .article-body .guide-section--tier-baselit ~ .guide-section--tier-baselit .guide-section__tier,
.guide-layout > .article-body .guide-section--tier-pixel ~ .guide-section--tier-pixel .guide-section__tier,
.guide-layout > .article-body .guide-section--tier-programmable ~ .guide-section--tier-programmable .guide-section__tier {
  display: none;
}

.guide-layout > .article-body .guide-section__tier-idx {
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.22em;
  color: var(--ember);
}

.guide-layout > .article-body .guide-section__tier-label {
  font-family: var(--font-title);
  font-size: var(--fs-heading);
  font-weight: 700;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.guide-layout > .article-body .guide-section__tier-cores {
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.22em;
  color: var(--chrome-dim);
}

.guide-summary {
  --grid-gap: var(--space-8);
  --grid-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  align-items: center;
}

@media (max-width: 1024px) {
  .guide-summary {
    --grid-gap: var(--space-6);
  }
}
.guide-summary__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4-5);
}

.guide-summary__head .eyebrow {
  margin-bottom: calc(var(--eyebrow-to-title) - var(--space-4-5));
}

.guide-summary__action {
  margin-top: var(--space-3);
}

.hero-routes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4-5);
  max-width: 820px;
  margin-bottom: var(--space-5);
}

@media (max-width: 767px) {
  .hero-routes {
    grid-template-columns: 100%;
    gap: var(--space-3);
  }
}
.hero-route {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto auto;
  column-gap: var(--space-4-5);
  row-gap: var(--space-2);
  padding: var(--space-5);
  background: var(--bg-plate);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.55), var(--panel-lift);
  text-decoration: none;
  transition: box-shadow 250ms ease, transform 250ms ease;
}

.hero-route:hover {
  transform: translateY(-3px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
}

.hero-route__idx {
  grid-column: 1;
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.hero-route__title {
  grid-column: 1;
  font-family: var(--font-display);
  font-size: var(--fs-large);
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.15;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.hero-route__note {
  grid-column: 1;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-dim);
}

.hero-route__arrow {
  grid-column: 2;
  grid-row: 1/span 3;
  align-self: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  font-family: var(--font-display);
  font-size: var(--fs-large);
  color: var(--on-primary-fixed);
  background: linear-gradient(180deg, var(--ember-glow) 0%, var(--ember) 50%, var(--ember-deep) 100%);
  box-shadow: var(--ember-glow-sm);
  transition: transform 250ms ease, box-shadow 250ms ease;
}

.hero-route:hover .hero-route__arrow {
  transform: translateX(3px);
  box-shadow: var(--ember-glow-md);
}

.promo-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: var(--space-8);
  align-items: center;
}

@media (max-width: 900px) {
  .promo-feature {
    grid-template-columns: 100%;
    gap: var(--space-6);
  }
}
.promo-feature__media {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
  background: var(--bg-recess);
  box-shadow: var(--chrome-top-soft), 0 32px 60px -18px rgba(42, 8, 0, 0.75), 0 8px 20px -6px rgba(42, 8, 0, 0.55);
}

.promo-feature__media::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 3px;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0) 0%, rgba(255, 179, 71, 0.85) 50%, rgba(255, 122, 46, 0) 100%);
  filter: blur(1px);
  pointer-events: none;
}

.promo-feature__media-link {
  display: block;
  height: 100%;
}

.promo-feature__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.promo-feature__tag {
  position: absolute;
  top: var(--space-4);
  left: var(--space-4);
  z-index: 2;
  padding: var(--space-2) var(--space-3);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember-glow);
  background: rgba(6, 6, 6, 0.85);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
}

.promo-feature__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
  color: var(--on-primary-fixed);
}

.promo-feature__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--on-primary-fixed);
  opacity: 0.78;
}

.promo-feature__eyebrow-idx {
  font-weight: 700;
  opacity: 1;
}

.promo-feature__eyebrow-hair {
  display: inline-block;
  width: 28px;
  height: 1px;
  background: var(--on-primary-fixed);
  opacity: 0.55;
}

.promo-feature__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-title-lg);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--on-primary-fixed);
}

.promo-feature__text {
  max-width: 520px;
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.55;
  color: var(--on-primary-fixed);
  opacity: 0.88;
}

.promo-feature__facts {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6);
  padding: var(--space-4) 0;
  box-shadow: inset 0 1px 0 rgba(42, 8, 0, 0.28), inset 0 -1px 0 rgba(42, 8, 0, 0.28);
}

.promo-feature__fact {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  font-family: var(--font-chrome);
}

.promo-feature__fact-label {
  font-size: var(--fs-micro);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  opacity: 0.72;
}

.promo-feature__fact-value {
  font-size: var(--fs-base);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-variant-numeric: tabular-nums;
}

.promo-feature__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-6);
  margin-top: var(--space-2);
}

.promo-feature__link {
  padding-bottom: var(--space-1);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--on-primary-fixed);
  box-shadow: inset 0 -1px 0 rgba(42, 8, 0, 0.55);
}

.promo-feature__link:hover {
  box-shadow: inset 0 -2px 0 var(--on-primary-fixed);
}

.pull-quote-inline blockquote, .pull-quote-large blockquote {
  margin: 0;
  padding: 0;
  border: 0;
}

.pull-quote-large {
  position: relative;
  margin: var(--space-8) 0;
  padding: var(--space-7) var(--space-4-5);
  text-align: center;
  border-top: 1px solid rgba(255, 122, 46, 0.55);
  border-bottom: 1px solid rgba(255, 122, 46, 0.55);
}

.pull-quote-large::before, .pull-quote-large::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 40px;
  pointer-events: none;
}

.pull-quote-large::before {
  top: 0;
  background: linear-gradient(180deg, rgba(255, 122, 46, 0.1), transparent);
}

.pull-quote-large::after {
  bottom: 0;
  background: linear-gradient(0deg, rgba(255, 122, 46, 0.1), transparent);
}

.pull-quote-large p {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-title);
  line-height: 1.25;
  font-style: normal;
  color: var(--chrome-highlight);
}

.pull-quote-large cite {
  display: block;
  margin-top: 20px;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-style: normal;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

@media (max-width: 768px) {
  .pull-quote-large p {
    font-size: var(--fs-heading);
  }
}
.pull-quote-inline {
  float: right;
  width: 46%;
  margin: var(--space-4) 0 var(--space-5) var(--space-6);
  padding: var(--space-2) 0 var(--space-2) var(--space-5);
  border-left: 2px solid var(--ember);
}

.pull-quote-inline p {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-heading);
  line-height: 1.3;
  font-style: normal;
  color: var(--chrome-highlight);
}

.pull-quote-inline cite {
  display: block;
  margin-top: 12px;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-style: normal;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

@media (max-width: 768px) {
  .pull-quote-inline {
    float: none;
    width: 100%;
    margin: var(--space-5) 0;
  }
  .pull-quote-inline p {
    font-size: var(--fs-subheading);
  }
}
.image-pair {
  counter-reset: image-pair-fig;
  margin: var(--space-7) 0;
  gap: var(--space-4-5);
}

.image-pair__cell {
  display: flex;
  flex-direction: column;
}

.image-pair__frame {
  margin: 0;
  background: var(--hull-panel-dark);
  box-shadow: var(--panel-lift);
}

.image-pair__frame img {
  display: block;
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
}

.image-pair__frame figcaption {
  counter-increment: image-pair-fig;
  display: flex;
  align-items: baseline;
  gap: var(--space-3);
  margin-top: var(--space-3);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-dim);
  text-align: left;
}

.image-pair__frame figcaption::before {
  content: "Fig. " counter(image-pair-fig);
  flex: 0 0 auto;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
  white-space: nowrap;
}

@media (max-width: 640px) {
  .image-pair {
    gap: var(--space-6);
  }
}
.ember-list {
  margin: var(--space-6) 0;
  padding: 0;
  list-style: none;
}

.ember-list li {
  position: relative;
  margin-bottom: var(--space-5);
  padding-left: var(--space-7);
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.65;
  color: var(--chrome-warm);
}

.ember-list li:last-child {
  margin-bottom: 0;
}

.ember-list__lead,
.ember-list li > strong:first-child {
  display: block;
  margin-bottom: var(--space-1);
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-prose);
  letter-spacing: 0.02em;
  color: var(--chrome-highlight);
}

.ember-list--bullet li::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 8px;
  width: 8px;
  height: 8px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.6);
}

.ember-list--number {
  counter-reset: ember-item;
}

.ember-list--number li {
  padding-left: var(--space-8);
  counter-increment: ember-item;
}

.ember-list--number li::before {
  content: counter(ember-item, decimal-leading-zero);
  position: absolute;
  top: 0;
  left: 0;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-base);
  letter-spacing: 0.14em;
  color: var(--ember);
}

.full-bleed-image {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  margin: var(--space-8) calc(50% - 50vw);
  padding-top: var(--space-6-5);
  border-top: 1px solid rgba(255, 122, 46, 0.4);
  border-bottom: 1px solid rgba(255, 122, 46, 0.4);
  background: var(--carbon);
}

.full-bleed-image img {
  display: block;
  width: 100%;
  height: 480px;
  object-fit: cover;
}

.full-bleed-image figcaption {
  display: flex;
  align-items: baseline;
  gap: var(--space-3);
  max-width: var(--article-column);
  margin: var(--space-4) auto var(--space-6-5);
  padding-inline: var(--space-6-5);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-dim);
  text-align: left;
}

.full-bleed-image figcaption::before {
  content: "Fig.";
  flex: 0 0 auto;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

@media (max-width: 768px) {
  .full-bleed-image img {
    height: 300px;
  }
}
.eol-actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.eol-actions__notice {
  position: relative;
  padding: var(--space-5) 0;
  border-top: 1px solid rgba(255, 122, 46, 0.24);
  border-bottom: 1px solid rgba(255, 122, 46, 0.24);
}

.eol-actions__notice-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  padding: var(--space-2) var(--space-3);
  background: transparent;
  border: 1px solid var(--ember);
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
}

.eol-actions__notice-eyebrow-dot {
  width: 6px;
  height: 6px;
  background: var(--ember);
  box-shadow: 0 0 6px var(--ember);
}

.eol-actions__notice-body {
  max-width: 500px;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.55;
  color: var(--chrome-warm);
}

.eol-actions__notice-body strong {
  font-family: var(--font-chrome);
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--chrome-glint);
}

.eol-actions__cta-row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.eol-actions__cta-secondary {
  padding: var(--space-2) 0;
  border-bottom: 1px solid rgba(184, 176, 166, 0.2);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  text-decoration: none;
  transition: color 0.2s, border-color 0.2s;
}

.eol-actions__cta-secondary:hover {
  color: var(--ember);
  border-bottom-color: var(--ember);
}

.eol-actions__cta-secondary-arrow {
  display: inline-block;
  margin-left: var(--space-2);
}

.product-hero__watermark {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 3;
  padding: var(--space-2) var(--space-3);
  background: rgba(10, 10, 10, 0.72);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255, 122, 46, 0.35);
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
}

.explainer-triptych__eyebrow {
  text-align: center;
  margin-bottom: var(--space-6);
}

.explainer-triptych__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--ember-hairline-soft);
}

.explainer-triptych__cell {
  background: var(--void);
  display: flex;
  flex-direction: column;
}

.explainer-triptych__media {
  aspect-ratio: 4/3;
  background-color: var(--hull-panel-dark);
  background-image: var(--bg-image);
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden;
}

.explainer-triptych__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(6, 6, 6, 0) 55%, rgba(6, 6, 6, 0.55) 100%);
}

.explainer-triptych__body {
  padding: var(--space-6-5) var(--space-6);
  flex: 1;
}

.explainer-triptych__index {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
  margin-bottom: var(--space-4);
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
}

.explainer-triptych__index::before {
  content: "";
  width: 18px;
  height: 1px;
  background: var(--ember);
}

.explainer-triptych__title {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-heading);
  line-height: 1.2;
  color: var(--chrome-highlight);
  margin: 0 0 var(--space-4);
}

.explainer-triptych__text {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
  margin: 0;
}

@media (max-width: 768px) {
  .explainer-triptych__grid {
    grid-template-columns: 1fr;
  }
}
.explore-links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6);
  margin-top: var(--space-7);
  padding-top: var(--space-6);
  box-shadow: inset 0 1px 0 rgba(184, 176, 166, 0.25);
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.explore-links__label {
  color: var(--chrome-dim);
}

.explore-links__link {
  padding-bottom: 2px;
  color: var(--ember);
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.4);
}

.explore-links__link:hover, .explore-links__link:focus-visible {
  color: var(--chrome-highlight);
  box-shadow: inset 0 -1px 0 var(--ember);
}

.express-pay {
  padding: var(--space-5);
  background: transparent;
  border: 0;
  box-shadow: none;
}

.express-pay__eyebrow {
  margin-bottom: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
}

.express-pay__buttons {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
}

.express-pay__buttons > * {
  min-width: 0;
}

.express-pay__buttons > div > p:not([class]),
.express-pay__buttons > p:not([class]) {
  display: none !important;
}

.express-pay__divider {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  margin-top: var(--space-5);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.express-pay__divider::before, .express-pay__divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--hairline-strong), transparent);
}

@media (max-width: 640px) {
  .express-pay__buttons {
    grid-template-columns: 1fr;
  }
}
.express-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  height: 48px;
  border: 1px solid transparent;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-small);
  letter-spacing: 0.06em;
  box-shadow: var(--chrome-top-soft);
  transition: transform 0.15s, box-shadow 0.15s;
}

.express-btn:hover {
  transform: translateY(-1px);
}

.express-btn--apple {
  background: #000;
  color: #fff;
}

.express-btn--apple .glyph {
  font-size: var(--fs-base);
}

.express-btn--google {
  background: #202124;
  color: #fff;
  border-color: #303236;
}

.express-btn--shop {
  background: #5A31F4;
  color: #fff;
}

.express-btn__mark-google {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-family: "Arial", sans-serif;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.g-b {
  color: #4285F4;
}

.g-r {
  color: #EA4335;
}

.g-y {
  color: #FBBC05;
}

.g-g {
  color: #34A853;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--eyebrow-mb, 0);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: var(--eyebrow-fw, 600);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
}

.eyebrow__idx {
  color: var(--chrome-dim);
  font-variant-numeric: tabular-nums;
}

.eyebrow__hair {
  display: inline-block;
  width: 46px;
  height: 1px;
  background: var(--ember);
  opacity: 0.7;
}

.eyebrow__em {
  color: var(--ember);
}

.eyebrow--dim {
  color: var(--chrome-dim);
}

.eyebrow--on-primary {
  color: var(--on-primary-fixed);
  opacity: 0.72;
}

.eyebrow--ruled {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  letter-spacing: 0.24em;
}

.eyebrow--ruled::before {
  content: "";
  width: 36px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.6);
}

.eyebrow--barred {
  position: relative;
  display: inline-block;
  padding-left: var(--space-4-5);
  font-weight: 600;
  letter-spacing: 0.24em;
}

.eyebrow--barred::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 3px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.55);
}

.eyebrow--block {
  display: block;
  margin-bottom: var(--space-4-5);
}

.facet-chips {
  background: var(--carbon);
  padding: var(--space-6-5) 0 var(--space-4-5);
}

.facet-chips__inner {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
}

@media (max-width: 900px) {
  .facet-chips__inner {
    gap: var(--space-2);
  }
}
.facet-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4-5);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  background: transparent;
  border: 1px solid rgba(62, 62, 62, 0.7);
  cursor: pointer;
  transition: color 160ms ease, background 160ms ease, border-color 160ms ease;
}

.facet-chip:hover {
  color: var(--chrome-warm);
  border-color: rgba(255, 122, 46, 0.4);
  background: rgba(255, 122, 46, 0.06);
}

.facet-chip__count {
  color: var(--chrome-dim);
  font-weight: 500;
}

.facet-chip--active {
  color: var(--chrome-highlight);
  background: linear-gradient(180deg, rgba(232, 93, 24, 0.18) 0%, rgba(232, 93, 24, 0.08) 100%);
  border-color: var(--ember);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.35), 0 0 16px rgba(255, 122, 46, 0.25);
}

.facet-chip--active .facet-chip__count {
  color: var(--ember-glow);
  font-weight: 600;
}

@media (max-width: 900px) {
  .facet-chip {
    padding: var(--space-2) var(--space-4);
    font-size: var(--fs-nano);
    letter-spacing: 0.14em;
  }
}
.faq-accordion {
  position: relative;
}

.faq-accordion__topseam {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 122, 46, 0.5) 30%, rgba(255, 122, 46, 0.5) 70%, transparent 100%);
}

.faq-accordion__inner {
  max-width: 960px;
  margin: 0 auto;
}

.faq-accordion__eyebrow {
  text-align: center;
  margin-bottom: var(--space-7);
}

.faq-accordion-item {
  border-top: 1px solid rgba(184, 176, 166, 0.12);
  transition: background 200ms ease;
}

.faq-accordion-item:last-child {
  border-bottom: 1px solid rgba(184, 176, 166, 0.12);
}

.faq-accordion-item:hover {
  background: linear-gradient(90deg, rgba(255, 122, 46, 0.03) 0%, transparent 60%);
}

.faq-accordion-item[open] {
  border-bottom-color: rgba(255, 122, 46, 0.25);
}

.faq-accordion-item::details-content {
  block-size: 0;
  overflow: hidden;
  transition: block-size 220ms ease, content-visibility 220ms allow-discrete;
}

.faq-accordion-item[open]::details-content {
  block-size: calc-size(auto, size);
}

@media (prefers-reduced-motion: reduce) {
  .faq-accordion-item::details-content {
    transition: none;
  }
}
.faq-accordion-item summary {
  list-style: none;
  cursor: pointer;
}

.faq-accordion-item summary::-webkit-details-marker {
  display: none;
}

.faq-accordion-item__q {
  padding: var(--space-5);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  text-align: left;
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 500;
  color: var(--chrome-highlight);
  letter-spacing: -0.005em;
  transition: color 200ms ease;
}

.faq-accordion-item__q:hover {
  color: var(--chrome-glint);
}

.faq-accordion-item__chevron {
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  color: var(--ember);
  font-weight: 400;
  transition: transform 200ms ease;
  line-height: 1;
  flex-shrink: 0;
}

[open] > summary .faq-accordion-item__chevron {
  transform: rotate(45deg);
}

.faq-accordion-item__a {
  padding: 0 var(--space-5) var(--space-5);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.65;
  color: var(--chrome-warm);
  max-width: var(--reading-max);
}

.faq-accordion-item__a p + p {
  margin-top: var(--space-4);
}

.faq-accordion-item__a a {
  color: var(--ember);
  transition: color 200ms ease;
}

.faq-accordion-item__a a:hover {
  color: var(--ember-glow);
}

.faq-content .faq-group__label::before, .faq-group::before {
  content: "";
  position: absolute;
  top: -24px;
  left: 0;
  width: 260px;
  height: 48px;
  background: radial-gradient(ellipse 55px 22px at 22% 50%, rgba(255, 122, 46, 0.3) 0%, transparent 70%);
  pointer-events: none;
}

.faq-group {
  position: relative;
  border-top: 1px solid rgba(255, 122, 46, 0.35);
  padding-top: var(--space-6-5);
}

.faq-group__header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-5);
  margin-bottom: var(--space-6);
  padding: 0 var(--space-5) var(--space-4);
  border-bottom: 1px solid rgba(36, 36, 36, 0.9);
}

.faq-group__label {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--ember);
  margin: 0;
}

.faq-group__index {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  font-variant-numeric: tabular-nums;
}

.faq-group__index-num {
  color: var(--chrome-warm);
}

.faq-group__list {
  display: flex;
  flex-direction: column;
}

.faq-content .faq-group__label {
  position: relative;
  margin: var(--space-9) 0 var(--space-6);
  padding: var(--space-6-5) var(--space-5) var(--space-4);
  border-top: 1px solid rgba(255, 122, 46, 0.35);
  border-bottom: 1px solid rgba(36, 36, 36, 0.9);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--ember);
}

.faq-content .faq-group__label:first-child {
  margin-top: 0;
}

.faq-content .faq-group__list {
  margin-bottom: 0;
}

.faq-item {
  position: relative;
  padding: var(--space-5) var(--space-6);
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
}

.faq-item::before, .faq-item::after {
  content: "";
  position: absolute;
  top: 6px;
  z-index: 2;
  width: 6px;
  height: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.faq-item::before {
  left: 6px;
}

.faq-item::after {
  right: 6px;
}

.faq-item__head {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: baseline;
  gap: var(--space-4);
}

.faq-item__idx {
  min-width: 32px;
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-micro);
  letter-spacing: 0.2em;
  color: var(--ember);
}

.faq-item__question {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--chrome-highlight);
}

.faq-item__toggle {
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  line-height: 1;
  color: var(--ember);
}

.faq-item__answer {
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  max-width: 78ch;
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-warm);
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.35);
}

.faq-item[open] {
  background: var(--hull-panel-lift);
}

.faq-item__head {
  cursor: pointer;
  list-style: none;
}

.faq-item__head::-webkit-details-marker {
  display: none;
}

.faq-item__head:focus-visible {
  outline: 1px solid rgba(255, 122, 46, 0.55);
  outline-offset: 2px;
}

.faq-item__toggle::after {
  content: "+";
}

.faq-item[open] .faq-item__toggle::after {
  content: "−";
}

.faq-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.faq-list {
  margin-top: var(--space-6-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.faq-shortcut {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-6);
}

@media (max-width: 720px) {
  .faq-shortcut {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-4-5);
  }
}
.faq-shortcut__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.faq-shortcut__eyebrow {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
}

.faq-shortcut__oneline {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.faq-shortcut__cta {
  flex-shrink: 0;
}

.feature-panel {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 620px;
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
}

.feature-panel__stage {
  position: relative;
  height: 340px;
  background: var(--hull-panel-dark);
  overflow: hidden;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.8);
}

.feature-panel__media {
  position: absolute;
  inset: 0;
  background-image: var(--bg-image, none);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.feature-panel__stage-edge {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0) 0%, rgba(255, 122, 46, 0.65) 50%, rgba(255, 122, 46, 0) 100%);
  filter: blur(2px);
  z-index: 2;
}

.feature-panel__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  padding: var(--space-7) var(--space-6-5) var(--space-6-5);
}

.feature-panel__body > .eyebrow {
  margin-bottom: calc(var(--eyebrow-to-title) - var(--space-5));
}

.feature-panel__title {
  font-family: var(--font-display);
  font-size: var(--fs-heading);
  font-weight: 700;
  letter-spacing: 0.8px;
  line-height: 1.05;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.feature-panel__text {
  max-width: 480px;
  font-size: var(--fs-base);
  line-height: 1.65;
  color: var(--chrome-warm);
}

.feature-panel__strip {
  margin-top: auto;
  padding-top: var(--space-5);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
  border-top: 1px solid rgba(62, 62, 62, 0.35);
  font-family: var(--font-display);
}

.feature-panel__strip-cell {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.feature-panel__strip-label {
  font-size: var(--fs-nano);
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.feature-panel__strip-value {
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.feature-panel__strip-value--ember {
  color: var(--ember);
}

@media (max-width: 700px) {
  .feature-panel {
    min-height: 0;
  }
  .feature-panel__stage {
    height: 220px;
  }
  .feature-panel__body {
    padding: var(--space-6) var(--space-5);
  }
}
.feature-stage {
  position: relative;
  min-height: 620px;
  overflow: hidden;
  background-color: var(--hull-panel-dark);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
}

.feature-stage__image {
  position: absolute;
  inset: 0;
  background-image: var(--bg-image, none);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.feature-stage__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: var(--overlay-gradient, none);
}

.feature-stage__edge {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(180deg, rgba(255, 122, 46, 0) 0%, rgba(255, 122, 46, 0.75) 50%, rgba(255, 122, 46, 0) 100%);
  filter: blur(0.5px);
  z-index: 3;
}

.feature-stage__caption {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 4;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  background: rgba(6, 6, 6, 0.6);
  padding: var(--space-3) var(--space-4);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.feature-stage__caption-idx {
  color: var(--ember);
}

.feature-stage--stretch {
  min-height: 0;
  height: 100%;
}

@media (max-width: 1024px) {
  .feature-stage--stretch {
    min-height: 380px;
  }
}
@media (max-width: 1024px) {
  .feature-stage {
    min-height: 380px;
  }
}
.product-editorial__split {
  --grid-gap: 64px;
  align-items: center;
}

.product-editorial__stage {
  position: relative;
  min-height: 600px;
  overflow: hidden;
}

.product-editorial__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.product-editorial__prose {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.65;
  color: var(--chrome-warm);
}

.product-editorial__prose p {
  margin: 0 0 var(--space-4);
}

.product-editorial__prose p:last-child {
  margin-bottom: 0;
}

.product-editorial__prose h2,
.product-editorial__prose h3,
.product-editorial__prose h4 {
  margin-bottom: var(--space-1);
}

.product-editorial__signoff {
  margin-top: var(--space-5);
  padding-top: var(--space-4);
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.35);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.product-editorial__signoff strong {
  margin-right: var(--space-2);
  font-weight: 600;
  color: var(--ember);
}

@media (max-width: 900px) {
  .product-editorial__stage {
    min-height: 360px;
  }
}
.featured-offer {
  position: relative;
}

.featured-offer::before, .featured-offer::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 122, 46, 0.5) 30%, rgba(255, 122, 46, 0.5) 70%, transparent 100%);
}

.featured-offer::before {
  top: 0;
}

.featured-offer::after {
  bottom: 0;
}

.featured-offer__badge {
  display: inline-block;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--on-primary-fixed);
  background: linear-gradient(180deg, var(--ember-glow) 0%, var(--ember) 100%);
  padding: var(--space-2) var(--space-4);
  box-shadow: var(--ember-glow-sm);
  margin-bottom: var(--space-6-5);
}

.featured-offer__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-8);
  align-items: center;
}

.featured-offer__copy {
  padding: var(--space-2) 0;
}

.featured-offer__chip {
  display: inline-block;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
  border: 1px solid var(--ember-hairline);
  padding: var(--space-2) var(--space-3);
  margin-bottom: var(--space-5);
}

.featured-offer__title {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-title-lg);
  line-height: 1.1;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
  margin: 0 0 var(--space-4-5);
}

.featured-offer__desc {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.65;
  color: var(--chrome-warm);
  margin: 0 0 var(--space-6);
}

.featured-offer__price-row {
  display: flex;
  align-items: center;
  gap: var(--space-4-5);
  margin: var(--space-6) 0 var(--space-5);
  flex-wrap: wrap;
}

.featured-offer__price {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-title);
  color: var(--ember);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
  line-height: 1;
}

.featured-offer__price-chip {
  display: inline-flex;
  align-items: center;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember-glow);
  border: 1px solid var(--ember-hairline-soft);
  padding: var(--space-2) var(--space-3);
}

.featured-offer__cta {
  margin-bottom: var(--space-3);
}

.featured-offer__cta-note {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
  font-style: italic;
}

.featured-offer__media {
  display: block;
  color: inherit;
  text-decoration: none;
  position: relative;
  aspect-ratio: 4/5;
  background-color: var(--hull-panel-dark);
  background-image: var(--bg-image);
  background-size: cover;
  background-position: center;
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.08), 0 8px 24px -8px rgba(0, 0, 0, 0.9);
}

.featured-offer__caption {
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  background: rgba(6, 6, 6, 0.7);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.featured-offer__caption span:first-child {
  color: var(--chrome-highlight);
}

@media (max-width: 768px) {
  .featured-offer__grid {
    grid-template-columns: 1fr;
    gap: var(--space-6);
  }
  .featured-offer__title {
    font-size: var(--fs-heading-lg);
  }
}
.filter-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1) var(--space-3);
  background: rgba(255, 122, 46, 0.1);
  border: 1px solid rgba(255, 122, 46, 0.45);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember-glow);
  text-decoration: none;
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

.filter-chip:hover, .filter-chip:focus-visible {
  background: rgba(255, 122, 46, 0.18);
  border-color: rgba(255, 122, 46, 0.8);
  color: var(--chrome-highlight);
}

.filter-chip:focus-visible {
  outline: 1px solid rgba(255, 122, 46, 0.7);
  outline-offset: 2px;
}

.filter-chip__x {
  font-size: var(--fs-eyebrow);
  color: var(--chrome-dim);
  transition: color 160ms ease;
}

.filter-chip:hover .filter-chip__x, .filter-chip:focus-visible .filter-chip__x {
  color: var(--ember-glow);
}

.filter-chip-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-6-5) 0;
}

.filter-chip-strip--ruled {
  gap: var(--space-3);
  margin-bottom: var(--space-5);
  padding: 0 0 var(--space-5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.filter-chip-strip__label {
  margin-right: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.filter-chip-strip__chip {
  display: inline-flex;
  align-items: baseline;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  background: transparent;
  border: 1px solid rgba(184, 176, 166, 0.18);
  transition: color 200ms ease, border-color 200ms ease, background 200ms ease;
}

.filter-chip-strip__chip:hover {
  color: var(--chrome-highlight);
  background: rgba(255, 122, 46, 0.04);
  border-color: rgba(255, 122, 46, 0.45);
}

.filter-chip-strip__chip--active {
  color: var(--ember-glow);
  background: rgba(232, 93, 24, 0.1);
  border-color: var(--ember);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.2), 0 0 12px rgba(255, 122, 46, 0.25);
}

.filter-chip-strip__count {
  font-family: var(--font-body);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--chrome-dim);
}

.filter-chip-strip__chip--active .filter-chip-strip__count {
  color: var(--ember-glow);
  opacity: 0.75;
}

.filter-group {
  padding: var(--space-4) 0;
  box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.35);
}

.filter-group__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-3);
  cursor: pointer;
  list-style: none;
}

.filter-group__head::-webkit-details-marker {
  display: none;
}

.filter-group__head:hover .filter-group__toggle {
  color: var(--ember-glow);
}

.filter-group__head:focus-visible {
  outline: 1px solid rgba(255, 122, 46, 0.55);
  outline-offset: 2px;
}

.filter-group:not([open]) .filter-group__head {
  margin-bottom: 0;
}

.filter-group__title {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.filter-group__toggle {
  font-family: var(--font-display);
  font-size: var(--fs-base);
  line-height: 1;
  color: var(--ember);
  transition: color 160ms ease;
}

.filter-group__toggle::after {
  content: "+";
}

.filter-group[open] .filter-group__toggle::after {
  content: "−";
}

.filter-group__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.filter-group__list:not(:last-child) {
  margin-bottom: var(--space-4-5);
}

.filter-option {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  cursor: pointer;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
  text-decoration: none;
  padding: var(--space-1) var(--space-2);
  margin: 0 calc(var(--space-2) * -1);
  transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.filter-option:hover, .filter-option:focus-visible {
  background: rgba(255, 122, 46, 0.06);
  color: var(--chrome-highlight);
}

.filter-option:hover .filter-option__box, .filter-option:focus-visible .filter-option__box {
  background: rgba(255, 122, 46, 0.08);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
}

.filter-option:hover .filter-option__count, .filter-option:focus-visible .filter-option__count {
  color: var(--chrome-warm);
}

.filter-option:focus-visible {
  outline: 1px solid rgba(255, 122, 46, 0.55);
  outline-offset: 0;
}

.filter-option__box {
  flex-shrink: 0;
  position: relative;
  width: 14px;
  height: 14px;
  background: rgba(6, 6, 6, 0.6);
  box-shadow: inset 0 0 0 1px rgba(62, 62, 62, 0.65);
}

.filter-option__label {
  flex: 1;
}

.filter-option__count {
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-micro);
  letter-spacing: 0.08em;
  color: var(--chrome-dim);
}

.filter-option--checked .filter-option__box {
  background: rgba(255, 122, 46, 0.16);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.65);
}

.filter-option--checked .filter-option__box::after {
  content: "";
  position: absolute;
  left: 3px;
  top: 3px;
  width: 8px;
  height: 8px;
  background: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.7);
}

.filter-option--checked {
  color: var(--chrome-highlight);
}

.filter-option--checked:hover, .filter-option--checked:focus-visible {
  background: rgba(255, 122, 46, 0.1);
}

.filter-option--checked:hover .filter-option__box::after, .filter-option--checked:focus-visible .filter-option__box::after {
  opacity: 0.55;
  box-shadow: none;
}

.filter-range {
  padding-top: var(--space-2);
}

.filter-range__track {
  position: relative;
  height: 4px;
  background: rgba(6, 6, 6, 0.6);
  box-shadow: inset 0 0 0 1px rgba(62, 62, 62, 0.55);
  margin-bottom: var(--space-5);
}

.filter-range__fill {
  position: absolute;
  left: 12%;
  right: 28%;
  top: 0;
  bottom: 0;
  background: linear-gradient(90deg, var(--ember-forge), var(--ember-glow));
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.45);
}

.filter-range__handle {
  position: absolute;
  top: 50%;
  width: 14px;
  height: 14px;
  transform: translate(-50%, -50%);
  background: var(--ember);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.75);
  cursor: grab;
}

.filter-range__handle--left {
  left: 12%;
}

.filter-range__handle--right {
  left: 72%;
}

.filter-range__values {
  display: flex;
  justify-content: space-between;
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.1em;
  color: var(--ember);
}

.filter-sidebar {
  position: static;
  inset: auto;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  color: inherit;
  overflow: visible;
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}

.filter-sidebar__drawer-head {
  display: none;
}

.filter-sidebar__active {
  padding-bottom: var(--space-5);
  box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.35);
}

.filter-sidebar__active-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-3);
}

.filter-sidebar__active-title {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.filter-sidebar__clear {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  text-decoration: none;
}

.filter-sidebar__clear:hover {
  color: var(--ember-glow);
}

.filter-sidebar__chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}

@media (max-width: 1024px) {
  .filter-sidebar:not(:popover-open) {
    display: none;
  }
  .filter-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: min(360px, 100vw);
    max-width: 100vw;
    height: 100dvh;
    margin: 0;
    padding: var(--space-4-5) var(--space-4-5) var(--space-6-5);
    border: none;
    gap: var(--space-4-5);
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--charcoal);
    color: var(--chrome-warm);
    box-shadow: 16px 0 48px rgba(0, 0, 0, 0.6);
    translate: -100% 0;
    transition: translate 250ms ease-out, overlay 250ms ease-out allow-discrete, display 250ms ease-out allow-discrete;
  }
  .filter-sidebar:popover-open {
    translate: 0 0;
  }
  @starting-style {
    .filter-sidebar:popover-open {
      translate: -100% 0;
    }
  }
  .filter-sidebar::backdrop {
    background-color: transparent;
    transition: background-color 250ms ease-out;
  }
  .filter-sidebar:popover-open::backdrop {
    background-color: rgba(0, 0, 0, 0.55);
  }
  @starting-style {
    .filter-sidebar:popover-open::backdrop {
      background-color: transparent;
    }
  }
  .filter-sidebar__drawer-head {
    position: sticky;
    top: -20px;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: calc(var(--space-4-5) * -1) calc(var(--space-4-5) * -1) 0;
    padding: var(--space-4) var(--space-4-5);
    background: var(--charcoal);
    box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.25);
  }
  .filter-sidebar__drawer-title {
    font-family: var(--font-display);
    font-size: var(--fs-prose);
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--chrome-highlight);
  }
  .filter-sidebar__drawer-close {
    padding: 0 var(--space-1);
    background: transparent;
    border: none;
    font-family: var(--font-display);
    font-size: var(--fs-heading-lg);
    line-height: 1;
    color: var(--chrome-warm);
    cursor: pointer;
    transition: color 160ms ease;
  }
  .filter-sidebar__drawer-close:hover, .filter-sidebar__drawer-close:focus-visible {
    color: var(--ember);
  }
  .filter-sidebar__drawer-close:focus-visible {
    outline: 1px solid rgba(255, 122, 46, 0.7);
    outline-offset: 2px;
  }
}
.follow-card {
  margin-top: var(--space-3);
}

.follow-card__sub {
  max-width: 620px;
  margin-bottom: var(--space-5);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.55;
  color: var(--chrome-warm);
}

.follow-card__row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-2);
}

.follow-card__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-4-5) var(--space-2) var(--space-4);
  background: var(--hull-panel-lift);
  border: 1px solid var(--hairline);
  box-shadow: var(--chrome-top-soft);
  color: var(--chrome-warm);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-nano);
  letter-spacing: 0.06em;
  transition: border-color 0.15s, box-shadow 0.15s;
}

.follow-card__link:hover {
  border-color: var(--ember-hairline);
  box-shadow: var(--ember-glow-sm);
}

.follow-card__link:hover .follow-card__link-icon {
  color: var(--ember);
}

.follow-card__link-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  color: var(--chrome-highlight);
  transition: color 0.15s;
}

.follow-card__link-icon svg {
  width: 24px;
  height: 24px;
}

.follow-card__link-handle {
  font-family: var(--font-body);
  font-weight: 500;
  font-size: var(--fs-nano);
  letter-spacing: 0;
  color: var(--chrome-dim);
}

.form__row, .form__grid {
  margin-bottom: var(--form-row-mb, var(--space-5));
}

.form__row--divided {
  margin-top: var(--space-5);
  padding-top: var(--space-4-5);
  border-top: 1px dashed var(--hairline-strong);
}

.form__row--inline {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-4);
  margin-top: calc(var(--space-2) * -1);
  margin-bottom: var(--space-5);
}

@media (max-width: 720px) {
  .form__row--inline {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-3);
  }
}
.form__grid--2 {
  grid-template-columns: 1fr 1fr;
}

.form__grid--3 {
  grid-template-columns: 2fr 1fr 1.4fr;
}

.form__grid--expiry {
  grid-template-columns: 1fr 1fr;
}

@media (max-width: 640px) {
  .form__grid--2, .form__grid--3, .form__grid--expiry {
    grid-template-columns: 1fr;
  }
}
.form__label, .affwp-form label {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.form__label--tight {
  margin-bottom: var(--space-1);
}

.form__label-req, .form__row .required {
  color: var(--ember);
  font-size: var(--fs-nano);
  vertical-align: super;
}

.form__label-opt {
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  font-weight: 500;
  color: var(--chrome-dim);
}

.form__input, .affwp-form input[type=text],
.affwp-form input[type=email],
.affwp-form input[type=password],
.affwp-form input[type=url], .form__select, .form__textarea, .affwp-form textarea {
  padding: var(--space-3) var(--space-4);
  background: var(--bg-input);
  border: 1px solid var(--hairline);
  border-bottom: 1px solid var(--hull-edge);
  border-radius: 0;
  color: var(--chrome-warm);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.4);
  transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
}

.form__input:focus, .affwp-form input[type=text]:focus,
.affwp-form input[type=email]:focus,
.affwp-form input[type=password]:focus,
.affwp-form input[type=url]:focus, .form__input--focused, .form__select:focus, .form__select--focused, .form__textarea:focus, .affwp-form textarea:focus, .form__textarea--focused {
  border-color: var(--ember);
  border-bottom-color: var(--ember);
  background: var(--bg-input-focus);
  box-shadow: var(--ember-focus);
}

.form__input::placeholder, .affwp-form input[type=text]::placeholder,
.affwp-form input[type=email]::placeholder,
.affwp-form input[type=password]::placeholder,
.affwp-form input[type=url]::placeholder, .form__select::placeholder, .form__textarea::placeholder, .affwp-form textarea::placeholder {
  color: rgba(184, 176, 166, 0.4);
}

.form__textarea, .affwp-form textarea {
  display: block;
  min-height: 88px;
}

.form__select {
  background-image: linear-gradient(45deg, transparent 50%, var(--chrome-dim) 50%), linear-gradient(-45deg, transparent 50%, var(--chrome-dim) 50%);
  background-position: calc(100% - 20px) 20px, calc(100% - 14px) 20px;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: var(--space-6-5);
}

.form__help, .form__row .description {
  font-size: var(--fs-eyebrow);
  line-height: 1.4;
  color: var(--chrome-dim);
}

.form__input-wrap .form__input, .form__input-wrap .affwp-form input[type=text], .affwp-form .form__input-wrap input[type=text],
.form__input-wrap .affwp-form input[type=email],
.affwp-form .form__input-wrap input[type=email],
.form__input-wrap .affwp-form input[type=password],
.affwp-form .form__input-wrap input[type=password],
.form__input-wrap .affwp-form input[type=url],
.affwp-form .form__input-wrap input[type=url] {
  padding-right: var(--space-10);
}

.form__input-adorn {
  opacity: 0.75;
}

.form__input-toggle {
  padding: var(--space-2);
  border-left: 1px solid var(--hairline);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.form__input-toggle:hover {
  color: var(--ember);
}

.form__country-flag {
  font-size: var(--fs-base);
}

.form__country .form__select {
  padding-left: var(--space-6-5);
}

.form__signin-note {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-4);
  margin-top: var(--space-2);
  padding-top: var(--space-4-5);
  border-top: 1px dashed var(--hairline-strong);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.form__signin-note a {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember);
}

.form__divider {
  height: 1px;
  margin: var(--space-6) 0 var(--space-4-5);
  background: linear-gradient(to right, transparent 0%, rgba(255, 122, 46, 0.35) 30%, rgba(255, 122, 46, 0.35) 70%, transparent 100%);
}

.form__fieldset, .affwp-form fieldset {
  position: relative;
  margin: 0 0 var(--space-6);
  padding: var(--space-6-5);
  border: 1px solid var(--hull-edge);
  background: var(--bg-card);
  box-shadow: var(--panel-lift);
}

.form__legend, .affwp-form legend {
  padding: 0 var(--space-3);
  margin-left: calc(var(--space-1) * -1);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ember);
  background: var(--carbon);
}

.form__counter {
  margin: var(--space-2) 0 0;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  text-align: right;
}

.form__counter-value {
  color: var(--chrome-warm);
}

.form__note {
  margin: var(--space-4) 0 0;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-dim);
  text-align: center;
}

.form__match {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-1);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember);
}

.form__match::before {
  content: "";
  width: 6px;
  height: 6px;
  background: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.7);
}

.form--narrow {
  --form-row-mb: 24px;
  max-width: 780px;
  margin-inline: auto;
}

.form--underline .form__row {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-bottom: var(--form-row-mb, 0);
}

.form--underline .form__grid {
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4-5) var(--space-5);
  margin-bottom: var(--form-row-mb, 0);
}

@media (max-width: 640px) {
  .form--underline .form__grid {
    grid-template-columns: 1fr;
  }
}
.form--underline .form__grid .form__cell--full {
  grid-column: 1/-1;
}

.form--underline .form__label, .form--underline .affwp-form label, .affwp-form .form--underline label {
  font-weight: 600;
  letter-spacing: 0.18em;
  color: var(--chrome-dim);
  margin-bottom: 0;
}

.form--underline .form__input, .form--underline .affwp-form input[type=text], .affwp-form .form--underline input[type=text],
.form--underline .affwp-form input[type=email],
.affwp-form .form--underline input[type=email],
.form--underline .affwp-form input[type=password],
.affwp-form .form--underline input[type=password],
.form--underline .affwp-form input[type=url],
.affwp-form .form--underline input[type=url],
.form--underline .form__select {
  padding: var(--space-3) 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  color: var(--chrome-highlight);
  box-shadow: none;
}

.form--underline .form__input:focus, .form--underline .affwp-form input[type=text]:focus, .affwp-form .form--underline input[type=text]:focus,
.form--underline .affwp-form input[type=email]:focus,
.affwp-form .form--underline input[type=email]:focus,
.form--underline .affwp-form input[type=password]:focus,
.affwp-form .form--underline input[type=password]:focus,
.form--underline .affwp-form input[type=url]:focus,
.affwp-form .form--underline input[type=url]:focus, .form--underline .form__input--focused,
.form--underline .form__select:focus,
.form--underline .form__select--focused {
  border-bottom-color: var(--ember);
  background: transparent;
  box-shadow: 0 4px 10px -6px rgba(255, 122, 46, 0.6);
}

.form--underline .select2-container .select2-selection--single {
  height: auto;
  padding: var(--space-3) 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 0;
}

.form--underline .select2-container .select2-selection__rendered {
  padding: 0;
  line-height: 1.3;
  color: var(--chrome-highlight);
}

.form--underline .select2-container--open .select2-selection--single {
  border-bottom-color: var(--ember);
  box-shadow: 0 4px 10px -6px rgba(255, 122, 46, 0.6);
}

.form--underline .form__select {
  background-image: linear-gradient(45deg, transparent 50%, var(--ember) 50%), linear-gradient(135deg, var(--ember) 50%, transparent 50%);
  background-position: calc(100% - 12px) calc(50% - 2px), calc(100% - 6px) calc(50% - 2px);
  background-size: 6px 6px;
  background-repeat: no-repeat;
}

.form__row .woocommerce-input-wrapper {
  display: block;
}

.form__row .select2-container .select2-selection--single {
  height: auto;
  padding: var(--space-3) var(--space-4);
  background: var(--bg-input);
  border: 1px solid var(--hairline);
  border-bottom: 1px solid var(--hull-edge);
  border-radius: 0;
}

.form__row .select2-container .select2-selection__rendered {
  padding: 0;
  line-height: 1.3;
  color: var(--chrome-warm);
}

.form__row .select2-container .select2-selection__arrow {
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}

.form__row .select2-container--open .select2-selection--single {
  border-color: var(--ember);
}

.checkout-form-column h3:not([class]) {
  margin: 0 0 var(--space-2);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-base);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.input-text:not(.form__input) {
  background: var(--bg-input);
  border: 1px solid var(--hairline);
  color: var(--chrome-warm);
  font-family: var(--font-body);
  font-size: var(--fs-base);
}

.input-text:not(.form__input)::placeholder {
  color: rgba(184, 176, 166, 0.4);
}

option {
  background-color: var(--hull-panel);
  color: var(--chrome-warm);
}

@supports (appearance: base-select) {
  select {
    appearance: base-select;
    background-image: none;
    padding-right: var(--space-4);
  }
  select::picker-icon {
    color: var(--ember);
    transition: transform 200ms ease;
  }
  select:open::picker-icon {
    transform: rotate(180deg);
  }
  ::picker(select) {
    appearance: base-select;
    padding: var(--space-2);
    background: var(--hull-panel);
    border: 1px solid var(--hull-edge);
    border-radius: 0;
    box-shadow: var(--panel-lift);
  }
  option {
    padding: var(--space-3);
    background: transparent;
    color: var(--chrome-warm);
    font-family: var(--font-body);
    font-size: var(--fs-base);
    transition: background 160ms ease, color 160ms ease;
  }
  option:hover, option:focus {
    background: rgba(255, 122, 46, 0.12);
    color: var(--chrome-highlight);
  }
  option:checked {
    color: var(--ember);
  }
  option::checkmark {
    color: var(--ember);
  }
}
.group-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: var(--space-4-5) var(--space-5) var(--space-4);
  margin: 0;
  border-bottom: 1px solid rgba(255, 122, 46, 0.35);
  box-shadow: 0 1px 0 rgba(255, 122, 46, 0.12);
  gap: var(--space-5);
  letter-spacing: 0.8px;
}

.group-heading__eyebrow {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
}

.group-heading__eyebrow .sep {
  color: rgba(255, 122, 46, 0.55);
}

.group-heading__count {
  color: var(--chrome-highlight);
  font-weight: 700;
}

.group-heading__hud {
  font-family: var(--font-body);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.group-heading__hud .sep {
  color: var(--hull-edge);
  margin: 0 var(--space-2);
}

.group-heading__value {
  color: var(--chrome-warm);
}

@media (max-width: 900px) {
  .group-heading {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-3);
    padding: var(--space-4-5) var(--space-4) var(--space-4);
    letter-spacing: 0.8px;
  }
}
.guide-card {
  background: var(--hull-panel);
  box-shadow: var(--panel-lift);
  display: flex;
  flex-direction: column;
  transition: box-shadow 220ms ease, transform 220ms ease;
}

.guide-card:hover {
  box-shadow: var(--panel-lift-hover);
  transform: translateY(-2px);
}

.guide-card__media {
  aspect-ratio: 3/2;
  background-size: cover;
  background-position: center;
  background-color: var(--hull-panel-dark);
  background-image: var(--bg-image);
  position: relative;
}

.guide-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.28);
  pointer-events: none;
}

.guide-card__body {
  padding: var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  flex: 1;
}

.guide-card__chip {
  align-self: flex-start;
  padding: var(--space-2) var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
  border: 1px solid rgba(255, 122, 46, 0.55);
  background: rgba(255, 122, 46, 0.05);
}

.guide-card__title {
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 600;
  line-height: 1.25;
  color: var(--chrome-warm);
  margin: 0;
  letter-spacing: 0.8px;
}

.guide-card__excerpt {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-dim);
  margin: 0;
}

.guide-card__meta {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  margin-top: auto;
  padding-top: var(--space-4);
  border-top: 1px solid rgba(46, 46, 46, 0.5);
}

.guide-card__meta .sep {
  color: var(--hull-edge);
}

.guide-card__value {
  color: var(--chrome-warm);
}

.guide-card__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  padding-top: var(--space-4);
  border-top: 1px solid rgba(46, 46, 46, 0.7);
  transition: color 160ms ease, gap 160ms ease;
}

.guide-card__cta:hover {
  color: var(--ember-glow);
  gap: var(--space-3);
}

.guide-card__arrow {
  color: var(--ember);
}

.guide-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-6);
  margin-top: var(--space-6-5);
}

@media (max-width: 900px) {
  .guide-grid {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }
}
.hairline-sep {
  height: 1px;
  margin: var(--space-4-5) 0;
  background: linear-gradient(90deg, transparent, var(--hairline-strong), transparent);
}

.handle {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}

.handle__name {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--chrome-highlight);
}

.handle__platform {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
}

.hero {
  position: relative;
  background: var(--carbon);
  overflow: hidden;
  min-height: 840px;
  padding: var(--space-10) 0 180px;
}

@media (max-width: 768px) {
  .hero {
    padding-top: var(--space-6);
  }
}
.hero__bg {
  position: absolute;
  inset: 0;
  background-image: var(--hero-image, none);
  background-size: cover;
  background-position: center;
  z-index: 0;
}

.hero__scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(6, 6, 5, 0.5) 0%, rgba(6, 6, 5, 0.55) 55%, rgba(6, 6, 5, 0.65) 100%), linear-gradient(to right, rgba(6, 6, 5, 0.8) 0%, rgba(6, 6, 5, 0.2) 60%, transparent 100%);
  z-index: 1;
}

.hero__inner {
  position: relative;
  z-index: 2;
}

.hero__eyebrow {
  margin-bottom: var(--eyebrow-to-title);
  display: inline-flex;
  align-items: center;
}

.hero__eyebrow::before {
  content: "";
  width: 32px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 6px var(--ember);
  margin-right: var(--space-3);
}

.hero__title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(48px, 3.7vw, var(--fs-hero, 78px));
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  text-shadow: 0 6px 30px rgba(0, 0, 0, 0.7);
  line-height: 1.05;
  margin: 0 0 var(--space-6);
  max-width: 1020px;
}

@media (max-width: 768px) {
  .hero__title {
    font-size: var(--fs-title);
    line-height: 1.1;
  }
}
.hero__subline {
  font-family: var(--font-body);
  font-size: var(--fs-large);
  max-width: 620px;
  color: var(--chrome-warm);
  margin: 0 0 var(--space-7);
  line-height: 1.55;
}

.hero__search {
  max-width: 820px;
  margin-bottom: var(--space-7);
}

.hero__search .hero-search {
  max-width: none;
  margin-top: 0;
}

.hero__backlight {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 120px;
  background: radial-gradient(ellipse at 30% 100%, rgba(255, 122, 46, 0.25) 0%, transparent 65%);
  z-index: 2;
  pointer-events: none;
}

.hero__trust-chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-5);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.hero__trust-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
}

.hero__trust-chip::before {
  content: "";
  width: 8px;
  height: 8px;
  border: 1px solid var(--ember);
  display: inline-block;
  transform: rotate(45deg);
  background: rgba(255, 122, 46, 0.15);
}

.hero-atmospheric {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: var(--hero-atmospheric-height, 720px);
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding: var(--space-9) 0;
}

.hero-atmospheric__title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(48px, 3.7vw, var(--fs-hero, 78px));
  line-height: 1.02;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  text-wrap: balance;
  max-width: 1020px;
  margin: var(--space-6) 0;
}

@media (max-width: 768px) {
  .hero-atmospheric__title {
    font-size: var(--fs-title);
    line-height: 1.1;
  }
}
.hero-atmospheric__title em {
  font-style: italic;
  font-weight: 500;
  color: var(--chrome-glint);
}

.hero-atmospheric__lede {
  font-family: var(--font-body);
  font-size: var(--fs-large);
  line-height: 1.55;
  color: var(--chrome-warm);
  margin: 0 0 var(--space-7);
  max-width: 620px;
}

.hero-atmospheric__cta {
  margin-bottom: var(--space-6);
}

.hero-atmospheric__trust {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  line-height: 1.6;
}

@media (max-width: 768px) {
  .hero-atmospheric {
    padding: var(--space-8) var(--gutter-small) var(--space-7);
    min-height: var(--hero-atmospheric-height-mobile, 560px);
  }
  .hero-atmospheric__lede {
    font-size: var(--fs-prose);
    margin-bottom: var(--space-6);
  }
}
.hero-compact {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 360px;
  overflow: hidden;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  background-image: linear-gradient(to bottom, transparent 0, transparent 88px, rgba(250, 250, 250, 0.04) 89px, rgba(250, 250, 250, 0.04) 90px, transparent 91px), linear-gradient(to bottom, transparent 0, transparent 178px, rgba(250, 250, 250, 0.03) 179px, rgba(250, 250, 250, 0.03) 180px, transparent 181px), linear-gradient(to bottom, transparent 0, transparent 91px, rgba(0, 0, 0, 0.6) 92px, rgba(0, 0, 0, 0) 100px), linear-gradient(to bottom, transparent 0, transparent 181px, rgba(0, 0, 0, 0.6) 182px, rgba(0, 0, 0, 0) 190px), radial-gradient(ellipse at 50% 100%, rgba(255, 122, 46, 0.13) 0%, rgba(255, 122, 46, 0.03) 40%, transparent 65%);
}

.hero-compact::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 2px;
  background: linear-gradient(to bottom, rgba(250, 250, 250, 0.1), transparent);
  pointer-events: none;
}

.hero-compact::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(to right, transparent 0%, rgba(255, 122, 46, 0.6) 40%, rgba(255, 122, 46, 0.6) 60%, transparent 100%);
  box-shadow: 0 -8px 24px rgba(255, 122, 46, 0.3), 0 8px 32px rgba(255, 122, 46, 0.35);
  pointer-events: none;
}

.hero-compact__inner {
  position: relative;
  width: 100%;
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding-left: var(--gutter-small, var(--space-4-5));
  padding-right: var(--gutter-small, var(--space-4-5));
}

.hero-compact--with-breadcrumb .breadcrumb--inline {
  margin-bottom: var(--space-5);
}

.hero-compact__title {
  margin: var(--space-4-5) 0;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-title-lg);
  line-height: 1.05;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  max-width: 780px;
}

@media (max-width: 768px) {
  .hero-compact__title {
    font-size: var(--fs-title);
    line-height: 1.1;
  }
}
.hero-compact__lede {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.55;
  color: var(--chrome-warm);
  max-width: 680px;
}

.hero-compact__query {
  color: var(--ember);
  font-style: normal;
}

.hero-editorial {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 360px;
  overflow: hidden;
  background: var(--carbon);
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.5), 0 8px 32px -8px rgba(255, 122, 46, 0.3);
}

.hero-editorial::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(180deg, transparent 0%, transparent calc(28% - 1px), rgba(250, 250, 250, 0.05) 28%, transparent calc(28% + 1px)), linear-gradient(180deg, transparent 0%, transparent calc(62% - 1px), rgba(250, 250, 250, 0.04) 62%, transparent calc(62% + 1px)), linear-gradient(180deg, transparent 0%, transparent calc(84% - 1px), rgba(250, 250, 250, 0.03) 84%, transparent calc(84% + 1px));
  pointer-events: none;
}

.hero-editorial::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 40%;
  background: radial-gradient(ellipse at 0% 50%, rgba(255, 122, 46, 0.12) 0%, transparent 70%);
  pointer-events: none;
}

.hero-editorial__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--site-max-width-default);
  margin: 0 auto;
  padding: var(--space-8) var(--gutter-small, var(--space-4-5)) var(--space-8);
}

.hero-editorial__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4-5);
  padding: var(--space-2) var(--space-3) var(--space-2) var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
  border-left: 2px solid var(--ember);
}

.hero-editorial__title {
  max-width: 20ch;
  margin: 0 0 var(--space-4-5);
  font-family: var(--font-display);
  font-size: var(--fs-title-lg);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.hero-editorial__subtitle {
  max-width: 56ch;
  margin: 0 0 var(--space-6);
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.hero-editorial__text > .breadcrumb {
  margin-bottom: var(--space-5);
}

.hero-editorial__eyebrow a {
  color: inherit;
  text-decoration: none;
}

.hero-editorial__eyebrow a:hover, .hero-editorial__eyebrow a:focus-visible {
  color: var(--chrome-highlight);
}

.hero-editorial__eyebrow-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.7);
}

.hero-editorial--panel-joint::before {
  background: radial-gradient(ellipse at 20% 50%, rgba(255, 122, 46, 0.08) 0%, transparent 40%), radial-gradient(ellipse at 80% 30%, rgba(255, 122, 46, 0.06) 0%, transparent 45%), linear-gradient(180deg, var(--carbon) 0%, var(--void) 50%, var(--carbon) 100%);
}

.hero-editorial--panel-joint::after {
  top: 58%;
  left: 0;
  right: 0;
  bottom: auto;
  width: auto;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 122, 46, 0.55) 20%, rgba(255, 180, 71, 0.7) 50%, rgba(255, 122, 46, 0.55) 80%, transparent 100%);
  box-shadow: 0 0 24px rgba(255, 122, 46, 0.3), 0 6px 40px -4px rgba(255, 122, 46, 0.25);
}

.hero-editorial--immersive::after {
  display: none;
}

.hero-editorial--immersive .hero-editorial__inner {
  position: relative;
  z-index: 3;
}

.hero-editorial__backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: var(--carbon);
  background-image: var(--bg-image, none);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.hero-editorial__backdrop::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(6, 6, 6, 0.72) 0%, rgba(6, 6, 6, 0.42) 45%, rgba(6, 6, 6, 0.68) 100%), radial-gradient(ellipse 60% 40% at 50% 20%, rgba(6, 6, 6, 0.6) 0%, transparent 60%);
}

.hero-editorial__bloom {
  position: absolute;
  right: -80px;
  bottom: -80px;
  z-index: 2;
  width: 520px;
  height: 520px;
  background: radial-gradient(circle, rgba(255, 179, 71, 0.32) 0%, rgba(255, 122, 46, 0.16) 30%, transparent 65%);
  filter: blur(4px);
  pointer-events: none;
}

.hero-editorial--split .hero-editorial__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-7);
  align-items: center;
}

.hero-editorial--split .hero-editorial__inner:has(> .hero-editorial__media) {
  grid-template-columns: minmax(0, 1fr) minmax(0, 440px);
}

.hero-editorial--split .hero-editorial__title {
  max-width: 26ch;
}

.hero-editorial--split .hero-editorial__subtitle {
  max-width: 68ch;
}

.hero-editorial--split.hero-editorial--panel-joint::after {
  display: none;
}

@media (max-width: 900px) {
  .hero-editorial--split .hero-editorial__inner:has(> .hero-editorial__media) {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }
}
.hero-editorial__text {
  min-width: 0;
}

.hero-editorial__media {
  margin: 0;
  aspect-ratio: 4/3;
  overflow: hidden;
  border: 1px solid var(--hull-edge);
  background-color: var(--hull-panel-dark);
  box-shadow: 0 24px 48px -24px rgba(255, 122, 46, 0.35);
}

.hero-editorial__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 900px) {
  .hero-editorial__media {
    aspect-ratio: 16/9;
  }
}
@media (max-width: 700px) {
  .hero-editorial {
    min-height: 280px;
  }
  .hero-editorial__inner {
    padding: var(--space-8) var(--gutter-small, var(--space-4-5)) var(--space-7);
  }
  .hero-editorial__title {
    font-size: var(--fs-title);
  }
  .hero-editorial__subtitle {
    font-size: var(--fs-base);
  }
}
.hero-moment {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 560px;
  padding: var(--space-9) var(--gutter-small) var(--space-10);
  background-color: var(--carbon);
  background-image: linear-gradient(180deg, rgba(6, 6, 6, 0.62) 0%, rgba(6, 6, 6, 0.72) 55%, rgba(6, 6, 6, 0.88) 100%), radial-gradient(700px 500px at 88% 20%, rgba(255, 122, 46, 0.18), transparent 70%), url("../images/hull-plate-hero.jpg");
  background-size: cover, cover, cover;
  background-position: center, center, center;
  background-repeat: no-repeat;
}

.hero-moment::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--ember) 40%, var(--ember-glow) 50%, var(--ember) 60%, transparent 100%);
  opacity: 0.65;
}

.hero-moment::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -160px;
  z-index: 0;
  height: 160px;
  background: radial-gradient(ellipse at center top, rgba(255, 122, 46, 0.22), transparent 70%);
  pointer-events: none;
}

.hero-moment__inner {
  position: relative;
  z-index: 1;
  max-width: calc(var(--site-max-width) - 2 * var(--gutter-small));
  width: 100%;
  margin: 0 auto;
}

.hero-moment__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
  text-shadow: 0 0 16px rgba(255, 122, 46, 0.6);
}

.hero-moment__eyebrow::before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  background: var(--ember);
  box-shadow: 0 0 12px var(--ember), 0 0 24px rgba(255, 122, 46, 0.5);
}

.hero-moment__eyebrow strong {
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--ember-glow);
}

.hero-moment__title {
  max-width: 900px;
  margin-bottom: var(--space-5);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-section);
  line-height: 1.02;
  letter-spacing: 0.05em;
  color: var(--chrome-highlight);
  background: linear-gradient(180deg, #FFFFFF 0%, var(--chrome-highlight) 40%, var(--chrome-warm) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 2px 40px rgba(0, 0, 0, 0.5);
}

.hero-moment__sub {
  max-width: 640px;
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  font-weight: 400;
  line-height: 1.6;
  color: var(--chrome-warm);
}

.hero-moment__sub strong {
  color: var(--chrome-highlight);
  font-weight: 600;
}

@media (max-width: 720px) {
  .hero-moment {
    min-height: 440px;
    padding: var(--space-8) var(--space-4-5) var(--space-9);
  }
  .hero-moment__title {
    font-size: var(--fs-title);
  }
  .hero-moment__sub {
    font-size: var(--fs-base);
  }
}
.hero-search {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-5);
  max-width: 560px;
  padding: var(--space-4) var(--space-4-5) var(--space-4) var(--space-5);
  border: 1px solid rgba(255, 122, 46, 0.35);
  background: linear-gradient(180deg, rgba(255, 122, 46, 0.06), rgba(6, 6, 6, 0.35));
  transition: border-color 0.2s, box-shadow 0.2s;
}

.hero-search:focus-within {
  border-color: var(--ember);
  box-shadow: 0 8px 26px -10px rgba(255, 122, 46, 0.55);
}

.hero-search__glyph {
  width: var(--icon-size-md);
  height: var(--icon-size-md);
  flex-shrink: 0;
  fill: var(--ember);
}

.hero-search__input {
  flex: 1;
  min-width: 0;
  border: none;
  background: transparent;
  color: var(--chrome-highlight);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  letter-spacing: 0.01em;
  padding: 2px 0;
  outline: none;
}

.hero-search__input::placeholder {
  color: var(--chrome-dim);
}

.hero-search__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0 var(--space-2);
  flex-shrink: 0;
}

.hero-search__submit:hover .hero-search__arrow {
  fill: var(--ember-glow);
}

.hero-search__arrow {
  width: var(--icon-size-md);
  height: var(--icon-size-md);
  fill: var(--ember);
  transition: fill 0.2s;
}

.hero-search--empty {
  border-color: rgba(232, 93, 24, 0.65);
  background: linear-gradient(180deg, rgba(232, 93, 24, 0.1), rgba(6, 6, 6, 0.4));
}

.hero-search--empty:focus-within {
  border-color: var(--ember-forge);
  box-shadow: 0 8px 26px -10px rgba(232, 93, 24, 0.6);
}

.hero-utility {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 460px;
  overflow: hidden;
  background: var(--carbon);
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.5), 0 8px 32px -8px rgba(255, 122, 46, 0.3);
}

.hero-utility::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(180deg, transparent 0%, transparent calc(28% - 1px), rgba(250, 250, 250, 0.05) 28%, transparent calc(28% + 1px)), linear-gradient(180deg, transparent 0%, transparent calc(62% - 1px), rgba(250, 250, 250, 0.04) 62%, transparent calc(62% + 1px)), linear-gradient(180deg, transparent 0%, transparent calc(84% - 1px), rgba(250, 250, 250, 0.03) 84%, transparent calc(84% + 1px));
  pointer-events: none;
}

.hero-utility::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 40%;
  background: radial-gradient(ellipse at 0% 50%, rgba(255, 122, 46, 0.12) 0%, transparent 70%);
  pointer-events: none;
}

.hero-utility__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding: var(--space-9) var(--gutter-small, var(--space-4-5)) var(--space-9);
}

.hero-utility__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
  padding-left: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
  border-left: 2px solid var(--ember);
}

.hero-utility__title {
  max-width: 22ch;
  margin: 0 0 var(--space-5);
  font-family: var(--font-display);
  font-size: var(--fs-section);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.hero-utility__subtitle {
  max-width: 60ch;
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.55;
  color: var(--chrome-warm);
}

.hero-utility__meta {
  margin-top: var(--space-5);
  padding-top: var(--space-4-5);
  max-width: 62ch;
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.06);
}

.hero-utility__meta span + span::before {
  content: "·";
  margin-right: 8px;
  color: var(--chrome-dim);
}

.hero-utility__meta-count {
  color: var(--chrome-warm);
}

.hero-utility__logout {
  margin-top: var(--space-5);
}

.hero-utility--with-breadcrumb .breadcrumb--inline {
  margin-bottom: var(--space-5);
}

@media (max-width: 700px) {
  .hero-utility {
    min-height: 340px;
  }
  .hero-utility__inner {
    padding: var(--space-8) var(--gutter-small, var(--space-4-5)) var(--space-8);
  }
  .hero-utility__title {
    font-size: var(--fs-title);
  }
  .hero-utility__subtitle {
    font-size: var(--fs-base);
  }
}
.hud-label {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.hull-plate-ground {
  position: relative;
  overflow: hidden;
  background-image: radial-gradient(ellipse 600px 300px at 6% 3%, rgba(255, 122, 46, 0.02) 0%, transparent 60%), radial-gradient(ellipse 700px 400px at 94% 97%, rgba(255, 122, 46, 0.018) 0%, transparent 60%), repeating-linear-gradient(180deg, transparent 0px, transparent 896px, rgba(255, 220, 190, 0.085) 896px, rgba(255, 220, 190, 0.085) 897px, rgba(0, 0, 0, 0.6) 897px, rgba(0, 0, 0, 0.6) 900px, rgba(0, 0, 0, 0.3) 900px, rgba(0, 0, 0, 0.3) 903px, transparent 903px, transparent 904px), repeating-linear-gradient(90deg, transparent 0px, transparent 1195px, rgba(255, 220, 190, 0.045) 1195px, rgba(255, 220, 190, 0.045) 1196px, rgba(0, 0, 0, 0.55) 1196px, rgba(0, 0, 0, 0.55) 1200px, transparent 1200px, transparent 1202px), radial-gradient(ellipse 750px 500px at 30% 30%, rgba(255, 255, 255, 0.01) 0%, transparent 60%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.04 0 0 0 0 0.028 0 0 0 0 0.022 0 0 0 0.32 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"), linear-gradient(180deg, #060605 0%, #070706 50%, #080706 100%);
  background-size: auto, auto, auto, auto, 1200px 904px, 200px 200px, auto;
}

.hull-plate-texture {
  background-image: radial-gradient(ellipse 600px 300px at 6% 3%, rgba(255, 122, 46, 0.02) 0%, transparent 60%), radial-gradient(ellipse 700px 400px at 94% 97%, rgba(255, 122, 46, 0.018) 0%, transparent 60%), repeating-linear-gradient(180deg, transparent 0px, transparent 896px, rgba(255, 220, 190, 0.085) 896px, rgba(255, 220, 190, 0.085) 897px, rgba(0, 0, 0, 0.6) 897px, rgba(0, 0, 0, 0.6) 900px, rgba(0, 0, 0, 0.3) 900px, rgba(0, 0, 0, 0.3) 903px, transparent 903px, transparent 904px), repeating-linear-gradient(90deg, transparent 0px, transparent 1195px, rgba(255, 220, 190, 0.045) 1195px, rgba(255, 220, 190, 0.045) 1196px, rgba(0, 0, 0, 0.55) 1196px, rgba(0, 0, 0, 0.55) 1200px, transparent 1200px, transparent 1202px), radial-gradient(ellipse 750px 500px at 30% 30%, rgba(255, 255, 255, 0.01) 0%, transparent 60%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.04 0 0 0 0 0.028 0 0 0 0 0.022 0 0 0 0.32 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: auto, auto, auto, auto, 1200px 904px, 200px 200px;
}

.icon-cell {
  padding: var(--space-6-5);
  background: transparent;
  border: 1px solid transparent;
  transition: border-color 0.35s ease, background 0.35s ease;
}

.icon-cell:hover {
  border-color: rgba(255, 122, 46, 0.35);
  background: rgba(255, 122, 46, 0.04);
}

.icon-cell__glyph {
  width: 48px;
  height: 48px;
  margin-bottom: var(--space-5);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 122, 46, 0.45);
  color: var(--ember);
}

.icon-cell__glyph svg {
  width: 24px;
  height: 24px;
  stroke: currentcolor;
  fill: none;
  stroke-width: 1.5;
}

.icon-cell__body {
  margin: 0;
  max-width: 340px;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
}

@media (max-width: 900px) {
  .icon-cell {
    padding: var(--space-6) var(--space-5);
  }
}
.info-panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-8);
}

@media (max-width: 900px) {
  .info-panel {
    grid-template-columns: 1fr;
    gap: var(--space-6-5);
  }
}
.info-panel__column {
  display: flex;
  flex-direction: column;
}

.info-panel__column-heading {
  margin: 0 0 var(--space-5);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
}

.info-panel__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
  margin: 0;
  padding: 0;
}

.info-panel__item {
  display: grid;
  grid-template-columns: 40% 60%;
  gap: var(--space-4);
  padding-bottom: var(--space-4-5);
  border-bottom: 1px solid rgba(54, 54, 54, 0.5);
}

.info-panel__item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.info-panel__label {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.info-panel__value {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.info-panel__value-num {
  color: var(--ember);
  font-weight: 600;
}

.intro-cluster {
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
  max-width: var(--reading-max, 720px);
  margin-bottom: var(--intro-cluster-mb, var(--space-9));
}

.intro-cluster--center {
  align-items: center;
  text-align: center;
  margin-inline: auto;
}

@media (max-width: 900px) {
  .intro-cluster {
    margin-bottom: var(--intro-cluster-mb, var(--space-8));
  }
}
.item-preview {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  margin-bottom: var(--space-1);
}

.item-preview__strip {
  display: flex;
  gap: var(--space-2);
}

.item-preview__thumb {
  position: relative;
  width: 52px;
  height: 52px;
  overflow: hidden;
  background: var(--void);
  border: 1px solid rgba(250, 250, 250, 0.06);
}

.item-preview__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.item-preview__thumb--gift {
  border-color: rgba(255, 122, 46, 0.55);
  box-shadow: 0 0 12px var(--ember-hairline-soft);
}

.item-preview__thumb--gift::after {
  content: "GIFT";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1px 0;
  background: rgba(6, 6, 6, 0.85);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-align: center;
  color: var(--ember);
}

.item-preview__qty {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 18px;
  padding: 1px var(--space-1);
  background: rgba(6, 6, 6, 0.85);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.04em;
  font-variant-numeric: tabular-nums;
  text-align: center;
  color: var(--chrome-highlight);
}

.item-preview__meta {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--space-3);
}

.item-preview__count {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.item-preview__count strong {
  font-family: var(--font-display);
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--chrome-highlight);
}

.item-preview__toggle {
  padding-bottom: 1px;
  border-bottom: 1px dotted rgba(255, 122, 46, 0.5);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--ember);
}

.legal-consent {
  padding: var(--space-4-5) var(--space-1) 0;
  margin-bottom: var(--space-5);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-dim);
}

.legal-consent p {
  margin-bottom: var(--space-4);
}

.legal-consent a {
  font-weight: 500;
  color: var(--ember);
}

.legal-consent .checkbox-row {
  color: var(--chrome-warm);
}

.length-card {
  text-align: center;
}

.length-card__stage {
  position: relative;
  aspect-ratio: 3/5;
  margin-bottom: var(--space-4);
  overflow: hidden;
  background: var(--hull-panel-dark);
  box-shadow: var(--panel-lift);
}

.length-card__figure {
  position: absolute;
  left: 38%;
  bottom: 12%;
  height: 66%;
  width: auto;
  transform: translateX(-50%);
  fill: var(--chrome-dim);
  opacity: 0.28;
}

.length-card__blade {
  position: absolute;
  left: 58%;
  bottom: 45%;
  width: 5px;
  height: calc(66% * var(--blade-ratio, 0.5));
  transform: translateX(-50%);
  border-radius: 3px;
  background: linear-gradient(180deg, rgba(255, 179, 71, 0.95) 0%, rgba(255, 122, 46, 0.8) 100%);
  box-shadow: 0 0 24px rgba(255, 122, 46, 0.65);
}

.length-card__grip {
  position: absolute;
  left: 58%;
  bottom: 40%;
  width: 7px;
  height: 5%;
  transform: translateX(-50%);
  border-radius: 2px;
  background: linear-gradient(180deg, var(--chrome-warm) 0%, var(--chrome-dim) 100%);
}

.length-card__label {
  margin-bottom: var(--space-1);
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--chrome-highlight);
}

.length-card__grade {
  margin-bottom: var(--space-1);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
}

.length-card__price {
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-small);
  letter-spacing: 0.06em;
  color: var(--chrome-dim);
}

.length-card__price-em {
  color: var(--ember);
}

.length-guide__figure-def {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

.length-guide__note {
  margin-top: var(--space-6);
  text-align: center;
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.line-item {
  display: grid;
  grid-template-columns: 78px 1fr auto;
  gap: var(--space-4-5);
  align-items: center;
  padding: var(--space-4) 0;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.line-item__thumb {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: 78px;
  height: 96px;
  padding: var(--space-2) 0;
  background: var(--hull-panel-dark);
  box-shadow: var(--chrome-top-soft);
}

.line-item__thumb::before {
  content: "";
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 22px;
  height: 30px;
  background: linear-gradient(180deg, var(--hull-edge) 0%, var(--hull-panel-lift) 100%);
  box-shadow: var(--chrome-top-soft);
}

.line-item__thumb--image {
  background-image: var(--bg-image);
  background-position: center;
  background-size: cover;
}

.line-item__thumb--image::before {
  content: none;
}

.line-item__blade {
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  width: 5px;
  height: 40px;
  background: linear-gradient(180deg, rgba(232, 228, 221, 0.85) 0%, rgba(232, 228, 221, 0.15) 100%);
  box-shadow: 0 0 8px rgba(232, 228, 221, 0.35);
}

.line-item__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.line-item__title {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-base);
  letter-spacing: 0.05em;
  color: var(--chrome-highlight);
}

.line-item__spec {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.line-item__spec span {
  color: var(--chrome-warm);
}

.line-item__price {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-base);
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
  color: var(--ember);
}

.line-list {
  position: relative;
  min-inline-size: 0;
  margin: 0 0 var(--space-5);
  padding: 0;
  border: 1px solid rgba(46, 46, 46, 0.7);
  background: var(--hull-panel-dark);
}

.line-list__legend {
  position: absolute;
  top: -10px;
  left: 20px;
  padding: 0 var(--space-3);
  background: var(--charcoal-warm);
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
}

.line-list__item {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) auto;
  gap: var(--space-3) var(--space-4);
  align-items: center;
  padding: var(--space-4) var(--space-4-5);
  border-top: 1px solid rgba(46, 46, 46, 0.45);
}

.line-list__item:first-of-type {
  border-top: 0;
}

.line-list__thumb {
  display: block;
  width: 56px;
  height: 56px;
  overflow: hidden;
  background: var(--carbon);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.08);
}

.line-list__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.line-list__name {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.35;
  color: var(--chrome-warm);
}

.line-list__name a {
  color: inherit;
  text-decoration: none;
}

.line-list__name small {
  display: block;
  margin-top: 3px;
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.line-list__price {
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--chrome-warm);
}

.line-list__choice {
  grid-column: 1/-1;
  min-inline-size: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.line-list__choice .variant-selector__label {
  margin-bottom: var(--space-3);
  padding: 0;
}

.link-card {
  display: flex;
  flex-direction: column;
  background: var(--hull-panel);
  text-decoration: none;
  box-shadow: var(--panel-lift), var(--chrome-top-soft);
  transition: box-shadow 250ms ease, transform 250ms ease;
}

.link-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
}

.link-card__media {
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
  background: linear-gradient(140deg, rgba(15, 15, 15, 0.85) 0%, rgba(15, 15, 15, 0.3) 100%), var(--hull-plate-img, none), var(--hull-panel-dark);
  background-size: cover;
  background-position: center;
}

.link-card__media::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 40%;
  background: linear-gradient(180deg, rgba(15, 15, 15, 0) 0%, rgba(15, 15, 15, 0.9) 100%);
  z-index: 1;
}

.link-card__media--triptych .link-card__portraits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  height: 100%;
  background: rgba(6, 6, 6, 0.6);
}

.link-card__media--triptych .link-card__portrait {
  background-image: var(--bg-image, none);
  background-size: cover;
  background-position: center top;
}

.link-card__tag {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 2;
  padding: var(--space-2) var(--space-3);
  background: rgba(6, 6, 6, 0.7);
  border: 1px solid rgba(255, 122, 46, 0.4);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
}

.link-card__body {
  padding: var(--space-5) var(--space-5) var(--space-6);
}

.link-card__title {
  margin-bottom: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 600;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.link-card__desc {
  margin-bottom: var(--space-4-5);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.55;
  color: var(--chrome-dim);
}

.link-card__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding-top: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ember);
  box-shadow: inset 0 1px 0 rgba(54, 54, 54, 0.5);
}

.link-card--grade {
  position: relative;
}

.link-card--grade .link-card__media {
  aspect-ratio: 4/3;
}

.link-card--grade .link-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.link-card--grade .link-card__cta {
  margin-top: auto;
  text-decoration: none;
}

.link-card--grade .link-card__cta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

.link-card--grade .chip-row,
.link-card--grade .link-card__note {
  position: relative;
  z-index: 2;
}

.link-card__note {
  margin: 0 0 var(--space-4-5);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.55;
  color: var(--chrome-dim);
}

.link-inline {
  font-family: var(--font-chrome, var(--font-display));
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  transition: color 0.2s ease;
}

.link-inline:hover {
  color: var(--ember);
}

.link-row {
  display: grid;
  grid-template-columns: 72px 1fr auto;
  align-items: center;
  gap: var(--space-4-5);
  padding: var(--space-3) var(--space-4-5) var(--space-3) var(--space-3);
  background: rgba(20, 20, 20, 0.94);
  text-decoration: none;
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.1), inset 0 -1px 0 rgba(0, 0, 0, 0.55);
  transition: background 220ms ease, transform 220ms ease;
}

.link-row:hover {
  background: rgba(30, 30, 30, 0.96);
  transform: translateX(3px);
}

.link-row:hover .link-row__arrow {
  transform: translateX(4px);
}

.link-row__thumb {
  width: 72px;
  height: 72px;
  background-image: var(--bg-image, none);
  background-size: cover;
  background-position: center;
  background-color: var(--hull-panel-dark);
}

.link-row__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.link-row__count {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.link-row__count-em {
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.link-row__title {
  font-family: var(--font-display);
  font-size: var(--fs-large);
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.link-row__arrow {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  color: var(--ember);
  transition: transform 220ms ease;
}

.loyalty-band {
  position: relative;
  margin: var(--space-6) 0 0;
  padding: var(--space-6);
  background: linear-gradient(180deg, rgba(232, 93, 24, 0.14) 0%, rgba(139, 46, 8, 0.18) 100%);
  border-top: 1px solid rgba(255, 122, 46, 0.5);
  border-bottom: 1px solid rgba(255, 122, 46, 0.5);
  box-shadow: 0 -4px 20px -8px rgba(255, 122, 46, 0.35), 0 4px 20px -8px rgba(255, 122, 46, 0.35);
}

.loyalty-band__inner {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: var(--space-6-5);
  align-items: center;
}

.loyalty-band__title {
  margin-top: var(--space-2);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-heading);
  line-height: 1.15;
  letter-spacing: 0.05em;
  color: var(--chrome-highlight);
}

.loyalty-band__sub {
  max-width: 460px;
  margin-top: var(--space-2);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.loyalty-band__progress {
  position: relative;
}

.loyalty-band__bar {
  position: relative;
  overflow: hidden;
  height: 10px;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid rgba(255, 122, 46, 0.35);
}

.loyalty-band__fill {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: var(--loyalty-progress, 78%);
  background: linear-gradient(90deg, var(--ember-glow) 0%, var(--ember) 60%, var(--ember-deep) 100%);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.5);
}

.loyalty-band__tiers {
  display: flex;
  justify-content: space-between;
  margin-top: var(--space-3);
}

.loyalty-band__tier {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.loyalty-band__tier--current {
  position: relative;
  font-weight: 700;
  color: var(--ember);
}

.loyalty-band__tier--current::before {
  content: "";
  position: absolute;
  top: -18px;
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  background: var(--ember-glow);
  box-shadow: 0 0 8px rgba(255, 179, 71, 0.9);
}

@media (max-width: 900px) {
  .loyalty-band__inner {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }
}
.loyalty-redeem {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-4);
  background: rgba(255, 122, 46, 0.05);
  border: 1px solid rgba(255, 122, 46, 0.2);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.1);
}

.loyalty-redeem__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-3);
}

.loyalty-redeem__title {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.loyalty-redeem__tag {
  padding: 3px var(--space-2);
  background: rgba(255, 122, 46, 0.1);
  border: 1px solid rgba(255, 122, 46, 0.3);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
}

.loyalty-redeem__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.loyalty-redeem__balance {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.loyalty-redeem__balance strong {
  color: var(--chrome-highlight);
  font-family: var(--font-display);
  font-weight: 600;
  letter-spacing: 0.06em;
}

.loyalty-redeem__balance .sep {
  margin: 0 var(--space-2);
  opacity: 0.55;
  color: var(--chrome-dim);
}

.loyalty-redeem__note {
  font-family: var(--font-body);
  font-style: italic;
  font-size: var(--fs-micro);
  color: var(--chrome-dim);
}

.media-card {
  position: relative;
  overflow: hidden;
  background-color: var(--void);
  background-image: var(--bg-image, none);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.media-card--hero {
  grid-column: span 2;
  grid-row: span 2;
}

.media-card--wide {
  grid-column: span 2;
}

.media-card__scrim {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(6, 6, 5, 0) 30%, rgba(6, 6, 5, 0.5) 65%, rgba(6, 6, 5, 0.9) 100%);
  pointer-events: none;
}

.media-card__badge {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 3;
}

.media-card__meta {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 3;
  padding: var(--space-4-5) var(--space-5) var(--space-5);
}

.media-card__meta .handle {
  margin-bottom: var(--space-2);
}

.media-card__caption {
  margin-bottom: var(--space-3);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.4;
  color: var(--chrome-warm);
}

.media-card__cover {
  position: absolute;
  inset: 0;
  z-index: 2;
}

.media-card__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1) var(--space-3);
  border: 1px solid rgba(231, 224, 220, 0.2);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  text-decoration: none;
  transition: border-color 200ms ease, color 200ms ease;
}

.media-card__link::before {
  content: "→";
  font-size: var(--fs-micro);
  color: var(--ember);
}

.media-card__link:hover {
  border-color: var(--ember);
  color: var(--chrome-highlight);
}

.media-square {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
}

.media-square > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.media-square--bloom {
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.35), 0 0 60px rgba(255, 122, 46, 0.2), 0 24px 64px -12px rgba(0, 0, 0, 0.9);
}

.mid-cta {
  --section-padding: 68px;
}

.mid-cta.mid-cta {
  margin-bottom: 0;
}

.mid-cta__inner {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6);
  align-items: center;
  justify-content: center;
  padding: var(--space-6) 0;
}

.mid-cta__text {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--chrome-warm);
}

.mid-cta__text strong {
  color: var(--chrome-highlight);
  font-weight: 600;
}

.mid-cta__copy {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  flex: 1 1 0;
  min-width: 0;
}

.mid-cta--split .mid-cta__inner {
  justify-content: space-between;
  padding: var(--space-6-5) 0;
}

@media (max-width: 900px) {
  .mid-cta--split .mid-cta__inner {
    flex-direction: column;
    align-items: flex-start;
  }
}
.newsletter-form {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
  padding: var(--space-7);
  background: rgba(20, 20, 20, 0.94);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.2), 0 30px 60px -20px rgba(0, 0, 0, 0.7);
}

.newsletter-form__label {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ember-glow);
}

.newsletter-form__input {
  width: 100%;
  padding: var(--space-4) var(--space-1);
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(184, 176, 166, 0.35);
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  color: var(--chrome-warm);
  outline: none;
  transition: border-color 200ms ease, box-shadow 200ms ease;
}

.newsletter-form__input::placeholder {
  color: var(--chrome-dim);
  opacity: 0.7;
}

.newsletter-form__input:focus {
  border-bottom-color: var(--ember);
  box-shadow: 0 2px 12px -2px rgba(255, 122, 46, 0.4);
}

.newsletter-form__fine {
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  line-height: 1.5;
  color: var(--chrome-dim);
}

.newsletter-form .sib_signup_form {
  margin: 0;
}

.newsletter-form [class*=sib_signup_box_inside] {
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
}

.newsletter-form .sib_msg_disp {
  display: none;
}

.newsletter-form .sib_loader {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: rgba(10, 10, 10, 0.84);
}

.newsletter-form .sib_loader img {
  display: none;
}

.newsletter-form .sib_loader::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 34px;
  height: 34px;
  margin-top: calc(var(--space-4) * -1);
  margin-left: calc(var(--space-4) * -1);
  border: 2px solid rgba(255, 122, 46, 0.2);
  border-top-color: var(--ember);
  border-radius: 50%;
  box-shadow: 0 0 20px rgba(255, 122, 46, 0.3);
  animation: artsabers-spin 900ms linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .newsletter-form .sib_loader::before {
    animation: none;
  }
}
.newsletter-form__field, .newsletter-form__action {
  margin: 0;
}

.newsletter-form__action .button {
  width: 100%;
}

.newsletter-form__label-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.newsletter-form .sib-alert-message {
  margin: 0;
  padding: var(--space-3) var(--space-4);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
}

.newsletter-form .sib-alert-message-success {
  background: rgba(255, 122, 46, 0.12);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
  color: var(--chrome-highlight);
}

.newsletter-form .sib-alert-message-error,
.newsletter-form .sib-alert-message-warning {
  background: rgba(250, 250, 250, 0.06);
  box-shadow: inset 0 0 0 1px rgba(184, 176, 166, 0.35);
  color: var(--chrome-warm);
}

@media (max-width: 700px) {
  .newsletter-form {
    padding: var(--space-6) var(--space-5);
  }
}
.newsletter-band__eyebrow {
  margin-bottom: var(--eyebrow-to-title);
}

.newsletter-band__title {
  --title-mb: 16px;
}

.newsletter-band__lede {
  max-width: 520px;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-large);
  line-height: 1.4;
  color: var(--on-primary-fixed);
  opacity: 0.86;
}

.center-row {
  display: flex;
  justify-content: center;
}

.em-ember {
  font-style: normal;
  color: var(--ember);
}

.order-detail {
  display: grid;
  grid-template-columns: 1.85fr 1fr;
  gap: var(--space-6);
  align-items: start;
  margin-top: var(--space-2);
}

.order-detail__col-left {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.order-detail__col-right {
  position: sticky;
  top: 100px;
}

@media (max-width: 900px) {
  .order-detail {
    grid-template-columns: 1fr;
  }
  .order-detail__col-right {
    position: static;
  }
}
.shipment-lines {
  display: flex;
  flex-direction: column;
}

.order-summary {
  padding: var(--space-5);
  background: var(--hull-panel);
  border-top: 1px solid rgba(255, 122, 46, 0.4);
  box-shadow: var(--panel-lift);
}

.order-summary__title {
  margin-bottom: var(--space-4-5);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--ember);
}

.order-summary__payment {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-5);
  padding-top: var(--space-4-5);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.order-summary__payment-brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 28px;
  background: var(--hull-panel-dark);
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.08em;
  color: var(--chrome-highlight);
}

.order-summary__actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  margin-top: var(--space-5);
  padding-top: var(--space-4-5);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.summary-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: var(--space-3) 0;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.summary-row + .summary-row {
  border-top: 1px dashed rgba(255, 255, 255, 0.08);
}

.summary-row__label {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.summary-row__value {
  font-family: var(--font-display);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--chrome-warm);
}

.summary-row--total {
  margin-top: var(--space-1);
  padding-top: var(--space-4-5);
  border-top: 1px solid rgba(255, 122, 46, 0.4);
}

.summary-row--total .summary-row__value {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-large);
  color: var(--ember);
}

.orders-table {
  width: 100%;
  background: var(--hull-panel);
  border-collapse: collapse;
  box-shadow: var(--panel-lift);
}

.orders-table thead th {
  padding: var(--space-4) var(--space-4-5);
  background: var(--hull-panel-dark);
  border-bottom: 1px solid rgba(255, 122, 46, 0.3);
  text-align: left;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.orders-table__head-action {
  text-align: right;
}

.orders-table tbody td {
  padding: var(--space-5) var(--space-4-5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  vertical-align: middle;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.orders-table tbody tr[hidden] {
  display: none;
}

.orders-table__id {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: 0.03em;
  font-variant-numeric: tabular-nums;
  color: var(--chrome-highlight);
}

.orders-table__total {
  font-family: var(--font-display);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--ember);
}

.orders-table__thumbs {
  display: flex;
  gap: var(--space-2);
}

.orders-table__thumb {
  position: relative;
  width: 32px;
  height: 40px;
  background: var(--hull-panel-dark);
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: var(--chrome-top-soft);
}

.orders-table__thumb::before {
  content: "";
  position: absolute;
  top: 4px;
  left: 50%;
  transform: translateX(-50%);
  width: 3px;
  height: 16px;
  background: linear-gradient(180deg, rgba(232, 228, 221, 0.85) 0%, rgba(232, 228, 221, 0.2) 100%);
  box-shadow: 0 0 4px rgba(232, 228, 221, 0.35);
}

.orders-table__thumb::after {
  content: "";
  position: absolute;
  bottom: 6px;
  left: 50%;
  transform: translateX(-50%);
  width: 12px;
  height: 16px;
  background: var(--hull-edge);
}

.orders-table__actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-4);
}

@media (max-width: 700px) {
  .orders-table {
    background: none;
    box-shadow: none;
  }
  .orders-table thead {
    display: none;
  }
  .orders-table tbody tr {
    display: block;
    margin-bottom: var(--space-4);
    padding: var(--space-1) var(--space-4-5) var(--space-3);
    background: var(--hull-panel);
    box-shadow: var(--panel-lift);
  }
  .orders-table tbody td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4-5);
    padding: var(--space-3) 0;
  }
  .orders-table tbody td::before {
    content: attr(data-label);
    flex-shrink: 0;
    font-family: var(--font-display);
    font-weight: 600;
    font-size: var(--fs-micro);
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--chrome-dim);
  }
  .orders-table tbody td:last-child {
    border-bottom: 0;
  }
  .orders-table tbody td.orders-table__id {
    display: block;
    padding-top: var(--space-4);
    font-size: var(--fs-subheading);
  }
  .orders-table__actions {
    justify-content: flex-end;
  }
}
.orders-table__pagination {
  margin-top: var(--space-4-5);
  padding: var(--space-4) var(--space-4-5);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.page-title {
  font-family: var(--font-display);
  font-size: var(--fs-section);
  font-weight: 700;
  line-height: 0.96;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

@media (max-width: 1024px) {
  .page-title {
    font-size: var(--fs-title-lg);
  }
}
@media (max-width: 700px) {
  .page-title {
    font-size: var(--fs-heading-lg);
  }
}
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-1);
  margin-top: var(--space-8);
  padding-top: var(--space-6);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.06);
}

.pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.08em;
  color: var(--chrome-warm);
  text-decoration: none;
}

.pagination .page-numbers.current {
  color: var(--on-primary-fixed);
  font-weight: 700;
  background: linear-gradient(180deg, var(--ember-glow), var(--ember), var(--ember-deep));
  box-shadow: 0 0 16px rgba(255, 122, 46, 0.5);
}

.pagination .page-numbers.prev, .pagination .page-numbers.next {
  padding: 0 var(--space-5);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.pagination .page-numbers.dots {
  min-width: 0;
  height: auto;
  padding: 0 var(--space-2);
  color: var(--chrome-dim);
}

.pagination a.page-numbers {
  transition: color 200ms ease;
}

.pagination a.page-numbers:hover, .pagination a.page-numbers:focus-visible {
  color: var(--ember);
}

.pagination-cta {
  margin-top: var(--space-7);
  display: flex;
  justify-content: center;
}

.pagination-cta__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4-5) var(--space-6-5);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  background: transparent;
  border: 1px solid rgba(255, 122, 46, 0.55);
  transition: box-shadow 180ms ease, background 180ms ease;
}

.pagination-cta__link:hover {
  background: rgba(255, 122, 46, 0.08);
  box-shadow: var(--ember-glow-sm), var(--chrome-top-soft);
}

.pagination-cta__arrow {
  color: var(--ember);
  font-size: var(--fs-small);
}

.panel-seam {
  position: relative;
  height: 2px;
  width: 100%;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0.25) 0%, rgba(255, 122, 46, 0.85) 50%, rgba(255, 122, 46, 0.25) 100%);
  box-shadow: 0 -14px 40px 0 rgba(255, 122, 46, 0.3), 0 14px 40px 0 rgba(255, 122, 46, 0.5);
  z-index: 4;
  overflow: visible;
}

.password-card {
  padding: var(--space-6-5) var(--space-6) var(--space-6);
  margin-top: var(--space-2);
  background: linear-gradient(180deg, rgba(255, 122, 46, 0.06) 0%, rgba(255, 122, 46, 0.02) 100%), var(--hull-panel);
  border: 1px solid var(--ember-hairline);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.1), 0 0 22px rgba(255, 122, 46, 0.1), 0 8px 28px -8px rgba(0, 0, 0, 0.9);
}

.password-card .content-group__legend {
  padding-left: var(--space-2);
  background: var(--charcoal);
  color: var(--chrome-highlight);
}

.password-card__glyph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  margin-right: 2px;
  background: linear-gradient(180deg, rgba(255, 122, 46, 0.2) 0%, rgba(255, 122, 46, 0.06) 100%);
  border: 1px solid var(--ember-hairline);
  color: var(--ember);
  box-shadow: inset 0 0 8px rgba(255, 122, 46, 0.25), 0 0 8px rgba(255, 122, 46, 0.35);
}

.password-card__glyph svg {
  width: 14px;
  height: 14px;
}

.password-card__sub {
  max-width: 620px;
  margin-bottom: var(--space-5);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.password-card__signin-label {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.password-card__signin-email {
  font-family: var(--font-body);
  font-weight: 500;
  font-size: var(--fs-small);
  color: var(--ember);
}

.password-card__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4-5) var(--space-6);
  margin-bottom: var(--space-4-5);
}

.password-card__actions {
  display: grid;
  grid-template-columns: minmax(320px, 1fr) auto;
  align-items: center;
  gap: var(--space-4) var(--space-5);
}

.password-card__actions .btn-skip {
  margin: 0;
  justify-self: end;
  font-size: var(--fs-micro);
  white-space: nowrap;
}

.password-card__message {
  grid-column: 1/-1;
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.password-card__message:empty {
  display: none;
}

.password-card__trust {
  grid-column: 1/-1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  margin: var(--space-2) 0 0;
  padding-top: var(--space-3);
  border-top: 1px dashed var(--hairline);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.password-card__trust svg {
  width: 12px;
  height: 12px;
  color: var(--ember);
}

.password-card--compact {
  padding: var(--space-5) var(--space-6);
}

.password-card--compact .password-card__sub {
  max-width: none;
  margin-bottom: var(--space-4-5);
}

@media (max-width: 720px) {
  .password-card__grid, .password-card__actions {
    grid-template-columns: 1fr;
  }
  .password-card .btn-skip {
    white-space: normal;
    justify-self: start;
  }
}
.btn-skip {
  display: block;
  width: 100%;
  margin-top: var(--space-4);
  padding: var(--space-2);
  text-align: center;
  border-bottom: 1px dashed transparent;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.btn-skip:hover {
  color: var(--chrome-warm);
}

.strength-meter {
  margin-top: var(--space-3);
}

.strength-meter__bars {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-1);
  margin-bottom: var(--space-2);
}

.strength-meter__bar {
  height: 3px;
  background: var(--hull-panel-dark);
  border: 1px solid rgba(250, 250, 250, 0.04);
}

.strength-meter__bar--filled {
  background: var(--ember);
  border-color: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.5);
}

.strength-meter__label {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.strength-meter__label strong {
  font-weight: 600;
  color: var(--ember);
}

.pay-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.pay-card__brand-row {
  display: flex;
  align-items: center;
  gap: var(--space-4);
}

.pay-card__brand {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 34px;
  background: var(--hull-panel-dark);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: var(--chrome-top-soft);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-micro);
  letter-spacing: 0.1em;
  color: var(--chrome-highlight);
}

.pay-card__number {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-base);
  letter-spacing: 0.06em;
  font-variant-numeric: tabular-nums;
  color: var(--chrome-highlight);
}

.pay-card__meta {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.pay-card__meta strong {
  font-weight: 600;
  color: var(--chrome-highlight);
}

.pay-card__actions {
  display: flex;
  gap: var(--space-4-5);
  margin-top: var(--space-2);
}

.payment-methods-add {
  margin-top: var(--space-4);
  text-align: center;
}

.pay-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-2);
  margin-top: var(--space-4);
  padding-top: var(--space-4);
  border-top: 1px solid rgba(250, 250, 250, 0.06);
}

.pay-row__badge {
  padding: var(--space-1) var(--space-2);
  background: var(--hull-panel-dark);
  border: 1px solid rgba(250, 250, 250, 0.1);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.payment-tiles {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
  transition: opacity 180ms ease;
}

.payment-tiles.is-settling {
  visibility: hidden;
  opacity: 0;
}

@media (max-width: 640px) {
  .payment-tiles {
    grid-template-columns: 1fr;
  }
}
.payment-tile {
  display: contents;
}

.payment-tile--selected .payment-tile__control {
  background: linear-gradient(180deg, #2A211B 0%, var(--hull-panel-lift) 100%);
  border-color: var(--ember);
  box-shadow: var(--chrome-top), var(--ember-glow-sm);
}

.payment-tile__control {
  order: 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-3);
  min-height: 72px;
  padding: var(--space-4-5) var(--space-4);
  background: var(--hull-panel-lift);
  border: 1px solid var(--hairline);
  box-shadow: var(--chrome-top-soft);
  cursor: pointer;
  transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
}

.payment-tile__control:hover {
  border-color: var(--hull-edge);
}

.payment-tile__control:has(.payment-tile__input:checked) {
  background: linear-gradient(180deg, #2A211B 0%, var(--hull-panel-lift) 100%);
  border-color: var(--ember);
  box-shadow: var(--chrome-top), var(--ember-glow-sm);
}

.payment-tile__control:has(.payment-tile__input:focus-visible) {
  outline: 2px solid var(--ember);
  outline-offset: 2px;
}

.payment-tile__input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.payment-tile__fields {
  order: 1;
  grid-column: 1/-1;
  margin-top: var(--space-4-5);
}

.payment-tile__fields:empty {
  display: none;
}

.payment-tile__label {
  position: static;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.payment-tile__label::after {
  content: "";
  position: absolute;
  inset: 0;
}

.payment-tile__marks {
  position: relative;
  display: flex;
  gap: var(--space-1);
  margin-top: var(--space-2);
}

.payment-tile__dot {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 10px;
  height: 10px;
  border: 1px solid var(--hull-edge);
  border-radius: 50%;
}

.payment-tile--selected .payment-tile__dot {
  background: radial-gradient(circle, var(--ember) 40%, transparent 44%);
  border-color: var(--ember);
  box-shadow: 0 0 6px var(--ember);
}

.card-mark {
  display: inline-block;
  height: 20px;
  padding: 0 var(--space-2);
  border-radius: 2px;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.04em;
  line-height: 20px;
  color: #fff;
}

.card-mark--visa {
  background: #1A1F71;
  color: #F7B600;
  letter-spacing: 0;
  font-style: italic;
}

.card-mark--mc {
  position: relative;
  padding-left: var(--space-5);
  background: #EB001B;
}

.card-mark--mc::before {
  content: "";
  position: absolute;
  top: 4px;
  left: 5px;
  width: 12px;
  height: 12px;
  background: #F79E1B;
  border-radius: 50%;
  mix-blend-mode: multiply;
}

.card-mark--amex {
  background: #006FCF;
  font-size: var(--fs-nano);
  letter-spacing: 0.06em;
}

.pay-glyph {
  font-family: "Arial", sans-serif;
  font-weight: 700;
  font-size: var(--fs-base);
  letter-spacing: 0.02em;
}

.pay-glyph--paypal {
  color: #009cde;
}

.pay-glyph--paypal em {
  color: #003087;
  font-style: normal;
}

.pay-glyph--apple {
  color: var(--chrome-highlight);
}

.payment-tile__fields {
  padding: var(--space-5);
  background: var(--hull-panel-lift);
  border: 1px solid var(--hairline);
  box-shadow: var(--chrome-top-soft);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.payment-tile__fields .wc-payment-form {
  background-color: var(--hull-panel-lift);
}

.payment-tile__fields p {
  margin: 0 0 var(--space-3);
  color: inherit;
}

.payment-tile__fields p:last-child {
  margin-bottom: 0;
}

.payment-tile__fields a {
  color: var(--ember);
  text-decoration: underline;
}

.payment-tile__fields a:hover {
  color: var(--ember-bright);
}

.payment-tile__fields small,
.payment-tile__fields .description {
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.payment-tile__fields--collapsed {
  display: none;
}

.woocommerce-billing-fields__field-wrapper input,
.woocommerce-billing-fields__field-wrapper #billing_first_name,
#payment input,
#payment #billing_first_name {
  padding: var(--space-4);
  color: var(--chrome-highlight);
  font-family: var(--font-body);
  font-size: var(--fs-base);
}

.persist-note {
  margin-top: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  text-align: center;
}

.persist-note .link {
  margin-left: var(--space-2);
  padding-bottom: 1px;
  border-bottom: 1px dotted rgba(255, 122, 46, 0.5);
  color: var(--ember);
}

.persist-note .link:hover {
  border-bottom-style: solid;
}

.pill {
  display: inline-flex;
  align-items: center;
  padding: var(--space-2) var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  border: 1px solid rgba(255, 122, 46, 0.45);
}

.pill--ember {
  padding: var(--space-2) var(--space-4);
  font-weight: 600;
  letter-spacing: 0.18em;
  color: var(--ember);
  background: rgba(255, 122, 46, 0.05);
  border-color: rgba(255, 122, 46, 0.55);
}

.pill--link {
  text-decoration: none;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.pill--link:hover, .pill--link:focus-visible {
  color: var(--ember);
  background: rgba(255, 122, 46, 0.08);
  border-color: rgba(255, 122, 46, 0.75);
}

.post-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--hull-panel);
  box-shadow: var(--panel-lift), var(--chrome-top-soft);
  text-decoration: none;
  transition: box-shadow 250ms ease, transform 250ms ease;
}

.post-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
}

.post-card__media {
  position: relative;
  aspect-ratio: 3/2;
  overflow: hidden;
  background: var(--hull-panel-dark);
}

.post-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 60%, rgba(6, 6, 6, 0.55) 100%);
  pointer-events: none;
}

.post-card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 400ms ease;
}

.post-card:hover .post-card__img {
  transform: scale(1.03);
}

.post-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5) var(--space-5) var(--space-6);
}

.post-card__chip {
  align-self: flex-start;
  padding: var(--space-1) var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  background: rgba(255, 122, 46, 0.05);
  border: 1px solid rgba(255, 122, 46, 0.4);
}

.post-card__title {
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 600;
  line-height: 1.22;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.post-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.post-card__meta span + span::before {
  content: "·";
  margin-right: 8px;
  color: var(--chrome-dim);
}

.post-card__excerpt {
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.55;
  color: var(--chrome-warm);
  opacity: 0.85;
}

.post-card__read {
  margin-top: auto;
  padding-top: var(--space-1);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.price-stack {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.price-stack__amount {
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-heading-lg);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--ember);
}

.price-stack__was {
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
  font-variant-numeric: tabular-nums;
}

.price-stack__was del {
  margin-left: var(--space-1);
  text-decoration-thickness: 1px;
  color: inherit;
}

.price-stack__saving {
  align-self: flex-start;
  padding: var(--space-2) var(--space-3);
  background: linear-gradient(180deg, var(--ember-glow) 0%, var(--ember) 50%, var(--ember-deep) 100%);
  box-shadow: var(--ember-glow-sm);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-variant-numeric: tabular-nums;
  color: var(--on-primary-fixed);
}

.price-stack__bnpl {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.price-stack__bnpl strong {
  color: var(--chrome-warm);
  font-weight: 600;
}

.product-card {
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
  display: flex;
  flex-direction: column;
  position: relative;
  transition: box-shadow 250ms ease, transform 250ms ease;
}

.product-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
}

.product-card:hover .product-card__cta {
  color: var(--ember);
}

.product-card--hot {
  box-shadow: var(--panel-lift), var(--ember-hot-rim);
}

.product-card--hot:hover {
  transform: translateY(-4px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover), var(--ember-glow-md);
}

.product-card__media {
  position: relative;
  aspect-ratio: 1/1;
  background-color: var(--void);
}

.product-card__media::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 62%, rgba(6, 6, 6, 0.75) 100%);
  z-index: 1;
  pointer-events: none;
}

.product-card__media::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 4px;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0) 0%, rgba(255, 122, 46, 0.6) 50%, rgba(255, 122, 46, 0) 100%);
  z-index: 2;
  filter: blur(3px);
}

.product-card__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.product-card__badge {
  position: absolute;
  top: var(--space-3);
  right: var(--space-3);
  z-index: 3;
}

.product-card__body {
  background: var(--hull-panel-lift);
  /*
   * 24/32/32 at two-up. The lateral 32px was 12% of a 526px card and is
   * 23% of a 283px one — the single biggest thing standing between the
   * card and a readable three-up, because every px of it comes straight
   * off the spec rows' measure. 20px returns 24px of content width.
   */
  padding: var(--space-4-5) var(--space-4-5) var(--space-5);
  display: flex;
  flex-direction: column;
  flex: 1;
}

.product-card__meta {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--chrome-dim);
  margin-bottom: var(--space-3);
}

.product-card__name {
  /*
   * NO LINE CLAMP. It was three lines and it truncated half the archive
   * at three-up — this catalogue's names carry character, finish, blade
   * and core in one string, and hiding the end of a product's name to
   * keep a grid tidy is the wrong trade. A name now takes the lines it
   * needs.
   *
   * Row alignment survives it: the card is a flex column and the foot
   * takes `margin-top: auto`, so grid stretch keeps cards in a row the
   * same height and the prices level however many lines the name runs to.
   *
   * SENTENCE CASE, and it is the size change that forced it. Caps cost
   * about 15% of the line for the same string — affordable on a 526px
   * card, not on a 283px one. Measured on a full page of 12 at 283px:
   *
   *   caps            40 lines total, worst 5, spread across 2/3/4/5
   *   sentence case   30 lines total, worst 3, spread across 2/3
   *
   * A quarter of the name height, and the worst case drops two lines.
   * The second number matters as much as the first: the specs block
   * anchors to the BOTTOM of the body so the rows line up across a row
   * of cards, and the slack it pushes upward collects under the name.
   * Four different name heights in a row means four different amounts of
   * dead space; two means almost none.
   *
   * `title--caps` is off the markup rather than overridden here — the
   * modifier is opt-in and the card no longer opts in. Putting the caps
   * back is that one class, and re-measuring is the price of it.
   *
   * NO font-size HERE. The name carries `.title__subheading`, which
   * asserts the size, and `.product-card__name` ties with it on
   * specificity (one class each) so whichever sheet loads last wins. A
   * size declared here looked correct in the partial and rendered as the
   * title component's size on the page. The size is set in the MARKUP,
   * in content-product.php, where the class that decides it lives.
   */
  --title-mb: var(--space-3);
}

.product-card__specs {
  /*
   * PUSHED TO THE BOTTOM, so the specs line up across a row.
   *
   * The name above runs to two, three or four lines and some products
   * carry a third spec row, so anchoring the block to the TOP of the
   * body left it ending 27-69px apart on adjacent cards. Anchored to the
   * bottom instead, it sits a fixed distance from the card's foot — and
   * grid stretch already makes every card in a row the same height, so
   * the blocks land level and the slack collects under the name where
   * nothing is reading it.
   *
   * The auto margin moved here FROM `&__foot`. Two elements in the same
   * flex column both claiming `margin-top: auto` split the free space
   * between them rather than pushing either to the end, which would have
   * parked the specs halfway up the card.
   */
  margin-top: auto;
  margin-bottom: var(--space-4);
  padding-bottom: var(--space-4);
  border-bottom: 1px dotted rgba(184, 176, 166, 0.2);
}

.product-card__spec {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  font-family: var(--font-body);
  /*
   * The specs are the only product detail on the card, and the size has
   * moved twice for the same reason each time — what they read as next
   * to the name and price above them.
   *
   * They shipped on --fs-eyebrow (12px), a LABEL size, which read as
   * caption chrome under a 22px name and a 26px price. --fs-base (16px)
   * corrected that and overshot slightly: at 16px they carry nearly the
   * weight of the name. --fs-small (14px) is the step between — still a
   * reading size rather than a label one, without competing upward.
   */
  font-size: var(--fs-small);
  padding: var(--space-1) 0;
}

.product-card__spec-label {
  /*
   * SENTENCE CASE, AND THIS IS AN ALIGNMENT FIX BEFORE IT IS A STYLE ONE.
   *
   * The row is `justify-content: space-between`, so a wider label leaves
   * the value less room. In caps with 0.1em tracking, "Blade type"
   * measured 112px and pushed values like "Baselit · heavy duelling" onto
   * a second line — 10 of 29 spec values on a page wrapped, which took
   * that row from 30px to 51px and left the specs block ending at a
   * different height on adjacent cards. That was the visible misalignment.
   *
   * The same label in sentence case is 97px, and with the tracking gone
   * 83px. Measured on a full page: nothing wraps at either. The tracking
   * goes with the caps because that is what it was for — 0.1em on
   * lowercase Orbitron reads as loose rather than deliberate.
   */
  color: var(--chrome-dim);
  font-family: var(--font-display);
}

.product-card__spec-value {
  color: var(--chrome-warm);
  font-family: var(--font-display);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

.product-card__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-4);
}

.product-card__price {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-3);
  font-family: var(--font-display);
  /*
   * 26px was drawn against a 22px name on a 526px card. Both step down
   * together for three-up: at 20px the price still carries the foot row
   * beside an 11px call to action, and "£1,299.00" no longer takes the
   * whole of a 283px card's measure on its own.
   */
  font-size: var(--fs-large);
  font-weight: 600;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.product-card__price ins {
  text-decoration: none;
  color: inherit;
}

.product-card__price-was, .product-card__price del {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 500;
  color: var(--chrome-dim);
  text-decoration: line-through;
  text-decoration-color: rgba(199, 193, 190, 0.6);
}

.product-card__cta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

.product-card__cta {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--chrome-warm);
  text-decoration: none;
  padding-bottom: var(--space-1);
  border-bottom: 1px solid var(--ember);
  transition: color 0.2s ease;
}

.product-card__cta:hover {
  color: var(--ember);
}

.product-grid {
  margin-top: var(--space-6-5);
}

@media (max-width: 700px) {
  .product-grid {
    gap: var(--space-4-5);
  }
}
.process-confirmation {
  --fs-nano: 12px;
  --fs-micro: 14px;
  --fs-eyebrow: 14px;
  --fs-small: 16px;
  --fs-base: 18px;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  max-width: var(--site-max-width);
  margin: 0 auto;
  padding: var(--space-8) var(--gutter-small);
}

.process-confirmation__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 440px;
  gap: var(--space-6-5);
  align-items: start;
  margin-top: var(--space-5);
}

.process-confirmation__grid > fieldset {
  min-width: 0;
  margin: 0;
}

.process-confirmation__side {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.process-confirmation__side > fieldset {
  margin: 0;
}

.process-confirmation > .grid {
  margin-top: var(--space-4-5);
}

@media (max-width: 900px) {
  .process-confirmation {
    padding: var(--space-7) var(--space-5) var(--space-8);
  }
  .process-confirmation__grid {
    grid-template-columns: 1fr;
    gap: var(--space-4-5);
  }
}
.product-feature {
  position: relative;
  grid-column: 1/-1;
  overflow: hidden;
  isolation: isolate;
  background: var(--charcoal-warm, #161412);
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.55), inset 0 -1px 0 rgba(255, 122, 46, 0.55), 0 -2px 40px rgba(255, 122, 46, 0.18), 0 2px 40px rgba(255, 122, 46, 0.18);
}

.product-feature__inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 380px 1fr;
  gap: 0;
  align-items: stretch;
}

.product-feature__media {
  position: relative;
  overflow: hidden;
  min-width: 0;
  min-height: 100%;
  background: var(--hull-panel-dark);
}

.product-feature__media-link {
  display: block;
  height: 100%;
}

.product-feature__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 400ms ease;
}

.product-feature:hover .product-feature__img {
  transform: scale(1.03);
}

.product-feature__badge {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 3;
  padding: var(--space-2) var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember-glow);
  background: rgba(6, 6, 6, 0.85);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 122, 46, 0.85);
  text-shadow: 0 0 12px rgba(255, 122, 46, 0.4);
}

.product-feature__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-4);
  padding: var(--space-7);
}

.product-feature__eyebrow {
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ember-glow);
  text-shadow: 0 0 20px rgba(255, 122, 46, 0.35);
}

.product-feature__eyebrow::before {
  content: "";
  display: inline-block;
  width: 32px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.6);
}

.product-feature__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-heading-lg);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.product-feature__lede {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.55;
  color: var(--chrome-warm);
  opacity: 0.9;
}

.product-feature__rating {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin: -2px 0;
}

.product-feature__stars {
  font-size: var(--fs-base);
  letter-spacing: 0.05em;
  color: var(--ember);
  text-shadow: 0 0 12px rgba(255, 122, 46, 0.35);
}

.product-feature__rating-value {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  color: var(--chrome-highlight);
}

.product-feature__review-count {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.product-feature__review-count::before {
  content: "·";
  margin-right: 8px;
  color: var(--chrome-dim);
}

.product-feature__specs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
}

.product-feature__specs li {
  padding: var(--space-2) var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  background: rgba(20, 20, 20, 0.4);
  border: 1px solid rgba(184, 176, 166, 0.35);
}

.product-feature__pills {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
}

.product-feature__pills li {
  padding: var(--space-2) var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember-glow);
  background: rgba(255, 122, 46, 0.05);
  border: 1px solid rgba(255, 122, 46, 0.4);
}

.product-feature__stock {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.product-feature__stock::before {
  content: "";
  width: 6px;
  height: 6px;
  background: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.7);
}

.product-feature__actions {
  display: flex;
  align-items: center;
  gap: var(--space-4-5);
  margin-top: var(--space-2);
  padding-top: var(--space-4-5);
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.25);
}

.product-feature__price {
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 500;
  letter-spacing: 0.01em;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.product-feature__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-4) var(--space-5);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  background: rgba(255, 122, 46, 0.06);
  border: 1px solid rgba(255, 122, 46, 0.55);
  transition: background 200ms, box-shadow 200ms, color 200ms;
}

.product-feature__cta:hover {
  color: var(--chrome-highlight);
  background: rgba(255, 122, 46, 0.14);
  box-shadow: 0 0 24px rgba(255, 122, 46, 0.35);
}

.product-feature__stat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-4-5);
  margin-top: var(--space-2);
  padding-top: var(--space-4-5);
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.25);
}

.product-feature__stat {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.product-feature__stat-value {
  font-family: var(--font-display);
  font-size: var(--fs-heading);
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.product-feature__stat-label {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.product-feature--tile {
  grid-column: auto;
}

.product-feature--tile .product-feature__inner {
  display: block;
}

.product-feature--tile .product-feature__media {
  aspect-ratio: 3/2;
}

.product-feature--tile .product-feature__copy {
  padding: var(--space-4-5) var(--space-5) var(--space-5);
  gap: var(--space-3);
}

.product-feature--tile .product-feature__badge {
  top: 12px;
  left: 12px;
  padding: var(--space-2) var(--space-3);
  font-size: var(--fs-nano);
  letter-spacing: 0.2em;
}

.product-feature--tile .product-feature__lede,
.product-feature--tile .product-feature__specs,
.product-feature--tile .product-feature__stock,
.product-feature--tile .product-feature__pills,
.product-feature--tile .product-feature__stat-grid {
  display: none;
}

@media (max-width: 1024px) {
  .product-feature__inner {
    grid-template-columns: 1fr;
  }
  .product-feature__copy {
    padding: var(--space-6);
  }
}
.product-feature-funnel .badge {
  --badge-mb: 32px;
}

.product-feature-funnel .intro-cluster {
  --intro-cluster-mb: 40px;
}

.product-feature-funnel .chip-row {
  --chip-row-mb: 48px;
}

.product-feature-funnel .grid {
  --grid-mb: 48px;
}

.product-gallery {
  position: relative;
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: var(--space-4);
}

.product-gallery:not(:has(.product-gallery__thumbs)) {
  grid-template-columns: minmax(0, 1fr);
}

.product-gallery:not(:has(.product-gallery__thumbs)) .product-gallery__main {
  grid-column: 1;
}

.product-gallery__thumbs {
  position: absolute;
  inset-block: 0;
  left: 0;
  width: 96px;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  overflow-y: auto;
  scrollbar-color: var(--ember) rgba(250, 250, 250, 0.06);
  scrollbar-width: thin;
}

.product-gallery__thumbs::-webkit-scrollbar {
  width: 4px;
}

.product-gallery__thumbs::-webkit-scrollbar-track {
  background: rgba(250, 250, 250, 0.06);
}

.product-gallery__thumbs::-webkit-scrollbar-thumb {
  background: var(--ember);
}

.product-gallery__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.product-gallery__thumb {
  position: relative;
  flex: 0 0 96px;
  aspect-ratio: 1/1;
  width: 100%;
  padding: 0;
  overflow: hidden;
  background-color: var(--hull-panel);
  border: 0;
  box-shadow: var(--panel-lift);
}

.product-gallery__thumb::before, .product-gallery__thumb::after {
  content: "";
  position: absolute;
  top: 4px;
  z-index: 2;
  width: 6px;
  height: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.product-gallery__thumb::before {
  left: 4px;
}

.product-gallery__thumb::after {
  right: 4px;
}

.product-gallery__thumb {
  cursor: pointer;
  transition: box-shadow 200ms ease;
}

.product-gallery__thumb:hover {
  box-shadow: var(--panel-lift), var(--ember-glow-sm);
}

.product-gallery__thumb:focus-visible {
  outline: 2px solid var(--chrome-highlight);
  outline-offset: 2px;
}

.product-gallery__thumb--active {
  box-shadow: var(--ember-hot-rim);
}

.product-gallery__main {
  grid-column: 2;
  position: relative;
  aspect-ratio: 4/5;
  overflow: hidden;
  background-color: var(--hull-panel);
  box-shadow: var(--panel-lift);
}

.product-gallery__main::before, .product-gallery__main::after {
  content: "";
  position: absolute;
  top: 6px;
  z-index: 2;
  width: 8px;
  height: 8px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.product-gallery__main::before {
  left: 6px;
}

.product-gallery__main::after {
  right: 6px;
}

.product-gallery__main {
  cursor: zoom-in;
}

@media (max-width: 1024px) {
  .product-gallery {
    grid-template-columns: minmax(0, 1fr);
  }
  .product-gallery__main {
    grid-column: 1;
  }
  .product-gallery__thumbs {
    position: static;
    width: auto;
    flex-direction: row;
    overflow-y: hidden;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-color: var(--ember) rgba(250, 250, 250, 0.06);
    scrollbar-width: thin;
    padding-bottom: var(--space-3);
  }
  .product-gallery__thumbs::-webkit-scrollbar {
    height: 4px;
  }
  .product-gallery__thumbs::-webkit-scrollbar-track {
    background: rgba(250, 250, 250, 0.06);
  }
  .product-gallery__thumbs::-webkit-scrollbar-thumb {
    background: var(--ember);
  }
  .product-gallery__thumb {
    flex: 0 0 64px;
  }
}
.slick-lightbox-close {
  width: 44px;
  height: 44px;
  opacity: 1;
}

.slick-lightbox-close::before {
  font-family: var(--font-display);
  font-size: var(--fs-heading);
  color: var(--chrome-warm);
  transition: color 160ms ease;
}

.slick-lightbox-close:hover::before, .slick-lightbox-close:focus-visible::before {
  color: var(--ember);
}

.slick-lightbox-close:focus-visible {
  outline: 2px solid var(--chrome-highlight);
  outline-offset: 2px;
}

.slick-lightbox .slick-prev,
.slick-lightbox .slick-next {
  width: 48px;
  height: 48px;
  background: transparent;
  border: 0;
  font-family: var(--font-display);
  font-size: var(--fs-section);
  line-height: 1;
  color: var(--chrome-warm);
  cursor: pointer;
  transition: color 160ms ease;
}

.slick-lightbox .slick-prev:hover,
.slick-lightbox .slick-next:hover {
  color: var(--ember);
}

.slick-lightbox .slick-prev:focus-visible,
.slick-lightbox .slick-next:focus-visible {
  outline: 2px solid var(--chrome-highlight);
  outline-offset: 2px;
}

.product-hero__band.section {
  padding-top: var(--space-8);
  padding-bottom: var(--space-10);
}

.product-hero__split {
  --grid-columns: 1.15fr 1fr;
  --grid-gap: 64px;
  align-items: start;
}

.product-hero__dossier {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.product-hero__dossier .product_title {
  font-size: var(--fs-title-lg);
}

@media (max-width: 1024px) {
  .product-hero__dossier .product_title {
    font-size: var(--fs-heading-lg);
  }
}
@media (max-width: 700px) {
  .product-hero__dossier .product_title {
    font-size: var(--fs-heading);
  }
}
.product-hero__lede {
  max-width: 46ch;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-dim);
}

.product-hero__lede p {
  margin: 0;
}

.product-hero__lede p + p {
  margin-top: var(--space-3);
}

@media (max-width: 900px) {
  .product-hero__band.section {
    padding-top: var(--space-6-5);
    padding-bottom: var(--space-8);
  }
}
.proof-callout {
  --section-bg-image: var(--bg-plate-seam-h);
}

.proof-callout .grid {
  --grid-gap: 72px;
}

.proof-callout .eyebrow {
  --eyebrow-mb: 32px;
}

.proof-callout .title__hero {
  --title-mb: 28px;
}

.proof-callout .section-title--sub {
  --section-title-sub-fs: 19px;
  --section-title-sub-lh: 1.5;
  --section-title-sub-mb: 40px;
}

.progress-step-strip {
  position: relative;
  padding-left: var(--space-5);
}

.progress-step-strip__row {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: baseline;
  gap: var(--space-3);
  padding: var(--space-3) 0 var(--space-5);
}

.progress-step-strip__stage-name {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-small);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.progress-step-strip__stage-date {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  color: var(--chrome-dim);
  font-variant-numeric: tabular-nums;
}

.progress-step-strip__row .progress-step-strip__stage-name {
  color: var(--chrome-dim);
}

.progress-step-strip__row--done .progress-step-strip__stage-name {
  color: var(--chrome-warm);
}

.progress-step-strip__row--active .progress-step-strip__stage-name {
  color: var(--ember-glow);
}

.progress-step-strip__row--active .progress-step-strip__stage-date {
  color: var(--ember);
}

.progress-step-strip--h {
  --steps: 3;
  position: relative;
  display: grid;
  grid-template-columns: repeat(var(--steps), 1fr);
  gap: 0;
  padding: var(--space-2) 0 0;
  padding-left: 0;
}

.progress-step-strip--h .progress-step-strip__stage:not(:first-child)::before {
  content: "";
  position: absolute;
  top: 6px;
  right: 50%;
  z-index: -1;
  width: 100%;
  height: 1px;
  background: var(--hull-edge);
  transform: translateY(-50%);
}

.progress-step-strip--h .progress-step-strip__stage--done:not(:first-child)::before,
.progress-step-strip--h .progress-step-strip__stage--active:not(:first-child)::before {
  background: var(--ember);
}

.progress-step-strip__stage {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  text-align: center;
}

.progress-step-strip__dot {
  width: 12px;
  height: 12px;
  background: var(--hull-panel-dark);
  border: 1px solid var(--hull-edge);
  border-radius: 50%;
  box-shadow: inset 0 0 0 2px var(--hull-panel);
}

.progress-step-strip__name {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.progress-step-strip__date {
  font-family: var(--font-body);
  font-size: var(--fs-nano);
  line-height: 1.3;
  color: var(--chrome-dim);
  opacity: 0.72;
}

.progress-step-strip__stage--active .progress-step-strip__dot {
  background: var(--ember);
  border-color: var(--ember);
  box-shadow: 0 0 0 4px rgba(255, 122, 46, 0.18), 0 0 0 6px rgba(255, 122, 46, 0.08), 0 0 12px var(--ember);
}

.progress-step-strip__stage--active .progress-step-strip__name {
  color: var(--ember);
}

.progress-step-strip__stage--done .progress-step-strip__dot {
  background: var(--ember);
  border-color: var(--ember);
}

.progress-step-strip__stage--done .progress-step-strip__name {
  color: var(--chrome-warm);
}

.query-chip {
  display: inline-flex;
  align-items: center;
  padding: var(--space-3) var(--space-4);
  background: transparent;
  border: 1px solid rgba(255, 122, 46, 0.42);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  cursor: pointer;
  transition: background 200ms ease, color 200ms ease, border-color 200ms ease, box-shadow 200ms ease;
}

.query-chip:hover, .query-chip--active {
  background: rgba(255, 122, 46, 0.14);
  color: var(--ember-glow);
  border-color: var(--ember);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.3), 0 0 14px rgba(255, 122, 46, 0.28);
}

.rating-row {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) 0;
  box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.35);
}

.rating-row__stars {
  display: inline-flex;
  gap: 2px;
  color: var(--ember);
  font-size: var(--fs-small);
  letter-spacing: 2px;
}

.rating-row__count {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.recent-order {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: var(--space-7);
  align-items: start;
}

.recent-order__left {
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
}

.recent-order__number {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-heading-lg);
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
  color: var(--chrome-highlight);
}

.recent-order__meta {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.recent-order__stage {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-4);
  background: rgba(232, 93, 24, 0.16);
  border: 1px solid rgba(255, 122, 46, 0.4);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember-glow);
}

.recent-order__stage::before {
  content: "";
  width: 8px;
  height: 8px;
  background: var(--ember);
  box-shadow: 0 0 10px rgba(255, 122, 46, 0.7);
  animation: recent-order-pulse 2.4s ease-in-out infinite;
}

.recent-order__item-summary {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.recent-order__item-summary strong {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--ember);
}

.recent-order__footer {
  display: flex;
  gap: var(--space-4);
  margin-top: var(--space-5);
}

@media (max-width: 900px) {
  .recent-order {
    grid-template-columns: 1fr;
    gap: var(--space-6);
  }
}
@keyframes recent-order-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.reinforce-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-6);
  background: rgba(20, 20, 20, 0.94);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.12), 0 10px 28px -10px rgba(0, 0, 0, 0.95);
}

.reinforce-card::before, .reinforce-card::after {
  content: "";
  position: absolute;
  top: 6px;
  z-index: 2;
  width: 6px;
  height: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.reinforce-card::before {
  left: 6px;
}

.reinforce-card::after {
  right: 6px;
}

.reinforce-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  color: var(--ember);
  background: rgba(255, 122, 46, 0.08);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.28);
}

.reinforce-card__icon svg {
  width: 26px;
  height: 26px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
}

.reinforce-card__label {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.reinforce-card__title {
  font-family: var(--font-display);
  font-size: var(--fs-large);
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.reinforce-card__body {
  flex: 1;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.reinforce-card__cta {
  margin-top: var(--space-1);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  text-decoration: none;
}

.reinforce-card--placeholder {
  opacity: 0.75;
}

.reinforce-card--placeholder .reinforce-card__cta {
  color: var(--chrome-dim);
  cursor: default;
}

.reinforce-card__placeholder-note {
  display: inline-block;
  padding: var(--space-1) var(--space-3);
  margin-bottom: var(--space-1);
  background: rgba(255, 122, 46, 0.08);
  border: 1px solid rgba(255, 122, 46, 0.35);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember-glow);
  align-self: flex-start;
}

.refer-card__sub {
  max-width: 620px;
  margin-bottom: var(--space-5);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.55;
  color: var(--chrome-warm);
}

.refer-card__sub strong {
  color: var(--ember);
  font-weight: 600;
}

.refer-card__link {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--space-2);
  margin-bottom: var(--space-4-5);
}

.refer-card__link-input {
  overflow: hidden;
  padding: var(--space-3) var(--space-4);
  background: var(--bg-input);
  border: 1px solid var(--hairline);
  border-bottom: 1px solid var(--hull-edge);
  border-radius: 0;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.4);
  color: var(--chrome-warm);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  text-overflow: ellipsis;
  white-space: nowrap;
  outline: none;
}

.refer-card__link-input:focus {
  border-color: var(--ember);
  box-shadow: var(--ember-focus);
}

.refer-card__link-btn {
  padding: 0 var(--space-4-5);
  background: transparent;
  border: 1px solid rgba(62, 62, 62, 0.6);
  color: var(--chrome-warm);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  white-space: nowrap;
  transition: background 0.15s, box-shadow 0.15s;
}

.refer-card__link-btn:hover {
  background: var(--hull-panel-lift);
  box-shadow: var(--chrome-top-soft);
}

.refer-card__share-row {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--space-2);
}

.refer-card__share-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-2);
  background: transparent;
  border: 1px solid var(--hairline);
  color: var(--chrome-dim);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  cursor: pointer;
  transition: border-color 0.15s, color 0.15s, box-shadow 0.15s;
}

.refer-card__share-btn svg {
  width: 18px;
  height: 18px;
}

.refer-card__share-btn:hover {
  color: var(--ember);
  border-color: var(--ember-hairline);
  box-shadow: var(--ember-glow-sm);
}

.reinforcement-band {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: var(--space-4) var(--space-6);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-align: center;
  color: var(--chrome-dim);
}

.reinforcement-band__phrase {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
}

.reinforcement-band__phrase:not(:first-child)::before {
  content: "·";
  color: var(--ember);
  font-size: var(--fs-large);
  transform: translateY(-2px);
}

@media (max-width: 700px) {
  .reinforcement-band {
    flex-direction: column;
    gap: var(--space-3);
  }
  .reinforcement-band__phrase:not(:first-child)::before {
    display: none;
  }
}
.related-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--hull-panel);
  box-shadow: var(--panel-lift), var(--chrome-top-soft);
  text-decoration: none;
  transition: box-shadow 250ms ease, transform 250ms ease;
}

.related-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
}

.related-card__media {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: var(--hull-panel-dark);
}

.related-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 60%, rgba(6, 6, 6, 0.65) 100%);
  pointer-events: none;
}

.related-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 400ms ease;
}

.related-card:hover .related-card__image {
  transform: scale(1.03);
}

.related-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-4-5) var(--space-5) var(--space-5);
}

.related-card__chip-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  padding-bottom: var(--space-3);
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.25);
}

.related-card__chip {
  display: inline-flex;
  align-items: center;
  padding: var(--space-1) var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  background: rgba(255, 122, 46, 0.05);
  border: 1px solid rgba(255, 122, 46, 0.4);
}

.related-card__read-time {
  flex-shrink: 0;
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  white-space: nowrap;
}

.related-card__title {
  margin: 2px 0 0;
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.related-card__read-more {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: auto;
  padding-top: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember);
}

.related-card__arrow::after {
  content: "→";
}

.related-post-rail {
  max-width: var(--site-max-width-default);
  margin: 0 auto;
  padding: var(--space-8) 0 var(--space-9);
}

.related-post-rail__header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-6);
  flex-wrap: wrap;
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-4-5);
  box-shadow: inset 0 -1px 0 rgba(184, 176, 166, 0.1);
}

.related-post-rail__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-large);
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.related-post-rail__meta {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

@media (max-width: 700px) {
  .related-post-rail {
    padding: var(--space-7) 0 var(--space-8);
  }
}
.results-band {
  background: var(--carbon);
  padding: var(--space-8) 0;
  position: relative;
}

.results-band--patterned {
  background: transparent;
  position: relative;
  overflow: hidden;
}

.results-band--patterned::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--void);
  background-image: linear-gradient(90deg, rgba(6, 6, 6, 0.74) 0%, rgba(6, 6, 6, 0.74) 100%), linear-gradient(90deg, var(--void) 0%, var(--hull-panel-dark) 48%, rgba(255, 122, 46, 0.65) 49.6%, rgba(255, 179, 71, 0.85) 50%, rgba(255, 122, 46, 0.65) 50.4%, var(--hull-panel-dark) 52%, var(--void) 100%);
  z-index: 0;
}

.results-band--patterned > .container {
  position: relative;
  z-index: 1;
}

@media (max-width: 900px) {
  .results-band {
    padding: var(--space-6-5) 0 var(--space-8);
  }
}
.review-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
  background: rgba(20, 20, 20, 0.94);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
}

.review-card::before, .review-card::after {
  content: "";
  position: absolute;
  top: 6px;
  z-index: 2;
  width: 6px;
  height: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.review-card::before {
  left: 6px;
}

.review-card::after {
  right: 6px;
}

.review-card__stars {
  color: var(--ember);
  font-size: var(--fs-small);
  letter-spacing: 3px;
}

.review-card__badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
}

.review-card__badge::before {
  content: "";
  width: 6px;
  height: 6px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.75);
}

.review-card__title {
  font-family: var(--font-display);
  font-size: var(--fs-base);
  font-weight: 600;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
}

.review-card__body {
  flex: 1;
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.review-card__meta {
  padding-top: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.35);
}

.reviews-aggregate {
  position: relative;
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: var(--space-8);
  margin-bottom: var(--space-7);
  padding: var(--space-7);
  background: rgba(20, 20, 20, 0.94);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
}

.reviews-aggregate::before, .reviews-aggregate::after {
  content: "";
  position: absolute;
  top: 6px;
  z-index: 2;
  width: 6px;
  height: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.reviews-aggregate::before {
  left: 6px;
}

.reviews-aggregate::after {
  right: 6px;
}

.reviews-aggregate__score {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  padding-right: var(--space-6);
  box-shadow: inset -1px 0 0 rgba(62, 62, 62, 0.35);
}

.reviews-aggregate__number {
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-hero);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--ember);
}

.reviews-aggregate__stars {
  color: var(--ember);
  font-size: var(--fs-large);
  letter-spacing: 4px;
}

.reviews-aggregate__meta {
  text-align: center;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.reviews-aggregate__placeholder {
  margin-top: var(--space-3);
  font-family: var(--font-body);
  font-style: italic;
  font-size: var(--fs-micro);
  color: var(--ember);
}

.reviews-aggregate__bars {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.reviews-aggregate__bar {
  display: grid;
  grid-template-columns: 40px 1fr 40px;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  color: var(--chrome-dim);
}

.reviews-aggregate__bar-track {
  position: relative;
  height: 6px;
  background: var(--hull-panel-dark);
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.7);
}

.reviews-aggregate__bar-fill {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background: linear-gradient(90deg, var(--ember-forge), var(--ember-glow));
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.45);
}

@media (max-width: 700px) {
  .reviews-aggregate {
    grid-template-columns: 1fr;
    gap: var(--space-6);
    padding: var(--space-6);
  }
  .reviews-aggregate__score {
    padding-right: 0;
    padding-bottom: var(--space-5);
    box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.35);
  }
  .reviews-aggregate__number {
    font-size: var(--fs-section);
  }
}
.search-input {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4) var(--space-3) var(--space-3);
  background: transparent;
  border-bottom: 1px solid rgba(62, 62, 62, 0.6);
  min-width: min(320px, 100%);
  transition: border-bottom-color 200ms ease, box-shadow 200ms ease;
}

.search-input:focus-within {
  border-bottom-color: var(--ember);
  box-shadow: 0 4px 12px -6px rgba(255, 122, 46, 0.55);
}

.search-input__glyph {
  font-size: var(--fs-base);
  color: var(--chrome-dim);
  line-height: 1;
  flex-shrink: 0;
}

.search-input__input {
  flex: 1;
  background: transparent;
  border: none;
  outline: none;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-highlight);
  padding: var(--space-1) 0;
}

.search-input__input::placeholder {
  color: var(--chrome-dim);
  font-style: italic;
}

.search-input__submit {
  background: transparent;
  border: none;
  cursor: pointer;
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  color: var(--chrome-warm);
  line-height: 1;
  padding: var(--space-1) var(--space-2);
  transition: color 200ms ease;
  flex-shrink: 0;
}

.search-input__submit:hover {
  color: var(--ember);
}

.section-break {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 48px 0 40px;
  position: relative;
}

.section-break::before, .section-break::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 122, 46, 0.5) 100%);
}

.section-break::after {
  background: linear-gradient(90deg, rgba(255, 122, 46, 0.5) 0%, transparent 100%);
}

.section-break__mark {
  width: 8px;
  height: 8px;
  background: var(--ember);
  box-shadow: 0 0 14px rgba(255, 122, 46, 0.8);
  margin: 0 16px;
  transform: rotate(45deg);
  flex-shrink: 0;
}

.section-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: var(--space-8);
}

.section-header.section-header {
  margin-bottom: var(--section-header-mb, var(--space-8));
}

.section-header__title {
  max-width: var(--section-header-title-max, 640px);
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
}

.section-header__title .eyebrow {
  margin-bottom: calc(var(--eyebrow-to-title) - var(--space-4-5));
}

.section-header__meta {
  align-self: flex-end;
  text-align: right;
  padding-bottom: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.section-header__meta-em {
  color: var(--ember);
}

.section-header__lede {
  max-width: 460px;
  margin: 0;
  padding-bottom: var(--space-2);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.55;
  color: var(--chrome-dim);
}

.section-header__link {
  flex-shrink: 0;
  padding-bottom: var(--space-2);
}

@media (max-width: 700px) {
  .section-header {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-5);
  }
  .section-header__meta {
    text-align: left;
  }
  .section-header__link {
    padding-bottom: 0;
  }
}
.section__title, .wp-block-heading.is-style-section-title {
  font-family: var(--font-display);
  font-size: var(--fs-heading-lg);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  margin: 0;
}

@media (max-width: 640px) {
  .section__title, .wp-block-heading.is-style-section-title {
    overflow-wrap: break-word;
    hyphens: auto;
  }
}
@media (max-width: 400px) {
  .section__title, .wp-block-heading.is-style-section-title {
    font-size: var(--fs-heading);
  }
}
.section__title-accent {
  color: var(--ember);
}

.section__title--sentence {
  text-transform: none;
}

.section__title--sm {
  font-size: var(--fs-heading);
}

.section__title.section__title--lg, .section__title--lg.wp-block-heading.is-style-section-title {
  font-size: var(--fs-title);
}

@media (max-width: 900px) {
  .section__title.section__title--lg, .section__title--lg.wp-block-heading.is-style-section-title {
    font-size: var(--fs-heading-lg);
  }
}
.section-title--sub {
  margin: 0 0 var(--section-title-sub-mb, 0);
  font-family: var(--font-body);
  font-size: var(--section-title-sub-fs, 17px);
  font-weight: 400;
  line-height: var(--section-title-sub-lh, 1.6);
  letter-spacing: 0.8px;
  text-transform: none;
  color: var(--chrome-dim);
  max-width: 620px;
}

.variant-selector__option,
.composite-buy-box .component_option_radio_button,
.entry-summary .cart .component_option_radio_button {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  background: var(--hull-panel);
  box-shadow: inset 0 0 0 1px rgba(62, 62, 62, 0.55), inset 0 1px 0 rgba(250, 250, 250, 0.08);
  cursor: pointer;
  text-decoration: none;
  transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.variant-selector__option,
.composite-buy-box .radio_button_description .radio_button_title,
.entry-summary .cart .radio_button_description .radio_button_title {
  display: block;
  padding: var(--space-3) var(--space-4);
}

.variant-selector__option:is(a):hover,
.variant-selector__option:has(.variant-selector__input):hover,
.composite-buy-box .component_option_radio_button:hover,
.entry-summary .cart .component_option_radio_button:hover {
  background: var(--hull-panel-lift);
  color: var(--chrome-highlight);
}

.variant-selector__option--active,
.variant-selector__option:has(.variant-selector__input:checked),
.composite-buy-box .component_option_radio_button.selected,
.entry-summary .cart .component_option_radio_button.selected {
  background: var(--hull-panel-lift);
  color: var(--chrome-highlight);
  box-shadow: var(--ember-hot-rim);
}

.variant-selector__option:focus-visible,
.variant-selector__option:has(.variant-selector__input:focus-visible),
.composite-buy-box .component_option_radio_button:has(.radio_button:focus-visible),
.entry-summary .cart .component_option_radio_button:has(.radio_button:focus-visible) {
  outline: 2px solid var(--chrome-highlight);
  outline-offset: 2px;
}

:is(.section, .wp-block-group) .wp-block-tff-seo-content {
  padding-block: 0;
  background-color: transparent;
  background-image: none;
}

:is(.section, .wp-block-group) .wp-block-tff-seo-content > .section__inner {
  padding-inline: 0;
}

.seo-content__inner {
  max-width: 900px;
  margin: 0 auto;
}

.seo-content {
  /*
   * TWO ROUTES INTO THE SAME TREATMENT.
   *
   * The static template (woocommerce/archive-seo-content.php) writes BEM
   * elements — `__title`, `__h3`, `__p`. The tff/seo-content BLOCK cannot: its
   * children are core blocks and carry `wp-block-heading` / `wp-block-paragraph`,
   * and a parent block cannot stamp a BEM class onto a child. So each rule below
   * names both the element class AND the bare tag, and they resolve to one set of
   * declarations rather than two that can drift.
   *
   * The bare tags are safe ONLY because they are scoped inside `.seo-content`.
   * Unscoping a bare `p` rule on this brand is a confirmed sitewide regression —
   * footer and FAQ copy take their type by inheritance, so a directly-matched
   * global rule overrides them everywhere.
   *
   * HEADINGS CARRY `.wp-block-heading` AND MUST. A bare `.seo-content h2` is
   * (0,1,1) and so is `h2.wp-block-heading` in blocks/_wp-block-heading.scss —
   * they TIE, and the blocks/ group compiles after components/ by deliberate
   * design, so the block partial wins and the heading renders at the global size.
   * Measured: 40px against the 60px this component asks for, with no rule
   * anywhere contradicting itself. `.editorial-content` already qualifies its
   * headings the same way for the same reason.
   *
   * Paragraphs need no such qualification — nothing in blocks/ ties with them.
   */
}

.seo-content__eyebrow {
  margin-bottom: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.seo-content__title,
.seo-content h2.wp-block-heading {
  margin-bottom: var(--space-6-5);
  font-family: var(--font-display);
  font-size: clamp(var(--fs-heading-lg), 3vw, var(--fs-section));
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.seo-content__title-accent {
  color: var(--ember);
}

.seo-content__section {
  margin-bottom: var(--space-6);
}

.seo-content {
  /*
   * SECTION RHYTHM FOR THE BLOCK ROUTE.
   *
   * The static template groups each heading and its copy in a `__section` and
   * spaces the groups 40px apart. The block's children are FLAT siblings — core
   * blocks in an InnerBlocks list, with no wrapper to hang that margin on — so
   * the same content ran together, every heading sitting straight under the
   * paragraph before it.
   *
   * Keyed on the adjacent sibling rather than on the heading itself, so a
   * heading opening the band would take no gap. In practice every heading gets
   * one, because the band's own title is a sibling too — measured, not assumed.
   * That is the right result: 40px after the title reads as the same rhythm as
   * 40px between sections, and the title's own bottom margin collapses into it
   * rather than adding to it.
   */
}

.seo-content * + h3.wp-block-heading {
  margin-top: var(--space-6-5);
}

.seo-content__h3,
.seo-content h3.wp-block-heading {
  position: relative;
  padding-left: var(--space-4-5);
  margin-bottom: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--chrome-highlight);
}

.seo-content__h3::before,
.seo-content h3.wp-block-heading::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 3px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.55);
}

.seo-content__p,
.seo-content p {
  max-width: 78ch;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.7;
  color: var(--chrome-warm);
}

.seo-content__p + .seo-content__p,
.seo-content p + .seo-content__p {
  margin-top: var(--space-3);
}

.seo-content__links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4-5);
  margin-top: var(--space-6-5);
  padding-top: var(--space-5);
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.35);
}

.seo-content__links-label {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.seo-content__link {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember);
  text-decoration: none;
}

.seo-content__link:hover {
  color: var(--ember-glow);
}

.seo-content__seam {
  height: 2px;
  margin-top: var(--space-7);
  background: linear-gradient(90deg, transparent 0%, rgba(255, 122, 46, 0.55) 50%, transparent 100%);
  box-shadow: 0 0 16px rgba(255, 122, 46, 0.35);
}

.shipment-block__head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-4);
  margin-bottom: var(--space-4);
}

.shipment-block__tag {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.shipment-block__eta, .shipment-block__carrier {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.shipment-block__eta strong {
  font-weight: 600;
  color: var(--ember);
}

.shipment-block__free {
  font-weight: 600;
  color: var(--ember);
}

.shipment-block__thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-5);
}

.shipment-block__thumb {
  overflow: hidden;
  width: 120px;
  height: 120px;
  background: var(--void);
  border: 1px solid var(--hairline);
  opacity: 0.78;
  transition: opacity 0.15s;
}

.shipment-block__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.shipment-block__thumb:hover {
  opacity: 1;
}

.shipment-block__tracking {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: var(--space-3) 0 0;
}

.shipment-block__tracking li {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-2);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.shipment-block__tracking a {
  overflow-wrap: anywhere;
  color: var(--ember);
}

.shipment-block__explainer {
  margin-top: var(--space-3);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.55;
  color: var(--chrome-warm);
}

.shipment-block__explainer strong {
  color: var(--chrome-highlight);
  font-weight: 600;
}

.shipment-group {
  position: relative;
  padding: var(--space-6);
  margin-bottom: var(--space-6);
  background: linear-gradient(180deg, rgba(26, 26, 26, 0.4) 0%, rgba(15, 15, 15, 0.55) 100%);
  border: 1px solid var(--hull-edge);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.06);
}

.shipment-group__legend {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-4-5);
  padding: 0 var(--space-4);
  margin-inline-start: calc(var(--space-1) * -1);
  margin-top: calc(var(--space-7) * -1);
  margin-bottom: var(--space-2);
  background: var(--carbon);
  width: fit-content;
}

.shipment-group__legend-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-prose);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.shipment-group__legend-title .idx {
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.shipment-group__legend-eta {
  padding-left: var(--space-4);
  margin-left: var(--space-3);
  border-left: 1px solid rgba(184, 176, 166, 0.25);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  white-space: nowrap;
}

.shipment-group__legend-eta strong {
  margin: 0 var(--space-1);
  color: var(--chrome-warm);
  font-weight: 500;
}

.shipment-group__legend-eta .free {
  margin-left: var(--space-2);
  color: var(--ember);
  font-weight: 600;
}

.shipment-group__lede {
  position: relative;
  margin-bottom: var(--space-4);
  padding-left: var(--space-4-5);
  font-family: var(--font-body);
  font-style: italic;
  font-size: var(--fs-small);
  line-height: 1.55;
  color: var(--chrome-dim);
}

.shipment-group__lede::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 8px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 4px rgba(255, 122, 46, 0.6);
}

@media (max-width: 640px) {
  .shipment-group {
    padding: var(--space-5) var(--space-4-5);
  }
  .shipment-group__legend {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-2);
  }
  .shipment-group__legend-eta {
    padding-left: 0;
    margin-left: 0;
    border-left: 0;
  }
}
.shipment-timeline {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}

.shop-banner {
  position: relative;
  grid-column: 1/-1;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--space-5);
  align-items: center;
  padding: var(--space-6) var(--space-6-5);
  background: linear-gradient(90deg, var(--ember-forge) 0%, var(--ember) 55%, var(--ember-glow) 100%);
  color: var(--on-primary-fixed);
  box-shadow: inset 0 1px 0 rgba(255, 235, 180, 0.45), inset 0 -1px 0 rgba(90, 26, 0, 0.55), 0 12px 32px -8px rgba(255, 122, 46, 0.35);
}

.shop-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: radial-gradient(ellipse at 20% 30%, rgba(255, 235, 180, 0.25) 0%, transparent 55%), radial-gradient(ellipse at 85% 75%, rgba(209, 72, 16, 0.28) 0%, transparent 60%);
  pointer-events: none;
}

.shop-banner__body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.shop-banner__eyebrow {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  opacity: 0.72;
}

.shop-banner__title {
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.shop-banner__note {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  opacity: 0.86;
}

.shop-banner__cta-wrap {
  position: relative;
  z-index: 1;
}

.shop-banner__cta {
  padding: var(--space-4) var(--space-5);
  font-size: var(--fs-eyebrow);
  font-weight: 700;
  letter-spacing: 0.18em;
  color: var(--chrome-highlight);
  background: rgba(6, 6, 6, 0.75);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.14);
}

.shop-banner__cta:hover {
  background: rgba(6, 6, 6, 0.9);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.24), 0 0 16px rgba(0, 0, 0, 0.4);
}

@media (max-width: 700px) {
  .shop-banner {
    grid-template-columns: 1fr;
    padding: var(--space-5) var(--space-4-5);
  }
}
.shop-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-5);
  padding-bottom: var(--space-4-5);
  box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.45);
}

.shop-toolbar .woocommerce-notices-wrapper {
  order: -1;
  width: 100%;
}

.shop-toolbar__count {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.shop-toolbar__count strong {
  color: var(--chrome-highlight);
  font-weight: 700;
}

.shop-toolbar__sort {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}

.shop-toolbar__sort-label {
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.shop-toolbar__filters {
  display: none;
  align-items: center;
  gap: var(--space-2);
}

.shop-toolbar__filters-count {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 18px;
  padding: 0 var(--space-1);
  background: rgba(255, 122, 46, 0.18);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.55);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-nano);
  line-height: 18px;
  color: var(--ember-glow);
}

.shop-toolbar__select {
  padding: var(--space-3) var(--space-4);
  background: rgba(6, 6, 6, 0.6);
  border: 1px solid rgba(62, 62, 62, 0.65);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  cursor: pointer;
  outline: none;
  transition: border-color 200ms ease, box-shadow 200ms ease;
}

.shop-toolbar__select:focus {
  border-color: var(--ember);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.4);
}

.shop-toolbar__sort-submit {
  padding: var(--space-3) var(--space-4);
  background: rgba(255, 122, 46, 0.1);
  border: 1px solid var(--ember);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  cursor: pointer;
}

@media (max-width: 1024px) {
  .shop-toolbar {
    gap: var(--space-3);
  }
  .shop-toolbar__filters {
    display: inline-flex;
    order: 1;
    flex-shrink: 0;
    padding: var(--space-4) var(--space-4-5);
  }
  .shop-toolbar__sort {
    order: 2;
    flex: 1;
    min-width: 0;
    align-self: stretch;
  }
  .shop-toolbar__select {
    flex: 1;
    min-width: 0;
    height: 100%;
  }
  .shop-toolbar__count {
    order: 3;
    width: 100%;
  }
  .shop-toolbar__sort-label {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
}
.modal.search {
  z-index: 50;
  display: none;
}

.modal.search.is-active {
  display: block;
}

.modal__background {
  background: rgba(6, 6, 6, 0.86);
  backdrop-filter: blur(6px);
  z-index: 1;
}

.modal__wrapper {
  position: relative;
  z-index: 2;
  width: min(760px, 100% - 80px);
  margin: 0 auto;
  padding: var(--space-6) var(--space-7) var(--space-6-5);
  background: var(--hull-panel);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.1), 0 -1px 0 var(--ember), 0 -8px 32px -4px rgba(255, 122, 46, 0.35), 0 40px 96px -20px rgba(0, 0, 0, 0.9);
}

.modal__wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 122, 46, 0.4) 12%, rgba(255, 179, 71, 0.9) 50%, rgba(255, 122, 46, 0.4) 88%, transparent 100%);
  box-shadow: 0 6px 24px -4px rgba(255, 122, 46, 0.45);
  z-index: 3;
}

@media (max-width: 640px) {
  .modal__wrapper {
    width: calc(100% - 24px);
    margin-top: 0;
    padding: var(--space-6-5) var(--space-5) var(--space-6);
  }
}
.modal__close {
  position: absolute;
  top: 14px;
  right: 16px;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--chrome-warm);
  transition: color 200ms ease, transform 200ms ease;
  cursor: pointer;
  z-index: 4;
}

.modal__close .icon {
  fill: var(--chrome-warm);
  transition: fill 200ms ease;
}

.modal__close:hover {
  color: var(--ember);
  transform: rotate(90deg);
}

.modal__close:hover .icon {
  fill: var(--ember);
}

.search-form {
  display: block;
}

.search-form.breathe--top-double {
  margin-top: var(--space-2);
}

.search-form__wrapper {
  position: relative;
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid var(--hull-edge);
  background-color: transparent;
  transition: border-color 200ms ease, box-shadow 200ms ease;
}

.search-form__wrapper:focus-within, .search-form__wrapper--focused {
  border-bottom-color: var(--ember);
  box-shadow: 0 2px 0 -1px var(--ember), 0 12px 28px -8px rgba(255, 122, 46, 0.45);
}

.search-form__input {
  flex: 1;
  padding: var(--space-4-5) var(--space-8) var(--space-4-5) var(--space-4-5);
  background: transparent;
  border: 0;
  outline: none;
  color: var(--chrome-highlight);
  font-family: var(--font-body);
  font-size: var(--fs-subheading);
  font-weight: 400;
  letter-spacing: 0.005em;
  border-radius: 0;
}

.search-form__input::placeholder {
  color: rgba(184, 176, 166, 0.45);
  font-weight: 400;
}

.search-form__input:focus {
  outline: none;
}

.search-form__submit {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--chrome-warm);
  cursor: pointer;
  transition: color 200ms ease;
}

.search-form__submit .icon {
  fill: var(--chrome-warm);
  transition: fill 200ms ease;
}

.search-form__submit:hover {
  color: var(--ember);
}

.search-form__submit:hover .icon {
  fill: var(--ember);
}

.search-suggest {
  margin-top: var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.search-suggest__eyebrow {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
}

.search-suggest__line {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
  line-height: 1.5;
}

.search-suggest__line-label {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  margin-right: var(--space-3);
}

.search-suggest__line-term {
  color: var(--chrome-warm);
}

.search-suggest__line-sep {
  color: var(--chrome-dim);
  opacity: 0.5;
  margin: 0 var(--space-2);
}

.searchwp-live-search-results {
  background: var(--hull-panel-dark);
  box-shadow: 0 -1px 0 var(--ember), 0 -6px 20px -4px rgba(255, 122, 46, 0.3), 0 22px 46px -12px rgba(0, 0, 0, 0.9);
  padding: 0;
  z-index: 60;
  color: var(--chrome-highlight);
}

.searchwp-live-search-results-container {
  padding: var(--space-2) 0;
}

.searchwp-live-search-result {
  position: relative;
  display: grid;
  grid-template-columns: 56px 1fr auto;
  align-items: center;
  gap: var(--space-4-5);
  padding: var(--space-4) var(--space-5);
  cursor: pointer;
  transition: background 160ms ease;
}

.searchwp-live-search-result + .searchwp-live-search-result::before {
  content: "";
  position: absolute;
  top: 0;
  left: 24px;
  right: 24px;
  height: 1px;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0.18) 0%, rgba(255, 122, 46, 0.32) 50%, rgba(255, 122, 46, 0.18) 100%);
  opacity: 0.55;
}

.searchwp-live-search-result:hover, .searchwp-live-search-result[aria-selected=true] {
  background: rgba(255, 122, 46, 0.1);
}

.searchwp-live-search-result:hover .searchwp-live-search-result--title a, .searchwp-live-search-result[aria-selected=true] .searchwp-live-search-result--title a {
  color: var(--ember-glow);
}

.searchwp-live-search-result:hover .searchwp-live-search-result--price, .searchwp-live-search-result[aria-selected=true] .searchwp-live-search-result--price {
  color: var(--ember-glow);
}

.searchwp-live-search-result--img {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  background: rgba(184, 176, 166, 0.04);
  box-shadow: inset 0 0 0 1px rgba(184, 176, 166, 0.12);
  overflow: hidden;
}

.searchwp-live-search-result--img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.searchwp-live-search-result--img svg {
  width: 60%;
  height: 60%;
  opacity: 0.4;
}

.searchwp-live-search-result--info {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.searchwp-live-search-result--title {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  font-weight: 500;
  line-height: 1.35;
}

.searchwp-live-search-result--title a {
  color: var(--chrome-highlight);
  text-decoration: none;
  transition: color 200ms ease;
}

.searchwp-live-search-result--title a mark,
.searchwp-live-search-result--title a strong {
  background: transparent;
  color: var(--ember);
  font-weight: 600;
  text-shadow: 0 0 12px rgba(255, 122, 46, 0.35);
}

.searchwp-live-search-result--desc {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  line-height: 1.45;
  color: var(--chrome-dim);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.searchwp-live-search-result--ecommerce {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-2);
  font-variant-numeric: tabular-nums;
}

.searchwp-live-search-result--price {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.05em;
  color: var(--ember);
  transition: color 200ms ease;
}

.searchwp-live-search-result--add-to-cart {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.searchwp-live-search-no-results {
  margin: 0;
  padding: var(--space-4-5) var(--space-5);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-dim);
  text-align: center;
}

.searchwp-live-search-no-results em {
  font-style: normal;
  color: var(--chrome-warm);
}

@keyframes searchwp-spinner-line-fade-quick {
  0%, 39%, 100% {
    opacity: 0.25;
  }
  40% {
    opacity: 1;
  }
}
.searchwp-live-search-no-min-chars {
  position: relative;
  min-height: 160px;
}

.searchwp-live-search-no-min-chars .spinner div div {
  background: var(--chrome-warm) !important;
}

.searchwp-live-search-no-min-chars .spinner {
  top: 42px !important;
}

.searchwp-live-search-no-min-chars::after {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  padding-top: 6.5em !important;
}

.search-empty {
  margin-top: var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.search-empty__message {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.5;
  color: var(--chrome-dim);
}

.search-empty__message-input {
  color: var(--chrome-warm);
  font-weight: 500;
}

.search-empty__chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.spec-callout {
  padding: var(--space-4-5) var(--space-5);
  background: rgba(20, 20, 20, 0.94);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.12), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.9);
}

.spec-callout__header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding-bottom: var(--space-4);
  margin-bottom: var(--space-2);
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.35);
}

.spec-callout__title {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.spec-callout__cert {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
}

.spec-callout__cert-dot {
  width: 6px;
  height: 6px;
  background: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.7);
}

.spec-callout__row {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: var(--space-4);
  padding: var(--space-3) 0;
  box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.35);
}

.spec-callout__row:last-child {
  box-shadow: none;
}

.spec-callout__label {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.spec-callout__value {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.spec-callout__value strong {
  color: var(--chrome-highlight);
  font-weight: 600;
}

.spec-column + .spec-column {
  margin-top: var(--space-7);
}

.spec-column__title {
  margin-bottom: var(--space-5);
  padding-bottom: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--ember);
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.45);
}

.spec-row {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: baseline;
  gap: var(--space-3);
  padding: var(--space-4) 0;
  box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.3);
}

.spec-row__label {
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.spec-row__leader {
  min-width: 40px;
  border-bottom: 1px dotted rgba(62, 62, 62, 0.65);
  transform: translateY(-4px);
}

.spec-row__value {
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-base);
  font-weight: 500;
  letter-spacing: 0.03em;
  text-align: right;
  color: var(--chrome-warm);
  min-width: 0;
  overflow-wrap: anywhere;
}

.spec-row__value--accent {
  color: var(--ember);
  font-size: var(--fs-prose);
  font-weight: 600;
}

.spec-row__value-unit {
  font-size: var(--fs-eyebrow);
  color: var(--chrome-dim);
}

@media (max-width: 480px) {
  .spec-row {
    grid-template-columns: auto 1fr;
  }
  .spec-row__leader {
    display: none;
  }
}
.spec-vault {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-8);
  padding: var(--space-8);
  background: var(--hull-panel-dark);
  box-shadow: var(--panel-lift);
}

.spec-vault::before, .spec-vault::after {
  content: "";
  position: absolute;
  top: 8px;
  z-index: 2;
  width: 8px;
  height: 8px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.spec-vault::before {
  left: 8px;
}

.spec-vault::after {
  right: 8px;
}

@media (max-width: 1024px) {
  .spec-vault {
    grid-template-columns: 1fr;
    gap: var(--space-6);
    padding: var(--space-6);
  }
}
.ssl-chip {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  padding: var(--space-3) var(--space-4);
  background: rgba(6, 6, 6, 0.35);
  border: 1px solid var(--ember-hairline-soft);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.1);
}

.ssl-chip__icon {
  font-size: var(--fs-base);
  line-height: 1;
  color: var(--ember);
}

.ssl-chip__text {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.ssl-chip__text .sep {
  margin: 0 var(--space-1);
  opacity: 0.4;
  color: var(--chrome-dim);
}

.stack {
  display: flex;
  flex-direction: column;
  gap: var(--stack-gap, var(--space-6-5));
}

.stance {
  padding: var(--space-8) var(--space-7);
  transition: transform 0.35s ease, background 0.35s ease, box-shadow 0.35s ease;
}

.stance:hover {
  transform: translateY(-3px);
  background: rgba(26, 26, 26, 0.35);
  box-shadow: 0 -1px 24px rgba(255, 122, 46, 0.18);
}

.stance__number {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-6);
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-small);
  letter-spacing: 0.22em;
  color: var(--ember);
}

.stance__number::after {
  content: "";
  display: inline-block;
  width: 32px;
  height: 1px;
  background: var(--ember);
}

.stance__statement {
  max-width: 420px;
}

@media (max-width: 900px) {
  .stance {
    padding: var(--space-6-5) var(--space-5) var(--space-7);
  }
}
@media (max-width: 400px) {
  .stance {
    padding-left: var(--space-4);
    padding-right: var(--space-4);
  }
  .stance .stance__statement {
    font-size: var(--fs-heading-lg);
  }
}
.stat {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.stat__num {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-title);
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.stat__label {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

@media (max-width: 900px) {
  .stat__num {
    font-size: var(--fs-heading-lg);
  }
}
.stat-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-4);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  font-weight: 500;
  color: var(--chrome-warm);
  border: 1px solid rgba(255, 122, 46, 0.35);
}

.stat-chip__accent {
  color: var(--ember);
  font-weight: 600;
}

.stat-chip--large {
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4-5);
  font-size: var(--fs-base);
}

.status-pill {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.status-pill::before {
  content: "";
  width: 6px;
  height: 6px;
  background: currentColor;
}

.status-pill--workshop {
  background: rgba(232, 93, 24, 0.14);
  border: 1px solid rgba(255, 122, 46, 0.5);
  box-shadow: var(--ember-glow-sm);
  color: var(--ember-glow);
}

.status-pill--dispatched {
  background: transparent;
  border: 1px solid rgba(255, 122, 46, 0.35);
  color: var(--ember);
}

.status-pill--delivered {
  background: rgba(250, 250, 250, 0.03);
  border: 1px solid rgba(250, 250, 250, 0.35);
  color: var(--chrome-highlight);
}

.status-pill--delivered::before {
  background: var(--chrome-highlight);
}

.status-pill--closed {
  background: transparent;
  border: 1px dashed var(--hairline-strong);
  color: var(--chrome-dim);
}

.status-pill--closed::before {
  background: var(--chrome-dim);
}

.stepped-process__list {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 0;
}

.stepped-process__step {
  display: contents;
}

.stepped-process__marker {
  position: relative;
  align-self: stretch;
  display: flex;
  justify-content: center;
  padding-top: var(--space-2);
}

.stepped-process__step:not(:last-child) .stepped-process__marker::after {
  content: "";
  position: absolute;
  top: 60px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  background: rgba(255, 122, 46, 0.35);
}

.stepped-process__marker-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: var(--charcoal);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.55), 0 0 20px rgba(255, 122, 46, 0.28);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-small);
  letter-spacing: 0.22em;
  color: var(--ember);
}

.stepped-process__body {
  padding: var(--space-1) 0 var(--space-8) var(--space-6-5);
}

.stepped-process__step-body {
  margin: 0;
  max-width: 560px;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.62;
  color: var(--chrome-warm);
}

@media (max-width: 900px) {
  .stepped-process__list {
    grid-template-columns: 68px 1fr;
  }
  .stepped-process__body {
    padding: var(--space-1) 0 var(--space-7) var(--space-5);
  }
}
.stepper {
  display: inline-flex;
  align-items: stretch;
  background: var(--bg-input);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.06);
}

.stepper__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 40px;
  background: transparent;
  border: none;
  border-right: 1px solid var(--hull-panel-dark);
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-base);
  color: var(--chrome-warm);
  cursor: pointer;
}

.stepper__btn:last-child {
  border-right: none;
  border-left: 1px solid var(--hull-panel-dark);
}

.stepper__btn:hover {
  color: var(--ember);
  background: rgba(255, 122, 46, 0.06);
}

.stepper__value {
  width: 44px;
  background: transparent;
  border: none;
  text-align: center;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-small);
  font-variant-numeric: tabular-nums;
  color: var(--chrome-highlight);
  outline: none;
}

.sticky-atc {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 40;
  padding: var(--space-4) 0;
  background: var(--hull-panel-lift);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.85), 0 -12px 32px -8px rgba(0, 0, 0, 0.85);
  transform: translateY(100%);
  visibility: hidden;
  transition: transform 300ms ease, visibility 0s linear 300ms;
}

.sticky-atc::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(255, 122, 46, 0.25) 0%, rgba(255, 122, 46, 0.85) 50%, rgba(255, 122, 46, 0.25) 100%);
  box-shadow: 0 -12px 30px rgba(255, 122, 46, 0.35);
}

.sticky-atc--shown {
  transform: translateY(0);
  visibility: visible;
  transition: transform 300ms ease, visibility 0s;
}

.sticky-atc__inner {
  display: grid;
  grid-template-columns: 56px 1fr auto auto;
  align-items: center;
  gap: var(--space-4);
}

.sticky-atc__thumb {
  flex-shrink: 0;
  width: 56px;
  height: 56px;
  overflow: hidden;
  background-color: var(--hull-panel);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), 0 4px 12px rgba(0, 0, 0, 0.6);
}

.sticky-atc__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.sticky-atc__title {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.sticky-atc__price {
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-subheading);
  font-weight: 700;
  color: var(--ember);
}

@media (max-width: 700px) {
  .sticky-atc__inner {
    grid-template-columns: 40px minmax(0, 1fr) auto;
  }
  .sticky-atc__title {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .sticky-atc__price {
    display: none;
  }
}
.stock-indicator {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.stock-indicator__dot {
  width: 8px;
  height: 8px;
  background: var(--ember);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.75);
}

.suggestion-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
  padding: var(--space-6);
  background: var(--charcoal-warm);
  border: 1px solid rgba(255, 122, 46, 0.35);
  box-shadow: var(--panel-lift);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  min-height: 340px;
}

.suggestion-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(250, 250, 250, 0.28);
}

.suggestion-card__badge {
  align-self: flex-start;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ember);
  padding: var(--space-2) var(--space-3);
  border: 1px solid rgba(255, 122, 46, 0.55);
  background: rgba(255, 122, 46, 0.06);
}

.suggestion-card__type-chip {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  margin: calc(var(--space-1) * -1) 0 0;
}

.suggestion-card__title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-heading);
  line-height: 1.15;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
  margin: 0;
}

.suggestion-card__meta {
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  margin: 0;
}

.suggestion-card__body {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-warm);
  margin: 0;
  flex: 1;
}

.suggestion-card__stats {
  display: flex;
  gap: var(--space-4-5);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  padding-top: var(--space-3);
  border-top: 1px solid rgba(62, 62, 62, 0.5);
}

.suggestion-card__stat-value {
  color: var(--ember);
  font-weight: 600;
  margin-right: var(--space-2);
}

.suggestion-card__cta {
  align-self: flex-start;
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ember);
  padding: var(--space-3) var(--space-4-5);
  background: transparent;
  border: 1px solid rgba(255, 122, 46, 0.55);
  transition: background 180ms ease, box-shadow 180ms ease;
}

.suggestion-card__cta:hover {
  background: rgba(255, 122, 46, 0.08);
  box-shadow: var(--ember-glow-sm);
}

.subscreen-break {
  position: relative;
  padding: var(--space-7) 0 var(--space-6-5);
  background: var(--carbon);
  text-align: center;
}

.subscreen-break::before, .subscreen-break::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 14px rgba(255, 122, 46, 0.5);
  opacity: 0.55;
}

.subscreen-break::before {
  top: 24px;
}

.subscreen-break::after {
  bottom: 16px;
}

.subscreen-break__label {
  display: inline-block;
  position: relative;
  z-index: 1;
  padding: var(--space-3) var(--space-5);
  background: var(--carbon);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--ember);
}

.subscreen-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-4-5);
  margin-bottom: var(--space-4-5);
  padding-top: var(--space-1);
}

.swap {
  text-align: center;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-dim);
}

.swap__link {
  padding-bottom: 1px;
  border-bottom: 1px solid rgba(255, 122, 46, 0.4);
  font-weight: 500;
  color: var(--ember);
  transition: color 0.2s ease, border-color 0.2s ease;
}

.swap__link:hover {
  border-color: var(--ember-glow);
  color: var(--ember-glow);
}

.testimonial-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  min-height: 380px;
  padding: var(--space-6-5);
  background: var(--hull-panel);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
}

.testimonial-card__mark {
  position: absolute;
  top: 30px;
  right: 34px;
  font-family: var(--font-display);
  font-size: var(--fs-hero);
  font-weight: 700;
  line-height: 1;
  color: var(--ember);
  opacity: 0.15;
}

.testimonial-card__stars {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  letter-spacing: 0.16em;
  color: var(--ember);
  text-shadow: 0 0 12px rgba(255, 122, 46, 0.4);
}

.testimonial-card__body {
  flex: 1;
  font-size: var(--fs-base);
  font-weight: 500;
  line-height: 1.6;
  color: var(--chrome-warm);
}

.testimonial-card__foot {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  padding-top: var(--space-5);
  border-top: 1px solid rgba(62, 62, 62, 0.35);
}

.testimonial-card__avatar {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: var(--hull-panel-dark);
  box-shadow: var(--chrome-top-soft);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--ember);
}

.testimonial-card__meta {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.testimonial-card__name {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.testimonial-card__product {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 500;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.testimonial-card__product-em {
  color: var(--ember);
}

.text-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding-bottom: 2px;
  border-bottom: 1px solid rgba(255, 122, 46, 0.35);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ember);
}

.text-link--muted {
  border-bottom-color: rgba(255, 255, 255, 0.15);
  color: var(--chrome-dim);
}

.text-link:hover {
  border-bottom-color: var(--ember-glow);
  color: var(--ember-glow);
}

.sep {
  display: inline-block;
  margin: 0 0.4em;
  color: var(--chrome-dim);
}

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

.column-stack {
  display: flex;
  flex-direction: column;
  gap: var(--column-stack-gap, var(--space-5));
}

.prose-warm {
  font-size: var(--fs-base);
  line-height: 1.65;
  color: var(--chrome-warm);
}

.tier-band {
  position: relative;
  padding: var(--space-9) 0;
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.1);
}

.tier-band__head {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: var(--space-8);
  align-items: start;
  margin-bottom: var(--space-8);
}

.tier-band__lead {
  display: flex;
  flex-direction: column;
  gap: var(--space-4-5);
  padding-top: var(--space-1);
}

.tier-band__idx {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--ember);
}

.tier-band__name {
  font-family: var(--font-title);
  font-size: clamp(34px, 2.3vw, var(--fs-title-lg));
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.tier-band__lede {
  max-width: 46ch;
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.6;
  color: var(--chrome-warm);
}

.tier-band__floor {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-3) var(--space-4);
  margin-top: var(--space-2);
  padding-top: var(--space-4-5);
  box-shadow: inset 0 1px 0 rgba(54, 54, 54, 0.5);
}

.tier-band__floor-label {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.tier-band__floor-value {
  font-family: var(--font-title);
  font-size: var(--fs-heading);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.tier-band__floor-note {
  flex-basis: 100%;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-dim);
}

.tier-band__ladder {
  margin-top: var(--space-2);
}

.tier-band__ladder .grid--1 {
  max-width: 650px;
}

.tier-band__shelf {
  max-width: 880px;
  margin: var(--space-8) auto 0;
}

@media screen and (max-width: 767px) {
  .tier-band {
    padding: var(--space-8) 0;
  }
  .tier-band__head {
    grid-template-columns: 1fr;
    gap: var(--space-6);
  }
  .tier-band__lede {
    max-width: none;
    font-size: var(--fs-base);
  }
  .tier-band__floor-value {
    font-size: var(--fs-title);
  }
}
.tier-card {
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
  padding: var(--space-5);
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  color: inherit;
  text-decoration: none;
  transition: box-shadow 250ms ease, transform 250ms ease;
}

.tier-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
}

.tier-card::before, .tier-card::after {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  top: 6px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.tier-card::before {
  left: 6px;
}

.tier-card::after {
  right: 6px;
}

.tier-card--current {
  background: rgba(36, 36, 36, 0.94);
  box-shadow: var(--ember-hot-rim), var(--panel-lift);
}

.tier-card--current:hover {
  transform: translateY(-4px);
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover), var(--ember-glow-md);
}

.tier-card__ribbon {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  padding: var(--space-2) var(--space-4);
  background: linear-gradient(180deg, var(--ember-glow), var(--ember), var(--ember-deep));
  color: var(--on-primary-fixed);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  box-shadow: var(--ember-glow-sm);
  white-space: nowrap;
}

.tier-card__stage {
  aspect-ratio: 4/3;
  background: var(--hull-panel-dark);
  background-image: var(--bg-image, none);
  background-size: cover;
  background-position: center;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.7);
}

.tier-card__idx {
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.tier-card__name {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.tier-card__price {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  letter-spacing: 0.06em;
  color: var(--chrome-dim);
}

.tier-card__price-em {
  font-weight: 600;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.tier-card__count {
  margin-top: auto;
  font-family: var(--font-display);
  font-variant-numeric: tabular-nums;
  font-size: var(--fs-small);
  letter-spacing: 0.06em;
  color: var(--chrome-dim);
}

.tier-card__count-em {
  color: var(--ember);
  font-weight: 600;
}

.tier-card__specs {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.tier-card__spec {
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  color: var(--chrome-warm);
  line-height: 1.4;
  padding-left: var(--space-3);
  position: relative;
}

.tier-card__spec::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 4px;
  height: 4px;
  background: var(--ember);
  box-shadow: 0 0 6px rgba(255, 122, 46, 0.65);
}

.tier-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1) var(--space-3);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  line-height: 1.4;
  color: var(--ember);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
  white-space: nowrap;
}

.tier-chip__core {
  color: var(--chrome-warm);
}

.tier-chip--pick {
  color: var(--on-primary-fixed);
  background: linear-gradient(180deg, var(--ember-glow) 0%, var(--ember) 50%, var(--ember-deep) 100%);
  box-shadow: var(--ember-glow-sm);
}

.title {
  margin: 0 0 var(--title-mb, 0);
  font-family: var(--font-display);
  color: var(--chrome-highlight);
}

.title__sep {
  display: inline;
  margin: 0 0.15em;
  opacity: 0.6;
}

.title__display, .title__hero, .title__primary, h1.wp-block-heading, .title__secondary, h2.wp-block-heading, .title__tertiary, h3.wp-block-heading, .title__subheading, .wp-block-heading.is-style-subheading {
  font-weight: 700;
}

.title__display {
  font-size: clamp(44px, 6vw, var(--fs-display, 128px));
  line-height: 0.98;
  letter-spacing: -0.02em;
}

.title__hero {
  font-size: clamp(38px, 3.7vw, var(--fs-hero, 78px));
  line-height: 1.02;
  letter-spacing: -0.01em;
}

.title__primary, h1.wp-block-heading {
  font-size: clamp(32px, 3vw, var(--fs-section, 60px));
  line-height: 1.1;
  letter-spacing: 0;
}

.title__secondary, h2.wp-block-heading {
  font-size: var(--fs-title, 40px);
  line-height: 1.08;
  letter-spacing: 0.02em;
}

.title__tertiary, h3.wp-block-heading {
  font-size: var(--fs-heading, 26px);
  line-height: 1.2;
}

.title__subheading, .wp-block-heading.is-style-subheading {
  font-size: var(--fs-subheading, 22px);
  line-height: 1.15;
  letter-spacing: 0.02em;
}

.title__large {
  font-size: var(--fs-large, 20px);
  line-height: 1.3;
}

.title__quaternary, h4.wp-block-heading, h5.wp-block-heading, h6.wp-block-heading {
  font-size: var(--fs-base, 16px);
  font-weight: 500;
  line-height: 1.5;
}

.title--ember, .wp-block-heading.is-style-ember {
  color: var(--ember);
}

.title--carbon {
  color: var(--carbon);
}

.title--glow {
  text-shadow: 0 0 40px rgba(255, 122, 46, 0.35);
}

.title--stacked {
  word-spacing: 100vw;
}

.title--caps, .wp-block-heading.is-style-caps {
  text-transform: uppercase;
}

.toggle-row {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: var(--space-4-5);
  align-items: start;
  padding: var(--space-4-5) 0;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.toggle-row:first-child {
  padding-top: var(--space-2);
  border-top: 0;
}

.toggle-row__slot {
  position: relative;
  display: block;
  width: 22px;
  height: 22px;
  margin-top: 2px;
}

.toggle-row__input {
  position: absolute;
  width: 22px;
  height: 22px;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.toggle-row__input:focus-visible + .toggle-row__check {
  box-shadow: var(--ember-focus);
}

.toggle-row__input:disabled {
  cursor: default;
}

.toggle-row__check {
  position: relative;
  display: block;
  width: 22px;
  height: 22px;
  background: var(--hull-panel-dark);
  border: 1.5px solid rgba(255, 122, 46, 0.4);
  pointer-events: none;
}

.toggle-row__check--on, .toggle-row__input:checked + .toggle-row__check {
  background: var(--ember);
  border-color: var(--ember);
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.5);
}

.toggle-row__check--on::after, .toggle-row__input:checked + .toggle-row__check::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 7px;
  width: 5px;
  height: 11px;
  border: solid var(--on-primary-fixed);
  border-width: 0 2.5px 2.5px 0;
  transform: rotate(45deg);
}

.toggle-row__check--locked {
  opacity: 0.75;
}

.toggle-row__title {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-small);
  letter-spacing: 0.05em;
  color: var(--chrome-highlight);
}

.toggle-row__desc {
  margin-top: var(--space-1);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.toggle-row__meta {
  margin-top: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.trust-chip {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  padding: 0 var(--space-5);
  box-shadow: inset -1px 0 0 rgba(62, 62, 62, 0.45);
}

.trust-chip:first-child {
  padding-left: 0;
}

.trust-chip:last-child {
  box-shadow: none;
  padding-right: 0;
}

.trust-chip__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  color: var(--ember);
  background: rgba(255, 122, 46, 0.08);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.28);
}

.trust-chip__icon svg {
  width: 22px;
  height: 22px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
}

.trust-chip__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.trust-chip__title {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.trust-chip__note {
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  line-height: 1.4;
  color: var(--chrome-dim);
}

@media (max-width: 768px) {
  .trust-chip {
    padding: var(--space-3) 0;
    box-shadow: inset 0 -1px 0 rgba(62, 62, 62, 0.45);
  }
  .trust-chip:last-child {
    box-shadow: none;
  }
}
.trust-chip-strip__row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-4);
  padding: var(--space-4-5) 0 var(--space-2);
}

.trust-chip-strip__chip {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-2);
  background: rgba(255, 122, 46, 0.04);
  border: 1px solid rgba(255, 122, 46, 0.22);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.1);
  text-align: center;
}

.trust-chip-strip__chip-glyph {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  color: var(--ember);
}

.trust-chip-strip__chip-glyph svg {
  width: 26px;
  height: 26px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
}

.trust-chip-strip__chip-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-nano);
  letter-spacing: 0.08em;
  line-height: 1.15;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.trust-chip-strip__chip-note {
  font-family: var(--font-body);
  font-size: var(--fs-nano);
  letter-spacing: 0.02em;
  line-height: 1.3;
  color: var(--chrome-dim);
}

.trust-cluster {
  margin-top: var(--space-6-5);
  padding-top: var(--space-6);
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.35);
}

.trust-cluster__item {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  line-height: 1.4;
}

.trust-cluster__text {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.45;
}

.trust-cluster__label {
  color: var(--chrome-warm);
  font-size: var(--fs-small);
  font-weight: 600;
  line-height: 1.3;
}

.trust-prose-cells {
  margin-top: var(--space-4-5);
  padding: var(--space-6) var(--space-6) var(--space-5);
  background: linear-gradient(180deg, rgba(26, 26, 26, 0.45) 0%, rgba(15, 15, 15, 0.6) 100%);
  border: 1px solid var(--hull-edge);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.08), 0 8px 24px -12px rgba(0, 0, 0, 0.85);
}

.trust-prose-cells__legend {
  padding: 0 var(--space-3);
  margin-inline-start: calc(var(--space-1) * -1);
  margin-bottom: var(--space-5);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-base);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.trust-prose-cells__legend .accent {
  color: var(--ember);
}

.trust-prose-cells__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.trust-prose-cells__cell {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: var(--space-4);
  align-items: flex-start;
  padding-bottom: var(--space-4);
  border-bottom: 1px solid rgba(250, 250, 250, 0.05);
}

.trust-prose-cells__cell:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.trust-prose-cells__cell-glyph {
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  background: rgba(255, 122, 46, 0.08);
  border: 1px solid rgba(255, 122, 46, 0.3);
  box-shadow: inset 0 1px 0 rgba(255, 179, 71, 0.15);
  color: var(--ember);
}

.trust-prose-cells__cell-glyph svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
}

.trust-prose-cells__cell-body {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  min-width: 0;
}

.trust-prose-cells__cell-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.trust-prose-cells__cell-text {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.trust-rule {
  padding-top: var(--space-6);
  margin-top: var(--space-6);
  border-top: 1px solid var(--ember-hairline-soft);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  line-height: 1.6;
}

.trust-rule strong {
  color: var(--chrome-warm);
  font-weight: 500;
  margin-right: var(--space-2);
}

.trust-signals {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-5);
  padding-top: var(--space-4-5);
  border-top: 1px solid var(--hairline);
}

@media (max-width: 640px) {
  .trust-signals {
    gap: var(--space-3) var(--space-4-5);
  }
}
.trust-signal {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.trust-signal::before {
  content: "";
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  background: var(--ember);
  box-shadow: 0 0 8px var(--ember);
}

@media (max-width: 640px) {
  .trust-signal {
    font-size: var(--fs-nano);
  }
}
.variant-selector {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.variant-selector__label {
  display: flex;
  justify-content: space-between;
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.variant-selector__label-link {
  color: var(--ember);
  text-decoration: none;
}

.variant-selector__input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.variant-selector__options {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.variant-selector__options--full-width .variant-selector__option {
  flex: 1;
  padding: var(--space-4);
  text-align: center;
  font-size: var(--fs-small);
}

.verdict-list {
  display: flex;
  flex-direction: column;
}

.verdict-list__row {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 15rem) minmax(0, 1fr);
  gap: var(--space-3) var(--space-6);
  align-items: baseline;
  padding: var(--space-4-5) var(--space-5);
  box-shadow: inset 0 -1px 0 var(--hairline);
}

@media (max-width: 767px) {
  .verdict-list__row {
    grid-template-columns: 1fr;
    padding: var(--space-4) var(--space-4);
  }
}
.verdict-list__row:first-child {
  box-shadow: inset 0 1px 0 var(--hairline), inset 0 -1px 0 var(--hairline);
}

.verdict-list__key {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.verdict-list__cue {
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.verdict-list__tier {
  font-family: var(--font-title);
  font-size: var(--fs-base);
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--ember);
  line-height: 1.3;
}

.verdict-list__cores {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.verdict-list__text {
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.6;
  color: var(--chrome-warm);
  max-width: 68ch;
}

.verdict-list__price {
  font-family: var(--font-chrome);
  font-weight: 600;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.verdict-list__note {
  padding: var(--space-4-5) var(--space-5) 0;
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.6;
  color: var(--chrome-dim);
  font-style: italic;
}

.verdict-list__row--current {
  background: var(--bg-card-lift);
  box-shadow: var(--ember-hot-rim), var(--panel-lift);
  z-index: 1;
}

.verdict-list__current {
  justify-self: start;
  grid-column: 2;
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1) var(--space-3);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember-glow);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.55);
}

@media (max-width: 767px) {
  .verdict-list__current {
    grid-column: 1;
  }
}
.verdict-list__current::before {
  content: "";
  width: 6px;
  height: 6px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.8);
}

@media (max-width: 767px) {
  .verdict-list__text, .verdict-list__note {
    font-size: var(--fs-base);
  }
}
.video-panel__stage {
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--hull-panel-dark);
  box-shadow: var(--panel-lift);
}

.video-panel__stage::before, .video-panel__stage::after {
  content: "";
  position: absolute;
  top: 8px;
  z-index: 2;
  width: 8px;
  height: 8px;
  background: rgba(20, 20, 20, 0.98);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.3);
}

.video-panel__stage::before {
  left: 8px;
}

.video-panel__stage::after {
  right: 8px;
}

.video-panel__stage::before {
  content: "PHOTOGRAPH BRIEF · VIDEO STILL";
  position: absolute;
  top: 24px;
  left: 24px;
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.24em;
  color: var(--ember);
}

.video-panel__brief {
  max-width: 640px;
  padding: 0 var(--space-9);
  text-align: center;
  font-family: var(--font-body);
  font-style: italic;
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-dim);
}

.video-panel__play {
  position: absolute;
  width: 88px;
  height: 88px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(6, 6, 6, 0.65);
  box-shadow: var(--ember-hot-rim);
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  color: var(--ember);
}

.video-panel__duration {
  position: absolute;
  bottom: 16px;
  right: 16px;
  padding: var(--space-2) var(--space-3);
  background: rgba(6, 6, 6, 0.8);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.14);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  color: var(--chrome-warm);
}

.currency-picker {
  display: flex;
  align-items: center;
  margin: 0;
}

.currency-picker__label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.currency-picker__select {
  appearance: none;
  height: 44px;
  padding: 0 var(--space-5) 0 var(--space-3);
  border: 1px solid transparent;
  border-radius: 0;
  background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23c9c3bb' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right var(--space-2) center;
  color: var(--chrome-warm);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  cursor: pointer;
}

.currency-picker__select:hover, .currency-picker__select:focus-visible {
  border-color: rgba(255, 122, 46, 0.45);
  color: var(--ember);
}

.currency-picker__select option {
  background-color: var(--carbon);
  color: var(--chrome-warm);
}

.currency-picker--header {
  margin-left: var(--space-2);
}

@media screen and (max-width: 1199px) {
  .currency-picker--header {
    display: none;
  }
}
.currency-picker--footer {
  margin-top: var(--space-4);
}

.currency-picker--footer .currency-picker__select {
  border-color: rgba(250, 250, 250, 0.12);
}

.currency-picker--menu {
  gap: var(--space-3);
  width: 100%;
}

.currency-picker--menu .currency-picker__label {
  position: static;
  width: auto;
  height: auto;
  clip-path: none;
  color: var(--chrome-warm);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.currency-picker--menu .currency-picker__select {
  flex: 1;
  border-color: rgba(250, 250, 250, 0.12);
}

.wallet-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin: var(--space-5) 0;
  padding: var(--space-4-5) 0;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.wallet-row__label {
  margin-right: var(--space-2);
  padding: var(--space-2) 0;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wallet-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-4);
  border: 1px solid rgba(255, 122, 46, 0.35);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.wallet-chip--soon {
  border-color: rgba(255, 255, 255, 0.1);
  color: var(--chrome-dim);
}

.wallet-chip__meta {
  font-size: var(--fs-nano);
  letter-spacing: 0.12em;
  color: var(--chrome-dim);
}

.bio-split {
  display: grid;
  grid-template-columns: minmax(380px, 660px) 1fr;
  column-gap: var(--space-8);
  row-gap: var(--space-7);
  align-items: start;
}

.bio-split__media {
  aspect-ratio: 7/10;
  min-height: 480px;
  background: var(--carbon) center/cover no-repeat;
  background-image: var(--bio-portrait, none);
  box-shadow: var(--panel-lift);
  position: relative;
}

.bio-split__media::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: linear-gradient(180deg, transparent 0%, rgba(255, 122, 46, 0.35) 45%, rgba(255, 122, 46, 0.15) 100%);
  box-shadow: 0 0 24px rgba(255, 122, 46, 0.35);
  pointer-events: none;
}

.bio-split__media-caption {
  position: absolute;
  bottom: 24px;
  left: 24px;
  padding: var(--space-3) var(--space-4);
  background: rgba(10, 10, 10, 0.75);
  backdrop-filter: blur(3px);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.bio-split__prose {
  padding: var(--space-4) 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-7);
}

.bio-split__eyebrow {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ember);
  margin-bottom: var(--space-4);
}

.bio-split__title {
  font-family: var(--font-title);
  font-weight: 600;
  font-style: normal;
  font-size: var(--fs-title-lg);
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
  line-height: 1.02;
  max-width: 15ch;
}

.bio-split__data {
  display: grid;
  gap: var(--space-4);
  padding: var(--space-6) 0;
  border-top: 1px solid rgba(250, 250, 250, 0.06);
  border-bottom: 1px solid rgba(250, 250, 250, 0.06);
}

.bio-split__data-row {
  display: grid;
  grid-template-columns: minmax(160px, max-content) 1fr minmax(0, max-content);
  gap: var(--space-4);
  align-items: baseline;
  font-family: var(--font-chrome);
}

.bio-split__data-label {
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.bio-split__data-leader {
  border-bottom: 1px dotted rgba(184, 176, 166, 0.28);
  align-self: end;
  margin-bottom: var(--space-2);
}

.bio-split__data-value {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: var(--fs-base);
  color: var(--chrome-warm);
  font-variant-numeric: tabular-nums;
  text-align: right;
  letter-spacing: 0.02em;
}

.bio-split__data-value .accent {
  color: var(--ember);
}

.bio-split__body p {
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  color: var(--chrome-warm);
  margin-bottom: var(--space-5);
  line-height: 1.65;
}

.bio-split__body p:last-child {
  margin-bottom: 0;
}

.bio-split__body--wide {
  margin-top: calc(var(--space-2) * -1);
}

.bio-split__closer {
  font-family: var(--font-body);
  font-style: italic;
  font-size: var(--fs-large);
  line-height: 1.5;
  color: var(--chrome-highlight);
  margin: 0;
  padding-top: var(--space-5);
  border-top: 1px solid rgba(255, 122, 46, 0.3);
  grid-column: 1/-1;
}

.bio-split__closer em {
  font-style: normal;
}

@media (max-width: 960px) {
  .bio-split {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: var(--space-6-5);
  }
  .bio-split__media {
    min-height: 420px;
    aspect-ratio: 3/4;
  }
  .bio-split__prose {
    padding: 0;
    gap: var(--space-6-5);
  }
}
@media (max-width: 640px) {
  .character-hero__display,
  .chapter-head__title,
  .shared-specs__title,
  .proof-band__title,
  .character-browse__title,
  .bio-split__title,
  .newsletter-signup__title {
    overflow-wrap: break-word;
    hyphens: auto;
  }
  .bio-split__title {
    font-size: var(--fs-heading-lg);
  }
  .bio-split__data-row {
    grid-template-columns: minmax(0, max-content) 1fr minmax(0, max-content);
    gap: var(--space-2);
  }
  .bio-split__data-leader {
    min-width: 16px;
  }
  .bio-split__closer {
    font-size: var(--fs-prose);
  }
}
.wp-block-tff-callout-box {
  --callout-accent: var(--ember);
  --callout-accent-rgb: 255, 122, 46;
  position: relative;
  margin: var(--space-6-5) 0;
  padding: var(--callout-pad, var(--space-6) var(--space-6) var(--space-6));
  border: 1px solid rgba(var(--callout-accent-rgb), 0.45);
  background: rgba(var(--callout-accent-rgb), 0.05);
  box-shadow: inset 0 1px 0 rgba(var(--callout-accent-rgb), 0.25), 0 0 24px -8px rgba(var(--callout-accent-rgb), 0.35);
}

.wp-block-tff-callout-box.callout-box--caution {
  --callout-accent: var(--forge-red);
  --callout-accent-rgb: 230, 57, 41;
}

.wp-block-tff-callout-box .callout-box__icon {
  position: absolute;
  top: -14px;
  left: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid var(--callout-accent);
  background: var(--carbon);
  box-shadow: 0 0 16px rgba(var(--callout-accent-rgb), 0.4);
  color: var(--callout-accent);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
}

.wp-block-tff-callout-box .callout-box__eyebrow {
  margin: 0 0 var(--space-3);
  color: var(--callout-accent);
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.wp-block-tff-callout-box .callout-box__body {
  margin: 0;
  color: var(--chrome-warm);
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.6;
}

.catalogue-card {
  position: relative;
  background: var(--bg-card);
  box-shadow: var(--chrome-top-soft), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
  transition: box-shadow 250ms ease, transform 250ms ease;
}

.catalogue-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--chrome-top), var(--panel-lift-hover);
}

.catalogue-card__link {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.catalogue-card__media {
  position: relative;
  aspect-ratio: 1/1;
  background: var(--bg-recess);
  overflow: hidden;
}

.catalogue-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.catalogue-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 64%, rgba(6, 6, 6, 0.72) 100%);
  pointer-events: none;
}

.catalogue-card__body {
  background: var(--bg-card);
  padding: var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  flex: 1;
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.06);
}

.catalogue-card__core {
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}

.catalogue-card__core::before {
  content: "";
  width: 5px;
  height: 5px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.8);
  flex-shrink: 0;
}

.catalogue-card__cores {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2) 0;
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.catalogue-card__cores::before {
  content: "";
  width: 5px;
  height: 5px;
  margin-right: var(--space-2);
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.8);
  flex-shrink: 0;
}

.catalogue-card__core-option + .catalogue-card__core-option::before {
  content: "·";
  margin-right: 8px;
  color: var(--chrome-dim);
  margin: 0 var(--space-2);
}

.catalogue-card__name {
  font-family: var(--font-title);
  font-weight: 600;
  font-style: normal;
  font-size: var(--fs-large);
  line-height: 1.2;
  letter-spacing: 0.4px;
  color: var(--chrome-highlight);
  text-transform: uppercase;
}

.catalogue-card__foot {
  margin-top: auto;
  padding-top: var(--space-4-5);
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-4);
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.35);
}

.catalogue-card__price {
  font-family: var(--font-display);
  font-size: var(--fs-large);
  font-weight: 600;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.02em;
}

.catalogue-card__from {
  margin-right: var(--space-2);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  vertical-align: 0.35em;
  color: var(--chrome-dim);
}

.catalogue-card__ships {
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  text-align: right;
}

@media (max-width: 640px) {
  .catalogue-card__body {
    padding: var(--space-4-5) var(--space-5) var(--space-5);
  }
  .catalogue-card__name,
  .catalogue-card__price {
    font-size: var(--fs-prose);
  }
}
.catalogue-card--bundle .catalogue-card__foot {
  align-items: center;
}

.catalogue-card__contents {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding-top: var(--space-1);
}

.catalogue-card__item {
  position: relative;
  padding-left: var(--space-4);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.45;
  color: var(--chrome-warm);
}

.catalogue-card__item::before {
  content: "+";
  position: absolute;
  top: 0;
  left: 0;
  font-family: var(--font-chrome);
  font-weight: 600;
  color: var(--ember);
}

.catalogue-card__item-core {
  color: var(--chrome-dim);
}

.catalogue-card__separately {
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.catalogue-card__separately s {
  text-decoration-color: rgba(184, 176, 166, 0.6);
  font-variant-numeric: tabular-nums;
}

.catalogue-card__save {
  padding: var(--space-1) var(--space-3);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ember-glow);
  background: rgba(255, 122, 46, 0.08);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.category-browse-tiles {
  background: var(--charcoal);
  padding: 84px 0 96px;
}

.category-browse-tiles__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
  margin-bottom: 42px;
}

.category-browse-tiles__heading {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.category-browse-tiles__eyebrow {
  color: var(--ember);
}

.category-browse-tiles__title {
  font-family: var(--font-title);
  font-weight: 600;
  font-size: 34px;
  letter-spacing: 0.8px;
  color: var(--chrome-highlight);
  line-height: 1.1;
  margin: 0;
}

.category-browse-tiles__note {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.6;
  color: var(--chrome-dim);
  max-width: 680px;
  margin: 0;
}

.category-browse-tiles__aside {
  display: grid;
  grid-template-columns: minmax(0, 400px) minmax(0, 648px);
  justify-content: space-between;
  gap: var(--space-5);
  align-items: start;
  padding-top: var(--space-6-5);
  border-top: 1px solid rgba(184, 176, 166, 0.16);
}

.category-browse-tiles__aside-intro {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.category-browse-tiles__aside-label {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ember);
}

.category-browse-tiles__aside-copy {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.65;
  color: var(--chrome-dim);
  max-width: 460px;
  margin: 0;
}

.category-browse-tiles--reinforcement {
  background: var(--carbon);
  padding: var(--space-9) 0;
}

.category-browse-tiles__track {
  --spine-gutter: 104px;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--spine-gutter) minmax(0, 1fr);
  grid-auto-rows: 350px;
  row-gap: 0;
}

.category-browse-tiles__track::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  margin-left: -0.5px;
  background: linear-gradient(180deg, rgba(255, 122, 46, 0) 0%, rgba(255, 122, 46, 0.6) 5%, rgba(255, 122, 46, 0.6) 95%, rgba(255, 122, 46, 0) 100%);
  box-shadow: 0 0 18px rgba(255, 122, 46, 0.32);
  pointer-events: none;
}

.category-browse-tiles__item {
  position: relative;
  display: grid;
  align-items: start;
  align-self: start;
}

.category-browse-tiles__item--left {
  grid-column: 1/3;
  grid-template-columns: minmax(0, 1fr) var(--spine-gutter);
}

.category-browse-tiles__item--left .era-tile {
  grid-column: 1;
  grid-row: 1;
}

.category-browse-tiles__item--left .category-browse-tiles__node {
  grid-column: 2;
  grid-row: 1;
}

.category-browse-tiles__item--right {
  grid-column: 2/4;
  grid-template-columns: var(--spine-gutter) minmax(0, 1fr);
}

.category-browse-tiles__item--right .category-browse-tiles__node {
  grid-column: 1;
  grid-row: 1;
}

.category-browse-tiles__item--right .era-tile {
  grid-column: 2;
  grid-row: 1;
}

.category-browse-tiles__item:nth-child(1) {
  grid-row: 1/span 2;
}

.category-browse-tiles__item:nth-child(2) {
  grid-row: 2/span 2;
}

.category-browse-tiles__item:nth-child(3) {
  grid-row: 3/span 2;
}

.category-browse-tiles__item:nth-child(4) {
  grid-row: 4/span 2;
}

.category-browse-tiles__item:nth-child(5) {
  grid-row: 5/span 2;
}

.category-browse-tiles__item:nth-child(6) {
  grid-row: 6/span 2;
}

.category-browse-tiles__item:nth-child(7) {
  grid-row: 7/span 2;
}

.category-browse-tiles__item:nth-child(8) {
  grid-row: 8/span 2;
}

.category-browse-tiles__item:nth-child(9) {
  grid-row: 9/span 2;
}

.category-browse-tiles__item:nth-child(10) {
  grid-row: 10/span 2;
}

.category-browse-tiles__item:nth-child(11) {
  grid-row: 11/span 2;
}

.category-browse-tiles__item:nth-child(12) {
  grid-row: 12/span 2;
}

.category-browse-tiles__item:nth-child(13) {
  grid-row: 13/span 2;
}

.category-browse-tiles__item:nth-child(14) {
  grid-row: 14/span 2;
}

.category-browse-tiles__item:nth-child(15) {
  grid-row: 15/span 2;
}

.category-browse-tiles__item:nth-child(16) {
  grid-row: 16/span 2;
}

.category-browse-tiles__node {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: center;
}

.category-browse-tiles__node-mark {
  width: 11px;
  height: 11px;
  background: var(--ember);
  box-shadow: 0 0 14px rgba(255, 122, 46, 0.85);
}

.category-browse-tiles__node-idx {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--font-title);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1;
  color: var(--chrome-dim);
  opacity: 0.5;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  pointer-events: none;
}

.category-browse-tiles__item--left .category-browse-tiles__node-idx {
  left: calc(50% + 26px);
}

.category-browse-tiles__item--right .category-browse-tiles__node-idx {
  right: calc(50% + 26px);
}

@media (max-width: 900px) {
  .category-browse-tiles__track {
    grid-template-columns: var(--spine-gutter) minmax(0, 1fr);
    grid-auto-rows: auto;
    row-gap: var(--space-6-5);
  }
  .category-browse-tiles__track::before {
    left: calc(var(--spine-gutter) / 2);
  }
  .category-browse-tiles__item:nth-child(n) {
    grid-column: 1/3;
    grid-template-columns: var(--spine-gutter) minmax(0, 1fr);
    grid-row: auto;
  }
  .category-browse-tiles__item--left .era-tile,
  .category-browse-tiles__item--right .era-tile {
    grid-column: 2;
    grid-row: 1;
  }
  .category-browse-tiles__item--left .category-browse-tiles__node,
  .category-browse-tiles__item--right .category-browse-tiles__node {
    grid-column: 1;
    grid-row: 1;
  }
  .category-browse-tiles__aside {
    grid-template-columns: 1fr;
    gap: var(--space-6);
    margin-top: var(--space-6-5);
  }
}
.chapter-catalogue {
  background-color: var(--charcoal-warm);
  padding: var(--space-9) 0 var(--space-10);
  position: relative;
}

.chapter-catalogue::before {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: var(--chrome-top-soft);
  pointer-events: none;
  z-index: 1;
}

.chapter-catalogue__chapters {
  position: relative;
  z-index: 2;
}

.chapter-catalogue__chapters > .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  gap: var(--space-9);
}

@media (max-width: 1100px) {
  .chapter-catalogue__chapters > .wp-block-group__inner-container {
    gap: var(--space-8);
  }
}
@media (max-width: 640px) {
  .chapter-catalogue__chapters > .wp-block-group__inner-container {
    gap: var(--space-8);
  }
}
.chapter-catalogue__chapter {
  --section-header-mb: 0;
}

.chapter-catalogue__chapter > .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}

@media (max-width: 1100px) {
  .chapter-catalogue__chapter > .wp-block-group__inner-container {
    gap: var(--space-5);
  }
}
@media (max-width: 640px) {
  .chapter-catalogue__chapter > .wp-block-group__inner-container {
    gap: var(--space-5);
  }
}
.chapter-catalogue__row {
  gap: var(--space-6);
}

@media (max-width: 900px) {
  .chapter-catalogue__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  .chapter-catalogue__row {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 1100px) {
  .chapter-catalogue__row {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }
}
@media (max-width: 640px) {
  .chapter-catalogue {
    padding: var(--space-8) 0;
  }
}
.chapter-catalogue__chapters.chapter-catalogue__chapters.chapter-catalogue__chapters > .wp-block-group__inner-container > *,
.chapter-catalogue__chapter.chapter-catalogue__chapter.chapter-catalogue__chapter > .wp-block-group__inner-container > * {
  margin: 0;
}

.character-bio {
  background: var(--charcoal-warm);
  padding: var(--space-9) 0;
  position: relative;
  overflow: hidden;
}

.character-browse {
  --section-header-mb: 44px;
  --section-header-title-max: 760px;
  background: var(--charcoal);
  padding: var(--space-9) 0;
  position: relative;
}

.character-browse__grid {
  gap: var(--space-6);
}

.character-hero {
  position: relative;
  min-height: 100vh;
  background: linear-gradient(180deg, rgba(6, 6, 6, 0.55) 0%, rgba(6, 6, 6, 0.7) 55%, rgba(6, 6, 6, 0.92) 100%), radial-gradient(ellipse at 68% 42%, rgba(232, 93, 24, 0.22) 0%, rgba(232, 93, 24, 0.05) 35%, transparent 70%), var(--carbon) var(--category-hero-img) center/cover no-repeat;
  color: var(--chrome-highlight);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}

.character-hero__inner {
  width: 100%;
  padding-bottom: 320px;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-9);
  align-items: end;
}

.character-hero__eyebrow {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ember);
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-6);
}

.character-hero__eyebrow::before {
  content: "";
  width: 44px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.75);
}

.character-hero__display {
  font-family: var(--font-title);
  font-weight: 700;
  font-size: clamp(var(--fs-heading-lg), 6vw, var(--fs-display));
  line-height: 0.94;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  text-shadow: 0 6px 30px rgba(0, 0, 0, 0.7);
}

.character-hero__display span {
  display: block;
}

.character-hero__display .character-hero__surname {
  color: var(--chrome-warm);
}

.character-hero__sub {
  margin-top: var(--space-6);
  font-family: var(--font-body);
  font-size: var(--fs-large);
  line-height: 1.5;
  color: var(--chrome-warm);
  max-width: 52ch;
}

.character-hero__ctas {
  margin-top: var(--space-7);
  display: flex;
  gap: var(--space-4);
  flex-wrap: wrap;
}

.character-hero__descriptor {
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  white-space: nowrap;
}

.character-hero__descriptor span {
  color: var(--chrome-warm);
  margin: 0 var(--space-2);
}

@media (max-width: 960px) {
  .character-hero {
    min-height: 76vh;
    flex-direction: column;
    justify-content: flex-end;
    align-items: stretch;
  }
  .character-hero__inner {
    padding-bottom: var(--space-8);
    gap: var(--space-7);
  }
  .character-hero__descriptor {
    position: static;
    transform: none;
    margin: 0 auto var(--space-6-5);
    padding: 0 var(--gutter);
    white-space: normal;
    text-align: center;
  }
}
@media (max-width: 640px) {
  .character-hero__display,
  .chapter-head__title,
  .shared-specs__title,
  .proof-band__title,
  .character-browse__title,
  .bio-split__title,
  .newsletter-signup__title {
    overflow-wrap: break-word;
    hyphens: auto;
  }
  .character-hero__display {
    font-size: var(--fs-heading-lg);
    letter-spacing: 0.08em;
  }
  .character-hero__sub {
    font-size: var(--fs-prose);
  }
  .character-hero__ctas {
    margin-top: var(--space-6);
  }
}
.character-rail {
  background: var(--charcoal);
  padding: var(--space-9) 0;
  position: relative;
}

.character-rail__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-7);
  flex-wrap: wrap;
  margin-bottom: var(--space-6-5);
}

.character-rail__heading {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.character-rail__title {
  font-family: var(--font-title);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.character-rail__note {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-dim);
  max-width: 420px;
}

.character-rail__viewport {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  /* snapping must respect the rail's lead-in, or the first tile snaps
  flush to the viewport edge and loses its alignment to the column */
  scroll-padding-inline-start: max(20px, (100vw - 1400px) / 2);
  scrollbar-color: var(--ember) rgba(250, 250, 250, 0.06);
  scrollbar-width: thin;
  padding-bottom: var(--space-5);
}

.character-rail__viewport::-webkit-scrollbar {
  height: 4px;
}

.character-rail__viewport::-webkit-scrollbar-track {
  background: rgba(250, 250, 250, 0.06);
}

.character-rail__viewport::-webkit-scrollbar-thumb {
  background: linear-gradient(90deg, var(--ember-glow), var(--ember), var(--ember-deep));
  box-shadow: 0 0 12px rgba(255, 122, 46, 0.55);
}

.character-rail__track {
  display: flex;
  gap: var(--space-4-5);
  width: max-content;
  margin-inline: auto;
  padding-inline: max(var(--space-4-5), (100vw - 1400px) / 2);
}

.character-rail__item {
  flex: 0 0 260px;
  width: 260px;
  scroll-snap-align: start;
}

.character-rail__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  flex-wrap: wrap;
  margin-top: var(--space-5);
  padding-top: var(--space-4-5);
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.character-rail__hint {
  color: var(--chrome-dim);
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.character-rail__hint::before {
  content: "";
  width: 34px;
  height: 1px;
  background: var(--ember);
  opacity: 0.7;
}

.character-rail__all {
  color: var(--chrome-warm);
}

.character-rail__all-arrow {
  color: var(--ember);
  margin-left: 8px;
}

.character-rail__all:hover {
  color: var(--ember);
}

@media (max-width: 1000px) {
  .character-rail {
    padding: 68px 0 64px;
  }
  /* The 28px title step is gone with its desktop counterpart — `.editorial-content`
     carries its own h2 breakpoint and it is the one that ever applied. */
}
@media (max-width: 640px) {
  .character-rail__item {
    flex-basis: 216px;
    width: 216px;
  }
  .character-rail__track {
    padding-inline: 20px;
  }
  .character-rail__foot {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }
}
.wp-block-tff-character-roster .character-browse__grid {
  align-items: start;
}

@media (min-width: 1101px) {
  .wp-block-tff-character-roster .character-browse__grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
.wp-block-tff-character-roster ~ .wp-block-tff-character-roster {
  padding-top: var(--space-7);
}

.wp-block-tff-character-roster:has(~ .wp-block-tff-character-roster) {
  padding-bottom: var(--space-7);
}

.wp-block-tff-character-roster .character-tile[hidden] {
  display: none;
}

.wp-block-tff-character-roster:not(:has(.character-tile:not([hidden]))) {
  display: none;
}

.character-browse__grid--six {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: var(--space-4-5);
}

@media (max-width: 1100px) {
  .character-browse__grid--six {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .character-browse__grid--six {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-3);
  }
}
.character-browse__grid--six .character-tile__body {
  right: 18px;
  bottom: 18px;
  left: 18px;
}

@media (max-width: 767px) {
  .character-browse__grid--six .character-tile__body {
    right: 14px;
    bottom: 14px;
    left: 14px;
  }
}
.character-browse__grid--six .character-tile__name {
  font-size: var(--fs-large);
  line-height: 1.15;
}

@media (max-width: 767px) {
  .character-browse__grid--six .character-tile__name {
    font-size: var(--fs-base);
  }
}
.editorial-ledger {
  background-color: var(--charcoal);
  background-image: radial-gradient(ellipse 600px 300px at 6% 3%, rgba(255, 122, 46, 0.02) 0%, transparent 60%), radial-gradient(ellipse 700px 400px at 94% 97%, rgba(255, 122, 46, 0.018) 0%, transparent 60%), repeating-linear-gradient(180deg, transparent 0px, transparent 896px, rgba(255, 220, 190, 0.085) 896px, rgba(255, 220, 190, 0.085) 897px, rgba(0, 0, 0, 0.6) 897px, rgba(0, 0, 0, 0.6) 900px, rgba(0, 0, 0, 0.3) 900px, rgba(0, 0, 0, 0.3) 903px, transparent 903px, transparent 904px), repeating-linear-gradient(90deg, transparent 0px, transparent 1195px, rgba(255, 220, 190, 0.045) 1195px, rgba(255, 220, 190, 0.045) 1196px, rgba(0, 0, 0, 0.55) 1196px, rgba(0, 0, 0, 0.55) 1200px, transparent 1200px, transparent 1202px), radial-gradient(ellipse 750px 500px at 30% 30%, rgba(255, 255, 255, 0.01) 0%, transparent 60%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.04 0 0 0 0 0.028 0 0 0 0 0.022 0 0 0 0.32 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: auto, auto, auto, auto, 1200px 904px, 200px 200px;
  /* The ground is the pooled hull-plate treatment, values untouched. Only its
  PLACEMENT is set here: the vertical plate seam repeats at 1195px, which
  lands inside the prose column at desktop widths. Offsetting the whole
  ground drops the seam into the gutter between the annotation column and
  the prose, so the seam reads as construction rather than damage. The
  horizontal seam sits at 896px and the band is shorter than that, so it
  never crosses the copy either. */
  background-position: -775px 0;
  padding: var(--space-9) 0;
  position: relative;
}

.editorial-ledger__inner {
  display: grid;
  grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
  gap: var(--space-9);
  align-items: start;
}

.editorial-ledger__aside {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.editorial-ledger__title {
  font-family: var(--font-title);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.editorial-ledger__facts {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-top: var(--space-1);
}

.editorial-ledger__fact {
  display: flex;
  align-items: baseline;
  gap: var(--space-3);
  padding: var(--space-2) 0;
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.editorial-ledger__fact + .editorial-ledger__fact {
  box-shadow: inset 0 1px 0 rgba(184, 176, 166, 0.12);
}

.editorial-ledger__fact dt {
  color: var(--chrome-dim);
  white-space: nowrap;
}

.editorial-ledger__fact-leader {
  flex: 1;
  height: 1px;
  border-bottom: 1px dotted rgba(184, 176, 166, 0.28);
  transform: translateY(-3px);
}

.editorial-ledger__fact dd {
  margin: 0;
  color: var(--chrome-warm);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.editorial-ledger__fact dd em {
  font-style: normal;
  color: var(--ember);
  font-weight: 600;
}

.editorial-ledger__caveat {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--chrome-dim);
  padding-left: var(--space-4);
  box-shadow: inset 2px 0 0 rgba(255, 122, 46, 0.45);
}

.editorial-ledger__prose {
  max-width: 68ch;
}

.editorial-ledger__lede {
  font-family: var(--font-body);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.editorial-ledger__p {
  font-family: var(--font-body);
  line-height: 1.7;
  color: var(--chrome-warm);
  margin-top: var(--space-5);
}

.editorial-ledger__p em {
  font-style: italic;
  color: var(--chrome-glint);
}

@media (max-width: 1000px) {
  /* stacked: there is no gutter to hide the seam in, so it goes to the band edge */
  .editorial-ledger {
    padding: 72px 0 68px;
    background-position: -1195px 0;
  }
  .editorial-ledger__inner {
    grid-template-columns: 1fr;
    gap: 44px;
  }
  /* The 28px title and 18px lede steps that used to be here are gone with their
     desktop counterparts — same cascade, same reason: `.editorial-content` has
     its own breakpoint for both and it is the one that ever applied. */
}
.editorial-prose > .editorial-panel__facts {
  margin-top: var(--space-6);
}

.editorial-prose > .text-link {
  display: inline-block;
  margin-top: var(--space-6);
}

.era-tile {
  position: relative;
  background: var(--bg-card);
  min-height: 260px;
  display: flex;
  overflow: hidden;
  box-shadow: var(--panel-lift);
  transition: box-shadow 0.25s ease, transform 0.25s ease;
  cursor: pointer;
  border-radius: 0;
}

.era-tile:hover {
  box-shadow: var(--panel-lift-hover), inset 0 0 0 1px rgba(255, 122, 46, 0.35);
  transform: translateY(-2px);
}

.era-tile__media {
  flex: 0 0 42%;
  background: var(--hull-panel-dark);
  position: relative;
  overflow: hidden;
}

.era-tile__portraits {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  padding: 2px;
  background: var(--hull-panel-dark);
}

.era-tile__portrait {
  background-image: var(--era-portrait);
  background-size: cover;
  background-position: center top;
  filter: grayscale(0.15) contrast(1.05);
}

.era-tile__body {
  flex: 1;
  padding: var(--space-6) var(--space-6) var(--space-5);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--space-4);
}

.era-tile__eyebrow {
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.era-tile__title {
  font-family: var(--font-title);
  font-weight: 600;
  font-size: var(--fs-subheading);
  letter-spacing: 0.8px;
  line-height: 1.15;
  color: var(--chrome-highlight);
  margin-top: var(--space-2);
}

.era-tile__leads {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-warm);
  margin-top: var(--space-3);
}

.era-tile__leads .sep {
  color: var(--ember);
  opacity: 0.8;
}

.era-tile__leads-label {
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  margin-right: var(--space-3);
}

.era-tile__lead {
  white-space: nowrap;
}

.era-tile__count {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  display: flex;
  align-items: baseline;
  gap: var(--space-2);
  padding-top: var(--space-3);
  border-top: 1px dashed rgba(184, 176, 166, 0.2);
}

.era-tile__count strong {
  font-family: var(--font-chrome);
  font-weight: 600;
  color: var(--ember);
  font-size: var(--fs-prose);
  letter-spacing: 0.04em;
  font-variant-numeric: tabular-nums;
}

.era-tile__link {
  margin-top: var(--space-4);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.era-tile__link-arrow {
  color: var(--ember);
  margin-left: 6px;
}

.era-tile--current .era-tile__eyebrow {
  color: var(--ember);
}

.era-tile--current .era-tile__link {
  color: var(--chrome-dim);
}

.era-tile--aside .era-tile__portraits {
  grid-template-columns: repeat(2, 1fr);
}

.era-tile--no-art .era-tile__media {
  background-color: var(--hull-panel-dark);
  background-image: radial-gradient(ellipse 110% 80% at 14% 6%, rgba(255, 122, 46, 0.13) 0%, rgba(255, 122, 46, 0.03) 38%, transparent 66%), linear-gradient(101deg, rgba(58, 58, 58, 0.62) 0%, rgba(40, 40, 40, 0.44) 40%, rgba(30, 30, 30, 0.3) 46.8%, rgba(8, 8, 8, 0.92) 47.2%, rgba(6, 6, 6, 0.98) 100%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.04 0 0 0 0 0.028 0 0 0 0 0.022 0 0 0 0.32 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: auto, auto, 200px 200px;
}

.era-tile--stacked {
  flex-direction: column;
  min-height: 0;
}

.era-tile--stacked .era-tile__media {
  flex: 0 0 auto;
  aspect-ratio: 5/2;
}

.era-tile--stacked .era-tile__body {
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.55), 0 -20px 44px -22px rgba(255, 122, 46, 0.75);
}

@media (max-width: 780px) {
  .era-tile__media {
    flex-basis: 38%;
  }
}
@media (max-width: 640px) {
  .era-tile__portraits {
    grid-template-columns: 1fr;
  }
  .era-tile__portrait:nth-child(n+2) {
    display: none;
  }
}
.wp-block-tff-jump-strip {
  display: contents;
}

.jump-strip {
  position: sticky;
  top: 0;
  z-index: 30;
  background: rgba(20, 20, 20, 0.94);
  backdrop-filter: blur(10px);
  box-shadow: var(--chrome-top-soft), 0 14px 30px -16px rgba(0, 0, 0, 0.95);
}

.jump-strip__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-6);
  padding-block: var(--space-4);
}

.jump-strip__group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.jump-strip__label {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.jump-strip__band {
  display: inline-flex;
  align-items: baseline;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4-5);
  background: var(--bg-card);
  box-shadow: var(--chrome-top-soft);
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  transition: color 180ms ease, box-shadow 180ms ease;
}

.jump-strip__band:hover {
  color: var(--chrome-highlight);
  box-shadow: var(--chrome-top-soft), var(--ember-glow-sm);
}

.jump-strip__band-count {
  font-size: var(--fs-eyebrow);
  letter-spacing: 0;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.jump-strip__alpha {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px;
}

.jump-strip__letter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
}

@media (min-width: 901px) {
  .jump-strip__letter {
    min-width: 24px;
  }
}
.jump-strip__letter {
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  font-weight: 500;
  color: var(--chrome-dim);
  transition: color 160ms ease, background 160ms ease;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.jump-strip__letter:hover, .jump-strip__letter[aria-pressed=true] {
  background: var(--ember);
  box-shadow: var(--ember-glow-sm);
  color: var(--on-primary-fixed);
}

.jump-strip__letter--all {
  padding-inline: var(--space-2);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media (max-width: 1100px) {
  .jump-strip__inner {
    gap: var(--space-4);
  }
}
@media (max-width: 900px) {
  .jump-strip__inner {
    flex-direction: column;
    align-items: stretch;
    flex-wrap: nowrap;
    gap: var(--space-2);
    padding-block: var(--space-3);
  }
  .jump-strip__group {
    flex-wrap: nowrap;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .jump-strip__group::-webkit-scrollbar {
    display: none;
  }
  .jump-strip__label {
    flex: 0 0 auto;
  }
  .jump-strip__band {
    flex: 0 0 auto;
    padding: var(--space-2) var(--space-4);
    font-size: var(--fs-eyebrow);
  }
  .jump-strip__alpha {
    flex-wrap: nowrap;
  }
  .jump-strip__letter {
    flex: 0 0 auto;
    min-width: 24px;
    height: 24px;
    font-size: var(--fs-eyebrow);
  }
}
@media (prefers-reduced-motion: no-preference) {
  html:has(.jump-strip) {
    scroll-behavior: smooth;
  }
}
.jump-strip ~ * [id^=band-],
.wp-block-tff-jump-strip ~ * [id^=band-] {
  scroll-margin-top: calc(var(--space-10) + var(--space-6));
}

.hub-header {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-color: var(--carbon);
}

.hub-header::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(6, 6, 6, 0.45) 0%, rgba(6, 6, 6, 0.32) 40%, rgba(6, 6, 6, 0.55) 100%), radial-gradient(60% 90% at 12% 50%, rgba(255, 122, 46, 0.1), transparent 55%);
  pointer-events: none;
}

.hub-header__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-5);
  min-height: 460px;
  padding-block: var(--space-9);
}

.hub-header__eyebrow {
  margin-bottom: var(--space-1);
}

.hub-header__title {
  font-family: var(--font-title);
  font-size: clamp(44px, 3.9vw, var(--fs-h1));
  font-weight: 600;
  line-height: 1.06;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  text-shadow: 0 6px 30px rgba(0, 0, 0, 0.7);
}

.hub-header__title-accent {
  color: var(--ember);
}

.hub-header__lede {
  max-width: 760px;
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.55;
  color: var(--chrome-warm);
}

.hub-header__stats {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-8);
  margin-top: var(--space-4);
}

.hub-header__stat {
  display: flex;
  flex-direction: column-reverse;
  gap: var(--space-2);
}

.hub-header__stat-value {
  font-family: var(--font-chrome);
  font-size: var(--fs-title);
  font-weight: 600;
  line-height: 1;
  color: var(--ember);
  font-variant-numeric: tabular-nums;
}

.hub-header__stat-label {
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

@media (max-width: 780px) {
  .hub-header__inner {
    gap: var(--space-4-5);
    min-height: 340px;
    padding-block: var(--space-8) var(--space-7);
  }
  .hub-header__title {
    font-size: var(--fs-heading-lg);
    letter-spacing: 0.08em;
  }
  .hub-header__lede {
    font-size: var(--fs-base);
  }
  .hub-header__stats {
    gap: var(--space-6);
  }
  .hub-header__stat-value {
    font-size: var(--fs-heading-lg);
  }
}
.proof-band {
  background: var(--charcoal);
  padding: var(--space-9) 0 var(--space-10);
}

.proof-band--evidence-only {
  padding: var(--space-8) 0;
}

.proof-band--quotes-only {
  padding: var(--space-8) 0 var(--space-9);
}

.proof-band {
  position: relative;
}

.proof-band::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(180deg, rgba(250, 250, 250, 0.022) 0 1px, transparent 1px 132px);
  box-shadow: var(--chrome-top-soft);
  pointer-events: none;
}

.proof-band > .wrapper {
  position: relative;
  z-index: 2;
}

.proof-band__head {
  margin-bottom: var(--space-6-5);
}

.proof-band__head .eyebrow {
  margin-bottom: var(--space-4-5);
}

.proof-band__title {
  font-family: var(--font-title);
  font-weight: 600;
  font-style: normal;
  font-size: var(--fs-title);
  line-height: 1.08;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.proof-band__evidence {
  max-width: 1000px;
  margin-bottom: var(--space-8);
}

.proof-band__quotes {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-6);
}

@media (max-width: 1100px) {
  .proof-band__quotes {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .proof-band {
    padding: var(--space-8) 0;
  }
  .proof-band__title {
    font-size: var(--fs-heading-lg);
  }
  .proof-band__evidence {
    margin-bottom: var(--space-7);
  }
  .character-hero__display,
  .chapter-head__title,
  .shared-specs__title,
  .proof-band__title,
  .character-browse__title,
  .bio-split__title,
  .newsletter-signup__title {
    overflow-wrap: break-word;
    hyphens: auto;
  }
}
.shared-specs {
  background: var(--charcoal);
  padding: var(--space-9) 0 var(--space-10);
  position: relative;
}

.shared-specs::before {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: var(--chrome-top-soft);
  pointer-events: none;
}

.shared-specs__inner {
  position: relative;
  max-width: 720px;
  margin: 0 auto;
}

.shared-specs__head {
  text-align: center;
  margin-bottom: var(--space-7);
}

.shared-specs__head .eyebrow {
  margin-bottom: var(--space-5);
}

.shared-specs__title {
  font-family: var(--font-title);
  font-weight: 600;
  font-style: normal;
  font-size: var(--fs-title);
  line-height: 1.08;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  margin-bottom: var(--space-4-5);
}

.shared-specs__intro {
  font-family: var(--font-body);
  font-size: var(--fs-prose);
  line-height: 1.62;
  color: var(--chrome-warm);
  max-width: 58ch;
  margin: 0 auto;
}

.shared-specs__list {
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.3);
}

@media (max-width: 640px) {
  .shared-specs {
    padding: var(--space-8) 0;
  }
  .shared-specs__title {
    font-size: var(--fs-heading-lg);
  }
  .shared-specs__intro {
    font-size: var(--fs-small);
  }
  .character-hero__display,
  .chapter-head__title,
  .shared-specs__title,
  .proof-band__title,
  .character-browse__title,
  .bio-split__title,
  .newsletter-signup__title {
    overflow-wrap: break-word;
    hyphens: auto;
  }
}
.wc-block-grid.wc-block-grid.wc-block-grid {
  text-align: start;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-1-columns .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--grid-gap, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: none;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-1-columns .wc-block-grid__product {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  text-align: start;
  display: flex;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-2-columns .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--grid-gap, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: none;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-2-columns .wc-block-grid__product {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  text-align: start;
  display: flex;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-3-columns .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--grid-gap, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: none;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-3-columns .wc-block-grid__product {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  text-align: start;
  display: flex;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-4-columns .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--grid-gap, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: none;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-4-columns .wc-block-grid__product {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  text-align: start;
  display: flex;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-5-columns .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--grid-gap, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: none;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-5-columns .wc-block-grid__product {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  text-align: start;
  display: flex;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-6-columns .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: var(--grid-gap, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: none;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-6-columns .wc-block-grid__product {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  text-align: start;
  display: flex;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-7-columns .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: var(--grid-gap, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: none;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-7-columns .wc-block-grid__product {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  text-align: start;
  display: flex;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-8-columns .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: var(--grid-gap, var(--space-5));
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: none;
}

.wc-block-grid.wc-block-grid.wc-block-grid.has-8-columns .wc-block-grid__product {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  text-align: start;
  display: flex;
}

@media (max-width: 767px) {
  .wc-block-grid.wc-block-grid.wc-block-grid.has-3-columns .wc-block-grid__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-4-columns .wc-block-grid__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-5-columns .wc-block-grid__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-6-columns .wc-block-grid__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-7-columns .wc-block-grid__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-8-columns .wc-block-grid__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px) {
  .wc-block-grid.wc-block-grid.wc-block-grid.has-2-columns .wc-block-grid__products {
    grid-template-columns: 100%;
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-3-columns .wc-block-grid__products {
    grid-template-columns: 100%;
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-4-columns .wc-block-grid__products {
    grid-template-columns: 100%;
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-5-columns .wc-block-grid__products {
    grid-template-columns: 100%;
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-6-columns .wc-block-grid__products {
    grid-template-columns: 100%;
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-7-columns .wc-block-grid__products {
    grid-template-columns: 100%;
  }
  .wc-block-grid.wc-block-grid.wc-block-grid.has-8-columns .wc-block-grid__products {
    grid-template-columns: 100%;
  }
}
.wp-block-accordion {
  counter-reset: as-acc;
  margin: var(--space-5) 0 var(--space-6);
  background: var(--bg-plate);
  box-shadow: var(--chrome-top), var(--panel-lift);
}

.wp-block-accordion-item {
  counter-increment: as-acc;
  box-shadow: inset 0 -1px 0 rgba(54, 54, 54, 0.45);
}

.wp-block-accordion-item:last-child {
  box-shadow: none;
}

.wp-block-accordion-item.is-open {
  background: var(--bg-card-lift);
}

.wp-block-accordion-heading {
  margin: 0;
  font-size: inherit;
}

.wp-block-accordion-heading__toggle {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: var(--space-4);
  width: 100%;
  padding: var(--space-5) var(--space-6);
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background 200ms ease;
}

.wp-block-accordion-heading__toggle::before {
  content: counter(as-acc, decimal-leading-zero);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.2em;
  color: var(--ember);
}

.wp-block-accordion-heading__toggle:hover {
  background: rgba(36, 36, 36, 0.55);
}

.wp-block-accordion-heading__toggle-title {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--chrome-highlight);
}

.wp-block-accordion-heading__toggle-icon {
  position: relative;
  display: block;
  width: 1em;
  height: 1em;
  overflow: hidden;
  font-size: var(--fs-subheading);
  line-height: 1;
  color: transparent;
}

.wp-block-accordion-heading__toggle-icon::before {
  content: "+";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-family: var(--font-display);
  font-weight: 500;
  color: var(--ember);
  text-shadow: 0 0 12px rgba(255, 122, 46, 0.55);
}

.wp-block-accordion-heading__toggle[aria-expanded=true] .wp-block-accordion-heading__toggle-icon::before {
  content: "−";
  color: var(--ember-glow);
}

.wp-block-accordion-panel:not([inert]) {
  padding: 0 var(--space-6) var(--space-6);
}

.wp-block-accordion-panel .wp-block-paragraph {
  margin: 0;
  padding-top: var(--space-4);
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.35);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.wp-block-archives {
  max-width: 460px;
  margin: var(--space-5) 0 var(--space-6);
  padding: 0;
  list-style: none;
}

.wp-block-archives > li {
  box-shadow: inset 0 -1px 0 rgba(54, 54, 54, 0.4);
}

.wp-block-archives > li:last-child {
  box-shadow: none;
}

.wp-block-archives > li > a {
  display: flex;
  align-items: baseline;
  gap: var(--space-3);
  padding: var(--space-3) 0;
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-archives > li > a::after {
  content: "";
  flex: 1 1 auto;
  border-bottom: 1px dotted var(--leader-dotted);
  transform: translateY(-4px);
}

.wp-block-archives > li > a:hover {
  color: var(--ember);
}

div.wp-block-archives {
  padding: var(--space-4) 0;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  font-style: italic;
  color: var(--chrome-dim);
}

.wp-block-breadcrumbs {
  margin: var(--space-5) 0 var(--space-6);
  padding: var(--space-4) 0;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.85);
}

.wp-block-breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  padding: 0;
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  list-style: none;
}

.wp-block-breadcrumbs li {
  display: inline-flex;
  align-items: center;
  font-size: var(--fs-micro);
}

.wp-block-breadcrumbs li + li::before {
  content: var(--separator, "/");
  margin: 0 var(--space-3);
  color: var(--hull-edge);
}

.wp-block-breadcrumbs a {
  color: var(--chrome-dim);
}

.wp-block-breadcrumbs a:hover {
  color: var(--ember);
}

.wp-block-breadcrumbs [aria-current=page] {
  color: var(--chrome-warm);
}

:is(.wp-block-button__link, .wp-block-search__button, .wp-block-file__button).wp-element-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: var(--radius-interactive);
  font-family: var(--font-chrome);
  font-size: var(--fs-small);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: box-shadow 200ms ease, transform 200ms ease, background 200ms ease, color 200ms ease, border-color 200ms ease;
}

.wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
}

.wp-block-button__link,
.wp-element-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-4-5) var(--space-6-5);
  border: 0;
  border-radius: var(--radius-interactive);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-small);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--on-primary-fixed);
  background: linear-gradient(180deg, var(--ember-glow) 0%, var(--ember) 50%, var(--ember-deep) 100%);
  box-shadow: var(--ember-glow-sm);
  transition: box-shadow 200ms ease, transform 200ms ease, background 200ms ease, color 200ms ease;
}

.wp-block-button__link:hover,
.wp-element-button:hover {
  box-shadow: var(--ember-glow-md);
  transform: translateY(-1px);
}

.is-style-outline .wp-block-button__link {
  color: var(--ember);
  background: transparent;
  border: 1px solid rgba(255, 122, 46, 0.6);
  border-radius: var(--radius-interactive);
  box-shadow: none;
}

.is-style-outline .wp-block-button__link:hover {
  color: var(--ember-glow);
  background: rgba(255, 122, 46, 0.08);
  box-shadow: var(--ember-glow-sm);
  transform: none;
}

.wp-block-button.is-style-dark > .wp-block-button__link {
  background: var(--hull-panel-dark);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45), var(--chrome-top-soft);
  color: var(--ember-glow);
}

.wp-block-button.is-style-dark > .wp-block-button__link:hover {
  background: var(--hull-panel-lift);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.75), var(--ember-glow-sm);
  color: var(--chrome-highlight);
}

.wp-block-button.is-style-ghost-ember > .wp-block-button__link {
  background: transparent;
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
  color: var(--ember);
}

.wp-block-button.is-style-ghost-ember > .wp-block-button__link:hover {
  background: rgba(255, 122, 46, 0.08);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.7);
  color: var(--ember-glow);
}

.wp-block-categories {
  max-width: 520px;
  margin: var(--space-5) 0 var(--space-6);
  padding: var(--space-2) var(--space-5);
  background: var(--hull-panel-dark);
  box-shadow: var(--chrome-top-soft), var(--panel-lift);
  list-style: none;
}

.wp-block-categories .cat-item {
  list-style: none;
}

.wp-block-categories > .cat-item {
  box-shadow: inset 0 -1px 0 rgba(54, 54, 54, 0.4);
}

.wp-block-categories > .cat-item:last-child {
  box-shadow: none;
}

.wp-block-categories .cat-item > a {
  display: block;
  padding: var(--space-3) 0;
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.wp-block-categories .cat-item > a:hover {
  color: var(--ember);
}

.wp-block-categories ul.children {
  margin: 0 0 var(--space-3);
  padding: 0 0 0 var(--space-4);
  box-shadow: inset 1px 0 0 rgba(255, 122, 46, 0.22);
  list-style: none;
}

.wp-block-categories ul.children .cat-item > a {
  padding: var(--space-2) 0;
  font-family: var(--font-body);
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--chrome-dim);
}

.wp-block-categories ul.children .cat-item > a:hover {
  color: var(--ember-glow);
}

.wp-block-code {
  position: relative;
  max-width: 100%;
  min-width: 0;
  margin: var(--space-6) 0 var(--space-7);
  padding: var(--space-6) var(--space-6) var(--space-5);
  overflow-x: auto;
  background: var(--hull-panel-dark);
  border-left: 2px solid var(--ember);
  box-shadow: var(--chrome-top-soft), var(--panel-lift);
}

.wp-block-code::before {
  content: "CODE";
  position: absolute;
  top: -7px;
  left: var(--space-5);
  padding: 0 var(--space-3);
  background: var(--hull-panel-dark);
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  font-weight: 700;
  letter-spacing: 0.22em;
  color: var(--ember);
}

.wp-block-code code {
  font-family: var(--font-mono);
  font-size: var(--fs-small);
  line-height: 1.7;
  color: var(--chrome-warm);
  white-space: pre;
  tab-size: 2;
}

.wp-block-columns {
  --wp-columns-gap: var(--grid-gap, var(--space-7));
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: var(--wp-columns-gap);
  margin: var(--space-6) 0 var(--space-7);
}

.wp-block-column {
  flex: 1 1 0%;
  min-width: 0;
}

.wp-block-column > :last-child {
  margin-bottom: 0;
}

.wp-block-column:has(> :only-child) {
  display: flex;
  flex-direction: column;
}

.wp-block-column:has(> :only-child) > :only-child {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.wp-block-column:has(> :only-child) > :only-child > * {
  flex: 1 1 auto;
}

.wp-block-column + .wp-block-column {
  margin-left: calc(var(--wp-columns-gap) * -1);
  padding-left: var(--wp-columns-gap);
  box-shadow: inset 1px 0 0 rgba(54, 54, 54, 0.5);
}

.wp-block-column .wp-block-paragraph {
  max-width: none;
}

.wp-block-cover {
  position: relative;
  display: flex;
  align-items: center;
  margin: var(--space-6) 0 var(--space-7);
  padding: var(--space-8) var(--space-7);
  overflow: hidden;
  background: var(--carbon);
  box-shadow: var(--panel-lift);
}

.wp-block-cover::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 3;
  height: 1px;
  background: rgba(250, 250, 250, 0.3);
}

.wp-block-cover__image-background {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.82) contrast(1.1);
}

.wp-block-cover__background {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 1;
  background: radial-gradient(ellipse 50% 60% at 6% 100%, rgba(255, 122, 46, 0.2) 0%, transparent 62%), linear-gradient(180deg, rgba(6, 6, 6, 0.62) 0%, rgba(6, 6, 6, 0.72) 55%, rgba(6, 6, 6, 0.88) 100%);
}

.wp-block-cover__inner-container {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 0;
}

.wp-block-cover__inner-container > :last-child {
  margin-bottom: 0;
}

.wp-block-cover__inner-container .wp-block-heading {
  margin-top: 0;
  color: var(--chrome-highlight);
}

.wp-block-cover__inner-container .wp-block-paragraph {
  max-width: 46ch;
  color: var(--chrome-warm);
}

.wp-block-cover.is-style-category-tile {
  display: block;
  aspect-ratio: 3/4;
  min-height: 0;
  margin: 0;
  padding: 0;
  background: var(--hull-panel-dark);
  box-shadow: var(--plate-lift);
  cursor: pointer;
  transition: box-shadow 250ms ease, transform 250ms ease;
}

.wp-block-cover.is-style-category-tile:hover {
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
  transform: translateY(-3px);
}

.wp-block-cover.is-style-category-tile .wp-block-cover__background {
  background: linear-gradient(180deg, rgba(6, 6, 6, 0.2) 0%, rgba(6, 6, 6, 0.2) 48%, rgba(6, 6, 6, 0.92) 100%);
}

.wp-block-cover.is-style-category-tile::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 4;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(255, 122, 46, 0.75) 50%, transparent);
  box-shadow: 0 0 16px rgba(255, 122, 46, 0.55);
  opacity: 0;
  transition: opacity 250ms ease;
}

.wp-block-cover.is-style-category-tile:hover::after {
  opacity: 1;
}

.wp-block-cover.is-style-category-tile .wp-block-cover__inner-container {
  position: absolute;
  right: var(--space-5);
  bottom: var(--space-5);
  left: var(--space-5);
  width: auto;
}

.wp-block-cover.is-style-category-tile .wp-block-heading {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-heading-lg);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.wp-block-details {
  counter-increment: as-detail;
  margin: var(--space-4) 0;
  padding: var(--space-5) var(--space-6);
  background: var(--bg-plate);
  box-shadow: var(--plate-lift);
}

.wp-block-details > summary {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: baseline;
  gap: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--chrome-highlight);
  list-style: none;
  cursor: pointer;
}

.wp-block-details > summary::-webkit-details-marker {
  display: none;
}

.wp-block-details > summary::before {
  content: "Q." counter(as-detail, decimal-leading-zero);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.2em;
  color: var(--ember);
}

.wp-block-details > summary::after {
  content: "+";
  font-family: var(--font-display);
  font-size: var(--fs-subheading);
  font-weight: 500;
  line-height: 1;
  color: var(--ember);
  text-shadow: 0 0 12px rgba(255, 122, 46, 0.5);
}

.wp-block-details[open] {
  background: var(--bg-card-lift);
}

.wp-block-details[open] > summary::after {
  content: "−";
}

.wp-block-details > :not(summary) {
  max-width: 78ch;
  margin-top: var(--space-4);
  padding-top: var(--space-4);
  box-shadow: inset 0 1px 0 rgba(62, 62, 62, 0.35);
  font-size: var(--fs-small);
  color: var(--chrome-warm);
}

.wp-block-embed {
  position: relative;
  margin: var(--space-6) 0 var(--space-7);
  padding: var(--space-1);
  background: var(--hull-panel-dark);
  box-shadow: var(--chrome-top), var(--panel-lift);
}

.wp-block-embed::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 122, 46, 0.5) 50%, transparent);
  box-shadow: 0 0 16px rgba(255, 122, 46, 0.3);
}

.wp-block-embed.is-provider-youtube::before {
  content: "SIGNAL · YOUTUBE";
  position: absolute;
  top: -7px;
  left: var(--space-5);
  z-index: 3;
  padding: 0 var(--space-3);
  background: var(--hull-panel-dark);
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  font-weight: 700;
  letter-spacing: 0.22em;
  color: var(--ember);
}

.wp-block-embed__wrapper {
  position: relative;
  background: var(--carbon);
}

.wp-block-embed__wrapper iframe {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper {
  aspect-ratio: 16/9;
}

.wp-block-file {
  display: flex;
  align-items: center;
  gap: var(--space-5);
  margin: var(--space-5) 0 var(--space-6);
  padding: var(--space-4) var(--space-5);
  background: var(--bg-card);
  box-shadow: var(--chrome-top-soft), var(--panel-lift);
}

.wp-block-file > a:not(.wp-block-file__button) {
  flex: 1 1 auto;
  display: flex;
  align-items: baseline;
  gap: var(--space-3);
  min-width: 0;
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--chrome-warm);
  text-decoration: none;
  transition: color 180ms ease;
}

.wp-block-file > a:not(.wp-block-file__button):hover {
  color: var(--chrome-highlight);
}

.wp-block-file > a:not(.wp-block-file__button)::before {
  content: "";
  flex: none;
  width: 6px;
  height: 6px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.85);
  transform: translateY(-2px);
}

.wp-block-file > a:not(.wp-block-file__button)::after {
  content: "";
  flex: 1 1 auto;
  min-width: 24px;
  border-bottom: 1px dotted var(--leader-dotted);
  transform: translateY(-4px);
}

.wp-block-file__button.wp-element-button {
  flex: none;
  padding: var(--space-3) var(--space-5);
  border: 1px solid rgba(62, 62, 62, 0.65);
  background: transparent;
  color: var(--chrome-warm);
}

.wp-block-file__button.wp-element-button:hover {
  background: var(--bg-card-lift);
  box-shadow: var(--chrome-top-soft);
  color: var(--chrome-highlight);
}

.wp-block-gallery.has-nested-images {
  --wp--style--gallery-gap-default: 2px;
  --gallery-block--gutter-size: 2px;
  display: grid;
  gap: 2px;
  margin: var(--space-6) 0 var(--space-7);
  padding: 2px;
  background: var(--hull-panel-dark);
  box-shadow: var(--chrome-top), var(--panel-lift);
}

.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image), .wp-block-gallery.has-nested-images:is(.columns-3, .columns-4, .columns-5, .columns-6, .columns-7, .columns-8) figure.wp-block-image:not(#individual-image) {
  width: 100%;
}

.wp-block-gallery.has-nested-images figure.wp-block-image {
  margin: 0;
  overflow: hidden;
  background: var(--carbon);
  box-shadow: none;
  transition: box-shadow 220ms ease, transform 220ms ease;
}

.wp-block-gallery.has-nested-images figure.wp-block-image::before {
  display: none;
}

.wp-block-gallery.has-nested-images figure.wp-block-image img {
  height: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}

.wp-block-gallery.has-nested-images figure.wp-block-image:hover {
  z-index: 2;
  box-shadow: var(--ember-hot-rim);
  transform: translateY(-2px);
}

.wp-block-gallery.has-nested-images .wp-element-caption {
  padding: var(--space-3) var(--space-4) var(--space-4);
}

.wp-block-gallery.columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.wp-block-gallery.columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.wp-block-gallery.columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.wp-block-group {
  margin: 0 auto var(--space-5);
}

.wp-block-group__inner-container > :last-child {
  margin-bottom: 0;
}

.wp-block-group.woocommerce {
  margin-bottom: 0;
}

.wp-block-group.has-background {
  position: relative;
  margin: var(--space-6) auto var(--space-7);
  padding: var(--space-6) var(--space-6) var(--space-6) var(--space-7);
  border-left: 3px solid var(--ember);
  box-shadow: var(--panel-lift);
}

.wp-block-group.has-background::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 1px;
  background: rgba(250, 250, 250, 0.3);
}

.wp-block-group.has-background::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 100%;
  box-shadow: 0 0 24px rgba(255, 122, 46, 0.4);
  pointer-events: none;
}

.wp-block-group.has-background > .wp-block-group__inner-container > :first-child {
  margin-top: 0;
}

.wp-block-heading {
  margin: 0 0 var(--title-mb, 0);
  font-family: var(--font-display);
}

.is-style-ground-chrome-warm .wp-block-heading.is-style-section-title,
.is-style-ground-chrome-highlight .wp-block-heading.is-style-section-title,
.is-style-ground-ember-glow .wp-block-heading.is-style-section-title {
  color: inherit;
}

:is(figure.wp-block-image, div.wp-block-image > figure) {
  position: relative;
  margin: var(--space-6) 0 var(--space-7);
  background: var(--hull-panel-dark);
  box-shadow: var(--panel-lift);
}

:is(figure.wp-block-image, div.wp-block-image > figure)::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 2;
  height: 1px;
  background: rgba(250, 250, 250, 0.28);
}

div.wp-block-image {
  margin: 0;
}

:where(.wp-block-image) img {
  display: block;
  width: 100%;
  height: auto;
  filter: brightness(0.96) contrast(1.04);
}

:where(.wp-block-image) figcaption,
:where(.wp-block-image) .wp-element-caption {
  margin: 0;
  padding: var(--space-4) var(--space-5) var(--space-5);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--chrome-dim);
  text-align: left;
}

.wp-block-image.aligncenter {
  text-align: center;
}

.wp-block-image figure.aligncenter {
  margin-right: auto;
  margin-left: auto;
}

.wp-block-image.alignwide {
  max-width: min(1180px, 100%);
}

.wp-block-image.alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}

.wp-block-image.alignfull::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 122, 46, 0.55) 50%, transparent);
  box-shadow: 0 0 20px rgba(255, 122, 46, 0.35);
}

:is(figure.wp-block-image, div.wp-block-image > figure).is-style-showcase::before {
  background: linear-gradient(90deg, transparent, rgba(250, 250, 250, 0.35) 50%, transparent);
}

:is(figure.wp-block-image, div.wp-block-image > figure).is-style-showcase::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: var(--space-9);
  left: 0;
  z-index: 2;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 122, 46, 0.55) 50%, transparent);
  box-shadow: 0 0 20px rgba(255, 122, 46, 0.35);
}

:is(figure.wp-block-image, div.wp-block-image > figure).is-style-showcase img {
  aspect-ratio: 16/9;
  object-fit: cover;
  filter: brightness(0.86) contrast(1.08);
}

:is(figure.wp-block-image, div.wp-block-image > figure).is-style-image-tile {
  box-shadow: var(--plate-lift);
  transition: box-shadow 250ms ease, transform 250ms ease;
}

:is(figure.wp-block-image, div.wp-block-image > figure).is-style-image-tile:hover {
  box-shadow: var(--ember-hot-rim), var(--panel-lift-hover);
  transform: translateY(-3px);
}

:is(figure.wp-block-image, div.wp-block-image > figure).is-style-image-tile img {
  aspect-ratio: 1/1;
  object-fit: cover;
  filter: brightness(0.94) contrast(1.05);
}

:is(figure.wp-block-image, div.wp-block-image > figure).is-style-image-tile .wp-element-caption {
  padding: var(--space-3) var(--space-4) var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-latest-posts {
  display: grid;
  gap: 0;
  margin: var(--space-5) 0 var(--space-6);
  padding: 0;
  list-style: none;
}

.wp-block-latest-posts > li {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-5) 0;
  box-shadow: inset 0 -1px 0 rgba(54, 54, 54, 0.4);
}

.wp-block-latest-posts > li:last-child {
  box-shadow: none;
}

.wp-block-latest-posts > li:hover .wp-block-latest-posts__post-title {
  color: var(--ember-glow);
}

.wp-block-latest-posts__post-date {
  order: -1;
  font-family: var(--font-chrome);
  font-size: var(--fs-nano);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-latest-posts__post-title {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.02em;
  color: var(--chrome-highlight);
}

.wp-block-latest-posts__post-excerpt {
  max-width: 70ch;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: 1.55;
  color: var(--chrome-dim);
}

:where(ul, ol).wp-block-list {
  list-style-position: outside;
}

:where(ul, ol).wp-block-list li::marker {
  color: var(--ember);
}

:where(ul, ol).wp-block-list ul {
  list-style-type: circle;
}

:where(ul, ol).wp-block-list ul ul {
  list-style-type: square;
}

ul.wp-block-list {
  list-style-type: disc;
}

ol.wp-block-list {
  list-style-type: decimal;
}

.wp-block-math {
  max-width: 100%;
  min-width: 0;
  margin: var(--space-6) 0 var(--space-7);
  padding: var(--space-6);
  overflow-x: auto;
  background: var(--hull-panel-dark);
  box-shadow: var(--chrome-top-soft), var(--panel-lift);
  text-align: center;
}

.wp-block-math math {
  font-size: var(--fs-heading);
  color: var(--chrome-warm);
}

.wp-block-math mi {
  color: var(--chrome-highlight);
}

.wp-block-math mn {
  font-variant-numeric: tabular-nums;
  color: var(--ember-glow);
}

.wp-block-math mo {
  color: var(--ember);
}

.wp-block-media-text {
  display: grid;
  grid-template-columns: 5fr 7fr;
  align-items: stretch;
  margin: var(--space-6) 0 var(--space-7);
  background: var(--bg-card);
  box-shadow: var(--chrome-top), var(--panel-lift);
}

.wp-block-media-text__media {
  position: relative;
  min-height: 340px;
  margin: 0;
  overflow: hidden;
  background: var(--hull-panel-dark);
}

.wp-block-media-text__media img,
.wp-block-media-text__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.9) contrast(1.06);
}

.wp-block-media-text__media::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  width: 1px;
  background: linear-gradient(180deg, transparent, var(--ember) 25%, var(--ember-glow) 50%, var(--ember) 75%, transparent);
  box-shadow: 0 0 18px rgba(255, 122, 46, 0.45);
}

.wp-block-media-text > .wp-block-media-text__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--space-7);
  background: var(--bg-card);
}

.wp-block-media-text > .wp-block-media-text__content > :last-child {
  margin-bottom: 0;
}

.wp-block-media-text > .wp-block-media-text__content .wp-block-paragraph {
  max-width: 52ch;
}

.wp-block-media-text.has-media-on-the-right {
  grid-template-columns: 7fr 5fr;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
  grid-row: 1;
  grid-column: 2;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media::after {
  right: auto;
  left: 0;
}

.wp-block-media-text.has-media-on-the-right > .wp-block-media-text__content {
  grid-row: 1;
  grid-column: 1;
}

@media (max-width: 700px) {
  .wp-block-media-text__media {
    min-height: 220px;
  }
  .wp-block-media-text > .wp-block-media-text__content {
    padding: var(--space-5) var(--space-5) var(--space-6);
  }
}
.wp-block-page-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 var(--space-7);
  margin: var(--space-5) 0 var(--space-6);
  padding: 0;
  list-style: none;
}

@media (max-width: 700px) {
  .wp-block-page-list {
    grid-template-columns: 1fr;
  }
}
.wp-block-pages-list__item {
  box-shadow: inset 0 -1px 0 rgba(54, 54, 54, 0.35);
}

.wp-block-pages-list__item.current-menu-item .wp-block-pages-list__item__link {
  color: var(--chrome-highlight);
}

.wp-block-pages-list__item.current-menu-item .wp-block-pages-list__item__link::before {
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.85);
}

.wp-block-pages-list__item__link {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) 0;
  font-family: var(--font-chrome);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-pages-list__item__link::before {
  content: "";
  flex: none;
  width: 5px;
  height: 5px;
  background: var(--hull-edge);
  transition: background 180ms ease, box-shadow 180ms ease;
}

.wp-block-pages-list__item__link:hover {
  color: var(--chrome-warm);
}

.wp-block-pages-list__item__link:hover::before {
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.85);
}

.wp-block-paragraph.is-style-eyebrow {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  max-width: none;
  margin-bottom: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ember);
}

.wp-block-paragraph.is-style-eyebrow::before {
  content: "";
  flex: none;
  width: 46px;
  height: 1px;
  background: var(--ember);
  opacity: 0.7;
}

.wp-block-paragraph.is-style-lead {
  max-width: 58ch;
  margin-bottom: var(--space-6);
  font-family: var(--font-body);
  font-size: var(--fs-subheading);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.005em;
  color: var(--chrome-warm);
}

.wp-block-paragraph.is-style-price {
  margin-bottom: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-heading);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
  letter-spacing: 0.02em;
  color: var(--ember);
}

.wp-block-paragraph.is-style-meta-name {
  display: flex;
  align-items: baseline;
  gap: var(--space-3);
  max-width: 46ch;
  margin-bottom: var(--space-1);
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-paragraph.is-style-meta-name::after {
  content: "";
  flex: 1 1 auto;
  min-width: 20px;
  border-bottom: 1px dotted var(--leader-dotted);
  transform: translateY(-4px);
}

.wp-block-paragraph.is-style-meta-value {
  margin-bottom: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-base);
  font-weight: 500;
  letter-spacing: 0.03em;
  color: var(--chrome-warm);
}

.wp-block-paragraph.is-style-mono-date {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  font-family: var(--font-mono);
  font-size: var(--fs-small);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-paragraph.is-style-mono-date::before {
  content: "";
  flex: none;
  width: 5px;
  height: 5px;
  background: var(--ember);
  box-shadow: 0 0 8px rgba(255, 122, 46, 0.85);
}

.wp-block-preformatted {
  max-width: 100%;
  min-width: 0;
  margin: var(--space-6) 0 var(--space-7);
  padding: var(--space-5) var(--space-6);
  overflow-x: auto;
  background: var(--bg-card-lift);
  border-left: 2px solid var(--hull-edge);
  box-shadow: var(--chrome-top-soft), var(--panel-lift);
  font-family: var(--font-mono);
  font-size: var(--fs-small);
  font-variant-numeric: tabular-nums;
  line-height: 1.85;
  letter-spacing: 0.02em;
  color: var(--chrome-warm);
  white-space: pre-wrap;
  tab-size: 4;
}

:where(.wp-block-pullquote) {
  margin: 2.5em 0;
  padding: var(--space-6) 0;
  border-top: 1px solid var(--ember);
  border-bottom: 1px solid var(--ember);
  text-align: center;
}

:where(.wp-block-pullquote) blockquote {
  margin: 0;
  padding: 0;
  border: 0;
}

:where(.wp-block-pullquote) p {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: var(--fs-heading);
  line-height: 1.3;
  font-style: italic;
  color: var(--chrome-highlight);
}

:where(.wp-block-pullquote) cite {
  display: block;
  margin-top: var(--space-4);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-style: normal;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-quote {
  margin: 0;
  padding: var(--space-2) 0 var(--space-2) var(--space-5);
  border-left: 2px solid var(--ember);
}

.wp-block-quote p {
  font-size: var(--fs-large);
  font-style: italic;
  line-height: 1.55;
  color: var(--chrome-highlight);
  margin-bottom: 0.5em;
}

.wp-block-quote p:last-of-type {
  margin-bottom: 0;
}

.wp-block-quote cite {
  display: block;
  margin-top: var(--space-3);
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-style: normal;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-quote cite::before {
  content: "—";
  margin-right: var(--space-2);
  color: var(--ember);
}

.wp-block-rss {
  margin: var(--space-5) 0 var(--space-6);
  padding: 0;
  list-style: none;
}

.wp-block-rss__item {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: baseline;
  gap: var(--space-5);
  padding: var(--space-4) 0;
  box-shadow: inset 0 -1px 0 rgba(54, 54, 54, 0.4);
}

.wp-block-rss__item:last-child {
  box-shadow: none;
}

.wp-block-rss__item:hover .wp-block-rss__item-title a {
  color: var(--ember-glow);
}

.wp-block-rss__item-title a {
  font-family: var(--font-display);
  font-size: var(--fs-base);
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.02em;
  color: var(--chrome-warm);
}

.wp-block-rss__item-publish-date {
  font-family: var(--font-mono);
  font-size: var(--fs-nano);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  white-space: nowrap;
}

.wp-block-search {
  max-width: 560px;
  margin: var(--space-5) 0 var(--space-6);
}

.wp-block-search__label {
  display: block;
  margin-bottom: var(--space-2);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-warm);
}

.wp-block-search__inside-wrapper {
  display: flex;
  align-items: stretch;
  gap: 0;
}

.wp-block-search__input {
  flex: 1 1 auto;
  min-width: 0;
  padding: var(--space-4) 0;
  border: 0;
  border-bottom: 1px solid var(--hull-panel-lift);
  border-radius: 0;
  background: transparent;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--chrome-warm);
  transition: border-color 200ms ease, box-shadow 200ms ease;
}

.wp-block-search__input::placeholder {
  color: rgba(184, 176, 166, 0.6);
}

.wp-block-search__input:focus {
  border-bottom-color: var(--ember);
  outline: none;
  box-shadow: 0 1px 0 0 var(--ember), var(--ember-glow-sm);
}

.wp-block-search__button.wp-element-button {
  flex: none;
  padding: var(--space-4) var(--space-6);
  border: 1px solid rgba(62, 62, 62, 0.65);
  border-bottom-color: var(--hull-panel-lift);
  background: transparent;
  font-size: var(--fs-micro);
  font-weight: 500;
  letter-spacing: 0.16em;
  color: var(--chrome-warm);
}

.wp-block-search__button.wp-element-button:hover {
  background: var(--bg-card-lift);
  box-shadow: var(--chrome-top-soft);
  color: var(--chrome-highlight);
}

.wp-block-separator {
  margin-inline: auto;
  border: 0;
  border-top: 1px solid rgba(255, 122, 46, 0.35);
}

.wp-block-separator.is-style-dots {
  background: none;
  border: 0;
  height: auto;
  text-align: center;
}

.wp-block-separator.is-style-dots::before {
  content: "•••";
  color: var(--ember);
  font-size: var(--fs-large);
  letter-spacing: 0.6em;
}

.wp-block-separator.is-style-wide {
  position: relative;
  width: 100%;
  height: 1px;
  margin: var(--space-7) 0 var(--space-5);
  border: 0;
  background: var(--hairline-strong);
  box-shadow: none;
}

.wp-block-separator.is-style-wide::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 40px;
  height: 1px;
  background: var(--ember);
  box-shadow: 0 0 10px rgba(255, 122, 46, 0.7);
}

.wp-block-social-links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin: var(--space-5) 0 var(--space-6);
  padding: 0;
  list-style: none;
}

.wp-social-link {
  list-style: none;
}

.wp-block-social-link-anchor {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  background: var(--bg-card-lift);
  box-shadow: var(--chrome-top-soft), var(--panel-lift);
  color: var(--chrome-dim);
  transition: color 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}

.wp-block-social-link-anchor svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}

.wp-block-social-link-anchor:hover {
  box-shadow: var(--ember-hot-rim);
  color: var(--ember-glow);
  transform: translateY(-2px);
}

.wp-block-table {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: var(--space-6) 0 var(--space-7);
  overflow-x: auto;
  background: var(--bg-card);
  box-shadow: var(--chrome-top), var(--panel-lift);
}

.wp-block-table table {
  width: 100%;
  min-width: max-content;
  border-collapse: collapse;
  font-family: var(--font-body);
}

.wp-block-table th {
  border: 0;
  padding: var(--space-4) var(--space-5);
  box-shadow: inset 0 -1px 0 var(--ember-hairline);
  font-family: var(--font-chrome);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-align: left;
  text-transform: uppercase;
  color: var(--ember);
}

.wp-block-table td {
  border: 0;
  padding: var(--space-4) var(--space-5);
  box-shadow: inset 0 -1px 0 rgba(54, 54, 54, 0.35);
  font-size: var(--fs-small);
  font-variant-numeric: tabular-nums;
  color: var(--chrome-warm);
}

.wp-block-table td:first-child {
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  white-space: nowrap;
}

.wp-block-table td:not(:first-child) {
  font-family: var(--font-display);
  font-weight: 500;
  letter-spacing: 0.03em;
  color: var(--chrome-warm);
}

.wp-block-table tbody tr:last-child td {
  box-shadow: none;
}

.wp-block-table tbody tr:hover td {
  background: rgba(36, 36, 36, 0.5);
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background: rgba(250, 250, 250, 0.02);
}

.wp-block-tag-cloud {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  max-width: none;
  margin: var(--space-5) 0 var(--space-6);
}

.wp-block-tag-cloud .tag-cloud-link {
  display: inline-block;
  padding: 0.5em 0.85em;
  border: 1px solid rgba(255, 122, 46, 0.22);
  background: var(--bg-plate);
  font-family: var(--font-chrome);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.wp-block-tag-cloud .tag-cloud-link:hover {
  border-color: transparent;
  background: linear-gradient(180deg, var(--ember-glow), var(--ember) 60%, var(--ember-deep));
  box-shadow: var(--ember-glow-sm);
  color: var(--on-primary-fixed);
}

.wp-block-verse {
  max-width: 46ch;
  margin: var(--space-7) 0;
  padding: var(--space-2) 0 var(--space-2) var(--space-6);
  box-shadow: inset 2px 0 0 rgba(255, 122, 46, 0.28);
  font-family: var(--font-body);
  font-size: var(--fs-large);
  font-style: italic;
  font-weight: 400;
  line-height: 1.75;
  color: var(--chrome-warm);
  white-space: pre-wrap;
}

:root:root {
  --wp--preset--font-size--micro: var(--fs-micro);
  --wp--preset--font-size--eyebrow: var(--fs-eyebrow);
  --wp--preset--font-size--small: var(--fs-small);
  --wp--preset--font-size--body: var(--fs-base);
  --wp--preset--font-size--body-lg: var(--fs-large);
  --wp--preset--font-size--prose: var(--fs-prose);
  --wp--preset--font-size--subheading: var(--fs-subheading);
  --wp--preset--font-size--heading: var(--fs-heading);
  --wp--preset--font-size--heading-lg: var(--fs-heading-lg);
  --wp--preset--font-size--title: var(--fs-title);
  --wp--preset--font-size--title-lg: var(--fs-title-lg);
  --wp--preset--font-size--section: var(--fs-section);
  --wp--preset--font-size--hero: var(--fs-hero);
  --wp--preset--font-size--display: var(--fs-display);
  --wp--preset--font-size--medium: var(--fs-large);
  --wp--preset--font-size--large: var(--fs-heading);
  --wp--preset--font-size--x-large: var(--fs-title);
}

.has-micro-font-size,
.has-eyebrow-font-size,
.has-small-font-size,
.has-body-font-size {
  line-height: 1.55;
}

.has-body-lg-font-size,
.has-subheading-font-size,
.has-medium-font-size {
  line-height: 1.35;
}

.has-heading-font-size,
.has-large-font-size {
  line-height: 1.2;
}

.has-title-font-size,
.has-section-font-size,
.has-x-large-font-size {
  line-height: 1.15;
}

.has-hero-font-size,
.has-display-font-size {
  line-height: 1.05;
}

:is(.wp-block-categories,
.wp-block-archives,
.wp-block-page-list,
.wp-block-rss,
.wp-block-latest-posts,
.wp-block-tag-cloud,
.wp-block-breadcrumbs) a {
  border-bottom: 0;
  text-decoration: none;
  transition: color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

/*------------------------------------*\
	THIRD PARTY
	Brand delta on markup this theme does not author — WooCommerce and
	plugin output. The global silo styles these structurally; the colour
	and surface belong here. Loads last so it wins on source order against
	plugin sheets that enqueue after the theme.
\*------------------------------------*/
.affwp-form {
  max-width: 640px;
  margin: 0 0 var(--space-8);
}

.affwp-form fieldset {
  min-width: 0;
}

.affwp-form p {
  margin: 0 0 var(--space-5);
}

.affwp-form p:last-child {
  margin-bottom: 0;
}

.affwp-form label {
  display: block;
  margin-bottom: var(--space-2);
}

.affwp-form input[type=text],
.affwp-form input[type=email],
.affwp-form input[type=password],
.affwp-form input[type=url] {
  width: 100%;
}

.affwp-form textarea {
  width: 100%;
}

.affwp-form input[type=submit] {
  cursor: pointer;
}

.affwp-form .affwp-user-remember,
.affwp-form .affwp-tos {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: 0;
  font-family: var(--font-body);
  font-size: var(--fs-base);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}

.affwp-form .affwp-lost-password {
  font-size: var(--fs-small);
}

.affwp-errors,
.affwp-notice {
  max-width: 640px;
  margin: 0 0 var(--space-5);
  border: 1px solid var(--ember);
  border-radius: 0;
  background: var(--bg-card);
  color: var(--chrome-warm);
}

.gform_validation_container {
  display: none !important;
}

.gfield_visibility_hidden {
  position: absolute;
  inset-inline-start: -9999px;
  visibility: hidden;
}

.gform_wrapper .gform-body {
  margin: 0 0 var(--space-6);
  padding: var(--space-6-5);
  border: 1px solid var(--hull-edge);
  background: var(--bg-card);
  box-shadow: var(--panel-lift);
}

@media (max-width: 640px) {
  .gform_wrapper .gform-body {
    padding: var(--space-6) var(--space-4-5);
  }
}
.gform_wrapper .gform_fields {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: var(--space-4-5) var(--space-5);
}

@media (max-width: 640px) {
  .gform_wrapper .gform_fields {
    display: flex;
    flex-direction: column;
  }
}
.gform_wrapper .gfield {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  grid-column: span 12;
}

.gform_wrapper .gfield--width-twelfth {
  grid-column: span 1;
}

.gform_wrapper .gfield--width-sixth {
  grid-column: span 2;
}

.gform_wrapper .gfield--width-quarter {
  grid-column: span 3;
}

.gform_wrapper .gfield--width-third {
  grid-column: span 4;
}

.gform_wrapper .gfield--width-five-twelfths {
  grid-column: span 5;
}

.gform_wrapper .gfield--width-half {
  grid-column: span 6;
}

.gform_wrapper .gfield--width-seven-twelfths {
  grid-column: span 7;
}

.gform_wrapper .gfield--width-two-thirds {
  grid-column: span 8;
}

.gform_wrapper .gfield--width-three-quarter {
  grid-column: span 9;
}

.gform_wrapper .gfield--width-five-sixths {
  grid-column: span 10;
}

.gform_wrapper .gfield--width-eleven-twelfths {
  grid-column: span 11;
}

.gform_wrapper .gfield--width-full {
  grid-column: span 12;
}

.gform_wrapper .gfield_label {
  display: block;
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--chrome-dim);
}

.gform_wrapper .gfield_required_text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.gform_wrapper .gfield_required:not(.gfield_required_text)::after {
  content: "*";
  margin-left: var(--space-1);
  font-size: var(--fs-nano);
  vertical-align: super;
  color: var(--ember);
}

.gform_wrapper .ginput_container {
  margin: 0;
}

.gform_wrapper input[type=text],
.gform_wrapper input[type=email],
.gform_wrapper input[type=tel],
.gform_wrapper input[type=url],
.gform_wrapper input[type=number],
.gform_wrapper select,
.gform_wrapper textarea {
  width: 100%;
  padding: var(--space-3) var(--space-1);
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 0;
  color: var(--chrome-highlight);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  box-shadow: none;
  transition: border-color 0.15s, box-shadow 0.15s;
}

.gform_wrapper input[type=text]:focus,
.gform_wrapper input[type=email]:focus,
.gform_wrapper input[type=tel]:focus,
.gform_wrapper input[type=url]:focus,
.gform_wrapper input[type=number]:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
  outline: none;
  border-bottom-color: var(--ember);
  box-shadow: 0 4px 10px -6px rgba(255, 122, 46, 0.6);
}

.gform_wrapper input[type=text]::placeholder,
.gform_wrapper input[type=email]::placeholder,
.gform_wrapper input[type=tel]::placeholder,
.gform_wrapper input[type=url]::placeholder,
.gform_wrapper input[type=number]::placeholder,
.gform_wrapper select::placeholder,
.gform_wrapper textarea::placeholder {
  color: rgba(184, 176, 166, 0.4);
}

.gform_wrapper textarea {
  display: block;
  min-height: 88px;
  padding: var(--space-3) var(--space-4);
  background: var(--bg-input);
  border: 1px solid var(--hairline);
  border-bottom: 1px solid var(--hull-edge);
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.4);
  resize: vertical;
}

.gform_wrapper textarea:focus {
  border-color: var(--ember);
  border-bottom-color: var(--ember);
  background: var(--bg-input-focus);
  box-shadow: var(--ember-focus);
}

@supports not (appearance: base-select) {
  .gform_wrapper select {
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, var(--ember) 50%), linear-gradient(-45deg, transparent 50%, var(--ember) 50%);
    background-position: calc(100% - 20px) 20px, calc(100% - 14px) 20px;
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    padding-right: var(--space-6-5);
  }
}
.gform_wrapper input[type=file] {
  display: block;
  width: 100%;
  padding: var(--space-3) var(--space-4);
  background: var(--bg-input);
  border: 1px dashed var(--hairline);
  border-radius: 0;
  color: var(--chrome-warm);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  cursor: pointer;
}

.gform_wrapper input[type=file]:focus-visible {
  outline: none;
  border: 1px solid var(--ember);
  box-shadow: var(--ember-focus);
}

.gform_wrapper input[type=file]::file-selector-button {
  margin-right: var(--space-4);
  padding: var(--space-2) var(--space-4);
  background: rgba(255, 122, 46, 0.1);
  border: 1px solid var(--ember);
  border-radius: 0;
  font-family: var(--font-display);
  font-size: var(--fs-nano);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--chrome-highlight);
  cursor: pointer;
  transition: background 160ms ease, color 160ms ease;
}

.gform_wrapper input[type=file]:hover::file-selector-button {
  background: rgba(255, 122, 46, 0.18);
  color: var(--ember);
}

.gform_wrapper .gfield_description {
  padding: 0;
  margin: 0;
  font-size: var(--fs-eyebrow);
  line-height: 1.4;
  color: var(--chrome-dim);
}

.gform_wrapper .gform_fileupload_rules {
  display: block;
  margin: var(--space-2) 0 0;
}

.gform_wrapper .ginput_counter {
  margin: var(--space-2) 0 0;
  font-family: var(--font-display);
  font-size: var(--fs-micro);
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  text-align: right;
}

.gform_wrapper .gsection {
  margin: 0;
  padding: 0 0 var(--space-1);
  border-bottom: 1px solid var(--hull-edge);
}

.gform_wrapper .gsection_title {
  margin: 0 0 var(--space-3);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--ember);
}

.gform_wrapper .gform_footer {
  margin: var(--space-6) 0 0;
  padding: 0;
}

.gform_wrapper .gform_validation_errors {
  margin: 0 0 var(--space-5);
  padding: var(--space-4);
  background: rgba(255, 122, 46, 0.08);
  border: 0;
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
  border-radius: 0;
  font-family: var(--font-body);
  font-size: var(--fs-small);
  color: var(--chrome-highlight);
}

.gform_wrapper .gform_validation_errors h2 {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--fs-small);
  letter-spacing: 0.08em;
  color: var(--chrome-highlight);
}

.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message {
  margin: var(--space-1) 0 0;
  padding: 0;
  background: none;
  border: 0;
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  color: var(--ember);
}

.gform_wrapper .gfield_error input[type=text],
.gform_wrapper .gfield_error input[type=email],
.gform_wrapper .gfield_error select,
.gform_wrapper .gfield_error textarea {
  border-bottom-color: var(--ember);
}

.gform_wrapper .gform_confirmation_message {
  padding: var(--space-4-5);
  background: rgba(255, 122, 46, 0.1);
  box-shadow: inset 0 0 0 1px rgba(255, 122, 46, 0.45);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--chrome-highlight);
}

.gform_wrapper .gform_ajax_spinner {
  width: 24px;
  height: 24px;
  margin-left: var(--space-4);
  vertical-align: middle;
  content: "";
  border: 2px solid rgba(255, 122, 46, 0.2);
  border-top-color: var(--ember);
  border-radius: 50%;
  animation: artsabers-spin 900ms linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .gform_wrapper .gform_ajax_spinner {
    animation: none;
  }
}
.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
  gap: var(--space-4);
  margin: 0 0 var(--space-5);
  padding: var(--space-4) var(--space-4-5);
  background: var(--hull-panel);
  border-left: 2px solid var(--ember);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: 1.5;
  color: var(--chrome-warm);
}

.woocommerce-info .button,
.woocommerce-message .button,
.woocommerce-error .button {
  order: 1;
  flex-shrink: 0;
  margin-left: auto;
}

.woocommerce-info a:not(.button),
.woocommerce-message a:not(.button),
.woocommerce-error a:not(.button) {
  color: var(--ember);
}

.woocommerce-info li,
.woocommerce-message li,
.woocommerce-error li {
  list-style: none;
}

.woocommerce-message {
  border-left-color: var(--ember-glow);
}

.woocommerce-error {
  border-left-color: var(--forge-red, #E63929);
  background: linear-gradient(180deg, rgba(230, 57, 41, 0.08) 0%, rgba(230, 57, 41, 0.03) 100%), var(--hull-panel);
}

.woocommerce-NoticeGroup {
  width: 100%;
  max-width: var(--site-max-width);
  margin-top: var(--space-6);
  margin-right: auto;
  margin-bottom: var(--space-6);
  margin-left: auto;
  padding-right: var(--gutter-small);
  padding-left: var(--gutter-small);
}

.woocommerce-NoticeGroup .woocommerce-error {
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  max-width: none;
  margin-bottom: 0;
  padding: var(--space-5) var(--space-6);
  border: 1px solid var(--forge-red);
  border-left-width: 3px;
  box-shadow: var(--panel-lift);
  font-size: var(--fs-base);
}

.woocommerce-NoticeGroup .woocommerce-error a:not(.button) {
  color: var(--chrome-warm);
  text-decoration: none;
}

.woocommerce-NoticeGroup .woocommerce-error a:not(.button):hover, .woocommerce-NoticeGroup .woocommerce-error a:not(.button):focus-visible {
  color: var(--chrome-highlight);
  text-decoration: underline;
}

.woocommerce-NoticeGroup .woocommerce-error strong {
  color: var(--chrome-highlight);
}

.checkout-inline-error-message {
  margin-top: var(--space-2);
  margin-bottom: 0;
  font-size: var(--fs-small);
  line-height: 1.4;
  color: var(--forge-red);
}

/*------------------------------------*\
	LAYOUTS
	Brand chrome (parent-chrome delta on framework's structural chrome) +
	section-scope compositions from the walk.
\*------------------------------------*/
.site-head {
  background-color: var(--carbon);
  color: var(--chrome-warm);
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.35), 0 8px 24px -8px rgba(255, 122, 46, 0.25);
}

.site-head__alerts {
  background-color: var(--charcoal-warm);
  color: var(--chrome-warm);
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  box-shadow: inset 0 -1px 0 rgba(255, 122, 46, 0.35);
}

.site-head__main {
  background-color: var(--carbon);
  color: var(--chrome-warm);
}

.site-head__main .icon {
  fill: var(--chrome-warm);
}

.site-head__main .site-nav__burger {
  color: var(--chrome-warm);
}

.site-head__main .site-nav__burger:hover {
  color: var(--ember);
}

.site-head__main .site-nav__burger:hover .icon {
  fill: var(--ember);
}

.site-head__actions > * {
  transition: color 0.2s ease;
}

.site-head__actions > *:hover {
  color: var(--ember);
}

.site-head__actions > *:hover .icon {
  fill: var(--ember);
}

.site-head__actions__basket__count {
  background-color: var(--carbon);
  color: var(--ember);
  font-family: var(--font-display);
  font-weight: 600;
}

@media screen and (max-width: 1439px) {
  .site-nav {
    column-gap: var(--space-4);
  }
}
@media screen and (max-width: 1439px) {
  .site-nav__menu {
    column-gap: clamp(12px, 10vw - 108px, 25px);
  }
}
@media screen and (max-width: 1199px) {
  .site-nav__menu {
    column-gap: var(--space-3);
  }
}
.site-nav__menu__item, .site-nav__menu__item:not([class]) {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  transition: color 0.2s ease;
}

@media screen and (max-width: 1439px) {
  .site-nav__menu__item, .site-nav__menu__item:not([class]) {
    letter-spacing: 0.07em;
  }
}
@media screen and (max-width: 1199px) {
  .site-nav__menu__item, .site-nav__menu__item:not([class]) {
    font-size: var(--fs-eyebrow);
    letter-spacing: 0.06em;
  }
}
.site-nav__menu__item:hover, .site-nav__menu__item.is-active, .site-nav__menu__item[aria-current=page], .site-nav__menu__item:not([class]):hover, .site-nav__menu__item:not([class]).is-active, .site-nav__menu__item:not([class])[aria-current=page] {
  color: var(--ember);
}

.site-nav--dark .site-nav__menu__item {
  color: var(--chrome-warm);
}

.desktop-nav {
  color: var(--chrome-warm);
  /*
   * THE GROUND GOES ON THE PSEUDO-ELEMENTS, NOT ON THIS ELEMENT.
   *
   * `.desktop-nav` is a positioning container — the global sets it
   * `position: absolute; height: 100%; background: transparent` deliberately,
   * and hangs the visible surface on `::after`, which also carries the
   * `desktop-nav-slide-in` animation. `::before` extends 200% to the left so
   * the panel reaches the viewport edge.
   *
   * Painting the container instead put an opaque carbon block the full height
   * of the DOCUMENT — measured at 11,927px — over the page: no animation,
   * because that lives on `::after`; not reaching the edge, because that is
   * `::before`'s job. Nerdworks has always coloured the pseudo-elements, which
   * is why the same shared component looks right there (2026-09-09).
   */
}

.desktop-nav::after, .desktop-nav::before {
  background-color: var(--carbon);
}

.desktop-nav::after {
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6);
}

.desktop-nav::backdrop {
  background-color: rgba(0, 0, 0, 0.65);
}

.desktop-nav .site-nav__close .icon {
  fill: var(--chrome-warm);
}

.desktop-nav__menu__item {
  /*
   * The submenu chevron. Inline SVG takes `fill`, and unset it inherits
   * black — on carbon that is a 6/255 contrast, which is why these two
   * marks read as faint smudges rather than as affordances.
   *
   * Found by sweeping every icon in the nav after the same fault turned up
   * three separate times as a "missing icon" report: the desktop close
   * control, the mobile list icons, and the mobile back arrow. These two
   * were the only ones left, and nobody had reported them because a
   * chevron nobody can see reads as a nav that simply has no chevrons.
   *
   * Ember, matching the mobile list — the same "there is more behind this"
   * affordance should not change colour between viewports.
   */
}

.desktop-nav__menu__item .icon {
  fill: var(--ember);
}

.desktop-nav__menu__item {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  transition: color 0.2s ease;
}

.desktop-nav__menu__item:hover, .desktop-nav__menu__item.is-active {
  color: var(--ember);
}

.desktop-nav__menu__drawer {
  /*
   * NO GROUND OF ITS OWN. A second surface colour inside the panel read
   * as a separate box rather than a deeper level of the same one — the
   * charcoal was fighting the carbon it sat on (operator, 2026-09-09).
   *
   * The level is marked the way the brand marks structure everywhere
   * else: an ember hairline down the left edge, with the run of items
   * indented off it. Nerdworks does the same thing with a 2px border and
   * no background change; this is that idea in the ARTSABERS idiom.
   */
  padding-left: var(--space-5);
  /*
   * 2px at 0.7, not 1px at 0.35. The first cut measured exactly as
   * specified and still read as a grey divider rather than a brand mark —
   * a single pixel of 35% ember on carbon carries no hue at all, so the
   * decoration was present and doing nothing. Seen only once the drawer
   * was actually opened rather than verified from the computed value.
   *
   * Nerdworks uses 2px for the same job, which is the width where the
   * colour survives.
   */
  border-left: 2px solid rgba(255, 122, 46, 0.7);
}

.desktop-nav__drawer-item {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  transition: color 0.2s ease;
}

.desktop-nav__drawer-item:hover {
  color: var(--ember);
}

.desktop-nav {
  /*
   * The archive link — an operator-ticked item pointing at the section's own
   * page, sitting first among its siblings.
   *
   * MARKED BY EMBER TEXT AND AN EMBER RULE (operator, 2026-09-15). This
   * previously took the rule alone, on the reasoning that a brighter first
   * entry would pull the eye away from the categories the panel exists for.
   * That held while a drawer was four items; in a 58-item Characters list the
   * way out of the group is the one thing a reader needs to find quickly, and
   * a hairline under the first of fifty-eight identical lines does not carry
   * it. The colour is doing navigational work now, not decoration.
   *
   * The rule is the brand's own structural mark, the same ember hairline the
   * drawer uses down its left edge. It is legible here precisely because the
   * link is IN the list: an underline above a group read as a separator
   * between two groups, which is why the earlier above-the-list version
   * deliberately had none.
   *
   * No font-size or family — see the note in the global partial. At panel
   * depth it inherits fs-small from .desktop-nav__menu__item, at drawer depth
   * fs-eyebrow from .desktop-nav__drawer-item.
   */
}

.desktop-nav__archive {
  border-bottom: 1px solid var(--ember);
  color: var(--ember);
}

.desktop-nav__archive:hover {
  color: var(--ember-bright);
}

/*
 * THE SUB-PANEL IS A SEPARATE ELEMENT AND NEEDS THE SAME GROUND.
 *
 * The global pairs `.mobile-nav, .mobile-nav__panel` for root rules, because both
 * the root drawer and each sub-panel are full-screen popovers and the sub-panel
 * renders ON TOP of the drawer in the popover top layer. Its own note says element
 * rules stay under `.mobile-nav` and compile flat so they reach inside the panel
 * too — which is why the list and header looked right in there and only the GROUND
 * was missing.
 *
 * This brand styled `.mobile-nav` alone. So tapping Shop opened a panel with no
 * background, over the page rather than over the drawer, and near-white labels sat
 * on white (operator, 2026-09-09).
 *
 * Root-level properties are paired here; the element rules below stay nested under
 * `.mobile-nav` alone, because pairing them would emit `.mobile-nav__panel__header`
 * and the panel's children are flat `.mobile-nav__header`.
 */
.mobile-nav,
.mobile-nav__panel {
  background-color: var(--carbon);
  color: var(--chrome-warm);
}

.mobile-nav__header {
  background-color: var(--carbon);
  /*
   * Lateral padding for the whole panel is set here and on `__body` rather
   * than on `.mobile-nav`, because the panel slides and a padded root would
   * animate its own inset. MENU sat hard against the screen edge and the
   * close control against the other one.
   */
  padding-inline: var(--space-4-5);
  border-bottom: 1px solid rgba(255, 122, 46, 0.2);
}

.mobile-nav__header__title {
  /*
   * The back arrow is `__title__icon` — an inline SVG before the label. It
   * takes `fill`, and unset it inherits black, which on carbon is
   * invisible. Reported as a missing icon; it was present and painted.
   * THIRD instance of this same fault in this one component, after the
   * list icons and the desktop close control.
   *
   * Chrome rather than ember: it is a CONTROL, like the close button
   * beside it, not a wayfinding mark like the list icons.
   */
}

.mobile-nav__header__title__icon {
  fill: var(--chrome-warm);
}

.mobile-nav__header__title {
  font-family: var(--font-display);
  font-size: var(--fs-prose);
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--chrome-highlight);
}

.mobile-nav__header__close {
  color: var(--chrome-warm);
}

.mobile-nav__header__close .icon {
  fill: var(--chrome-warm);
}

.mobile-nav__header__close:hover {
  color: var(--ember);
}

.mobile-nav__header__close:hover .icon {
  fill: var(--ember);
}

.mobile-nav__body {
  /*
   * The ground is set here AND on the list below, deliberately. A submenu
   * slides in over this panel, and mid-transition the incoming level had no
   * ground of its own — the page behind showed through as white, with
   * near-white labels on it (operator, 2026-09-09). Painting both means no
   * state, transitional or nested, can be transparent.
   */
  background-color: var(--carbon);
  padding-block-end: var(--space-5);
}

.mobile-nav__list {
  background-color: var(--carbon);
  /*
   * The gutter lives HERE, not on `__body`. The sub-panel has no `__body` —
   * it is a sibling popover carrying its own list — so padding set there
   * reached level one and left the sub-menu flush against both screen edges.
   * `__list` exists in both, and the global's flat element rules mean this
   * one selector reaches inside the panel too.
   */
  padding-inline: var(--space-4-5);
  /*
   * Top breathing room for BOTH levels. The first item sat against the
   * header's hairline on the root drawer and on the sub-panel alike. Set
   * here rather than on `__body`, which the sub-panel does not have.
   */
  padding-block-start: var(--space-5);
}

.mobile-nav__list__item {
  /*
   * VERTICAL RHYTHM. The items shipped at `padding: 0` and 17px tall, so
   * the run read as one block of text rather than a list — and the FIRST
   * item sat flush against the header's hairline, which read as Shop
   * being clipped or missing entirely rather than merely tight
   * (operator, 2026-09-09).
   */
  padding-block: var(--space-4);
  /*
   * THE ICONS ARE INLINE SVG AND TAKE `fill`, NOT `color`. Unset, they
   * inherit black — on a carbon ground that is invisible, which reads as
   * "My Account has no icon" when the icon is present and painted. Same
   * fault as the desktop close control, one level down; the header's
   * close button already had the fill and the list never did.
   */
}

.mobile-nav__list__item .icon {
  fill: var(--ember);
}

.mobile-nav__list__item {
  font-family: var(--font-display);
  font-size: var(--fs-small);
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-warm);
  /*
   * The item is a flex row, but its LINK is a block — so an inline SVG
   * inside the anchor stacked above the label instead of sitting beside
   * it, which read as the icon being misplaced rather than the anchor
   * being the wrong display.
   */
}

.mobile-nav__list__item > a,
.mobile-nav__list__item > button {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}

.mobile-nav__list__item {
  /*
   * A parent with children renders as a <button> rather than an <a>, and
   * the UA stylesheet sets `text-transform: none` on buttons explicitly —
   * which beats inheritance from this rule. So Shop, the only item with
   * children, rendered lower-case and half a size off while every sibling
   * was uppercase, and read as a different kind of thing rather than the
   * same item with a submenu.
   */
}

.mobile-nav__list__item > button {
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  color: inherit;
}

.mobile-nav__list__item {
  /*
   * The archive link — the operator-ticked item pointing at the
   * section's own page.
   *
   * Marked by the accent, not by a rule beneath it as on desktop:
   * every row here already carries a hairline divider, so an
   * underline would read as a second divider rather than as a
   * property of the link.
   *
   * Measured before writing this: with no pointer over the menu,
   * every item on every level computes the same chrome-warm, so the
   * archive link was genuinely indistinguishable from its siblings
   * on mobile. (It LOOKS ember in a screenshot taken straight after
   * a tap, because the row under the cursor is hovered — which is
   * what the rule below does, and is not styling this link had.)
   */
}

.mobile-nav__list__item > a.mobile-nav__archive {
  color: var(--ember);
}

.mobile-nav__list__item {
  border-bottom: 1px solid rgba(184, 176, 166, 0.1);
  transition: color 0.2s ease;
}

.mobile-nav__list__item:hover, .mobile-nav__list__item.is-active {
  color: var(--ember);
}

.mobile-nav__list__item:hover .icon, .mobile-nav__list__item.is-active .icon {
  fill: var(--ember);
}

.mobile-nav__list__item:hover > a.mobile-nav__archive, .mobile-nav__list__item.is-active > a.mobile-nav__archive {
  color: var(--chrome-highlight);
}

.footer {
  background-color: var(--carbon);
  color: var(--chrome-warm);
}

.footer__cta {
  position: relative;
  padding: var(--space-5) var(--space-6);
  background: var(--carbon);
  border-top: 1px solid var(--ember-hairline);
}

.footer__cta::before {
  content: "";
  position: absolute;
  top: -1px;
  right: 0;
  left: 0;
  height: 40px;
  background: radial-gradient(ellipse at center top, var(--ember-hairline-soft), transparent 70%);
  pointer-events: none;
}

.footer__cta__inner {
  max-width: var(--site-max-width-default);
  margin: 0 auto;
}

.footer__inner {
  padding-top: var(--space-8);
  padding-right: max(var(--gutter-small), (100% - var(--site-max-width)) / 2 + var(--gutter-small));
  padding-bottom: var(--space-6);
  padding-left: max(var(--gutter-small), (100% - var(--site-max-width)) / 2 + var(--gutter-small));
  background-color: var(--carbon);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.14);
}

.footer__columns {
  gap: var(--space-6);
  color: var(--chrome-warm);
}

.footer__columns__list {
  font-family: var(--font-body);
  font-size: var(--fs-small);
}

.footer__columns__list > :first-child {
  font-family: var(--font-display);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--chrome-dim);
  margin-bottom: var(--space-4);
}

.footer__columns__list > :first-child .title {
  margin: 0;
  font: inherit;
  letter-spacing: inherit;
  color: inherit;
}

.footer__columns__list a {
  color: var(--chrome-warm);
  transition: color 0.2s ease;
}

.footer__columns__list a:hover {
  color: var(--ember);
}

.footer__promo {
  margin-bottom: var(--space-6);
}

.footer__promo__logo {
  color: var(--chrome-highlight);
}

.footer__promo__info {
  color: var(--chrome-dim);
  font-size: var(--fs-small);
  line-height: 1.55;
}

.footer__legal {
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  color: var(--chrome-dim);
  border-top: 1px solid rgba(184, 176, 166, 0.15);
  padding-top: var(--space-5);
  margin-top: var(--space-6-5);
}

.footer__legal a {
  color: var(--chrome-dim);
}

.footer__legal a:hover {
  color: var(--ember);
}

.section {
  position: relative;
  isolation: isolate;
  padding-top: var(--section-padding, var(--space-9));
  padding-bottom: var(--section-padding, var(--space-9));
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.14), inset 0 -1px 0 rgba(0, 0, 0, 0.85);
}

.section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(250, 250, 250, 0.028) 0%, transparent 8%, transparent 88%, rgba(0, 0, 0, 0.32) 100%);
}

.section > .section__inner {
  position: relative;
  z-index: 1;
}

.section--imaged {
  background-image: var(--section-bg-image, none);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.section--imaged::before {
  background: linear-gradient(180deg, rgba(6, 6, 6, 0.58) 0%, rgba(6, 6, 6, 0.66) 50%, rgba(6, 6, 6, 0.74) 100%);
}

.section > .section__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.section--plate-seam-h {
  --section-bg-image: var(--bg-plate-seam-h);
}

.section--plate-seam-v {
  --section-bg-image: var(--bg-plate-seam-v);
}

.section--carbon {
  background-color: var(--carbon);
}

.section--void {
  background-color: var(--void);
}

.section--charcoal {
  background-color: var(--charcoal);
}

.section--charcoal-warm {
  background-color: var(--charcoal-warm);
}

.section--tall {
  --section-padding: 128px;
}

.section--compact {
  --section-padding: var(--space-8);
}

.section--panel-seam {
  position: relative;
  background-color: var(--charcoal);
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.5), inset 0 -1px 0 rgba(255, 122, 46, 0.5), 0 -8px 24px -8px rgba(255, 122, 46, 0.35), 0 8px 24px -8px rgba(255, 122, 46, 0.35);
}

.section--seam-top {
  box-shadow: inset 0 1px 0 rgba(255, 122, 46, 0.55), inset 0 -1px 0 rgba(0, 0, 0, 0.85), 0 -6px 20px -6px rgba(255, 122, 46, 0.28);
}

.section--seam-bottom {
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.14), inset 0 -1px 0 rgba(255, 122, 46, 0.55), 0 6px 20px -6px rgba(255, 122, 46, 0.28);
}

.section--ember-band {
  padding-top: var(--space-10);
  padding-bottom: var(--space-10);
  background: linear-gradient(180deg, var(--ember-glow) 0%, var(--ember-bright) 25%, var(--ember) 55%, var(--ember-forge) 100%);
  color: var(--on-primary-fixed);
  overflow: hidden;
  box-shadow: inset 0 2px 0 rgba(255, 235, 180, 0.55), inset 0 -1px 0 rgba(90, 26, 0, 0.55), 0 -12px 40px -8px rgba(255, 122, 46, var(--ember-band-glow-alpha, 0.35));
}

.section--ember-band::before {
  background: radial-gradient(ellipse at 15% 25%, rgba(255, 235, 180, var(--ember-band-radial-alpha, 0.3)) 0%, rgba(255, 235, 180, 0) 55%), radial-gradient(ellipse at 85% 75%, rgba(209, 72, 16, var(--ember-band-radial-alpha, 0.3)) 0%, rgba(209, 72, 16, 0) 60%);
}

.section--tight {
  padding-top: var(--space-6);
  padding-bottom: var(--space-6);
}

.section--strip {
  padding-top: var(--space-5);
  padding-bottom: var(--space-5);
  box-shadow: inset 0 1px 0 rgba(250, 250, 250, 0.1), inset 0 -1px 0 rgba(0, 0, 0, 0.6);
}

.section--fill {
  padding-top: 0;
  padding-bottom: 0;
  display: flex;
  flex-direction: column;
}

.section--fill > .section__inner {
  flex: 1;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  display: flex;
  flex-direction: column;
}

.section--fill > .section__inner > .grid {
  flex: 1;
}

.section--ember-underline {
  padding-top: var(--space-7);
  padding-bottom: var(--space-6);
  background: linear-gradient(180deg, var(--carbon) 0%, var(--charcoal) 100%);
  border-bottom: 1px solid var(--hairline);
  box-shadow: var(--chrome-top);
}

.section--ember-underline::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--ember) 40%, var(--ember-glow) 50%, var(--ember) 60%, transparent 100%);
  opacity: 0.5;
  inset: auto 0 0 0;
  z-index: 2;
  pointer-events: none;
}

.section--ember-underline::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -120px;
  left: 0;
  height: 120px;
  background: radial-gradient(ellipse at center top, var(--ember-hairline-soft), transparent 70%);
  pointer-events: none;
  z-index: 1;
}

.section--radial-ember::before {
  background: linear-gradient(180deg, rgba(6, 6, 6, 0.58) 0%, rgba(6, 6, 6, 0.66) 50%, rgba(6, 6, 6, 0.74) 100%), radial-gradient(ellipse var(--radial-size, 30% 25%) at var(--radial-position, 92% 88%), rgba(255, 122, 46, var(--radial-alpha, 0.14)) 0%, transparent 70%);
}

@media (max-width: 1200px) {
  .grid--5 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .grid--3,
  .grid--5 {
    grid-template-columns: 100%;
  }
}
@media (min-width: 1025px) and (max-width: 1279px), (min-width: 701px) and (max-width: 959px) {
  .product-grid--shop {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 768px) {
  .grid.grid--phone-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.grid {
  margin-bottom: var(--grid-mb, 0);
}

.grid:has(+ .button) {
  margin-bottom: var(--grid-mb, var(--space-6));
}

.grid--3 {
  --grid-gap: 32px;
}

.grid--4 {
  --grid-gap: 24px;
}

.grid--framed {
  padding: var(--space-6) 0;
  border-top: 1px solid rgba(54, 54, 54, 0.5);
  border-bottom: 1px solid rgba(54, 54, 54, 0.5);
}

.grid--card-rows {
  margin-top: var(--space-6-5);
  row-gap: var(--space-6-5);
}

.grid--crosshatch {
  --grid-gap: 0;
  border-top: 1px solid rgba(54, 54, 54, 0.35);
}

.grid--crosshatch > * {
  border-bottom: 1px solid rgba(54, 54, 54, 0.35);
}

.grid--crosshatch > *:nth-child(odd) {
  border-right: 1px solid rgba(54, 54, 54, 0.35);
}

@media (max-width: 900px) {
  .grid--crosshatch > *:nth-child(odd) {
    border-right: none;
  }
}
/*------------------------------------*\
	BLOCKS
	Native WP block Path A styling — brand SCSS applied via @extend onto
	the WP block selectors. Populates as the walk hits block-editor content.
\*------------------------------------*/
/*------------------------------------*\
	CSS CUSTOM PROPERTIES
	Bridge from Sass variables to the :root token surface. Consumed by
	global framework primitives (.grid, .wrapper, .section) and by brand
	components.
\*------------------------------------*/
:root {
  /*------------------------------------*\
  	STRUCTURAL — consumed by global framework primitives
  \*------------------------------------*/
  --site-max-width: 1440px;
  --site-max-width-narrow: 720px;
  --site-max-width-default: 1200px;
  --site-max-width-wide: 1440px;
  --reading-max: 720px;
  --container-max: 1440px;
  --article-column: 880px;
  --article-alignwide: 1440px;
  --gutter: 24px;
  --gutter-small: 20px;
  --icon-size: 20px;
  --icon-size-md: 24px;
  --icon-size-lg: 32px;
  --icon-size-xl: 40px;
  --radius-interactive: 0;
  --radius-card: 0;
  /*------------------------------------*\
  	TYPE SCALE — static SAS1 values (component-level clamp() overrides
  	as needed, per mockup design intent)
  \*------------------------------------*/
  --fs-display: 128px;
  --fs-h1: 84px;
  --fs-hero: 78px;
  --fs-section: 60px;
  --fs-title-lg: 48px;
  --fs-title: 40px;
  --fs-heading-lg: 32px;
  --fs-heading: 26px;
  --fs-subheading: 22px;
  --fs-large: 20px;
  --fs-prose: 18px;
  --fs-base: 16px;
  --fs-small: 14px;
  --fs-eyebrow: 12px;
  --fs-micro: 11px;
  --fs-nano: 10px;
  --wp--preset--font-size--micro: var(--fs-micro);
  --wp--preset--font-size--eyebrow: var(--fs-eyebrow);
  --wp--preset--font-size--small: var(--fs-small);
  --wp--preset--font-size--body: var(--fs-base);
  --wp--preset--font-size--body-lg: var(--fs-large);
  --wp--preset--font-size--prose: var(--fs-prose);
  --wp--preset--font-size--subheading: var(--fs-subheading);
  --wp--preset--font-size--heading: var(--fs-heading);
  --wp--preset--font-size--heading-lg: var(--fs-heading-lg);
  --wp--preset--font-size--title: var(--fs-title);
  --wp--preset--font-size--title-lg: var(--fs-title-lg);
  --wp--preset--font-size--section: var(--fs-section);
  --wp--preset--font-size--hero: var(--fs-hero);
  --wp--preset--font-size--display: var(--fs-display);
  --wp--preset--font-size--medium: var(--fs-large);
  --wp--preset--font-size--large: var(--fs-heading);
  --wp--preset--font-size--x-large: var(--fs-title);
  /*------------------------------------*\
  	SPACE SCALE — SAS1, twelve steps (see settings/_metrics.scss).
  	Every margin, padding and gap in the silo reads one of these. The
  	nerdworks-era 15/20/30/40/60 slots were retired 2026-09-23 when the
  	silo moved onto the ladder — nothing shared referenced them.
  \*------------------------------------*/
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-4-5: 20px;
  --space-5: 24px;
  --space-6: 32px;
  --space-6-5: 40px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --space-10: 128px;
  --eyebrow-to-title: var(--space-3);
  /*------------------------------------*\
  	FONTS — SAS1. THREE faces plus a system mono.

  	The heading above used to say Space Grotesk was dropped and Orbitron
  	carried chrome type too; that was reversed on 2026-08-06 (see the
  	note on --font-chrome below) and the heading had not caught up.
  \*------------------------------------*/
  --font-display: Orbitron, system-ui, sans-serif;
  --font-body: Onest, system-ui, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --font-title: Orbitron, system-ui, sans-serif;
  --font-heading: Orbitron, system-ui, sans-serif;
  --font-chrome: Space Grotesk, system-ui, sans-serif;
  --font-label: Space Grotesk, system-ui, sans-serif;
  --wp--preset--font-family--display: var(--font-display);
  --wp--preset--font-family--body: var(--font-body);
  --wp--preset--font-family--chrome: var(--font-chrome);
  --wp--preset--font-family--mono: var(--font-mono);
  /*------------------------------------*\
  	SHADOWS — SAS1 elevation
  \*------------------------------------*/
  --card-shadow: 0 4px 12px -4px rgba(0, 0, 0, 0.55);
  --card-shadow-hover: 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
  /*------------------------------------*\
  	MAS43 SIGNATURE EFFECTS — the shadow/inset compositions the mockup
  	paints with heavily. Promoted to tokens so brand chrome + section
  	walks can call them by name.
  \*------------------------------------*/
  --plate-lift: inset 0 1px 0 rgba(250, 250, 250, 0.16), inset 0 -1px 0 rgba(0, 0, 0, 0.55), 0 10px 28px -10px rgba(0, 0, 0, 0.95), 0 2px 6px -2px rgba(0, 0, 0, 0.7);
  --panel-lift: inset 0 1px 0 rgba(250, 250, 250, 0.08), 0 8px 24px -8px rgba(0, 0, 0, 0.9);
  --panel-lift-hover: inset 0 1px 0 rgba(250, 250, 250, 0.16), 0 20px 44px -10px rgba(0, 0, 0, 0.95);
  --chrome-top: inset 0 1px 0 rgba(250, 250, 250, 0.36);
  --chrome-top-soft: inset 0 1px 0 rgba(250, 250, 250, 0.18);
  --ember-hot-rim: inset 0 0 0 1px rgba(255, 122, 46, 0.55), 0 0 28px rgba(255, 122, 46, 0.45);
  --ember-glow-sm: 0 0 16px rgba(255, 122, 46, 0.35);
  --ember-glow-md: 0 0 28px rgba(255, 122, 46, 0.55);
  --ember-focus: 0 0 0 1px var(--ember), 0 0 12px rgba(255, 122, 46, 0.35);
  --hairline: rgba(250, 250, 250, 0.08);
  --hairline-strong: rgba(250, 250, 250, 0.16);
  --ember-hairline: rgba(255, 122, 46, 0.60);
  --ember-hairline-soft: rgba(255, 122, 46, 0.20);
  --bg-plate-seam-h: url('/wp-content/themes/artsabers/images/backgrounds/plate-seam-h.jpg');
  --category-hero-img: url('/wp-content/themes/artsabers/images/backgrounds/category-hero.jpg');
  --bg-plate-seam-v: url('/wp-content/themes/artsabers/images/backgrounds/plate-seam-v.jpg');
  /*------------------------------------*\
  	ARTSABERS PALETTE — SAS1, trimmed to what MAS43 paints with
  \*------------------------------------*/
  --ember-glow: #FFB347;
  --ember-bright: #FF9540;
  --ember: #FF7A2E;
  --ember-forge: #E85D18;
  --ember-deep: #D14810;
  --forge-red: #E63929;
  --carbon: #060606;
  --void: #0A0A0A;
  --charcoal: #141414;
  --charcoal-warm: #161412;
  --hull-panel: #1A1A1A;
  --hull-panel-lift: #242424;
  --hull-panel-dark: #0F0F0F;
  --bg-card: var(--hull-panel);
  --bg-card-lift: var(--hull-panel-lift);
  --bg-recess: var(--hull-panel-dark);
  --hull-edge: #363636;
  --bg-input: #1E1E1E;
  --bg-input-focus: #262524;
  --chrome-highlight: #FAFAFA;
  --chrome-warm: #F5F0E8;
  --chrome-dim: #B8B0A6;
  --chrome-glint: #E8E4DD;
  --on-primary-fixed: #2A0800;
  /*------------------------------------*\
  	LEGACY TONE SLOTS — required by framework's .section modifiers
  	(--anchor / --bright / --primary / --saffron). Aliased to the
  	closest ARTSABERS palette entries so if a `.section--*` modifier
  	ever fires, it paints on-brand. ARTSABERS's ground vocabulary
  	lives on `.wp-block-group.is-style-ground-*` in section-bands.scss.
  \*------------------------------------*/
  --anchor: #141414;
  --bright: #F5F0E8;
  --primary: #FF7A2E;
  --saffron: #FFB347;
  /*------------------------------------*\
  	HAIRLINE RULES per ground (MAS43-observed alpha treatment)
  \*------------------------------------*/
  --bg-plate: rgba(20, 20, 20, 0.94);
  --outline: #3E3E3E;
  --leader-dotted: rgba(62, 62, 62, 0.65);
  --rule-on-anchor: rgba(245, 240, 232, 0.12);
  --rule-on-bright: rgba(20, 20, 20, 0.12);
  --rule-on-primary: rgba(245, 240, 232, 0.18);
  --muted: rgba(20, 20, 20, 0.6);
  --section-padding: 96px;
}

@media (max-width: 767px) {
  :root {
    --section-padding: var(--space-8);
  }
}
/*------------------------------------*\
	BASE
	Only html-element defaults belong here. .wrapper comes from framework
	(framework-v2/global/scss/layouts/_wrapper.scss) — do NOT redeclare it
	locally.
\*------------------------------------*/
html {
  font-family: "Onest", system-ui, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  font-weight: 400;
  background: var(--carbon);
  font-family: "Onest", system-ui, sans-serif;
}
/*# sourceMappingURL=artsabers-all.css.map */
