
:root{
  --navy:#082d49;
  --blue:#0b4d78;
  --blue-2:#0f6c9e;
  --gold:#f4a51c;
  --gold-2:#ffd15d;
  --ink:#18202a;
  --muted:#607080;
  --paper:#f8f7f3;
  --white:#ffffff;
  --shadow:0 24px 70px rgba(6,31,52,.18);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.6;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.container{width:min(1120px, calc(100% - 40px)); margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:10px 14px;z-index:999}
.skip-link:focus{left:12px;top:12px}
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(248,247,243,.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(8,45,73,.08);
}
.nav{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 0}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:850;color:var(--navy);letter-spacing:.02em}
.brand-mark{width:34px;height:34px}
.nav-links{display:flex;align-items:center;gap:20px;font-weight:650;font-size:.95rem}
.nav-links a{text-decoration:none;color:#1d3343}
.nav-links a:hover{color:var(--blue-2)}
.language-pill{
  border:1px solid rgba(8,45,73,.18);
  border-radius:999px;
  padding:7px 12px;
  text-decoration:none;
  background:#fff;
}
.menu-button{display:none;background:none;border:0;font-size:1rem;font-weight:800;color:var(--navy)}
.hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 10%, rgba(244,165,28,.22), transparent 30%),
    linear-gradient(135deg, #07243b 0%, #0b4d78 60%, #063350 100%);
  color:#fff;
}
.hero::after{
  content:"";
  position:absolute;inset:auto 0 0;
  height:110px;
  background:url("assets/blue-texture.jpg") center/cover;
  opacity:.22;
}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.06fr .94fr;gap:48px;align-items:center;padding:88px 0 74px}
.hero-grid > *{min-width:0}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:850;color:var(--gold-2);font-size:.78rem;margin:0 0 12px}
h1,h2,h3{line-height:1.08;margin:0;color:inherit}
h1{font-size:clamp(3rem,7vw,6.8rem);letter-spacing:-.07em;text-transform:uppercase}
.hero-title-small{display:block;font-size:clamp(1.6rem,3.4vw,3.2rem);letter-spacing:.02em;color:#fff}
.lead{font-size:clamp(1.08rem,2vw,1.32rem);max-width:720px;color:rgba(255,255,255,.86);margin:22px 0 0}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:48px;padding:13px 19px;border-radius:999px;
  text-decoration:none;font-weight:850;border:1px solid transparent;
}
.btn-primary{background:var(--gold);color:#1c2330}
.btn-primary:hover{background:var(--gold-2)}
.btn-secondary{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.25)}
.btn-secondary:hover{background:rgba(255,255,255,.16)}
.hero-art{position:relative;min-height:560px;display:grid;place-items:center;isolation:isolate;overflow:hidden}
.book-showcase::before{
  content:"";
  position:absolute;
  width:min(380px,78%);
  height:460px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:36px;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 28px 70px rgba(0,0,0,.2);
  transform:rotate(-3deg);
  z-index:-1;
}
.book-glow{
  position:absolute;
  width:390px;
  height:390px;
  border-radius:50%;
  background:rgba(244,165,28,.2);
  filter:blur(38px);
  z-index:-1;
}
.hero-book{
  position:absolute;
  left:50%;
  top:50%;
  width:min(900px,180vw);
  max-width:none;
  filter:drop-shadow(0 30px 34px rgba(0,0,0,.38));
  transform:translate(-50%,-53%) rotate(1.5deg);
}
.section{padding:84px 0}
.section-title{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.04em;color:var(--navy)}
.section-kicker{color:var(--gold);font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;margin:0 0 10px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}
.copy p{font-size:1.05rem;color:#3f4d59;margin:18px 0}
.card{
  background:#fff;border-radius:var(--radius);padding:30px;box-shadow:var(--shadow);border:1px solid rgba(8,45,73,.07)
}
.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:24px}
.stat{padding:18px;border-radius:18px;background:linear-gradient(180deg,#fff,#f2f6f8);border:1px solid rgba(8,45,73,.08)}
.stat strong{display:block;color:var(--navy);font-size:1.08rem;line-height:1.2}
.stat span{display:block;color:var(--muted);font-size:.9rem;margin-top:5px}
.book-section{background:#fff}
.book-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:center}
.book-covers{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.book-covers img{border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.18);background:#000}
.amazon-img{width:220px;margin-top:8px}
.feature-list{list-style:none;padding:0;margin:24px 0;display:grid;gap:12px}
.feature-list li{display:flex;gap:10px;color:#374756}
.feature-list li::before{content:"";flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:var(--gold);margin-top:.55em}
.ministry{
  background:
    linear-gradient(rgba(8,45,73,.94), rgba(8,45,73,.94)),
    url("assets/blue-texture.jpg") center/cover;
  color:#fff;
}
.ministry .section-title{color:#fff}
.ministry p{color:rgba(255,255,255,.82)}
.ministry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.ministry-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:24px}
.ministry-card h3{font-size:1.25rem;color:#fff}
.ministry-card p{font-size:.98rem;margin-bottom:0}
.quote-card{position:relative;overflow:hidden}
.quote-card::after{content:"";position:absolute;right:-60px;bottom:-100px;width:220px;height:320px;background:url("assets/flame-dove.png") center/contain no-repeat;opacity:.15}
.quote-card blockquote{margin:0;font-size:1.25rem;line-height:1.55;color:var(--navy);font-weight:750}
.connect-grid{display:grid;grid-template-columns:1fr .9fr;gap:32px;align-items:center}
.socials{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.socials a{padding:11px 15px;border-radius:999px;background:#fff;border:1px solid rgba(8,45,73,.12);text-decoration:none;font-weight:800;color:var(--navy)}
.socials a:hover{border-color:var(--gold);color:var(--blue-2)}
.footer{background:#061f34;color:rgba(255,255,255,.78);padding:36px 0}
.footer-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.footer a{color:#fff;text-decoration:none}
.footer a:hover{color:var(--gold-2)}
@media (max-width: 860px){
  .menu-button{display:block}
  .nav-links{display:none;position:absolute;left:20px;right:20px;top:68px;background:#fff;border-radius:20px;padding:18px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}
  .nav-links.open{display:flex}
  .hero-grid,.two-col,.book-grid,.connect-grid{grid-template-columns:1fr}
  .hero-grid{gap:28px;padding:58px 0 56px}
  .hero-art{min-height:460px}
  .book-showcase::before{height:400px}
  .hero-book{width:min(820px,180vw)}
  .ministry-grid{grid-template-columns:1fr}
}
@media (max-width: 560px){
  .container{width:min(100% - 28px,1120px)}
  .nav{padding:12px 0}
  .brand-mark{width:32px;height:32px}
  .menu-button{padding:8px 0;font-size:.98rem}
  .section{padding:62px 0}
  .hero-grid{gap:22px;padding:42px 0 48px}
  .eyebrow{font-size:.7rem;line-height:1.55;letter-spacing:.13em}
  h1{font-size:clamp(2.5rem,13vw,3.45rem);letter-spacing:-.055em}
  .hero-title-small{font-size:clamp(1.35rem,7vw,1.85rem);line-height:1.2}
  .lead{font-size:1.05rem;line-height:1.55;margin-top:18px}
  .cta-row{gap:10px;margin-top:24px}
  .hero-art{min-height:430px}
  .book-showcase::before{width:min(280px,78vw);height:320px;border-radius:28px}
  .book-glow{width:280px;height:280px}
  .hero-book{width:180vw}
  .book-covers{gap:10px}
  .stat-grid{grid-template-columns:1fr}
  .cta-row .btn{width:100%}
}
