/* =========================================================
   ABS CENTRAL — RESPONSIVE STYLES
   ========================================================= */

@media (max-width: 1080px){
	.highlights-grid{grid-template-columns:repeat(2,1fr);}
	.facilities-grid{grid-template-columns:repeat(2,1fr);}
	.gallery-grid{grid-template-columns:repeat(2,1fr);}
	.footer-top{grid-template-columns:1fr 1fr;}
}

@media (max-width: 960px){
	.main-navigation{
		position:fixed;top:0;right:0;height:100vh;width:78%;max-width:340px;background:#fff;
		transform:translateX(100%);transition:transform .3s ease;box-shadow:-8px 0 30px rgba(0,0,0,.15);
		padding:100px 30px 30px;z-index:1001;overflow-y:auto;
	}
	.main-navigation.is-open{transform:translateX(0);}
	.primary-menu{flex-direction:column;align-items:flex-start;gap:0;}
	.primary-menu li{width:100%;border-bottom:1px solid var(--gray-light);}
	.primary-menu a{display:block;padding:16px 0;}
	.mobile-menu-toggle{display:flex;}
	.header-cta{display:none;}

	.location-grid,.investment-grid,.residences-grid,.commercial-grid,.shariah-grid,.contact-grid{
		grid-template-columns:1fr;
	}
	.residences-visual,.commercial-visual,.shariah-visual,.location-visual{order:-1;}
	.blog-layout{grid-template-columns:1fr;}
}

@media (max-width: 720px){
	.section{padding:70px 0;}
	.hero-content{padding:120px 20px 90px;}
	.highlights-grid{grid-template-columns:1fr;}
	.facilities-grid{grid-template-columns:1fr;}
	.gallery-grid{grid-template-columns:1fr;}
	.shariah-list{grid-template-columns:1fr;}
	.form-row-split{grid-template-columns:1fr;}
	.footer-top{grid-template-columns:1fr;gap:34px;}
	.payment-table th,.payment-table td{padding:12px;font-size:.85rem;}
	.lightbox-prev,.lightbox-next{width:36px;height:36px;font-size:.9rem;}
	.abs-whatsapp-float{width:54px;height:54px;bottom:18px;right:18px;}
	.abs-whatsapp-tooltip{display:none;}
	.hero-ctas{flex-direction:column;width:100%;}
	.hero-ctas .btn{width:100%;}
	.investment-ctas{width:100%;}
}

@media (max-width: 480px){
	.hero-headline{font-size:2rem;}
	.section-title{font-size:1.6rem;}
	.site-branding img,.logo-default{height:36px;}
	.error-code{font-size:4rem;}
}
