/*
 * Certify Theme — responsive overrides
 * Breakpoints: 1024 (desktop down), 768 (tablet down), 480 (mobile)
 */

/* ============================================================
 * Below 1024px — switch to mobile menu, stack grids
 * ============================================================ */
@media (max-width: 1023px) {
	/* Üst şeritte logo + burger sığsın; çekmece kapalıyken tıklamalar üst bardaki düğmeye gitsin. */
	.iacg-header-inner {
		flex-wrap: nowrap;
		gap: 8px;
	}

	.iacg-header-inner > .iacg-brand {
		flex: 1 1 auto;
		min-width: 0;
	}

	.iacg-nav {
		position: fixed;
		top: 0;
		right: 0;
		width: min(400px, 100%);
		max-width: 100%;
		height: 100vh;
		height: 100dvh;
		background: linear-gradient(165deg, #ffffff 0%, #f6f8fc 55%, #eef2f8 100%);
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 0;
		padding: 72px 20px 28px;
		overflow-y: auto;
		box-shadow: -16px 0 48px rgba(26, 60, 94, 0.14);
		border-left: 1px solid var(--c-border);
		transform: translateX(100%);
		transition: transform 0.38s var(--ease);
		z-index: 1500;
		pointer-events: none;
	}

	.iacg-nav.is-open {
		transform: translateX(0);
		pointer-events: auto;
	}

	.iacg-nav-close {
		display: inline-flex;
		position: absolute;
		top: 16px;
		right: 16px;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		background: var(--c-white);
		border: 1px solid var(--c-border);
		border-radius: var(--nav-item-radius, 10px);
		color: var(--c-primary);
		box-shadow: var(--shadow-xs);
	}

	.iacg-nav-close:hover,
	.iacg-nav-close:focus-visible {
		background: var(--c-light-2);
		border-color: var(--c-secondary);
		color: var(--c-secondary);
	}

	.iacg-menu {
		flex-direction: column;
		align-items: stretch;
		gap: 4px;
		flex: 0 0 auto;
		width: 100%;
	}

	.iacg-menu-item {
		width: 100%;
		border-bottom: none;
	}

	.iacg-menu-item > a {
		color: var(--c-text) !important;
		padding: 14px 14px;
		width: 100%;
		justify-content: space-between;
		border-radius: var(--nav-item-radius, 10px);
		background: transparent;
	}

	.iacg-menu-item > a:hover,
	.iacg-menu-item > a:focus-visible {
		color: var(--c-primary) !important;
		background: rgba(26, 60, 94, 0.06);
	}

	.iacg-menu-item.current-menu-item > a,
	.iacg-menu-item.current-menu-ancestor > a {
		background: rgba(26, 60, 94, 0.08) !important;
		color: var(--c-primary) !important;
	}

	.iacg-menu-item.current-menu-item > a::after,
	.iacg-menu-item.current-menu-ancestor > a::after {
		display: none;
	}

	/* Mobile: dropdowns inline (click-to-open via JS .is-open) */
	.iacg-submenu,
	.iacg-mega {
		position: static !important;
		opacity: 1;
		visibility: hidden;
		transform: none !important;
		width: 100%;
		max-height: 0;
		overflow: hidden;
		background: rgba(255, 255, 255, 0.65);
		border: 1px solid rgba(226, 232, 239, 0.9);
		border-radius: 12px;
		box-shadow: var(--shadow-xs);
		padding: 0 !important;
		margin: 4px 0 8px;
		grid-template-columns: 1fr !important;
		transition: max-height 0.35s var(--ease), padding 0.35s var(--ease), visibility 0.35s var(--ease);
	}

	.iacg-submenu::before {
		display: none;
	}

	.iacg-has-children.is-open > .iacg-submenu,
	.iacg-mega-parent.is-open > .iacg-mega {
		visibility: visible;
		max-height: 2400px;
		padding: 8px 10px !important;
	}

	/* Disable hover-open on mobile — only click toggles */
	.iacg-has-children:hover > .iacg-submenu,
	.iacg-mega-parent:hover > .iacg-mega {
		visibility: hidden;
		max-height: 0;
		padding: 0 !important;
	}

	.iacg-has-children.is-open:hover > .iacg-submenu,
	.iacg-mega-parent.is-open:hover > .iacg-mega {
		visibility: visible;
		max-height: 2400px;
		padding: 8px 10px !important;
	}

	.iacg-submenu a,
	.iacg-mega a {
		color: var(--c-dark) !important;
		padding: 11px 12px !important;
		font-size: 13.5px;
	}

	.iacg-submenu a:hover,
	.iacg-mega a:hover {
		background: rgba(26, 60, 94, 0.07);
		color: var(--c-primary) !important;
	}

	.iacg-mega-title {
		color: var(--c-primary);
		border-bottom-color: var(--c-border);
		padding: 10px 8px 8px !important;
	}

	.iacg-actions {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
		gap: 10px;
		margin-top: 20px;
		padding-top: 20px;
		border-top: 1px solid var(--c-border);
	}

	.iacg-nav-cta {
		width: 100%;
		justify-content: center;
		min-height: 50px;
		box-shadow: none !important;
	}

	.iacg-nav .nav-cta-login {
		background: linear-gradient(180deg, #1e4a73 0%, var(--c-primary) 100%) !important;
		color: #ffffff !important;
		border: none !important;
		box-shadow: 0 2px 10px rgba(26, 60, 94, 0.22) !important;
	}

	.iacg-nav .nav-cta-login:hover,
	.iacg-nav .nav-cta-login:focus-visible {
		filter: brightness(1.05);
		transform: translateY(-1px);
	}

	.iacg-nav .nav-cta-accredited {
		background: linear-gradient(180deg, #368a5c 0%, var(--c-green) 100%) !important;
		color: #ffffff !important;
		border: none !important;
		box-shadow: 0 2px 10px rgba(46, 125, 79, 0.22) !important;
	}

	.iacg-nav .nav-cta-accredited:hover,
	.iacg-nav .nav-cta-accredited:focus-visible {
		filter: brightness(1.05);
		transform: translateY(-1px);
	}

	.iacg-btn {
		width: 100%;
		height: 48px;
	}

	.iacg-btn-ghost {
		color: var(--c-primary) !important;
		border-color: rgba(26, 60, 94, 0.25);
		background: rgba(255, 255, 255, 0.65);
	}

	/* Section grids stack */
	.why-choose-grid {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.iacg-contact-grid {
		grid-template-columns: 1fr;
	}

	.iacg-stats-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	/* Footer — dar ekranda tek sütun, taşan adres/e-posta kırılsın, alt şerit üst üste binmesin */
	.iacg-footer-top {
		grid-template-columns: 1fr;
		gap: clamp(16px, 4vw, 26px);
		padding: clamp(32px, 7vw, 52px) 0 clamp(24px, 5vw, 36px);
	}

	.iacg-footer-brand-stack {
		max-width: none;
	}

	.iacg-footer-social {
		margin-top: 8px;
	}

	.iacg-footer-social-link {
		min-width: 44px;
		min-height: 44px;
	}

	.iacg-footer-panel {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}

	.iacg-footer-heading {
		padding-left: 10px;
	}

	.iacg-footer-list a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		padding-block: 4px;
		max-width: 100%;
		box-sizing: border-box;
	}

	.iacg-footer-contact-block {
		max-width: 100%;
	}

	.iacg-footer-contact-line,
	.iacg-footer-office-title {
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.iacg-footer-contact-email a {
		overflow-wrap: anywhere;
	}

	.iacg-footer-bottom {
		flex-direction: column;
		align-items: stretch;
		gap: 14px;
		padding: 18px 0 26px;
	}

	.iacg-footer-copy {
		max-width: none;
	}

	.iacg-footer-bottom-links {
		width: 100%;
		flex-wrap: wrap;
		gap: 10px 18px;
	}

	.iacg-footer-bottom-links a {
		white-space: normal;
	}
}

/* ============================================================
 * Below 768px — single column for most grids
 * ============================================================ */
@media (max-width: 767px) {
	.about-card-links {
		grid-template-columns: 1fr;
	}

	.iacg-services-grid,
	.services-grid {
		grid-template-columns: 1fr;
	}

	.iacg-form-grid {
		grid-template-columns: 1fr;
	}

	.hero-slides {
		min-height: 540px;
	}

	.about-banner,
	.why-choose-section,
	.iacg-services-section,
	.services-section,
	.iacg-contact-section,
	.cta-section {
		padding: 60px 0;
	}

	.iacg-stats-section {
		padding: 50px 0;
	}

	.iacg-footer-panel {
		padding: 16px 14px 18px;
	}

	.iacg-footer-logo .custom-logo-link img,
	.iacg-footer-logo img {
		max-height: 56px;
	}

	.iacg-footer-lead {
		font-size: 14px;
		line-height: 1.6;
	}

	.cbs-wrapper {
		padding: 1.3rem;
	}

	.cbs-result-grid {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
 * Below 480px — tighten edges
 * ============================================================ */
@media (max-width: 479px) {
	.iacg-stats-grid {
		grid-template-columns: 1fr;
	}

	.iacg-footer-top {
		gap: 14px;
		padding: 28px 0 22px;
	}

	.iacg-footer-bottom {
		padding: 16px 0 22px;
		font-size: 12px;
	}

	.iacg-footer-bottom-links a {
		font-size: 12px;
	}

	.hero-slide-content {
		padding-top: 60px;
	}
}
