/* Church Design Academy: home-only adjustments over the original template. */
:root {
  --cda-coral: #F25764;
  --cda-pink: #F22ED2;
  --cda-purple: #4D0DA6;
  --cda-purple-dark: #410B8C;
  --cda-purple-deep: #290759;
  --cda-gradient-text: linear-gradient(105deg, #F25764 0%, #F22ED2 55%, #F25764 100%);
}
body, .neurovia-header-area { background-color: var(--cda-purple-deep); }
.preloader.cda-preloader {
  display: grid;
  place-items: center;
  padding: 24px;
  background: radial-gradient(ellipse at 50% 45%, rgba(77,13,166,.55) 0%, rgba(77,13,166,0) 58%), #290759;
}
.preloader.cda-preloader::before { content: none; }
.cda-preloader-content { text-align: center; }
.cda-preloader .cda-brand { width: min(280px, 75vw); }
.cda-preloader-content p { margin: 0; font-size: 12px; color: rgba(255,255,255,.7); letter-spacing: .5px; }
.cda-loading-dots { display: flex; justify-content: center; gap: 10px; margin: 36px 0 20px; }
.cda-loading-dots span { width: 8px; height: 8px; border-radius: 50%; background: #F25764; animation: cda-loading-pulse 1.4s ease-in-out infinite; }
.cda-loading-dots span:nth-child(2) { background: #F22ED2; animation-delay: .16s; }
.cda-loading-dots span:nth-child(3) { background: #F25764; animation-delay: .32s; }
@keyframes cda-loading-pulse {
  0%, 80%, 100% { opacity: .35; transform: scale(.8); }
  40% { opacity: 1; transform: scale(1.15); }
}
@media (prefers-reduced-motion: reduce) { .cda-loading-dots span { animation: none; opacity: 1; } }
.neurovia-header-area.sticky { background-color: var(--cda-purple-dark); }
/* Adjacent sections share exact boundary colors; glows fade before each edge. */
.hero-section-1 {
  --section-start: #290759; --section-middle: #410B8C; --section-end: #4D0DA6;
  --section-glow: 242,46,210; --glow-x: 78%; --glow-strength: .48;
}
.dashboard-section {
  --section-start: #4D0DA6; --section-middle: #4D0DA6; --section-end: #410B8C;
  --section-glow: 242,87,100; --glow-x: 12%; --glow-strength: .38;
}
.services-section {
  --section-start: #410B8C; --section-middle: #290759; --section-end: #290759;
  --section-glow: 77,13,166; --glow-x: 85%; --glow-strength: .6;
}
.feature-section {
  --section-start: #290759; --section-middle: #410B8C; --section-end: #4D0DA6;
  --section-glow: 242,87,100; --glow-x: 8%; --glow-strength: .64;
}
.testimonia-section {
  --section-start: #4D0DA6; --section-middle: #4D0DA6; --section-end: #410B8C;
  --section-glow: 242,46,210; --glow-x: 92%; --glow-strength: .58;
}
.faq-section {
  --section-start: #410B8C; --section-middle: #290759; --section-end: #290759;
  --section-glow: 77,13,166; --glow-x: 20%; --glow-strength: .38;
}
.pricing-plan-section {
  --section-start: #290759; --section-middle: #410B8C; --section-end: #4D0DA6;
  --section-glow: 242,46,210; --glow-x: 50%; --glow-strength: .48;
}
.blog-section {
  --section-start: #4D0DA6; --section-middle: #410B8C; --section-end: #410B8C;
  --section-glow: 242,87,100; --glow-x: 95%; --glow-strength: .55;
}
.newsletter {
  --section-start: #410B8C; --section-middle: #4D0DA6; --section-end: #410B8C;
  --section-glow: 242,46,210; --glow-x: 5%; --glow-strength: .72;
}
.main-footer {
  --section-start: #410B8C; --section-middle: #290759; --section-end: #290759;
  --section-glow: 77,13,166; --glow-x: 70%; --glow-strength: .3;
}
.hero-section-1, .dashboard-section, .services-section, .feature-section,
.testimonia-section, .faq-section, .pricing-plan-section, .blog-section,
.newsletter, .main-footer {
  background-color: var(--section-middle);
  background-image:
    linear-gradient(180deg, var(--section-start) 0%, transparent 24%, transparent 76%, var(--section-end) 100%),
    radial-gradient(ellipse at var(--glow-x) 48%, rgba(var(--section-glow), var(--glow-strength)) 0%, rgba(var(--section-glow), 0) 68%),
    linear-gradient(180deg, var(--section-start) 0%, var(--section-middle) 35%, var(--section-middle) 65%, var(--section-end) 100%) !important;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
}
/* Cards remain dark enough to read against the more colorful section backgrounds. */
.testimonial-single-box, .blog-single-box {
  background-color: rgba(41,7,89,.82);
  background-blend-mode: soft-light;
}
.main-footer .footer-bottom { background-image: none; }
.banner-content-wrap .banner-content h1 span,
.sec-title .section-title .title span {
  background-image: var(--cda-gradient-text) !important;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.hero-btn a, .header-btn a, .theme-btn, .pricing-btn a {
  box-shadow: 0 8px 28px rgba(77,13,166,.2);
}
.hero-btn a:hover, .header-btn a:hover, .theme-btn:hover, .pricing-btn a:hover {
  box-shadow: 0 10px 32px rgba(242,46,210,.18);
}
/* Frame the horizontal official artwork, preserving the original PNG. */
.cda-brand {
  display: inline-block;
  position: relative;
  width: 200px;
  max-width: 100%;
  aspect-ratio: 880 / 332;
  overflow: hidden;
  vertical-align: middle;
}
.cda-brand img {
  position: absolute;
  display: block;
  width: 122.727273%;
  max-width: none;
  height: auto;
  left: -11.363636%;
  top: -112.650602%;
}
.neurovia-header-area .other-box { margin-inline: clamp(24px, 4vw, 80px); }
.header-logo { padding-block: 18px; line-height: 0; }
.header-logo .cda-brand { width: 180px; }
.mobile-logo { top: 12px; left: 20px; line-height: 0; }
.mobile-logo .cda-brand { width: 144px; }
.mobile-menu.mean-container .mean-bar { min-height: 74px; }
.mobile-menu.mean-container a.meanmenu-reveal { padding: 28px 20px; }
.main-footer .cda-brand { width: 240px; }
.banner-content-wrap .banner-content h1 { font-size:55px; line-height:1.15; font-weight:600; color:#fff; margin:0; }
.banner-content-wrap .banner-content h1 span { background:var(--gradient-1); -webkit-background-clip:text; background-clip:text; color:transparent; }
.cda-audience-icon { width:62px; height:62px; flex-shrink:0; border-radius:50%; background:var(--gradient-1); display:grid; place-items:center; font-size:32px; color:white; }
.cda-coming-soon > span { color:var(--cda-pink); font-size:12px; letter-spacing:3px; }
.cda-coming-soon p { margin:16px 0 24px; }
.cda-coming-soon a { display:inline-block; color:white; border-bottom:1px solid #ffffff70; padding-bottom:8px; }
.cda-domain { overflow-wrap:anywhere; margin-top:24px; font-size:13px; }
.pricing-plan-section .pricing-money h3 { font-size:36px; }
.testimonia-section .swiper-pagination { position:relative; margin-bottom:20px; }
a:focus-visible, button:focus-visible { outline:2px solid #F22ED2 !important; outline-offset:5px; }
@media (max-width:1199px) { .neurovia-header-area .header-menu ul li a { padding-left:10px; padding-right:10px; } .header-logo .cda-brand {width:180px;} }
@media (max-width:767px) { .banner-content-wrap .banner-content h1 {font-size:35px;} .banner-content-wrap .banner-content .hero-btn {display:flex; flex-wrap:wrap; justify-content:center; gap:14px;} .banner-content-wrap .banner-content .hero-btn a {margin:0; padding:14px 24px; font-size:16px;} .cda-coming-soon {margin-top:25px;} }
.neurovia-header-area .header-right-wrapper .header-sidebar { display:flex; align-items:center; justify-content:flex-end; flex-wrap:nowrap; gap:12px; margin-left:0; white-space:nowrap; }
.neurovia-header-area .header-right-wrapper .header-sidebar .header-btn a { padding:13px 28px; }
@media (max-width:1399px) { .neurovia-header-area .header-right-wrapper .header-sidebar .header-btn a { padding:11px 20px; font-size:16px; } }
/* Seção "Para quem é": grade de cartões (substitui o carrossel de 3 itens). */
.cda-audience-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-top:56px; }
.cda-audience-card { position:relative; overflow:hidden; padding:40px 34px 38px; border-radius:28px; text-align:left; background:linear-gradient(160deg,rgba(255,255,255,.15),rgba(255,255,255,.05)); box-shadow:inset 0 0 0 1px rgba(255,255,255,.12), 0 24px 60px rgba(20,0,45,.28); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); transition:transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s; }
.cda-audience-card::before { content:""; position:absolute; width:260px; height:260px; right:-90px; top:-90px; border-radius:50%; background:radial-gradient(circle,rgba(242,46,210,.55),rgba(242,46,210,0) 70%); opacity:0; transition:opacity .45s; pointer-events:none; }
.cda-audience-card:hover { transform:translateY(-8px); box-shadow:inset 0 0 0 1px rgba(255,255,255,.2), 0 32px 70px rgba(20,0,45,.4); }
.cda-audience-card:hover::before { opacity:1; }
.cda-audience-card > * { position:relative; }
.cda-audience-num { position:absolute; top:24px; right:30px; font-size:64px; font-weight:700; line-height:1; letter-spacing:-3px; color:rgba(255,255,255,.08); }
.cda-audience-card .cda-audience-icon { width:64px; height:64px; margin-bottom:28px; border-radius:20px; background:linear-gradient(135deg,#F25764,#F22ED2); display:grid; place-items:center; font-size:26px; color:#fff; box-shadow:0 14px 30px rgba(242,46,210,.35); }
.cda-audience-title { font-size:24px; line-height:1.25; font-weight:600; color:#fff; margin:0 0 14px; }
.cda-audience-tag { display:inline-block; margin:0 0 20px; padding:6px 14px; border-radius:30px; background:rgba(242,87,100,.18); color:#ffb8bf; font-size:12px; font-weight:600; letter-spacing:.5px; }
.cda-audience-text { margin:0; font-size:16px; line-height:1.75; color:rgba(255,255,255,.85); }
@media (max-width:991px) { .cda-audience-grid { grid-template-columns:minmax(0,1fr); max-width:560px; margin:44px auto 0; gap:20px; } .cda-audience-card { padding:34px 28px; } }
@media (prefers-reduced-motion:reduce) { .cda-audience-card, .cda-audience-card::before { transition:none; } .cda-audience-card:hover { transform:none; } }
.accordion-box .acc-btn:focus-visible { outline:2px solid #F22ED2; outline-offset:-4px; border-radius:20px; }
