/*
 * Alican Premium 1.5.6 — dedicated tablet responsive pass.
 * Fixes the 900–1180px "compressed desktop" state and tightens 621–899px.
 */

/* --------------------------------------------------------------------------
 * Large tablet / landscape tablet: 900–1180px
 * ----------------------------------------------------------------------- */
@media (min-width: 900px) and (max-width: 1180px) {
	:root {
		--alican-tablet-gutter: 28px;
	}

	.site-container,
	.commerce-shell,
	.woocommerce-page-shell,
	.content-shell {
		width: min(calc(100% - (var(--alican-tablet-gutter) * 2)), var(--alican-container)) !important;
	}

	/* At 900px+ there is enough room for the real WordPress navigation. */
	.site-header__inner {
		grid-template-columns: 136px minmax(0, 1fr) auto !important;
		gap: 18px !important;
	}

	.primary-navigation {
		display: block !important;
		min-width: 0;
	}

	.site-menu {
		justify-content: center;
		gap: clamp(12px, 1.8vw, 22px) !important;
	}

	.site-menu > li > a {
		min-height: var(--alican-header-height);
		font-size: clamp(0.72rem, 1.05vw, 0.82rem) !important;
		white-space: nowrap;
	}

	.menu-toggle {
		display: none !important;
	}

	.search-toggle {
		display: inline-grid !important;
	}

	.site-logo__image,
	.custom-logo {
		max-width: 128px !important;
		height: 44px !important;
	}

	/* Hero: true two-column tablet composition, not a squeezed desktop absolute image. */
	.hero-slider,
	.hero-slider__viewport,
	.hero-slide__inner {
		min-height: 458px !important;
	}

	.hero-slide__inner {
		display: grid !important;
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
		align-items: center !important;
		gap: clamp(24px, 3vw, 40px) !important;
		padding-top: 28px !important;
		padding-bottom: 58px !important;
	}

	.hero-slide__copy {
		grid-column: 1;
		grid-row: 1;
		width: auto !important;
		max-width: 410px !important;
	}

	.hero-slide h1,
	.hero-slide h2 {
		max-width: 410px !important;
		font-size: clamp(2.25rem, 4.3vw, 3.05rem) !important;
		line-height: 1.02 !important;
		letter-spacing: -0.048em !important;
	}

	.hero-slide__copy > p {
		max-width: 390px !important;
		font-size: 0.82rem !important;
		line-height: 1.55 !important;
	}

	.hero-slide__actions {
		gap: 10px !important;
	}

	.hero-slide__actions .button,
	.hero-slide__actions .text-link {
		min-height: 42px;
		padding-inline: 15px;
		font-size: 0.73rem !important;
	}

	.hero-slide__visual,
	.hero-slide--paint .hero-slide__visual,
	.hero-slide--lab .hero-slide__visual,
	.hero-slide--car .hero-slide__visual {
		position: relative !important;
		inset: auto !important;
		grid-column: 2;
		grid-row: 1;
		width: 100% !important;
		height: clamp(310px, 34vw, 352px) !important;
		min-height: 0 !important;
		margin: 0 !important;
		overflow: hidden;
		border: 1px solid var(--alican-border) !important;
		border-radius: 22px !important;
		background: #fff !important;
		box-shadow: 0 12px 34px rgba(24, 31, 20, 0.055) !important;
		opacity: 1 !important;
	}

	.hero-slide__visual::before,
	.hero-slide--paint .hero-slide__visual::before,
	.hero-slide--lab .hero-slide__visual::before,
	.hero-slide--car .hero-slide__visual::before {
		display: none !important;
	}

	.hero-slide__visual img,
	.hero-slide--paint .hero-slide__visual img {
		width: 100% !important;
		height: 100% !important;
		padding: 10px !important;
		object-fit: contain !important;
		object-position: center !important;
		transform: none !important;
	}

	.hero-slide--lab .hero-slide__visual img,
	.hero-slide--car .hero-slide__visual img {
		padding: 0 !important;
		object-fit: cover !important;
	}

	.hero-slide--lab .hero-slide__visual img {
		object-position: 60% center !important;
	}

	.hero-slider__controls {
		bottom: 13px !important;
	}

	/* Categories: 8 equal cards, 2 columns x 4 rows. Reset old featured-first-card rules. */
	.home-main .category-showcase {
		margin-top: 18px !important;
		margin-bottom: 0 !important;
	}

	.home-main .category-showcase__grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		grid-template-rows: none !important;
		grid-auto-rows: minmax(148px, auto) !important;
		grid-auto-flow: row !important;
		gap: 12px !important;
	}

	.home-main .category-card,
	.home-main .category-card:first-child,
	.home-main .category-card:not(:first-child) {
		grid-column: auto !important;
		grid-row: auto !important;
		min-height: 148px !important;
		height: auto !important;
		border-radius: 16px !important;
	}

	.home-main .category-card__copy,
	.home-main .category-card:first-child .category-card__copy,
	.home-main .category-card:not(:first-child) .category-card__copy {
		width: 57% !important;
		padding: 18px 0 18px 18px !important;
	}

	.home-main .category-card__copy h2,
	.home-main .category-card:first-child h2,
	.home-main .category-card:not(:first-child) h2 {
		font-size: clamp(0.92rem, 1.55vw, 1.05rem) !important;
		line-height: 1.18 !important;
	}

	.home-main .category-card__copy p {
		max-width: 150px;
		font-size: 0.66rem !important;
		line-height: 1.4 !important;
	}

	.home-main .category-card__image,
	.home-main .category-card:first-child .category-card__image,
	.home-main .category-card:not(:first-child) .category-card__image {
		top: 4px !important;
		right: 4px !important;
		width: 44% !important;
		height: calc(100% - 8px) !important;
		padding: 10px !important;
		object-fit: contain !important;
	}

	.home-main .category-card__arrow,
	.home-main .category-card:not(:first-child) .category-card__arrow {
		left: 16px !important;
		right: auto !important;
		bottom: 13px !important;
		width: 30px !important;
		height: 30px !important;
	}

	.home-main .category-showcase + .product-showcase {
		padding-top: 40px !important;
	}

	/* Product rails: two generous cards visible instead of four compressed cards. */
	.home-main .product-showcase {
		padding-block: 38px 30px !important;
	}

	.home-main .home-product-block--new {
		padding-top: 14px !important;
	}

	.product-carousel--scroll,
	.home-main .product-carousel--scroll {
		display: grid !important;
		grid-template-columns: none !important;
		grid-auto-flow: column !important;
		grid-auto-columns: calc((100% - 16px) / 2) !important;
		gap: 16px !important;
		overflow-x: auto !important;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.product-carousel--scroll::-webkit-scrollbar {
		display: none;
	}

	.product-carousel--scroll .product-card {
		scroll-snap-align: start;
	}

	.home-main .product-card {
		min-height: 395px !important;
	}

	.home-main .product-card__media {
		min-height: 280px !important;
		padding: 18px !important;
	}

	.home-main .product-card__media img,
	.home-main .product-card__image {
		height: 250px !important;
	}

	.home-main .product-card__body {
		min-height: 112px !important;
		padding: 15px 16px 17px !important;
	}

	.home-main .product-card h3 {
		font-size: 0.9rem !important;
		line-height: 1.3 !important;
	}

	/* Expertise: intentional 50/50 tablet panel. */
	.expertise-section {
		padding-block: 20px 30px !important;
	}

	.expertise-section__panel {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
		min-height: 360px !important;
		border-radius: 20px !important;
	}

	.expertise-section__content {
		grid-column: 1 !important;
		grid-row: 1 !important;
		order: initial !important;
		padding: clamp(25px, 3vw, 34px) !important;
	}

	.expertise-section__media {
		grid-column: 2 !important;
		grid-row: 1 !important;
		order: initial !important;
		height: auto !important;
		min-height: 360px !important;
	}

	.expertise-section__media img {
		width: 100%;
		height: 100% !important;
		min-height: 360px !important;
		object-fit: cover !important;
	}

	.expertise-section__content > h2 {
		font-size: clamp(1.65rem, 3.2vw, 2.1rem) !important;
	}

	.expertise-item {
		grid-template-columns: 34px minmax(0, 1fr) !important;
		gap: 10px !important;
		padding-block: 8px !important;
	}

	/* Brands: 4 x 2, clean rhythm. */
	.home-main .brand-showcase {
		padding-block: 24px 28px !important;
	}

	.home-main .brand-wall--home {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 10px !important;
		border: 0 !important;
	}

	.home-main .brand-wall--home .brand-wall__item {
		min-height: 96px !important;
		padding: 14px 10px !important;
		border: 1px solid var(--alican-border) !important;
		border-radius: 14px !important;
	}

	/* Services remain compact but readable. */
	.service-strip {
		padding-bottom: 24px !important;
	}

	.service-strip__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	.service-card {
		grid-template-columns: 34px minmax(0, 1fr) !important;
		gap: 10px !important;
		min-height: 94px !important;
		padding: 15px 14px !important;
	}

	.service-card h2 {
		font-size: 0.73rem !important;
	}

	.service-card p {
		font-size: 0.62rem !important;
		line-height: 1.4 !important;
	}

	/* Footer: preserve two-level information hierarchy. */
	.footer-cta,
	.footer-cta__content {
		min-height: 170px !important;
	}

	.footer-cta__content {
		padding: 24px 28px !important;
	}

	.footer-cta h2,
	.footer-cta__content h2 {
		font-size: clamp(1.7rem, 3.2vw, 2.2rem) !important;
	}

	.site-footer__main {
		grid-template-columns: 140px minmax(0, 1fr) !important;
		gap: 24px !important;
	}

	.site-footer__contact {
		display: grid !important;
		grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.85fr) minmax(0, 0.95fr) !important;
		align-items: center;
		gap: 12px 18px !important;
	}

	.footer-contact {
		min-width: 0;
		font-size: 0.68rem !important;
	}

	/* Catalog/static surfaces: keep tablet density intentional. */
	.catalog-products-grid,
	.woocommerce ul.products,
	.single-product-shell .related ul.products,
	.single-product-shell .upsells ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.catalog-category-grid,
	.catalog-brand-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* --------------------------------------------------------------------------
 * Portrait / medium tablet: 621–899px
 * Keep drawer navigation, but remove cramped/overlong section behavior.
 * ----------------------------------------------------------------------- */
@media (min-width: 621px) and (max-width: 899px) {
	.home-main .category-showcase__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		grid-template-rows: none !important;
		grid-auto-rows: minmax(142px, auto) !important;
	}

	.home-main .category-card,
	.home-main .category-card:first-child,
	.home-main .category-card:not(:first-child) {
		grid-row: auto !important;
		min-height: 142px !important;
	}

	.home-main .category-showcase + .product-showcase {
		padding-top: 34px !important;
	}

	.product-carousel--scroll,
	.home-main .product-carousel--scroll {
		grid-auto-columns: calc((100% - 14px) / 2) !important;
		gap: 14px !important;
	}

	.home-main .product-card {
		min-height: 372px !important;
	}

	.home-main .product-card__media {
		min-height: 252px !important;
	}

	.home-main .product-card__media img,
	.home-main .product-card__image {
		height: 226px !important;
	}

	.home-main .brand-wall--home {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}

	.service-strip__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.service-card:last-child {
		grid-column: 1 / -1;
	}
}

@media (min-width: 760px) and (max-width: 899px) {
	.expertise-section__panel {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		min-height: 340px !important;
	}

	.expertise-section__content {
		grid-column: 1 !important;
		grid-row: 1 !important;
		order: initial !important;
		padding: 24px !important;
	}

	.expertise-section__media {
		grid-column: 2 !important;
		grid-row: 1 !important;
		order: initial !important;
		height: auto !important;
		min-height: 340px !important;
	}

	.expertise-section__media img {
		height: 100% !important;
		min-height: 340px !important;
		object-fit: cover !important;
	}
}
