@font-face { font-family: "Pinyon Script"; src: url("/assets/pinyon-script-regular.woff2") format("woff2"), url("/assets/pinyon-script-regular.ttf") format("truetype"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "Dancing Script"; src: url("/assets/dancing-script-variable.woff2") format("woff2"), url("/assets/dancing-script-variable.ttf") format("truetype"); font-style: normal; font-weight: 400 700; font-display: swap; }
/* Homepage pilot 09. Sora, original logo, A/B art and hero geometry preserved.
   Supplied paper reference is resized/encoded only; CSS controls crop and calmness.
   Hero is one content-sized slide: no carousel, timer, placeholder or empty row. */
.homepage-pilot {
  font-family: "Sora", system-ui, sans-serif;
  font-size: 1.125rem;
  line-height: 1.75;
  --paper-image: url("/assets/paper-void-1672.webp");
  background: #faf7f0;
}
/* One continuous material surface, never tiled. A light veil keeps the text quiet. */
.homepage-pilot .paper-surface { position: relative; isolation: isolate; background-color: #faf7f0; background-image: linear-gradient(rgba(255,253,248,.5), rgba(255,253,248,.5)), var(--paper-image); background-size: cover; background-position: center; background-repeat: no-repeat; }
.homepage-pilot .paper-surface::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, transparent, rgba(255,253,248,.18) 28%, rgba(255,253,248,.18) 72%, transparent); }
.homepage-pilot .wrap { width: min(1360px, calc(100% - 80px)); }
.homepage-pilot :is(.feature-layout, .closing-layout, .role-notes) > * { min-width: 0; }
.homepage-pilot :is(h1, h2, h3, p, a, .section-label, .arts-signature) { overflow-wrap: anywhere; }
/* Shared material masthead is defined in material-header.css. */
.homepage-pilot .invitation { position: relative; background: #0b2347; }
.homepage-pilot .hero-slide { position: relative; isolation: isolate; }
/* The picture remains a full-section layer, never a separate image column.
   Cover overflow is negative: a lower Y percentage moves the art DOWN,
   revealing more of the upper tapestry. The portrait framing stays unchanged. */
.homepage-pilot .invitation .hero-art { position: absolute; inset: 0; z-index: -2; display: block; margin: 0; width: 100%; height: 100%; max-width: none; border-radius: 0; overflow: hidden; background: #0b2347; }
.homepage-pilot .hero-art img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 64% 24%; }
.homepage-pilot .hero-slide::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, rgba(4,14,30,.35), rgba(4,14,30,.05) 58%, transparent 80%), linear-gradient(180deg, rgba(4,14,30,.16), transparent 35%, transparent 75%, rgba(4,14,30,.28)); }
.homepage-pilot .invitation .hero { --hero-min: clamp(34rem, 64vh, 46rem); width: 100%; min-height: var(--hero-min); padding: clamp(1.5rem, 2vw, 2.5rem) max(40px, calc((100% - 1360px) / 2)); display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; gap: 0; align-items: start; }
@supports (height: 1svh) { .homepage-pilot .invitation .hero { --hero-min: clamp(34rem, 64svh, 46rem); } }
.homepage-pilot .hero-copy { grid-row: 1; position: relative; width: min(44rem, 52vw); min-width: 0; max-width: 100%; padding: 1.5rem; background: linear-gradient(110deg, rgba(4,14,30,.86), rgba(4,14,30,.78)); overflow-wrap: anywhere; }
.homepage-pilot .invitation .hero h1 { font-family: "Sora", sans-serif; font-size: clamp(2.625rem, calc(.875rem + 3.9375vw), 4.59375rem); line-height: 1.08; font-weight: 675; letter-spacing: -.045em; margin-bottom: 1.3125rem; }
.homepage-pilot h1 em, .homepage-pilot h2 em { font-family: inherit; font-style: normal; }
.homepage-pilot .hero h1 em { font-weight: inherit; }
.homepage-pilot .hero .lede { font-size: clamp(1.125rem, calc(.875rem + .2625vw), 1.1484375rem); line-height: 1.65; letter-spacing: 0; max-width: 41ch; margin-bottom: 0; color: #e3e6ed; }
.homepage-pilot .hero .actions { margin-top: 1.75rem; gap: .5rem 1.25rem; }
.homepage-pilot .hero .button { font-size: 1rem; padding: .875rem 1.125rem; gap: 1rem; min-height: 56px; font-weight: 600; }
.homepage-pilot .hero .text-link { font-size: 1rem; min-height: 48px; display: inline-flex; align-items: center; gap: .5rem; }
/* Relative type, relaxed paragraphs, tighter display tracking, generous section rhythm. */
.homepage-pilot h2 { font-size: clamp(2.25rem, calc(1.5rem + 2.25vw), 3.5rem); letter-spacing: -.035em; line-height: 1.16; font-weight: 550; margin-bottom: 1.75rem; }
.homepage-pilot h2 em { font-weight: 450; }
.homepage-pilot .section-label { display: block; max-width: none; font-size: .875rem; font-weight: 600; line-height: 1.6; letter-spacing: .025em; margin-bottom: 2.25rem; padding-bottom: 1rem; border-color: rgba(143,126,86,.24); }
.homepage-pilot .feature-layout { gap: 7%; }
.homepage-pilot .eyebrow { font-size: .875rem; line-height: 1.6; text-transform: none; letter-spacing: .045em; margin-bottom: 1.25rem; }
.homepage-pilot .large-copy { font-size: clamp(1.375rem, calc(1.125rem + .4vw), 1.5rem); line-height: 1.6; letter-spacing: -.01em; }
.homepage-pilot .feature-copy { font-size: 1.125rem; line-height: 1.8; }
.homepage-pilot .feature-copy > p { max-width: 57ch; margin-bottom: 1.5rem; }
.homepage-pilot .movement-section, .homepage-pilot .arts-section, .homepage-pilot .participation-section, .homepage-pilot .events-section, .homepage-pilot .feature { padding-block: clamp(3.5rem, 6vw, 5.5rem); }
.homepage-pilot .arts-section, .homepage-pilot .participation-section { background: transparent; }
.homepage-pilot .story-note { padding: 1.75rem; background: rgba(255,255,255,.44); }
.homepage-pilot .arts-signature { font-family: "Sora", sans-serif; font-size: clamp(3.5rem, calc(2rem + 3vw), 4.5rem); letter-spacing: -.045em; line-height: 1.06; }
.homepage-pilot .arts-signature span { font-style: normal; font-weight: 300; }
.homepage-pilot .arts-signature small { font-family: inherit; font-size: .9375rem; line-height: 1.6; letter-spacing: .01em; }
.homepage-pilot .arts-strip { font-family: inherit; font-style: normal; font-size: 1rem; line-height: 1.6; margin-top: 2.5rem; padding-top: 1.5rem; }
.homepage-pilot .button, .homepage-pilot .text-link { font-size: 1rem; line-height: 1.5; letter-spacing: 0; min-height: 48px; max-width: 100%; }
.homepage-pilot .button { gap: 1rem; padding: .875rem 1.125rem; }
.homepage-pilot .text-link { display: inline-flex; align-items: center; gap: .5rem; }
.homepage-pilot .button span, .homepage-pilot .text-link span { flex-shrink: 0; }
.homepage-pilot .quiet { font-size: .9375rem; line-height: 1.7; }
.homepage-pilot .participation-section p, .homepage-pilot .role-notes p { font-size: 1.125rem; line-height: 1.75; }
.homepage-pilot .participation-section p.quiet { font-size: .9375rem; }
.homepage-pilot h3 { font-size: 1.1875rem; line-height: 1.45; letter-spacing: -.015em; margin-bottom: .75rem; }
.homepage-pilot .steps li { gap: 1.25rem; padding-bottom: 1.5rem; margin-bottom: 1.5rem; }
.homepage-pilot .steps li > div { min-width: 0; }
.homepage-pilot .step-number { font-family: inherit; font-size: 1.5rem; font-weight: 300; }
.homepage-pilot .availability { font-size: 1rem; line-height: 1.6; }
.homepage-pilot .closing-section { padding-block: 4.5rem; }
.homepage-pilot .footer-brand { font-family: inherit; font-size: 1rem; line-height: 1.5; }
.homepage-pilot .site-footer nav a { font-size: .9375rem; min-height: 44px; display: inline-flex; align-items: center; }
.homepage-pilot .site-footer p { font-size: .8125rem; line-height: 1.7; }
.homepage-pilot a:focus-visible { outline-color: var(--focus); }
.homepage-pilot .invitation a:focus-visible, .homepage-pilot .closing-section a:focus-visible { outline-color: var(--gold); }
/* Preserve art direction; one naturally growing row always contains headline and CTA. */
@media (min-width: 801px) and (min-aspect-ratio: 12/5) { .homepage-pilot .hero-art img { object-position: 64% 20%; } }
@media (min-width: 801px) and (max-width: 1200px) {
  .homepage-pilot .invitation .hero { padding-inline: 24px; }
  .homepage-pilot .hero-copy { padding: 1.5rem; }
}
@media (min-width: 801px) and (max-width: 1000px) {
  .homepage-pilot .hero-art img { object-position: 78% 24%; }
  .homepage-pilot .hero-copy { width: min(100%, max(23rem, 46vw)); padding: 1.25rem; }
  .homepage-pilot .invitation .hero h1 { font-size: clamp(2.625rem, calc(.875rem + 3.5vw), 3.0625rem); }
}

/* Portrait slides are content-driven too; a modest lower inset retains an art glimpse. */
@media (max-width: 800px) {
  .homepage-pilot { font-size: 1.0625rem; }
  .homepage-pilot .wrap { width: calc(100% - 32px); }
  .homepage-pilot .invitation .hero { --hero-min: 64vh; padding: 1.25rem 24px 3.5rem; grid-template-rows: auto; }
  .homepage-pilot .hero-art img { object-position: 86% 58%; }
  .homepage-pilot .hero-slide::before { background: linear-gradient(180deg, rgba(4,14,30,.15), transparent 54%, transparent 78%, rgba(4,14,30,.22)); }
  .homepage-pilot .hero-copy { width: min(34rem, 100%); padding: 1.75rem; }
  .homepage-pilot .invitation .hero h1 { font-size: clamp(2.1875rem, calc(1.3125rem + 4.375vw), 2.84375rem); margin-bottom: 1.09375rem; }
  .homepage-pilot .hero .lede span { display: block; margin-top: .35rem; }
  .homepage-pilot .hero .lede { font-size: 1.125rem; line-height: 1.65; }
  .homepage-pilot .hero .actions { margin-top: 1.5rem; gap: .375rem 1rem; }
  .homepage-pilot .hero .button { gap: .75rem; padding: .875rem 1rem; min-height: 52px; }
  .homepage-pilot .hero .text-link { gap: .5rem; min-height: 48px; }
  .homepage-pilot h2 { font-size: clamp(2.125rem, calc(1.5rem + 2vw), 2.75rem); margin-bottom: 1.5rem; }
  .homepage-pilot .feature-layout { gap: 1.5rem; }
  .homepage-pilot .section-label { font-size: .8125rem; gap: .5rem 1rem; padding-bottom: 1rem; margin-bottom: 2rem; }
  .homepage-pilot .eyebrow { font-size: .8125rem; margin-bottom: 1rem; }
  .homepage-pilot .large-copy { font-size: 1.3125rem; }
  .homepage-pilot .feature-copy, .homepage-pilot .participation-section p, .homepage-pilot .role-notes p { font-size: 1.0625rem; line-height: 1.75; }
  .homepage-pilot .participation-section p.quiet { font-size: .9375rem; }
  .homepage-pilot .arts-signature { margin-block: 1.75rem 1.5rem; font-size: 3.5rem; }
  .homepage-pilot .story-note { padding: 1.5rem; }
  .homepage-pilot .arts-strip { font-size: .9375rem; gap: .75rem 1.25rem; }
  .homepage-pilot .closing-section { padding-block: 3.5rem; }
  .homepage-pilot .role-notes { margin-top: 2rem; }
  .homepage-pilot .site-footer { gap: 1.25rem; padding-block: 2rem; }
  .homepage-pilot .site-footer nav { gap: .5rem 1.25rem; }
}
@supports (height: 1svh) { @media (max-width: 800px) { .homepage-pilot .invitation .hero { --hero-min: 64svh; } } }
@media (max-width: 500px) {
  .homepage-pilot .invitation .hero { padding: 0 0 2.5rem; }
  .homepage-pilot .hero-copy { width: 100%; padding: 1.75rem 16px 1.5rem; }
  .homepage-pilot .hero .lede { font-size: 1.125rem; }
  .homepage-pilot .hero .actions { margin-top: 1.375rem; gap: .375rem .75rem; }
  .homepage-pilot .hero .button { width: 100%; }
}
/* Content can grow; surfaces remain static and do not depend on blur or motion. */
@media (prefers-reduced-motion: reduce) { .homepage-pilot { scroll-behavior: auto; } }

/* Request smaller decorative resources without using a repeating tile or fixed layer. */
@media (max-width: 1200px) { .homepage-pilot { --paper-image: url("/assets/paper-void-1200.webp"); } }
@media (max-width: 600px) { .homepage-pilot { --paper-image: url("/assets/paper-void-800.webp"); } }


/* The mobile benefit sentence is a flowing block; its decorative desktop break stays hidden. */
@media (max-width: 800px) {
  .homepage-pilot .hero-lead-break { display: none; }
}
/* The framed masthead retains a real flow row. Its artwork backdrop joins the
   hero after header-menu.js measures the flow offset. No content is absolutely
   placed beneath navigation, including when the compact menu expands. */
.homepage-pilot { display: flow-root; }
.homepage-pilot.hero-stage-connected .invitation .hero-art {
  top: calc(-1 * var(--hero-header-offset, 0px));
  bottom: auto;
  height: calc(100% + var(--hero-header-offset, 0px));
}
.homepage-pilot.hero-stage-connected .hero-slide::before {
  top: calc(-1 * var(--hero-header-offset, 0px));
}
.homepage-pilot.hero-stage-connected .invitation .hero {
  --hero-min: max(0px, calc(clamp(34rem, 64vh, 46rem) - var(--hero-header-offset, 0px)));
  align-items: center;
}
@supports (height: 1svh) {
 .homepage-pilot.hero-stage-connected .invitation .hero {
   --hero-min: max(0px, calc(clamp(34rem, 64svh, 46rem) - var(--hero-header-offset, 0px)));
 }
}
@media (max-width: 800px) {
 .homepage-pilot.hero-stage-connected .invitation .hero {
   --hero-min: max(0px, calc(64vh - var(--hero-header-offset, 0px)));
 }
 @supports (height: 1svh) {
  .homepage-pilot.hero-stage-connected .invitation .hero {
    --hero-min: max(0px, calc(64svh - var(--hero-header-offset, 0px)));
  }
 }
}

.homepage-pilot .arts-invitation { font-weight: 600; }
.homepage-pilot .arts-section > .wrap > .story-note { max-width: 58rem; margin: 0; padding: 1rem 1.25rem; }
.homepage-pilot .arts-section > .wrap > .story-note p { margin-bottom: .25rem; }
.homepage-pilot .arts-section > .wrap > .story-note h3 { font-size: 1rem; margin-bottom: .5rem; }

/* Pilot14 closing palette: local ink navy only. The CTA material keeps its
   separate approved full-face ripple pattern; the paper/footer stays warm. */
.homepage-pilot .closing-section {
  --nm-navy-base: #07182b;
  --nm-navy-surface: #0b2038;
  --nm-navy-elevation: #12304f;
  --nm-navy-hover: #12304f;
  --nm-on-navy: #f5e9cf;
  --nm-on-navy-muted: #c9c3b8;
  --nm-gold-border: #b8a06a;
  --nm-gold-accent: #cbb67b;
  background: linear-gradient(180deg, var(--nm-navy-surface), var(--nm-navy-base));
  color: var(--nm-on-navy);
  opacity: 1;
}
.homepage-pilot .closing-section :is(.newsletter-lead,label) { color: var(--nm-on-navy); }
.homepage-pilot .closing-section :is(.quiet,.availability) { color: var(--nm-on-navy-muted); }
.homepage-pilot .closing-section h2 em { color: var(--nm-gold-accent); }
@media (forced-colors: active) {
 .homepage-pilot .closing-section { background: Canvas; color: CanvasText; }
 .homepage-pilot .closing-section :is(.newsletter-lead,label,.quiet,.availability,h2 em) { color: CanvasText; }
}

/* Pilot14.1 review repair: on mobile the same portrait art spans the header
   and a modest clear collaboration window; copy then grows in its own row.
   This is deliberate visible artwork, not added empty carousel/hero space. */
@media (max-width: 800px) {
 .homepage-pilot .hero-slide {
   --mobile-art-window: clamp(9rem, 40vw, 11rem);
   display: grid;
   grid-template-columns: minmax(0, 1fr);
   grid-template-rows: var(--mobile-art-window) auto;
 }
 .homepage-pilot .invitation .hero,
 .homepage-pilot.hero-stage-connected .invitation .hero {
   grid-row: 2; min-height: 0; padding: 0; align-items: start;
 }
 .homepage-pilot .hero-copy {
   width: 100%; padding: 1.25rem max(16px, calc((100% - 34rem) / 2)) 1.5rem;
   background: #07182b;
 }
 .homepage-pilot .invitation .hero-art,
 .homepage-pilot.hero-stage-connected .invitation .hero-art {
   height: calc(var(--mobile-art-window) + var(--hero-header-offset, 0px));
   top: calc(-1 * var(--hero-header-offset, 0px)); bottom: auto;
 }
 .homepage-pilot .hero-slide::before,
 .homepage-pilot.hero-stage-connected .hero-slide::before {
   top: calc(-1 * var(--hero-header-offset, 0px)); bottom: auto;
   height: calc(var(--mobile-art-window) + var(--hero-header-offset, 0px));
   background: linear-gradient(180deg, rgba(4,14,30,.08), transparent 42%, transparent 88%, rgba(7,24,43,.52));
 }
}

/* Pilot16.3: one visible, meaningful inscription in reading order. The
   composition spans the full paper; complete words wrap instead of clipping.
   Pilot16.7 keeps the slightly faded crisp core and dark fractal filaments,
   with sparse directional edge roots and a closed-counter protection mask.
   The separate quote initializer applies document-local filter URLs via CSSOM;
   without JavaScript the original live glyph core remains unfiltered. */
.homepage-pilot .movement-script { display: grid; grid-template-columns: minmax(0, 1fr); grid-auto-flow: row; row-gap: clamp(.6rem,2.5vw,2.25rem); position: relative; width: 100%; max-width: none; margin: 0; padding: clamp(2rem,4vw,4rem) clamp(1rem,4vw,4rem); color: rgba(7,24,43,.45); opacity: 1; font-family: "Pinyon Script", cursive; font-size: clamp(2.25rem,6.6vw,8rem); font-style: normal; font-weight: 400; font-synthesis: none; line-height: 1.25; letter-spacing: 0; word-spacing: normal; }
.homepage-pilot .movement-script > .quote-line { position: relative; z-index: 1; display: block; grid-column: 1 / -1; min-width: 0; width: 100%; max-width: 100%; margin: 0; padding: .08em .18em; text-align: left; white-space: normal; overflow-wrap: anywhere; filter: none; }
.homepage-pilot .movement-script > .quote-line + .quote-line { text-align: right; }
.homepage-pilot .quote-filter-defs { position: absolute; pointer-events: none; }
@media (forced-colors: active) { .homepage-pilot .movement-script { color: CanvasText; } .homepage-pilot .movement-script > .quote-line { filter: none !important; } }

/* V12 card hierarchy, with unobtrusive in-place selectors at bottom left. */
.homepage-pilot .arts-destinations { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center; gap: .25rem 2rem; margin-top: 2rem; padding-top: 1rem; }
.homepage-pilot .arts-destinations a { display: inline-flex; align-items: center; min-height: 48px; padding: .5rem 0; font-size: 1rem; font-weight: 500; color: #0b2347; background: none; border: 0; text-decoration: none; text-underline-offset: .35em; }
.homepage-pilot .arts-destinations a:is(:hover,:focus-visible,[aria-selected="true"]) { text-decoration: underline; text-decoration-thickness: 1px; }
.homepage-pilot .arts-destinations a:focus-visible { outline: 2px solid #0b2347; outline-offset: 4px; }

/* In-place IA cards retain natural height and reserve the tallest content,
   rather than clipping fixed-height panels at mobile widths or text zoom. */
.homepage-pilot .arts-panel { min-width: 0; margin-bottom: 3rem; }
.homepage-pilot [data-arts-card].is-enhanced .arts-panels { display: grid; }
.homepage-pilot [data-arts-card].is-enhanced .arts-panel { grid-area: 1/1; margin-bottom: 0; }
.homepage-pilot [data-arts-card].is-enhanced .arts-panel[aria-hidden="true"] { visibility: hidden; pointer-events: none; }
.homepage-pilot .arts-panel:focus-visible { outline: 2px solid #0b2347; outline-offset: 6px; }
.homepage-pilot .arts-destinations a { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.homepage-pilot .character-carousel { margin-top: 1.5rem; min-width: 0; }
.homepage-pilot .character-controls { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .75rem; margin-top: 1.5rem; }
.homepage-pilot .character-controls[hidden] { display: none; }
.homepage-pilot .character-controls button { min-width: 0; max-width: 100%; overflow-wrap: anywhere; min-height: 48px; padding: .5rem .75rem; font: inherit; font-weight: 600; color: #0b2347; background: transparent; border: 1px solid #a48b58; border-radius: 3px; cursor: pointer; }
.homepage-pilot .character-count { margin: 0; text-align: center; font-size: .9375rem; overflow-wrap: anywhere; }
.homepage-pilot .character-slide { min-width: 0; margin-bottom: 2rem; }
.homepage-pilot .character-slide h3 { font-size: clamp(1.5rem,2.5vw,2rem); overflow-wrap: anywhere; line-height: 1.25; }
.homepage-pilot .character-slide p { font-size: 1.125rem; line-height: 1.75; }
.homepage-pilot .character-carousel.is-enhanced .character-slides { display: grid; }
.homepage-pilot .character-carousel.is-enhanced .character-slide { grid-area: 1/1; margin-bottom: 0; }
.homepage-pilot .character-carousel.is-enhanced .character-slide[aria-hidden="true"] { visibility: hidden; pointer-events: none; }
.homepage-pilot :is(.character-controls button,.character-slide):focus-visible { outline: 2px solid #0b2347; outline-offset: 4px; }
@media (max-width: 800px) { .homepage-pilot .character-controls { grid-template-columns: repeat(2,minmax(0,1fr)); } .homepage-pilot .character-count { grid-column: 1 / -1; grid-row: 2; padding-top: .5rem; } }
@media (forced-colors: active) { .homepage-pilot .character-controls button { color: ButtonText; border-color: ButtonText; } .homepage-pilot .arts-destinations a[aria-selected="true"] { color: LinkText; } }

/* Keep the four card selectors close to their content. Reduce only repeated
   inter-section paper gaps; the full-width inscription keeps its own space. */
.homepage-pilot .arts-destinations { margin-top: 1rem; padding-top: .25rem; }
.homepage-pilot .movement-section, .homepage-pilot .arts-section, .homepage-pilot .participation-section, .homepage-pilot .events-section, .homepage-pilot .feature { padding-block: clamp(3rem,5vw,4.5rem); }

/* Reading/focus order reaches the active panel after its selectors while the
   familiar visual selector position remains at the bottom left. */
.homepage-pilot [data-arts-card] { display: flex; flex-direction: column; }
.homepage-pilot .arts-panels { order: 1; min-width: 0; }
.homepage-pilot .arts-destinations { order: 2; }

/* Main-card second row pairs the large IA print with the Village inset.
   The invitation follows below, so it cannot push one paired item downward. */
.homepage-pilot .arts-main-layout { grid-template-areas: "invitation invitation" "heading intro" "signature village"; align-items: start; row-gap: 1.5rem; }
.homepage-pilot .arts-main-layout > h2 { grid-area: heading; margin-bottom: 0; }
.homepage-pilot .arts-main-intro { grid-area: intro; }
.homepage-pilot .arts-main-intro > p:last-child { margin-bottom: 0; }
.homepage-pilot .arts-main-layout > .arts-signature { grid-area: signature; margin: 0; padding-top: 1.5rem; }
.homepage-pilot .arts-main-layout > .story-note { grid-area: village; margin: 0; padding: 1.5rem; }
.homepage-pilot .arts-main-layout > .story-note h3 { margin-top: 0; }
.homepage-pilot .arts-main-layout > .arts-invitation { grid-area: invitation; margin: 0; }
@media (max-width: 800px) { .homepage-pilot .arts-main-layout { grid-template-columns: minmax(0,1fr); grid-template-areas: "invitation" "heading" "intro" "signature" "village"; } }

/* Inactive enhanced cards must not contribute intrinsic height. The selected
   card remains normal-flow, followed immediately by its predictable selectors.
   WithoutJS no aria-hidden flags are set, so every panel remains readable. */
.homepage-pilot [data-arts-card].is-enhanced .arts-panel[aria-hidden="true"] { display: none; }
.homepage-pilot [data-arts-card].is-enhanced .arts-panel[aria-hidden="false"] { display: block; }

/* Pilot16.8: the exact two-phrase invitation introduces both columns, with
   modest type and deliberate phrase spacing instead of oversized lettering. */
.homepage-pilot .arts-main-layout > .arts-invitation { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 7%; align-items: baseline; width: 100%; padding-bottom: .5rem; font-size: clamp(1.125rem,1rem + .65vw,1.625rem); line-height: 1.5; letter-spacing: .045em; font-weight: 500; }
.homepage-pilot .arts-invitation > span { min-width: 0; }
@media (max-width: 800px) {
 .homepage-pilot .arts-main-layout > .arts-invitation { grid-template-columns: minmax(0,1fr); row-gap: .25rem; font-size: 1.125rem; letter-spacing: .025em; }
}

/* Pilot16.10: supplied IA identity in the open space between signature and
   Village story. Normal-flow wrapping protects narrow and enlarged layouts. */
.homepage-pilot .arts-main-layout > .arts-identity { grid-area: signature; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem; min-width: 0; padding-top: 1.5rem; }
.homepage-pilot .arts-identity > .arts-signature { flex: 1 1 12.5rem; min-width: 0; margin: 0; padding-top: 0; }
.homepage-pilot .arts-logomark { flex: 0 1 auto; width: clamp(6rem,9.5vw,9rem); max-width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; border: 0; background: none; }
@media (max-width: 600px) {
 .homepage-pilot .arts-main-layout > .arts-identity { flex-direction: column; align-items: flex-start; gap: 1.25rem; }
 .homepage-pilot .arts-identity > .arts-signature { flex-basis: auto; }
 .homepage-pilot .arts-logomark { align-self: center; width: 7rem; }
}

/* Curated historical originals. Enhancement is manual; no crop or autoplay. */
.homepage-pilot .historical-carousel { margin-top:1.5rem; min-width:0; }
.homepage-pilot .historical-carousel:focus-visible { outline:3px solid var(--focus); outline-offset:6px; }
.homepage-pilot .archive-context { font-size:.9375rem; color:var(--muted); }
.homepage-pilot .media-slides { display:grid; gap:2rem; }
.homepage-pilot .media-slide { min-width:0; }
.homepage-pilot .media-slide[hidden],.homepage-pilot [data-media-controls][hidden] { display:none !important; }
.homepage-pilot .media-slide figure { margin:0; }
.homepage-pilot .media-frame { display:grid; place-items:center; width:100%; aspect-ratio:1; background:rgba(11,35,71,.035); }
.homepage-pilot .media-frame :is(img,video) { display:block; width:100%; max-width:100%; height:auto; object-fit:contain; }
.homepage-pilot .media-frame--small img { width:min(100%,320px); }
.homepage-pilot .media-slide figcaption { padding-top:1rem; }
.homepage-pilot .media-slide h3 { font-size:1.125rem; line-height:1.4; margin:0 0 .35rem; }
.homepage-pilot .archive-date,.homepage-pilot .archive-credit { margin:0 0 .35rem; font-size:.9375rem; line-height:1.55; color:var(--muted); }
.homepage-pilot .archive-file-link { display:inline-flex; align-items:center; min-height:48px; font-size:.9375rem; }
.homepage-pilot .media-controls { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:.75rem; align-items:center; margin-top:1rem; }
.homepage-pilot .media-controls button { min-width:48px; min-height:48px; max-width:100%; padding:.6rem .85rem; border:1px solid var(--line); color:var(--ink); background:var(--paper); font:inherit; cursor:pointer; overflow-wrap:anywhere; }
.homepage-pilot .media-count { margin:0; font-size:.875rem; line-height:1.5; text-align:center; }
@media(max-width:480px){
 .homepage-pilot .media-controls { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .homepage-pilot .media-count { grid-column:1/-1; grid-row:2; }
}
@media(forced-colors:active){
 .homepage-pilot .media-frame { background:Canvas; }
 .homepage-pilot .media-controls button { border-color:ButtonText; color:ButtonText; background:Canvas; }
}

/* The approved reel stays inert until an explicit Play action. Responsive
   posters/photos preserve the whole frame; no video bytes load on selection. */
.homepage-pilot .media-frame picture { display:block; width:100%; min-width:0; }
.homepage-pilot .media-frame--small picture { width:min(100%,320px); }
.homepage-pilot .media-frame--video { aspect-ratio:auto; position:relative; }
.homepage-pilot .media-frame--video :is(picture,video) { aspect-ratio:16 / 9; }
.homepage-pilot :is([data-media-video],[data-media-poster],[data-media-play])[hidden] { display:none !important; }
.homepage-pilot .media-play { display:block; width:100%; min-height:48px; padding:.75rem 1rem; border:1px solid var(--ink); color:var(--paper); background:var(--ink); font:inherit; font-weight:600; cursor:pointer; }
.homepage-pilot .media-status { margin:.5rem 0 0; font-size:.9375rem; line-height:1.5; }
.homepage-pilot .media-status:empty { display:none; }
.homepage-pilot .reel-credits { margin-top:.5rem; }
.homepage-pilot .reel-credits summary { min-height:48px; padding:.75rem 0; cursor:pointer; font-size:.9375rem; }
.homepage-pilot .reel-credits dl { margin:.5rem 0; font-size:.9375rem; line-height:1.55; }
.homepage-pilot .reel-credits dt { margin-top:.8rem; font-weight:600; }
.homepage-pilot .reel-credits dd { margin:0; color:var(--muted); }
.homepage-pilot :is(.media-play,.media-controls button,.reel-credits summary,video):focus-visible { outline:3px solid var(--focus); outline-offset:4px; }
@media(forced-colors:active){ .homepage-pilot .media-play { color:ButtonText; border-color:ButtonText; background:ButtonFace; } }

/*16.16: align the invitation with its actual content columns. */
/* A paragraph's generic 66ch cap must not shorten this full-width grid row.
   Match the actual content tracks/gap; subgrid shares their exact boundaries.
   The existing one-column mobile rule and shared text baseline stay in place. */
.homepage-pilot .arts-main-layout > .arts-invitation { max-width: none; grid-template-columns: inherit; column-gap: inherit; }
@supports (grid-template-columns: subgrid) {
 .homepage-pilot .arts-main-layout > .arts-invitation { grid-template-columns: subgrid; }
}

/* Movement gallery: the anchor and natural-height panels share page tracks.
   Only enhanced panels/slides are stacked. Hidden content remains inert and
   visibility:hidden; it reserves height without clipping or loading video. */
.homepage-pilot .arts-shared-anchor { margin-bottom: 1.5rem; }
.homepage-pilot .arts-shared-anchor > .arts-invitation { display: grid; grid-column: 1 / -1; grid-template-columns: inherit; column-gap: inherit; align-items: baseline; width: 100%; max-width: none; margin: 0; padding-bottom: .5rem; font-size: clamp(1.125rem,1rem + .65vw,1.625rem); line-height: 1.5; letter-spacing: .045em; font-weight: 500; }
@supports (grid-template-columns: subgrid) { .homepage-pilot .arts-shared-anchor > .arts-invitation { grid-template-columns: subgrid; } }
.homepage-pilot .arts-main-layout { grid-template-areas: "heading intro" "signature village"; }
.homepage-pilot [data-arts-card].is-enhanced .arts-panel[aria-hidden="true"] { display: block; visibility: hidden; pointer-events: none; }
.homepage-pilot [data-arts-card].is-enhanced .arts-panel { align-self: start; }
.homepage-pilot .movement-layout { row-gap: 1.5rem; }
.homepage-pilot .movement-layout > [data-portfolio-slot] { grid-column: 1 / -1; min-width: 0; }
.homepage-pilot .movement-layout .historical-carousel { margin-top: 0; }
.homepage-pilot .historical-carousel.is-enhanced .media-stage { display: grid; grid-template-columns: minmax(0,4fr) minmax(0,1fr); gap: clamp(.5rem,2vw,1.5rem); align-items: start; }
.homepage-pilot .historical-carousel.is-enhanced .media-slides { min-width: 0; gap: 0; }
.homepage-pilot .historical-carousel.is-enhanced .media-slide { grid-area: 1 / 1; align-self: start; }
.homepage-pilot .historical-carousel.is-enhanced .media-slide[hidden] { display: block !important; visibility: hidden; pointer-events: none; }
/* Keep photo rotation steady, but do not reserve an inactive reel’s expanded credits. */
.homepage-pilot .historical-carousel.is-enhanced .media-slide[hidden][data-media-origin="approved-reel"] { display: none !important; }
.homepage-pilot .historical-carousel.is-enhanced .media-frame { aspect-ratio: 16 / 9; }
.homepage-pilot .historical-carousel.is-enhanced .media-frame > picture { width: 100%; height: 100%; min-height: 0; }
.homepage-pilot .historical-carousel.is-enhanced .media-frame :is(img,video) { width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.homepage-pilot .historical-carousel.is-enhanced .media-frame--small > picture { width: min(100%,320px); }
.homepage-pilot .historical-carousel.is-enhanced .media-frame--video { grid-template-columns: minmax(0,1fr); grid-template-rows: minmax(0,1fr); }
.homepage-pilot .historical-carousel.is-enhanced .media-frame--video > :is(picture,video) { grid-area: 1 / 1; }
.homepage-pilot .historical-carousel.is-enhanced .media-play { grid-area: 1 / 1; align-self: end; z-index: 1; }
.homepage-pilot .media-rotation-controls { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1rem; margin-bottom: .75rem; }
.homepage-pilot :is([data-media-rotation],.media-peek) { min-width: 48px; min-height: 48px; max-width: 100%; padding: .6rem .85rem; border: 1px solid var(--line); color: var(--ink); background: var(--paper); font: inherit; cursor: pointer; overflow-wrap: anywhere; }
.homepage-pilot :is([data-media-rotation],.media-peek)[hidden] { display: none !important; }
.homepage-pilot .media-rotation-note { font-size: .875rem; color: var(--muted); }
.homepage-pilot .media-peek { display: grid; gap: .5rem; width: 100%; padding: 0 0 .6rem; text-align: left; align-self: start; }
.homepage-pilot .media-peek img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; background: var(--wash); }
.homepage-pilot .media-peek-label,.homepage-pilot .media-peek-title { padding-inline: .5rem; }
.homepage-pilot .media-peek-label { font-size: .8125rem; }
.homepage-pilot .media-peek-title { font-size: .875rem; line-height: 1.4; }
.homepage-pilot :is([data-media-rotation],.media-peek):focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }
.homepage-pilot .closing-layout h2 { max-width: none; text-wrap: wrap; }
@media (max-width: 800px) {
 .homepage-pilot .arts-main-layout { grid-template-areas: "heading" "intro" "signature" "village"; }
 .homepage-pilot .arts-shared-anchor > .arts-invitation { grid-template-columns: minmax(0,1fr); row-gap: .25rem; font-size: 1.125rem; letter-spacing: .025em; }
 .homepage-pilot .historical-carousel.is-enhanced .media-frame { aspect-ratio: 4 / 3; }
}
@media (max-width: 480px) {
 .homepage-pilot .media-peek-title { display: none; }
 .homepage-pilot .media-peek-label { font-size: .75rem; padding-inline: .2rem; }
}
@media (forced-colors: active) {
 .homepage-pilot :is([data-media-rotation],.media-peek) { color: ButtonText; border-color: ButtonText; background: Canvas; }
}
/* One responsive column contract for the persistent anchor and all IA panels. */
.homepage-pilot :is(.arts-shared-anchor,.arts-panel > .feature-layout) { grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 7%; }
.homepage-pilot [data-media-rotation]:disabled { cursor: default; }
@media (max-width: 800px) { .homepage-pilot :is(.arts-shared-anchor,.arts-panel > .feature-layout) { grid-template-columns: minmax(0,1fr); column-gap: 1.5rem; } }
/* Live rotation explanations reserve their natural maximum at each width/font,
   so arming/pausing never changes the shared card height. No fixed text box. */
.homepage-pilot .media-rotation-note { display: grid; }
.homepage-pilot .media-rotation-note > span { grid-area: 1 / 1; }
.homepage-pilot .media-rotation-measure { visibility: hidden; pointer-events: none; }
.homepage-pilot [data-media-carousel]:not(.is-enhanced) .media-rotation-controls { display: none; }
/* Narrow media stays full width; the next thumbnail uses a readable row.
   Play has its own naturally sized row rather than covering the media. An
   inert text sizer preserves that row while the actual control is hidden. */
.homepage-pilot .media-play-sizer { display: none; }
@media (max-width: 480px) {
 .homepage-pilot .historical-carousel.is-enhanced .media-stage { grid-template-columns: minmax(0,1fr); }
 .homepage-pilot .media-peek { grid-template-columns: minmax(0,1fr) minmax(0,3fr); column-gap: .5rem; align-items: start; padding: .5rem; }
 .homepage-pilot .media-peek img { grid-column: 1; grid-row: 1 / 3; }
 .homepage-pilot .media-peek-label { grid-column: 2; grid-row: 1; padding-inline: 0; overflow-wrap: normal; word-break: normal; }
 .homepage-pilot .media-peek-title { display: block; grid-column: 2; grid-row: 2; padding-inline: 0; }
 .homepage-pilot .historical-carousel.is-enhanced .media-frame--video { aspect-ratio: auto; grid-template-rows: auto auto; }
 .homepage-pilot .historical-carousel.is-enhanced .media-frame--video > :is(picture,video) { grid-area: 1 / 1; aspect-ratio: 4 / 3; height: auto; }
 .homepage-pilot .historical-carousel.is-enhanced .media-play { grid-area: 2 / 1; align-self: stretch; }
 .homepage-pilot .historical-carousel.is-enhanced .media-play-sizer { display: grid; grid-area: 2 / 1; min-height: 48px; width: 100%; padding: .75rem 1rem; border: 1px solid transparent; font: inherit; font-weight: 600; visibility: hidden; pointer-events: none; text-align: center; }
 .homepage-pilot .media-play-sizer > span { grid-area: 1 / 1; }
}
/* Keep narrow gallery navigation words whole; wrap controls, not letters. */
@media (max-width: 480px) {
 .homepage-pilot .media-controls { display: flex; flex-wrap: wrap; }
 .homepage-pilot .media-controls button { flex: 1 1 auto; overflow-wrap: normal; word-break: normal; }
 .homepage-pilot .media-count { flex: 1 0 100%; order: 1; }
}
/* Reserve a modest responsive floor, never the tallest inactive card. */
.homepage-pilot [data-arts-card].is-enhanced .arts-panels { min-height: clamp(18rem,32vw,28rem); }
.homepage-pilot [data-arts-card].is-enhanced .arts-panel[aria-hidden="true"] { display: none; }
@media (prefers-reduced-motion: reduce) {
 .homepage-pilot [data-arts-card].is-enhanced .arts-panels { transition: none !important; }
}
/* Apply the same whole-word wrapping to the Nomads controls. */
@media (max-width: 480px) {
 .homepage-pilot .character-controls { display: flex; flex-wrap: wrap; }
 .homepage-pilot .character-controls button { flex: 1 1 auto; overflow-wrap: normal; word-break: normal; }
 .homepage-pilot .character-count { flex: 1 0 100%; order: 1; }
}

/*16.18: emphasize only the requested closing word. */
.homepage-pilot #closing-title strong { font-weight: 700; }

/*16.20: one complete phrase per line at ordinary mobile text sizes.
  Keep live wording, Pinyon strokes and local ink effects. The rem minimum
  grows with the user's text setting; normal wrapping remains available for
  enlarged text, spacing overrides, fallback fonts and smaller viewports. */
@media (max-width: 800px) {
 .homepage-pilot .movement-script { font-size: clamp(1.25rem, 6.2vw, 3rem); }
}

/*16.20: three compact selectors use normal-size type and grow naturally.
   At narrow widths, labels may wrap at spaces within the same three-across row.
   Rem-based control minimums let enlarged text reflow whole controls to new rows. */
@media (max-width: 480px) {
 .homepage-pilot .arts-destinations { column-gap: .5rem; }
 .homepage-pilot .arts-destinations a { flex: 1 1 5.5rem; min-width: min(100%,5.5rem); }
}

/* The Nomads card: remove its forced title break; enlarged text may reflow. */
.homepage-pilot #arts-nomads-panel .arts-signature { font-size: clamp(2rem, calc(1rem + 5vw), 3rem); white-space: normal; }
.homepage-pilot #arts-nomads-panel .arts-signature > br { display: none; }
.homepage-pilot #arts-nomads-panel .arts-signature > span::before { content: " "; white-space: pre; }
.homepage-pilot #arts-nomads-panel .arts-signature > small { display: block; }

/* Quote bridge: raise the first half; keep the second half and outer height. */
.homepage-pilot .movement-script {
 --quote-bridge-shift: clamp(.75rem, 2vw, 1rem);
 padding-top: calc(clamp(2rem, 4vw, 4rem) - var(--quote-bridge-shift));
 row-gap: calc(clamp(.6rem, 2.5vw, 2.25rem) + var(--quote-bridge-shift));
}

/* Requested section signatures: match card heading first lines; retain natural text reflow. */
.homepage-pilot :is(#arts-nomads-panel .arts-signature, .arts-main-layout .arts-identity > .arts-signature) { font-family: inherit; font-size: clamp(2rem, calc(1rem + 5vw), 3rem); font-weight: 550; letter-spacing: -.035em; line-height: 1.16; white-space: normal; }
.homepage-pilot :is(#arts-nomads-panel .arts-signature, .arts-main-layout .arts-identity > .arts-signature) > span { font-weight: inherit; }
.homepage-pilot .arts-main-layout .arts-identity > .arts-signature > br { display: none; }
.homepage-pilot .arts-main-layout .arts-identity > .arts-signature > span::before { content: " "; white-space: pre; }
.homepage-pilot :is(#arts-nomads-panel .arts-signature, .arts-main-layout .arts-identity > .arts-signature) > small { display: block; font-weight: 400; }

/* Caravan remains a separate product entrance before Infinite Arts. */
.homepage-pilot .caravan-note.wrap { max-width: 76rem; }
.homepage-pilot .caravan-note-card { border: 1px solid #bda77d; border-radius: .4rem; padding: clamp(1.5rem,3vw,2rem) clamp(1.5rem,4vw,3rem); background: #fff8e8; }
.homepage-pilot .caravan-note h2 { font-size: clamp(2rem,4vw,3rem); margin: .5rem 0 1rem; }
.homepage-pilot .caravan-note .caravan-description { max-width: 60ch; font-size: clamp(1.25rem,2.2vw,1.75rem); line-height: 1.55; text-wrap: balance; margin-bottom: calc(1em + 4px); }
.homepage-pilot .caravan-note .eyebrow { margin: 0 auto; }
.homepage-pilot .caravan-note .caravan-status { margin: 0; color: #4b5563; font-size: .9375rem; line-height: 1.6; }
.homepage-pilot .caravan-note .caravan-intent { max-width: min(64ch, 35rem); font-size: 1.0625rem; line-height: 1.6; }

/* The shared repaired landscape scene keeps its compact composition when the
   in-flow menu grows; only the bitmap is capped, not the header or hero layout. */
@media (max-width: 800px) {
 .homepage-pilot .hero-art img {
   position: absolute; bottom: 0;
   height: min(100%, calc(var(--mobile-art-window) + 9rem));
 }
}

/* Caravan identity: transparent native SVG, scoped to homepage product card. */
.homepage-pilot .caravan-note .caravan-brand { display: flex; align-items: center; gap: 1rem; margin: .5rem 0 1rem; }
.homepage-pilot .caravan-note .caravan-brand h2 { margin: 0; }
.homepage-pilot .caravan-note .caravan-logo { display: block; width: 4rem; height: 4rem; flex: 0 0 auto; }
@media (max-width: 600px) {
  .homepage-pilot .caravan-note .caravan-brand { gap: .75rem; }
  .homepage-pilot .caravan-note .caravan-logo { width: 3rem; height: 3rem; }
}

/* Centered Caravan product introduction. */
.homepage-pilot .caravan-note-card { text-align: center; }
.homepage-pilot .caravan-note .caravan-brand { justify-content: center; }
.homepage-pilot .caravan-note .caravan-description { max-width: 64ch; margin-inline: auto; margin-bottom: 1rem; }
.homepage-pilot .caravan-note .caravan-intent { margin-inline: auto; text-wrap: balance; }
.homepage-pilot .caravan-note .actions { justify-content: center; }
.homepage-pilot .caravan-note .actions { flex-direction: column; gap: .75rem; margin-top: 1.5rem; }

/* Larger single product entrance on narrow touch screens. */
@media (max-width: 480px) {
 .homepage-pilot .caravan-note .actions > .button { width: 100%; }
}

/* Approved static illustration of the current Caravan interface with fictional sample content. */
.homepage-pilot .caravan-product-visual { position:relative; width:85%; max-width:48rem; margin:1.5rem auto 0; padding:0; border:0; border-radius:.4rem; overflow:hidden; background:#fff8e8; box-shadow:.625rem 1.125rem 1.125rem -.375rem rgba(7,24,43,.42); }
.homepage-pilot .caravan-product-visual[hidden] { display:none; }
.homepage-pilot .caravan-product-visual::after { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; background:linear-gradient(to bottom,rgba(7,24,43,.07),transparent 16%),radial-gradient(ellipse at center,transparent 68%,rgba(7,24,43,.10) 100%); }
.homepage-pilot .caravan-product-visual img { display:block; width:100%; height:auto; object-fit:contain; }

/* Quintessential Regular, unmodified Google Fonts distribution; SIL OFL1.1
   accompanies the web asset. Warm ink with responsive, restrained wisps. */
@font-face { font-family:"NM Quintessential"; src:url("/assets/fonts/quintessential/Quintessential-Regular.ttf") format("truetype"); font-style:normal; font-weight:400; font-display:swap; }
.homepage-pilot .movement-script > .quote-line--quintessential {
 font-family:"NM Quintessential",serif; font-weight:400; font-style:italic; font-synthesis:style;
 font-size:clamp(2rem,5.2vw,6rem); line-height:1.4;
 color:#463a2c; opacity:0.61; filter:none; text-shadow:none;
}
@media(forced-colors:active) { .homepage-pilot .movement-script > .quote-line--quintessential { color:CanvasText; } }

@media(max-width:650px) { .homepage-pilot .caravan-product-visual { width:100%; max-width:16rem; padding:0; } .homepage-pilot .caravan-product-visual img { width:100%; object-fit:contain; } }

/* Keep participation choices together in visual and keyboard order. */
.homepage-pilot .participation-links { display:flex; flex-direction:column; align-items:flex-start; gap:.25rem; margin-top:1rem; }

/* Give the desktop hero panel room within the artwork; mobile keeps its own row. */
@media (min-width: 801px) {
 .homepage-pilot .invitation .hero { padding-block: clamp(3rem, 4vw, 4rem); }
}

/* Keep the two full lyric phrases readable on ordinary narrow-phone widths.
   Natural wrapping stays available for enlarged text and fallback fonts. */
@media (max-width: 800px) {
 .homepage-pilot .movement-script > .quote-line--quintessential {
  font-size: clamp(1.125rem, 5.8vw, 2rem);
 }
 .homepage-pilot .arts-shared-anchor > .arts-invitation {
  row-gap: .375rem; text-align: center; letter-spacing: 0; line-height: 1.5;
 }
 .homepage-pilot .arts-shared-anchor > .arts-invitation > span:first-child { font-weight: 600; }
 .homepage-pilot .arts-shared-anchor > .arts-invitation > span + span { font-weight: 400; }
}
