/* ==========================================================
   Green Jofiyat — Scroll reveal + carousel + search overlay
   ========================================================== */

[data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .6s var(--ease-out), transform .6s var(--ease-out); }
[data-reveal].is-revealed { opacity: 1; transform: none; }
/* Safety net: if JavaScript is disabled, never leave content hidden. */
@media (scripting: none) { [data-reveal] { opacity: 1 !important; transform: none !important; } }

/* Carousel */
.gj-carousel { position: relative; }
.gj-carousel__track { display: flex; gap: var(--space-lg); overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; padding-bottom: var(--space-sm); -ms-overflow-style: none; scrollbar-width: none; }
.gj-carousel__track::-webkit-scrollbar { display: none; }
.gj-carousel__track > * { scroll-snap-align: start; flex: 0 0 clamp(280px, 32%, 380px); }
.gj-carousel__nav { display: flex; justify-content: center; gap: var(--space-sm); margin-top: var(--space-lg); }
.gj-carousel__btn { width: 46px; height: 46px; border-radius: var(--radius-circle); background: var(--gj-bg-white); box-shadow: var(--shadow-sm); display: grid; place-items: center; color: var(--gj-primary); transition: var(--transition-fast); }
.gj-carousel__btn:hover { background: var(--gj-primary); color: #fff; }
/* (Search-overlay styles live in pages.css since the header search button is global.) */
