/* ═══════════════════════════════════════
   THEME TOGGLE ANIMATION
═══════════════════════════════════════ */
.sun-icon{display:block;}
.moon-icon{display:none;}
[data-theme="light"] .sun-icon{display:none;}
[data-theme="light"] .moon-icon{display:block;}

/* ═══════════════════════════════════════
   SCROLL REVEAL
═══════════════════════════════════════ */
.reveal{
  opacity:0;transform:translateY(24px);
  transition:opacity .55s ease,transform .55s ease;
}
.reveal.visible{opacity:1;transform:translateY(0);}

/* ═══════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════ */
@media(max-width:1200px){
  .learn-grid{grid-template-columns:repeat(3,1fr) !important;}
  .ctrl-grid{grid-template-columns:repeat(3,1fr) !important;}
  .footer-grid{grid-template-columns:1fr 1fr 1fr;gap:28px !important;}
}
@media(max-width:1024px){
  .hero{padding:50px 32px !important;}
  .arch-inner{grid-template-columns:1fr !important;}
}
@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr !important;gap:40px !important;}
  .nav-links{display:none;}
  .hamburger{display:flex;}
  .steps-grid::before{display:none;}
  .steps-grid{grid-template-columns:repeat(2,1fr) !important;}
  .testi-grid{grid-template-columns:1fr 1fr !important;}
}
@media(max-width:700px){
  .hero{padding:40px 20px;}
  .section{padding:56px 20px;}
  .stats-bar{padding:24px 20px;}
  .learn-grid{grid-template-columns:repeat(2,1fr) !important;}
  .ctrl-grid{grid-template-columns:repeat(2,1fr) !important;}
  .steps-grid{grid-template-columns:1fr !important;}
  .testi-grid{grid-template-columns:1fr !important;}
  .footer-grid{grid-template-columns:1fr 1fr !important;}
  .cta-form{flex-direction:column !important;}
  .feat-bar-inner{flex-direction:column !important;}
  .fb-item{border-right:none;border-bottom:1px solid var(--border);}
}
@media(max-width:480px){
  .learn-grid{grid-template-columns:1fr !important;}
  .ctrl-grid{grid-template-columns:1fr !important;}
  .hero-btns{flex-direction:column !important;}
  .btn-primary,.btn-secondary{justify-content:center;}
  .footer-grid{grid-template-columns:1fr !important;}
  .footer-bottom{flex-direction:column;text-align:center !important;}
	#searchBtn{
		display: none;
	}
	.arch-diagram.reveal.visible{
		display: none;
	}
	#gatesGrid > div {
	  max-width: 320px;
	}
  .section.arch-section {
    display: none !important;
  }
}
@media (max-width: 600px) {
      .single-gates .gate-visual {
        width: 100% !important;
      }
	  .gate-body {
		  flex-wrap: wrap;
		}
		.gate-right {
		  order: -1;
		}
    }