/* Teachers & schools page. Shared tokens live in styles.css. */

.schools-page .desktop-nav{gap:18px;margin-left:16px}
.schools-page .section{padding-top:64px;padding-bottom:64px}
.schools-page .section-heading{margin-bottom:36px}

.school-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:start;padding-top:56px;padding-bottom:28px}
.school-hero h1{font-size:clamp(2.7rem,4.4vw,4.35rem);line-height:1.08}
.school-hero .eyebrow{margin-bottom:18px}
.school-lead{margin-top:18px;max-width:38rem;font-size:1.125rem;line-height:1.7;color:var(--text)}
.school-caption{margin-top:16px;font-size:.875rem;line-height:1.6;color:var(--muted)}
.founder-line{margin:12px 0 0;font-size:.875rem;line-height:1.6;color:var(--muted)}
.founder-line a{text-decoration:underline;text-underline-offset:3px}
.school-end .founder-line{margin-top:0}
.school-hero .hero-actions{margin-top:28px;align-items:center}

.button-outline{background:transparent;color:var(--ink);border-color:var(--line)}
.button-outline:hover{background:var(--mint)}

.school-proof{padding:18px 18px 16px;background:#f4f2f1;border:1px solid #efeae6;border-radius:15px}
.school-proof-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.school-proof-top>p{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.08em;line-height:1.5;color:#614e43}
.school-proof .source-sheet-window{aspect-ratio:auto;max-height:280px}
.school-proof .source-sheet-image-layer{position:static;display:block;aspect-ratio:auto;transform:none}
.school-proof .source-sheet-window img{display:block;width:100%;height:auto;max-height:280px;object-fit:cover;object-position:center top}
.school-proof .result-title{margin:0;font-family:"Segoe UI","Source Sans 3",system-ui,sans-serif;font-size:18px;font-weight:700;letter-spacing:normal;line-height:1.3;color:#0f172a}
.school-proof-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px;font-size:.875rem}
.school-proof-links a{text-decoration:underline;text-underline-offset:4px;font-weight:500}
.school-proof-note{margin-top:8px;font-size:.75rem;line-height:1.55;color:#5c463b}
.school-proof .vedora-grade strong span{color:#5c463b}
.schools-page .footer-note{color:#5f5752}

.problem-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.problem-grid article{border-top:1px solid var(--line);padding-top:20px}
.problem-grid p{margin-top:10px;color:var(--muted);font-size:.9375rem;line-height:1.7}
.problem-close{margin-top:28px;max-width:40rem;color:var(--ink);font-size:1.0625rem}

.how-steps{display:flex;flex-direction:column;gap:64px}
.how-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.how-step:nth-child(even) .how-copy{order:2}
.how-copy .eyebrow{margin-bottom:12px}
.how-copy p:not(.eyebrow):not(.how-note){margin-top:12px;color:var(--muted);font-size:1rem;line-height:1.7}
.how-note{margin-top:14px;font-size:.8125rem;line-height:1.6;color:#7a685d}
.how-shot-wrap{margin:0}
.how-shot{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--line);box-shadow:0 10px 30px rgba(53,40,32,.06);background:#fff}
.how-shot-wrap--phone{display:flex;justify-content:center}
.how-shot--phone{width:min(100%,280px)}

.see-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:center}
.see-grid .eyebrow{margin-bottom:14px}
.see-list{margin:22px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px}
.see-list li{padding-left:18px;position:relative;color:var(--text);line-height:1.65}
.see-list li::before{content:"";position:absolute;left:0;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.see-note{margin-top:18px;font-size:.875rem;line-height:1.6;color:var(--muted)}

.status-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
.status-now,.status-next{padding:24px 24px 8px;border:1px solid var(--line);border-radius:12px;background:#fff}
.status-now h3,.status-next h3,.status-request h3{font-family:var(--serif);font-weight:400;font-size:1.5rem}
.status-now ul,.status-next ul{list-style:none;margin:18px 0 16px;padding:0}
.status-now li,.status-next li{position:relative;padding-left:28px;margin:0 0 12px;font-size:.9375rem;line-height:1.55}
.status-now li::before{content:"";position:absolute;left:1px;top:.45em;width:12px;height:7px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
.status-next li::before{content:"";position:absolute;left:2px;top:.35em;width:12px;height:12px;border:1.5px solid #8d7b70;border-radius:50%}
.status-request{margin-top:18px;padding:20px 24px;border:1px solid var(--line);border-radius:12px;background:var(--mint)}
.status-request p{margin-top:8px;color:var(--text)}
.status-foot{margin-top:18px;font-size:.875rem;color:var(--muted)}

.trust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.trust-grid article{padding:22px 22px 20px;border:1px solid var(--line);border-radius:12px;background:#fff}
.trust-grid p{margin-top:10px;color:var(--muted);font-size:.9375rem;line-height:1.7}
.trust-grid a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}

.school-start{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.start-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:22px}
.start-list li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px}
.start-list li>span{font-family:var(--serif);font-size:1.35rem;line-height:1.2;color:#84604b}
.start-list p{margin-top:6px;color:var(--muted);font-size:.9375rem;line-height:1.65}

.school-faq{margin-top:12px}
.school-faq a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.school-end{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:36px;align-items:center;margin:12px auto 64px;padding:40px 44px;border:1px solid var(--line);border-radius:12px;background:#fff}
.school-end .eyebrow{margin-bottom:12px}
.school-end h2{font-size:clamp(2rem,3vw,2.8rem)}
.school-end p:not(.eyebrow){margin-top:14px;color:var(--muted)}
.school-end-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.student-return{font-size:.875rem;color:var(--muted);text-decoration:underline;text-underline-offset:4px}

@media(max-width:1180px){
  .school-hero{gap:32px}
  .schools-page .desktop-nav{gap:12px}
}

@media(max-width:900px){
  .school-hero,.how-step,.see-grid,.status-columns,.trust-grid,.school-start,.school-end{grid-template-columns:minmax(0,1fr)}
  .how-step:nth-child(even) .how-copy,.how-step:nth-child(even) .how-shot-wrap{order:0}
  .school-hero{padding-top:36px;gap:28px}
  .school-hero h1{font-size:clamp(2.5rem,8vw,3.5rem);line-height:1.12}
  .school-lead{font-size:1.0625rem}
  .school-proof{max-width:640px}
  .how-steps{gap:40px}
  .problem-grid{grid-template-columns:minmax(0,1fr)}
  .school-end{padding:28px 24px;margin-bottom:48px}
}

@media(max-width:680px){
  .schools-page .nav-actions>.button{font-size:.75rem;padding-inline:10px}
  .school-hero .hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px}
  .school-hero .hero-actions .button{width:100%}
  .school-end-actions{width:100%}
  .school-end-actions .button{width:100%}
  .school-proof .source-sheet-window,.school-proof .source-sheet-window img{max-height:200px}
  .status-now,.status-next,.trust-grid article{padding-inline:16px}
}

@media(max-width:480px){
  .school-proof-top{flex-direction:column}
  .start-list li{grid-template-columns:32px minmax(0,1fr)}
}

@media(prefers-reduced-motion:reduce){
  .button-outline:hover{transform:none}
}
