
/* Divine Grace · Module 01 story edition */
:root{
  --dg-rose:#b96f7d;
  --dg-rose-soft:#fbf1f3;
  --dg-gold:#c79a52;
  --dg-night:#17243a;
  --dg-paper:#fffdf9;
}
html{scroll-behavior:smooth}
body[data-module-page]{background:linear-gradient(180deg,#fff 0,#fffdfa 36%,#fff 100%)}
.utility-links{align-items:center}
.listen-pill{
  display:inline-flex;align-items:center;gap:.45rem;min-height:34px;border:1px solid rgba(142,75,95,.22);
  border-radius:999px;background:#fff;padding:.42rem .72rem;color:var(--blue-900);font:inherit;font-size:.78rem;
  font-weight:850;cursor:pointer
}
.listen-pill:hover,.listen-pill:focus-visible{border-color:var(--blue-700);outline:none;box-shadow:0 0 0 3px rgba(142,75,95,.10)}
.listen-pill[aria-pressed="true"]{background:var(--blue-900);color:#fff}
.listen-icon{font-size:.92rem}
.module-hero{position:relative;overflow:hidden;padding-bottom:clamp(2rem,5vw,4rem)}
.module-hero:after{content:"";position:absolute;inset:auto -8% -45% 48%;height:340px;background:radial-gradient(circle,rgba(185,111,125,.12),transparent 68%);pointer-events:none}
.module-review-badge{background:var(--dg-rose-soft)!important;color:#7b3e4a!important;border-color:#e9c7ce!important}
.module-hero h1{max-width:920px}
.module-hero .lead{max-width:800px;font-size:clamp(1.08rem,2.2vw,1.35rem);line-height:1.65}
.module-quote{max-width:760px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.25rem,2.6vw,1.85rem);line-height:1.38;color:var(--blue-900)}
.module-meta-line{flex-wrap:wrap}
.module-opening{
  display:grid;grid-template-columns:minmax(0,1.03fr) minmax(300px,.97fr);gap:clamp(1.4rem,4vw,3.4rem);
  align-items:center;margin:0 0 clamp(1.6rem,4vw,3rem);border:1px solid var(--line);border-radius:24px;
  background:linear-gradient(135deg,#fff 0,#fff8f6 100%);overflow:hidden;box-shadow:0 22px 60px rgba(92,48,61,.08)
}
.module-opening-copy{padding:clamp(1.35rem,4vw,3rem)}
.module-opening-copy .eyebrow{margin:0 0 .6rem;color:var(--dg-rose);font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}
.module-opening-copy h2{margin:.1rem 0 1rem;color:var(--blue-900);font-size:clamp(1.7rem,3.8vw,3rem);line-height:1.08}
.module-opening-copy p{font-size:1.02rem;line-height:1.78;color:#65585e}
.module-opening-copy p:first-of-type{font-size:1.12rem;color:#4b3a41}
.module-opening-photo{height:100%;min-height:360px;margin:0;background:#eee3e5}
.module-opening-photo img{width:100%;height:100%;min-height:360px;object-fit:cover;display:block}
.module-opening-photo figcaption,.story-figure figcaption{
  padding:.55rem .75rem;background:rgba(255,255,255,.94);color:#7d6e74;font-size:.72rem;line-height:1.4
}
.module-opening-photo figcaption a,.story-figure figcaption a{color:inherit}
.emergency-strip{margin-block:0 2rem}
.identity-grid{margin-block:1.5rem 2.5rem}
.identity-card span{color:#7a6470}
.identity-card strong{line-height:1.35}
.member-learning-router{margin:1rem 0 2.5rem!important;border-radius:18px!important;background:#fffaf8!important;box-shadow:none!important}
.member-learning-router h2{font-size:clamp(1.25rem,2.4vw,1.65rem)!important}
.member-learning-router>p{max-width:720px}
.module-layout{align-items:start}
.chapter-nav{top:104px}
.chapter-nav ol{gap:.25rem}
.chapter-nav a{border-radius:12px}
.module-reading{min-width:0}
.learning-section{
  position:relative;padding:clamp(2.6rem,7vw,5.6rem) 0;border-top:1px solid var(--line);
  scroll-margin-top:110px
}
.learning-section:first-child{border-top:0;padding-top:1.2rem}
.learning-header{margin-bottom:1.5rem}
.learning-step{
  display:inline-flex!important;align-items:center;gap:.45rem;background:var(--dg-rose-soft)!important;
  color:#7a3f4a!important;border:1px solid #eccdd3!important
}
.learning-header h2{max-width:780px;font-size:clamp(1.8rem,4vw,3.05rem);line-height:1.08}
.learning-lead{max-width:760px!important;font-size:clamp(1.05rem,2vw,1.22rem)!important;line-height:1.7!important;color:#6a5a61!important}
.part-number{
  display:block;margin-bottom:.8rem;font-family:Georgia,"Times New Roman",serif;font-size:.85rem;letter-spacing:.12em;
  text-transform:uppercase;color:#a06a75
}
.module-reading>section>p,.module-reading>section>h3,.module-reading>section>ul,.module-reading>section>ol{
  max-width:760px
}
.module-reading>section>p{font-size:1.02rem;line-height:1.82;color:#5a4b52}
.module-reading h3{margin-top:2rem;color:var(--blue-900);font-size:clamp(1.22rem,2.3vw,1.55rem)}
.scene{
  max-width:800px;margin:1.3rem 0 1.8rem;border-left:5px solid var(--dg-rose);border-radius:0 16px 16px 0;
  background:linear-gradient(135deg,#fff7f8,#fff);padding:clamp(1rem,3vw,1.4rem)
}
.scene p{margin:.4rem 0;color:#5f5057;font-size:1.04rem;line-height:1.8}
.scene p:first-child{margin-top:0}
.scene p:last-child{margin-bottom:0}
.editorial-quote{
  max-width:760px;margin:2rem 0;padding:1.1rem 1.2rem;border-block:1px solid #e5d7d9;
  color:#5e3c45;font:italic 1.2rem/1.65 Georgia,"Times New Roman",serif
}
.story-figure{max-width:860px;margin:2rem 0 2.25rem;border-radius:20px;overflow:hidden;background:#eee4e5;box-shadow:0 14px 38px rgba(92,48,61,.09)}
.story-figure img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.story-figure.crossroads img{aspect-ratio:16/9}
.story-figure.planning img{aspect-ratio:16/9}
.story-figure.door img{max-height:620px;object-position:center}
.story-caption-title{display:block;color:#59464e;font-weight:850}
.concept-box,.correction-box,.micro-change,.safety-box,.privacy-box{max-width:820px}
.concept-box{border-color:#e7d4ae!important;background:linear-gradient(135deg,#fffaf0,#fff)!important}
.correction-box{background:linear-gradient(135deg,#fbf2f3,#fff)!important}
.micro-change{background:linear-gradient(135deg,#f7f2fa,#fff)!important;border-color:#dbcbea!important}
.box-label{letter-spacing:.06em}
.cycle{max-width:860px}
.door-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.door-card{border-top:4px solid #d7a9b3}
.worksheet{margin-block:2rem}
.worksheet-head{align-items:flex-start}
.worksheet-intro{
  max-width:820px;margin:1.25rem 0 0;padding:1rem 1.1rem;border-radius:14px;background:#fbf5f2;color:#65565d;line-height:1.7
}
.firewall{max-width:840px}
.red-flag-list{max-width:780px!important}
.case-grid{grid-template-columns:1fr}
.case-card{padding:1.15rem 1.2rem}
.case-card h3{margin-top:.35rem}
.case-attempt-prompt{background:#f8f5f1!important}
.variation-list{max-width:840px}
.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.resource-card{background:#fffaf8}
.connected-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.sources{max-width:820px}
.sources li{margin-bottom:.8rem;line-height:1.65}
.story-bridge{
  max-width:820px;margin:2.1rem 0;padding:1.15rem 1.3rem;border-radius:16px;
  background:var(--dg-night);color:#fff
}
.story-bridge strong{display:block;margin-bottom:.35rem;color:#f5d9df;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.story-bridge p{margin:0;color:#f7eff2;line-height:1.7}
.what-next{
  max-width:840px;margin:2rem 0;border:1px solid #e6d5da;border-radius:18px;background:#fff;padding:1.2rem;
  box-shadow:0 12px 30px rgba(92,48,61,.06)
}
.what-next h3{margin:.1rem 0 .55rem!important}
.reading-note{max-width:760px;color:#796a70;font-size:.9rem;line-height:1.6}
[data-no-speech="true"]{speak:none}
@media(max-width:980px){
  .module-opening{grid-template-columns:1fr}
  .module-opening-photo{min-height:280px}
  .module-opening-photo img{min-height:280px;max-height:430px}
  .door-grid,.resource-grid,.connected-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .utility-inner>span:first-child{display:none}
  .utility-links{width:100%;justify-content:flex-end;gap:.45rem}
  .listen-pill{min-height:32px;padding:.36rem .58rem}
  .module-opening{border-radius:18px}
  .module-opening-copy{padding:1.25rem}
  .module-opening-photo,.module-opening-photo img{min-height:240px}
  .learning-section{padding:2.8rem 0}
  .story-figure{border-radius:14px}
  .chapter-nav{position:relative;top:auto}
  .module-reading>section>p{font-size:1rem;line-height:1.76}
}
@media print{
  .listen-pill,.story-figure figcaption,.module-opening-photo figcaption{display:none!important}
  .story-figure,.module-opening{box-shadow:none}
}


/* Grace Module 01 · focused-room redesign */
body[data-module-page]{
  background:
    radial-gradient(circle at 8% 4%,rgba(199,154,82,.12),transparent 24rem),
    linear-gradient(180deg,#fffaf6 0%,#fffdfb 35%,#fff8f5 100%);
}
body[data-module-page] .module-hero{
  margin-top:1rem;border:1px solid #ead6dc;border-radius:30px;
  background:linear-gradient(135deg,#fff8f5 0%,#f8eaee 56%,#fffaf6 100%);
  padding:clamp(2rem,5vw,4rem);box-shadow:0 24px 64px rgba(92,48,61,.11)
}
body[data-module-page] .module-hero h1{
  max-width:900px;color:#442733;font-family:Georgia,"Times New Roman",serif;font-weight:700
}
body[data-module-page] .module-quote{color:#67394a;border-left-color:#c79a52}
.module-opening{
  border-color:#ead8dd;background:linear-gradient(135deg,#fffdfa 0%,#f9ecef 100%);
  box-shadow:0 22px 60px rgba(92,48,61,.09)
}
.module-opening-copy h2,.learning-header h2,.module-reading h3{color:#4b2a36}
.chapter-nav{
  border-color:#e5d2d8;background:rgba(255,250,247,.94);
  box-shadow:0 14px 32px rgba(92,48,61,.08)
}
.chapter-progress{background:#f1e2e7}.chapter-progress span{background:linear-gradient(90deg,#b96f7d,#c79a52)}
.chapter-nav a{color:#7a6870}
.chapter-nav a span:first-child{background:#f4e7eb;color:#8e4b5f}
.chapter-nav a:hover,.chapter-nav a.is-active{background:#f8e9ed;color:#5a2f3d}
.chapter-nav a.is-active span:first-child{background:#8e4b5f;color:#fff}
.learning-section[hidden]{display:none!important}
.learning-section:not([hidden]){animation:chapterReveal .32s ease both}
@keyframes chapterReveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.learning-section{border-top:0!important;padding-top:1.2rem!important;padding-bottom:2rem!important}
.learning-step{background:#f4e4e9!important;color:#7d4052!important;border-color:#e7c5cf!important}
.scene{border-left-color:#b96f7d;background:linear-gradient(135deg,#fff1f4,#fffdfa)}
.editorial-quote{border-color:#ead5db;color:#6f4653}
.concept-box{border-color:#ead3b1!important;background:linear-gradient(135deg,#fff8e9,#fffdf8)!important}
.correction-box{border-color:#dfc6ce!important;background:linear-gradient(135deg,#f9ecef,#fffdfb)!important}
.micro-change{border-color:#d8c7df!important;background:linear-gradient(135deg,#f6f0f8,#fffdfb)!important}
.story-bridge{background:linear-gradient(135deg,#4b2935,#6f384a)}
.door-card{border-top-color:#b96f7d}
.member-learning-router{
  border-color:#e4cbd3!important;background:linear-gradient(180deg,#f9edf0,#fffdfb 52%)!important;
  box-shadow:0 16px 42px rgba(92,48,61,.07)!important
}
.member-path-button{border-color:#dfc9d0!important;background:#fffdfa!important}
.member-path-button[aria-pressed="true"]{
  border-color:#a65c70!important;background:#f8e9ed!important;
  box-shadow:0 10px 24px rgba(142,75,95,.12)!important
}
.learning-lens{border-color:#e2cdd4!important;background:#fffdfa!important}
.learning-lens-label{background:#f4e5e9!important;color:#743f50!important}
.learning-lens-task{border-left-color:#b96f7d!important;background:#fbf0f2!important;color:#5a2f3d!important}
.case-attempt-prompt{background:#fbf0f2!important;color:#5a2f3d!important}
.mastery-challenge{border-color:#d8adb9!important;background:linear-gradient(135deg,#f8e9ed,#fffdfb)!important}
.worksheet{border-color:#ddbdc6!important;background:#fffdfa!important}
.module-review-badge{background:#f4e5e9!important;color:#713b4c!important;border-color:#e2c1ca!important}
.module-review-badge::before{background:#c79a52!important}
.chapter-focus-controls{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;
  margin-top:2.5rem;border-top:1px solid #e6d5da;padding-top:1.2rem
}
.chapter-focus-previous,.chapter-focus-next{
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;width:max-content;
  border:1px solid #d9b9c3;border-radius:999px;background:#fff8f8;padding:.65rem 1rem;
  color:#744052;font:inherit;font-weight:900;text-decoration:none
}
.chapter-focus-previous{justify-self:start}.chapter-focus-next{justify-self:end}
.chapter-focus-previous:hover,.chapter-focus-next:hover{background:#f6e7eb}
.chapter-focus-position{color:#8b757d;font-size:.8rem;font-weight:850;text-align:center}
.module-layout{grid-template-columns:minmax(220px,270px) minmax(0,820px);gap:clamp(1.5rem,4vw,4rem)}
@media(max-width:760px){
  body[data-module-page] .module-hero{padding:1.35rem;border-radius:20px}
  .module-layout{display:block}
  .chapter-nav{
    position:relative;top:auto;margin:0 0 1.2rem;overflow-x:auto;padding:.75rem
  }
  .chapter-nav ol{display:flex;min-width:max-content}
  .chapter-nav a{width:170px}
  .chapter-focus-controls{grid-template-columns:1fr 1fr}
  .chapter-focus-position{grid-column:1/-1;grid-row:1}
  .chapter-focus-previous{grid-column:1;grid-row:2}.chapter-focus-next{grid-column:2;grid-row:2}
}
@media(prefers-reduced-motion:reduce){.learning-section:not([hidden]){animation:none}}
@media print{
  .learning-section[hidden]{display:block!important}
  .chapter-focus-controls,.chapter-nav{display:none!important}
}
