/* Course-page styles only. The existing homepage and galleries keep style.css. */
.course-page header nav{flex-wrap:wrap;justify-content:center;gap:8px 18px}
.course-page header nav a{padding:8px 0}
.course-skip{position:absolute;left:20px;top:-100px;z-index:30;background:var(--ink);color:white;padding:12px 18px}
.course-skip:focus{top:12px}
.course-hero{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:65px;padding-top:58px;padding-bottom:60px}
.course-copy h1{font-size:clamp(43px,4.8vw,67px);line-height:1.12}
.course-copy .intro{max-width:490px;font-size:16px}
.course-format{color:var(--muted);font-size:13px;margin-bottom:16px}
.course-cost{display:flex;gap:15px;align-items:baseline;flex-wrap:wrap}
.course-cost strong{font-size:44px;font-weight:500;line-height:1.2}
.course-cost span{font-size:14px;color:var(--muted)}
.course-package{font-size:14px;margin:8px 0 24px}
.course-page .button{min-height:48px;font-size:14px}
.course-location{font-size:12px;color:var(--muted);margin:22px 0 0}
.course-photo{margin:0}
.course-photo img{width:100%;height:490px;object-fit:cover;border-radius:220px 220px 5px 5px;background:#edf0e7}
.course-photo figcaption{font-size:11px;color:var(--muted);margin:14px 4px 0;line-height:1.6}
.course-facts-band{background:#edf0e7;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.course-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding-top:28px;padding-bottom:28px;margin-top:0;margin-bottom:0}
.course-facts>div{border-left:1px solid #c5d0be;padding-left:18px}
.course-facts dt{font-size:11px;color:var(--muted);margin-bottom:6px}
.course-facts dd{font-size:17px;font-weight:500;margin:0;line-height:1.4}
.course-learning,.course-faq,.course-visit{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;padding-top:72px;padding-bottom:72px}
.course-page .text-link{display:inline-block;font-size:13px;min-height:30px}
.course-section-heading .left-handed-welcome{font-size:13px;margin:28px 0 24px}
.learning-list{list-style:none;padding:0;margin:27px 0 0}
.learning-list li{border-top:1px solid var(--line);padding:23px 0 6px}
.learning-list li>span{font-size:10px;letter-spacing:.1em;color:var(--muted)}
.learning-list h3{font:27px/1.3 'Playfair Display',Georgia,serif;margin:10px 0 12px}
.learning-list p,.course-learning>div>p{font-size:14px;color:var(--muted)}
.course-progress{font-size:12px!important;border-left:2px solid var(--coral);padding-left:16px;margin-top:22px}
.course-booking-band{background:#f3e8e0}
.course-booking{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:60px;padding-bottom:60px}
.course-booking>div>p:not(.eyebrow){max-width:470px;color:var(--muted);font-size:14px}
.course-phone{font-size:12px!important;margin-top:16px}
.booking-steps{padding:0;margin:12px 0 0;list-style:none;counter-reset:booking}
.booking-steps li{counter-increment:booking;border-top:1px solid #d6c9bf;padding:21px 0 5px 37px;position:relative}
.booking-steps li:before{content:'0' counter(booking);position:absolute;left:0;color:var(--coral);font-size:12px;top:23px}
.booking-steps strong{font-weight:500;font-size:16px}
.booking-steps p{font-size:13px;color:var(--muted);margin-top:7px}
.course-faq details{border-top:1px solid var(--line)}
.course-faq summary{cursor:pointer;padding:19px 24px 19px 0;font-size:15px;font-weight:500}
.course-faq summary:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.course-faq details p{font-size:14px;color:var(--muted);padding-bottom:6px}
.course-visit{border-top:1px solid var(--line);padding-bottom:85px}
.course-visit address{font-style:normal;font-size:17px;max-width:400px;margin-bottom:20px}
.course-visit p:not(.eyebrow){font-size:14px;color:var(--muted)}
.course-related{background:#edf0e7;padding:32px;align-self:start}
.course-related h3{font:30px/1.3 'Playfair Display',Georgia,serif;margin-bottom:22px}
.course-related>a{display:block;font-size:14px;padding:13px 0;border-top:1px solid #cbd5c6;overflow-wrap:anywhere}
.course-page .floating-whatsapp{font-size:12px;max-width:calc(100% - 28px)}
@media(max-width:1000px){.course-hero{gap:35px}.course-learning,.course-faq,.course-visit{gap:45px}.course-photo img{height:450px}.course-booking{gap:45px}.course-page header nav{gap:5px 12px}}
@media(max-width:700px){
 .course-page header nav{justify-content:flex-start;gap:4px 18px;font-size:12px}
 .course-page header nav a{padding:8px 0;min-height:36px}
 .course-hero{grid-template-columns:1fr;gap:30px;padding-top:35px;padding-bottom:35px}
 .course-copy h1{font-size:clamp(38px,10.5vw,52px);letter-spacing:-.035em}
 .course-copy .intro{font-size:15px}
 .course-cost{gap:7px 13px}.course-cost strong{font-size:39px}
 .course-copy .button{width:100%;max-width:390px}
 .course-photo img{height:auto;aspect-ratio:4/3;border-radius:110px 110px 4px 4px;object-position:center 45%}
 .course-facts{grid-template-columns:1fr 1fr;gap:25px 15px;padding-top:25px;padding-bottom:25px}
 .course-facts>div{padding-left:12px}.course-facts dd{font-size:15px}
 .course-learning,.course-faq,.course-visit,.course-booking{grid-template-columns:1fr;gap:28px;padding-top:43px;padding-bottom:43px}
 .course-section-heading .left-handed-welcome{margin:20px 0}
 .course-page h2{font-size:37px}.learning-list{margin-top:18px}
 .course-booking .button{width:100%}.booking-steps{margin-top:0}
 .course-faq summary{font-size:15px;line-height:1.6}
 .course-visit address{font-size:16px}.course-related{padding:25px}
 .course-visit{padding-bottom:40px}.course-page footer{padding-bottom:100px}
}

.course-packages{margin:15px 0 23px;max-width:470px}.course-packages p{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px 16px;border-top:1px solid var(--line);padding-top:10px;margin-bottom:10px;font-size:13px}.course-packages strong{font-weight:500}.course-packages span{font-weight:600}.course-packages small{display:block;font-size:11px;color:var(--muted);line-height:1.7}

/* Preserve the adult learner's head and hands in the original class photograph. */
.course-photo img.adult-class-photo{object-position:center 38%;border-radius:12px}
.compare-card>img.adult-class-photo{object-position:center 38%}
