/* Fit Max public pages and dashboard system */
.fm { --frame:#bb84564a; --copper:#e5a777; --warm:#251a13; --black:#0b0908; background:var(--black); }
.fm .wrap { width:min(1450px,calc(100% - 2 * clamp(14px,3vw,44px))); margin-inline:auto; }
.fm [id] { scroll-margin-top:78px; }
.fm .button { border-radius:22px; }
.fm-icon { width:24px;height:24px;flex:none;vertical-align:middle;color:var(--copper); }
.fm-mark { display:inline-flex;align-items:center;gap:8px;direction:ltr;text-decoration:none;white-space:nowrap;justify-self:start; }
.fm-mark i { font:italic 950 46px/.8 system-ui;color:var(--copper);text-shadow:0 1px 12px #b8774766; }
.fm-mark span { font:italic 950 25px/1 system-ui;color:#f4efe9; }
.fm-mark small { font:600 9px/1.3 system-ui;letter-spacing:.26em;color:#eee; }
.fm-header { background:#100c09ee; }
.fm-nav { display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;min-height:62px; }
.fm-nav #site-menu { display:flex;justify-content:center;gap:clamp(10px,1.65vw,26px); }
.fm-nav nav a,.fm-footer a { text-decoration:none;white-space:nowrap;font-size:.85rem; }
.fm-nav nav a[aria-current] { background:linear-gradient(#74482a,#2b1a0e);border:1px solid var(--frame);padding:5px 13px;border-radius:20px; }
.fm-tools,.dash-controls { display:flex;align-items:center;gap:9px; }
.fm-tools > a:not(.button),.dash-controls a { display:grid;place-items:center;min-height:44px;min-width:34px;text-decoration:none; }
.fm-tools .fm-icon,.dash-controls .fm-icon { color:#f2eae2; }
.shop-header .fm-mark { grid-column:3;grid-row:1; }.shop-header nav { grid-column:2;grid-row:1; }.shop-header .fm-tools { grid-column:1;grid-row:1; }.shop-header .fm-nav { grid-template-columns:auto minmax(0,1fr) auto; }
.fm-footer { display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding-block:16px;border-top:1px solid var(--frame);font-size:.83rem;color:var(--muted); }
.fm-footer span { margin-inline-end:auto; }
.fm-hero { position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--frame);background:#15100c; }
.hero-art,.plans-art { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2; }
.home-hero::before,.shop-hero::before,.plans-band::before { content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(270deg,#0c0908e8 10%,#0c090833 50%,#0c090887),linear-gradient(0deg,#0a0807 0,transparent 40%); }
.home-hero .hero-art { object-position:center 31%; }
.hero-layout { min-height:310px;display:grid;grid-template-columns:minmax(0,1.17fr) 1fr minmax(145px,.46fr);align-items:center;gap:12px;padding-block:22px; }
.home-copy { max-width:535px; }
.home-copy h1,.shop-hero h1 { font-size:clamp(32px,4.1vw,62px);line-height:1.35; }
.hero-brand { display:block;width:max-content;max-width:100%;font:italic 950 clamp(36px,5.4vw,80px)/1.08 system-ui;color:#f3efec; }
.hero-brand em { color:var(--copper); }
.home-copy p { max-width:33ch;margin-block:7px 12px;color:#eee2d6; }
.home-copy .actions,.quote-card .actions { flex-wrap:wrap;gap:6px; }
.hero-progress { grid-column:3;padding:12px;background:#120d09e8;border:1px solid var(--frame);border-radius:15px; }
.hero-progress .badge { margin-inline-start:4px; }
.hero-progress p { font-size:.74rem;margin-top:4px; }
.feature-strip { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding-block:9px 14px; }
.feature-strip a,.goal-links a,.quick-grid a,.category-strip button { display:grid;justify-items:center;align-content:center;text-align:center;min-height:72px;padding:6px;background:linear-gradient(150deg,#2a1b11,#130e0b 78%);border:1px solid var(--frame);border-radius:12px;text-decoration:none;color:var(--ink);font-size:.81rem; }
.feature-strip a:hover,.goal-links a:hover,.quick-grid a:hover,.category-strip button:hover { border-color:var(--copper); }
.feature-strip small { font-size:.69rem; }
.home-services { padding-block:12px; }.home-services>h2 { text-align:center;margin-bottom:9px; }.fm h2 { font-size:clamp(18px,2vw,28px); }
.services-layout { display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,3.9fr);gap:12px;align-items:center; }
.app-preview { display:flex;align-items:center;gap:7px; }.app-preview h3 { font-size:.95rem; }.app-preview p,.app-preview small { font-size:.73rem; }
.phone { flex:0 0 50%;min-width:0;transform:rotate(-5deg);border:2px solid #b88461;border-radius:19px;padding:11px 6px;background:linear-gradient(#17100b,#0a0807);box-shadow:0 0 18px #af6b4240; }
.phone b { display:block;text-align:center;color:var(--copper);font:italic 850 16px system-ui; }.phone small { margin-block:6px; }
.phone a { display:flex;gap:3px;align-items:center;text-decoration:none;font-size:.67rem;padding:5px 3px;margin:4px 0;background:#241a13;border-radius:5px; }.phone .fm-icon { width:16px;height:16px; }
.service-cards { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px; }
.service-cards a { display:grid;text-align:center;text-decoration:none;overflow:hidden;background:#19110b;border:1px solid var(--frame);border-radius:10px;font-size:.76rem; }.service-cards strong { padding:4px; }
.service-cards img { aspect-ratio:1.8!important;border-radius:0!important; }
.goals-layout { display:grid;grid-template-columns:1.8fr 1fr;gap:10px;margin-top:10px;align-items:stretch; }.goals-layout>div { text-align:center; }.goals-layout p { font-size:.78rem; }
.goal-links { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:5px; }.goal-links a { min-height:60px;font-size:.68rem; }
.consult-card,.join-card { position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--frame);border-radius:12px;background:#1d130d;padding:10px; }.consult-card { display:grid;align-items:center; }.consult-card img,.join-card img { position:absolute;width:100%!important;height:100%!important;inset:0;object-fit:cover;z-index:-2; }.consult-card::before,.join-card::before { content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(270deg,#100b08f5 15%,#100b087d); }.consult-card h3 { font-size:.85rem; }.consult-card .button { min-height:35px;font-size:.72rem; }
.home-stats { background:linear-gradient(90deg,#1f140d,#0e0b09,#2a1b11);border-block:1px solid var(--frame); }.home-stats .wrap { display:flex;justify-content:center;align-items:center;gap:clamp(8px,4vw,62px);padding:8px 0; }.home-stats .wrap div { display:grid;grid-template-columns:auto auto;align-items:center;column-gap:6px; }.home-stats .wrap small { grid-column:2; }.home-stats strong { color:var(--ink); }
.home-bottom { display:grid;grid-template-columns:1fr 1.25fr .9fr;gap:12px;padding-block:14px; }.home-bottom h2 { font-size:1.05rem;margin-bottom:6px; }.join-card { display:grid;justify-items:start;align-content:end;min-height:135px; }.quote-card { border:1px solid var(--frame);border-radius:12px;padding:9px;background:linear-gradient(140deg,#2a1b11,#110c09); }.quote-card p { font-size:.82rem; }.quote-card .button { padding-inline:8px;font-size:.72rem;min-height:37px; }
.journal-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px; }.journal-grid details { border:1px solid var(--frame);border-radius:9px;overflow:hidden;background:#18110c; }.journal-grid summary,.journal-grid p { padding:5px;font-size:.74rem; }.journal-grid summary { cursor:pointer; }
.home-training { padding:10px 0 18px; }.home-training .mock { max-width:760px;margin-inline:auto; }.home-training>h2 { text-align:center;margin-bottom:8px; }
.shop-hero .hero-art { object-position:left 54%; }.shop-hero .wrap { min-height:225px;padding-block:22px; }.shop-hero p { max-width:32ch;font-size:1.05rem;color:#f1e5da; }.trust { display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 6px; }.trust span { border:1px solid var(--frame);background:#1b110bbd;border-radius:8px;padding:5px 8px;font-size:.79rem; }
.category-shell { display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;margin:10px 0; }.category-shell>.button { padding-inline:10px; }.category-strip { display:flex;gap:8px;overflow:auto;scrollbar-width:thin; }.category-strip button { flex:1 0 100px;cursor:pointer;min-height:64px; }.category-strip button[aria-pressed=true] { background:linear-gradient(130deg,#754725,#29190f);border-color:var(--copper); }
.catalog-layout { display:grid;grid-template-columns:minmax(175px,.9fr) minmax(0,3.2fr);align-items:start;gap:12px; }.dash-panel,.product-card { min-width:0;background:linear-gradient(145deg,#251a12,#130f0c 70%);border:1px solid var(--frame);border-radius:12px;padding:11px; }.dash-panel h2 { font-size:1rem;margin-bottom:8px; }.dash-panel summary { cursor:pointer;font-weight:700; }
.filters form { display:grid;gap:8px;margin-top:8px; }.filters label,.filters legend { font-size:.82rem; }.filters fieldset { display:grid;gap:4px;border:0;border-block:1px solid var(--frame);padding:6px 0; }.filters input[type=range] { width:100%;accent-color:var(--copper); }
.fm input:not([type=checkbox],[type=range]),.fm select { max-width:100%;padding:7px;border:1px solid var(--frame);border-radius:7px;background:#110d0a;color:var(--ink);font:inherit; }.filters select,.filters input[type=search] { display:block;width:100%; }
.catalog-bar { display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px;font-size:.82rem; }.catalog-bar .button { min-height:36px;padding:4px 9px; }.catalog-bar>div { display:flex;align-items:center;gap:6px;flex-wrap:wrap; }
.products { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px; }.product-card { padding:0;overflow:hidden; }.product-art { position:relative; }.product-art img { aspect-ratio:1.55!important;border-radius:0!important; }.favorite,.discount { position:absolute;top:5px;border-radius:12px;background:#1b100be8;color:#f8d2b0;border:1px solid var(--frame); }.favorite { inset-inline-start:5px;min-width:40px;min-height:40px;cursor:pointer; }.discount { inset-inline-end:5px;padding:2px 6px;font-size:.7rem; }
.product-info { padding:7px; }.product-info h3 { font-size:.88rem; }.product-info .button { width:100%;min-height:38px;font-size:.72rem;padding:3px;gap:3px; }.product-info .fm-icon { width:15px;height:15px;color:#20110a; }.prices { display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0;font-size:.78rem; }.prices del { color:var(--muted);font-size:.69rem; }
.products.as-list { grid-template-columns:1fr; }.as-list .product-card { display:grid;grid-template-columns:minmax(90px,170px) 1fr;align-items:center; }.as-list .product-info .button { width:auto;padding-inline:9px; }
.basket { margin-block:12px; }.cart-row { display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:6px;border-bottom:1px solid var(--frame); }.cart-row strong { margin-inline-end:auto; }.cart-row .button { min-width:44px;padding-inline:8px; }.shop-note { min-height:1.3em;font-size:.85rem; }
.plans-band { position:relative;isolation:isolate;overflow:hidden;border-block:1px solid var(--frame);padding:14px 0; }.plans-band .plans-art { width:100%;height:100%;object-fit:cover;object-position:20% 27%; }.plans-band .wrap>p { font-size:.84rem;margin-bottom:8px; }.plan-layout { display:grid;grid-template-columns:145px minmax(0,1fr) minmax(0,.37fr);gap:10px; }.plan-benefits { display:grid;gap:5px; }.plan-benefits span { padding:5px;border:1px solid var(--frame);border-radius:8px;background:#21150de0;font-size:.77rem; }.plan-cards { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px; }.plan-cards article { display:flex;flex-direction:column;align-items:center;text-align:center; }.plan-cards strong { color:var(--copper);font-size:.9rem;margin-block:4px; }.plan-cards ul { flex:1;text-align:start;padding-inline-start:18px;font-size:.79rem; }.plan-featured { border-color:var(--copper);box-shadow:inset 0 0 30px #b7733438; }
.fm dialog { color:var(--ink);background:#21160f;border:1px solid var(--copper);border-radius:14px;padding:18px;max-width:min(450px,90vw); }.fm dialog::backdrop { background:#000a; }.fm dialog button { margin-top:9px; }
.dash-shell { display:grid;grid-template-columns:clamp(165px,15vw,238px) minmax(0,1fr);min-height:100vh; }.dash-side { position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:16px;padding:17px 12px;border-inline-end:1px solid var(--frame);background:linear-gradient(180deg,#120d0a,#0a0807); }.dash-side .fm-mark { align-self:center; }.dash-side nav,.dash-mobile-nav nav { display:grid;gap:4px; }.dash-side nav a,.dash-mobile-nav nav a { display:flex;gap:8px;align-items:center;padding:8px;border-radius:8px;text-decoration:none;font-size:.84rem; }.dash-side nav a[aria-current],.dash-mobile-nav nav a[aria-current] { background:linear-gradient(125deg,#a97147,#5a3823); }.dash-side .side-art { margin-top:auto; }.dash-main { min-width:0;padding:10px; }.dash-top { display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:8px; }.dash-search { display:flex;gap:5px;align-items:center;min-width:0; }.dash-search input { width:min(310px,100%); }.dash-mobile-nav { display:none; }
#dash-search-results { display:flex;gap:7px;flex-wrap:wrap;padding:7px; }.dash-welcome { position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--frame);border-radius:12px;padding:12px 15px;min-height:125px;display:grid;align-items:center;margin-bottom:9px;background:#18110d; }.dash-welcome .photo { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left 30%;z-index:-2; }.athlete-welcome .photo { width:58%;inset-inline-start:auto;object-position:center 30%; }.dash-welcome::before { content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(270deg,#100c09 24%,#100c0938 78%); }.dash-welcome h1 { font-size:clamp(20px,2.1vw,33px);margin-block:4px; }.dash-welcome p { font-size:.84rem; }.dash-welcome small { display:inline-block; }.dash-welcome .button { min-height:35px;font-size:.74rem; }
.dash-stats { display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:7px;margin-bottom:9px; }.dash-metric { display:flex;align-items:center;gap:7px;min-height:64px;border:1px solid var(--frame);border-radius:12px;padding:7px;background:linear-gradient(140deg,#4a2c19,#18110c 65%); }.dash-metric strong { font-size:clamp(.86rem,1.65vw,1.38rem); }.dash-metric small { font-size:.71rem; }.dash-metric .fm-icon { width:28px;height:28px; }
.dash-columns { display:grid;gap:8px;align-items:start; }.athlete-columns { grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,.85fr); }.athlete-columns .trend-stack { grid-column:1;grid-row:1; }.athlete-columns .primary-stack { grid-column:2;grid-row:1; }.coach-columns { grid-template-columns:minmax(0,.87fr) minmax(0,1.7fr) minmax(0,1fr); }.dash-columns>div { display:grid;gap:8px;min-width:0; }
.fm-chart { display:block;width:100%;max-height:170px; }.chart-caption { font-size:.72rem;color:var(--muted); }.dash-goal { display:block;font-size:.8rem;margin-bottom:5px; }.dash-goal b { color:var(--copper); }.dash-panel progress { height:10px;accent-color:var(--copper); }.body-metrics { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px; }.body-metrics div,.meal-grid article { background:#21170f;border-radius:6px;padding:5px;text-align:center;font-size:.75rem; }.body-metrics small { font-size:.68rem; }
.today-grid { display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.15fr);gap:6px; }.today-grid>div:first-child img { height:138px;object-fit:cover; }.today-grid>div:first-child .button { width:100%;margin-top:5px; }.today-grid p { font-size:.74rem; }.dash-notices { list-style:none;padding:0;margin:4px 0;display:grid;gap:4px; }.dash-notices li { display:flex;gap:5px;align-items:center;border-radius:7px;background:#21170f;padding:5px;font-size:.75rem; }.dash-notices li small { font-size:.67rem; }.dash-notices img { width:39px!important;height:29px!important; }.dash-notices .fm-icon { width:18px;height:18px; }
.meal-grid,.quick-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px; }.meal-grid small { font-size:.67rem; }.quick-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.quick-grid a { min-height:54px;font-size:.69rem; }
.calendar-month { text-align:center;font-size:.77rem;background:#22160e;border-radius:6px;padding:4px; }.calendar-grid { display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:2px; }.calendar-grid b { font-size:.72rem; }.calendar-grid button { color:var(--ink);min-height:29px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer;font:inherit;font-size:.72rem;padding:0; }.calendar-grid button[data-event] { background:#543521; }.calendar-grid button[aria-pressed=true] { border-color:var(--copper); }.calendar-status { font-size:.69rem;margin:4px 0; }
.student-search { display:block;font-size:.75rem;margin-bottom:4px; }.table-scroll { overflow:auto; }.table-scroll table { width:100%;min-width:350px;border-collapse:collapse;text-align:start;font-size:.7rem; }.table-scroll th,.table-scroll td { text-align:start;padding:4px;border-bottom:1px solid var(--frame); }.table-scroll progress { display:inline-block;width:42px;height:7px;margin:0; }.table-scroll .badge { padding:1px 4px;font-size:.62rem; }.table-scroll .button { padding:3px 6px;min-height:34px;font-size:.67rem; }.table-scroll button[aria-pressed=true] { border-color:var(--copper);color:var(--copper); }.student-avatar { display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#5a3824;margin-inline-end:3px; }
.student-detail { display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:6px; }.student-detail dl { display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:0;font-size:.71rem; }.student-detail dd { margin:0;color:var(--copper); }.goals-ring { display:flex;align-items:center;gap:4px; }.goals-ring p { font-size:.72rem; }
@media(max-width:1050px){.services-layout{grid-template-columns:1fr}.app-preview{grid-row:2;justify-content:center}.phone{flex-basis:125px;transform:none}.dash-shell{grid-template-columns:minmax(0,1fr)}.dash-side{display:none}.dash-mobile-nav{display:block;margin-inline-end:auto;position:relative}.dash-mobile-nav summary{cursor:pointer;padding:7px;border:1px solid var(--frame);border-radius:8px}.dash-mobile-nav nav{position:absolute;inset-inline-start:0;top:100%;width:188px;background:#1a120c;z-index:4;border:1px solid var(--frame);border-radius:8px;padding:4px;max-height:65vh;overflow:auto}.coach-columns{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.coach-columns .primary-stack{grid-column:1;grid-row:1/span 2}.coach-columns .calendar-stack{grid-column:2}.coach-columns .trend-stack{grid-column:2}}
@media(max-width:860px){.fm-nav{grid-template-columns:auto 1fr auto;gap:6px}.fm-nav .menu-toggle{grid-column:3;grid-row:1}.fm-nav .fm-mark{grid-column:1;grid-row:1}.fm-nav .fm-tools{grid-column:2;grid-row:1;justify-content:end}.fm-nav #site-menu{display:none;position:absolute;inset:100% 0 auto;background:#15100d;padding:10px;grid-template-columns:repeat(2,1fr);max-height:68vh;overflow:auto}.menu-open .fm-nav #site-menu{display:grid}.fm-nav nav a{padding:10px;min-height:44px}.feature-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.products{grid-template-columns:repeat(3,minmax(0,1fr))}.athlete-columns{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.athlete-columns .primary-stack{grid-column:1;grid-row:1/span 2}.athlete-columns .trend-stack{grid-column:2;grid-row:1}.athlete-columns .calendar-stack{grid-column:2}}
@media(max-width:760px){.catalog-layout{grid-template-columns:1fr}.home-bottom{grid-template-columns:1fr 1fr}.quote-card{grid-column:1/-1}.plan-layout{grid-template-columns:1fr}.plan-benefits{grid-template-columns:repeat(4,minmax(0,1fr))}.plan-benefits .fm-icon{display:none}.service-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.goals-layout{grid-template-columns:1fr}.hero-layout{grid-template-columns:1fr minmax(110px,.38fr)}.hero-progress{grid-column:2}.hero-progress .badge{display:block;width:max-content}.home-hero .hero-art{object-position:55% 30%}}
@media(max-width:560px){.fm-mark i{font-size:33px}.fm-mark span{font-size:17px}.fm-mark small{font-size:6px}.fm-tools>a:not(.cart-shortcut,.button){display:none}.fm-tools .button,.fm-nav .menu-toggle{font-size:.71rem;padding-inline:7px}.hero-layout{display:flex;flex-direction:column;align-items:stretch;padding-top:14px}.home-hero .hero-art{position:relative;display:block;height:190px;object-position:center 33%;z-index:0;order:2}.home-hero{display:flex;flex-direction:column}.home-hero .hero-layout{display:contents}.home-copy{order:1;padding:14px}.home-copy h1{font-size:32px}.hero-progress{order:3;margin:8px 14px 0;display:flex;flex-wrap:wrap;align-items:center;gap:7px}.hero-progress .progress-ring{margin:0;width:44px}.hero-progress .progress-ring bdi{width:35px}.feature-strip{order:4;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.feature-strip a{min-height:62px}.home-bottom,.athlete-columns,.coach-columns{grid-template-columns:minmax(0,1fr)}.dash-columns>div{grid-column:auto!important;grid-row:auto!important}.athlete-columns .primary-stack,.coach-columns .primary-stack{order:-1}.dash-main{display:flex;flex-direction:column}.dash-main .athlete-stats{order:2}.dash-main .athlete-columns{display:contents}.athlete-columns .primary-stack{order:0}.athlete-columns .trend-stack,.athlete-columns .calendar-stack{order:3}.dash-stats{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}.dash-welcome{margin-top:7px}.dash-top{gap:4px;justify-content:space-between}.dash-search input{font-size:.73rem!important}.dash-controls{gap:0}.dash-controls a{min-width:25px}.dash-controls .fm-icon{width:16px}.dash-mobile-nav summary{font-size:.75rem;white-space:nowrap}.products{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-cards{grid-template-columns:1fr}.plan-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}.home-stats .wrap{display:grid;grid-template-columns:1fr 1fr;gap:6px}.home-stats .badge{grid-column:1/-1;justify-self:start}.shop-hero .wrap{min-height:190px}.shop-hero .hero-art{opacity:.6}.shop-hero::before{background:linear-gradient(270deg,#0b0908 10%,transparent)}.home-training .workout-console{grid-template-columns:1fr}.home-training figure img{max-height:165px}.fm-footer{gap:8px}}

.home-copy h1 { font-size:clamp(32px,3.25vw,52px); }
.hero-layout { grid-template-columns:minmax(0,1.4fr) 1fr minmax(145px,.48fr); }
.home-copy h1 { text-wrap:initial; }
.journal-grid summary { display:grid;gap:3px;list-style:none; }
.journal-grid summary::-webkit-details-marker { display:none; }
.journal-grid summary img { aspect-ratio:2.15!important; }
.journal-grid summary small { color:var(--copper); }
.quote-card blockquote { margin:5px 0;font-size:.84rem; }
.quote-actions { display:flex;gap:4px;float:left; }
.quote-actions .button { min-width:36px; }
.plans-band .plans-art { width:42%;right:auto;object-position:center 23%; }
.athlete-welcome .photo { width:38%;object-position:center 19%; }
.coach-welcome .photo { object-position:left 52%; }
.favorite { font:22px/1 "Segoe UI Symbol",sans-serif; }
.cart-shortcut { position:relative; }
.cart-shortcut b { position:absolute;inset:0 auto auto 0;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--copper);color:#21110a;font-size:.65rem; }
@media(min-width:1300px){.quick-grid{grid-template-columns:repeat(6,minmax(0,1fr));}}
@media(max-width:760px){.hero-layout{grid-template-columns:1fr minmax(110px,.38fr)}}
@media(max-width:560px){.home-copy h1{font-size:32px}.plans-band .plans-art{width:100%;opacity:.35}.athlete-welcome .photo{width:56%}}

#workout-panel .workout-actions,#workout-entry { display:flex;flex-wrap:wrap;gap:6px; }
#workout-panel .workout-movements { margin-block:8px; }
#workout-panel summary { cursor:pointer;min-height:44px;padding:7px 0; }
#movement-list { display:flex;flex-wrap:wrap;gap:5px; }
#movement-list button { min-height:44px;padding:5px 8px;border:1px solid var(--frame);border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer; }
#movement-list button[aria-pressed=true] { border-color:var(--copper); }
#workout-panel .rest-controls .button { min-height:44px;margin:2px;padding-inline:8px; }
#workout-panel .rest-running #rest-clock { color:var(--copper); }
#workout-panel label { display:block;font-size:.83rem; }
#workout-panel :is(input,select,textarea) { display:block;width:100%;min-height:44px; }
#workout-panel textarea { color:var(--ink);background:var(--bg);border:1px solid var(--frame);border-radius:7px;padding:7px;font:inherit; }
#workout-panel [aria-invalid=true] { border-color:var(--copper); }
#workout-panel label small:not(:empty) { color:var(--accent); }
#workout-summary,#workout-history,#history-items>details { border-top:1px solid var(--frame);margin-top:8px;padding-block:5px;overflow-wrap:anywhere; }
#workout-panel figure[hidden] + div { grid-column:1/-1; }
#workout-panel dialog .button { margin:0; }
#personal-history { padding-inline-start:18px; }
@media(max-width:560px){#workout-panel .workout-console{grid-template-columns:minmax(0,1fr)}}
/* Landing service destinations. The existing hero and preview layout use their original rules. */
.home-details { display:grid; gap:clamp(16px,3vw,38px); padding-block:clamp(24px,5vw,64px); }
.home-details [id], .home-services { scroll-margin-block-start:82px; }
.home-detail { min-width:0; padding:clamp(16px,3vw,38px); }
.home-detail:target { border-color:#c49065; box-shadow:0 0 0 1px #c4906540; }
.home-detail-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:clamp(14px,3vw,38px); }
.home-detail-split:nth-child(even) > :last-child { order:-1; }
.home-detail h2 { margin:.25em 0; font-size:clamp(1.25rem,2vw,1.8rem); }
.home-detail p { color:#dac9bb; }
.home-detail-media { overflow:hidden; border-radius:12px; }
.home-detail-media img { display:block; width:100%; height:auto; aspect-ratio:2; object-fit:cover; object-position:center; }
.home-detail .home-training { min-width:0; margin:0; padding:0; }
.home-detail-preview svg { width:100%; }
.home-detail-faq { display:grid; gap:.6rem; }
.home-detail-faq details { border-block-end:1px solid #75523a; padding:.6rem 0; }
.home-detail-faq summary { cursor:pointer; }
.home-heading-link { color:inherit; text-decoration:none; }
.home-heading-link:focus-visible,.home-heading-link:hover { text-decoration:underline; }
@media(max-width:760px){
 .home-detail-split { grid-template-columns:minmax(0,1fr); }
 .home-detail-split:nth-child(even) > :last-child { order:0; }
}
@media(prefers-reduced-motion:no-preference){
 .home-detail:target { animation:home-target-in .45s ease-out; }
 @keyframes home-target-in { from { box-shadow:0 0 0 5px #c4906550; } }
}
