:root{font-family:Arial,Helvetica,sans-serif;color:#171717;background:#f6f4ef}*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,select,textarea{font:inherit}.shell{max-width:860px;margin:0 auto;padding:32px 20px 80px}.card{background:white;border:1px solid #e2ded4;border-radius:14px;padding:22px;margin:16px 0;min-width:0;overflow:hidden}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid #171717;background:#171717;color:white;text-decoration:none;cursor:pointer}.btn.secondary{background:white;color:#171717}.stack{display:grid;grid-gap:14px;gap:14px;min-width:0}label{font-weight:600}input,select,textarea{width:100%;border:1px solid #cfc8ba;border-radius:10px;padding:12px;background:#fff}textarea{min-height:150px;resize:vertical}.muted{color:#6a655d}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.status{font-size:.92rem;color:#6a655d}.locked{opacity:.55}.media{width:100%;min-height:220px;border:1px dashed #bbb3a5;border-radius:12px;display:grid;place-items:center;background:#faf9f6}.piece-body{white-space:pre-wrap;line-height:1.6;overflow-wrap:anywhere}.piece-content{width:100%;min-width:0;overflow:hidden}.piece-content>.workbook-form{margin-top:18px}.video-frame{position:relative;width:100%;max-width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:12px;background:#000}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.direct-video{display:block;width:100%;max-width:100%;height:auto;max-height:75vh;border-radius:12px;background:#000;object-fit:contain}.workbook-form{gap:0}.workbook-field{display:grid;grid-gap:7px;gap:7px;margin-bottom:30px}.workbook-field:last-of-type{margin-bottom:14px}.workbook-help{margin:-2px 0 0;font-size:.92rem}.workbook-meta{margin:0;font-size:.86rem}.workbook-small{min-height:82px}.workbook-medium{min-height:150px}.workbook-large{min-height:260px}.rating-row{display:flex;flex-wrap:wrap;gap:7px}.rating-option{position:relative}.rating-option input{position:absolute;opacity:0;pointer-events:none}.rating-option span{width:38px;height:38px;display:grid;place-items:center;border:1px solid #cfc8ba;border-radius:8px;background:white;cursor:pointer}.rating-option input:checked+span{background:#171717;color:white;border-color:#171717}.rating-scale{display:flex;flex-wrap:wrap;gap:7px}.media-frame{width:100%;border:0;border-radius:12px;min-height:420px}audio{width:100%}.workbook-pieces{display:grid;grid-gap:54px;gap:54px;margin-top:24px}.workbook-piece{margin:0}.workbook-intro{white-space:pre-wrap;line-height:1.6;margin:10px 0 28px}.stage-card{padding:0;overflow:hidden}.stage-card.locked{padding:22px}.stage-details{width:100%}.stage-summary{list-style:none;cursor:pointer;padding:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.stage-summary::-webkit-details-marker{display:none}.stage-summary h3{margin-top:0}.stage-summary p:last-child{margin-bottom:0}.stage-toggle{font-size:1.2rem;transition:transform .15s ease}.stage-details:not([open]) .stage-toggle{transform:rotate(-90deg)}.piece-list{border-top:1px solid #ece8df;padding:8px 22px 14px}.piece-row{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 4px;border-bottom:1px solid #f0ede6;text-decoration:none}.piece-row:last-child{border-bottom:0}.piece-row[href]:hover{text-decoration:underline}.piece-mark{width:20px;flex:0 0 20px;text-align:center}.piece-completed{font-weight:600}.piece-available{color:#171717}.piece-locked{color:#aaa59d;cursor:default}.stage-actions{padding:0 22px 22px}.piece-navigation{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-top:16px}.navigation-action{justify-items:end}.admin-panel{margin:16px 0;border:1px solid #d6c9a8;border-radius:14px;background:#fffdf7}.admin-toggle{margin:12px}.admin-editor{padding:18px;border-top:1px solid #e5dcc4}.admin-badge{width:-moz-fit-content;width:fit-content;margin:0;padding:5px 9px;border-radius:999px;background:#eee7d5;font-size:.76rem;font-weight:700;letter-spacing:.04em}.admin-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.admin-grid-3{grid-template-columns:1fr 1fr 1fr}.admin-field{display:grid;grid-gap:12px;gap:12px;padding:16px;border:1px solid #e2ded4;border-radius:12px;background:white}.admin-field p{margin:0}.admin-check{display:flex;align-items:center;gap:9px;font-weight:500}.admin-check input{width:auto}.admin-body{min-height:120px}.admin-question{min-height:82px}.admin-mini{min-height:34px;padding:0 10px;font-size:.88rem}.admin-mini:disabled{opacity:.35;cursor:default}.admin-stage-tools{margin:0 22px 12px;padding:14px;border:1px solid #e5dcc4;border-radius:12px;background:#fffdf7}.admin-piece-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eee9de}.admin-piece-row:last-child{border-bottom:0}.integration-note{color:#8a7350;font-weight:500}.program-shell{max-width:1240px;margin:0 auto;padding:42px 32px 96px}.program-header{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;padding-bottom:28px;border-bottom:1px solid #d9d4ca}.program-brand h1{margin:4px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.55rem);font-weight:400;letter-spacing:-.035em;line-height:.98}.program-eyebrow,.program-section-label{margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700;color:#746f67}.program-user-nav{display:flex;align-items:center;gap:18px;font-size:.86rem;color:#57534d}.program-user-nav a{text-decoration:none;border-bottom:1px solid transparent}.program-user-nav a:hover{border-color:currentColor}.program-user-nav .btn{min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#57534d;font-size:.86rem}.program-resume{margin:44px 0 76px;padding:28px 0;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;border-bottom:1px solid #d9d4ca}.program-resume-meta{margin:24px 0 6px;color:#746f67;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.program-resume h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3vw,2.7rem);font-weight:400}.program-resume-link{display:inline-flex;align-items:center;gap:20px;padding:14px 0;text-decoration:none;font-weight:700;border-bottom:1px solid #171717}.program-resume-link span{font-size:1.25rem}.program-journey-intro{margin-bottom:54px}.program-journey-intro h2{margin:10px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3.4vw,3.1rem);font-weight:400}.program-block{margin:0 0 76px}.program-block-heading{display:grid;grid-template-columns:180px 1fr;align-items:baseline;grid-gap:28px;gap:28px;margin-bottom:24px;padding-top:18px;border-top:1px solid #bdb7ad}.program-block-heading h3{margin:0;font-size:.82rem;letter-spacing:.18em}.program-block-heading p{margin:0;max-width:620px;color:#6d6860;font-family:Georgia,Times New Roman,serif;font-size:1.08rem}.program-stage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:20px;gap:20px}.program-stage-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:490px}.program-stage-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:730px}.program-stage-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));max-width:980px}.program-stage{min-width:0}.program-stage-link{display:block;text-decoration:none}.program-stage-cover{aspect-ratio:4/5;padding:18px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#ded9cf,#b9b2a6);overflow:hidden;transition:transform .2s ease,filter .2s ease}.program-stage-cover span{font-family:Georgia,Times New Roman,serif;font-size:.7rem;letter-spacing:.18em}.program-stage-cover strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,1.5vw,1.35rem);font-weight:400;line-height:1.02;text-transform:uppercase}.program-stage-link[href]:hover .program-stage-cover{transform:translateY(-3px)}.program-stage-info{padding-top:13px}.program-stage-info>p{margin:0 0 4px;color:#817b72;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.program-stage-info h4{margin:0 0 9px;font-family:Georgia,Times New Roman,serif;font-size:1.02rem;font-weight:400;line-height:1.1}.program-stage-status{display:flex;gap:7px;align-items:center;font-size:.76rem;color:#716c64}.program-stage-status-completed{color:#3f5c49}.program-stage-status-current{color:#171717;font-weight:700}.program-stage-not-included .program-stage-cover{filter:grayscale(1);opacity:.38}.program-stage-pending .program-stage-cover,.program-stage-timed .program-stage-cover{opacity:.62}.program-admin-tools{margin-top:12px;padding-top:10px;border-top:1px dashed #cfc8ba;font-size:.78rem}.program-admin-tools>summary{cursor:pointer;color:#756e64}.program-admin-tools .admin-stage-tools{margin:10px 0 0;padding:12px}.program-admin-tools .admin-piece-row{align-items:flex-start;flex-direction:column}.program-admin-tools .row{gap:6px}.program-footer{margin-top:34px;padding:34px 0 0;border-top:1px solid #bdb7ad;display:grid;grid-template-columns:1fr auto;grid-gap:22px 40px;gap:22px 40px;color:#6d6860}.program-footer p:not(.program-section-label){margin:10px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1rem}.program-footer nav{display:flex;gap:24px;align-items:flex-start}.program-footer nav a{font-size:.82rem;text-decoration:none;border-bottom:1px solid #bdb7ad}.program-footer small{grid-column:1/-1;font-size:.7rem;color:#928c82}.piece-page-shell{position:relative;max-width:980px;margin:0 auto;padding:34px 60px 92px}.piece-page-header{display:flex;justify-content:space-between;align-items:center;padding:0 0 22px;border-bottom:1px solid #d9d4ca}.piece-back-link{font-size:.8rem;text-decoration:none;color:#625e57}.piece-back-link:hover{text-decoration:underline}.piece-page-position{display:none;font-size:.68rem;letter-spacing:.12em;color:#8b867e}.piece-reading-surface{max-width:820px;margin:48px auto 0;background:#fff;border:1px solid #e2ded4;padding:clamp(28px,5vw,58px);min-width:0;overflow:hidden}.piece-title-block{padding-bottom:30px;margin-bottom:34px;border-bottom:1px solid #e9e5dc}.piece-stage-meta{margin:0 0 16px;font-size:.68rem;font-weight:700;letter-spacing:.14em;color:#7a756d}.piece-title-block h1{max-width:680px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.15rem,5vw,4.15rem);font-weight:400;line-height:.98;letter-spacing:-.035em}.piece-duration{margin:17px 0 0;font-size:.76rem;color:#817b72}.piece-renderer-wrap{max-width:700px}.piece-renderer-wrap .piece-body,.piece-renderer-wrap .workbook-intro{font-family:Georgia,Times New Roman,serif;font-size:1.08rem;line-height:1.72;color:#292825}.piece-renderer-wrap label{font-size:.92rem}.piece-renderer-wrap input,.piece-renderer-wrap select,.piece-renderer-wrap textarea{border-radius:4px;border-color:#cfc9bd;background:#fcfbf8}.piece-renderer-wrap input:focus,.piece-renderer-wrap select:focus,.piece-renderer-wrap textarea:focus{outline:1px solid #171717;outline-offset:1px}.piece-navigation-premium{max-width:820px;margin:20px auto 0;padding-top:22px;border-top:1px solid #d9d4ca}.piece-navigation-premium .btn{border-radius:0;min-height:48px;padding:0 22px}.piece-navigation-premium .btn.secondary{background:transparent;border-color:#bdb7ad}.piece-admin-wrap{max-width:820px;margin:18px auto 0}.piece-progress-rail{position:fixed;right:max(22px,calc((100vw - 1120px)/2));top:50%;transform:translateY(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:12px}.piece-progress-count{font-size:.62rem;letter-spacing:.1em;color:#8b867e;white-space:nowrap}.piece-progress-marks{display:flex;flex-direction:column;align-items:center;gap:8px}.piece-progress-mark{display:block;width:20px;height:2px;background:#d3d0ca;border-radius:2px;transition:width .15s ease,background .15s ease}.piece-progress-mark.is-done{background:#8c8881}.piece-progress-mark.is-current{width:28px;height:3px;background:#171717}.piece-progress-mark[href]:hover{width:28px;background:#171717}@media(max-width:1100px){.piece-progress-rail{right:14px}}@media(max-width:900px){.program-stage-grid,.program-stage-grid-4{grid-template-columns:repeat(3,minmax(0,1fr))}.program-stage-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.piece-page-shell{padding-left:28px;padding-right:28px}.piece-progress-rail{position:static;transform:none;flex-direction:row;justify-content:flex-end;margin:18px 0 0}.piece-progress-count{display:none}.piece-progress-marks{flex-direction:row;gap:5px}.piece-progress-mark{width:12px}.piece-progress-mark.is-current,.piece-progress-mark[href]:hover{width:20px}.piece-page-position{display:block}}@media(max-width:640px){.piece-navigation{flex-direction:column}.piece-navigation .btn,.piece-navigation .navigation-action,.piece-navigation>div{width:100%}.navigation-action{justify-items:stretch}.admin-grid,.admin-grid-3{grid-template-columns:1fr}.media-frame{min-height:240px}.admin-piece-row{align-items:flex-start;flex-direction:column}.card{padding:18px}.workbook-pieces{gap:42px}.program-shell{padding:24px 18px 64px}.program-header{align-items:flex-start;flex-direction:column;gap:22px}.program-user-nav{width:100%;gap:14px;flex-wrap:wrap}.program-user-nav>span{width:100%}.program-resume{margin:34px 0 58px;align-items:flex-start;flex-direction:column}.program-block{margin-bottom:58px}.program-block-heading{grid-template-columns:1fr;gap:8px}.program-stage-grid,.program-stage-grid-2,.program-stage-grid-3,.program-stage-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:none}.program-stage-cover{padding:13px}.program-stage-cover strong{font-size:.96rem}.program-footer{grid-template-columns:1fr}.program-footer nav{flex-wrap:wrap}.program-footer small{grid-column:1}.piece-page-shell{padding:22px 16px 64px}.piece-reading-surface{margin-top:28px;padding:28px 20px}.piece-title-block{padding-bottom:24px;margin-bottom:26px}.piece-title-block h1{font-size:clamp(2rem,11vw,3rem)}.piece-renderer-wrap .piece-body,.piece-renderer-wrap .workbook-intro{font-size:1rem}.piece-navigation-premium{margin-top:14px}}.piece-back-link{font-size:.95rem;font-weight:500}.piece-stage-meta{font-size:.78rem;color:#45677a;letter-spacing:.15em}.piece-duration{font-size:.9rem;color:#567487}.piece-title-block{border-bottom-color:#c8d5dc}.piece-progress-count{color:#567487}.piece-progress-mark.is-done{background:#7893a2}.piece-progress-mark.is-current,.piece-progress-mark[href]:hover{background:#45677a}.piece-renderer-wrap input:focus,.piece-renderer-wrap select:focus,.piece-renderer-wrap textarea:focus{outline-color:#45677a}