


.hero-map.hero-two .hm-inner {
  max-width: 1180px; min-height: 0; text-align: left;
  display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(0, 0.96fr);
  grid-template-rows: auto auto; align-items: start;
  column-gap: clamp(28px, 3.4vw, 56px); row-gap: var(--s-4);
}
.hero-map.hero-two .hm-head { grid-column: 1; grid-row: 1; }
.hero-map.hero-two .hm-foot { grid-column: 1; grid-row: 2; }
.hero-map.hero-two .hm-mid  { grid-column: 2; grid-row: 1 / span 2;
  align-self: center; justify-content: flex-start; }
.hero-map.hero-two .hm-foot .lede { margin: 0 0 var(--s-4); max-width: 52ch; }
.hero-map.hero-two .hm-foot .hero-ctas { justify-content: flex-start; margin-top: var(--s-5); }
.hero-map.hero-two .hero-accent { text-align: left; }

.hero-map.hero-two .hm-head.no-eyebrow::before { height: 27.5px; }
.pour .hero-map.hero-two .hm-mid > * { margin-top: 0; }


.hero-stagewrap { position: relative; z-index: 3; width: 100%; }
.hero-map.hero-two .hm-mid > .hero-stagewrap { width: 100%; }
.hfig { margin: 0; width: 100%; }
.hfig svg { display: block; width: 100%; height: auto; overflow: visible; }
.hfig figcaption { font-family: var(--mono); font-size: 9.5px;
  letter-spacing: .14em; text-transform: none; color: rgba(243, 238, 232, .6);
  opacity: 0; text-align: right; padding-right: 1.43%; margin-top: var(--s-4);
  line-height: 1.6;
  animation: hFade .6s ease 5.4s forwards; }


.hfig svg line, .hfig svg path, .hfig svg rect,
.hfig svg circle, .hfig svg polyline, .hfig svg polygon {
  vector-effect: none; stroke: var(--cream); stroke-width: 1; fill: none;
}
.hfig svg text { font-family: var(--mono); font-size: 11px; letter-spacing: .14em;
  text-transform: uppercase; fill: var(--cream); stroke: none; opacity: 0;
  animation: hFade .55s ease var(--d, 1s) forwards; }
.hfig .hhit { fill: rgba(0,0,0,0); stroke: none; pointer-events: all; opacity: 1; animation: none; }



.hfig { display: none; }

html:not([data-hero]) .hfig[data-hero="reading2"],
html[data-hero="reading2"] .hfig[data-hero="reading2"] { display: block; }


@keyframes hFade { to { opacity: 1; } }
@keyframes hDraw { to { stroke-dashoffset: 0; } }
@keyframes hIn   { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }


.hfig .hr-ring-node { stroke-dasharray: 132; stroke-dashoffset: 132; opacity: .78;
  animation: hDraw .85s cubic-bezier(.3,.5,.2,1) var(--d, .3s) forwards; }
.hfig .hr-spoke { stroke-dasharray: 90; stroke-dashoffset: 90; opacity: .26;
  animation: hDraw .7s cubic-bezier(.3,.5,.2,1) var(--d, .55s) forwards; }
.hfig .hr-dot { fill: var(--cream); stroke: none; }
.hfig .hr-pulse { opacity: 0;
  animation: hrTravel var(--dur, 1.4s) linear var(--d, .9s) infinite; }
@keyframes hrTravel {
  0%   { transform: translate(0, 0); opacity: 0; }
  14%  { opacity: var(--po, .95); }
  86%  { opacity: var(--po, .95); }
  100% { transform: translate(var(--tx), var(--ty)); opacity: 0; }
}

[data-hero-stage].settled .hfig .hr-pulse { --po: .42; }
[data-hero-stage].settled .hfig .hr-spoke { stroke-dashoffset: 0 !important;
  animation: hrBreath 4.6s ease-in-out infinite; }
@keyframes hrBreath { 0%, 100% { opacity: .24; } 50% { opacity: .38; } }

.hfig .hr-score { stroke-width: 1.6; stroke-dasharray: var(--len, 404);
  stroke-dashoffset: var(--len, 404);
  animation: hDraw 1.25s cubic-bezier(.3,.5,.2,1) 3.35s forwards; }
.hfig .hr-num { font-family: var(--serif); font-size: 54px; letter-spacing: -.01em;
  text-transform: none; fill: var(--cream); stroke: none; opacity: 0;
  animation: hFade .5s ease 4.45s forwards; }
.hfig .hr-illus { font-size: 9px; letter-spacing: .18em; opacity: 0;
  animation: hFadeDim .6s ease 5.35s forwards; }
@keyframes hFadeDim { to { opacity: .55; } }


.hfig .hr-rhythm { font-family: var(--mono); font-size: 10px; letter-spacing: .02em;
  text-transform: none; opacity: 0 !important; animation: none !important;
  transition: opacity .28s ease; }
.hfig .hr-node:hover .hr-rhythm { opacity: .82 !important; }
.hfig .hr-node:hover .hr-ring-node { opacity: 1; stroke-width: 1.6; }
.hfig .hr-node .hr-ring-node { transition: opacity .28s ease, stroke-width .28s ease; }


.hfig .hv-rule { opacity: 0; stroke-dasharray: 364; stroke-dashoffset: 364;
  animation: hFadeRule .4s ease .3s forwards, hDraw 1.1s cubic-bezier(.3,.5,.2,1) .3s forwards; }
@keyframes hFadeRule { to { opacity: .3; } }

.hfig .hv-mark { stroke-dasharray: 120; stroke-dashoffset: 120; opacity: .8;
  animation: hDraw .6s cubic-bezier(.3,.5,.2,1) var(--d, .7s) forwards;
  transition: opacity .22s ease, stroke-width .22s ease; }
.hfig .hv-cap { font-size: 9.5px; letter-spacing: .18em;
  animation: hFadeDim2 .5s ease var(--d, 2s) forwards; }
@keyframes hFadeDim2 { to { opacity: .52; } }
.hfig .hv-view { font-family: var(--mono); font-size: 10px; letter-spacing: .04em;
  text-transform: none; animation: hFadeDim3 .6s ease 5.0s forwards; }
@keyframes hFadeDim3 { to { opacity: .68; } }

.hfig .hv-scorering { stroke-width: 1.6; stroke-dasharray: var(--len, 153);
  stroke-dashoffset: var(--len, 153);
  animation: hDraw .9s cubic-bezier(.3,.5,.2,1) 2.15s forwards; }
.hfig .hv-score { font-family: var(--serif); font-size: 22px; letter-spacing: -.01em;
  text-transform: none; opacity: 0; animation: hFade .5s ease 2.95s forwards; }
.hfig .hv-tw { opacity: 0; animation: hIn .45s cubic-bezier(.2,.65,.25,1) var(--d, 2.5s) forwards;
  transition: opacity .22s ease, stroke-width .22s ease; }

.hfig .hv-wipe-run { opacity: 0; transform: translateY(126px);
  animation: hvWipeRun 2.5s cubic-bezier(.35,.1,.3,1) 2.35s forwards; }
@keyframes hvWipeRun {
  0%   { transform: translateY(126px); opacity: 0; }
  10%  { opacity: .5; }
  90%  { opacity: .5; }
  100% { transform: translateY(392px); opacity: 0; }
}
.hfig .hv-wipe-idle { opacity: 0; transform: translateY(126px);
  animation: hvWipeIdle 6.5s ease-in-out 5.4s infinite alternate; }
@keyframes hvWipeIdle {
  0%   { transform: translateY(126px); opacity: .04; }
  50%  { opacity: .17; }
  100% { transform: translateY(392px); opacity: .04; }
}


.hfig .hv-mark.hot, .hfig .hv-tw.hot { opacity: 1 !important; stroke-width: 2; }


.hfig .hc-rail { opacity: .3; stroke-dasharray: var(--len, 464); stroke-dashoffset: var(--len, 464);
  animation: hDraw 1.1s cubic-bezier(.3,.5,.2,1) .35s forwards; }
.hfig .hc-end { opacity: .55; stroke-dasharray: 42; stroke-dashoffset: 42;
  animation: hDraw .5s cubic-bezier(.3,.5,.2,1) var(--d, 1.15s) forwards; }
.hfig .hc-trace { stroke-width: 1.4; opacity: .92;
  stroke-dasharray: var(--len, 464); stroke-dashoffset: var(--len, 464);
  animation: hDraw 2.8s cubic-bezier(.25,.5,.3,1) 1.7s forwards; }
.hfig .hc-tick { opacity: 0; stroke-dasharray: 24; stroke-dashoffset: 24;
  animation: hFadeTick .01s linear var(--d, 2s) forwards,
             hDraw .3s cubic-bezier(.3,.5,.2,1) var(--d, 2s) forwards; }
@keyframes hFadeTick { to { opacity: .62; } }

.hfig .hc-drop { stroke-width: 1.4; opacity: 0; stroke-dasharray: 96; stroke-dashoffset: 96;
  animation: hFadeTick .01s linear 3.35s forwards,
             hDraw .75s cubic-bezier(.2,.7,.25,1) 3.35s forwards,
             hcFlare 1.1s ease 4.45s 1; }
.hfig .hc-lapse-dot { stroke: var(--brass-glow); fill: var(--brass-glow); opacity: 0;
  animation: hFadeDot .4s ease 4.05s forwards, hcBreath 5.4s ease-in-out 5.6s infinite; }
@keyframes hFadeDot { to { opacity: .85; } }
@keyframes hcFlare { 0% { opacity: .62; } 35% { opacity: 1; } 100% { opacity: .62; } }
@keyframes hcBreath { 0%, 100% { opacity: .62; } 50% { opacity: 1; } }
.hfig .hc-lapse-lab { font-size: 9.5px; letter-spacing: .16em;
  animation: hFadeDim2 .6s ease 4.55s forwards; }
.hfig .hc-year { font-size: 9.5px; letter-spacing: .18em;
  animation: hFadeDim .6s ease 5.15s forwards; }
.hfig .hc-note { font-family: var(--mono); font-size: 10px; letter-spacing: .02em;
  text-transform: none; opacity: 0 !important; animation: none !important;
  transition: opacity .28s ease; }
.hfig .hc-lapse:hover .hc-note { opacity: .82 !important; }
.hfig .hc-lapse:hover .hc-lapse-dot { opacity: 1; }


.hero-switch { position: absolute; right: 6vw; bottom: 14px; z-index: 6;
  display: flex; align-items: baseline; gap: 12px;
  font-family: var(--mono); font-size: 10px; letter-spacing: .12em;
  text-transform: uppercase; opacity: 0; animation: hFade .6s ease 1.8s forwards; }
.hero-switch .hsw-lab { color: var(--cream); opacity: .34; }
.hero-switch a { color: var(--cream); opacity: .42; text-decoration: none;
  padding-bottom: 2px; border-bottom: 1px solid transparent; transition: opacity .22s ease, border-color .22s ease; }
.hero-switch a:hover { opacity: .9; border-bottom-color: var(--brass-glow); }
.hero-switch a[aria-current="true"] { opacity: .92; border-bottom-color: rgba(243,238,232,.5); }


@media (max-width: 1000px) {
  .hero-map.hero-two .hm-inner { grid-template-columns: 1fr;
    grid-template-rows: auto auto auto; row-gap: var(--s-6); }
  .hero-map.hero-two .hm-head { grid-row: 1; }
  .hero-map.hero-two .hm-foot { grid-row: 2; }
  .hero-map.hero-two .hm-mid  { grid-column: 1; grid-row: 3; justify-content: center; }
  .hero-map.hero-two .hm-foot .lede { max-width: 68ch; }
  .hero-stagewrap { max-width: 560px; margin: 0 auto; }
}
@media (max-width: 640px) {
  .hero-switch { right: 16px; bottom: 10px; gap: 9px; font-size: 9px; }
  .hfig svg text { font-size: 14px; }
  .hfig .hr-illus, .hfig .hv-cap, .hfig .hc-lapse-lab, .hfig .hc-year { font-size: 12px; }
  .hfig .hr-rhythm, .hfig .hc-note, .hfig .hv-view { font-size: 12.5px; }
  .hfig .hr-num { font-size: 60px; }
  .hfig .hv-score { font-size: 26px; }
  .hfig figcaption { font-size: 9.5px; }
}


@media (prefers-reduced-motion: reduce) {
  .hfig svg *, .hfig figcaption, .hero-switch {
    animation: none !important; transition: none !important;
    stroke-dashoffset: 0 !important; transform: none !important; opacity: 1 !important; }
  .hfig .hr-spoke { opacity: .26 !important; }
  .hfig .hr-pulse { opacity: 0 !important; }
  .hfig .hr-illus, .hfig .hv-cap, .hfig .hc-lapse-lab, .hfig .hc-year { opacity: .55 !important; }
  .hfig .hv-rule { opacity: .3 !important; }
  .hfig .hv-view { opacity: .68 !important; }
  .hfig .hv-wipe-run, .hfig .hv-wipe-idle { opacity: 0 !important; }
  .hfig .hc-rail { opacity: .3 !important; }
  .hfig .hc-tick { opacity: .62 !important; }
  .hfig .hc-lapse-dot { opacity: .85 !important; }
  .hfig .hr-rhythm, .hfig .hc-note { opacity: 0 !important; }
  .hfig .hr-node:hover .hr-rhythm, .hfig .hc-lapse:hover .hc-note { opacity: .82 !important; }
  .hfig figcaption { opacity: 1 !important; }
}


html[data-hero="reading2"] .hfig[data-hero="reading2"] { display: block; }


.hfig .hr2-spoke { stroke-dasharray: var(--len, 120); stroke-dashoffset: var(--len, 120);
  opacity: .26; animation: hDraw .75s cubic-bezier(.3,.5,.2,1) var(--d, .6s) forwards;
  transition: opacity .24s ease, stroke-width .24s ease; }
.hfig .hr2-spoke.hot { opacity: .92 !important; stroke-width: 1.5; }


.hfig .hr2-ring { stroke-dasharray: 94; stroke-dashoffset: 94; opacity: .78;
  animation: hDraw .8s cubic-bezier(.3,.5,.2,1) var(--d, .3s) forwards;
  transition: opacity .24s ease, stroke-width .24s ease; }
.hfig .hr2-node.hot .hr2-ring { opacity: 1; stroke-width: 1.6; }
.hfig .hr2-rhythm { font-family: var(--mono); font-size: 9.5px; letter-spacing: .02em;
  text-transform: none; opacity: 0 !important; animation: none !important;
  transition: opacity .28s ease; }
.hfig .hr2-node.hot .hr2-rhythm { opacity: .82 !important; }


.hfig .hr2-track { stroke: rgba(243,238,232,.12); stroke-width: 2.4; }
.hfig .hr2-seg { stroke-width: 2.4; opacity: .8; stroke-linecap: butt;
  stroke-dasharray: var(--sl, 20); stroke-dashoffset: var(--sl, 20);
  animation: hDraw .5s cubic-bezier(.3,.5,.2,1) var(--d, 1.3s) forwards; }
.hfig .hr2-num { font-family: var(--serif); font-size: 44px; letter-spacing: -.01em;
  text-transform: none; fill: var(--cream); stroke: none; opacity: 0;
  animation: hFade .5s ease 1.95s forwards; }
.hfig .hr2-illus { font-size: 8.5px; letter-spacing: .18em; opacity: 0;
  animation: hFadeDim .6s ease 2.60s forwards; }
.hfig .hr2-scorelab { font-size: 10px; letter-spacing: .16em; opacity: 0;
  animation: hFadeDim4 .6s ease var(--d, 2.35s) forwards; }
@keyframes hFadeDim4 { to { opacity: .62; } }


.hfig .hr2-row { opacity: 0;
  animation: hIn .5s cubic-bezier(.2,.65,.25,1) var(--d, 2.3s) forwards; }
.hfig .hr2-rule { stroke: rgba(243,238,232,.16); stroke-width: 1; }
.hfig .hr2-bar { stroke-width: 2.2; opacity: .6; stroke-linecap: butt;
  stroke-dasharray: var(--len, 300); stroke-dashoffset: var(--len, 300);
  animation: hDraw .8s cubic-bezier(.25,.6,.2,1) var(--d, 2.3s) forwards;
  transition: opacity .24s ease, stroke-width .24s ease; }
.hfig .hr2-name { font-family: var(--sans); font-size: 12.5px; letter-spacing: 0;
  text-transform: none; fill: var(--cream); stroke: none; opacity: .82;
  animation: none; transition: opacity .24s ease; }
.hfig .hr2-val { font-family: var(--mono); font-size: 11px; letter-spacing: .06em;
  text-transform: none; fill: var(--cream); stroke: none; opacity: .6;
  font-variant-numeric: tabular-nums; animation: none; transition: opacity .24s ease; }
.hfig .hr2-row.hot .hr2-name { opacity: 1; }
.hfig .hr2-row.hot .hr2-val { opacity: .95; }
.hfig .hr2-row.hot .hr2-bar { opacity: .95 !important; stroke-width: 3; }


@media (max-width: 640px) {
  .hfig .hr2-name { font-size: 17px; }
  .hfig .hr2-val { font-size: 15px; }
  .hfig .hr2-illus { font-size: 10px; letter-spacing: .14em; }
  .hfig .hr2-scorelab { font-size: 13px; }
  .hfig .hr2-rhythm { font-size: 11px; }
  .hfig .hr2-num { font-size: 52px; }
}


@media (prefers-reduced-motion: reduce) {
  .hfig .hr2-spoke { opacity: .26 !important; }
  .hfig .hr2-ring { opacity: .78 !important; }
  .hfig .hr2-seg { opacity: .8 !important; }
  .hfig .hr2-bar { opacity: .6 !important; }
  .hfig .hr2-name { opacity: .82 !important; }
  .hfig .hr2-val { opacity: .6 !important; }
  .hfig .hr2-illus { opacity: .55 !important; }
  .hfig .hr2-scorelab { opacity: .62 !important; }
  .hfig .hr2-rhythm { opacity: 0 !important; }
  .hfig .hr2-node.hot .hr2-rhythm { opacity: .82 !important; }
}
