/* Hero kajian "Saudara Jadi Lawan Karena Warisan?" -- foto latar penuh
   (assets/hero-saudara-warisan.*) + judul besar di atasnya, lalu kartu
   jadwal, ustadz, dan CTA. Dibangun di atas pola .hero.ch
   milik curhat-hero.css (dimuat lebih dulu di halaman ini); kelas .sw
   cuma menimpa ukuran/posisi yang beda dari hero Curhat Santuy. Id yang
   dipakai pendaftaran.js (heroTanggal, heroJam, heroBerakhir, ctaGabung)
   tidak diubah. */

/* CATATAN: semua ukuran px di sini dalam satuan kanvas 360px (seluruh
   halaman diskalakan ke lebar layar oleh pendaftaran.js), bukan px layar.

/* Foto: bagian atas (langit-langit/tirai) dipotong supaya wajah para
   peserta jatuh di bawah blok judul, bukan tertutup teks. */
.sw .ch__bg { height: 491px; }
/* Tinggi gambar dikurangi 3px: skala kanvas membuat tepi bawah jatuh di
   pecahan piksel, dan baris terakhir foto bocor jadi garis tipis di
   sambungan dengan latar. Area itu sudah tertutup scrim solid. */
.sw .ch__bg img { height: calc(100% - 3px); object-position: 50% 51%; }
/* Kabut putih di belakang judul (supaya terbaca di atas jendela terang),
   lalu memudar ke latar biru muda halaman di tepi bawah foto. */
.sw .ch__scrim { background:
  radial-gradient(ellipse 92% 170px at 50% 105px, rgba(255,255,255,.93) 0%, rgba(255,255,255,.82) 52%, rgba(255,255,255,.35) 80%, rgba(255,255,255,0) 100%),
  linear-gradient(180deg, rgba(234,242,255,0) 78%, rgba(234,242,255,.75) 91%, #eaf2ff 96%, #eaf2ff 100%); }

.sw .hero__inner { padding-top: 12px; }
.sw__merek { display: flex; justify-content: center; margin: 0 0 8px; }
.sw__merek .hero__merek-logo { height: 24px; margin: 0; }

.sw__judul { margin: 22px 0 0; font-family: 'Literata', Georgia, serif; font-weight: 800; font-size: 24px; line-height: 1.06; letter-spacing: -.5px; color: #05105a; }
.sw__judul em { display: block; margin-top: 4px; font-style: normal; font-weight: 800; font-size: 24px; line-height: 1.06; letter-spacing: -.5px; color: #0a5de0; }

/* Ruang kosong utk foto peserta -- menentukan di mana kartu jadwal mendarat */
.sw .ch__ruang { height: 278px; }

/* Garis pemisah tanggal | jam dibuat samar (sebelumnya garis putus-putus
   .25 + latar .14 bertumpuk dari dua stylesheet) -- cukup satu garis
   putus-putus tipis. */
.sw .hero__jadwal-garis { width: 0; background: none; border-left: 1px dashed rgba(5,16,90,.1); }

/* ---------- Tombol hero MELAYANG di section 1 <-> bar SAYA SIAP HADIR ----------
   #ctaGabung ada di dalam .bar-canvas (kanvas 360x60 yang sama dgn tombol
   submit), jadi skala & posisinya identik. Mana yang tampil ditentukan
   body.sw-atas (js halaman ini), mengalahkan logika is-on-hero/is-hidden
   bawaan pendaftaran.js selama masih di paling atas. */
.bar-canvas .hero__cta { position: absolute; left: 16px; right: 16px; top: 50%; transform: translateY(-50%); width: auto; margin: 0; }

/* Di paling atas: bar jadi lapisan transparan (hanya memudar halus di bawah
   tombol, bukan strip penuh) -- cuma tombolnya yang bisa diklik. */
body.sw-atas .bottombar--floating-submit:has(#ctaGabung:not([hidden])) {
  opacity: 1; transform: none; pointer-events: none;
  background: linear-gradient(to top, rgba(234,242,255,.96) 55%, rgba(234,242,255,0));
  box-shadow: none;
}
body.sw-atas .bottombar--floating-submit #ctaGabung { pointer-events: auto; }
body.sw-atas .bottombar--floating-submit .payment__submit { display: none; }
/* Kajian sudah berakhir (tombol hero disembunyikan JS): jangan sisakan bar kosong */
body.sw-atas .bottombar--floating-submit:not(:has(#ctaGabung:not([hidden]))) { opacity: 0; pointer-events: none; }

/* Setelah digulir: tombol hero hilang, bar jalan normal (SAYA SIAP HADIR) */
body:not(.sw-atas) #ctaGabung { display: none; }
