/* Scoped to the learning-space cover; teaching, exams and editing keep their layout. */
.teacher-home[hidden],.home-toolbar [hidden],#chat-workspace[hidden] { display:none!important; }
.home-mode #main { height:calc(100dvh - var(--header-height)); overflow:auto; padding:0; max-width:none; }
.home-mode .topbar .product-wordmark small { display:none; }
.home-toolbar { display:flex; align-items:center; gap:12px; margin-left:auto; }
.home-toolbar button { display:inline-flex; align-items:center; gap:9px; min-height:36px; border:1px solid var(--line); border-radius:9px; padding:6px 12px; color:#75603b; background:#fffdf6; font:inherit; font-size:12px; cursor:pointer; }
.home-toolbar button:hover { background:#f4ecd9; }
.home-toolbar button:disabled { cursor:default; color:var(--muted); }
.wh-motion-mark { width:7px; height:7px; border-radius:50%; background:#b5ad9d; }
[aria-checked=true] .wh-motion-mark { background:#a17a32; }
.teacher-home { background:#faf9f6; min-height:100%; }
.wh-hero { height:552px; overflow:hidden; position:relative; isolation:isolate; background:#faf9f6; }
.wh-backdrop { position:absolute; inset:0; z-index:-1; background:url('/static/assets/teacher-home/scene-backdrop.png') center/cover no-repeat; }
.wh-team { position:absolute; width:60%; height:auto; top:57px; right:1%; z-index:2; pointer-events:none; }
.wh-book { position:absolute; width:70%; height:auto; right:2%; bottom:-44px; z-index:1; pointer-events:none; }
.wh-copy { position:relative; z-index:3; margin:118px 0 0 51px; width:640px; }
.wh-eyebrow { position:absolute; top:-74px; margin:0; color:#87602a; font-size:17px; font-weight:600; letter-spacing:.02em; }
.wh-copy h1 { margin:0 0 22px; font-size:64px; line-height:1.22; font-weight:800; letter-spacing:-.04em; color:#312719; white-space:nowrap; }
.wh-copy h1 span { color:#b58a3f; }
.wh-subtitle { font-size:26px; font-weight:500; color:#3e3020; margin:0; line-height:1.5; }
.wh-description { font-size:18px; color:#6c665c; line-height:1.7; margin:25px 0 0; }
.wh-actions { display:flex; gap:20px; margin-top:32px; }
.wh-actions .btn { min-height:58px; font-size:17px; border-radius:10px; padding:12px 22px; display:inline-flex; align-items:center; gap:24px; justify-content:space-between; }
.wh-actions .wh-primary { min-width:228px; background:#916b2b; color:#fffdf8; border-color:#916b2b; box-shadow:0 5px 15px #77551f22; }
.wh-actions .wh-primary:hover { background:#765321; }
.wh-actions .wh-secondary { color:#654d2b; border-color:#dfcda5; background:#fffdf5dc; }
.wh-actions .wh-secondary:hover { background:#fffefa; }
.wh-actions .btn span { font-size:23px; }
.wh-label { position:absolute; z-index:4; color:#775326; font-size:14px; pointer-events:none; }
.wh-label small { display:block; font-size:13px; margin-top:3px; }
.wh-adviser { top:20px; right:32%; text-align:center; font-size:17px; }
.wh-science { top:60px; right:51.5%; }
.wh-code { top:47px; right:7%; }
.wh-math { top:375px; right:58%; }
.wh-language { top:296px; right:2%; }
.wh-mentor { margin:2px 26px 0; min-height:208px; display:grid; grid-template-columns:420px minmax(0,1fr); border:1px solid #dfcda5; border-radius:14px; overflow:hidden; background:#fffefa; }
.wh-mentor-image { position:relative; min-height:206px; overflow:hidden; }
.wh-mentor-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 24%; }
.wh-mentor-copy { align-self:center; padding:20px 34px; }
.wh-kicker { margin:0; color:#916322; font-size:18px; }
.wh-mentor h2 { color:#352719; font-size:30px; line-height:1.4; margin:8px 0; font-weight:700; white-space:normal; }
.wh-roles { font-size:18px; color:#574531; margin:8px 0 0; }
.wh-note { font-size:16px; color:#6b665e; margin:8px 0 0; }
.wh-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:16px 26px 0; }
.wh-benefits>button { display:flex; align-items:center; gap:19px; min-height:110px; padding:16px 25px; border:1px solid #e5d6b7; border-radius:14px; background:#fffefa; text-align:left; color:#403220; font:inherit; cursor:pointer; }
.wh-benefits>button:hover { background:#fbf5e8; border-color:#c7ad77; }
.wh-benefit-icon { display:grid; place-items:center; flex:none; width:69px; height:69px; border:1px solid #e6d1a8; border-radius:50%; background:#f3e8cf; color:#92703b; }
.wh-benefit-icon svg { width:32px; height:32px; }
.wh-benefits strong { display:block; font-size:21px; line-height:1.5; }
.wh-benefits small { display:block; font-size:16px; color:#6b6254; margin-top:4px; text-wrap:balance; }
.wh-footer { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:14px 28px 18px; color:#776e5e; font-size:12px; }
.wh-footer button { border:0; background:none; color:#80612c; font:inherit; cursor:pointer; padding:4px 0; }
.wh-team-intro { display:flex; gap:22px; padding:18px; background:#f6f0e2; border-radius:14px; margin-bottom:22px; }
.wh-team-intro img { width:104px; height:114px; object-fit:cover; object-position:center 26%; border-radius:12px; flex:none; }
.wh-team-intro h3 { margin:0 0 6px; font-size:20px; }
.wh-team-intro p { margin:0; }
.wh-course-teachers { display:grid; gap:10px; }
.wh-course-teacher { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 16px; border:1px solid var(--line); border-radius:12px; }
.wh-course-teacher strong { display:block; font-size:16px; }
.wh-course-teacher p { margin:3px 0 0; font-size:13px; }
.wh-course-teacher button { flex:none; }
.wh-team-note { font-size:12px; margin-top:18px; }
.teacher-home.motion-on .wh-team { animation:wh-float 9s ease-in-out infinite; }
.teacher-home.motion-on .wh-book { animation:wh-book-float 12s ease-in-out infinite; }
.teacher-home.motion-on .wh-backdrop { animation:wh-light 18s ease-in-out infinite; }
@keyframes wh-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-7px); } }
@keyframes wh-book-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(5px); } }
@keyframes wh-light { 0%,100% { opacity:1; } 50% { opacity:.82; } }
.reduce-motion .teacher-home *, .teacher-home.motion-off * { animation:none!important; }
@media (prefers-reduced-motion:reduce) { .teacher-home * { animation:none!important; transition:none!important; } }
@media(max-width:1499px) {
 .wh-hero { height:510px; }
 .wh-copy { margin:108px 0 0 34px; width:60%; }
 .wh-eyebrow { top:-65px; font-size:15px; }
 .wh-copy h1 { font-size:clamp(40px,4vw,60px); }
 .wh-subtitle { font-size:21px; }
 .wh-description { font-size:16px; }
 .wh-actions { margin-top:28px; gap:12px; }
 .wh-actions .btn { font-size:15px; padding-inline:17px; gap:15px; }
 .wh-actions .wh-primary { min-width:194px; }
 .wh-team { width:59%; top:72px; right:0; }
 .wh-book { bottom:-13px; }
 .wh-adviser { top:36px; right:30%; }
 .wh-science { top:56px; right:49%; }
 .wh-code { top:58px; right:5%; }
 .wh-math,.wh-language { display:none; }
 .wh-mentor { grid-template-columns:32% minmax(0,1fr); margin-inline:22px; min-height:196px; }
 .wh-mentor-image { min-height:194px; }
 .wh-mentor-copy { padding:18px 25px; }
 .wh-mentor h2 { font-size:23px; }
 .wh-kicker { font-size:17px; }
 .wh-roles { font-size:16px; }
 .wh-note { font-size:14px; }
 .wh-benefits { margin-inline:22px; gap:12px; }
 .wh-benefits>button { padding-inline:16px; gap:11px; }
 .wh-benefit-icon { width:48px; height:48px; }
 .wh-benefit-icon svg { width:28px; height:28px; }
 .wh-benefits strong { font-size:18px; }
 .wh-benefits small { font-size:13px; }
}
@media(max-width:1150px) {
 .home-mode .topbar>.small-text { display:none; }
 .wh-hero { height:530px; }
 .wh-copy { margin-left:25px; width:64%; }
 .wh-copy h1 { font-size:40px; }
 .wh-subtitle { font-size:19px; }
 .wh-description { font-size:15px; }
 .wh-actions { flex-direction:column; align-items:flex-start; gap:12px; margin-top:24px; }
 .wh-actions .btn { min-height:49px; }
 .wh-team { width:55%; top:196px; }
 .wh-book { width:58%; right:0; bottom:-4px; }
 .wh-label { display:none; }
 .wh-mentor-copy { padding-inline:20px; }
 .wh-mentor h2 { font-size:20px; }
 .wh-roles { font-size:14px; }
 .wh-note { font-size:13px; }
}
@media(max-width:980px) { .wh-copy h1 { font-size:36px; } .wh-subtitle { font-size:18px; } .wh-benefits>button { padding:14px 10px; gap:8px; } .wh-benefit-icon { width:38px; height:38px; } .wh-benefits strong { font-size:16px; } }
@media print { .teacher-home * { animation:none!important; } .home-toolbar { display:none; } }
