1;!function(){try { var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&((e._debugIds|| (e._debugIds={}))[n]="b8ad4814-a05e-1b1d-d596-a2325b7ecf15")}catch(e){}}(); 2(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,900619,e=>{"use strict";var r=e.i(843476),t=e.i(522016),a=e.i(657688),s=e.i(271645),i=e.i(948148),n=e.i(519455),l=e.i(987706),o=e.i(617005),c=e.i(112647);function d({score:e,color:t,size:a,progress:s=1}){let i=a/2-5,n=2*Math.PI*i,l=e*Math.min(1,Math.max(0,s));return(0,r.jsxs)("svg",{width:a,height:a,viewBox:`0 0 ${a} ${a}`,className:"shrink-0","aria-hidden":"true",children:[(0,r.jsx)("circle",{cx:a/2,cy:a/2,r:i,fill:"none",stroke:"rgba(255,255,255,0.14)",strokeWidth:5}),(0,r.jsx)("circle",{cx:a/2,cy:a/2,r:i,fill:"none",stroke:t,strokeWidth:5,strokeLinecap:"round",strokeDasharray:`${n*l/100} ${n}`,transform:`rotate(-90 ${a/2} ${a/2})`}),(0,r.jsx)("text",{x:"50%",y:"50%",textAnchor:"middle",dominantBaseline:"central",fill:"#ffffff",fontSize:.32*a,fontWeight:600,children:Math.round(l)})]})}let m=[.3,1.4],h=[1.6,2.2],x=[2.3,2.8],p=[3,3.5],u={scene:0,t:99,opacity:1};function g(e,[r,t]){return Math.min(1,Math.max(0,(e-r)/(t-r)))}function f({videoRef:e,scenes:t,labels:a}){let[i,n]=(0,s.useState)(u);(0,s.useEffect)(()=>{let r=e.current;if(!r||window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;let t=0,a=()=>{let e=r.currentTime%10.5;if(r.paused)n(e=>e===u?e:u);else{let r=e>=5.25&&e<10.25,t=Math.min(1,Math.min(Math.abs(e-5.25),Math.abs(e-10.25))/.25);n({scene:+!!r,t:r?e-5.25:e>=10.25?e-10.25:e+.25,opacity:t})}t=requestAnimationFrame(a)};return t=requestAnimationFrame(a),()=>cancelAnimationFrame(t)},[e]);let l=t[i.scene],o=g(i.t,h),c=g(i.t,x),b=g(i.t,p);return(0,r.jsxs)("div",{className:"absolute bottom-20 right-4 w-[228px] rounded-[18px] border border-white/15 bg-[rgba(18,18,20,0.82)] p-3.5 text-white backdrop-blur-md sm:right-8 lg:bottom-28 lg:right-16 lg:w-[340px] lg:p-5",style:{opacity:i.opacity},children:[(0,r.jsx)("p",{className:"mb-2.5 text-[11px] font-medium uppercase tracking-[0.06em] text-white/60 lg:text-xs",children:a.readiness}),(0,r.jsxs)("div",{className:"flex items-center gap-3 lg:gap-4",children:[(0,r.jsx)("span",{className:"lg:hidden",children:(0,r.jsx)(d,{score:l.score,color:l.color,size:44,progress:g(i.t,m)})}),(0,r.jsx)("span",{className:"hidden lg:block",children:(0,r.jsx)(d,{score:l.score,color:l.color,size:58,progress:g(i.t,m)})}),(0,r.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[(0,r.jsx)("span",{className:"self-start text-xs text-white/55 lg:text-sm",style:{backgroundImage:"linear-gradient(currentColor, currentColor)",backgroundRepeat:"no-repeat",backgroundPosition:"0 55%",backgroundSize:`${100*o}% 1.5px`},children:l.planned}),(0,r.jsxs)("span",{className:"flex items-center gap-1.5 text-sm font-semibold tracking-tight lg:text-lg",style:{opacity:c,transform:`translateY(${(1-c)*6}px)`},children:[(0,r.jsx)("svg",{className:"h-4 w-4 shrink-0",viewBox:"0 0 24 24",fill:"none",stroke:l.color,strokeWidth:2.4,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,r.jsx)("path",{d:l.arrow})}),l.adjusted]})]})]}),(0,r.jsxs)("p",{className:"mt-3 border-t border-white/15 pt-2.5 text-[11px] leading-snug text-white/85 lg:text-[13px]",style:{opacity:b},children:[(0,r.jsx)("span",{className:"font-semibold text-[#00f19f]",children:a.why})," · ",l.reason]})]})}let b=[{key:"applehealth",name:"Apple Health"},{key:"healthconnect",name:"Google Health"},{key:"garmin",name:"Garmin"},{key:"whoop",name:"Whoop"},{key:"oura",name:"Oura"},{key:"polar",name:"Polar"},{key:"wahoo",name:"Wahoo"},{key:"coros",name:"COROS"},{key:"zwift",name:"Zwift"}],j=[{key:"trainerroad",name:"TrainerRoad",href:"/vs-trainerroad"},{key:"trainingpeaks",name:"TrainingPeaks",href:"/vs-trainingpeaks"},{key:"tridot",name:"TriDot",href:"/vs-tridot"},{key:"runna",name:"Runna",href:"/vs-runna"},{key:"join",name:"JOIN",href:"/vs-join"},{key:"humango",name:"Humango",href:"/vs-humango"},{key:"athletica",name:"Athletica",href:"/vs-athletica"}
2,{key:"garmin",name:"Garmin Coach",href:"/vs-garmin"},{key:"wahoo",name:"Wahoo SYSTM",href:"/vs-wahoo"}];function y({brand:e,size:t}){return(0,r.jsx)(a.default,{src:`/brands/${e.key}.png`,alt:e.name,title:e.name,width:t,height:t,className:"shrink-0 rounded-[22%]"})}var v=e.i(35169),N=e.i(655049),w=e.i(831241),k=e.i(520133);function L({heading:e,items:t,className:a}){return(0,r.jsxs)("section",{className:a??"container max-w-3xl mx-auto py-16 sm:py-20 px-4",children:[(0,r.jsx)("h2",{className:"font-sans font-semibold tracking-[-0.035em] text-3xl sm:text-4xl mb-6",children:e}),(0,r.jsx)("div",{className:"space-y-4",children:t.map(e=>(0,r.jsxs)("div",{className:"rounded-xl border border-border/50 bg-card/40 p-5 sm:p-6",children:[(0,r.jsx)("h3",{className:"font-semibold text-base sm:text-lg mb-2",children:e.q}),(0,r.jsx)("p",{className:"text-sm sm:text-base text-foreground/85 leading-relaxed",children:e.a})]},e.q))})]})}let M="https://ejfr69gfuexve9yy.public.blob.vercel-storage.com/marketing/home",$={base:"duo-loop",poster:`${M}/duo-poster.webp`,position:"center 35%"},S="font-sans font-semibold tracking-[-0.035em]",R=[{key:"cycling",path:"M5.5 17m-3.5 0a3.5 3.5 0 1 0 7 0a3.5 3.5 0 1 0-7 0M18.5 17m-3.5 0a3.5 3.5 0 1 0 7 0a3.5 3.5 0 1 0-7 0M5.5 17l4-8h6l3 8M9.5 9L12 17h1.5M14 6h2.5",href:"/best-ai-cycling-coach"},{key:"running",path:"M14 4.5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0M9 21l2.5-5 3 2V21M6 12l3-4h5l3 4 3 1M11.5 16l1-5",href:"/best-ai-running-coach"},{key:"trail",path:"M2 20l6-10 4 6 3-4 7 8zM8 10l1.5-2.5",href:"/blog/trail-running-and-bricks",external:!0},{key:"swimming",path:"M2 16c2 0 2-1.5 4-1.5S8 16 10 16s2-1.5 4-1.5 2 1.5 4 1.5 2-1.5 4-1.5M2 20c2 0 2-1.5 4-1.5S8 20 10 20s2-1.5 4-1.5 2 1.5 4 1.5 2-1.5 4-1.5M16 6m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0M5 12l5-5 4 3"},{key:"triathlon",path:"M12 5m-2.5 0a2.5 2.5 0 1 0 5 0a2.5 2.5 0 1 0-5 0M5.5 17m-2.5 0a2.5 2.5 0 1 0 5 0a2.5 2.5 0 1 0-5 0M18.5 17m-2.5 0a2.5 2.5 0 1 0 5 0a2.5 2.5 0 1 0-5 0M10.5 7.2L7 14.8M13.5 7.2L17 14.8M8 17h8",href:"/best-ai-triathlon-coach"},{key:"strength",path:"M6.5 6.5v11M17.5 6.5v11M3.5 9v6M20.5 9v6M6.5 12h11"},{key:"hyrox",path:"M9 5h6M10 5V3.5h4V5M7.5 8.5a6.5 6.5 0 1 0 9 0zM9.5 14h5",href:"/best-hyrox-training-app"},{key:"walking",path:"M12 4.5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0M12 8l-2 5 3 2v6M10 13l-3 7M12 8l3 3 3 1M8 11l2-3"},{key:"hiking",path:"M3 20h18M7 20l3-9 3 3 2-5 3 11M10 5m-1.8 0a1.8 1.8 0 1 0 3.6 0a1.8 1.8 0 1 0-3.6 0"}],P=[{key:"good",image:`${M}/key-s2-rain-1.webp`,position:"center 30%",color:"#30d158",score:81,replaces:!0,href:"/blog/how-daily-adaptation-works",external:!0,arrow:"M12 19V5M6 11l6-6 6 6"},{key:"ill",image:`${M}/key-rn-watch-2.webp`,position:"center 40%",color:"#ff453a",score:28,replaces:!0,href:"/blog/tired-or-getting-sick",external:!0,arrow:"M12 5v14M6 13l6 6 6-6"},{key:"race",image:`${M}/key-s2-bib-1.webp`,position:"center 30%",color:"#0a84ff",href:"/race-recon",arrow:"M4 8h14M14 4l4 4-4 4M20 16H6M10 12l-4 4 4 4"}],C=[{key:"cyclists",href:"/best-ai-cycling-coach",image:`${M}
2/key-s1-climb-1.webp`,position:"center 25%"},{key:"runners",href:"/best-ai-running-coach",image:`${M}/key-s3-run-3.webp`,position:"center 30%"},{key:"racers",href:"/events",image:`${M}/key-s2-start-2.webp`,position:"center 20%"}],_=[{key:"triathletes",href:"/best-ai-triathlon-coach"},{key:"hyrox",href:"/best-hyrox-training-app"},{key:"coaches",href:"/coaches"},{key:"intervals",href:"/intervals-icu"}],T=[{label:"cycling",href:"/events/cycling"},{label:"running",href:"/events/running"},{label:"trail",href:"/events/trail-running"},{label:"triathlon",href:"/events/triathlon"},{label:"hyrox",href:"/events/hyrox"}];function A({href:e,external:a,className:s,children:i,ariaLabel:n}){return a?(0,r.jsx)(t.default,{href:e,className:s,"aria-label":n,children:i}):(0,r.jsx)(k.Link,{href:e,className:s,"aria-label":n,children:i})}function B({className:e}){return(0,r.jsx)(z,{d:"M5 12h14M13 6l6 6-6 6",className:e,width:2})}function z({d:e,className:t,color:a="currentColor",width:s=1.7}){return(0,r.jsx)("svg",{className:t,viewBox:"0 0 24 24",fill:"none",stroke:a,strokeWidth:s,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,r.jsx)("path",{d:e})})}function I({className:e}){return(0,r.jsx)("svg",{className:e,viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:(0,r.jsx)("path",{d:"M12.152 6.896c-.948 0-2.415-1.078-3.96-1.04-2.04.027-3.91 1.183-4.961 3.014-2.117 3.675-.546 9.103 1.519 12.09 1.013 1.454 2.208 3.09 3.792 3.039 1.52-.065 2.09-.987 3.935-.987 1.831 0 2.35.987 3.96.948 1.637-.026 2.676-1.48 3.676-2.948 1.156-1.688 1.636-3.325 1.662-3.415-.039-.013-3.182-1.221-3.22-4.857-.026-3.04 2.48-4.494 2.597-4.559-1.429-2.09-3.623-2.324-4.39-2.376-2-.156-3.675 1.09-4.61 1.09zM15.53 3.83c.843-1.012 1.4-2.427 1.245-3.83-1.207.052-2.662.805-3.532 1.818-.78.896-1.454 2.338-1.273 3.714 1.338.104 2.715-.688 3.559-1.701"})})}function E(){let e=[[0,.75],[.08,.7],[.16,.35],[.24,.3],[.3,.6],[.42,.72],[.52,.68],[.62,.3],[.7,.22],[.78,.5],[.9,.62],[1,.55]],t=e.map(([e,r])=>`${96*e},${54*r}`).join(" "),a=`M0,54 L${e.map(([e,r])=>`${96*e},${54*r}`).join(" L")} L96,54 Z`;return(0,r.jsxs)("svg",{width:96,height:54,viewBox:"0 0 96 54",className:"shrink-0","aria-hidden":"true",children:[(0,r.jsx)("path",{d:a,fill:"rgba(10,132,255,0.18)"}),(0,r.jsx)("path",{d:"M7.68,37.8 L15.36,18.9 L23.04,16.2",fill:"none",stroke:"#0a84ff",strokeWidth:4,strokeLinecap:"round"}),(0,r.jsx)("path",{d:"M49.92,36.720000000000006 L59.519999999999996,16.2 L67.19999999999999,11.88",fill:"none",stroke:"#0a84ff",strokeWidth:4,strokeLinecap:"round"}),(0,r.jsx)("polyline",{points:t,fill:"none",stroke:"rgba(255,255,255,0.55)",strokeWidth:1.5})]})}e.s(["MarketingPage",0,function({appStoreRating:e,faqHeading:m,faqItems:h}){let x=(0,i.useTranslations)("marketing.home"),p=(0,i.useTranslations)("marketing");(0,w.useCaptureReferralCode)();let u=(0,s.useRef)(null);return(0,r.jsxs)("div",{className:"min-h-screen bg-background",children:[(0,r.jsxs)("section",{className:"relative overflow-hidden",children:[(0,r.jsxs)("div",{className:"relative h-[420px] sm:h-[520px] lg:absolute lg:inset-y-0 lg:right-0 lg:h-auto lg:w-[48%]",children:[(0,r.jsxs)("video",{ref:u,className:"absolute inset-0 h-full w-full object-cover motion-reduce:hidden",style:{objectPosition:$.position},autoPlay:!0,muted:!0,loop:!0,playsInline:!0,preload:"metadata",poster:$.poster,"aria-hidden":"true",children:[(0,r.jsx)("source",{src:`${M}
2/${$.base}.webm`,type:"video/webm"}),(0,r.jsx)("source",{src:`${M}/${$.base}.mp4`,type:"video/mp4"})]}),(0,r.jsx)(a.default,{src:$.poster,alt:x("videoAlt"),fill:!0,priority:!0,sizes:"(min-width: 1024px) 48vw, 100vw",className:"hidden object-cover object-[center_30%] motion-reduce:block"}),(0,r.jsx)("div",{className:"absolute inset-0 bg-gradient-to-b from-transparent via-transparent to-background lg:bg-gradient-to-r lg:from-background lg:via-background/40 lg:to-transparent"}),(0,r.jsx)(f,{videoRef:u,labels:{readiness:x("heroCard.readiness"),why:x("heroCard.why")},scenes:[{score:58,color:"#ffd60a",arrow:"M12 5v14M6 13l6 6 6-6",planned:x("heroCard.her.planned"),adjusted:x("heroCard.her.adjusted"),reason:x("heroCard.her.reason")},{score:81,color:"#30d158",arrow:"M12 19V5M6 11l6-6 6 6",planned:x("heroCard.him.planned"),adjusted:x("heroCard.him.adjusted"),reason:x("heroCard.him.reason")}]})]}),(0,r.jsx)("div",{className:"container relative mx-auto max-w-6xl px-4 pb-16 lg:flex lg:min-h-[780px] lg:items-center lg:py-20",children:(0,r.jsxs)("div",{className:"-mt-16 flex flex-col gap-5 lg:mt-0 lg:max-w-[600px]",children:[(0,r.jsx)("p",{className:"text-xs font-medium uppercase tracking-[0.08em] text-primary sm:text-sm animate-entrance animate-delay-1",children:x("eyebrow")}),(0,r.jsx)("h1",{className:`${S} text-[2.4rem] leading-[1.04] sm:text-5xl lg:text-[4rem] animate-entrance animate-delay-2`,children:x("title")}),(0,r.jsx)("p",{className:"text-base leading-relaxed text-foreground/80 sm:text-lg lg:text-xl animate-entrance animate-delay-2",children:x("subtitle")}),(0,r.jsxs)("div",{className:"mt-2 flex flex-col gap-3 sm:flex-row animate-entrance animate-delay-3",children:[(0,r.jsx)(n.Button,{size:"lg",asChild:!0,className:"cta-glow rounded-xl px-8 py-6 text-base",children:(0,r.jsx)(t.default,{href:"/login",children:x("ctaPrimary")})}),(0,r.jsx)(n.Button,{size:"lg",variant:"outline",asChild:!0,className:"rounded-xl px-8 py-6 text-base",children:(0,r.jsx)(k.Link,{href:"/how-it-works",children:x("ctaSecondary")})})]}),(0,r.jsx)("p",{className:"text-sm text-muted-foreground animate-entrance animate-delay-3",children:x("trialNote")}),(0,r.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-2.5 animate-entrance animate-delay-4",children:[(0,r.jsx)("span",{className:"mr-1 text-sm text-muted-foreground",children:x("worksWith")}),(0,r.jsxs)(k.Link,{href:"/platform/integrations","aria-label":x("integrationsLink"),className:"group flex flex-wrap items-center gap-2.5",children:[b.map(e=>(0,r.jsx)("span",{className:"transition-transform duration-200 hover:-translate-y-0.5",children:(0,r.jsx)(y,{brand:e,size:30})},e.key)),(0,r.jsxs)("span",{className:"inline-flex items-center gap-1 text-sm text-muted-foreground underline-offset-4 group-hover:text-primary group-hover:underline",children:[x("andMore"),(0,r.jsx)(B,{className:"h-3.5 w-3.5"})]})]})]}),(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-2 text-sm text-muted-foreground animate-entrance animate-delay-4",children:[e&&(0,r.jsxs)(k.Link,{href:"/reviews",className:"flex items-center gap-1.5 underline-offset-4 hover:text-foreground hover:underline",children:[(0,r.jsx)("svg",{className:"h-4 w-4 text-[#ffd60a]",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:(0,r.jsx)("path",{d:"M12 2.5l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.4l-5.9 3.1 1.2-6.5L2.5 9.4l6.6-.9z"})}),(0,r.jsx)("span",{className:"font-semibold text-foreground",children:e.score.toFixed(1)}),(0,r.jsx)(I,{className:"h-3.5 w-3.5 text-foreground"}),x("ratingSuffix")]}),(0,r.jsx)("span",{className:"flex flex-wrap items-center gap-x-1.5",children:[["iphone",(0,v.appStoreUrl)("web_home")],["android",(0,v.playStoreUrl)("web_home")],["watch",(0,v.appStoreUrl)("web_home")],["mac",(0,v.appStoreUrl)("web_home")],["web","/login"]].map(([e,t],a)=>(0,r.jsxs)("span",{className:"flex items-center gap-x-1.5",children:[a>0&&(0,r.jsx)("span",{"aria-hidden":"true",children:"·"}),(0,r.jsx)("a",{href:t,...t.startsWith("http")?{target:"_blank",rel:"noopener"}:{}
2,className:"underline decoration-muted-foreground/40 underline-offset-4 hover:text-foreground hover:decoration-primary",children:x(`platformsLinks.${e}`)})]},e))})]})]})})]}),(0,r.jsxs)("section",{className:"container mx-auto max-w-6xl px-4 py-16 sm:py-24",children:[(0,r.jsx)(l.ScrollReveal,{children:(0,r.jsxs)("div",{className:"mb-10 flex flex-col gap-4 lg:flex-row lg:items-end lg:justify-between",children:[(0,r.jsx)("h2",{className:`${S} max-w-2xl text-4xl leading-[1.04] sm:text-5xl lg:text-[3.6rem]`,children:x("moments.title")}),(0,r.jsx)("p",{className:"max-w-sm text-base leading-relaxed text-muted-foreground sm:text-lg",children:x("moments.intro")})]})}),(0,r.jsx)("div",{className:"grid gap-8 md:grid-cols-3 md:gap-6",children:P.map((e,t)=>(0,r.jsx)(l.ScrollReveal,{delay:100*t,children:(0,r.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,r.jsxs)("div",{className:"relative h-[520px] overflow-hidden rounded-[22px] bg-card lg:h-[600px]",children:[(0,r.jsx)(a.default,{src:e.image,alt:"",fill:!0,sizes:"(min-width: 768px) 33vw, 100vw",className:"object-cover",style:{objectPosition:e.position}}),(0,r.jsx)("div",{className:"absolute inset-0 bg-[linear-gradient(180deg,rgba(0,0,0,0.35)_0%,rgba(0,0,0,0)_22%,rgba(0,0,0,0)_40%,rgba(0,0,0,0.88)_100%)]"}),(0,r.jsxs)("div",{className:"absolute left-4 top-4 flex items-center gap-2 rounded-full border border-white/15 bg-black/55 px-3.5 py-2 text-sm font-medium text-white",children:[(0,r.jsx)("span",{className:"block h-2 w-2 rounded-full",style:{background:e.color}}),x(`moments.${e.key}.tag`)]}),(0,r.jsxs)("div",{className:"absolute inset-x-4 bottom-4 flex flex-col gap-3.5 rounded-[18px] border border-white/15 bg-[rgba(18,18,20,0.82)] p-4 text-white backdrop-blur-md lg:inset-x-5 lg:bottom-5 lg:p-5",children:[(0,r.jsxs)("div",{className:"flex items-center gap-4",children:[void 0!==e.score?(0,r.jsx)(d,{score:e.score,color:e.color,size:58}):(0,r.jsx)(E,{}),(0,r.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[(0,r.jsx)("div",{className:`text-sm text-white/55 ${e.replaces?"line-through":""}`,children:x(`moments.${e.key}.planned`)}),(0,r.jsxs)("div",{className:"flex items-center gap-2 text-lg font-semibold tracking-tight lg:text-xl",children:[(0,r.jsx)(z,{d:e.arrow,className:"h-[18px] w-[18px] shrink-0",color:e.color,width:2.4}),x(`moments.${e.key}.adjusted`)]})]})]}),(0,r.jsxs)("div",{className:"border-t border-white/15 pt-3 text-sm leading-snug text-white/85",children:[(0,r.jsx)("span",{className:"font-semibold text-[#00f19f]",children:x("moments.why")})," · ",x(`moments.${e.key}.reason`)]})]})]}),(0,r.jsx)("p",{className:"px-1 text-base leading-relaxed text-muted-foreground",children:x(`moments.${e.key}.caption`)}),(0,r.jsxs)(A,{href:e.href,external:e.external,className:"group inline-flex items-center gap-1.5 px-1 text-sm font-medium text-primary",children:[x(`moments.${e.key}.link`),(0,r.jsx)(B,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]})]})},e.key))})]}),(0,r.jsx)("section",{className:"border-y border-border/50 bg-card/30",children:(0,r.jsxs)("div",{className:"container mx-auto grid max-w-6xl gap-10 px-4 py-16 sm:py-24 lg:grid-cols-[1fr_1.15fr] lg:items-center",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-7",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:`${S} mb-4 text-4xl leading-[1.05] sm:text-5xl`,children:x("plan.title")}),(0,r.jsx)("p",{className:"text-base leading-relaxed text-muted-foreground sm:text-lg",children:x("plan.intro")})]}),(0,r.jsx)("ol",{className:"flex flex-col gap-6",children:["step1","step2","step3"].map((e,t)=>(0,r.jsxs)("li",{className:"flex gap-4",children:[(0,r.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-full bg-primary/15 font-semibold text-primary",children:t+1}),(0,r.jsxs)("span",{children:[(0,r.jsx)("span",{className:"mb-1 block text-lg font-semibold",children:x(`plan.${e}Title`)}),(0,r.jsx)("span",{className:"block leading-relaxed text-muted-foreground",children:x(`plan.${e}Body`)})]})]},e))}),(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-3 pl-[52px]",children:[["garmin","wahoo","zwift"].map(e=>(0,r.jsx)(y,{brand:{key:e,name:"garmin"===e?"Garmin":"wahoo"===e?"Wahoo":"Zwift"},size:32},e)),(0,r.jsxs)("span",{className:"flex h-8 items-center gap-1.5 rounded-lg bg-card px-2.5 text-sm text-foreground
2/80",children:[(0,r.jsx)(I,{className:"h-3.5 w-3.5"}),"Watch"]})]}),(0,r.jsxs)(t.default,{href:"/blog/how-training-plans-work",className:"group inline-flex items-center gap-1.5 text-sm font-medium text-primary",children:[x("plan.link"),(0,r.jsx)(B,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]})]}),(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsx)("div",{className:"overflow-hidden rounded-2xl border border-border/60 shadow-2xl",children:(0,r.jsx)(o.ProductShot,{name:"dashboard-hero",alt:x("plan.planAlt"),className:"h-auto w-full",width:1200,height:800})}),(0,r.jsx)("div",{className:"absolute -bottom-8 -left-6 hidden w-[55%] overflow-hidden rounded-xl border border-border/60 shadow-2xl sm:block",children:(0,r.jsx)(o.ProductShot,{name:"calendar",alt:x("plan.calendarAlt"),className:"h-auto w-full",width:1200,height:800})})]})]})}),(0,r.jsxs)("section",{className:"container mx-auto max-w-6xl px-4 py-16 sm:py-20",children:[(0,r.jsx)("p",{className:"mb-7 text-center text-sm text-muted-foreground sm:text-base",children:x("sports.title")}),(0,r.jsx)("ul",{className:"grid grid-cols-3 gap-y-6 sm:grid-cols-5 lg:flex lg:justify-between",children:R.map(e=>{let t=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(z,{d:e.path,className:"h-7 w-7 text-primary",width:1.6}),x(`sports.${e.key}`)]});return(0,r.jsx)("li",{className:"flex justify-center",children:e.href?(0,r.jsx)(A,{href:e.href,external:e.external,className:"flex flex-col items-center gap-2.5 rounded-xl px-2 py-1.5 text-center text-sm text-foreground/80 underline-offset-4 transition-colors hover:text-primary hover:underline",children:t}):(0,r.jsx)("span",{className:"flex flex-col items-center gap-2.5 px-2 py-1.5 text-center text-sm text-foreground/80",children:t})},e.key)})})]}),(0,r.jsxs)("section",{className:"container mx-auto max-w-6xl px-4 py-16 sm:py-20",children:[(0,r.jsx)("h2",{className:`${S} mb-8 text-4xl sm:text-5xl`,children:x("audiences.title")}),(0,r.jsx)("div",{className:"grid gap-4 sm:grid-cols-3 sm:gap-5",children:C.map(e=>(0,r.jsxs)(k.Link,{href:e.href,className:"group relative block h-[220px] overflow-hidden rounded-2xl sm:h-[320px]",children:[(0,r.jsx)(a.default,{src:e.image,alt:"",fill:!0,sizes:"(min-width: 640px) 33vw, 100vw",className:"object-cover transition-transform duration-500 group-hover:scale-[1.03]",style:{objectPosition:e.position}}),(0,r.jsx)("div",{className:"absolute inset-0 bg-gradient-to-b from-transparent via-transparent to-black/85"}),(0,r.jsxs)("div",{className:"absolute inset-x-5 bottom-5 text-white",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 text-2xl font-semibold",children:[x(`audiences.${e.key}.title`),(0,r.jsx)(B,{className:"h-5 w-5 text-[#00f19f] transition-transform group-hover:translate-x-1"})]}),(0,r.jsx)("div",{className:"mt-1 text-sm text-white/80",children:x(`audiences.${e.key}.body`)})]})]},e.key))}),(0,r.jsx)("div",{className:"mt-4 grid gap-3 sm:mt-5 sm:grid-cols-2 sm:gap-5 lg:grid-cols-4",children:_.map(e=>(0,r.jsxs)(k.Link,{href:e.href,className:"flex min-h-[44px] items-center justify-between rounded-2xl bg-card px-5 py-4 transition-colors hover:bg-muted",children:[(0,r.jsxs)("span",{children:[(0,r.jsx)("span",{className:"block font-semibold",children:x(`audiences.${e.key}.title`)}),(0,r.jsx)("span",{className:"mt-0.5 block text-sm text-muted-foreground",children:x(`audiences.${e.key}.body`)})]}),(0,r.jsx)(z,{d:"M5 12h14M13 6l6 6-6 6",className:"h-4 w-4 shrink-0 text-primary",width:2})]},e.key))})]}),(0,r.jsxs)("section",{className:"container mx-auto max-w-6xl px-4 py-16 sm:py-20",children:[(0,r.jsx)("h2",{className:`${S} mb-8 text-4xl sm:text-5xl`,children:x("features.title")}),(0,r.jsxs)("div",{className:"grid gap-5 lg:grid-cols-3",children:[(0,r.jsxs)(t.default,{href:"/blog/introducing-coach-plus",className:"group flex flex-col gap-6 rounded-2xl bg-card p-7 transition-colors hover:bg-muted lg:col-span-2 lg:flex-row lg:items-center",children:[(0,r.jsxs)("div",{className:"flex flex-col lg:w-[300px] lg:shrink-0",children:[(0,r.jsx)("p",{className:"mb-2 text-xs font-medium uppercase tracking-[0.06em] text-primary",children:x("features.coachLabel")}),(0,r.jsx)("h3",{className:`${S} mb-3 text-3xl leading-tight`,children:x("features.coachTitle")}),(0,r.jsx)("p",{className:"text-muted-foreground",children:x("features.coachBody")}),(0,r.jsxs)("span",{className:"mt-4 inline-flex items-center gap-1.5 text-sm font-medium text-primary",children:[x("features.coachLink"),(0,r.jsx)(B,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]})]}),(0,r.jsx)("div",{className:"overflow-hidden rounded-xl border border-border/60",children:(0,r.jsx)(o.ProductShot,{name:"chat",alt:x("features.coachTitle"),className:"h-auto w-full",width:1200,height:634})})]}),(0,r.jsxs)(t.default,{href:"/blog/tired-or-getting-sick",className:"group flex flex-col gap-4 roun
2ded-2xl bg-card p-7 transition-colors hover:bg-muted",children:[(0,r.jsx)("h3",{className:`${S} text-3xl leading-tight`,children:x("features.holdTitle")}),(0,r.jsx)("p",{className:"text-muted-foreground",children:x("features.holdBody")}),(0,r.jsx)("div",{className:"overflow-hidden rounded-xl border border-border/60",children:(0,r.jsx)(o.ProductShot,{name:"briefing",alt:x("features.holdTitle"),className:"h-auto w-full",width:1200,height:816})}),(0,r.jsxs)("span",{className:"mt-auto inline-flex items-center gap-1.5 pt-1 text-sm font-medium text-primary",children:[x("features.holdLink"),(0,r.jsx)(B,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]})]}),(0,r.jsxs)(k.Link,{href:"/race-recon",className:"group flex flex-col gap-4 rounded-2xl bg-card p-7 transition-colors hover:bg-muted",children:[(0,r.jsx)("p",{className:"text-xs font-medium uppercase tracking-[0.06em] text-primary",children:x("features.reconLabel")}),(0,r.jsx)("h3",{className:`${S} text-3xl leading-tight`,children:x("features.reconTitle")}),(0,r.jsx)("div",{className:"overflow-hidden rounded-lg bg-white",children:(0,r.jsx)(a.default,{src:"https://ejfr69gfuexve9yy.public.blob.vercel-storage.com/blog/course-with-without.png",alt:x("features.recoAlt"),width:1200,height:700,className:"h-auto w-full"})}),(0,r.jsx)("p",{className:"text-muted-foreground",children:x("features.reconBody")}),(0,r.jsxs)("span",{className:"mt-auto inline-flex items-center gap-1.5 pt-1 text-sm font-medium text-primary",children:[x("features.reconLink"),(0,r.jsx)(B,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]})]}),(0,r.jsxs)(t.default,{href:"/blog/apple-watch-app",className:"group flex flex-col gap-4 roun
2ded-2xl bg-card p-7 transition-colors hover:bg-muted",children:[(0,r.jsx)("p",{className:"text-xs font-medium uppercase tracking-[0.06em] text-primary",children:x("features.devicesLabel")}),(0,r.jsx)("h3",{className:`${S} text-3xl leading-tight`,children:x("features.devicesTitle")}),(0,r.jsx)(a.default,{src:"https://ejfr69gfuexve9yy.public.blob.vercel-storage.com/blog/apple-watch-app-hero2.png",alt:x("features.devicesTitle"),width:1e3,height:556,className:"h-auto w-full rounded-lg"}),(0,r.jsx)("p",{className:"text-muted-foreground",children:x("features.devicesBody")}),(0,r.jsxs)("span",{className:"mt-auto inline-flex items-center gap-1.5 pt-1 text-sm font-medium text-primary",children:[x("features.devicesLink"),(0,r.jsx)(B,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-4 rounded-2xl bg-card p-7",children:[(0,r.jsx)("p",{className:"text-xs font-medium uppercase tracking-[0.06em] text-primary",children:x("features.racesLabel")}),(0,r.jsx)("h3",{className:`${S} text-3xl leading-tight`,children:x("features.racesTitle")}),(0,r.jsx)("p",{className:"text-muted-foreground",children:x("features.racesBody")}),(0,r.jsxs)(k.Link,{href:"/events",className:"group inline-flex items-center gap-1.5 text-sm font-medium text-primary",children:[x("features.racesLink"),(0,r.jsx)(B,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]}),(0,r.jsx)("div",{className:"mt-auto flex flex-wrap gap-2",children:T.map(e=>(0,r.jsx)(k.Link,{href:e.href,className:"rounded-full border border-border px-3 py-1.5 text-sm text-foreground/80 transition-colors hover:border-primary hover:text-primary",children:x(`sports.${e.label}`)},e.href))})]})]})]}),(0,r.jsx)("section",{className:"container mx-auto max-w-6xl px-4 py-8",children:(0,r.jsxs)("div",{className:"flex flex-col gap-6 rounded-2xl border border-border/70 p-7 lg:flex-row lg:items-center lg:p-9",children:[(0,r.jsxs)("div",{className:"lg:w-[340px] lg:shrink-0",children:[(0,r.jsx)("h2",{className:`${S} mb-2 text-3xl`,children:x("compare.title")}),(0,r.jsx)("p",{className:"text-muted-foreground",children:x("compare.body")})]}),(0,r.jsxs)("div",{className:"flex flex-wrap gap-2.5 lg:justify-end",children:[j.map(e=>(0,r.jsxs)(k.Link,{href:e.href,className:"flex items-center gap-2.5 rounded-xl bg-card py-2 pl-2 pr-4 text-sm transition-colors hover:bg-muted",children:[(0,r.jsx)(y,{brand:e,size:28}),e.name]},e.key)),(0,r.jsxs)(k.Link,{href:"/best-ai-cycling-coach",className:"group inline-flex items-center gap-1.5 px-3 py-3 text-sm font-medium text-primary",children:[x("compare.all"),(0,r.jsx)(B,{className:"h-4 w-4 transition-transform group-hover:translate-x-0.5"})]})]})]})}),(0,r.jsx)(c.Testimonials,{rating:e,limit:6}),(0,r.jsx)("section",{className:"container mx-auto max-w-6xl px-4 pb-4",children:(0,r.jsxs)("p",{className:"text-center text-sm text-muted-foreground",children:[p("featuredIn")," ",(0,r.jsx)("a",{href:"https://the5krunner.com/2026/06/23/intervalcoach-ai-training-app/",target:"_blank",rel:"noopener nofollow",className:"font-medium text-foreground/90 transition-colors hover:text-primary",children:"the5krunner"})]})}),(0,r.jsxs)("section",{className:"container mx-auto max-w-6xl px-4 py-16 sm:py-20",children:[(0,r.jsxs)("div",{className:"mb-8 flex items-end justify-between gap-4",children:[(0,r.jsx)("h2",{className:`${S} text-4xl sm:text-5xl`,children:x("pricing.title")}),(0,r.jsx)(k.Link,{href:"/pricing",className:"shrink-0 text-sm font-medium text-primary hover:underline",children:x("pricing.compare")})]}),(0,r.jsx)("div",{className:"grid gap-5 md:grid-cols-3",children:[{key:"free",price:"â¬0",features:["f1","f2","f3","f4"]},{key:"pro",price:N.PRICING.monthly.displayPrice,features:["f1","f2","f3","f4","f5"]},{key:"max",price:N.PRICING.max.monthly.displayPrice,features:["f1","f2","f3","f4","f5"]}].map(e=>
2(0,r.jsxs)("div",{className:`flex flex-col gap-4 rounded-2xl border p-7 ${"pro"===e.key?"border-primary bg-primary/5":"border-border/70"}`,children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("span",{className:"text-lg font-semibold",children:x(`pricing.${e.key}.name`)}),"pro"===e.key&&(0,r.jsx)("span",{className:"rounded-full bg-primary px-2.5 py-1 text-xs font-semibold text-primary-foreground",children:x("pricing.trialBadge")})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("span",{className:`${S} text-5xl`,children:e.price}),"free"!==e.key&&(0,r.jsxs)("span",{className:"text-muted-foreground",children:[" ",x("pricing.perMonth")]})]}),(0,r.jsx)("ul",{className:"space-y-2 text-foreground/80",children:e.features.map(t=>(0,r.jsx)("li",{children:x(`pricing.${e.key}.${t}`)},t))}),(0,r.jsx)(n.Button,{asChild:!0,size:"lg",variant:"pro"===e.key?"default":"outline",className:"mt-auto rounded-xl",children:"max"===e.key?(0,r.jsx)(k.Link,{href:"/pricing",children:x(`pricing.${e.key}.cta`)}):(0,r.jsx)(t.default,{href:"/login",children:x(`pricing.${e.key}.cta`)})})]},e.key))}),(0,r.jsxs)("p",{className:"mt-6 text-muted-foreground",children:[x("pricing.coachLine")," ",(0,r.jsx)(k.Link,{href:"/coaches",className:"text-primary hover:underline",children:x("pricing.coachLink")})]}),(0,r.jsx)("p",{className:"mt-2 text-xs text-muted-foreground",children:x("wearableNote")})]}),(0,r.jsx)(L,{heading:m,items:h}),(0,r.jsx)("section",{className:"container mx-auto max-w-6xl px-4 pb-20 pt-8",children:(0,r.jsxs)("div",{className:"flex flex-col items-center gap-5 rounded-3xl bg-card px-6 py-16 text-center sm:py-20",children:[(0,r.jsx)("h2",{className:`${S} text-4xl sm:text-6xl`,children:x("cta.title")}),(0,r.jsx)("p",{className:"max-w-xl text-lg text-muted-foreground",children:x("cta.body")}),(0,r.jsx)(n.Button,{size:"lg",asChild:!0,className:"cta-glow mt-2 rounded-xl px-10 py-6 text-base",children:(0,r.jsx)(t.default,{href:"/login",children:x("cta.button")})})]})})]})}],900619)},617005,e=>{"use strict";var r=e.i(843476),t=e.i(861745),a=e.i(657688);function s({darkSrc:e,lightSrc:t,alt:i,className:n="",priority:l=!1,width:o,height:c,fill:d=!1,sizes:m}){let h={alt:i,priority:l,sizes:m,...d?{fill:!0}:{width:o||1200,height:c||800}};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(a.default,{src:e,...h,alt:i,className:`${n} block light:hidden`}),(0,r.jsx)(a.default,{src:t,...h,alt:i,className:`${n} hidden light:block`})]})}let i=["en"];function n(e,r,t){let a=i.includes(r)?r:"en",s=`${e}${"light"===t?"-light":""}.webp`;return"en"===a?`/screenshots/en/${s}`:`https://xofocy5dxbxmmujn.public.blob.vercel-storage.com/${a}/${s}`}e.s(["ProductShot",0,function({name:e,alt:a,...i}){let l=(0,t.useLocale)();return(0,r.jsx)(s,{darkSrc:n(e,l,"dark"),lightSrc:n(e,l,"light"),alt:a,...i})},"shotSrc",0,n],617005)},987706,e=>{"use strict";var r=e.i(843476),t=e.i(537390);e.s(["ScrollReveal",0,function({children:e,delay:a=0,className:s=""}){let{ref:i,inView:n}=(0,t.useInView)({threshold:.1,triggerOnce:!0});return(0,r.jsx)("div",{ref:i,className:`${n?"animate-entrance":"opacity-0"} ${s}`,style:a>0?{animationDelay:`${a}ms`}:void 0,children:e})}])},112647,e=>{"use strict";var r=e.i(843476),t=e.i(522016),a=e.i(861745),s=e.i(948148),i=e.i(987706),n=e.i(95944);let l="https://play.google.com/store/apps/details?id=app.intervalcoach.android",o=e=>`https://forum.intervals.icu/t/120045/${e}`,c=(e,r)=>`https://forum.intervals.icu/t/${e}/${r}`,d=[{id:"frank-geilen",featured:!0,topics:["planning","adaptation","comparison"],author:"Frank Geilen",source:"play",rating:5,date:"2026-07-08",originalLang:"en",href:l},{id:"triverest",featured:!0,topics:["adaptation","recovery","comparison"],author:"Triverest",source:"appstore",region:"DE",rating:5,date:"2026-06-14",originalLang:"en",href:n.APP_STORE_URL},{id:"bodybuilding",topics:["recovery","adaptation"],author:"Bodybuilding",source:"appstore",region:"FR",rating:5,date:"2026-08-22",originalLang:"fr",originalQuote:"Superbe appli avec pour une fois un tarif contenu ce qui fait plaisir. Gros plus câest le lien entre les données de santé et les entraînements prévus ce qui permet de comprendre notre c
2orps et adapter lâentraînement tout cela avec lâaide de lâia.",href:n.APP_STORE_URL},{id:"llukas1",author:"Llukas1",source:"appstore",region:"ES",rating:5,date:"2026-08-31",originalLang:"es",originalQuote:"Llevo un par de dias de uso pero es completa,tiene buena pinta.",href:n.APP_STORE_URL},{id:"pierkuh",topics:["support"],author:"Pierkuh",source:"appstore",region:"NL",rating:5,date:"2026-09-08",originalLang:"en",href:n.APP_STORE_URL},{id:"arnaud-aubert",topics:["adaptation","recovery"],author:"Arnaud Aubert",source:"play",rating:5,date:"2026-09-01",originalLang:"fr",originalQuote:"Efficace et facile à prendre en main. Tient vraiment compte de la forme réelle et s'adapte bien aux capacités et aux objectifs",href:l},{id:"eric-play",topics:["support","adaptation"],author:"Eric",source:"play",rating:5,date:"2026-09-08",originalLang:"de",originalQuote:"Genau das, was ich schon immer gesucht habe: KI unterstütze Trainings anhand aller Daten die verfügbar sind! Sehr faire Preise! In einer früheren Version stand hier ein Bug. Der Entwickler hat sich gleich bei mir gemeldet und den Bug behoben. Besseren und schnelleren Support kann man sich nicht wünschen. Absolut verdiente 5 Sterne!",href:l},{id:"jruddy",topics:["recovery","adaptation"],author:"@jruddy",source:"spotlight",date:"2026-08-31",originalLang:"en",href:"/blog/spotlight-jruddy-the-lap"},{id:"pius",featured:!0,topics:["recovery","adaptation"],author:"Pius",source:"spotlight",date:"2026-07-29",originalLang:"en",href:"/blog/spotlight-pius-roesti-gravel"},{id:"tmikulka",featured:!0,topics:["adaptation","integration","planning"],author:"TMikulka",source:"appstore",region:"US",rating:5,date:"2026-07-26",originalLang:"en",href:n.APP_STORE_URL},{id:"brian-harvey",topics:["comparison","support"],author:"Brian Harvey",source:"play",rating:5,date:"2026-07-13",originalLang:"en",href:l},{id:"lechacon",topics:["planning","comparison"],author:"@lechacon",source:"spotlight",date:"2026-09-20",originalLang:"es",originalQuote:"Comencé dejando claro mi objetivo y si llegarÃa a mover cerca de 280w a 300w y 40 a 43km/h el dÃa de carrera, la respuesta fue clara⦠hay poco tiempo pero todo se puede, mejor concentrarse en 240-250w.",href:"/blog/spotlight-lechacon-vilstal-time-trial"},{id:"bento-galado",topics:["recovery","planning"],author:"Bento Galado",source:"spotlight",date:"2026-06-01",originalLang:"en",href:"/blog/spotlight-bentogalado-a-freita-100k"},{id:"phaidra",topics:["planning","adaptation"],author:"Phaidra",source:"spotlight",date:"2026-07-04",originalLang:"en",href:"/blog/spotlight-phaidra-gatineau-clm"},{id:"d-kohler",topics:["planning"],author:"D. Köhler",source:"appstore",region:"DE",rating:5,date:"2026-07-22",originalLang:"de",originalQuote:"Das ist für mich die beste App, um sein Training zu steuern.",href:n.APP_STORE_URL},{id:"jeroen88",sourceKey:"appstore:14064384390",author:"Jeroen_88",source:"appstore",region:"NL",rating:5,date:"2026-05-14",originalLang:"en",href:n.APP_STORE_URL},{id:"peter-b",sourceKey:"featurebase:786",topics:["support","comparison"],author:"Peter B.",source:"support",date:"2026-07-24",originalLang:"en"},{id:"damon-de-boor",sourceKey:"featurebase:451",topics:["multisport","comparison"],author:"Damon de Boor",source:"support",date:"2026-07-01",originalLang:"en"},{id:"anders-rudbeck",sourceKey:"featurebase:46",author:"Anders Rudbeck",source:"support",date:"2026-06-08",originalLang:"en"},{id:"peter23",topics:["integration"],author:"@Peter23",source:"forum",date:"2026-05-06",originalLang:"en",href:o(749)},{id:"zen-turtle",featured:!0,topics:["comparison"],author:"@Zen_Turtle",source:"forum",date:"2026-07-07",originalLang:"en",href:o(977)},{id:"tommyfoss",topics:["multisport","support"],author:"@TommyFoss",source:"forum",date:"2026-07-19",originalLang:"en",href:o(1034)},{id:"jouhou",topics:["planning"],author:"@jouhou",source:"forum",date:"2026-03-10",originalLang:"en",href:o(478)},{id:"jean-francois-donnay",topics:["comparison"],author:"@Jean_Francois_DONNAY",source:"forum",date:"2026-02-06",originalLang:"fr",originalQuote:"le premier des coachs ai que j ai testé qui semble efficace, je vais m abonner des la fin de ma période d essai",href:o(188)},{id:"fenix9112",topics:["support"],author:"@fenix9112",source:"forum",date:"2026-02-02",originalLang:"en",href:o(132)},{id:"lvanjaarsveld",author:"@lvanjaarsveld",source:"forum",date:"2026-02-06",originalLang:"en",href:o(183)},{id:"eviee",featured:!0,topics:["planning"],author:"@Eviee",source:"forum",date:"2026-05-15",originalLang:"en",href:o(774)},{id:"giuseppe-leccese",topics:["multisport","comparison"],author:"@Giuseppe_Leccese",source:"forum",date:"2026-06-17",originalLang:"en",href:c(130404,11),sourceKey:"forum:130404:11"},{id:"darrell-austin",topics:["recovery","integration"],author:"@Darrell_Austin",source:"forum",date:"2026-06-16",originalLang:"en",href:c(130404,6),sourceKey:"forum:130404:6"}];var m=e.i(520133),h=e.i(76416),x=e.i(35169);let p=e=>e.toLowerCase().split("-")[0],u={appstore:"testimonialsSourceAppStore",play:"testimonialsSourcePlay",spotlight:"testimonialsSourceSpotlight",support:"testimonialsSourceSupp
2ort",forum:"testimonialsSourceForum"},g=new Set(["spotlight","support"]);function f(e,r,t){try{return new Intl.DisplayNames([e],{type:t}).of(r)??r}catch{return r}}function b({rating:e,label:t}){return(0,r.jsx)("div",{className:"flex items-center gap-0.5",role:"img","aria-label":t,children:[1,2,3,4,5].map(t=>(0,r.jsx)("svg",{viewBox:"0 0 20 20","aria-hidden":!0,className:`w-3.5 h-3.5 ${t<=e?"text-primary":"text-muted-foreground/30"}`,fill:"currentColor",children:(0,r.jsx)("path",{d:"M10 1.6l2.47 5.01 5.53.8-4 3.9.94 5.51L10 14.22l-4.94 2.6.94-5.51-4-3.9 5.53-.8L10 1.6z"})},t))})}function j({source:e}){return"appstore"===e?(0,r.jsx)("svg",{viewBox:"0 0 24 24","aria-hidden":!0,className:"w-4 h-4",fill:"currentColor",children:(0,r.jsx)("path",{d:"M16.36 12.72c-.02-2.3 1.88-3.4 1.96-3.45-1.07-1.56-2.73-1.78-3.32-1.8-1.41-.14-2.76.83-3.48.83-.72 0-1.83-.81-3.01-.79-1.55.02-2.98.9-3.78 2.29-1.61 2.79-.41 6.92 1.16 9.18.77 1.11 1.68 2.35 2.88 2.3 1.16-.05 1.6-.74 3-.74s1.79.74 3.01.72c1.24-.02 2.03-1.12 2.79-2.24.88-1.28 1.24-2.53 1.26-2.59-.03-.01-2.42-.93-2.44-3.71zM14.1 5.9c.64-.78 1.07-1.85.95-2.93-.92.04-2.03.61-2.69 1.38-.59.69-1.11 1.79-.97 2.84 1.03.08 2.07-.52 2.71-1.29z"})}):"play"===e?(0,r.jsx)("svg",{viewBox:"0 0 24 24","aria-hidden":!0,className:"w-4 h-4",fill:"currentColor",children:(0,r.jsx)("path",{d:"M3.6 2.3c-.26.27-.4.7-.4 1.25v16.9c0 .55.14.98.4 1.25l.06.05 9.47-9.47v-.22L3.66 2.6l-.06-.3zM16.4 15.5l-3.16-3.16v-.22l3.16-3.16.07.04 3.74 2.13c1.07.6 1.07 1.6 0 2.21l-3.74 2.12-.07.04zM15.5 16.4L12.24 13.1l-9.5 9.5c.35.37.93.42 1.59.05l11.17-6.34zM15.5 7.6L4.33 1.26c-.66-.37-1.24-.32-1.59.05l9.5 9.5L15.5 7.6z"})}):"forum"===e?(0,r.jsx)("svg",{viewBox:"0 0 24 24","aria-hidden":!0,className:"w-4 h-4",fill:"none",stroke:"currentColor",strokeWidth:2,children:(0,r.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.86 9.86 0 01-4-.8L3 20l1.4-3.5A7.86 7.86 0 013 12c0-4.418 4.03-8 9-8s9 3.582 9 8z"})}):"support"===e?(0,r.jsx)("svg",{viewBox:"0 0 24 24","aria-hidden":!0,className:"w-4 h-4",fill:"none",stroke:"currentColor",strokeWidth:2,children:(0,r.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"})}):(0,r.jsx)("svg",{viewBox:"0 0 24 24","aria-hidden":!0,className:"w-4 h-4",fill:"none",stroke:"currentColor",strokeWidth:2,children:(0,r.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 20H5a2 2 0 01-2-2V6a2 2 0 012-2h10a2 2 0 012 2v1m0 13a2 2 0 01-2-2V7m2 13a2 2 0 002-2v-9a2 2 0 00-2-2h-2M7 8h6M7 12h4"})})}function y({item:e}){let i=(0,s.useTranslations)("marketing"),n=(0,a.useLocale)(),l=i(u[e.source]),o=`testimonialContexts.${e.id}`,c=g.has(e.source)&&i.has(o)?i(o):e.region?`${l}, ${f(n,e.region,"region")}`:l,d=p(n)!==p(e.originalLang),m="block rounded-2xl border border-border/50 bg-card/50 p-5 sm:p-6 transition-colors hover:border-primary/40",x=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"flex items-center justify-between gap-3 mb-3",children:[e.rating?(0,r.jsx)(b,{rating:e.rating,label:i("testimonialsStarsAria",{rating:e.rating})}):(0,r.jsx)("span",{className:"text-[11px] uppercase tracking-[0.14em] text-muted-foreground",children:l}),(0,r.jsx)("span",{className:"text-muted-foreground/70 shrink-0","aria-label":l,children:(0,r.jsx)(j,{source:e.source})})]}),(0,r.jsxs)("blockquote",{cite:e.href?.startsWith("/")?`${h.SEO_BASE_URL}${e.href}`:e.href,className:"text-sm sm:text-[0.95rem] leading-relaxed text-foreground/90",children:["â",i(`testimonialQuotes.${e.id}`),"â"]}),(0,r.jsxs)("footer",{className:"mt-4 pt-3 border-t border-border/40",children:[(0,r.jsx)("div",{className:"text-sm font-medium",children:e.author}),(0,r.jsxs)("div",{className:"text-xs text-muted-foreground",children:[c," · ",(0,r.jsx)("time",{dateTime:e.date,children:function(e,r){try{let t=new Date(`${r}T12:00:00Z`);return new Intl.DateTimeFormat(e,{year:"numeric",month:"long"}).format(t)}catch{return r.slice(0,7)}}(n,e.date)})]}),d&&(0,r.jsx)("div",{className:"text-[11px] text-muted-foreground
2/70 mt-1",children:i("testimonialsTranslated",{language:f(n,e.originalLang,"language")})})]})]});return e.href?.startsWith("/")?(0,r.jsxs)(t.default,{href:e.href,className:`${m} group`,children:[x,(0,r.jsxs)("span",{className:"mt-3 block text-xs text-primary opacity-0 group-hover:opacity-100 transition-opacity",children:[i("testimonialsReadStory")," â"]})]}):"forum"===e.source&&e.href?(0,r.jsxs)("a",{href:e.href,target:"_blank",rel:"noopener nofollow",className:`${m} group`,children:[x,(0,r.jsxs)("span",{className:"mt-3 block text-xs text-primary opacity-0 group-hover:opacity-100 transition-opacity",children:[i("testimonialsViewPost")," â"]})]}):(0,r.jsx)("div",{className:m,children:x})}function v({items:e,rating:t}){let a={"@context":"https://schema.org","@type":"SoftwareApplication",name:"IntervalCoach",applicationCategory:"SportsApplication",operatingSystem:"Web, iOS, Android",url:h.SEO_BASE_URL,aggregateRating:{"@type":"AggregateRating",ratingValue:t.score,ratingCount:t.count,bestRating:5,worstRating:1},review:e.map(({item:e,body:r})=>({"@type":"Review",author:{"@type":"Person",name:e.author},datePublished:e.date,reviewBody:r,inLanguage:e.originalLang,...e.href&&{url:e.href.startsWith("/")?`${h.SEO_BASE_URL}${e.href}`:e.href},...e.rating&&{reviewRating:{"@type":"Rating",ratingValue:e.rating,bestRating:5,worstRating:1}}}))};return(0,r.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(a)}})}e.s(["Testimonials",0,function({className:e="",rating:a=n.APP_STORE_RATING_FALLBACK,topic:l,limit:o,showAllLink:c=!0,showHeading:h=!0}){let p=(0,s.useTranslations)("marketing"),u=function({topic:e,limit:r}={}){let t=[...d].sort((e,r)=>Number(r.featured??!1)-Number(e.featured??!1)||r.date.localeCompare(e.date)),a=e?[...t.filter(r=>r.topics?.includes(e)),...t.filter(r=>!r.topics?.includes(e))]:t;return r?a.slice(0,r):a}({topic:l,limit:o}),g=u.map(e=>({item:e,body:p(`testimonialQuotes.${e.id}`)})),f=u.length<d.length;return(0,r.jsxs)("section",{id:"reviews",...h?{"aria-labelledby":"reviews-heading"}:{"aria-label":p("testimonialsTitle")},className:`border-y border-border/50 bg-card/30 ${e}`,children:[(0,r.jsx)(v,{items:g,rating:a}),(0,r.jsxs)("div",{className:"container max-w-5xl mx-auto py-16 sm:py-20 px-4",children:[(0,r.jsx)(i.ScrollReveal,{children:(0,r.jsxs)("div",{className:"text-center mb-10",children:[h&&(0,r.jsx)("h2",{id:"reviews-heading",className:"font-sans font-semibold tracking-[-0.035em] text-3xl sm:text-4xl mb-4",children:p("testimonialsTitle")}),(0,r.jsx)("p",{className:"text-muted-foreground max-w-2xl mx-auto",children:p("testimonialsSubtitle",{score:a.score.toFixed(1),count:a.count})}),(0,r.jsxs)("a",{href:(0,x.appStoreUrl)("web_rating"),target:"_blank",rel:"noopener",className:"inline-flex items-center gap-2 mt-6 px-4 py-2 rounded-full border border-primary/30 bg-primary/5 text-sm hover:border-primary/50 transition-colors",children:[(0,r.jsx)(b,{rating:5,label:p("testimonialsStarsAria",{rating:a.score})}),(0,r.jsx)("span",{className:"font-semibold",children:a.score.toFixed(1)}),(0,r.jsx)("span",{className:"text-muted-foreground",children:p("testimonialsRatingSuffix",{count:a.count})})]})]})}),(0,r.jsx)("div",{className:"columns-1 md:columns-2 lg:columns-3 gap-4 *:mb-4 *:break-inside-avoid",children:u.map((e,t)=>(0,r.jsx)(i.ScrollReveal,{delay:60*Math.min(t,5),children:(0,r.jsx)(y,{item:e})},e.id))}),c&&f&&(0,r.jsx)(i.ScrollReveal,{delay:200,children:(0,r.jsx)("div",{className:"text-center mt-8",children:(0,r.jsxs)(m.Link,{href:"/reviews",className:"inline-flex items-center gap-2 px-5 py-2.5 rounded-xl border border-border/60 text-sm hover:border-primary/50 transition-colors",children:[p("testimonialsSeeAll",{count:d.length}),(0,r.jsx)("span",{"aria-hidden":!0,children:"â"})]})})}),(0,r.jsx)(i.ScrollReveal,{delay:200,children:(0,r.jsxs)("p",{className:"text-center text-sm text-muted-foreground mt-8",children:[p("testimonialsMorePrefix")," ",(0,r.jsx)(t.default,{href:"/blog",className:"text-primary hover:underline underline-offset-4",children:p("testimonialsMoreLink")})]})})]})]})}],112647)},537390,e=>{"use strict";var r=e.i(271645);function t(e){let r=window.matchMedia("(prefers-reduced-motion: reduce)");return r.addEventListener("change",e),()=>r.removeEventListener("change",e)}function a(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}function s(){return!1}e.s(["useInView",0,function(e={}){let{threshold:i=.1,triggerOnce:n=!0,rootMargin:l="0px"}=e,o=(0,r.useRef)(null),c=(0,r.useSyncExternalStore)(t,a,s),[d,m]=(0,r.useState)(!1);return(0,r.useEffect)(()=>
2{if(c)return;let e=o.current;if(!e)return;let r=new IntersectionObserver(([e])=>{e.isIntersecting?(m(!0),n&&r.disconnect()):n||m(!1)},{threshold:i,rootMargin:l});return r.observe(e),()=>r.disconnect()},[i,n,l,c]),{ref:o,inView:c||d}}])},831241,e=>{"use strict";var r=e.i(271645),t=e.i(618566);let a="pendingReferralCode",s="pendingCoachId";e.s(["clearPendingCoachId",0,function(){localStorage.removeItem(s)},"clearPendingReferralCode",0,function(){localStorage.removeItem(a)},"getPendingCoachId",0,function(){return localStorage.getItem(s)},"getPendingReferralCode",0,function(){return localStorage.getItem(a)},"useCaptureReferralCode",0,function(){let e=(0,t.useSearchParams)(),i=(0,r.useMemo)(()=>e.get("ref"),[e]),n=(0,r.useMemo)(()=>e.get("coach"),[e]);(0,r.useEffect)(()=>{if(i){let e=i.toUpperCase(),r=e.startsWith("REF-")?e:`REF-${e}`;localStorage.setItem(a,r),console.log("[referral] Captured referral code:",r)}n&&(localStorage.setItem(s,n),console.log("[coach] Captured coach ID from invite:",n),(async()=>{try{let e=await fetch("/api/auth/session");if(!(await e.json()).authenticated)return;localStorage.removeItem(s),window.location.href=`/coach/accept-coach?coachId=${encodeURIComponent(n)}`}catch{}})())},[i,n])}])},76416,e=>{"use strict";e.i(868711),e.s(["SEO_BASE_URL",0,"https://www.intervalcoach.app"])}]); 3 4//# debugId=b8ad4814-a05e-1b1d-d596-a2325b7ecf15
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.