:root{
  --purple:#5b1679;
  --purple-dark:#2b073d;
  --purple-light:#8d4fac;
  --gold:#efb83f;
  --wine:#a50046;
  --paper:#fbf8fc;
  --ink:#242126;
}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:Georgia,'Times New Roman',serif;color:var(--ink);background:#fff;overflow-x:hidden}
a{text-decoration:none}.section-pad{padding:96px 0}.letter-space{letter-spacing:.24em;text-transform:uppercase}
.navbar{background:rgba(35,5,50,.94)!important;backdrop-filter:blur(10px);box-shadow:0 5px 25px rgba(0,0,0,.18)}
.navbar-brand img{width:58px;height:58px;object-fit:contain}.navbar-brand span{font-size:1rem;line-height:1.05}.nav-link{color:#fff!important;font-size:.95rem;letter-spacing:.08em}.nav-link:hover,.nav-link.active{color:var(--gold)!important}
.btn-brand{background:var(--gold);color:#281331;border:2px solid var(--gold);font-weight:700;padding:.8rem 1.35rem}.btn-brand:hover{background:transparent;color:#fff;border-color:#fff}.btn-outline-brand{border:2px solid var(--purple);color:var(--purple);font-weight:700;padding:.75rem 1.25rem}.btn-outline-brand:hover{background:var(--purple);color:#fff}
.hero{min-height:92vh;display:flex;align-items:center;position:relative;color:#fff;background:linear-gradient(90deg,rgba(32,4,45,.96) 0%,rgba(72,15,90,.86) 43%,rgba(50,8,67,.35) 100%),url('../img/bishop-mcclain.png') center right/auto 105% no-repeat fixed;background-color:var(--purple-dark)}
.hero::after{content:'';position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,#fff)}
.hero-content{position:relative;z-index:2;max-width:740px}.hero-kicker{color:var(--gold);font-weight:700}.hero h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.93}.hero .lead{font-size:1.25rem;max-width:650px}.hero-logo{width:115px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.35))}
.section-title{font-size:clamp(2.2rem,4vw,4rem);color:var(--purple-dark)}.section-title span{color:var(--wine)}.rule{width:78px;height:4px;background:var(--gold);margin:1.2rem auto 2rem}.text-readable{font-size:1.08rem;line-height:1.9}
.bio-image{border-radius:2px;box-shadow:24px 24px 0 var(--purple),0 18px 45px rgba(0,0,0,.2)}
.parallax{min-height:480px;background:linear-gradient(rgba(42,6,58,.68),rgba(42,6,58,.8)),url('../img/biography.jpg') center/cover fixed;display:flex;align-items:center;color:#fff;text-align:center}.parallax .display-5{font-style:italic}.parallax blockquote{max-width:830px;margin:auto;font-size:clamp(1.5rem,3vw,2.5rem)}
.mission{background:linear-gradient(135deg,#faf7fb 0%,#fff 62%)}.mission-card{height:100%;border:0;border-top:5px solid var(--gold);box-shadow:0 12px 35px rgba(64,19,82,.12);transition:.25s}.mission-card:hover{transform:translateY(-7px)}.mission-icon{font-size:2.4rem;color:var(--purple)}
.author{background:var(--purple-dark);color:#fff;position:relative;overflow:hidden}.author::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(239,184,63,.18),transparent 35%)}.author-photo{max-height:600px;filter:drop-shadow(0 20px 30px rgba(0,0,0,.35))}.author h2{color:#fff}.author .accent{color:var(--gold)}
.books{background:#f7f2f8}.book-card{border:0;background:#fff;box-shadow:0 15px 35px rgba(34,8,45,.14);transition:.3s;height:100%}.book-card:hover{transform:translateY(-10px);box-shadow:0 22px 45px rgba(34,8,45,.22)}.book-card img{aspect-ratio:8.5/11;object-fit:cover}.book-card .card-title{color:var(--purple);font-weight:700}
.couple{background:#fff}.couple-wrap{position:relative}.couple-wrap::before{content:'';position:absolute;inset:10% -4% -4% 12%;background:var(--purple);z-index:0}.couple-wrap img{position:relative;z-index:1}.crest{max-width:260px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.18))}
.cta{background:linear-gradient(120deg,var(--wine),var(--purple));color:#fff}.cta h2{font-size:clamp(2.1rem,4vw,4rem)}
footer{background:#1e0629;color:#eee;padding:28px 0}footer img{width:48px}.back-top{position:fixed;right:20px;bottom:20px;width:44px;height:44px;border-radius:50%;display:none;align-items:center;justify-content:center;background:var(--gold);color:#260a34;z-index:999;border:0;box-shadow:0 8px 20px rgba(0,0,0,.25)}
@media(max-width:991.98px){.hero{background-attachment:scroll;background-position:70% center}.hero::before{content:'';position:absolute;inset:0;background:rgba(35,5,50,.35)}.hero-content{padding-top:80px}.parallax{background-attachment:scroll}.navbar-brand span{display:none}}
@media(max-width:575.98px){.section-pad{padding:68px 0}.hero{min-height:85vh;background-position:68% center}.hero h1{font-size:3.2rem}.bio-image{box-shadow:12px 12px 0 var(--purple)} }
