/* Compact layout matched to Olga's supplied mobile reference. */
@font-face{font-family:Golos;src:url('fonts/golos.ttf?v=17bb58fb69aec2df') format('truetype');font-weight:400 900;font-display:optional}
:root{--navy:#202e3e;--paper:#f3f4f5;--ink:#293d4c}
html{scroll-behavior:auto}body{font-family:Golos,Arial,sans-serif;font-size:14px;line-height:1.55}
.header-inner{min-height:110px;padding:22px 40px 8px}.brand{font-size:24px;letter-spacing:.06em;line-height:1.2}.brand small{font-size:10px;letter-spacing:.12em;margin-top:7px}.brand .brand-program{font-size:14px;letter-spacing:.045em;margin-top:7px;color:white;font-weight:650}.brand-mark{display:none}.header-actions{gap:18px}.header-preview{border:0;background:transparent;color:#dae2e8;padding:4px;font-size:12px}.header-preview:hover{text-decoration:underline}
.program-nav{background:var(--navy);border:0}.nav-inner{max-width:1260px;gap:14px;padding:8px 40px 20px;overflow:visible}.nav-inner a{border:0;border-radius:22px;color:#d0d6dd;padding:9px 17px;font-size:14px;font-weight:400}.nav-inner a.active{border:0;background:#3d5873;color:white;box-shadow:none}.nav-inner a:hover{color:white;background:#304355}.nav-inner a.active:hover{background:#3d5873}
.shell{padding-top:22px}.owner-review-banner{padding:7px 11px;margin:0 0 15px;font-size:11px;gap:10px}.owner-review-banner form{flex-shrink:0}.owner-review-banner .button{padding:5px 9px;font-size:10px}.preview-note{margin:0 0 12px}
.program-cover{aspect-ratio:16/9;min-height:0;max-height:500px}.program-cover-copy{left:43%;right:3%;top:50%;transform:translateY(-50%);width:auto;padding:0;text-align:center}.cover-kicker{font-size:clamp(9px,1.2vw,14px);letter-spacing:.01em}.program-cover .program-cover-title{font-size:clamp(25px,4.5vw,58px);line-height:1.12;letter-spacing:-.01em;margin:20px 0 14px;overflow-wrap:normal;word-break:normal;white-space:nowrap}.program-cover-copy p{font-size:clamp(10px,1.2vw,15px);margin:0}.program-cover .cover-signature{margin-top:25px;font-size:clamp(11px,1.3vw,17px)}.cover-welcome .program-cover-title{font-size:clamp(24px,4.7vw,58px)}.cover-welcome .cover-kicker{font-size:clamp(9px,1.25vw,16px)}.cover-welcome .program-cover-copy p{font-family:Oswald,Arial,sans-serif;font-size:clamp(16px,2.8vw,36px);font-weight:600;color:white;line-height:1.2}.cover-welcome .cover-signature{display:none}
.compact-heading{margin:24px 0 16px}.compact-heading h2{font-size:23px;margin:0 0 6px;letter-spacing:-.025em}.compact-heading p{font-size:13px}.program-details{padding:3px 0 0}.program-details summary{font-size:11px;color:#687985}.program-details p{font-size:12px;margin:5px 0}.lesson-tabs{flex-wrap:wrap;gap:7px;overflow:visible;margin:0 0 18px}.lesson-tab{padding:8px 13px;min-height:40px;font-size:12px;border-radius:20px}.week-tabs{display:flex;gap:7px}.week-tabs .lesson-tab{justify-content:center;min-width:48px;padding:8px 13px}.lesson-layout{grid-template-columns:270px minmax(0,1fr);gap:22px}.instructions-layout{display:block}.instruction-cards,.material-stack{display:grid;gap:20px;min-width:0}.card.material-card{padding:22px;margin:0;min-width:0;scroll-margin-top:20px}.material-heading{display:flex;gap:10px;align-items:baseline;margin:0 0 15px}.material-heading h3{font-size:18px;line-height:1.35;font-weight:600;letter-spacing:-.025em;margin:0;overflow-wrap:normal;min-width:0}.card-edit{font-size:11px;white-space:nowrap;color:#698294;text-decoration:underline;text-underline-offset:3px;display:inline-block}.material-heading .card-edit{margin-left:auto}.material-card .player{border-radius:9px}.material-description{font-size:13px;line-height:1.6;margin-top:15px}.material-description:empty{display:none}.material-description p{margin:9px 0}.material-description h2,.material-description h3{font-size:16px;margin-top:12px}.material-description>div:empty,.material-description>p:empty{display:none}.material-description br+br+br{display:none}.material-description img{max-height:650px;object-fit:contain}.material-progress{display:flex;align-items:center;gap:8px;margin:16px 0 0;border-top:1px solid var(--line);padding:12px 0 0;font-size:12px}.progress-toggle{display:inline-flex;align-items:center;gap:9px;background:transparent;border:0;color:var(--ink);padding:5px 2px;font-size:13px}.progress-box{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid #a2b4ac;border-radius:5px;font-size:16px;color:#366954}.material-completed .progress-box{background:#e3f1e8;border-color:#6d9b7c}.preview-progress input{width:20px;height:20px;accent-color:#658e73}.preview-progress .muted{font-size:10px}.progress-status{font-size:11px;color:#9b533e}.day-plan{padding:21px;position:sticky;top:18px}.day-plan h2{font-size:18px;margin:0 0 12px}.day-plan li{border:0;padding:0;font-size:12px;line-height:1.5}.day-plan li a,.day-plan li a.current{padding:9px 0;border:0;border-radius:0;background:transparent;box-shadow:none;gap:10px;min-height:0}.day-plan li a.current{color:#1d4a65;font-weight:650}.day-plan .plan-number{font-size:10px}.day-plan .plan-arrow{font-size:13px}.day-plan .card-edit{margin-top:12px}.day-explanation{padding-top:12px;border-top:1px solid var(--line);margin-top:12px}.day-explanation summary{font-size:11px}.day-explanation .lesson-body{font-size:12px}.service-card,.introduction-card{padding:23px}.service-card .card-edit{float:right;margin-left:12px}.service-card h3{font-size:18px}.service-card p{font-size:13px}.service-card .lesson-body>h3:first-child{margin-top:0}.introduction-card .lesson-body{font-size:13px}.navigation-pending{opacity:.65}.navigation-status:not(.sr-only){margin:0;padding:12px;text-align:center;color:#814b36;background:#fff0df}.navigation-retry{margin-left:12px;border:1px solid currentColor;border-radius:12px;padding:3px 10px;background:white;color:inherit}
@media(max-width:700px){body{font-size:13px}.header-inner{min-height:99px;padding:20px 18px 8px;gap:6px}.brand{font-size:22px;letter-spacing:.05em}.brand .brand-program{font-size:12px;letter-spacing:.015em;margin-top:5px}.brand small{font-size:9px;margin-top:5px;letter-spacing:.06em}.header-actions{gap:8px}.header-link{font-size:10px}.header-preview{font-size:9px;max-width:65px;line-height:1.3}.profile-link .avatar{width:27px;height:27px;font-size:12px}.header-actions .profile-text{display:none}.nav-inner{padding:8px 12px 15px;gap:0;justify-content:space-between}.nav-inner a{font-size:clamp(10px,2.9vw,13px);padding:9px 8px;min-width:0;text-align:center;letter-spacing:-.025em}.shell{padding:17px 14px 35px}.owner-review-banner{margin-bottom:12px;font-size:9px;flex-wrap:nowrap}.owner-review-banner span{line-height:1.4}.preview-note{font-size:9px}.preview-note>span:last-child{display:none}.program-cover{aspect-ratio:16/9;border-radius:16px;max-height:none;min-height:0}.program-cover-copy{left:43%;right:3%}.program-cover .program-cover-title{font-size:clamp(19px,5.6vw,28px);line-height:1.1;margin:13px 0 9px}.program-cover .cover-kicker{font-size:clamp(6px,1.65vw,9px);line-height:1.4}.program-cover-copy p{font-size:clamp(7px,1.9vw,10px)}.program-cover .cover-signature{font-size:clamp(7px,2vw,11px);margin-top:15px}.cover-welcome .program-cover-title{font-size:clamp(23px,6.5vw,32px);margin:8px 0}.cover-welcome .program-cover-copy p{font-size:clamp(15px,4vw,20px)}.compact-heading{margin:19px 0 14px}.compact-heading h2{font-size:20px}.compact-heading p{font-size:12px}.lesson-tabs{gap:6px;margin-bottom:15px}.lesson-tab{font-size:11px;min-height:37px;padding:7px 12px}.week-tabs{order:2;width:100%;gap:5px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.week-tabs .lesson-tab{font-size:12px;padding:8px 0;min-width:0}.lesson-layout{display:block}.day-plan{position:static;padding:20px;margin:0 0 18px}.day-plan li a{padding:7px 0}.day-plan h2{font-size:17px;margin-bottom:9px}.day-plan .card-edit{margin-top:8px}.instruction-cards,.material-stack{gap:18px}.card.material-card{padding:18px;border-radius:16px;scroll-margin-top:15px}.material-heading{gap:6px;margin-bottom:13px}.material-heading h3{font-size:clamp(14px,3.75vw,17px);line-height:1.35;letter-spacing:-.035em}.material-heading .card-edit{font-size:9px}.material-description{font-size:12px;margin-top:12px}.material-progress{font-size:12px;margin-top:12px;padding-top:10px}.service-card,.introduction-card{padding:20px;border-radius:16px}.service-card h3{font-size:17px}.material-stack .player{aspect-ratio:16/9}.day-plan .plan-number{width:16px;flex-shrink:0}.mobile-dock{font-size:10px}.footer{font-size:10px}.auth-layout .brand{font-size:22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Explicitly supersede the former split-image cover geometry. */
.program-cover .program-cover-copy{position:absolute;inset:50% 3% auto 43%;margin:0;width:auto;padding:0;transform:translateY(-50%);overflow-wrap:normal}
.program-cover .program-cover-image{width:100%;height:100%;object-position:center;filter:none;transform:none}
.program-cover .program-cover-shade{background:none}
.program-cover .program-cover-copy>p{font-size:clamp(10px,1.2vw,15px)}
.program-cover.cover-welcome .program-cover-copy>p{font-family:Oswald,Arial,sans-serif;font-size:clamp(16px,2.8vw,36px);font-weight:600;line-height:1.2}
@media(max-width:700px){.header-inner{position:relative}.brand{flex-shrink:0}.brand-name{font-size:22px}.brand .brand-program{font-size:11px;white-space:nowrap}.header-actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end;max-width:100px}.header-actions .header-link{font-size:9px}.header-actions form{order:2;width:100%;text-align:right}.header-preview{max-width:none;font-size:9px}.program-cover .program-cover-copy{padding:0;margin:0;width:auto}.program-cover .program-cover-copy>p{font-size:clamp(7px,1.9vw,10px)}.program-cover.cover-welcome .program-cover-copy>p{font-size:clamp(14px,3.8vw,20px)}.program-cover .cover-kicker{font-size:clamp(6px,1.65vw,9px);letter-spacing:0;max-width:none}.program-cover .program-cover-title{font-size:clamp(19px,5.6vw,28px)}.program-cover.cover-welcome .program-cover-title{font-size:clamp(23px,6.5vw,32px)}}
.program-nav{padding-bottom:0}.nav-inner>a{min-height:0}.full-material-title{padding-top:10px}.full-material-title summary{font-size:10px;color:#6b7f8c}.full-material-title p{font-size:12px;margin:7px 0 0}.material-description:has(>div:empty){margin-top:0}
@media(max-width:700px){.header-inner{min-height:90px;padding-top:16px;padding-bottom:8px}.nav-inner{padding-bottom:13px}.nav-inner>a{font-size:clamp(10px,2.9vw,13px);padding:8px 7px;min-height:0}.material-heading h3{font-size:clamp(13px,3.6vw,16px)}.day-plan li>a{font-size:12px;min-height:0;padding:7px 0}.material-heading{align-items:center}.material-heading .card-edit{flex-shrink:0}}
.owner-review-banner{flex-direction:row;align-items:center}.owner-review-banner>span{flex:1;min-width:0}.owner-review-banner form{margin:0}.owner-review-banner .button{margin:0}
@media(min-width:701px){.program-cover{width:100%;aspect-ratio:3.1/1;max-height:none;min-height:0}.program-cover .program-cover-copy{left:43%;right:3%}}

/* Photo and copy occupy disjoint areas: text can never cover Olga's face. */
.program-cover.cover-separated{background:#1c2d3b}
.cover-separated .program-cover-photo{position:absolute;inset:0 auto 0 0;width:48%;overflow:hidden;background:#283b48}
.program-cover.cover-separated .program-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:none;transform:none}
.program-cover.cover-separated .program-cover-shade{display:none}
.program-cover.cover-separated .program-cover-copy{inset:50% 4% auto 53%;margin:0;padding:0;width:auto;text-align:left}
.program-cover.cover-separated .cover-kicker{display:block;font-size:clamp(10px,.9vw,13px);line-height:1.6;letter-spacing:.07em;color:#d5dfe6;max-width:none}
.program-cover.cover-separated .program-cover-title{font-size:clamp(38px,4.8vw,68px);line-height:1.12;letter-spacing:.005em;margin:20px 0 17px;color:#fff}
.program-cover.cover-separated .program-cover-copy>p{font-size:clamp(12px,1.05vw,16px);line-height:1.55;color:#eef3f6;margin:0;max-width:34em}
.program-cover.cover-separated .cover-signature{font-size:clamp(12px,1.1vw,17px);line-height:1.5;color:#dbd0be;margin-top:24px}
@media(max-width:700px){
 .program-cover.cover-separated{aspect-ratio:16/9}
 .cover-separated .program-cover-photo{width:46%}
 .program-cover.cover-separated .program-cover-copy{inset:50% 4% auto 51%}
 .program-cover.cover-separated .cover-kicker{font-size:clamp(6px,1.65vw,10px);letter-spacing:.02em;line-height:1.55}
 .program-cover.cover-separated .program-cover-title{font-size:clamp(24px,6.35vw,42px);line-height:1.15;margin:12px 0 10px}
 .program-cover.cover-separated .program-cover-copy>p{font-size:clamp(8px,2.1vw,13px);line-height:1.55}
 .program-cover.cover-separated .cover-signature{font-size:clamp(8px,2.2vw,13px);line-height:1.5;margin-top:13px}
}
.program-cover.cover-separated.cover-position-top .program-cover-image{object-position:50% 20%}
.program-cover.cover-separated.cover-position-bottom .program-cover-image{object-position:50% 80%}
.cover-kicker-short{display:none}
@media(max-width:700px){
 .cover-separated .cover-kicker-full{display:none}
 .cover-separated .cover-kicker-short{display:block}
 .program-cover.cover-separated .cover-kicker{font-size:clamp(8px,2.2vw,11px);line-height:1.45;letter-spacing:.01em}
 .program-cover.cover-separated .program-cover-title{font-size:clamp(25px,6.9vw,44px);margin:10px 0 9px}
 .program-cover.cover-separated .program-cover-copy>p{font-size:clamp(10px,2.8vw,15px);line-height:1.5}
 .program-cover.cover-separated .cover-signature{font-size:clamp(9px,2.5vw,13px);line-height:1.45;margin-top:12px}
}
