:root{--emerald:#0d3b2d;--emerald-2:#174f3d;--ink:#18221f;--cream:#f7f1e7;--paper:#fffdf8;--gold:#bc8d42;--gold-light:#dfbd79;--muted:#68716d;--line:#ded8ca;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}a{color:inherit}.skip-link{position:absolute;left:-999px;top:0;background:#fff;padding:.75rem;z-index:100}.skip-link:focus{left:1rem}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,5vw,5rem);background:rgba(255,253,248,.96);position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(24,34,31,.08);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none}.brand-mark{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--emerald);color:var(--gold-light);font-family:var(--serif);font-size:.95rem}.brand strong,.brand small{display:block}.brand strong{font-family:var(--serif);font-size:1.15rem}.brand small{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}nav{display:flex;align-items:center;gap:2rem}nav a{text-decoration:none;font-size:.91rem;font-weight:600}.nav-cta{border:1px solid var(--emerald);padding:.65rem 1.1rem}.menu-button{display:none;background:none;border:1px solid var(--emerald);padding:.6rem .9rem;font:inherit}.hero{min-height:calc(100vh - 88px);position:relative;display:grid;align-items:center;overflow:hidden;background:var(--emerald);color:white}.hero-image{position:absolute;inset:0;background:url('img/hero-faith-writing.png') center/cover no-repeat}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,39,29,.98) 0%,rgba(8,39,29,.87) 42%,rgba(8,39,29,.12) 78%)}.hero-content{position:relative;z-index:2;width:min(690px,80%);margin-left:clamp(1.25rem,8vw,8rem);padding:5rem 0 9rem}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.74rem;font-weight:700;color:var(--gold-light);margin:0 0 1.3rem}.eyebrow.dark{color:#91631e}.hero h1{font-family:var(--serif);font-size:clamp(3.2rem,6.5vw,6.4rem);line-height:.98;letter-spacing:-.045em;margin:0 0 1.6rem}.hero h1 em{display:block;color:var(--gold-light);font-weight:600}.hero-copy{font-size:1.15rem;max-width:620px;color:#e8eee9}.hero-actions{display:flex;align-items:center;gap:1.5rem;margin-top:2.2rem;flex-wrap:wrap}.button{display:inline-block;text-decoration:none;padding:.95rem 1.35rem;font-weight:700;font-size:.9rem;letter-spacing:.02em;transition:.2s ease}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold-light);color:#183025}.button-dark{background:var(--emerald);color:white}.button-light{background:var(--cream);color:var(--emerald)}.text-link{font-weight:700;color:white;text-underline-offset:.3rem}.scripture-card{position:absolute;right:clamp(1.25rem,5vw,5rem);bottom:0;z-index:3;width:min(440px,38vw);padding:1.6rem 1.8rem;background:var(--cream);color:var(--ink);border-top:5px solid var(--gold)}.scripture-card span{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:#865d1d}.scripture-card blockquote{font-family:var(--serif);font-size:1.15rem;line-height:1.45;margin:.55rem 0}.scripture-card cite{font-size:.78rem;color:var(--muted);font-style:normal}.section{padding:clamp(5rem,10vw,9rem) clamp(1.25rem,8vw,8rem)}.welcome{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(3rem,9vw,9rem);align-items:start}.welcome h2,.book-copy h2,.section-heading h2,.speaking h2,.connect h2{font-family:var(--serif);font-size:clamp(2.7rem,5vw,5rem);line-height:1.05;letter-spacing:-.035em;margin:0}.welcome-copy{font-size:1.05rem}.welcome-copy p:first-child{font-size:1.25rem;color:#263934}.signature{font-family:var(--serif);font-style:italic;color:#97691e;font-size:1.3rem}.book-section{background:var(--cream);display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(4rem,10vw,10rem);align-items:center}.book-art{width:min(360px,80%);aspect-ratio:.72;margin:auto;position:relative;transform:rotate(-3deg)}.book-cover{height:100%;background:linear-gradient(145deg,#174f3d,#082a20);border:1px solid #a67a34;padding:3rem 2.2rem;display:flex;flex-direction:column;color:white;box-shadow:inset 0 0 0 7px #0c362a,inset 0 0 0 8px rgba(223,189,121,.5)}.book-cover:before{content:"";display:block;width:3rem;border-top:2px solid var(--gold-light);margin-bottom:2.3rem}.book-cover span{font-size:.65rem;text-transform:uppercase;letter-spacing:.18em;color:#e7d1a3}.book-cover h3{font-family:var(--serif);font-size:3.2rem;line-height:.92;margin:auto 0 1rem;color:var(--gold-light)}.book-cover p{font-family:var(--serif);font-style:italic;font-size:1.1rem}.book-cover small{margin-top:auto;text-transform:uppercase;letter-spacing:.2em}.book-spine{position:absolute;left:-18px;top:8px;width:20px;height:100%;background:#09291f;border-left:1px solid #b98a3b}.book-copy>p:not(.eyebrow){font-size:1.1rem;max-width:650px}.check-list{padding:0;list-style:none;margin:2rem 0}.check-list li{padding:.7rem 0 .7rem 1.9rem;border-bottom:1px solid var(--line);position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:#996a20;font-weight:800}.path-section{background:var(--paper)}.section-heading{max-width:760px;margin-bottom:4rem}.section-heading>p:last-child{font-size:1.1rem;color:var(--muted)}.path-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.path-grid article{padding:2rem;border-right:1px solid var(--line)}.path-grid article:last-child{border-right:0}.path-grid span{color:#9a6d26;font-family:var(--serif)}.path-grid h3{font-family:var(--serif);font-size:1.5rem}.path-grid p{color:var(--muted);font-size:.94rem}.quote-section{background:var(--emerald);color:white;text-align:center;padding:clamp(5rem,10vw,9rem) max(1.25rem,15vw)}.seal{width:72px;height:72px;border:1px solid var(--gold-light);border-radius:50%;display:grid;place-items:center;margin:0 auto 2rem;color:var(--gold-light);font-family:var(--serif)}.quote-section blockquote{font-family:var(--serif);font-size:clamp(2rem,4vw,4rem);line-height:1.18;margin:0}.quote-section p{color:#cbd8d1;margin-top:2rem}.speaking{background:#132a23;color:white;display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(3rem,9vw,9rem);align-items:end}.speaking-copy>p:not(.eyebrow){max-width:660px;color:#cbd7d1}.topic-list{border-left:1px solid rgba(255,255,255,.18);padding-left:3rem}.topic-list>p{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--gold-light)}.topic-list ul{list-style:none;padding:0;margin:1rem 0 0}.topic-list li{padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.12);font-family:var(--serif);font-size:1.2rem}.connect{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(3rem,9vw,9rem);align-items:center}.connect>div>p:last-child{color:var(--muted);max-width:650px}.connect-actions{display:flex;flex-direction:column;align-items:flex-start;gap:1.2rem}.dark-link{color:var(--ink)}.connect-actions small{color:var(--muted)}footer{background:#081d16;color:#dce7e1;padding:2.5rem clamp(1.25rem,8vw,8rem);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:2rem;font-size:.8rem}footer p:nth-child(2){text-align:center}footer p:last-child{text-align:right}.footer-brand strong{color:white}.footer-brand small{color:#b3c6bc}
@media(max-width:900px){.menu-button{display:block}nav{position:absolute;top:88px;left:0;right:0;background:var(--paper);padding:1.5rem;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}.hero{min-height:800px;align-items:start}.hero-content{width:auto;margin:0;padding:6rem 1.25rem 15rem}.hero h1{font-size:clamp(3rem,12vw,5rem)}.hero-image{background-position:62% center}.hero-overlay{background:linear-gradient(90deg,rgba(8,39,29,.96),rgba(8,39,29,.68))}.scripture-card{width:calc(100% - 2.5rem);right:1.25rem}.welcome,.book-section,.speaking,.connect{grid-template-columns:1fr}.path-grid{grid-template-columns:1fr 1fr}.path-grid article:nth-child(2){border-right:0}.path-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.topic-list{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:2rem 0 0}footer{grid-template-columns:1fr;text-align:center}footer .brand{justify-content:center}footer p:nth-child(2),footer p:last-child{text-align:center}}
@media(max-width:560px){body{font-size:16px}.site-header{height:76px}.brand strong{font-size:1rem}nav{top:76px}.hero{min-height:760px}.hero-content{padding-top:4.5rem}.hero-copy{font-size:1rem}.hero-actions{align-items:flex-start;flex-direction:column}.section{padding:4.5rem 1.25rem}.path-grid{grid-template-columns:1fr}.path-grid article{border-right:0;border-bottom:1px solid var(--line)!important}.book-art{width:82%}.book-cover{padding:2.2rem 1.6rem}.book-cover h3{font-size:2.6rem}.scripture-card{padding:1.2rem 1.3rem}.scripture-card blockquote{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.books-section{background:var(--cream)}.books-heading{max-width:900px;margin-bottom:clamp(4rem,8vw,7rem)}.book-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(4rem,10vw,10rem);align-items:center}.book-feature+.book-feature{margin-top:clamp(6rem,12vw,11rem);padding-top:clamp(6rem,10vw,9rem);border-top:1px solid #d8cdbb}.title-card{background:linear-gradient(145deg,#5e2130 0%,#8b3f4f 55%,#3b1420 100%);border:1px solid #c5a36c;color:#fff;padding:3rem 2.2rem;display:flex;flex-direction:column;box-shadow:inset 0 0 0 7px #591d2c,inset 0 0 0 8px rgba(238,205,143,.45);min-height:500px}.title-card:before{content:"";width:3.2rem;border-top:2px solid #e5c98e;margin-bottom:2.4rem}.title-card-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.65rem;color:#f0d8a7}.title-card h3{font-family:var(--serif);font-size:clamp(2.55rem,4vw,3.7rem);line-height:.95;margin:auto 0 1.2rem;color:#f3d99f}.title-card h3 em{font-weight:600}.title-card p{font-family:var(--serif);font-size:1.15rem;line-height:1.35}.title-card small{margin-top:auto;text-transform:uppercase;letter-spacing:.18em;color:#f1dcae}.book-details{display:grid;grid-template-columns:repeat(3,1fr);margin:2rem 0 2.2rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.book-details div{padding:1rem;border-right:1px solid var(--line)}.book-details div:first-child{padding-left:0}.book-details div:last-child{border-right:0}.book-details dt{text-transform:uppercase;letter-spacing:.13em;font-size:.66rem;color:#8c5c1e;font-weight:700}.book-details dd{margin:.35rem 0 0;font-size:.88rem;line-height:1.35}.published-book .book-copy>p:not(.eyebrow){font-size:1.1rem;max-width:680px}
.tiktok-section{background:#091c16;color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);align-items:center}.tiktok-intro h2{font-family:var(--serif);font-size:clamp(2.7rem,5vw,5rem);line-height:1.05;letter-spacing:-.035em;margin:0}.tiktok-intro>p:last-child{color:#c4d2cb;max-width:570px}.tiktok-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.tiktok-card{min-height:310px;padding:1.4rem;background:linear-gradient(160deg,#153c30,#0d2a21);border:1px solid rgba(223,189,121,.32);text-decoration:none;display:flex;flex-direction:column;transition:.2s ease}.tiktok-card:hover{transform:translateY(-5px);border-color:var(--gold-light)}.tiktok-number{font-family:var(--serif);color:var(--gold-light)}.play-mark{width:58px;height:58px;border:1px solid var(--gold-light);border-radius:50%;display:grid;place-items:center;margin:auto;color:var(--gold-light);padding-left:3px}.tiktok-card strong{font-family:var(--serif);font-size:1.25rem}.tiktok-card small{color:#bdccc5;margin-top:.25rem}
.view-count{display:flex;align-items:baseline;gap:.75rem;margin:2rem 0 .5rem}.view-count strong{font-family:var(--serif);font-size:3.5rem;line-height:1;color:var(--gold-light)}.view-count span{text-transform:uppercase;letter-spacing:.15em;font-size:.7rem;color:#c4d2cb}
@media(max-width:900px){.book-feature{grid-template-columns:1fr}.book-feature .book-art{margin-bottom:1.5rem}}
@media(max-width:900px){.tiktok-section{grid-template-columns:1fr}.tiktok-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.title-card{min-height:430px;padding:2.3rem 1.65rem}.book-details{grid-template-columns:1fr}.book-details div{border-right:0;border-bottom:1px solid var(--line);padding:1rem 0}.book-details div:last-child{border-bottom:0}}
@media(max-width:560px){.tiktok-grid{grid-template-columns:1fr}.tiktok-card{min-height:220px}}
.tiktok-card{padding:0;min-height:0;overflow:hidden;background:#0d2a21}.tiktok-card:hover{transform:none}.tiktok-card video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;background:#050b09}.tiktok-caption{padding:1.1rem 1.15rem 1.25rem;display:grid;grid-template-columns:auto 1fr;column-gap:.8rem}.tiktok-caption .tiktok-number{grid-row:1/3}.tiktok-caption strong{line-height:1.25}.tiktok-caption small{color:#bdccc5;margin-top:.2rem}.play-mark{display:none}
.book-art{width:min(390px,86%);aspect-ratio:auto}.book-art img{width:100%;height:auto;display:block;border:1px solid rgba(79,50,36,.15)}.coming-soon{display:inline-block!important;text-transform:uppercase;font-weight:800;letter-spacing:.18em;font-size:.72rem!important;color:#8c5c1e;border:1px solid #caa86d;padding:.45rem .75rem;margin:0 0 1.4rem!important}
.welcome{grid-template-columns:.82fr .72fr 1.05fr;gap:clamp(2rem,5vw,5rem)}.author-photo{margin:0;position:relative}.author-photo:before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--gold);z-index:0}.author-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block;position:relative;z-index:1;filter:saturate(.92) contrast(1.02)}.author-photo figcaption{position:relative;z-index:2;background:var(--emerald);color:white;margin:-2.4rem 1rem 0;padding:1rem 1.1rem}.author-photo figcaption strong,.author-photo figcaption span{display:block}.author-photo figcaption strong{font-family:var(--serif);font-size:1.25rem}.author-photo figcaption span{color:#d9c393;font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;margin-top:.2rem}
@media(max-width:900px){.welcome{grid-template-columns:1fr}.author-photo{width:min(440px,90%);margin:0 auto 1rem}}


/* Slow cinematic hero movement + gentle fade-in */
.hero-image {
    animation: heroEntrance 2.5s ease-out forwards,
               heroSlowZoom 30s ease-in-out 2.5s infinite alternate;
    transform-origin: center center;
}

@keyframes heroEntrance {
    0% {
        opacity: 0;
        transform: scale(1.03);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes heroSlowZoom {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.08) translateX(-1.5%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-image {
        animation: none;
    }
}

/* ========================================
   BOOK COVER MOVEMENT
   ======================================== */

/* Both book covers */
.book-art {
    filter: none;
    transition: transform 0.6s ease;
}

/* Shadow belongs directly to the image */
.book-art img {
    border: none;
    box-shadow: 8px 12px 22px rgba(13, 59, 45, 0.10);
    transition: box-shadow 0.6s ease;
}

/* Lift and straighten */
.book-art:hover {
    filter: none;
    transform: rotate(0deg) translateY(-10px) scale(1.025);
}

/* Slightly deepen shadow while lifted */
.book-art:hover img {
    box-shadow: 10px 16px 26px rgba(13, 59, 45, 0.15);
}

/* Touch devices don't need the hover movement */
@media (hover: none) {
    .book-art {
        transition: none;
    }

    .book-art:hover {
        transform: rotate(-3deg);
    }

    .book-art img {
        transition: none;
    }

    .book-art:hover img {
        box-shadow: 8px 12px 22px rgba(13, 59, 45, 0.10);
    }
}



/* ========================================
   WELCOME SECTION SCROLL REVEAL
   ======================================== */

.welcome-heading,
.author-photo,
.welcome-copy {
    opacity: 0;
    transform: translateY(24px);
    transition:
        opacity 1s ease,
        transform 1s ease;
}

/* Slight stagger so everything doesn't appear at once */
.author-photo {
    transition:
        opacity 1.8s ease,
        transform 1.8s ease;
    transition-delay: 0.35s;
}

.welcome:not(.is-visible) .author-photo {
    transform: translateY(40px);
}


.welcome-copy {
    transition-delay: 0.3s;
}

/* Activated by JavaScript */
.welcome.is-visible .welcome-heading,
.welcome.is-visible .author-photo,
.welcome.is-visible .welcome-copy {
    opacity: 1;
    transform: translateY(0);
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .welcome-heading,
    .author-photo,
    .welcome-copy {
        opacity: 1;
        transform: none;
        transition: none;
    }
}






