@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700;900&display=swap');

/* ============================================================
   MYFINTEL FASHION - Flipkart-inspired White & Green theme
   Layer order: bootstrap -> style.min (base) -> custom (this)
   NOTE: --fk-blue / --fk-blue-dark / --fk-blue-soft names are kept
   for minimal diff against existing rules, but now hold the brand's
   GREEN palette (Primary #2E7D32 / Hover #1B5E20 / Light BG #E8F5E9).
   ============================================================ */

:root {
	--fk-blue: #2E7D32;
	--fk-blue-dark: #1B5E20;
	--fk-blue-soft: #E8F5E9;
	--fk-orange: #fb641b;
	--fk-green: #4CAF50;
	--fk-secondary: #4CAF50;   /* brand secondary green */
	--fk-mint: #A5D6A7;        /* light accent used on dark green */
	--fk-bg: #f1f3f6;
	--fk-surface: #ffffff;
	--fk-ink: #212121;
	--fk-muted: #878787;
	--fk-line: #e0e0e0;
	--fk-shadow: 0 2px 8px rgba(40, 44, 63, 0.08);
	--fk-shadow-hover: 0 8px 24px rgba(40, 44, 63, 0.16);
	--fk-radius: 8px;

	/* legacy variable aliases (used by older rules/markup) */
	--atelier-bg: var(--fk-bg);
	--atelier-surface: var(--fk-surface);
	--atelier-surface-strong: var(--fk-surface);
	--atelier-ink: var(--fk-ink);
	--atelier-muted: var(--fk-muted);
	--atelier-line: var(--fk-line);
	--atelier-accent: var(--fk-blue);
	--atelier-accent-strong: var(--fk-blue-dark);
	--atelier-accent-soft: var(--fk-blue-soft);
	--atelier-deep: #172337;
	--atelier-success: var(--fk-green);
	--atelier-shadow: var(--fk-shadow);
	--atelier-radius: var(--fk-radius);
}

html {
	scroll-behavior: smooth;
}

body.atelier-body {
	font-family: 'Roboto', Arial, sans-serif;
	background: var(--fk-bg);
	color: var(--fk-ink);
}

h1, h2, h3, h4, h5, h6,
.logo,
.menu > li > a,
.widget-title,
.product-title {
	font-family: 'Roboto', Arial, sans-serif;
	letter-spacing: 0;
}

a {
	color: var(--fk-ink);
	transition: all 0.2s ease;
}

a:hover,
a:focus {
	color: var(--fk-blue);
	text-decoration: none;
}

.page-wrapper {
	overflow-x: hidden;
	overflow-y: visible;
}

.container {
	position: relative;
}

::selection {
	background: var(--fk-blue);
	color: #fff;
}

/* ------------------------------------------------------------
   HEADER (white top, blue accents)
   ------------------------------------------------------------ */
.header {
	background: #fff;
	position: relative;
	z-index: 50;
	box-shadow: 0 1px 4px rgba(40, 44, 63, 0.08);
}

.header-top {
	background: #fff;
	border-bottom: 1px solid var(--fk-line);
	padding: 0.5rem 0;
}

.welcome-msg,
.header-dropdown > a,
.header-menu a {
	color: var(--fk-muted) !important;
	font-size: 1.2rem;
	letter-spacing: 0.04em;
}

.header-menu a:hover {
	color: var(--fk-blue) !important;
}

.header-middle {
	background: #fff;
	padding: 1.4rem 0;
}

.header-middle .logo img {
	height: 62px !important;
}

/* Flipkart-style search bar */
.header-center .input-group {
	background: var(--fk-blue-soft);
	border: 1px solid transparent;
	border-radius: var(--fk-radius);
	overflow: hidden;
	transition: all 0.2s ease;
	box-shadow: none;
}

.header-center .input-group:focus-within {
	background: #fff;
	border-color: var(--fk-blue);
	box-shadow: 0 2px 10px rgba(46, 125, 50, 0.15);
}

.header-center .form-control {
	background: transparent;
	border: 0;
	height: 4.6rem;
	font-size: 1.4rem;
	padding-left: 1.8rem;
	color: var(--fk-ink);
}

.header-center .form-control::placeholder {
	color: #6b7a90;
}

.header-center .btn-primary {
	background: var(--fk-blue) !important;
	border: 0 !important;
	color: #fff !important;
	font-weight: 700;
	letter-spacing: 0.08em;
	padding: 0 2.2rem;
}

.header-center .btn-primary:hover {
	background: var(--fk-blue-dark) !important;
}

.header-contact span {
	color: var(--fk-muted);
	font-size: 1.1rem;
}

.header-contact a strong {
	color: var(--fk-ink);
}

/* header icons (cart / wishlist / account) */
.fk-header-icon {
	display: inline-flex;
	align-items: center;
	gap: 0.7rem;
	color: var(--fk-ink);
	font-size: 1.35rem;
	font-weight: 500;
	margin-left: 2.4rem;
	position: relative;
}

.fk-header-icon svg {
	width: 22px;
	height: 22px;
}

.fk-header-icon:hover {
	color: var(--fk-blue);
}

.cart-dropdown .dropdown-toggle,
.cart-toggle-icon {
	color: var(--fk-ink) !important;
}

.cart-dropdown .cart-count {
	background: var(--fk-blue) !important;
	color: #fff !important;
	border-radius: 50%;
	font-weight: 700;
}

.cart-dropdown .dropdown-menu {
	border: 0;
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow-hover);
}

.dropdown-cart-action .btn {
	background: var(--fk-orange) !important;
	color: #fff !important;
	border-radius: 4px;
	font-weight: 700;
}

/* blue nav bar */
.header-bottom {
	background: var(--fk-blue) !important;
	padding: 0;
}

.header-bottom .container {
	display: flex;
	justify-content: center;
}

.main-nav .menu > li > a {
	color: #fff !important;
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	padding: 1.4rem 1.8rem;
}

.main-nav .menu > li:hover > a,
.main-nav .menu > li.active > a {
	background: var(--fk-blue-dark) !important;
	color: #fff !important;
}

.main-nav .menu ul {
	background: #fff;
	border: 0;
	border-radius: 0 0 var(--fk-radius) var(--fk-radius);
	box-shadow: var(--fk-shadow-hover);
	padding: 0.6rem 0;
}

.main-nav .menu ul li a {
	color: var(--fk-ink) !important;
	font-size: 1.3rem;
	padding: 0.9rem 1.8rem;
}

.main-nav .menu ul li a:hover {
	background: var(--fk-blue-soft) !important;
	color: var(--fk-blue) !important;
}

.sticky-header.fixed {
	background: var(--fk-blue) !important;
}

/* search autocomplete list - floats over the page instead of pushing content down.
   NOTE: positioned relative to .fk2-search-form (not .fk2-search itself), because
   .fk2-search has overflow:hidden for its rounded-pill shape, which would otherwise
   clip the dropdown instead of letting it float below the search bar. */
.list-style {
	position: absolute;
	top: calc(100% + 6px);
	left: 0;
	right: 0;
	background: var(--fk-surface);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow-hover);
	max-height: 340px;
	overflow-y: auto;
	overflow-x: hidden;
	z-index: 1050;
}

.list-style:empty {
	box-shadow: none;
}

.list-style .list-group-item-action {
	display: block;
	padding: 1rem 1.6rem;
	font-size: 1.3rem;
	color: var(--fk-ink);
	cursor: pointer;
	border-bottom: 1px solid var(--fk-line);
}

.list-style .list-group-item-action:last-child {
	border-bottom: none;
}

.list-style .list-group-item:hover,
.list-style .list-group-item-action:hover {
	background: var(--fk-blue-soft);
	color: var(--fk-blue);
}

/* ------------------------------------------------------------
   HERO: SUMMER VACATION EDIT 2026 (minimal, solid background,
   product cards only - no photographic banner)
   ------------------------------------------------------------ */
.ag-hero-minimal {
	background: var(--fk-blue-soft);
	padding: 4rem 0 3.2rem;
	margin-bottom: 0.6rem;
}

.ag-hero-minimal-head {
	text-align: center;
	max-width: 640px;
	margin: 0 auto 3rem;
}

.ag-hero-eyebrow {
	display: inline-block;
	background: #fff;
	color: var(--fk-blue);
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	padding: 0.5rem 1.4rem;
	border-radius: 4px;
	margin-bottom: 1.4rem;
	box-shadow: var(--fk-shadow);
}

.ag-hero-minimal-head h1 {
	color: var(--fk-ink);
	font-weight: 900;
	line-height: 1.15;
	margin-bottom: 1rem;
	font-size: clamp(2.6rem, 3.6vw, 4rem);
}

.ag-hero-sub {
	color: var(--fk-muted);
	font-size: 1.55rem;
	margin-bottom: 2.2rem;
}

.owl-theme .owl-dots .owl-dot.active span {
	background: var(--fk-blue) !important;
}

@media (max-width: 767px) {
	.ag-hero-minimal { padding: 3rem 0 2.4rem; }
	.ag-hero-minimal-head { margin-bottom: 2rem; }
}

/* ------------------------------------------------------------
   BUTTONS
   ------------------------------------------------------------ */
.ag-btn {
	display: inline-block;
	padding: 1.1rem 2.6rem;
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border-radius: 4px;
	transition: all 0.2s ease;
	cursor: pointer;
	border: 0;
}

.ag-btn-solid {
	background: var(--fk-blue);
	color: #fff !important;
	box-shadow: 0 2px 8px rgba(46, 125, 50, 0.35);
}

.ag-btn-solid:hover {
	background: var(--fk-blue-dark);
	color: #fff !important;
	transform: translateY(-1px);
	box-shadow: 0 6px 16px rgba(46, 125, 50, 0.4);
}

.ag-btn-line {
	background: #fff;
	color: var(--fk-blue) !important;
}

.btn-primary,
.btn.btn-primary {
	background: var(--fk-blue) !important;
	border-color: var(--fk-blue) !important;
	color: #fff !important;
	border-radius: 4px;
	font-weight: 700;
}

.btn-primary:hover,
.btn.btn-primary:hover {
	background: var(--fk-blue-dark) !important;
	border-color: var(--fk-blue-dark) !important;
}

/* ------------------------------------------------------------
   INFO STRIP
   ------------------------------------------------------------ */
.info-boxes-container {
	background: #fff;
	border: 0;
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	margin: 1.8rem auto;
	max-width: 1160px;
}

.info-box i {
	color: var(--fk-blue) !important;
}

.info-box-content h4 {
	color: var(--fk-ink);
	letter-spacing: 0.06em;
}

.info-box-content p {
	color: var(--fk-muted);
}

/* ------------------------------------------------------------
   SECTION SHELLS (white cards on grey bg, Flipkart-like rows)
   ------------------------------------------------------------ */
.atelier-collection-section {
	background: #fff;
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 2.6rem 2.4rem 1.2rem;
	margin-bottom: 1.8rem;
}

.atelier-collection-accent {
	background: #fff;
}

.atelier-section-heading {
	text-align: left;
	margin-bottom: 2rem;
	border-bottom: 1px solid var(--fk-line);
	padding-bottom: 1.4rem;
}

.atelier-eyebrow {
	display: inline-block;
	color: var(--fk-blue);
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	margin-bottom: 0.5rem;
}

.atelier-section-heading h2 {
	font-size: 2.4rem;
	font-weight: 700;
	color: var(--fk-ink);
	margin-bottom: 0.4rem;
}

.atelier-section-heading p {
	color: var(--fk-muted);
	font-size: 1.35rem;
	margin: 0;
}

/* ------------------------------------------------------------
   PRODUCT CARD (Flipkart style)
   ------------------------------------------------------------ */
.ag-card {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	overflow: hidden;
	margin-bottom: 2.4rem;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
	display: flex;
	flex-direction: column;
	height: calc(100% - 2.4rem);
}

.ag-card:hover {
	transform: translateY(-4px);
	border-color: transparent;
	box-shadow: var(--fk-shadow-hover);
}

.ag-card-media {
	position: relative;
	margin: 0;
	overflow: hidden;
	background: #f7f9fc;
}

.ag-card-media img {
	width: 100%;
	height: 29rem;
	object-fit: cover;
	transition: transform 0.45s ease;
	display: block;
}

.ag-card:hover .ag-card-media img {
	transform: scale(1.05);
}

.ag-badge {
	position: absolute;
	top: 1rem;
	left: 1rem;
	background: var(--fk-green);
	color: #fff;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 0.35rem 0.9rem;
	border-radius: 4px;
	z-index: 3;
}

.ag-wish {
	position: absolute;
	top: 1rem;
	right: 1rem;
	width: 3.2rem;
	height: 3.2rem;
	border-radius: 50%;
	border: 0;
	background: rgba(255, 255, 255, 0.95);
	color: #b9bfc7;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 3;
	transition: all 0.2s ease;
	box-shadow: 0 2px 8px rgba(40, 44, 63, 0.15);
}

.ag-wish:hover,
.ag-wish.active {
	color: #ff4343;
}

.ag-wish.active svg {
	fill: currentColor;
}

.ag-quickview {
	position: absolute;
	left: 50%;
	bottom: -4.4rem;
	transform: translateX(-50%);
	background: rgba(23, 35, 55, 0.9);
	color: #fff !important;
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 0.9rem 2rem;
	border-radius: 4px;
	white-space: nowrap;
	transition: bottom 0.25s ease;
	z-index: 3;
}

.ag-card:hover .ag-quickview {
	bottom: 1.2rem;
}

.ag-card-body {
	padding: 1.4rem 1.6rem 1.6rem;
	display: flex;
	flex-direction: column;
	flex: 1;
	text-align: left;
}

/* rating: green flipkart pill */
.ag-rating {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	margin-bottom: 0.7rem;
}

.fk-rate {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	background: var(--fk-green);
	color: #fff;
	font-size: 1.1rem;
	font-weight: 700;
	padding: 0.25rem 0.7rem;
	border-radius: 4px;
	line-height: 1.4;
}

.fk-rate::after {
	content: "\2605";
	font-size: 1rem;
}

.ag-rating-text {
	font-size: 1.15rem;
	font-weight: 500;
	color: var(--fk-muted);
}

.ag-rating-text em {
	font-style: normal;
}

/* legacy star bar (product page) */
.ag-stars {
	position: relative;
	display: inline-block;
	font-size: 1.3rem;
	line-height: 1;
	color: #d7dbe2;
}

.ag-stars::before {
	content: "\2605\2605\2605\2605\2605";
	letter-spacing: 2px;
}

.ag-stars-fill {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	white-space: nowrap;
	color: #ffb400;
}

.ag-stars-fill::before {
	content: "\2605\2605\2605\2605\2605";
	letter-spacing: 2px;
}

.ag-stars-lg {
	font-size: 1.7rem;
}

.ag-title {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.45;
	margin-bottom: 0.8rem;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 4.1rem;
}

.ag-title a {
	color: var(--fk-ink);
}

.ag-title a:hover {
	color: var(--fk-blue);
}

.ag-price-box {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0.8rem;
	margin-bottom: 1.3rem;
}

.ag-price {
	font-size: 1.75rem;
	font-weight: 700;
	color: var(--fk-ink);
}

.ag-mrp {
	font-size: 1.3rem;
	color: var(--fk-muted);
	text-decoration: line-through;
}

.ag-off {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--fk-green);
}

.ag-card-actions {
	margin-top: auto;
}

.ag-add-btn {
	width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.8rem;
	background: #fff;
	border: 1px solid var(--fk-blue);
	color: var(--fk-blue);
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 0.95rem 1.4rem;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.ag-add-btn:hover {
	background: var(--fk-blue);
	color: #fff;
}

/* list view card */
.ag-list-card {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 1.6rem;
	margin-bottom: 1.6rem;
}

.ag-list-card:hover {
	box-shadow: var(--fk-shadow-hover);
}

.ag-list-card .ag-add-btn {
	width: auto;
	padding: 0.9rem 2.4rem;
}

/* ------------------------------------------------------------
   CATEGORY TILES / PROMOS / BRANDS / TESTIMONIALS / NEWSLETTER
   ------------------------------------------------------------ */
.ag-cat-tile {
	position: relative;
	display: block;
	border-radius: var(--fk-radius);
	overflow: hidden;
	margin-bottom: 2.4rem;
	border: 1px solid var(--fk-line);
}

.ag-cat-tile img {
	width: 100%;
	height: 30rem;
	object-fit: cover;
	display: block;
	transition: transform 0.45s ease;
}

.ag-cat-tile:hover img {
	transform: scale(1.06);
}

.ag-cat-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(13, 27, 62, 0) 45%, rgba(13, 27, 62, 0.8) 100%);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 1.8rem;
}

.ag-cat-overlay strong {
	color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
}

.ag-cat-overlay em {
	color: rgba(255, 255, 255, 0.85);
	font-style: normal;
	font-size: 1.2rem;
}

.ag-promo-section {
	margin-bottom: 1.8rem;
}

.ag-promo-banner {
	position: relative;
	display: block;
	border-radius: var(--fk-radius);
	overflow: hidden;
	margin-bottom: 1.8rem;
	box-shadow: var(--fk-shadow);
}

.ag-promo-banner img {
	width: 100%;
	height: 25rem;
	object-fit: cover;
	display: block;
	transition: transform 0.45s ease;
}

.ag-promo-banner:hover img {
	transform: scale(1.05);
}

.ag-promo-copy {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(13, 27, 62, 0.7) 0%, rgba(13, 27, 62, 0.12) 75%);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 1rem;
	padding: 3rem;
}

.ag-promo-copy em {
	color: #ffd200;
	font-style: normal;
	font-size: 1.15rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.ag-promo-copy strong {
	color: #fff;
	font-size: 2.5rem;
	font-weight: 900;
	line-height: 1.15;
}

.ag-promo-copy .ag-btn {
	padding: 0.85rem 1.9rem;
	font-size: 1.1rem;
}

.ag-testimonial-section {
	padding: 0;
}

.ag-testimonial-card {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 2.4rem;
	margin-bottom: 2.4rem;
	height: calc(100% - 2.4rem);
	display: flex;
	flex-direction: column;
	gap: 1.3rem;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.ag-testimonial-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--fk-shadow-hover);
}

.ag-testimonial-card p {
	font-size: 1.35rem;
	line-height: 1.7;
	color: var(--fk-ink);
	margin: 0;
	flex: 1;
}

.ag-testimonial-person {
	display: flex;
	align-items: center;
	gap: 1.2rem;
}

.ag-testimonial-person img {
	width: 4.6rem;
	height: 4.6rem;
	border-radius: 50%;
	object-fit: cover;
}

.ag-testimonial-person strong {
	display: block;
	font-size: 1.35rem;
	color: var(--fk-ink);
}

.ag-testimonial-person em {
	font-style: normal;
	font-size: 1.2rem;
	color: var(--fk-muted);
}

.ag-newsletter-form {
	display: flex;
	gap: 1rem;
	margin-top: 2rem;
}

.ag-newsletter-form .form-control {
	height: 4.8rem;
	border-radius: 4px;
	border: 0;
	padding: 0 2rem;
	font-size: 1.4rem;
	flex: 1;
}

.ag-newsletter-form .ag-btn-solid {
	background: var(--fk-orange);
	box-shadow: none;
}

.ag-newsletter-form .ag-btn-solid:hover {
	background: #e4550f;
}

.ag-newsletter-note {
	display: block;
	color: rgba(255, 255, 255, 0.6);
	margin-top: 1rem;
	font-size: 1.15rem;
}

/* ------------------------------------------------------------
   LISTING PAGES (banner, breadcrumb, toolbox, filters, pagination)
   ------------------------------------------------------------ */
.banner-cat {
	border-radius: 0;
	position: relative;
}

.banner-cat::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(13, 27, 62, 0.65), rgba(13, 27, 62, 0.1));
}

.banner-cat .banner-content {
	z-index: 3;
}

.banner-subtitle span {
	color: #ffd200 !important;
	font-weight: 700;
	letter-spacing: 0.14em;
}

.banner-title {
	color: #fff !important;
}

.breadcrumb-nav {
	background: #fff;
	border-bottom: 1px solid var(--fk-line);
}

.breadcrumb {
	background: transparent;
}

.breadcrumb-item a {
	color: var(--fk-muted);
}

.breadcrumb-item a:hover,
.breadcrumb-item.active {
	color: var(--fk-blue);
}

.toolbox {
	background: #fff;
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 1.2rem 1.6rem;
	margin: 1.6rem 0;
}

.toolbox label {
	color: var(--fk-muted);
}

.select-custom .form-control {
	border: 1px solid var(--fk-line);
	border-radius: 4px;
	color: var(--fk-ink);
}

.layout-btn.active {
	color: var(--fk-blue);
}

/* left filters */
.sidebar-shop .widget {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 1.6rem 1.8rem;
	margin-bottom: 1.6rem;
}

.sidebar-shop .widget-title,
.sidebar-shop .widget-title a {
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--fk-ink);
}

.sidebar-shop .cat-list a {
	color: #565d68;
	font-size: 1.3rem;
	display: block;
	padding: 0.55rem 0;
	border-bottom: 1px dashed #eef0f3;
}

.sidebar-shop .cat-list a:hover {
	color: var(--fk-blue);
	padding-left: 0.4rem;
}

.noUi-connect {
	background: var(--fk-blue) !important;
}

.noUi-handle {
	border-color: var(--fk-blue) !important;
}

.filter-price-action .btn {
	background: var(--fk-blue) !important;
	color: #fff !important;
	border-radius: 4px;
}

/* pagination */
.pagination .page-link {
	color: var(--fk-blue);
	border: 1px solid var(--fk-line);
	border-radius: 4px;
	margin: 0 0.25rem;
	transition: all 0.2s ease;
}

.pagination .page-link:hover,
.pagination .page-link.active {
	background: var(--fk-blue);
	color: #fff;
	border-color: var(--fk-blue);
}

.toolbox-pagination {
	box-shadow: none;
	border: 0;
	background: transparent;
}

/* ------------------------------------------------------------
   PRODUCT DETAILS PAGE
   ------------------------------------------------------------ */
.atelier-product-page {
	margin-top: 1.8rem;
}

.atelier-product-shell {
	background: #fff;
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 2.4rem;
}

.product-single-details .product-title {
	font-size: 2.2rem;
	font-weight: 500;
	color: var(--fk-ink);
	line-height: 1.35;
}

.ag-single-price {
	display: flex;
	align-items: baseline;
	gap: 1.2rem;
	flex-wrap: wrap;
	margin-bottom: 1.2rem;
}

.ag-single-price .ag-price {
	font-size: 2.8rem;
}

.ag-single-price .ag-mrp {
	font-size: 1.6rem;
}

.ag-single-price .ag-off {
	font-size: 1.5rem;
}

.ag-stock-pill {
	display: inline-block;
	background: rgba(56, 142, 60, 0.1);
	color: var(--fk-green);
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	padding: 0.45rem 1.3rem;
	border-radius: 4px;
	margin-bottom: 1.5rem;
}

/* offers box */
.fk-offers {
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 1.5rem 1.8rem;
	margin: 1.6rem 0;
	background: #fff;
}

.fk-offers h4 {
	font-size: 1.4rem;
	font-weight: 700;
	margin-bottom: 1rem;
	color: var(--fk-ink);
}

.fk-offers ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.fk-offers li {
	font-size: 1.3rem;
	color: #40485a;
	padding: 0.45rem 0;
	display: flex;
	gap: 0.9rem;
	align-items: baseline;
}

.fk-offers li strong {
	color: var(--fk-green);
	white-space: nowrap;
}

.fk-offer-tag {
	color: var(--fk-green);
	font-weight: 900;
}

/* action buttons + sticky bar */
.atelier-single-actions .add-cart,
.fk-buy-actions .fk-btn-cart {
	background: #ff9f00;
	border: 0;
	color: #fff;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 1.2rem 3rem;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.fk-buy-actions {
	display: flex;
	gap: 1.2rem;
	flex-wrap: wrap;
	margin-top: 1.6rem;
}

.fk-buy-actions .fk-btn-cart:hover {
	background: #e89100;
}

.fk-buy-actions .fk-btn-buy {
	background: var(--fk-orange);
	border: 0;
	color: #fff !important;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 1.2rem 3rem;
	border-radius: 4px;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	transition: all 0.2s ease;
}

.fk-buy-actions .fk-btn-buy:hover {
	background: #e4550f;
}

.fk-sticky-bar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	background: #fff;
	box-shadow: 0 -4px 16px rgba(40, 44, 63, 0.14);
	padding: 1rem 0;
	z-index: 900;
	display: none;
}

.fk-sticky-bar.visible {
	display: block;
}

.fk-sticky-inner {
	display: flex;
	align-items: center;
	gap: 1.6rem;
	justify-content: space-between;
}

.fk-sticky-inner .fk-sticky-name {
	font-size: 1.35rem;
	font-weight: 500;
	color: var(--fk-ink);
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.fk-sticky-inner .ag-price {
	font-size: 1.8rem;
}

.fk-sticky-inner form {
	margin: 0;
}

/* gallery */
.product-single-gallery .product-item img {
	border-radius: var(--fk-radius);
	border: 1px solid var(--fk-line);
}

.prod-thumbnail .owl-dot img {
	border-radius: 4px;
	border: 1px solid var(--fk-line);
	cursor: pointer;
}

.prod-thumbnail .owl-dot.active img,
.prod-thumbnail .owl-dot:hover img {
	border-color: var(--fk-blue);
}

/* tabs */
.product-single-tabs .nav-tabs .nav-link {
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--fk-muted);
	border: 0;
	border-bottom: 3px solid transparent;
}

.product-single-tabs .nav-tabs .nav-link.active {
	color: var(--fk-blue);
	border-bottom-color: var(--fk-blue);
	background: transparent;
}

.product-desc-content li {
	color: #40485a;
	padding: 0.35rem 0;
}

.product-desc-content li .icon-ok {
	color: var(--fk-green);
}

/* sidebar on product page */
.atelier-sidebar .widget {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 1.6rem;
	margin-bottom: 1.6rem;
}

.featured-section {
	background: transparent;
}

.featured-section .carousel-title {
	font-size: 2rem;
	font-weight: 700;
	color: var(--fk-ink);
}

/* ------------------------------------------------------------
   CART / CHECKOUT / DASHBOARD / AUTH / FORMS / TABLES
   ------------------------------------------------------------ */
.form-control {
	border: 1px solid var(--fk-line);
	border-radius: 4px;
	color: var(--fk-ink);
}

.form-control:focus {
	border-color: var(--fk-blue);
	box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.12);
}

label {
	color: #40485a;
}

.table {
	background: #fff;
	color: var(--fk-ink);
}

.table thead th,
.table th {
	background: #f5f8ff;
	color: var(--fk-ink);
	border-color: var(--fk-line) !important;
	text-transform: uppercase;
	font-size: 1.15rem;
	letter-spacing: 0.08em;
}

.table td {
	border-color: var(--fk-line) !important;
	vertical-align: middle;
}

/* cart */
.cart-table-container,
.cart-summary,
.order-summary {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
}

.cart-summary h3,
.order-summary h3 {
	color: var(--fk-muted);
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	border-bottom: 1px solid var(--fk-line);
	padding-bottom: 1.2rem;
}

.btn-shop,
.checkout-methods .btn {
	background: var(--fk-orange) !important;
	color: #fff !important;
	border-radius: 4px;
	font-weight: 700;
	border: 0;
}

.btn-shop:hover,
.checkout-methods .btn:hover {
	background: #e4550f !important;
}

.horizontal-quantity {
	border: 1px solid var(--fk-line) !important;
	border-radius: 4px;
}

.input-group-prepend .btn,
.input-group-append .btn {
	border-radius: 4px;
}

/* status badges */
.badge,
.order-status {
	border-radius: 4px;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.badge-success { background: var(--fk-green); }
.badge-info    { background: var(--fk-blue); }
.badge-warning { background: #ff9f00; color: #fff; }

/* dashboard / account */
.dashboard-content,
.account-card {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
}

.dashboard-content .nav-link,
.account-sidebar a {
	color: #40485a;
	font-size: 1.35rem;
	border-radius: 4px;
}

.dashboard-content .nav-link.active,
.account-sidebar a.active,
.dashboard-content .nav-link:hover {
	background: var(--fk-blue-soft);
	color: var(--fk-blue);
}

/* auth pages */
.login-container,
.register-container,
.forms-container {
	background: #fff;
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
}

.heading .title {
	color: var(--fk-ink);
}

/* modals */
.modal-content {
	border: 0;
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow-hover);
}

.cuspop {
	background: #fff !important;
	border-radius: var(--fk-radius);
}

.modal-body h2 {
	color: var(--fk-blue);
}

/* toasts */
#toast-container > .toast-success {
	background-color: var(--fk-green) !important;
}

#toast-container > .toast-warning {
	background-color: #ff9f00 !important;
}

/* ------------------------------------------------------------
   FOOTER (dark navy like flipkart)
   ------------------------------------------------------------ */
.footer {
	background: #172337;
	color: #b9c2d0;
}

.footer .widget-title {
	color: #8f9db4;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.footer .links a,
.footer p,
.footer li,
.footer .contact-info li {
	color: #cfd6e2;
	font-size: 1.3rem;
}

.footer .links a:hover {
	color: #fff;
	padding-left: 0.3rem;
}

.footer .contact-info-label {
	color: #8f9db4;
}

.widget-newsletter .btn {
	background: var(--fk-blue);
	color: #fff;
	border-radius: 4px;
	font-weight: 700;
}

.widget-newsletter .form-control {
	background: #223148;
	border: 1px solid #35476380;
	color: #fff;
}

.widget-newsletter .form-control::placeholder {
	color: #8f9db4;
}

.footer-bottom {
	border-top: 1px solid #223148;
}

.footer-bottom-center {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.footer-copyright {
	color: #8f9db4;
	margin: 0 !important;
	text-align: center;
	width: 100%;
}

.footer .widget-about p {
	line-height: 1.7;
}

.footer .widget-about li {
	list-style: none;
	position: relative;
	padding-left: 1.6rem;
	margin-bottom: 0.4rem;
}

.footer .widget-about li::before {
	content: "\2713";
	position: absolute;
	left: 0;
	color: var(--fk-green, #4CAF50);
	font-weight: 700;
}

.ag-footer-row {
	row-gap: 3rem;
}

.ag-footer-address {
	display: flex;
	align-items: flex-start;
	gap: 0.7rem;
	line-height: 1.7;
	margin-top: 1.4rem;
}

.ag-footer-address i {
	color: var(--fk-green, #4CAF50);
	font-size: 1.4rem;
	margin-top: 0.3rem;
	flex-shrink: 0;
}

.footer .ag-footer-contact {
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer .ag-footer-contact li {
	display: flex;
	align-items: flex-start;
	gap: 1.2rem;
	margin-bottom: 1.8rem;
}

.footer .ag-footer-contact li:last-child {
	margin-bottom: 0;
}

.footer .ag-footer-contact i {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
	min-width: 3.6rem;
	background: #223148;
	color: var(--fk-green, #4CAF50);
	border-radius: 50%;
	font-size: 1.5rem;
}

.footer .ag-footer-contact span {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	padding-top: 0.4rem;
}

.footer .ag-footer-contact .contact-info-label {
	font-size: 1.15rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #8f9db4;
}

.footer .ag-footer-contact a {
	color: #fff;
	font-weight: 600;
}

.footer .ag-footer-contact a:hover {
	color: var(--fk-green, #4CAF50);
}

@media (max-width: 991px) {
	.ag-footer-row {
		row-gap: 3.6rem;
	}
}

.social-icon {
	background: #223148;
	color: #cfd6e2 !important;
	border-radius: 50%;
}

.social-icon:hover {
	background: var(--fk-blue);
	color: #fff !important;
}

#scroll-top {
	background: var(--fk-blue);
	color: #fff;
	border-radius: 4px;
}

#scroll-top:hover {
	background: var(--fk-blue-dark);
}

/* mobile menu */
.mobile-menu-container {
	background: #172337;
}

.mobile-menu li a {
	color: #cfd6e2;
}

.mobile-menu li a:hover {
	color: #fff;
	background: rgba(46, 125, 50, 0.2);
}

/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */
@media (max-width: 1199px) {
	.home-slide {
		height: 360px;
	}
}

@media (max-width: 991px) {
	.home-slide {
		height: 300px;
	}

	.ag-cat-tile img {
		height: 24rem;
	}

	.ag-card-media img {
		height: 24rem;
	}

	.ag-promo-copy strong {
		font-size: 2rem;
	}

	.ag-newsletter-band {
		padding: 4rem 0;
		text-align: center;
	}

	.header-center {
		padding: 0 1rem;
	}
}

@media (max-width: 767px) {
	.ag-hero-minimal-head h1 {
		font-size: 2.2rem;
	}

	.ag-hero-sub {
		display: none;
	}

	.ag-hero-eyebrow {
		font-size: 0.9rem;
	}

	.ag-card-media img {
		height: 20rem;
	}

	.ag-cat-tile img {
		height: 18rem;
	}

	.ag-title {
		font-size: 1.25rem;
	}

	.ag-price {
		font-size: 1.5rem;
	}

	.ag-add-btn {
		font-size: 1.05rem;
		padding: 0.85rem 0.8rem;
	}

	.ag-promo-copy {
		padding: 1.8rem;
	}

	.ag-newsletter-form {
		flex-direction: column;
	}

	.atelier-collection-section {
		padding: 1.8rem 1.4rem 0.8rem;
	}

	.fk-buy-actions .fk-btn-cart,
	.fk-buy-actions .fk-btn-buy {
		flex: 1;
		justify-content: center;
		text-align: center;
		padding: 1.1rem 1.4rem;
	}
}

/* ============================================================
   HEADER V2 - professional refresh
   ============================================================ */

/* top offer strip */
.fk2-topstrip {
	background: #172337 !important;
	border-bottom: 0 !important;
	padding: 0 !important;
}

.fk2-topstrip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 3.4rem;
}

.fk2-topstrip-left {
	display: flex;
	align-items: center;
	gap: 1rem;
	color: #c6d2e4;
	font-size: 1.15rem;
	letter-spacing: 0.03em;
}

.fk2-topstrip-left svg {
	color: var(--fk-green, #4CAF50);
	margin-right: 0.4rem;
	vertical-align: -2px;
}

.fk2-strip-dot {
	color: #3d5273;
}

.fk2-topstrip-right {
	display: flex;
	align-items: center;
	gap: 2rem;
}

.fk2-topstrip-right a,
.fk2-strip-user {
	color: #c6d2e4 !important;
	font-size: 1.15rem;
	letter-spacing: 0.03em;
}

.fk2-topstrip-right a:hover {
	color: #fff !important;
}

.fk2-strip-user b {
	color: var(--fk-green, #4CAF50);
}

/* main row */
.header-middle {
	padding: 1.2rem 0 !important;
}

.header-middle .container {
	display: flex;
	align-items: center;
}

.fk2-logo {
	height: 54px !important;
	width: auto;
}

/* search layout basics -- visual styling now lives in the
   "PREMIUM GREEN HEADER (v3)" block at the end of this file */
.fk2-search-form {
	position: relative;
	width: 100%;
}

.fk2-search {
	align-items: center;
	flex-wrap: nowrap;
	margin: 0 !important;
	width: 100% !important;
}

/* right actions */
.fk2-actions {
	display: flex;
	align-items: center;
	gap: 0;
	margin-left: auto;
}

.fk2-action-item {
	display: flex;
	align-items: center;
}

.fk2-action {
	display: inline-flex !important;
	align-items: center;
	gap: 1rem;
	padding: 0.7rem 1.5rem;
	border-radius: 10px;
	color: var(--fk-ink) !important;
	transition: all 0.2s ease;
}

.fk2-action:hover {
	background: var(--fk-blue-soft);
	color: var(--fk-blue) !important;
}

.fk2-action.dropdown-toggle::after {
	display: none;
}

.fk2-icon-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: inherit;
}

.fk2-badge {
	position: absolute;
	top: -7px;
	right: -9px;
	min-width: 1.7rem;
	height: 1.7rem;
	background: var(--fk-orange);
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.7rem;
	text-align: center;
	border-radius: 999px;
	padding: 0 0.4rem;
	box-shadow: 0 0 0 2px #fff;
}

.fk2-labels {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
	text-align: left;
}

.fk2-labels em {
	font-style: normal;
	font-size: 1.05rem;
	color: var(--fk-muted);
	letter-spacing: 0.02em;
}

.fk2-labels strong {
	font-size: 1.3rem;
	font-weight: 700;
	color: inherit;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	white-space: nowrap;
}

.fk2-action-divider {
	width: 1px;
	height: 2.6rem;
	background: var(--fk-line);
	margin: 0 0.4rem;
}

.fk2-dropdown {
	border: 0 !important;
	border-radius: 10px !important;
	box-shadow: var(--fk-shadow-hover) !important;
	padding: 0.6rem 0 !important;
	margin-top: 0.8rem !important;
	min-width: 200px;
}

.fk2-dropdown .dropdown-item {
	font-size: 1.3rem;
	padding: 0.85rem 1.8rem;
	color: #40485a;
}

.fk2-dropdown .dropdown-item:hover {
	background: var(--fk-blue-soft);
	color: var(--fk-blue);
}

/* refined nav bar */
.header-bottom {
	background: linear-gradient(180deg, var(--fk-blue) 0%, var(--fk-blue-dark) 100%) !important;
	box-shadow: 0 4px 14px rgba(46, 125, 50, 0.25);
}

.main-nav .menu > li > a {
	position: relative;
	padding: 1.3rem 1.7rem;
}

.main-nav .menu > li:hover > a,
.main-nav .menu > li.active > a {
	background: rgba(27, 94, 32, 0.28) !important;
}

/* hide old header icon style remnants */
.fk-header-icon { display: none !important; }

@media (max-width: 991px) {
	.fk2-topstrip-left { display: none; }
	.fk2-topstrip .container { justify-content: center; }
	.fk2-labels { display: none; }
	.fk2-action { padding: 0.7rem 1rem; }
	.fk2-action-divider { display: none; }
	.fk2-search-wrap { padding: 0 0.6rem !important; }
	.fk2-logo { height: 44px !important; }
}

/* kill base-theme injected bag glyph + caret on cart toggle */
.cart-dropdown .dropdown-toggle::before,
.cart-dropdown .dropdown-toggle::after,
.fk2-action.dropdown-toggle::before,
.fk2-action.dropdown-toggle::after {
	content: none !important;
	display: none !important;
}

/* ------------------------------------------------------------
   AUTH PAGES (login / register)
   ------------------------------------------------------------ */
.fk-auth-wrap {
	display: flex;
	justify-content: center;
	padding: 4.5rem 1.5rem 6rem;
}

.fk-auth-card {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: 12px;
	box-shadow: var(--fk-shadow);
	padding: 3.4rem 3.2rem;
	width: 100%;
	max-width: 460px;
}

.fk-auth-card-wide {
	max-width: 640px;
}

.fk-auth-head {
	text-align: center;
	margin-bottom: 2.4rem;
}

.fk-auth-head h1 {
	font-size: 2.4rem;
	font-weight: 700;
	color: var(--fk-ink);
	margin-bottom: 0.6rem;
}

.fk-auth-head p {
	color: var(--fk-muted);
	font-size: 1.3rem;
	margin: 0;
}

.fk-auth-card .form-group label {
	font-size: 1.25rem;
	font-weight: 700;
	color: #40485a;
	width: 100%;
}

.fk-auth-card .form-control {
	height: 4.4rem;
	font-size: 1.35rem;
}

.fk-auth-btn {
	height: 4.6rem;
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	border-radius: 6px !important;
	margin-top: 0.6rem;
}

.fk-auth-link {
	font-size: 1.15rem;
	font-weight: 500;
	color: var(--fk-blue) !important;
}

.fk-auth-alert {
	font-size: 1.25rem;
	border-radius: 6px;
}

.fk-auth-alt {
	text-align: center;
	margin-top: 2.2rem;
	padding-top: 2rem;
	border-top: 1px solid var(--fk-line);
	font-size: 1.3rem;
	color: var(--fk-muted);
}

.fk-auth-alt a {
	color: var(--fk-blue) !important;
	font-weight: 700;
}

.fk-req {
	color: #e53935;
}

/* ------------------------------------------------------------
   SEARCH RESULTS HEAD + EMPTY STATE
   ------------------------------------------------------------ */
.fk-search-head {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 1.8rem 2.2rem;
	margin: 1.8rem 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 1rem;
}

.fk-search-head h1 {
	font-size: 2rem;
	font-weight: 700;
	color: var(--fk-ink);
	margin: 0 0 0.3rem;
}

.fk-search-head p {
	color: var(--fk-muted);
	font-size: 1.3rem;
	margin: 0;
}

.fk-search-head p strong {
	color: var(--fk-blue);
}

.fk-search-count {
	background: var(--fk-blue-soft);
	color: var(--fk-blue);
	font-size: 1.2rem;
	font-weight: 700;
	padding: 0.7rem 1.6rem;
	border-radius: 999px;
	white-space: nowrap;
}

.fk-empty-state {
	background: #fff;
	border: 1px dashed var(--fk-line);
	border-radius: var(--fk-radius);
	text-align: center;
	padding: 5rem 2rem;
	margin-bottom: 2.4rem;
	color: var(--fk-muted);
}

.fk-empty-state svg {
	color: #c3cbd6;
	margin-bottom: 1.6rem;
}

.fk-empty-state h3 {
	font-size: 1.9rem;
	font-weight: 700;
	color: var(--fk-ink);
	margin-bottom: 0.8rem;
}

.fk-empty-state p {
	font-size: 1.35rem;
	margin-bottom: 2.2rem;
}

.fk-empty-state a {
	color: var(--fk-blue);
	font-weight: 600;
}

@media (max-width: 767px) {
	.fk-auth-card {
		padding: 2.4rem 1.8rem;
	}

	.fk-search-head {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* sticky nav: always solid when fixed */
.sticky-header.fixed,
.header-bottom.sticky-header.fixed {
	background: linear-gradient(180deg, var(--fk-blue) 0%, var(--fk-blue-dark) 100%) !important;
	opacity: 1 !important;
	box-shadow: 0 4px 14px rgba(27, 94, 32, 0.3);
}

/* ============================================================
   ACCOUNT DASHBOARD (fk-acc-*)
   ============================================================ */
.fk-account-wrap { padding: 2rem 1.5rem 3rem; }

.fk-acc-user {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 1.6rem 1.8rem;
	display: flex;
	align-items: center;
	gap: 1.3rem;
	margin-bottom: 1.4rem;
}

.fk-acc-avatar {
	width: 4.6rem;
	height: 4.6rem;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--fk-blue), var(--fk-blue-dark));
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
}

.fk-acc-user em { display: block; font-style: normal; font-size: 1.15rem; color: var(--fk-muted); }
.fk-acc-user strong { font-size: 1.45rem; color: var(--fk-ink); }

.fk-acc-nav {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	overflow: hidden;
	margin-bottom: 2rem;
}

.fk-acc-nav-item {
	display: flex;
	align-items: center;
	gap: 1.1rem;
	padding: 1.25rem 1.8rem;
	font-size: 1.3rem;
	font-weight: 500;
	color: #40485a !important;
	border-bottom: 1px solid #f0f2f5;
	border-left: 3px solid transparent;
	transition: all 0.18s ease;
}

.fk-acc-nav-item svg { color: #8b96a5; transition: color 0.18s ease; }

.fk-acc-nav-item:hover,
.fk-acc-nav-item.active {
	background: var(--fk-blue-soft);
	color: var(--fk-blue) !important;
	border-left-color: var(--fk-blue);
}

.fk-acc-nav-item:hover svg,
.fk-acc-nav-item.active svg { color: var(--fk-blue); }

.fk-acc-logout { color: #e53935 !important; }
.fk-acc-logout svg { color: #e53935; }
.fk-acc-logout:hover { background: #fdecea; border-left-color: #e53935; color: #c62828 !important; }

.fk-acc-panel {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 2.4rem;
	min-height: 40rem;
}

.fk-acc-title {
	font-size: 1.9rem;
	font-weight: 700;
	color: var(--fk-ink);
	margin-bottom: 2rem;
	padding-bottom: 1.2rem;
	border-bottom: 1px solid var(--fk-line);
}

.fk-acc-title-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
	border-bottom: 1px solid var(--fk-line);
	margin-bottom: 2rem;
}

.fk-acc-title-row .fk-acc-title { border: 0; margin-bottom: 1.2rem; }
.fk-acc-title-row .ag-btn { padding: 0.9rem 1.8rem; font-size: 1.15rem; margin-bottom: 1.2rem; }

.fk-acc-info-card {
	background: #f8fafd;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 1.8rem 2rem;
}

.fk-acc-info-card h4 {
	font-size: 1.4rem;
	font-weight: 700;
	color: var(--fk-ink);
	margin-bottom: 1.4rem;
}

.fk-acc-info-card ul { list-style: none; margin: 0; padding: 0; }

.fk-acc-info-card li {
	display: flex;
	justify-content: space-between;
	font-size: 1.3rem;
	padding: 0.7rem 0;
	border-bottom: 1px dashed #e5e9f0;
	color: var(--fk-muted);
}

.fk-acc-info-card li strong { color: var(--fk-ink); }

/* address cards */
.fk-addr-card {
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 1.7rem 1.9rem;
	margin-bottom: 1.8rem;
	transition: box-shadow 0.2s ease;
	background: #fff;
}

.fk-addr-card:hover { box-shadow: var(--fk-shadow-hover); }

.fk-addr-head { display: flex; justify-content: space-between; margin-bottom: 0.9rem; }

.fk-addr-type {
	background: #eef2f7;
	color: #56607a;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	padding: 0.3rem 1rem;
	border-radius: 4px;
	text-transform: uppercase;
}

.fk-addr-default {
	background: rgba(56, 142, 60, 0.12);
	color: var(--fk-green);
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	padding: 0.3rem 1rem;
	border-radius: 4px;
}

.fk-addr-card strong { font-size: 1.4rem; color: var(--fk-ink); }
.fk-addr-card p { font-size: 1.25rem; color: #56607a; margin: 0.5rem 0; line-height: 1.6; }
.fk-addr-card em { font-style: normal; font-size: 1.2rem; color: var(--fk-muted); }

.fk-addr-actions { margin-top: 1.2rem; display: flex; gap: 1.8rem; }
.fk-addr-actions a { font-size: 1.2rem; font-weight: 700; color: var(--fk-blue) !important; cursor: pointer; }
.fk-addr-actions a:nth-child(2) { color: #e53935 !important; }

/* orders / wishlist rows */
.fk-order-card {
	display: flex;
	align-items: center;
	gap: 1.6rem;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 1.4rem 1.8rem;
	margin-bottom: 1.4rem;
	background: #fff;
	transition: box-shadow 0.2s ease;
}

.fk-order-card:hover { box-shadow: var(--fk-shadow-hover); }

.fk-order-thumbs { display: flex; gap: 0.5rem; flex: none; }
.fk-order-thumbs img { width: 5.2rem; height: 6.4rem; object-fit: cover; border-radius: 6px; border: 1px solid var(--fk-line); }

.fk-order-mid { flex: 1; min-width: 0; }
.fk-order-mid strong { display: block; font-size: 1.4rem; color: var(--fk-ink); }
.fk-order-mid strong a { color: var(--fk-ink); }
.fk-order-mid em { display: block; font-style: normal; font-size: 1.15rem; color: var(--fk-muted); margin: 0.3rem 0; }
.fk-order-mid > span { font-size: 1.15rem; color: #56607a; }

.fk-order-right { text-align: right; flex: none; }
.fk-order-right strong { display: block; font-size: 1.5rem; color: var(--fk-ink); margin-top: 0.5rem; }
.fk-order-view-link { display: inline-block; margin-top: 0.7rem; font-size: 1.15rem; font-weight: 700; color: var(--fk-blue); }
.fk-order-view-link:hover { text-decoration: underline; }

.fk-ord-status { font-size: 1.05rem; font-weight: 700; letter-spacing: 0.08em; padding: 0.35rem 1rem; border-radius: 4px; }
.fk-ord-pending { background: #fff4e0; color: #c77800; }
.fk-ord-proc    { background: var(--fk-blue-soft); color: var(--fk-blue); }
.fk-ord-done    { background: rgba(56,142,60,0.12); color: var(--fk-green); }
.fk-ord-cancel  { background: #fdecea; color: #c62828; }

.fk-wish-actions { display: flex; flex-direction: column; gap: 0.8rem; align-items: flex-end; }
.fk-wish-remove { font-size: 1.2rem; font-weight: 700; color: #e53935 !important; }

/* notifications */
.fk-notif-item {
	display: flex;
	gap: 1.4rem;
	align-items: flex-start;
	padding: 1.4rem 0;
	border-bottom: 1px solid #f0f2f5;
}

.fk-notif-ico {
	width: 3.6rem; height: 3.6rem; border-radius: 50%;
	background: var(--fk-blue-soft); color: var(--fk-blue);
	display: inline-flex; align-items: center; justify-content: center; flex: none;
}

.fk-notif-item strong { font-size: 1.35rem; color: var(--fk-ink); }
.fk-notif-item p { font-size: 1.2rem; color: var(--fk-muted); margin: 0.2rem 0 0; }
.fk-notif-item em { font-style: normal; font-size: 1.1rem; color: #a3adbb; margin-left: auto; white-space: nowrap; }
.fk-notif-item > div { flex: 1; }

/* ============================================================
   PAYMENT PAGE (checkout step 2)
   ============================================================ */
.fk-pay-shell {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 2.4rem;
	margin-bottom: 2rem;
}

.fk-pay-method { border: 1px solid var(--fk-line); border-radius: var(--fk-radius); margin-bottom: 1.2rem; overflow: hidden; }

.fk-pay-method-head {
	display: flex; align-items: center; gap: 1.1rem;
	padding: 1.4rem 1.8rem;
	margin: 0; cursor: pointer;
	background: #fbfcfe;
	transition: background 0.18s ease;
	flex-wrap: wrap;
}

.fk-pay-method-head:hover { background: var(--fk-blue-soft); }
.fk-pay-method-head strong { font-size: 1.4rem; color: var(--fk-ink); }
.fk-pay-method-head em { font-style: normal; font-size: 1.15rem; color: var(--fk-muted); flex-basis: 100%; padding-left: 2.6rem; }
.fk-pay-method-head input[type=radio] { accent-color: var(--fk-blue); width: 1.5rem; height: 1.5rem; }

.fk-pay-method-body { padding: 1.8rem 2rem 2.2rem 4.4rem; border-top: 1px solid var(--fk-line); }

.fk-pay-method-disabled { opacity: 0.65; }
.fk-pay-method-disabled .fk-pay-method-head { cursor: not-allowed; }
.fk-pay-method-disabled .fk-pay-method-head:hover { background: #fbfcfe; }
.fk-pay-soon-badge {
	margin-left: auto;
	background: var(--fk-bg); color: var(--fk-muted);
	font-size: 1.05rem; font-weight: 700; letter-spacing: 0.04em;
	padding: 0.35rem 1.1rem; border-radius: 20px;
	border: 1px solid var(--fk-line);
}

.fk-pay-note {
	display: flex; align-items: center; gap: 0.8rem;
	font-size: 1.15rem; color: var(--fk-muted);
	margin: 1.8rem 0 0;
}

.fk-pay-note svg { color: var(--fk-green); }

.fk-pay-cancel-link {
	display: inline-block; margin-top: 1.2rem;
	background: none; border: none; color: var(--fk-muted);
	font-size: 1.15rem; font-weight: 600; text-decoration: underline;
	cursor: pointer; padding: 0;
}

.fk-pay-cancel-link:hover { color: #d9534f; }

.fk-pay-summary {
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 2rem 2.2rem;
	margin-bottom: 1.8rem;
}

.fk-pay-summary h3 {
	font-size: 1.3rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
	color: var(--fk-muted); border-bottom: 1px solid var(--fk-line);
	padding-bottom: 1.1rem; margin-bottom: 1.4rem;
}

.fk-pay-summary ul { list-style: none; margin: 0; padding: 0; }
.fk-pay-summary li { display: flex; justify-content: space-between; font-size: 1.3rem; color: #56607a; padding: 0.55rem 0; }
.fk-pay-summary li strong { color: var(--fk-ink); font-weight: 500; }

.fk-pay-total {
	display: flex; justify-content: space-between; align-items: center;
	border-top: 1px dashed var(--fk-line);
	margin-top: 1.2rem; padding-top: 1.4rem;
	font-size: 1.4rem; font-weight: 700; color: var(--fk-ink);
}

.fk-pay-total strong { font-size: 1.9rem; color: var(--fk-green); }

.fk-pay-address strong { font-size: 1.35rem; color: var(--fk-ink); }
.fk-pay-address p { font-size: 1.25rem; color: #56607a; margin: 0.5rem 0; line-height: 1.6; }
.fk-pay-address em { font-style: normal; font-size: 1.2rem; color: var(--fk-muted); }

.fk-pay-editaddr {
	display: block; margin-top: 1.2rem;
	background: #fff; border: 1px solid var(--fk-blue); color: var(--fk-blue);
	font-size: 1.15rem; font-weight: 700; letter-spacing: 0.06em;
	padding: 0.7rem 1.8rem; border-radius: 4px; cursor: pointer;
	transition: all 0.18s ease;
}

.fk-pay-editaddr:hover { background: var(--fk-blue); color: #fff; }

/* ============================================================
   HEADER V3 micro-polish: bell dot, nav underline, dropdown anim
   ============================================================ */
.fk2-dot {
	position: absolute;
	top: -3px; right: -3px;
	width: 0.9rem; height: 0.9rem;
	background: var(--fk-orange);
	border-radius: 50%;
	box-shadow: 0 0 0 2px #fff;
}

.fk2-badge-blue { background: var(--fk-blue); }

.main-nav .menu > li > a { transition: background 0.2s ease; }

.main-nav .menu > li > a::after {
	content: "";
	position: absolute;
	left: 50%; bottom: 6px;
	width: 0; height: 2px;
	background: #ffd200;
	transition: all 0.25s ease;
	transform: translateX(-50%);
}

.main-nav .menu > li:hover > a::after { width: 55%; }

.main-nav .menu ul {
	min-width: 230px;
	padding: 0.9rem 0 !important;
	animation: fkMenuIn 0.22s ease both;
	border-top: 3px solid #ffd200 !important;
}

@keyframes fkMenuIn {
	from { opacity: 0; transform: translateY(8px); }
	to   { opacity: 1; transform: translateY(0); }
}

.main-nav .menu ul li a { transition: all 0.15s ease; }
.main-nav .menu ul li a:hover { padding-left: 2.4rem !important; }

.fk2-dropdown { animation: fkMenuIn 0.2s ease both; }

@media (max-width: 1199px) {
	.fk2-bell { display: none !important; }
}

/* standalone buy / add-to-cart buttons (product page, payment page, sticky bar) */
.fk-btn-buy,
.fk-btn-cart {
	border: 0;
	color: #fff !important;
	font-weight: 700;
	font-size: 1.25rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 1.1rem 2.8rem;
	border-radius: 4px;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s ease;
}

.fk-btn-buy { background: var(--fk-orange); }
.fk-btn-buy:hover { background: #e4550f; box-shadow: 0 4px 14px rgba(251, 100, 27, 0.35); }

.fk-btn-cart { background: #ff9f00; }
.fk-btn-cart:hover { background: #e89100; box-shadow: 0 4px 14px rgba(255, 159, 0, 0.35); }
.fk-btn-cart:disabled { background: var(--fk-line); color: var(--fk-muted) !important; cursor: not-allowed; box-shadow: none; }

/* ============================================================
   PAYMENT RESULT PAGES (pending / failed / cancelled)
   ============================================================ */
.fk-pay-result {
	max-width: 560px;
	margin: 4rem auto;
	background: var(--fk-surface);
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 4rem 3rem;
	text-align: center;
}

.fk-pay-result-icon {
	width: 84px; height: 84px;
	border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	margin: 0 auto 2rem;
}

.fk-pay-icon-cancelled { background: #f1f3f6; color: var(--fk-muted); }

.fk-pay-result h2 { font-size: 2.2rem; font-weight: 700; margin-bottom: 1.2rem; }
.fk-pay-result p { font-size: 1.4rem; color: var(--fk-muted); margin-bottom: 0.6rem; }

.fk-pay-result-actions {
	margin-top: 2.2rem;
	display: flex; gap: 1.2rem; justify-content: center; flex-wrap: wrap;
}

/* ============================================================
   ORDER SUCCESS / THANK YOU PAGE (post Cash-on-Delivery checkout)
   ============================================================ */
.fk-success-wrap {
	max-width: 640px;
	margin: 4rem auto;
	background: var(--fk-surface);
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 4rem 3.5rem;
	text-align: center;
}

.fk-success-icon {
	width: 92px; height: 92px;
	border-radius: 50%;
	background: #e8f5e9;
	color: var(--fk-green);
	display: flex; align-items: center; justify-content: center;
	margin: 0 auto 2rem;
}

.fk-success-title {
	font-size: 2.4rem;
	font-weight: 700;
	color: var(--fk-ink);
	margin-bottom: 1rem;
	line-height: 1.3;
}

.fk-success-sub {
	font-size: 1.4rem;
	color: var(--fk-muted);
	margin-bottom: 2rem;
}

.fk-success-orderid {
	display: inline-flex;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
	justify-content: center;
	background: var(--fk-bg);
	border-radius: 6px;
	padding: 1rem 1.8rem;
	font-size: 1.4rem;
	color: var(--fk-ink);
	margin-bottom: 2.6rem;
}

.fk-success-orderdate {
	color: var(--fk-muted);
	font-size: 1.2rem;
}

.fk-success-summary {
	text-align: left;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	padding: 2rem;
	margin-bottom: 2.6rem;
}

.fk-success-summary h3 {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1.4rem;
	color: var(--fk-ink);
}

.fk-success-items { list-style: none; margin: 0 0 1.4rem; padding: 0; }
.fk-success-items li {
	display: flex; align-items: center; gap: 1.2rem;
	padding: 0.8rem 0;
	border-bottom: 1px dashed var(--fk-line);
	font-size: 1.3rem;
}
.fk-success-items li:last-child { border-bottom: none; }
.fk-success-items img { width: 48px; height: 56px; object-fit: cover; border-radius: 6px; border: 1px solid var(--fk-line); }
.fk-success-item-name { flex: 1; color: var(--fk-ink); }

.fk-success-totals { list-style: none; margin: 0 0 1rem; padding: 1.4rem 0 0; border-top: 1px solid var(--fk-line); }
.fk-success-totals li { display: flex; justify-content: space-between; font-size: 1.3rem; color: var(--fk-muted); padding: 0.3rem 0; }
.fk-success-totals li strong { color: var(--fk-ink); }

.fk-success-grandtotal {
	display: flex; justify-content: space-between; align-items: center;
	font-size: 1.6rem; font-weight: 700; color: var(--fk-ink);
	padding-top: 1rem; border-top: 1px solid var(--fk-line);
}

.fk-success-payment {
	margin-top: 1.2rem;
	font-size: 1.3rem;
	color: var(--fk-muted);
}
.fk-success-payment strong { color: var(--fk-ink); }

.fk-success-actions {
	display: flex; gap: 1.2rem; justify-content: center; flex-wrap: wrap;
	margin-bottom: 1.6rem;
}

.fk-success-invoice-link {
	font-size: 1.3rem;
	font-weight: 600;
	color: var(--fk-blue);
}
.fk-success-invoice-link:hover { color: var(--fk-blue-dark); text-decoration: underline; }

@media (max-width: 575px) {
	.fk-success-wrap { padding: 3rem 1.8rem; margin: 2rem auto; }
	.fk-success-title { font-size: 1.9rem; }
	.fk-success-actions { flex-direction: column; }
	.fk-success-actions .btn { width: 100%; }
}

/* ============================================================
   INVOICE (redesigned)
   ============================================================ */
.fk-inv-actionbar {
	display: flex; align-items: center; justify-content: space-between;
	margin: 1.5rem 0;
	flex-wrap: wrap; gap: 1rem;
}

.fk-inv-statuschip {
	display: inline-flex; align-items: center; gap: 0.7rem;
	font-weight: 700; font-size: 1.3rem;
	padding: 0.7rem 1.6rem; border-radius: 50px;
}

.fk-inv-chip-paid { background: #e8f5e9; color: var(--fk-green); }
.fk-inv-chip-cancel { background: #fdecea; color: #c0392b; }

.fk-invoice-sheet {
	background: var(--fk-surface);
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 3rem;
	margin-bottom: 2rem;
}

.fk-inv-head {
	display: flex; justify-content: space-between; align-items: flex-start;
	flex-wrap: wrap; gap: 2rem;
	padding-bottom: 2rem; margin-bottom: 2rem;
	border-bottom: 2px solid var(--fk-ink);
}

.fk-inv-brand { display: flex; gap: 1.5rem; align-items: center; }
.fk-inv-brand img { width: 70px; height: auto; }
.fk-inv-brand div { display: flex; flex-direction: column; gap: 0.3rem; }
.fk-inv-brand strong { font-size: 1.5rem; }
.fk-inv-brand span { font-size: 1.2rem; color: var(--fk-muted); }

.fk-inv-meta { text-align: right; }
.fk-inv-meta h1 { font-size: 2.2rem; text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 1rem; }
.fk-inv-meta table { margin-left: auto; }
.fk-inv-meta td { padding: 0.2rem 0.6rem; font-size: 1.3rem; text-align: right; }
.fk-inv-meta td:first-child { color: var(--fk-muted); }
.fk-inv-paidtag { background: #e8f5e9; color: var(--fk-green); padding: 0.2rem 0.9rem; border-radius: 4px; font-weight: 700; }
.fk-inv-unpaidtag { background: #fff4e0; color: #c77800; padding: 0.2rem 0.9rem; border-radius: 4px; font-weight: 700; }

.fk-inv-parties {
	display: grid; grid-template-columns: 1fr 1fr; gap: 2rem;
	margin-bottom: 2rem; padding-bottom: 2rem;
	border-bottom: 1px solid var(--fk-line);
}
.fk-inv-parties h4 { font-size: 1.2rem; text-transform: uppercase; letter-spacing: 0.06em; color: var(--fk-muted); margin-bottom: 0.8rem; }
.fk-inv-parties strong { font-size: 1.4rem; display: block; margin-bottom: 0.4rem; }
.fk-inv-parties p { font-size: 1.3rem; color: var(--fk-ink); margin-bottom: 0.4rem; }

.fk-inv-table { width: 100%; border-collapse: collapse; margin-bottom: 2rem; }
.fk-inv-table th {
	background: var(--fk-bg); font-size: 1.15rem; text-transform: uppercase;
	letter-spacing: 0.04em; color: var(--fk-muted); font-weight: 700;
	padding: 1rem; text-align: left; border-bottom: 2px solid var(--fk-line);
}
.fk-inv-table td { padding: 1.2rem 1rem; font-size: 1.3rem; border-bottom: 1px solid var(--fk-line); vertical-align: middle; }
.fk-inv-table .text-center { text-align: center; }
.fk-inv-table .text-right { text-align: right; }
.fk-inv-prod { display: flex; align-items: center; gap: 1.2rem; }
.fk-inv-prod img { width: 48px; height: 48px; object-fit: cover; border-radius: 6px; border: 1px solid var(--fk-line); }

.fk-inv-footer { display: grid; grid-template-columns: 1.4fr 1fr; gap: 3rem; }
.fk-inv-terms h4 { font-size: 1.3rem; margin-bottom: 1rem; }
.fk-inv-terms p { font-size: 1.2rem; color: var(--fk-muted); margin-bottom: 0.6rem; }
.fk-inv-words { color: var(--fk-ink) !important; font-style: italic; margin-top: 1.2rem; }

.fk-inv-amounts ul { list-style: none; padding: 0; margin: 0 0 1.2rem; }
.fk-inv-amounts li { display: flex; justify-content: space-between; font-size: 1.3rem; padding: 0.5rem 0; border-bottom: 1px dashed var(--fk-line); }
.fk-inv-grandtotal {
	display: flex; justify-content: space-between; align-items: center;
	font-size: 1.7rem; font-weight: 700;
	background: var(--fk-bg); padding: 1.2rem 1.4rem; border-radius: 6px;
}

.fk-inv-thanks { text-align: center; font-size: 1.4rem; font-style: italic; color: var(--fk-muted); margin-top: 2rem; }

@media (max-width: 768px) {
	.fk-inv-head, .fk-inv-parties, .fk-inv-footer { grid-template-columns: 1fr; }
	.fk-inv-meta { text-align: left; }
	.fk-inv-meta table { margin-left: 0; }
}

@media print {
	.fk-invoice-sheet { box-shadow: none; border: none; }
}

/* ============================================================
   CHECKOUT: order confirmation banner + selectable address cards
   ============================================================ */
.fk-order-confirm {
	display: flex; align-items: center; gap: 1.4rem;
	background: #e8f5e9; border: 1px solid #c8e6c9; border-radius: var(--fk-radius);
	padding: 1.6rem 2rem; margin-bottom: 1.5rem;
}
.fk-order-confirm-icon {
	width: 48px; height: 48px; flex-shrink: 0; border-radius: 50%;
	background: var(--fk-green); color: #fff;
	display: flex; align-items: center; justify-content: center;
}
.fk-order-confirm strong { font-size: 1.5rem; display: block; margin-bottom: 0.2rem; }
.fk-order-confirm p { margin: 0; font-size: 1.3rem; color: #2e7d32; }

.fk-addr-selectable {
	display: block; cursor: pointer; position: relative;
	padding-right: 3.6rem;
}
.fk-addr-selectable input[type="radio"] {
	position: absolute; top: 1.8rem; right: 1.8rem; width: 20px; height: 20px;
}

.fk-order-summary-items { list-style: none; margin: 0 0 1.4rem; padding: 0; }
.fk-order-summary-items li {
	display: flex; align-items: center; gap: 1.2rem;
	padding: 0.8rem 0; border-bottom: 1px solid var(--fk-line);
	font-size: 1.25rem;
}
.fk-order-summary-items img { width: 44px; height: 44px; object-fit: cover; border-radius: 6px; border: 1px solid var(--fk-line); }
.fk-order-summary-name { flex: 1; color: var(--fk-ink); }

.fk-order-summary-totals { list-style: none; margin: 0 0 1rem; padding: 0; }
.fk-order-summary-totals li { display: flex; justify-content: space-between; font-size: 1.25rem; padding: 0.4rem 0; }

/* ============================================================
   PRODUCT DETAILS PAGE (redesigned, Amazon/Flipkart style)
   ============================================================ */
.fk-pdp { padding-top: 2rem; padding-bottom: 1rem; }

.fk-pdp-card {
	background: var(--fk-surface);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 2.8rem;
	margin-bottom: 2.5rem;
}

.fk-pdp-gallery {
	display: flex;
	gap: 1.2rem;
	position: sticky;
	top: 1.5rem;
}
.fk-pdp-thumbs {
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
	max-height: 480px;
	overflow-y: auto;
}
.fk-pdp-thumb {
	width: 64px; height: 76px;
	padding: 2px;
	border: 2px solid var(--fk-line);
	border-radius: 6px;
	background: var(--fk-surface);
	cursor: pointer;
	flex: none;
}
.fk-pdp-thumb img { width: 100%; height: 100%; object-fit: contain; }
.fk-pdp-thumb.active, .fk-pdp-thumb:hover { border-color: var(--fk-blue); }

.fk-pdp-main {
	flex: 1;
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	background: var(--fk-surface);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 420px;
	max-height: 480px;
	overflow: hidden;
}
.fk-pdp-main img { width: 100%; height: 100%; object-fit: contain; padding: 1.2rem; }

.fk-pdp-main { position: relative; }
.fk-pdp-wish-btn {
	position: absolute; top: 1.2rem; right: 1.2rem; z-index: 2;
	width: 3.8rem; height: 3.8rem; border-radius: 50%;
	background: #fff; border: 1px solid var(--fk-line); box-shadow: var(--fk-shadow);
	display: flex; align-items: center; justify-content: center;
	color: var(--fk-muted); transition: all 0.15s ease;
}
.fk-pdp-wish-btn:hover { color: #e0245e; border-color: #e0245e; }

.fk-pdp-trust {
	display: flex;
	justify-content: space-between;
	gap: 0.8rem;
	margin-top: 1.6rem;
	padding: 1.2rem;
	background: var(--fk-surface);
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
}
.fk-pdp-trust div { display: flex; align-items: center; gap: 0.5rem; font-size: 1.1rem; color: var(--fk-muted); }
.fk-pdp-trust svg { color: var(--fk-blue); flex: none; }

.fk-pdp-details { padding: 0 0 0 1.2rem; }
.fk-pdp-title { font-size: 2.3rem; font-weight: 700; color: var(--fk-ink); line-height: 1.35; margin-bottom: 0.8rem; letter-spacing: 0.01em; }
.fk-pdp-seller { font-size: 1.25rem; color: var(--fk-muted); margin-bottom: 1.8rem; }
.fk-pdp-seller strong { color: var(--fk-blue); }

.fk-pdp-price-box {
	background: var(--fk-blue-soft);
	border: 1px solid #c8e6c9;
	border-radius: var(--fk-radius);
	padding: 1.8rem 2rem;
	margin-bottom: 2rem;
}

.fk-pdp-price-row { display: flex; align-items: baseline; gap: 1.2rem; flex-wrap: wrap; }
.fk-pdp-price { font-size: 3rem; font-weight: 700; color: var(--fk-ink); }
.fk-pdp-mrp { font-size: 1.6rem; color: var(--fk-muted); text-decoration: line-through; }
.fk-pdp-off { font-size: 1.6rem; font-weight: 700; color: var(--fk-green); }
.fk-pdp-tax-note { font-size: 1.15rem; color: var(--fk-muted); margin: 0.5rem 0 1.4rem; }

.fk-pdp-stock { display: inline-block; font-size: 1.15rem; font-weight: 700; padding: 0.4rem 1.2rem; border-radius: 20px; margin-bottom: 0; }
.fk-pdp-stock-ok { background: rgba(56,142,60,0.14); color: var(--fk-green); }
.fk-pdp-stock-out { background: #fdecea; color: #c62828; }

.fk-pdp-summary { font-size: 1.35rem; color: var(--fk-ink); line-height: 1.8; margin-bottom: 2.4rem; }

.fk-pdp-actions { display: flex; align-items: center; gap: 1.5rem; flex-wrap: wrap; border-top: 1px solid var(--fk-line); padding-top: 2rem; }
.fk-pdp-qty-form { display: flex; align-items: center; gap: 1rem; }
.fk-pdp-qty-form label { margin: 0; font-size: 1.2rem; color: var(--fk-muted); }

.fk-pdp-stepper { display: flex; align-items: center; border: 1px solid var(--fk-line); border-radius: 6px; overflow: hidden; }
.fk-pdp-step-btn {
	width: 3.6rem; height: 3.6rem;
	border: 0; background: var(--fk-bg); color: var(--fk-ink);
	font-size: 1.8rem; font-weight: 700; cursor: pointer;
}
.fk-pdp-step-btn:hover { background: var(--fk-blue-soft); color: var(--fk-blue); }
.fk-pdp-stepper input {
	width: 5rem; height: 3.6rem;
	border: 0; border-left: 1px solid var(--fk-line); border-right: 1px solid var(--fk-line);
	text-align: center; font-size: 1.4rem; -moz-appearance: textfield;
}
.fk-pdp-stepper input::-webkit-outer-spin-button,
.fk-pdp-stepper input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.fk-pdp-specs {
	background: var(--fk-surface);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	padding: 2.8rem;
	margin-bottom: 2.5rem;
}
.fk-pdp-specs-body { font-size: 1.3rem; color: var(--fk-ink); line-height: 1.7; }
.fk-pdp-spec-list {
	list-style: none; margin: 1.2rem 0 0; padding: 0;
	display: grid; grid-template-columns: 1fr 1fr; column-gap: 2.4rem;
}
.fk-pdp-spec-list li { display: flex; align-items: flex-start; gap: 0.8rem; padding: 0.8rem 0; border-bottom: 1px dashed var(--fk-line); }
.fk-pdp-spec-list li svg { color: var(--fk-green); flex: none; margin-top: 0.3rem; }

@media (max-width: 767px) {
	.fk-pdp-spec-list { grid-template-columns: 1fr; }
}

@media (max-width: 991px) {
	.fk-pdp-gallery { position: static; flex-direction: column-reverse; }
	.fk-pdp-thumbs { flex-direction: row; max-height: none; overflow-x: auto; }
	.fk-pdp-details { padding-left: 0; margin-top: 1.6rem; }
}
@media (max-width: 575px) {
	.fk-pdp-title { font-size: 1.7rem; }
	.fk-pdp-price { font-size: 2.2rem; }
	.fk-pdp-main { min-height: 300px; }
}

/* ============================================================
   CART PAGE (redesigned)
   ============================================================ */
.fk-cart-empty {
	max-width: 480px; margin: 5rem auto; text-align: center;
	color: var(--fk-muted);
}
.fk-cart-empty svg { color: var(--fk-line); margin-bottom: 1.5rem; }
.fk-cart-empty h2 { font-size: 2rem; color: var(--fk-ink); margin-bottom: 1rem; }
.fk-cart-empty p { font-size: 1.4rem; margin-bottom: 2rem; }

.fk-cart-list {
	background: var(--fk-surface);
	border: 1px solid var(--fk-line);
	border-radius: var(--fk-radius);
	box-shadow: var(--fk-shadow);
	overflow: hidden;
}

.fk-cart-item {
	display: flex; gap: 1.8rem;
	padding: 2.2rem; border-bottom: 1px solid var(--fk-line);
	transition: background 0.15s ease;
}
.fk-cart-item:last-child { border-bottom: none; }
.fk-cart-item:hover { background: #fafbfd; }

.fk-cart-item-media { flex-shrink: 0; margin: 0; }
.fk-cart-item-media img { width: 116px; height: 138px; object-fit: cover; border-radius: 8px; border: 1px solid var(--fk-line); }

.fk-cart-item-body { flex: 1; min-width: 0; }
.fk-cart-item-title { font-size: 1.55rem; font-weight: 600; margin-bottom: 0.5rem; letter-spacing: 0.01em; }
.fk-cart-item-title a { color: var(--fk-ink); }
.fk-cart-item-title a:hover { color: var(--fk-blue); }
.fk-cart-item-seller { font-size: 1.2rem; color: var(--fk-muted); margin-bottom: 1rem; }
.fk-cart-item-seller strong { color: var(--fk-ink); }

.fk-cart-item-price { display: flex; align-items: baseline; gap: 1rem; margin-bottom: 0.8rem; }
.fk-cart-price { font-size: 1.8rem; font-weight: 700; color: var(--fk-ink); }
.fk-cart-mrp { font-size: 1.3rem; color: var(--fk-muted); text-decoration: line-through; }
.fk-cart-off { font-size: 1.3rem; color: var(--fk-green); font-weight: 600; }

.fk-cart-stock { font-size: 1.2rem; margin-bottom: 1.4rem; }
.fk-cart-stock-ok { color: var(--fk-green); }
.fk-cart-stock-out { color: #d9534f; font-weight: 600; }

.fk-cart-item-actions { display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; }
.fk-cart-qty-form { display: flex; align-items: center; gap: 1rem; }
.fk-cart-qty-form label { margin: 0; font-size: 1.2rem; color: var(--fk-muted); }

.fk-cart-stepper { display: flex; align-items: center; border: 1px solid var(--fk-line); border-radius: 6px; overflow: hidden; }
.fk-cart-step-btn {
	width: 3rem; height: 3rem; border: 0; background: var(--fk-bg); color: var(--fk-ink);
	font-size: 1.6rem; font-weight: 700; cursor: pointer; line-height: 1;
}
.fk-cart-step-btn:hover { background: var(--fk-blue-soft); color: var(--fk-blue); }
.fk-cart-qty-input {
	width: 4.2rem; height: 3rem; border: 0;
	border-left: 1px solid var(--fk-line); border-right: 1px solid var(--fk-line);
	text-align: center; font-size: 1.3rem;
}
.fk-cart-qty-input::-webkit-outer-spin-button,
.fk-cart-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.fk-cart-update-btn {
	border: 1px solid var(--fk-blue); background: #fff; color: var(--fk-blue);
	font-size: 1.2rem; font-weight: 700; padding: 0.6rem 1.4rem; border-radius: 6px; cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}
.fk-cart-update-btn:hover { background: var(--fk-blue); color: #fff; }
/* Qty +/- now auto-submits, so the manual button is kept only as a no-JS fallback */
.fk-cart-update-btn-auto { display: none; }

.fk-cart-item-subtotal {
	font-size: 1.3rem; color: var(--fk-muted); margin-bottom: 1rem;
}
.fk-cart-item-subtotal-val { font-weight: 700; color: var(--fk-ink); }

.fk-cart-freeship-hint {
	font-size: 1.2rem; color: var(--fk-blue); background: var(--fk-blue-soft, #E8F5E9);
	padding: 0.8rem 1rem; border-radius: 6px; margin: 1rem 0 0;
}

.fk-cart-icon-btn {
	display: inline-flex; align-items: center; gap: 0.5rem;
	background: none; border: none; padding: 0;
	font-size: 1.2rem; font-weight: 700; color: var(--fk-muted);
	cursor: pointer; transition: color 0.15s ease;
}
.fk-cart-icon-btn:hover { color: var(--fk-blue); }
.fk-cart-icon-danger { color: #d9534f; }
.fk-cart-icon-danger:hover { color: #b52d2d; }

.fk-cart-continue { margin: 1.6rem 0; }

/* ============================================================
   PREMIUM GREEN HEADER  (v3 redesign)
   Loaded last so it wins over the earlier fk2-* header rules.
   Palette: #2E7D32 primary / #4CAF50 secondary
            #E8F5E9 light bg / #1B5E20 hover
   ============================================================ */

/* --- top announcement strip --- */
.fk2-topstrip {
	background: var(--fk-blue-dark);
	padding: 0;
	border: 0;
}

.fk2-topstrip .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 3.4rem;
}

.fk2-topstrip-left,
.fk2-topstrip-right a,
.fk2-strip-user {
	color: rgba(255, 255, 255, 0.88) !important;
	font-size: 1.18rem;
	letter-spacing: 0.02em;
}

.fk2-topstrip-left svg,
.fk2-strip-user b {
	color: #A5D6A7;
}

.fk2-strip-dot {
	color: rgba(255, 255, 255, 0.35);
}

.fk2-topstrip-right a {
	position: relative;
	transition: color 0.18s ease;
}

.fk2-topstrip-right a:hover {
	color: #fff !important;
}

/* --- main white row --- */
.header-middle {
	background: #fff;
	padding: 1.5rem 0 !important;
	border-bottom: 1px solid var(--fk-line);
}

.header-middle .container {
	display: flex;
	align-items: center;
	gap: 2.5rem;
}

.fk2-logo {
	height: 54px !important;
	width: auto;
	transition: transform 0.2s ease;
}

.logo:hover .fk2-logo {
	transform: scale(1.03);
}

/* --- search --- */
.fk2-search-wrap {
	flex: 1 1 auto;
	max-width: 620px;
	margin: 0 auto;
}

.input-group.fk2-search {
	height: 5rem;
	border: 2px solid var(--fk-line);
	border-radius: 10px;
	overflow: hidden;
	background: var(--fk-bg);
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.fk2-search-form:focus-within .fk2-search {
	border-color: var(--fk-secondary, #4CAF50);
	background: #fff;
	box-shadow: 0 0 0 4px rgba(76, 175, 80, 0.14);
}

.fk2-search .form-control {
	height: 100% !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 1.35rem;
	color: var(--fk-ink);
	padding-left: 0.4rem;
}

.fk2-search .input-group-append {
	display: flex;
	align-items: center;
}

.fk2-search .form-control::placeholder {
	color: #9aa3ad;
}

.fk2-search-icon {
	display: flex;
	align-items: center;
	padding: 0 0.5rem 0 1.4rem;
	color: #9aa3ad;
}

.fk2-search-form:focus-within .fk2-search-icon {
	color: var(--fk-blue);
}

.btn.fk2-search-btn {
	display: flex;
	align-items: center;
	background: var(--fk-blue) !important;
	border: 0 !important;
	border-radius: 7px !important;
	color: #fff !important;
	font-size: 1.28rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	padding: 0 2.6rem !important;
	margin: 0 0.5rem 0 0;
	height: 3.8rem;
	transition: background 0.18s ease, transform 0.12s ease;
}

.btn.fk2-search-btn:hover {
	background: var(--fk-blue-dark) !important;
}

.btn.fk2-search-btn:active {
	transform: scale(0.97);
}

/* --- account / wishlist / cart --- */
.fk2-actions {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin-left: auto;
}

.fk2-action {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	padding: 0.7rem 1.15rem;
	border-radius: 8px;
	color: var(--fk-ink) !important;
	transition: background 0.18s ease, color 0.18s ease;
}

.fk2-action:hover {
	background: var(--fk-blue-soft);
	color: var(--fk-blue-dark) !important;
}

.fk2-action:hover .fk2-icon-wrap svg {
	color: var(--fk-blue);
}

.fk2-icon-wrap {
	position: relative;
	display: flex;
	align-items: center;
	color: var(--fk-ink);
	transition: color 0.18s ease;
}

.fk2-labels {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
}

.fk2-labels em {
	font-style: normal;
	font-size: 1.08rem;
	color: var(--fk-muted);
}

.fk2-labels strong {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 1.28rem;
	font-weight: 700;
	color: var(--fk-ink);
}

.fk2-action-divider {
	width: 1px;
	height: 2.6rem;
	background: var(--fk-line);
	margin: 0 0.2rem;
}

.fk2-badge {
	position: absolute;
	top: -0.7rem;
	right: -0.9rem;
	min-width: 1.9rem;
	height: 1.9rem;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 0.5rem;
	background: var(--fk-orange);
	color: #fff;
	font-size: 1.05rem;
	font-weight: 700;
	border-radius: 999px;
	border: 2px solid #fff;
}

.fk2-badge-blue {
	background: var(--fk-blue) !important;
}

.fk2-dot {
	position: absolute;
	top: -0.2rem;
	right: -0.2rem;
	width: 0.9rem;
	height: 0.9rem;
	background: var(--fk-orange);
	border: 2px solid #fff;
	border-radius: 50%;
}

/* --- account dropdown --- */
.fk2-dropdown {
	border: 0;
	border-radius: 10px;
	box-shadow: 0 12px 34px rgba(0, 0, 0, 0.14);
	padding: 0.7rem 0;
	margin-top: 0.9rem;
	min-width: 21rem;
}

.fk2-dropdown .dropdown-item {
	font-size: 1.3rem;
	padding: 1rem 1.8rem;
	color: var(--fk-ink);
	border-left: 3px solid transparent;
	transition: all 0.15s ease;
}

.fk2-dropdown .dropdown-item:hover {
	background: var(--fk-blue-soft);
	color: var(--fk-blue-dark);
	border-left-color: var(--fk-blue);
}

/* --- green navigation row --- */
.header-bottom,
.sticky-header.fixed,
.header-bottom.sticky-header.fixed {
	background: var(--fk-blue) !important;
	box-shadow: 0 2px 10px rgba(27, 94, 32, 0.22);
	padding: 0;
}

.header-bottom .container {
	display: flex;
	align-items: center;
	justify-content: center;
}

.main-nav .menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.main-nav .menu > li {
	display: flex;
	align-items: stretch;
}

.main-nav .menu > li > a {
	display: flex;
	align-items: center;
	position: relative;
	color: #fff !important;
	font-size: 1.32rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	height: 5.2rem;
	padding: 0 2.4rem !important;
	transition: background 0.18s ease, box-shadow 0.24s ease;
}

/* hover/active: darker panel + inset accent bar (no overflow artifacts) */
.main-nav .menu > li:hover > a,
.main-nav .menu > li.active > a {
	background: var(--fk-blue-dark) !important;
	color: #fff !important;
	box-shadow: inset 0 -3px 0 0 var(--fk-mint, #A5D6A7);
}

/* --- dropdown panels --- */
.main-nav .menu ul {
	background: #fff;
	border: 0;
	border-top: 3px solid var(--fk-blue);
	border-radius: 0 0 10px 10px;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.16);
	padding: 0.8rem 0;
	min-width: 23rem;
}

.main-nav .menu ul li a {
	display: block;
	color: var(--fk-ink) !important;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	padding: 1rem 2rem !important;
	border-left: 3px solid transparent;
	transition: all 0.16s ease;
}

.main-nav .menu ul li a:hover {
	background: var(--fk-blue-soft) !important;
	color: var(--fk-blue-dark) !important;
	border-left-color: var(--fk-blue);
	padding-left: 2.4rem !important;
}

/* --- mobile menu toggler --- */
.mobile-menu-toggler {
	display: none;
	background: none;
	border: 0;
	color: var(--fk-ink);
	font-size: 2.2rem;
	padding: 0.4rem 0.9rem;
	margin-right: 0.4rem;
	cursor: pointer;
	transition: color 0.18s ease;
}

.mobile-menu-toggler:hover {
	color: var(--fk-blue);
}

.mobile-menu-container {
	background: #12261a;
}

.mobile-menu li a {
	font-size: 1.4rem;
	padding: 1.2rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	transition: color 0.16s ease, padding-left 0.16s ease;
}

.mobile-menu li a:hover {
	color: #A5D6A7 !important;
	padding-left: 0.6rem;
}

.mobile-menu-close {
	color: #fff;
}

/* ------------------- responsive header ------------------- */
@media (max-width: 1199px) {
	.header-middle .container {
		gap: 1.4rem;
	}

	.fk2-action {
		padding: 0.7rem 0.8rem;
	}

	.main-nav .menu > li > a {
		padding: 1.4rem 1.7rem !important;
	}
}

@media (max-width: 991px) {
	.mobile-menu-toggler {
		display: inline-flex;
		order: -1;
	}

	.header-bottom {
		display: none;
	}

	.fk2-labels {
		display: none;
	}

	.fk2-action-divider {
		display: none;
	}

	.fk2-logo {
		height: 42px !important;
	}

	.header-middle .container {
		flex-wrap: wrap;
		gap: 1rem 0.6rem;
	}

	.fk2-search-wrap {
		order: 3;
		flex: 1 0 100%;
		max-width: 100%;
		margin: 0.3rem 0 0;
	}

	.fk2-topstrip-left {
		display: none;
	}

	.fk2-topstrip .container {
		justify-content: center;
	}
}

@media (max-width: 575px) {
	.btn.fk2-search-btn {
		padding: 0 1.5rem;
		font-size: 1.15rem;
	}

	.fk2-search .form-control {
		font-size: 1.25rem;
	}

	.fk2-logo {
		height: 36px !important;
	}

	.fk2-action {
		padding: 0.6rem 0.5rem;
	}

	.fk2-topstrip-right {
		gap: 1.2rem;
	}
}

/* ============================================================
   PRODUCT DETAILS PAGE - GALLERY v2
   Larger stage, cleaner thumbnails, hover zoom.
   Loaded last so it supersedes the earlier .fk-pdp-* gallery rules.
   ============================================================ */
.fk-pdp-gallery {
	display: flex;
	gap: 1.4rem;
	position: sticky;
	top: 1.5rem;
	align-items: flex-start;
}

/* --- thumbnail rail --- */
.fk-pdp-thumbs {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	max-height: 560px;
	overflow-y: auto;
	padding: 0.2rem;
	scrollbar-width: thin;
}

.fk-pdp-thumbs::-webkit-scrollbar {
	width: 4px;
}

.fk-pdp-thumbs::-webkit-scrollbar-thumb {
	background: var(--fk-line);
	border-radius: 4px;
}

.fk-pdp-thumb {
	position: relative;
	width: 74px;
	height: 92px;
	padding: 3px;
	border: 2px solid var(--fk-line);
	border-radius: 8px;
	background: #fff;
	cursor: pointer;
	flex: none;
	overflow: hidden;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.fk-pdp-thumb img {
	width: 100%;
	height: 100%;
	/* contain (not cover) so white-background studio shots are never cropped
	   into an empty white corner -- the whole garment always stays visible */
	object-fit: contain;
	background: #fafafa;
	border-radius: 5px;
}

.fk-pdp-thumb:hover {
	border-color: var(--fk-secondary, #4CAF50);
	transform: translateY(-2px);
}

.fk-pdp-thumb.active {
	border-color: var(--fk-blue);
	box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.18);
}

/* --- main stage --- */
.fk-pdp-main {
	position: relative;
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 520px;
	max-height: 560px;
	border: 1px solid var(--fk-line);
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
}

.fk-pdp-main img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 1.6rem;
	transition: transform 0.28s ease;
	will-change: transform;
}

/* hover zoom: origin is set from the pointer position in JS */
.fk-pdp-main.is-zooming {
	cursor: zoom-in;
}

.fk-pdp-main.is-zooming img {
	transform: scale(2);
	padding: 0;
}

.fk-pdp-zoom-hint {
	position: absolute;
	left: 50%;
	bottom: 1.2rem;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 0.5rem;
	background: rgba(33, 33, 33, 0.72);
	color: #fff;
	font-size: 1.05rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	padding: 0.45rem 1.1rem;
	border-radius: 999px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

.fk-pdp-main:hover .fk-pdp-zoom-hint {
	opacity: 1;
}

.fk-pdp-main.is-zooming .fk-pdp-zoom-hint {
	opacity: 0;
}

/* single genuine image: no thumbnail rail, stage takes the full width */
.fk-pdp-gallery-single .fk-pdp-main {
	width: 100%;
}

/* --- tablet / mobile --- */
@media (max-width: 991px) {
	.fk-pdp-gallery {
		position: static;
		flex-direction: column-reverse;
		gap: 1rem;
	}

	.fk-pdp-thumbs {
		flex-direction: row;
		max-height: none;
		overflow-x: auto;
		overflow-y: hidden;
		padding-bottom: 0.6rem;
	}

	.fk-pdp-main {
		min-height: 420px;
		max-height: 460px;
	}

	.fk-pdp-zoom-hint {
		display: none;
	}
}

@media (max-width: 575px) {
	.fk-pdp-main {
		min-height: 340px;
		max-height: 380px;
	}

	.fk-pdp-thumb {
		width: 62px;
		height: 78px;
	}
}

/* ------------------------------------------------------------
   AWAITING PHOTOGRAPHY
   Products that have no genuine photo yet use the shared
   placeholder. Styled so it reads as a deliberate "photo coming
   soon" tile instead of a broken image.
   ------------------------------------------------------------ */
.ag-card-media img[src*="no-product-found"],
.fk-pdp-main img[src*="no-product-found"],
.product-image img[src*="no-product-found"] {
	object-fit: contain !important;
	padding: 18% !important;
	background: var(--fk-blue-soft);
	opacity: 0.5;
}

/* ------------------------------------------------------------
   PDP ACTION ROW - alignment fix
   Qty stepper, Add to Cart and Buy Now share one baseline and one
   height so the buttons line up exactly.
   ------------------------------------------------------------ */
.fk-pdp-actions {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	flex-wrap: wrap;
	border-top: 1px solid var(--fk-line);
	padding-top: 2.2rem;
}

.fk-pdp-qty-form {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	margin: 0;
}

.fk-pdp-stepper,
.fk-pdp-step-btn,
.fk-pdp-stepper input {
	height: 4.8rem;
}

.fk-pdp-step-btn {
	width: 4.2rem;
}

.fk-pdp-stepper input {
	width: 5.4rem;
}

/* both CTAs: identical height, padding and vertical rhythm */
.fk-pdp-actions .fk-btn-cart,
.fk-pdp-actions .fk-btn-buy {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.7rem;
	height: 4.8rem;
	min-width: 17rem;
	margin: 0;
	padding: 0 2.4rem;
	border-radius: 6px;
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1;
	white-space: nowrap;
	vertical-align: middle;
}

@media (max-width: 575px) {
	.fk-pdp-actions {
		gap: 1rem;
	}

	.fk-pdp-qty-form {
		width: 100%;
	}

	.fk-pdp-actions .fk-btn-cart,
	.fk-pdp-actions .fk-btn-buy {
		flex: 1 1 100%;
		min-width: 0;
	}
}

/* ------------------------------------------------------------
   HEADER SEARCH - professional finish
   White field, defined border, green submit block flush to the
   right edge (Flipkart/Amazon pattern) and a clear focus state.
   ------------------------------------------------------------ */
.fk2-search-wrap {
	flex: 1 1 auto;
	max-width: 660px;
	margin: 0 auto;
	padding: 0 !important;
}

.input-group.fk2-search {
	height: 4.8rem;
	background: #fff;
	border: 1.5px solid #d5dbe0;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(33, 33, 33, 0.04);
	overflow: hidden;
}

.fk2-search-form:focus-within .fk2-search {
	background: #fff;
	border-color: var(--fk-blue);
	box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.13);
}

.fk2-search-icon {
	padding: 0 0.6rem 0 1.5rem;
	color: #8a9199;
}

.fk2-search .form-control {
	height: 100% !important;
	padding: 0 0.6rem !important;
	font-size: 1.32rem;
	color: var(--fk-ink);
}

.fk2-search .form-control::placeholder {
	color: #9aa3ad;
	font-size: 1.28rem;
}

/* submit block: full height, flush right, square inner edge */
.btn.fk2-search-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
	height: 100%;
	margin: 0 !important;
	padding: 0 2.8rem !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--fk-blue) !important;
	color: #fff !important;
	font-size: 1.22rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	transition: background 0.18s ease;
}

.btn.fk2-search-btn:hover,
.btn.fk2-search-btn:focus {
	background: var(--fk-blue-dark) !important;
	box-shadow: none !important;
}

/* autocomplete panel lines up with the field */
.fk2-search-form .list-style {
	top: calc(100% + 8px);
	border: 1px solid var(--fk-line);
	box-shadow: 0 12px 30px rgba(33, 33, 33, 0.14);
}

.fk2-search-form .list-style .list-group-item {
	font-size: 1.28rem;
	padding: 1rem 1.6rem;
	border: 0;
	border-bottom: 1px solid var(--fk-line);
	cursor: pointer;
}

.fk2-search-form .list-style .list-group-item:last-child {
	border-bottom: 0;
}

.fk2-search-form .list-style .list-group-item:hover {
	background: var(--fk-blue-soft);
	color: var(--fk-blue-dark);
}

@media (max-width: 991px) {
	.fk2-search-wrap {
		max-width: 100%;
	}
}

@media (max-width: 575px) {
	.input-group.fk2-search {
		height: 4.2rem;
	}

	.btn.fk2-search-btn {
		padding: 0 1.6rem !important;
		font-size: 1.1rem;
	}

	.fk2-search-icon {
		padding: 0 0.4rem 0 1rem;
	}
}

/* search: make the append wrapper stretch so the button fills the field,
   and fully hide the autocomplete panel while it has no results */
.fk2-search .input-group-append {
	display: flex;
	align-items: stretch;
	height: 100%;
	margin: 0;
}

.fk2-search-form .list-style:empty {
	display: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* ============================================================
   HEADER v4  -  clean, modern, perfectly aligned
   Supersedes every earlier header/search block in this file.
   ============================================================ */

/* ---------- main row: one flex line, everything centred ---------- */
.header-middle {
	background: #fff;
	padding: 0 !important;
	border-bottom: 1px solid #eceff1;
}

.header-middle .container {
	display: flex;
	align-items: center;
	gap: 3rem;
	min-height: 7.6rem;
}

.header-middle .header-left,
.header-middle .header-center,
.header-middle .header-right {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

.header-middle .logo {
	display: flex;
	align-items: center;
	margin: 0;
}

/* stacked MyFintel lockup: needs more height than a wide wordmark
   so the "MyFintel" text under the MF mark stays legible */
.fk2-logo {
	height: 60px !important;
	width: auto;
	display: block;
}

/* ---------- search: one rounded field, icon is the submit ---------- */
.fk2-search-wrap {
	flex: 1 1 auto;
	max-width: 660px;
	margin: 0 auto;
	padding: 0 !important;
}

.fk2-search-form {
	position: relative;
	width: 100%;
	margin: 0;
}

.fk2-search {
	display: flex;
	align-items: center;
	width: 100%;
	height: 4.4rem;
	background: #fff;
	border: 1.5px solid #cfd6dd;
	border-radius: 8px;
	transition: border-color 0.16s ease, box-shadow 0.16s ease;
	overflow: hidden;
}

.fk2-search:hover {
	border-color: #aab4bd;
}

.fk2-search-form:focus-within .fk2-search {
	border-color: var(--fk-blue);
	box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.12);
}

.fk2-search-submit {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 4.4rem;
	height: 100%;
	padding: 0;
	border: 0;
	background: none;
	color: #7d868f;
	cursor: pointer;
	transition: color 0.16s ease;
}

.fk2-search-submit:hover,
.fk2-search-form:focus-within .fk2-search-submit {
	color: var(--fk-blue);
}

.fk2-search-input {
	flex: 1 1 auto;
	width: 100%;
	height: 100%;
	min-width: 0;
	padding: 0 1.4rem 0 0;
	border: 0;
	outline: 0;
	background: transparent;
	font-size: 1.36rem;
	color: var(--fk-ink);
}

.fk2-search-input::placeholder {
	color: #9aa3ad;
}

/* strip the browser's native clear button so the field stays clean */
.fk2-search-input::-webkit-search-decoration,
.fk2-search-input::-webkit-search-cancel-button,
.fk2-search-input::-webkit-search-results-button {
	-webkit-appearance: none;
	appearance: none;
}

/* ---------- right hand actions ---------- */
.fk2-actions {
	display: flex;
	align-items: center;
	gap: 0.2rem;
	margin-left: auto;
}

.fk2-action {
	display: flex !important;
	align-items: center;
	gap: 0.8rem;
	height: 4.4rem;
	padding: 0 1.2rem;
	border-radius: 8px;
	color: var(--fk-ink) !important;
	transition: background 0.16s ease, color 0.16s ease;
}

.fk2-action:hover {
	background: var(--fk-blue-soft);
	color: var(--fk-blue-dark) !important;
}

.fk2-labels em {
	font-size: 1.05rem;
	color: var(--fk-muted);
}

.fk2-labels strong {
	font-size: 1.3rem;
	font-weight: 600;
}

.fk2-action-divider {
	width: 1px;
	height: 2.4rem;
	background: #e4e8eb;
	margin: 0 0.6rem;
}

/* ---------- nav: no dropdown arrow glyphs ---------- */
.main-nav .menu.sf-arrows .sf-with-ul::after,
.main-nav .menu .sf-with-ul::after,
.main-nav .menu > li > a::after,
.main-nav .menu > li > a::before,
.mobile-menu .sf-with-ul::after {
	display: none !important;
	content: none !important;
	border: 0 !important;
}

.header-bottom .container {
	min-height: auto;
	gap: 0;
}

.main-nav .menu > li > a {
	height: 4.9rem;
	font-size: 1.3rem;
	font-weight: 600;
	letter-spacing: 0.09em;
	padding: 0 2.6rem !important;
}

/* ---------- responsive ---------- */
@media (max-width: 1199px) {
	.header-middle .container {
		gap: 1.8rem;
	}
}

@media (max-width: 991px) {
	.header-middle .container {
		flex-wrap: wrap;
		gap: 0.8rem 1rem;
		min-height: auto;
		padding-top: 1.2rem;
		padding-bottom: 1.2rem;
	}

	.fk2-search-wrap {
		order: 3;
		flex: 1 0 100%;
		max-width: 100%;
	}

	.fk2-logo {
		height: 48px !important;
	}
}

@media (max-width: 575px) {
	.fk2-search {
		height: 4rem;
	}

	.fk2-search-submit {
		width: 3.8rem;
	}

	.fk2-search-input {
		font-size: 1.28rem;
	}

	.fk2-logo {
		height: 42px !important;
	}

	.fk2-action {
		padding: 0 0.6rem;
	}
}

/* dropdown panel: green accent (base theme ships a yellow border) */
.main-nav .menu ul,
.main-nav .menu > li > ul {
	background: #fff !important;
	border: 0 !important;
	border-top: 3px solid var(--fk-blue) !important;
	border-radius: 0 0 10px 10px !important;
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.15) !important;
	padding: 0.6rem 0 !important;
	min-width: 22rem;
}

.main-nav .menu ul li a {
	display: block;
	color: var(--fk-ink) !important;
	font-size: 1.28rem;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	padding: 0.95rem 2rem !important;
	height: auto;
	border-left: 3px solid transparent;
	transition: background 0.15s ease, color 0.15s ease, padding-left 0.15s ease;
}

.main-nav .menu ul li a:hover {
	background: var(--fk-blue-soft) !important;
	color: var(--fk-blue-dark) !important;
	border-left-color: var(--fk-blue);
	padding-left: 2.4rem !important;
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.ag-contact-hero {
	background: var(--fk-blue-soft);
	padding: 4.4rem 0 4rem;
	text-align: center;
	margin-bottom: 3.4rem;
}

.ag-contact-eyebrow {
	display: inline-block;
	background: #fff;
	color: var(--fk-blue);
	font-size: 1.08rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	padding: 0.5rem 1.4rem;
	border-radius: 4px;
	margin-bottom: 1.4rem;
	box-shadow: var(--fk-shadow);
}

.ag-contact-hero h1 {
	font-size: clamp(2.6rem, 3.2vw, 3.6rem);
	font-weight: 800;
	color: var(--fk-ink);
	margin-bottom: 0.9rem;
	letter-spacing: -0.01em;
}

.ag-contact-hero p {
	max-width: 560px;
	margin: 0 auto;
	font-size: 1.45rem;
	color: var(--fk-muted);
}

.ag-contact-wrap {
	padding-bottom: 5rem;
}

/* ---------- success alert ---------- */
.ag-contact-alert {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	background: var(--fk-blue-soft);
	border: 1px solid #c8e6c9;
	border-left: 4px solid var(--fk-blue);
	border-radius: 8px;
	color: var(--fk-blue-dark);
	font-size: 1.35rem;
	padding: 1.5rem 1.8rem;
	margin-bottom: 2.6rem;
}

.ag-contact-alert svg {
	flex: none;
	color: var(--fk-blue);
}

/* ---------- quick cards ---------- */
.ag-contact-cards {
	margin-bottom: 3rem;
}

.ag-contact-card {
	height: 100%;
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: 10px;
	padding: 2.2rem 1.8rem;
	text-align: center;
	transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.ag-contact-card:hover {
	border-color: #c8e6c9;
	box-shadow: 0 10px 26px rgba(46, 125, 50, 0.12);
	transform: translateY(-3px);
}

.ag-contact-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 5.2rem;
	height: 5.2rem;
	margin-bottom: 1.4rem;
	background: var(--fk-blue-soft);
	color: var(--fk-blue);
	border-radius: 50%;
	font-size: 2rem;
}

.ag-contact-card h3 {
	font-size: 1.28rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--fk-muted);
	margin-bottom: 0.7rem;
}

.ag-contact-card p {
	font-size: 1.45rem;
	font-weight: 600;
	color: var(--fk-ink);
	margin-bottom: 0.4rem;
	word-break: break-word;
}

.ag-contact-card p a {
	color: var(--fk-ink);
	transition: color 0.16s ease;
}

.ag-contact-card p a:hover {
	color: var(--fk-blue);
}

.ag-contact-card em {
	font-style: normal;
	font-size: 1.18rem;
	color: var(--fk-muted);
}

/* ---------- panels ---------- */
.ag-contact-main {
	align-items: stretch;
}

.ag-contact-panel {
	height: 100%;
	background: #fff;
	border: 1px solid var(--fk-line);
	border-radius: 12px;
	padding: 3rem;
	box-shadow: var(--fk-shadow);
}

.ag-contact-panel-head {
	margin-bottom: 2.2rem;
}

.ag-contact-panel-head h2 {
	font-size: 2rem;
	font-weight: 700;
	color: var(--fk-ink);
	margin-bottom: 0.6rem;
}

.ag-contact-panel-head p {
	font-size: 1.32rem;
	color: var(--fk-muted);
	margin: 0;
}

/* ---------- form ---------- */
.ag-field {
	margin-bottom: 1.8rem;
}

.ag-field label {
	display: block;
	font-size: 1.24rem;
	font-weight: 600;
	color: var(--fk-ink);
	margin-bottom: 0.7rem;
}

.ag-field label span {
	color: #d9534f;
}

.ag-field input,
.ag-field textarea {
	width: 100%;
	padding: 1.15rem 1.4rem;
	border: 1.5px solid #d5dbe0;
	border-radius: 8px;
	background: #fff;
	font-size: 1.34rem;
	color: var(--fk-ink);
	transition: border-color 0.16s ease, box-shadow 0.16s ease;
}

.ag-field textarea {
	resize: vertical;
	min-height: 12rem;
}

.ag-field input::placeholder,
.ag-field textarea::placeholder {
	color: #a6aeb6;
}

.ag-field input:focus,
.ag-field textarea:focus {
	outline: 0;
	border-color: var(--fk-blue);
	box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.12);
}

.ag-contact-actions {
	display: flex;
	align-items: center;
	gap: 1.6rem;
	flex-wrap: wrap;
	margin-top: 0.6rem;
}

.ag-contact-actions .ag-btn-solid {
	min-width: 18rem;
	padding: 1.25rem 2.6rem;
	font-size: 1.32rem;
}

.ag-contact-note {
	font-size: 1.18rem;
	color: var(--fk-muted);
}

/* ---------- sidebar ---------- */
.ag-contact-details {
	list-style: none;
	margin: 0 0 2.4rem;
	padding: 0;
}

.ag-contact-details li {
	display: flex;
	align-items: flex-start;
	gap: 1.2rem;
	padding: 1.3rem 0;
	border-bottom: 1px dashed var(--fk-line);
	font-size: 1.33rem;
	color: var(--fk-ink);
	line-height: 1.6;
}

.ag-contact-details li:last-child {
	border-bottom: 0;
}

.ag-contact-details i {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.4rem;
	height: 3.4rem;
	background: var(--fk-blue-soft);
	color: var(--fk-blue);
	border-radius: 50%;
	font-size: 1.4rem;
}

.ag-contact-map {
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid var(--fk-line);
	line-height: 0;
}

.ag-contact-map iframe {
	width: 100%;
	height: 260px;
	border: 0;
	display: block;
}

.ag-contact-directions {
	display: inline-block;
	margin-top: 1.2rem;
	font-size: 1.28rem;
	font-weight: 600;
	color: var(--fk-blue);
}

.ag-contact-directions:hover {
	color: var(--fk-blue-dark);
	text-decoration: underline;
}

/* ---------- responsive ---------- */
@media (max-width: 991px) {
	.ag-contact-panel {
		padding: 2.4rem;
	}

	.ag-contact-side {
		margin-top: 2.4rem;
	}
}

@media (max-width: 575px) {
	.ag-contact-hero {
		padding: 3.2rem 0 3rem;
		margin-bottom: 2.4rem;
	}

	.ag-contact-panel {
		padding: 1.8rem;
	}

	.ag-contact-card {
		padding: 1.8rem 1.2rem;
	}

	.ag-contact-icon {
		width: 4.4rem;
		height: 4.4rem;
		font-size: 1.7rem;
	}

	.ag-contact-actions .ag-btn-solid {
		width: 100%;
	}
}
