*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:62.5%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{min-height:100vh;line-height:1.5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:1.6rem}canvas,img,picture,svg,video{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer}ol,ul{list-style:none}a{color:inherit;text-decoration:inherit}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}:focus:not(:focus-visible){outline:none}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--bp-s:478px;--bp-m:767px;--bp-l:991px;--bp-xl:1279px;--bp-2xl:1400px;--min-screen-width:320px;--max-screen-width:1400px;--space-4xs:clamp(0.31rem,calc(-0.13vw + 0.33rem),0.22rem);--space-3xs:clamp(0.38rem,calc(-0.11vw + 0.41rem),0.31rem);--space-2xs:clamp(0.48rem,calc(-0.06vw + 0.49rem),0.44rem);--space-xs:clamp(0.6rem,calc(0.04vw + 0.59rem),0.63rem);--space-s:clamp(0.75rem,calc(0.2vw + 0.71rem),0.88rem);--space-m:clamp(0.94rem,calc(0.46vw + 0.84rem),1.25rem);--space-l:clamp(1.17rem,calc(0.88vw + 1rem),1.77rem);--space-xl:clamp(1.47rem,calc(1.53vw + 1.16rem),2.5rem);--space-2xl:clamp(1.83rem,calc(2.52vw + 1.33rem),3.53rem);--space-3xl:clamp(2.29rem,calc(4.01vw + 1.49rem),5rem);--space-4xl:clamp(2.86rem,calc(6.23vw + 1.61rem),7.07rem);--t-xs:clamp(0.8rem,calc(0.27vw + 0.8rem),1rem);--t-s:clamp(1rem,calc(0.29vw + 0.9rem),1.2rem);--t-m:clamp(1.2rem,calc(0.31vw + 1.01rem),1.5rem);--t-l:clamp(1.3rem,calc(0.37vw + 1.21rem),1.7rem);--t-xl:clamp(1.6rem,calc(0.37vw + 1.48rem),2rem);--t-2xl:clamp(1.92rem,calc(0.44vw + 1.77rem),2.4rem);--t-3xl:clamp(2.3rem,calc(0.53vw + 2.13rem),2.88rem);--t-4xl:clamp(2.76rem,calc(0.64vw + 2.55rem),3.46rem);--t-5xl:clamp(3.31rem,calc(0.76vw + 3.06rem),4.15rem);--t-6xl:clamp(3.98rem,calc(0.92vw + 3.68rem),4.98rem);--text-body:var(--t-m);--text-button:var(--t-m);--text-info:var(--t-m);--text-highlight:var(--t-4xl);--text-title-xs:var(--t-l);--text-title-s:var(--t-xl);--text-title-m:var(--t-2xl);--text-title-l:var(--t-4xl);--text-title-xl:var(--t-4xl);--text-hero:clamp(4.5rem,calc(3.24vw + 3.46rem),8rem);--radius-xs:clamp(0.25rem,calc(0vw + 0.25rem),0.25rem);--radius-s:clamp(0.38rem,calc(-0.19vw + 0.54rem),0.5rem);--radius-m:clamp(0.63rem,calc(-0.19vw + 0.79rem),0.75rem);--radius-l:clamp(1rem,calc(-0.37vw + 1.32rem),1.25rem);--radius-xl:clamp(1.63rem,calc(-0.56vw + 2.11rem),2rem);--radius-full:999rem;--container-max-width:140rem;--width--xl:120rem;--width--l:100rem;--width--m:80rem;--width--s:60rem;--width--xs:40rem;--gutter:var(--space-m);--content-gap:var(--space-m);--container-gap:var(--space-l);--section-gap:var(--space-xl);--grid-gap:var(--space-m);--card-gap:var(--space-s);--card-padding:var(--space-s);--card-title-size:var(--t-m);--section-space-s:var(--space-xl);--section-space-m:var(--space-2xl);--section-space-l:var(--space-3xl);--section-space-xl:clamp(4rem,calc(8vw + 2rem),10rem);--sidebar-width:26rem;--sidebar-width-expanded:26rem;--sidebar-width-collapsed:6rem;--grid-1:repeat(1,minmax(0,1fr));--grid-2:repeat(2,minmax(0,1fr));--grid-3:repeat(3,minmax(0,1fr));--grid-4:repeat(4,minmax(0,1fr));--grid-5:repeat(5,minmax(0,1fr));--grid-6:repeat(6,minmax(0,1fr));--grid-7:repeat(7,minmax(0,1fr));--grid-8:repeat(8,minmax(0,1fr));--grid-9:repeat(9,minmax(0,1fr));--grid-10:repeat(10,minmax(0,1fr));--grid-11:repeat(11,minmax(0,1fr));--grid-12:repeat(12,minmax(0,1fr));--grid-1-2:minmax(0,1fr) minmax(0,2fr);--grid-1-3:minmax(0,1fr) minmax(0,3fr);--grid-1-4:minmax(0,1fr) minmax(0,4fr);--grid-2-1:minmax(0,2fr) minmax(0,1fr);--grid-2-3:minmax(0,2fr) minmax(0,3fr);--grid-2-4:minmax(0,2fr) minmax(0,4fr);--grid-3-1:minmax(0,3fr) minmax(0,1fr);--grid-3-2:minmax(0,3fr) minmax(0,2fr);--grid-3-4:minmax(0,3fr) minmax(0,4fr);--grid-4-1:minmax(0,4fr) minmax(0,1fr);--grid-4-2:minmax(0,4fr) minmax(0,2fr);--grid-4-3:minmax(0,4fr) minmax(0,3fr);--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-normal:300ms ease;--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--transition-bounce:400ms cubic-bezier(0.68,-0.55,0.265,1.55);--z-base:0;--z-dropdown:9999;--z-sticky:20;--z-fixed:30;--z-modal-backdrop:40;--z-modal:50;--z-popover:60;--z-tooltip:70;--z-toast:80;--focus-ring-width:2px;--focus-ring-offset:2px;--focus-ring-color:var(--primary);color-scheme:light dark}.light,:root,[data-theme=light],html.dark .inverted,html[data-theme=light]{--fg:oklch(0.22 0 0);--fg-subtle:oklch(0.54 0 0);--fg-muted:oklch(0.62 0 0);--bg:oklch(0.96 0.01 75);--bg-raised:oklch(0.98 0.01 75);--bg-subtle:oklch(0.94 0.01 75);--success:oklch(0.60 0.17 155);--success-muted:oklch(0.50 0.17 155);--success-subtle:oklch(0.96 0.05 155);--warning:oklch(0.75 0.15 85);--warning-muted:oklch(0.65 0.15 85);--warning-subtle:oklch(0.96 0.05 85);--error:oklch(0.65 0.22 25);--error-muted:oklch(0.55 0.22 25);--error-subtle:oklch(0.96 0.05 25);--info:oklch(0.68 0.14 240);--info-muted:oklch(0.58 0.14 240);--info-subtle:oklch(0.96 0.05 240);--difficulty-1:oklch(0.60 0.17 155);--difficulty-1-muted:oklch(0.50 0.17 155);--difficulty-1-subtle:oklch(0.96 0.05 155);--difficulty-2:oklch(0.75 0.15 85);--difficulty-2-muted:oklch(0.65 0.15 85);--difficulty-2-subtle:oklch(0.96 0.05 85);--difficulty-3:oklch(0.68 0.18 45);--difficulty-3-muted:oklch(0.58 0.18 45);--difficulty-3-subtle:oklch(0.96 0.05 45);--difficulty-4:oklch(0.65 0.22 25);--difficulty-4-muted:oklch(0.55 0.22 25);--difficulty-4-subtle:oklch(0.96 0.05 25);--difficulty-5:oklch(0.68 0.15 295);--difficulty-5-muted:oklch(0.58 0.15 295);--difficulty-5-subtle:oklch(0.96 0.05 295);--color-border:oklch(0 0 0/0.15);--color-border-subtle:oklch(0 0 0/0.08);--color-border-strong:oklch(0 0 0/0.25);--color-overlay:oklch(0 0 0/0.28);--category-cardio:oklch(0.65 0.20 25);--category-strength:oklch(0.65 0.18 55);--category-yoga:oklch(0.62 0.16 150);--category-pilates:oklch(0.70 0.15 300);--category-hiit:oklch(0.66 0.22 35);--category-flexibility:oklch(0.66 0.16 245);--category-recovery:oklch(0.64 0.14 165);--category-dance:oklch(0.68 0.18 330);--surface:var(--bg);--surface-elevated:var(--bg-raised);--surface-subtle:var(--bg-subtle);--surface-muted:oklch(0 0 0/0.05);--border:var(--color-border);--border-subtle:var(--color-border-subtle);--border-strong:var(--color-border-strong);--overlay:var(--color-overlay);--primary:var(--fg);--primary-foreground:var(--bg);--primary-muted:var(--fg-muted);--action:yellow;--btn-bg:var(--fg);--btn-text:var(--bg);--btn-border:var(--fg);--btn-bg-hover:var(--fg-subtle);--btn-text-hover:var(--bg);--btn-border-hover:var(--fg-subtle);--shadow-color:0 0 0;--shadow-xs:0 1px 2px oklch(var(--shadow-color)/0.1);--shadow-s:0 1.5px 3px oklch(var(--shadow-color)/0.12);--shadow-m:0 2px 6px oklch(var(--shadow-color)/0.15);--shadow-l:0 3px 12px oklch(var(--shadow-color)/0.18);--shadow-xl:0 6px 48px oklch(var(--shadow-color)/0.25)}.dark,[data-theme=dark],html[data-theme=dark],html[data-theme=light] .inverted{--fg:oklch(1 0 0);--fg-subtle:oklch(0.77 0 0);--fg-muted:oklch(0.62 0 0);--bg:oklch(0.20 0 0);--bg-raised:oklch(0.26 0 0);--bg-subtle:oklch(0.14 0 0);--success:oklch(0.65 0.17 155);--success-muted:oklch(0.55 0.17 155);--success-subtle:oklch(0.25 0.05 155);--warning:oklch(0.78 0.15 85);--warning-muted:oklch(0.68 0.15 85);--warning-subtle:oklch(0.25 0.05 85);--error:oklch(0.68 0.22 25);--error-muted:oklch(0.58 0.22 25);--error-subtle:oklch(0.25 0.05 25);--info:oklch(0.70 0.14 240);--info-muted:oklch(0.60 0.14 240);--info-subtle:oklch(0.25 0.05 240);--difficulty-1:oklch(0.65 0.17 155);--difficulty-1-muted:oklch(0.55 0.17 155);--difficulty-1-subtle:oklch(0.25 0.05 155);--difficulty-2:oklch(0.78 0.15 85);--difficulty-2-muted:oklch(0.68 0.15 85);--difficulty-2-subtle:oklch(0.25 0.05 85);--difficulty-3:oklch(0.72 0.18 45);--difficulty-3-muted:oklch(0.62 0.18 45);--difficulty-3-subtle:oklch(0.25 0.05 45);--difficulty-4:oklch(0.68 0.22 25);--difficulty-4-muted:oklch(0.58 0.22 25);--difficulty-4-subtle:oklch(0.25 0.05 25);--difficulty-5:oklch(0.72 0.15 295);--difficulty-5-muted:oklch(0.62 0.15 295);--difficulty-5-subtle:oklch(0.25 0.05 295);--color-border:oklch(1 0 0/0.15);--color-border-subtle:oklch(1 0 0/0.08);--color-border-strong:oklch(1 0 0/0.25);--color-overlay:oklch(0 0 0/0.3);--surface:var(--bg);--surface-elevated:var(--bg-raised);--surface-subtle:var(--bg-subtle);--surface-muted:oklch(1 0 0/0.05);--border:var(--color-border);--border-subtle:var(--color-border-subtle);--border-strong:var(--color-border-strong);--overlay:var(--color-overlay);--primary:var(--fg);--primary-foreground:var(--bg);--primary-muted:var(--fg-muted);--success-foreground:oklch(1 0 0);--warning-foreground:oklch(0.22 0 0);--error-foreground:oklch(1 0 0);--info-foreground:oklch(1 0 0);--btn-bg:var(--fg);--btn-text:var(--bg);--btn-border:var(--fg);--btn-bg-hover:var(--fg-subtle);--btn-text-hover:var(--bg);--btn-border-hover:var(--fg-subtle);--shadow-color:0.5 0 0;--shadow-xs:0 1px 2px oklch(var(--shadow-color)/0.05);--shadow-s:0 1.5px 3px oklch(var(--shadow-color)/0.06);--shadow-m:0 2px 6px oklch(var(--shadow-color)/0.08);--shadow-l:0 3px 12px oklch(var(--shadow-color)/0.1);--shadow-xl:0 6px 48px oklch(var(--shadow-color)/0.15)}body{font-size:var(--text-body);line-height:1.6;color:var(--fg);background-color:var(--surface)}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{color:var(--fg);font-weight:300;line-height:1.2;margin-bottom:var(--space-s)}.h1,h1{font-size:var(--text-title-l);line-height:1.1}.h1,.h2,h1,h2{text-transform:uppercase}.h2,h2{font-size:var(--text-title-m)}.h3,h3{font-size:var(--text-title-s)}.h4,h4{font-size:var(--text-title-xs)}.h5,h5{font-size:var(--t-l)}.h6,h6{font-size:var(--t-m)}.heading{font-size:var(--text-title-m);font-weight:600;text-transform:uppercase}.sub-heading{color:var(--fg-muted)}p{margin-bottom:var(--space-s);color:var(--fg)}p:last-child{margin-bottom:0}a{color:var(--primary);text-decoration:underline;text-underline-offset:.2em;transition:color var(--transition-fast)}a:hover{color:var(--primary-muted)}a:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:.2rem}a.btn{text-decoration:none}.text-xs{font-size:var(--t-xs)}.text-s{font-size:var(--t-s)}.text-m{font-size:var(--t-m)}.text-l{font-size:var(--t-l)}.text-xl{font-size:var(--t-xl)}.text-2xl{font-size:var(--t-2xl)}.text-3xl{font-size:var(--t-3xl)}.text-4xl{font-size:var(--t-4xl)}.text-subtle{color:var(--fg-subtle)}.text-muted{color:var(--fg-muted)}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-error{color:var(--error)}.text-info{color:var(--info)}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-none{text-transform:none}.text-uppercase{text-transform:uppercase;letter-spacing:.05em}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-line-clamp-2{-webkit-line-clamp:2}.text-line-clamp-2,.text-line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.text-line-clamp-3{-webkit-line-clamp:3}.form-label{font-size:var(--t-s)}