.page-head{max-width:820px;margin:0 auto;padding:48px 22px 8px}
.page-head h1{font-family:var(--serif);color:var(--gold);font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.2;margin:0}
main.prose{max-width:820px;margin:0 auto;padding:16px 22px 64px;line-height:1.7;font-size:1.06rem}
main.prose h2,main.prose h3,main.prose h4{font-family:var(--serif);color:var(--gold-bright);line-height:1.3;margin:1.6em 0 .5em}
main.prose img{max-width:100%;height:auto;border-radius:var(--radius);display:block;margin:1em auto}
main.prose a{color:var(--gold)}
main.prose blockquote{border-left:3px solid var(--gold);margin:1em 0;padding:.2em 1em;color:var(--ink-soft)}
main.prose table{border-collapse:collapse;width:100%}main.prose td,main.prose th{border:1px solid var(--line);padding:6px 10px}
main.prose iframe{border-radius:var(--radius)}
main.prose div[style*="padding-top"]{margin:1.2em 0}
.meta{color:var(--ink-soft);font-size:.9rem}
.post-list{display:grid;gap:18px}
.post-card{display:grid;grid-template-columns:160px 1fr;gap:16px;background:var(--navy-soft);border:1px solid var(--line);border-radius:var(--radius);padding:14px}
.post-card img{margin:0;width:160px;height:110px;object-fit:cover}
.post-card h3{margin:0 0 .2em}
@media(max-width:600px){.post-card{grid-template-columns:1fr}.post-card img{width:100%;height:auto}}
nav.top a[aria-current]{color:var(--gold)}
.lead-fig{margin:8px 0 28px}.lead-fig img{margin:0 auto;width:100%;aspect-ratio:16/9;object-fit:cover}
.lead-fig figcaption{color:var(--ink-soft);font-size:.85rem;text-align:center;margin-top:8px;font-style:italic}
.origin-card{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center;background:rgba(255,255,255,.04);border:1px solid rgba(212,175,55,.35);border-radius:var(--radius);padding:24px;margin:0 0 32px}
.origin-card img,.cho-intro img{width:100%;border-radius:var(--radius);margin:0}
.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;margin:0}
.origin-card h2{margin-top:4px}
.cho-intro{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:center;margin-bottom:28px}
.lede{font-size:1.1rem}
.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin:8px 0 36px}
.video-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:14px}
.video-card h3{margin:12px 0 6px;font-size:1.1rem}.video-card p{margin:0;font-size:.92rem}
.vframe{position:relative;aspect-ratio:16/9}.vframe iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:6px}
.doc-card img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px;margin:0}
.quiet-note{margin-top:48px;opacity:.6;font-size:.85rem}
@media(max-width:640px){.origin-card,.cho-intro{grid-template-columns:1fr}}
.origin-card .btn,.origin-card .btn:hover{color:var(--navy)!important;font-weight:700}
/* ---- Mobile pass (mirrors learn site.css: 720px nav breakpoint, 640px layout) ---- */
html,body{overflow-x:hidden}
main.prose{overflow-wrap:anywhere}
main.prose img,main.prose video,main.prose iframe{max-width:100%}
main.prose iframe:not([style*="absolute"]){width:100%}
main.prose iframe[src*="msgsndr"],main.prose iframe[src*="leadconnector"],main.prose iframe[src*="irisconnect"],main.prose iframe[id^="inline-"]{width:100%!important;min-height:620px;border:0}
main.prose table{display:block;overflow-x:auto}
main.prose pre{white-space:pre-wrap}
main.prose [style*="width"]:not(iframe):not([style*="absolute"]){max-width:100%}
header.site{position:relative}
.nav-toggle{min-width:44px;min-height:44px}
@media(max-width:720px){
  nav.top.show{left:12px;right:12px;z-index:100;max-height:80vh;overflow:auto}
  nav.top.show a{display:block;padding:12px 10px;font-size:1rem;min-height:44px}
}
@media(max-width:640px){
  .page-head{padding:28px 16px 4px}
  main.prose{padding:12px 16px 48px;font-size:1rem}
  main.prose h1{font-size:1.6rem}main.prose h2{font-size:1.35rem}main.prose h3{font-size:1.15rem}
  .origin-card{padding:16px;gap:14px}.origin-card img{max-width:220px;margin:0 auto}
  .cho-intro img{max-width:240px;margin:0 auto}
  .video-grid{grid-template-columns:1fr;gap:16px}
  .btn{display:inline-block;min-height:44px;padding:12px 20px;max-width:100%;white-space:normal;text-align:center}
  footer a{display:inline-block;padding:8px 6px}
}
.home-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:28px 0 36px}
.home-card{display:block;background:var(--navy-soft);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;transition:transform .15s}
.home-card:hover{transform:translateY(-3px)}
.home-card img{width:100%;aspect-ratio:16/9;object-fit:cover;margin:0!important;border-radius:0!important}
.home-card h3{margin:0;padding:12px 14px;font-size:1.05rem;text-align:center}
@media(min-width:900px){main.prose.home{max-width:1140px}main.prose.home .lead-fig img{max-height:460px;width:100%;object-fit:cover}main.prose.home>div>div>div>div>div[style*="padding-top"]{max-width:820px;margin:0 auto}}
@media(max-width:899px){.home-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.home-cards{grid-template-columns:1fr}}
@media(min-width:900px){main.prose.home div:has(>div[style*="padding-top"]){max-width:820px;margin:0 auto}main.prose.home>div p,main.prose.home>div blockquote,main.prose.home>div h1,main.prose.home>div h2{max-width:900px;margin-left:auto;margin-right:auto}}
