/* ============================================================
   PRANAV GLOBAL VENTURES — Responsive Stylesheet
   responsive.css
   Breakpoints:
     - Tablet  : max-width 1024px
     - Mobile  : max-width 768px
     - Small   : max-width 480px
   ============================================================ */


/* ── TABLET (≤ 1024px) ── */
@media (max-width: 1024px) {

	/* Hero */
	.hero {
		height: 440px;
	}

	/* Form card */
	.form-card {
		padding: 22px 20px 20px;
	}

	/* Amenity cards – 3 per row */
	.amenity-card {
		flex: 0 0 calc(33.33% - 12px);
	}

	/* Gallery: 10-col grid scales naturally — no override needed */

	/* Location: map smaller */
	.location-content {
		gap: 16px;
	}
}


/* ── MOBILE (≤ 768px) ── */
@media (max-width: 768px) {

	.banner-img {
		padding: 0 15px;
	}

	.container {
		padding: 0 15px;
	}

	.header-inner .logo img {
		width: 170px;
	}

	/* ── Header ── */
	.header {}

	.header-inner {
		padding: 15px 0px;
	}

	.logo-name {
		font-size: 0.9rem;
	}

	/* ── Hero ── */
	.hero {
		height: 340px;
	}

	.hero-content h1 {
		letter-spacing: 1px;
	}

	.gallery-filters {
		gap: 10px;
		justify-content: center;
	}

	.address-bar p {
		font-size: 18px;
	}

	/* ── Contact Form ── */
	.form-card {
		margin-top: -50px;
		padding: 25px 20px;
	}

	.gallery-section {
		padding-bottom: 20px;
	}

	/* Stack form inputs into single column */
	.form-row {
		grid-template-columns: 1fr;
		gap: 3px;
		margin-bottom: 3px;
	}

	.form-error {
		margin-top: 0;
	}

	.filter-btn {
		padding: 10px 20px;
		font-size: 16px;
	}

	.amenity-card {
		padding: 15px 15px 15px;
	}

	.amenity-icon img {
		width: 70px;
	}

	.feature-item {
		padding: 15px 15px 15px;
	}

	.feature-item img {
		width: 70px;
	}

	.address-bar i {
		display: none;
	}

	.section-desc {
		margin-bottom: 20px;
	}

	/* ── Amenities ── */
	.amenities-section {
		padding: 0 0 40px;
	}

	.form-section {
		padding-bottom: 40px;
	}

	.amenities-track {
		gap: 15px;
	}

	.section-title {
		font-size: 30px;
	}

	/* Show 2 cards per visible row */
	.amenity-card {
		flex: 0 0 calc(50% - 8px);
		min-width: 130px;
	}

	/* ── Gallery ── */
	.gallery-header {
		flex-direction: column;
		align-items: flex-start;
	}

	/* Collapse to single column on mobile */
	.gallery-grid {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	}

	/* Reset all grid placements to normal single-column flow */
	.gal-1,
	.gal-2,
	.gal-3,
	.gal-4 {
		grid-column: 1;
		grid-row: auto;
		aspect-ratio: 4 / 2.2;
	}

	/* ── Location ── */
	.location-content {
		grid-template-columns: 1fr;
	}

	.location-map {
		min-height: 260px;
		margin-bottom: 15px;
	}

	/* 2-column features on mobile */
	.location-features {
		grid-template-columns: 1fr 1fr;
	}

	.address-bar {
		margin-bottom: 40px;
	}

	/* ── Footer ── */
	.footer-inner {
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 14px;
	}

	.footer-policy {
		justify-content: center;
	}
}


/* ── LIGHTBOX responsive ── */
@media (max-width: 768px) {
	.lightbox-inner {
		padding: 50px 16px 70px;
	}

	.lightbox-arrow {
		width: 40px;
		height: 40px;
		font-size: 0.85rem;
	}

	.lightbox-prev {
		left: 8px;
	}

	.lightbox-next {
		right: 8px;
	}

	.lightbox-footer {
		padding: 0 16px;
	}
	.subpage-wrap{
		padding: 30px 0;
	}
	.form-group{
		    margin-bottom: 8px;
	}
}


/* ── SMALL PHONES (≤ 480px) ── */
@media (max-width: 480px) {

	.container {
		padding: 0 16px;
	}

	/* Hero shorter on small phones */
	.hero {
		height: 220px;
	}

	.hero-content h1 {
		font-size: 1.25rem;
		margin-top: -20px;
	}

	.form-input {
		padding: 14px 15px;
	}

	.form-error {
		font-size: 9px;
		line-height: unset;
	}

	/* Form card flush */
	.form-card {
		margin-top: -20px;
		border-radius: 8px;
	}

	/* Amenity: 2 per row but tighter */
	.amenity-card {
		flex: 0 0 calc(50% - 8px);
		padding: 15px 10px 5px;
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.amenity-icon {
		width: 44px;
		height: 44px;
		font-size: 1.1rem;
	}

	/* Section titles */
	.section-title {
		font-size: 1.3rem;
	}

	/* Filter buttons wrap naturally */
	.gallery-filters {
		gap: 10px;
	}

	.filter-btn {
		font-size: 15px;
		padding: 8px 12px;
	}

	/* Gallery images: slightly taller ratio on very small screens */
	.gal-1,
	.gal-2,
	.gal-3,
	.gal-4 {
		aspect-ratio: 3 / 2;
	}

	/* Location features: 2 per row */
	.location-features {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}

	.feature-icon {
		width: 42px;
		height: 42px;
		font-size: 1rem;
	}

	/* Address */
	.address-bar {
		flex-direction: column;
		text-align: center;
		padding: 15px;
	}

	/* Footer social row */
	.footer-social {
		flex-wrap: wrap;
		justify-content: center;
	}

	.header-inner .logo img {
		width: 140px;
	}

	.btn {
		padding: 10px 20px;
		padding-top: 9px;
		min-width: 105px;
	}

	.header-inner {
		padding: 12px 0px;
	}

	.form-card {
		padding: 20px 20px;
	}

	.feature-item {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.feature-item span {
		margin-top: 3px;
	}

	.footer-policy {
		justify-content: center;
		display: flex;
		flex-direction: column;
		margin-top: 10px;
		margin-bottom: 10px;
		line-height: 22px;
	}

	.footer-policy .sep {
		display: none;
	}

	.footer-inner {
		gap: 10px;
	}

	.address-bar p {
		font-size: 15px;
	}
}