/* SPLASH */
#splash {
  height:100vh; height:100dvh; display:flex; flex-direction:column; align-items:center;
  background:var(--white); cursor:pointer; position:fixed; top:0; left:0; right:0; bottom:0; z-index:999; overflow:hidden;
  transition: opacity 0.8s ease, visibility 0.8s ease;
}
#splash.hidden { opacity:0; visibility:hidden; pointer-events:none; }
.splash-bh { position:absolute; top:16px; right:16px; font-family:'Noto Serif Hebrew',serif; font-size:22px; font-weight:700; color:var(--black); direction:rtl; }
.splash-content { flex:1; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 30px; padding-bottom:80px; max-width:440px; transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1); }
@media (max-height:700px) { .splash-content { padding-top:0; } .splash-icon .icon-770 { width:90px; } .splash-footer { padding-bottom:max(16px, env(safe-area-inset-bottom, 0px)); } }
/* Logo container: grid overlap for cross-fade */
.splash-logo-wrap { margin-bottom:4px; display:grid; place-items:center; }
.splash-logo-wrap > * { grid-area:1/1; }
.splash-ig-logo { opacity:0; animation:igLogoIn 0.5s ease 0s forwards, igLogoOut 2.2s ease 2.8s forwards; }
.splash-crown-logo { width:180px; height:auto; opacity:0; animation:crownLogoIn 2.2s ease 3.0s forwards; }
@keyframes igLogoIn { from { opacity:0; transform:scale(0.8); } to { opacity:1; transform:scale(1); } }
@keyframes igLogoOut { from { opacity:1; } to { opacity:0; } }
@keyframes crownLogoIn { from { opacity:0; } to { opacity:1; } }

/* Instagram -> Koulam morphing title */
.splash-title-chabad { font-size:clamp(36px, 12vw, 52px); color:var(--black); font-weight:400; margin-top:-4px; margin-bottom:12px; letter-spacing:0; font-family:'Grand Hotel',cursive; display:grid; place-items:center; overflow:visible; line-height:1.2; }
.splash-title-chabad > * { grid-area:1/1; }
.sp-ig-text { position:relative; opacity:0; animation:igTextIn 0.5s ease 0.3s forwards, igTextOut 2.2s ease 3.0s forwards; }
.sp-ig-text::after { content:''; position:absolute; top:55%; left:0; width:0; height:2.5px; background:var(--black); animation:strikeGrow 0.6s ease 2.2s forwards; }
.sp-koulam-text { opacity:0; animation:koulIn 2.2s ease 3.2s forwards; }

@keyframes igTextIn { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes strikeGrow { from { width:0; } to { width:71%; } }
@keyframes igTextOut { from { opacity:1; } to { opacity:0; } }
@keyframes koulIn { from { opacity:0; } to { opacity:1; } }

.splash-subtitle { font-family:'Noto Serif Hebrew',serif; font-size:22px; color:var(--gray-2); letter-spacing:6px; font-weight:700; margin-bottom:28px; opacity:0; animation:scSubIn 0.8s ease 5.8s forwards; direction:rtl; }
@keyframes scSubIn { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
.splash-divider { display:flex; align-items:center; gap:16px; justify-content:center; margin-bottom:28px; opacity:0; animation:scSubIn 0.6s ease 6.2s forwards; }
.splash-divider-line { flex:1; max-width:60px; height:1px; background:var(--gray-5); }
.splash-divider-star { color:var(--gray-4); font-size:8px; }
.splash-quote { font-style:italic; color:var(--gray-2); font-size:16px; line-height:1.7; border:none; margin:0 0 14px; padding:0 10px; min-height:80px; display:flex; align-items:center; justify-content:center; transition: opacity 0.6s ease, transform 0.6s ease; font-family:'EB Garamond',Georgia,serif; opacity:0; animation:scSubIn 0.8s ease 6.6s forwards; }
.splash-source { color:var(--gray-3); font-size:11px; letter-spacing:1.5px; font-weight:600; transition: opacity 0.6s ease; opacity:0; animation:scSubIn 0.6s ease 6.8s forwards; }
.splash-dots { display:flex; gap:6px; justify-content:center; margin-top:16px; cursor:pointer; padding:8px 0; opacity:0; animation:scSubIn 0.5s ease 7.0s forwards; }
.splash-dot { height:6px; border-radius:3px; transition: all 0.4s ease; cursor:pointer; }
.splash-tap { color:var(--gray-4); font-size:11px; margin-top:32px; letter-spacing:2px; opacity:0; animation: scSubIn 0.5s ease 7.2s forwards; }
.splash-footer { flex-shrink:0; text-align:center; padding-bottom:max(100px, calc(env(safe-area-inset-bottom, 16px) + 80px)); opacity:0; animation:scSubIn 0.5s ease 7.2s forwards; }
.footer-logo-wrap { display:inline-flex; align-items:center; gap:6px; opacity:0.7; transition:opacity 0.3s; }
.footer-logo-wrap:hover { opacity:0.9; }
.footer-logo-icon { width:28px; height:18px; }
.footer-logo-text { font-size:11px; font-weight:500; letter-spacing:1.5px; color:var(--black); font-family:var(--font); text-transform:uppercase; }
@keyframes pulse { 0%,100%{opacity:0.3} 50%{opacity:0.7} }
