@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#11130f;--panel:#1b1e18;--ink:#f2f2e9;--muted:#a1a69a;--lime:#d0f95a;--line:#34382e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:15px 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,summary,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:5px}header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin:0 5%}.brand{font-family:'Barlow Condensed',sans-serif;font-size:27px;font-weight:800;letter-spacing:-1px}.brand span{font-weight:600}.brand i{font-style:normal;color:var(--lime);padding-left:10px}nav{display:flex;gap:34px;font-size:13px}.small-link{font-size:12px;border-bottom:1px solid var(--lime);padding-bottom:8px}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:670px;padding:55px 5% 60px;gap:40px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 28px}.eyebrow span{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Barlow Condensed',Impact,sans-serif;line-height:.98;letter-spacing:-1px;text-transform:uppercase}h1{font-size:clamp(65px,6.8vw,104px);margin-bottom:27px}em{font-style:normal;color:var(--lime)}.intro{color:#c0c4b9;line-height:1.7;margin-bottom:30px}.button{background:var(--lime);color:#15190c;padding:17px 23px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:0;font-size:13px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#e0ff8c;transform:translateY(-2px)}.text-link{font-size:12px;margin-left:22px}.draft{font-size:9px;letter-spacing:1.4px;color:var(--muted);margin:28px 0 0}.hero-art{position:relative;overflow:hidden;background:radial-gradient(ellipse at 60% 30%,#515b38,#252c1b 60%,#20251a);min-height:540px}.track{position:absolute;width:520px;height:880px;border:2px solid #a5bf68;border-radius:50%;transform:rotate(32deg);top:-190px;left:100px;opacity:.65}.t2{width:440px;height:800px;left:140px;top:-150px}.t3{width:360px;height:720px;left:180px;top:-110px}.t4{width:280px;height:640px;left:220px;top:-70px}.t5{width:200px;height:560px;left:260px;top:-30px}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#13190de8,transparent 50%)}.art-top{position:absolute;top:25px;left:25px;font-size:10px;letter-spacing:2px}.art-bottom{position:absolute;bottom:30px;left:30px;right:30px;display:flex;align-items:center;justify-content:space-between;z-index:1}.art-bottom span{font-family:'Barlow Condensed';font-size:37px;font-weight:700;line-height:1}.art-bottom b{font-size:75px;color:var(--lime);font-weight:400}.vertical{position:absolute;right:20px;top:80px;writing-mode:vertical-rl;letter-spacing:3px;font-size:9px}.ticker{display:flex;justify-content:space-around;align-items:center;padding:21px 5%;background:var(--lime);color:#1b2110;font-family:'Barlow Condensed';font-size:21px;font-weight:700;letter-spacing:1px}.ticker i{font-style:normal}.section{padding:90px 5%;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px}.section-heading p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.7}h2{font-size:60px;margin-bottom:25px}.filters{display:flex;gap:10px;margin:28px 0}.filters button{background:transparent;color:var(--muted);border:1px solid var(--line);padding:11px 20px;font-size:12px;border-radius:2px}.filters button.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--panel);border:1px solid var(--line)}.card-art{height:210px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#2e3623}.card-art strong{font-family:'Barlow Condensed';font-size:125px;color:#d0f95a;transform:skew(-10deg);opacity:.8;letter-spacing:-7px}.card:nth-child(2) .card-art{background:#31352e}.card:nth-child(2) .card-art strong{color:#c7cfb9}.card:nth-child(3) .card-art{background:#34301f}.card:nth-child(3) .card-art strong{color:#e4d48e}.card-art:after{content:'';position:absolute;inset:20px;border:1px solid #ffffff19}.card-number{position:absolute;top:16px;left:18px;font-size:10px;letter-spacing:1px}.card-body{padding:25px}.tag{color:var(--lime);font-size:9px;letter-spacing:1.7px}h3{font-family:'Barlow Condensed';font-size:34px;text-transform:uppercase;margin:12px 0}.card p{color:var(--muted);font-size:13px;line-height:1.6;min-height:42px}.card button{background:none;border:0;border-top:1px solid var(--line);color:var(--ink);padding:18px 0 0;width:100%;text-align:left;display:flex;justify-content:space-between;font-size:12px}.note{font-size:11px;color:var(--muted);margin:22px 0 0;line-height:1.6}.method{display:grid;grid-template-columns:1fr 1fr;gap:100px}.method p:not(.eyebrow){max-width:430px;line-height:1.8;color:var(--muted);font-size:13px}.outline-label{display:inline-block;border:1px solid var(--line);font-size:9px;letter-spacing:1.6px;padding:12px 15px;margin-top:12px}.steps article{display:flex;gap:25px;border-bottom:1px solid var(--line);padding:24px 0}.steps article>span{color:var(--lime);font-size:12px;padding-top:17px}.steps h3{font-size:27px}.finder{background:#20261a;display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:50px}.finder p:not(.eyebrow){color:var(--muted)}form{display:flex;flex-direction:column;gap:12px}label{font-size:12px}select{background:var(--bg);color:var(--ink);padding:17px;border:1px solid #4d563f;width:100%}form .button{margin-top:6px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:60px}details{border-bottom:1px solid var(--line);padding:23px 0}summary{cursor:pointer;list-style:none;font-size:14px;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';color:var(--lime)}details[open] summary:after{content:'−'}details p{color:var(--muted);font-size:13px;line-height:1.8;margin:20px 20px 0 0}.closing{text-align:center;padding:80px 20px;background:var(--lime);color:var(--bg)}.closing h2{font-size:72px}.closing .button{background:var(--bg);color:var(--ink)}footer{padding:38px 5%;display:flex;align-items:center;justify-content:space-between}footer p,footer>a:last-child{font-size:10px;color:var(--muted);margin:0}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);padding:45px;max-width:560px;width:90%}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog h2{font-size:50px}dialog p:not(.eyebrow),.detail-note{color:var(--muted);line-height:1.7;font-size:14px}.detail-note{border-top:1px solid var(--line);padding:20px 0}#close{position:absolute;right:15px;top:10px;background:none;color:var(--ink);border:0;font-size:30px}@media(min-width:1600px){header,main,footer{max-width:1600px;margin:auto}}@media(max-width:800px){header{height:80px}nav{display:none}.small-link{font-size:10px}.brand{font-size:23px}.hero{grid-template-columns:1fr;padding-top:40px;gap:35px}.hero-art{min-height:360px}.hero h1{font-size:76px}.ticker{font-size:14px;gap:15px}.ticker span:last-of-type,.ticker i:last-child{display:none}.section{padding:60px 5%}.section-heading{display:block}h2{font-size:49px}.cards{grid-template-columns:1fr}.card-art{height:220px}.filters{overflow:auto;padding-bottom:5px}.filters button{white-space:nowrap;padding:10px 14px}.method,.finder,.faq{grid-template-columns:1fr;gap:30px}.method{gap:15px}.closing h2{font-size:55px}footer{flex-wrap:wrap;gap:24px}footer p{order:3;width:100%}.text-link{margin-left:14px;font-size:10px}.draft{font-size:8px}dialog{padding:35px 25px}}

/* Think Athlete visual references — see design/VISUAL-RULES.md */
:root{--bg:#111210;--panel:#1b1d19;--muted:#a4a69f;--lime:#c4f252;--line:#343630}
h1,h2{font-weight:800}
.hero-art{background:radial-gradient(ellipse at 60% 30%,#454840,#272a25 60%,#1b1e19)}
.track{border-color:#9fa88c;opacity:.5}
.hero-art:after{background:linear-gradient(0deg,#10130ee8,transparent 50%)}
.ticker{background:var(--bg);color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ticker i{color:var(--lime)}
.card-art{background:#2b2e28}
.card-art strong{transform:none;color:#c6ccb9;opacity:.7;letter-spacing:-4px}
.card:nth-child(2) .card-art{background:#30312d}
.card:nth-child(3) .card-art{background:#302f29}
.card:nth-child(3) .card-art strong{color:#c7c3b3}
.finder{background:#1b1e18}
.closing{background:#191c16;color:var(--ink);border-bottom:1px solid var(--line)}
.closing .eyebrow{color:var(--lime)}
.closing .button{background:var(--lime);color:var(--bg)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover{transform:none}}
.card-link{border-top:1px solid var(--line);padding:18px 0 0;display:flex;justify-content:space-between;font-size:12px}.card .program-status{min-height:0;font-size:10px;color:var(--lime);letter-spacing:1px;margin:18px 0}.program-hero{padding-top:50px}.program-hero h1{font-size:clamp(56px,7vw,100px);overflow-wrap:anywhere}.breadcrumb{display:inline-block;color:var(--muted);font-size:12px;margin-bottom:45px}.program-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.program-grid p{color:var(--muted);line-height:1.8;max-width:620px}.program-grid h3{font-size:27px;margin-top:28px}.program-facts{background:var(--panel);padding:32px;align-self:start;border:1px solid var(--line)}.program-facts dl{margin:0 0 28px}.program-facts dt{font-size:11px;color:var(--muted);margin-top:22px}.program-facts dd{margin:7px 0 0;font-size:14px}.program-topics{padding:0;list-style-position:inside;margin:0;counter-reset:topic}.program-topics li{border-bottom:1px solid var(--line);padding:25px 0;font-size:16px}.program-topics li::marker{color:var(--lime)}.related{display:grid;gap:14px}.related a{border-bottom:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between}.related a span{color:var(--lime)}.contact-list>div{display:flex;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.contact-list span{font-size:12px;color:var(--muted)}.contact-intro{color:var(--muted)}@media(max-width:800px){.program-grid{grid-template-columns:1fr;gap:30px}.program-hero h1{font-size:56px}.program-facts{padding:25px}.contact-list>div{flex-wrap:wrap}}
.contact-list>.contact-social{display:flex;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.contact-social span{color:var(--lime)}.contact-social:hover strong{text-decoration:underline}@media(max-width:800px){.contact-list>.contact-social{flex-wrap:wrap}}
/* Original user-supplied photographs: preserve anatomy, equipment and credits. */
.hero{align-items:start}.hero-photo{background:#151614;min-height:0;display:flex;flex-direction:column}.hero-photo:after{display:none}.hero-photo>img{display:block;width:100%;height:620px;object-fit:contain;background:#10110f}.photo-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;border-top:1px solid var(--line)}.photo-caption span{font-family:'Barlow Condensed',Impact,sans-serif;font-size:36px;font-weight:800;line-height:1}.photo-caption b{font-size:64px;color:var(--lime);font-weight:400}.card .card-photo{height:360px;background:#10110f}.card-photo img{height:100%;width:100%;object-fit:contain}.card-photo:after{display:none}.card-photo .card-number{background:#111d;padding:6px 8px}.program-photograph{margin:0;padding:35px 5%;background:#151614;display:flex;justify-content:center;border-bottom:1px solid var(--line)}.program-photograph img{display:block;max-height:700px;max-width:100%;width:auto;height:auto;object-fit:contain}@media(max-width:800px){.hero-photo>img{height:auto;max-height:680px;object-fit:contain}.photo-caption{padding:20px}.photo-caption span{font-size:31px}.card .card-photo{height:440px}.program-photograph img{max-height:600px}}
.cards .card-art{height:360px}@media(max-width:800px){.cards .card-art{height:400px}.card .card-photo{height:400px}}

/* User-selected cover crops: programs 01, 02, 04, 05 and 08. */
.card[data-program="hyrox-palestra"] .card-photo img,
.card[data-program="hyrox-base"] .card-photo img,
.card[data-program="powerlifting"] .card-photo img,
.card[data-program="jump-training"] .card-photo img,
.card[data-program="pallavolo"] .card-photo img{object-fit:cover;display:block}
.card[data-program="hyrox-palestra"] .card-photo img{object-position:50% 56%}
.card[data-program="hyrox-base"] .card-photo img{object-position:50% 52%}
.card[data-program="powerlifting"] .card-photo img{object-position:50% 42%}
.card[data-program="jump-training"] .card-photo img{object-position:50% 12%}
.card[data-program="pallavolo"] .card-photo img{object-position:50% 12%}
@media(max-width:800px){
.card[data-program="jump-training"] .card-photo img{object-position:50% 18%}
.card[data-program="pallavolo"] .card-photo img{object-position:50% 20%}
}

/* Football cover: fill the frame, preserving the athlete as focal point. */
.card[data-program="calcio"] .card-photo img{object-fit:cover;object-position:50% 48%;display:block}

/* Large, objective-led niche selection. */
#programmi .section-heading{align-items:center;gap:50px}
#programmi .catalog-guidance{font-size:16px;line-height:1.8;max-width:370px;color:#c5c8be}
.choose-heading{font-size:clamp(34px,3.5vw,52px);font-weight:800;margin:48px 0 22px;line-height:1.05}
.filters.niche-selector{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 24px;overflow:visible;padding:0}
.filters.niche-selector button{min-height:100px;padding:22px 18px;text-align:left;white-space:normal;font-family:'Barlow Condensed',Impact,sans-serif;font-size:25px;font-weight:700;line-height:1.1;background:var(--panel);color:#b7bbae;border:1px solid var(--line);border-radius:2px;transition:background .2s,color .2s,border-color .2s}
.filters.niche-selector button:hover{border-color:#8d9c6e;color:var(--ink)}
.filters.niche-selector button.active{background:var(--lime);border-color:var(--lime);color:#15190c}
.catalog-result{font-size:12px;color:var(--muted);margin:0 0 25px;letter-spacing:.3px}
@media(max-width:1000px){.filters.niche-selector{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){#programmi .section-heading{display:block}#programmi .catalog-guidance{font-size:14px;margin-top:25px}.choose-heading{margin-top:35px}.filters.niche-selector{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.filters.niche-selector button{min-height:88px;font-size:23px;padding:18px 15px}.filters.niche-selector button:last-child{grid-column:1/-1}}

/* Powerbuilding cover: fill the frame without side bands. */
.card[data-program="powerbuilding"] .card-photo img{object-fit:cover;object-position:50% 38%;display:block}
.program-hero .program-clarification,.card .program-clarification{color:var(--ink);font-size:13px;line-height:1.5;min-height:0;border-left:2px solid var(--lime);padding-left:12px}.program-hero .program-clarification{max-width:640px;font-size:16px;margin:20px 0}.program-photograph{flex-direction:column;align-items:center}.program-photograph figcaption{max-width:620px;color:var(--muted);font-size:12px;line-height:1.6;margin-top:18px}
.card[data-program="hyrox-avanzato"] .card-photo img{object-fit:cover;object-position:50% 48%;display:block}
.card[data-program="hyrox-avanzato"] .card-photo img{object-position:50% 38%}
