/* APEX — lavender, apricot and warm paper. Shared by every course page. */
:root{--paper:#fffcf9;--plum:#49354d;--muted:#786b7c;--orange:#f5934c;--lavender:#e7ddf0;--line:rgba(99,68,111,.12);color-scheme:light}
body{font-family:'Nunito Sans',system-ui,sans-serif!important;background:var(--paper)!important;color:var(--plum)!important}
h1,h2,h3,h4{font-family:'Nunito',system-ui,sans-serif!important;font-weight:800!important}
button,input,select,textarea{font-family:inherit}button,a,input{transition:background .2s,box-shadow .2s,transform .2s}
a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #9569ad;outline-offset:4px}
button,a[style*="background:#F5934C"]{border-radius:999px!important}a[style*="background:#F5934C"],button[style*="background:#F5934C"]{box-shadow:none!important}
a[style*="background:#F5934C"]:hover,button[style*="background:#F5934C"]:hover{background:#ed8540!important;transform:translateY(-2px)}
a[style*="background:rgba(99,68,111,"]{border-radius:999px!important}
input,select,textarea{background:#fff!important;border:1px solid #dfd3e4!important;color:var(--plum)!important;border-radius:16px!important}input::placeholder{color:#89798f}
header{background:rgba(255,252,249,.95)!important;border-bottom-color:var(--line)!important}
header>div:first-child{min-height:80px}section{scroll-margin-top:125px}
div[style*="backdrop-filter:blur(10px)"]{background:#fff!important;box-shadow:0 10px 35px rgba(86,54,96,.035)}
div[style*="border-radius:28px"],div[style*="border-radius:30px"]{border-color:var(--line)!important}
.apex-hero{max-width:1280px!important;padding-top:42px!important;padding-bottom:32px!important}
.apex-hero-grid{grid-template-columns:1.02fr 1fr!important;gap:54px!important}
.apex-hero h1{font-size:clamp(42px,5.2vw,68px)!important;line-height:1.08!important;letter-spacing:-.045em!important}
.apex-hero h1 span{color:#9973b5!important}.apex-hero p{max-width:480px!important}
.apex-hero>p{max-width:none!important;font-size:11px!important;margin-top:22px!important}
.apex-art-panel{position:relative;isolation:isolate;min-width:0;background:#e7ddf0;border-radius:44% 44% 32px 32px / 7% 7% 32px 32px;padding-bottom:78px;margin-bottom:20px}
.apex-hero-art{display:block;width:100%;height:450px;object-fit:cover;border-radius:inherit;mix-blend-mode:multiply}
.apex-art-caption{position:absolute;top:24px;left:26px;right:24px;z-index:1;display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700;color:#624871}
.apex-sparkle{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fffcf9;font-size:26px}
.apex-art-badge{position:absolute;left:-22px;top:36%;width:125px;height:125px;display:grid;place-content:center;text-align:center;font-weight:800;line-height:1.35;background:#ffd277;color:#654122;border:5px solid #ffe5ab;border-radius:38% 47% 35% 45%;transform:rotate(-9deg);box-shadow:0 10px 24px #9c6b4420}
.apex-art-note{position:absolute;bottom:20px;left:22px;right:22px;background:#fff;border-radius:25px;min-height:88px;padding:18px;display:flex;align-items:center;gap:13px;box-shadow:0 12px 30px #6645720d;transform:rotate(-3deg)}
.apex-note-icon{flex:none;display:grid;place-items:center;width:43px;height:43px;background:#fbeada;color:#9d501f;border-radius:50%;font-size:27px}
.apex-art-note strong{font-size:14px;display:block}.apex-art-note div>span{display:block;font-size:11px;color:var(--muted);margin-top:5px}.apex-art-note>a{margin-left:auto;color:var(--plum);font-size:24px}
.apex-login-art{width:100%;height:170px;object-fit:cover;object-position:50% 58%;border-radius:30px;margin-bottom:25px}
.apex-dashboard-banner{margin-top:25px;background:linear-gradient(110deg,#fce5cd,#ece0f3);border-radius:32px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;padding:24px 32px;gap:24px}
.apex-dashboard-banner h2{font-size:30px;margin:10px 0}.apex-dashboard-banner p{margin:0;color:var(--muted)}.apex-dashboard-banner span{font-size:11px;letter-spacing:.13em;font-weight:800;color:#79568c}.apex-dashboard-banner img{width:200px;height:150px;object-fit:cover;border-radius:28px;mix-blend-mode:multiply}
@media(max-width:760px){.apex-hero-grid{grid-template-columns:1fr!important;gap:36px!important}.apex-hero{padding-top:30px!important}.apex-hero h1{font-size:48px!important}.apex-art-panel{max-width:520px;width:100%;margin:0 auto}.apex-hero-art{height:auto;aspect-ratio:1.12}.apex-art-badge{left:-8px;width:110px;height:110px;font-size:14px}.apex-art-caption{font-size:12px}.apex-dashboard-banner{padding:22px}.apex-dashboard-banner h2{font-size:24px}.apex-dashboard-banner img{width:110px;height:140px}header>div:first-child{min-height:72px;gap:10px!important}header>div:first-child>div:last-child{gap:12px!important}header span{font-size:15px!important}}
@media(max-width:400px){.apex-hero h1{font-size:41px!important}.apex-art-note{left:14px;right:14px;padding:14px;gap:9px}.apex-art-note strong{font-size:12px}.apex-dashboard-banner img{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.apex-button{border-radius:999px!important;box-shadow:none!important}
.apex-instructor-monogram{display:grid;place-items:center;width:155px;height:155px;background:#e7ddf0;border:8px solid #f8f1fa;border-radius:44% 50% 42% 48%;font:800 64px 'Nunito',sans-serif;color:#9569ad;transform:rotate(-7deg)}
/* Runtime-generated accent labels need the same readable contrast as static copy. */
a{color:#a74e1c}a:hover{color:#843a16}
[style*="color: rgb(245, 147, 76);"]{color:#a74e1c!important}
.apex-avatar{display:block;flex:none;width:52px;height:52px;border-radius:50%;background-image:url('assets/learner-avatars.png');background-size:400% auto;background-repeat:no-repeat;border:3px solid #fffcf9;background-color:#e7ddf0}
.apex-avatar-stack{width:46px;height:46px;margin-left:-10px}.apex-avatar-stack:first-child{margin-left:0}
.apex-read-reviews{margin-left:6px;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.apex-reviews{max-width:1160px;margin:0 auto;padding:70px clamp(18px,4vw,48px)}
.apex-review-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.apex-review-eyebrow{font-size:12px;letter-spacing:.13em;color:#a74e1c;font-weight:700}.apex-review-heading h2{font-size:clamp(32px,4vw,48px);line-height:1.15;margin:14px 0}.apex-review-heading p{font-size:16px;color:#786b7c;margin:0}
.apex-review-score{display:flex;flex-direction:column;align-items:center;gap:4px;flex:none;background:#f0e6f5;padding:20px 28px;border-radius:26px}.apex-review-score strong{font-size:38px}.apex-review-score strong span{font-size:16px;color:#786b7c}.apex-review-score small{color:#786b7c}.apex-review-stars{color:#99620e;letter-spacing:2px}
.apex-review-disclosure{color:#786b7c;font-size:12px;line-height:1.6;max-width:730px;margin:22px 0}.apex-review-filters{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.apex-review-filter{padding:11px 20px;font-size:14px;font-weight:700;border:1px solid #ded0e7;cursor:pointer}.apex-review-filter[aria-pressed="true"]{border-color:#9973b5}
.apex-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.apex-review-card{display:flex;flex-direction:column;min-width:0;padding:25px;border:1px solid #e7ddea;border-radius:28px;background:#fff}.apex-review-card:nth-child(3n+2){background:#fbf2eb}.apex-review-card:nth-child(3n){background:#f4edf8}.apex-review-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.apex-review-language{background:#ffffffb3;border:1px solid #e7ddea;padding:4px 10px;border-radius:20px;font-size:12px;color:#716376}.apex-review-card h3{font-size:20px;line-height:1.55;margin:20px 0 10px}.apex-review-card blockquote{margin:0 0 25px;font-size:15px;line-height:1.85;color:#716376}.apex-review-author{display:flex;align-items:center;gap:10px;margin-top:auto}.apex-review-author strong{display:block;font-size:13px;line-height:1.6}.apex-review-author div>span{font-size:12px;color:#786b7c}.apex-review-sample{font-size:11px;color:#786b7c;margin-top:15px}
@media(max-width:900px){.apex-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.apex-review-grid{grid-template-columns:1fr}.apex-review-heading{align-items:flex-start;flex-direction:column}.apex-review-score{flex-direction:row;gap:12px;padding:13px 20px;width:100%;justify-content:center}.apex-review-score strong{font-size:28px}.apex-review-card{padding:23px}.apex-read-reviews{display:inline-block}}
