/* Creative flow and daily availability share the existing black/lime palette. */
.flow-section {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(36px, 6vw, 86px);
  align-items: center;
}
.flow-panel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 28px 32px 22px;
  border: 1px solid #3d4c2f;
  border-radius: 6px;
  background: radial-gradient(ellipse at 90% 48%, #334421 0, #1a2614 40%, #131b10 78%);
}
.flow-panel-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.flow-panel-top .eyebrow { margin: 0; font-size: .75rem; letter-spacing: .075em; color: #b9c9aa; }
.flow-panel-spark { color: var(--lime); font-size: 26px; line-height: 1; }
.flow-panel h3 { font-family: var(--display); font-size: clamp(26px, 2.4vw, 34px); font-weight: 500; line-height: 1.3; letter-spacing: -.035em; margin: 32px 0 0; }
.flow-panel h3 > span { display: block; }
.flow-panel h3 > span:last-child { color: #bbcaac; }
html[lang=zh-CN] .flow-panel h3 { font-weight: 600; line-height: 1.45; }
.flow-velocity { position: relative; min-height: 220px; display: flex; align-items: center; justify-content: flex-end; margin: 16px 0 20px; }
.velocity-figure { position: relative; z-index: 1; margin-right: 12px; }
.velocity-qualifier { display: block; margin-left: 15px; margin-bottom: 9px; font-size: .75rem; letter-spacing: .1em; color: #c9dbb7; }
.velocity-number { font-family: var(--display); font-size: clamp(128px, 12.5vw, 184px); font-weight: 500; line-height: .92; letter-spacing: -.09em; color: var(--lime); transform: skewX(-10deg); transform-origin: center; }
.velocity-number > span { font-size: .36em; letter-spacing: -.055em; margin-left: 6px; }
.velocity-caption { display: block; margin-top: 15px; margin-left: 18px; font-size: .75rem; letter-spacing: .13em; color: #c5d7b3; }
.velocity-trails { position: absolute; left: -85px; right: 120px; top: 45%; height: 65px; transform: rotate(-11deg); opacity: .85; }
.velocity-trails i { position: absolute; height: 1px; width: 100%; right: 0; background: linear-gradient(90deg, transparent, #aacb58 70%, #d5ff63); transform-origin: right; }
.velocity-trails i:nth-child(1) { top: 0; width: 87%; opacity: .6; }
.velocity-trails i:nth-child(2) { top: 23px; height: 2px; }
.velocity-trails i:nth-child(3) { top: 46px; width: 73%; opacity: .45; }
.flow-panel-message { color: #e0e9d7; font-size: 1rem; line-height: 1.75; margin: 0 0 22px; }
.momentum-track { display: grid; grid-template-columns: 1fr 1fr 1fr; list-style: none; padding: 0; margin: 0 0 28px; }
.momentum-track li { position: relative; font-size: .8125rem; color: #b4c5a4; line-height: 1.5; padding-top: 22px; padding-right: 8px; }
.momentum-track li::before { content: ''; height: 1px; position: absolute; top: 4px; left: 0; right: 0; background: #647944; }
.momentum-track li:last-child::before { right: 5px; background: linear-gradient(90deg, #a1bf60, transparent); }
.momentum-node { position: absolute; top: 1px; left: 0; width: 7px; height: 7px; border-radius: 50%; background: #96b552; box-shadow: 0 0 0 4px #25331a; }
.momentum-track li:last-child .momentum-node { background: var(--lime); }
.momentum-track li:last-child { color: var(--lime); }
.flow-panel-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid #3a4b2d; padding-top: 17px; color: #b5c7a2; font-size: .75rem; letter-spacing: .025em; }
.flow-panel-note { font-size: .75rem; line-height: 1.75; color: #98ab86; margin: 10px 0 0; }
.flow-panel.is-visible .velocity-trails i { animation: velocity-arrive .8s cubic-bezier(.2,.7,.2,1) both; }
.flow-panel.is-visible .velocity-trails i:nth-child(2) { animation-delay: .08s; }
.flow-panel.is-visible .velocity-trails i:nth-child(3) { animation-delay: .16s; }
@keyframes velocity-arrive { from { transform: translateX(-95px) scaleX(.35); opacity: 0; } to { transform: translateX(0) scaleX(1); } }

.pass-mark { font-size: 25px; line-height: 1; }
.availability-panel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px 20px;
  color: var(--lime);
  background: #1c2b0f;
  border: 1px solid #435f23;
  border-radius: 4px;
  padding: 20px 22px;
  margin: 23px 0 0;
}
.availability-heading { min-width: 0; display: flex; flex-direction: column; gap: 7px; }
.availability-heading > span { font-size: 1rem; font-weight: 600; line-height: 1.4; }
.availability-heading small { font-size: .75rem; color: #bdcea9; line-height: 1.5; }
.availability-count { display: flex; align-items: baseline; justify-content: flex-end; gap: 9px; margin-left: auto; }
.availability-count strong { font-family: var(--display); font-size: 46px; font-weight: 500; line-height: 1; letter-spacing: -.055em; font-variant-numeric: tabular-nums; }
.availability-count > span { font-size: .8125rem; line-height: 1.4; color: #d0e0b9; }
.availability-panel[data-availability-state=pending] .availability-count strong { font-size: 38px; }
.availability-panel[data-availability-state=pending] .availability-count { gap: 12px; }
.price-pass h3 { margin-top: 26px; }
.price-storage .price-topline { margin-bottom: 113px; }
.dialog-availability { padding: 18px; margin-top: 24px; }
.dialog-availability .availability-heading > span { font-size: .875rem; }
.dialog-availability .availability-count strong { font-size: 35px; }

@media(max-width:1100px) {
  .flow-section { gap: 34px; }
  .flow-panel { padding-inline: 26px; }
  .velocity-figure { margin-right: 5px; }
  .velocity-number { font-size: 145px; }
  .flow-panel h3 { font-size: 28px; }
  .availability-panel { padding: 17px 18px; }
  .availability-heading > span { font-size: .9375rem; }
  .availability-count strong { font-size: 40px; }
}
@media(max-width:900px) {
  .flow-section { grid-template-columns: 1fr; gap: 38px; }
  .flow-panel { width: 100%; }
  .flow-panel h3 { font-size: 32px; }
  .flow-velocity { min-height: 230px; }
  .velocity-number { font-size: 178px; }
  .velocity-trails { right: 180px; }
  .flow-copy .section-description { max-width: 100%; }
  .price-storage .price-topline { margin-bottom: 151px; }
}
@media(max-width:760px) {
  .price-storage .price-topline { margin-bottom: 0; }
  .availability-heading > span { font-size: 1rem; }
  .availability-panel { padding: 20px; }
}
@media(max-width:560px) {
  .flow-panel { padding: 24px 22px 20px; }
  .flow-panel h3 { font-size: 28px; margin-top: 26px; }
  .flow-panel-top { gap: 12px; }
  .flow-panel-top .eyebrow { font-size: .75rem; letter-spacing: .045em; }
  .flow-panel-spark { font-size: 23px; }
  .flow-velocity { min-height: 207px; margin-top: 16px; margin-bottom: 14px; }
  .velocity-number { font-size: 146px; }
  .velocity-figure { margin-right: 8px; }
  .velocity-trails { left: -100px; right: 100px; }
  .velocity-caption { letter-spacing: .07em; font-size: .75rem; }
  .flow-panel-message { font-size: .9375rem; }
  .momentum-track { margin-bottom: 25px; }
  .momentum-track li { font-size: .75rem; padding-right: 5px; }
  .flow-panel-footer { font-size: .75rem; }
  .availability-panel { padding: 17px 16px; gap: 14px; }
  .availability-heading > span { font-size: .9375rem; }
  .availability-heading small { font-size: .75rem; }
  .availability-count strong { font-size: 39px; }
  .availability-count > span { font-size: .75rem; }
  html[lang=en] .availability-panel { align-items: flex-start; }
  html[lang=en] .availability-count { margin-left: 0; }
  html[lang=en] .flow-panel h3 { font-size: 25px; }
}
@media(prefers-reduced-motion:reduce) {
  .flow-panel.is-visible .velocity-trails i { animation: none; }
}

.legal-links{display:flex;flex-wrap:wrap;gap:18px;font-size:13px;color:var(--muted)}
.desktop-nav .mobile-account-link{display:none}
.offer-dialog>.button{margin-top:12px}
