/* Editorial illustration direction: gold light, forest shadows, warm stone. */
body:before{background-image:url('landscape-v2.png');background-position:center center}body:after{background:linear-gradient(90deg,#e7e8d722,#f6e5bc0d 60%,#1d3f2c22)}header{background:#faf5e8eb;border-color:#e4d7bbaa;border-radius:7px}.hero-copy{background:linear-gradient(110deg,#faf6e9f0,#f8f0d9df);border-radius:8px;border-color:#e6d8b8aa;box-shadow:0 20px 70px #152f2822}.hero-art{height:610px}.art-caption{border-radius:6px;background:#17372ae0;border-color:#d4bc7c55}.art-caption>span{color:#ddbd77}.creed{background:#f5efdeed;border-color:#e3d7b9;border-radius:6px}.section{background:#faf5e9f2;border-color:#e1d5b9;border-radius:9px;box-shadow:0 20px 65px #15302324}.session{border-radius:6px;border-color:#d7ceb4;background:#fcf7eb}.session-art.subject-art{height:auto;aspect-ratio:3/2;background:#3c523c}.subject-art img{object-fit:cover;width:100%;height:100%;transition:transform .6s ease}.session:hover .subject-art img{transform:scale(1.025)}.session-body{padding:25px}.session h3{font-size:27px}.session-meta{border-color:#e0d6bb}.session-body .tag{color:#927139}.welcome{background:linear-gradient(90deg,#15372bef,#173b2bbd),url('illustrations/prodigal-son-wide-v4.png') center 42%/cover;border-color:#bd9d5d66}.welcome h2{color:#fff1ce}.welcome>p{color:#e8e5cb}.welcome-symbol{background:#f6edda}.welcome .solid{background:#ddbf7f}.vic{background:linear-gradient(110deg,#f9f2e3f0,#e8e6d2e8)}.vic-icon{border-radius:8px;background:linear-gradient(#284e3430,#193c2a50),url('illustrations/newbirth-garden-v3.png') center/cover;aspect-ratio:4/5}.vic-icon img{width:100px;height:100px;align-self:end;margin-bottom:20px;box-shadow:0 10px 30px #10271955;transform:rotate(-5deg)}.invitation{background:linear-gradient(120deg,#faf3e1f5,#e4e6d1eb)}.lesson-art{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:9px;margin:23px 0}.lesson-passage{background:#ecebd8}.passage-context{background:#efe9d855;border-color:#bc9858}dialog{background:#fcf7ed;border-color:#c3ac7c}footer{background:#f8f1e3f0;border-color:#dbcfb0;border-radius:7px}.article-page{background:#faf5e9f5;border-color:#dfd2b0;border-radius:9px}@media(max-width:740px){body:before{background-position:65% center}.hero-art{height:230px;min-height:230px}.hero-copy{background:#faf4e5ed}.session-art.subject-art{aspect-ratio:3/2}.session-body{padding:22px}.vic-icon{width:100%;max-width:350px;aspect-ratio:3/2}.vic-icon img{width:85px;height:85px}.lesson-art{margin:20px 0}.welcome{background-position:62% center}}@media(prefers-reduced-motion:reduce){.subject-art img{transition:none}.session:hover .subject-art img{transform:none}}
/* Quiet subject-specific reading environments, without scene imagery. */
#lessonDialog{background:#fcf8ed;background-image:none;box-shadow:0 25px 100px #132e2855}
#lessonDialog[data-session="assurance"]{background:radial-gradient(ellipse at 100% 0,#e6d49d38,transparent 55%),#fcf8ed}
#lessonDialog[data-session="newbirth"]{background:radial-gradient(ellipse at 100% 0,#c1d2a63b,transparent 55%),#f7f9ef}
#lessonDialog[data-session="repentance"]{background:radial-gradient(ellipse at 100% 0,#d9b38830,transparent 55%),#fcf6ed}
#lessonDialog[data-session="love"]{background:radial-gradient(ellipse at 100% 0,#e2c5ad3d,transparent 55%),#fcf7f0}
#lessonDialog[data-session="rest"]{background:radial-gradient(ellipse at 100% 0,#b9cfc63b,transparent 55%),#f4f8f2}
#lessonDialog[data-session="word"]{background:radial-gradient(ellipse at 100% 0,#d6ccab38,transparent 55%),#faf7ed}
#lessonDialog .lesson-passage{background:#e6e8d68c;border:1px solid #dde0ca}
#lessonDialog .passage-context{background:#fffdf64d}
#lessonDialog .lesson-copy p{color:#5d7056}
#lessonDialog .question{background:#fffdf54d}
/* A gentle entrance into the reading space. */
@keyframes session-arrive{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes session-backdrop-arrive{from{opacity:0;backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(8px)}}
@keyframes session-content-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
#lessonDialog[open]{animation:session-arrive .38s cubic-bezier(.2,.75,.25,1) both;transform-origin:center 35%}
#lessonDialog[open]::backdrop{animation:session-backdrop-arrive .38s ease-out both}
#lessonDialog[open] #lessonContent{animation:session-content-arrive .42s .06s ease-out both}
.session{transition:box-shadow .25s ease,transform .25s ease}
@media(hover:hover){.session:hover{transform:translateY(-3px);box-shadow:0 12px 28px #24423716}}
@media(prefers-reduced-motion:reduce){#lessonDialog[open],#lessonDialog[open]::backdrop,#lessonDialog[open] #lessonContent{animation:none}.session{transition:none}.session:hover{transform:none}}
/* Enter the session through an explicit animation after the dialog is visible. */
#lessonDialog[open]{animation:none}
#lessonDialog[open] #lessonContent{animation:none}
#lessonDialog.entering-session{will-change:transform,opacity}
#lessonDialog.entering-session::backdrop{animation:session-backdrop-arrive .65s ease-out both}
@media(prefers-reduced-motion:reduce){#lessonDialog.entering-session::backdrop{animation:none}}
