/* First-visit improvements. Loaded after the existing optimized stylesheet. */
main section[id],#plan-options,#beauty-pricing{scroll-margin-top:92px}
.hero.fvHero{display:grid;grid-template-columns:1.05fr 1fr;min-height:0;overflow:hidden}
.fvHero .heroPanel{grid-column:1;grid-row:1;width:auto;min-width:0;min-height:0;padding:42px clamp(24px,3.3vw,56px);background:var(--ivory)}
.fvHero h1{font-size:clamp(30px,3.65vw,56px);line-height:1.4;letter-spacing:0;margin:12px 0}
.fvHero h1>span,.fvHero h1>em{display:block;white-space:nowrap}
.fvHero .heroBrand{font-size:14px;letter-spacing:.12em;margin-top:22px}
.fvHero .heroHook{margin:14px 0 0;font-size:16px}
.fvHero .heroCollage.fvPhotos{position:relative;inset:auto;grid-column:2;grid-row:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.25fr 1fr;height:auto;min-height:0;gap:8px;padding:8px 8px 8px 0}
.fvHero .fvPhotos figure{position:relative;grid-row:auto;min-height:0;min-width:0;margin:0;overflow:hidden}
.fvHero .fvPhotos .fvPhotoGym{grid-column:1/-1}
.fvHero .fvPhotos img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.fvHero .fvPhotos figcaption{position:absolute;bottom:0;left:0;right:0;padding:30px 16px 16px;background:linear-gradient(transparent,rgba(0,0,0,.68));color:white;font-size:16px;font-weight:700}
.fvHeroIntro{font-size:17px;line-height:1.9;margin:8px 0}
.fvNonGym{font-size:14px;font-weight:700;line-height:1.8;color:#226c5d;margin:8px 0 16px}
.fvHero .heroArea{margin:0 0 4px}.fvHero .heroPrice{margin:10px 0 0}
.fvHero .heroPrice strong{font-size:64px}.fvHero .buttons.compact{width:100%;margin:16px 0 0;display:flex;flex-direction:column;gap:10px}
.fvHero .btn{min-height:54px;width:100%;padding:14px 20px;font-size:14px}
.fvSmall{font-size:12px!important;line-height:1.9!important;color:#626262;margin:12px 0}
.fvSmall a,.fvFeeNotes a{text-decoration:underline;text-underline-offset:3px}
.fvActionNote{font-size:12px;line-height:1.8;margin:12px 0;color:#555}
.fvTextLink{display:inline-block;font-size:14px;font-weight:700;color:#226c5d;line-height:1.7;text-decoration:underline;text-underline-offset:4px}
.fvHero>.heroPanel>.fvTextLink{margin-top:4px}
.fvCompare{background:#fff}.fvCompare .sectionLead{text-align:left}
.fvTableWrap{overflow-x:auto;border:1px solid #d9e2df;border-radius:8px;scrollbar-color:var(--green) #edf3f1}
.fvTable{width:100%;min-width:680px;border-collapse:separate;border-spacing:0;font-size:14px;line-height:1.65}
.fvTable caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.fvTable th,.fvTable td{padding:16px 14px;text-align:center;border-bottom:1px solid #dce5e1;border-right:1px solid #dce5e1}
.fvTable tr>*:last-child{border-right:0}.fvTable tbody tr:last-child>*{border-bottom:0}
.fvTable thead th{background:var(--navy);color:white;font-size:17px}.fvTable th small,.fvTable td small{display:block;font-size:12px;font-weight:400;margin-top:4px}
.fvTable tr>:first-child{position:sticky;left:0;z-index:1;width:24%;min-width:130px;text-align:left;background:#eff4f2;font-weight:700}
.fvTable thead tr>:first-child{background:var(--navy);font-size:13px}
.fvTable tbody td{background:white}.fvTableHint{font-size:12px;color:#666;margin:0 0 12px}
.fvCompareActions{display:flex;gap:18px 32px;flex-wrap:wrap;margin-top:24px}
.fvUseCards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
.fvUseCards article{background:#fff;border-top:3px solid var(--green);padding:28px}
.fvUseCards article>b{font-size:14px;color:var(--green)}.fvUseCards h3{font-size:19px;line-height:1.6;margin:12px 0}.fvUseCards p{font-size:14px;line-height:1.9;margin:0}
.growth.fvGrowth{padding:26px 0}.fvGrowthRow{display:flex;align-items:center;justify-content:space-between;gap:20px}
.fvGrowthRow p{margin:0;font-size:16px;line-height:1.8}.fvGrowthRow strong{color:#fbb388}.fvGrowthRow a{font-size:13px;text-decoration:underline;text-underline-offset:4px}
.fvPrice .priceBox{margin-top:32px;padding:38px}.fvPriceLead{font-size:15px;line-height:1.8}
.fvPrice .available{flex-wrap:wrap}.fvFeeCampaign{margin:28px 0;border:2px solid var(--orange);border-radius:8px;padding:24px;background:#fff8f1}
.fvFeeCampaign h4{font-size:20px;margin:12px 0}.fvFeeCampaign p{line-height:1.8}.fvBadge{font-weight:700;font-size:14px;color:#a43c00;margin:0}
.fvZero{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:6px 0;font-size:16px;font-weight:700}.fvZero strong{font:800 56px/1.2 Montserrat,sans-serif;color:#d64e08}.fvZero strong small{font:700 20px sans-serif;margin-left:4px}
.fvCoupon{margin-top:16px;border-top:1px solid #ebc7aa;padding-top:20px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.fvCoupon>b{width:100%;font-size:14px}.fvCoupon code{font:800 25px/1.3 Montserrat,sans-serif;letter-spacing:.08em;color:var(--navy);background:white;padding:10px 14px;border:1px dashed #d69c6e;border-radius:4px}
.fvCoupon button{border:0;border-radius:4px;background:var(--navy);color:white;padding:12px 18px;min-height:44px;cursor:pointer;font-size:13px;font-weight:700}
.fvCoupon>[role=status]{font-size:12px}.fvCoupon p{width:100%;margin:0;font-size:13px}.fvCoupon p strong{display:block;color:#a43c00}.fvCoupon a{font-size:13px;text-decoration:underline;text-underline-offset:3px}
.fvFeeNotes{background:#f4f6f5;padding:20px 24px;border-radius:6px;margin:20px 0}.fvFeeNotes h4{font-size:16px;margin:0 0 10px}.fvFeeNotes p{font-size:13px;line-height:1.9;margin:8px 0}
.fvPrice .fees{gap:24px}.fvPrice .fees article{border-top:2px solid #dce5e1;padding-top:20px;min-width:0}.fvPrice .fees p{font-size:13px;line-height:1.9}.fvPrice .fees h4{line-height:1.7}
.fvSupportTeaser{margin-top:22px;padding:20px;background:#fff;border-left:4px solid var(--green)}
.fvSupportTeaser>b{font-size:16px;color:#226c5d}.detailList .fvSupportTeaser p{font-size:13px;margin:10px 0;line-height:1.8}.fvSupportTeaser a{font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:4px;line-height:1.8}
.machines.section{padding:38px 0}.fvMachineDetails>summary{cursor:pointer;padding:12px 34px 12px 0;font-size:clamp(18px,2vw,24px);font-weight:700;line-height:1.6;position:relative;list-style:none}
.fvMachineDetails>summary::-webkit-details-marker{display:none}.fvMachineDetails>summary::after{content:'＋';position:absolute;right:0;top:12px;font-size:24px;color:#fbb388}
.fvMachineDetails[open]>summary::after{content:'−'}.fvMachineDetails[open]>summary{margin-bottom:32px}
.fvMachineDetails>summary small{display:block;font-size:13px;color:#cdd9df;font-weight:400;margin-top:4px}
.fvHero .btn:focus-visible,.fvTextLink:focus-visible,.fvTableWrap:focus-visible,.fvCoupon button:focus-visible,.fvMachineDetails>summary:focus-visible{outline:3px solid #2f927e;outline-offset:4px}
@media(min-width:761px){.fvTableHint{display:none}.fvHero .heroCampaignChip{align-self:flex-start;font-size:12px;white-space:normal;gap:9px}}
@media(max-width:1000px) and (min-width:761px){.fvHero .heroPanel{padding:28px 22px}.fvHero h1{font-size:3.65vw}.fvUseCards article{padding:20px}.fvHero .heroBrand{font-size:12px}}
@media(max-width:760px){
 main section[id],#plan-options,#beauty-pricing{scroll-margin-top:78px}
 .hero.fvHero{display:flex;flex-direction:column}.fvHero .heroPanel{order:0;padding:28px 20px 24px}.fvHero h1{font-size:clamp(27px,8.3vw,48px);margin:12px 0}.fvHero .heroBrand{margin-top:18px;font-size:12px}.fvHero .heroHook{margin-top:12px;font-size:14px}
 .fvHeroIntro{font-size:15px}.fvNonGym{font-size:13px}.fvHero .heroPrice strong{font-size:58px}.fvHero .heroPrice{margin:6px 0}.fvHero .heroArea{font-size:12px}.fvHero .heroCampaignChip{font-size:11px;padding:10px 12px;gap:6px;white-space:normal;align-self:flex-start}
 .fvHero .heroCollage.fvPhotos{order:1;display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:1fr 1fr;height:300px;min-height:0;padding:0 6px 6px;gap:6px}.fvHero .fvPhotos .fvPhotoGym{grid-column:1;grid-row:1/3}.fvHero .fvPhotos img{object-position:center}.fvHero .fvPhotos figcaption{font-size:12px;padding:24px 10px 10px}
 .fvCompare,.about.section,.fvPrice{padding:58px 0}.fvCompare .heading h2,.fvPrice .heading h2{font-size:24px;line-height:1.6}.fvTable{font-size:12px}.fvTable th,.fvTable td{padding:13px 10px}.fvTable thead th{font-size:15px}.fvTable tr>:first-child{min-width:120px;width:120px}.fvCompareActions{gap:14px;flex-direction:column}
 .fvUseCards{grid-template-columns:1fr;gap:12px;margin-top:24px}.fvUseCards article{padding:22px}.fvUseCards h3{font-size:18px;margin:8px 0}.fvGrowthRow{flex-direction:column;align-items:flex-start;gap:12px}.fvGrowthRow p{font-size:15px}
 .fvPrice .priceBox{padding:24px 18px;margin-inline:-4px}.fvPrice .mainPrice strong{font-size:64px}.fvPriceLead{font-size:13px}.fvFeeCampaign{padding:18px 14px;margin:24px 0}.fvBadge{font-size:12px}.fvFeeCampaign h4{font-size:18px}.fvFeeCampaign>div>p{font-size:13px}.fvZero{gap:8px}.fvZero strong{font-size:48px}.fvCoupon{gap:10px}.fvCoupon code{font-size:22px}.fvCoupon button{padding:12px}.fvFeeNotes{padding:18px}.fvPrice .fees{grid-template-columns:1fr}.fvPrice .btn{font-size:13px;padding:16px 12px}.fvPrice .buttons{flex-direction:column}
 .fvSupportTeaser{padding:16px}.machines.section{padding:24px 0}.fvMachineDetails>summary small{font-size:12px}
}
