/* Approved course/booking improvements; no home-page overrides. */
.hh-course-page .hh-sales-hero{padding:145px 0 55px;min-height:0;overflow:visible}
.hh-sales-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.hh-sales-grid>*{min-width:0}
.hh-sales-copy h1{font-size:clamp(2.6rem,4.8vw,4.6rem)}
.hh-sales-copy .lead{font-size:1.05rem}
.hh-sales-copy .actions{margin:24px 0 14px}
.hh-course-page .hh-sales-image{margin-top:30px}
.hh-course-page .hh-sales-image img{display:block;width:100%;height:260px;object-fit:cover;border-radius:20px}
.zb-hero .hh-sales-image img{height:auto;aspect-ratio:1600/896;object-fit:contain;background:#f8e5df}
.hh-purchase-box{position:sticky;top:110px;padding:30px;background:#294139;color:#fffdf9;border:2px solid #294139;border-radius:20px;box-shadow:0 18px 45px #29413929;scroll-margin-top:115px}
.hh-purchase-box h2{font-size:2.4rem}
.hh-purchase-box .eyebrow{color:#f6d3b7}
.hh-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 18px;margin:18px 0 5px}
.hh-price del{font-size:1.2rem;color:#dce3d6}
.hh-price strong{font:600 3.8rem/1.1 var(--serif)}
.hh-price-note{font-size:.78rem;margin:8px 0 18px}
.hh-course-page .hh-buy-button{background:#f6d3b7;color:#243b31;border:1px solid #f6d3b7;white-space:normal;text-align:center;line-height:1.4;min-height:48px}
.hh-course-page .hh-buy-button:hover{background:#fff0df;color:#243b31}
.hh-purchase-box>.hh-buy-button{width:100%}
.hh-purchase-box .text-link{color:#fffdf9;font-size:.85rem}
.hh-course-facts{margin:22px 0}
.hh-course-facts>div{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #6b8075;font-size:.84rem}
.hh-course-facts dt{color:#dce3d6}.hh-course-facts dd{margin:0}
.hh-payment-details{font-size:.8rem;margin:18px 0}
.hh-payment-details summary{cursor:pointer;padding:10px 0;font-weight:700}
.hh-payment-details ul{padding-left:20px}.hh-payment-details li{margin:8px 0}
.hh-offer-boundary{font-size:.86rem;border-left:3px solid var(--clay);padding-left:18px;margin:20px 0}
.hh-buy-dock{display:none}
.hh-booking-page .booking-hero{padding:135px 0 22px}
.hh-booking-page .booking-grid{display:block}
.hh-booking-page .booking-copy h1{font-size:clamp(2.4rem,4vw,3.6rem);max-width:900px}
.hh-booking-page .booking-copy h1 em{display:inline}
.hh-booking-page .booking-trust{margin-top:20px}
.hh-booking-page .booking-section{padding-top:16px}
.hh-booking-steps{display:flex;gap:14px 32px;flex-wrap:wrap;padding:0;list-style:none;counter-reset:hh-booking-step;margin:22px 0 0;font-size:.82rem}
.hh-booking-steps li{counter-increment:hh-booking-step;display:flex;align-items:center;gap:9px}
.hh-booking-steps li:before{content:counter(hh-booking-step);display:grid;place-items:center;background:var(--rose);width:26px;height:26px;border-radius:50%;flex:none}
.hh-booking-help{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px;background:#edf0e7;border:1px solid var(--line);border-radius:16px;margin:22px 0}
.hh-booking-help p{margin:0}.hh-booking-help button{cursor:pointer}
.hh-booking-page .booking-fallback{padding:10px 0;text-align:left}
.hh-booking-status{font-size:.86rem;margin:12px 0;min-height:1.5em}
.hh-booking-page .booking-note{margin-top:25px}
@media(max-width:980px){.hh-sales-grid{grid-template-columns:1fr;gap:26px}.hh-purchase-box{position:static}.hh-course-page .hh-sales-hero{padding-top:125px}.hh-course-page .hh-sales-image{display:none}}
@media(max-width:680px){
 .hh-course-page .hh-sales-hero{padding:115px 0 35px}.hh-sales-copy h1{font-size:2.8rem}.hh-purchase-box{padding:24px}.hh-course-facts>div{grid-template-columns:78px 1fr}
 .hh-course-page .hh-sales-copy .actions>.hh-buy-button{width:100%}
 .hh-buy-dock{position:fixed;bottom:0;left:0;right:0;z-index:90;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px max(12px,env(safe-area-inset-bottom));background:#294139;color:#fffdf9;border-top:2px solid #f6d3b7;box-shadow:0 -8px 24px #0002}
 .hh-buy-dock strong{display:block;font-size:1.3rem}.hh-buy-dock small{display:block;font-size:.62rem}.hh-buy-dock .hh-buy-button{font-size:.76rem;padding:11px 13px;max-width:64%}
 body.hh-has-buy-dock{padding-bottom:var(--hh-dock-height,110px)}html:has(.hh-buy-dock){scroll-padding-bottom:var(--hh-dock-height,110px)}
 .hh-has-buy-dock .chat-launcher{bottom:calc(var(--hh-dock-height,110px) + 14px)}
 .menu-open .hh-buy-dock,.hh-chat-active .hh-buy-dock{visibility:hidden;pointer-events:none}
 .hh-booking-page .booking-hero{padding:115px 0 15px}.hh-booking-page .booking-copy h1{font-size:2.5rem}
 .hh-booking-steps{display:grid;gap:8px}.hh-booking-help{display:block;padding:20px}.hh-booking-help button{margin-top:18px;white-space:normal}
}
