@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Inter:wght@400;500;600;700&family=Allura&display=swap');

:root {
  --dc-blue: #075b9d;
  --dc-blue-dark: #073d6c;
  --dc-cloud: #dff3ff;
  --dc-cloud-2: #eef9ff;
  --dc-yellow: #ffd33d;
  --dc-yellow-deep: #f3b900;
  --dc-white: #ffffff;
  --dc-ink: #173c5b;
  --dc-muted: #5e7488;
  --dc-border: rgba(7, 91, 157, .13);
  --dc-shadow: 0 18px 50px rgba(20, 91, 140, .10);
}

html { scroll-behavior: smooth; }
body {
  font-family: Inter, system-ui, sans-serif;
  color: var(--dc-ink);
  background: #fff;
  overflow-x: hidden;
}
h1,h2,h3,h4,.dc-brand strong,.hero-tagline {
  font-family: "Cormorant Garamond", Georgia, serif;
}
h2 { font-size: clamp(2.5rem, 4vw, 4rem); line-height: .98; color: var(--dc-blue-dark); }
h3 { color: var(--dc-blue-dark); }
p { line-height: 1.75; color: var(--dc-muted); }
a { color: inherit; text-decoration: none; }
.top-line { height: 4px; background: linear-gradient(90deg, var(--dc-blue), var(--dc-yellow), var(--dc-blue)); }

.dc-navbar { box-shadow: 0 5px 25px rgba(7, 61, 108, .05); }
.dc-brand { display: inline-flex; align-items: center; gap: .65rem; color: var(--dc-blue-dark); }
.dc-brand strong { display:block; font-size: 1.62rem; line-height: .78; font-weight: 700; }
.dc-brand strong span { color: #4ba7d8; }
.dc-brand small { display:block; margin-top:.35rem; font: 600 .46rem Inter,sans-serif; letter-spacing:.24em; color:var(--dc-blue); }
.brand-mark { width: 40px; height: 40px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,#fff,var(--dc-cloud)); color:var(--dc-blue); box-shadow:inset 0 0 0 1px var(--dc-border); }
.nav-link { font-size:.88rem; font-weight:600; color:#36536b !important; position:relative; }
.nav-link::after { content:""; position:absolute; left:.5rem; right:.5rem; bottom:.15rem; height:2px; background:var(--dc-yellow); transform:scaleX(0); transition:.25s; }
.nav-link:hover::after,.nav-link.active::after { transform:scaleX(1); }

.btn { border-radius:999px; font-weight:700; transition:transform .25s ease, box-shadow .25s ease, background .25s ease; }
.btn:hover { transform:translateY(-2px); box-shadow:0 10px 22px rgba(7,91,157,.13); }
.btn-yellow { background:var(--dc-yellow); color:#24425b; border:1px solid var(--dc-yellow); }
.btn-yellow:hover { background:#ffe06b; color:#173c5b; }
.btn-blue { background:var(--dc-blue); color:#fff; border:1px solid var(--dc-blue); }
.btn-outline-blue { border:1px solid var(--dc-blue); color:var(--dc-blue); }
.btn-outline-blue:hover { background:var(--dc-blue); color:#fff; }

.hero-section { min-height:720px; background:linear-gradient(110deg,#fff 0%,#f8fdff 42%,#e3f5ff 100%); }
.min-vh-75 { min-height:75vh; }
.eyebrow { font-size:.74rem; font-weight:800; letter-spacing:.27em; color:var(--dc-blue); margin-bottom:1rem; }
.eyebrow.light { color:#bfeaff; }
.hero-section h1 { font-size:clamp(3.9rem,7.2vw,7.3rem); line-height:.68; color:var(--dc-blue-dark); margin:0; letter-spacing:-.045em; }
.hero-section h1 span { display:block; color:#54aeda; }
.hero-tagline { font-size:clamp(1.8rem,3vw,2.8rem); color:var(--dc-blue-dark); margin:1.3rem 0; }
.hero-copy { max-width:590px; font-size:1.05rem; }
.scripture-block { margin:1.2rem 0 1.5rem; }
.gold-rule { display:block; width:55px; height:3px; background:var(--dc-yellow-deep); margin-bottom:.75rem; }
.scripture-block p { font:italic 1.2rem/1.45 "Cormorant Garamond",serif; color:var(--dc-blue-dark); max-width:460px; margin:0 0 .3rem; }
.scripture-block small { letter-spacing:.2em; color:var(--dc-blue); font-weight:800; }

.hero-wash { position:absolute; border-radius:50%; filter:blur(10px); opacity:.55; }
.wash-one { width:500px; height:500px; right:-120px; top:-150px; background:radial-gradient(circle,#bfeaff,transparent 68%); }
.wash-two { width:500px; height:400px; left:-250px; bottom:-200px; background:radial-gradient(circle,#e8f7ff,transparent 70%); }
.hero-rays { position:absolute; right:0; top:0; width:54%; height:100%; background:linear-gradient(120deg,transparent 0 35%,rgba(255,255,255,.65) 36% 39%,transparent 40% 54%,rgba(255,215,72,.15) 55% 62%,transparent 63%); opacity:.7; }

.hero-art { min-height:560px; border-radius:42% 42% 45% 45% / 32% 32% 60% 60%; overflow:hidden; position:relative; background:linear-gradient(#a9dff7 0%,#e8f9ff 45%,#f9fdff 100%); box-shadow:var(--dc-shadow); }
.sun-glow { position:absolute; width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,#fff7bd 0 18%,rgba(255,211,61,.35) 28%,transparent 70%); right:12%;top:9%; }
.cloud { position:absolute; background:rgba(255,255,255,.72); filter:blur(2px); border-radius:50%; }
.cloud-a { width:300px;height:110px;right:8%;top:19%; }
.cloud-b { width:240px;height:90px;left:4%;top:28%;opacity:.45; }
.mountain { position:absolute; bottom:34%; width:85%; height:35%; clip-path:polygon(0 100%,36% 30%,52% 57%,73% 12%,100% 100%); }
.mountain-back { left:5%; background:linear-gradient(160deg,#8bcbe8,#cceaf6); opacity:.8; }
.mountain-front { left:-5%; bottom:27%; background:linear-gradient(160deg,#6eafd0,#c5e5f0); opacity:.9; }
.water { position:absolute; inset:auto 0 0;height:40%;background:linear-gradient(#c9ecfa,#78c5e6 55%,#dff7ff); }
.water span { position:absolute; height:2px; background:rgba(255,255,255,.8); border-radius:50%; width:28%; }
.water span:nth-child(1){top:22%;left:8%}.water span:nth-child(2){top:39%;right:8%;width:38%}.water span:nth-child(3){top:56%;left:26%;width:48%}.water span:nth-child(4){top:70%;right:18%;width:25%}.water span:nth-child(5){top:84%;left:5%;width:45%}
.hero-art-copy { position:absolute; right:9%; top:35%; display:flex; flex-direction:column; align-items:flex-end; font:italic 3.1rem/1.02 Allura,cursive; color:#0874b8; text-shadow:0 2px 12px rgba(255,255,255,.8); }

.pillars-section { background:var(--dc-cloud-2); border-top:1px solid var(--dc-border); border-bottom:1px solid var(--dc-border); }
.pillar { text-align:center; padding:3rem 2rem; min-height:250px; border-right:1px solid var(--dc-border); }
.pillar:last-child { border-right:0; }
.icon-orb { width:65px;height:65px;margin:0 auto 1rem;border-radius:50%;display:grid;place-items:center;font-size:1.6rem;color:var(--dc-blue);background:#fff;box-shadow:0 8px 25px rgba(7,91,157,.10); }
.pillar h3 { margin-bottom:.4rem; font-size:1.65rem; }
.pillar p { font-size:.9rem; margin:0; }

.section-space { padding:7rem 0; }
.about-art { min-height:500px; border-radius:28px; position:relative; overflow:hidden; background:radial-gradient(circle at 30% 30%,#fff 0 12%,transparent 13%),linear-gradient(135deg,#e9f8ff,#b7e2f5 45%,#fff7cb); box-shadow:var(--dc-shadow); }
.about-art:before { content:""; position:absolute; inset:10% 20% 20% 10%; border-radius:50%; background:radial-gradient(circle,rgba(255,211,61,.28),transparent 62%); }
.about-flower { position:absolute; top:18%;left:14%;font-size:9rem;color:#ffe07a;transform:rotate(-15deg);opacity:.7; }
.about-water { position:absolute;bottom:0;left:-10%;width:120%;height:42%;background:repeating-linear-gradient(-5deg,rgba(255,255,255,.75) 0 3px,transparent 4px 26px),linear-gradient(#83c8e8,#dff7ff); }
.about-note { position:absolute;right:12%;top:44%;font:italic 3rem/1 Allura,cursive;color:var(--dc-blue);transform:rotate(-7deg); }
.lead { font-size:1.15rem; color:#385d76; }
.mission-card { background:var(--dc-cloud-2); border:1px solid var(--dc-border); border-radius:18px; padding:1.7rem; }
.mission-card h3 { font-size:1.7rem; margin:.4rem 0; }

.founder-section { padding:6rem 0; background:linear-gradient(100deg,#eaf8ff,#fff); }
.founder-card { min-height:330px; border-radius:28px; background:linear-gradient(145deg,#fff,#ccecff); display:flex; flex-direction:column; align-items:center; justify-content:center; box-shadow:var(--dc-shadow); text-align:center; }
.founder-monogram { width:130px;height:130px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--dc-blue);font:700 3.2rem "Cormorant Garamond",serif;box-shadow:0 15px 35px rgba(7,91,157,.12); margin-bottom:1rem; }
.founder-card p { font-size:.65rem;letter-spacing:.22em;font-weight:800;margin:0;color:var(--dc-blue); }
.founder-card h3 { font-size:2.5rem;margin:0; }
.credential { height:100%; padding:1.3rem;border:1px solid var(--dc-border);border-radius:15px;background:#fff;display:flex;flex-direction:column;gap:.2rem; }
.credential i { font-size:1.5rem;color:var(--dc-yellow-deep); }
.credential span { font-weight:700;color:var(--dc-blue-dark); }
.credential small { color:var(--dc-muted);line-height:1.5; }

.services-section { background:#f8fcff; }
.section-intro { max-width:650px; margin:auto; }
.service-card { height:100%; padding:2rem; border-radius:20px;background:#fff;border:1px solid var(--dc-border);box-shadow:0 8px 25px rgba(7,91,157,.04);transition:.3s ease; }
.service-card:hover { transform:translateY(-6px);box-shadow:var(--dc-shadow); }
.service-icon { width:55px;height:55px;border-radius:15px;background:var(--dc-cloud);display:grid;place-items:center;color:var(--dc-blue);font-size:1.5rem;margin-bottom:1.2rem; }
.service-card h3 { font-size:1.65rem;margin-bottom:.25rem; }
.service-label { font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#4a91b8; }
.service-card p { font-size:.92rem; }
.service-card ul { padding-left:1.1rem;color:var(--dc-muted);font-size:.9rem;line-height:1.8;margin-bottom:0; }

.healing-section { background:linear-gradient(135deg,#fff,#eaf8ff); }
.healing-grid { display:grid;grid-template-columns:1fr 1fr;gap:1rem; }
.healing-item { background:#fff;border:1px solid var(--dc-border);border-radius:18px;padding:1.6rem;min-height:190px;box-shadow:0 8px 24px rgba(7,91,157,.04); }
.healing-item span { font-size:.7rem;font-weight:800;color:var(--dc-yellow-deep);letter-spacing:.15em; }
.healing-item h3 { font-size:1.45rem;margin:.4rem 0; }
.healing-item p { font-size:.88rem;margin:0; }

.flow-section { background:linear-gradient(110deg,#e4f6ff,#fff 55%,#fff9d9); }
.flow-section h2 { font-size:7rem; line-height:.7; margin:0;color:var(--dc-blue); }
.flow-subtitle { font-size:2rem; color:#4ba7d8; margin:1rem 0; }
.drop-art { min-height:350px;border-radius:50%;background:radial-gradient(circle,#fff 0 30%,rgba(202,239,253,.65) 31% 55%,transparent 56%),#dff5ff;position:relative;display:grid;place-items:center;overflow:hidden; }
.drop { width:70px;height:90px;background:linear-gradient(150deg,#fff,#65bce5);border-radius:60% 40% 65% 35% / 40% 45% 55% 60%;transform:rotate(45deg);box-shadow:0 10px 30px rgba(7,91,157,.18);position:relative;z-index:2; }
.ripple { position:absolute;border:2px solid rgba(55,159,211,.3);border-radius:50%;animation:ripple 4s ease-out infinite; }
.r1{width:110px;height:45px}.r2{width:200px;height:85px;animation-delay:1s}.r3{width:300px;height:125px;animation-delay:2s}
@keyframes ripple { 0%{transform:scale(.75);opacity:.7} 70%{opacity:.15}100%{transform:scale(1.2);opacity:0} }
.drop-caption { position:absolute;bottom:12%;text-align:center;font:italic 1.9rem/1.05 Allura,cursive;color:var(--dc-blue); }
.flow-card { background:#fff;border:1px solid var(--dc-border);border-radius:20px;padding:2rem;height:100%;box-shadow:0 10px 30px rgba(7,91,157,.05);transition:.3s; }
.flow-card:hover{transform:translateY(-5px)}
.flow-card > i { color:var(--dc-yellow-deep);font-size:2rem; }
.flow-card h3 { margin:.7rem 0;font-size:1.7rem; }
.flow-card p { font-size:.9rem; }
.flow-card a { color:var(--dc-blue);font-weight:700;font-size:.85rem; }

.events-section { background:#fff; }
.event-note { color:var(--dc-muted);font-size:.85rem;border-left:3px solid var(--dc-yellow);padding-left:1rem; }
.event-card { height:100%;border:1px solid var(--dc-border);border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(7,91,157,.05);transition:.3s; }
.event-card:hover { transform:translateY(-6px);box-shadow:var(--dc-shadow); }
.event-art { height:190px;display:grid;place-items:center;font-size:3rem;position:relative;overflow:hidden; }
.event-art:before { content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.85),transparent 35%); }
.women-art { background:linear-gradient(135deg,#dff5ff,#fff1a9);color:#e0ad12; }
.children-art { background:linear-gradient(135deg,#bde9ff,#fff);color:#48a8d8; }
.seniors-art { background:linear-gradient(135deg,#d9f2ff,#e7f0d3);color:#5d9a77; }
.event-body { padding:1.6rem; }
.event-type { font-size:.63rem;letter-spacing:.18em;font-weight:800;color:#4b96ba; }
.event-body h3 { font-size:1.6rem;margin:.4rem 0; }
.event-body p { font-size:.88rem; }
.event-body a { font-size:.85rem;font-weight:700;color:var(--dc-blue); }

.cta-section { padding:2rem 0 6rem;background:#fff; }
.cta-panel { padding:3.2rem 4rem;border-radius:30px;background:linear-gradient(105deg,#075b9d,#2e91c6);display:flex;justify-content:space-between;align-items:center;gap:2rem;position:relative;overflow:hidden;box-shadow:var(--dc-shadow); }
.cta-panel:after { content:"";position:absolute;width:400px;height:400px;border-radius:50%;right:-150px;top:-250px;background:rgba(255,211,61,.15); }
.cta-panel h2,.cta-panel p { color:#fff;position:relative;z-index:1; }
.cta-panel h2 { margin-bottom:.6rem; }
.cta-panel .btn { position:relative;z-index:2; }

.footer { background:#063e6b;color:#fff; }
.footer .dc-brand strong,.footer .dc-brand strong span { color:#fff; }
.footer .dc-brand small { color:#bfeaff; }
.footer-copy,.footer-scripture { color:#b9d8e9; }
.footer h4 { color:#fff;font-family:Inter,sans-serif;font-size:.85rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase; }
.footer a { display:block;color:#b9d8e9;font-size:.88rem;margin:.5rem 0;transition:.2s; }
.footer a:hover { color:#fff;transform:translateX(3px); }
.footer hr { border-color:rgba(255,255,255,.15);margin:2rem 0 1rem; }
.footer-bottom { color:#9fc4d9; }
.footer-scripture { font:italic 1.3rem/1.35 "Cormorant Garamond",serif; }

.back-to-top { position:fixed;right:20px;bottom:20px;width:45px;height:45px;border:0;border-radius:50%;background:var(--dc-yellow);color:#23415a;box-shadow:0 10px 25px rgba(0,0,0,.12);opacity:0;transform:translateY(15px);pointer-events:none;transition:.3s;z-index:1000; }
.back-to-top.show { opacity:1;transform:none;pointer-events:auto; }

.reveal { opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease; }
.reveal.visible { opacity:1;transform:none; }
.reveal-delay-1 { transition-delay:.1s; }.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}

@media (max-width: 991.98px) {
  .hero-section { min-height:auto; }
  .hero-art { min-height:480px; }
  .pillar { border-right:0;border-bottom:1px solid var(--dc-border); }
  .pillar:last-child { border-bottom:0; }
  .cta-panel { flex-direction:column;align-items:flex-start;padding:2.5rem; }
}
@media (max-width: 767.98px) {
  .section-space { padding:5rem 0; }
  .hero-section h1 { font-size:4.5rem; }
  .hero-art { min-height:390px; }
  .hero-art-copy { font-size:2.2rem; }
  .healing-grid { grid-template-columns:1fr; }
  .drop-art { min-height:280px; }
  .flow-section h2 { font-size:5rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  .reveal { opacity:1;transform:none; }
}
