/* Phone-only composition. The frozen >=721px layout remains authoritative. */
.mobile-pillars { display: none; }
.mobile-pillar-anchor { position: absolute; top: 0; left: 0; width: 1px; height: 1px; pointer-events: none; }
@media (max-width: 720px) {
  .home-page { --header-height: 120px; --mobile-hero-position: 50% 44%; }
  .home-page .site-header { position: relative; height: auto; min-height: var(--header-height); grid-template-columns: 1fr auto; gap: 6px; padding: calc(10px + env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left)); background: #0c0906; }
  .home-page .brand { grid-column: 1 / -1; justify-self: center; height: auto; min-height: 48px; gap: 8px; }
  .home-page .brand-tree { width: 44px; height: 46px; }
  .home-page .brand-type strong { font-size: 30px; }
  .home-page .brand-type small { display: block; font-size: 6px; letter-spacing: .09em; }
  .home-page .utility-nav { grid-row: 2; grid-column: 1; gap: 8px; justify-self: start; }
  .home-page .utility-nav a, .home-page .utility-nav a:nth-child(2) { display: flex; min-width: 48px; min-height: 44px; gap: 6px; }
  .home-page .utility-label { display: block; font-size: 9px; letter-spacing: .04em; }
  .home-page .utility-icon { width: 16px; height: 16px; }
  .home-page .nav-toggle { grid-column: 2; grid-row: 2; min-width: 44px; min-height: 44px; }
  .home-page .primary-nav { position: absolute; inset: 100% 0 auto; padding: 12px 16px; width: 100%; background: #181109; }
  .home-page .primary-nav ul { display: grid; grid-template-columns: 1fr 1fr; }
  .home-page .primary-nav a { display: flex; min-height: 44px; align-items: center; font-size: 12px; }
  .home-page .home-main { padding: 0; }
  .home-page .home-hero { min-height: 0; height: auto; overflow: visible; background: #0c0906; padding-bottom: 32px; }
  .home-page .home-poster-layer { position: relative; display: block; inset: auto; width: 100%; height: auto; aspect-ratio: 870 / 790; }
  .home-page .home-poster-layer img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: var(--mobile-hero-position); transform: none; opacity: 1; }
  .home-page .hero-veil { display: none; }
  .home-page .home-copy { position: relative; inset: auto; width: auto; padding: 24px max(20px, env(safe-area-inset-right)) 0 max(20px, env(safe-area-inset-left)); text-align: center; }
  .home-page .home-fallback-title { font-size: clamp(24px, 6.8vw, 36px); line-height: 1.22; letter-spacing: -.02em; margin: 0; }
  .home-page .editorial-divider { margin: 18px auto 14px; width: 65%; }
  .home-page .home-deck { font-size: 16px; margin: 0 0 22px; color: var(--text-secondary); }
  .home-page .gold-cta { position: relative; inset: auto; width: 100%; max-width: 390px; min-height: 52px; height: auto; font-size: 11px; letter-spacing: .1em; }
  .home-page .portal-stage { display: none; }
  .home-page .mobile-pillar-anchor { top: 100%; }
  .home-page .atmosphere-shell { position: absolute; top: 12px; right: max(12px, env(safe-area-inset-right)); bottom: auto; opacity: 1; }
  .home-page .atmosphere-trigger { width: 44px; height: 44px; min-width: 44px; min-height: 44px; background: rgb(12 9 6 / 88%); }
  .home-page .atmosphere-panel { position: absolute; top: 54px; bottom: auto; right: 0; left: auto; width: min(352px, calc(100vw - 24px)); max-height: 65svh; overflow-y: auto; }
  .home-page .atmosphere-track, .home-page .icon-button, .home-page .play-control, .home-page .mute-control { min-height: 44px; min-width: 44px; }
  .home-page .volume-control input { min-height: 44px; }
  .home-page .mobile-pillars { display: block; padding: 0 max(16px, env(safe-area-inset-right)) calc(40px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left)); }
  .mobile-pillars ol { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; list-style: none; padding: 0; margin: 0; }
  .mobile-pillar-card { display: block; overflow: hidden; border: 1px solid var(--border); border-radius: 3px; background: linear-gradient(145deg, #21180e, #100c08); transition: border-color 180ms ease, box-shadow 180ms ease; }
  .mobile-pillar-media { overflow: hidden; aspect-ratio: 4 / 3; border-bottom: 1px solid var(--border); }
  .mobile-pillar-card img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: var(--mobile-pillar-position); transform: scale(var(--mobile-pillar-scale, 1)); transform-origin: var(--mobile-pillar-position); }
  .mobile-pillar-card[data-pillar="sound-resonance"] { --mobile-pillar-position: 52% 48%; --mobile-pillar-scale: 1.08; }
  .mobile-pillar-card[data-pillar="crystals-minerals"] { --mobile-pillar-position: 56% 50%; --mobile-pillar-scale: 1.05; }
  .mobile-pillar-card[data-pillar="tuning-forks"] { --mobile-pillar-position: 59% 48%; --mobile-pillar-scale: 1.02; }
  .mobile-pillar-card[data-pillar="herbs"] { --mobile-pillar-position: 62% 49%; --mobile-pillar-scale: 1.02; }
  .mobile-pillar-card[data-pillar="mushrooms"] { --mobile-pillar-position: 61% 49%; --mobile-pillar-scale: 1.03; }
  .mobile-pillar-card[data-pillar="slavic-heritage"] { --mobile-pillar-position: 55% 50%; --mobile-pillar-scale: 1.01; }
  .mobile-pillar-card[data-pillar="natural-medicine"] { --mobile-pillar-position: 59% 47%; --mobile-pillar-scale: 1; }
  .mobile-pillar-card[data-pillar="astrology"] { --mobile-pillar-position: 63% 47%; --mobile-pillar-scale: 1.02; }
  .mobile-pillar-copy { padding: 20px 18px 24px; text-align: center; }
  .mobile-pillar-copy h2 { margin: 0 0 10px; color: var(--gold-bright); font: 26px/1.15 var(--serif); }
  .mobile-pillar-copy p { margin: 0; color: var(--text-secondary); font-size: 14px; line-height: 1.65; }
  .mobile-pillar-card:is(:hover, :focus-visible) { border-color: var(--gold-bright); box-shadow: 0 0 18px rgb(226 189 104 / 12%); }
  .home-page :focus-visible { outline: 2px solid var(--gold-bright); outline-offset: 3px; }
}
@media (max-width: 720px) and (prefers-reduced-motion: reduce) {
  .home-page *, .home-page *::before, .home-page *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
