/* v244: a page-level, reversible desktop redesign inspired by the illustrated mockups.
   The existing original logo, app state and click handlers remain the source of truth. */
@media(min-width:1024px){
 html.vc-web-studio{--v244-green:#075746;--v244-deep:#073e33;--v244-mint:#e7f4e9;--v244-cream:#faf8f2;--v244-gold:#dfa94e;--v244-ink:#1a3931;--v244-border:rgba(21,79,58,.11);--v244-shadow:0 6px 12px rgba(20,72,52,.028),0 20px 43px rgba(20,72,52,.075);}
 html.vc-web-studio.vc-vd .vd-wrap{max-width:1520px}
 html.vc-web-studio.vc-vd .vc244-eyebrow{display:inline-flex;align-items:center;gap:8px;color:#23765c;text-transform:uppercase;font-size:11px;font-weight:850;letter-spacing:.11em}
 html.vc-web-studio.vc-vd .vc244-hero-art{position:absolute;pointer-events:none;bottom:0;right:0;max-width:73%;width:870px;opacity:.59;height:auto;z-index:0}
 html.vc-web-studio.vc-vd .vc244-home-hero{position:relative;isolation:isolate;min-height:340px;display:grid!important;grid-template-columns:minmax(0,1.55fr) minmax(260px,.82fr);gap:30px;align-items:center;padding:40px 43px!important;border:1px solid rgba(255,255,255,.16);background:radial-gradient(circle at 83% 25%,rgba(98,182,147,.34),transparent 36%),linear-gradient(110deg,#064638 5%,#0b6e56 78%,#18816b)!important;border-radius:29px!important;box-shadow:0 17px 43px rgba(13,78,56,.2)!important;overflow:hidden}
 html.vc-web-studio.vc-vd .vc244-home-hero>*:not(.vc244-hero-art){position:relative;z-index:1}
 html.vc-web-studio.vc-vd .vc244-home-hero::after{display:none}
 html.vc-web-studio.vc-vd .vc244-home-hero h1{color:#fff8e9!important;font:650 clamp(31px,3vw,47px)/1.13 'Fraunces',Georgia,serif!important;max-width:660px;letter-spacing:-.032em!important;text-shadow:0 2px 13px rgba(0,38,24,.15)}
 html.vc-web-studio.vc-vd .vc244-home-hero p{color:#e5f4eb!important;font-size:15px!important;max-width:620px;line-height:1.7}
 html.vc-web-studio.vc-vd .vc244-home-hero .vc244-home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
 html.vc-web-studio.vc-vd .vc244-home-hero .vc244-home-stats>div{background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.19)!important;border-radius:17px!important;backdrop-filter:blur(5px);box-shadow:none!important;min-height:84px;display:flex;flex-direction:column;justify-content:center;padding:12px 14px}
 html.vc-web-studio.vc-vd .vc244-home-hero .vc244-home-stats>div>div:first-child{font-size:23px;font-family:'Fraunces',Georgia,serif}
 html.vc-web-studio.vc-vd .vc244-home-hero .vc244-home-stats>div>div:last-child{color:#daf0dc!important;font-size:11px}
 html.vc-web-studio.vc-vd .vc244-home-session{align-self:stretch;justify-content:space-between;display:flex;flex-direction:column;min-width:0;padding:25px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:23px!important;background:rgba(13,82,63,.76)!important;backdrop-filter:blur(12px);box-shadow:0 14px 32px rgba(1,47,35,.13)!important}
 html.vc-web-studio.vc-vd .vc244-home-session .text-xl{font-family:'Fraunces',Georgia,serif;font-size:25px;line-height:1.2;color:white}
 html.vc-web-studio.vc-vd .vc244-home-session #vdHomeGo{background:#39daac!important;color:#063e30!important;border-radius:15px!important;min-height:48px;box-shadow:0 8px 22px rgba(1,43,30,.18)}
 html.vc-web-studio.vc-vd .vc244-home-session #vdHomeGo:hover{background:#72e8bf!important;transform:translateY(-1px)}
 html.vc-web-studio.vc-vd .vc244-journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:3px}
 html.vc-web-studio.vc-vd .vc244-journey button{display:flex;align-items:center;gap:15px;text-align:left;padding:19px 20px;min-height:91px;border:1px solid #e1e9dd!important;border-radius:20px;background:linear-gradient(120deg,#fff,#f7fbf6)!important;box-shadow:0 7px 22px rgba(18,72,51,.053);color:#1d4739}
 html.vc-web-studio.vc-vd .vc244-journey button:hover{border-color:#94c4a7!important;background:#eef8ef!important;transform:translateY(-2px);box-shadow:0 12px 27px rgba(23,83,61,.09)}
 html.vc-web-studio.vc-vd .vc244-journey .step-icon{display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:17px;background:#e5f5eb;font-size:24px}
 html.vc-web-studio.vc-vd .vc244-journey button:nth-child(2) .step-icon{background:#fff1d7}
 html.vc-web-studio.vc-vd .vc244-journey button:nth-child(3) .step-icon{background:#e3f1ed}
 html.vc-web-studio.vc-vd .vc244-journey b{display:block;font-size:15px;letter-spacing:-.015em;margin-bottom:3px}
 html.vc-web-studio.vc-vd .vc244-journey small{display:block;color:#698077;font-size:11px;line-height:1.45}
 html.vc-web-studio.vc-vd .vc244-home-content{gap:25px}
 html.vc-web-studio.vc-vd .vc244-home-content #vdHomePath>*{border-radius:20px}
 html.vc-web-studio.vc-vd .vc244-home-content h2{font-family:'Fraunces',Georgia,serif;font-size:27px!important}
 html.vc-web-studio.vc-vd .vc244-home-content>div:last-child>div.bg-white:first-child{border:1px solid #e5e9df!important;border-radius:22px!important;box-shadow:var(--v244-shadow)!important}
 /* Practice: distinct activity families, larger targets and less fragmented list UI. */
 html.vc-web-studio.vc-vd .vc244-practice-hero{position:relative;isolation:isolate;display:grid!important;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);align-items:center;min-height:260px;gap:35px;padding:34px 38px!important;overflow:hidden;border-radius:28px!important;background:linear-gradient(112deg,#fff5df 0%,#fffdf8 55%,#e6f5e9 100%)!important;border:1px solid #e9e7d8!important;box-shadow:var(--v244-shadow)}
 html.vc-web-studio.vc-vd .vc244-practice-hero .vc244-hero-art{opacity:.48;width:640px;right:90px;bottom:0}
 html.vc-web-studio.vc-vd .vc244-practice-hero>*:not(.vc244-hero-art){position:relative;z-index:1}
 html.vc-web-studio.vc-vd .vc244-practice-hero h1{font:650 39px/1.12 'Fraunces',Georgia,serif!important}
 html.vc-web-studio.vc-vd .vc244-practice-hero p{max-width:640px;font-size:14px;line-height:1.75;color:#4f6c5d}
 html.vc-web-studio.vc-vd .vc244-practice-goal{padding:23px!important;border:1px solid #e8ebdf!important;border-radius:22px!important;min-height:175px;box-shadow:0 10px 23px rgba(35,73,55,.075)!important;background:rgba(255,255,255,.92)!important}
 html.vc-web-studio.vc-vd .vc244-practice-goal .bg-amber-400{background:#edc065!important;color:#54370e!important;border-radius:12px}
 html.vc-web-studio.vc-vd .vc244-practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
 html.vc-web-studio.vc-vd .vc244-practice-heading{margin:6px 0 12px;display:flex;align-items:end;justify-content:space-between;gap:15px}
 html.vc-web-studio.vc-vd .vc244-practice-heading h2{font:650 31px/1.18 'Fraunces',Georgia,serif!important;margin-top:5px}
 html.vc-web-studio.vc-vd .vc244-practice-heading p{font-size:13px;color:#718078;margin-top:5px}
 html.vc-web-studio.vc-vd .vc244-mixed{width:100%;text-align:left;display:flex;gap:17px;align-items:center;padding:21px 25px!important;min-height:102px;border-radius:23px!important;color:white!important;background:linear-gradient(105deg,#08654f,#064839)!important;border:1px solid #07624d!important;box-shadow:0 12px 25px rgba(8,86,63,.16)!important}
 html.vc-web-studio.vc-vd .vc244-mixed:hover{background:linear-gradient(105deg,#0b785e,#075341)!important;transform:translateY(-1px)}
 html.vc-web-studio.vc-vd .vc244-mixed .icon{display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.13);font-size:29px;width:57px;height:57px;flex:none}
 html.vc-web-studio.vc-vd .vc244-mixed b{display:block;font:650 23px/1.12 'Fraunces',Georgia,serif;color:white}
 html.vc-web-studio.vc-vd .vc244-mixed small{display:block;font-size:12px;margin-top:4px;color:#d2f4e3}
 html.vc-web-studio.vc-vd .vc244-mixed .action{margin-left:auto;white-space:nowrap;padding:11px 16px;border-radius:13px;background:#e3bd74;color:#174333;font-weight:800;font-size:12px}
 html.vc-web-studio.vc-vd .vc244-family{background:white;min-height:402px;border:1px solid #e4e9df;border-radius:25px;overflow:hidden;box-shadow:var(--v244-shadow)}
 html.vc-web-studio.vc-vd .vc244-family-head{padding:22px 23px 19px;display:flex;gap:13px;align-items:center;background:#f3f9f4;border-bottom:1px solid #e5ede2}
 html.vc-web-studio.vc-vd .vc244-family[data-vd-group="grammar"] .vc244-family-head{background:#fff7e8}
 html.vc-web-studio.vc-vd .vc244-family[data-vd-group="sounds"] .vc244-family-head{background:#edf7f6}
 html.vc-web-studio.vc-vd .vc244-family-head .icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:white;font-size:24px;box-shadow:0 3px 10px rgba(20,80,54,.04)}
 html.vc-web-studio.vc-vd .vc244-family-head h3{font-size:17px;line-height:1.2;font-weight:800;color:#214839}
 html.vc-web-studio.vc-vd .vc244-family-head p{font-size:11px;color:#70837a;margin-top:5px}
 html.vc-web-studio.vc-vd .vc244-family-list{padding:11px 13px}
 html.vc-web-studio.vc-vd .vc244-pr-row{width:100%;display:flex;align-items:center;gap:12px;padding:13px 11px!important;min-height:81px;border-radius:15px!important;text-align:left;color:#233e33!important}
 html.vc-web-studio.vc-vd .vc244-pr-row:hover{background:#eef7ef!important}
 html.vc-web-studio.vc-vd .vc244-pr-row .mode-icon{display:grid;place-items:center;flex:none;width:45px;height:45px;border-radius:14px;background:#f0f5ee;font-size:21px}
 html.vc-web-studio.vc-vd .vc244-family[data-vd-group="grammar"] .vc244-pr-row .mode-icon{background:#fff3df}
 html.vc-web-studio.vc-vd .vc244-pr-row .mode-title{font-weight:800;font-size:13px;line-height:1.3;display:block}
 html.vc-web-studio.vc-vd .vc244-pr-row .mode-desc{display:block;color:#78837d;font-size:11px;line-height:1.42;margin-top:4px}
 html.vc-web-studio.vc-vd .vc244-pr-row .go{color:#63957b;font-size:22px;margin-left:auto}
 html.vc-web-studio.vc-vd .vc244-practice-more{border-radius:22px;background:#f9fbf8;border:1px solid #e3e9df;padding:21px 23px}
 html.vc-web-studio.vc-vd .vc244-practice-more h3{font:650 21px/1.25 'Fraunces',Georgia,serif;margin-bottom:13px}
 html.vc-web-studio.vc-vd .vc244-practice-more .more-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
 html.vc-web-studio.vc-vd .vc244-practice-more .vc244-pr-row{background:white;border:1px solid #e4e9df!important;border-radius:15px}
 html.vc-web-studio.vc-vd .vc244-practice-more .mode-desc{display:none}
 /* Flashcards: immersive study stage, legible hierarchy and helpful right rail. */
 html.vc-web-studio.vc-vd .vc244-learn-head{display:flex;justify-content:space-between;align-items:center;gap:22px;border-radius:25px;min-height:125px;padding:23px 30px;border:1px solid #e6e9de;background:linear-gradient(115deg,#fffaf0,#fff 58%,#e8f5eb);box-shadow:var(--v244-shadow)}
 html.vc-web-studio.vc-vd .vc244-learn-head h1{font:650 32px/1.15 'Fraunces',Georgia,serif!important;margin:5px 0}
 html.vc-web-studio.vc-vd .vc244-learn-head p{color:#6e8176;font-size:12px}
 html.vc-web-studio.vc-vd .vc244-learn-badge{display:flex;align-items:center;gap:13px;padding:13px 17px;background:white;border:1px solid #e2e9df;border-radius:17px;box-shadow:0 5px 15px rgba(23,83,58,.04)}
 html.vc-web-studio.vc-vd .vc244-learn-badge .icon{font-size:23px}
 html.vc-web-studio.vc-vd .vc244-learn-badge b{display:block;font:650 22px/1 'Fraunces',Georgia,serif;color:#0d694f}
 html.vc-web-studio.vc-vd .vc244-learn-badge small{font-size:10px;display:block;color:#7a8d7e;margin-top:4px}
 html.vc-web-studio.vc-vd #vdLearnBar{border-radius:19px!important;padding:16px 21px!important}
 html.vc-web-studio.vc-vd #vdLearnMain{gap:16px}
 html.vc-web-studio.vc-vd .vc244-learn-stage{padding:22px 23px;border-radius:26px;background:linear-gradient(150deg,#eff6eb 0%,#fff9ef 59%,#f5faf4 100%);border:1px solid #e0e9db;box-shadow:var(--v244-shadow)}
 html.vc-web-studio.vc-vd .vc244-stage-label{display:flex;align-items:center;justify-content:space-between;margin:0 0 17px;gap:10px}
 html.vc-web-studio.vc-vd .vc244-stage-label h2{font:650 23px/1.2 'Fraunces',Georgia,serif}
 html.vc-web-studio.vc-vd .vc244-stage-label small{font-size:11px;color:#647f6c}
 html.vc-web-studio.vc-vd .vc244-learn-stage #learnBrowseArea{margin:0!important}
 html.vc-web-studio.vc-vd .vc244-learn-stage #flashcard.card{border:1px solid #e5eadf!important;box-shadow:0 9px 30px rgba(25,85,54,.09)!important;border-radius:24px!important;min-height:200px}
 html.vc-web-studio.vc-vd .vc244-learn-stage #flashcard .vn{color:#0d4735;font-weight:780;line-height:1.2}
 html.vc-web-studio.vc-vd .vc244-learn-stage .card-wrap{margin-top:15px}
 html.vc-web-studio.vc-vd .vc244-learn-stage #showAnswerBtn,html.vc-web-studio.vc-vd .vc244-learn-stage #showBtn{border-radius:14px}
 html.vc-web-studio.vc-vd .vc244-learn-rail>div.bg-white{background:linear-gradient(120deg,#fff,#f7fbf7)!important}
 html.vc-web-studio.vc-vd .vc244-study-tip{padding:20px 22px;border-radius:21px;background:linear-gradient(115deg,#0b6451,#085040);color:#fff;box-shadow:0 10px 25px rgba(9,85,60,.12)}
 html.vc-web-studio.vc-vd .vc244-study-tip h3{color:#fff!important;font:650 21px/1.3 'Fraunces',Georgia,serif}
 html.vc-web-studio.vc-vd .vc244-study-tip p{color:#d9f0e3;font-size:12px;line-height:1.65;margin-top:5px}
 html.vc-web-studio.vc-vd .vc244-study-tip button{margin-top:14px;padding:10px 15px;border-radius:12px;background:#f4d99c!important;color:#20513d!important;font-weight:800;font-size:12px}
 /* Settings: editorial illustration, three-column workspace, distinct help desk. */
 html.vc-web-studio.vc-vd .vc244-settings-hero{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;min-height:194px;padding:30px 36px;border:1px solid #e9e4d6;border-radius:27px;background:linear-gradient(100deg,#fff7e6,#fbfaf5 65%,#eaf6ef);box-shadow:var(--v244-shadow)}
 html.vc-web-studio.vc-vd .vc244-settings-hero>.content{position:relative;z-index:1;max-width:58%}
 html.vc-web-studio.vc-vd .vc244-settings-hero h1{font:650 42px/1.13 'Fraunces',Georgia,serif!important;margin:8px 0;color:#113f32}
 html.vc-web-studio.vc-vd .vc244-settings-hero p{color:#5a7267;font-size:14px;line-height:1.6}
 html.vc-web-studio.vc-vd .vc244-settings-hero img{position:absolute;right:0;bottom:-22px;width:53%;max-width:710px;opacity:.9}
 html.vc-web-studio.vc-vd .vc244-settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:22px;align-items:start}
 html.vc-web-studio.vc-vd .vc244-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:19px;align-items:start}
 html.vc-web-studio.vc-vd .vc244-settings-grid>div{display:flex;flex-direction:column;gap:19px;min-width:0}
 html.vc-web-studio.vc-vd .vc244-settings-grid :is(#settingsTopCard,#stGroupLearning,#stGroupApp,#stGroupData){border-radius:22px!important;border-color:#e2e8de;box-shadow:var(--v244-shadow)!important}
 html.vc-web-studio.vc-vd .vc244-help-rail{position:sticky;top:80px;display:flex;flex-direction:column;gap:16px}
 html.vc-web-studio.vc-vd .vc244-help-card{padding:24px;border:1px solid #e4e7dc;background:#fff;border-radius:22px;box-shadow:var(--v244-shadow)}
 html.vc-web-studio.vc-vd .vc244-help-card .help-illustration{display:grid;place-items:center;background:#fff1d7;width:47px;height:47px;border-radius:17px;font-size:26px}
 html.vc-web-studio.vc-vd .vc244-help-card h2{font:650 25px/1.2 'Fraunces',Georgia,serif;margin-top:14px}
 html.vc-web-studio.vc-vd .vc244-help-card p{font-size:12px;line-height:1.65;color:#7b857d;margin:9px 0 16px}
 html.vc-web-studio.vc-vd .vc244-help-card a,html.vc-web-studio.vc-vd .vc244-help-card button{display:flex;align-items:center;gap:9px;width:100%;padding:12px 10px;border-radius:12px;border:1px solid #e5eadf!important;margin-top:7px;background:#f9fbf7;color:#205747;font-size:12px;font-weight:760;text-align:left;text-decoration:none;cursor:pointer}
 html.vc-web-studio.vc-vd .vc244-help-card a:hover,html.vc-web-studio.vc-vd .vc244-help-card button:hover{background:#eaf5ed;border-color:#99c8ab!important}
 html.vc-web-studio.vc-vd .vc244-help-card.decorative{position:relative;min-height:250px;overflow:hidden;background:linear-gradient(130deg,#eaf5e7,#fff7e8)}
 html.vc-web-studio.vc-vd .vc244-help-card.decorative img{position:absolute;left:-10px;bottom:0;width:115%;opacity:.82}
 html.vc-web-studio.vc-vd .vc244-help-card.decorative p{position:relative;z-index:1;max-width:175px;color:#23624c;font:italic 650 19px/1.3 'Fraunces',Georgia,serif}
 /* Teacher hero and controls feel like a cohesive learning product rather than admin boxes. */
 html.vc-web-studio.vc-vd #teachPortal .tp243-hero{padding:31px 35px!important;min-height:210px;background:linear-gradient(115deg,#fff8eb,#fffdfa 50%,#e8f4e8)!important}
 html.vc-web-studio.vc-vd #teachPortal .tp243-hero::after{display:none}
 html.vc-web-studio.vc-vd #teachPortal .tp243-hero .vc244-hero-art{width:600px;max-width:58%;opacity:.65}
 html.vc-web-studio.vc-vd #teachPortal .tpw-actions{gap:16px}
 html.vc-web-studio.vc-vd #teachPortal .tpw-card{min-height:160px;padding:23px;border-radius:22px}
 html.vc-web-studio.vc-vd #teachPortal .tpw-card .tpw-title{font:650 21px/1.17 'Fraunces',Georgia,serif}
 html.vc-web-studio.vc-vd #teachPortal .tp243-stats>div{padding:21px!important;min-height:142px}
 html.vc-web-studio.vc-vd #teachPortal .tp243-jump{gap:11px}
}
@media(min-width:1024px) and (max-width:1480px){
 html.vc-web-studio.vc-vd .vc244-settings-layout{grid-template-columns:minmax(0,1fr)}
 html.vc-web-studio.vc-vd .vc244-help-rail{position:static;flex-direction:row}
 html.vc-web-studio.vc-vd .vc244-help-rail>*{flex:1}
 html.vc-web-studio.vc-vd .vc244-practice-grid{gap:12px}
}
@media(min-width:1024px) and (max-width:1279px){
 html.vc-web-studio.vc-vd .vc244-home-hero{padding:27px!important;gap:17px}
 html.vc-web-studio.vc-vd .vc244-home-hero h1{font-size:30px!important}
 html.vc-web-studio.vc-vd .vc244-home-hero .vc244-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 html.vc-web-studio.vc-vd .vc244-home-hero .vc244-home-stats>div{min-height:63px}
 html.vc-web-studio.vc-vd .vc244-practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 html.vc-web-studio.vc-vd .vc244-practice-grid>[data-vd-group="sounds"]{grid-column:1/-1;min-height:0}
 html.vc-web-studio.vc-vd .vc244-practice-hero{grid-template-columns:1fr;gap:16px;padding:25px!important}
 html.vc-web-studio.vc-vd .vc244-practice-goal{max-width:100%;min-height:0}
 html.vc-web-studio.vc-vd .vc244-practice-more .more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 html.vc-web-studio.vc-vd .vc244-settings-grid{gap:12px}
}
@media(prefers-reduced-motion:reduce){html.vc-web-studio.vc-vd .vc244-journey button,html.vc-web-studio.vc-vd .vc244-mixed,html.vc-web-studio.vc-vd .vc244-help-card button{transition:none!important}}

@media(min-width:1024px){html.vc-web-studio.vc-vd .vc244-original-settings-head{display:none!important}}
