
:root{
  --navy:#0d2745;
  --navy-2:#071a30;
  --cream:#f7f1e7;
  --paper:#fffdf8;
  --gold:#bd8a35;
  --gold-2:#d4ad64;
  --ink:#152235;
  --muted:#667085;
  --line:#dfd2bd;
  --white:#ffffff;
  --shadow:0 18px 50px rgba(13,39,69,.13);
  --serif:Georgia, "Times New Roman", serif;
  --sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.65}
img,svg{max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:0;background:var(--navy);color:white;padding:.75rem 1rem;z-index:1000}
.skip-link:focus{left:1rem;top:1rem}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,253,248,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(189,138,53,.22)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:1.5rem}
.brand{display:flex;align-items:center;gap:.8rem;font-family:var(--serif);font-size:1.45rem;font-weight:700;color:var(--navy)}
.brand img{width:42px;height:42px;color:var(--gold)}
.nav-links{display:flex;align-items:center;gap:1.25rem;font-size:.94rem}
.nav-links a{padding:.5rem .2rem;border-bottom:2px solid transparent}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--gold);border-bottom-color:var(--gold)}
.nav-actions{display:flex;align-items:center;gap:.7rem}
.menu-toggle{display:none;border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:.55rem .7rem;color:var(--navy)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.88rem 1.2rem;border-radius:7px;border:1px solid var(--navy);font-weight:650;cursor:pointer;transition:.2s ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--navy);color:white}
.btn-primary:hover{background:var(--navy-2)}
.btn-secondary{background:transparent;color:var(--navy);border-color:var(--gold)}
.btn-gold{background:var(--gold);border-color:var(--gold);color:var(--navy-2)}
.hero{position:relative;overflow:hidden;background:
linear-gradient(90deg,rgba(255,253,248,.98) 0%,rgba(255,253,248,.94) 47%,rgba(13,39,69,.04) 100%)}
.hero::before,.blueprint-bg::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:
linear-gradient(rgba(13,39,69,.045) 1px,transparent 1px),
linear-gradient(90deg,rgba(13,39,69,.045) 1px,transparent 1px);
background-size:36px 36px;mask-image:linear-gradient(90deg,transparent,black 45%,black)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.06fr .94fr;align-items:center;min-height:610px;gap:3rem;padding:5.5rem 0}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:700;font-size:.78rem}
.eyebrow::before{content:"✦";font-size:1rem}
h1,h2,h3{font-family:var(--serif);color:var(--navy);line-height:1.08;margin:0 0 1rem}
h1{font-size:clamp(3rem,7vw,5.5rem);max-width:780px}
h2{font-size:clamp(2.1rem,4vw,3.5rem)}
h3{font-size:1.45rem}
.lead{font-size:1.18rem;max-width:650px;color:#3c4655}
.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}
.hero-art{position:relative;min-height:500px;display:grid;place-items:center}
.book-mockup{position:relative;width:min(360px,82%);aspect-ratio: .72;background:linear-gradient(145deg,#102f53,#071a30);border:1px solid rgba(212,173,100,.8);box-shadow:24px 28px 45px rgba(7,26,48,.24);transform:rotateY(-7deg) rotateZ(1deg);padding:28px;display:grid;place-items:center;text-align:center;color:var(--gold-2)}
.book-mockup::before{content:"";position:absolute;inset:12px;border:1px solid rgba(212,173,100,.42)}
.book-mockup::after{content:"";position:absolute;inset:24px;border:1px solid rgba(212,173,100,.18)}
.book-title{font-family:var(--serif);font-size:2.15rem;line-height:1.15;letter-spacing:.08em}
.book-sub{font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;margin-top:1rem}
.book-mark{width:64px;color:var(--gold-2);margin:1.5rem auto}
.light-orb{position:absolute;right:3%;top:12%;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,235,178,.95) 0%,rgba(212,173,100,.45) 28%,rgba(13,39,69,.12) 60%,transparent 72%);filter:blur(1px)}
.section{padding:5.5rem 0;position:relative}
.section-light{background:var(--paper)}
.section-dark{background:var(--navy);color:white}
.section-dark h2,.section-dark h3{color:white}
.section-head{max-width:760px;margin:0 auto 2.5rem;text-align:center}
.section-kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-size:.8rem;font-weight:750}
.grid{display:grid;gap:1.3rem}
.chapter-grid{grid-template-columns:repeat(3,1fr)}
.chapter-card{background:rgba(255,253,248,.9);border:1px solid var(--line);padding:1.55rem;border-radius:12px;transition:.2s ease;display:flex;flex-direction:column;min-height:260px}
.chapter-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold)}
.chapter-num{width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-family:var(--serif);font-weight:700}
.chapter-card p{color:var(--muted);font-size:.95rem}
.card-link{margin-top:auto;color:var(--gold);font-weight:700}
.feature-grid{grid-template-columns:repeat(4,1fr)}
.feature{padding:2rem 1.4rem;border-right:1px solid rgba(255,255,255,.2);text-align:center}
.feature:last-child{border-right:0}
.icon-ring{width:58px;height:58px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;margin:0 auto 1rem;color:var(--gold);font-size:1.45rem}
.companion-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:4rem}
.journal-visual{display:grid;grid-template-columns:1fr .72fr;gap:1rem;align-items:end}
.open-journal{background:#fffaf1;border:1px solid var(--line);min-height:390px;border-radius:8px;box-shadow:var(--shadow);padding:2rem;position:relative}
.open-journal::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--line)}
.journal-lines{height:100%;background:repeating-linear-gradient(transparent 0 30px,rgba(13,39,69,.12) 31px 32px)}
.closed-journal{background:linear-gradient(145deg,#102f53,#071a30);color:var(--gold-2);min-height:330px;border:1px solid var(--gold);box-shadow:var(--shadow);display:grid;place-items:center;text-align:center;padding:1.5rem;font-family:var(--serif);font-size:1.5rem}
.list-check{list-style:none;padding:0;margin:1.5rem 0}
.list-check li{padding:.45rem 0 .45rem 1.8rem;position:relative}
.list-check li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:900}
.assessment{background:linear-gradient(145deg,#fffdf8,#f1e5d2);border:1px solid var(--line);border-radius:16px;padding:2rem}
.assessment-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:2rem;align-items:start}
.question{margin-bottom:1.2rem}
.question label{display:block;font-weight:700;margin-bottom:.55rem}
.options{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem}
.option{border:1px solid var(--line);background:white;padding:.75rem .4rem;border-radius:8px;text-align:center;cursor:pointer}
.option input{display:none}
.option:has(input:checked){border-color:var(--gold);background:#fff4df;color:var(--navy);font-weight:700}
.result-box{margin-top:1rem;padding:1rem;border-left:4px solid var(--gold);background:#fffaf1;display:none}
.result-box.show{display:block}
.page-hero{padding:5rem 0 3.5rem;background:linear-gradient(135deg,#fffdf8 0%,#f1e5d2 100%);border-bottom:1px solid var(--line)}
.page-hero .container{max-width:900px}
.breadcrumbs{font-size:.88rem;color:var(--muted);margin-bottom:1rem}
.content-grid{display:grid;grid-template-columns:1fr 320px;gap:3rem;align-items:start}
.prose{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:2.2rem}
.prose h2{font-size:2rem;margin-top:2.4rem}
.prose h3{margin-top:2rem}
.prose blockquote{margin:1.5rem 0;padding:1.2rem 1.4rem;border-left:4px solid var(--gold);background:#fff7e9;font-family:var(--serif);font-size:1.15rem}
.sidebar{position:sticky;top:100px;display:grid;gap:1rem}
.side-card{background:var(--paper);border:1px solid var(--line);padding:1.25rem;border-radius:12px}
.side-card ul{padding-left:1.2rem}
.pill-list{display:flex;flex-wrap:wrap;gap:.55rem}
.pill{border:1px solid var(--line);background:#fffaf1;border-radius:999px;padding:.35rem .7rem;font-size:.85rem}
.episode-list{display:grid;gap:.8rem}
.episode{display:flex;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:10px;background:white}
.episode-num{flex:0 0 38px;height:38px;border-radius:50%;background:var(--navy);color:white;display:grid;place-items:center;font-weight:700}
.journal-prompts{display:grid;gap:.9rem}
.prompt{padding:1rem 1rem 1rem 2.2rem;background:#fffaf1;border-left:3px solid var(--gold);position:relative}
.prompt::before{content:"✎";position:absolute;left:.7rem;color:var(--gold)}
.resource-grid{grid-template-columns:repeat(3,1fr)}
.resource-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.5rem}
.status{display:inline-flex;border-radius:999px;padding:.28rem .65rem;font-size:.78rem;font-weight:700;background:#edf7ef;color:#276738}
.status.soon{background:#fff3df;color:#875a12}
.newsletter{display:grid;grid-template-columns:1fr auto;gap:.75rem}
.newsletter input,.contact-form input,.contact-form textarea{width:100%;padding:.9rem 1rem;border:1px solid var(--line);border-radius:8px;background:white}
.contact-form{display:grid;gap:1rem}
.footer{background:var(--navy-2);color:#d9e1eb;padding:4rem 0 1.5rem}
.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:2rem}
.footer h3{color:white;font-size:1.1rem}
.footer a{color:#d9e1eb}
.footer a:hover{color:var(--gold-2)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:2.5rem;padding-top:1.2rem;font-size:.85rem;color:#aeb9c7;display:flex;justify-content:space-between;gap:1rem}
.progress-track{height:10px;background:#e6dccd;border-radius:999px;overflow:hidden}
.progress-bar{height:100%;width:0;background:var(--gold);transition:.3s}
.chapter-complete{display:flex;gap:.6rem;align-items:center;margin-top:1rem}
.modal{position:fixed;inset:0;background:rgba(7,26,48,.72);display:none;place-items:center;padding:1.2rem;z-index:200}
.modal.open{display:grid}
.modal-card{width:min(520px,100%);background:var(--paper);border-radius:14px;padding:2rem;position:relative}
.modal-close{position:absolute;right:1rem;top:1rem;border:0;background:transparent;font-size:1.5rem;cursor:pointer}
@media (max-width:980px){
  .nav-links{position:absolute;left:0;right:0;top:78px;background:var(--paper);display:none;flex-direction:column;align-items:stretch;padding:1rem 20px;border-bottom:1px solid var(--line)}
  .nav-links.open{display:flex}
  .nav-actions .btn{display:none}
  .menu-toggle{display:block}
  .hero-grid,.companion-grid,.assessment-grid,.content-grid{grid-template-columns:1fr}
  .hero-art{min-height:430px}
  .chapter-grid{grid-template-columns:repeat(2,1fr)}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .feature:nth-child(2){border-right:0}
  .sidebar{position:static}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .container{width:min(100% - 26px,1160px)}
  .hero-grid{padding:4rem 0}
  h1{font-size:2.9rem}
  .chapter-grid,.feature-grid,.resource-grid,.footer-grid{grid-template-columns:1fr}
  .feature{border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}
  .journal-visual{grid-template-columns:1fr}
  .closed-journal{min-height:240px}
  .newsletter{grid-template-columns:1fr}
  .options{grid-template-columns:repeat(5,minmax(42px,1fr))}
  .footer-bottom{flex-direction:column}
}

@media print{
  .site-header,.footer,.sidebar,.btn,.modal{display:none!important}
  body{background:white;color:black}
  .page-hero{padding:1rem 0;background:white}
  .section{padding:1rem 0}
  .content-grid{display:block}
  .prose{border:0;padding:0}
}


/* Uploaded Divine Blueprint cover */
.hero-book-cover{position:relative;isolation:isolate}
.hero-book-cover .light-orb{z-index:0}
.hero-book-cover-image{position:relative;z-index:1;display:block;width:min(430px,92%);height:auto;max-height:600px;object-fit:contain;filter:drop-shadow(24px 30px 32px rgba(7,26,48,.28));transform:rotate(-1deg);border-radius:2px}
@media (max-width:700px){.hero-book-cover-image{width:min(360px,90%);max-height:520px}}


/* Companion Journal Download Integration */
.companion-download-hero{position:relative;overflow:hidden}
.companion-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}
.companion-hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.5rem}
.companion-cover-visual{min-height:470px;background:#071b31;color:white;border:1px solid #b57b29;box-shadow:0 28px 60px rgba(7,27,49,.24);display:flex;flex-direction:column;justify-content:center;padding:3.3rem;position:relative;overflow:hidden}
.companion-cover-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(181,123,41,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(181,123,41,.1) 1px,transparent 1px);background-size:28px 28px}
.companion-cover-visual>*{position:relative}.companion-cover-visual span{font-family:Georgia,serif;font-size:1.5rem;letter-spacing:.08em}.companion-cover-visual strong{font-family:Georgia,serif;font-size:3.35rem;line-height:.95;margin:.4rem 0;color:#fff}.companion-cover-visual em{font-family:Georgia,serif;font-size:2rem;color:#d0a354;font-style:normal}.companion-cover-visual small{margin-top:4rem;color:#d9c9ad;letter-spacing:.1em;font-size:.65rem}
.companion-intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:start}.companion-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.companion-facts div{background:#fffaf0;border:1px solid rgba(181,123,41,.35);padding:1.5rem;border-radius:14px}.companion-facts strong{display:block;font-family:Georgia,serif;font-size:2.6rem;color:#071b31}.companion-facts span{color:#6c665b;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}
.companion-edition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.companion-edition-card{position:relative;background:#fffdf8;border:1px solid #d8c9aa;border-radius:18px;padding:2rem;display:flex;flex-direction:column}.companion-edition-card.featured{border:2px solid #b57b29;box-shadow:0 20px 45px rgba(7,27,49,.1)}.edition-badge{display:inline-flex;align-self:flex-start;background:#f1e4c9;color:#071b31;border-radius:999px;padding:.35rem .7rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.edition-icon{font-size:2rem;margin:1.4rem 0 .5rem;color:#b57b29}.companion-edition-card h3{font-family:Georgia,serif;color:#071b31;font-size:1.75rem;margin:.3rem 0}.companion-edition-card ul{padding-left:1.2rem;margin:1rem 0 1.5rem}.companion-edition-card .companion-download-button{margin-top:auto}.companion-edition-card small{display:block;margin-top:1rem;color:#6c665b;line-height:1.45}.companion-privacy-note{margin-top:1.5rem;background:#edf1ec;border-left:4px solid #506b59;padding:1.15rem 1.3rem}.companion-privacy-note strong{color:#173e32}.companion-privacy-note p{margin:.25rem 0 0}
.companion-preview-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:rgba(255,255,255,.18)}.companion-preview-grid article{background:#071b31;padding:1.35rem;min-height:180px}.companion-preview-grid span{color:#d0a354;font-family:Georgia,serif;font-size:1.3rem}.companion-preview-grid h3{color:white;font-family:Georgia,serif;font-size:1.15rem}.companion-preview-grid p{color:#cad4dc;font-size:.9rem}.companion-license{display:flex;justify-content:space-between;align-items:center;gap:3rem}.companion-license>div{max-width:760px}
@media(max-width:950px){.companion-hero-grid,.companion-intro-grid{grid-template-columns:1fr}.companion-cover-visual{max-width:500px}.companion-preview-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.companion-edition-grid,.companion-facts,.companion-preview-grid{grid-template-columns:1fr}.companion-license{align-items:flex-start;flex-direction:column}.companion-cover-visual{min-height:390px;padding:2rem}.companion-cover-visual strong{font-size:2.65rem}}


/* Canonical Divine Blueprint book cover */
.canonical-book-cover-frame{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.canonical-book-cover-image,
img[src*="divine-blueprint-cover"]{
  display:block!important;
  width:min(420px,100%)!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  clip-path:none!important;
  border-radius:2px;
  filter:drop-shadow(18px 24px 28px rgba(7,26,48,.22));
}
body.companion-page .canonical-book-cover-frame,
body.companion-page .hero-art,
body.companion-page [class*="book-visual"],
body.companion-page [class*="cover-wrap"]{
  overflow:visible!important;
  min-height:0!important;
  height:auto!important;
}
body.companion-page .canonical-book-cover-image,
body.companion-page img[src*="divine-blueprint-cover"]{
  width:min(360px,100%)!important;
  height:auto!important;
  max-height:620px!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}
@media (max-width:760px){
  .canonical-book-cover-image,
  img[src*="divine-blueprint-cover"]{width:min(320px,92vw)!important;max-height:none!important}
}


/* SINGLE FLAT COVER Companion page */
.companion-original-section{background:#fbfaf6;padding:clamp(72px,8vw,118px) 0;overflow:visible}
.companion-original-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(300px,1.18fr);gap:clamp(48px,7vw,100px);align-items:center}
.companion-original-copy h1{margin:0 0 1.35rem;color:#0b2b4d;font-family:Georgia,serif;font-size:clamp(3.5rem,6.1vw,5.7rem);line-height:.92;letter-spacing:-.035em}
.companion-original-copy .lead{max-width:620px;margin:0 0 1.8rem;color:#152b43;font-size:1.1rem;line-height:1.65}
.companion-original-list{margin:0 0 2rem;padding:0;list-style:none}.companion-original-list li{margin:.85rem 0;color:#152b43;font-size:1.05rem}
.companion-flat-book{display:flex;align-items:center;justify-content:center;width:100%;margin:0;padding:0;overflow:visible;background:transparent;border:0}
.companion-flat-book-image{display:block;width:min(390px,100%);max-width:100%;height:auto!important;max-height:none!important;aspect-ratio:2/3;object-fit:contain!important;object-position:center;margin:0 auto;padding:0;border:0;border-radius:1px;transform:none!important;clip:auto!important;clip-path:none!important;filter:drop-shadow(16px 22px 24px rgba(7,27,49,.18))}
@media(max-width:860px){.companion-original-grid{grid-template-columns:1fr;text-align:left}.companion-flat-book{justify-content:flex-start}.companion-flat-book-image{width:min(340px,88vw);margin:0}}
@media(max-width:560px){.companion-original-section{padding:58px 0}.companion-original-copy h1{font-size:clamp(3rem,16vw,4.25rem)}.companion-flat-book{justify-content:center}.companion-flat-book-image{margin:0 auto}}
