/* Motion Dogs V9.1 — concise offers, detailed programmes on their own pages. */
.offer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.offer-card{display:flex;flex-direction:column;padding:29px 26px;min-width:0}
.offer-stage{font-size:9px;color:var(--red);padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:23px}
.offer-kind{font-size:8px;color:var(--muted);margin-bottom:16px}
.offer-card h3{font-size:clamp(32px,3vw,45px);line-height:1.03}
.offer-card .program-lead{font-size:14px;line-height:1.6;margin-top:20px;font-weight:550;color:var(--ink)}
.offer-fit{font-size:13px;line-height:1.75;color:var(--muted);margin-top:10px}
.offer-facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:21px}
.offer-facts>span{border:1px solid #c9c9bd;font-size:10px;padding:5px 9px;line-height:1.5}
.offer-card .price{margin-top:25px;padding-top:24px;gap:12px}
.offer-card .price strong{font-size:57px}
.offer-card>ul{font-size:12px;line-height:1.65;margin:22px 0 27px;gap:10px}
.offer-actions{margin-top:auto}
.offer-actions>.button{width:100%;justify-content:space-between;gap:13px;padding-inline:17px;font-size:12px;min-height:57px}
.offer-detail{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;font-size:12px;font-weight:550;line-height:1.5;border-bottom:1px solid var(--line);margin-top:13px;transition:color .2s}
.offer-detail:hover{color:var(--red)}
.offer-detail>span{font-size:21px;flex-shrink:0}
.practice-highlight{display:grid;grid-template-columns:1fr 1.25fr;gap:55px;border-block:1px solid var(--line);margin-top:34px;padding:30px 0}
.practice-highlight .eyebrow{font-size:9px;color:var(--red);margin-bottom:13px}
.practice-highlight h3{font-size:32px;line-height:1.13;font-weight:600}
.practice-highlight p{font-size:14px;line-height:1.8;color:var(--muted)}
.practice-highlight .practice-note{font-size:12px;margin-top:13px}
.individual-body>.individual-start{margin-top:16px;color:#dddcd3}
.choices>.choice:last-child{grid-column:1/-1}
.choices>.choice:last-child>span{min-height:42px}

/* Course pages retain the same navigation, typography, and color language. */
.course-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(45px,7vw,110px);align-items:center;padding-block:66px 78px}
.course-intro{min-width:0}
.course-back{display:inline-flex;font-size:12px;min-height:40px;align-items:center;gap:10px;color:var(--muted);margin-bottom:29px}
.course-back:hover{color:var(--red)}
.course-hero .section-label{font-size:9px;line-height:1.8;flex-wrap:wrap}
.course-hero h1{font-size:clamp(43px,4.8vw,72px);line-height:1.05;font-weight:660;letter-spacing:-.05em}
.course-hero h1>span{color:var(--red)}
.course-description{font-size:17px;line-height:1.8;max-width:610px;color:var(--muted);margin-top:28px}
.course-hero .offer-facts>span{font-size:11px}
.course-booking{background:var(--ink);color:var(--paper);padding:31px 29px;min-width:0;border-top:3px solid var(--red)}
.course-booking>.eyebrow{font-size:9px;color:#bebeb2}
.course-booking .price{border:0;padding:0;margin-top:25px}
.course-booking .price strong{font-size:75px}
.course-booking .price>span{color:#bdbfb1}
.course-booking ul{list-style:none;display:grid;gap:13px;font-size:13px;line-height:1.7;margin-top:25px;color:#d1d2c7}
.course-booking li{padding-left:20px;position:relative}
.course-booking li:before{content:'';position:absolute;left:0;top:.25em;width:1.15em;height:1.15em;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fa5145%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2019%2019%205M5%205h14v14%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat}
.course-booking>.button{width:100%;justify-content:space-between;margin-top:27px;gap:15px;font-size:12px;padding-inline:18px}
.course-booking-note{font-size:10px;line-height:1.75;color:#bdc0b2;margin-top:19px}
.programme-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:clamp(45px,7vw,112px);padding-bottom:90px;align-items:start}
.programme-toc{position:sticky;top:calc(var(--nav) + 28px);max-height:calc(100svh - var(--nav) - 60px);overflow-y:auto}
.programme-toc>.eyebrow{font-size:9px;color:var(--muted);margin-bottom:19px}
.programme-toc a{display:block;font-size:12px;padding:13px 0;border-top:1px solid var(--line);line-height:1.6;transition:color .2s}
.programme-toc a:last-child{border-bottom:1px solid var(--line)}
.programme-toc a:hover{color:var(--red)}
.programme-content{min-width:0;max-width:900px}
.programme-section{padding-block:35px 47px;border-top:1px solid var(--line);scroll-margin-top:calc(var(--nav) + 24px)}
.programme-section>h2{font-size:clamp(29px,2.8vw,41px);line-height:1.1;margin-bottom:23px;letter-spacing:-.035em;font-weight:630}
.programme-section>p,.syllabus-body>p{font-size:15px;line-height:1.85;color:var(--muted);margin-top:16px}
.programme-section>ul,.syllabus-body>ul{padding-left:21px;display:grid;gap:9px;margin-block:20px;font-size:14px;line-height:1.75;color:#55574e}
.programme-section li::marker,.syllabus-body li::marker{color:var(--red)}
.programme-section>h3{font-size:18px;line-height:1.5;margin-top:22px;letter-spacing:-.015em}
.programme-disclosure{margin-top:25px;border-block:1px solid var(--line)}
.programme-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:62px;font-size:14px;font-weight:550;padding-block:16px}
.programme-disclosure .plus{flex:0 0 16px}
.syllabus-weeks{margin-top:27px;border-top:1px solid var(--line)}
.syllabus-week{border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--nav) + 24px)}
.syllabus-week>summary{display:grid;grid-template-columns:83px minmax(0,1fr) 20px;gap:17px;align-items:center;padding-block:23px}
.syllabus-week>summary>.eyebrow{font-size:9px;color:var(--red)}
.syllabus-week>summary h3{font-size:18px;line-height:1.45;letter-spacing:-.02em;font-weight:560;text-wrap:initial}
.syllabus-week>summary:hover h3,.syllabus-week[open]>summary h3{color:var(--red)}
.syllabus-body{padding:0 25px 24px 100px}
.syllabus-body h3{font-size:14px;line-height:1.6;letter-spacing:0;margin-top:20px}
.programme-disclosure>.syllabus-body{padding-left:0}
.programme-section>.programme-note{font-size:12px}
.progression-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-block:27px 13px}
.progression-grid>article{padding:22px 19px;background:#faf8f3;border:1px solid var(--line)}
.progression-grid .eyebrow{font-size:9px;color:var(--red);margin-bottom:17px}
.progression-grid h3{font-size:20px;line-height:1.3;letter-spacing:-.025em}
.progression-grid p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.75;margin-top:14px}
.programme-section>.programme-emphasis{font-size:18px;color:var(--ink);font-weight:500}
.programme-next{padding:33px;background:var(--ink);color:var(--paper);margin-top:22px}
.programme-next h2{font-size:35px;line-height:1.1}
.programme-next>p{font-size:15px;line-height:1.8;color:#c2c4b8;margin-top:20px}
.programme-next>.button{margin-top:26px}
.programme-next>.offer-detail{max-width:340px;border-color:#55574d;margin-top:16px}
.programme-next>.offer-detail:hover{color:var(--bright)}

@media(max-width:1200px){
 .offer-grid{gap:16px}.offer-card{padding:25px 21px}.offer-card h3{font-size:34px}
 .offer-card .program-lead{font-size:13px}.offer-fit{font-size:12px}
 .offer-card>ul{font-size:11px}.offer-actions>.button{font-size:11px;padding-inline:13px;gap:9px}
 .offer-detail{font-size:11px}.offer-facts>span{font-size:9px;padding-inline:7px}
 .course-hero{gap:45px}.course-hero h1{font-size:52px}.course-description{font-size:16px}
 .programme-layout{grid-template-columns:190px minmax(0,1fr);gap:45px}
 .progression-grid{gap:12px}.progression-grid>article{padding:20px 15px}.progression-grid h3{font-size:18px}
}
@media(max-width:950px){
 .offer-grid{grid-template-columns:1fr;max-width:620px;margin-inline:auto}
 .offer-card{padding:30px}.offer-card h3{font-size:44px}.offer-kind{margin-bottom:20px}
 .offer-card .program-lead{font-size:15px}.offer-fit{font-size:14px}
 .offer-card>ul{font-size:13px}.offer-actions>.button{font-size:13px;min-height:54px;padding-inline:20px}
 .offer-detail{font-size:13px}.offer-facts>span{font-size:11px}.offer-card .price strong{font-size:64px}
 .practice-highlight{gap:32px}.practice-highlight h3{font-size:29px}
 .course-hero{grid-template-columns:1fr 1fr;gap:30px;padding-block:35px 58px}
 .course-hero h1{font-size:44px}.course-hero .section-label{font-size:8px}
 .course-booking{padding:26px 23px}.course-booking .price strong{font-size:65px}
 .course-booking ul{font-size:12px}.course-booking>.button{font-size:11px}
 .programme-layout{grid-template-columns:1fr;gap:28px}
 .programme-toc{position:static;max-height:none;display:flex;flex-wrap:wrap;gap:8px;overflow:visible}
 .programme-toc>.eyebrow{width:100%;margin-bottom:5px}
 .programme-toc a,.programme-toc a:last-child{border:1px solid var(--line);padding:9px 12px;font-size:11px}
 .programme-content{max-width:none}
}
@media(max-width:760px){
 .offer-card{padding:27px 24px}.offer-stage{margin-bottom:20px;padding-bottom:17px}
 .offer-card h3{font-size:40px}.offer-card .program-lead{font-size:14px}.offer-fit{font-size:13px}
 .offer-card>ul{font-size:12px}.offer-actions>.button{font-size:12px}.offer-detail{font-size:12px}
 .practice-highlight{grid-template-columns:1fr;gap:20px;padding-block:27px;margin-top:27px}
 .practice-highlight h3{font-size:30px}.practice-highlight p{font-size:13px}
 .individual-body>.individual-start{font-size:14px}
 .course-hero{grid-template-columns:1fr;gap:30px;padding-block:25px 43px}
 .course-back{margin-bottom:22px}.course-hero h1{font-size:clamp(40px,9vw,59px)}
 .course-hero .section-label{font-size:8px;margin-bottom:21px}.course-description{font-size:16px;margin-top:22px}
 .course-booking{padding:27px 25px}.course-booking>.button{font-size:12px}
 .course-booking ul{font-size:13px}.programme-layout{gap:27px;padding-bottom:60px}
 .programme-toc{gap:7px}.programme-toc a,.programme-toc a:last-child{font-size:10px;padding:9px 10px}
 .programme-section{padding-block:29px 34px}.programme-section>h2{font-size:31px;margin-bottom:20px}
 .programme-section>p,.syllabus-body>p{font-size:14px}.programme-section>ul,.syllabus-body>ul{font-size:13px}
 .syllabus-week>summary{grid-template-columns:1fr 18px;gap:9px 14px;padding-block:20px}
 .syllabus-week>summary>.eyebrow{grid-column:1;grid-row:1}
 .syllabus-week>summary h3{grid-column:1;grid-row:2;font-size:17px}
 .syllabus-week>summary>.plus{grid-column:2;grid-row:1/3}
 .syllabus-body{padding:0 3px 21px}.programme-disclosure>summary{font-size:13px}
 .progression-grid{grid-template-columns:1fr;gap:12px}.progression-grid>article{padding:21px}
 .progression-grid h3{font-size:23px}.progression-grid .eyebrow{margin-bottom:12px}
 .progression-grid p:not(.eyebrow){font-size:14px;margin-top:10px}
 .programme-next{padding:28px 24px}.programme-next h2{font-size:31px}.programme-next>p{font-size:14px}
 .programme-next>.button{font-size:12px;width:100%;justify-content:space-between}
}
@media(max-width:390px){
 .offer-card{padding:25px 21px}.offer-card h3{font-size:36px}.offer-actions>.button{font-size:11px;padding-inline:15px}
 .course-hero h1{font-size:38px}.course-booking{padding:25px 21px}.course-booking>.button{font-size:11px}
 .programme-section>h2{font-size:29px}
}
@media print{
 .course-booking>.button,.programme-toc,.course-back,.programme-next,.offer-actions{display:none!important}
 .course-hero{display:block;padding-block:20px}.course-booking{background:white;color:black;border:1px solid #aaa;margin-top:20px}
 .course-booking ul,.course-booking p{color:black!important}.programme-layout{display:block}
 .programme-section{break-inside:avoid}.syllabus-week{break-inside:avoid}
}
