.fva-hero{position:relative;background:var(--tint);overflow:clip}
.fva-photo{margin:0;position:relative;height:clamp(300px,52svh,440px);background:#F6E9EA;overflow:hidden}
.fva-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:42% 38%}
.fva-body{position:relative;padding:4px var(--gut) 40px;max-width:calc(var(--wrap) + 40px);margin:0 auto}
.fva-hero::after{content:"";position:absolute;left:0;right:0;top:calc(clamp(300px,52svh,440px) - 17px);height:18px;background:radial-gradient(circle at 50% 100%,var(--tint) 17px,transparent 17.5px) 0 0/36px 18px repeat-x;pointer-events:none}
.fva-kicker{background:#fff;margin:0 0 4px}
.fva-h{display:flex;align-items:center;gap:0 12px;margin:0;font-family:var(--head);font-weight:500;line-height:1.1}
.fva-big{flex:none;font-size:clamp(96px,28vw,168px);line-height:.92;letter-spacing:-.05em;color:var(--accent)}
.fva-rest{font-size:clamp(25px,6.9vw,44px);line-height:1.35;word-break:keep-all}
.fva-row{display:flex;align-items:center;gap:clamp(3px,1vw,7px);margin-top:12px;max-width:560px}
.fva-dot{flex:1 1 0;max-width:24px;aspect-ratio:1;border-radius:50%;background:var(--pink)}
.fva-dot:nth-child(4n+2){background:var(--orange)}
.fva-dot:nth-child(4n+3){background:var(--sky)}
.fva-dot:nth-child(4n){background:var(--accent)}
.fva-dot--you,.fva-dot--you:nth-child(n){position:relative;flex:1.5 1 0;max-width:34px;background:#fff;border:2.5px dashed var(--accent)}
.fva-you{margin:6px 0 0;max-width:560px;text-align:right;font-weight:900;font-size:15px;color:var(--accent);line-height:1.4}
.fva-lead{margin:16px 0 0;font-size:clamp(17px,4.4vw,19px);max-width:24em}
.fva-l{display:block}
@media (min-width:900px){
  .fva-photo{height:clamp(380px,58svh,560px)}
  .fva-hero::after{top:calc(clamp(380px,58svh,560px) - 17px)}
  .fva-photo img{object-position:50% 40%}
  .fva-body{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"k k" "h row" "h you" "h lead";column-gap:56px;align-items:end;padding:6px var(--gut) 48px}
  .fva-kicker{grid-area:k;justify-self:start}
  .fva-h{grid-area:h;align-self:start}
  .fva-row{grid-area:row;margin-top:0;width:100%}
  .fva-you{grid-area:you}
  .fva-lead{grid-area:lead;margin-top:10px}
}
html.motion.fva-js .fva-photo img{transition:transform 2.2s cubic-bezier(.2,.8,.2,1)}
html.motion.fva-js .fva-hero:not(.fva-go) .fva-photo img{transform:scale(1.07)}
html.motion.fva-js .fva-dot{transition:transform .5s cubic-bezier(.3,1.7,.5,1) calc(.35s + var(--i,0) * 55ms),opacity .25s ease calc(.35s + var(--i,0) * 55ms)}
html.motion.fva-js .fva-hero:not(.fva-go) .fva-dot{transform:scale(0);opacity:0}
html.motion.fva-js .fva-you{transition:opacity .5s ease 1.55s,transform .5s ease 1.55s}
html.motion.fva-js .fva-hero:not(.fva-go) .fva-you{opacity:0;transform:translateY(6px)}
html.motion.fva-js .fva-go .fva-dot--you{animation:fva-beat 2.6s ease-in-out 2.2s infinite}
html.motion.fva-js .fva-go .fva-dot--you::after{content:"";position:absolute;inset:-2.5px;border-radius:50%;border:2.5px solid var(--accent);opacity:0;animation:fva-ring 2.6s ease-out 2.2s infinite}
@keyframes fva-beat{0%,100%{transform:scale(1)}12%{transform:scale(1.14)}26%{transform:scale(.97)}38%{transform:scale(1)}}
@keyframes fva-ring{0%{transform:scale(1);opacity:.5}70%,100%{transform:scale(1.8);opacity:0}}
@media (prefers-reduced-motion:reduce){.fva-hero *,.fva-hero *::after{animation:none!important;transition:none!important}}
@media (max-width:440px){.fva-rest{font-size:clamp(20px,6vw,24px);white-space:nowrap}}
@media (max-width:440px){.fva-lead{margin-top:8px}}   
.fva-catch{margin:18px 0 0;font-family:var(--head);font-weight:700;color:var(--accent);letter-spacing:0;white-space:nowrap;font-size:calc((100vw - 40px) / 10.4);line-height:1.35}
.fva-catch__l{display:block}
.fva-catch__m{background:linear-gradient(transparent 62%,color-mix(in srgb,var(--pink) 30%,transparent) 62%,color-mix(in srgb,var(--pink) 30%,transparent) 92%,transparent 92%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .08em}
@media (min-width:900px){
  .fva-body{grid-template-areas:"k k" "h row" "h you" "h lead" "c c"}
  .fva-catch{grid-area:c;margin-top:26px;font-size:38px}
  .fva-catch__l{display:inline}
}
