.ncr-root{--ncr-primary:#356d48;--ncr-accent:#eaf4ed;--ncr-radius:16px;--ncr-gap:20px;--ncr-cols-d:4;--ncr-cols-t:2;--ncr-cols-m:1;color:#243a2b;font-family:inherit;isolation:isolate;margin:46px auto;max-width:1240px;padding:0 20px;width:100%}.ncr-root *{box-sizing:border-box}.ncr-root button,.ncr-root select{font:inherit}.ncr-section-head,.ncr-subsection-head,.ncr-page-toolbar{align-items:center;display:flex;gap:20px;justify-content:space-between}.ncr-root h1,.ncr-root h2,.ncr-root h3,.ncr-root h4{color:#1f3828;line-height:1.2;margin:0}.ncr-section-head h2,.ncr-page-hero h1{font-size:clamp(30px,4vw,48px)}.ncr-subsection-head h3{font-size:clamp(24px,3vw,34px)}.ncr-eyebrow{color:var(--ncr-primary);font-size:12px;font-weight:800;letter-spacing:.13em;margin:0 0 8px;text-transform:uppercase}.ncr-button{align-items:center;background:var(--ncr-button-bg,var(--ncr-primary));border:1px solid var(--ncr-primary);border-radius:999px;color:var(--ncr-button-color,#fff)!important;cursor:pointer;display:inline-flex;font-weight:700;justify-content:center;min-height:44px;padding:10px 21px;text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease}.ncr-button:hover{box-shadow:0 7px 22px rgba(36,84,56,.2);transform:translateY(-1px)}.ncr-button-outline{background:#fff;color:var(--ncr-primary)!important}.ncr-summary{align-items:center;background:linear-gradient(135deg,#f7fbf8,var(--ncr-accent));border:1px solid #d8e7dc;border-radius:var(--ncr-radius);display:grid;gap:42px;grid-template-columns:230px minmax(240px,1fr);margin:28px 0 38px;padding:28px}.ncr-summary-score{align-items:center;display:flex;flex-direction:column;text-align:center}.ncr-summary-score>strong{font-size:52px;line-height:1}.ncr-summary-score>span:last-child{color:#607268;font-size:13px;margin-top:5px}.ncr-stars{color:#e5a11a;font-size:18px;letter-spacing:2px;white-space:nowrap}.ncr-distribution>div{align-items:center;display:grid;font-size:13px;gap:10px;grid-template-columns:34px 1fr 28px;margin:7px 0}.ncr-bar{background:#dfe7e1;border-radius:10px;height:7px;overflow:hidden}.ncr-bar i{background:var(--ncr-primary);display:block;height:100%}.ncr-subsection{margin-top:44px}.ncr-sort{align-items:center;color:#5e6e63;display:flex;font-size:13px;gap:8px}.ncr-sort select{background:#fff;border:1px solid #cfdad2;border-radius:999px;color:#243a2b;min-height:40px;padding:5px 34px 5px 13px}.ncr-grid{display:grid;gap:var(--ncr-gap);grid-template-columns:repeat(var(--ncr-cols-d),minmax(0,1fr));margin-top:20px}.ncr-text-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ncr-card{background:#fff;border:1px solid #dce6df;border-radius:var(--ncr-radius);box-shadow:var(--ncr-card-shadow,0 7px 24px rgba(38,69,48,.07));cursor:pointer;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.ncr-card:focus,.ncr-card:hover{border-color:#9dbba6;box-shadow:0 12px 30px rgba(38,69,48,.13);outline:0;transform:translateY(-2px)}.ncr-card:focus-visible{box-shadow:0 0 0 3px rgba(53,109,72,.25),0 12px 30px rgba(38,69,48,.13)}.ncr-text-card{padding:24px}.ncr-reviewer{align-items:center;display:flex;gap:10px;margin-bottom:15px}.ncr-reviewer>div{min-width:0}.ncr-reviewer strong{display:block}.ncr-reviewer time{color:#7b8980;font-size:12px;margin-left:auto;white-space:nowrap}.ncr-avatar{border-radius:50%;height:42px;object-fit:cover;width:42px}.ncr-avatar-fallback{align-items:center;background:var(--ncr-accent);color:var(--ncr-primary);display:flex;font-size:17px;font-weight:800;justify-content:center}.ncr-verified{align-items:center;color:var(--ncr-primary);display:inline-flex;font-size:11px;font-weight:700;gap:3px}.ncr-verified>span{align-items:center;background:var(--ncr-primary);border-radius:50%;color:#fff;display:inline-flex;height:14px;justify-content:center;width:14px}.ncr-text-card h4{font-size:20px;margin:9px 0}.ncr-text-card p{color:#55665b;line-height:1.65;margin:0 0 15px}.ncr-read-more{color:var(--ncr-primary);font-size:13px;font-weight:700}.ncr-poster{aspect-ratio:var(--ncr-ratio);background:#e9f0eb;overflow:hidden;position:relative}.ncr-poster img{height:100%;object-fit:cover;width:100%}.ncr-poster-placeholder{align-items:center;background:linear-gradient(145deg,#dbe9df,#f4f8f5);color:var(--ncr-primary);display:flex;font-size:64px;height:100%;justify-content:center;min-height:260px}.ncr-poster-gradient{background:linear-gradient(transparent,rgba(14,50,29,.88));bottom:0;color:#fff;display:flex;flex-direction:column;left:0;padding:70px 17px 17px;position:absolute;right:0}.ncr-poster-gradient span{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.ncr-poster-gradient strong{font-size:17px}.ncr-play{align-items:center;background:rgba(255,255,255,.94);border-radius:50%;box-shadow:0 5px 18px rgba(0,0,0,.2);display:flex;height:58px;justify-content:center;left:50%;position:absolute;top:46%;transform:translate(-50%,-50%);width:58px}.ncr-play span{border-bottom:8px solid transparent;border-left:13px solid var(--ncr-primary);border-top:8px solid transparent;margin-left:4px}.ncr-media-meta{display:flex;flex-direction:column;gap:5px;padding:15px}.ncr-media-meta .ncr-stars{font-size:14px}.ncr-load-wrap{text-align:center;margin-top:26px}.ncr-spinner{animation:ncr-spin .8s linear infinite;border:2px solid rgba(53,109,72,.25);border-radius:50%;border-top-color:var(--ncr-primary);display:none;height:18px;margin-left:8px;width:18px}.ncr-button.is-loading .ncr-spinner,.ncr-modal-loading .ncr-spinner{display:inline-block}.ncr-ajax-error{color:#a02929;font-size:13px}.ncr-empty{background:#f8fbf9;border:1px dashed #bad0c0;border-radius:var(--ncr-radius);padding:40px 20px;text-align:center}.ncr-grid-empty{grid-column:1/-1}.ncr-empty-icon{color:var(--ncr-primary);font-size:44px}.ncr-empty h3{margin:8px 0}.ncr-empty p{color:#68786e;margin:0}.ncr-page-hero{margin:0 auto 32px;max-width:760px;text-align:center}.ncr-page-hero>p:last-child{color:#64756a;font-size:18px}.ncr-tabs{background:#eef4f0;border-radius:999px;display:inline-flex;padding:5px}.ncr-tabs button{background:transparent;border:0;border-radius:999px;color:#4f6557;cursor:pointer;font-weight:700;min-height:42px;padding:8px 22px}.ncr-tabs button[aria-selected=true]{background:var(--ncr-primary);box-shadow:0 4px 12px rgba(36,84,56,.18);color:#fff}.ncr-tab-panel[hidden]{display:none}
@keyframes ncr-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.ncr-grid{grid-template-columns:repeat(var(--ncr-cols-t),minmax(0,1fr))}.ncr-text-grid{grid-template-columns:1fr}.ncr-summary{grid-template-columns:180px 1fr}}
@media(max-width:600px){.ncr-root{margin:32px auto;padding:0 14px}.ncr-section-head,.ncr-subsection-head,.ncr-page-toolbar{align-items:flex-start;flex-direction:column}.ncr-section-head .ncr-button{width:100%}.ncr-summary{gap:20px;grid-template-columns:1fr;margin:22px 0;padding:20px}.ncr-grid{grid-template-columns:repeat(var(--ncr-cols-m),minmax(0,1fr))}.ncr-tabs{display:flex;width:100%}.ncr-tabs button{flex:1;padding:8px 12px}.ncr-sort{justify-content:space-between;width:100%}}
@media(prefers-reduced-motion:reduce){.ncr-root *{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* ==========================================================================
   Hind Siliguri Self-Hosted WOFF2 Fonts (Bengali & Latin Subsets)
   ========================================================================== */
@font-face {
	font-family: 'Hind Siliguri';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/hind-siliguri-v14-bengali-400.woff2') format('woff2');
	unicode-range: U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1, U+11DF0-11DF1;
}

@font-face {
	font-family: 'Hind Siliguri';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/hind-siliguri-v14-latin-400.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Hind Siliguri';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/hind-siliguri-v14-bengali-600.woff2') format('woff2');
	unicode-range: U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1, U+11DF0-11DF1;
}

@font-face {
	font-family: 'Hind Siliguri';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/hind-siliguri-v14-latin-600.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Hind Siliguri';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/hind-siliguri-v14-bengali-700.woff2') format('woff2');
	unicode-range: U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1, U+11DF0-11DF1;
}

@font-face {
	font-family: 'Hind Siliguri';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/hind-siliguri-v14-latin-700.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ==========================================================================
   NCR Viewport-Aware Review Modal
   ========================================================================== */
html.ncr-modal-open,
body.ncr-modal-open {
	overflow: hidden !important;
}

.elementor-element-d7aa137:empty,
.elementor-element-7cffe1b:empty {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.ncr-modal[hidden] {
	display: none !important;
}

.ncr-modal {
	position: fixed !important;
	inset: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	height: 100dvh !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: clamp(12px, 2.5vw, 24px) !important;
	box-sizing: border-box !important;
	z-index: 99999999 !important;
	--ncr-primary: #176b45;
	--ncr-button-bg: #176b45;
	--ncr-button-color: #ffffff;
	--ncr-accent: #eaf4ed;
}

.ncr-modal-backdrop {
	position: fixed !important;
	inset: 0 !important;
	background: rgba(8, 20, 13, 0.82) !important;
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	z-index: 1 !important;
	cursor: pointer !important;
}

.ncr-modal-dialog {
	position: relative !important;
	inset: auto !important;
	top: auto !important;
	bottom: auto !important;
	left: auto !important;
	right: auto !important;
	z-index: 2 !important;
	width: min(94vw, 860px) !important;
	max-width: 860px !important;
	max-height: min(90vh, 90dvh, 680px) !important;
	height: auto !important;
	min-height: 0 !important;
	background: #ffffff !important;
	border-radius: 18px !important;
	box-shadow: 0 24px 80px rgba(0, 0, 0, 0.45) !important;
	outline: none !important;
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
	margin: auto !important;
	font-family: 'Poppins', 'Hind Siliguri', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

.ncr-modal-close {
	position: absolute !important;
	top: 14px !important;
	right: 14px !important;
	z-index: 35 !important;
	width: 40px !important;
	height: 40px !important;
	border-radius: 50% !important;
	background: #176b45 !important;
	color: #ffffff !important;
	border: 2px solid #ffffff !important;
	box-shadow: 0 3px 14px rgba(16, 61, 42, 0.32) !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 26px !important;
	line-height: 1 !important;
	padding: 0 !important;
	flex-shrink: 0 !important;
	transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}

.ncr-modal-close:hover,
.ncr-modal-close:focus-visible {
	background: #103d2a !important;
	transform: scale(1.08) !important;
	box-shadow: 0 0 0 3px rgba(23, 107, 69, 0.28) !important;
	outline: none !important;
}

.ncr-modal-nav {
	position: fixed !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 44px !important;
	height: 44px !important;
	border-radius: 50% !important;
	background: #176b45 !important;
	color: #ffffff !important;
	border: 2px solid #ffffff !important;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.32) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 30px !important;
	line-height: 1 !important;
	cursor: pointer !important;
	z-index: 25 !important;
	transition: transform 0.2s ease, background 0.2s ease !important;
}

.ncr-modal-nav:hover,
.ncr-modal-nav:focus-visible {
	background: #103d2a !important;
	transform: translateY(-50%) scale(1.08) !important;
	outline: none !important;
}

.ncr-modal-prev {
	left: max(10px, calc(50vw - 430px - 54px)) !important;
	right: auto !important;
}

.ncr-modal-next {
	right: max(10px, calc(50vw - 430px - 54px)) !important;
	left: auto !important;
}

.ncr-modal-count {
	position: fixed !important;
	bottom: 16px !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	background: #103d2a !important;
	color: #ffffff !important;
	border-radius: 20px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	padding: 6px 14px !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;
	z-index: 25 !important;
}

.ncr-modal-content {
	min-height: 0 !important;
	height: 100% !important;
	width: 100% !important;
	flex: 1 1 auto !important;
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
}

.ncr-modal-loading {
	align-items: center !important;
	display: flex !important;
	min-height: 280px !important;
	justify-content: center !important;
	width: 100% !important;
}

.ncr-modal-loading .ncr-spinner {
	height: 36px !important;
	width: 36px !important;
	border-width: 3px !important;
}

.ncr-modal-error {
	padding: 50px 24px !important;
	text-align: center !important;
	color: #982c2c !important;
}

/* Modal Two-Panel Detail Layout */
.ncr-detail {
	display: grid !important;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr) !important;
	min-height: 0 !important;
	height: 100% !important;
	width: 100% !important;
	align-items: stretch !important;
}

.ncr-detail.is-text-only {
	display: block !important;
	overflow-y: auto !important;
}

.ncr-detail.is-text-only .ncr-detail-copy {
	max-width: 680px !important;
	margin: 0 auto !important;
	padding: 36px 36px 36px !important;
}

/* Media Panel (Left Side) - Forest Green Background, Zero Unnecessary Padding */
.ncr-detail-media {
	background: #091f14 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	overflow: hidden !important;
	min-height: 380px !important;
	height: 100% !important;
	width: 100% !important;
	align-self: stretch !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Portrait Videos (YouTube Shorts, 9:16) - Preserves Aspect Ratio & Fills Available Space */
.ncr-embed.ncr-embed-portrait {
	aspect-ratio: 9 / 16 !important;
	height: 100% !important;
	max-height: 100% !important;
	width: auto !important;
	max-width: 100% !important;
	margin: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
}

.ncr-embed.ncr-embed-portrait iframe {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	border: none !important;
	display: block !important;
}

/* Landscape Videos (16:9) */
.ncr-embed.ncr-embed-landscape {
	aspect-ratio: 16 / 9 !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: 100% !important;
	margin: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
}

.ncr-embed.ncr-embed-landscape iframe {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	border: none !important;
	display: block !important;
}

/* HTML5 & WordPress Embedded Videos */
.ncr-detail-media .wp-video,
.ncr-detail-media video,
.ncr-detail-media .wp-video-shortcode {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	margin: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.ncr-detail-media .wp-video video {
	width: 100% !important;
	height: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
}

/* Review Images - Preserves Complete Image with Object-Fit Contain */
.ncr-detail-image {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	display: block !important;
	margin: auto !important;
	padding: 0 !important;
}

/* Review Copy Panel (Right Side) - Scrollable when needed, Balanced Spacing */
.ncr-detail-copy {
	padding: 28px 46px 24px 24px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	-webkit-overflow-scrolling: touch;
	min-width: 0 !important;
	height: 100% !important;
	max-height: 100% !important;
	min-height: 0 !important;
}

/* Hide reviewer profile/avatar icon in review detail modal */
.ncr-detail .ncr-reviewer .ncr-avatar,
.ncr-detail .ncr-reviewer .ncr-avatar-fallback {
	display: none !important;
}

.ncr-reviewer h3,
.ncr-reviewer strong {
	font-family: 'Hind Siliguri', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #173824 !important;
	margin: 0 !important;
}

/* Review Title (Bengali Typography with Hind Siliguri) */
.ncr-detail-copy h2 {
	font-family: 'Hind Siliguri', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: clamp(18px, 2.2vw, 22px) !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	margin: 8px 0 6px !important;
	color: #173824 !important;
	word-break: break-word !important;
}

/* Review Description & Customer Text (Bengali Typography with Hind Siliguri) */
.ncr-full-review,
.ncr-full-review p {
	font-family: 'Hind Siliguri', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
	color: #3b4e41 !important;
	margin: 8px 0 12px !important;
	word-break: break-word !important;
}

.ncr-full-review strong,
.ncr-full-review b {
	font-weight: 700 !important;
}

.ncr-detail-copy time,
.ncr-source {
	color: #78857d !important;
	font-size: 12.5px !important;
	font-family: 'Hind Siliguri', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* Product Card Inside Modal */
.ncr-product-card {
	align-items: center !important;
	background: #f4f8f5 !important;
	border: 1px solid #d3e2d7 !important;
	border-radius: 14px !important;
	display: grid !important;
	gap: 14px !important;
	grid-template-columns: 80px minmax(0, 1fr) !important;
	margin-top: auto !important;
	margin-top: 16px !important;
	padding: 12px 14px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.ncr-product-card img {
	border-radius: 10px !important;
	height: 80px !important;
	width: 80px !important;
	object-fit: cover !important;
	flex-shrink: 0 !important;
	display: block !important;
}

.ncr-product-card > div {
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;
	gap: 2px !important;
	width: 100% !important;
}

.ncr-product-card span,
.ncr-product-card small {
	color: #5d6f63 !important;
	display: block !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.02em !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
}

.ncr-product-card strong {
	color: #173824 !important;
	display: block !important;
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	margin: 2px 0 3px !important;
	word-break: break-word !important;
}

/* Product Price Section - Unbreakable Currency Symbol & Clean Alignment */
.ncr-price {
	color: #176b45 !important;
	font-weight: 700 !important;
	font-size: 14.5px !important;
	margin: 3px 0 8px !important;
	display: flex !important;
	align-items: baseline !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	line-height: 1.35 !important;
	white-space: normal !important;
	width: 100% !important;
}

/* Prevent currency symbol from breaking onto a separate line */
.ncr-price del,
.ncr-price ins,
.ncr-price .woocommerce-Price-amount,
.ncr-price .amount,
.ncr-price bdi {
	white-space: nowrap !important;
	display: inline-flex !important;
	align-items: baseline !important;
}

.ncr-price del {
	color: #7b8d80 !important;
	font-size: 12.5px !important;
	font-weight: 500 !important;
	text-decoration: line-through !important;
	opacity: 0.8 !important;
	order: 1 !important;
}

.ncr-price ins {
	color: #176b45 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	background: transparent !important;
	order: 2 !important;
}

/* Regular price without sale */
.ncr-price > .woocommerce-Price-amount,
.ncr-price > .amount,
.ncr-price > bdi {
	color: #176b45 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
}

.ncr-price .woocommerce-Price-currencySymbol {
	white-space: nowrap !important;
	display: inline !important;
	margin-left: 1px !important;
	color: inherit !important;
	font-weight: inherit !important;
}

/* View Product Details Button */
.ncr-modal .ncr-product-card a,
.ncr-modal .ncr-product-card .ncr-button,
.ncr-modal .ncr-product-card a.ncr-button,
.ncr-modal .ncr-product-button,
.ncr-detail .ncr-product-card a,
.ncr-product-card a.ncr-product-button,
.ncr-product-card .ncr-button,
.ncr-product-card a.ncr-button,
.ncr-product-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #176b45 !important;
	background-color: #176b45 !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	border: 1px solid #176b45 !important;
	border-radius: 999px !important;
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: 12.5px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	min-height: 36px !important;
	padding: 7px 18px !important;
	margin-top: 2px !important;
	text-decoration: none !important;
	box-shadow: 0 3px 10px rgba(23, 107, 69, 0.22) !important;
	cursor: pointer !important;
	opacity: 1 !important;
	visibility: visible !important;
	white-space: nowrap !important;
	max-width: 100% !important;
	width: auto !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}

.ncr-modal .ncr-product-card a:hover,
.ncr-modal .ncr-product-card a:focus,
.ncr-modal .ncr-product-card a:focus-visible,
.ncr-modal .ncr-product-card .ncr-button:hover,
.ncr-modal .ncr-product-card .ncr-button:focus,
.ncr-modal .ncr-product-card .ncr-button:focus-visible,
.ncr-product-card .ncr-button:hover,
.ncr-product-card a.ncr-button:hover,
.ncr-product-button:hover,
.ncr-product-card .ncr-button:focus-visible,
.ncr-product-card a.ncr-button:focus-visible,
.ncr-product-button:focus-visible {
	background: #103d2a !important;
	background-color: #103d2a !important;
	border-color: #103d2a !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 5px 14px rgba(16, 61, 42, 0.32) !important;
	outline: none !important;
}

.ncr-product-card .ncr-product-button::before,
.ncr-product-card .ncr-product-button::after {
	display: none !important;
	content: none !important;
}

/* ==========================================================================
   Customer Submission Modal
   ========================================================================== */
.ncr-submit-modal[hidden] {
	display: none !important;
}

.ncr-submit-modal {
	position: fixed !important;
	inset: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	height: 100dvh !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: clamp(12px, 2.5vw, 24px) !important;
	box-sizing: border-box !important;
	z-index: 99999999 !important;
}

.ncr-submit-dialog {
	position: relative !important;
	z-index: 2 !important;
	background: #ffffff !important;
	border-radius: 20px !important;
	box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35) !important;
	width: min(94vw, 620px) !important;
	max-height: calc(100vh - 32px) !important;
	max-height: calc(100dvh - 32px) !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding: clamp(22px, 3.5vw, 34px) !important;
	margin: auto !important;
	outline: none !important;
}

.ncr-submit-close {
	position: absolute !important;
	right: 14px !important;
	top: 14px !important;
	font-size: 28px !important;
	line-height: 1 !important;
	background: #176b45 !important;
	border: 2px solid #fff !important;
	border-radius: 50% !important;
	box-shadow: 0 3px 14px rgba(16, 61, 42, 0.28) !important;
	color: #fff !important;
	cursor: pointer !important;
	display: flex !important;
	height: 40px !important;
	width: 40px !important;
	justify-content: center !important;
	align-items: center !important;
	padding: 0 !important;
}

.ncr-submit-close:hover,
.ncr-submit-close:focus-visible {
	background: #103d2a !important;
	box-shadow: 0 0 0 3px rgba(23, 107, 69, 0.25) !important;
	outline: 0 !important;
}

.ncr-submit-heading {
	padding-right: 42px !important;
}

.ncr-submit-heading h2 {
	font-size: clamp(24px, 4vw, 34px) !important;
}

.ncr-submit-heading > p:last-child {
	color: #607268 !important;
	margin: 8px 0 24px !important;
}

.ncr-submit-form > label {
	color: #243a2b !important;
	display: block !important;
	font-weight: 700 !important;
	margin: 0 0 18px !important;
}

.ncr-submit-form input[type=text],
.ncr-submit-form input[type=url],
.ncr-submit-form input[type=file],
.ncr-submit-form textarea {
	background: #fff !important;
	border: 1px solid #b9c9be !important;
	border-radius: 10px !important;
	color: #243a2b !important;
	display: block !important;
	margin-top: 7px !important;
	min-height: 46px !important;
	padding: 10px 12px !important;
	width: 100% !important;
}

.ncr-submit-form textarea {
	min-height: 126px !important;
	resize: vertical !important;
}

.ncr-submit-form input:focus,
.ncr-submit-form textarea:focus {
	border-color: #176b45 !important;
	box-shadow: 0 0 0 3px rgba(23, 107, 69, 0.14) !important;
	outline: 0 !important;
}

.ncr-submit-form small {
	color: #718078 !important;
	display: block !important;
	font-weight: 400 !important;
	margin-top: 5px !important;
}

.ncr-rating-field {
	border: 0 !important;
	margin: 0 0 18px !important;
	padding: 0 !important;
}

.ncr-rating-field legend {
	font-weight: 700 !important;
}

.ncr-rating-input {
	display: inline-flex !important;
	direction: rtl !important;
	margin-top: 5px !important;
}

.ncr-rating-input input {
	height: 1px !important;
	opacity: 0 !important;
	position: absolute !important;
	width: 1px !important;
}

.ncr-rating-input label {
	color: #b5c1b9 !important;
	cursor: pointer !important;
	font-size: 34px !important;
	line-height: 1 !important;
	padding: 2px !important;
}

.ncr-rating-input label:hover,
.ncr-rating-input label:hover ~ label,
.ncr-rating-input input:checked ~ label {
	color: #e5a11a !important;
}

.ncr-rating-input input:focus-visible + label {
	border-radius: 4px !important;
	box-shadow: 0 0 0 3px rgba(23, 107, 69, 0.25) !important;
}

.ncr-honeypot {
	height: 0 !important;
	left: -10000px !important;
	overflow: hidden !important;
	position: absolute !important;
	width: 1px !important;
}

.ncr-submit-message {
	border-radius: 9px !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

.ncr-submit-message.is-success {
	background: #e9f6ee !important;
	color: #176b45 !important;
	padding: 11px 13px !important;
}

.ncr-submit-message.is-error {
	background: #fff0f0 !important;
	color: #982c2c !important;
	padding: 11px 13px !important;
}

.ncr-submit-button {
	background: #176b45 !important;
	color: #fff !important;
	width: 100% !important;
}

/* ==========================================================================
   Responsive Modal Breakpoints (320px - 900px)
   ========================================================================== */
@media (max-width: 900px) {
	.ncr-modal-prev {
		left: 8px !important;
	}
	.ncr-modal-next {
		right: 8px !important;
	}
}

@media (max-width: 768px) {
	.ncr-modal {
		padding: 10px !important;
	}
	.ncr-modal-dialog {
		width: 100% !important;
		max-width: 500px !important;
		max-height: calc(100vh - 20px) !important;
		max-height: calc(100dvh - 20px) !important;
		border-radius: 16px !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
		-webkit-overflow-scrolling: touch;
	}
	.ncr-modal-content {
		overflow: visible !important;
		height: auto !important;
	}
	.ncr-detail {
		grid-template-columns: 1fr !important;
		display: flex !important;
		flex-direction: column !important;
		height: auto !important;
		max-height: none !important;
	}
	.ncr-detail-media {
		width: 100% !important;
		min-height: 240px !important;
		height: auto !important;
		max-height: min(48vh, 48dvh, 360px) !important;
		flex-shrink: 0 !important;
	}
	.ncr-embed.ncr-embed-portrait {
		height: min(48vh, 48dvh, 360px) !important;
		max-height: min(48vh, 48dvh, 360px) !important;
		width: auto !important;
		max-width: 100% !important;
	}
	.ncr-embed.ncr-embed-landscape {
		max-height: min(48vh, 48dvh, 360px) !important;
	}
	.ncr-detail-image {
		height: min(48vh, 48dvh, 360px) !important;
		max-height: min(48vh, 48dvh, 360px) !important;
	}
	.ncr-detail-copy {
		overflow-y: visible !important;
		height: auto !important;
		max-height: none !important;
		padding: 20px 16px 24px !important;
	}
	.ncr-modal-close {
		top: 10px !important;
		right: 10px !important;
		width: 36px !important;
		height: 36px !important;
		font-size: 22px !important;
	}
	.ncr-modal-nav {
		width: 38px !important;
		height: 38px !important;
		font-size: 24px !important;
		top: auto !important;
		bottom: 12px !important;
		transform: none !important;
	}
	.ncr-modal-nav:hover,
	.ncr-modal-nav:focus-visible {
		transform: scale(1.08) !important;
	}
	.ncr-modal-prev {
		left: 12px !important;
	}
	.ncr-modal-next {
		right: 12px !important;
	}
	.ncr-modal-count {
		bottom: 18px !important;
	}
	.ncr-product-card {
		grid-template-columns: 72px minmax(0, 1fr) !important;
		gap: 12px !important;
		padding: 10px 12px !important;
	}
	.ncr-product-card img {
		height: 72px !important;
		width: 72px !important;
	}
	.ncr-submit-dialog {
		border-radius: 14px !important;
		max-height: calc(100vh - 16px) !important;
		max-height: calc(100dvh - 16px) !important;
		padding: 24px 16px !important;
		width: calc(100% - 16px) !important;
	}
	.ncr-submit-close {
		right: 10px !important;
		top: 10px !important;
	}
	.ncr-submit-heading {
		padding-right: 36px !important;
	}
	.ncr-submit-form input,
	.ncr-submit-form textarea {
		font-size: 16px !important;
	}
}

/* Extra small devices (320px - 380px) */
@media (max-width: 380px) {
	.ncr-modal {
		padding: 6px !important;
	}
	.ncr-modal-dialog {
		width: 100% !important;
		max-height: calc(100vh - 12px) !important;
		max-height: calc(100dvh - 12px) !important;
		border-radius: 12px !important;
	}
	.ncr-detail-media {
		min-height: 200px !important;
		max-height: min(44vh, 44dvh, 300px) !important;
	}
	.ncr-embed.ncr-embed-portrait {
		height: min(44vh, 44dvh, 300px) !important;
		max-height: min(44vh, 44dvh, 300px) !important;
	}
	.ncr-detail-image {
		height: min(44vh, 44dvh, 300px) !important;
		max-height: min(44vh, 44dvh, 300px) !important;
	}
	.ncr-detail-copy {
		padding: 16px 12px 20px !important;
	}
	.ncr-product-card {
		grid-template-columns: 60px minmax(0, 1fr) !important;
		gap: 10px !important;
		padding: 8px 10px !important;
	}
	.ncr-product-card img {
		height: 60px !important;
		width: 60px !important;
	}
	.ncr-product-button {
		font-size: 12px !important;
		padding: 6px 14px !important;
		min-height: 34px !important;
	}
}

/* ==========================================================================
   NCR Dynamic Carousel (Video Reviews & Customer Feedback)
   ========================================================================== */

.ncr-carousel-section {
    margin: 16px auto 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
    position: relative;
    width: 100%;
}

.ncr-carousel-container {
    --ncr-carousel-cols: 5;
    --ncr-carousel-gap: 16px;
    margin: 0 auto;
    overflow: hidden;
    padding: 8px 4px 18px;
    position: relative;
    width: 100%;
}

.ncr-carousel-track-wrapper {
    overflow: hidden;
    position: relative;
    width: 100%;
    border-radius: var(--ncr-radius, 16px);
}

.ncr-carousel-track {
    align-items: stretch;
    box-sizing: border-box;
    display: flex;
    gap: var(--ncr-carousel-gap, 16px);
    margin: 0;
    padding: 0;
    transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform;
    width: 100%;
}

/* Static layout when items <= columns */
.ncr-carousel-track[data-count="1"] {
    justify-content: center;
}
.ncr-carousel-track[data-count="1"] .ncr-carousel-slide {
    flex: 0 0 min(250px, 100%);
    max-width: min(250px, 100%);
}
.ncr-carousel-track[data-count="2"] {
    justify-content: center;
}
.ncr-carousel-track[data-count="2"] .ncr-carousel-slide {
    flex: 0 0 min(250px, calc((100% - var(--ncr-carousel-gap, 16px)) / 2));
    max-width: min(250px, calc((100% - var(--ncr-carousel-gap, 16px)) / 2));
}
.ncr-carousel-track[data-count="3"] {
    justify-content: center;
}
.ncr-carousel-track[data-count="3"] .ncr-carousel-slide {
    flex: 0 0 min(250px, calc((100% - (var(--ncr-carousel-gap, 16px) * 2)) / 3));
    max-width: min(250px, calc((100% - (var(--ncr-carousel-gap, 16px) * 2)) / 3));
}
.ncr-carousel-track[data-count="4"] {
    justify-content: center;
}
.ncr-carousel-track[data-count="4"] .ncr-carousel-slide {
    flex: 0 0 min(250px, calc((100% - (var(--ncr-carousel-gap, 16px) * 3)) / 4));
    max-width: min(250px, calc((100% - (var(--ncr-carousel-gap, 16px) * 3)) / 4));
}

.ncr-carousel-slide {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex: 0 0 calc((100% - (var(--ncr-carousel-gap, 16px) * (var(--ncr-carousel-cols, 5) - 1))) / var(--ncr-carousel-cols, 5));
    max-width: calc((100% - (var(--ncr-carousel-gap, 16px) * (var(--ncr-carousel-cols, 5) - 1))) / var(--ncr-carousel-cols, 5));
    min-width: 0;
}

.ncr-carousel-slide .ncr-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    margin: 0;
    width: 100%;
}

.ncr-carousel-slide .ncr-media-card .ncr-poster {
    flex-shrink: 0;
}

/* Media Card (Image & Video) in Carousel */
.ncr-carousel-section .ncr-media-card {
    background: #0d281a;
    border-radius: var(--ncr-radius, 16px);
    border: 1px solid rgba(23, 107, 69, 0.15);
    box-shadow: var(--ncr-card-shadow, 0 7px 24px rgba(38, 69, 48, 0.08));
    overflow: hidden;
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.ncr-carousel-section .ncr-media-card:hover,
.ncr-carousel-section .ncr-media-card:focus {
    transform: translateY(-3px);
    border-color: #176b45;
    box-shadow: 0 12px 32px rgba(16, 61, 42, 0.2);
    outline: none;
}

.ncr-carousel-section .ncr-media-card:focus-visible {
    box-shadow: 0 0 0 3px rgba(23, 107, 69, 0.35), 0 12px 32px rgba(16, 61, 42, 0.2);
}

.ncr-carousel-section .ncr-media-card .ncr-poster {
    aspect-ratio: 9/14;
    border-radius: var(--ncr-radius, 16px);
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 100%;
    background: #10261b;
}

.ncr-carousel-section .ncr-media-card .ncr-poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}

.ncr-carousel-section .ncr-media-card:hover .ncr-poster img {
    transform: scale(1.03);
}

/* Hide separate text panel underneath media cards */
.ncr-media-card .ncr-media-meta,
.ncr-carousel-section .ncr-media-card .ncr-media-meta {
    display: none !important;
}

/* Media Card Overlay: Gradient, Rating, Label, Name */
.ncr-poster-gradient {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 70px 16px 16px;
    background: linear-gradient(to top, rgba(8, 28, 18, 0.94) 0%, rgba(8, 28, 18, 0.6) 65%, transparent 100%);
    color: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    pointer-events: none;
    z-index: 2;
}

.ncr-poster-gradient .ncr-media-rating {
    display: flex;
    align-items: center;
    line-height: 1;
    margin-bottom: 2px;
}

.ncr-poster-gradient .ncr-media-rating .ncr-stars {
    color: #ffc107;
    font-size: 14px;
    letter-spacing: 2px;
    line-height: 1;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}

.ncr-poster-gradient .ncr-media-label {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #a3e6be;
    line-height: 1.2;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.7);
}

.ncr-poster-gradient .ncr-media-name {
    font-size: 15px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.25;
    margin-top: 2px;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
    word-break: break-word;
}

/* Video Play Button */
.ncr-poster .ncr-play {
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 3;
    transition: transform 0.25s ease, background 0.25s ease;
}

.ncr-media-card:hover .ncr-play {
    transform: translate(-50%, -50%) scale(1.1);
    background: #ffffff;
}

.ncr-poster .ncr-play span {
    border-bottom: 8px solid transparent;
    border-left: 14px solid #176b45;
    border-top: 8px solid transparent;
    margin-left: 3px;
    display: block;
}

/* Text Card Enhancements in Carousel */
.ncr-carousel-section .ncr-text-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 24px;
    background: #ffffff;
    border: 1px solid #dce6df;
    border-radius: var(--ncr-radius, 16px);
    box-shadow: var(--ncr-card-shadow, 0 7px 24px rgba(38,69,48,.07));
    cursor: pointer;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.ncr-carousel-section .ncr-text-card:hover,
.ncr-carousel-section .ncr-text-card:focus {
    border-color: #9dbba6;
    box-shadow: 0 12px 30px rgba(38,69,48,.13);
    outline: 0;
    transform: translateY(-2px);
}
.ncr-carousel-section .ncr-text-card:focus-visible {
    box-shadow: 0 0 0 3px rgba(53,109,72,.25), 0 12px 30px rgba(38,69,48,.13);
}
.ncr-carousel-section .ncr-text-card p {
    flex: 1;
    margin: 0 0 14px;
    color: #55665b;
    font-size: 14px;
    line-height: 1.6;
}
.ncr-carousel-section .ncr-text-card .ncr-read-more {
    margin-top: auto;
    color: var(--ncr-primary, #356D48);
    font-size: 13px;
    font-weight: 700;
}

.ncr-carousel-subheading {
    color: #1f3828;
    font-size: clamp(20px, 2.5vw, 26px);
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 14px;
    text-align: center;
}

/* Customer Feedback Card (Mixed Image & Text) */
.ncr-feedback-card {
    background: #ffffff;
    border: 1px solid #dce6df;
    border-radius: var(--ncr-radius, 16px);
    box-shadow: var(--ncr-card-shadow, 0 7px 24px rgba(38,69,48,.07));
    cursor: pointer;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    position: relative;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.ncr-feedback-card:hover,
.ncr-feedback-card:focus {
    border-color: #9dbba6;
    box-shadow: 0 12px 30px rgba(38,69,48,.13);
    outline: 0;
    transform: translateY(-2px);
}

.ncr-feedback-card:focus-visible {
    box-shadow: 0 0 0 3px rgba(53,109,72,.25), 0 12px 30px rgba(38,69,48,.13);
}

.ncr-feedback-thumb {
    aspect-ratio: 16/10;
    background: #e9f0eb;
    overflow: hidden;
    position: relative;
    width: 100%;
    flex-shrink: 0;
}

.ncr-feedback-thumb img {
    height: 100%;
    object-fit: cover;
    width: 100%;
    transition: transform .3s ease;
}

.ncr-feedback-card:hover .ncr-feedback-thumb img {
    transform: scale(1.03);
}

.ncr-feedback-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 22px;
}

.ncr-feedback-rating {
    margin: 4px 0 10px;
}

.ncr-feedback-title {
    color: #1f3828;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.35;
    margin: 0 0 8px;
}

.ncr-feedback-text {
    color: #55665b;
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 14px;
}

.ncr-feedback-card .ncr-read-more {
    color: var(--ncr-primary, #356D48);
    font-size: 13px;
    font-weight: 700;
    margin-top: auto;
    padding-top: 6px;
    display: inline-block;
}

/* Controls */
.ncr-carousel-controls {
    align-items: center;
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-top: 18px;
}

.ncr-carousel-arrow {
    align-items: center;
    background: #ffffff;
    border: 1.5px solid var(--ncr-primary, #356D48);
    border-radius: 50%;
    color: var(--ncr-primary, #356D48);
    cursor: pointer;
    display: inline-flex;
    height: 44px;
    justify-content: center;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
    width: 44px;
    box-shadow: 0 3px 12px rgba(53, 109, 72, 0.12);
    padding: 0;
}

.ncr-carousel-arrow:hover {
    background: var(--ncr-primary, #356D48);
    color: #ffffff;
    transform: scale(1.06);
    box-shadow: 0 6px 18px rgba(53, 109, 72, 0.24);
}

.ncr-carousel-arrow:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(53, 109, 72, 0.35);
}

.ncr-carousel-arrow[hidden] {
    display: none !important;
}

/* Responsive columns: 5 Desktop, 3 Tablet, 2 Wide Mobile, 1 Narrow Mobile */
@media (max-width: 1024px) {
    .ncr-carousel-container {
        --ncr-carousel-cols: 3;
        --ncr-carousel-gap: 14px;
        padding: 6px 0 14px;
    }

    .ncr-carousel-track[data-count="1"] .ncr-carousel-slide {
        flex: 0 0 min(260px, 90%);
        max-width: min(260px, 90%);
    }

    .ncr-carousel-track[data-count="2"] .ncr-carousel-slide {
        flex: 0 0 calc((100% - 14px) / 2);
        max-width: calc((100% - 14px) / 2);
    }
}

@media (max-width: 768px) {
    .ncr-carousel-container {
        --ncr-carousel-cols: 2;
        --ncr-carousel-gap: 12px;
        padding: 6px 0 14px;
    }

    .ncr-carousel-track[data-count="1"] .ncr-carousel-slide {
        flex: 0 0 min(250px, 90%);
        max-width: min(250px, 90%);
    }

    .ncr-carousel-track[data-count="2"] .ncr-carousel-slide {
        flex: 0 0 calc((100% - 12px) / 2);
        max-width: calc((100% - 12px) / 2);
    }

    .ncr-feedback-body {
        padding: 14px 12px;
    }

    .ncr-feedback-title {
        font-size: 15px;
    }

    .ncr-feedback-text {
        font-size: 13px;
        margin: 0 0 10px;
    }

    .ncr-reviewer strong {
        font-size: 13px;
    }

    .ncr-carousel-arrow {
        height: 38px;
        width: 38px;
    }
}

/* Narrow mobile devices (<= 480px) */
@media (max-width: 480px) {
    .ncr-carousel-container {
        --ncr-carousel-cols: 1;
        --ncr-carousel-gap: 0px;
        padding: 6px 0 14px;
    }

    .ncr-carousel-track[data-count="1"] .ncr-carousel-slide {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .ncr-carousel-track[data-count="2"] .ncr-carousel-slide {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .ncr-poster-gradient {
        padding: 50px 14px 14px;
    }

    .ncr-poster-gradient .ncr-media-name {
        font-size: 14px;
    }
}

/* Extra small devices (320px - 360px) */
@media (max-width: 360px) {
    .ncr-carousel-container {
        --ncr-carousel-gap: 0px;
    }
    .ncr-carousel-track[data-count="1"] .ncr-carousel-slide {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .ncr-carousel-track[data-count="2"] .ncr-carousel-slide {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .ncr-feedback-body {
        padding: 10px 8px;
    }
    .ncr-feedback-title {
        font-size: 13px;
    }
    .ncr-feedback-text {
        font-size: 12px;
        line-height: 1.45;
    }
    .ncr-stars {
        font-size: 14px;
        letter-spacing: 1px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ncr-carousel-track {
        transition: none !important;
    }
    .ncr-carousel-arrow {
        transition: none !important;
    }
}

/* ==========================================================================
   Nisargo Brand System: Customer Reviews Hero Section
   Matches Cart (/cart/) and Shop (/shop/) Page Hero
   ========================================================================== */

.nisargo-reviews-hero,
.ncr-page-hero {
	background: radial-gradient(circle at 50% 0%, rgba(35, 139, 91, 0.28) 0%, transparent 70%),
	            linear-gradient(135deg, #093320 0%, #0b3d26 50%, #176b45 100%) !important;
	padding: 44px 20px 40px !important;
	text-align: center !important;
	color: #ffffff !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
	box-shadow: 0 4px 16px rgba(11, 61, 38, 0.08) !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

.nisargo-reviews-hero-inner,
.ncr-page-hero-inner {
	max-width: 720px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

/* Badge: NISARGO COMMUNITY */
.nisargo-reviews-hero .nisargo-hero-kicker,
.ncr-page-hero .ncr-eyebrow,
.ncr-page-hero .nisargo-hero-kicker {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.12em !important;
	color: #8be6be !important;
	background: rgba(255, 255, 255, 0.08) !important;
	border: 1px solid rgba(139, 230, 190, 0.3) !important;
	padding: 4px 14px !important;
	border-radius: 20px !important;
	margin: 0 auto 12px !important;
	line-height: 1.4 !important;
}

/* Heading: Hear From Our Customers */
.nisargo-reviews-hero-title,
.ncr-page-hero h1,
.ncr-page-hero .ncr-page-hero-title {
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: 2.125rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 0 10px 0 !important;
	letter-spacing: -0.025em !important;
	line-height: 1.25 !important;
	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.15) !important;
}

/* Description: Discover why thousands trust us... */
.nisargo-reviews-hero-subtitle,
.ncr-page-hero p:last-child,
.ncr-page-hero .ncr-page-hero-subtitle {
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	color: rgba(255, 255, 255, 0.92) !important;
	margin: 0 auto !important;
	line-height: 1.5 !important;
	max-width: 580px !important;
}

/* ==========================================================================
   Nisargo Brand System: Review Tabs (Video Reviews & Social Proof)
   Completely overrides & eliminates Hello Elementor #c36 pink
   ========================================================================== */

.ncr-root.ncr-reviews-page {
	margin-top: 32px !important;
	margin-bottom: 60px !important;
}

.ncr-page-toolbar {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	margin: 0 0 28px !important;
	padding: 0 !important;
	gap: 16px !important;
}

/* Completely remove Sort By UI */
.ncr-sort,
label.ncr-sort {
	display: none !important;
	visibility: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 0 !important;
	width: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

/* Tab Container Pill */
.ncr-tabs {
	background: #EAF3EC !important;
	background-color: #EAF3EC !important;
	border: 1px solid rgba(23, 107, 69, 0.15) !important;
	border-radius: 999px !important;
	display: inline-flex !important;
	align-items: center !important;
	padding: 5px !important;
	gap: 6px !important;
	box-shadow: inset 0 1px 3px rgba(11, 61, 38, 0.05) !important;
	margin: 0 auto !important;
}

/* Both Tabs (Video Reviews & Social Proof) Base State */
.ncr-tabs button,
.ncr-tabs [type="button"],
.ncr-tabs button[role="tab"] {
	background: transparent !important;
	background-color: transparent !important;
	border: 1px solid transparent !important;
	border-color: transparent !important;
	border-radius: 999px !important;
	color: #0B3D26 !important;
	-webkit-text-fill-color: #0B3D26 !important;
	cursor: pointer !important;
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	min-height: 42px !important;
	padding: 8px 22px !important;
	line-height: 1.4 !important;
	text-decoration: none !important;
	outline: none !important;
	box-shadow: none !important;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
}

/* Inactive Tab Hover & Focus State (Overrides parent theme #c36 pink) */
.ncr-tabs button:hover,
.ncr-tabs [type="button"]:hover,
.ncr-tabs button:focus,
.ncr-tabs [type="button"]:focus {
	background: rgba(23, 107, 69, 0.08) !important;
	background-color: rgba(23, 107, 69, 0.08) !important;
	border-color: rgba(23, 107, 69, 0.12) !important;
	color: #176B45 !important;
	-webkit-text-fill-color: #176B45 !important;
	transform: translateY(-1px) !important;
	box-shadow: none !important;
}

/* Active Tab (Applied to either Video Reviews or Social Proof when selected) */
.ncr-tabs button[aria-selected="true"],
.ncr-tabs [type="button"][aria-selected="true"],
.ncr-tabs button[role="tab"][aria-selected="true"],
.ncr-tabs button[aria-selected="true"]:focus,
.ncr-tabs [type="button"][aria-selected="true"]:focus {
	background: #176B45 !important;
	background-color: #176B45 !important;
	border: 1px solid #176B45 !important;
	border-color: #176B45 !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
	font-weight: 700 !important;
	box-shadow: 0 4px 14px rgba(23, 107, 69, 0.28) !important;
	cursor: default !important;
	transform: none !important;
}

/* Active Tab Hover State */
.ncr-tabs button[aria-selected="true"]:hover,
.ncr-tabs [type="button"][aria-selected="true"]:hover {
	background: #0B3D26 !important;
	background-color: #0B3D26 !important;
	border-color: #0B3D26 !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
	box-shadow: 0 4px 14px rgba(11, 61, 38, 0.35) !important;
	transform: none !important;
}

/* Accessible Keyboard Focus Ring */
.ncr-tabs button:focus-visible,
.ncr-tabs [type="button"]:focus-visible {
	outline: 2px solid #176B45 !important;
	outline-offset: 2px !important;
}

/* Responsive Breakpoints */
@media (max-width: 768px) {
	.nisargo-reviews-hero,
	.ncr-page-hero {
		padding: 32px 16px 28px !important;
	}

	.nisargo-reviews-hero-title,
	.ncr-page-hero h1,
	.ncr-page-hero .ncr-page-hero-title {
		font-size: 1.625rem !important;
		margin-bottom: 8px !important;
	}

	.nisargo-reviews-hero-subtitle,
	.ncr-page-hero p:last-child,
	.ncr-page-hero .ncr-page-hero-subtitle {
		font-size: 0.875rem !important;
		line-height: 1.45 !important;
	}

	.ncr-page-toolbar {
		margin-bottom: 20px !important;
	}
}

@media (max-width: 600px) {
	.ncr-page-toolbar {
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
	}

	.ncr-tabs {
		display: flex !important;
		width: 100% !important;
		max-width: 360px !important;
		box-sizing: border-box !important;
	}

	.ncr-tabs button,
	.ncr-tabs [type="button"] {
		flex: 1 1 50% !important;
		padding: 8px 12px !important;
		font-size: 13.5px !important;
		text-align: center !important;
		justify-content: center !important;
	}
}

@media (max-width: 360px) {
	.ncr-tabs button,
	.ncr-tabs [type="button"] {
		font-size: 12.5px !important;
		padding: 7px 8px !important;
	}
}
