*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Arial,Helvetica,sans-serif;color:#2d3748;line-height:1.6}
a{text-decoration:none;color:inherit}
.container{width:min(1290px,92%);margin:auto}
.narrow{max-width:850px}
.header{height:80px;background:#fff;position:relative;z-index:10;box-shadow:0 2px 12px #0001}
.nav{height:80px;display:flex;align-items:center;justify-content:space-between}
.logo img{width:68px;height:68px;object-fit:contain}
nav ul{display:flex;list-style:none;gap:5px}
nav li{position:relative}
nav a{display:block;padding:28px 14px;font-size:14px;text-transform:uppercase;letter-spacing:.06em}
nav a:hover{color:#56195b}
.submenu{display:none;position:absolute;top:100%;left:0;background:#1a202c;min-width:210px}
.submenu li{border-bottom:1px solid #ffffff18}
.submenu a{color:#fff;padding:14px;font-size:12px}
.dropdown:hover .submenu{display:block}
.menu-btn{display:none;border:0;background:none;font-size:28px;cursor:pointer}
.hero{height:650px;background:linear-gradient(#0005,#0007),url("images/_DSC5127.jpg") center/cover no-repeat;display:grid;place-items:center;text-align:center;color:#fff}
.hero h1{font-size:42px;letter-spacing:.05em;margin-bottom:15px}
.hero p{font-size:24px}
.section{padding:80px 0}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding-top:65px;padding-bottom:65px}
.card{padding:20px;text-align:center;border-radius:8px;background:#fff;transition:.25s}
.card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0002}
.card img{width:100%;height:145px;object-fit:contain;margin-bottom:15px}
.card h3,.platform h3{color:#56195b;margin-bottom:8px;font-size:20px}
.card p{font-size:15px}
.addresses{text-align:center}
.addresses p{max-width:900px;margin:20px auto 30px}
h2{font-size:34px;color:#1a202c;line-height:1.2}
.buttons{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}
.buttons a,.btn{display:inline-block;background:#56195b;color:#fff;padding:12px 24px;border-radius:28px;font-weight:bold}
.buttons a:hover,.btn:hover{background:#215387}
.pastor{min-height:480px;background:url("images/_DSC3743.jpg") right center/50% 100% no-repeat #f7f7f7;display:flex;align-items:center}
.pastor-text{padding-right:52%;margin-left:calc((100% - min(1290px,92%))/2)}
.pastor-text p{margin:20px 0}
.messages {background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("images/_DSC6993.jpg"); background-position: center; background-size: cover; background-repeat: no-repeat; color: #fff; text-align: center; }
.messages h2{color:#fff}.messages p{margin:20px 0 30px}
.platforms{text-align:center}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:45px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:45px}
.platform{padding:15px}
.platform img {width: 100%; max-width: 260px; height: 220px; object-fit: cover; border-radius: 50%; }
.platform h3{margin-top:10px}
.light{background:#fafafa}
.online{background:linear-gradient(135deg,#56195b,#7d2fa3);color:#fff;text-align:center}
.online h2{color:#fff}.online p{margin:20px 0 30px}
.white{background:#fff;color:#56195b}
.csa{min-height:520px;background:url("https://impactcentrechretien.com/wp-content/uploads/2024/12/Fond-CSA.webp") center/cover no-repeat;color:#fff}
.csa-overlay{min-height:520px;background:#0007;display:flex;align-items:center;text-align:center}
.csa h2{color:#fff;font-size:48px}.csa p{margin:20px 0 30px}
.csa .buttons a{background:#fff;color:#56195b}
footer{background:#111;color:#fff;text-align:center;padding:30px;font-size:13px}

@media(max-width:900px){
  .menu-btn{display:block}
  nav{display:none;position:absolute;top:80px;left:0;width:100%;background:#56195b}
  nav.open{display:block}
  nav ul{display:block}
  nav a{color:#fff;padding:16px 22px}
  .submenu{position:static;background:#431246}
  .dropdown:hover .submenu{display:none}
  .dropdown.open .submenu{display:block}
  .hero{height:520px}
  .hero h1{font-size:30px}.hero p{font-size:18px}
  .cards,.grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:1fr}
  .pastor{background-size:100% 45%;background-position:center top;padding-top:270px}
  .pastor-text{padding:0;margin:auto}
}
@media(max-width:560px){
  .cards,.grid-4{grid-template-columns:1fr}
  .section{padding:55px 0}
  h2{font-size:28px}
  .hero h1{font-size:24px}
}

.special .card {
  background: transparent;
  color:#fff;
}
