/* @jsx React.createElement */ /* Studio (Recording & Rehearsal) section + Pull-quote + FAQ + Final CTA */ function VibeSection() { return (
Studio · Recording & Rehearsal

Bukan cuma sekolah. Punya studio beneran juga.

IMS punya studio recording + rehearsal yang dipakai sendiri sama murid IMS — dan juga buat musisi luar yang mau rekaman atau latihan. Tempat yang sama, vibe yang sama, cuma fungsinya beda.

Booking studio → Per jam · weekday / weekend rate
{/* Product split: Two-purpose studio */}
{/* Bento mosaic of placeholders — the actual rooms */}
{/* Studio-as-progression note */}
P1
Naik ke Performance 1? Kamu dapet studio session beneran.

Studio recording session sebagai milestone level — bukan add-on yang harus bayar lagi. Hasil take-nya kamu bawa pulang, dipake di IG, di-share ke kakek-nenek.

{/* Pull-quote moment */}
"

"Anak gue dulu suka minta skip les piano. Sekarang malah minta berangkat lebih cepet biar bisa ngobrol dulu sama gurunya sebelum kelas mulai. Itu udah review-nya."

RP
Rina P. · Orang tua Kayla, 9 thn
Piano · 8 bulan di IMS
); } function UseCaseCard({ kind, label, jp, title, desc, chips, price, accent }) { return (
{label} {jp}
{price}
{title}

{desc}

{chips.map(c => ( {c} ))}
); } function PhotoSlot({ label, hint, span, rowSpan, tint, textDark }) { const gridStyle = {}; if (span) gridStyle.gridColumn = span; if (rowSpan) gridStyle.gridRow = rowSpan; return (
{/* small EQ motif top-right */}
{[0.5, 0.9, 0.6, 1].map((h, i) => (
))}
{/* label */}
Placeholder
{label}
{hint}
); } function StatBig({ n, sub }) { return (
{n}
{sub}
); } /* ───────────────────────────────────────────── FAQ ───────────────────────────────────────────── */ const FAQS = [ { q: 'Berapa lama sampai aku bisa main satu lagu utuh?', a: 'Biasanya minggu ke-3 udah bisa. Lagu beneran, yang orang kenal, yang "bisa direkam pakai HP". Belum Chopin sih, tapi udah musik.', }, { q: 'Kalau aku/anakku mau ganti instrumen, bisa?', a: 'Bebas ganti kapan aja. Stamp card sama Skill Radar yang umum (rhythm, ear, theory) tetep nyangkut. Yang spesifik per instrumen reset.', }, { q: 'Ada prep ujian musik (ABRSM, RSL) nggak?', a: 'Ada. Kasih tau pas daftar — kita slot-in ke kurikulum yang sesuai. Andre handle prep gitar; piano dikejar bareng kurikulum standar.', }, { q: 'Orang dewasa beneran bisa mulai dari nol?', a: 'Setengah murid dewasa kita mulai dari nol total. Pre-Beginner emang didesain buat itu. Nggak ada yang buru-buru.', }, { q: 'Policy cancel / reschedule gimana?', a: 'Reschedule maksimal 6 jam sebelum kelas — gratis. Lebih dari itu, kehitung. Semua status (hadir / tidak hadir / reschedule / libur) ke-track di dashboard.', }, { q: 'Studio recording-nya beneran bagus apa cuma estetik aja?', a: 'Belum ada fotonya — kita foto bulan depan. Mendingan langsung mampir; lebih enak nilai sendiri sambil ngeliat live room sama control room-nya.', }, { q: 'Studio bisa di-rent buat non-murid IMS?', a: 'Bisa. Booking by hour, dengan atau tanpa engineer. WA aja buat cek slot kosong. Murid IMS dapet prioritas + rate khusus.', }, ]; function FAQSection() { const [open, setOpen] = React.useState(0); return (
Jawaban jujur

Pertanyaan yang sering masuk ke WA kita.

Selain ini, WA aja langsung. +62 899-8267-999.

{FAQS.map((f, i) => { const isOpen = open === i; return (
{f.a}
); })}
); } /* ───────────────────────────────────────────── Final CTA banner ───────────────────────────────────────────── */ function FinalCTA() { return (
{/* Big bg word */}
Main.
「 Kelas trial · Gratis buat murid baru 」

Mampir dulu.
Pulang udah senyum.

Booking trial 90 detik. Kita match-in kamu ke guru, hold slot kamu, dan siapin instrumen yang udah ditune dari tadi.

); } /* Helper Grain — re-declared here to avoid cross-file scope */ function Grain() { return ( ); } Object.assign(window, { VibeSection, FAQSection, FinalCTA });