@font-face{font-family:Courier Prime;src:url(courier-prime-0.woff2) format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#ffffff;--ink:#08060d;--plum:#b19dd0;--purple:#b19dd0;--lilac:#b19dd0;--muted:#6b6375;--line:#e5e4e7;--white:#fff;--serif:Georgia,'Times New Roman',serif;--mono:'Courier Prime',monospace;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.08}h2{font-size:clamp(35px,3.5vw,49px)}h2 em{color:var(--purple);font-weight:400}h3{font-size:19px;line-height:1.35;letter-spacing:-.025em}p{color:var(--muted)}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b19dd0;outline-offset:6px}a.button:hover{transform:translateY(-2px);background:#1d4ed8;color:#fff}.shell{width:min(1248px,calc(100% - 112px));margin-inline:auto}.section{padding-block:100px}.eyebrow,.mono,.card-index,.plan-label{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;line-height:1.4}.eyebrow{color:var(--purple);margin-bottom:25px}.arrow{width:21px;height:21px;flex-shrink:0}.button{display:inline-flex;gap:25px;align-items:center;justify-content:center;min-height:55px;padding:13px 22px;background:var(--plum);color:#fff;border:1px solid var(--plum);border-radius:4px;font-size:14px;font-weight:600;transition:background .15s,transform .15s}.button.small{min-height:43px;padding:9px 16px;gap:18px;font-size:13px}.button.outline{background:transparent;color:var(--plum);border-color:#ddd}.underlink{display:inline-flex;align-items:center;gap:14px;border-bottom:1px solid #b19dd0;padding-bottom:4px;font-weight:600;font-size:14px;line-height:1.5}.underlink:hover{color:var(--purple);border-color:var(--purple)}.skip{position:fixed;top:10px;left:10px;background:var(--plum);color:#fff;padding:12px;z-index:10;transform:translateY(-150%)}.skip:focus{transform:none}.site-header{height:88px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fafafa;z-index:5}.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px;width:min(1376px,calc(100% - 80px));margin:auto}.brand{display:inline-flex;align-items:center;gap:9px;font-size:23px;font-weight:700;letter-spacing:-1px}.brand img{object-fit:contain}.brand-dot{color:var(--purple)}#navigation{display:flex;align-items:center;gap:26px;font-size:13px}#navigation a:hover,.footer-links a:hover{color:var(--purple)}.nav-actions{display:flex;gap:25px;align-items:center;font-size:13px}.menu-toggle,.mobile-login{display:none}.hero{padding-top:86px;padding-bottom:88px;display:grid;grid-template-columns:1.04fr 1fr;gap:60px;align-items:center}.hero .eyebrow{display:flex;align-items:center;gap:12px}.small-rule{height:1px;width:28px;background:var(--purple)}h1{font-size:clamp(56px,5.5vw,80px);line-height:1.04;letter-spacing:-.057em}h1 em{font-weight:400;color:var(--purple)}.hero-description{font-size:18px;line-height:1.65;max-width:470px;margin-top:27px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:31px}.actions .underlink{border:0;padding:0;font-size:13px;gap:12px}.micro{font-size:11px;margin-top:16px}.hero-art{position:relative;background:#b19dd0;min-height:448px;border-radius:50% 50% 7px 7px;padding:55px 23px 33px;isolation:isolate}.hero-art:before{content:'';position:absolute;inset:14px;border:1px solid #b19dd0;border-bottom:0;border-radius:50% 50% 0 0;z-index:-1}.orbit-label{font:12px var(--mono);text-align:center;color:#b19dd0;margin:1px 0 30px}.music-sheet{position:relative;transform:rotate(-3deg);background:var(--white);padding:25px 24px 18px;box-shadow:0 16px 35px #b19dd012;border:1px solid #b19dd0}.sheet-top{display:flex;justify-content:space-between;align-items:center;color:var(--purple);margin-bottom:18px}.sheet-top .mono{font-size:10px}.sheet-number{font:14px var(--serif);color:#b19dd0}.music-sheet h2{font-size:26px;letter-spacing:-.025em}.music-sheet>p{font-size:12px;margin-top:7px}.melody{width:100%;height:auto;color:var(--ink);display:block;margin-top:-20px;margin-bottom:-12px}.sheet-bottom{display:flex;gap:18px;border-top:1px solid #b19dd0;padding-top:11px;font:10px var(--mono);color:var(--muted)}.sheet-bottom span:before{content:'+';margin-right:5px;color:var(--purple)}.assignment-slip{position:relative;display:flex;align-items:center;gap:16px;margin:15px -8px 0 30px;padding:20px;background:var(--plum);color:#fff;transform:rotate(2deg);box-shadow:0 8px 25px #b19dd020}.check-mark{border:1px solid #b19dd0;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#b19dd0;font-size:20px;flex-shrink:0}.assignment-slip .mono{font-size:9px;color:#b19dd0;display:block;margin-bottom:5px}.assignment-slip strong{font-family:var(--serif);font-size:23px;font-weight:400;line-height:1.1;display:block}.assignment-slip p{font-size:10px;color:#b19dd0;margin-top:7px}.slip-arrow{margin-left:auto;font-size:25px;color:#b19dd0;align-self:flex-start;line-height:1}.illustration-note{font:9px var(--mono);text-align:center;color:#b19dd0;margin-top:22px}.trust{padding-top:22px;padding-bottom:33px;border-block:1px solid var(--line)}.trust-heading{display:flex;justify-content:space-between;align-items:center}.trust-heading p{font-size:11px;letter-spacing:.04em}.logo-window{overflow:hidden;margin-top:20px;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.logo-track{display:flex;width:max-content;animation:marquee 65s linear infinite}.logo-group{display:flex;align-items:center;gap:60px;padding-right:60px}.logo{width:150px;height:59px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo img{width:auto;height:auto;max-width:150px;max-height:49px;object-fit:contain;filter:grayscale(1);opacity:.7}.trust:hover .logo-track,.trust:focus-within .logo-track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}.workflow{display:grid;grid-template-columns:1fr 1fr;gap:110px}.section-intro>p:last-child{max-width:410px;margin-top:23px;font-size:16px;line-height:1.75}.workflow-list article{display:flex;gap:24px;padding:25px 0;border-top:1px solid var(--line)}.workflow-list article:first-child{padding-top:7px;border-top:0}.step{font:15px var(--mono);color:var(--purple);padding-top:3px}.workflow-list p{font-size:14px;margin-top:9px;line-height:1.7}.workflow-list>.underlink{margin:15px 0 0 44px}.faculty-feature{position:relative;background:#b19dd0;padding:45px 60px;overflow:hidden}.faculty-feature figure{position:relative;z-index:1;max-width:950px}.faculty-feature blockquote{font-family:var(--serif);font-size:clamp(24px,2.5vw,34px);letter-spacing:-.025em;line-height:1.4;margin:0 0 25px}.quote-ornament{position:absolute;right:20px;top:-30px;font:300px var(--serif);color:#b19dd0;line-height:1;z-index:0}figcaption{display:flex;align-items:center;gap:12px}figcaption img{width:44px;height:44px;border-radius:50%;object-fit:cover;filter:grayscale(1)}figcaption strong{font-size:12px;display:block;font-weight:600;line-height:1.6}figcaption span{display:block;color:var(--muted);font-size:11px}.section-heading{display:flex;gap:60px;align-items:flex-end;justify-content:space-between;margin-bottom:40px}.section-heading>p{max-width:285px;font-size:14px}.section-heading .eyebrow{margin-bottom:19px}.assignment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.assignment-card{border-top:1px solid #e5e4e7;padding:24px 0 0}.card-index{font-size:10px;color:var(--purple);display:block}.category-icon{width:70px;height:42px;margin:30px 0 20px;color:var(--purple)}.harmony-icon{display:flex;align-items:center;gap:10px;font:25px var(--serif);color:var(--purple);height:42px;margin:30px 0 27px;letter-spacing:-1px}.harmony-icon span{font:13px var(--serif);color:#b19dd0}.assignment-card h3{font-size:21px}.assignment-card p{font-size:14px;line-height:1.8;margin-top:13px;max-width:330px}.card-note{display:block;font-size:11px;color:var(--purple);margin-top:24px;padding-top:17px;border-top:1px solid var(--line)}.demo-band{background:var(--plum);color:var(--paper);padding-block:67px;position:relative;overflow:hidden}.demo-content{display:flex;justify-content:space-between;gap:60px;align-items:center}.demo-band .eyebrow{color:#b19dd0;margin-bottom:17px}.demo-band h2{font-size:clamp(40px,4vw,57px)}.demo-band h2 em{color:#b19dd0}.demo-band p:not(.eyebrow){color:#b19dd0;font-size:14px;margin-top:22px}.demo-action{text-align:center;min-width:275px}.button.light{background:#b19dd0;color:var(--plum);border-color:#b19dd0;min-width:255px}.demo-action p:not(.eyebrow){font-size:11px;margin-top:13px}.demo-signup{display:block;font-size:11px;margin-top:30px;color:#b19dd0}.lms{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:75px}.lms p:not(.eyebrow){font-size:15px;max-width:425px;line-height:1.75;margin-top:20px}.lms .underlink{margin-top:24px}.lms-logos{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.lms-logos>div{display:flex;align-items:center;gap:17px;min-height:96px;padding:18px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.lms-logos img{width:36px;height:36px;object-fit:contain}.lms-logos span{font-size:15px;font-weight:600}.faculty{padding-top:66px}.faculty .section-heading{margin-bottom:28px}.faculty .section-heading h2{font-size:34px}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.quote-grid figure{padding-top:25px;border-top:1px solid var(--line);display:flex;flex-direction:column}.quote-grid blockquote{font-family:var(--serif);font-size:23px;letter-spacing:-.015em;line-height:1.45;margin:0 0 24px}.quote-grid figcaption{margin-top:auto}.pricing{padding-top:90px}.pricing-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}.price-card{padding:27px;border:1px solid var(--line);background:#fff}.plan-label{font-size:11px;color:var(--purple);display:flex;align-items:center;justify-content:space-between;gap:8px}.price{font:57px var(--serif);letter-spacing:-.04em;color:var(--ink);margin-top:25px;line-height:1.3}.price span{font:12px var(--sans);letter-spacing:0;color:var(--muted)}.plan-description{font-size:12px;margin-top:12px}.price-card .button{margin-top:28px;width:100%;justify-content:space-between;font-size:13px;min-height:48px}.price-card.featured{background:#b19dd0;border-color:#b19dd0}.badge{font-size:8px;font-family:var(--sans);letter-spacing:0;text-transform:none;color:var(--plum);padding:3px 7px;background:#b19dd0;white-space:nowrap}.department-card{padding:27px 0 25px 17px}.department-card h3{font-family:var(--serif);font-weight:400;font-size:30px;margin-top:28px}.department-card>p:not(.plan-label){font-size:13px;margin-top:12px;line-height:1.8}.department-card .underlink{margin-top:23px;font-size:12px}.pricing-note{font-size:10px;margin-top:20px}.site-footer{border-top:1px solid var(--line);background:#fafafa;padding:43px 0 25px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-main p{font-size:12px;margin-top:8px}.footer-links{display:flex;gap:30px;font-size:12px}.footer-bottom{border-top:1px solid #b19dd0;display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:36px;padding-top:22px;color:var(--muted)}.footer-bottom small{font-size:10px}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:20px;font-size:10px}
@media(min-width:1500px){.hero{padding-block:102px}.hero-art{min-height:490px;padding-top:65px}.music-sheet{padding:30px}.assignment-slip{padding:25px}.orbit-label{margin-bottom:40px}}
@media(max-width:1190px){.shell{width:calc(100% - 72px)}.nav-shell{width:calc(100% - 48px);gap:20px}#navigation{gap:17px;font-size:12px}.nav-actions{gap:17px}.brand{font-size:21px}.hero{gap:36px;padding-block:65px}h1{font-size:61px}.hero-description{font-size:16px}.hero-art{padding-inline:18px;min-height:420px}.music-sheet{padding:22px 20px 17px}.music-sheet h2{font-size:23px}.assignment-slip{margin-left:15px;margin-right:-3px}.assignment-slip strong{font-size:21px}.actions{gap:20px}.actions .underlink{font-size:12px}.micro{font-size:10px}.workflow{gap:65px}.section{padding-block:75px}.lms{gap:45px}.lms-logos>div{padding:15px;gap:10px}.lms-logos span{font-size:13px}.badge{font-size:7px}.price-card{padding:22px}.department-card{padding-left:8px}.plan-label{font-size:10px}.quote-grid{gap:45px}}
@media(max-width:970px){#navigation{display:none;position:absolute;top:75px;left:0;right:0;padding:24px 36px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 20px #b19dd010;flex-direction:column;align-items:flex-start;font-size:16px}#navigation.is-open{display:flex}.site-header{height:75px}.nav-actions{margin-left:auto}.menu-toggle{display:flex;width:40px;height:40px;border:1px solid var(--line);background:transparent;flex-direction:column;gap:6px;align-items:center;justify-content:center;border-radius:4px}.menu-toggle span{width:17px;height:1px;background:var(--ink)}.hero{grid-template-columns:1fr .95fr;gap:30px}h1{font-size:52px}.hero .eyebrow{font-size:10px}.hero-description{font-size:15px}.hero-art{min-height:380px;padding-top:40px}.orbit-label{font-size:10px;margin-bottom:25px}.music-sheet h2{font-size:20px}.music-sheet{padding:18px 16px 14px}.assignment-slip{padding:15px;gap:12px}.assignment-slip strong{font-size:18px}.assignment-slip p{font-size:9px}.check-mark{width:28px;height:28px}.illustration-note{font-size:8px}.hero .button{font-size:12px;gap:16px;padding-inline:16px;min-height:48px}.hero .actions{gap:16px}.hero .micro{font-size:9px}.workflow{gap:45px}.workflow h2{font-size:37px}.workflow-list h3{font-size:17px}.lms{grid-template-columns:1fr;gap:30px}.lms-logos{max-width:650px;grid-template-columns:repeat(4,1fr)}.lms-logos>div{flex-direction:column;gap:12px}.pricing-grid{grid-template-columns:1fr 1fr}.department-card{grid-column:1/-1;padding:20px 0 0}.department-card h3{margin-top:15px}.department-card>p:not(.plan-label){max-width:500px}.department-card .underlink{margin-top:15px}.faculty-feature{padding:35px 40px}.section-heading{gap:30px}.assignment-card h3{font-size:19px}.assignment-card p{font-size:13px}.card-note{font-size:10px}.demo-content{gap:30px}.demo-action{min-width:240px}.demo-band h2{font-size:42px}.demo-action .button{min-width:230px;font-size:13px}}
@media(max-width:720px){html{scroll-padding-top:88px}.shell{width:calc(100% - 40px)}.nav-shell{width:calc(100% - 32px);gap:12px}.brand{font-size:20px;gap:7px}.brand img{width:28px;height:28px}.nav-actions .login{display:none}.nav-actions .button{font-size:11px;padding:8px 12px;min-height:38px;gap:10px}.nav-actions .arrow{width:16px}.mobile-login{display:block}.site-header{height:68px}#navigation{top:68px;padding:24px}.hero{grid-template-columns:1fr;gap:40px;padding-top:44px;padding-bottom:40px}.hero .eyebrow{font-size:11px;margin-bottom:25px}h1{font-size:clamp(49px,9.6vw,67px)}.hero-description{font-size:16px;max-width:460px;margin-top:24px}.hero .actions{gap:24px;margin-top:26px}.hero .button{font-size:13px;min-height:51px;padding-inline:19px}.hero .micro{font-size:10px}.hero-art{width:min(450px,100%);justify-self:center;padding:37px 22px 25px;min-height:0}.orbit-label{font-size:10px;margin-bottom:27px}.music-sheet{padding:22px 20px 14px}.music-sheet h2{font-size:23px}.assignment-slip{margin-left:20px;padding:19px}.assignment-slip strong{font-size:21px}.assignment-slip p{font-size:10px}.illustration-note{font-size:8px;margin-top:20px}.trust{padding:14px 0 24px}.logo-group{gap:35px;padding-right:35px}.logo{width:120px;height:50px}.logo img{max-width:120px;max-height:40px}.logo-window{margin-top:13px}.section{padding-block:55px}.workflow{grid-template-columns:1fr;gap:35px}.workflow h2{font-size:39px}.workflow .eyebrow{margin-bottom:20px}.section-intro>p:last-child{font-size:15px;margin-top:20px;max-width:100%}.workflow-list article{padding:23px 0;gap:18px}.workflow-list h3{font-size:18px}.workflow-list>.underlink{margin-left:38px;margin-top:9px}.faculty-feature{padding:30px 25px}.faculty-feature blockquote{font-size:25px;line-height:1.4}.quote-ornament{font-size:230px;right:-10px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:37px}.section-heading>p{margin-top:18px;max-width:380px;font-size:14px}.assignment-grid{grid-template-columns:1fr;gap:30px}.assignment-card{position:relative;padding-left:0;padding-top:22px}.category-icon{float:right;margin:0;width:55px;height:34px}.card-index{margin-bottom:20px;font-size:10px}.assignment-card h3{font-size:23px}.assignment-card p{font-size:14px;max-width:100%;margin-top:12px;line-height:1.75}.harmony-icon{float:right;margin:0;font-size:20px;height:34px;gap:5px}.card-note{margin-top:16px;padding-top:12px;font-size:11px}.demo-band{padding-block:45px}.demo-content{display:block}.demo-band h2{font-size:42px}.demo-band p:not(.eyebrow){font-size:14px;margin-top:20px}.demo-band br{display:none}.demo-band h2 br{display:block}.demo-action{margin-top:27px;text-align:left}.demo-action p:not(.eyebrow){margin:12px 0 0;font-size:11px}.demo-signup{margin-top:22px;font-size:11px}.lms h2{font-size:36px}.lms p:not(.eyebrow){font-size:14px;margin-top:17px}.lms-logos{grid-template-columns:1fr 1fr}.lms-logos>div{flex-direction:row;min-height:80px;padding:18px;gap:14px}.faculty{padding-top:45px}.faculty .section-heading h2{font-size:33px}.faculty .section-heading>p{margin-top:10px;font-size:12px}.quote-grid{grid-template-columns:1fr;gap:30px}.quote-grid blockquote{font-size:23px}.pricing-grid{grid-template-columns:1fr;gap:18px}.price-card{padding:25px}.price-card .plan-label{font-size:12px}.price-card .badge{font-size:9px}.price{margin-top:18px}.price-card .button{margin-top:20px}.department-card{grid-column:auto;padding:18px 0 0}.pricing-note{font-size:10px}.footer-main{display:block}.footer-links{margin-top:25px;gap:23px;flex-wrap:wrap;font-size:11px}.footer-bottom{display:block;margin-top:25px;padding-top:18px}.footer-bottom>div{margin-top:17px;gap:15px}.site-footer{padding-top:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.logo-track{animation:none}.logo-window{overflow-x:auto;mask-image:none}.logo-group[aria-hidden=true]{display:none}.motion-toggle{display:none}.button{transition:none}}


/* Three-step, video-led workflow — replaces the earlier text-only columns. */
.workflow{display:block}
.workflow-intro{display:flex;justify-content:space-between;align-items:end;gap:58px;margin-bottom:47px}
.workflow-intro .eyebrow{margin-bottom:18px}
.workflow-intro>p{max-width:365px;font-size:15px;line-height:1.75;padding-bottom:5px}
.workflow-steps{border-top:1px solid var(--line)}
.workflow-step{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.45fr);gap:55px;align-items:center;padding:36px 0;border-bottom:1px solid var(--line)}
.workflow-step-copy{align-self:center;padding:6px 0 10px}
.step-number{display:block;font:20px var(--mono);letter-spacing:-.025em;color:var(--purple);margin-bottom:25px}
.step-number span{font:10px var(--mono);color:var(--muted);letter-spacing:.08em;vertical-align:middle;margin-left:9px}
.workflow-step-copy h3{max-width:350px;font:400 clamp(26px,2.65vw,36px)/1.17 var(--serif);letter-spacing:-.035em}
.workflow-step-copy p{max-width:320px;font-size:15px;line-height:1.8;margin-top:17px}
.step-video-frame{min-width:0;margin:0;padding:0;border:0;background:transparent;box-shadow:0 18px 44px -18px #00000026,0 3px 10px #0000000a;overflow:hidden;border-radius:10px}
.video-frame-bar{display:none}
.video-frame-name,.video-frame-label{font:10px var(--mono);letter-spacing:.035em}
.video-frame-name{display:inline-flex;gap:8px;align-items:center}
.video-rec-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#b19dd0}
.video-frame-label{font-size:9px;color:#b19dd0}
.video-stage{aspect-ratio:16/9;position:relative;overflow:hidden;border:0;padding:0;border-radius:10px;background:#f4f4f4;box-shadow:none}
.video-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;background:radial-gradient(circle at 50% 30%,#fafafa,#e5e4e7 90%);color:#6b6375}
.video-placeholder:before{content:'';position:absolute;inset:17px;border:1px dashed #b19dd0;border-radius:3px;pointer-events:none}
.placeholder-icon{display:grid;place-items:center;margin-bottom:16px;color:#6b7280}
.video-placeholder strong{font:400 clamp(18px,2vw,25px)/1.2 var(--serif);letter-spacing:-.025em;color:#374151}
.video-placeholder small{font:10px var(--mono);letter-spacing:.015em;color:#6b7280;margin-top:12px}
.step-video{display:none;width:calc(100% + 4px);max-width:none;height:100%;object-fit:cover;object-position:center;background:transparent;pointer-events:none}
.step-video-frame.is-ready .step-video{display:block;position:absolute;inset:0 -2px}
.step-video-frame.is-ready .video-placeholder{display:none}
.workflow-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:32px}
.workflow-footer>span{font:11px var(--mono);letter-spacing:.07em;color:var(--purple)}
.workflow-footer .underlink{margin:0}
@media(max-width:970px){.workflow-intro{gap:30px}.workflow-intro>p{max-width:300px}.workflow-step{grid-template-columns:minmax(200px,.8fr) minmax(0,1.25fr);gap:28px;padding-block:30px}.workflow-step-copy h3{font-size:29px}.workflow-step-copy p{font-size:14px}.step-number{margin-bottom:18px}}
@media(max-width:720px){.workflow-intro{display:block;margin-bottom:32px}.workflow-intro>p{max-width:580px;padding:0;margin-top:17px;font-size:15px}.workflow-step{grid-template-columns:1fr;gap:24px;padding:30px 0 34px}.workflow-step-copy{padding:0}.step-number{margin-bottom:13px;font-size:17px}.workflow-step-copy h3{font-size:29px}.workflow-step-copy p{margin-top:10px;max-width:530px;font-size:14px}.video-frame-bar{height:33px;padding-inline:12px}.video-frame-name{font-size:9px}.video-frame-label{font-size:8px}.video-placeholder:before{inset:11px}.placeholder-icon{margin-bottom:9px}.placeholder-icon svg{width:29px;height:29px}.video-placeholder strong{font-size:19px}.video-placeholder small{margin-top:7px;font-size:9px}.workflow-footer{align-items:flex-start;gap:15px;padding-top:25px}.workflow-footer>span{font-size:10px}}

/* Match the live Eartrainer wordmark and simplify the institution strip. */
.brand{font-family:'Courier Prime',sans-serif;font-size:20px;font-weight:400;letter-spacing:0;color:#17171a;gap:9px;white-space:nowrap}
.brand img{width:32px;height:32px;object-fit:contain}
.trust{padding-block:25px 34px}
.logo-window{width:min(1320px,100%);margin:25px auto 0}
.logo-track{animation-duration:150s}
.logo-group{gap:44px;padding-right:44px}
.logo{width:220px;height:88px}
.logo img{max-width:220px;max-height:76px;filter:grayscale(1);opacity:1}
.workflow-footer{justify-content:flex-end}
@media(max-width:720px){.brand{font-size:20px;gap:7px}.brand img{width:28px;height:28px}.logo-window{margin-top:20px}.logo-group{gap:36px;padding-right:36px}.logo{width:175px;height:76px}.logo img{max-width:175px;max-height:65px}.trust{padding-block:20px 27px}}
@media(prefers-reduced-motion:reduce){.logo-track{animation:none}}

/* Faculty testimonials */
.faculty .quote-grid {
  align-items: stretch;
}
.faculty .quote-grid > figure {
  position: relative;
  isolation: isolate;
  margin: 0;
  padding: 76px 36px 34px;
  border: 0;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 16px 44px -20px rgba(0, 0, 0, .22), 0 2px 8px rgba(0, 0, 0, .035);
}
.faculty .quote-grid > figure::before {
  content: '\201C';
  position: absolute;
  top: 17px;
  left: 32px;
  font: 84px/1 var(--serif);
  color: #b19dd0;
  pointer-events: none;
}
.faculty .quote-grid blockquote {
  margin: 0 0 32px;
  font: 400 clamp(24px, 2.3vw, 29px)/1.48 var(--serif);
  letter-spacing: -.02em;
  color: #08060d;
}
.faculty .quote-grid figcaption {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-top: 24px;
  border-top: 1px solid #ededed;
}
.faculty .quote-grid figcaption img {
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: cover;
}
.faculty .quote-grid figcaption strong {
  display: block;
  font-size: 15px;
  color: #08060d;
}
.faculty .quote-grid figcaption span {
  display: block;
  margin-top: 5px;
  font-size: 13px;
  line-height: 1.5;
  color: #6b6375;
}
@media (max-width: 720px) {
  .faculty .quote-grid > figure { padding: 68px 24px 26px; }
  .faculty .quote-grid > figure::before { top: 14px; left: 21px; font-size: 76px; }
  .faculty .quote-grid blockquote { font-size: 24px; margin-bottom: 26px; }
}

/* Shared app palette and toolbar treatment. Keep nav and hero edges aligned. */
:root{--wide-shell:min(1760px,calc(100% - 64px));--sans:system-ui,'Segoe UI',Roboto,sans-serif}
.nav-shell{width:var(--wide-shell)}
.site-header{height:72px;background:#fafafa;border-bottom-color:#ddd}
.brand{font-family:'Courier New',monospace;font-size:20px;font-weight:600;letter-spacing:1px;color:#17171a;gap:10px}
.brand img{width:auto;height:30px;max-width:none}
.button{background:#2563eb;border-color:#2563eb;border-radius:6px}
a.button:hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff}
.button.outline{background:#fff;border-color:#ddd;color:#374151}
a.button.outline:hover{background:#f3f4f6;border-color:#d1d5db;color:#111827}
.button.light{background:#fff;border-color:#fff;color:#b19dd0}
a.button.light:hover{background:#b19dd0;border-color:#b19dd0;color:#b19dd0}
.faculty-feature,.price-card.featured{background:#b19dd0}
.site-footer{background:#fafafa}
.footer-bottom{border-color:var(--line)}
.video-frame-bar{background:#fafafa;border-color:#e5e4e7;color:#374151}
.video-placeholder{background:#f7f8fa}
.demo-band{background:#2563eb;color:#fff}
.demo-band p:not(.eyebrow){color:#eff6ff}
#navigation a:hover,.footer-links a:hover{color:#b19dd0}
@media(max-width:970px){#navigation{top:72px;background:#fafafa}}
@media(max-width:760px){:root{--wide-shell:calc(100% - 40px)}}
@media(max-width:720px){.site-header{height:68px}#navigation{top:68px}.nav-shell{gap:12px}.brand img{width:auto;height:30px}.brand{gap:8px}.nav-actions{gap:12px}}

/* Company social link beside the footer wordmark. */
.footer-brand{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.footer-social{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:6px;color:#6b7280;background:#fff;flex-shrink:0}
.footer-social:hover{color:#0a66c2;border-color:#0a66c2;background:#f0f7ff}
.footer-social svg{display:block}

/* Match the demo section to the primary app button. */
.demo-band .button.light{background:#fff;border-color:#fff;color:#2563eb}
.demo-band a.button.light:hover{background:#eff6ff;border-color:#eff6ff;color:#1d4ed8}

/* Student pricing: paired plans with a separate course inquiry row. */
#pricing .pricing-heading{max-width:960px;margin:0 auto 36px;text-align:center;display:block}
#pricing .pricing-heading p{margin-top:16px;font-size:16px;line-height:1.6}
#pricing .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:960px;margin-inline:auto;align-items:stretch;gap:24px}
#pricing .price-card{display:flex;flex-direction:column;min-width:0;padding:32px;border:1px solid #e5e4e7;border-radius:14px;background:#fff;box-shadow:0 2px 6px rgb(0 0 0 / 3%)}
#pricing .price-card.featured{background:#f5f8ff;border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}
#pricing .plan-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px;flex-wrap:wrap}
#pricing .plan-heading h3{font-family:var(--sans);font-size:19px;line-height:1.4;font-weight:600;letter-spacing:-.02em;color:#08060d}
#pricing .pricing-saving{display:inline-flex;padding:5px 10px;border-radius:20px;background:#dbeafe;color:#1d4ed8;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap}
#pricing .price{font-family:var(--sans);font-size:64px;line-height:1.15;font-weight:600;letter-spacing:-.055em;color:#08060d;margin-top:28px}
#pricing .price span{font:400 14px/1.5 var(--sans);letter-spacing:0;color:#6b6375;white-space:nowrap}
#pricing .plan-description{font-size:16px;line-height:1.6;margin-top:16px;color:#374151}
#pricing .plan-comparison{font-size:14px;line-height:1.6;margin-top:6px;margin-bottom:28px;color:#6b6375}
#pricing .price-card .button{width:100%;min-height:48px;margin-top:auto;justify-content:space-between;font-size:14px}
#pricing .pricing-savings-note{max-width:960px;margin:16px auto 0;font-size:12px;line-height:1.6;color:#6b6375;text-align:right}
#pricing .pricing-teacher{max-width:960px;margin:32px auto 0;padding-top:28px;border-top:1px solid #e5e4e7;display:flex;align-items:center;justify-content:space-between;gap:28px}
#pricing .pricing-teacher h3{font:600 17px/1.4 var(--sans);letter-spacing:-.02em;color:#08060d}
#pricing .pricing-teacher p{font-size:14px;line-height:1.7;max-width:440px;margin-top:8px}
#pricing .pricing-teacher-actions{display:flex;align-items:center;gap:24px;flex-shrink:0;flex-wrap:wrap}
#pricing .pricing-teacher-actions .underlink{font-size:13px;gap:10px;white-space:nowrap}
#pricing .pricing-teacher-actions .arrow{width:18px;height:18px}
@media(max-width:970px){#pricing .pricing-teacher{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:720px){#pricing .pricing-heading{text-align:left;margin-bottom:28px}#pricing .pricing-heading h2{font-size:37px}#pricing .pricing-grid{grid-template-columns:1fr;gap:20px}#pricing .price-card{padding:26px}#pricing .price{font-size:56px;margin-top:24px}#pricing .pricing-savings-note{text-align:left}#pricing .pricing-teacher{margin-top:28px;padding-top:24px}#pricing .pricing-teacher-actions{gap:24px}}

/* Primary buttons use the purple sampled from the Eartrainer logo. */
:root{--button-primary:#b19dd0;--button-primary-hover:#b19dd0}
.button:not(.outline):not(.light){background:var(--button-primary);border-color:var(--button-primary);color:#fff}
a.button:not(.outline):not(.light):hover{background:var(--button-primary-hover);border-color:var(--button-primary-hover);color:#fff}

/* One brand purple for accents and links; white primary button labels. */
:root{--purple:#b19dd0;--plum:#b19dd0;--button-primary:#b19dd0;--button-primary-hover:#b19dd0}
.hero .actions .underlink:hover{color:var(--purple);border-color:var(--purple)}
h2 em{color:var(--purple)}
.button:not(.outline):not(.light),a.button:not(.outline):not(.light):hover{color:#fff}
#pricing .price-card.featured{background:#fafafa;border-color:var(--purple);box-shadow:0 0 0 1px var(--purple)}
#pricing .pricing-saving{background:#f4f4f4;color:var(--purple)}

/* Restore the soft testimonial background. */
.faculty-feature{background:#faf7ff}
.faculty-feature .quote-ornament{color:#e9d5ff}

/* Demo section matches the logo purple. */
.demo-band{background:#b19dd0}
.demo-band .button.light{color:#b19dd0}
.demo-band a.button.light:hover{background:#faf7ff;border-color:#faf7ff;color:#b19dd0}

/* Demo button label matches the Eartrainer wordmark. */
.demo-band .button.light,.demo-band a.button.light:hover{color:#17171a}
