/* Talenta Pros — accounts, checkout and secure video */
.tp-modal-back{position:fixed;inset:0;background:rgba(7,13,30,.55);z-index:80;display:grid;place-items:center;padding:16px;overflow-y:auto}
.tp-modal{background:var(--surface);color:var(--ink);border-radius:18px;box-shadow:0 30px 80px -20px rgba(0,0,0,.5);width:100%;max-width:420px;max-height:calc(100dvh - 32px);overflow-y:auto;padding:28px;position:relative}
.tp-modal h3{font:800 var(--type-ui-title)/1.2 var(--display);margin:0 0 6px}
.tp-modal p{color:var(--muted);font-size:var(--type-small);margin:0 0 16px}
.tp-modal--verification{border-radius:20px}
.tp-modal--verification h3{font-size:24px}
.tp-modal--verification p{line-height:1.65}
.tp-modal--verification #tp-resend{min-height:46px;border-radius:10px}
.tp-modal--verification #tp-back-login{text-underline-offset:2px}
.tp-modal label{display:block;font:600 var(--type-caption) var(--body);margin:0 0 6px}
.tp-modal input,.tp-modal select{width:100%;font:500 16px var(--body);padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);margin-bottom:14px}
.tp-modal select{min-height:46px}
.tp-modal input.code{letter-spacing:.4em;text-align:center;font-weight:700}
.tp-modal .btn{width:100%;justify-content:center}
.tp-modal .btn[disabled]{opacity:.6;cursor:wait}
.tp-x{position:absolute;top:14px;right:14px;background:none;border:none;font-size:22px;line-height:1;color:var(--muted);cursor:pointer;padding:6px;border-radius:8px}
.tp-x:hover{background:var(--surface-2)}
.tp-err{color:var(--bad);font-size:var(--type-small);margin:-6px 0 12px;min-height:1em}
.tp-link{background:none;border:none;color:var(--navy);font:600 var(--type-small) var(--body);text-decoration:underline;cursor:pointer;padding:0;margin-top:12px}
.tp-auth-help{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 14px;margin:12px 0 0}
.tp-auth-help-link,.tp-auth-switch{appearance:none;border:0;background:none;color:var(--navy);font:600 14px/1.4 var(--body);cursor:pointer;padding:5px 0;text-align:left;text-decoration:none}
.tp-auth-help-link{color:var(--muted);font-size:13px}
.tp-auth-help-link:hover,.tp-auth-switch:hover{text-decoration:underline}
.tp-auth-help-link:focus-visible,.tp-auth-switch:focus-visible{outline:2px solid var(--navy);outline-offset:3px;border-radius:3px}
.tp-auth-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px 6px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;line-height:1.45}
.tp-auth-switch{font-weight:700}
.tp-admin-link{display:block;color:var(--navy);font:700 var(--type-small) var(--body);margin:14px 0 0;text-decoration:underline}
.tp-acct{display:flex;flex-direction:column;gap:10px;margin:8px 0 18px}
.tp-acct div{display:flex;justify-content:space-between;gap:12px;font-size:var(--type-small);border-bottom:1px solid var(--line);padding-bottom:8px}
.tp-acct span{color:var(--muted)}
.tp-row{display:flex;gap:10px}
.tp-row .btn{flex:1}
.video.live{display:block;background:#0B1430;position:relative}
.video.live iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video.live .tp-local-video{position:absolute;inset:0;width:100%;height:100%;display:block;background:#050A19}
.v-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px;color:#E9ECF5}
.v-state b{font:700 var(--type-card-title) var(--display)}
.v-state span{color:#B7C0D8;font-size:var(--type-small);max-width:420px}
.v-state .tp-row{max-width:360px;width:100%}
.v-lang{position:absolute;top:10px;right:10px;z-index:2;font:600 var(--type-small) var(--body);padding:6px 8px;border-radius:8px;border:none;background:rgba(5,10,25,.8);color:#fff}
.spin{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:var(--gold);animation:tpspin 1s linear infinite}
@keyframes tpspin{to{transform:rotate(360deg)}}
.tp-row .btn{padding:12px 14px;white-space:nowrap}
.tp-interests{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 15px}
.tp-interests legend{font:700 var(--type-caption) var(--body);padding:0 5px}
.tp-interests-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tp-modal .tp-interest{display:flex;align-items:center;gap:7px;margin:0;cursor:pointer}
.tp-modal .tp-interest input{width:auto;margin:0;accent-color:#6541b0}
.tp-personal-plan{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,32px);margin:0 0 24px}
.tp-personal-plan[hidden]{display:none}
.tp-personal-plan h3{margin:0 0 8px}
.tp-personal-plan p{color:var(--muted)}
.tp-personal-plan ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;padding:0;margin:18px 0;list-style:none;counter-reset:learning-step}
.tp-personal-plan li{counter-increment:learning-step;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface-2)}
.tp-personal-plan li:before{content:counter(learning-step,decimal-leading-zero);display:block;color:var(--wf-purple);font-weight:700;margin-bottom:5px}
.tp-personal-plan li b{display:block}
.tp-personal-plan li p{font-size:var(--type-small);margin-top:5px}
.tp-plan-step-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.tp-plan-progress{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.tp-plan-status{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:3px 8px;color:var(--muted);font-size:var(--type-caption);font-weight:700;line-height:1.3}
.tp-plan-status[data-status="in_progress"]{color:var(--wf-purple);border-color:var(--wf-purple)}
.tp-plan-status[data-status="complete"]{color:var(--wf-green);border-color:var(--wf-green)}
.tp-plan-progress small{color:var(--muted);font-size:var(--type-caption)}
.tp-account-interests{margin-top:18px}
.tp-account-interests .btn{width:100%;white-space:normal}
.tp-account-interest-status{min-height:1.4em;color:var(--muted);font-size:var(--type-small);margin:0 0 10px}
.tp-phone-box{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.tp-phone-box h4{font:700 var(--type-card-title) var(--display);margin:0 0 8px}
.tp-phone-box p{line-height:1.5}

/* WhiteFlow homepage. Keep the existing course, portal, checkout and account controls. */
body{margin:0;background:#fff}
body:not(.sb-lock){--wf-ink:#281350;--wf-plum:#281350;--wf-paper:#fff;--wf-yellow:#ffd967;--wf-orange:#ed8a32;--wf-blue:#3d68d8;--wf-purple:#7650cf;--wf-green:#4c9d62;--wf-teal:#2da9a4;--wf-red:#d85d56;--wf-line:#e8e4ed;--wf-muted:#69616f;--wf-section-ink:#281350;--wf-section-muted:#69616f;--wf-section-link:#281350}
body > .tiles{display:none}
.nav,.mbar{background:rgba(255,255,255,.97);border-color:var(--wf-line);box-shadow:none;backdrop-filter:blur(14px)}
.nav .wrap{max-width:1280px;padding-block:17px;padding-inline:32px}
.nav .logo img{content:url("talenta-pros-logo-horizontal.svg");height:48px}
.nav-links{gap:26px;font-family:var(--body);font-size:var(--type-small)}
.nav-links a,.nav-trigger{color:var(--wf-plum)}
.nav-links a:hover,.nav-trigger:hover,.nav-trigger:focus-visible{color:var(--wf-purple)}
.nav .tools{border-color:var(--wf-line)}
.nav .tool{color:var(--wf-plum);border-color:var(--wf-line)}
.nav .tool:hover{background:#f6eee5;border-color:#cdb8cd}
.nav .btn-login{border-color:var(--wf-line);color:var(--wf-plum)!important}
.nav .btn-login:hover{border-color:var(--wf-plum);background:#f8f2ec}
.nav-links .btn-gold,.mbar .btn-gold{border-radius:99px;background:var(--wf-yellow);color:var(--wf-ink);box-shadow:none;padding:12px 21px}
.announcement{background:#f7f4f0;color:var(--wf-plum);padding-block:2px}
main{background:var(--wf-paper);color:var(--wf-ink);font-family:var(--body)}
main h1,main h2,main h3{font-family:var(--display);letter-spacing:-.03em}
main .wrap{max-width:1280px;padding-inline:clamp(24px,6vw,88px)}
main section.block{padding-block:clamp(92px,9vw,132px);scroll-margin-top:90px}
main .sec-head{max-width:760px;margin-bottom:clamp(48px,5vw,68px)}
main .sec-head h2{font-size:var(--type-section);line-height:1.12;margin-top:18px}
main .sec-head h2::after{display:none}
main .sec-head p{color:var(--wf-muted);font-size:var(--type-lead);line-height:1.65;margin-top:20px}
main .eyebrow{font:500 var(--type-caption)/1 var(--mono);letter-spacing:.13em;color:var(--wf-orange)}
main .btn-gold{background:var(--wf-yellow);color:var(--wf-ink);border-radius:12px}
main .btn-navy{background:var(--wf-plum);color:#fff}
main .hero{background:var(--wf-paper);color:var(--wf-ink);padding:clamp(94px,9vw,138px) 0 clamp(108px,10vw,152px);overflow:visible}
main .hero .wrap{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(72px,8vw,118px)}
main .hero .orb{display:none}
main .hero .eyebrow{color:var(--wf-blue)}
main .hero h1{font-family:'Amatic SC',cursive;font-size:var(--type-hero);line-height:1.08;letter-spacing:.02em;font-weight:700;margin:22px 0 28px}
main .hero h1 em{font:400 1em 'Amatic SC',cursive;color:var(--wf-purple);letter-spacing:.02em;transform:rotate(-3deg)}
main .hero .lede{color:var(--wf-muted);font-size:var(--type-lead);line-height:1.65;max-width:570px;margin:0}
main .hero-ctas{margin-top:38px;align-items:center;gap:26px}
main .hero-cta{box-shadow:none;font-weight:700;padding:16px 25px;border-radius:99px}
main .hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(40,19,80,.1)}
main .hero-play{border:0;border-radius:0;border-bottom:1px solid #cdb8cd;padding:0 0 3px;color:var(--wf-plum);font-weight:700}
main .hero-trust{color:var(--wf-muted);margin-top:30px;gap:10px 24px}
main .hero-trust span::before{color:var(--wf-green)}
main .hero-facts{display:flex;flex-wrap:wrap;gap:18px 32px;max-width:none;margin-top:38px;color:var(--wf-muted);font-size:var(--type-small)}
main .hero-facts>div{display:block;padding:0;border:0;background:none;backdrop-filter:none}
main .hero-facts i{display:none}
main .hero-facts b{display:block;font-size:var(--type-card-title)!important;color:var(--wf-plum);line-height:1.4!important}
main .new-chip{background:#f7f4f0;color:var(--wf-plum);border-color:var(--wf-line);margin-bottom:28px}
main .ledger-stage{perspective:none}
main .ledger-stage .ledger{background:#fff;border:1px solid var(--wf-line);border-radius:14px;box-shadow:16px 18px 0 #f5f1ec,0 28px 70px rgba(40,19,80,.1);transform:rotate(1deg);overflow:visible;color:var(--wf-ink)}
main .ledger-stage:hover .ledger{transform:rotate(1deg)}
main .ledger-top{background:#fff;border-bottom:1px dashed #dbcbd9;color:var(--wf-muted);font-family:var(--mono)}
main .ledger-top b{color:var(--wf-plum)}
main .ledger-body{padding:26px}
main .ledger .je{border-color:var(--wf-plum)}
main .ledger .je th{border-color:var(--wf-plum)}
main .ledger .balanced{color:var(--wf-green)}
main .fchip{background:#fff;color:var(--wf-plum);box-shadow:0 9px 22px rgba(68,36,65,.12)}
.wf-band{background:#f6f0e9;border-block:1px solid #ede2d8;padding:16px 20px;text-align:center;color:#6e6370;font:400 var(--type-small)/1.5 var(--body)}
.wf-band b{color:var(--wf-plum)}
.wf-flow-wrap{background:#fff;border:1px solid var(--wf-line);border-radius:20px;padding:clamp(24px,4vw,48px);box-shadow:0 18px 48px rgba(40,19,80,.06)}
.wf-flow-title{display:flex;gap:12px;align-items:center;font-size:var(--type-card-title);letter-spacing:-.03em!important}
.wf-flow-title i{width:10px;height:10px;background:var(--wf-blue);border-radius:3px;flex:none}
.wf-flow{display:flex;align-items:stretch;gap:10px;margin:64px 0 0;position:relative}
.wf-node{flex:1 1 0;min-width:0;display:flex;flex-direction:column;justify-content:center;position:relative;border:1.5px solid;border-radius:12px;padding:20px 15px;text-align:left;min-height:144px}
.wf-node small{font:600 var(--type-micro) var(--mono);letter-spacing:.09em;margin-bottom:12px;color:var(--wf-muted)}
.wf-node b,.wf-node span{display:block}
.wf-node b{font-size:var(--type-small);line-height:1.3;margin-bottom:7px}
.wf-node span{font-size:var(--type-caption);line-height:1.45;color:#786c78}
.wf-node.orange{border-color:var(--wf-orange);background:#fff9f2}.wf-node.blue{border-color:var(--wf-blue);background:#f5f8ff}.wf-node.purple{border-color:var(--wf-purple);background:#faf6ff}.wf-node.green{border-color:var(--wf-green);background:#f4fbf5}.wf-node.red{border-color:var(--wf-red);background:#fff6f5}
.wf-connector{flex:0 0 64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding-inline:4px;color:#76687b}
.wf-connector span{font:600 var(--type-micro)/1.2 var(--mono);letter-spacing:.04em;text-align:center;text-transform:uppercase}
.wf-connector i{position:relative;display:block;width:100%;height:2px;background:#c4b8ca}
.wf-connector i:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:2px solid #76687b;border-right:2px solid #76687b;transform:rotate(45deg)}
.wf-bank-lane{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));align-items:center;margin-top:42px;position:relative}
.wf-subnode{padding:16px 12px;background:#eff9f8;border:1.5px solid var(--wf-teal);border-radius:10px;text-align:center;min-height:78px;display:flex;flex-direction:column;justify-content:center}
.wf-subnode b,.wf-subnode span{display:block}.wf-subnode b{font-size:var(--type-small);line-height:1.3}.wf-subnode span{font-size:var(--type-micro);line-height:1.4;color:#647575;margin-top:4px}
.wf-bank{grid-column:1/3}.wf-feed{grid-column:4/6}
.wf-incoming{grid-column:6/7}
.wf-branch-arrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding-inline:4px;color:#3d7975}
.wf-branch-arrow span{font:600 var(--type-micro)/1.2 var(--mono);letter-spacing:.03em;text-align:center;text-transform:uppercase}
.wf-branch-arrow i{display:block;width:100%;height:2px;background:#55aaa4;position:relative}
.wf-branch-arrow i:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:2px solid #2c817c;border-right:2px solid #2c817c;transform:rotate(45deg)}
.wf-daily{grid-column:3/4}
.wf-match{grid-column:7/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;color:#4c6d99;position:relative}
.wf-match i{font:700 22px/1 var(--body);font-style:normal;color:var(--wf-blue)}
.wf-match span{font:600 var(--type-micro)/1.35 var(--mono);letter-spacing:.02em;text-transform:uppercase}
.wf-reconcile{grid-column:10/12;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center}
.wf-reconcile-label{font:600 var(--type-micro)/1.2 var(--mono);letter-spacing:.035em;text-transform:uppercase;color:#76687b}
.wf-reconcile>i{height:22px;width:2px;background:#76687b;position:relative}
.wf-reconcile>i:after{content:"";position:absolute;bottom:0;left:-3px;width:7px;height:7px;border-bottom:2px solid #76687b;border-right:2px solid #76687b;transform:rotate(45deg)}
.wf-flow-note{margin-top:36px;padding-top:24px;border-top:1px solid var(--wf-line);color:var(--wf-muted);font-size:var(--type-small);line-height:1.6;max-width:none}
main .wf-start{padding-top:clamp(76px,8vw,112px)!important}
.wf-split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.wf-list{display:grid;gap:18px}
.wf-list-item{display:flex;gap:15px;border-top:1px solid var(--wf-line);padding-top:18px}
.wf-num{width:30px;height:30px;border-radius:50%;background:#f5e8bb;display:grid;place-items:center;font:500 var(--type-caption) var(--mono);flex:none}
.wf-list-item h3{font-size:var(--type-card-title);letter-spacing:-.03em!important;margin:0 0 5px}
.wf-list-item p{color:var(--wf-muted);font-size:var(--type-small);line-height:1.5}
.wf-list-item a,.wf-inline-link{color:var(--wf-plum);font-weight:700}
.wf-inline-link{display:inline-block;margin-top:26px}
.wf-doodle-card{display:grid;grid-template-columns:minmax(0,1fr) 170px;grid-template-rows:auto minmax(170px,1fr) auto;align-items:center;gap:10px 18px;min-height:360px;padding:30px;background:#f8f2ec;border-radius:18px}
.wf-doodle-copy{grid-column:1/-1;max-width:370px}
.wf-doodle-card h3{max-width:300px;margin:0;font-size:var(--type-card-title);line-height:1.2}
.wf-doodle-card p{max-width:36ch;margin:12px 0 0;color:#6b616e;line-height:1.55}
.wf-doodle{position:relative;grid-column:2;grid-row:2;justify-self:end;align-self:center;box-sizing:border-box;display:flex;align-items:flex-start;width:154px;height:154px;padding:17px;border:2px solid var(--wf-plum);border-radius:12px;background:#fffdf9;transform:rotate(5deg)}
.wf-doodle::before,.wf-doodle::after{content:"";position:absolute;z-index:0;border:2px solid var(--wf-purple);width:78px;height:48px;left:32px;top:48px;opacity:.56;pointer-events:none;transform:rotate(-17deg)}
.wf-doodle::after{border-color:var(--wf-orange);left:22px;top:68px;width:94px;transform:rotate(12deg)}
.wf-doodle span{position:relative;z-index:1;display:block;padding:3px 6px;border-radius:4px;background:#fffdf9;font:600 16px/1.35 Kalam,cursive;color:var(--wf-plum)}
.wf-doodle-label{grid-column:1/-1;grid-row:3;text-align:center;font:500 17px/1.2 Kalam,cursive;color:var(--wf-blue)}
main #curriculum{background:var(--wf-plum);color:#fff9f3}
main #curriculum .eyebrow{color:var(--wf-yellow)}
main #curriculum .sec-head p{color:#d9cbd9}
main #curriculum .curr,main #curriculum .dg-slot{--surface:#fff;--surface-2:#f6f0e9;--ink:#29182f;--muted:#6f6873;--line:#eadfe6;--navy:#4b244c}
main #curriculum .rm-phase,main #curriculum .rm-sum{color:var(--wf-ink);border:1px solid var(--wf-line);box-shadow:0 16px 40px rgba(26,12,28,.16)}
main #curriculum .rm-bonus .rm-ph{background:#f7e6c0;color:#281350}
main #curriculum .rm-bonus .rm-ph p,main #curriculum .rm-bonus .rm-ph a{color:#443948}
main #curriculum .mod{background:transparent;color:#fff;border-color:rgba(255,255,255,.24);border-top:4px solid var(--t1)}
main #curriculum .mod:nth-child(2n){border-top-color:var(--wf-orange)}
main #curriculum .mod:nth-child(3n){border-top-color:var(--wf-teal)}
main #curriculum .mod ul,main #curriculum .mod .meta,main #curriculum .mod .code{color:#e0d3df}
main #curriculum .dg-slot{background:#fff;color:var(--wf-ink);padding:18px;border-radius:16px;overflow-x:auto}
main #faq .wrap{display:block;max-width:900px}
main #faq .sec-head{margin-inline:auto;text-align:center}
main #faq .faq{max-width:none}
main #faq summary{color:var(--wf-ink);font-weight:700}
main #faq .faq details{border-color:var(--wf-line)}
main #faq .faq p{color:var(--wf-muted)}
.wf-final{background:#f6eee5;text-align:center;padding:105px 20px 92px}
.wf-final h2{font-size:var(--type-section);max-width:700px;margin:18px auto 0;line-height:1.12}
.wf-final p{color:var(--wf-muted);font-size:var(--type-lead);margin:18px auto 28px;max-width:550px}
.wf-final .btn{font-weight:700;box-shadow:0 4px 0 #d99c26;padding:16px 24px}
.wf-final .btn:hover{box-shadow:0 6px 0 #d99c26;transform:translateY(-2px)}
footer#contact{background:#f6eee5;color:#695b6b;border-top:1px solid var(--wf-line)}
footer#contact .logo img{content:url("talenta-pros-logo-horizontal.svg")}
footer#contact .foot-grid a,footer#contact .foot-grid h4{color:var(--wf-plum)}
footer#contact .foot-grid>div:first-child>div{color:var(--wf-plum)!important}
footer#contact .foot-locations address{color:#695b6b}
footer#contact .foot-bottom{border-color:var(--wf-line)}
.mbar span{color:var(--wf-muted)}.mbar b{color:var(--wf-plum)}
@media(max-width:920px){main .hero .wrap{grid-template-columns:1fr;gap:60px}main .ledger-stage{max-width:570px;margin-inline:auto;width:100%}.wf-split{grid-template-columns:1fr;gap:38px}}
@media(max-width:960px){
  .wf-flow{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:42px}
  .wf-node{flex:none;min-height:116px;padding:18px 22px}
  .wf-connector{min-height:44px;flex-direction:row;gap:12px}
  .wf-connector span{min-width:100px;text-align:right}
  .wf-connector i{width:2px;height:24px}
  .wf-connector i:after{right:-3px;top:auto;bottom:0;border:0;border-right:2px solid #76687b;border-bottom:2px solid #76687b;transform:rotate(45deg)}
  .wf-bank-lane{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:30px}
  .wf-bank,.wf-feed,.wf-daily,.wf-incoming,.wf-match,.wf-reconcile{grid-column:1}
  .wf-bank,.wf-feed,.wf-reconcile{width:100%}
  .wf-daily,.wf-incoming{min-height:42px;gap:6px}
  .wf-daily i,.wf-incoming i{width:2px;height:22px;position:relative}
  .wf-daily i:after,.wf-incoming i:after{right:auto;left:-3px;top:auto;bottom:0;width:7px;height:7px;border:0;border-right:2px solid #2c817c;border-bottom:2px solid #2c817c;transform:rotate(45deg)}
  .wf-match{min-height:56px}
  .wf-reconcile>i{height:20px}
}
@media(max-width:560px){
  main .hero{padding:52px 0 70px;overflow:hidden}
  main .hero h1{font-size:var(--type-hero)}
  main .hero .lede{font-size:var(--type-lead)}
  main .ledger-stage .ledger{transform:none;box-shadow:8px 12px 0 #f6eee5,0 18px 35px rgba(68,36,65,.12)}
  main .ledger-stage:hover .ledger{transform:none}
  main .fchip{display:none}
  main section.block{padding-block:84px}
  .wf-doodle-card{grid-template-columns:minmax(0,1fr) 170px;min-height:390px;padding:24px;gap:10px 12px}
  .nav .wrap{padding-inline:16px;gap:8px}
  .nav .logo img{height:32px;max-width:112px}
  .nav-links{gap:8px}
  .nav .tools{padding-left:4px}
  .mbar .btn-login{color:var(--wf-plum);border-color:var(--wf-line)}
  .mbar{flex-wrap:wrap}
  .mbar>span:first-child{min-width:0;flex:1 1 100%}
  .mbar>span:last-child{min-width:0;flex:1 1 100%;flex-wrap:wrap;justify-content:space-between}
  .mbar .btn-gold{padding-inline:12px}
}

/* Course preview and motion cues */
.tp-learning-preview{position:relative;z-index:1;width:100%;min-width:0;display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;align-items:center;margin:0 0 15px;padding:12px;background:#fff;border:1px solid var(--wf-line);border-radius:15px;box-shadow:0 12px 32px rgba(40,19,80,.08);color:var(--wf-ink);animation:hwin .72s .18s cubic-bezier(.2,.8,.2,1) both}
.tp-learning-thumb{position:relative;min-width:0;aspect-ratio:16/9;overflow:hidden;border-radius:10px;background:var(--wf-plum)}
.tp-learning-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.tp-learning-thumb>span{position:absolute;right:6px;bottom:6px;padding:3px 6px;border-radius:5px;background:rgba(24,12,43,.86);color:#fff;font:600 var(--type-micro) var(--mono)}
.tp-learning-info{min-width:0}
.tp-learning-kicker{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#716575;font:500 var(--type-micro) var(--mono);letter-spacing:.035em}
.tp-learning-info h3{margin:6px 0 9px;font:700 var(--type-small)/1.2 var(--display);letter-spacing:-.025em}
.tp-learning-steps{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:6px;color:#706674;font:600 var(--type-micro) var(--body);white-space:nowrap}
.tp-learning-steps li{display:flex;align-items:center;gap:4px}
.tp-learning-steps li>i{width:16px;height:16px;display:grid;place-items:center;border-radius:50%;background:#f2eef4;color:#756b78;font:700 8px var(--body);font-style:normal}
.tp-learning-steps li.is-done{color:var(--wf-green)}.tp-learning-steps li.is-done>i{background:#e8f4e9;color:var(--wf-green)}
.tp-learning-steps li.is-current{color:var(--wf-plum)}.tp-learning-steps li.is-current>i{background:var(--wf-yellow);color:var(--wf-ink);box-shadow:0 0 0 3px rgba(246,200,76,.2)}
.tp-learning-steps>span{height:1px;min-width:7px;flex:1;background:#e3dbe5}
html.tp-motion-ready main .tp-reveal{opacity:1;transform:translateY(12px);transition:opacity .52s ease,transform .56s cubic-bezier(.2,.8,.2,1);transition-delay:var(--tp-reveal-delay,0ms)}
html.tp-motion-ready main .tp-reveal.tp-visible{opacity:1;transform:none}
/* Keep information readable even before scroll observers and entrance motion finish. */
.pre{opacity:1;transform:translateY(12px)}
@media(max-width:560px){
  .tp-learning-preview{grid-template-columns:92px minmax(0,1fr);gap:11px;padding:10px}
  .tp-learning-kicker{font-size:var(--type-micro)}
  .tp-learning-info h3{font-size:var(--type-small)}
  .tp-learning-steps{flex-wrap:wrap;white-space:normal;gap:4px 8px;font-size:var(--type-micro)}
  .tp-learning-steps li{gap:3px;white-space:nowrap}
  .tp-learning-steps li>i{width:13px;height:13px}
  .tp-learning-steps>span{display:none}
  .tp-learning-preview{grid-template-columns:92px minmax(0,1fr)}
  .price-head .rot,.price-head .rot span{display:inline;height:auto;overflow:visible;white-space:normal;animation:none}
}
@media(prefers-reduced-motion:reduce){
  .tp-learning-preview{animation:none}
  html.tp-motion-ready main .tp-reveal{opacity:1!important;transform:none!important;transition:none!important}
}

/* Small, one-time feedback for homepage links and disclosure controls. */
main .wf-inline-link{transition:transform .18s cubic-bezier(.2,.8,.2,1)}
main #start .wf-num{transition:opacity .16s ease}
main #faq summary::after{transition:opacity .16s ease}
main .hero-cta:focus-visible,main .wf-inline-link:focus-visible,main .wf-final .btn:focus-visible{transform:translateY(-1px)}
main .wf-inline-link:focus-visible{transform:translateX(3px)}
main #start .wf-list-item:focus-within .wf-num{opacity:.72}
main #faq summary:focus-visible::after{opacity:.68}
@media (hover:hover) and (pointer:fine){
  main .wf-inline-link:hover{transform:translateX(3px)}
  main #start .wf-list-item:hover .wf-num{opacity:.72}
  main #faq summary:hover::after{opacity:.68}
}
@media(prefers-reduced-motion:reduce){
  main .hero-cta:focus-visible,main .wf-inline-link:focus-visible,main .wf-final .btn:focus-visible,
  main .wf-inline-link:hover{transform:none}
}

/* Public animated sample lesson */
.tp-sample-open{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;margin-top:12px;padding:9px 14px;border:0;border-radius:999px;background:var(--wf-yellow);color:var(--wf-ink);font:700 var(--type-control) var(--body);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}
.tp-sample-open:hover{transform:translateY(-1px);box-shadow:0 5px 13px rgba(40,19,80,.14)}
.tp-sample-open:focus-visible,.tp-sample-close:focus-visible,.tp-sample-control:focus-visible{outline:3px solid #3d68d8;outline-offset:3px}
.tp-sample-open>span{font-size:var(--type-micro)}
.tp-sample-dialog{box-sizing:border-box;width:min(1120px,calc(100vw - 24px));max-width:none;max-height:min(92dvh,1000px);padding:0;border:1px solid #e8e0e9;border-radius:18px;background:#fff;color:#281350;box-shadow:0 28px 90px rgba(15,8,28,.32);overflow:auto;overscroll-behavior:contain}
.tp-sample-dialog::backdrop{background:rgba(24,13,35,.72);backdrop-filter:blur(3px)}
.tp-sample-shell{padding:clamp(16px,3vw,32px)}
.tp-sample-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.tp-sample-header>div{min-width:0}
.tp-sample-kicker{margin:0 0 8px;color:#7650cf;font:700 var(--type-caption) var(--mono);letter-spacing:.12em}
.tp-sample-header h2{margin:0;color:#281350;font:700 var(--type-modal-title)/1.15 var(--display);letter-spacing:-.035em}
.tp-sample-header>div>p:last-child{max-width:70ch;margin:9px 0 0;color:#69616f;font-size:var(--type-small);line-height:1.6}
.tp-sample-close{flex:none;width:42px;height:42px;border:1px solid #e8e4ed;border-radius:50%;background:#fff;color:#281350;font:400 27px/1 var(--body);cursor:pointer}
.tp-sample-close:hover{background:#f6f0e9}
.tp-sample-stage{margin-top:18px}
.tp-sample-diagram.wf-flow-wrap{padding:clamp(18px,3vw,34px);border:1px solid #eee8ef;border-radius:14px;background:#fffefa;box-shadow:none}
/* The homepage and free sample share the same handwritten workbook diagram. */
:is(.wf-how,.tp-sample-diagram) .wf-flow-title{font:700 max(clamp(18px,2vw,23px),var(--type-card-title))/1.25 Kalam,cursive;letter-spacing:0!important}
:is(.wf-how,.tp-sample-diagram) .wf-flow-title i{border-radius:2px;transform:rotate(-8deg)}
:is(.wf-how,.tp-sample-diagram) .wf-node,:is(.wf-how,.tp-sample-diagram) .wf-subnode{border-width:0!important;border-radius:0!important;box-shadow:none!important;position:relative}
:is(.wf-how,.tp-sample-diagram) .wf-node:before,:is(.wf-how,.tp-sample-diagram) .wf-subnode:before{content:"";position:absolute;z-index:0;inset:2px;border:2px solid currentColor;border-radius:3px 5px 2px 4px / 4px 2px 5px 3px;transform:rotate(-.35deg);pointer-events:none}
:is(.wf-how,.tp-sample-diagram) .wf-node:after,:is(.wf-how,.tp-sample-diagram) .wf-subnode:after{content:"";position:absolute;z-index:0;inset:5px;border:1px solid currentColor;border-radius:5px 2px 4px 3px / 2px 5px 3px 4px;opacity:.24;transform:rotate(.45deg);pointer-events:none}
:is(.wf-how,.tp-sample-diagram) .wf-node.orange{color:var(--wf-orange);background:#fff9f2}
:is(.wf-how,.tp-sample-diagram) .wf-node.blue{color:var(--wf-blue);background:#f5f8ff}
:is(.wf-how,.tp-sample-diagram) .wf-node.purple{color:var(--wf-purple);background:#faf6ff}
:is(.wf-how,.tp-sample-diagram) .wf-node.green{color:var(--wf-green);background:#f4fbf5}
:is(.wf-how,.tp-sample-diagram) .wf-node.red{color:var(--wf-red);background:#fff6f5}
:is(.wf-how,.tp-sample-diagram) .wf-node small,:is(.wf-how,.tp-sample-diagram) .wf-node b,:is(.wf-how,.tp-sample-diagram) .wf-node span,:is(.wf-how,.tp-sample-diagram) .wf-subnode b,:is(.wf-how,.tp-sample-diagram) .wf-subnode span{position:relative;z-index:1}
:is(.wf-how,.tp-sample-diagram) .wf-node small{font:600 max(11px,var(--type-micro)) Kalam,cursive;letter-spacing:.03em}
:is(.wf-how,.tp-sample-diagram) .wf-node b,:is(.wf-how,.tp-sample-diagram) .wf-subnode b{font:700 max(17px,var(--type-small))/1.25 Kalam,cursive;color:#281350}
:is(.wf-how,.tp-sample-diagram) .wf-node span,:is(.wf-how,.tp-sample-diagram) .wf-subnode span{font:500 max(14px,var(--type-caption))/1.35 Kalam,cursive;color:#69616f}
:is(.wf-how,.tp-sample-diagram) .wf-subnode{color:var(--wf-teal);background:#eff9f8}
:is(.wf-how,.tp-sample-diagram) .wf-connector,:is(.wf-how,.tp-sample-diagram) .wf-branch-arrow,:is(.wf-how,.tp-sample-diagram) .wf-match,:is(.wf-how,.tp-sample-diagram) .wf-reconcile{color:#63536b}
:is(.wf-how,.tp-sample-diagram) .wf-connector span,:is(.wf-how,.tp-sample-diagram) .wf-branch-arrow span,:is(.wf-how,.tp-sample-diagram) .wf-match span,:is(.wf-how,.tp-sample-diagram) .wf-reconcile-label{max-width:100%;min-width:0;font:600 max(14px,var(--type-micro))/1.2 Kalam,cursive;letter-spacing:0;text-transform:none;overflow-wrap:anywhere}
:is(.wf-how,.tp-sample-diagram) .wf-connector i,:is(.wf-how,.tp-sample-diagram) .wf-branch-arrow i{background:#a99daf}
:is(.wf-how,.tp-sample-diagram) .wf-match i{font-family:Kalam,cursive}
:is(.wf-how,.tp-sample-diagram) .wf-reconcile>i{background:#8f8196}
@property --tp-arrow-progress{
  syntax:"<number>";
  inherits:true;
  initial-value:1
}
.tp-sample-diagram .wf-connector>i,.tp-sample-diagram .wf-branch-arrow>i{
  transform:scaleX(var(--tp-arrow-progress));
  transform-origin:left center
}
.tp-sample-diagram .wf-reconcile>i{
  transform:scaleY(var(--tp-arrow-progress));
  transform-origin:top center
}
@media(max-width:960px){
  .tp-sample-diagram .wf-connector>i,.tp-sample-diagram .wf-branch-arrow>i{
    transform:scaleY(var(--tp-arrow-progress));
    transform-origin:top center
  }
}
:is(.wf-how,.tp-sample-diagram) .wf-flow-note{max-width:90ch;margin-top:26px;padding-top:18px;border-color:#e8e0e9;font:500 max(18px,var(--type-small))/1.5 Kalam,cursive;color:#5f5665}
.tp-sample-caption{min-height:3.2em;margin:12px 2px;color:#51455d;font:500 17px/1.5 Kalam,cursive}
.tp-public-illustrations{margin:0 0 16px;border:1px solid #e8e0e9;border-radius:12px;background:#fff}
.tp-public-illustrations>summary{padding:13px 16px;color:#281350;font-weight:700;cursor:pointer}
.tp-public-illustrations>summary:focus-visible,.qb-topic-resource>summary:focus-visible{outline:3px solid #3d68d8;outline-offset:3px}
.tp-public-illustration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 12px 12px}
.tp-public-illustration-grid figure,.qb-topic-resource-body figure{min-width:0;margin:0;overflow:hidden;border:1px solid #e8e0e9;border-radius:10px;background:#fffefa}
.tp-public-illustration-grid img,.qb-topic-resource-body figure img{display:block;width:100%;height:auto;aspect-ratio:1.62;object-fit:cover}
.tp-public-illustration-grid figcaption,.qb-topic-resource-body figcaption{display:grid;gap:4px;padding:10px 12px;color:#51455d;font-size:var(--type-caption);line-height:1.45}
.tp-public-illustration-grid figcaption b{color:#281350}
.qb-topic-resource{margin:18px 0 24px;border:1px solid var(--line,#ded8e4);border-radius:12px;background:var(--card,#fff)}
.qb-topic-resource>summary{padding:13px 16px;color:var(--ink,#281350);font-weight:700;cursor:pointer}
.qb-topic-resource-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;padding:0 14px 14px}
.qb-topic-resource-body figcaption{color:#281350;font-weight:700}
.qb-topic-resource-media{min-width:0}
.qb-topic-resource-media>p{margin:0 0 10px;color:var(--muted,#69616f);font-size:var(--type-caption);line-height:1.5}
.qb-topic-video{min-width:0;overflow:hidden;border-radius:9px;background:#211c24;color:#fff}
.qb-topic-video>span{display:block;padding:14px;font-size:var(--type-caption)}
.qb-topic-video .tp-local-video{display:block;width:100%;max-height:420px;aspect-ratio:16/9;background:#211c24}
.tp-sample-toolbar{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px calc(clamp(16px,3vw,32px) * -1) calc(clamp(16px,3vw,32px) * -1);padding:14px clamp(16px,3vw,32px);border-top:1px solid #e8e4ed;background:rgba(255,255,255,.97);box-shadow:0 -8px 18px rgba(40,19,80,.05)}
.tp-sample-toolbar>span{color:#69616f;font:500 var(--type-caption) var(--body)}
.tp-sample-toolbar>div{display:flex;gap:8px}
.tp-sample-control{min-height:42px;padding:9px 15px;border:1px solid #ded6e2;border-radius:999px;background:#fff;color:#281350;font:700 var(--type-control) var(--body);cursor:pointer}
.tp-sample-control.primary{border-color:#281350;background:#281350;color:#fff}
.tp-sample-control:hover{box-shadow:0 4px 12px rgba(40,19,80,.14)}
@media(max-width:560px){
  .tp-public-illustration-grid,.qb-topic-resource-body{grid-template-columns:minmax(0,1fr)}
  .tp-learning-preview{grid-template-columns:92px minmax(0,1fr)}
  .tp-sample-dialog{width:calc(100vw - 12px);max-height:96dvh;border-radius:12px}
  .tp-sample-shell{padding:14px}
  .tp-sample-header{gap:10px}
  .tp-sample-close{width:38px;height:38px}
  .tp-sample-stage{margin-top:12px}
  .tp-sample-diagram.wf-flow-wrap{padding:16px 12px}
  .tp-sample-diagram .wf-flow{margin-top:24px}
  .tp-sample-diagram .wf-node{min-height:96px;padding:14px 16px}
  .tp-sample-diagram .wf-node b,.tp-sample-diagram .wf-subnode b{font-size:max(17px,var(--type-small))}
  .tp-sample-toolbar{align-items:flex-start;flex-direction:column;gap:8px;margin-right:-14px;margin-left:-14px;margin-bottom:-14px;padding:11px 14px}
  .tp-sample-toolbar>div{width:100%}
  .tp-sample-control{flex:1;padding-inline:10px}
}
@media(prefers-reduced-motion:reduce){
  .tp-sample-open,.tp-sample-dialog[open]{animation:none;transition:none}
  .tp-sample-open:hover{transform:none}
}

/* Shared typography scale for the public site. */
@media(max-width:560px){
  :root{--type-hero:clamp(40px,11vw,51px)}
}
body{font-family:var(--body);font-size:var(--type-body);line-height:1.6}
button,input,select,textarea{font-family:var(--body)}
main{font-family:var(--body)}
main p{font-family:var(--body);font-size:var(--type-body);line-height:1.6}
main h1,main h2,main h3{font-family:var(--display);letter-spacing:-.03em}
main h1{font-size:var(--type-hero)!important}
main h2{font-size:var(--type-section)!important}
main h3{font-size:var(--type-card-title)!important}
main .tp-learning-info h3{font-size:var(--type-small)!important}
main .hero .lede,main .sec-head p,main .wf-final p{font-size:var(--type-lead)!important}
.tp-sample-dialog h2{font-size:var(--type-modal-title)!important}

/* Case story: practice made tangible. */
.tp-case{position:relative;overflow:hidden;padding:clamp(74px,9vw,122px) 0;background:#e4f7f6;color:#241448}
.tp-case:before{content:"";position:absolute;inset:0 auto 0 0;width:clamp(12px,2.2vw,30px);background:#8adbd9}
.tp-case-wrap{position:relative;width:min(1120px,calc(100% - 48px));margin:0 auto}
.tp-case-head{max-width:740px;margin:0 0 clamp(54px,8vw,92px) clamp(0px,7vw,86px)}
.tp-case-kicker{display:block;color:#287c7a;font:600 11px/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase}
.tp-case-head h2{margin:17px 0 18px;font-size:clamp(38px,6vw,68px)!important;line-height:1.02!important;letter-spacing:-.055em!important}
.tp-case-head h2 em{font-weight:500;color:#397e98}
.tp-case-head p{max-width:61ch;margin:0;color:#5a5870;font-size:clamp(16px,1.7vw,19px);line-height:1.65}
.tp-case-row{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(280px,.77fr);gap:clamp(42px,8vw,106px);align-items:center;margin:0 0 clamp(74px,10vw,124px)}
.tp-case-row.reverse{grid-template-columns:minmax(280px,.77fr) minmax(0,1.13fr)}
.tp-case-row.reverse .tp-case-visual{grid-column:2;grid-row:1}
.tp-case-row.reverse .tp-case-copy{grid-column:1;grid-row:1}
.tp-case-visual{position:relative;display:grid;place-items:center;min-width:0;min-height:370px;padding:clamp(20px,4vw,48px);border-radius:5px 22px 5px 22px;background:#a8e9e7;isolation:isolate}
.tp-case-visual:before{content:"";position:absolute;z-index:-1;inset:13px;border:1px solid rgba(33,108,110,.15);border-radius:3px 15px 3px 15px}
.tp-case-visual:after{content:"";position:absolute;z-index:-1;inset:0;background-image:radial-gradient(rgba(23,102,107,.18) .7px,transparent .7px);background-size:13px 13px;opacity:.38;mask-image:linear-gradient(135deg,#000,transparent 80%)}
.tp-case-window{width:min(100%,510px);min-height:252px;background:#fff;border:1px solid #d5e2e2;border-radius:9px;box-shadow:11px 14px 0 rgba(34,112,113,.13),0 18px 45px rgba(36,67,85,.14);overflow:hidden;transform:rotate(-1.1deg)}
.tp-case-windowbar{height:38px;display:flex;align-items:center;gap:10px;padding:0 13px;border-bottom:1px solid #ebedef;color:#6b7080;font-size:10px}
.tp-case-mark{display:grid;place-items:center;width:19px;height:19px;border-radius:5px;background:#7650cf;color:white;font:700 9px var(--body)}
.tp-case-windowbar i{margin-left:auto;color:#aba3b4;font-style:normal;letter-spacing:2px}
.tp-case-screen{display:grid;grid-template-columns:102px minmax(0,1fr);min-height:214px}
.tp-case-sidebar{display:flex;flex-direction:column;gap:12px;padding:16px 10px;background:#fbfafc;color:#888092;font-size:9px}
.tp-case-sidebar b{font:600 8px var(--mono);letter-spacing:.08em;color:#9a91a0}
.tp-case-sidebar span{padding:4px 5px;border-radius:4px}
.tp-case-sidebar .active{background:#f0eafd;color:#6245a7;font-weight:700}
.tp-case-main{padding:16px 18px 12px;min-width:0}
.tp-case-main>small,.tp-case-task-top>span,.tp-case-report-head>span:first-child,.tp-case-journal>span{font:600 8px var(--mono);letter-spacing:.1em;color:#867b8b}
.tp-case-main>strong{display:block;margin:7px 0 13px;font:700 18px/1.2 var(--display);color:#342344}
.tp-case-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tp-case-fields span{padding:7px 8px;background:#fbfafc;border:1px solid #efebf0;border-radius:4px;color:#8a8390;font-size:8px}
.tp-case-fields b{display:block;margin-top:4px;color:#45394c;font-size:9px}
.tp-case-table{margin-top:10px;border:1px solid #eeeaf0;border-radius:4px;overflow:hidden;color:#766f7b;font-size:8px}
.tp-case-table>div{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;border-bottom:1px solid #f0edf1}
.tp-case-table>div:last-child{border-bottom:0;background:#fcfbfc}
.tp-case-table>div:first-child{background:#f8f6f8;color:#6a5f70}
.tp-case-screen-foot{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-top:9px;color:#7c7780;font-size:8px}
.tp-case-screen-foot b{padding:6px 9px;border-radius:4px;background:#7650cf;color:#fff;font-size:8px}
.tp-case-stamp{position:absolute;right:16px;bottom:14px;color:#287c7a;font:600 9px var(--mono);letter-spacing:.11em}
.tp-case-copy{max-width:395px}
.tp-case-index{display:block;margin-bottom:17px;color:#397e98;font:600 10px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.tp-case-copy h3{margin:0 0 14px;font-size:clamp(26px,3.3vw,38px)!important;line-height:1.14!important;letter-spacing:-.045em!important}
.tp-case-copy p{margin:0;color:#5a5870;font-size:16px;line-height:1.7}
.tp-case-proof{display:flex;align-items:center;gap:10px;margin-top:22px;color:#287c7a;font:600 9px var(--mono);letter-spacing:.065em}
.tp-case-proof i{width:26px;height:1px;background:#71b9b7}
.tp-case-task{background:#b8eae8}
.tp-case-task-card{width:min(100%,410px);padding:23px 25px 19px;border:1px solid #e9e5ee;border-radius:10px;background:#fff;box-shadow:10px 13px 0 rgba(34,112,113,.13),0 18px 45px rgba(36,67,85,.14);transform:rotate(1.2deg)}
.tp-case-task-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.tp-case-task-top b{color:#766d7e;font:600 9px var(--mono)}
.tp-case-task-top b i{font-style:normal;color:#aaa1b1;font-weight:400}
.tp-case-task-card h4{margin:17px 0 5px;color:#342344;font:700 21px/1.2 var(--display);letter-spacing:-.035em}
.tp-case-task-card>p{margin:0 0 17px;color:#7d7582;font-size:11px}
.tp-case-task-step{display:flex;align-items:center;gap:9px;min-height:36px;border-top:1px solid #f0edf1;color:#554a5c;font-size:10px}
.tp-case-task-step>i{display:grid;place-items:center;flex:none;width:20px;height:20px;border:1px solid #d9d1df;border-radius:50%;color:#8b8291;font:600 9px var(--mono);font-style:normal}
.tp-case-task-step>i.checked{border-color:#398e74;background:#e9f5ef;color:#398e74}
.tp-case-task-step>b{margin-left:auto;color:#398e74;font-size:9px}
.tp-case-task-note{display:flex;flex-direction:column;gap:5px;margin-top:15px;padding:10px 11px;border-radius:5px;background:#f0fafa}
.tp-case-task-note span{color:#398782;font:600 8px var(--mono);letter-spacing:.09em}
.tp-case-task-note b{color:#4d6470;font-size:10px}
.tp-case-report{background:#a4e3e2}
.tp-case-report-back{position:relative;width:min(100%,460px);min-height:224px;padding:21px 24px;background:#fff;border:1px solid #dce5e5;border-radius:8px;box-shadow:9px 12px 0 rgba(34,112,113,.13),0 18px 45px rgba(36,67,85,.13);transform:rotate(-1deg)}
.tp-case-report-head{display:flex;align-items:center;gap:10px;color:#54445e;font-size:10px}
.tp-case-report-head>span:first-child{color:#8b7f91}
.tp-case-report-head b{font:700 13px var(--display)}
.tp-case-report-head>span:last-child{margin-left:auto;color:#8a8290;font-size:8px}
.tp-case-bars{display:flex;align-items:flex-end;justify-content:space-around;gap:9px;height:92px;margin:22px 10px 13px;border-bottom:1px solid #eae6ec}
.tp-case-bars i{display:block;width:9%;height:var(--bar);border-radius:3px 3px 0 0;background:#7650cf;opacity:.84}
.tp-case-bars i:nth-child(2n){background:#3d9b9a}
.tp-case-report-total{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 12px;color:#776d7d;font-size:9px}
.tp-case-report-total b{color:#30223f;font:700 13px var(--mono)}
.tp-case-report-total small{grid-column:1/-1;color:#958c99;font-size:8px}
.tp-case-journal{position:absolute;right:4%;bottom:26px;width:min(68%,300px);padding:14px 16px;border:1px solid #e3dce8;border-left:3px solid #7650cf;border-radius:5px;background:#fff;box-shadow:0 10px 24px rgba(38,31,60,.15);transform:rotate(2deg)}
.tp-case-journal>span{display:block;margin-bottom:10px;font-size:7px}
.tp-case-journal>div{display:flex;justify-content:space-between;gap:9px;padding:5px 0;border-top:1px solid #f0edf1;color:#594e60;font-size:8px}
.tp-case-journal strong{font:600 8px var(--mono);white-space:nowrap;color:#382b45}
.tp-case-journal em{display:block;margin-top:5px;text-align:right;color:#398e74;font:600 8px var(--mono);font-style:normal}
.tp-case-end{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:12px 0 0;padding:29px 34px;border:1px solid rgba(39,126,125,.18);border-radius:7px 18px 7px 18px;background:#c8efec}
#practice-books-cta{scroll-margin-top:110px}
.tp-case-end .tp-case-kicker{color:#235f65;font-size:14px;line-height:1.4;letter-spacing:.09em}
.tp-case-end p{margin:9px 0 0;color:#3d3855;font-size:18px;line-height:1.5}
.tp-case-end .btn{flex:none;display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:14px 23px;border-radius:999px;font-size:16px;font-weight:700}
.tp-case-end .btn span{font-size:19px;transition:transform .2s ease}
.tp-case-end .btn:hover span{transform:translateX(3px)}
.tp-case-disclaimer{max-width:82ch;margin:20px auto 0;color:#45546b;font-size:14px;line-height:1.6;text-align:center}
@media(max-width:800px){
  .tp-case-row,.tp-case-row.reverse{grid-template-columns:minmax(0,1fr);gap:28px;margin-bottom:68px}
  .tp-case-row.reverse .tp-case-visual,.tp-case-row.reverse .tp-case-copy{grid-column:1;grid-row:auto}
  .tp-case-copy{max-width:620px}
  .tp-case-visual{min-height:340px}
  .tp-case-row.reverse .tp-case-visual{order:0}
  .tp-case-row.reverse .tp-case-copy{order:1}
  .tp-case-end{align-items:flex-start;flex-direction:column;gap:18px}
}
@media(max-width:560px){
  .tp-case{padding:72px 0}
  .tp-case-wrap{width:calc(100% - 36px)}
  .tp-case-head{margin:0 0 48px}
  .tp-case-head h2 br{display:none}
  .tp-case-visual{min-height:280px;padding:22px 15px}
  .tp-case-window{min-height:220px}
  .tp-case-screen{grid-template-columns:73px minmax(0,1fr);min-height:182px}
  .tp-case-sidebar{gap:9px;padding:13px 7px;font-size:8px}
  .tp-case-main{padding:12px 10px 9px}
  .tp-case-main>strong{font-size:16px}
  .tp-case-fields{gap:5px}
  .tp-case-fields span{padding:6px;font-size:7px}
  .tp-case-fields b{font-size:8px}
  .tp-case-task-card{padding:19px 17px 15px}
  .tp-case-task-card h4{font-size:18px}
  .tp-case-report-back{padding:17px 15px}
  .tp-case-journal{right:4%;bottom:21px;width:73%;padding:11px 12px}
  .tp-case-end{align-items:flex-start;flex-direction:column;gap:17px;padding:24px 20px}
  .tp-case-end .btn{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  .tp-case-end .btn span{transition:none}
}

/* Talenta Pros — the practical workbook. Violet, white and sky-blue
   backgrounds frame the real learning tools without changing their behavior. */
:root{
  --wf-ink:#292044;
  --wf-plum:#2b194f;
  --wf-paper:#fff;
  --wf-yellow:#ffdc71;
  --wf-orange:#97512b;
  --wf-blue:#275c9a;
  --wf-purple:#6541b0;
  --wf-green:#27684d;
  --wf-teal:#345fba;
  --wf-red:#a34b56;
  --wf-line:#d9d8ed;
  --wf-muted:#555b72;
}
/* The original theme tokens are also declared on body; override that scope too. */
body:not(.sb-lock){
  --wf-ink:#292044;--wf-plum:#2b194f;--wf-paper:#fff;
  --wf-yellow:#ffdc71;--wf-orange:#97512b;--wf-blue:#275c9a;
  --wf-purple:#6541b0;--wf-green:#27684d;--wf-teal:#345fba;
  --wf-red:#a34b56;--wf-line:#d9d8ed;--wf-muted:#555b72;
}
@media(prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --wf-ink:#eee7fa;--wf-plum:#eee7fa;--wf-paper:#19122f;
    --wf-yellow:#ffdc71;--wf-orange:#edab87;--wf-blue:#a8d8ff;
    --wf-purple:#c5a8f0;--wf-green:#8ed4b3;--wf-teal:#86baff;
    --wf-red:#efa4a8;--wf-line:#4c3b68;--wf-muted:#ccc1df;
  }
  :root:not([data-theme="light"]) body:not(.sb-lock){
    --wf-ink:#eee7fa;--wf-plum:#eee7fa;--wf-paper:#19122f;
    --wf-yellow:#ffdc71;--wf-orange:#edab87;--wf-blue:#a8d8ff;
    --wf-purple:#c5a8f0;--wf-green:#8ed4b3;--wf-teal:#86baff;
    --wf-red:#efa4a8;--wf-line:#4c3b68;--wf-muted:#ccc1df;
  }
}
:root[data-theme="dark"]{
  --wf-ink:#eee7fa;--wf-plum:#eee7fa;--wf-paper:#19122f;
  --wf-yellow:#ffdc71;--wf-orange:#edab87;--wf-blue:#a8d8ff;
  --wf-purple:#c5a8f0;--wf-green:#8ed4b3;--wf-teal:#86baff;
  --wf-red:#efa4a8;--wf-line:#4c3b68;--wf-muted:#ccc1df;
}
:root[data-theme="dark"] body:not(.sb-lock){
  --wf-ink:#eee7fa;--wf-plum:#eee7fa;--wf-paper:#19122f;
  --wf-yellow:#ffdc71;--wf-orange:#edab87;--wf-blue:#a8d8ff;
  --wf-purple:#c5a8f0;--wf-green:#8ed4b3;--wf-teal:#86baff;
  --wf-red:#efa4a8;--wf-line:#4c3b68;--wf-muted:#ccc1df;
}
body{background:var(--wf-paper)}
main{background:var(--wf-paper);color:var(--wf-ink)}
main .wrap{max-width:1320px}
main section.block{position:relative;padding-block:clamp(86px,9vw,132px)}
main .sec-head{margin-bottom:clamp(38px,4.7vw,62px)}
main .eyebrow{color:#287b88}
main .sec-head h2{max-width:18ch}
main .sec-head p{max-width:66ch;color:var(--wf-muted)}

/* A little more air around the real, working learning surfaces. */
.nav,.mbar{background:rgba(43,25,79,.97);border-color:#503b78;color:#fff}
.nav .wrap{max-width:1360px;padding-block:14px}
.nav .logo img{content:url("talenta-pros-logo-horizontal-white.svg")}
.nav .nav-links a,.nav .nav-trigger{color:#f4edff}
.nav .nav-links a:hover,.nav .nav-trigger:hover,.nav .nav-trigger:focus-visible{color:#bce8ff}
.nav .tools,.nav .tool,.nav .btn-login{border-color:#917bb7}
.nav .tool,.nav .btn-login{color:#fff!important}
.nav .tool:hover,.nav .btn-login:hover{background:#4c3479}
.nav-links .btn-gold,.mbar .btn-gold{background:#ffdc71;color:#2b194f!important}
.mbar .btn-login{color:#fff!important;border-color:#917bb7}
.wa-float{position:fixed;z-index:80;right:22px;bottom:22px;display:inline-flex;align-items:center;gap:9px;min-height:54px;padding:0 18px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:#128c51;box-shadow:0 12px 34px rgba(18,35,27,.28);color:#fff;font:700 14px/1 var(--body);text-decoration:none;transition:transform .15s,background .15s}
.wa-float:hover{background:#0c7542;transform:translateY(-2px)}
.wa-float svg{width:22px;height:22px;fill:currentColor;flex:none}
@media(max-width:720px){.wa-float{right:14px;bottom:calc(84px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.wa-float{transition:none}}
.announcement{background:#d7b4f4;color:#261744}
main .hero{min-height:690px;padding:clamp(76px,8vw,116px) 0 clamp(84px,9vw,132px);background:linear-gradient(112deg,#281748 0%,#301c58 57%,#42247e 100%);color:#fff}
main .hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,.94fr);gap:clamp(44px,6vw,92px);align-items:center}
main .hero .eyebrow{color:#aee1ff}
main .hero h1{max-width:11ch;font-size:var(--type-hero)!important;line-height:1.02;letter-spacing:-.055em;color:#fff}
main .hero h1 em{display:inline-block;color:#b7deff;font-weight:400;transform:rotate(-3deg);padding-bottom:20px}
main .hero .lede{max-width:55ch;color:#e2dff1}
main .hero-cta{background:#ffdc71;color:#2b194f}
main .hero-play{color:#e8e5f7;border-color:#b7a7d4}
main .hero-trust{color:#e3dff1}
main .hero-trust span::before{color:#9de4d0}
main .hero-facts{gap:17px 27px}
main .hero-facts{color:#e3dff1}
main .hero-facts b{color:#fff}
main .new-chip{background:#493376;border-color:#816ba8;color:#f4efff}
main .ledger-stage{padding:clamp(17px,3vw,35px);border-radius:5px 30px 5px 30px;background:#b1e2ff;box-shadow:inset 0 0 0 1px rgba(46,64,122,.16);isolation:isolate}
main .ledger-stage:before{content:"";position:absolute;inset:12px;border:1px solid rgba(46,64,122,.2);border-radius:3px 23px 3px 23px;pointer-events:none}
main .ledger-stage:after{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(57,48,116,.2) .7px,transparent .7px);background-size:14px 14px;opacity:.35;mask-image:linear-gradient(140deg,#000,transparent 78%);pointer-events:none}
main .ledger-stage .ledger{position:relative;background:#fff;border-color:#c8e0e9;border-radius:12px;box-shadow:10px 13px 0 rgba(29,112,116,.15),0 20px 40px rgba(25,64,80,.12);transform:rotate(-.7deg);color:#16384b}
main .ledger-stage:hover .ledger{transform:rotate(-.7deg)}
main .ledger-top{background:#f8fcfd;border-color:#c8e0e9;color:#536d7b}
main .ledger-top b{color:#16384b}
main .ledger-body{padding:clamp(17px,2.2vw,25px)}
main .fchip{z-index:3;border:1px solid #d3e7eb;color:#20485a}
.wf-band{padding:18px 22px;background:#e5f5ff;border-color:#cbe3f5;color:#3f4668}
.wf-band b{color:#2b194f}
main #how{background:#e8f6ff}
.wf-flow-wrap{position:relative;overflow:hidden;background:#b6e1fb;border:0;border-radius:6px 26px 6px 26px;padding:clamp(25px,4vw,48px);box-shadow:none}
.wf-flow-wrap{color:#173d4c}
.wf-flow-wrap .wf-node{color:#173d4c}
.wf-flow-wrap .wf-node small,.wf-flow-wrap .wf-node span{color:#365463}
.wf-flow-wrap .wf-connector,.wf-flow-wrap .wf-reconcile-label{color:#3d5065}
.wf-flow-wrap .wf-subnode{color:#173d4c}
.wf-flow-wrap:before{content:"";position:absolute;inset:11px;border:1px solid rgba(25,108,112,.18);border-radius:3px 19px 3px 19px;pointer-events:none}
.wf-flow-title,.wf-flow,.wf-bank-lane,.wf-flow-note{position:relative}
.wf-flow-title{color:#173d4c}
.wf-flow-note{color:#365b68;border-color:rgba(31,97,102,.24)}
@media(prefers-reduced-motion:no-preference){
  html.tp-motion-ready main #how :is(.wf-connector,.wf-branch-arrow) i{
    transform:scaleX(0);
    transform-origin:left center;
    transition:transform .48s cubic-bezier(.2,.8,.2,1);
    transition-delay:var(--tp-flow-delay,0ms)
  }
  html.tp-motion-ready main #how :is(.wf-connector,.wf-branch-arrow).tp-visible i{transform:scaleX(1)}
  html.tp-motion-ready main #how .wf-reconcile>i{
    transform:scaleY(0);
    transform-origin:top center;
    transition:transform .48s cubic-bezier(.2,.8,.2,1);
    transition-delay:var(--tp-flow-delay,0ms)
  }
  html.tp-motion-ready main #how .wf-reconcile.tp-visible>i{transform:scaleY(1)}
  html.tp-motion-ready main #how :is(.wf-connector,.wf-branch-arrow) i::before{
    content:"";
    position:absolute;
    z-index:1;
    left:0;
    top:50%;
    width:10px;
    height:10px;
    border:2px solid #fff;
    border-radius:50%;
    background:#168b8b;
    box-shadow:0 0 0 1px #137b7b,0 2px 6px rgba(19,123,123,.32);
    opacity:0;
    transform:translate(-50%,-50%) scale(.7);
    pointer-events:none
  }
  html.tp-motion-ready main #how :is(.wf-connector,.wf-branch-arrow).tp-visible i::before{
    animation:tp-flow-dot .78s cubic-bezier(.22,.61,.36,1) var(--tp-dot-delay,0ms) both
  }
  html.tp-motion-ready main #how :is(.wf-flow,.wf-bank-lane)>.wf-node.tp-visible,
  html.tp-motion-ready main #how :is(.wf-flow,.wf-bank-lane)>.wf-subnode.tp-visible,
  html.tp-motion-ready main #how .wf-reconcile.tp-visible .wf-subnode{
    animation:tp-flow-node-highlight .42s ease var(--tp-flow-delay,0ms) both
  }
  @keyframes tp-flow-dot{
    0%{left:0;opacity:0;transform:translate(-50%,-50%) scale(.55)}
    14%{opacity:1;transform:translate(-50%,-50%) scale(1)}
    82%{opacity:1;transform:translate(-50%,-50%) scale(1)}
    100%{left:100%;opacity:0;transform:translate(-50%,-50%) scale(.65)}
  }
  @keyframes tp-flow-node-highlight{
    0%,100%{filter:brightness(1)}
    42%{filter:brightness(1.08)}
  }
}
@media(max-width:960px) and (prefers-reduced-motion:no-preference){
  html.tp-motion-ready main #how :is(.wf-connector,.wf-branch-arrow) i{
    transform:scaleY(0);
    transform-origin:top center
  }
  html.tp-motion-ready main #how :is(.wf-connector,.wf-branch-arrow) i::before{
    left:50%;
    top:0
  }
  html.tp-motion-ready main #how :is(.wf-connector,.wf-branch-arrow).tp-visible i::before{
    animation-name:tp-flow-dot-vertical
  }
  @keyframes tp-flow-dot-vertical{
    0%{top:0;opacity:0;transform:translate(-50%,-50%) scale(.55)}
    14%{opacity:1;transform:translate(-50%,-50%) scale(1)}
    82%{opacity:1;transform:translate(-50%,-50%) scale(1)}
    100%{top:100%;opacity:0;transform:translate(-50%,-50%) scale(.65)}
  }
}
main #start{background:#fff}
main #start .eyebrow{color:#256b32!important}
.wf-split{grid-template-columns:minmax(0,1fr) minmax(0,.86fr);gap:clamp(48px,8vw,112px)}
.wf-split>div:first-child{grid-column:2;grid-row:1}
.wf-split>.wf-doodle-card{grid-column:1;grid-row:1}
.wf-doodle-card{grid-template-columns:minmax(0,1fr) 170px;grid-template-rows:1fr auto;gap:18px}
.wf-doodle-copy{grid-column:1;grid-row:1}
.wf-doodle{grid-column:2;grid-row:1;justify-self:center}
.wf-doodle-label{grid-column:1/-1;grid-row:2}
.wf-num{background:#ded3fa;color:#3a2874}
.wf-doodle-card{background:#e4dcfa;border-radius:5px 24px 5px 24px;min-height:330px}
.wf-doodle-card p{color:#51465b}
.wf-doodle{background:#f8fcfc;border-color:#296373}
.wf-doodle-label{color:#276e7b}
main #features{padding:clamp(74px,8vw,112px) 0;background:#f0ebfc}
main #features .fx-head{max-width:1280px;padding-inline:clamp(24px,6vw,88px);margin:0 auto clamp(32px,4vw,54px)}
main #features .fx-head h2{max-width:17ch;color:#2b194f}
main #features .fx-card{border:1px solid #d8d0ed;border-radius:4px 18px 4px 18px;background:#fff;box-shadow:0 12px 28px rgba(68,45,110,.07)}
main #features .fx-card h3{color:#2b194f}
main #features .fx-card p{color:#555b72}
main #features .fx-card svg{color:#6445ad}
main #curriculum{background:#2b194f}
main #curriculum .eyebrow{color:#ffdc71;font-size:14px;font-weight:600;line-height:1.45;letter-spacing:.14em}
main #curriculum .sec-head p{color:#eee7fa;font-size:clamp(17px,1.55vw,19px)!important;line-height:1.65}
main #curriculum .rm-phase,main #curriculum .rm-sum{border-radius:5px 16px 5px 16px}
main #payroll{background:#fff}
main .payroll{align-items:center;gap:clamp(44px,7vw,92px)}
main .payroll .stub{position:relative;padding:0;border:8px solid #b4e1ff;border-radius:5px 23px 5px 23px;background:#fff;box-shadow:10px 13px 0 rgba(68,45,110,.12),0 20px 44px rgba(35,37,80,.1)}
main .payroll .stub:before{content:"";position:absolute;inset:5px;border:1px solid rgba(25,108,112,.16);pointer-events:none}
main .payroll .stub-top,main .payroll .stub-body{position:relative}
main .payroll .stub-top{background:#f4fbfc;color:#183e4e}
main .payroll .stub-body{color:#183e4e}
main .payroll .pl-list li{border-color:#c8e0e9}
main .payroll-band .eyebrow{color:#287b88}
/* The portal steps use the reference's open, four-column workbook layout. */
main #portal-steps.block{padding-block:clamp(64px,7vw,88px)}
main #portal-steps .sec-head{max-width:none;margin:0 0 clamp(32px,4vw,42px)}
main #portal-steps .sec-head .eyebrow{color:#287b88!important}
main #portal-steps .sec-head h2{margin-top:14px;color:var(--wf-section-ink);font-size:clamp(30px,3.5vw,40px);line-height:1.12;letter-spacing:-.035em}
main #portal-steps .how{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2vw,28px)}
main #portal-steps .how .step{min-width:0;border-top:2px solid #d4ae45;padding-top:16px}
main #portal-steps .how .step small{color:var(--wf-section-muted);font:600 12px/1.4 var(--mono)}
main #portal-steps .how .step h3{margin:6px 0;font:700 clamp(16px,1.35vw,18px)/1.3 var(--display);color:var(--wf-section-ink);letter-spacing:-.02em}
main #portal-steps .how .step p{max-width:36ch;color:var(--wf-section-muted);font-size:clamp(14px,1.1vw,15px);line-height:1.55}
@media(max-width:860px){
  main #portal-steps .how{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
}
@media(max-width:460px){
  main #portal-steps.block{padding-block:56px}
  main #portal-steps .sec-head{margin-bottom:28px}
  main #portal-steps .sec-head h2{font-size:clamp(28px,8vw,34px)}
  main #portal-steps .how{grid-template-columns:minmax(0,1fr);gap:22px}
  main #portal-steps .how .step{padding-top:13px}
}
:root[data-theme="dark"] main #portal-steps .sec-head .eyebrow{color:#a8d9dc!important}
@media(prefers-color-scheme:dark){
  :root:not([data-theme="light"]) main #portal-steps .sec-head .eyebrow{color:#a8d9dc!important}
}
main #portal{background:#f0ebfc}
main #portal .app{--ink:#183747;--muted:#4d6878;--surface:#fff;--surface-2:#f2f9fb;--line:#c8e0e9;--navy:#16384b;color:#183747;border:1px solid #c3dfe7;border-radius:7px 24px 7px 24px;box-shadow:0 22px 60px rgba(34,82,100,.12)}
main #portal .app-top{background:#f8fcfd;border-color:#d4e7eb}
main #portal .app-view{background:#f2f9fb}
main #practice{background:#fff}
main #practice .pb-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(44px,7vw,92px)}
main #practice .pb-grid>.pb-shot{grid-column:1;grid-row:1}
main #practice .pb-grid>div:first-child{grid-column:2;grid-row:1}
main #practice .pb-shot{border:0;border-radius:5px 24px 5px 24px;background:#b7e3ff;box-shadow:none;padding:clamp(20px,3vw,36px)}
main #practice .pb-shot{--ink:#183747;--muted:#4d6878;--surface:#fff;--surface-2:#f2f9fb;--line:#c8e0e9;--navy:#16384b;color:#183747}
main #practice .pb-shot:focus-visible{outline:3px solid #1c6474;outline-offset:5px}
main #practice .pb-bar,main #practice .pb-in{box-shadow:0 12px 34px rgba(24,75,92,.12)}
main #practice .pb-fine{color:#526b78}
main #support{background:#e8f6ff}
main #support .roles{border-radius:5px 22px 5px 22px;border-color:#d3def5;background:#fff}
main #career{background:#f0ebfc}
main #career .cp{border-radius:5px 24px 5px 24px}
main #skills{background:#fff}
main #instructor{background:#e8f6ff}
main #partners{background:#f0ebfc}
main #pricing{background:#2b194f}
main #pricing .eyebrow{color:#b9e1ff}
main #faq{background:#fff}
main #faq .faq details{background:#edf6ff;border-radius:5px 14px 5px 14px;padding-inline:18px}
main :is(#how,#start,#features,#payroll,#portal,#practice,#support,#career,#skills,#instructor,#partners,#faq){color:var(--wf-section-ink)}
main #start .wf-list-item p{color:var(--wf-section-muted)}
main #start .wf-list-item a,main #start .wf-inline-link{color:var(--wf-section-link)}
main #faq summary{color:var(--wf-section-ink)}
main #support .support>*{min-width:0}
.tp-case{background:#e6f5ff}
.tp-case:before{background:#badfff}
.tp-case-visual{border-radius:5px 24px 5px 24px}
.tp-case-mark{background:#168b8b}
.tp-case-screen-foot b,.tp-case-report-back{border-color:#c5e1e5}
.tp-case-screen-foot b{background:#168b8b}
.tp-case-task-note{background:#e8f7f6}
.tp-case-journal{border-left-color:#168b8b}
.tp-case-end{background:#ded5f7}
.tp-case-end .btn{background:#ffdc71;color:#2b194f}
.wf-final{background:linear-gradient(115deg,#e5f5ff,#eee6fc)}
.wf-final h2{color:#2b194f}
.wf-final .btn{background:#ffdc71;color:#2b194f;box-shadow:0 4px 0 #c99b39}
footer#contact{background:#eee6fc;border-color:#d5cbea}
footer#contact .foot-locations address{color:#4d6878}
footer#contact .foot-legal{max-width:744px;gap:12px 20px;margin-top:18px;font-size:11px}
footer#contact .foot-legal a{color:#2b194f;font-weight:700;text-decoration:underline;text-decoration-color:currentColor;text-underline-offset:3px}
footer#contact .foot-legal a:hover{color:#17102e;text-decoration-thickness:2px}
footer#contact .foot-legal a:focus-visible{outline:3px solid #176d85;outline-offset:3px;border-radius:3px}
footer#contact .footer-wrap{max-width:880px;padding-inline:28px;flex-direction:column}
footer#contact .foot-grid{width:100%;max-width:744px;grid-template-columns:1.4fr repeat(4,minmax(0,1fr));gap:14px}
footer#contact .foot-brand .logo{margin-bottom:18px!important}
footer#contact .foot-brand .logo img{height:36px!important;width:auto}
footer#contact .foot-brand-tagline{margin-top:4px;color:var(--hero-ink);font-size:12px;font-weight:600;line-height:1.45}
footer#contact .foot-brand-copy{max-width:205px;margin-top:8px;color:#626a7c;font-size:11px;line-height:1.55}
footer#contact .foot-grid h4,footer#contact .foot-locations h4{font-size:10px}
footer#contact .foot-grid ul{gap:7px}
footer#contact .foot-grid a{font-size:11px;line-height:1.5}
footer#contact .foot-grid a:hover{text-decoration:underline;text-underline-offset:3px}
footer#contact .foot-locations{width:100%;max-width:720px;margin-top:64px;padding-top:0;border-top:0;gap:16px 32px}
footer#contact .foot-locations address{font-size:12px;line-height:1.55}
footer#contact .foot-bottom{max-width:728px;font-size:11px}
footer#contact .foot-bottom .tm{font-size:11px;line-height:1.5}
footer#contact a:focus-visible{outline:3px solid #176d85;outline-offset:3px;border-radius:3px}
@media(max-width:820px){
  footer#contact .foot-grid{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 28px}
  footer#contact .foot-brand{grid-column:1/-1}
  footer#contact .foot-brand-copy{max-width:340px}
  footer#contact .foot-locations{max-width:none;margin-top:44px}
  footer#contact .foot-legal,footer#contact .foot-bottom{max-width:none}
}
@media(max-width:480px){
  footer#contact .foot-grid{grid-template-columns:minmax(0,1fr)}
}
.mbar{border-color:#503b78}
.mbar>span:first-child{color:#d8d0eb}
.mbar>span:first-child b{color:#fff}
@media(max-width:700px){
  html{scroll-padding-bottom:calc(124px + env(safe-area-inset-bottom,0px))}
}
main .hero :is(a,button):focus-visible,main #practice .pb-shot:focus-visible,.tp-sample-dialog :is(button,a,input):focus-visible{outline:3px solid #176d85;outline-offset:3px}
main .btn-gold:hover,.wf-final .btn:hover{filter:brightness(.97)}

@media(max-width:920px){
  main .hero .wrap{grid-template-columns:minmax(0,1fr);gap:50px}
  main .hero .wrap>div:first-child{max-width:760px}
  main .ledger-stage{max-width:680px}
}
@media(max-width:700px){
  main .hero{min-height:0;padding:54px 0 68px}
  main .hero .wrap{gap:42px}
  main .hero h1{max-width:12ch;font-size:var(--type-hero)!important}
  main .ledger-stage{padding:14px}
  main section.block{padding-block:76px}
  .wf-flow-wrap{padding:23px 18px}
  .wf-doodle-card{min-height:300px}
  main #features .fx-head{padding-inline:24px}
  main .payroll .stub{border-width:6px}
  main #practice .pb-shot{padding:16px}
}
@media(max-width:560px){
  .wf-doodle-card{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;min-height:0}
  .wf-doodle-copy{grid-column:1;grid-row:1}
  .wf-doodle{grid-column:1;grid-row:2;justify-self:center}
  .wf-doodle-label{grid-column:1;grid-row:3}
}
@media(max-width:460px){
  main .hero{padding-top:38px}
  main .hero-ctas{align-items:flex-start;flex-direction:column;gap:17px}
  main .hero-cta{width:100%;justify-content:center}
  main .hero-facts{gap:13px 22px}
  main .ledger-body{padding:15px}
  .wf-doodle-card{padding:20px}
  .wf-doodle{width:120px;height:132px;padding:13px}
  .wf-doodle span{font-size:14px}
  main #portal .app-top{align-items:flex-start;flex-wrap:wrap}
}
@media(max-width:360px){
  .nav .nav-links .btn-gold{padding-inline:10px}
}
@media(max-width:900px){
  main #practice .pb-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  main #practice .pb-grid>div:first-child{grid-column:1;grid-row:1}
  main #practice .pb-grid>.pb-shot{grid-column:1;grid-row:2}
}
@media(max-width:920px){
  .wf-split{grid-template-columns:minmax(0,1fr)}
  .wf-split>div:first-child{grid-column:1;grid-row:1}
  .wf-split>.wf-doodle-card{grid-column:1;grid-row:2}
}

/* Shared dark treatment: explicit toggle and system preference stay equivalent. */
:is(:root[data-theme="dark"]) body{background:#19122f}
:is(:root[data-theme="dark"]) body:not(.sb-lock){--wf-section-ink:#e5f2f6;--wf-section-muted:#b5cbd3;--wf-section-link:#b7deff}
:is(:root[data-theme="dark"]) .nav,:is(:root[data-theme="dark"]) .mbar{background:rgba(36,23,68,.97);border-color:#4c3b68}
:is(:root[data-theme="dark"]) .nav .nav-links a,:is(:root[data-theme="dark"]) .nav .nav-trigger,:is(:root[data-theme="dark"]) .nav .tool{color:#dcebf0}
:is(:root[data-theme="dark"]) .nav .nav-links .btn-gold{color:#16384b}
:is(:root[data-theme="dark"]) .nav .tools,:is(:root[data-theme="dark"]) .nav .tool,:is(:root[data-theme="dark"]) .nav .btn-login{border-color:#756094}
:is(:root[data-theme="dark"]) .nav .logo img{filter:none}
:is(:root[data-theme="dark"]) footer#contact .logo img{filter:brightness(0) invert(1)}
:is(:root[data-theme="dark"]) .announcement,:is(:root[data-theme="dark"]) .wf-band{background:#422d65;color:#eee7fa;border-color:#4c3b68}
:is(:root[data-theme="dark"]) .wf-band b{color:#e5f2f6}
:is(:root[data-theme="dark"]) main .eyebrow{color:#8bd4d7!important}
:is(:root[data-theme="dark"]) main #start .eyebrow{color:#a8d9dc!important}
:is(:root[data-theme="dark"]) main .hero h1 em{color:#b7deff}
:is(:root[data-theme="dark"]) main .hero,:is(:root[data-theme="dark"]) main #how,:is(:root[data-theme="dark"]) main #practice,:is(:root[data-theme="dark"]) main #skills,:is(:root[data-theme="dark"]) main #pricing{background:#19122f}
:is(:root[data-theme="dark"]) main .hero .lede,:is(:root[data-theme="dark"]) main .hero-trust,:is(:root[data-theme="dark"]) main .hero-facts,:is(:root[data-theme="dark"]) main .sec-head p{color:#b5cbd3}
:is(:root[data-theme="dark"]) main .hero-play{color:#cbe9ef;border-color:#5a838f}
:is(:root[data-theme="dark"]) main .hero-facts b,:is(:root[data-theme="dark"]) main .hero h1,:is(:root[data-theme="dark"]) main .sec-head h2{color:#e5f2f6}
:is(:root[data-theme="dark"]) main #start,:is(:root[data-theme="dark"]) main #support,:is(:root[data-theme="dark"]) main #instructor,:is(:root[data-theme="dark"]) main #faq{background:#211a38}
:is(:root[data-theme="dark"]) main #features,:is(:root[data-theme="dark"]) main #portal,:is(:root[data-theme="dark"]) main #career,:is(:root[data-theme="dark"]) main #partners{background:#2b2145}
:is(:root[data-theme="dark"]) main #features .fx-head h2{color:#e5f2f6}
:is(:root[data-theme="dark"]) main #features .fx-card{background:#352b50;border-color:#574578}
:is(:root[data-theme="dark"]) main #features .fx-card h3,:is(:root[data-theme="dark"]) main #features .fx-card p{color:#e5f2f6}
:is(:root[data-theme="dark"]) main .ledger-stage .ledger,:is(:root[data-theme="dark"]) main .payroll .stub{--wf-ink:#16384b;--wf-plum:#16384b;--wf-muted:#4d6878;--wf-line:#c8e0e9;background:#f8fcfd;color:#183747}
:is(:root[data-theme="dark"]) .tp-learning-preview{--wf-ink:#16384b;--wf-plum:#16384b;--wf-muted:#4d6878;--wf-green:#287963;color:#16384b}
:is(:root[data-theme="dark"]) main #curriculum .rm-phase,:is(:root[data-theme="dark"]) main #curriculum .rm-sum,:is(:root[data-theme="dark"]) main #curriculum .dg-slot{--wf-ink:#16384b;--wf-plum:#16384b;--wf-muted:#4d6878;--wf-line:#c8e0e9;color:#16384b}
:is(:root[data-theme="dark"]) main #portal .app{border-color:#385966}
:is(:root[data-theme="dark"]) main #support .roles{background:#352b50;border-color:#574578}
:is(:root[data-theme="dark"]) main #start .wf-doodle-card{background:#352b50}
:is(:root[data-theme="dark"]) main #start .wf-doodle-card h3,:is(:root[data-theme="dark"]) main #start .wf-doodle-card p{color:#e5f2f6}
:is(:root[data-theme="dark"]) main #start .wf-doodle-label{color:#a8d9dc}
:is(:root[data-theme="dark"]) main #start .wf-doodle{--wf-plum:#16384b}
:is(:root[data-theme="dark"]) main #faq .faq details{background:#352b50}
:is(:root[data-theme="dark"]) .tp-case{background:#2b2145;color:#eee7fa}
:is(:root[data-theme="dark"]) .tp-case-head p,:is(:root[data-theme="dark"]) .tp-case-copy p{color:#c2d7dc}
:is(:root[data-theme="dark"]) .tp-case-end{background:#473361}
:is(:root[data-theme="dark"]) .tp-case-end p{color:#d2e2e8}
:is(:root[data-theme="dark"]) .tp-case-end .tp-case-kicker,:is(:root[data-theme="dark"]) .tp-case-disclaimer{color:#b9dce7}
:is(:root[data-theme="dark"]) .wf-final,:is(:root[data-theme="dark"]) footer#contact{background:#29203f;color:#eee7fa}
:is(:root[data-theme="dark"]) .wf-final h2,:is(:root[data-theme="dark"]) .wf-final p{color:#e0edf1}
:is(:root[data-theme="dark"]) footer#contact .foot-locations address{color:#b5cbd3}
:is(:root[data-theme="dark"]) footer#contact .foot-legal a{color:#f1eaff}
:is(:root[data-theme="dark"]) footer#contact .foot-legal a:hover{color:#fff}
:is(:root[data-theme="dark"]) footer#contact .foot-legal a:focus-visible{outline-color:#8bd4d7}
@media(prefers-color-scheme:dark){
  :root:not([data-theme="light"]) body{background:#19122f}
  :root:not([data-theme="light"]) body:not(.sb-lock){--wf-section-ink:#e5f2f6;--wf-section-muted:#b5cbd3;--wf-section-link:#b7deff}
  :root:not([data-theme="light"]) .nav,:root:not([data-theme="light"]) .mbar{background:rgba(36,23,68,.97);border-color:#4c3b68}
  :root:not([data-theme="light"]) .nav .nav-links a,:root:not([data-theme="light"]) .nav .nav-trigger,:root:not([data-theme="light"]) .nav .tool{color:#dcebf0}
  :root:not([data-theme="light"]) .nav .nav-links .btn-gold{color:#16384b}
  :root:not([data-theme="light"]) .nav .tools,:root:not([data-theme="light"]) .nav .tool,:root:not([data-theme="light"]) .nav .btn-login{border-color:#756094}
  :root:not([data-theme="light"]) .nav .logo img{filter:none}
  :root:not([data-theme="light"]) footer#contact .logo img{filter:brightness(0) invert(1)}
  :root:not([data-theme="light"]) .announcement,:root:not([data-theme="light"]) .wf-band{background:#422d65;color:#eee7fa;border-color:#4c3b68}
  :root:not([data-theme="light"]) .wf-band b{color:#e5f2f6}
  :root:not([data-theme="light"]) main .eyebrow{color:#8bd4d7!important}
  :root:not([data-theme="light"]) main #start .eyebrow{color:#a8d9dc!important}
  :root:not([data-theme="light"]) main .hero h1 em{color:#b7deff}
  :root:not([data-theme="light"]) main .hero,:root:not([data-theme="light"]) main #how,:root:not([data-theme="light"]) main #practice,:root:not([data-theme="light"]) main #skills,:root:not([data-theme="light"]) main #pricing{background:#19122f}
  :root:not([data-theme="light"]) main .hero .lede,:root:not([data-theme="light"]) main .hero-trust,:root:not([data-theme="light"]) main .hero-facts,:root:not([data-theme="light"]) main .sec-head p{color:#b5cbd3}
  :root:not([data-theme="light"]) main .hero-play{color:#cbe9ef;border-color:#5a838f}
  :root:not([data-theme="light"]) main .hero-facts b,:root:not([data-theme="light"]) main .hero h1,:root:not([data-theme="light"]) main .sec-head h2{color:#e5f2f6}
  :root:not([data-theme="light"]) main #start,:root:not([data-theme="light"]) main #support,:root:not([data-theme="light"]) main #instructor,:root:not([data-theme="light"]) main #faq{background:#211a38}
  :root:not([data-theme="light"]) main #features,:root:not([data-theme="light"]) main #portal,:root:not([data-theme="light"]) main #career,:root:not([data-theme="light"]) main #partners{background:#2b2145}
  :root:not([data-theme="light"]) main #features .fx-head h2{color:#e5f2f6}
  :root:not([data-theme="light"]) main #features .fx-card{background:#352b50;border-color:#574578}
  :root:not([data-theme="light"]) main #features .fx-card h3,:root:not([data-theme="light"]) main #features .fx-card p{color:#e5f2f6}
  :root:not([data-theme="light"]) main .ledger-stage .ledger,:root:not([data-theme="light"]) main .payroll .stub{--wf-ink:#16384b;--wf-plum:#16384b;--wf-muted:#4d6878;--wf-line:#c8e0e9;background:#f8fcfd;color:#183747}
  :root:not([data-theme="light"]) .tp-learning-preview{--wf-ink:#16384b;--wf-plum:#16384b;--wf-muted:#4d6878;--wf-green:#287963;color:#16384b}
  :root:not([data-theme="light"]) main #curriculum .rm-phase,:root:not([data-theme="light"]) main #curriculum .rm-sum,:root:not([data-theme="light"]) main #curriculum .dg-slot{--wf-ink:#16384b;--wf-plum:#16384b;--wf-muted:#4d6878;--wf-line:#c8e0e9;color:#16384b}
  :root:not([data-theme="light"]) main #portal .app{border-color:#385966}
  :root:not([data-theme="light"]) main #support .roles{background:#352b50;border-color:#574578}
  :root:not([data-theme="light"]) main #start .wf-doodle-card{background:#352b50}
  :root:not([data-theme="light"]) main #start .wf-doodle-card h3,:root:not([data-theme="light"]) main #start .wf-doodle-card p{color:#e5f2f6}
  :root:not([data-theme="light"]) main #start .wf-doodle-label{color:#a8d9dc}
  :root:not([data-theme="light"]) main #start .wf-doodle{--wf-plum:#16384b}
  :root:not([data-theme="light"]) main #faq .faq details{background:#352b50}
  :root:not([data-theme="light"]) .tp-case{background:#2b2145;color:#eee7fa}
  :root:not([data-theme="light"]) .tp-case-head p,:root:not([data-theme="light"]) .tp-case-copy p{color:#c2d7dc}
  :root:not([data-theme="light"]) .tp-case-end{background:#473361}
  :root:not([data-theme="light"]) .tp-case-end p{color:#d2e2e8}
  :root:not([data-theme="light"]) .tp-case-end .tp-case-kicker,:root:not([data-theme="light"]) .tp-case-disclaimer{color:#b9dce7}
  :root:not([data-theme="light"]) .wf-final,:root:not([data-theme="light"]) footer#contact{background:#29203f;color:#eee7fa}
  :root:not([data-theme="light"]) .wf-final h2,:root:not([data-theme="light"]) .wf-final p{color:#e0edf1}
  :root:not([data-theme="light"]) footer#contact .foot-locations address{color:#b5cbd3}
  :root:not([data-theme="light"]) footer#contact .foot-legal a{color:#f1eaff}
  :root:not([data-theme="light"]) footer#contact .foot-legal a:hover{color:#fff}
  :root:not([data-theme="light"]) footer#contact .foot-legal a:focus-visible{outline-color:#8bd4d7}
}

/* Live homepage hero — mobile reference treatment, with the production preview retained. */
main#top > .hero{
  --wf-plum:#2d194b;
  --wf-muted:#e6e0ef;
  --wf-blue:#b8dcff;
  --wf-green:#8ce0c7;
  position:relative;
  min-height:690px;
  overflow:hidden;
  padding:clamp(76px,8vw,116px) 0 clamp(84px,9vw,132px);
  background:#2e1b50;
  color:#fff;
}
main#top > .hero::before{
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:96px 96px;
  -webkit-mask-image:none;
  mask-image:none;
}
main#top > .hero .wrap{
  position:relative;
  z-index:1;
  grid-template-columns:minmax(0,1fr) minmax(0,.94fr);
  gap:clamp(44px,6vw,92px);
  align-items:center;
}
main#top > .hero .eyebrow{
  color:#b8dcff;
  font-size:12px;
  font-weight:600;
  letter-spacing:.14em;
}
main#top > .hero h1{
  max-width:11ch;
  margin:22px 0 28px;
  color:#fff;
  font-size:var(--type-hero)!important;
  font-weight:800;
  line-height:1.02;
  letter-spacing:-.055em;
}
main#top > .hero h1 em{
  display:inline-block;
  padding-bottom:20px;
  color:#b8dcff;
  font-weight:400;
  transform:rotate(-3deg);
}
main#top > .hero .lede{
  max-width:58ch;
  margin:0;
  color:#e6e0ef;
  font-size:var(--type-lead);
  line-height:1.72;
}
main#top > .hero .hero-ctas{
  align-items:center;
  gap:26px;
  margin-top:38px;
}
main#top > .hero .hero-cta{
  padding:16px 25px;
  border-radius:999px;
  background:#ffdc71;
  color:#2b194f;
  box-shadow:none;
  font-weight:700;
}
main#top > .hero .hero-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(12,7,24,.2);
}
main#top > .hero .hero-play{
  padding:0 0 3px;
  border:0;
  border-bottom:1px solid rgba(230,224,239,.7);
  border-radius:0;
  color:#e8e2f0;
  font-weight:700;
}
main#top > .hero .hero-trust{
  gap:8px 24px;
  margin-top:30px;
  color:#e6e0ef;
  font-size:13.5px;
}
main#top > .hero .hero-trust span::before{color:#8ce0c7}
main#top > .hero .hero-facts{color:#e6e0ef}
main#top > .hero .hero-facts b{color:#fff}

@media(max-width:920px){
  main#top > .hero .wrap{
    grid-template-columns:minmax(0,1fr);
    gap:50px;
  }
  main#top > .hero .wrap>div:first-child{max-width:760px}
  main#top > .hero .ledger-stage{max-width:680px}
}
@media(max-width:700px){
  main#top > .hero{
    min-height:0;
    padding:40px 0 68px;
  }
  main#top > .hero .wrap{
    gap:42px;
    padding-inline:clamp(24px,6.7vw,40px);
  }
  main#top > .hero h1{
    max-width:12ch;
    font-size:clamp(40px,11.1vw,66px)!important;
  }
  main#top > .hero .lede{max-width:95%}
}
@media(max-width:460px){
  main#top > .hero{padding-top:38px}
}

/* Warm, workbook-style opening inspired by the supplied homepage reference. */
main#top > .hero{
  background:#fffdf9;
  color:#29182f;
  padding:clamp(34px,4vw,56px) 0 clamp(56px,5vw,72px);
  overflow:visible;
}
main#top > .hero .wrap{
  align-items:start;
  grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);
  gap:clamp(42px,6.8vw,88px);
}
main#top > .hero .eyebrow{
  color:#3d68d8;
  font:500 11px/1.4 var(--mono);
  letter-spacing:.15em;
  text-transform:uppercase;
}
main#top > .hero h1{
  max-width:12ch;
  margin:14px 0 17px;
  color:#29182f;
  font:500 clamp(52px,5.2vw,64px)/1.01 var(--display);
  letter-spacing:-.075em;
}
main#top > .hero h1 em{
  display:inline-block;
  padding:0;
  color:#7650cf;
  font:400 1.02em/.9 'Kalam',cursive;
  letter-spacing:-.025em;
  transform:rotate(-3deg);
}
main#top > .hero .h1-anim .hw{animation:none!important}
main#top > .hero .lede{
  max-width:55ch;
  margin:0;
  color:#6f6873;
  font-size:17px;
  line-height:1.58;
}
main#top > .hero .hero-ctas{
  align-items:center;
  gap:20px;
  margin-top:22px;
}
main#top > .hero .hero-cta{
  padding:15px 21px;
  border-radius:11px;
  background:#f6c84c;
  color:#29182f;
  box-shadow:0 3px 0 #d99c26;
  font-weight:700;
}
main#top > .hero .hero-cta::after{display:none;animation:none}
main#top > .hero .hero-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 5px 0 #d99c26;
}
main#top > .hero .hero-play{
  padding:0 0 3px;
  border:0;
  border-bottom:1px solid #cdb8cd;
  border-radius:0;
  color:#4b244c;
  font-weight:600;
}
main#top > .hero .hero-trust{display:none}
main#top > .hero .hero-facts{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:14px 24px;
  max-width:none;
  margin-top:24px;
  color:#6f6873;
  font-size:12px;
  line-height:1.4;
}
main#top > .hero .hero-facts>div{
  min-width:88px;
  padding:0;
  border:0;
  background:none;
  backdrop-filter:none;
  animation:none;
}
main#top > .hero .hero-facts i{display:none}
main#top > .hero .hero-facts b{
  display:block;
  margin-bottom:2px;
  color:#4b244c;
  font-size:16px!important;
  line-height:1.25!important;
}
main#top > .hero .hero-note{
  display:inline-block;
  margin:14px 0 0 4px;
  border-bottom:2px solid #ed8a32;
  color:#ed8a32;
  font:400 16px/1.3 'Kalam',cursive;
  transform:rotate(-3deg);
}
main#top > .hero .ledger-stage{
  position:relative;
  isolation:auto;
  width:100%;
  max-width:600px;
  margin:30px 0 0;
  padding:0;
  overflow:visible;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
main#top > .hero .ledger-stage::before,
main#top > .hero .ledger-stage::after{content:none}
main#top > .hero .tp-learning-preview{
  width:100%;
  margin:0 0 14px;
  padding:12px;
  border:1px solid #eadfe6;
  border-radius:15px;
  background:#fff;
  color:#29182f;
  box-shadow:0 12px 32px rgba(40,19,80,.08);
  animation:none;
}
main#top > .hero .tp-learning-thumb::before{
  position:absolute;
  z-index:1;
  top:7px;
  left:8px;
  color:rgba(255,255,255,.86);
  content:"VIDEO LESSON";
  font:500 8px/1 var(--mono);
  letter-spacing:.08em;
}
main#top > .hero .tp-learning-thumb>span{z-index:2}
main#top > .hero .tp-learning-kicker{color:#716575}
main#top > .hero .tp-learning-info h3{color:#29182f}
main#top > .hero .tp-learning-info{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto auto;
  column-gap:10px;
  row-gap:4px;
}
main#top > .hero .tp-learning-kicker,
main#top > .hero .tp-learning-info h3{grid-column:1/-1}
main#top > .hero .tp-learning-steps{grid-column:1;align-self:center}
main#top > .hero .tp-sample-open{
  grid-column:2;
  align-self:center;
  margin:0;
  padding:0;
  border:0;
  background:none;
  color:#4b244c;
  box-shadow:none;
  font:700 12px/1.4 var(--body);
}
main#top > .hero .tp-sample-open:hover{text-decoration:underline}
main#top > .hero .ledger-stage .ledger{
  position:relative;
  overflow:visible;
  border:1px solid #eadfe6;
  border-radius:14px;
  background:#fff;
  color:#29182f;
  box-shadow:18px 20px 0 #f6eee5,0 24px 55px rgba(68,36,65,.12);
  transform:rotate(1.2deg);
  animation:none;
  --wf-ink:#29182f;
  --wf-plum:#4b244c;
  --wf-muted:#6f6873;
  --wf-line:#eadfe6;
}
main#top > .hero .ledger-stage:hover .ledger{transform:rotate(1.2deg)}
main#top > .hero .ledger-top{
  padding:13px 20px;
  border-bottom:1px dashed #dbcbd9;
  background:#fff;
  color:#857586;
  font-family:var(--mono);
}
main#top > .hero .ledger-top b{
  color:#857586;
  font:500 10px/1.3 var(--mono);
  letter-spacing:.06em;
}
main#top > .hero .ledger-top span{
  color:#857586;
  font:500 10px/1.3 var(--mono);
  letter-spacing:.04em;
}
main#top > .hero .ledger-body{padding:19px 23px 21px}
main#top > .hero .ledger-intro h3{
  margin:0;
  color:#29182f;
  font:700 22px/1.2 var(--display);
  letter-spacing:-.04em;
}
main#top > .hero .ledger-intro p{
  margin:12px 0 15px;
  color:#7650cf;
  font:400 16px/1.3 'Kalam',cursive;
  transform:rotate(-2deg);
  transform-origin:left center;
}
main#top > .hero .ledger-editor{margin:0 0 12px}
main#top > .hero .ledger-editor>summary{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#4b244c;
  cursor:pointer;
  font:600 11px/1.4 var(--body);
  list-style:none;
}
main#top > .hero .ledger-editor>summary::-webkit-details-marker{display:none}
main#top > .hero .ledger-editor>summary::before{
  content:"+";
  display:grid;
  width:15px;
  height:15px;
  place-items:center;
  border:1px solid #cdb8cd;
  border-radius:50%;
  font-size:13px;
  line-height:1;
}
main#top > .hero .ledger-editor[open]>summary::before{content:"−"}
main#top > .hero .ledger-editor>summary:focus-visible{
  outline:3px solid #176d85;
  outline-offset:3px;
}
main#top > .hero .ledger-editor-fields{padding-top:10px}
main#top > .hero .ledger .field label{color:#716575}
main#top > .hero .ledger .field input,
main#top > .hero .ledger .field select{
  border-color:#eadfe6;
  border-radius:7px;
  color:#29182f;
  font-size:13px;
}
main#top > .hero .ledger .je{border-color:#4b244c}
main#top > .hero .ledger .je th{border-color:#4b244c;color:#857586}
main#top > .hero .ledger .je td{border-color:#e5d9e3}
main#top > .hero .ledger .je tfoot td{border-color:#4b244c}
main#top > .hero .ledger .balanced{color:#4c9d62}
main#top > .hero .ledger-note{
  margin-top:7px;
  color:#6f6873;
  font-size:11px;
  line-height:1.45;
}
main#top > .hero .hero-ledger-stamp{
  position:absolute;
  z-index:4;
  top:104px;
  right:-19px;
  display:grid;
  width:58px;
  height:58px;
  place-items:center;
  border:2px solid #2da9a4;
  border-radius:50%;
  background:#fff;
  color:#238d88;
  font:700 11px/1.05 'Kalam',cursive;
  text-align:center;
  transform:rotate(13deg);
}
@media(min-width:921px) and (max-width:1100px){
  main#top > .hero .tp-learning-info{
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto auto auto auto;
  }
  main#top > .hero .tp-learning-steps,
  main#top > .hero .tp-sample-open{grid-column:1}
  main#top > .hero .tp-sample-open{justify-self:start}
}
@media(max-width:920px){
  main#top > .hero .wrap{
    grid-template-columns:minmax(0,1fr);
    gap:42px;
  }
  main#top > .hero .ledger-stage{
    max-width:600px;
    margin:0 auto;
  }
}
@media(max-width:700px){
  main#top > .hero{
    padding:42px 0 68px;
    overflow:hidden;
  }
  main#top > .hero .wrap{
    gap:36px;
    padding-inline:clamp(22px,6vw,38px);
  }
  main#top > .hero h1{
    max-width:12ch;
    font-size:clamp(42px,10.8vw,62px)!important;
  }
  main#top > .hero .lede{max-width:58ch}
  main#top > .hero .hero-ledger-stamp{right:3px}
}
@media(max-width:460px){
  main#top > .hero{padding-top:38px}
  main#top > .hero h1{
    max-width:13ch;
    font-size:clamp(38px,10vw,42px)!important;
  }
  main#top > .hero .hero-ctas{gap:17px}
  main#top > .hero .hero-facts{gap:12px 18px}
  main#top > .hero .hero-facts>div{min-width:82px}
  main#top > .hero .hero-facts b{font-size:14px!important}
  main#top > .hero .hero-note{font-size:15px}
  main#top > .hero .tp-learning-preview{
    grid-template-columns:88px minmax(0,1fr);
    gap:10px;
    padding:10px;
  }
  main#top > .hero .tp-learning-info{display:block}
  main#top > .hero .tp-learning-steps{margin-top:8px}
  main#top > .hero .tp-sample-open{margin-top:7px}
  main#top > .hero .tp-learning-info h3{font-size:13px}
  main#top > .hero .ledger-stage .ledger{transform:none}
  main#top > .hero .ledger-stage:hover .ledger{transform:none}
  main#top > .hero .ledger-body{padding:16px}
  main#top > .hero .ledger-top{padding:12px 14px}
  main#top > .hero .hero-ledger-stamp{
    top:100px;
    right:-4px;
    width:50px;
    height:50px;
    font-size:10px;
  }
}
@media(prefers-reduced-motion:reduce){
  main#top > .hero .hero-cta,
  main#top > .hero .hero-play,
  main#top > .hero .tp-sample-open,
  main#top > .hero .ledger{transition:none!important}
}

/* Keep the lesson and journal surfaces light and readable in automatic dark mode. */
:is(:root[data-theme="dark"]) main#top > .hero{
  background:#19122f;
  color:#e5f2f6;
}
:is(:root[data-theme="dark"]) main#top > .hero h1{color:#e5f2f6}
:is(:root[data-theme="dark"]) main#top > .hero h1 em{color:#b7deff}
:is(:root[data-theme="dark"]) main#top > .hero .lede,
:is(:root[data-theme="dark"]) main#top > .hero .hero-facts{color:#b5cbd3}
:is(:root[data-theme="dark"]) main#top > .hero .hero-facts b{color:#e5f2f6}
:is(:root[data-theme="dark"]) main#top > .hero .hero-play{
  color:#cbe9ef;
  border-color:#5a838f;
}
:is(:root[data-theme="dark"]) main#top > .hero .hero-note{color:#f2a45d;border-color:#f2a45d}
@media(prefers-color-scheme:dark){
  :root:not([data-theme="light"]) main#top > .hero{
    background:#19122f;
    color:#e5f2f6;
  }
  :root:not([data-theme="light"]) main#top > .hero h1{color:#e5f2f6}
  :root:not([data-theme="light"]) main#top > .hero h1 em{color:#b7deff}
  :root:not([data-theme="light"]) main#top > .hero .lede,
  :root:not([data-theme="light"]) main#top > .hero .hero-facts{color:#b5cbd3}
  :root:not([data-theme="light"]) main#top > .hero .hero-facts b{color:#e5f2f6}
  :root:not([data-theme="light"]) main#top > .hero .hero-play{
    color:#cbe9ef;
    border-color:#5a838f;
  }
  :root:not([data-theme="light"]) main#top > .hero .hero-note{
    color:#f2a45d;
    border-color:#f2a45d;
  }
}

@media(forced-colors:active){
  .tp-modal-back{
    background:Canvas;
  }
  .tp-modal{
    border:2px solid CanvasText;
    background:Canvas;
    color:CanvasText;
    box-shadow:none;
  }
  .tp-modal h3,
  .tp-modal p,
  .tp-modal label,
  .tp-modal legend,
  .tp-modal .tp-acct b,
  .tp-modal .tp-acct span,
  .tp-modal .tp-auth-footer{
    color:CanvasText;
  }
  .tp-modal input,
  .tp-modal select{
    border:1px solid FieldText;
    background:Field;
    color:FieldText;
  }
  .tp-modal input::placeholder{
    color:GrayText;
    opacity:1;
  }
  .tp-modal .tp-interests,
  .tp-modal .tp-acct div,
  .tp-modal .tp-auth-footer{
    border-color:CanvasText;
  }
  .tp-modal .tp-err:not(:empty),
  .tp-modal [role="alert"]:not(:empty),
  .tp-modal [role="status"]:not(:empty){
    border-inline-start:3px solid MarkText;
    background:Mark;
    color:MarkText;
    padding:6px 8px;
  }
  .tp-modal .tp-link,
  .tp-modal .tp-auth-help-link,
  .tp-modal .tp-auth-switch,
  .tp-modal .tp-admin-link{
    color:LinkText;
  }
  .tp-modal .tp-x{
    border:1px solid ButtonText;
    background:ButtonFace;
    color:ButtonText;
  }
  .tp-modal .btn{
    border:1px solid ButtonText;
    background:ButtonFace;
    color:ButtonText;
    box-shadow:none;
  }
  .tp-modal .btn[disabled]{
    opacity:1;
  }
  .tp-modal .btn-navy{
    border-color:Highlight;
    background:Highlight;
    color:HighlightText;
  }
  .tp-modal :is(button,a,input,select):focus-visible{
    outline:3px solid Highlight;
    outline-offset:3px;
  }
  .mbar{
    border-top:2px solid CanvasText;
    background:Canvas;
    color:CanvasText;
    box-shadow:none;
  }
  .mbar>span,
  .mbar>span b{
    color:CanvasText!important;
  }
  .mbar a{
    border:2px solid ButtonText!important;
    background:ButtonFace!important;
    color:ButtonText!important;
    box-shadow:none!important;
  }
  .mbar a:focus-visible{
    outline:3px solid Highlight;
    outline-offset:3px;
  }
  main#top #how .wf-flow-wrap{
    border:2px solid CanvasText;
    background:Canvas;
    color:CanvasText;
    box-shadow:none;
  }
  main#top #how .wf-flow-wrap:before{
    display:none;
  }
  main#top #how .wf-flow-title,
  main#top #how .wf-flow-note,
  main#top #how .wf-connector,
  main#top #how .wf-branch-arrow,
  main#top #how .wf-match,
  main#top #how .wf-match i,
  main#top #how .wf-reconcile,
  main#top #how .wf-reconcile-label{
    color:CanvasText;
  }
  main#top #how .wf-flow-title i{
    background:CanvasText;
  }
  main#top #how .wf-node,
  main#top #how .wf-subnode{
    border:2px solid CanvasText!important;
    border-radius:6px!important;
    background:Canvas;
    color:CanvasText;
    box-shadow:none;
  }
  main#top #how .wf-node:before,
  main#top #how .wf-node:after,
  main#top #how .wf-subnode:before,
  main#top #how .wf-subnode:after{
    display:none;
  }
  main#top #how .wf-node small,
  main#top #how .wf-node b,
  main#top #how .wf-node span,
  main#top #how .wf-subnode b,
  main#top #how .wf-subnode span{
    color:CanvasText;
  }
  main#top #how .wf-connector>i,
  main#top #how .wf-branch-arrow>i,
  main#top #how .wf-reconcile>i{
    background:CanvasText;
  }
  main#top #how .wf-connector>i:after,
  main#top #how .wf-branch-arrow>i:after,
  main#top #how .wf-reconcile>i:after{
    border-color:CanvasText;
  }
  main#top #how .wf-flow-note{
    border-color:CanvasText;
  }
  .tp-sample-dialog{
    border-color:CanvasText;
    background:Canvas;
    color:CanvasText;
  }
  .tp-sample-dialog .tp-sample-kicker,
  .tp-sample-dialog .tp-sample-header h2,
  .tp-sample-dialog .tp-sample-header>div>p:last-child,
  .tp-sample-dialog .tp-sample-caption,
  .tp-sample-dialog .tp-sample-toolbar>span,
  .tp-sample-diagram .wf-flow-title,
  .tp-sample-diagram .wf-flow-note,
  .tp-sample-diagram .wf-connector,
  .tp-sample-diagram .wf-branch-arrow,
  .tp-sample-diagram .wf-match,
  .tp-sample-diagram .wf-reconcile{
    color:CanvasText;
  }
  .tp-sample-diagram.wf-flow-wrap{
    border-color:CanvasText;
    background:Canvas;
  }
  .tp-sample-diagram .wf-node,
  .tp-sample-diagram .wf-subnode{
    border:2px solid CanvasText!important;
    border-radius:6px!important;
    background:Canvas!important;
    color:CanvasText!important;
  }
  .tp-sample-diagram .wf-node:before,
  .tp-sample-diagram .wf-node:after,
  .tp-sample-diagram .wf-subnode:before,
  .tp-sample-diagram .wf-subnode:after{
    display:none;
  }
  .tp-sample-diagram .wf-node small,
  .tp-sample-diagram .wf-node b,
  .tp-sample-diagram .wf-node span,
  .tp-sample-diagram .wf-subnode b,
  .tp-sample-diagram .wf-subnode span{
    color:CanvasText;
  }
  .tp-sample-diagram .wf-connector>i,
  .tp-sample-diagram .wf-branch-arrow>i,
  .tp-sample-diagram .wf-reconcile>i{
    background:CanvasText;
  }
  .tp-sample-diagram .wf-flow-note{
    border-color:CanvasText;
  }
  .tp-sample-toolbar{
    border-color:CanvasText;
    background:Canvas;
    box-shadow:none;
  }
  .tp-sample-dialog .tp-sample-close,
  .tp-sample-dialog .tp-sample-control{
    border:1px solid ButtonText;
    background:ButtonFace;
    color:ButtonText;
  }
  .tp-sample-dialog .tp-sample-control.primary{
    border-color:Highlight;
    background:Highlight;
    color:HighlightText;
  }
  .tp-sample-open:focus-visible,
  .tp-sample-dialog :is(.tp-sample-close,.tp-sample-control):focus-visible{
    outline:3px solid Highlight;
    outline-offset:3px;
  }
  main #pricing{
    background:Canvas;
    color:CanvasText;
  }
  main #pricing .cmp-wrap{
    border:2px solid CanvasText;
    background:Canvas;
    color:CanvasText;
  }
  main #pricing .cmp :is(th,td){
    border:1px solid CanvasText;
    background:Canvas;
    color:CanvasText;
  }
  main #pricing .cmp thead th{
    border-bottom-width:2px;
  }
  main #pricing .cmp .col-pop{
    background:Highlight;
    color:HighlightText;
  }
  main #pricing .cmp .col-pop small{
    color:HighlightText!important;
  }
  main #pricing .price-head :is(.eyebrow,h2,p),
  main #pricing .price-head .hl{
    color:CanvasText;
    -webkit-text-fill-color:CanvasText;
  }
  main #pricing .price-head .hl{
    background:none;
  }
  main #pricing .ticket{
    border:2px solid CanvasText;
    background:Canvas;
    color:CanvasText;
    box-shadow:none;
  }
  main #pricing .ticket.pop::before,
  main #pricing .ticket.pop::after{
    display:none;
  }
  main #pricing .ticket :is(.hook,.pname,.for,.amt,.amt small,.was,.perday,.term,.inc,ul,li,.micro,.launch,.launch b){
    color:CanvasText;
  }
  main #pricing .ticket .pname i{
    border:1px solid CanvasText;
    background:CanvasText!important;
  }
  main #pricing .ticket :is(.badge,.save){
    border:1px solid CanvasText;
    background:Canvas;
    color:CanvasText;
    box-shadow:none;
  }
  main #pricing .ticket .launch{
    border:1px solid CanvasText;
    background:Canvas;
  }
  main #pricing .ticket hr{
    border-top:2px dashed CanvasText;
  }
  main #pricing .ticket li::before{
    color:CanvasText;
  }
  main #pricing .ticket .was{
    text-decoration:line-through;
  }
  main #pricing .ticket .was::after{
    display:none;
  }
  main #pricing .ticket :is(.btn-plan,.upsell){
    border:2px solid ButtonText;
    background:ButtonFace;
    color:ButtonText;
    box-shadow:none;
  }
  main #pricing :is(a,button):focus-visible{
    outline:3px solid Highlight;
    outline-offset:3px;
  }
}

/* Keep the supplied QuickBooks flow readable at desktop and touch widths. */
.wf-flow-wrap{
  overflow:hidden;
  border:1px solid #e8e0e9;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 48px rgba(40,19,80,.06);
  padding:clamp(12px,2vw,24px);
}
.wf-flow-wrap::before{display:none}
.wf-flow-scroll{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  border-radius:10px;
  background:#fffdf8;
  scrollbar-gutter:stable;
}
.wf-flow-scroll:focus-visible{
  outline:3px solid #287b88;
  outline-offset:3px;
}
.wf-flow-svg{
  display:block;
  width:100%;
  min-width:900px;
  height:auto;
  background:#fffdf8;
}
.tp-learning-thumb-art{
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#fffdf8;
}
.tp-learning-thumb-art .wf-flow-svg,
.wf-flow-svg-thumbnail{
  width:100%;
  min-width:0;
  height:100%;
}
.tp-sample-diagram.wf-flow-wrap{
  padding:clamp(12px,2vw,24px);
  border:1px solid #e8e0e9;
  border-radius:14px;
  background:#fff;
  box-shadow:none;
}
@media(prefers-reduced-motion:reduce){
  .wf-flow-scroll{scroll-behavior:auto}
}
.wf-flow-title{display:none}
@media(max-width:700px){
  .wf-flow-title{
    display:block;
    margin:0 4px 12px;
    color:#281350;
    font:700 clamp(18px,5vw,23px)/1.25 Kalam,cursive;
    letter-spacing:0;
  }
  .wf-flow-scroll .wf-flow-svg [data-flow-header],
  .wf-flow-scroll .wf-flow-svg [data-flow-subtitle]{display:none}
}
