/* Homepage disclosure only. The SVG stream is drawn live, never a sprite sheet. */
html body .home-page .hero {height:auto;min-height:calc(100svh - 90px);max-height:none;padding-bottom:64px;overflow:hidden}
html body .home-page .hero-content {padding-top:clamp(132px,9.8vw,176px);padding-bottom:0}
.start-bloom {position:relative;isolation:isolate;width:min(100%,660px);height:70px;margin:34px auto 0;text-align:center;transition:height 720ms cubic-bezier(.22,1,.36,1)}
.start-bloom[open] {height:244px}
.start-bloom.is-collapsing {height:70px;transition:none}
.start-bloom.is-closing .bloom-trigger-light {animation-duration:1.8s}
html body .start-bloom>.bloom-trigger {display:flex;width:280px;max-width:100%;min-height:68px;margin:auto;padding:16px 24px;gap:12px;overflow:hidden;cursor:pointer;list-style:none;z-index:5;flex-wrap:nowrap;user-select:none;font:650 18px/1.25 var(--text);letter-spacing:.04em}
.bloom-trigger::-webkit-details-marker {display:none}
.bloom-trigger::marker {content:''}
.bloom-trigger-label {position:relative;z-index:2;white-space:nowrap}
.bloom-trigger-light {position:absolute;inset:3px;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 100%,#fff6ce88,transparent 62%);opacity:.25;animation:bloom-gold-breath 5.8s ease-in-out infinite}
.bloom-trigger-light::before {content:'';position:absolute;inset:-70% -80%;background:linear-gradient(110deg,transparent 39%,#fff6d600 43%,#fff6d699 48%,#fffdf433 52%,transparent 57%);transform:translateX(-50%);animation:bloom-gold-sweep 6.8s cubic-bezier(.4,0,.2,1) infinite}
.start-bloom.is-emitting>.bloom-trigger {filter:brightness(1.08)}
.bloom-options {position:absolute;top:102px;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:18px;list-style:none;margin:0;padding:0;z-index:2}
.bloom-options>li {margin:0;padding:0;min-width:0}
.bloom-options>li:nth-child(2),.bloom-options>li:nth-child(3) {margin-top:32px}
.bloom-option {position:relative;display:block;height:92px;outline:none;transform-origin:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.bloom-surface {position:relative;display:flex;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:15px 8px;background:linear-gradient(135deg,#27302b,#152128 48%,#0a1319);border-radius:9px;box-shadow:0 10px 24px #0005,inset 0 1px 18px #f5cd6508;transition:background .25s,box-shadow .25s}
.bloom-frame {position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#c29b55;stroke-width:1.2;pointer-events:none}
.bloom-frame path {vector-effect:non-scaling-stroke}
.bloom-frame-metal {stroke:#e3c680aa;stroke-width:.7}
.bloom-frame-bevel {opacity:.8}
.bloom-frame-engraving {stroke:#cfaf70;stroke-width:.7;fill:#eacb8430;opacity:.65}
.bloom-frame-inset {stroke:#e8c77b60;stroke-width:.65}
.bloom-frame-corners {stroke:#e6c77d;stroke-width:1;opacity:.7}
.bloom-frame-light {opacity:0;transform:translateX(-20px) skewX(-16deg)}
.bloom-label {position:relative;z-index:1;max-width:125px;font:650 15px/1.3 var(--text);color:#f5efdf;letter-spacing:.035em;text-transform:uppercase;text-shadow:0 2px 3px #0008}
.bloom-option:hover .bloom-surface,.bloom-option:focus-visible .bloom-surface {background:linear-gradient(135deg,#443d27,#23291f 48%,#172128);box-shadow:0 12px 30px #0006,inset 0 0 22px #f6ce7310}
.bloom-option:hover .bloom-frame-bevel,.bloom-option:focus-visible .bloom-frame-bevel {opacity:1}
.bloom-option:focus-visible {outline:2px solid #fff0af;outline-offset:5px;border-radius:7px}
.start-bloom[data-enhanced] .bloom-option[data-phase="pending"],.start-bloom[data-enhanced] .bloom-option[data-phase="emerging"],.start-bloom[data-enhanced] .bloom-option[data-phase="returning"] {visibility:hidden}
.start-bloom[data-enhanced] .bloom-option[data-phase="forming"] {visibility:visible;clip-path:inset(0 0 100%)}
.bloom-option[data-lit] .bloom-surface {animation:bloom-aura 6.4s ease-in-out infinite}
.bloom-option[data-lit] .bloom-frame-light {animation:bloom-metal-reflection 7.6s cubic-bezier(.35,0,.3,1) infinite}
.bloom-option[data-lit] .bloom-frame-corners {animation:bloom-corner-warmth 5.8s ease-in-out infinite}
.bloom-option[data-lit]:not([data-phase="ready"]) * {animation-play-state:paused!important}
.bloom-options>li:nth-child(2) .bloom-frame-light{animation-delay:-1.7s}
.bloom-options>li:nth-child(3) .bloom-frame-light{animation-delay:-3.4s}
.bloom-options>li:nth-child(4) .bloom-frame-light{animation-delay:-5.1s}
.bloom-option:hover .bloom-surface,.bloom-option:focus-visible .bloom-surface {animation-play-state:paused}
.bloom-emission {position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:1;pointer-events:none;visibility:hidden}
.start-bloom.is-emitting .bloom-emission {visibility:visible}
.bloom-material {stroke:#dfba71;stroke-width:1.15}
.bloom-thread {fill:none;stroke:#ffdda0;stroke-width:1;stroke-linecap:round}
.bloom-thread-fine {stroke:#bba47c;stroke-width:.65}
.bloom-trace {fill:none;stroke:#fff0c1;stroke-width:1.8;stroke-dasharray:.22 .78}
.bloom-mote {fill:#fff0c1}
html body .home-page:has(.start-bloom) .hero-note {font-size:16px;margin-top:20px}
.start-bloom.motion-paused *,.start-bloom.motion-paused *::before {animation-play-state:paused!important}
@keyframes bloom-gold-breath {0%,100%{opacity:.2}50%{opacity:.55}}
@keyframes bloom-gold-sweep {0%,25%{transform:translateX(-52%)}62%,100%{transform:translateX(52%)}}
@keyframes bloom-aura {0%,100%{box-shadow:0 10px 24px #0005,inset 0 1px 18px #f5cd6508}50%{box-shadow:0 10px 24px #0005,inset 0 1px 22px #f5cd6520}}
@keyframes bloom-metal-reflection {0%{transform:translateX(-20px) skewX(-16deg);opacity:0}12%{opacity:.25}35%{opacity:.85}64%{transform:translateX(290px) skewX(-16deg);opacity:0}100%{transform:translateX(290px) skewX(-16deg);opacity:0}}
@keyframes bloom-corner-warmth {0%,100%{opacity:.45}50%{opacity:.8}}
@media(max-width:760px) {html body .home-page .hero-content{padding-top:112px}.start-bloom{max-width:580px}.bloom-options{gap:12px}.bloom-label{font-size:14px}}
@media(max-width:540px) {
  html body .home-page .hero{padding-bottom:42px;background-position:53% center}
  .start-bloom{width:min(100%,342px);margin-top:26px}
  .start-bloom[open]{height:306px}.start-bloom.is-collapsing{height:70px}
  .bloom-options{top:100px;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .bloom-options>li:nth-child(2),.bloom-options>li:nth-child(3){margin-top:0}
  .bloom-option{height:86px}
  html body .start-bloom>.bloom-trigger{width:270px;font-size:17px;gap:10px}
  html body .home-page:has(.start-bloom) .hero-note{font-size:14px}
}
@media(prefers-reduced-motion:reduce) {.start-bloom{transition:none!important}.start-bloom *,.start-bloom *::before{animation:none!important;transition:none!important}}


/* Engraved metal, centred lettering, and a highlight travelling through the glyphs. */
html body .start-bloom>.bloom-trigger {
  justify-content:center;padding:16px 28px;gap:0;border-radius:9px;
  background:linear-gradient(115deg,#66451d,#976e32 43%,#765024 70%,#4e351d);
  color:#fff0c9;text-shadow:0 1px 2px #201605;
  box-shadow:0 8px 24px #0005,inset 0 2px 12px #ffda7b28,inset 0 -7px 16px #28180655;
}
html body .start-bloom>.bloom-trigger::before {content:none}
.bloom-trigger-frame {position:absolute;inset:0;pointer-events:none;z-index:1}
.bloom-trigger-frame .bloom-frame {stroke-width:.8}
.bloom-trigger-frame .bloom-frame-light {animation:bloom-trigger-reflection 7.8s ease-in-out infinite}
.bloom-trigger-frame .bloom-frame-corners {animation:bloom-corner-warmth 5.8s ease-in-out infinite}
.bloom-trigger-label {letter-spacing:.09em}
.bloom-label {text-shadow:none}
@supports (background-clip:text) {
  .bloom-trigger-label,.bloom-label {
    background-image:linear-gradient(105deg,#ecd9b1 0%,#ecd9b1 43%,#fffdf3 49%,#fff8df 51%,#ecd9b1 57%,#ecd9b1 100%);
    background-size:280% 100%;background-position:140% 50%;background-clip:text;color:transparent;text-shadow:none;
  }
  .bloom-trigger-label,.bloom-option[data-lit] .bloom-label {animation:bloom-letter-sheen 6.8s cubic-bezier(.4,0,.2,1) infinite}
  .bloom-options>li:nth-child(2) .bloom-label {animation-delay:.8s}
  .bloom-options>li:nth-child(3) .bloom-label {animation-delay:1.6s}
  .bloom-options>li:nth-child(4) .bloom-label {animation-delay:2.4s}
}
@keyframes bloom-letter-sheen {0%,18%{background-position:140% 50%;filter:drop-shadow(0 0 0 #ffdf9200)}38%{filter:drop-shadow(0 0 3px #ffdf9250)}64%,100%{background-position:-140% 50%;filter:drop-shadow(0 0 0 #ffdf9200)}}
@keyframes bloom-trigger-reflection {0%{transform:translateX(-20px) skewX(-16deg);opacity:0}15%{opacity:.25}35%{opacity:.8}68%,100%{transform:translateX(430px) skewX(-16deg);opacity:0}}

/* One small server card; the entire address is the accessible copy target. */
html body .home-page .demo-compact {
  display:block;width:min(100%,220px);margin:18px auto 0;padding:5px 10px;text-align:center;
  background:linear-gradient(135deg,#22282388,#101b2080);border:1px solid #c6a36355;border-radius:8px;
  box-shadow:inset 0 1px #f9e1a514,0 5px 14px #0003;
  backdrop-filter:blur(8px) saturate(110%);-webkit-backdrop-filter:blur(8px) saturate(110%);
}
.demo-compact .demo-meta {display:flex;align-items:center;justify-content:center;gap:0;margin:0;color:#c1cbc4;font:600 10px/1.2 var(--text);letter-spacing:.08em;text-transform:uppercase}
.demo-compact .demo-live {display:inline-flex;align-items:center;gap:6px}
.demo-compact .demo-live i {width:5px;height:5px;background:#87cfa2;border-radius:50%;box-shadow:0 0 6px #80d39755}
.demo-compact .demo-edition {display:block;margin:0;padding:0;color:#c1cbc4;font:500 9.5px/12px var(--text);letter-spacing:.01em;text-transform:none}
html body .demo-compact .demo-server-copy {
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;
  width:100%;min-height:22px;margin:0;padding:0;text-align:center;border:0;border-radius:4px;background:transparent;
}
html body .demo-compact .demo-server-copy code {display:block;max-width:100%;color:#f6e4bd;font:600 14px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;text-align:center;white-space:nowrap}
html body .demo-compact .demo-server-copy:hover {background:#edcf8310}
html body .demo-compact .demo-server-copy:focus-visible {outline:2px solid #f4d48c;outline-offset:3px;background:#edcf8310}
@media(forced-colors:active) {
  .bloom-trigger-label,.bloom-label {background:none;color:ButtonText;filter:none}
  .bloom-surface,html body .start-bloom>.bloom-trigger {border:1px solid ButtonText}
}

/* Keep the requirement outside the compact address card. */
.hero .demo-pack-note { max-width:290px; margin:7px auto 0; font-size:12px; line-height:1.45; color:#e0e5df; text-shadow:0 1px 4px #081016; }
.hero .demo-pack-note strong { font-weight:600; color:#f1dfb9; }
