/**
 * iGBInsider — Responsive
 * Mobile: 320–767px | Tablet: 768–1199px | Desktop: 1200+ | Large: 1440+
 */

/* ── Mobile base (320–767) ── */

.side-ad {
	display: none;
}

.page-outer {
	padding: 12px 0 24px;
}

.main-col {
	padding-inline: var(--layout-gutter);
}

.hdr-leaderboard,
.hdr-ad {
	display: none;
}

.nav-toggle {
	display: flex;
}

.site-nav .nav,
.site-nav .nav-inner {
	display: none;
}

.g5 {
	grid-template-columns: repeat(2, 1fr);
}

.g4 {
	grid-template-columns: repeat(2, 1fr);
}

.g3 {
	grid-template-columns: 1fr;
}

.g2 {
	grid-template-columns: 1fr;
}

.g-main-side {
	grid-template-columns: 1fr;
}

.hero-layout {
	grid-template-columns: 1fr;
	grid-template-rows: auto;
}

.hero-main {
	grid-row: auto;
	min-height: 280px;
}

.hero-title {
	font-size: 24px;
}

.hero-side-cards {
	display: grid;
	grid-template-columns: 1fr;
}

.latest-grid {
	grid-template-columns: repeat(2, 1fr);
}

.featured-big {
	grid-template-columns: 1fr;
}

.fb-thumb {
	min-height: 180px;
}

.fb-body {
	padding: 18px;
}

.fb-title {
	font-size: 20px;
}

.h-banner,
.ad-strip {
	height: auto;
	min-height: 72px;
	flex-wrap: wrap;
	padding: 12px 14px;
	gap: 10px;
}

.hb-hl,
.as-headline {
	font-size: 16px;
}

.hb-div,
.as-div {
	display: none;
}

.nl-strip {
	flex-direction: column;
	align-items: stretch;
	padding: 20px;
	gap: 16px;
}

.nls-form,
.newsletter-form {
	max-width: none;
	flex-direction: column;
}

.nls-input,
.newsletter-input {
	border-radius: var(--radius-sm);
}

.nls-btn,
.newsletter-submit {
	border-radius: var(--radius-sm);
	width: 100%;
}

.ft-main,
.footer-main {
	grid-template-columns: 1fr;
	gap: 28px;
	padding: 32px var(--layout-gutter) 24px;
}

.ft-bottom-inner,
.footer-bottom-inner {
	flex-direction: column;
	text-align: center;
}

.dir-hero-inner {
	grid-template-columns: 1fr;
	gap: 0;
	padding-inline: var(--layout-gutter);
}

.dir-h1 {
	font-size: 32px;
}

.dir-search-panel {
	border-radius: var(--radius-lg);
	margin-top: var(--space-4);
}

.dsp-search {
	flex-direction: column;
}

.dsp-search button {
	width: 100%;
}

.page-body {
	grid-template-columns: 1fr;
	padding: 20px var(--layout-gutter);
}

.dir-grid {
	grid-template-columns: 1fr;
}

.dir-card-featured {
	grid-template-columns: 1fr;
}

.dcf-left {
	padding: 20px;
}

.filter-inner {
	height: auto;
	min-height: var(--height-filter-bar);
	flex-wrap: wrap;
	padding-block: 10px;
}

.filter-lbl {
	width: 100%;
	margin-right: 0;
	margin-bottom: 4px;
}

.filter-right {
	margin-left: 0;
	width: 100%;
	justify-content: space-between;
}

.archive-grid {
	grid-template-columns: 1fr;
}

.article-layout,
.event-single-layout {
	grid-template-columns: 1fr;
}

.article-title {
	font-size: 1.75rem;
}

.article-author-box {
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.form-row {
	grid-template-columns: 1fr;
}

.sticky-bottom,
.sticky-bar {
	height: auto;
	min-height: var(--height-sticky-ad);
	padding: 10px var(--layout-gutter);
	flex-wrap: wrap;
}

.sb-sub {
	display: none;
}

.sb-div {
	display: none;
}

.cal-body {
	grid-template-columns: repeat(7, 1fr);
}

.cal-day {
	min-height: 64px;
	padding: 4px;
}

.cal-event {
	font-size: 9px;
	padding: 2px 4px;
}

.cal-header-cell {
	font-size: 9px;
	padding: 8px 2px;
}

.sec-hdr,
.sec-head {
	flex-direction: column;
	align-items: flex-start;
}

.sec-view-all {
	align-self: flex-start;
}

.archive-hero,
.category-hero {
	padding: var(--space-8) 0 var(--space-6);
}

.archive-title,
.category-title {
	font-size: 2rem;
}

/* ── Tablet (768–1199) ── */

@media (min-width: 768px) {
	.g5 {
		grid-template-columns: repeat(3, 1fr);
	}

	.g4 {
		grid-template-columns: repeat(2, 1fr);
	}

	.g3 {
		grid-template-columns: repeat(2, 1fr);
	}

	.g2 {
		grid-template-columns: repeat(2, 1fr);
	}

	.hero-layout {
		grid-template-columns: 1fr 280px;
	}

	.hero-main {
		grid-row: 1 / 3;
		min-height: 360px;
	}

	.hero-title {
		font-size: 28px;
	}

	.latest-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.featured-big {
		grid-template-columns: 1fr 1fr;
	}

	.h-banner,
	.ad-strip {
		flex-wrap: nowrap;
		height: 90px;
		padding: 0;
	}

	.hb-div,
	.as-div {
		display: block;
	}

	.hb-hl,
	.as-headline {
		font-size: 18px;
	}

	.nl-strip {
		flex-direction: row;
		align-items: center;
		padding: 24px;
	}

	.nls-form,
	.newsletter-form {
		flex-direction: row;
		max-width: 420px;
	}

	.nls-input,
	.newsletter-input {
		border-radius: var(--radius-sm) 0 0 var(--radius-sm);
	}

	.nls-btn,
	.newsletter-submit {
		border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
		width: auto;
	}

	.ft-main,
	.footer-main {
		grid-template-columns: 1fr 1fr;
		gap: 32px;
	}

	.dir-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.dir-h1 {
		font-size: 40px;
	}

	.archive-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.dsp-search {
		flex-direction: row;
	}

	.dsp-search button {
		width: auto;
	}

	.sticky-bottom .sb-sub,
	.sticky-bar .sb-sub {
		display: block;
	}

	.cal-day {
		min-height: 80px;
	}
}

/* ── Desktop (1200–1439) ── */

@media (min-width: 1200px) {
	.side-ad {
		display: block;
	}

	.main-col {
		padding-inline: var(--layout-main-col-padding);
	}

	.hdr-leaderboard,
	.hdr-ad {
		display: flex;
	}

	.nav-toggle {
		display: none;
	}

	.site-nav .nav,
	.site-nav .nav-inner {
		display: flex;
	}

	.mobile-nav-overlay,
	.mobile-nav-panel {
		display: none !important;
	}

	.g5 {
		grid-template-columns: repeat(5, 1fr);
	}

	.g4 {
		grid-template-columns: repeat(4, 1fr);
	}

	.g3 {
		grid-template-columns: repeat(3, 1fr);
	}

	.hero-layout {
		grid-template-columns: 1fr var(--layout-hero-side);
	}

	.hero-main {
		min-height: 420px;
	}

	.hero-title {
		font-size: 34px;
	}

	.latest-grid {
		grid-template-columns: repeat(5, 1fr);
	}

	.ft-main,
	.footer-main {
		grid-template-columns: 1.2fr 1fr 1fr 1.2fr;
	}

	.dir-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.dir-hero-inner {
		grid-template-columns: 1fr var(--layout-dir-search);
		padding-inline: var(--layout-gutter-lg);
	}

	.dir-h1 {
		font-size: 50px;
	}

	.page-body {
		grid-template-columns: 1fr var(--layout-sidebar-lg);
		padding-inline: var(--layout-gutter-lg);
	}

	.archive-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.article-layout,
	.event-single-layout {
		grid-template-columns: 1fr var(--layout-sidebar);
	}

	.dir-card-featured {
		grid-template-columns: 200px 1fr;
	}

	.g-main-side {
		grid-template-columns: 1fr var(--layout-sidebar);
	}

	.filter-inner {
		flex-wrap: nowrap;
		height: var(--height-filter-bar);
		padding-block: 0;
	}

	.filter-lbl {
		width: auto;
		margin-bottom: 0;
	}

	.filter-right {
		width: auto;
		margin-left: auto;
	}
}

/* ── Large desktop (1440+) ── */

@media (min-width: 1440px) {
	:root {
		--layout-gutter: 20px;
		--layout-gutter-lg: 24px;
	}

	.container,
	.site-container,
	.tb,
	.topbar-inner,
	.hdr,
	.nav,
	.nav-inner,
	.ticker-inner,
	.page-outer,
	.ft-main,
	.footer-main,
	.ft-bottom-inner,
	.footer-bottom-inner,
	.dir-hero-inner,
	.filter-inner,
	.page-body,
	.archive-hero-inner,
	.category-hero-inner,
	.events-hero-inner,
	.events-calendar-wrap,
	.article-wrap,
	.event-single-wrap,
	.archive-layout {
		max-width: var(--layout-max);
	}

	.archive-grid {
		grid-template-columns: repeat(4, 1fr);
	}

	.article-content,
	.entry-content,
	.article-header,
	.article-featured-image,
	.article-tags,
	.article-share,
	.article-author-box,
	.article-sponsored {
		max-width: var(--layout-article-width);
	}

	.side-ad {
		width: var(--layout-side-ad);
	}

	.hero-layout {
		grid-template-columns: 1fr var(--layout-hero-side);
	}

	.sec-name {
		font-size: 20px;
	}

	.hb-hl,
	.as-headline {
		font-size: 21px;
	}
}

/* ── Small mobile tweaks (320–479) ── */

@media (max-width: 479px) {
	.g5,
	.latest-grid {
		grid-template-columns: 1fr;
	}

	.g4 {
		grid-template-columns: 1fr;
	}

	.logo-name,
	.logo-mark {
		font-size: 20px;
	}

	.logo-tag,
	.logo-sub {
		display: none;
	}

	.hdr {
		padding: 10px 14px;
		gap: 10px;
	}

	.btn-sub {
		padding: 7px 14px;
		font-size: 11px;
	}

	.hero-body {
		padding: 16px;
	}

	.hero-title {
		font-size: 20px;
	}

	.sec-name,
	.sec-title {
		font-size: 16px;
	}

	.dir-stats {
		gap: 16px;
	}

	.ds-num {
		font-size: 22px;
	}

	.cal-day-num {
		font-size: 11px;
	}

	.events-calendar-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.cal-nav {
		justify-content: center;
	}
}

/* Print */

@media print {
	.topbar,
	.site-header,
	.site-nav,
	.ticker,
	.ticker-wrap,
	.side-ad,
	.sticky-bottom,
	.sticky-bar,
	.h-banner,
	.ad-strip,
	.nl-strip,
	.article-share,
	.nav-toggle,
	.mobile-nav-overlay,
	.mobile-nav-panel {
		display: none !important;
	}

	body {
		padding-bottom: 0;
		background: var(--color-white);
	}

	.article-content,
	.entry-content {
		max-width: none;
	}
}
