/* englishcoaching.au — one stylesheet for the whole site */

@font-face{font-family:"Atkinson";src:url(/assets/fonts/atkinson-hyperlegible-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Atkinson";src:url(/assets/fonts/atkinson-hyperlegible-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Atkinson";src:url(/assets/fonts/atkinson-hyperlegible-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Bricolage";src:url(/assets/fonts/bricolage-grotesque-latin-wght-normal.woff2) format("woff2-variations");font-weight:200 800;font-display:swap}

:root{
  --gum:#1E4A3D;        /* eucalyptus, brand */
  --gum-2:#2C6753;
  --leaf:#E8F0EA;       /* pale gum leaf, quiet surfaces */
  --wattle:#F4B63E;     /* wattle gold, highlighter */
  --wattle-soft:#FCE7B4;
  --ink:#16211D;
  --muted:#4E5C56;
  --line:#CFDBD3;
  --paper:#FFFFFF;
  --link:#195C91;       /* harbour blue */
  --ok:#1F7A46; --bad:#B3261E;
  --radius:10px;
  --display:"Bricolage","Segoe UI",system-ui,sans-serif;
  --body:"Atkinson",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.65 var(--body)}
img,svg{max-width:100%}
a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--wattle);outline-offset:2px;border-radius:3px}
.wrap{max-width:1280px;margin:0 auto;padding:0 24px}
@media (max-width:600px){.wrap{padding:0 16px}}
.skip{position:absolute;left:-999px;top:0;background:var(--wattle);color:var(--ink);padding:8px 12px;z-index:10}
.skip:focus{left:8px;top:8px}
h1,h2,h3{font-family:var(--display);line-height:1.15;letter-spacing:-.01em;color:var(--gum)}
h1{font-size:clamp(2rem,4.5vw,2.9rem);font-weight:750;margin:.2em 0 .35em}
h2{font-size:clamp(1.4rem,2.6vw,1.75rem);font-weight:700;margin:1.8em 0 .5em}
h3{font-size:1.2rem;font-weight:700;margin:1.5em 0 .4em}
mark{background:linear-gradient(transparent 38%,var(--wattle-soft) 38%,var(--wattle-soft) 92%,transparent 92%);color:inherit;padding:0 .1em}

/* header */
.site-header{border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:20}
.header-row{display:flex;align-items:center;gap:12px;min-height:68px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--gum);flex:none}
.brand-mark{width:38px;height:38px;flex:none}
.brand-word{font:720 1.22rem/1 var(--display);letter-spacing:-.02em}
.brand-tld{color:#B07A0E}
.brand-light{color:#fff}.brand-light .brand-tld{color:var(--wattle)}
.site-nav{margin-left:auto}
.nav-list{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.nav-item{position:relative}
.nav-top{display:flex;align-items:center;gap:6px;padding:10px 12px;border-radius:8px;color:var(--ink);text-decoration:none;font:700 .98rem var(--body);background:none;border:0;cursor:pointer}
.nav-top:hover,.nav-item.open>.nav-top{background:var(--leaf);color:var(--gum)}
.nav-top[aria-current],.nav-top[data-active]{color:var(--gum);box-shadow:inset 0 -3px 0 var(--wattle)}
.caret{width:11px;height:8px;transition:transform .15s}
.nav-item.open .caret{transform:rotate(180deg)}
.menu{display:none;position:absolute;left:0;top:calc(100% + 6px);width:340px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px -18px rgba(22,33,29,.35);padding:8px}
.nav-item.open .menu{display:block}
/* invisible bridge over the gap, so moving the mouse down to the menu doesn't close it */
.menu::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.nav-item:nth-last-child(-n+2) .menu{left:auto;right:0}
.menu ul{list-style:none;margin:0;padding:0}
.menu a{display:block;padding:10px 12px;border-radius:10px;text-decoration:none;color:var(--ink)}
.menu a:hover,.menu a[aria-current]{background:var(--leaf)}
.menu strong{display:block;color:var(--gum);font-family:var(--display);font-size:1.02rem}
.menu span{display:block;color:var(--muted);font-size:.9rem;line-height:1.35}
.header-actions{display:flex;align-items:center;gap:8px;margin-left:8px}
.icon-btn{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;border:0;background:var(--leaf);color:var(--gum);cursor:pointer;font-size:1.1rem}
.icon-btn svg{width:22px;height:22px}
.icon-btn:hover{background:var(--wattle-soft)}
.header-cta{padding:10px 18px;white-space:nowrap}
.nav-toggle{display:none}
.nav-top{white-space:nowrap}
@media (min-width:921px) and (max-width:1520px){.nav-top{padding:10px 7px;font-size:.92rem;gap:4px}.header-row{gap:8px}.brand-word{font-size:1.08rem}.brand-mark{width:32px;height:32px}.header-cta{padding:9px 12px;font-size:.9rem}}
@media (min-width:921px) and (max-width:1040px){.brand-word{display:none}}
@media (max-width:1080px){
  .header-cta{display:none}
}
@media (max-width:920px){
  .nav-toggle{display:grid}
  .header-actions{margin-left:auto}
  .site-nav{display:none;position:fixed;left:0;right:0;top:68px;bottom:0;background:#fff;overflow-y:auto;padding:8px 16px 96px;border-top:1px solid var(--line)}
  .site-nav.open{display:block}
  .nav-list{flex-direction:column;gap:0}
  .nav-item{border-bottom:1px solid var(--leaf)}
  .nav-top{width:100%;justify-content:space-between;padding:16px 8px;font-size:1.08rem}
  .nav-top[aria-current],.nav-top[data-active]{box-shadow:none}
  .menu{position:static;width:auto;box-shadow:none;border:0;padding:0 0 10px;border-radius:0}
  .menu a{padding:10px 8px}
}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* search */
.search-panel{position:sticky;top:68px;z-index:19;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 30px -24px rgba(22,33,29,.4);padding:14px 0}
.search-form{display:flex;gap:8px}
.search-form input{font-size:1.1rem;padding:12px 14px}
.search-results{list-style:none;margin:8px 0 0;padding:0;max-height:60vh;overflow:auto}
.search-results a{display:block;padding:10px 8px;border-radius:8px;text-decoration:none;color:var(--ink)}
.search-results a:hover,.search-results a:focus{background:var(--leaf)}
.search-results strong{color:var(--gum);font-family:var(--display)}
.search-results small{display:block;color:var(--muted)}
.search-results .sec{display:inline-block;font-size:.78rem;background:var(--wattle-soft);border-radius:999px;padding:0 8px;margin-left:6px;color:#6b4a00;font-weight:700}

/* breadcrumbs */
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 10px;font-size:.92rem;color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--line)}
.crumbs a{color:var(--muted)}

/* page layout */
.page-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;padding-bottom:64px}
@media (min-width:1000px){.page-grid{grid-template-columns:minmax(0,1fr) 300px}.page-wide{grid-template-columns:minmax(0,1fr)}}
.prose{max-width:72ch}
.page-wide .prose{max-width:none}
.page-head{padding-top:8px}
.lede{font-size:1.2rem;color:var(--muted);margin:.2em 0 .6em;max-width:60ch}
.meta{font-size:.9rem;color:var(--muted);margin:0 0 1.2em}
.kicker{margin:0;font-weight:700}
.prose p,.prose li{max-width:72ch}
.prose ul,.prose ol{padding-left:1.3em}
.prose li{margin:.3em 0}
.prose table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.98rem}
.table-scroll{overflow-x:auto}
.prose th,.prose td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.prose th{background:var(--leaf);color:var(--gum);font-family:var(--display);font-weight:700}
.prose blockquote{margin:1.2em 0;padding:4px 18px;border-left:4px solid var(--wattle);background:#FFFBF0}
.side-sticky{position:sticky;top:84px;display:grid;gap:20px}
.side-box{border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}
.side-box h2{font-size:1.05rem;margin:0 0 8px}
.side-box ul{list-style:none;margin:0;padding:0}
.side-box li{padding:6px 0;border-top:1px solid var(--leaf)}
.side-box li:first-child{border-top:0}
.related{margin-top:2.5em;padding:18px 20px;background:var(--leaf);border-radius:var(--radius)}
.related h2{margin-top:0;font-size:1.2rem}
.related ul{margin:0}

/* notices */
.notice{border:1px solid var(--line);border-left:5px solid var(--gum);background:#F7FAF8;padding:12px 16px;border-radius:6px;margin:1.2em 0;font-size:.97rem}
.notice p{margin:.2em 0}
.notice-legal{border-left-color:var(--wattle);background:#FFFBF0}
.aff-note{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0}
.tip{background:var(--leaf);padding:12px 16px;border-radius:8px}
.private-note{display:flex;gap:8px;align-items:center;color:var(--gum);font-size:.93rem;font-weight:700}

/* ads */
.ad{margin:28px 0;text-align:center}
.ad-label{display:block;font-size:.75rem;color:var(--muted);margin-bottom:4px}
.ad-placeholder{border:2px dashed var(--line);border-radius:8px;color:var(--muted);font-size:.85rem;padding:28px 10px;background:repeating-linear-gradient(45deg,#fafcfb,#fafcfb 8px,#f2f6f3 8px,#f2f6f3 16px)}
.ad-sidebar.ad-placeholder{min-height:250px;display:grid;place-items:center;margin:0}

/* buttons, chips */
.btn{display:inline-block;background:var(--gum);color:#fff;font:700 1rem var(--body);padding:12px 20px;border-radius:999px;text-decoration:none;border:0;cursor:pointer}
.btn:hover{background:var(--gum-2)}
.btn-quiet{background:transparent;color:var(--gum);border:2px solid var(--gum);padding:9px 16px}
.btn-quiet:hover{background:var(--leaf)}
.btn-gold{background:var(--wattle);color:var(--ink)}
.btn-gold:hover{background:#e9a823}
button:disabled{opacity:.5;cursor:not-allowed}
.chip-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0}
.chip{display:inline-block;padding:6px 14px;border-radius:999px;background:var(--leaf);color:var(--gum);text-decoration:none;font-weight:700}
.chip:hover{background:var(--wattle-soft)}
.say{font:700 .85rem var(--body);background:var(--wattle-soft);color:var(--ink);border:0;border-radius:999px;padding:4px 12px;cursor:pointer;vertical-align:middle}
.say-sm{font-size:.78rem;padding:2px 10px}

/* hub lists: a guide's task list rather than a card grid */
.task-list{list-style:none;padding:0;margin:1em 0;border-top:1px solid var(--line)}
.task-list li{margin:0;max-width:none;border-bottom:1px solid var(--line)}
.task-list a{display:grid;grid-template-columns:40px 1fr;gap:4px 14px;padding:16px 4px;text-decoration:none;color:var(--ink)}
.task-list a:hover{background:#F7FAF8}
.task-list svg{width:28px;height:28px;color:var(--gum);grid-row:span 2;margin-top:2px}
.task-list strong{font-family:var(--display);font-size:1.12rem;color:var(--gum)}
.task-list span{color:var(--muted);font-size:.97rem}

/* partner boxes */
.partners{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:1.2em 0}
.partner{border:1px solid var(--line);border-radius:var(--radius);padding:16px}
.partner h3{margin:0 0 6px}
.partner p{font-size:.95rem;color:var(--muted)}

/* slang */
.word-card{border:2px solid var(--gum);border-radius:14px;padding:20px 22px;margin:1em 0 1.4em}
.word-card-word{font:750 2.2rem/1.1 var(--display);color:var(--gum);margin:0;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.word-card-pos{color:var(--muted);margin:.4em 0;font-style:italic}
.word-card-meaning{font-size:1.25rem;margin:.4em 0 0}
.examples li{margin:.6em 0}
.az{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:1em 0}
.az a{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:var(--leaf);text-decoration:none;font-weight:700;color:var(--gum)}
.slang-group{margin-top:1.6em}
.slang-group h2{border-bottom:2px solid var(--wattle);padding-bottom:4px;display:inline-block}
.slang-index{list-style:none;padding:0;columns:2 220px;column-gap:28px}
.slang-index li{break-inside:avoid;margin:0 0 10px}
.slang-index a{font-weight:700}
.slang-index span{display:block;color:var(--muted);font-size:.93rem}

/* tools & forms */
.tool{border:1px solid var(--line);border-radius:14px;padding:22px;margin:1.4em 0;background:#fff}
.tool h2{margin-top:0}
.field{display:grid;gap:6px;margin:0 0 14px}
.field label,.legend{font-weight:700}
.hint{font-size:.9rem;color:var(--muted)}
input[type=number],input[type=date],input[type=text],select,textarea{font:inherit;color:var(--ink);border:2px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;width:100%}
input:focus,select:focus,textarea:focus{border-color:var(--gum);outline:none;box-shadow:0 0 0 3px var(--wattle-soft)}
textarea{min-height:220px;line-height:1.6;resize:vertical;scroll-margin-bottom:120px}
textarea.autogrow{overflow:hidden}
.grid-4{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.seg{display:inline-flex;border:2px solid var(--gum);border-radius:999px;overflow:hidden;margin-bottom:14px}
.seg button{font:700 .95rem var(--body);background:#fff;color:var(--gum);border:0;padding:8px 16px;cursor:pointer}
.seg button[aria-pressed=true]{background:var(--gum);color:#fff}
.result{margin-top:16px;padding:16px 18px;border-radius:10px;background:var(--leaf)}
.result:empty{display:none}
.big-num{font:800 2.6rem/1 var(--display);color:var(--gum)}
.status{display:inline-block;font-weight:700;padding:2px 10px;border-radius:999px;font-size:.88rem}
.status.ok{background:#DDF1E4;color:var(--ok)}
.status.no{background:#FBE4E2;color:var(--bad)}
.status.warn{background:var(--wattle-soft);color:#7A5200}
.counter-bar{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;margin:10px 0}
.flag{background:#FBE4E2;border-radius:3px}

/* quiz & practice */
.q{border-top:1px solid var(--line);padding:18px 0}
.q:first-of-type{border-top:0}
.q-prompt{font-weight:700;margin:0 0 10px}
.opts{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.opts label{display:flex;gap:10px;align-items:flex-start;border:2px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer}
.opts label:hover{border-color:var(--gum-2)}
.opts input{margin-top:5px;accent-color:var(--gum)}
.opts label.correct{border-color:var(--ok);background:#EEF8F1}
.opts label.wrong{border-color:var(--bad);background:#FDF0EF}
.explain{margin:10px 0 0;font-size:.97rem;color:var(--muted)}
.passage{background:#F7FAF8;border-radius:10px;padding:14px 18px;margin:0 0 14px}
.blank-select{width:auto;padding:4px 8px;display:inline-block;border-width:2px}
.reorder{list-style:none;padding:0;display:grid;gap:8px}
.reorder li{display:flex;gap:10px;align-items:center;border:2px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff;max-width:none}
.reorder .moves{display:flex;flex-direction:column;gap:4px;flex:none}
.reorder .moves button{font:700 .8rem var(--body);border:1px solid var(--line);background:var(--leaf);border-radius:6px;padding:2px 8px;cursor:pointer}
.timer{font:800 2rem/1 var(--display);color:var(--gum);font-variant-numeric:tabular-nums}
.phase{font-weight:700;color:var(--muted)}
.rec-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--bad);margin-right:6px;animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:.3}}
@media (prefers-reduced-motion:reduce){.rec-dot{animation:none}}
.score-table td:first-child{font-weight:700}
.chart-figure{margin:1em 0;border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}
.chart-figure figcaption{font-size:.9rem;color:var(--muted);margin-top:6px}

/* home */
.hero{background:var(--gum);color:#fff;padding:56px 0 64px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-80px;bottom:-120px;width:420px;height:420px;background:url(/assets/img/leaf.svg) no-repeat center/contain;opacity:.16;pointer-events:none}
.hero h1{color:#fff;font-size:clamp(2.2rem,6vw,3.8rem);max-width:16ch;font-weight:780;letter-spacing:-.025em}
.hero p{font-size:1.2rem;max-width:52ch;color:#E3EEE8}
.goals{list-style:none;padding:0;margin:28px 0 0;display:flex;flex-wrap:wrap;gap:10px;position:relative;z-index:1}
.goals a{display:block;background:#fff;color:var(--gum);text-decoration:none;font-weight:700;padding:12px 18px;border-radius:999px;font-size:1.02rem}
.goals a:hover{background:var(--wattle)}
.home-sec{padding:56px 0 8px}
.home-sec>h2:first-child,.home-sec .wrap>h2:first-child{margin-top:0}
.home-split{display:grid;gap:36px}
@media (min-width:900px){.home-split{grid-template-columns:1.25fr 1fr;align-items:start}}
.wotd{border:2px solid var(--gum);border-radius:16px;padding:22px 24px;background:#fff}
.wotd small{display:block;font-weight:700;color:var(--muted)}
.wotd .w{font:780 2.4rem/1.1 var(--display);color:var(--gum);margin:6px 0}
.wotd .m{font-size:1.15rem}
.tools-row{display:grid;gap:0;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));border-top:1px solid var(--line);margin-top:10px}
.tools-row a{display:block;padding:18px 16px 18px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.tools-row strong{display:block;font:700 1.12rem var(--display);color:var(--gum)}
.tools-row span{color:var(--muted);font-size:.96rem}
.trust{background:var(--leaf);margin-top:56px;padding:36px 0}
.trust ul{display:grid;gap:14px 32px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));list-style:none;padding:0;margin:0}
.trust li{display:flex;gap:10px}
.trust svg{width:22px;height:22px;color:var(--gum);flex:none;margin-top:3px}

/* footer */
.site-footer{background:var(--gum);color:#D9E6DF;padding:48px 0 28px;margin-top:40px;font-size:.95rem}
.site-footer a{color:#fff}
.footer-cols{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.footer-brand{grid-column:1/-1}
@media (min-width:1000px){.footer-cols{grid-template-columns:repeat(var(--fc,5),minmax(0,1fr));gap:28px 22px}.footer-brand{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:10px 28px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.14)}.footer-brand p{margin:0;max-width:52ch}.footer-brand .f-wotd{margin:0 0 0 auto}}
.site-footer h2{color:#fff;font-size:1rem;margin:0 0 10px}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin:6px 0}
.sister{font-size:.9rem}
.legal-strip{border-top:1px solid rgba(255,255,255,.2);margin-top:32px;padding-top:18px;font-size:.86rem;color:#C5D6CD;max-width:none}
.copyright{font-size:.85rem;color:#A9C0B4}
.notfound{padding:40px 20px 80px}

@media print{.site-header,.site-footer,.ad,.side,.crumbs,.nav-toggle{display:none!important}body{font-size:12pt}}
.brand-light .brand-mark{background:#fff;border-radius:10px;padding:3px;width:40px;height:40px}
.prose .chip-list,.prose .task-list,.prose .az,.prose .slang-index,.prose .opts,.prose .reorder{padding-left:0}
@media (max-width:999px){.side .ad{display:none}}

/* ---------- v2 layout ---------- */
.page-hero{background:linear-gradient(180deg,var(--leaf) 0%,#F3F7F4 100%);border-bottom:1px solid var(--line);padding:28px 0 30px;margin-bottom:36px;position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;right:-60px;top:-40px;width:260px;height:260px;background:url(/assets/img/leaf.svg) no-repeat center/contain;opacity:.12;pointer-events:none}
.page-hero h1{margin:.1em 0 .25em;max-width:24ch}
.page-hero .lede{color:var(--muted);margin:0 0 .4em;max-width:62ch}
.page-hero .meta{margin:.6em 0 0}
.page-hero-dark{background:var(--gum)}
.page-hero-dark h1,.page-hero-dark .lede,.page-hero-dark .meta,.page-hero-dark .crumbs a,.page-hero-dark .crumbs{color:#fff}
.hero-links{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.btn-light{background:#fff;color:var(--gum);border:2px solid var(--gum)}
.btn-light:hover{background:var(--leaf)}
.page-grid{grid-template-columns:minmax(0,1fr)}
@media (min-width:1000px){.page-grid{grid-template-columns:minmax(0,1fr) 320px;gap:56px}}
.prose{max-width:76ch}
.side-section h2 a{color:var(--gum);text-decoration:none}
.side-section a[aria-current]{font-weight:700;color:var(--ink);text-decoration:none;border-left:3px solid var(--wattle);padding-left:8px;margin-left:-11px}
.link-grid{list-style:none;padding:0!important;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.link-grid li{margin:0;max-width:none}
.link-grid a{display:block;height:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;text-decoration:none;font-weight:700;color:var(--gum);background:#fff}
.link-grid a:hover{border-color:var(--gum);background:#F7FAF8}
.children{margin-top:2.4em}
.pager{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:2.4em 0 0}
.pager a{display:block;padding:14px 16px;border:1px solid var(--line);border-radius:12px;text-decoration:none}
.pager a:hover{border-color:var(--gum);background:#F7FAF8}
.pager span{display:block;font-size:.85rem;color:var(--muted)}
.pager strong{color:var(--gum);font-family:var(--display)}
.pager-next{text-align:right;grid-column:2}
.faq{margin-top:2.4em}
.faq details{border:1px solid var(--line);border-radius:10px;padding:0 16px;margin:10px 0;background:#fff}
.faq summary{cursor:pointer;font-weight:700;padding:14px 0;color:var(--gum);list-style-position:outside}
.faq details[open]{background:#F7FAF8}
.faq details>div{padding-bottom:8px}

/* highlighted cards: tests, features */
.test-cards{list-style:none;padding:0!important;margin:1.2em 0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.test-cards li{margin:0;max-width:none}
.test-cards a{display:flex;flex-direction:column;gap:6px;height:100%;padding:18px 18px 16px;border-radius:14px;border:2px solid var(--line);background:#fff;text-decoration:none;color:var(--ink);position:relative}
.test-cards a:hover{border-color:var(--gum);box-shadow:0 12px 26px -18px rgba(22,33,29,.5)}
.test-cards strong{font:760 1.3rem/1.15 var(--display);color:var(--gum)}
.test-cards span{color:var(--muted);font-size:.96rem}
.test-cards em{font-style:normal;margin-top:auto;padding-top:8px;font-weight:700;color:var(--link)}
.badge{position:absolute;top:-11px;right:14px;background:var(--wattle);color:var(--ink);font:700 .76rem var(--body);padding:3px 10px;border-radius:999px}
.feature{border:2px solid var(--wattle);background:#FFFBF0;border-radius:14px;padding:18px 20px;margin:1.4em 0}
.feature h2,.feature h3{margin-top:0}

/* home v2 */
.band{padding:64px 0}
.band-leaf{background:var(--leaf)}
.band-gum{background:var(--gum);color:#E3EEE8}
.band-gum h2{color:#fff}
.band h2:first-child{margin-top:0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:8px}
.section-head p{margin:0;color:var(--muted);max-width:60ch}
.hero-grid{display:grid;gap:32px;align-items:center}
@media (min-width:980px){.hero-grid{grid-template-columns:1.3fr 1fr}}
.hero-card{background:#fff;color:var(--ink);border-radius:18px;padding:22px 24px;box-shadow:0 30px 60px -30px rgba(0,0,0,.5);position:relative;z-index:1}
.hero-card h2{margin:0 0 6px;font-size:1.25rem}
.hero-card ol{margin:0;padding-left:1.2em}
.hero-card li{margin:8px 0}

/* mobile bottom bar */
.bottom-bar{display:none}
@media (max-width:920px){
  body{padding-bottom:68px}
  .bottom-bar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:18;background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 20px -14px rgba(22,33,29,.4);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  .bottom-bar a,.bottom-bar button{display:flex;flex-direction:column;align-items:center;gap:2px;font:700 .78rem var(--body);color:var(--muted);text-decoration:none;background:none;border:0;padding:4px;cursor:pointer}
  .bottom-bar svg{width:24px;height:24px}
  .bottom-bar [aria-current]{color:var(--gum)}
}
@media print{.bottom-bar,.page-hero::after{display:none!important}}
.hero-search{display:flex;gap:8px;margin:22px 0 4px;max-width:620px;position:relative;z-index:1}
.hero-search input{border:0;font-size:1.08rem;padding:14px 16px}
.hero-search .btn{border-radius:10px}
.hero p{max-width:56ch}
.band-gum .home-split{align-items:center}
.band-gum p{color:#E3EEE8}
.hero-search input{flex:1;min-width:0;width:auto}
@media (max-width:1080px){.header-actions .header-cta{display:none}}
@media (max-width:700px){.prose table{display:block;overflow-x:auto;white-space:normal}}
.search-form input{flex:1;min-width:0;width:auto}
/* practice v2 */
.word-box{display:flex;flex-wrap:wrap;gap:6px;padding:10px;border:2px dashed var(--gum-2);border-radius:10px;background:#F7FAF8}
.word-box span{background:#fff;border:1px solid var(--line);border-radius:6px;padding:2px 10px;font-weight:700}
.gap-in{display:inline-block;width:9em;padding:3px 8px;border-width:2px;margin:2px 0}
.hiw{line-height:2.1}
.hw{font:inherit;background:none;border:0;padding:1px 2px;border-radius:4px;cursor:pointer;color:inherit}
.hw:hover{background:var(--leaf)}
.hw.on{background:var(--wattle)}
.hw.should{outline:2px solid var(--ok)}
.hw.wrongpick{background:#FBE4E2;text-decoration:line-through}
.model{background:#F7FAF8;border-left:4px solid var(--gum);padding:10px 14px;border-radius:6px;margin-top:10px}
.model p{margin:.3em 0}
.mini-rec{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0}
.mini-rec audio{width:100%;max-width:420px}
.sec-timer{position:sticky;top:76px;z-index:3;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 12px;display:flex;gap:12px;align-items:center;margin-bottom:10px}
.timer-out{font:800 1.2rem var(--display);color:var(--gum)}
.write-in{min-height:180px}
.jump{display:flex;flex-wrap:wrap;gap:8px;margin:1em 0}
.jump a{background:var(--leaf);border-radius:999px;padding:6px 14px;font-weight:700;text-decoration:none;color:var(--gum)}
.q-read .passage p{max-width:none}
[hidden]{display:none!important}
input.gap-in{display:inline-block;width:9em;padding:3px 8px;margin:2px 2px}
.hw{padding:1px 0}

/* =================== v3: bold look =================== */
:root{
  --c-pte:#1E7A5A; --c-ielts:#1F5FA8; --c-oet:#D9573B; --c-toefl:#6B4FBB; --c-cam:#0E8A8C; --c-celpip:#C98512;
  --deep:#0F2E26; --shadow:0 18px 40px -22px rgba(15,46,38,.45); --shadow-lg:0 30px 60px -28px rgba(15,46,38,.6);
}
.btn{box-shadow:0 6px 16px -10px rgba(15,46,38,.6);transition:transform .12s,box-shadow .12s,background .12s}
.btn:hover{transform:translateY(-1px)}
.btn-lg{padding:15px 26px;font-size:1.06rem}
.btn-gold{background:linear-gradient(180deg,#FFC94F,#F2AE2A);color:#1b1404}
.btn-gold:hover{background:linear-gradient(180deg,#FFD268,#EFA51B)}
.btn-ghost{background:rgba(255,255,255,.1);color:#fff;border:2px solid rgba(255,255,255,.55);box-shadow:none}
.btn-ghost:hover{background:rgba(255,255,255,.2)}
@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn:hover{transform:none}}

/* hero */
.hero-v3{background:
  radial-gradient(900px 500px at 85% 20%,rgba(244,182,62,.22),transparent 60%),
  radial-gradient(700px 500px at 0% 100%,rgba(31,95,168,.35),transparent 60%),
  linear-gradient(135deg,#0F2E26 0%,#1E4A3D 55%,#215C4B 100%);
  padding:64px 0 88px}
.hero-v3::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.09) 1.2px,transparent 1.2px);background-size:22px 22px;mask-image:linear-gradient(90deg,transparent,#000 60%);pointer-events:none}
.hero-v3::after{opacity:.1}
.hero-flag{display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;padding:6px 14px;border-radius:999px;font-weight:700;font-size:.92rem;margin:0 0 18px}
.hero-v3 h1{font-size:clamp(2.4rem,5.6vw,4.1rem);line-height:1.02;max-width:15ch;letter-spacing:-.03em;margin:0 0 18px}
.hero-sub{font-size:1.22rem;color:#DDEBE4;max-width:50ch}
.hero-v3 .hero-search{background:#fff;border-radius:14px;padding:6px;align-items:center;box-shadow:var(--shadow-lg);max-width:600px}
.hero-v3 .hero-search input{border:0;box-shadow:none;padding:12px 8px}
.hs-icon{width:22px;height:22px;color:var(--muted);margin-left:10px;flex:none}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.hero-copy{position:relative;z-index:1}

/* floating preview cards */
.hero-visual{position:relative;min-height:440px;z-index:1}
.fcard{position:absolute;background:#fff;color:var(--ink);border-radius:18px;padding:18px 20px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:6px;animation:rise .8s cubic-bezier(.2,.8,.2,1) both}
.fc-label{font-size:.82rem;font-weight:700;color:var(--muted)}
.fc-foot{font-size:.82rem;color:var(--muted);display:flex;align-items:center}
.fc-score{top:0;left:8%;width:270px;border-top:6px solid var(--wattle);animation-delay:.1s}
.fc-conv{display:flex;align-items:center;gap:14px;font:800 2.6rem/1 var(--display);color:var(--gum)}
.fc-conv span{display:flex;flex-direction:column}
.fc-conv small{font:700 .75rem var(--body);color:var(--muted)}
.fc-conv b{color:var(--wattle);font-size:2rem}
.fc-mock{top:150px;right:0;width:300px;border-top:6px solid var(--c-ielts);animation-delay:.25s}
.fc-bars{display:flex;align-items:flex-end;gap:10px;height:90px;padding-top:6px;border-bottom:2px solid var(--line)}
.fc-bars i{flex:1;background:linear-gradient(180deg,#2C6753,#1E4A3D);border-radius:6px 6px 0 0}
.fc-bars i:nth-child(2){background:linear-gradient(180deg,#5B8FD0,#1F5FA8)}
.fc-progress{height:8px;background:var(--leaf);border-radius:99px;overflow:hidden;margin-top:6px}
.fc-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--c-ielts),var(--c-pte))}
.fc-word{bottom:20px;left:0;width:230px;transform:rotate(-4deg);border-top:6px solid var(--c-oet);animation-delay:.4s}
.fc-word strong{font:800 2.2rem/1 var(--display);color:var(--gum)}
.fc-check{bottom:0;right:16%;flex-direction:row;align-items:center;gap:12px;padding:14px 18px;animation-delay:.55s}
.fc-check .tick{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#DDF1E4;color:var(--ok);font-weight:800}
.fc-check strong{display:block;color:var(--gum)}
.fc-check small{color:var(--muted)}
@keyframes rise{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
@media (prefers-reduced-motion:reduce){.fcard{animation:none}}
@media (max-width:979px){.hero-visual{min-height:380px;max-width:520px}}
@media (max-width:560px){.hero-visual{display:none}.hero-v3{padding:40px 0 56px}}

/* stats band */
.stats{background:linear-gradient(90deg,#F4B63E,#FFCF66);position:relative;z-index:2;margin-top:-28px}
.stats ul{list-style:none;margin:0;padding:22px 0;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;text-align:center}
.stats strong{display:block;font:800 2.4rem/1 var(--display);color:var(--deep)}
.stats span{font-weight:700;color:#4a3606;font-size:.95rem}
@media (max-width:760px){.stats ul{grid-template-columns:repeat(2,1fr)}.stats li:last-child{grid-column:1/-1}}
.section-head.center{flex-direction:column;align-items:center;text-align:center}
.section-head.center p{margin:0 auto}
.center{text-align:center}
.band h2{font-size:clamp(1.8rem,3.4vw,2.5rem)}

/* colour-coded test cards */
.tc-grid{list-style:none;padding:0!important;margin:24px 0;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.tc-grid li{margin:0;max-width:none}
.tc{--c:var(--c-pte);display:flex;flex-direction:column;gap:6px;height:100%;padding:22px 22px 18px;border-radius:18px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);position:relative;overflow:hidden;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.tc::before{content:"";position:absolute;inset:0 0 auto 0;height:6px;background:var(--c)}
.tc::after{content:"";position:absolute;right:-40px;top:-40px;width:140px;height:140px;border-radius:50%;background:var(--c);opacity:.08}
.tc:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.tc strong{font:780 1.38rem/1.15 var(--display);color:var(--deep)}
.tc>span:not(.badge):not(.tc-tile){color:var(--muted)}
.tc em{font-style:normal;margin-top:auto;padding-top:10px;font-weight:800;color:var(--c)}
.tc em::after{content:" ›"}
.tc-tile{display:grid;place-items:center;min-width:58px;height:44px;padding:0 10px;border-radius:12px;background:var(--c);color:#fff;font:800 1rem var(--display);letter-spacing:.02em;align-self:flex-start;margin-bottom:8px;box-shadow:0 8px 18px -10px var(--c)}
.tc .badge{top:16px;right:16px;background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--c);border:1px solid color-mix(in srgb,var(--c) 35%,#fff)}
.tc-pte{--c:var(--c-pte)} .tc-ielts{--c:var(--c-ielts)} .tc-oet{--c:var(--c-oet)} .tc-toefl{--c:var(--c-toefl)} .tc-cam{--c:var(--c-cam)} .tc-celpip{--c:var(--c-celpip)}
@media (prefers-reduced-motion:reduce){.tc{transition:none}.tc:hover{transform:none}}
.tc-small{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.tc-small .tc{padding:20px}

/* mock band */
.band-mock{background:radial-gradient(700px 400px at 100% 0%,rgba(244,182,62,.25),transparent 60%),linear-gradient(135deg,#123A6B,#1F5FA8);color:#E6EEF8}
.band-mock h2{color:#fff}
.band-mock p{color:#DCE7F5}
.mock-split{display:grid;gap:36px;align-items:center}
@media (min-width:900px){.mock-split{grid-template-columns:1.1fr 1fr}}
.eyebrow-pill{display:inline-block;background:var(--wattle);color:#1b1404;font-weight:800;font-size:.85rem;padding:4px 12px;border-radius:999px}
.ticks{list-style:none;padding:0;margin:14px 0}
.ticks li{padding-left:30px;position:relative;margin:8px 0;font-weight:700}
.ticks li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--wattle);color:#1b1404;display:grid;place-items:center;font-size:.8rem}
.mock-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.mock-list a{display:flex;align-items:center;gap:16px;background:#fff;border-radius:16px;padding:16px 18px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow-lg);transition:transform .15s}
.mock-list a:hover{transform:translateX(6px)}
.ml-num{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--c-pte),#2C8F6B);color:#fff;font:800 1.4rem var(--display);flex:none}
.ml-ielts{background:linear-gradient(135deg,var(--c-ielts),#4C86CF)}
.mock-list strong{display:block;font:780 1.15rem var(--display);color:var(--deep)}
.mock-list small{color:var(--muted)}

/* tools grid */
.tool-grid{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.tool-grid a{display:grid;grid-template-columns:56px 1fr;gap:2px 16px;align-items:start;padding:20px;border-radius:16px;background:#fff;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);border:1px solid var(--line);transition:transform .15s}
.tool-grid a:hover{transform:translateY(-3px)}
.tool-grid .tool-ico{grid-row:span 2}
.tool-grid strong{font:780 1.15rem var(--display);color:var(--deep)}
.tool-grid span:last-child{color:var(--muted);font-size:.96rem}
.tool-ico{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;flex:none}
.tool-ico svg{width:26px;height:26px}
.ti-green{background:#DDF1E4;color:var(--c-pte)} .ti-blue{background:#DDE9F8;color:var(--c-ielts)} .ti-gold{background:#FCEBC2;color:#A86A00}
.ti-coral{background:#FBE1DA;color:var(--c-oet)} .ti-violet{background:#E9E3F8;color:var(--c-toefl)} .ti-teal{background:#D8F0F0;color:var(--c-cam)}

/* level test feature */
.feature-level{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:20px 22px;border-radius:18px;background:linear-gradient(135deg,#FFF3D6,#FFE4A3);border:2px solid var(--wattle);margin:18px 0}
.feature-level strong{display:block;font:780 1.25rem var(--display);color:var(--deep)}
.feature-level span{color:#5a4510}
.wotd-v3{background:linear-gradient(160deg,#fff 0%,#F3F8F5 100%);border:0;box-shadow:var(--shadow-lg);border-radius:22px;position:relative;overflow:hidden}
.wotd-v3::before{content:"";position:absolute;inset:0 0 auto;height:8px;background:linear-gradient(90deg,var(--c-pte),var(--wattle),var(--c-oet))}
.wotd-v3 .w{font-size:3rem}

/* guide grid */
.guide-grid{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.guide-grid a{display:flex;flex-direction:column;gap:10px;height:100%;padding:18px 20px;border-radius:16px;background:#fff;text-decoration:none;box-shadow:var(--shadow);transition:transform .15s}
.guide-grid a:hover{transform:translateY(-3px)}
.guide-grid strong{font:740 1.08rem/1.3 var(--display);color:var(--deep)}
.g-tag{align-self:flex-start;font:800 .75rem var(--body);padding:3px 10px;border-radius:999px;color:#fff}
.tg-pte{background:var(--c-pte)} .tg-ielts{background:var(--c-ielts)} .tg-oet{background:var(--c-oet)} .tg-learn{background:var(--c-toefl)}

/* trust */
.trust{margin-top:0;background:#fff;border-top:1px solid var(--line)}
.trust li{align-items:center;gap:14px}
.trust li>span:last-child strong{display:block;color:var(--deep);font-family:var(--display)}

/* inner pages: bold header band */
.page-hero{background:
  radial-gradient(600px 300px at 90% 0%,rgba(244,182,62,.22),transparent 60%),
  linear-gradient(135deg,#0F2E26 0%,#1E4A3D 60%,#235F4D 100%);
  border-bottom:0;padding:34px 0 40px;color:#fff}
.page-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.08) 1.2px,transparent 1.2px);background-size:22px 22px;mask-image:linear-gradient(90deg,transparent 30%,#000);pointer-events:none}
.page-hero::after{opacity:.14}
.page-hero h1{color:#fff;font-size:clamp(2.1rem,4.4vw,3.2rem);letter-spacing:-.02em}
.page-hero .lede{color:#DDEBE4;font-size:1.18rem}
.page-hero .meta{color:#B9D2C6}
.page-hero .crumbs ol,.page-hero .crumbs a{color:#CFE2D8}
.page-hero .crumbs li+li::before{color:rgba(255,255,255,.35)}
.page-hero .wrap{position:relative;z-index:1}
.page-hero .btn-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.page-hero .btn-light:hover{background:rgba(255,255,255,.12)}
/* section colour accents on inner pages */
.sec-ielts .page-hero{background:radial-gradient(600px 300px at 90% 0%,rgba(244,182,62,.2),transparent 60%),linear-gradient(135deg,#0F2C52,#1F5FA8)}
.sec-oet .page-hero{background:radial-gradient(600px 300px at 90% 0%,rgba(255,255,255,.12),transparent 60%),linear-gradient(135deg,#6E2414,#C24B31)}
.sec-toefl .page-hero{background:linear-gradient(135deg,#2C1F5E,#6B4FBB)}
.sec-cam .page-hero{background:linear-gradient(135deg,#073F40,#0E8A8C)}
.sec-celpip .page-hero{background:linear-gradient(135deg,#5A3A05,#B9780E)}
.sec-learn .page-hero{background:radial-gradient(600px 300px at 90% 0%,rgba(244,182,62,.25),transparent 60%),linear-gradient(135deg,#2C1F5E,#4B3A9A 60%,#1F5FA8)}

/* highlighted boxes in content */
.prose h2{position:relative;padding-left:16px}
.prose h2::before{content:"";position:absolute;left:0;top:.15em;bottom:.15em;width:5px;border-radius:4px;background:linear-gradient(180deg,var(--wattle),#E39A12)}
.faq h2,.related h2,.children h2,.feature h2{padding-left:0}.faq h2::before,.related h2::before,.children h2::before,.feature h2::before{display:none}
.notice{border:0;border-radius:14px;padding:16px 18px 16px 58px;position:relative;background:#EAF4EE;box-shadow:inset 0 0 0 1px #CFE5D7}
.notice::before{content:"i";position:absolute;left:16px;top:16px;width:28px;height:28px;border-radius:50%;background:var(--c-pte);color:#fff;font:800 1rem/28px var(--display);text-align:center}
.notice-legal{background:#FFF6DF;box-shadow:inset 0 0 0 1px #F5DB98}
.notice-legal::before{content:"!";background:#E39A12}
.tip{border-radius:14px;padding:16px 18px 16px 58px;position:relative;background:#FFF6DF;box-shadow:inset 0 0 0 1px #F5DB98}
.tip::before{content:"★";position:absolute;left:16px;top:15px;width:28px;height:28px;border-radius:50%;background:var(--wattle);color:#1b1404;text-align:center;line-height:28px}
.feature{border:0;border-radius:18px;background:linear-gradient(135deg,#FFF3D6,#FFE4A3);box-shadow:var(--shadow);padding:22px 24px}
.prose blockquote{border-left:0;background:#F3F7FF;border-radius:14px;padding:14px 20px;box-shadow:inset 4px 0 0 var(--c-ielts)}
.prose table{border-radius:14px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
.prose th{background:var(--gum);color:#fff}
.prose tr:nth-child(even) td{background:#F7FAF8}
.related{background:linear-gradient(135deg,#EAF4EE,#F6FAF7);border-radius:18px;box-shadow:inset 0 0 0 1px #CFE5D7}
.related li{margin:.5em 0}
.related a{font-weight:700}
.link-grid a{border-radius:14px;box-shadow:var(--shadow);border:0;padding:16px 18px}
.side-box{border:0;border-radius:18px;box-shadow:var(--shadow);background:#fff}
.side-section{border-top:6px solid var(--c-pte)}
.sec-ielts .side-section{border-top-color:var(--c-ielts)}.sec-oet .side-section{border-top-color:var(--c-oet)}.sec-learn .side-section{border-top-color:var(--c-toefl)}
.pager a{border:0;box-shadow:var(--shadow);border-radius:16px}
.faq details{border:0;box-shadow:var(--shadow);border-radius:14px}
.faq summary{list-style:none;position:relative;padding-right:30px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:10px;font:700 1.5rem var(--display);color:var(--wattle)}
.faq details[open] summary::after{content:"–"}
.test-cards a{border-radius:18px;box-shadow:var(--shadow);border:1px solid var(--line)}
.tool,.practice .q{border-radius:18px}
.tool{box-shadow:var(--shadow);border:0;border-top:6px solid var(--wattle)}
.practice{background:#fff;border-radius:20px;box-shadow:var(--shadow);padding:6px 22px 18px;border-top:6px solid var(--c-pte);margin:1.4em 0}
.sec-ielts .practice{border-top-color:var(--c-ielts)}.sec-oet .practice{border-top-color:var(--c-oet)}.sec-learn .practice{border-top-color:var(--c-toefl)}
.opts label{border-radius:12px;background:#fff;transition:border-color .1s,background .1s}
.opts label:has(input:checked){border-color:var(--gum);background:#EEF6F1}
.word-card{border:0;border-radius:20px;box-shadow:var(--shadow-lg);background:linear-gradient(160deg,#fff,#F3F8F5);position:relative;overflow:hidden}
.word-card::before{content:"";position:absolute;inset:0 0 auto;height:8px;background:linear-gradient(90deg,var(--c-pte),var(--wattle),var(--c-oet))}
.ad-placeholder{border-radius:14px}
.task-list{border-top:0;display:grid;gap:12px}
.task-list li{border:0}
.task-list a{background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:16px 18px;transition:transform .15s}
.task-list a:hover{background:#fff;transform:translateX(4px)}
.task-list svg{background:#DDF1E4;border-radius:12px;padding:8px;width:44px;height:44px;margin-top:0}
.task-list a{grid-template-columns:56px 1fr}
.site-footer{background:linear-gradient(135deg,#0F2E26,#1E4A3D)}
.hero-grid>*{min-width:0}
.hero-v3 .hero-search{width:100%}
@media (max-width:560px){
  .hero-flag{font-size:.82rem;padding:5px 12px}
  .hero-sub{font-size:1.06rem}
  .hero-ctas .btn{flex:1 1 100%;text-align:center}
  .hero-v3 .hero-search .btn{padding:10px 14px}
}
@media (max-width:560px){
  .hide-sm{display:none}
  .hero-visual{display:block;min-height:0;margin-top:8px}
  .hero-visual .fcard{display:none}
  .hero-visual .fc-score{display:flex;position:relative;left:auto;top:auto;width:auto;transform:none}
}
.jobcall-box{margin:2em 0;padding:20px 22px;border-radius:18px;background:linear-gradient(135deg,#0F2742,#1B4573);color:#E3ECF7;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}
.jobcall-box::after{content:"";position:absolute;right:-50px;top:-50px;width:180px;height:180px;border-radius:50%;background:rgba(244,182,62,.18)}
.jobcall-box h3{color:#fff;margin:.3em 0 .2em;font-size:1.3rem}
.jobcall-box p{color:#D0DEEE;margin:.2em 0 .6em}
.jobcall-box ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.jobcall-box li{margin:0}
.jobcall-box a{display:block;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:9px 12px;color:#fff;font-weight:700;text-decoration:none}
.jobcall-box a:hover{background:rgba(255,255,255,.2)}
.jobcall-box a::after{content:" ↗";color:var(--wattle)}
.jc-head{display:flex;align-items:center;gap:10px}
.jc-logo{font:800 1.05rem var(--display);color:#fff}.jc-logo span{color:var(--wattle)}
.jc-tag{font-size:.75rem;font-weight:800;background:var(--wattle);color:#1b1404;border-radius:999px;padding:2px 9px}
/* exam mode */
.exam-intro{background:#fff;border-radius:20px;box-shadow:var(--shadow);padding:6px 24px 22px;border-top:6px solid var(--wattle);margin:1.4em 0}
.exam-rules{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.exam-rules>div{border-radius:14px;padding:4px 18px 8px}
.exam-rules .do{background:#EAF4EE}.exam-rules .dont{background:#FCEDEA}
.exam-rules h3{margin-top:.8em}
.exam-rules .do h3{color:var(--ok)}.exam-rules .dont h3{color:var(--bad)}
.exam-rules .do li::marker{content:"✓  ";color:var(--ok)}.exam-rules .dont li::marker{content:"✕  ";color:var(--bad)}
.checkwords,.save-opt{display:block;background:#F3F7FF;border-radius:12px;padding:12px 14px;margin:12px 0}
.checkwords label{display:block}
.checkwords .hint{margin:.4em 0 0}
.exam-bar{position:sticky;top:76px;z-index:6;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;background:var(--deep);color:#fff;border-radius:14px;padding:10px 14px;box-shadow:var(--shadow-lg);margin:12px 0}
.exam-time{font:800 1.3rem var(--display);font-variant-numeric:tabular-nums}
.exam-bar .btn-quiet{color:#fff;border-color:rgba(255,255,255,.6)}
.exam-body.paused{filter:blur(6px);pointer-events:none;user-select:none}
.report{background:#fff;border-radius:20px;box-shadow:var(--shadow-lg);padding:8px 24px 18px;border-top:8px solid var(--wattle);margin:2em 0}
.report-top{display:flex;flex-wrap:wrap;gap:28px;margin:10px 0}
.report-top>div{display:flex;flex-direction:column}
.report-top span:last-child{color:var(--muted)}
.pbar{display:block;width:140px;height:10px;background:var(--leaf);border-radius:99px;overflow:hidden}
.pbar span{display:block;height:100%}.pbar .ok{background:var(--ok)}.pbar .warn{background:#E39A12}.pbar .no{background:var(--bad)}
/* speaking feedback */
.rec-meter{flex-basis:100%;height:8px;background:var(--leaf);border-radius:99px;overflow:hidden;max-width:420px}
.rec-meter span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--c-pte),var(--wattle));transition:width .05s}
.speak-fb{flex-basis:100%}
.sfb{background:#F7FAF8;border-radius:14px;padding:6px 16px 10px;margin-top:8px}
.sfb h4{font-family:var(--display);color:var(--deep);margin:.6em 0}
.sfb-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.sfb-cell{background:#fff;border-radius:12px;padding:10px 12px;border-left:5px solid var(--line)}
.sfb-cell.ok{border-left-color:var(--ok)}.sfb-cell.warn{border-left-color:#E39A12}.sfb-cell.no{border-left-color:var(--bad)}
.sfb-cell span{display:block;font-size:.82rem;color:var(--muted)}
.sfb-cell strong{display:block;font:800 1.2rem var(--display);color:var(--deep)}
.sfb-cell small{display:block;color:var(--muted);font-size:.78rem;line-height:1.3}
.tgt del{color:var(--bad)}
.box-actions{display:flex;flex-wrap:wrap;gap:10px}
.why-grid{list-style:none;padding:0;margin:24px 0;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.why-grid li{background:#fff;border-radius:18px;box-shadow:var(--shadow);padding:20px 22px;display:flex;flex-direction:column;gap:6px;border:1px solid var(--line)}
.why-ico{font-size:1.8rem;line-height:1}
.why-grid strong{font:780 1.2rem var(--display);color:var(--deep)}
.why-grid span:last-child{color:var(--muted)}
.compare{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--shadow);margin-top:10px}
.compare th,.compare td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left}
.compare thead th{background:var(--deep);color:#fff;font-family:var(--display)}
.compare thead th:nth-child(2){background:var(--c-pte)}
.compare td:nth-child(2){font-weight:700;color:var(--c-pte);background:#F2F9F5}
.compare td:first-child{font-weight:700}
.compare td:last-child{color:var(--muted)}
.ml-gold{background:linear-gradient(135deg,#E39A12,#F4B63E)}
.jc-band{background:radial-gradient(700px 400px at 100% 0%,rgba(244,182,62,.22),transparent 60%),linear-gradient(135deg,#0F2742,#1B4573);color:#E3ECF7}
.jc-band h2{color:#fff}.jc-band p{color:#D0DEEE}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:2em 0 1em;padding:14px 16px;background:#fff;border-radius:16px;box-shadow:var(--shadow)}
.share-label{font-weight:800;color:var(--deep);margin-right:4px}
.sh{display:inline-flex;align-items:center;gap:6px;font:700 .9rem var(--body);padding:7px 12px;border-radius:999px;text-decoration:none;color:#fff;border:0;cursor:pointer}
.sh-wa{background:#1F9D55}.sh-fb{background:#1F5FA8}.sh-li{background:#0E6A9E}.sh-x{background:#16211D}.sh-em{background:#6B4FBB}
.sh-copy,.sh-native{background:var(--leaf);color:var(--gum)}
.share-result{margin-left:8px}
.translator{border-top-color:var(--c-celpip);background:linear-gradient(160deg,#fff,#FFF8E8)}
.tr-title{font-size:1.5rem}
.tr-result{font-size:1.25rem;background:#fff;border-radius:12px;padding:12px 16px;box-shadow:inset 0 0 0 2px var(--wattle-soft)}
.tr-hit{background:var(--wattle-soft);border-radius:6px;padding:0 4px;font-weight:700;border-bottom:2px solid var(--wattle);cursor:help}
.tr-try .chip{border:0;cursor:pointer;font:inherit;font-weight:700}
.band-aussie{background:radial-gradient(800px 400px at 100% 0%,rgba(255,255,255,.18),transparent 60%),linear-gradient(135deg,#7A3E06,#C98512 55%,#E39A12);color:#FFF6E6}
.band-aussie h2{color:#fff;font-size:clamp(2rem,4.2vw,3rem)}
.band-aussie p{color:#FFF1D6}
.aussie-split{display:grid;gap:32px;align-items:start}
@media (min-width:980px){.aussie-split{grid-template-columns:1.25fr 1fr}}
.pill-white{background:#fff}
.band-aussie .translator{color:var(--ink);margin-top:18px}
.band-aussie .translator p{color:var(--ink)}
.band-aussie .translator .hint{color:var(--muted)}
.band-aussie .wotd p{color:var(--ink)}
.aussie-ctas{display:flex;flex-wrap:wrap;gap:10px}
.gap-grid{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.gap{--g:var(--c-pte);display:flex;flex-direction:column;gap:8px;height:100%;padding:22px;border-radius:20px;text-decoration:none;color:var(--ink);background:linear-gradient(170deg,color-mix(in srgb,var(--g) 10%,#fff),#fff 60%);border:1px solid color-mix(in srgb,var(--g) 25%,#fff);box-shadow:var(--shadow);transition:transform .15s}
.gap:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.gap-ico{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:var(--g);color:#fff;font-size:1.6rem;box-shadow:0 10px 20px -12px var(--g)}
.gap strong{font:780 1.2rem/1.2 var(--display);color:var(--deep)}
.gap span:not(.gap-ico){color:var(--muted);font-size:.96rem}
.gap em{font-style:normal;margin-top:auto;padding-top:6px;font-weight:800;color:var(--g)}
.gap em::after{content:" ›"}
.gap-green{--g:var(--c-pte)}.gap-blue{--g:var(--c-ielts)}.gap-violet{--g:var(--c-toefl)}.gap-coral{--g:var(--c-oet)}.gap-teal{--g:var(--c-cam)}.gap-gold{--g:var(--c-celpip)}
@media (prefers-reduced-motion:reduce){.gap{transition:none}.gap:hover{transform:none}}
.band-aussie .translator h2{color:var(--deep);font-size:1.35rem;margin:.2em 0 .6em}
.band-aussie h2{margin-top:.35em}
.translator textarea{min-height:96px}
.newsletter{display:grid;gap:18px;align-items:center;margin:2em 0;padding:24px 26px;border-radius:22px;background:radial-gradient(500px 260px at 100% 0%,rgba(244,182,62,.28),transparent 60%),linear-gradient(135deg,#0F2E26,#1E4A3D);color:#E3EEE8;box-shadow:var(--shadow-lg)}
@media (min-width:900px){.newsletter{grid-template-columns:1fr 1.1fr}}
.newsletter h2{color:#fff;margin:.4em 0 .2em;padding:0}.newsletter h2::before{display:none}
.newsletter p{color:#D5E5DC;margin:.3em 0}
.nl-form{display:grid;gap:10px}
.nl-form input[type=email],.nl-form select{border:0;font-size:1.05rem}
.nl-form .btn{justify-self:start}
.nl-note{font-size:.82rem;color:#B9D2C6!important}
.nl-note a{color:#fff}
.nl-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px}
.band .newsletter{margin:0}
input[type=email],input[type=search]{font:inherit;color:var(--ink);border:2px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;width:100%}
.nl-form input[type=email]{border:0;padding:12px 14px}

/* ---------- My progress ---------- */
.progress-app{margin:8px 0 28px}
.pcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:16px 0;box-shadow:var(--shadow)}
.pcard h2{margin:0 0 4px;font-size:1.25rem}
.pcontrols{background:var(--leaf)}
.goal-row{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}
.goal-row label{display:flex;flex-direction:column;gap:4px;font-weight:700;font-size:.92rem;flex:1 1 160px}
.goal-row select,.goal-row input{font:inherit;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;min-width:0}
.prog-tools{display:flex;flex-wrap:wrap;gap:8px}
.file-btn{position:relative;overflow:hidden;cursor:pointer}
.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}
.btn-danger{background:#fff;color:var(--bad);border:1px solid var(--bad);box-shadow:none}
.ptiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:16px 0}
.ptile{background:#fff;border:1px solid var(--line);border-top:4px solid var(--wattle);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column}
.ptile .pn{font-family:var(--display);font-size:2rem;font-weight:800;color:var(--ink);line-height:1.1}
.ptile .pl{font-weight:700;color:var(--ink)}
.ptile .ps{font-size:.86rem;color:var(--muted);margin-top:2px}
.chart{position:relative;margin-top:8px}
.chart svg{display:block;overflow:visible}
.chart .ax{font-size:11px;fill:var(--muted);font-family:var(--body)}
.chart .dl{font-size:12px;fill:var(--ink);font-weight:700;font-family:var(--body)}
.chart-tip{position:absolute;pointer-events:none;background:var(--ink);color:#fff;padding:8px 10px;border-radius:8px;font-size:.85rem;line-height:1.35;white-space:nowrap;z-index:2;box-shadow:var(--shadow)}
.chart-tip .sw,.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:middle}
.legend{display:flex;gap:18px;font-size:.9rem;color:var(--ink);margin:6px 0 0}
.bars{list-style:none;margin:10px 0 0;padding:0}
.bars li{display:grid;grid-template-columns:minmax(120px,38%) 1fr 48px;align-items:center;gap:10px;padding:5px 0}
.bars .bl{font-size:.92rem;line-height:1.25}
.bars .bt{height:14px;background:#EEF3F0;border-radius:4px;overflow:hidden}
.bars .bf{display:block;height:100%;border-radius:0 4px 4px 0}
.bars .bv{font-weight:700;text-align:right;font-size:.92rem}
.bars li:hover .bt{outline:2px solid var(--line)}
.table-wrap{overflow-x:auto}
.table-wrap table{width:100%;border-collapse:collapse;font-size:.92rem}
.table-wrap th,.table-wrap td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.tag{display:inline-block;font-size:.75rem;background:var(--wattle-soft);border-radius:999px;padding:1px 8px;margin-left:4px}
@media (max-width:560px){.bars li{grid-template-columns:1fr 44px}.bars .bl{grid-column:1/-1}}
.table-wrap table{min-width:560px}

/* page lock only while the phone menu is open */
html.nav-locked,html.nav-locked body{overflow:hidden}
@media (min-width:921px){html.nav-locked,html.nav-locked body{overflow:visible}}
/* typing on a phone: hide the bottom bar so it never covers the text */
@media (max-width:920px){html.is-typing .bottom-bar{display:none}html.is-typing body{padding-bottom:0}}

/* ---------- Writing marker feedback ---------- */
.wf{margin-top:14px;border:1px solid var(--line);border-radius:16px;background:#fff;padding:18px 18px 8px;box-shadow:var(--shadow)}
.wf-head{display:grid;gap:8px;margin-bottom:12px}
.wf-label{display:block;font-size:.85rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.wf-total{font-family:var(--display);font-size:2.4rem;font-weight:800;color:var(--ink);line-height:1}
.wf-total small{font-size:1.1rem;color:var(--muted);font-weight:700}
.wf-meter{height:12px;background:var(--leaf);border-radius:99px;overflow:hidden}
.wf-meter span{display:block;height:100%;background:linear-gradient(90deg,var(--gum-2),#0E8A5F);border-radius:0 6px 6px 0}
.wf-disclaim{font-size:.86rem;color:var(--muted);margin:0}
.wf-zero{margin:6px 0 12px}
.wf-stats{display:flex;flex-wrap:wrap;gap:6px 14px;list-style:none;padding:0;margin:0 0 12px;font-size:.92rem;color:var(--muted)}
.wf-stats b{color:var(--ink)}
.wf-trait{border-top:1px solid var(--line);padding:2px 0}
.wf-trait summary{display:grid;grid-template-columns:minmax(120px,1fr) minmax(80px,1.2fr) 56px;align-items:center;gap:12px;padding:10px 0;cursor:pointer;list-style:none}
.wf-trait summary::-webkit-details-marker{display:none}
.wf-name{font-weight:700}
.wf-bar{height:10px;background:#EEF3F0;border-radius:99px;overflow:hidden}
.wf-bar span{display:block;height:100%;border-radius:0 5px 5px 0;background:var(--ok)}
.wf-trait.warn .wf-bar span{background:#C98512}.wf-trait.no .wf-bar span{background:var(--bad)}
.wf-score{font-weight:800;text-align:right}
.wf-trait ul{margin:0 0 8px;padding-left:1.2em;font-size:.95rem}
.wf-trait li{margin:3px 0}
.wf-tip{background:var(--leaf);border-radius:10px;padding:8px 12px;font-size:.93rem;margin:0 0 12px}
.wf h4{margin:16px 0 6px;font-size:1rem}
.wf-key{font-size:.85rem;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.wf-text{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#FBFCFB;line-height:1.75;margin-bottom:12px}
.wf-text p{margin:0 0 .8em}
mark.hl-sp{background:#FDE2DF;color:inherit;border-bottom:2px solid var(--bad);border-radius:3px;padding:0 1px}
mark.hl-gr{background:#FCEBC6;color:inherit;border-bottom:2px dashed #A86A00;border-radius:3px;padding:0 1px}
mark.hl-ln{background:#DDF1E6;color:inherit;border-radius:3px;padding:0 1px}
mark.hl-bs{background:#ECEFF3;color:inherit;border-bottom:2px dotted #6B7785;border-radius:3px;padding:0 1px}
details.model{margin-top:10px}details.model summary{cursor:pointer}
@media (max-width:560px){.wf{padding:14px 12px 6px}.wf-trait summary{grid-template-columns:1fr 52px}.wf-bar{grid-column:1/-1;grid-row:2}}
/* PTE writing checker tool */
.pte-checker .field{margin-bottom:12px}
.pte-checker label{font-weight:700;display:block;margin-bottom:4px}
.pte-checker textarea#pc-prompt,.pte-checker textarea#pc-source{min-height:90px}
.wf-pop{display:inline-block;margin:0 4px;padding:2px 8px;border-radius:8px;background:var(--ink);color:#fff;font-size:.82rem;line-height:1.4}
.wf-text mark{cursor:help}

/* ---------- exam mode: one question at a time ---------- */
.eb-where{display:flex;flex-direction:column;gap:3px;flex:1 1 220px;min-width:0}
.eb-part{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;opacity:.8}
.eb-q{font-weight:800}
.eb-prog{display:block;height:5px;background:rgba(255,255,255,.18);border-radius:9px;overflow:hidden;max-width:320px}
.eb-prog span{display:block;height:100%;background:var(--wattle);transition:width .3s}
.eb-clock{display:flex;flex-direction:column;align-items:flex-end}
.eb-label{font-size:.75rem;opacity:.8}
.exam-time.low{color:#FFB4A8}
.eb-btns{display:flex;gap:8px}
.exam-bar.is-paused{background:#5A4A12}
.exam-body.paged .q:not(.cur){display:none}
.exam-body.paged .practice:not(.cur-box){display:none}
.exam-body.paged>:not(.practice){display:none}
.exam-body.paged .box-actions,.exam-body.paged .result,.exam-body.paged .sec-timer{display:none}
.exam-body.paged .practice.cur-box{border:0;padding:0;background:none;box-shadow:none}
.exam-body.paged .q.cur{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px 22px;box-shadow:var(--shadow);min-height:40vh}
.exam-body.paged-part .practice:not(.cur-box){display:none}
.exam-body.paged-part>:not(.practice){display:none}
.exam-body.paged-part .box-actions,.exam-body.paged-part .result,.exam-body.paged-part .sec-timer,.exam-body.paged-part .box-head .hint{display:none}
.exam-body.paged-part .exam-nav{justify-content:space-between}
.exam-body.paged-part .exam-nav [data-part-back][hidden]+.task-clock{margin-right:auto}
.q-audio{background:var(--sand,#f7f3ea);border-radius:14px}
.q-audio [data-say]:disabled{opacity:.65;cursor:default}
@media (min-width:1000px){
.exam-body.paged-part .practice.has-passage.cur-box{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);column-gap:26px;align-items:start}
.exam-body.paged-part .has-passage>*{grid-column:1/-1}
.exam-body.paged-part .has-passage .q{grid-column:2}
.exam-body.paged-part .has-passage .q-read{grid-column:1;grid-row:1/span 60;position:sticky;top:150px;max-height:calc(100vh - 200px);overflow:auto;margin:0}
.exam-body.paged-part .has-passage .exam-nav{grid-column:2}
}
.exam-nav{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:20px;padding-top:16px}
.task-clock{margin-right:auto;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.task-clock.low{color:var(--bad)}
.exam-paused{background:#FFF6DC;border:2px solid var(--wattle);border-radius:16px;padding:16px 20px;margin:12px 0;text-align:center}
.exam-howto li{margin:.45em 0}
.mini-rec [data-recstop]{font-weight:800}
@media (max-width:560px){.exam-bar{top:64px;padding:8px 10px}.eb-btns{width:100%}.eb-btns .btn{flex:1;padding:8px 10px}.exam-body.paged .q.cur{padding:14px}}

/* ---------- branded share panel ---------- */
.share-panel{position:relative;display:grid;grid-template-columns:minmax(0,300px) 1fr;gap:16px;align-items:start;background:#fff;border:1px solid var(--line);border-top:5px solid var(--wattle);border-radius:16px;padding:16px;margin:10px 0 16px;box-shadow:var(--shadow);text-align:left}
.sp-card img{width:100%;height:auto;border-radius:10px;display:block;box-shadow:0 6px 18px -10px rgba(0,0,0,.5);background:var(--gum);aspect-ratio:1200/630}
.sp-msg{margin:0 28px 10px 0;font-size:.95rem;color:var(--ink);word-break:break-word}
.sp-btns{display:flex;flex-wrap:wrap;gap:8px}
.share-panel .sh{cursor:pointer}
.sh-tg{background:#229ED9;color:#fff}
.sp-close{position:absolute;top:8px;right:10px;border:0;background:none;font-size:1.1rem;cursor:pointer;color:var(--muted)}
.share-panel:not(:has(.sp-card)){grid-template-columns:1fr}
@media (max-width:640px){.share-panel{grid-template-columns:1fr}}
.sh-dl{background:var(--gum)}
.exam-body.paged .q-num{display:none}
.exam-body.paged .q-type{font-size:1.05rem;color:var(--gum)}
@media (min-width:921px){.menu-wide{width:620px}.menu-wide ul{display:grid;grid-template-columns:1fr 1fr;gap:2px 6px}}

/* ---------- pronunciation practice ---------- */
.pron{margin:10px 0 14px}
.pr-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pr-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 10px}
.pr-word{display:inline-flex;align-items:center;gap:4px}
.pr-say{font:700 1rem var(--body);background:var(--leaf);color:var(--gum);border:0;border-radius:999px;padding:7px 14px;cursor:pointer}
.pr-say:hover{background:#DCEBE3}
.pr-mic{border:1px solid var(--line);background:#fff;border-radius:999px;width:34px;height:34px;cursor:pointer}
.pr-mic:disabled{opacity:.35;cursor:not-allowed}
.pr-mic.rec{background:#FDE2DF;border-color:var(--bad)}
.pr-vs{color:var(--muted);font-size:.85rem}
.pr-out{flex-basis:100%;font-size:.9rem}
.pr-out:empty{display:none}
.pron-toggle{margin:8px 0 4px}
.pr-sent{padding:4px 10px;font-size:.85rem;margin-right:6px}
.prose .pr-list,.pr-list{padding-left:0!important;margin-left:0!important}.pr-list li::marker{content:none}

/* ---------- flashcards ---------- */
.flash{margin:10px 0 24px}
.fl-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.fl-stats{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.95rem;color:var(--muted)}
.fl-stats b{color:var(--ink);font-size:1.1rem}
.fl-card{background:#fff;border:1px solid var(--line);border-top:5px solid var(--wattle);border-radius:18px;padding:22px 24px;box-shadow:var(--shadow);min-height:220px}
.fl-count{margin:0 0 6px;color:var(--muted);font-size:.85rem}
.fl-cue{font:800 1.6rem var(--display);color:var(--gum);margin:0 0 10px}
.fl-ex{font-size:1.15rem;line-height:2}
.fl-in{display:inline-block;width:9em;max-width:60vw;margin:0 4px;padding:4px 8px;font:700 1.05rem var(--body);border:2px solid var(--gum);border-radius:8px;text-align:center}
.fl-in.ok{border-color:var(--ok);background:#EAF6EF}.fl-in.no{border-color:var(--bad);background:#FDEDEB}
.fl-btns{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.fl-fb p{margin:.6em 0 0}
.fl-done{text-align:center}.fl-big{font:800 1.4rem var(--display);color:var(--gum)}
.fl-foot{margin-top:10px;text-align:right}
@media (max-width:560px){.fl-card{padding:16px}.fl-cue{font-size:1.3rem}}
.fl-ex input.fl-in[type=text]{width:7.5em;padding:2px 8px;display:inline-block;vertical-align:baseline}

/* ---------- Visa English hub ---------- */
.sec-visa .page-hero{background:radial-gradient(700px 320px at 92% 0%,rgba(244,182,62,.38),transparent 60%),linear-gradient(135deg,#0B2545,#13315C 55%,#1E4A3D)}
.sec-visa .page-hero h1,.sec-visa .page-hero .lede,.sec-visa .page-hero a,.sec-visa .page-hero .crumbs{color:#fff}
.visa-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:18px 0 8px}
.visa-steps a{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-left:5px solid var(--wattle);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--ink);font-weight:700;box-shadow:var(--shadow)}
.visa-steps b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#13315C;color:#fff;flex:none}
.visa-steps a:hover{border-color:var(--wattle)}
.points-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}
.points-cards>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-align:center;box-shadow:var(--shadow)}
.points-cards .pc-top{background:linear-gradient(160deg,#13315C,#0B2545);color:#fff;border-color:#13315C}
.pc-lvl{display:block;font-weight:800;font-family:var(--display)}
.pc-pts{display:block;font:800 2.6rem/1.1 var(--display);color:var(--gum)}
.pc-top .pc-pts{color:var(--wattle)}
.pc-lbl{display:block;font-size:.88rem;color:var(--muted)}.pc-top .pc-lbl{color:#C9D6E8}
@media (max-width:560px){.points-cards{grid-template-columns:1fr}}
/* ---------- which test quiz ---------- */
.wt{background:#fff;border:1px solid var(--line);border-top:6px solid var(--wattle);border-radius:18px;padding:20px 22px;box-shadow:var(--shadow);margin:8px 0 24px}
.wt-prog{height:8px;background:var(--leaf);border-radius:9px;overflow:hidden}.wt-prog span{display:block;height:100%;background:var(--wattle)}
.wt-n{font-size:.85rem;color:var(--muted);margin:10px 0 0}
.wt h2{margin:.3em 0 .6em}
.wt-opts{display:grid;gap:10px}
.wt-opt{text-align:left;font:700 1rem var(--body);padding:14px 16px;border:2px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;color:var(--ink)}
.wt-opt:hover,.wt-opt:focus{border-color:var(--gum);background:var(--leaf)}
.wt-why li{margin:.35em 0}
.wt-alt{background:var(--leaf);border-radius:12px;padding:12px 14px;margin:12px 0}
/* ---------- everyday situations dialogue ---------- */
.dialogue{background:#fff;border:1px solid var(--line);border-top:6px solid var(--wattle);border-radius:18px;padding:16px 18px;box-shadow:var(--shadow);margin:10px 0 22px}
.dl-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.dl-lines{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dl-lines li{display:grid;grid-template-columns:auto 1fr auto;gap:4px 12px;align-items:start;padding:10px 12px;border-radius:14px;max-width:88%;transition:box-shadow .2s,background .2s}
.dl-lines .dl-A{background:#EEF3F0;justify-self:start}
.dl-lines .dl-B{background:#FFF4D8;justify-self:end;border:1px solid #F4D58A}
.dl-who{grid-column:1/-1;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.dl-text{grid-column:1/3;line-height:1.5}
.dl-say{grid-column:3;grid-row:2;border:0;background:none;cursor:pointer;font-size:1.05rem}
.dl-lines li.on{box-shadow:0 0 0 3px var(--wattle)}
.dl-lines li.hide .dl-text{filter:blur(6px);user-select:none}
.dl-lines li.turn{box-shadow:0 0 0 3px var(--gum)}
.dl-next{grid-column:1/-1;justify-self:start;margin-top:6px}
@media (max-width:560px){.dl-lines li{max-width:96%}}
.next-step{background:#FFF6DC;border:1px solid #F4D58A;border-radius:10px;padding:10px 12px;margin:12px 0 0;font-weight:700}

/* ---------- signature tools: strip, special nav, footer band ---------- */
.sig-strip{background:var(--deep);color:#CFE0D7;font-size:.86rem}
.sig-strip .wrap{display:flex;align-items:center;gap:6px 16px;padding-top:7px;padding-bottom:7px;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.sig-strip .wrap::-webkit-scrollbar{display:none}
.ss-label{opacity:.75;font-weight:700}
.sig-strip a{color:#fff;text-decoration:none;font-weight:700;padding:2px 0;border-bottom:2px solid transparent}
.sig-strip a:hover,.sig-strip a[aria-current]{border-bottom-color:var(--wattle)}
.sig-strip a.visa{color:var(--wattle)}
.nav-special{border:2px solid var(--wattle);border-radius:999px;padding:6px 12px!important;display:inline-flex;align-items:center;gap:6px;background:#FFF8E6}
.nav-special:hover,.nav-special[aria-current]{background:var(--wattle);color:#1b1404}
.ns-flag{width:20px;height:14px;flex:none}
@media (max-width:920px){.nav-special{margin:6px 0;align-self:flex-start}}
.sig-band{border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:30px;margin-bottom:34px}
.sig-band h2{font-size:1.35rem!important;margin:0 0 14px!important}
.sig-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.sig-card{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:12px 14px;text-decoration:none;height:100%;transition:background .15s,transform .15s}
.sig-card:hover{background:rgba(255,255,255,.12);transform:translateY(-1px)}
.sig-card strong{display:block;color:#fff;font-family:var(--display)}
.sig-card small{display:block;color:#BFD6CA;font-size:.82rem;line-height:1.3}
.sig-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;flex:none;background:var(--wattle)}
.sig-ic svg{width:22px;height:22px;color:#1b1404}
.tone-navy .sig-ic{background:#7FA7E0}.tone-green .sig-ic{background:#7FD3A8}.tone-blue .sig-ic{background:#9CC3F5}.tone-purple .sig-ic{background:#C2B2F2}
.f-wotd{background:rgba(255,255,255,.07);border-radius:12px;padding:10px 12px;margin:12px 0}
.f-wotd-k{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--wattle);font-weight:800}
.f-wotd a{text-decoration:none}.f-wotd strong{font-family:var(--display);font-size:1.15rem}
.search-pop{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0 0;font-size:.9rem}
.search-pop span{color:var(--muted);font-weight:700}
.search-pop a{background:var(--leaf);border-radius:999px;padding:4px 10px;text-decoration:none;color:var(--gum);font-weight:700}
.side-tools{border-top:4px solid var(--wattle)}
a.fcard{text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
a.fcard:hover{transform:translateY(-3px) rotate(-.5deg);box-shadow:0 30px 60px -24px rgba(0,0,0,.6)}
.stats a{display:block;text-decoration:none;color:inherit;border-radius:12px;padding:4px 6px}.stats a:hover{background:rgba(255,255,255,.08)}
.nav-item:has(.nav-special){display:flex;align-items:center}
@media (min-width:1000px){.sig-grid{grid-template-columns:repeat(4,1fr)}}
/* strip on small screens: hide the label and fade the right edge so it reads as "scroll for more" */
@media (max-width:700px){.ss-label{display:none}.sig-strip{position:relative}.sig-strip::after{content:"";position:absolute;right:0;top:0;bottom:0;width:36px;background:linear-gradient(90deg,rgba(15,46,38,0),var(--deep));pointer-events:none}}
.sample-report{margin:12px 0 24px;max-width:640px}.sample-report img{width:100%;height:auto;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg)}.sample-report figcaption{font-size:.9rem;color:var(--muted);margin-top:8px}

/* exam focus: hide the sidebar while a test is running */
@media (min-width:1000px){body.exam-focus .page-grid{grid-template-columns:minmax(0,1fr)}}
body.exam-focus .page-grid>aside.side,body.exam-focus .related{display:none}
body.exam-focus .prose{max-width:none}
.exam-jump{position:fixed;right:14px;bottom:86px;z-index:60;box-shadow:var(--shadow);background:#fff}
@media (min-width:1000px){.exam-jump{display:none}}

/* IELTS speaking mock */
.ism-list{margin:0 0 14px;padding-left:20px}.ism-list li{margin:4px 0}
.ism-id{font-size:.95rem;color:var(--muted,#55615c)}
.ism-card{margin-top:14px;padding:22px}
.ism-examiner{display:flex;gap:14px;align-items:flex-start}
.ism-avatar{font-size:2.2rem;line-height:1;background:var(--leaf,#e8f1ec);border-radius:50%;width:56px;height:56px;display:flex;align-items:center;justify-content:center;flex:none}
.ism-who{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#55615c)}
.ism-say{font-size:1.25rem;font-weight:600;margin:2px 0 0;line-height:1.45}
.ism-hide-q .ism-say{filter:blur(7px);user-select:none}
.ism-cue{margin:18px 0 0;border:2px dashed var(--line);border-radius:14px;padding:16px 18px;background:#fffdf6}
.ism-cue ul{margin:6px 0 10px}
.ism-notes-l{display:block;font-size:.9rem;color:var(--muted,#55615c)}
.ism-notes{width:100%;margin-top:6px;min-height:90px;height:110px}
.ism-you{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.ism-status{font-size:1.05rem;margin:0 0 8px}
.ism-answers{padding-left:20px}.ism-ans{margin:0 0 14px}.ism-ans p{margin:4px 0}.ism-ans audio{width:100%;max-width:420px}
.ism-tag{display:inline-block;font-size:.75rem;font-weight:700;background:var(--leaf,#e8f1ec);border-radius:99px;padding:1px 8px;margin-right:4px}
.ism-tips{list-style:none;padding:0}.ism-tips li{margin:8px 0}
.opts.opts-inline{display:flex;flex-wrap:wrap;gap:8px}.opts.opts-inline li{margin:0}.opts.opts-inline label{min-width:64px;justify-content:center}
.ism-card{scroll-margin-top:170px}
.slang-dlg{background:var(--sand,#f7f3ea);border-radius:14px;padding:14px 18px;margin:0 0 8px}.slang-dlg p{margin:6px 0}.slang-quiz li{margin:4px 0}.slang-ans summary{cursor:pointer;font-weight:700;color:var(--gum,#1E4A3D)}
body.exam-focus .answer-key{display:none}.answer-key details{border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin:10px 0;background:#fff}.answer-key summary{cursor:pointer;font-weight:700}.ak-passage{max-height:480px;overflow:auto;margin-top:8px}

/* home: PTE + IELTS mock tests side by side */
.mock-duo{display:grid;gap:22px}
@media (min-width:860px){.mock-duo{grid-template-columns:1fr 1fr}}
.mduo{border-radius:22px;padding:26px 24px 24px;color:#E6EEF8;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-lg)}
.mduo-pte{background:radial-gradient(500px 300px at 100% 0%,rgba(244,182,62,.22),transparent 60%),linear-gradient(135deg,#123A6B,#1F5FA8)}
.mduo-ielts{background:radial-gradient(500px 300px at 100% 0%,rgba(244,182,62,.2),transparent 60%),linear-gradient(135deg,#0F3B33,#1E6B5A)}
.mduo header h3{color:#fff;font:800 1.5rem/1.2 var(--display);margin:10px 0 6px}
.mduo header p{margin:0;color:#DCE7F5;opacity:.95}
.mduo-tag{display:inline-block;background:var(--wattle);color:#1b1404;font-weight:800;font-size:.8rem;padding:3px 11px;border-radius:999px}
.mduo-links{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mduo-links a{display:flex;align-items:center;gap:14px;background:#fff;border-radius:14px;padding:12px 14px;text-decoration:none;color:var(--ink);transition:transform .15s}
.mduo-links a:hover{transform:translateX(4px)}
.mduo-links b{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#E39A12,#F4B63E);color:#fff;font:800 1.1rem var(--display);flex:none}
.mduo-links strong{display:block;font:760 1.02rem var(--display);color:var(--deep)}
.mduo-links small{color:var(--muted)}
.mduo-cta{align-self:flex-start;margin-top:auto}

/* home page section colours: white → cream → soft blue → white → leaf → dark */
.band-cream{background:linear-gradient(180deg,#FBF6EA,#FDF9F1);border-top:1px solid #F1E6CC;border-bottom:1px solid #F1E6CC}
.band-mist{background:radial-gradient(800px 320px at 50% 0%,#DCE9F6,transparent 70%),#EEF4FA;border-bottom:1px solid #DCE6F0}
.band-cream .tc,.band-mist .mduo{box-shadow:0 10px 30px rgba(22,33,29,.08)}
.band-mocks .section-head{margin-bottom:22px}
@media (max-width:700px){.band{padding:48px 0}}
.section-head.center p{max-width:72ch}

.live-numbers{background:var(--leaf);border-radius:18px;padding:20px 22px;margin:8px 0 24px}
.live-numbers h2{margin-top:0}
.live-grid{list-style:none;padding:0;margin:0 0 10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.live-grid li{background:#fff;border-radius:14px;padding:14px 16px;box-shadow:0 6px 18px rgba(22,33,29,.06)}
.live-grid strong{display:block;font:800 1.7rem var(--display);color:var(--gum)}
.live-grid span{color:var(--muted);font-size:.95rem}
[data-live-box][hidden],[data-live-hide][hidden]{display:none!important}

/* "New today" */
.sig-strip a.today{background:var(--wattle);color:#1b1404!important;border-radius:999px;padding:2px 12px;font-weight:800;animation:tdpulse 2.4s ease-in-out 3}
@keyframes tdpulse{0%,100%{box-shadow:0 0 0 0 rgba(244,182,62,.6)}50%{box-shadow:0 0 0 6px rgba(244,182,62,0)}}
.today-band{background:linear-gradient(180deg,#FFF8E6,#FFFDF6);border-bottom:1px solid #F1E3BC;padding:22px 0}
.td-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.td-head strong{font:780 1.1rem var(--display);color:var(--deep,#16211D)}
.td-head a{margin-left:auto;font-weight:700}
.td-pill{background:var(--wattle);color:#1b1404;font-weight:800;font-size:.85rem;padding:3px 12px;border-radius:999px}
.td-grid{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,1fr);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
.td-grid li{scroll-snap-align:start}
.td-grid.td-page{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));overflow:visible}
.td-card{display:flex;flex-direction:column;gap:3px;height:100%;background:#fff;border:1px solid #EFE2BF;border-radius:16px;padding:14px 16px;text-decoration:none;color:var(--ink);box-shadow:0 6px 18px rgba(22,33,29,.06);transition:transform .15s}
.td-card:hover{transform:translateY(-3px)}
.td-card small{color:var(--muted);font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em}
.td-card strong{font:760 1.02rem var(--display);color:var(--gum)}
.td-card span:last-child{color:var(--muted);font-size:.92rem;line-height:1.4}
.td-ico{font-size:1.4rem}
.td-hot{background:linear-gradient(135deg,#FFF3D1,#fff);border-color:var(--wattle)}
.today-date{font-size:1.1rem}

/* free PDFs */
.side-pdfs .pdf-mini{display:flex;gap:12px;align-items:center;padding:8px 0;border-top:1px solid var(--leaf);text-decoration:none;color:var(--ink)}
.side-pdfs .pdf-mini img{width:52px;height:auto;border-radius:6px;box-shadow:0 3px 10px rgba(22,33,29,.15);flex:none}
.side-pdfs .pdf-mini strong{display:block;font-size:.95rem;color:var(--link)}
.side-pdfs .pdf-mini small{color:var(--muted)}
.side-pdfs .pdf-all{display:block;margin-top:8px;font-weight:700}
.band-pdfs{background:linear-gradient(180deg,#FFF8E6,#FFFCF4);border-top:1px solid #F1E3BC}
.pdf-grid{list-style:none;margin:22px 0 18px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px}
.pdf-grid a{display:flex;flex-direction:column;gap:4px;height:100%;background:#fff;border-radius:16px;padding:12px 12px 14px;text-decoration:none;color:var(--ink);box-shadow:0 8px 24px rgba(22,33,29,.08);transition:transform .15s}
.pdf-grid a:hover{transform:translateY(-4px)}
.pdf-grid img{width:100%;height:auto;border-radius:8px;border:1px solid var(--line);margin-bottom:6px}
.pdf-grid strong{font:760 1rem var(--display);color:var(--gum)}
.pdf-grid small{color:var(--muted)}
.pdf-grid em{font-style:normal;font-weight:800;color:var(--link);margin-top:auto}
.prose .td-grid,.prose .pdf-grid{padding-left:0}.prose .td-grid li,.prose .pdf-grid li{margin:0}
.voice-pick{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;background:var(--leaf);border-radius:12px;padding:8px 12px;margin:0 0 14px;font-size:.92rem}
.voice-pick label{display:flex;align-items:center;gap:8px;font-weight:700;margin:0}
.voice-pick select{width:auto;max-width:260px;padding:4px 8px;font-size:.92rem;margin:0}
.voice-pick .btn{padding:4px 12px;font-size:.88rem}
.voice-pick .hint{flex-basis:100%;margin:0}

/* Everyday English course */
.lesson-meta{display:inline-flex;gap:10px;align-items:center;background:var(--leaf);border-radius:999px;padding:4px 14px 4px 4px;font-weight:700;color:var(--gum);font-size:.92rem}
.lesson-meta .lv{background:var(--gum);color:#fff;border-radius:999px;padding:2px 10px}
.prose .phrase-list{list-style:none;padding:0}
.phrase-list li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--leaf)}
.phrase-list strong{font-size:1.08rem}
.phrase-list span{color:var(--muted);flex-basis:100%;padding-left:42px}
.si-list li{margin:10px 0}
.si-text{font-weight:700}
.si-mic{padding:3px 12px;font-size:.88rem}
.lesson-done{margin:24px 0 10px;padding:18px;border:2px dashed var(--line);border-radius:16px;text-align:center}
.lesson-nav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0}
.course-progress{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;background:var(--wattle-soft);border-radius:16px;padding:14px 18px;margin-bottom:18px}
.cp-bar{flex:1;min-width:140px;height:10px;background:#fff;border-radius:99px;overflow:hidden}.cp-bar span{display:block;height:100%;background:var(--gum);width:0}
.prose .course-list{list-style:none;padding:0;display:grid;gap:10px}
.course-list a{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px;text-decoration:none;color:var(--ink);transition:transform .15s}
.course-list a:hover{transform:translateX(4px);border-color:var(--gum)}
.course-list strong{display:block;font:760 1.05rem var(--display);color:var(--gum)}
.course-list small{color:var(--muted)}
.cl-num{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--leaf);color:var(--gum);font:800 1.1rem var(--display);flex:none}
.course-list a.is-done .cl-num{background:var(--gum);color:#fff}
.cl-done{margin-left:auto;font-style:normal;font-weight:800;color:var(--ok);white-space:nowrap}
/* hero: three doors */
.hero-doors{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:640px}
.hero-doors a{display:flex;flex-direction:column;gap:2px;height:100%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:16px;padding:14px 14px 12px;text-decoration:none;color:#fff;transition:background .15s,transform .15s}
.hero-doors a:hover{background:rgba(255,255,255,.18);transform:translateY(-3px)}
.hero-doors span{font-size:1.4rem}
.hero-doors strong{font:760 1.02rem/1.25 var(--display)}
.hero-doors small{color:rgba(255,255,255,.78);font-size:.85rem}
.hero-doors li:first-child a{background:var(--wattle);border-color:var(--wattle);color:#1b1404}
.hero-doors li:first-child small{color:#3d2e07}
@media (max-width:560px){.hero-doors{grid-template-columns:1fr}.hero-doors a{flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap}.hero-doors small{flex-basis:100%;padding-left:36px;margin-top:-4px}
  .hero-visual .fc-score{display:none}
  .hero-visual .fc-word{display:flex;position:relative;left:auto;bottom:auto;width:auto;transform:none}}

/* My progress button, welcome back, reminders, social proof */
.prog-btn{display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 12px;border-radius:10px;background:var(--leaf);color:var(--gum);font-weight:800;text-decoration:none;font-size:.92rem;white-space:nowrap}
.prog-btn svg{width:20px;height:20px}
.prog-btn:hover,.prog-btn[aria-current]{background:var(--gum);color:#fff}
@media (max-width:1240px){.prog-btn span{display:none}.prog-btn{width:42px;justify-content:center;padding:0}}
@media (max-width:900px){.prog-btn{display:none}}
.bottom-bar a svg[viewBox]{width:22px;height:22px}
.welcome-back{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;background:#fff;border:1px solid #EFE2BF;border-radius:14px;padding:10px 14px;margin-bottom:14px;font-size:.95rem}
.welcome-back .wb-hi{font-weight:800;color:var(--gum)}
.welcome-back .wb-pill{background:var(--wattle-soft);border-radius:999px;padding:2px 10px;font-weight:700}
.welcome-back .btn{padding:6px 14px;font-size:.9rem}
.welcome-back .btn-gold{margin-left:auto}
.backup-toast{position:fixed;left:16px;right:16px;bottom:84px;z-index:70;max-width:520px;margin:0 auto;background:#fff;border:2px solid var(--wattle);border-radius:16px;padding:14px 16px;box-shadow:0 16px 40px rgba(22,33,29,.22);font-size:.95rem}
.backup-toast p{margin:0 0 8px}.backup-toast p:last-child{margin:0}
@media (min-width:900px){.backup-toast{bottom:20px;left:auto;right:20px}}
.social-proof{display:inline-block;background:var(--leaf);color:var(--gum);font-weight:700;border-radius:999px;padding:4px 14px;font-size:.9rem;margin:0 0 12px}
.prog-storage{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin:10px 0}
.ps-row{display:flex;flex-wrap:wrap;gap:6px 22px}
.ps-limits summary{cursor:pointer;font-weight:700;color:var(--link);margin-top:6px}
.ps-limits ul{margin:8px 0 0;padding-left:20px;font-size:.95rem}
.pmix{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 12px}
.pmix-i{background:var(--leaf);border-radius:12px;padding:8px 12px;font-size:.92rem;color:var(--muted)}
.pmix-i b{display:block;font:800 1.4rem var(--display);color:var(--gum)}
/* Today page */
.td-upd{color:var(--muted);font-size:.9rem}
.td-status{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;background:var(--wattle-soft);border-radius:14px;padding:12px 16px;margin-bottom:8px}
.td-status .hint{flex-basis:100%;margin:0}
.td-two{display:grid;gap:16px}
@media (min-width:900px){.td-two{grid-template-columns:1fr 1fr}}
.td-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px}
.td-box h3{margin:.2em 0}
.td-box .practice{margin:0;border:0;padding:0;box-shadow:none}
.td-tip{display:flex;flex-direction:column;gap:4px;margin:18px 0;background:linear-gradient(135deg,#E8F0EA,#fff);border:1px solid var(--line);border-left:6px solid var(--gum);border-radius:14px;padding:14px 18px;text-decoration:none;color:var(--ink)}
.td-tip small{color:var(--muted);font-weight:700;text-transform:uppercase;font-size:.75rem;letter-spacing:.04em}
.td-tip strong{font:780 1.15rem var(--display);color:var(--gum)}
.td-yest{margin:24px 0;border:1px solid var(--line);border-radius:14px;padding:12px 16px}
.td-yest summary{cursor:pointer;font-weight:800;color:var(--link)}
.td-yest li{margin:8px 0}
.td-box+.td-two{margin-top:16px}.td-two .td-tip{margin:0}.td-tip em{font-style:normal;font-weight:800;color:var(--link);margin-top:auto}
/* Today: quiz questions side by side on wide screens */
@media (min-width:900px){
  #td-quiz{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:4px 22px;align-items:start}
  #td-quiz>.box-actions,#td-quiz>.result,#td-quiz>.sec-timer{grid-column:1/-1}
}
.page-wide .td-grid.td-page{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
@media (min-width:1000px){.page-grid.page-wide{grid-template-columns:minmax(0,1fr)}}

/* ---------- Listening Room & stories player ---------- */
.lr-player{background:#fff;border:1px solid var(--line);border-top:6px solid var(--gum);border-radius:18px;padding:14px 16px;box-shadow:var(--shadow);margin:10px 0 22px}
.lr-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.lr-speed{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}
.lr-speed button{border:0;background:#fff;padding:8px 12px;font:inherit;font-weight:600;cursor:pointer;color:var(--ink)}
.lr-speed button[aria-pressed="true"]{background:var(--gum);color:#fff}
.lr-prog{height:4px;background:var(--leaf);border-radius:4px;margin:12px 0 6px;overflow:hidden}
.lr-prog span{display:block;height:100%;width:0;background:var(--wattle);transition:width .3s}
.prose .lr-lines{list-style:none;padding:0;margin:8px 0;max-height:520px;overflow-y:auto}
.lr-lines.is-hidden li .lr-text{filter:blur(6px);user-select:none}
.lr-lines li{display:flex;flex-wrap:wrap;align-items:flex-start;gap:4px 8px;padding:8px 10px;border-radius:10px;border-left:4px solid transparent;transition:background .2s}
.lr-lines li.is-on{background:#FFF6D6;border-left-color:var(--wattle)}
.lr-text{flex:1 1 300px;cursor:pointer;line-height:1.55}
.lr-text:hover{color:var(--gum)}
.lr-who{display:inline-block;min-width:3.4em;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em}
.lr-h0{color:#B03A6E}.lr-h1{color:#1F6F8B}
.lr-tools{display:inline-flex;gap:4px}
.lr-tools button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:2px 7px;cursor:pointer;font-size:.95rem}
.lr-out{flex-basis:100%;font-size:.92rem}
.lr-out:empty{display:none}
.lr-help{margin:.4em 0 0}
.prose .rs-list{list-style:none;padding:0}
.rs-list li{display:grid;gap:6px;padding:12px 0;border-bottom:1px solid var(--leaf)}
.rs-list .btn{padding:6px 12px;font-size:.92rem}
.rs-sounds{color:var(--muted)}
.rs-sounds em{color:var(--ink);font-weight:700;font-style:normal}
.prose table.decoder td:first-child{white-space:nowrap}
@media (max-width:700px){.prose table.decoder td:first-child{white-space:normal}}
.ws-print{display:none}
@media print{
  body.print-ws main .prose > *:not(.ws-print){display:none!important}
  body.print-ws .page-hero,body.print-ws .side,body.print-ws .voice-pick,.sig-strip,.backup-toast,.welcome-back{display:none!important}
  .ws-print{display:block}
  body:not(.print-ws) .ws-print{display:none}
  .ws-print h2{margin-top:0}.ws-print li{margin:.5em 0}.ws-tx p{margin:.25em 0}
  .ws-lines{height:6em;border-bottom:1px solid #999}
  .ws-key{margin-top:2em;font-size:10pt;border-top:1px dashed #999;padding-top:.5em}
  .lr-player .lr-bar,.lr-player .lr-tools,.lr-help,.lr-prog{display:none!important}
}

/* ---------- Hero board (home): clear offer, new text every day ---------- */
.hero-v3 h1 .h-tests{color:var(--wattle);white-space:nowrap}
.hero-tests{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:16px 0 0;color:#CFE0D8;font-size:.92rem}
.hero-tests span{font-weight:700;margin-right:2px}
.hero-tests a{color:#fff;text-decoration:none;font-weight:800;font-size:.85rem;letter-spacing:.02em;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-left:4px solid var(--tc,#fff)}
.hero-tests a:hover{background:rgba(255,255,255,.2)}
.ht-pte{--tc:#3FBF8C}.ht-ielts{--tc:#6FA8EC}.ht-oet{--tc:#F08A6E}.ht-toefl{--tc:#A891F0}.ht-cam{--tc:#39C3C5}.ht-celpip{--tc:#F2B84B}
.hero-visual.hero-board{min-height:0;display:grid;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:16px;backdrop-filter:blur(4px);box-shadow:0 30px 70px -30px rgba(0,0,0,.6)}
.hb-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;color:#fff}
.hb-head strong{font-size:.98rem}
.hb-head a{margin-left:auto;color:var(--wattle);font-weight:700;font-size:.9rem;text-decoration:none}
.hb-head a:hover{text-decoration:underline}
.hb-pill{background:var(--wattle);color:#1b1404;font-weight:800;font-size:.78rem;padding:3px 10px;border-radius:999px}
.hb-sec{margin:2px 0 -4px;color:#CFE0D8;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.hb-tests{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.hb-test{display:flex;flex-direction:column;gap:2px;height:100%;background:#fff;border-radius:16px;padding:12px 12px 10px;text-decoration:none;color:var(--ink);border-top:6px solid var(--tc);box-shadow:var(--shadow-lg);transition:transform .15s;animation:rise .7s cubic-bezier(.2,.8,.2,1) both}
.hb-test:hover{transform:translateY(-3px)}
.hb-test b{font:800 1.55rem/1.05 var(--display);color:var(--tc)}
.hb-what{font-weight:700;font-size:.9rem;line-height:1.25}
.hb-no{font-size:.78rem;color:var(--muted)}
.hb-test em{font-style:normal;font-weight:800;font-size:.82rem;color:var(--tc);margin-top:auto;padding-top:4px}
.t-pte{--tc:var(--c-pte)}.t-ielts{--tc:var(--c-ielts)}.t-oet{--tc:var(--c-oet)}
.hb-test:nth-child(2),.hb-tests li:nth-child(2) .hb-test{animation-delay:.1s}.hb-tests li:nth-child(3) .hb-test{animation-delay:.2s}
.hb-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hb-card{display:flex;flex-direction:column;gap:4px;background:#fff;color:var(--ink);text-decoration:none;border-radius:16px;padding:12px 14px;box-shadow:var(--shadow-lg);transition:transform .15s;animation:rise .7s cubic-bezier(.2,.8,.2,1) .3s both}
.hb-card:hover{transform:translateY(-3px)}
.hb-label{font-size:.78rem;font-weight:800;color:var(--muted)}
.hb-score{display:flex;align-items:center;gap:10px;font:800 1.9rem/1 var(--display);color:var(--gum)}
.hb-score span{display:flex;flex-direction:column}
.hb-score small{font:700 .7rem var(--body);color:var(--muted)}
.hb-score i{font-style:normal}
.hb-score b{color:var(--wattle);font-size:1.5rem}
.hb-foot{font-size:.74rem;color:var(--muted)}
.hb-conv{border-left:6px solid var(--wattle)}
.hb-word{border-left:6px solid var(--c-oet)}
.hb-word strong{font:800 1.75rem/1.05 var(--display);color:var(--gum)}
.hb-word span:last-child{font-size:.88rem;color:var(--muted)}
.hb-phrase{border-left:6px solid var(--c-pte)}
.hb-phrase strong{font-size:1.08rem;color:var(--gum);line-height:1.3}
.hb-phrase span:last-child{font-size:.85rem;color:var(--muted)}
@media (prefers-reduced-motion:reduce){.hb-test,.hb-card{animation:none}}
@media (max-width:979px){.hero-visual.hero-board{max-width:560px}}
@media (max-width:560px){
  .hero-visual.hero-board{display:grid;padding:12px;gap:10px;border-radius:20px;margin-top:4px}
  .hero-visual.hero-board .hb-card{display:flex}
  .hb-tests{gap:8px}.hb-test{padding:10px 9px 8px}.hb-test b{font-size:1.25rem}.hb-what{font-size:.8rem}.hb-no{font-size:.7rem}
  .hb-score{font-size:1.5rem;gap:6px}.hb-score b{font-size:1.2rem}.hb-word strong{font-size:1.4rem}
  .hb-head a{margin-left:0}
  .hero-tests{font-size:.85rem}
}
.hero-board p.hb-sec{font-size:.74rem;margin:2px 0 -2px;max-width:none}
.hb-basic{background:linear-gradient(135deg,#FFF6D6,#FFE7A3);border-left:6px solid var(--wattle);padding:14px 16px;gap:6px}
.hb-basic .hb-label{color:#6B4E00;font-size:.9rem;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.hb-tag{background:var(--gum);color:#fff;font-size:.7rem;padding:2px 8px;border-radius:999px;letter-spacing:.02em}
.hero-board .hb-ph-row{display:flex;align-items:center;gap:10px;margin:2px 0;max-width:none}
.hb-ph-row strong{font:800 1.35rem/1.2 var(--display);color:var(--gum)}
.hb-say{flex:none;width:42px;height:42px;border-radius:50%;border:0;background:#fff;box-shadow:var(--shadow);font-size:1.15rem;cursor:pointer}
.hb-say:hover{transform:scale(1.06)}
.hb-ph-m{font-size:.88rem;color:#5b4a1c}
.hb-go{align-self:flex-start;margin-top:4px;padding:8px 14px;font-size:.92rem}
@media (max-width:560px){.hb-ph-row strong{font-size:1.15rem}.hb-say{width:38px;height:38px}}

/* ---------- course levels & practice certificates ---------- */
.level-jump{display:flex;flex-wrap:wrap;gap:8px}
.level-jump a{background:var(--leaf);color:var(--gum);font-weight:700;text-decoration:none;padding:6px 14px;border-radius:999px}
.level-jump a:hover{background:var(--gum);color:#fff}
.lv-cefr{display:inline-block;vertical-align:middle;background:var(--wattle);color:#1b1404;font-size:.8rem;padding:2px 10px;border-radius:999px;margin-left:6px}
.level-progress p{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;background:#F7FAF8;border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin:0 0 12px}
.level-progress .cp-bar{flex:1 1 120px;max-width:220px}
.level-progress .lp-done{background:var(--wattle-soft);border-color:var(--wattle)}
.cert-cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;background:var(--wattle-soft);border:2px solid var(--wattle);border-radius:16px;padding:14px 18px;margin:16px 0}
.cert-cta p{margin:0;flex:1 1 260px}
.notice-soft{background:#F7FAF8;border-left:4px solid var(--gum);padding:10px 14px;border-radius:8px}
.cert-app canvas{width:100%;height:auto;border-radius:10px;box-shadow:var(--shadow-lg);margin:12px 0;display:block}
.cert-form input{width:100%;max-width:520px;font-size:1.15rem;padding:12px 14px;margin:6px 0 2px}
.cert-actions{display:flex;flex-wrap:wrap;gap:10px}
.prose .cert-list{list-style:none;padding:0;display:grid;gap:10px}
.cert-list li{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px}
.cert-list li>span:nth-child(2){flex:1 1 220px}
.cert-list strong{display:block;color:var(--gum)}
.cert-list small{color:var(--muted)}
.cert-list .cl-num{width:auto;min-width:42px;padding:0 6px;font-size:.95rem}
.cert-todo{background:var(--wattle-soft);border-radius:16px;padding:16px 20px}
.cert-todo h2{margin-top:0}
.cert-print-img{display:none}
@media print{
  body.print-cert>*:not(.cert-print-img){display:none!important}
  body.print-cert .cert-print-img{display:block;width:100%;height:auto;page:cert}
  @page cert{size:A4 landscape;margin:8mm}
}
.sig-strip a.listen{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:2px 12px}
.sig-strip a.listen:hover,.sig-strip a.listen[aria-current]{background:rgba(255,255,255,.24);border-color:var(--wattle)}
.sig-strip a.learn{color:#FFE7A3}

/* ---------- Home: Listening Room band ---------- */
.band-listen{background:radial-gradient(700px 400px at 90% 0%,rgba(244,182,62,.18),transparent 60%),linear-gradient(135deg,#1A1F3D 0%,#2B2F63 55%,#3B2F6B 100%);color:#E6E8F5}
.band-listen h2{color:#fff;margin:.35em 0 .3em}
.band-listen p{color:#D6D9EE}
.lb-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;margin-bottom:22px}
.lb-head>div{max-width:62ch}
.lb-stats{display:flex;flex-direction:column;gap:6px;align-items:flex-end;margin:0;font-size:.95rem}
.lb-stats strong{color:var(--wattle);font-size:1.3rem}
.lb-mine{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);padding:4px 12px;border-radius:999px}
.lb-mine strong{font-size:1rem;color:#fff}
.lb-grid{display:grid;gap:18px}
@media (min-width:900px){.lb-grid{grid-template-columns:1.15fr 1fr}}
.lb-feature{display:flex;flex-direction:column;gap:10px;background:linear-gradient(160deg,#F4B63E 0%,#E8892B 100%);color:#1b1404;text-decoration:none;border-radius:22px;padding:22px 24px;box-shadow:0 30px 60px -28px rgba(0,0,0,.7);position:relative;overflow:hidden;transition:transform .15s}
.lb-feature:hover{transform:translateY(-3px)}
.lb-feature::after{content:"🎧";position:absolute;right:-10px;bottom:-30px;font-size:9rem;opacity:.16;transform:rotate(-12deg)}
.lb-badge{align-self:flex-start;background:#1b1404;color:#fff;font-weight:800;font-size:.8rem;padding:4px 12px;border-radius:999px}
.lb-hosts{display:flex;align-items:center;gap:6px}
.lb-hosts i{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font-style:normal;font-weight:800;color:#fff;border:3px solid #fff}
.lb-hosts .h-m{background:#B03A6E}.lb-hosts .h-j{background:#1F6F8B;margin-left:-14px}
.lb-wave{display:flex;align-items:center;gap:4px;height:36px;margin-left:10px}
.lb-wave b{display:block;width:5px;border-radius:3px;background:#1b1404;opacity:.7;animation:lbw 1.1s ease-in-out infinite}
.lb-wave b:nth-child(1){height:30%}.lb-wave b:nth-child(2){height:70%;animation-delay:.1s}.lb-wave b:nth-child(3){height:100%;animation-delay:.2s}.lb-wave b:nth-child(4){height:55%;animation-delay:.3s}.lb-wave b:nth-child(5){height:85%;animation-delay:.4s}.lb-wave b:nth-child(6){height:40%;animation-delay:.5s}.lb-wave b:nth-child(7){height:65%;animation-delay:.6s}
@keyframes lbw{0%,100%{transform:scaleY(.5)}50%{transform:scaleY(1)}}
@media (prefers-reduced-motion:reduce){.lb-wave b{animation:none}}
.lb-feature strong{font:800 clamp(1.6rem,3vw,2.2rem)/1.1 var(--display)}
.lb-f-sum{font-size:1.02rem;max-width:46ch}
.lb-f-meta{font-size:.88rem;font-weight:700;opacity:.8}
.lb-play{align-self:flex-start;background:#1b1404!important;color:#fff!important;margin-top:4px}
.lb-list{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:22px;padding:14px}
.lb-list-h{display:flex;justify-content:space-between;margin:2px 4px 10px;font-weight:800;color:#fff!important}
.lb-list-h a,.lb-more a{color:var(--wattle);text-decoration:none;font-weight:700}
.lb-list ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
.lb-ep{display:flex;align-items:center;gap:10px;padding:8px;border-radius:14px;text-decoration:none;color:#fff;background:rgba(255,255,255,.06);transition:background .15s}
.lb-ep:hover{background:rgba(255,255,255,.14)}
.lb-thumb{position:relative;flex:none;width:58px;height:44px;border-radius:10px;display:grid;place-items:center;font:800 1.2rem var(--display);color:#fff}
.lb-thumb i{position:absolute;right:4px;bottom:2px;font-style:normal;font-size:.7rem;opacity:.85}
.lb-t0{background:linear-gradient(135deg,#1E7A5A,#2EA67A)}.lb-t1{background:linear-gradient(135deg,#1F5FA8,#4C8BD6)}.lb-t2{background:linear-gradient(135deg,#B03A6E,#D9573B)}.lb-t3{background:linear-gradient(135deg,#6B4FBB,#8F75DB)}
.lb-meta{display:flex;flex-direction:column;min-width:0}
.lb-meta strong{font-size:.92rem;line-height:1.25;color:#fff}
.lb-meta small{color:#B9BDDC;font-size:.78rem}
.lb-ep.is-today{outline:2px solid var(--wattle)}
.lb-ep.is-today .lb-meta small::after{content:" · today";color:var(--wattle);font-weight:800}
.lb-ep.is-heard .lb-thumb::after{content:"✓";position:absolute;left:-4px;top:-4px;width:18px;height:18px;border-radius:50%;background:var(--wattle);color:#1b1404;font-size:.7rem;display:grid;place-items:center}
.lb-more{display:flex;flex-wrap:wrap;gap:6px 16px;margin:12px 4px 2px;font-size:.92rem}
@media (max-width:560px){.lb-list ul{grid-template-columns:1fr}.lb-stats{align-items:flex-start}.lb-feature{padding:18px}}
.lr-today{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;background:linear-gradient(160deg,#FFF3D1,#FFE2A8);border:2px solid var(--wattle);border-radius:18px;padding:16px 18px;margin:0 0 20px}
.lr-today strong{font:800 1.25rem var(--display);color:var(--gum);flex:1 1 240px}
.lr-today span:not(.lb-badge){flex:1 1 100%;color:#5b4a1c;order:3}
.lr-today .btn{order:2}
.cert-strip{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;background:var(--wattle-soft);border-radius:16px;padding:14px 18px;margin:0 0 18px}
.cert-strip>span{font-size:2rem}
.cert-strip p{margin:0;flex:1 1 260px}
.lr-voices{background:#F7FAF8;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:10px 0 0;display:grid;gap:8px}
.lr-vrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.lr-vrow .lr-who{min-width:4.5em;font-weight:800}
.lr-vrow select{flex:1 1 200px;max-width:340px;padding:6px 8px}
.lr-vrow .btn{padding:6px 12px;font-size:.9rem}
.lr-voices .hint{margin:2px 0 0}

/* ---------- grouped "mega" menus ---------- */
.mg-h{margin:2px 12px 4px;font:800 .74rem var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--wattle-deep,#B07A10)}
.menu-mega .mg ul{list-style:none;margin:0;padding:0}
.menu-mega a{padding:7px 12px}
.menu-mega strong{font-size:.98rem}
.menu-mega span{font-size:.84rem}
.mg-all{display:block;grid-column:1/-1;border-top:1px solid var(--line);margin-top:4px;padding:10px 12px 4px!important;font-weight:800;color:var(--gum)!important;text-decoration:none}
.mg-all:hover{background:none!important;text-decoration:underline}
@media (min-width:921px){
  .site-header .wrap,.header-row{position:relative}
  .nav-item.has-menu:has(.menu-mega){position:static}
  .menu-mega{width:auto;max-width:min(1040px,calc(100vw - 32px));left:0;right:auto!important;transform:none;padding:14px 10px 8px}
  .nav-item.open .menu-mega{display:grid;gap:4px 8px}
  .mega-2{grid-template-columns:repeat(2,240px)}
  .mega-3{grid-template-columns:repeat(3,250px)}
  .mega-4{grid-template-columns:repeat(4,240px)}
  .menu-mega .mg{min-width:0}
}
@media (max-width:920px){
  .menu-mega .mg{padding:4px 0 6px}
  .mg-h{margin:10px 8px 2px}
  .menu-mega span{display:none}
}
@media (min-width:921px){.menu-mega{top:calc(100% - 4px)}.menu-mega::before{top:-26px;height:26px}}
@media (min-width:900px){.lb-list ul{max-height:440px;overflow-y:auto;padding-right:4px;scrollbar-width:thin}}
@media (max-width:899px){.lb-list ul{max-height:360px;overflow-y:auto}}

/* ---------- Complete English Course ---------- */
.course-crumb{display:inline-block;background:var(--wattle-soft);border-radius:999px;padding:6px 14px;font-weight:700;font-size:.92rem;margin:0 0 6px}
.prose table.gram-table td,.prose table.vocab-table td{vertical-align:top}
.prose table.gram-table td del{color:var(--bad)}
.prose table.vocab-table td:first-child{white-space:nowrap}
@media (max-width:700px){.prose table.vocab-table td:first-child{white-space:normal}}
.week-head{display:inline-flex;gap:10px;align-items:center;background:var(--leaf);border-radius:999px;padding:4px 14px 4px 4px;font-weight:700;color:var(--gum)}
.week-head .lv{background:var(--gum);color:#fff;border-radius:999px;padding:2px 10px}
.prose .course-tasks{list-style:none;padding:0;display:grid;gap:10px;counter-reset:ct}
.course-tasks a{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px;text-decoration:none;color:var(--ink);transition:transform .15s}
.course-tasks a:hover{transform:translateX(4px);border-color:var(--gum)}
.ct-ico{font-size:1.5rem;width:44px;height:44px;display:grid;place-items:center;background:var(--leaf);border-radius:12px;flex:none}
.ct-text{flex:1;min-width:0}.ct-text strong{display:block;color:var(--gum);font-family:var(--display)}.ct-text small{color:var(--muted)}
.ct-state{font:800 1.3rem var(--display);color:var(--line);flex:none}
.course-tasks li.is-done a{background:#F2FAF5;border-color:#BFE3CC}.course-tasks li.is-done .ct-state{color:var(--ok)}.course-tasks li.is-done .ct-ico{background:#DDF1E4}
.course-dash{margin:0 0 22px}
.cd-start{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;background:linear-gradient(135deg,#FFF6D6,#FFE7A3);border:2px solid var(--wattle);border-radius:18px;padding:18px 20px}
.cd-start>div{flex:1 1 260px}.cd-start p{margin:.2em 0 0;color:#5b4a1c}
.cd-card{background:#fff;border:1px solid var(--line);border-top:6px solid var(--wattle);border-radius:18px;padding:16px 20px;box-shadow:var(--shadow)}
.cd-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.cd-top .lv{background:var(--gum);color:#fff;border-radius:999px;padding:2px 12px;font-weight:700;font-size:.85rem}
.cd-streak{font-weight:800;color:#B05A10}
.cd-big{margin:.6em 0 .4em}.cd-big strong{font:800 2rem var(--display);color:var(--gum)}
.cd-card .cp-bar{display:block;max-width:none;height:10px}
.cd-next{margin:.8em 0 .4em}
.prose .cw-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.cw-steps li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:2px}
.cw-steps span{font-size:1.5rem}.cw-steps strong{color:var(--gum)}.cw-steps small{color:var(--muted)}
.course-weeks .wk-dots{margin-left:auto;font-size:1rem;letter-spacing:2px;color:var(--gum);flex:none}
.course-weeks li.is-done .cl-num{background:var(--gum);color:#fff}
.course-weeks li.is-current a{border:2px solid var(--wattle)}
.cp-card{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;background:var(--wattle-soft);border-radius:16px;padding:14px 18px;margin:8px 0 18px}
.cp-card p{margin:0;flex:1 1 280px}
.nav-mobile-cta{display:none}
@media (max-width:920px){
  .nav-mobile-cta{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0 10px;border-bottom:1px solid var(--leaf)}
  .nav-mobile-cta .btn{flex:1 1 100%;text-align:center;justify-content:center;white-space:nowrap}
}
@media (max-width:1300px){.header-cta{display:none}}
.cd-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-top:10px}
.cd-levels a{display:flex;justify-content:space-between;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 12px;text-decoration:none;color:var(--ink)}
.cd-levels a.is-on{border:2px solid var(--wattle);background:var(--wattle-soft)}
.cd-levels strong{color:var(--gum);font-size:.92rem}.cd-levels span{font-weight:800;color:var(--muted);font-size:.88rem}
.home-faq{max-width:860px}
.hero-board p.hb-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:4px 0 0;max-width:none}
.hb-cta-row .hb-go{margin-top:0}
.hb-les{font-weight:700;color:#5b4a1c;font-size:.88rem}
.hb-course-note{font-size:.78rem;color:#7a6324}
/* Additional service card (1-to-1 tutors, affiliate) */
.svc{background:linear-gradient(135deg,#FFF8E6,#FCEFD0);border:1px solid #EBCB80;border-left:6px solid var(--wattle);border-radius:16px;padding:20px 22px;margin:2em 0;box-shadow:0 6px 20px rgba(30,74,61,.08)}
.svc .svc-tag{margin:0 0 6px;font-size:.8rem;font-weight:700;color:#7a5a12;letter-spacing:.02em}
.svc .svc-tag span{background:var(--gum);color:#fff;border-radius:999px;padding:2px 10px;margin-right:6px;text-transform:uppercase;font-size:.7rem;letter-spacing:.06em}
.svc .svc-h{font-size:1.3rem;margin:.2em 0 .35em;border:0;padding:0}
.svc .svc-p{margin:0 0 .5em;max-width:62ch}
.svc .svc-list{margin:0 0 14px;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.93rem}
.svc .svc-list li{margin:0;padding-left:22px;position:relative}
.svc .svc-list li::before{content:"✓";position:absolute;left:0;color:var(--ok);font-weight:700}
.svc .svc-btn{display:inline-block}
.svc .svc-fine{margin:10px 0 0;font-size:.8rem;color:var(--muted);max-width:none}
.svc-side{margin:0 0 16px;padding:16px 16px 14px;border-left-width:5px}
.svc-side .svc-h{font-size:1.02rem;line-height:1.3}
.svc-side .svc-btn{display:block;text-align:center;font-size:.92rem;padding-left:10px;padding-right:10px}
.svc-side .svc-tag{font-size:.72rem}
@media (max-width:999px){.svc-side{display:none}}
.svc .svc-h::before,.svc .svc-h::after{display:none}
.prose .svc .svc-h{padding-left:0;margin-top:.2em}
.svc-side .svc-h{font-family:var(--display);font-weight:700;color:var(--gum);margin:.2em 0 .7em}


/* ================= home page v4 (both editions) ================= */
.ed-global .hero-v3{background:radial-gradient(900px 500px at 85% 20%,rgba(46,166,160,.30),transparent 60%),radial-gradient(700px 500px at 0% 100%,rgba(31,95,168,.38),transparent 60%),linear-gradient(135deg,#0F2E26 0%,#1E4A3D 55%,#1F5B5A 100%)}
.h-stats ul{grid-template-columns:repeat(var(--n,6),minmax(0,1fr));gap:10px;padding:20px 0}
.h-stats ul.h-stats-6{--n:6}.h-stats ul.h-stats-5{--n:5}
.h-stats a{display:block;text-decoration:none;color:inherit;border-radius:12px;padding:4px 2px}
.h-stats a:hover{background:rgba(255,255,255,.25)}
.h-stats strong{font-size:2.1rem}
.h-stats span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9rem;margin-top:4px}
@media (max-width:1100px){.h-stats span{font-size:.8rem}}
@media (max-width:860px){.h-stats ul{grid-template-columns:repeat(3,minmax(0,1fr))}.h-stats ul.h-stats-5 li:nth-child(n+4){grid-column:span 1}}
@media (max-width:480px){.h-stats ul{grid-template-columns:repeat(2,minmax(0,1fr))}.h-stats strong{font-size:1.7rem}.h-stats span{font-size:.78rem}}

.h-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 24px;margin-bottom:18px}
.h-head h2{margin:.35em 0 .2em}.h-head p{margin:0;color:var(--muted)}
.h-countdown{font-weight:700;color:var(--muted);margin:0}.h-countdown b{color:var(--gum)}
.h-today{background:radial-gradient(900px 300px at 0% 0%,#FFF1CC,transparent 70%),#FFFAEF;border-bottom:1px solid #F1E6CC}
.wb-new{font-weight:800;color:var(--gum)}
.h-tiles{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.h-tile{background:#fff;border:1px solid #EFE2BF;border-radius:18px;box-shadow:0 8px 22px rgba(22,33,29,.07);transition:transform .15s;min-width:0}
.h-tile:hover{transform:translateY(-3px)}
.h-tile>a{display:flex;flex-direction:column;gap:4px;height:100%;padding:16px 18px;text-decoration:none;color:var(--ink)}
.h-tile strong{font:760 1.08rem/1.25 var(--display);color:var(--gum)}
.h-tile>a>span:last-child{color:var(--muted);font-size:.93rem}
.h-tile-tag{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.h-quiz{grid-row:span 2;padding:18px;background:linear-gradient(160deg,#1E4A3D,#2C6753);border:0;color:#fff;display:flex;flex-direction:column;gap:10px}
.h-quiz .h-tile-tag{color:var(--wattle)}
.h-q{font:760 1.2rem/1.3 var(--display);margin:0}
.h-opts{display:grid;gap:8px}
.h-opts button{text-align:left;font:inherit;font-weight:700;background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.28);border-radius:12px;padding:10px 12px;cursor:pointer}
.h-opts button:hover:not(:disabled){background:rgba(255,255,255,.2)}
.h-opts button.ok{background:#2EA67A;border-color:#2EA67A}.h-opts button.no{background:#B3261E;border-color:#B3261E}
.h-q-out{margin:0;font-size:.95rem;color:#E4F0EA}.h-q-out a,.h-quiz .h-more{color:var(--wattle);font-weight:800}
.h-quiz .h-more{margin-top:auto}
.h-tile[data-tile="learn"]{border-top:5px solid #6B4FBB}.h-tile[data-tile="listen"]{border-top:5px solid #5A3EB5}
.h-tile[data-tile="pte"]{border-top:5px solid var(--c-pte)}.h-tile[data-tile="ielts"]{border-top:5px solid var(--c-ielts)}.h-tile[data-tile="extra"]{border-top:5px solid var(--wattle)}
@media (max-width:900px){.h-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.h-quiz{grid-row:auto;grid-column:1/-1}}
@media (max-width:560px){.h-tiles{grid-template-columns:1fr}}

.h-listen{background:radial-gradient(700px 360px at 95% 0%,rgba(244,182,62,.16),transparent 60%),linear-gradient(135deg,#1B1446 0%,#352585 55%,#5A3EB5 100%);padding:44px 0}
.h-listen-grid{display:grid;gap:22px 40px;align-items:center}
@media (min-width:900px){.h-listen-grid{grid-template-columns:1.1fr 1fr}}
.h-listen h2{font-size:clamp(1.7rem,3.2vw,2.4rem)}
.h-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:12px 0 18px}
.h-chips li{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:4px 12px;font-weight:700;font-size:.9rem;color:#fff}
.h-listen-cta{display:flex;flex-wrap:wrap;gap:10px}
.h-eps{list-style:none;padding:0;margin:0;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.h-eps .lb-meta strong{display:block;font-size:.95rem;line-height:1.25}
.h-eps .lb-meta small{color:#C9C3EC}
@media (max-width:480px){.h-eps{grid-template-columns:1fr}}
.h-lb-stats{margin:12px 0 0;font-size:.9rem}.h-lb-stats>span{margin-right:12px}

.h-oneline{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
@media (max-width:640px){.h-oneline{white-space:normal}}

.h-mocks{padding:36px 0}
.h-mocks-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-bottom:14px}
.h-mocks-head h2{margin:0;font-size:clamp(1.5rem,2.8vw,2rem)}.h-mocks-head p{margin:0;color:var(--muted);font-weight:700}
.h-mock-row{list-style:none;padding:0;margin:0;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}
.h-mock-row a{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #DCE6F0;border-radius:14px;padding:10px 14px;text-decoration:none;color:var(--ink);transition:transform .15s}
.h-mock-row a:hover{transform:translateY(-2px)}
.h-mock-row b{flex:none;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:#fff;font:800 1rem var(--display)}
.h-mock-row .t-pte b{background:var(--c-pte)}.h-mock-row .t-ielts b{background:var(--c-ielts)}.h-mock-row .t-oet b{background:var(--c-oet)}
.h-mock-row strong{display:block;font-size:.98rem;color:var(--gum)}.h-mock-row small{color:var(--muted)}
@media (max-width:860px){.h-mock-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.h-mock-row{grid-template-columns:1fr}}

.h-learn{background:linear-gradient(180deg,#F3F0FC,#FAF8FF);border-top:1px solid #E4DEF7;border-bottom:1px solid #E4DEF7}
.h-learn-split{align-items:center}
.h-steps{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.h-steps a{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #E4DEF7;border-radius:16px;padding:14px 16px;text-decoration:none;color:var(--ink);box-shadow:0 8px 20px rgba(60,40,140,.07);transition:transform .15s}
.h-steps a:hover{transform:translateX(4px)}
.h-steps b{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font:800 1.2rem var(--display);color:#fff;background:linear-gradient(135deg,#4C3AA8,#6B4FBB)}
.h-steps strong{display:block;color:#3B2F8A;font-size:1.05rem}.h-steps small{color:var(--muted)}
.h-chiprows{margin-top:26px;display:grid;gap:8px}
.h-chiprows p{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
.h-chiprows a{background:#fff;border:1px solid #E4DEF7;border-radius:999px;padding:4px 12px;text-decoration:none;font-weight:700;font-size:.92rem;color:#3B2F8A}
.h-chiprows a:hover{background:#ECE7FB}

.h-small{list-style:none;padding:0;margin:0;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}
.h-small a{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 12px;text-decoration:none;color:var(--ink);height:100%;transition:transform .15s}
.h-small a:hover{transform:translateY(-2px)}
.h-small i{flex:none;width:36px;height:36px;border-radius:10px;background:var(--leaf);display:grid;place-items:center;font-style:normal;font-size:1.1rem}
.h-small strong{display:block;font-size:.95rem;line-height:1.2;color:var(--gum)}.h-small small{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
@media (max-width:980px){.h-small{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.h-small{grid-template-columns:repeat(2,minmax(0,1fr))}}

.h-trustfaq{background:linear-gradient(180deg,#EEF4FA,#F6F9FC);border-top:1px solid #DCE6F0}
.h-tf-grid{display:grid;gap:32px}
@media (min-width:900px){.h-tf-grid{grid-template-columns:1fr 1.25fr;align-items:start}}
.h-trust h2{margin-top:0}
.h-trust ul{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:12px}
.h-trust li{display:flex;gap:12px;align-items:flex-start}
.h-trust li strong{display:block}
.h-live{background:#fff;border:1px solid #DCE6F0;border-radius:16px;padding:16px}
.h-live-h{margin:0 0 8px;font-weight:800;color:var(--gum)}
.h-live ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.h-live li{flex-direction:column;gap:0}
.h-live li strong{font:800 1.6rem/1 var(--display);color:var(--gum)}.h-live li span{color:var(--muted);font-size:.9rem}
.h-live-since{margin:10px 0 0;font-size:.85rem;color:var(--muted)}
.h-trustfaq .home-faq{max-width:none}
.h-trustfaq .home-faq h2{margin-top:0}
.h-tile[data-tile="extra"]{grid-column:2/-1}
.h-tile[data-tile="extra"]>a{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.h-tile[data-tile="extra"] .h-tile-tag{flex-basis:100%}
@media (max-width:900px){.h-tile[data-tile="extra"]{grid-column:1/-1}}
@media (max-width:560px){.h-tile[data-tile="extra"]{grid-column:auto}}
.h-trustfaq .faq{margin-top:0}.h-trustfaq .faq h2,.h-trust h2{font-size:clamp(1.6rem,3vw,2.2rem);margin:0 0 16px}
main:has(.h-trustfaq)+.site-footer{margin-top:0}
@media (min-width:901px){.h-quiz{grid-row:span 3}}
.h-stats ul.h-stats-6 li:last-child{grid-column:auto}

.ed-switch{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin:18px 0 6px;font-size:.92rem;color:#D9E6DF}
.ed-switch a{font-weight:700;color:var(--wattle)}
.site-visits{margin:0 0 6px;font-size:.9rem;color:#C5D6CD}.site-visits strong{color:#fff}
.au-nudge{position:fixed;left:16px;right:16px;bottom:80px;z-index:60;max-width:460px;margin:0 auto;background:#fff;color:var(--ink);border-radius:16px;padding:14px 16px;box-shadow:var(--shadow-lg);border-top:5px solid var(--wattle)}
.au-nudge p{margin:0 0 8px}.au-nudge p:last-child{margin:0;display:flex;flex-wrap:wrap;gap:8px}
@media (min-width:900px){.au-nudge{left:auto;right:24px;bottom:24px}}

.socials{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:12px 0}
.socials a{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.socials svg{width:20px;height:20px;flex:none}
.socials-footer a{width:38px;height:38px;justify-content:center;border-radius:50%;background:rgba(255,255,255,.1);color:#fff}
.socials-footer a:hover{background:var(--wattle);color:#1b1404}
@media (min-width:1000px){.footer-brand .socials-footer{margin:0}}
.socials-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.socials-list a{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 14px;color:var(--ink)}
.socials-list a:hover{border-color:var(--gum)}
.socials-list svg{width:26px;height:26px;color:var(--gum)}
.socials-list strong{display:block;color:var(--gum)}.socials-list small{color:var(--muted)}
.socials-list{padding-left:0!important;margin-left:0}.socials-list li{margin:0}

.foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;margin:18px 0 6px}
.foot-bottom .ed-switch{margin:0}
.foot-follow{display:flex;align-items:center;gap:12px;color:#D9E6DF;font-size:.92rem}
.foot-follow strong{color:#fff}
.foot-follow .socials{margin:0}

.hero-new{margin:14px 0 0;font-weight:700}.hero-new a{color:var(--wattle)}
.sh-paths{list-style:none;padding:0!important;margin:16px 0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.sh-paths li{margin:0}
.sh-paths a{display:flex;flex-direction:column;gap:6px;height:100%;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;color:var(--ink);border-top:5px solid var(--wattle);transition:transform .15s}
.sh-paths a:hover{transform:translateY(-2px)}
.sh-paths strong{color:var(--gum);font:760 1.08rem var(--display)}.sh-paths span{color:var(--muted)}
/* section colours: Aussie English = ochre, English for work = navy (matches the video series palette) */
.sec-aussie .page-hero{background:radial-gradient(600px 300px at 90% 0%,rgba(255,255,255,.18),transparent 60%),linear-gradient(135deg,#7A3E06,#B5700E 60%,#E39A12)}
.sec-work .page-hero{background:radial-gradient(600px 300px at 90% 0%,rgba(244,182,62,.22),transparent 60%),linear-gradient(135deg,#0F2742,#1B4573)}
.sec-aussie .page-hero h1,.sec-aussie .page-hero .lede,.sec-aussie .page-hero .crumbs,.sec-aussie .page-hero .crumbs a,.sec-work .page-hero h1,.sec-work .page-hero .lede,.sec-work .page-hero .crumbs,.sec-work .page-hero .crumbs a{color:#fff}
.sec-aussie .side-section{border-top-color:#C98512}.sec-work .side-section{border-top-color:#1B4573}
.sec-aussie .practice{border-top-color:#C98512}.sec-work .practice{border-top-color:#1B4573}

.everything{margin:2.6em 0 1em;padding:22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#F7FAF8,#fff)}
.everything>h2{margin-top:0}
.ev-grid{display:grid;gap:18px 24px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.ev-col h3{font-size:1rem;margin:0 0 6px}.ev-col h3 a{color:var(--gum);text-decoration:none}
.ev-col ul{list-style:none;padding:0!important;margin:0}.ev-col li{margin:3px 0;font-size:.93rem}
.ev-more a{font-weight:800}
/* E2Language course offer (affiliate link + discount code) */
.e2o{background:linear-gradient(135deg,#EEF4FF,#E2ECFB);border:1px solid #B9CDEB;border-left:6px solid var(--c-ielts);border-radius:16px;padding:20px 22px;margin:-1em 0 2em;box-shadow:0 6px 20px rgba(31,95,168,.08)}
.e2o .svc-tag{margin:0 0 6px;font-size:.8rem;font-weight:700;color:#1F4E8A}
.e2o .svc-tag span{background:#1F4E8A;color:#fff;border-radius:999px;padding:2px 10px;margin-right:6px;text-transform:uppercase;font-size:.7rem;letter-spacing:.06em}
.e2o .svc-h{font-size:1.3rem;margin:.2em 0 .35em;border:0;padding:0}
.e2o .svc-p{margin:0 0 .6em;max-width:62ch}
.e2o-code{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 12px}
.e2o-code>span{background:#fff;border:2px dashed #1F5FA8;border-radius:10px;padding:6px 12px;font-weight:700}
.e2o-code strong{letter-spacing:.06em;color:#1F4E8A}
.e2o-copy{padding:6px 14px;font-size:.88rem}
.e2o .svc-btn{display:inline-block}
.e2o .svc-fine{margin:10px 0 0;font-size:.8rem;color:var(--muted);max-width:none}
.e2o .svc-h::before,.e2o .svc-h::after{display:none}
.e2o{margin:2em 0}.svc+.e2o{margin-top:-1em}
