@charset "utf-8";
/* CSS Document */
:root {
  /* Color ramps */
  --navy-900: #0b2545;
  --navy-800: #13315c;
  --navy-700: #1b3a6b;
  --navy-600: #234880;

  --blue-100: #eef5fb;
  --blue-200: #d9ebf6;
  --blue-300: #b9d8ee;
  --blue-400: #8fbfe3;
  --blue-500: #5a9fd4;
  --blue-600: #3a82bd;

  --teal-100: #e8f6f5;
  --teal-300: #9fd9d4;
  --teal-500: #2fa89f;
  --teal-600: #1f8a82;
  --teal-700: #176b65;

  --accent-amber: #e8a33a;

  --success-50: #ecfdf5;
  --success-500: #10b981;
  --success-700: #047857;

  --warning-50: #fff7ed;
  --warning-500: #f59e0b;
  --warning-700: #b45309;

  --error-50: #fef2f2;
  --error-500: #ef4444;
  --error-700: #b91c1c;

  --ink-900: #0f1b2d;
  --ink-700: #2c3a50;
  --ink-500: #5b6b82;
  --ink-400: #8595ab;
  --ink-300: #aab8cc;
  --ink-200: #cfd8e6;
  --ink-100: #e6ecf3;
  --ink-50: #f4f7fb;

  --white: #ffffff;

  /* Aliases */
  --primary: var(--navy-800);
  --primary-dark: var(--navy-900);
  --secondary: var(--teal-500);
  --secondary-dark: var(--teal-700);
  --accent: var(--accent-amber);
  --bg: var(--ink-50);
  --surface: var(--white);
  --text: var(--ink-900);
  --text-muted: var(--ink-500);
  --border: var(--ink-200);
  --border-soft: var(--ink-100);

  /* Typography */
  --font-sans: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-display: "Fraunces", "Georgia", serif;

  /* Radius */
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 18px;
  --r-xl: 26px;
  --r-pill: 999px;

  /* Shadows */
  --sh-1: 0 1px 2px rgba(11, 37, 69, 0.06), 0 1px 3px rgba(11, 37, 69, 0.04);
  --sh-2: 0 4px 14px rgba(11, 37, 69, 0.08);
  --sh-3: 0 14px 40px rgba(11, 37, 69, 0.12);
  --sh-glow: 0 10px 30px rgba(47, 168, 159, 0.25);

  /* Layout */
  --container: 1400px;
  --gutter: clamp(16px, 4vw, 32px);

  /* Motion */
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --dur: 0.28s;
}
/*----------------
RESET CSS
-----------------*/
body {
	margin: 0;
	font-family: var(--font-sans);
	font-size: 16px;
	line-height: 26px;
	color: var(--text);
	background: var(--bg);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}

div, ul, h1, h2, h3, h4, h5, li, p, img, form, input, textarea {
	margin: 0;
	padding: 0;
}
header, section, footer, aside, nav, main, article, figure {
	display: block;
}
table, tr, td {border: 0;}
a {
	outline: none;
	color: #333;
	text-decoration: none;
}
a:hover {
	outline: none;
	text-decoration: none;
}
img {border: none; max-width:100%; vertical-align:middle; height:auto;}
li {list-style: none;}
* {box-sizing: border-box;}
.clearall {
	clear: both;
	font-size: 1px;
	line-height: 1px;
	height: 1px;
}
h1, h2, h3, h4 { margin: 0; font-family: var(--font-display); font-weight: 600; line-height: 1.2; letter-spacing: -0.01em; color: var(--primary-dark); text-transform: capitalize;}
p { margin: 0; }


/* ---------- Utilities ---------- */
.container { width: 100%; max-width: var(--container); margin: 0 auto; padding: 0 var(--gutter); }
.section { padding: clamp(56px, 8vw, 104px) 0; float:left; width:100%;}
.section--tight { padding: clamp(40px, 5vw, 64px) 0; }
.section--alt { background: var(--white); }
.eyebrow {
	display: inline-flex; 
	align-items: center; 
	gap: 8px;
	font-size: 12px; 
	font-weight: 600; 
	letter-spacing: 0.14em; 
	text-transform: uppercase;
	color: var(--secondary-dark);
}
.eyebrow::before {
	content: ""; 
	width: 22px; 
	height: 1.5px; 
	background: var(--secondary);
	border-radius: 2px;
}
.lead { font-size: clamp(1.05rem, 1.4vw, 1.2rem); color: var(--text-muted); line-height: 1.7; }
.center { text-align: center; }
.section-head { margin-bottom: clamp(32px, 4vw, 56px); }
.section-head.center { margin-left: auto; margin-right: auto; }
.section-head h2 { font-size: clamp(32px, 3.4vw, 50px); margin-top: 15px;}
.section-head p { margin-top: 16px; }

/* ---------- Buttons ---------- */
.btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 9px;
	padding: 13px 24px;
	border-radius: var(--r-pill);
	font-weight: 600; font-size: 0.95rem;
	transition: transform var(--dur) var(--ease), background var(--dur) var(--ease), box-shadow var(--dur) var(--ease), color var(--dur) var(--ease);
	will-change: transform;
}
.btn:active { transform: translateY(1px); }
.btn--primary {
	background: var(--primary); color: var(--white);
	box-shadow: 0 6px 18px rgba(19, 49, 92, 0.28);
}
.btn--primary:hover { background: var(--primary-dark); transform: translateY(-2px); box-shadow: 0 10px 26px rgba(11, 37, 69, 0.34); }
.btn--secondary {
	background: var(--secondary); color: var(--white);
	box-shadow: var(--sh-glow);
}
.btn--secondary:hover { background: var(--secondary-dark); transform: translateY(-2px); }
.btn--ghost {
	background: transparent; color: var(--primary-dark);
	border: 1.5px solid var(--border);
}
.btn--ghost:hover { border-color: var(--primary); background: var(--blue-100); }
.btn--light {
	background: var(--white); color: var(--primary-dark);
	box-shadow: var(--sh-2);
}
.btn--light:hover { transform: translateY(-2px); box-shadow: var(--sh-3); }
.btn--block { width: 100%; }
.btn--lg { padding: 16px 0; font-size: 16px; width: 280px; }
.btn--sm { padding: 9px 16px; font-size: 0.85rem; }

.link-arrow {
	display: inline-flex; align-items: center; gap: 6px;
	font-weight: 600; color: var(--secondary-dark);
	transition: gap var(--dur) var(--ease), color var(--dur) var(--ease);
}
.link-arrow:hover { gap: 11px; color: var(--secondary); }
.btn img { width: 16px; height: 16px; }


/*-------------------------
CSS FOR TOP LOGO BAR
--------------------------*/
.top-bar {
	float: left;
	width: 100%;
	/* background: #fff; */
	height: 78px;
	margin-top: -78px;
	position: relative;
	top: 78px;
	padding: 12px 0;
	transition: background 0.4s var(--ease), box-shadow 0.4s var(--ease), border-color 0.4s ease;
	border-bottom: 1px solid transparent;
}
.top-sec {
	float: left;
    width: 100%;
    margin-bottom: 78px;
    position: relative;
    z-index: 9;
    inset: 0 0 auto 0;
}
/*----------------
MENU BAR CSS
-----------------*/
.logo{
	float: left;
	max-width: 230px;
	margin: 0 0 0 0;
}
.menu-bar {
	margin: 18px 0 0 0;
    float: right;
}
.menu-bar li {
	float: left;
	position:relative;
}
.menu-bar li a {
	float: left;
	font-size: 15px;
	letter-spacing: 1px;
	color: var(--text);
	padding: 0px 12px;
	transition: opacity .2s;
}

.menu-bar li a:hover, .menu-bar li a.active { opacity:.65;}
.index-bhar{
	float:left;
	width:100%;}
.index-bhar .menu-bar li a{color:#fff;}
.index-bhar .menu-bar li a:hover{opacity:.65;}
.index-bhar .logo{filter: brightness(0) invert(1);}
a.cart-top{
	float: right;
    font-size: 18px;
    line-height: 16px;
    color: #2d2d2d;
    margin-top: 10px;
    background: #fff;
    padding: 10px;
    border-radius: 5px;
    box-shadow: 0 0 5px #d2d2d2;
}

.fixed-nav {
	background: rgba(255, 255, 255, 0.82);
	backdrop-filter: saturate(180%) blur(18px);
	box-shadow: 0 6px 26px rgba(23, 59, 99, 0.05);
	position: fixed;
	z-index: 99999999;
	top: 0;
	-webkit-transition: margin .3s ease-out;
	transition: margin .3s ease-out;
	margin-top: 0;
}
.index-bhar .fixed-nav .menu-bar li a{color: var(--ink);}
.index-bhar .fixed-nav .logo{filter:none;}
.mobilemenu {
    left: 0;
    position: fixed;
    top: 80px;
    background: rgba(255, 255, 255, 1);
    z-index: 3;
    right: 0;
    bottom: 0;
    overflow: scroll;
    display: none;
    border-top: 1px solid #ccc;
}

/* ---------- Hero (full-bleed background) ---------- */
.hero {
	position: relative; overflow: hidden;
	background-color: var(--navy-900);
	background-size: cover;
	background-position: center;
	min-height: clamp(440px, 72vh, 720px);
	display: flex; align-items: center;
	isolation: isolate;
	float:left;
	width:100%;
}
.hero-overlay {
  position: absolute; inset: 0; z-index: -1;
  background:
    linear-gradient(100deg, rgba(11, 37, 69, 0.92) 0%, rgba(19, 49, 92, 0.82) 38%, rgba(19, 49, 92, 0.45) 62%, rgba(11, 37, 69, 0.2) 100%),
    linear-gradient(180deg, rgba(11, 37, 69, 0.25), rgba(11, 37, 69, 0.55));
}
.hero-inner {
  position: relative; z-index: 1;
  display: grid; grid-template-columns: 1fr auto; gap: clamp(24px, 4vw, 48px);
  align-items: center;
  padding: clamp(72px, 11vw, 172px) 0;
}
.hero-copy { max-width: 710px; }
.hero .eyebrow { color: var(--teal-300); }
.hero .eyebrow::before { background: var(--teal-300); }
.hero h1 {
	font-size: clamp(40px, 5vw, 84px);
	line-height: clamp(48px, 5vw, 92px);
	margin-top: 20px;
	color: #fff;
}
.hero h1 em { font-style: italic; color: var(--teal-300); }
.hero p {     
	margin-top: 22px;
    font-size: clamp(15px, 2vw, 17px);
    color: rgba(255, 255, 255, 0.85);
    line-height: clamp(24px, 2vw, 28px);
}
.hero-cta { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.hero-trust {
  display: flex; flex-wrap: wrap; gap: 24px; margin-top: 38px;
  padding-top: 26px; border-top: 1px solid rgba(255, 255, 255, 0.18);
}
.trust-item { display: flex; align-items: center; gap: 9px; font-size: 0.86rem; color: rgba(255, 255, 255, 0.88); font-weight: 500; }
.trust-item img { width: 24px; height: 24px; }

.hero-badge {
  position: relative; z-index: 1;
  background: rgba(255, 255, 255, 0.96); border-radius: var(--r-lg); padding: 18px 22px;
  box-shadow: var(--sh-3); display: flex; align-items: center; gap: 14px;
  max-width: 280px; backdrop-filter: blur(6px);
}
.hero-badge .dot { width: 42px; height: 42px; border-radius: var(--r-pill); background: var(--teal-100); display: grid; place-items: center; color: var(--secondary-dark); flex-shrink: 0; }
.hero-badge .dot svg { width: 20px; height: 20px; }
.hero-badge strong { display: block; font-size: 0.94rem; color: var(--primary-dark); }
.hero-badge span { font-size: 0.8rem; color: var(--text-muted); }

/* ---------- Marquee / strip ---------- */
.strip {
	background: var(--primary-dark); 
	color: #fff;
	padding: 15px 0; 
	overflow: hidden;
	float:left; 
	width:100%;
}
.strip-track {
  display: flex; gap: 48px; white-space: nowrap; width: max-content;
  animation: scroll-x 28s linear infinite;
}
.strip-track span { display: inline-flex; align-items: center; gap: 10px; font-size: 0.84rem; letter-spacing: 0.06em; opacity: 0.9; }
.strip-track span::before { content: "✦"; color: var(--secondary); }
@keyframes scroll-x { to { transform: translateX(-50%); } }

/* ---------- Category cards ---------- */
.cat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.cat-card {
	position: relative; border-radius: var(--r-lg); overflow: hidden;
	background: #fff; box-shadow: var(--sh-1);
	border: 1px solid var(--border-soft);
	transition: transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
	display: flex; flex-direction: column;
}
.cat-card:hover { transform: translateY(-4px); box-shadow: var(--sh-3); }
.cat-card .media { aspect-ratio: 16 / 11; overflow: hidden; }
.cat-card .media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s var(--ease); }
.cat-card:hover .media img { transform: scale(1.06); }
.cat-card .body { padding: 22px 24px 26px; }
.cat-card .body h3 { font-size: clamp(18px, 1.4vw, 20px); }
.cat-card .body p { 
	color: var(--text-muted);
    margin-top: 10px;
    font-size: clamp(15px, 2vw, 16px);
    line-height: clamp(24px, 2vw, 26px);
}
.cat-card .body .link-arrow { margin-top: 16px; }

/* ---------- Product cards ---------- */
.product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.other-products .product-grid{grid-template-columns: repeat(3, 1fr)}
.product-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
.card {
  background: #fff; border-radius: var(--r-lg); overflow: hidden;
  border: 1px solid var(--border-soft); box-shadow: var(--sh-1);
  display: flex; flex-direction: column;
  transition: transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease);
  position: relative;
}
.card:hover { transform: translateY(-5px); box-shadow: var(--sh-3); border-color: var(--blue-200); }
.card-media {
  position: relative; aspect-ratio: 1 / 1; overflow: hidden; background: var(--ink-50);
}
.card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s var(--ease); }
.card:hover .card-media img { transform: scale(1.05); }
.card-tag {
  position: absolute; top: 12px; left: 12px;
  background: var(--white); color: var(--primary-dark);
  font-size: 11px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase;
  padding: 5px 10px; border-radius: var(--r-pill); box-shadow: var(--sh-1);
}
.card-tag.tag-new { background: var(--teal-500); color: #fff; }
.card-tag.tag-sale { background: var(--accent); color: #fff; }
.card-fav {
  position: absolute; top: 10px; right: 10px;
  width: 34px; height: 34px; border-radius: var(--r-pill);
  background: rgba(255,255,255,0.9); display: grid; place-items: center;
  color: var(--ink-500); transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}
.card-fav:hover { color: var(--error-500); background: #fff; }
.card-fav svg { width: 18px; height: 18px; }
.card-body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.card-cat { font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--secondary-dark); }
.card-title {     
	font-size: clamp(18px, 1.4vw, 20px);
    font-family: var(--font-display);
    color: var(--primary-dark);
    line-height: clamp(22px, 2vw, 28px); 
}
.card-title a:hover { color: var(--primary); }
.card-rating { display: flex; align-items: center; gap: 6px; font-size: 0.82rem; color: var(--text-muted); }
.stars { display: inline-flex; gap: 1px; color: var(--accent); }
.stars svg { width: 14px; height: 14px; }
.stars .empty { color: var(--ink-200); }
.card-foot { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 6px; }
.price {     
	font-size: clamp(16px, 1.4vw, 18px);
	font-weight: 500;
	color: var(--primary-dark);
}
.price .old { font-size: 0.85rem; font-weight: 400; color: var(--ink-400); text-decoration: line-through; margin-left: 6px; }
.quick-add {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 9px 14px; border-radius: var(--r-pill);
  background: var(--primary); color: #fff; font-size: 0.82rem; font-weight: 600;
  transition: background var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.quick-add:hover { background: var(--secondary); transform: translateY(-2px); }
.quick-add img { width: 14px; height: 14px; }

/* ---------- Why choose us ---------- */
.why { background: linear-gradient(180deg, var(--white), var(--blue-100)); }
.why-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.why-card {
	background: #fff; border-radius: var(--r-lg); padding: 28px 24px;
	border: 1px solid var(--border-soft); box-shadow: var(--sh-1);
	transition: transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.why-card:hover { transform: translateY(-4px); box-shadow: var(--sh-2); }
.why-ic {
	width: 52px; height: 52px; border-radius: 14px;
	background: var(--teal-100); color: var(--secondary-dark);
	display: grid; place-items: center; margin-bottom: 18px;
}
.why-ic img {width: 35px; height: 35px; }
.why-card h3 { font-size: clamp(18px, 1.4vw, 20px);}
.why-card p { margin-top: 10px; color: var(--text-muted); font-size: clamp(15px, 2vw, 16px); line-height: clamp(24px, 2vw, 26px); }

/* ---------- About / brand story ---------- */
.about-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(36px, 5vw, 72px); align-items: center; }
.about-media { position: relative; }
.about-media .img {
  border-radius: var(--r-xl); overflow: hidden; box-shadow: var(--sh-3); aspect-ratio: 5 / 4;
}
.about-media .img img { width: 100%; height: 100%; object-fit: cover; }
.about-stat strong { display: block; font-family: var(--font-display); font-size: 2rem; color: var(--secondary-dark); line-height: 1; }
.about-stat span { font-size: 0.78rem; color: var(--text-muted); letter-spacing: 0.04em; text-transform: uppercase; }
.about-copy h2 { font-size: clamp(32px, 3.4vw, 50px); margin-top: 14px; }
.about-copy p { margin-top: 18px; }
.about-list { display: grid; gap: 14px; margin-top: 26px; }
.about-list li { display: flex; gap: 12px; align-items: flex-start; }
.about-list .tick { width: 22px; height: 22px; border-radius: var(--r-pill); background: var(--teal-100); color: var(--secondary-dark); display: grid; place-items: center; flex-shrink: 0; margin-top: 2px; }
.about-list .tick svg { width: 13px; height: 13px; }
.about-list strong { display: block; color: var(--primary-dark); font-weight: 600; }
.about-list span { color: var(--text-muted); font-size: 0.92rem; }

/* ---------- FAQ ---------- */
.faq-wrap { max-width: 760px; margin: 0 auto; }
.faq-item { border-bottom: 1px solid var(--border-soft); cursor:pointer; }
.faq-q {
	width: 100%; 
	text-align: left; 
	padding: 22px 0;
	display: flex; 
	align-items: center; 
	justify-content: space-between; 
	gap: 16px;
	font-family: var(--font-sans); 
	font-weight: 600; 
	font-size: clamp(15px, 1vw, 16px); 
	color: var(--primary-dark);
	border: none;
	background: none;
	cursor:pointer;

}
.faq-q .pm {
  width: 30px; height: 30px; border-radius: var(--r-pill); border: 1.5px solid var(--border);
  display: grid; place-items: center; flex-shrink: 0; color: var(--secondary-dark);
  transition: transform var(--dur) var(--ease), background var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.faq-q .pm svg { width: 16px; height: 16px; }
.faq-item.open .faq-q .pm { transform: rotate(45deg); background: var(--secondary); color: #fff; border-color: var(--secondary); }
.faq-a {
  max-height: 0; overflow: hidden;
  transition: max-height var(--dur) var(--ease);
}
.faq-a-inner { padding: 0 0 22px; color: var(--text-muted); font-size: 0.96rem; line-height: 1.7; }

/* ---------- Breadcrumb ---------- */
.crumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 0.85rem; color: var(--text-muted); padding: 18px 0; }
.crumbs a:hover { color: var(--primary-dark); }
.crumbs .sep { color: var(--ink-300); }
.crumbs .current { color: var(--primary-dark); font-weight: 500; }

/* ---------- Page header ---------- */
.page-head {     
	background: var(--blue-100);
    padding: 30px 0;
    float: left;
    width: 100%; 
}
.page-head h1 { font-size: clamp(1.9rem, 3.6vw, 2.8rem); margin-top: 8px; }
.page-head p { margin-top: 12px; max-width: 560px; color: var(--text-muted); }

/* ---------- PDP ---------- */
.pdp { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(32px, 5vw, 64px); align-items: start; }
.gallery { position: sticky; top: 92px; }
.gallery-main {
  border-radius: var(--r-xl); overflow: hidden; background: var(--ink-50);
  border: 1px solid var(--border-soft); aspect-ratio: 1 / 1; box-shadow: var(--sh-2);
}
.gallery-main img { width: 100%; height: 100%; object-fit: cover; }
.gallery-thumbs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 14px; }
.gallery-thumb {
  border-radius: var(--r-md); overflow: hidden; border: 1.5px solid var(--border-soft);
  aspect-ratio: 1 / 1; cursor: pointer; transition: border-color var(--dur) var(--ease);
}
.gallery-thumb.active { border-color: var(--secondary); }
.gallery-thumb img { width: 100%; height: 100%; object-fit: cover; }

.pdp-info { padding-top: 4px; }
.pdp-info .cat-line { display: flex; align-items: center; gap: 10px; }
.pdp-info h1 { font-size: clamp(28px, 2vw, 36px); margin-top: 10px;}
.pdp-info h1 span{     
	font-family: var(--font-sans);
    font-size: clamp(15px, 2vw, 16px);
    line-height: clamp(24px, 2vw, 26px);
}
.pdp-rating { display: flex; align-items: center; gap: 10px; margin-top: 12px; font-size: 0.9rem; color: var(--text-muted); }
.pdp-rating .stars svg { width: 16px; height: 16px; }
.pdp-price { display: flex; align-items: baseline; gap: 12px; margin-top: 20px; }
.pdp-price .now { font-family: var(--font-display); font-size: 2rem; font-weight: 700; color: var(--primary-dark); }
.pdp-price .old { font-size: 1.1rem; color: var(--ink-400); text-decoration: line-through; }
.pdp-price .save { background: var(--success-50); color: var(--success-700); font-size: 0.78rem; font-weight: 600; padding: 4px 10px; border-radius: var(--r-pill); }
.pdp-desc { margin-top: 18px; color: var(--ink-700); }

.purchase {
	margin-top: 20px;
	background: #fff;
	border: 1px solid var(--border-soft);
	border-radius: var(--r-lg);
	padding: 24px;
	box-shadow: var(--sh-2);
	display: inline-block;
	width: 100%;
}
.purchase h3 { font-family: var(--font-sans); font-size: 1rem; font-weight: 600; margin-bottom: 14px; }
.pkg-options { display: grid; gap: 10px;  margin-bottom: 22px;}
.pkg {
  display: flex; align-items: center; gap: 14px; padding: 14px 16px;
  border: 1.5px solid var(--border); border-radius: var(--r-md); cursor: pointer;
  transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease);
}
.pkg:hover { border-color: var(--blue-300); }
.pkg.active { border-color: var(--secondary); background: var(--teal-100); }
.pkg .radio { width: 18px; height: 18px; border-radius: 50%; border: 2px solid var(--border); flex-shrink: 0; position: relative; }
.pkg.active .radio { border-color: var(--secondary); }
.pkg.active .radio::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: var(--secondary); }
.pkg .pkg-title { color: var(--primary-dark); font-family: var(--font-display); font-size: 18px; }
.pkg .pkg-sub { font-size: 0.82rem; color: var(--text-muted); }
.pkg .pkg-price { margin-left: auto; font-weight: 700; color: var(--primary-dark); font-family: var(--font-display); }

.qty-row { display: flex; align-items: center; gap: 16px; margin-top: 22px; }
.qty {
  display: inline-flex; align-items: center; border: 1.5px solid var(--border); border-radius: var(--r-pill); overflow: hidden;
}
.qty button { width: 40px; height: 44px; display: grid; place-items: center; color: var(--primary-dark); transition: background var(--dur) var(--ease); }
.qty button:hover { background: var(--blue-100); }
.qty button svg { width: 16px; height: 16px; }
.qty input { width: 44px; height: 44px; text-align: center; border: 0; background: transparent; font-weight: 600; color: var(--primary-dark); }
.qty input:focus { outline: none; }
.purchase-actions { 
	display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    align-items: center; 
	width: 100%;
}
.ship-note {
  margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--border-soft);
  display: grid; gap: 10px;
}
.ship-note .row { display: flex; gap: 10px; align-items: center; font-size: 0.86rem; color: var(--ink-700); }
.ship-note .row img { width: 22px; height: 22px; color: var(--secondary); flex-shrink: 0; }



/* ---------- Footer ---------- */
.site-footer { background: var(--primary-dark); color: rgba(255,255,255,0.78); padding: 64px 0 28px; float:left; width:100%; }
.footer-grid { display: grid; grid-template-columns: 2fr .6fr 1.5fr; gap: 40px;}
.site-footer .brand { max-width: 230px; display: inline-block; }
.site-footer p { font-size: 14px; margin-top: 15px; }
.site-footer p a{ color:#fff; display: inline-block; padding: 0;}
.footer-col h4 { 
	color: #fff;
    font-family: var(--font-sans);
    font-size: 14px;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    margin-bottom: 18px;
}
.footer-col li{font-size: 14px;}
.footer-col a { display: block; padding: 6px 0; font-size: 14px; transition: color var(--dur) var(--ease); color: #fff; }
.footer-col a:hover { color: var(--secondary); }
.footer-bottom {
  margin-top: 48px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,0.12);
  display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap;
  font-size: 0.82rem; color: rgba(255,255,255,0.6);
}
.pay-row { display: flex; gap: 8px; }
.pay-chip {
  background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.14);
  border-radius: 6px; padding: 4px 10px; font-size: 0.72rem; font-weight: 600; color: #fff;
}

/*-============================================
CSS FOR SHOP PAGE
============================================-*/
.shop-sec-1{
	float: left;
    width: 100%;
	background:#fff;
    padding: 40px 0 50px 0;
    }
.shop-sec-1 .s2-price-div{margin-top: 0;}
.shops2-hding{background:none;margin:0;}
.s1-p2{
	font-size: clamp(16px, 1.3vw, 17px);
	color: var(--muted);
	line-height: clamp(26px, 2vw, 28px);
	font-weight: 400;
	text-align: left;
	float: left;
	width: 100%;
	margin: 20px 0;
    }
.shop-prc{
	font-weight:bold;
	font-size:40px;
	line-height:46px;
	text-align:left;
	margin:20px 0 0 0;
    }
.shop-line{
	margin:15px 0;
	height:1px;
	background:#ccc;
    }
.txt-box {
    float: left;
    width: 100%;
}
.pric-box {
    float: right;
    width: 100%;
    /* border-left: 1px solid #f5f5f5; */
    padding-left: 0;
}
.pric-box .s1-btn-bx{ margin-top:10px;}
/*-============================================
CSS FOR ABOUT PAGE
============================================-*/
.in-pg-cont .s1-p1{
	font-size: 45px;
    line-height: 50px;
}
.abt-sec-1{
	float: left;
    width: 100%;
    padding: 45px 0 70px;
}
.abt-s1-lft{
	float: left;
    width: 550px;
	text-align:left;
}
.abt-s1-lft .s4-p1{
    font-size: 23px;
    color: #2d2d2d;
}
.pad-3{padding:5px 0 12px;}
.abt-s1-ul{
	float: left;
    width: 100%;
	margin:30px 0 38px;
}
.abt-s1-ul li {
    float: left;
    background: url(../images/s2-line.png) no-repeat right bottom;
	text-align:center;
	padding:0 30px;
}
.abt-s1-ul li:last-child {background: none;}
.abt-s1-ul li:nth-child(1){padding-left:0;}
.abt-s1-ic-1{
	display: inline-block;
    max-width: 100%;
    margin-bottom: 5px;
	height: 44px;
}
.abt-s1-p1 {
    display: inline-block;
    font-size: 16px;
    line-height:18px;
    color: #2d2d2d;
}
.abt-s1-img{
	position:absolute;
	right:0;
	top:0;
}
/*-------------------------
CSS FOR SECTION 2
--------------------------*/
.abt-sec-2{
	float: left;
    width: 100%;
    padding: 50px 0;
	background:#f1f5f9;
}
.abt-s2-ul{
	float: left;
    width: 100%;
	padding:35px 95px 0;
}
.abt-s2-ul li{
	float: left;
    width: 300px;
	border:1px solid #cccccc;
	background:#fff;
	padding-bottom:20px;
}
.abt-s2-ul li:nth-child(2){margin:0 35px;}
.abt-s2-img-1{
	display:inline-block;
	max-width:100%;
	vertical-align:middle;
}
.abt-s2-p1{
	float: left;
    width: 100%;
    font-size: 25px;
    line-height: 28px;
    color: #0d5896;
    font-weight: 500;
}
.pad-4{padding:15px 5px 15px;}
.abt-s2-p-minht{
	min-height:216px;
	margin-bottom:15px;
}
.abt-s2-p2{
	float: left;
    width: 100%;
    font-size: 16px;
    line-height: 20px;
    color: #636363;
    font-weight: 400;
	padding:5px 5px 0;
}
.abt-s2-ul li .s4-p2{padding:0 11px;}
/*-------------------------
CSS FOR SECTION 3
--------------------------*/
.abt-sec-3{
	float: left;
    width: 100%;
    padding: 50px 0 90px;
}
.abt-sec-3 .shop-btn{margin-top:55px;}
.abt-s3-lft {
    float: left;
    width: 609px;
    text-align: left;
}
.abt-s3-lft .s4-p2{width:90%;}
.abt-s3-img {
    position: absolute;
    right: 70px;
    top: 0;
}
/*-============================================
CSS FOR FAQ PAGE
============================================-*/
.faq-block{
	float: left;
    width: 100%;
	padding:10px 70px 0;
}
.faq-block .acdn-content p{
	font-size: 20px;
    line-height: 28px;
    color: #1e1e1e;
	padding:2px 0 20px;
}
.faq-block .acdn-content {padding: 0 20px;}
.faq-block .accordion {
    font-size: 22px;
    line-height: 28px;
    color: #014979;
    border-top:none;
	padding: 12px 50px 12px 20px;
	background:#f0f0f0;
	margin:9px 0;
}
.faq-block .acdn-heading.accordion-open {border-bottom: none;}
.faq-block .accordion:after {
    background: url(../images/faq-plus-new.png) no-repeat right center;
	height: 21px;
    width: 22px;
	margin-top: -10px;
}
/*-============================================
CSS FOR LAB PAGE
============================================-*/
.lab-sec-1 {
    float: left;
    width: 100%;
    padding:40px 0 60px;
}
.lab-row{
	float:left;
	width:100%;
	margin:30px 0 0;
}
.lab-btl-300{
	display:inline-block;
	max-width:100%;
	vertical-align:middle;
}
.lab-box{
	display:inline-block;
	width:540px;
	margin:0 25px;
	vertical-align:middle;
}
.lab-ul{
	float:left;
	width:100%;
	margin:20px 0 0;
}
.lab-ul li{
	display:inline-block;
	padding:0 25px;
	background: url(../images/s2-line.png) no-repeat right center;
}
.lab-ul li:last-child{background:none;}
.lab-s1-ic{
	display:inline-block;
	max-width:100%;
}
.lab-s1-p1{
	display:inline-block;
    color: #2d2d2d;
    font-size: 18px;
    line-height: 23px;
    font-weight:400;
    text-transform: uppercase;
}
.lab-ul li .s4-p2{
	color:#0d5896;
	font-weight:normal;
	line-height:23px;
	float:none;
	display:inline-block;
}
.lab-row .lab-300-dtls{
	vertical-align:middle;
	margin:0;
}
.lab-box .s4-p1{
	color:#154369;
	font-weight:bold;
}
.lab-hr{
	float:left;
	width:100%;
	height:1px;
	background:#e1e1e1;
	border:none;
	margin:50px 0 15px;
}
/*-============================================
CSS FOR REVEW PAGE
============================================-*/
.revw-container{
	float:left;
	width:100%;
	padding:30px 70px 0;
}
.revw-block{
	float:left;
	width:100%;
}
.revw-lft{
	float:left;
	width:300px;
	position:relative;
	padding:0 0 0 95px;
	text-align:left;
	background: url(../images/revw-lft-line.png) no-repeat right center;
}
.r-y-stars{
	float:left;
	max-width:100%;
	margin:5px 0 7px;
}
.marg-3{margin:5px 0;}
.revw-right{
	float:left;
	width:698px;
	position:relative;
	padding-left:42px;
	margin-left:28px;
	text-align:left;
}
.blue-clr{color:#154369;}
.marg-4{margin-bottom:4px;}
.rev-coat{
	position:absolute;
	left:0;
	top:3px;
}
.revw-container .lab-hr {margin: 30px 0;}
/*-============================================
CSS FOR CONTACT PAGE
============================================-*/
.cont-sec-1{
	float:left;
	width:100%;
	padding:60px 0;
}
.cont-box{
	float: left;
    width: 100%;
}
.cont-lft{
	float: left;
    width: 100%;
    text-align: left;
}
.cont-right{
	float: right;
    width: 480px;
    padding: 20px 0px 0;
}
.rgt-cont-img{
	border-radius:15px;
	}
.cont-p1{
	    float: left;
    width: 100%;
    font-size: 40px;
    line-height: 40px;
    font-weight: 500;
    color: #000000;
    margin-bottom: 12px;
    text-align: center;
}
.cont-ul{
	float: left;
    width: 100%;
    margin-top: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
}

.cont-ul li{
	float: left;
	width: 100%;
	position: relative;
	line-height: 26px;
	background: #fff;
	border: 1px solid var(--border-soft);
	border-radius: var(--r-lg);
	padding: 26px;
	box-shadow: var(--sh-2);
}
.cont-ul li .s4-p2{
	font-size: 22px;
	line-height: 30px;
	margin-bottom: 5px;
	display: flex;
	color: var(--primary-dark);
	font-family: var(--font-display);
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.cont-ic-1{
    filter: grayscale(1);
}
p.s4-p1 {
        float: left;
    width: 100%;
    font-size: 16px;
    line-height: 26px;
}
.cont-frm-box{
	float: left;
    width: 100%;
}
.cont-input-box{
	float: left;
    width: 100%;
    height: 50px;
    text-align: left;
    background-color: #ffffff;
    outline: none;
    margin: 15px 0;
    position: relative;
}
.cont-hlf{width: 46%;}
.cont-frm-ic-1 {
    position: absolute;
    left: 8px;
    top: 50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
}
.cont-field-all, .cont-input-box textarea {
    float: left;
    width: 100%;
	border:none;
    border-bottom: 1px solid #24334a;
    outline: none;
    height: 100%;
    color: #333333;
    font-size: 18px;
    font-weight: 400;
    padding: 0 0px 0 49px;
}
.cont-btn {
    -webkit-appearance: none;
    border: none;
    outline: none;
    margin: 30px 0 0;
    padding: 0;
    background: #547398;
	color: #fff;
    font-size: 24px;
	line-height:56px;
	padding:0 27px;
	float:left;
	border-radius:30px;
	 cursor:pointer;
}
/*===========CART_DRAWER_PAGE============*/
.drawer {
	width: 300px;
	right: 0;
	border-left: 1px solid #e5e5e5;

	-ms-transform: translateX(300px);
	-webkit-transform: translateX(300px);
	transform: translateX(300px);

	position: fixed;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	top: 0;
	bottom: 0;
	padding: 0 10px 10px;
	z-index: 22;
	color: #000000;
	background-color: #ffffff;
	transition: all ease 0.5s;
	}
.cart_open .drawer{
	-ms-transform: translateX(0);
	-webkit-transform: translateX(0);
	transform: translateX(0);
	}
.shifter_page{transition: all ease 0.5s;}
.cart_open .shifter_page{
	-ms-transform: translateX(-300px);
	-webkit-transform: translateX(-300px);
	transform: translateX(-300px);
}	
.drawer__header {
	float:left;
	height: 70px;
	width: 100%;
	padding-top:30px;
	border-bottom: 1px solid #e5e5e5;
	}
.table-cell {
	float:left;
	width: 50%;
	font-size:18px;
	color:#2d2d2d;
	text-align:left;
	}
.cart-icon{
	float:left;
	margin:3px 10px 0 0;
	}
.cross-icon{
	float:right;
	cursor:pointer;
	width:16px;
	margin-top:4px;
	}
.drawer_row{
	float:left;
	width:100%;
	padding:20px 0 20px;
	border-bottom:1px solid #d0d0d0;
	}
.drawer-prod-lft{
	float:left;
	width:60px;
	height:60px;
	border:1px solid #d8d8d8;
	border-radius:5px;
	text-align:center;
	background:#f9f9f9;
	position:relative;
	}
.drawer-prod{
	display:inline-block;
	vertical-align:middle;
	margin-top:13px;
	max-width:80%;
	}
.drawer-prod-lft span{
	position:absolute;
	width:20px;
	height:20px;
	right:-10px;
	top:-10px;
	background:#104775;
	border-radius:50%;
	text-align:center;
	font-size:16px;
	color:#ffffff;
	line-height:17px;
	}
.drawer-prod-rght{
	float:right;
	width:200px;
	text-align:left;
	}
.drwer-prod-name{
	float:left;
	width:100%;
	font-size:14px;
	line-height:16px;
	color:#1e1e1e;
	font-weight:600;
	}
.drwer-txt1{
	float:left;
	width:100%;
	font-size:13px;
	line-height:18px;
	color:#1e1e1e;
	font-weight:400;
	}
.drwer-txt2{
	float:left;
	width:100%;
	font-size:16px;
	line-height:20px;
	color:#104775;
	font-weight:500;
	}
.drwer-txt2 a{
	float:right;
	font-size:14px;
	color:#959595;
	font-weight:400;
	}
.sub-total{
	float:left;
	width:100%;
	font-size:19px;
	line-height:27px;
	color:#1e1e1e;
	font-weight:600;
	margin-top:10px;
	text-align:left;
	}
.sub-total span{float:right;}
a.chk-btn{
    float: left;
    width: 100%;
    background: #24334a;
    color: #ffffff;
    font-size: 21px;
	line-height:21px;
    text-decoration: none;
    padding: 18px 0;
	text-align:center;
	border-radius:5px;
	margin-top:20px;
	}
a.chk-btn img{
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px;
	margin-top:-3px;
	}
.cards-img{
	display:inline-block;
	vertical-align:middle;
	margin-top:10px;
	max-width:100%;
}
.qsn-popup{
	position:absolute;
	right:8px;
	top:16px;
	background:#0d5896;
	color:#fff;
	text-align:center;
	border-radius:50%;
	width:20px;
	font-size:14px;
	height:20px;
	}
.qsn-popup a{ color:#fff;}
.toltip-content{
	position:absolute;
	right:-30px;
	width:500px;
	top:55px;
	background:#0d3353;
	z-index:99;
	padding:12px;
	color:#fff;
	border-radius:5px;
	text-align:left;
	font-size:14px;
	font-weight:400;
	line-height:20px;
	letter-spacing:0.5px;
	box-shadow: 0px 0 25px -5px rgba(0,0,0,0.5);
	}
.toltip-content:after{
	content:'';
	position:absolute;
	top:-11px;
	right:40px;
	border-left: 11px solid transparent;
	border-right: 11px solid transparent;
	border-bottom: 11px solid #0d3353;
	}
.close-ttp{
	position:absolute;
	right:0px;
	top:0;
	width:20px;
	height:20px;
	background:#0d5896;
	border-radius:0 5px 0 5px;
	cursor:pointer;
	line-height:20px;
	text-align:center;
	font-size:10px;
	color:#fff;
	font-family:Arial, Helvetica, sans-serif;
}
/*================checkout_section===============*/
.checkout_section{
	float:left;
	width:100%;
	padding:50px 0;
	background:#ffffff;
	}
.chk-container-box{
	display:inline-block;
	vertical-align:middle;
	width:100%;
	max-width:1030px;
	}
.chk-left{
	float:left;
	width:62%;
	}
.steps-chk{
	float:left;
	width:50%;
	text-align:center;
	border:1px solid #d7d7d7;
	font-size:20px;
	line-height:20px;
	color:#1e1e1e;
	font-weight:400;
	background:#f6f6f6;
	padding:15px 0;
	border-radius:5px 5px 0 0;
	}
.steps-chk.actv{
	background:#0d5896;
	color:#fff;
	font-weight:500;
	}
.frmBox {
	float: left;
	width: 100%;
	padding:25px 24px;
	border:1px solid #d7d7d7;
	border-radius:0 0 5px 5px;
	text-align:left;
	border-top:none;
	}
.input-box {
	float: left;
	width: 100%;
	height: 44px;
	border: 1px solid #cfcfcf;
	text-align: left;
	padding: 0 0px 0 40px;
	border-radius: 3px;
	background-color: #ffffff;
	outline: none;
	margin:7px 0;
	position: relative;
	}
.input-box.hlf {width: 48%;}
.input-box.fr {float: right;}
.input-box.payfld {padding:0 0 0 15px;}
.fldicon {
	position: absolute;
	left: 12px;
	top: 12px;
	}
.field-all {
	float: left;
	width: 100%;
	border: none;
	outline: none;
	height: 100%;
	color: #000;
	font-size: 16px;
	padding: 0 10px 0 5px;
	font-family: inherit;
	border-radius:0 3px 3px 0;
	}
.dwn-arw {
	position: absolute;
	right: 4px;
	top: 0px;
	}
.input-box select {
	-webkit-appearance: none;
	background: url(../images/dwn-arw.jpg) no-repeat right center;
	padding: 3px 42px 0 5px;
	}
a.continue-btn{
	float:left;
	width:355px;
	max-width:100%;
	font-size: 22px;
    line-height: 50px;
    color: #24334a;
	margin-top:25px;
    letter-spacing: 1px;
    border: 2px solid #24334a;
    border-radius: 5px;
    text-align: center;
    font-weight: 500;
    padding-bottom: 3px;
    position: relative;
    transition: all ease 0.2s;
	}
a.continue-btn i {
    margin: -1px 0 0 9px;
    vertical-align: middle;
    font-size: 13px;
	}
a.continue-btn:hover{
	color:#fff;
	background:#24334a;
	transition:all ease 0.2s;
	}
.cvv-img{
	float:left;
	margin:10px;
	}
/*==================*/
.chk-right{
	float:right;
	width:36%;
	background:#f7f7f7;
	padding:15px;
	}
.order-smry-hdng{
	float:left;
	width:100%;
	font-size:23px;
	line-height:26px;
	color:#104775;
	font-weight:500;
	padding-bottom:15px;
	border-bottom:1px solid #d0d0d0;
	text-align:left;
	}
.prc-p1{
	float:left;
	width:75%;
	text-align:left;
	font-size:18px;
	line-height:24px;
	color:#1e1e1e;
	margin-top:20px;
	}
.prc-p1 span{ 
	color:#4e4e4e;
	font-size:16px;
	font-weight:400;
	}
.prc-p2{
	float:right;
	width:25%;
	text-align:right;
	font-size:18px;
	line-height:24px;
	color:#1e1e1e;
	margin-top:20px;
	}
.rvw-hr {
    float: left;
    width: 100%;
    height: 1px;
    border: none;
    background: #d0d0d0;
	margin-top:20px;
	margin-bottom:0;
	}
.mrgn-10{ margin-top:12px;}
/*================Payment-section===========*/
.frmBox2{padding:20px 30px;	}
.fieldToggle {
	display:inline-block;
	vertical-align:middle;
    color: #363636;
    font-size: 18px;
    line-height: 22px;
    margin:5px 0;
    cursor: pointer;
    padding-left: 30px;
    position: relative;
	text-align:left;
	}
.fieldToggle input[type=checkbox]{
	position:absolute;
	opacity:0;
	}
.fieldToggle input[type=checkbox] + span,
.protectionHeading label input[type=checkbox] + span{
	display:inline-block;
	vertical-align:middle;
	margin-right:5px;
	width:18px;
	height:18px;
	border:1px solid #808080;
	border-radius:2px;
	position:relative;
	}
.fieldToggle input[type=checkbox] + span{position:absolute; left:0; top:3px;}
.fieldToggle input[type=checkbox]:checked + span:after{
	position:absolute;
	content:'';
	width:13px;
	height:13px;
	background:url(../images/tik-blk.png) no-repeat center center;
	background-size:100%;
	left:1px;
	top:1px;
	}
a.whats-dis {
    float: left;
    color: #257d20;
    font-size: 19px;
    margin: 17px 0 0 20px;
    text-decoration: underline;
}
.card-accept {
    float: left;
    width: 100%;
    margin: 10px 0;
    color: #2d2d2d;
    font-size: 16px;
    text-align: left;
}
.card-accept img {
    display: inline-block;
    vertical-align: middle;
}
/*****************************/
/*TERMS- PRIVACY*/

.tems_bg {
	float: left;
	width: 100%;
	padding: 40px 0;
}
.trm-bx {
	width: 100%;
    float: left;
    text-align: left;
    font-size: 15px;
    line-height: 25px;
}
.trm-bx img{ max-width:600px;}
.trm-bx h1 {
	line-height: 30px;
    color: #000000;
    margin: 0;
    padding: 0px 0 10px;
    font-size: 22px;
    float: left;
    width: 100%;
    margin-top: 0px;
    margin-bottom: 20px;
    font-weight: 700;
    border-bottom: 5px solid #000000;
}
.trm-bx h3 {
	line-height: 28px;
	text-align: left;
	font-size: 24px;
	float: left;
	width: 100%;
	margin: 0px 0 15px;
	color: #000;
	font-weight: 500;
}
.trm-bx li {
	font-size: 16px;
    line-height: 24px;
    float: left;
    width: 100%;
    list-style: decimal;
}
.trm-bx ol li {list-style: lower-roman;}
.trm-bx li ol li {list-style: lower-alpha;}
.trm-bx strong {text-transform: capitalize;}
.trm-bx span {
	text-transform: capitalize;
    display: block;
    font-weight: 700;
    margin-bottom: 5px;
}
.trm-bx p {
	font-size: 16px;
	line-height: 24px;
	float: left;
	width: 100%;
	margin-bottom: 10px;
	font-weight: 400;
}
.trm-bx h4, .trm-bx h5 {
	font-size: 22px;
    float: left;
    width: 100%;
    margin: 0px 0 10px;
    font-weight: 500;
    line-height: 30px;
}
.ingr-lst h4 {text-align: center;}
.ingr-lst img {
    display: block;
    margin: 0 auto 10px;
    max-width: 630px;
    width: 100%;
}
.trm-bx h5 {
	font-size: 20px;
	font-weight: 500;
}
.privacy-list {padding: 0 0 0 30px;}
.privacy-list li {font-weight: bold;}
.privacy-list li p {
	font-weight: normal;
	margin-top: 10px;
}
.mrg-tp {
	margin: 15px 0 !important;
	float: left;
	width: 100%
}
.trm-txt {
	float: left;
	width: 100%;
	background: #fff;
	padding: 20px 20px
}
.disclr-bx {
	border: 2px solid #000;
	padding: 10px;
	font-weight: 500;
	float: left;
	width: 100%;
	margin: 0;
}
.disclr-bx p {
	margin-bottom: 0;
	font-weight: bold;
}
.trm-bx ol, .trm-bx ul {
	margin-bottom: 20px;
    float: left;
    width: 100%;
    font-weight: 400;
    padding: 0 20px;
    display: flex;
    flex-wrap: wrap;
    row-gap: 10px;
}
.trm-bx .disclmr {width: 100% !important;}
.thank-pg {
        float: left;
    width: 100%;
    text-align: center;
    padding: 30px 0
}
.thank-pg .s1-p2{
font-size: 18px;
    line-height: 28px;
    text-align: center;
    float: left;
    width: 100%;
    margin: 5px 0
}
.thank-hdg {
    float: left;
    width: 100%;
    font-size: 25px;
    margin: 10px 0;
}
.trm-bx table td, .trm-bx table th {
    padding: 14px;
    border: 1px solid #ccc;
}
.trm-bx table {
    float: left;
    width: 100%;
    border-collapse: collapse;
}


/*********************************/
.age-pop-overlay {
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 9999;
	left: 0;
	top: 0
}
.pop-up-bg {
	    width: 100%;
    height: 100%;
    position: fixed;
    left: 0px;
    top: 0px;
    margin: 0px;
    padding: 0px;
    z-index: 9999600;
    border: 0px;
    opacity: 0.3;
    background: #000;
}
.pop-up-bg-in {
	position: fixed;
    bottom: 0px;
    padding: 0px;
    margin: 0px;
    border: 0px;
    background: var(--primary-dark);
    transition: left 1s ease 0s;
    z-index: 10000010;
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    text-align: center;
    display: flex;
    justify-content: center;
}
.pop-up-left {
	width: 100% ;
	height: 100% ;
	position: fixed ;
	left: 0px ;
	top: 0px ;
	border: 0px;
	background-color: rgb(0, 0, 0) ;
	display: none ;
	opacity: 0.8 ;
	z-index: 10000001 ;
}
.pop-up-left-txt {
	font-size: 16px;
    box-sizing: initial;
    overflow-wrap: break-word;
    transition: left 1s ease 0s;
    display: flex;
    text-align: left;
    padding: 20px;
    line-height: 24px;
    color: #fff;
    float: left;
    width: 100%;
    justify-content: center;
    align-items: center;
    max-width: 1000px;
	flex-wrap: wrap;
}
.pop-innr {
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 200px);
}
.pop-btn {
    display: inline-block;
    vertical-align: middle;
    width: 200px;
}
.pop-up-left-txt span{
	font-weight: 700;
    font-size: 24px;
    margin-bottom: 15px;
    display: block;
	}
.pop-up-left-txt a{ text-decoration:underline;     display: inline-block; color: #fff}
.yes-btn, .no-btn {
    cursor: pointer;
    margin-top: 10px;
    height: 40px;
    color: #fff;
    font-size: 14px;
    text-align: center;
    font-weight: 700;
    outline: none;
    box-shadow: none;
    background:var(--secondary);
    appearance: none;
    transition: left 1s ease 0s;
    display: inline-block;
    padding: 10px 20px;
    line-height: 16px;
    border-radius: 50px;
    border: none;
}
.no-btn {
    background: #fff;
	color:var(--primary-dark);
}
.error-sec{ float:left; width:100%;text-align:center;}
.card-error {
    max-width: 250px;
    margin-bottom: 20px;
}	

/* ---------- Reveal animation ---------- */
.reveal { opacity: 0; transform: translateY(26px); transition: opacity 0.9s var(--ease), transform 0.9s var(--ease); }
.reveal.in { opacity: 1; transform: none; }

/* ---------- Responsive ---------- */
@media (max-width: 1188px) {
	.product-grid{ grid-template-columns: repeat(2, 1fr);}
	.why-grid{grid-template-columns: repeat(2, 1fr);}
	.footer-grid{grid-template-columns: 2fr 1.5fr;}
}
@media (max-width: 1024px) {
  .product-grid { grid-template-columns: repeat(3, 1fr); }
  .why-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}
@media (max-width: 860px) {
  .nav { display: none; }
  .menu-toggle { display: grid; }
  .hero-inner { grid-template-columns: 1fr; }
  .hero-badge { justify-self: start; }
  .cat-grid { grid-template-columns: 1fr; }
  .about-grid { grid-template-columns: 1fr; }
  .about-stat { right: 12px; bottom: -16px; }
  .pdp { grid-template-columns: 1fr; }
  .gallery { position: static; }
  .cart-layout { grid-template-columns: 1fr; }
  .summary { position: static; }
  .shop-layout { grid-template-columns: 1fr; }
  .filters { position: static; display: none; }
  .filters.open { display: block; }
  .filter-toggle { display: inline-flex; }
}
@media (max-width: 640px) {
  .product-grid, .product-grid.cols-3 { grid-template-columns: repeat(2, 1fr); }
  .why-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .purchase-actions { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; justify-items: center; gap: 15px; }
  .cart-item { grid-template-columns: 72px 1fr; }
  .cart-item .ci-actions { grid-column: 1 / -1; flex-direction: row; align-items: center; justify-content: space-between; }
  .strip { display: none;}
  .hero p{ max-width:300px;}
  .hero-trust{gap: 15px;}
  .purchase{ padding:15px;}
}
@media (max-width: 420px) {
  .product-grid, .product-grid.cols-3 { grid-template-columns: 1fr; }
}
	