/* Approved final refinements: page typography, language selection and navigation.
   Main demo and supporting workspace scenes retain their own locked styles. */
.landing #hero-heading { font-size:clamp(36px,5.25vw,75px); }
.landing #hero-heading .hero-closing { --hero-entry-x:-64px; }
.landing .plan-choice .visually-hidden { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.landing .setup-tabs { width:min(100%,680px); max-width:680px; margin-block-end:var(--space-8); }
.landing .download-action { gap:var(--space-2); font-size:16px; }
.landing .download-apple { display:block; flex:none; width:20px; height:24px; fill:currentColor; stroke:none; }
.landing .offer-download .download-apple { width:20px; height:24px; fill:currentColor; stroke:none; }
.landing .page-header:has(.language-picker) { gap:var(--space-6); }
.landing .final-desktop-nav { gap:var(--space-6); }
.landing .language-picker { position:relative; z-index:30; justify-self:end; font:500 14px/1.5 var(--font-body); }
.landing .language-picker summary { display:flex; align-items:center; gap:var(--space-2); min-height:44px; padding:var(--space-2); cursor:pointer; list-style:none; }
.landing .language-picker summary::-webkit-details-marker { display:none; }
.landing .language-picker summary svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.5; }
.landing .language-picker summary:hover { color:var(--color-accent); }
.landing .language-picker nav { position:absolute; top:100%; right:0; min-width:164px; padding:var(--space-2); border:1px solid var(--color-control); border-radius:var(--radius-disclosure); background:var(--color-bg); }
.landing .language-picker nav a { display:flex; align-items:center; min-height:44px; padding:var(--space-2) var(--space-3); color:var(--color-support); text-decoration:none; }
.landing .language-picker nav a:hover { color:var(--color-text); background:var(--color-surface); }
.landing .language-picker nav a[aria-current=page] { color:var(--color-accent); text-decoration:underline; text-underline-offset:4px; }
.landing .language-picker :focus-visible { outline:2px solid var(--color-focus); outline-offset:2px; }
.landing .offer-mascot { display:block; position:relative; flex:none; width:64px; height:72px; overflow:hidden; }
.landing .offer-mascot img { position:absolute; width:64px; height:64px; bottom:0; left:0; object-fit:contain; image-rendering:pixelated; }
.landing .offer-mascot canvas { display:block; position:absolute; top:-24px; left:0; width:64px; height:120px; image-rendering:pixelated; }
.landing .offer-mascot[data-ready] img { visibility:hidden; }
@media (min-width:768px) and (max-width:1199px) {
  .landing .primary-nav.final-desktop-nav { display:none; }
  .landing .final-mobile-nav { display:block; position:relative; }
  .landing .final-mobile-nav > summary { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); min-height:44px; padding:var(--space-2) var(--space-3); border:1px solid var(--color-control); border-radius:var(--radius-control); font:500 14px/1.5 var(--font-body); cursor:pointer; list-style:none; }
  .landing .final-mobile-nav > summary::-webkit-details-marker { display:none; }
  .landing .final-nav-caret { width:16px; height:16px; fill:currentColor; }
  .landing .final-mobile-nav[open] .final-nav-caret { transform:rotate(180deg); }
  .landing .final-mobile-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-2) var(--space-4); padding:var(--space-4) 0; min-width:320px; }
  .landing .final-mobile-links > a { display:flex; align-items:center; min-height:44px; padding:var(--space-2); font-size:14px; font-weight:500; text-decoration:none; }
  .landing .final-mobile-links > a:hover { text-decoration:underline; text-underline-offset:4px; }
  .landing .page-header:has(.language-picker) { grid-template-columns:1fr auto auto; }
  .landing .final-mobile-nav { grid-column:2; grid-row:1; }
  .landing .language-picker { grid-column:3; grid-row:1; align-self:start; }
  .landing .page-header > .site-brand { align-self:start; min-height:44px; }
}
@media (max-width:767px) {
  .landing #hero-heading { font-size:clamp(36px,7vw,52px); }
  .landing #hero-heading .hero-closing { --hero-entry-x:-32px; }
  .landing .page-header:has(.language-picker) { grid-template-columns:1fr auto; gap:var(--space-4); }
  .landing .language-picker { grid-column:2; grid-row:1; }
}
@media (forced-colors:active) {
  .landing .language-picker nav { background:Canvas; border-color:ButtonText; }
  .landing .language-picker nav a[aria-current=page] { color:LinkText; }
}

/* r19: names carry character; pose navigation stays quiet and functional. */
.landing [data-crew-showcase] .creature-ensemble p { color:var(--mascot-ink,var(--color-text)); font:600 18px/1.45 var(--font-display); letter-spacing:.01em; }
.landing [data-crew-showcase] .creature-ensemble p span { color:var(--color-support); font:400 13px/1.5 var(--font-body); letter-spacing:0; }
.landing .creature-ensemble li:has([data-crew-species="helion"]) { --mascot-ink:#E9C36A; }
.landing .creature-ensemble li:has([data-crew-species="brewling"]) { --mascot-ink:#8CCCE6; }
.landing .creature-ensemble li:has([data-crew-species="frothneck"]) { --mascot-ink:#83CDB1; }
.landing .creature-ensemble li:has([data-crew-species="coil"]) { --mascot-ink:#D7A3C1; }
.landing .creature-ensemble li:has([data-crew-species="crookneck"]) { --mascot-ink:#ACCC73; }
.landing .creature-ensemble li:has([data-crew-species="clawd"]) { --mascot-ink:#DDA492; }
.landing [data-crew-showcase] .crew-timer { font:400 13px/1.35 var(--font-body); }
.landing [data-crew-showcase] .crew-timer[aria-pressed="true"] { font-weight:500; }
@media (forced-colors:active) {
 .landing [data-crew-showcase] .creature-ensemble p { color:CanvasText; }
}
