.courses-intro{display:grid;gap:var(--space-6);align-items:center;margin-bottom:clamp(var(--space-7),6vw,var(--space-8))}.courses-intro .page-intro{margin-bottom:0}.courses-intro__photo img{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-lg)}@media(min-width:1024px){.courses-intro{grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:var(--space-8)}.courses-intro__photo img{aspect-ratio:16 / 10}}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));column-gap:var(--space-5);row-gap:var(--space-6)}.course-landing__layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "aside" "body";gap:var(--space-6);align-items:start}.course-landing__intro{grid-area:intro;margin-bottom:0}.purchase-panel{grid-area:aside}.course-landing__body{grid-area:body;min-width:0}@media(min-width:1024px){.course-landing__layout{grid-template-columns:minmax(0,1fr) 22rem;grid-template-rows:auto 1fr;grid-template-areas:"intro aside" "body aside";column-gap:var(--space-8);row-gap:var(--space-5)}.purchase-panel{position:sticky;top:calc(var(--header-height) + var(--space-5));box-shadow:var(--shadow-float)}}.course-landing__intro h1{max-width:24ch}.course-landing__intro h1.course-landing__title--long{font-size:clamp(1.875rem,1.55rem + 1.2vw,2.5rem);max-width:34ch}.course-landing__description{max-width:var(--measure);font-size:var(--text-lg);line-height:1.55;color:var(--color-ink-700);white-space:pre-line}.course-landing__section{margin-top:clamp(var(--space-7),6vw,var(--space-8))}.course-landing__section.callout{max-width:var(--measure)}.course-landing__section>h2{margin-bottom:var(--space-2)}.course-landing__section>.meta{margin-bottom:var(--space-5)}.course-outline__module{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:var(--space-2) var(--space-4);padding:var(--space-5) 0;border-top:1px solid var(--color-line-strong)}.course-outline__number{grid-row:1 / span 2;font-family:var(--font-display);font-size:var(--text-4xl);font-weight:500;line-height:.9;color:var(--color-primary-600);font-variant-numeric:lining-nums}.course-outline__module-title{font-family:var(--font-body);font-size:var(--text-lg);font-weight:700;line-height:var(--leading-snug);margin:0;overflow-wrap:break-word}.course-outline__lessons{grid-column:2}@media(min-width:768px){.course-outline__module{grid-template-columns:3rem minmax(9rem,.75fr) minmax(0,2fr);column-gap:var(--space-5)}.course-outline__number{grid-row:1}.course-outline__lessons{grid-column:3;grid-row:1}}.course-outline__lesson+.course-outline__lesson{margin-top:var(--space-2)}.course-outline__lesson-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:var(--space-3)}.course-outline__lesson-name{overflow-wrap:break-word}.course-outline__lesson-name>.badge{margin-left:var(--space-2)}.course-outline__lesson-length{text-align:right;font-size:var(--text-sm);color:var(--color-ink-500);white-space:nowrap;font-variant-numeric:tabular-nums}.course-preview{max-width:36rem;margin:var(--space-3) 0}.course-preview .video-player-shell{margin-bottom:0}.course-preview__facade{position:relative;aspect-ratio:16 / 9;background:var(--color-night);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);width:100%;min-height:0;padding:var(--space-4);border:0;color:var(--color-on-night);font:inherit;text-decoration:none;cursor:pointer}.course-preview__facade:hover{background:var(--color-night-deep);color:var(--color-on-night)}.course-preview__facade:active{transform:none}.course-preview__facade:focus-visible{outline-color:var(--color-accent-300)}.course-preview__play{position:relative;width:3.5rem;height:3.5rem;border-radius:var(--radius-pill);background:var(--color-accent-fill);transition:transform var(--transition-base)}.course-preview__play:after{content:"";position:absolute;top:50%;left:54%;translate:-50% -50%;border-style:solid;border-width:.6rem 0 .6rem 1rem;border-color:transparent transparent transparent var(--color-on-accent)}.course-preview__facade:hover .course-preview__play{background:var(--color-accent-fill-hover);transform:scale(1.06)}.course-preview__label{display:flex;flex-direction:column;align-items:center;font-weight:700}.course-preview__length{font-size:var(--text-sm);font-weight:400;color:var(--color-night-muted)}.purchase-panel{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-5)}@media(min-width:640px){.purchase-panel{padding:var(--space-6)}}.purchase-panel__top{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-5)}.course-jacket{--cover-bg: var(--color-night);--cover-ink: var(--color-on-night);--cover-rule: var(--color-accent-500);flex:none;display:flex;flex-direction:column;justify-content:flex-end;width:7.25rem;aspect-ratio:3 / 4;padding:var(--space-3) var(--space-2) var(--space-3) calc(var(--space-2) + 5px);border-radius:var(--radius-sm);overflow:hidden;background:linear-gradient(90deg,rgb(255 255 255 / .14) 0 5px,transparent 5px),radial-gradient(120% 90% at 100% 0%,rgb(255 255 255 / .12),transparent 60%),var(--cover-bg)}.course-jacket[data-cover=gold]{--cover-bg: var(--color-accent-fill);--cover-ink: var(--color-on-accent);--cover-rule: var(--color-night)}.course-jacket[data-cover=teal]{--cover-bg: var(--color-action);--cover-ink: var(--color-on-action);--cover-rule: var(--color-accent-300)}.course-jacket:after{content:"";flex:none;width:1.5rem;height:2px;margin-top:var(--space-2);border-radius:2px;background:var(--cover-rule)}.course-jacket__title{font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;line-height:1.2;color:var(--cover-ink);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.purchase-panel__price{font-family:var(--font-display);font-size:clamp(2.25rem,2rem + 1vw,2.75rem);font-weight:500;line-height:1;font-variant-numeric:lining-nums;color:var(--color-ink-900);margin:0;overflow-wrap:anywhere}.purchase-panel__facts{margin:0 0 var(--space-5);font-size:var(--text-sm)}.purchase-panel__facts>div{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-top:1px solid var(--color-line)}.purchase-panel__facts dt{color:var(--color-ink-500)}.purchase-panel__facts dd{margin:0;font-weight:700;text-align:right}.purchase-panel__actions{display:grid;gap:var(--space-3)}.purchase-panel__enrolled{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-success-bg);color:var(--color-success-ink);font-size:var(--text-sm);font-weight:700}.purchase-panel__verify{margin-bottom:var(--space-3)}.purchase-panel__verify p+p{margin-top:var(--space-2)}.purchase-panel__note{margin:var(--space-3) 0 0;font-size:var(--text-sm);color:var(--color-ink-500);text-align:center}.checkout .page-intro h1{font-size:clamp(1.875rem,1.55rem + 1.2vw,2.5rem)}.checkout-panel{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:clamp(var(--space-5),4vw,var(--space-6))}.checkout-panel__title{font-size:var(--text-xl);margin-bottom:var(--space-5)}.checkout-steps{list-style:none;counter-reset:checkout-step;padding:0;margin:0 0 var(--space-6);max-width:var(--measure)}.checkout-steps li{counter-increment:checkout-step;position:relative;min-height:2.25rem;padding:.3rem 0 var(--space-5) 3.25rem;color:var(--color-ink-700)}.checkout-steps li:last-child{padding-bottom:0}.checkout-steps li:before{content:counter(checkout-step);position:absolute;top:0;left:0;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--color-primary-050);border:1.5px solid var(--color-primary-300);color:var(--color-primary-700);font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;line-height:1;font-variant-numeric:lining-nums}.checkout-steps li:not(:last-child):after{content:"";position:absolute;top:calc(2.25rem + var(--space-1));bottom:var(--space-1);left:calc(1.125rem - 1px);width:2px;background:var(--color-primary-300)}.checkout-terms{display:flex;flex-direction:column;gap:var(--space-3);max-width:var(--measure);margin:0 0 var(--space-5)}.checkout-terms__title{margin:0;font-size:var(--text-lg)}.checkout-terms p{margin:0;color:var(--color-ink-700)}.checkout-form .actions+.field-hint{margin-top:calc(-1 * var(--space-3))}.checkout-form fieldset>label+.field-hint{margin:calc(-1 * var(--space-2)) 0 var(--space-4)}.checkout-form fieldset>.field-hint:last-child{margin-bottom:0}.gift-form{gap:0;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:clamp(var(--space-5),4vw,var(--space-6))}.gift-form fieldset{border:0;border-radius:0;background:none;padding:0}.gift-form fieldset+fieldset{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-line)}.gift-form legend{font-size:var(--text-xl)}.gift-form__notice{margin:var(--space-6) 0 var(--space-5)}.gift-form .actions+.field-hint{margin-top:var(--space-2)}.gift-aside__photo img{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-md);margin-bottom:var(--space-4)}@media(min-width:1024px){.gift-aside__photo img{aspect-ratio:5 / 4}}.confirmation h1{margin-bottom:var(--space-4)}.confirmation p.confirmation__next{font-size:var(--text-lg);line-height:1.55;color:var(--color-ink-700);max-width:56ch;margin-bottom:var(--space-6)}.confirmation form{margin-bottom:var(--space-4)}.gift-moment{display:grid;gap:var(--space-5);margin-bottom:var(--space-7)}@media(min-width:640px){.gift-moment{grid-template-columns:12rem minmax(0,1fr);gap:var(--space-6);align-items:start}}.gift-moment__cover{display:flex;flex-direction:column;justify-content:flex-end;min-height:12rem;padding:var(--space-5) var(--space-4) var(--space-4) calc(var(--space-4) + 6px);border-radius:var(--radius-md);background:linear-gradient(90deg,rgb(255 255 255 / .12) 0 6px,transparent 6px),radial-gradient(120% 90% at 100% 0%,rgb(255 255 255 / .1),transparent 60%),var(--color-night);color:var(--color-night-ink)}@media(min-width:640px){.gift-moment__cover{min-height:16rem}}.gift-moment__cover:after{content:"";flex:none;width:2.25rem;height:3px;margin-top:var(--space-3);border-radius:2px;background:var(--color-accent-500)}.gift-moment__course{color:var(--color-on-night);font-size:var(--text-xl);font-weight:500;line-height:1.2;margin:0;overflow-wrap:break-word}.gift-moment__subtitle{font-size:var(--text-lg);line-height:1.5;color:var(--color-ink-700);max-width:44ch;margin:0 0 var(--space-3)}.gift-moment__facts{margin:0}.gift-moment__message{margin:var(--space-5) 0 0;padding-left:var(--space-5);border-left:2px solid var(--color-accent-500)}.gift-moment__message blockquote{margin:0 0 var(--space-3)}.gift-moment__message blockquote p{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:clamp(1.375rem,1.15rem + 1vw,1.75rem);line-height:1.35;color:var(--color-ink-900);max-width:34ch;margin:0;padding-bottom:.06em;white-space:pre-line;overflow-wrap:break-word}.gift-moment__message figcaption{font-size:var(--text-sm);color:var(--color-ink-500)}.gift-claim{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:clamp(var(--space-5),4vw,var(--space-6))}.gift-claim h2{font-size:var(--text-2xl)}.gift-claim p:not([class]){color:var(--color-ink-700);max-width:56ch}.gift-claim form{margin:0}.gift-unavailable .page-intro{margin-bottom:var(--space-6)}.gift-unavailable .page-intro>p{font-size:var(--text-lg);line-height:1.55}.course-player__header{margin-bottom:clamp(var(--space-6),4vw,var(--space-7))}.course-player__header h1{margin-bottom:var(--space-3)}.course-player__header .progress-bar{margin:var(--space-5) 0 0}.course-player__subtitle{font-size:var(--text-lg);line-height:1.5;color:var(--color-ink-700);max-width:56ch;margin:0}.course-access__note{margin:var(--space-3) 0 0;font-size:var(--text-sm);color:var(--color-ink-700)}.course-access__warning{margin-block:var(--space-4);max-width:64ch}.resume-panel{border-radius:var(--radius-lg);padding:clamp(var(--space-5),4vw,var(--space-7))}.resume-panel h2{font-size:var(--text-lg);font-family:var(--font-body);font-weight:700;color:var(--color-night-muted);margin-bottom:var(--space-3)}.resume-panel__lesson{font-family:var(--font-display);font-size:clamp(1.625rem,1.35rem + 1vw,2.25rem);font-weight:500;line-height:var(--leading-tight);color:var(--color-on-night);max-width:26ch;margin:0 0 var(--space-3);overflow-wrap:break-word}.resume-panel .meta{color:var(--color-night-ink);margin-bottom:var(--space-6)}.course-player__about{margin-top:clamp(var(--space-7),6vw,var(--space-8))}.course-player__about h2{font-size:var(--text-2xl);margin-bottom:var(--space-5)}.course-player__notes{display:grid;gap:var(--space-4) var(--space-6);max-width:52rem}@media(min-width:768px){.course-player__notes{grid-template-columns:repeat(2,minmax(0,1fr))}}.course-player__notes li{padding-top:var(--space-3);border-top:1px solid var(--color-line-strong);color:var(--color-ink-700)}.lesson-header{margin-bottom:var(--space-5)}.lesson-header h1{font-size:clamp(2rem,1.6rem + 1.6vw,2.75rem);margin-bottom:var(--space-2)}.class-notes{margin-top:clamp(var(--space-7),6vw,var(--space-8))}.class-notes>h2{font-size:var(--text-h2);margin-top:0;padding-bottom:var(--space-3);border-bottom:1px solid var(--color-line-strong)}.class-notes__intro{font-size:var(--text-lg);line-height:1.55;color:var(--color-ink-700)}.class-notes h3{font-size:var(--text-xl)}.class-notes__caution{margin:var(--space-6) 0 0}.class-notes__caution h3{font-size:var(--text-lg);margin:0 0 var(--space-2)}.class-notes__caution ul{margin-bottom:0}.class-notes__questions{list-style:none;padding-left:0}.class-notes__questions li{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:var(--text-lg);line-height:1.45;padding:var(--space-2) 0 var(--space-2) var(--space-4);border-left:2px solid var(--color-accent-500)}.prose .class-notes__questions li+li{margin-top:var(--space-3)}.lesson-section{margin-top:var(--space-7);max-width:var(--measure)}.lesson-section>h2{font-size:var(--text-2xl)}.lesson-pager{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);margin-top:clamp(var(--space-7),6vw,var(--space-8));padding-top:var(--space-5);border-top:1px solid var(--color-line-strong)}@media(min-width:640px){.lesson-pager{grid-template-columns:repeat(2,minmax(0,1fr))}}.lesson-pager__link{display:flex;flex-direction:column;gap:var(--space-1);min-height:44px;padding:var(--space-4) var(--space-5);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink-900);text-decoration:none;transition:border-color var(--transition-fast),transform var(--transition-base),box-shadow var(--transition-base)}.lesson-pager__link:hover{color:var(--color-ink-900);border-color:var(--color-primary-300);transform:translateY(-2px);box-shadow:var(--shadow-hover)}.lesson-pager__link:active{transform:none;box-shadow:none}@media(min-width:640px){.lesson-pager__link--next{grid-column:2;text-align:right}}.lesson-pager__direction{font-size:var(--text-sm);color:var(--color-ink-500)}.lesson-pager__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;line-height:var(--leading-snug);color:var(--color-primary-700);overflow-wrap:break-word}
