/**
 * Kedaranchal — site-wide responsive (loads last)
 */

.kedaranchal-theme {
	overflow-x: clip;
}

.kedaranchal-theme img,
.kedaranchal-theme video,
.kedaranchal-theme iframe,
.kedaranchal-theme svg {
	max-width: 100%;
}

.kedaranchal-theme table {
	max-width: 100%;
}

/* Fluid containers */
.page-bradcurm-container,
.kr-inner-wrap,
.kr-page-container,
.kr-shop-layout,
.kr-home-cats__inner,
.kr-home-trust__inner,
.main-header .container {
	width: 100%;
	max-width: var(--kr-container, 1280px);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

/* Scrollable breadcrumbs on narrow screens */
.kedaranchal-theme .breadcrumb,
.kedaranchal-theme .woocommerce-breadcrumb,
.kedaranchal-theme .woostify-breadcrumb {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	max-width: 100%;
}

.kedaranchal-theme .breadcrumb::-webkit-scrollbar,
.kedaranchal-theme .woocommerce-breadcrumb::-webkit-scrollbar,
.kedaranchal-theme .woostify-breadcrumb::-webkit-scrollbar {
	display: none;
}

/* ── Laptop (≤1199px) ── */
@media (max-width: 1199px) {
	.main-header .header-wrap {
		gap: 14px;
	}

	.main-header .header-icons {
		gap: 18px;
		width: auto;
		justify-content: flex-end;
	}

	.main-header .kr-header-search-box {
		min-width: 220px;
		max-width: none;
	}

	.header-navigation .menu {
		column-gap: 14px;
		flex-wrap: wrap;
		justify-content: center;
	}

	.header-navigation .menu > li > a {
		font-size: 14px;
	}

	.kr-header-icon__glyph {
		width: 36px;
		height: 36px;
	}

	.kr-header-icon__label {
		font-size: 11px;
	}

	.site-logo {
		flex: 0 0 auto;
		max-width: 180px;
		min-width: 140px;
	}
}

/* ── Tablet (≤991px) — desktop header still visible until 767px ── */
@media (max-width: 991px) and (min-width: 768px) {
	.main-header .header-wrap {
		gap: 14px;
	}

	.main-header .kr-header-search-box {
		min-width: 200px;
		max-width: none;
	}

	.main-header .header-icons {
		gap: 12px;
	}

	.main-header .kr-header-icon__label {
		font-size: 10px;
	}

	.main-header .kr-header-icon__glyph {
		width: 34px;
		height: 34px;
	}

	.header-navigation .menu {
		column-gap: 12px;
	}

	.header-navigation .menu > li > a {
		font-size: 14px;
	}
}

@media (max-width: 991px) {
	.kedaranchal-theme.woocommerce .site-main,
	.kedaranchal-theme.woocommerce-page .site-main {
		padding: 16px 0 40px;
	}

	.kedaranchal-theme .woocommerce-MyAccount-navigation,
	.kedaranchal-theme .woocommerce-MyAccount-content {
		width: 100% !important;
		float: none !important;
	}

	.kedaranchal-theme.woocommerce-account .u-columns,
	.kedaranchal-theme.woocommerce-account .col2-set,
	.kedaranchal-theme.woocommerce-checkout .col2-set {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	.kedaranchal-theme .woocommerce table.shop_table {
		display: block;
		width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.kedaranchal-theme .woocommerce table.shop_table thead,
	.kedaranchal-theme .woocommerce table.shop_table tbody,
	.kedaranchal-theme .woocommerce table.shop_table tr {
		width: 100%;
	}

	#shop-cart-sidebar,
	.shop-cart-sidebar {
		width: min(92vw, 380px);
		max-width: 100%;
	}

	.kr-pdp-tabs__nav {
		overflow-x: auto;
		flex-wrap: nowrap;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.kr-pdp-tabs__nav::-webkit-scrollbar {
		display: none;
	}

	.kr-pdp-tabs__nav li {
		flex-shrink: 0;
	}

	.kr-home-cats__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}

	.kr-home-content .elementor-section .elementor-container {
		padding-left: 12px;
		padding-right: 12px;
	}

	.kedaranchal-theme.woocommerce-cart .cart-collaterals .cart_totals,
	.kedaranchal-theme.woocommerce-checkout #order_review {
		width: 100% !important;
		float: none !important;
	}

	.kr-shop-layout {
		padding: 12px 14px 28px;
	}
}

/* ── Mobile (≤767px) ── */
@media (max-width: 767px) {
	html {
		-webkit-text-size-adjust: 100%;
		text-size-adjust: 100%;
	}

	.kedaranchal-theme,
	.kedaranchal-theme .site-content,
	.kedaranchal-theme .content-area,
	.kedaranchal-theme .kr-home-content,
	.kedaranchal-theme .elementor,
	.kedaranchal-theme .elementor-section,
	.kedaranchal-theme .e-con,
	.kedaranchal-theme .e-con-inner {
		max-width: 100%;
		overflow-x: clip;
	}

	.kedaranchal-theme h1,
	.kedaranchal-theme .product_title,
	.kedaranchal-theme .kr-page-hero__title,
	.kedaranchal-theme .entry-title {
		font-size: clamp(1.2rem, 5vw, 1.5rem) !important;
		line-height: 1.3 !important;
		word-break: break-word;
	}

	.kr-page-container,
	.page-bradcurm-container,
	.kr-inner-wrap {
		padding-left: 14px;
		padding-right: 14px;
		box-sizing: border-box;
	}

	/* Avoid iOS input zoom */
	.kedaranchal-theme input,
	.kedaranchal-theme select,
	.kedaranchal-theme textarea {
		font-size: 16px !important;
	}

	.kr-search-page-hero {
		padding: 20px 14px 24px;
		margin-bottom: 16px;
	}

	.kr-search-page-hero h1 {
		font-size: 1.15rem;
		word-break: break-word;
	}

	.kr-search-page-hero p {
		font-size: 0.875rem;
	}

	.kedaranchal-theme .woocommerce-MyAccount-navigation {
		padding: 6px;
	}

	.kedaranchal-theme .woocommerce-MyAccount-navigation ul li a {
		padding: 10px 12px !important;
		font-size: 0.875rem;
	}

	.kedaranchal-theme .woocommerce-MyAccount-content {
		padding: 20px 16px;
	}

	.kedaranchal-theme.woocommerce-cart .cart-collaterals .cart_totals {
		padding: 16px;
	}

	.kr-home-promo__inner {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
		gap: 8px;
	}

	.kr-home-cats__head h2 {
		font-size: 1.35rem;
	}

	.kr-home-cats {
		padding: 40px 14px 48px;
	}

	.kr-home-cats__grid {
		grid-template-columns: 1fr 1fr;
	}

	.kr-shop-products .woostify-sorting,
	.kr-shop-products .woocommerce-ordering {
		width: 100%;
	}

	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering {
		float: none !important;
		width: 100%;
		text-align: center;
		margin: 0 0 10px !important;
	}

	.woocommerce .woocommerce-ordering select {
		width: 100%;
		max-width: 100%;
	}

	.kr-pdp-summary-footer {
		flex-wrap: wrap;
	}

	.kr-pdp-share {
		flex-wrap: wrap;
	}

	.kedaranchal-theme .feat-row,
	.kedaranchal-theme .product-loop-meta .animated-meta {
		width: 100%;
	}

	/* Product grids — always 2 per row on phone (same card size) */
	.kedaranchal-theme ul.products,
	.kedaranchal-theme .woocommerce ul.products,
	.kedaranchal-theme ul.products[class*="columns-"],
	.kedaranchal-theme ul.products[class*="mobile-columns-"],
	.kedaranchal-theme ul.products[class*="tablet-columns-"],
	.kr-home-products__grid,
	.kr-search-products__grid,
	.kr-best-sellers__grid,
	.kr-shop-products ul.products,
	.kr-category-landing-loop ul.products,
	.kr-has-shop-filters .kr-shop-products ul.products,
	.kr-has-shop-filters .kr-category-landing-loop ul.products,
	.kr-pdp-page .related.products ul.products,
	.kr-pdp-page .upsells.products ul.products,
	.kr-pdp-page .woostify-product-recently-viewed-section ul.products {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	.kedaranchal-theme ul.products li.product,
	.kedaranchal-theme .woocommerce ul.products li.product,
	.kr-home-products__grid > .kr-product-card,
	.kr-search-products__grid > .kr-product-card {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		float: none !important;
		height: 100%;
	}

	.kedaranchal-theme ul.products li.product .kr-product-card,
	.kr-home-products__grid > .kr-product-card,
	.kr-search-products__grid > .kr-product-card {
		height: 100%;
		min-height: 100%;
	}

	/* Buttons / forms full width where cramped */
	.kedaranchal-theme.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
	.kedaranchal-theme.woocommerce-checkout #place_order,
	.kedaranchal-theme .woocommerce-form-login__submit,
	.kedaranchal-theme .woocommerce-form-register__submit,
	.kedaranchal-theme .ma-auth__btn {
		width: 100%;
		max-width: 100%;
	}

	.kedaranchal-theme form.cart,
	.kedaranchal-theme .woocommerce-cart-form,
	.kedaranchal-theme .checkout.woocommerce-checkout {
		max-width: 100%;
	}

	.kedaranchal-theme .quantity {
		max-width: 100%;
	}

	/* Footer / sections */
	.kr-footer__main,
	.kr-footer__links {
		grid-template-columns: 1fr !important;
		gap: 20px;
	}

	.kr-home-trust__grid,
	.kr-testimonials__grid {
		grid-template-columns: 1fr !important;
	}

	/* Elementor / banners */
	.kedaranchal-theme .elementor-widget-image img,
	.kedaranchal-theme .elementor-image-carousel img {
		height: auto !important;
		max-width: 100% !important;
	}

	.kedaranchal-theme .elementor-button-wrapper {
		width: 100%;
	}

	.kedaranchal-theme .elementor-button {
		max-width: 100%;
		box-sizing: border-box;
	}

	/* Chrome stack breathing room */
	.kr-chrome-top .kr-topbar__inner {
		padding-left: 12px;
		padding-right: 12px;
	}

	.mobile-header .header-row1 {
		gap: 6px;
	}

	.mobile-header .header-icons {
		gap: 2px;
		overflow: visible;
	}

	/* Bottom bar + safe area */
	.kr-mobile-bar {
		padding-bottom: max(4px, env(safe-area-inset-bottom, 0px));
	}

	body.kedaranchal-theme {
		padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px));
	}
}

/* ── Small phone (≤480px) ── */
@media (max-width: 480px) {
	.page-bradcurm-container,
	.kr-page-container {
		padding-left: 12px;
		padding-right: 12px;
	}

	.kr-home-cats__grid {
		grid-template-columns: 1fr;
	}

	.kr-cat-banner {
		min-height: 150px;
	}

	.kr-cat-banner__overlay {
		padding: 28px 12px;
	}

	.kr-cat-banner__desc {
		font-size: 0.8125rem;
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.kr-pdp-tabs__nav a {
		padding: 10px 12px;
		font-size: 0.75rem;
	}

	.kr-pdp-tabs__panel {
		padding: 16px 12px;
	}

	#shop-cart-sidebar,
	.shop-cart-sidebar {
		width: 100vw;
	}

	.ma-auth__otp-digit {
		width: 38px;
		height: 46px;
		font-size: 1.05rem;
	}

	.ma-auth__card {
		padding: 20px 16px;
	}

	.kr-footer__trust span {
		font-size: 0.6875rem;
		padding: 4px 8px;
	}

	.kr-content-card {
		padding: 18px 14px;
	}
}

/* ── Touch / coarse pointer ── */
@media (hover: none) and (pointer: coarse) {
	.kr-header-icon,
	.icon-btn,
	.kr-mobile-bar__item,
	.hamburger,
	.kr-shop-bar__toggle,
	.kr-cat-pill,
	.kr-pdp-share__btn {
		min-height: 44px;
	}

	#shop-cart-sidebar .mini-cart-product-qty {
		width: 36px;
		height: 36px;
		min-width: 36px;
		min-height: 36px;
	}

	.header-navigation .menu > li > a,
	.header-navigation .sub-menu li a {
		padding-top: 12px;
		padding-bottom: 12px;
	}
}

/* Safe area for notched phones */
@supports (padding: max(0px)) {
	body.kedaranchal-theme {
		padding-left: max(0px, env(safe-area-inset-left));
		padding-right: max(0px, env(safe-area-inset-right));
	}
}
