.wheel-course-page [hidden] { display: none !important; }
.wheel-course-page { background: var(--pena-cream); }
.wc-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.wc-hero { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr); gap: clamp(36px, 6vw, 96px); align-items: center; padding-block: clamp(48px, 6vw, 88px); }
.wc-hero-copy { max-width: 610px; }
.wc-eyebrow { margin: 0 0 20px; color: var(--pena-coral-deep); font: 700 12px/1.5 var(--pena-font-body); letter-spacing: .1em; text-transform: uppercase; }
.wc-hero h1 { margin: 0 0 26px; font: 450 clamp(54px, 6.6vw, 88px)/1 var(--pena-font-display); letter-spacing: -.035em; }
.wc-hero h1 em { display: block; color: var(--pena-coral-deep); font-weight: 400; }
.wc-hero-copy > p:not(.wc-eyebrow) { font-size: 18px; line-height: 1.75; }
.wc-hero-copy > p.wc-bio { margin-top: 18px; font-size: 15px; line-height: 1.75; }
.wc-hero .button { margin-top: 14px; }
.wc-photo { margin: 0; width: 100%; max-width: 410px; justify-self: end; }
.wc-photo img { display: block; width: 100%; height: auto; border-radius: 4px; }
.wc-photo figcaption { margin-top: 12px; font-size: 13px; color: var(--pena-muted); }
.wc-book { max-width: 780px; padding-top: 46px; padding-bottom: 88px; border-top: 1px solid var(--pena-line-strong); scroll-margin-top: 105px; }
.wc-section-heading { margin-bottom: 34px; }
.wc-section-heading h2 { margin: 0 0 12px; font: 450 clamp(38px, 5vw, 52px)/1.1 var(--pena-font-display); letter-spacing: -.025em; }
.wc-section-heading p { margin: 0; font-size: 16px; line-height: 1.7; }
.wc-layout fieldset { min-width: 0; margin: 0 0 28px; padding: 0 0 28px; border: 0; border-bottom: 1px solid var(--pena-line); }
.wc-layout legend { padding: 0 0 14px; font: 700 17px/1.4 var(--pena-font-body); }
.wc-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.wc-option { display: flex; align-items: flex-start; gap: 12px; padding: 18px; border: 1px solid var(--pena-line-strong); border-radius: 8px; cursor: pointer; line-height: 1.5; background: var(--pena-paper); }
.wc-option:has(input:checked) { border-color: var(--pena-ink); background: var(--pena-blue-wash); box-shadow: inset 0 0 0 1px var(--pena-ink); }
.wc-option:has(input:disabled) { opacity: .55; cursor: not-allowed; }
.wc-option input,.wc-gift-toggle input,.wc-terms input { flex: 0 0 18px; width: 18px; height: 18px; min-height: 0; padding: 0; margin: 3px 0 0; accent-color: var(--pena-ink); }
.wc-option span { flex: 1; min-width: 0; }
.wc-option strong,.wc-option small { display: block; }
.wc-option small { margin-top: 4px; color: var(--pena-muted); font-size: 13px; }
.wc-gift-toggle { display: flex; align-items: flex-start; gap: 12px; font-size: 17px; font-weight: 700; cursor: pointer; }
.wc-gift-fields { padding: 12px 0 0 30px; }
.wc-contact { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 20px; }
.wc-field--wide { grid-column: 1/-1; }
.wc-field { display: grid; gap: 7px; margin: 0 0 18px; font-size: 14px; font-weight: 600; }
.wc-field small { color: var(--pena-muted); font-size: 12px; font-weight: 400; }
.wc-field input,.wc-field textarea,.wc-field select { width: 100%; min-width: 0; min-height: 48px; padding: 11px 13px; border: 1px solid var(--pena-line-strong); border-radius: 6px; background: var(--pena-paper); color: var(--pena-ink); font: 16px/1.5 var(--pena-font-body); }
.wc-field textarea { resize: vertical; }
.wc-help { margin: -6px 0 18px; color: var(--pena-muted); font-size: 14px; line-height: 1.7; }
.wc-extra summary { width: fit-content; cursor: pointer; font-size: 14px; text-decoration: underline; text-underline-offset: 4px; }
.wc-extra[open] summary { margin-bottom: 16px; }
.wc-extra .wc-field { margin-bottom: 0; }
.wc-terms { display: flex; align-items: flex-start; gap: 12px; margin: 0 0 28px; font-size: 13px; line-height: 1.7; }
.wc-terms span { min-width: 0; }
.wc-honeypot { position: absolute; left: -9999px; }
.wc-checkout { display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.wc-summary { min-width: 0; }
.wc-summary strong { display: block; font-size: 13px; line-height: 1.6; font-weight: 500; }
.wc-summary b { display: block; margin-top: 3px; font: 500 36px/1.2 var(--pena-font-display); }
.wc-summary .wc-detail,.wc-summary .wc-rate { display: block; margin-top: 5px; color: var(--pena-muted); font-size: 13px; line-height: 1.6; }
.wc-summary button { margin-top: 10px; }
.wc-next { margin: 22px 0 0; }
.wc-status { margin-bottom: 24px; padding: 18px; border: 1px solid var(--pena-line); border-radius: 8px; background: var(--pena-blue-wash); line-height: 1.7; }
.wc-status.is-error,.wc-form-message.is-error { background: var(--pena-blush); }
.wc-form-message { margin: 0 0 18px; line-height: 1.7; }
.wc-form-message.is-error { padding: 14px; border-radius: 6px; }
.wc-form-message:empty { display: none; }
.wc-layout :focus-visible { outline: 2px solid var(--pena-ink); outline-offset: 4px; }
@media (max-width: 680px) {
  .wc-hero { grid-template-columns: 1fr; gap: 30px; padding-block: 38px 42px; }
  .wc-hero-copy > p:not(.wc-eyebrow) { font-size: 16px; }
  .wc-hero-copy > p.wc-bio { font-size: 14px; }
  .wc-photo { max-width: 320px; justify-self: start; }
  .wc-book { padding-top: 32px; padding-bottom: 56px; }
  .wc-option { padding: 14px 12px; gap: 8px; }
  .wc-option strong { font-size: 14px; }
  .wc-contact { grid-template-columns: 1fr; }
  .wc-gift-fields { padding-left: 0; }
  .wc-checkout { flex-direction: column; align-items: stretch; gap: 18px; }
  .wc-checkout .button { width: 100%; }
}
