/* Arabian Child — static export */
:root {
  --navy: #1f2b6d;
  --yellow: #ffdf00;
  --cyan: #0099cc;
  --sky: #80cce6;
  --lavender: #b8b8e6;
  --mint: #b5e3de;
  --slate: #333366;
  --cream: #f7f2eb;
  --charcoal: #222f33;
  --white: #ffffff;
}
html { scroll-behavior: smooth; }
body.lang-ar { font-family: 'IBM Plex Sans Arabic', system-ui, sans-serif; }
body.lang-en { font-family: 'Manrope', system-ui, sans-serif; }
.font-display { font-family: inherit; }
.grain { background-image: radial-gradient(circle at 1px 1px, rgba(31,43,109,0.035) 1px, transparent 0); background-size: 28px 28px; }
.num-label { font-feature-settings: 'tnum'; letter-spacing: -0.02em; }
@keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes floatGentle { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
@keyframes slideIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
.fade-up { animation: fadeUp 0.9s ease-out forwards; }
.float-gentle { animation: floatGentle 7s ease-in-out infinite; }
.hover-lift { transition: transform 0.3s cubic-bezier(0.16,1,0.3,1), box-shadow 0.3s; }
.hover-lift:hover { transform: translateY(-4px); }
.package-card { transition: all 0.35s cubic-bezier(0.16,1,0.3,1); }
.package-card:hover { transform: translateY(-6px); box-shadow: 0 20px 40px rgba(31,43,109,0.14); }
.yellow-cta { background-color: var(--yellow); color: var(--navy); transition: all 0.2s; box-shadow: 0 2px 0 var(--navy); }
.yellow-cta:hover { transform: translateY(-1px); box-shadow: 0 3px 0 var(--navy); }
.yellow-cta:active { transform: translateY(1px); box-shadow: 0 1px 0 var(--navy); }
.underline-anim { position: relative; }
.underline-anim::after { content: ''; position: absolute; left: 0; right: 0; bottom: -2px; height: 2px; background: var(--yellow); transform: scaleX(0); transition: transform 0.3s; }
[dir="rtl"] .underline-anim::after { transform-origin: right; }
[dir="ltr"] .underline-anim::after { transform-origin: left; }
.underline-anim:hover::after { transform: scaleX(1); }
.polaroid { transform: rotate(-3deg); transition: transform 0.4s; }
.polaroid:hover { transform: rotate(0deg) scale(1.03); }
.mobile-menu { animation: fadeUp 0.25s ease-out forwards; }
.mobile-menu.hidden { display: none; }
[dir="rtl"] a:hover .arrow-swap { transform: translateX(-4px); }
[dir="ltr"] a:hover .arrow-swap { transform: translateX(4px); }
.arrow-swap { transition: transform 0.25s; display: inline-block; }
.faq-answer { display: none; }
.faq-item.open .faq-answer { display: block; }
.faq-item.open .faq-toggle-plus { display: none; }
.faq-item:not(.open) .faq-toggle-minus { display: none; }
[dir="rtl"] .phone-btn-end { inset-inline-end: -3px; }
[dir="ltr"] .phone-btn-end { right: -3px; }
[dir="rtl"] .phone-btn-start { inset-inline-start: -3px; }
[dir="ltr"] .phone-btn-start { left: -3px; }
.wa-float { background: #25D366; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
