/* Standalone hero component; source mirrored in scss/church-hero.scss. */
.cda-hero.hero-section-1 { height:auto; min-height:0; padding:96px 0 32px; overflow:hidden; }
.cda-hero .auto-container { position:relative; z-index:1; width:100%; max-width:1280px; margin-inline:auto; padding-inline:48px; }
.cda-hero-slides { display:grid; }
.cda-slide { grid-area:1 / 1; display:grid; grid-template-columns:minmax(0, 1.12fr) minmax(0, 1fr); gap:48px; align-items:center; min-width:0; min-height:520px; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .7s ease, visibility .7s; }
.cda-slide.is-active { opacity:1; visibility:visible; pointer-events:auto; }
.cda-slide-copy { min-width:0; max-width:580px; }
/* Entrada em cascata: título, texto e botões. */
.cda-slide-copy > * { opacity:0; transform:translateY(24px); transition:opacity .45s ease, transform .45s ease; }
.cda-slide.is-active .cda-slide-copy > * { opacity:1; transform:none; transition:opacity .8s ease, transform .9s cubic-bezier(.2,.7,.2,1); }
.cda-slide.is-active .cda-slide-copy > :nth-child(2) { transition-delay:.12s; }
.cda-slide.is-active .cda-slide-copy > :nth-child(3) { transition-delay:.24s; }
.cda-slide.is-active .cda-slide-copy > :nth-child(4) { transition-delay:.36s; }
.cda-hero-kicker { display:inline-block; color:#fff; font-size:11px; font-weight:500; letter-spacing:2.5px; padding:9px 15px; background:rgba(255,255,255,.08); border-radius:30px; margin-bottom:22px; }
.cda-slide-title { font-size:clamp(42px,4.4vw,62px); line-height:1.12; letter-spacing:-2.2px; font-weight:600; color:white; margin:0 0 24px; }
.cda-slide-title span { background:var(--cda-gradient-text); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.cda-slide-copy > p { max-width:465px; font-size:16px; line-height:1.8; color:rgba(255,255,255,.78); margin-bottom:32px; }
.cda-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px 24px; }
.cda-hero-actions .theme-btn { font-size:15px; padding:17px 25px; }
.cda-hero-secondary { color:white; font-size:14px; padding:12px 0; }
.cda-hero-secondary:hover { color:var(--cda-coral); }
.cda-hero-art { position:relative; height:470px; max-width:440px; width:100%; margin:auto; perspective:1200px; transform:translate(var(--enter-x,48px),25px) scale(.96); transition:transform 1s cubic-bezier(.2,.7,.2,1); }
.cda-hero[data-dir="prev"] { --enter-x:-48px; }
.is-active .cda-hero-art { transform:translate(0,0) scale(1); animation:cda-float 7s ease-in-out 1s infinite; }
@keyframes cda-float { 0%,100% { translate:0 0; } 50% { translate:0 -12px; } }
/* Profundidade com o mouse (variáveis --px/--py definidas em church-hero.js). */
.cda-poster { translate:calc(var(--px,0) * -10px) calc(var(--py,0) * -8px); transition:translate .3s ease-out; }
.cda-art-card { translate:calc(var(--px,0) * 16px) calc(var(--py,0) * 12px); transition:translate .3s ease-out; }
.cda-art-badge { translate:calc(var(--px,0) * 26px) calc(var(--py,0) * 18px); transition:translate .3s ease-out; }
.cda-poster { position:absolute; inset:30px 35px 48px 25px; border-radius:22px; overflow:hidden; background:radial-gradient(ellipse at 80% 10%,rgba(242,46,210,.8),transparent 65%),linear-gradient(150deg,#4D0DA6,#290759); box-shadow:0 32px 70px rgba(20,0,45,.4); padding:30px; display:flex; flex-direction:column; justify-content:space-between; transform:rotate(-6deg); }
.cda-poster::before { content:""; position:absolute; width:260px; height:260px; border-radius:50%; top:110px; right:-90px; background:radial-gradient(circle at 30% 30%,#F25764,#F22ED2 50%,#4D0DA6); opacity:.7; }
.cda-poster > * { position:relative; z-index:1; }
.cda-poster-label { color:white; font-size:10px; letter-spacing:2px; }
.cda-poster-title { color:white; font-size:60px; line-height:1; letter-spacing:-4px; font-weight:700; }
.cda-poster-title em { font-weight:300; font-style:normal; }
.cda-poster-foot { font-size:11px; letter-spacing:2px; color:white; }
.cda-art-card { position:absolute; z-index:2; right:0; bottom:0; width:184px; min-height:150px; padding:22px; border-radius:18px; background:linear-gradient(135deg,#F25764,#F22ED2); color:#290759; transform:rotate(7deg); box-shadow:0 20px 50px rgba(20,0,45,.25); display:flex; flex-direction:column; justify-content:space-between; }
.cda-art-card small { font-size:10px; font-weight:600; letter-spacing:1.5px; }
.cda-art-card strong { font-size:25px; line-height:1.12; letter-spacing:-1px; }
.cda-art-badge { position:absolute; right:2px; top:0; z-index:3; width:78px; height:78px; border-radius:50%; background:#F25764; color:#290759; font-size:38px; display:grid; place-items:center; transform:rotate(12deg); box-shadow:0 12px 32px rgba(20,0,45,.2); }
.cda-art-two .cda-poster { background:radial-gradient(ellipse at 10% 80%,#F22ED2,transparent 68%),linear-gradient(130deg,#F25764,#4D0DA6 75%); transform:rotate(5deg); }
.cda-art-two .cda-art-card { transform:rotate(-7deg); background:linear-gradient(135deg,#410B8C,#290759); color:white; right:auto; left:0; }
.cda-art-two .cda-art-badge { background:#F22ED2; }
.cda-hero-art .cda-art-badge { top:12px; }
.cda-art-three .cda-poster { background:radial-gradient(ellipse at 80% 100%,#F25764,transparent 65%),linear-gradient(150deg,#410B8C,#290759); }
.cda-art-three .cda-art-card { background:linear-gradient(135deg,#F22ED2,#F25764); }
.cda-hero-controls { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:28px; }
.cda-hero-controls-left,.cda-hero-controls-right { display:flex; align-items:center; gap:14px; }
.cda-hero-controls button { display:grid; place-items:center; color:white; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.18); width:46px; height:46px; border-radius:50%; cursor:pointer; transition:background .2s,transform .2s; }
.cda-hero-controls button:hover { background:#4D0DA6; transform:translateY(-2px); }
.cda-hero-count { font-size:13px; letter-spacing:2px; color:rgba(255,255,255,.5); }
.cda-hero-current { color:white; }
.cda-hero-dots { display:flex; gap:6px; }
.cda-hero-dots .cda-slide-dot { width:34px; height:44px; border:0; background:transparent; }
.cda-hero-dots .cda-slide-dot { position:relative; }
.cda-slide-dot::before { content:""; width:8px; height:8px; border-radius:8px; background:rgba(255,255,255,.3); transition:width .4s cubic-bezier(.2,.7,.2,1), background .3s; }
.cda-slide-dot[aria-current="true"]::before { width:30px; }
/* Preenchimento = progresso do autoplay (--progress de 0 a 1, definido em church-hero.js). */
.cda-slide-dot::after { content:""; position:absolute; left:50%; top:50%; width:30px; height:8px; margin:-4px 0 0 -15px; border-radius:8px; background:#F25764; transform:scaleX(0); transform-origin:left center; opacity:0; }
.cda-slide-dot[aria-current="true"]::after { opacity:1; transform:scaleX(var(--progress,0)); }
.cda-hero-status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media (min-width:901px) and (max-width:1100px) {
  .cda-hero .auto-container { padding-inline:36px; }
  .cda-slide { gap:32px; min-height:480px; }
  .cda-slide-title { font-size:48px; }
  .cda-hero-kicker { font-size:9px; letter-spacing:1.8px; }
  .cda-hero-art { height:420px; }
  .cda-poster-title { font-size:52px; }
  .cda-poster { padding:25px; }
  .cda-art-card { width:164px; min-height:140px; padding:20px; }
  .cda-art-card strong { font-size:23px; }
  .cda-poster-label, .cda-poster-foot { font-size:9px; letter-spacing:1.5px; }
}
@media (max-width:900px) {
  .cda-hero.hero-section-1 { padding:64px 0 28px; }
  .cda-hero .auto-container { max-width:720px; padding-inline:32px; }
  .cda-slide { grid-template-columns:minmax(0,1fr); gap:36px; min-height:0; align-content:start; }
  .cda-slide-copy { text-align:center; max-width:600px; margin-inline:auto; }
  .cda-slide-title { font-size:52px; letter-spacing:-1.8px; }
  .cda-slide-copy > p { margin:0 auto 26px; }
  .cda-hero-actions { justify-content:center; }
  .cda-hero-art { height:420px; max-width:400px; }
  .cda-hero-controls { max-width:520px; width:100%; margin:30px auto 0; }
}
@media (max-width:480px) {
  .cda-hero.hero-section-1 { padding-top:48px; }
  .cda-hero .auto-container { padding-inline:24px; }
  .cda-slide { gap:28px; }
  .cda-slide-title { font-size:clamp(32px,8.5vw,40px); letter-spacing:-1.2px; }
  .cda-slide-copy > p { font-size:15px; line-height:1.75; }
  .cda-hero-kicker { font-size:8px; letter-spacing:1.2px; padding:9px 12px; margin-bottom:20px; }
  .cda-hero-actions { gap:8px 18px; }
  .cda-hero-actions .theme-btn { padding:15px 22px; }
  .cda-hero-art { height:340px; max-width:320px; }
  .cda-poster { inset:22px 30px 34px 20px; padding:22px; }
  .cda-poster-title { font-size:47px; letter-spacing:-2.5px; }
  .cda-poster-label,.cda-poster-foot { font-size:8px; letter-spacing:1.2px; }
  .cda-art-card { width:145px; min-height:125px; padding:17px; }
  .cda-art-card small { font-size:8px; letter-spacing:1px; }
  .cda-art-card strong { font-size:22px; }
  .cda-art-badge { width:62px; height:62px; font-size:30px; }
  .cda-hero-controls { margin-top:24px; }
  .cda-hero-controls-left,.cda-hero-controls-right { gap:5px; }
  .cda-hero-dots { gap:0; }
  .cda-hero-dots .cda-slide-dot { width:26px; }
  .cda-hero-controls button { width:42px; height:42px; }
}
@media (max-width:480px) {
  .cda-slide-dot[aria-current="true"]::before, .cda-slide-dot::after { width:22px; }
  .cda-slide-dot::after { margin-left:-11px; }
}
@media(prefers-reduced-motion:reduce) {
  .cda-slide,.cda-slide-copy > *,.cda-hero-art,.cda-hero-controls button,.cda-slide-dot::before { transition:none; transform:none; }
  .is-active .cda-hero-art { animation:none; }
  .cda-poster,.cda-art-card,.cda-art-badge { translate:none; transition:none; }
}
