/* Psalmist Vibes public Dojo — compact sunlit school landing page. */
:root{
  --cream:#fbf6ee;--paper:#fffdf9;--purple:#8b611f;--purple-2:#c0964e;
  --purple-soft:#f3e8d5;--gold:#c5963f;--gold-soft:#faebc9;--ink:#21162c;
  --muted:#716877;--line:#e9ddcc;--shadow:0 22px 60px rgba(55,37,19,.1);
}
body{background:radial-gradient(circle at 82% 5%,rgba(197,150,63,.12),transparent 25%),var(--cream)}
.public-header{height:84px;max-width:1320px}
.public-brand strong{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:1rem;letter-spacing:.04em}
.public-brand small{margin-top:3px;font-size:.58rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.public-nav{gap:24px;font-size:.82rem}
.header-login,.home-primary{background:linear-gradient(135deg,#18140f,#8d6222);box-shadow:0 12px 28px rgba(62,42,19,.18)}

.home-hero{
  width:min(1320px,calc(100% - 48px));min-height:610px;margin:28px auto 0;padding:64px;
  grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);gap:54px;border-radius:38px;
  color:#fff;background:radial-gradient(circle at 88% 20%,rgba(204,157,69,.28),transparent 31%),linear-gradient(135deg,#12110f 0%,#211b13 58%,#5b411d 100%);
  box-shadow:0 28px 80px rgba(40,28,14,.16);overflow:hidden;
}
.home-hero .home-eyebrow{color:#e6bd6c}.home-hero .home-eyebrow>span{background:#e6bd6c}
.hero-copy h1{font-size:clamp(3.7rem,5.8vw,6.35rem)}
.hero-copy h1 em{color:#e5bb6a}
.hero-lead{color:#d7d0c7;margin:25px 0;max-width:620px}
.home-secondary{color:#fff;border-bottom-color:#d5a956}
.hero-proof{margin-top:36px;padding-top:22px;border-top-color:rgba(255,255,255,.14)}
.hero-proof span{color:#bdb4aa}
.hero-stage{min-height:490px;border-color:rgba(226,188,116,.32);background:linear-gradient(145deg,#f5ead8,#fffaf2 58%,#ead6b2);box-shadow:0 24px 65px rgba(0,0,0,.22)}
.stage-topline b,.instrument-orbit,.cta-mark{background:#191611}
.journey-label,.journey-footer>strong,.instrument-copy>a{color:#8b611f}
.journey-progress i{background:linear-gradient(90deg,#17140f,#c69742)}

.home-strip{width:min(1240px,calc(100% - 48px));min-height:68px;margin:auto;border-top:0;color:#806f61}
.home-section{width:min(1180px,calc(100% - 48px));padding:82px 0}
.section-heading{max-width:760px;margin-bottom:38px}
.section-heading h2,.instrument-copy h2,.sensei-copy h2{font-size:clamp(2.7rem,4.4vw,4.5rem)}
.steps-grid{gap:16px}
.steps-grid article{min-height:240px;padding:28px;border-radius:24px}
.step-icon{background:#f2e5cf;color:#8b611f}
.steps-grid h3{margin:25px 0 10px}

.instrument-section{grid-template-columns:.82fr 1.18fr;gap:58px;padding-top:76px;padding-bottom:88px}
.instrument-grid{gap:14px}
.instrument-card{min-height:108px;border-radius:22px}
.instrument-card.featured{background:linear-gradient(135deg,#17140f,#896020);border-color:#896020;box-shadow:0 20px 42px rgba(58,40,18,.2)}

.sensei-section{width:min(1320px,calc(100% - 48px));padding:34px 0 76px}
.sensei-panel{gap:54px;padding:62px;border-radius:36px;background:radial-gradient(circle at 90% 18%,rgba(211,166,80,.27),transparent 34%),linear-gradient(135deg,#12110f,#282016 62%,#765321)}
.home-eyebrow.light{color:#e9c77f}.sensei-copy>p{color:#d8d0c5}
.gold-button{background:#d0a44f;color:#20160b}
.sensei-mini-ui{box-shadow:0 28px 65px rgba(0,0,0,.24)}
.mini-top b,.mini-action{color:#fff;background:#8b611f}
.mini-top b{background:transparent;color:#8b611f}
.mini-student i{background:#f2e5cf;color:#8b611f}

.home-cta{width:min(980px,calc(100% - 48px));margin:0 auto 70px;padding:72px 32px;border:1px solid var(--line);border-radius:34px;background:var(--paper);box-shadow:var(--shadow)}
.home-cta h2{font-size:clamp(3.8rem,7vw,6.4rem)}
.public-footer{max-width:1320px;min-height:110px}

@media(max-width:1050px){
  .home-hero{grid-template-columns:1fr;padding:52px}.hero-stage{min-height:460px}
  .instrument-section{grid-template-columns:1fr}.sensei-panel{grid-template-columns:1fr}
}
@media(max-width:700px){
  .public-header,.home-hero,.home-strip,.home-section,.sensei-section,.home-cta{width:calc(100% - 24px)}
  .home-hero{margin-top:12px;padding:42px 22px;border-radius:28px}.hero-copy h1{font-size:3.35rem}
  .hero-stage{min-height:430px;border-radius:25px}.home-strip{padding:20px 6px}
  .home-section{padding:64px 0}.section-heading h2,.instrument-copy h2,.sensei-copy h2{font-size:2.7rem}
  .sensei-panel{padding:38px 23px;border-radius:28px}.home-cta{padding:58px 20px;margin-bottom:45px}
}
