/*
Theme Name: Truly Epic LLC Inhouse
Theme URI: https://www.liquidweb.com/software/kadence/
Template: kadence
Author: Truly Epic LLC InhouseVersion
Author URI: https://www.liquidweb.com/
Description: Kadence Theme is a lightweight yet full featured WordPress theme for creating beautiful fast loading and accessible websites, easier than ever. It features an easy to use drag and drop header and footer builder to build any type of header in minutes. It features a full library of gorgeous starter templates that are easy to modify with our intelligent global font and color controls. With extensive integration with the most popular 3rd party plugins, you can quickly build impressive ecommerce websites, course websites, business websites, and more.
Tags: translation-ready,accessibility-ready,two-columns,right-sidebar,left-sidebar,footer-widgets,blog,custom-logo,custom-background,custom-menu,rtl-language-support,editor-style,threaded-comments,custom-colors,featured-images,wide-blocks,full-width-template,theme-options,e-commerce
Version: 1.5.2.1785819502
Updated: 2026-08-04 04:58:22

*/
body{background: #fff;}
:root{

	--red:#D60000;
	--blue:#070764;
	--dark:#2B2B2B;
	--font-roboto: Roboto;
}

html{font-size:calc(10px + (16 - 10)*((100vw - 1200px)/(1920 - 1200)))}
a{color: var(--blue);}
a:hover{color: var(--red);}
button, .button {
	background: var(--blue);
}

button:hover, .button:hover{background: var(--red);}

/* ---- Reveal animation for headings ---- */
.te-eyebrow,
.te-section-title,
.te-banner-heading,
.te-newsletter-title,
.te-page-hero-title,
.te-about-heading,
.te-feature-title,
.te-ffl-heading,
.te-split-heading {
	opacity: 0;
	transform: translateY(24px);
	clip-path: inset(0 0 100% 0);
	transition:
		opacity .7s ease,
		transform .7s cubic-bezier(.22,.61,.36,1),
		clip-path .7s cubic-bezier(.22,.61,.36,1);
	will-change: opacity, transform, clip-path;
}
.te-eyebrow.te-reveal,
.te-section-title.te-reveal,
.te-banner-heading.te-reveal,
.te-newsletter-title.te-reveal,
.te-page-hero-title.te-reveal,
.te-about-heading.te-reveal,
.te-feature-title.te-reveal,
.te-ffl-heading.te-reveal,
.te-split-heading.te-reveal {
	opacity: 1;
	transform: translateY(0);
	clip-path: inset(0 0 0 0);
}
.te-section-title,
.te-banner-heading,
.te-newsletter-title,
.te-page-hero-title,
.te-about-heading,
.te-about-heading,
.te-feature-title,
.te-ffl-heading { transition-delay: .12s; }

body{
	font-family: "Poppins", sans-serif;
}

.site-container {max-width: 100%;padding: 0 5.25rem;}
.custom-top-bar {
	background: url(images/top-bg.jpg)no-repeat;
	text-align: center;
	margin-bottom: 10px;
	height: 3.688rem;
	display: flex;
	align-items: center;
}
.custom-top-bar p {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 100%;
	/* letter-spacing: 1px; */
	text-align: center;
	color: #fff;
	font-family: "Poppins", sans-serif;
	margin: 0;
}


.custom-top-bar p {
    animation: textPulse 2s ease-in-out infinite;
}

@keyframes textPulse {
    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.35;
    }
}

.site-main-header-inner-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.card-before-header {
	margin: 0;
	display: flex;
	align-items: center;
	list-style: none;
}

.card-before-header .txt {
	display: block;
	font-weight: 700;
	font-size: 1rem;
	line-height: 100%;
	letter-spacing: 1%;
	color: #000000;
	margin-bottom: 10px;
}

.card-before-header li,
.card-before-header li a {
	font-family: Poppins;
	font-weight: 500;
	font-size: 1rem;
	line-height: 100%;
	letter-spacing: 1%;
	color: #000000;
	position: relative;
	text-decoration: none !important;
}
.card-before-header li:first-child {
	padding-left: 4.125rem;
}
.card-before-header li:first-child::before {
	content: "";
	display: block;
	width: 3.202rem;
	height: 2.25rem;
	position: absolute;
	left: 0;
	background: url(images/box.png)no-repeat;
	background-size: 3.3125rem auto;
}

.card-before-header li:last-child::before {
	content: "";
	display: block;
	width: 2.154rem;
	height: 2.188rem;
	position: absolute;
	left: 0;
	background: url(images/phone.png)no-repeat;
	background-size: 2.1875rem auto;
}
.card-before-header li:last-child {
	padding-left: 3rem;
}
.card-before-header li:first-child {
	border-right: 1px solid #a3a3a3;
	padding-right: 3rem;
}

.card-before-header li:last-child {
	margin-left: 3.25rem;
	border-right: 1px solid #a3a3a3;
	padding-right: 3.5rem;
	margin-right: 3.5rem;
}

.main-navigation .primary-menu-container > ul > li.menu-item > a {
	font-weight: 500;
	font-size: 1.125rem;
	line-height: 100%;
	letter-spacing: 0%;
	color: #2B2B2B;
	padding: 0;
	padding-bottom: 6px;
	border-bottom: 2px solid #fff;
}
.site-branding a.brand img {
	max-width: 12.0625rem;
}
.main-navigation .primary-menu-container > ul > li.menu-item.current-menu-item > a {
	color: var(--red);
	font-weight: 800;
}

.main-navigation .primary-menu-container > ul > li.menu-item.current-menu-item > a,
.main-navigation .primary-menu-container > ul > li.menu-item > a:hover {
	color: var(--red);
	border-bottom: 2px solid var(--red);
}

.site-bottom-header-wrap .site-bottom-header-inner-wrap {
	border-top: 1px solid #E1E1E1;
	margin-top: 1rem;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}
.item-is-fixed .site-bottom-header-inner-wrap {
	margin-top: 0;
}
.header-navigation .menu {
	gap: 4.625rem;
}






/* =========================================================
   TRULY EPIC — HOME PAGE (basic layout for all sections)
   Paste into your child theme's style.css and tweak freely.
   Colors are placeholders — adjust to match the design.
   ========================================================= */

:root {
	--te-red: #D60000;
	--te-blue: #070764;
	--te-black: #0c0c0c;
	--te-gray: #6b7280;
	--te-light: #f7f7f7;
	--te-container: 1200px;
}

.te-home * { box-sizing: border-box; }

.te-container { width: 100%; max-width:100%; margin: 0 auto; padding: 0 5.25rem; }
.te-center { text-align: center; margin-top: 2rem; }

/* ---------- Buttons ---------- */
.te-btn {
	display: inline-block; background: var(--te-red); color: #fff;
	padding: 0.85rem 1.75rem; font-weight: 700; text-decoration: none;
	border: 1px solid var(--te-red); cursor: pointer; transition: opacity .2s ease;
}
.te-btn:hover { opacity: .88; color: #fff; }
.te-btn-sm { padding: 0.5rem 1rem; font-size: .9rem; }
.te-btn-outline { background: transparent; border-color: #fff; color: #fff; }
.te-btn-blue { background: var(--te-blue); border-color: var(--te-blue); color: #fff; }
.te-btn-light { background: #fff; border-color: #fff; color: var(--te-blue); }

.te-link-arrow { color: inherit; font-weight: 700; text-decoration: none; display: inline-block; }
.te-link-arrow:hover { color: var(--te-red); }

/* ---------- Section headings ---------- */
.te-eyebrow { color: var(--te-red); text-transform: uppercase; letter-spacing: .08em; font-size: 1rem; margin: 0 0 .4rem; }
.te-section-title { font-size: clamp(1.8rem, 3vw, 2.75rem); margin: 0 0 2rem; line-height: 1.1; color: #2B2B2B;  margin: 1rem 0 2.5rem;}
.te-products-head { display: flex; justify-content: space-between; align-items: flex-end; }

/* ---------- 1) Banner slider ---------- */
.te-banner-swiper { position: relative; }
.te-banner-inner {
	display: grid; grid-template-columns: 1fr 1fr; align-items: center;
	gap: 2rem; min-height: 26rem; padding: 3rem 1rem;padding-left: 5.25rem;padding-right: 5.25rem;
}
.te-banner-image { position: relative; display: flex; justify-content: center; }
/* red circle accent behind the product image */

.te-banner-image img { position: relative; z-index: 1; max-width: 100%; height: auto; object-fit: contain; }
.te-banner-heading { font-size: clamp(1.8rem, 3.6vw, 3.2rem); margin: 0 0 1rem; line-height: 1.05; text-transform: uppercase; }
.te-banner-text { color: #e5e7eb; margin: 0 0 1.5rem; }
.te-banner-buttons { display: flex; gap: 1rem; flex-wrap: wrap; }
.te-banner-swiper .swiper-button-next,
.te-banner-swiper .swiper-button-prev { color: #fff; }


@media (max-width: 768px) {
	.te-banner-inner { grid-template-columns: 1fr; text-align: center; }
	.te-banner-image { order: -1; }
	.te-banner-buttons { justify-content: center; }
}

/* ---------- 2) Category cards ---------- */
.te-cards { padding: 3.5rem 0; }
.te-cards-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }
.te-card { position: relative; display: block; overflow: hidden; text-decoration: none; color: #fff; min-height: 16rem; background: #222; }
.te-card.is-large { grid-column: span 2; }
.te-card-img { width: 100%; height: 100%; min-height: 16rem; object-fit: cover; transition: transform .3s ease; }
.te-card:hover .te-card-img { transform: scale(1.06); }
.te-card-title { position: absolute; left: 1rem; bottom: 1rem; font-size: 1.5rem; font-weight: 700; text-shadow: 0 1px 6px rgba(0,0,0,.7); z-index: 2; }
@media (max-width: 900px) { .te-cards-grid { grid-template-columns: repeat(2, 1fr); } .te-card.is-large { grid-column: span 2; } }
@media (max-width: 520px) { .te-cards-grid { grid-template-columns: 1fr; } .te-card.is-large { grid-column: span 1; } }

/* ---------- 3) Features ---------- */
.te-features { padding: 3rem 0; background: var(--te-light); }
.te-features-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; }
.te-feature { border-left: 1px solid #ddd; padding-left: 1.25rem; }
.te-feature:first-child { border-left: 0; padding-left: 0; }
.te-feature-title { margin: 0 0 .35rem; font-size: 1.05rem; text-transform: uppercase; }
.te-feature-text { color: var(--te-gray); margin: 0; font-size: .95rem; }
@media (max-width: 820px) { .te-features-grid { grid-template-columns: repeat(2, 1fr); } .te-feature { border-left: 0; padding-left: 0; } }
@media (max-width: 480px) { .te-features-grid { grid-template-columns: 1fr; } }

/* ---------- 4 & 6) Products (carousel + grid) ---------- */
.te-products { padding: 3.5rem 0; }
.te-products-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.te-products-swiper { position: relative; padding-bottom: .5rem; }
.te-product-card { background: #fff; padding: 1rem; }
.te-product-thumb { display: block; }
.te-product-thumb img { width: 100%; height: 15rem; object-fit: contain; }
.te-product-name { display: block; margin: .75rem 0 .25rem; font-size: 1.05rem; font-weight: 700; color: #111; text-decoration: none; }
.te-product-name:hover { color: var(--te-red); }
.te-product-price { color: var(--te-red); font-weight: 700; margin-bottom: .75rem; }
.te-products-swiper .swiper-button-next,
.te-products-swiper .swiper-button-prev { color: var(--te-blue); }
@media (max-width: 900px) { .te-products-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .te-products-grid { grid-template-columns: 1fr; } }

/* ---------- 5) Split promo ---------- */
.te-split-grid { display: grid; grid-template-columns: 1fr 1fr; min-height: 30rem; }
.te-split-left, .te-split-right { position: relative; background-size: cover; background-position: center; color: #fff; display: flex; flex-direction: column; justify-content: flex-end; padding: 2.5rem; }
.te-split-left::before, .te-split-right::before { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.45); }
.te-split-inner { position: relative; z-index: 1; }
.te-split-heading { font-size: clamp(1.5rem, 2.6vw, 2.4rem); text-transform: uppercase; margin: 0 0 1rem; line-height: 1.1; }
.te-split-left .te-eyebrow { color: #fff; }
.te-split-strip { position: absolute; top: 1.25rem; left: 0; right: 0; z-index: 1; text-align: center; display: flex; gap: 1.5rem; justify-content: center; flex-wrap: wrap; font-weight: 700; text-transform: uppercase; }
.te-split-strip-item { position: relative; padding-left: 1.5rem; }
.te-split-strip-item::before { content: "\25AA"; position: absolute; left: 0; color: var(--te-red); }
.te-split-bottom { margin-top: auto; }
@media (max-width: 768px) { .te-split-grid { grid-template-columns: 1fr; } }

/* ---------- 7) Manufacturers promo ---------- */
.te-promo { padding: 3.5rem 0; background: var(--te-light); }
.te-promo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; align-items: center; }
.te-promo-media { position: relative; }
@media (max-width: 820px) { .te-promo-grid { grid-template-columns: 1fr; }}

/* ---------- 8) Brands ---------- */
.te-brands { padding: 2.5rem 0; }
.te-brands-swiper .swiper-slide { display: flex; align-items: center; justify-content: center; padding: 1.5rem;}
.te-brands-swiper img { max-height: 100%; width: auto; object-fit: contain; }

/* ---------- 9) Sell your gun ---------- */
.te-sell { position: relative; background-size: cover; background-position: center; padding: 4rem 0; text-align: center; }
.te-sell-inner { position: relative; z-index: 1; max-width: 760px; margin: 0 auto; }
.te-sell-text { color: var(--te-gray); margin: 0 auto 1.5rem; }

/* ---------- 10) Video ---------- */
/* ---------- 10) Video ---------- */
.te-video { padding: 2.5rem 0; }
.te-video-poster {
	position: relative; width: 100%; aspect-ratio: 16 / 6;
	overflow: hidden; background: #000; cursor: pointer;
}
.te-video-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.te-video-play {
	position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
	width: 4.5rem; height: 4.5rem; border: 0; border-radius: 50%;
	background: rgba(255,255,255,.85); color: var(--te-blue);
	display: flex; align-items: center; justify-content: center; cursor: pointer; z-index: 1;
}
.te-play { font-size: 1.5rem; padding-left: .25rem; }

/* Video popup */
.te-video-modal { position: fixed; inset: 0; z-index: 9999; display: none; align-items: center; justify-content: center; }
.te-video-modal.is-open { display: flex; }
.te-video-modal-overlay { position: absolute; inset: 0; background: rgba(0,0,0,.85); }
.te-video-modal-inner { position: relative; z-index: 1; width: 90%; max-width: 900px; aspect-ratio: 16 / 9; background: #000; }
.te-video-embed { width: 100%; height: 100%; }
.te-video-embed iframe, .te-video-embed video { width: 100%; height: 100%; border: 0; display: block; }
.te-video-close {
	position: absolute; top: -2.75rem; right: 0; width: 2.5rem; height: 2.5rem;
	background: transparent; border: 0; color: #fff; font-size: 2rem; line-height: 1; cursor: pointer;
}

/* ---------- 11) Blog ---------- */
.te-blog { padding: 3.5rem 0; }
.te-blog-swiper { position: relative; }
.te-blog-card { background: #fff; }
.te-blog-thumb { display: block; }
.te-blog-thumb img { width: 100%; object-fit: cover; }
.te-blog-title { font-size: 1.35rem; margin: .75rem 0 .5rem; }
.te-blog-title a { color: #111; text-decoration: none; }
.te-blog-title a:hover { color: var(--red); }
.te-blog-excerpt { color: var(--te-gray); margin: 0 0 .75rem; }
.te-blog-swiper .swiper-button-next,
.te-blog-swiper .swiper-button-prev { color: var(--te-blue); }

/* ---------- 12) Newsletter ---------- */
.te-newsletter { background: var(--te-blue); color: #fff; padding: 3rem 0; }
.te-newsletter-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: center; }
.te-newsletter-title { font-size: clamp(1.6rem, 2.6vw, 2.25rem); margin: 0 0 .5rem; color: #fff; text-transform: uppercase; }
.te-newsletter-text { color: #dbeafe; margin: 0; }
.te-nl-form { display: flex; gap: 0; }
.te-nl-input { flex: 1; padding: 0.85rem 1rem; border: 0; outline: 0; color: #111; }
@media (max-width: 720px) { .te-newsletter-grid { grid-template-columns: 1fr; } }


.site-header.fixed {
    position: fixed !important;
    left: 0;
    top: 0;
    width: 100%;
    bottom: auto;
    z-index: 99;
    background: #fff !important;
    box-shadow: 0 0 8px 0 rgba(0,0,0,.35) !important;
    animation: te-slidedown .4s ease;
}
.te-header-fixed .custom-top-bar {
	display: none;
}
.te-header-fixed .site-bottom-header-inner-wrap{margin-top: 0;}

@media (min-width: 1025px){
	.te-header-fixed .site-header-upper-wrap{display: none;}
}

@keyframes te-slidedown {
    from { transform: translateY(-100%); }
    to   { transform: translateY(0); }
}

.home-hero{background:url(images/main-bg.jpg)no-repeat;background-size: cover;}
.te-banner-inner{display:flex;flex-wrap:wrap;gap:0;padding-top:60px;}
.te-banner-image{position:relative;display:flex;justify-content:center;flex:0 0 40.03%;width:40.03%;float:left;}
.te-banner-content{flex:0 0 59.97%;width:59.97%;float:left;padding-left:14.375rem;}
.te-banner-heading{font-family:Poppins;font-weight:700;font-size:5.625rem;line-height:6.625rem;letter-spacing:-2%;text-transform:uppercase;color:#fff;margin-bottom:3.75rem;}
body .te-btn{font-family:Poppins;font-weight:700;font-size:1.125rem;line-height:100%;letter-spacing:1%;text-transform:uppercase;padding:1.5rem 3.5625rem;border-radius:10px;background:var(--red);border-color:var(--red);color:#fff;transition: all 0.4s linear;}
.te-banner-buttons .te-btn:hover {background: #fff;color: var(--red);border-color: #fff;}
.te-banner-buttons .te-btn-outline:hover {background:var(--red);color:#fff;border-color: var(--red);}


body .te-btn-outline{padding:1.5rem 3.4375rem;background:transparent;border-color:#fff;}
.te-card{border: 1px solid #6a6a6a;}
.te-cards{padding:3.5rem 0;padding-bottom:7.8125rem;}
.te-cards-grid{gap:1.375rem;}
.te-card-title{font-family:Poppins;font-weight:700;font-size:2.75rem;line-height:100%;letter-spacing:0%;bottom:2.125rem;left:1.75rem;}
.te-cards-grid a:hover{color:#fff;}
.te-features{background:url(images/bg-1.jpg)no-repeat;padding:8rem 0;background-size: cover;}
.te-features-grid{display:flex;flex-wrap:wrap;gap:0;}
.te-features-grid .te-feature:first-child{width:21.5%;}
.te-features-grid .te-feature:nth-child(2){width:26.8%;padding-left:6.25rem;}
.te-features-grid .te-feature:nth-child(3){width:26%;padding-left:6.25rem;}
.te-features-grid .te-feature:nth-child(4){width:25.7%;padding-left:6.25rem;}
.te-feature{border-left:1px solid #2B2B2B;}
.te-feature-icon{margin-bottom:1.625rem;}
.te-feature-title{font-family:Roboto;font-weight:800;font-size:1.5rem;line-height:2rem;letter-spacing:0%;color:#2B2B2B;margin-bottom:14px;}
.te-feature-text{font-family:Roboto;font-weight:400;font-size:1.125rem;line-height:2rem;letter-spacing:0%;color:#2B2B2B;}
.te-banner-swiper .swiper-button-next,.te-banner-swiper .swiper-button-prev{top:auto;bottom:0;width:5.0625rem;height:5.125rem;border:1px solid #fff;border-radius:100px;}
.te-banner-swiper .swiper-button-prev::after,.te-banner-swiper .swiper-button-next::after{font-size:1rem;}
.te-banner-swiper .swiper-button-prev{left:5rem;}
.te-banner-swiper .swiper-button-next{right:5rem;}
.te-banner-swiper .swiper-button-prev:hover,
.te-banner-swiper .swiper-button-next:hover {border-color: var(--red);color: var(--red);}


/* ---- Category card hover: title upar, sub-title reveal ---- */

/* Sub-title default me hidden */
.te-card-sub-title{
	position: absolute;
	left: 1.75rem;
	bottom: 2.125rem;      /* title ke same baseline par */
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: .625rem;
	font-family: Poppins;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1;
	color: #fff;
	text-shadow: 0 1px 6px rgba(0,0,0,.7);
	opacity: 0;
	transform: translateY(1rem);
	pointer-events: none;
	transition: opacity .35s ease, transform .35s ease;
}

/* Title ko smooth banane ke liye */
.te-card-title{
	transition: transform .35s ease;
}

/* Hover par: title thoda upar, sub-title show */
.te-card:hover .te-card-title{
	transform: translateY(-2.75rem);
}
.te-card:hover .te-card-sub-title{
	opacity: 1;
	transform: translateY(0);
}

.te-split-left::before,.te-split-right::before{display:none;}
.te-split-grid{display:flex;flex-wrap:wrap;min-height:30rem;height:61.375rem;}
.te-split-left{flex:0 0 39%;width:39%;padding:5.875rem 2.5rem 1.25rem 5.25rem;justify-content:flex-start;}
.te-split-left .te-eyebrow{font-family:Poppins;font-weight:600;font-size:1.125rem;line-height:100%;letter-spacing:20%;text-align:left;text-transform:uppercase;color:var(--red);}
.te-split-grid .te-split-right{flex:0 0 61%;padding:2.5rem 17.1875rem 5.75rem 5.25rem;}
.te-split-grid .te-split-heading{font-family:Poppins;font-weight:700;font-size:3.25rem;line-height:3.75rem;letter-spacing:0%;text-transform:uppercase;color:#fff;margin-top:1rem;margin-bottom:2.3125rem;}
.te-split-grid .te-link-arrow{font-family:Poppins;font-weight:700;font-size:1.125rem;line-height:100%;letter-spacing:0%;transition:all 0.4s linear;}
.te-split-grid .te-link-arrow:hover{color:var(--te-red);}
.te-split-grid .te-link-arrow svg{transition:all 0.4s linear;margin-left:10px;}
.te-split-grid .te-link-arrow:hover *{fill:var(--red);margin-left:15px;}


/*=== Home Products ===*/
.te-products{padding-top:6.875rem;padding-bottom:7.5rem;}
.te-carousel-nav{display:flex;display:flex;gap:2.625rem;}
.te-products .swiper-button-prev,.te-products .swiper-button-next,
.related.products [class*="swiper-button-"]{position:static;margin:0;width:5.0625rem;height:5.125rem;border:1px solid var(--blue);border-radius:50%;color:var(--te-blue);display:inline-flex;align-items:center;justify-content:center;}
.te-products .swiper-button-prev:hover,.te-products .swiper-button-next:hover,
.related.products [class*="swiper-button-"]:hover{border-color:var(--red);}
.te-products .swiper-button-prev::after,.te-products .swiper-button-next::after,
.related.products [class*="swiper-button-"]::after{font-size:1rem;}
.te-products [class*="swiper-button-"]:hover::after,
.related.products [class*="swiper-button-"]:hover::after{color:var(--red);}
.te-products .te-section-title{font-family:Poppins;font-weight:700;font-size:3.25rem;line-height:3.5rem;letter-spacing:0%;text-transform:uppercase;margin-bottom:0;}
.te-btn.te-btn-sm{display:none;}
.te-product-thumb{display:block;background:transparent;height:327px;display:flex;justify-content:center;align-items:center;padding:0 24px;}
.te-product-thumb img{height:auto;transition: all 0.4s linear;}
.te-product-thumb:hover img{transform: scale(1.1);}
.te-products .swiper-slide{height:auto;}
.te-products .te-product-card{background:#fff;height:100%;padding:0;display:flex;flex-direction:column;border: 1px solid #ddd;}
.te-product-name{font-family:Poppins;font-weight:600;font-size:1.5rem;line-height:150%;letter-spacing:0%;flex:1 0 auto;margin-top:25px;color:#2B2B2B;}
.te-product-price{font-family:Poppins;font-weight:500;font-size:1.25rem;line-height:2rem;letter-spacing:-3%;margin-top:1.25rem;}
.te-products .te-center{margin-top:3rem;}
.te-products .te-products-head{align-items:center;margin-bottom:3.5625rem;}
.te-products .te-btn.te-btn-blue{padding:1.5rem 2.6875rem;background:var(--blue);border-color:var(--blue);}
.te-products .te-btn.te-btn-blue:hover{background:var(--red);border-color:var(--red);}


.te-product-thumb { position: relative; overflow: hidden; }
.te-product-thumb img { width: 100%; height: 15rem; object-fit: contain; display: block; }

.te-product-actions {
	position: absolute; left: 0; right: 0; bottom: 0;
	display: flex; gap: .75rem; justify-content: center; padding: .85rem;
	opacity: 0; transform: translateY(100%); transition: all .25s ease;
}
.te-product-thumb:hover .te-product-actions { opacity: 1; transform: translateY(0); }

.te-product-actions > a {
	width: 42px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #2B2B2B;
	color: #fff;
	border-radius: 0;
	text-decoration: none;
	transition: background .2s ease;
	padding: 0;
}
.te-product-actions > a.add_to_cart_button .dashicons-cart,
.te-product-actions .ajax_add_to_cart:not(.add_to_cart_button) .dashicons-cart{background: url(images/cart-white.png)no-repeat center;display: block;width: 100%;height: 100%;font-size: 0;}
.te-product-actions .added_to_cart.wc-forward {display: none !important;}
.te-product-actions > a.te-product-view .dashicons-visibility{background: url(images/eye.png)no-repeat center;width: 100%;height: 100%;font-size: 0;}
.te-product-actions > a:hover { background: var(--te-red, #e01414); color: #fff; }
.te-product-actions .dashicons { font-size: 1.3rem; width: auto; height: auto; line-height: 1; }
.te-product-actions .added_to_cart { display: none; }

.te-product-info { padding: 1rem; }
.te-product-info .te-product-name { margin-top: 0; display: block; }



.te-split-strip{position:absolute;top:1.25rem;left:0;right:0;z-index:1;overflow:hidden;white-space:nowrap;}
.te-split-strip-track{display:inline-flex;align-items:center;animation:te-strip-scroll 20s linear infinite;will-change:transform;}
.te-split-strip:hover .te-split-strip-track{animation-play-state:paused;}
.te-split-strip-item{color:#fff;font-weight:700;text-transform:uppercase;padding:0 1.75rem;position:relative;white-space:nowrap;}
.te-split-strip-item::before{content:"\25AA";position:absolute;left:.4rem;color:#fff;}
@keyframes te-strip-scroll{
	from{transform:translateX(0);}
	to{transform:translateX(-50%);}
}


.te-promo{background:url(images/bg-2.jpg)no-repeat;padding:9.3125rem 0 8rem;background-size:cover;}
.te-container.te-promo-grid{display:flex;flex-wrap:wrap;gap:0;align-items:flex-start;}
.te-promo .te-promo-media{width:49.49%;flex:0 0 49.49%;float:left;}
.te-promo .te-promo-body{width:50.51%;flex:0 0 50.51%;padding-left:6.5rem;padding-top:4.8125rem;}
.te-eyebrow{font-family:Poppins;font-weight:600;font-size:1.125rem;line-height:100%;letter-spacing:20%;text-transform:uppercase;color:var(--red);}
.te-promo .te-promo-media{display:flex;gap:1.75rem;}
.te-promo .te-promo-img2{padding-top:8.5rem;}
.te-promo .te-section-title{font-family:Poppins;font-weight:700;font-size:3.25rem;line-height:3.5rem;letter-spacing:0%;text-transform:uppercase;margin:1rem 0 2.5rem;}
.te-promo-text p{font-family:Roboto;font-weight:400;font-size:1.125rem;line-height:2rem;letter-spacing:0%;padding-right:2.5rem;margin-bottom:2rem;}
.te-promo-body .te-btn{padding:1.5rem 4.1875rem;margin-top:2.5rem;background:var(--blue);border-color:var(--blue);transition:all 0.4s linear;}
.te-promo-body .te-btn:hover{background:var(--red);border-color:var(--red);}
.te-brands-swiper .swiper-slide{border-right:1px solid #a9a9a9;}
.te-brands{padding:10rem 0 0;}
.te-sell .te-section-title{font-family:Poppins;font-weight:700;font-size:3.25rem;line-height:3.5rem;letter-spacing:0%;text-align:center;text-transform:uppercase;margin:1rem 0 2.5rem;}
.te-sell{background:#fff;padding-top:6.3125rem;}
.te-sell::before{content:"";display:block;background:url(images/truly-2-Photoroom-3.png)no-repeat;width:23.9375rem;height:33.3125rem;position:absolute;top:1.25rem;left:0;}
.te-sell::after{content:"";display:block;background:url(images/truly-2-Photoroom-4.png)no-repeat;width:23.9375rem;height:33.3125rem;position:absolute;right:0;top:1.25rem;}
.te-sell-inner{max-width:100%;}
.te-sell-text p{font-family:Roboto;font-weight:600;font-size:1.125rem;line-height:2rem;letter-spacing:0%;text-align:center;color:#2B2B2B;}
.te-sell-text p:last-child{font-weight:400;}
.te-sell-text{max-width:87%;margin-left:auto;margin-right:auto;margin-top:0;}
.te-sell .te-btn{background:var(--blue);border-color:var(--blue);}
.te-sell .te-btn:hover{background:var(--red);border-color:var(--red);}
.te-video-poster{aspect-ratio:auto;}
.te-video-poster .te-video-play{width:6.75rem;height:6.75rem;background:rgba(255,255,255,0.3)!important;color:#fff!important;font-size:2.5rem;padding:0;box-shadow:none!important;outline:1px solid #fff;outline-offset:0.625rem;}
.te-video{padding:0;background:#fff;}


.te-blog{background:url(images/bg-2.jpg)no-repeat;padding:8.125rem 0 6.875rem;margin-top:10.5625rem;background-size: cover;}
.te-blog .swiper-slide {height: auto;display: flex;flex-direction: column;}
.te-blog .te-blog-excerpt {flex: 1 0 auto;}
.te-blog .te-products-head{align-items:center;}
.te-blog .te-section-title{font-family:Poppins;font-weight:700;font-size:3.25rem;line-height:3.6875rem;letter-spacing:0%;text-transform:uppercase;}
.te-blog-nav{display:flex;gap:2.625rem;}
.te-blog-nav .swiper-button-prev,.te-blog-nav .swiper-button-next{position:static;margin:0;width:5.0625rem;height:5.125rem;border:1px solid var(--blue);border-radius:50%;color:var(--te-blue);display:inline-flex;align-items:center;justify-content:center;}
.te-blog-nav .swiper-button-prev::after,.te-blog-nav .swiper-button-next::after{font-size:1rem;}
.te-products-head > div:first-child{width:78%;flex:0 0 78%;}
.te-blog-nav .swiper-button-prev:hover,.te-blog-nav .swiper-button-next:hover{border-color:var(--red);color:var(--red);}
.te-blog-card{background:transparent;}
.te-blog-title{font-family:Poppins;font-weight:700;font-size:1.5rem;line-height:2rem;letter-spacing:0%;margin:2.1875rem 0 1.125rem;}
.te-blog-title a{color:#2B2B2B;}
.te-blog .te-blog-excerpt{font-family:Poppins;font-weight:400;font-size:1.125rem;line-height:2rem;letter-spacing:0%;color:#2B2B2B;margin-bottom:2rem;}
.te-blog .te-link-arrow{font-family:Roboto;font-weight:800;font-size:1.125rem;line-height:100%;letter-spacing:1%;text-transform:uppercase;text-decoration:underline!important;text-decoration-skip-ink:auto;color:#17219C;width: max-content;}
.te-blog .te-link-arrow:hover{color:var(--red);}
.te-blog .te-btn{padding:1.5rem 5rem;background:var(--blue);border-color:var(--blue);}
.te-blog .te-btn:hover{background:var(--red);border-color:var(--red);}
.te-blog .te-center{margin-top:3.125rem;}



/* Header search + live dropdown */
.te-search{position:relative;}
.te-header-search{display:flex;align-items:center;border:0!important;border-bottom:1px solid #BCBCBC!important;border-radius:0;background:#fff;padding:0 .25rem;width:251px;}
.te-header-search input[type="search"]{box-shadow:none;font-family:"Poppins",sans-serif;font-size:1.125rem;color:#A8A8A8;width:100%;padding:0 0;border:0;}
.te-header-search button{width:23px;height:23px;flex:0 0 23px;background:url(images/search-icon.svg)no-repeat !important;padding:0 !important;}
.te-header-search button .dashicons.dashicons-search {
	display: none;
}
::placeholder{color:#A8A8A8;}
.te-search-results{position:absolute;top:calc(100% + 6px);right:0;left:0;background:#fff;border:1px solid #eee;border-radius:6px;box-shadow:0 10px 25px rgba(0,0,0,.12);max-height:400px;overflow-y:auto;z-index:999;}
.te-search-list{list-style:none;margin:0;padding:0;}
.te-search-item + .te-search-item{border-top:1px solid #f0f0f0;}
.te-search-item a{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;text-decoration:none;color:#111;}
.te-search-item a:hover{background:#f7f7f7;}
.te-search-thumb img{width:48px;height:48px;object-fit:contain;border-radius:4px;display:block;}
.te-search-info{display:flex;flex-direction:column;}
.te-search-title{font-weight:600;font-size:.9rem;line-height:1.2;}
.te-search-price{color:var(--te-red);font-weight:700;font-size:.85rem;}
.te-search-price del{color:#999;font-weight:400;margin-right:.25rem;}
.te-search-all{display:block;text-align:center;padding:.6rem;font-weight:600;color:var(--te-blue);text-decoration:none;border-top:1px solid #eee;}
.te-search-all:hover{background:#f7f7f7;}
.te-search-loading,.te-search-empty{padding:.8rem;text-align:center;color:var(--te-gray);font-size:.9rem;}
.te-search-results .te-search-all{display: none;}

/* ============================================================
   Header cart — design style
   ========================================================== */
.header-cart-wrap{position:relative;}
.header-cart-wrap .header-cart-button{display:grid!important;grid-template-columns:auto auto;   /* icon | text */align-items:center;column-gap:1.25rem;row-gap:2px;background:transparent;border:0;cursor:pointer;padding:0;}

/* Bag icon — pehle column, dono row cover kare */
.header-cart-wrap .header-cart-button .kadence-svg-iconset{grid-column:1;grid-row:1 / span 2;position:relative;display:flex;align-items:center;width:2.25rem;height:2.1875rem;background:url(images/cart.png)no-repeat;background-size:2.25rem auto;}
.header-cart-wrap .header-cart-button svg{width:28px;height:28px;color:#000;display:none;}
body .header-cart-button .header-cart-total{width:1.875rem;height:1.875rem;position:absolute;top:-0.375rem;left:1.25rem;background:var(--red);color:#fff;font-weight:700;}
/* "Your Cart" — upar wali row, second column */
.header-cart-wrap .header-cart-label{grid-column:2;grid-row:1;font-weight:700;font-size:1rem;color:#2B2B2B;line-height:1.2;text-align:left;}

/* "0 items - $0.00" — neeche wali row, second column */
.header-cart-wrap .te-cart-meta{grid-column:2;grid-row:2;font-size:1rem;color:#A0A0A0;line-height:1.2;text-align:left;white-space:nowrap;font-weight:400;}



/*=== Shop/category Page ===*/
.te-page-hero{position:relative;min-height:25rem;background-size:cover;background-position:bottom;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;text-align:center;}
.te-page-hero .te-container{position:relative;z-index:1;}
.te-page-hero-title,.entry-hero.page-hero-section .entry-title{font-family:Poppins;font-weight:700;font-size:3.25rem;line-height:3.5rem;letter-spacing:0%;text-align:center;text-transform:uppercase;color:#fff;}
.woocommerce ul.products.woo-archive-action-on-hover li.product .product-action-wrap .added_to_cart.wc-forward{display:none;}


.te-newsletter{background:linear-gradient(0deg,rgba(7,7,100,.89),rgba(7,7,100,.89)),url(images/footer-before-bg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;padding:5.5625rem 0;}
.te-newsletter .te-container,.te-site-footer .te-container{padding-left:10rem;padding-right:10rem;display:flex;flex-wrap:wrap;}
.te-newsletter-body{flex:0 0 38%;width: 38%;float: left;}
.te-newsletter-form {flex: 0 0 62%;width: 62%;float: left;}
.te-newsletter-form p {margin: 0;}
.te-newsletter-form br {display: none;}
.te-newsletter form {position: relative;width: 83.07%;margin-left: auto;}
.te-newsletter-form input[type="email"] {width: 100%;height: 5rem;background: transparent;font-size: 1.125rem;color: #fff !important;padding-left: 2.375rem;border-radius: 10px;border: 1px solid #fff !important;}
.te-newsletter-form .wpcf7-submit {
	position: absolute;
	right: 0;
	top: 0;
	height: 5rem;
	background: #fff !important;
	font-size: 1.125rem !important;
	color: #17219C !important;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1.1;
	width: 12.9375rem;
	border-radius: 10px;
	letter-spacing: -3%;
}
.te-newsletter-form .wpcf7-submit:hover {
	background: var(--red) !important;
	color: #fff !important;
}
.te-newsletter-form .wpcf7-spinner{display: none;}

.te-newsletter-form ::placeholder{opacity: 1;color: #fff;}
.te-newsletter-grid {
	gap: 0;
}

.te-newsletter .te-newsletter-title {font-family: Poppins;font-weight: 900;font-size: 2.75rem;line-height: 3.5rem;letter-spacing: 0%;text-transform: uppercase;}
.te-newsletter-text{font-family:Poppins;font-weight:400;font-size:1.125rem;line-height:1.75rem;letter-spacing:0%;color:#fff;}
.te-site-footer{background:url(images/footer-bg.svg);position:relative;padding-top:7.8125rem;padding-bottom:5.25rem;background-size: cover;}
.te-site-footer::before{content:"";display:block;width:100%;height:100%;background:rgba(0,0,0,1);position:absolute;top:0;opacity:0.8;}
.te-footer-grid{display:flex;flex-wrap:wrap;}
.te-site-footer .te-container{position:relative;}
.te-footer-col.te-footer-about{flex:0 0 36.7%;width:36.7%;float:left;border-right:1px solid #58595b;padding-right:6.25rem;}
.te-footer-grid .te-footer-col:nth-child(2){flex:0 0 29.38%;width:29.38%;float:left;border-right:1px solid #58595b;padding-left:10.625rem;padding-top:0.625rem;}
.te-footer-grid .te-footer-col:nth-child(3){flex:0 0 33.92%;width:33.92%;float:left;padding-left:11.6875rem;padding-top:0.625rem;}
.te-footer-about p{font-family:Poppins;font-weight:400;font-size:1.0625rem;line-height:2rem;letter-spacing:0%;color:#fff;}
.te-footer-logo{max-width:21.875rem;display:block;margin-bottom:2.25rem;}
.te-footer-pay{display:flex;gap:1.25rem;align-items:center;margin-top:3.125rem;}
.te-footer-pay img{max-width:4.75rem !important;}
footer .te-footer-title{font-family:Poppins;font-weight:800;font-size:1.25rem;line-height:2rem;letter-spacing:0%;text-transform:uppercase;color:#fff;margin-bottom:1.375rem;}
.te-footer-links{margin:0;list-style:none;}
.te-footer-links li a,.te-footer-links li span{font-family:Poppins;font-weight:400;font-size:1rem;line-height:2.25rem;letter-spacing:0%;color:#fff;text-decoration:none;transition:all 0.4s linear;}
.te-footer-links li a:hover{color:var(--red);}
.te-footer-bottom{background:#212121;padding:1.6875rem 0;}
.te-footer-bottom .te-container{padding-left:10rem;padding-right:10rem;display:flex;justify-content:space-between;align-items:center;}
.te-footer-copy,.te-footer-copy a{font-family:Poppins;font-weight:400;font-size:1rem;line-height:2.25rem;letter-spacing:0%;color:#fff;transition:all 0.4s linear;}
.te-footer-copy a:hover{color:var(--red);}
.te-footer-social{display:flex;gap:1.25rem;align-items:center;}
.te-footer-social a{width:3.3125rem;height:3.3125rem;background:var(--red);display:flex;justify-content:center;align-items:center;border-radius:4px;transition:all 0.4s linear;}
.te-footer-social a:hover{background:#fff;}
.te-footer-bottom a svg{transition:all 0.4s linear;height:2.125rem;}
.te-footer-bottom a:hover *{fill:red;}


/*=== Cart Page ===*/
.entry-hero.page-hero-section{position:relative;min-height:400px;background:url(images/shop-page.jpg);background-size:cover;background-position:bottom;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;text-align:center;}
.entry-hero.page-hero-section .entry-hero-container-inner{background:transparent;width:100%;}
.entry-hero.page-hero-section .entry-header{min-height:auto;}
.wc-block-components-button{font-size:16px;background:var(--blue) !important;text-transform:uppercase;font-weight:600;}
.wc-block-components-button:hover{background:var(--red) !important;}
.wc-block-components-product-price__regular,.wc-block-components-product-price__value{font-size:16px;color:#2b2b2b;font-weight:700;}
.wc-block-cart-item__remove-link{color:var(--red)!important;}
.wc-block-components-product-name{font-size:16px!important;font-family:Roboto;}
.wc-block-components-product-name{font-size:16px!important;font-family:var(--font-roboto);color:var(--dark)!important;}
.wc-block-components-product-name:hover{color:var(--red)!important;}
.entry.single-entry,.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button{box-shadow:none!important;}
.wc-block-cart .wp-block-woocommerce-cart-order-summary-block {font-size: 15px;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-size: 16px;}
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__header, table.wc-block-cart-items .wc-block-cart-items__header{font-size: 12px;}
.wc-block-components-product-metadata__description p {font-size: 12px !important;}
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link):focus{box-shadow: none;}

/* ============================================================
   TRULY EPIC — ABOUT PAGE
   ============================================================ */

.te-about{color:#222;}
.te-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;}
.te-about-heading{font-family:Poppins;font-weight:700;font-size:3.25rem;line-height:3.5rem;letter-spacing:0%;text-transform:uppercase;margin-bottom:2rem;color:var(--dark);}
.te-about-text{color:var(--dark);line-height:1.7;}
.te-about-text p{font-family:Roboto;font-weight:400;font-size:1.125rem;line-height:2rem;letter-spacing:0%;margin-bottom:2rem;}
.te-about-img{width:100%;height:auto;display:block;}
.te-about-1{padding:4rem 0;}
.te-about-2{padding:4rem 0;}
.te-about-stack{position:relative;padding:0 2rem 2rem 0;}
.te-about-stack-back{width:82%;height:auto;display:block;margin-left:auto;}
.te-about-stack-front{position:absolute;left:0;bottom:0;width:55%;height:auto;border:8px solid #fff;box-shadow:0 10px 30px rgba(0,0,0,.15);}


/* ============================================================
   TRULY EPIC — FFL / SELL YOUR GUN PAGE
   ============================================================ */
.te-ffl-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;}
.te-ffl-heading{font-size:3.25rem;line-height:1.15;text-transform:uppercase;color:var(--dark);font-weight:800;margin:0 0 1.5rem;}
.te-ffl-img{width:100%;height:auto;display:block;}
.te-ffl-text{color:var(--dark);line-height:1.7;}
.te-ffl-text p{margin:0 0 1rem;font-family: var(--font-roboto);font-size: 1.125rem;}
.te-ffl-text p:first-child strong,.te-ffl-text strong{color:var(--blue);text-transform:uppercase;}

/* Section 1 */
.te-ffl-intro{padding:4rem 0;}

/* Section 2 */
.te-ffl-appt{padding:4rem 0;background:#f6f6f6;border-bottom:1px solid #ccc;}
.te-ffl-contact{font-weight:700;color:var(--dark);margin:.5rem 0;display:flex;align-items:center;gap:.5rem;}
.te-ffl-contact a{color:var(--dark);text-decoration:none;}
.te-ffl-contact a:hover{color:var(--red);}
.te-ffl-pin {width: 8px;height: 8px;vertical-align: middle;font-size: 0;background: var(--red);border-radius: 100px;flex: 0 0 8px;}


/* ===== Form card ===== */
.te-ffl-form{background:#fff;padding:2.5rem;box-shadow:0 15px 40px rgba(0,0,0,.08);border-radius:6px;}

/* Grid layout */
.te-ffl-form .row{display:grid;grid-template-columns:1fr 1fr;gap:1.75rem 1.5rem;}
.te-ffl-form .col-span-12{grid-column:1 / -1;}
.te-ffl-form .lg\:col-span-6{grid-column:span 1;}
.te-ffl-form br{display:none;}
.te-ffl-form p{margin:0;}
.wpcf7-form-control-wrap{display:block;}
.wpcf7-response-output{text-align:center;}

/* Labels */
.te-ffl-form label{display:block;font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--dark);margin-bottom:.5rem;text-transform:uppercase;}
.te-ffl-form .text-danger{color:var(--te-red,#e01414);}

/* Inputs — clean bordered boxes */
.te-ffl-form input[type="text"],.te-ffl-form input[type="email"],.te-ffl-form input[type="tel"],.te-ffl-form input[type="date"],.te-ffl-form input[type="time"],.te-ffl-form textarea{width:100%;border:1px solid #dcdcdc !important;border-radius:6px;padding:.75rem .9rem;outline:none;background:#fafafa;font-size:14px;color:#222 !important;transition:border-color .2s,background .2s,box-shadow .2s;}
.te-ffl-form textarea{height:110px;resize:none;}
.te-ffl-form input:focus,.te-ffl-form textarea:focus{border-color:var(--te-blue,#1a1aa8);background:#fff;box-shadow:0 0 0 3px rgba(26,26,168,.08);}
.te-ffl-form input::placeholder,.te-ffl-form textarea::placeholder{color:#aaa;}

/* ===== File upload — custom styled ===== */
.te-ffl-form .wpcf7-file{width:100%;border:1.5px dashed #cfcfcf;border-radius:8px;padding:1.5rem 1rem;background:#fafafa;cursor:pointer;font-size:.9rem;color:#555;transition:border-color .2s,background .2s;}
.te-ffl-form .wpcf7-file:hover{border-color:var(--te-blue,#1a1aa8);background:#f3f3ff;}

/* the native "Browse" button */
.te-ffl-form input[type="file"]::file-selector-button{background:var(--te-blue,#1a1aa8);color:#fff;border:0;border-radius:5px;padding:12px 30px;margin-right:1rem;font-weight:700;cursor:pointer;transition:opacity .2s;font-size: 14px;}
.te-ffl-form input[type="file"]::file-selector-button:hover{opacity:.9;}
.te-ffl-form .te-file-help{font-size:13px;color:var(--dark);margin-top:5px !important;}

/* ===== Submit button ===== */
.te-ffl-form input[type="submit"],.te-ffl-form .wpcf7-submit,.te-ffl-form button[type="submit"]{background:var(--te-blue,#1a1aa8) !important;color:#fff !important;border:0;border-radius:6px;padding:.95rem 3rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;margin-top:1rem;transition:background .2s,transform .1s;font-size: 15px;padding: 12px 30px;}
.wpcf7-form-control{font-family:var(--font-roboto);font-family:"Poppins",sans-serif;}
.te-ffl-form input[type="submit"]:hover,.te-ffl-form .wpcf7-submit:hover,.te-ffl-form button[type="submit"]:hover{background:var(--te-red,#e01414) !important;transform:translateY(-1px);}

/* CF7 validation / response messages */
.te-ffl-form .wpcf7-not-valid-tip{color:var(--red);font-size:14px;margin-top:5px;}
.te-ffl-form .wpcf7-response-output{grid-column:1 / -1;margin:1rem 0 0!important;border-radius:6px;font-size:12px;}



/* ============================================================
   TRULY EPIC — FAQ PAGE (accordion, refined)
   ============================================================ */

.te-faq{padding:4.5rem 0 5.5rem;background:radial-gradient(1200px 400px at 50% -10%,rgba(26,26,60,.04),transparent 60%);}
.te-faq-list{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:.9rem;}

/* ---- Each item ---- */
.te-faq-item{background:#fff;border:1px solid #ececf1;border-radius:14px;overflow:hidden;transition:border-color .3s ease,box-shadow .3s ease;}
.te-faq-item:hover{box-shadow:0 6px 22px rgba(20,20,50,.06);}
.te-faq-item.is-open{border-color:transparent;box-shadow:0 18px 50px rgba(20,20,55,.12);}

/* ---- Question row ---- */
.te-faq-q{width:100%;display:flex;align-items:center;gap:1.25rem;padding:1.5rem 1.6rem;background:none;border:0;cursor:pointer;text-align:left;font-family:inherit;font-size:1.25rem;font-weight:600;line-height:1.4;color:#1c1c28;transition:color .25s ease;background: transparent !important;box-shadow: none !important;}
.te-faq-q .te-faq-q-text {color: var(--dark);}
.te-faq-q-text{flex:1;}
.te-faq-q:hover{color:#2a2a6a;}
.te-faq-item.is-open .te-faq-q{color:var(--dark);}

/* ---- Chevron ---- */
.te-faq-icon{position:relative;flex-shrink:0;width:34px;height:34px;border-radius:50%;background:#f4f4f8;transition:background .3s ease;}
.te-faq-icon::before{content:"";position:absolute;top:44%;left:50%;width:9px;height:9px;border-right:2px solid #6a6a80;border-bottom:2px solid #6a6a80;transform:translate(-50%,-50%) rotate(45deg);transition:transform .35s cubic-bezier(.65,.05,.36,1),border-color .3s ease;}
.te-faq-item:hover .te-faq-icon{background:#ececf3;}
.te-faq-item.is-open .te-faq-icon{background:#14143c;}
.te-faq-item.is-open .te-faq-icon::before{border-color:#fff;transform:translate(-50%,-30%) rotate(-135deg);}

/* ---- Answer (smooth height) ---- */
.te-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease;}
.te-faq-item.is-open .te-faq-a{grid-template-rows:1fr;}
.te-faq-a-inner{overflow:hidden;color:var(--dark);font-size:1.125rem;line-height:1.75;padding:0 1.6rem;}
.te-faq-item.is-open .te-faq-a-inner{padding:0 1.6rem 1.5rem 1.6rem;}

/* subtle divider above the answer */
.te-faq-a-inner >:first-child{margin-top:0;padding-top:1.1rem;border-top:1px solid #efeff3;}
.te-faq-a-inner p{margin:0 0 .8rem;}
.te-faq-a-inner p:last-child{margin-bottom:0;}
.te-faq-a-inner a{color:#2a2a6a;}
.te-faq-empty{text-align:center;color:#999;padding:3rem;}
@media (max-width:600px){
	.te-faq-q{padding:1.2rem 1.15rem;gap:.9rem;}
	.te-faq-icon{width:30px;height:30px;}
	.te-faq-a-inner{padding:0 1.15rem;}
	.te-faq-item.is-open .te-faq-a-inner{padding:0 1.15rem 1.25rem;}
}



/* ============================================================
   TRULY EPIC — CONTACT PAGE
   (form uses the shared .te-ffl-form styles — load ffl.css too,
    or copy the .te-ffl-form rules here)
   ============================================================ */

.te-contact-top{padding:4.5rem 0;}
.te-contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;align-items:start;}

/* Left info */
.te-contact-heading{font-size: 3.25rem;
  line-height: 1.15;
  text-transform: uppercase;
  color: var(--dark);
  font-weight: 800;
  margin: 0 0 1.5rem;}
.te-contact-text{color:var(--dark);line-height:1.75;margin-bottom:1.5rem;font-family: var(--font-roboto);}
.te-contact-line{font-weight:700;color:var(--dark);margin:.5rem 0;display:flex;align-items:center;gap:.5rem;}
.te-contact-line a{color:var(--dark);text-decoration:none;}
.te-contact-line a:hover{color: var(--red);}
.te-contact-pin{color:var(--te-red,#e01414);}
.te-contact-directions{margin-top:1rem;}
.te-contact-directions a{color:var(--te-blue,#1a1aa8);font-weight:700;text-decoration:none;}
.te-contact-directions a:hover{text-decoration:underline;}

/* Form on contact: no card box (design shows it plain, not boxed) */
.te-contact-form.te-ffl-form{background:none;box-shadow:none;padding:0;border-radius:0;}

/* Full-width map */
.te-contact-map{line-height:0;}
.te-contact-map iframe{width:100%;height:460px;border:0;display:block;}
@media (max-width:900px){
	.te-contact-grid{grid-template-columns:1fr;gap:2.5rem;}
	.te-contact-map iframe{height:340px;}
}


/* ============================================================
   TRULY EPIC — CONTENT PAGE (Privacy, Terms, etc.)
   ============================================================ */

.te-content-page{padding:4rem 0 5rem;}
.te-content{max-width:1000px;margin:0 auto;color:var(--dark);font-size:1.125rem;line-height:1.8;}

/* Headings */
.te-content h1,.te-content h2,.te-content h3,.te-content h4{color:var(--dark);font-weight:800;line-height:1.25;margin:2.2rem 0 .9rem;}
.te-content h1{font-size:2rem;}
.te-content h2{font-size:1.6rem;}
.te-content h3{font-size:1.3rem;}
.te-content h4{font-size:1.1rem;}
.te-content >:first-child{margin-top:0;}

/* Paragraphs */
.te-content p{margin:0 0 1.1rem;}

/* Emphasis */
.te-content strong{color:#1e1e1e;}

/* Lists */
.te-content ul,.te-content ol{margin:0 0 1.2rem 1.4rem;padding:0;}
.te-content li{margin-bottom:.5rem;}
.te-content ul ul,.te-content ol ol{margin-top:.5rem;}

/* Links */
.te-content a{color:var(--te-blue,#1a1aa8);text-decoration:underline;word-break:break-word;}
.te-content a:hover{color:var(--te-red,#e01414);}

/* Blockquote / hr */
.te-content blockquote{border-left:4px solid var(--te-blue,#1a1aa8);margin:1.5rem 0;padding:.5rem 0 .5rem 1.25rem;color:#555;font-style:italic;}
.te-content hr{border:0;border-top:1px solid #e5e5e5;margin:2rem 0;}

/* Tables (if used in terms) */
.te-content table{width:100%;border-collapse:collapse;margin:1.5rem 0;}
.te-content th,.te-content td{border:1px solid #e5e5e5;padding:.6rem .8rem;text-align:left;}
.te-content th{background:#f6f6f6;}
@media (max-width:700px){
	.te-content-page{padding:2.5rem 0 3.5rem;}
	.te-content h1{font-size:1.6rem;}
	.te-content h2{font-size:1.35rem;}
}



/* ============================================================
   TRULY EPIC — BLOG / CATEGORY LISTING
   (styles Kadence's default post grid — no template needed)
   ============================================================ */

/* Grid spacing */
.kadence-posts-list.post-archive{gap:2rem!important;}

/* Card */
.kadence-posts-list .entry.loop-entry{background:#fff;border:1px solid #ececec;border-radius:12px;overflow:hidden;transition:box-shadow .28s ease,transform .28s ease,border-color .28s ease;display:flex;flex-direction:column;height:100%;}
.kadence-posts-list .entry.loop-entry:hover{box-shadow:0 18px 45px rgba(20,20,55,.12);transform:translateY(-4px);border-color:transparent;}

/* Thumbnail */
.kadence-posts-list .post-thumbnail{display:block;overflow:hidden;}
.kadence-posts-list .post-thumbnail img{width:100%;height:210px;object-fit:cover;transition:transform .5s ease;}
.kadence-posts-list .entry.loop-entry:hover .post-thumbnail img{transform:scale(1.06);}

/* Content */
.kadence-posts-list .entry-content-wrap{padding:1.4rem 1.5rem 1.6rem;display:flex;flex-direction:column;flex:1;}

/* Category chip */
.kadence-posts-list .entry-taxonomies{margin-bottom:.6rem;}
.kadence-posts-list .category-links a{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--te-red,#e01414);padding:.28rem .7rem;border-radius:4px;text-decoration:none;}
.kadence-posts-list .category-links a:hover{background:var(--te-blue,#1a1aa8);}

/* Title */
.kadence-posts-list .entry-title{margin:0 0 .6rem;font-size:1.2rem;line-height:1.3;}
.kadence-posts-list .entry-title a{color:#1c1c28;text-decoration:none;font-weight:800;transition:color .2s;}
.kadence-posts-list .entry-title a:hover{color:var(--te-blue,#1a1aa8);}

/* Meta */
.kadence-posts-list .entry-meta{font-size:.78rem;color:#999;margin-bottom:.8rem;}
.kadence-posts-list .entry-meta a{color:#999;text-decoration:none;}
.kadence-posts-list .entry-meta .meta-label{margin-right:.25rem;}

/* Excerpt */
.kadence-posts-list .entry-summary{color:#5a5a68;line-height:1.65;font-size:.92rem;margin-bottom:1.1rem;}
.kadence-posts-list .entry-summary p{margin:0;}

/* Push footer (Read More) to bottom */
.kadence-posts-list .entry-footer{margin-top:auto;}

/* Read More link */
.kadence-posts-list .post-more-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--te-blue,#1a1aa8);text-decoration:none;}
.kadence-posts-list .post-more-link:hover{color:var(--te-red,#e01414);}
.kadence-posts-list .post-more-link svg{width:18px;height:18px;transition:transform .2s;}
.kadence-posts-list .post-more-link:hover svg{transform:translateX(4px);}

/* ============================================================
   TRULY EPIC — BLOG SIDEBAR (custom Recent Posts widget)
   ============================================================ */
.te-widget-title{font-size:1.15rem;font-weight:800;text-transform:uppercase;color:#1c1c28;margin:0 0 1.25rem;padding-bottom:.75rem;position:relative;}
.te-widget-title::after{content:"";position:absolute;left:0;bottom:0;width:46px;height:3px;background:var(--te-red,#e01414);border-radius:2px;}

/* List */
.te-recent-posts{list-style:none;margin:0;padding:0;}
.te-recent-item{display:flex;gap:.9rem;align-items:center;padding:.8rem 0;border-bottom:1px solid #eee;}
.te-recent-item:first-child{padding-top:0;}
.te-recent-item:last-child{border-bottom:0;}

/* Thumbnail */
.te-recent-thumb{flex-shrink:0;width:74px;height:62px;border-radius:8px;overflow:hidden;display:block;background:#f2f2f5;}
.te-recent-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.te-recent-item:hover .te-recent-thumb img{transform:scale(1.08);}
.te-recent-noimg{display:block;width:100%;height:100%;background:#e7e7ee;}

/* Body */
.te-recent-body{display:flex;flex-direction:column;gap:.3rem;}
.te-recent-title{font-size:12px;font-weight:700;line-height:1.35;color:#1c1c28;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s;}
.te-recent-title:hover{color:var(--te-blue,#1a1aa8);}
.te-recent-date{font-size:10px;color:#999;}

/* If your sidebar widget wrapper needs spacing */
.primary-sidebar .widget{margin-bottom:2.5rem;}
@media (max-width:600px){
	.kadence-posts-list .post-thumbnail img{height:190px;}
	.kadence-posts-list .entry-content-wrap{padding:1.2rem;}
}

.menu-toggle-icon .kadence-svg-iconset svg {color: var(--dark);height: 33px;width: 33px;}
.mobile-navigation a{transition: all 0.4s linear;}
.mobile-navigation a:hover{color: var(--red);}
.mobile-navigation ul li.current-menu-item > a, .mobile-navigation ul li.current-menu-item.menu-item-has-children > .drawer-nav-drop-wrap {
	color: var(--red);
}
.mobile-navigation ul li a {
	font-size: 15px;
	font-weight: 500;
}
.mini-cart-container .button {
	background: var(--blue) !important;
	color: #fff !important;
	font-size: 16px;
	text-transform: uppercase;
}
.mini-cart-container .button.button.checkout.wc-forward {
	background: #000 !important;
}
.mini-cart-container .button:hover,
.mini-cart-container .button.button.checkout.wc-forward:hover{background: var(--red) !important;}



/*=== Checkout Css ===*/
/*=== Checkout Css ===*/
/* ==========================================================================
   TRULY EPIC FIREARMS — CHECKOUT PAGE
   Uses existing root vars (--red / --blue / --dark / --font-roboto).
   Matches the FFL form styling for a consistent look across the site.
   Scoped under body.woocommerce-checkout — no effect on other pages.
   ========================================================================== */

/* ---- 1. Coupon toggle + coupon form ------------------------------------- */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{background:#fff;border:1px solid #e2e2e2;border-left:4px solid var(--blue);border-radius:6px;padding:14px 18px;margin-bottom:1.5rem;font-family:var(--font-roboto);font-size:15px;color:var(--dark);list-style:none;}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{display:none;}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon{color:var(--red);font-weight:600;text-decoration:none;}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon:hover{text-decoration:underline;}
body.woocommerce-checkout form.checkout_coupon{background:#fafafa;border:1px solid #e2e2e2;border-radius:6px;padding:1.5rem;margin-bottom:1.75rem;display:flex;flex-wrap:wrap;gap:14px;align-items:stretch;}
body.woocommerce-checkout form.checkout_coupon .form-row{margin:0;padding:0;width:auto;flex:1 1 auto;}
body.woocommerce-checkout form.checkout_coupon .form-row-first{flex:1 1 260px;}
body.woocommerce-checkout form.checkout_coupon .form-row-last{flex:0 0 auto;}
body.woocommerce-checkout form.checkout_coupon .clear{display:none;}

/* ---- 2. Two-column layout (details left | order summary right, sticky) --- */
body.woocommerce-checkout form.checkout.woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1fr) 400px;grid-template-rows:min-content min-content 1fr;   /* notices, heading hugs content, review takes rest */grid-template-areas:"notices  notices"
"details  review-h"
"details  review";gap:12px 40px;align-items:start;}
body.woocommerce-checkout #customer_details{grid-area:details;align-self:start;width:100%;}
body.woocommerce-checkout #order_review_heading{grid-area:review-h;align-self:start;margin:0 0 4px;}
body.woocommerce-checkout #order_review{grid-area:review;align-self:start;position:sticky;top:24px;}

/* stack col-1 / col-2 inside the left column */
body.woocommerce-checkout .col2-set{display:block;width:100%;}
body.woocommerce-checkout .col2-set .col-1,body.woocommerce-checkout .col2-set .col-2{width:100%;max-width:100%;float:none;padding:0;}
body.woocommerce-checkout .col2-set .col-2{margin-top:8px;}

/* ---- 3. Section headings (Poppins, uppercase, red accent) ---------------- */
body.woocommerce-checkout .woocommerce-billing-fields > h3,body.woocommerce-checkout .woocommerce-additional-fields > h3,body.woocommerce-checkout #ffl_checkout_fields h3,body.woocommerce-checkout #order_review_heading{font-family:"Poppins",sans-serif;font-size:1.5rem;font-weight:700;text-transform:uppercase;color:var(--dark);letter-spacing:0;margin:0 0 1.25rem;padding-bottom:.65rem;border-bottom:2px solid #ececec;position:relative;}
body.woocommerce-checkout .woocommerce-billing-fields > h3::after,body.woocommerce-checkout .woocommerce-additional-fields > h3::after,body.woocommerce-checkout #order_review_heading::after{content:"";position:absolute;left:0;bottom:-2px;width:46px;height:2px;background:var(--red);}

/* ---- 4. Form rows + fields (matches .te-ffl-form conventions) ------------ */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,body.woocommerce-checkout #ffl_checkout_fields{display:flex;flex-wrap:wrap;gap:1.25rem 1.5rem;}
body.woocommerce-checkout #ffl_checkout_fields h3{flex:1 1 100%;}
body.woocommerce-checkout .checkout .form-row{margin:0;padding:0;float:none;flex:1 1 100%;display:flex;flex-direction:column;}
body.woocommerce-checkout .checkout .form-row-first,body.woocommerce-checkout .checkout .form-row-last{flex:1 1 calc(50% - .75rem);}

/* labels — uppercase, same as FFL form */
body.woocommerce-checkout .checkout .form-row label,body.woocommerce-checkout #ffl_checkout_fields label{display:block;font-family:"Poppins",sans-serif;font-size:12px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--dark);margin-bottom:.5rem;}
body.woocommerce-checkout .checkout label .required{color:var(--red);text-decoration:none;}
body.woocommerce-checkout .checkout label .optional{color:#9a9a9a;font-weight:400;text-transform:none;letter-spacing:0;}

/* inputs / textarea / select */
body.woocommerce-checkout .checkout input.input-text,body.woocommerce-checkout .checkout textarea.input-text,body.woocommerce-checkout .checkout select,body.woocommerce-checkout form.checkout_coupon input.input-text{width:100%;border:1px solid #dcdcdc !important;border-radius:6px;padding:.75rem .9rem;background:#fafafa;font-family:"Poppins",sans-serif;font-size:14px;color:var(--dark) !important;outline:none;box-shadow:none;transition:border-color .2s,background .2s,box-shadow .2s;}
body.woocommerce-checkout .checkout textarea.input-text{min-height:96px;resize:vertical;}
body.woocommerce-checkout .checkout input.input-text::placeholder,body.woocommerce-checkout .checkout textarea.input-text::placeholder{color:#aaa;}
body.woocommerce-checkout .checkout input.input-text:focus,body.woocommerce-checkout .checkout textarea.input-text:focus,body.woocommerce-checkout .checkout select:focus,body.woocommerce-checkout form.checkout_coupon input.input-text:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(7,7,100,.08);}

/* validation */
body.woocommerce-checkout .checkout .woocommerce-invalid input.input-text,body.woocommerce-checkout .checkout .woocommerce-invalid select{border-color:var(--red) !important;}

/* select2 (State dropdown) → match inputs */
body.woocommerce-checkout .checkout .select2-container .select2-selection--single{height:auto;min-height:44px;border:1px solid #dcdcdc;border-radius:6px;background:#fafafa;display:flex;align-items:center;padding:0 6px;transition:border-color .2s,background .2s,box-shadow .2s;}
body.woocommerce-checkout .checkout .select2-container--focus .select2-selection--single,body.woocommerce-checkout .checkout .select2-container--open .select2-selection--single{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(7,7,100,.08);}
body.woocommerce-checkout .checkout .select2-selection__rendered{line-height:42px!important;padding-left:8px;font-family:"Poppins",sans-serif;font-size:14px;color:var(--dark);}
body.woocommerce-checkout .checkout .select2-selection__arrow{height:42px;right:8px;}
body.woocommerce-checkout .checkout .select2-dropdown{font-family:"Poppins",sans-serif;font-size:14px;}

/* ---- 5. FFL checkout box (highlighted optional section) ------------------ */
body.woocommerce-checkout #ffl_checkout_fields{background:#f6f6f6;border:1.5px dashed #cfcfcf;border-radius:8px;padding:1.75rem;margin-top:1.75rem;}
body.woocommerce-checkout #ffl_checkout_fields h3{margin-bottom:.35rem;padding-bottom:0;border-bottom:none;}
body.woocommerce-checkout #ffl_checkout_fields textarea.input-text{min-height:64px;}

/* ---- 6. Order review table ---------------------------------------------- */
body.woocommerce-checkout #order_review{background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:6px 1.5rem 1.5rem;box-shadow:0 15px 40px rgba(0,0,0,.06);width:100%;font-family:var(--font-roboto);}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{width:100%;border-collapse:collapse;margin:1rem 0 1.25rem;font-size:15px;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{text-align:left;font-family:"Poppins",sans-serif;font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:#8a8a8a;font-weight:700;padding:0 0 12px;border-bottom:2px solid #ececec;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th.product-total{text-align:right;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table td,body.woocommerce-checkout .woocommerce-checkout-review-order-table th{padding:14px 0;vertical-align:middle;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item td{border-bottom:1px solid #ececec;}
body.woocommerce-checkout .cart_item .product-name{color:var(--dark);font-weight:600;line-height:1.35;}
body.woocommerce-checkout .cart_item .product-name img{border-radius:8px;border:1px solid #ececec;}
body.woocommerce-checkout .cart_item .product-quantity{color:#8a8a8a;font-weight:600;font-size:13px;}
body.woocommerce-checkout .cart_item .product-total,body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{text-align:right;white-space:nowrap;}

/* totals */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{padding:12px 0;border:none;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr th{text-align:left;font-weight:600;color:var(--dark);}
body.woocommerce-checkout .cart-subtotal td,body.woocommerce-checkout .cart-subtotal th{border-top:1px solid #ececec;}
body.woocommerce-checkout .order-total th,body.woocommerce-checkout .order-total td{border-top:2px solid #ececec;padding-top:16px;font-size:18px;}
body.woocommerce-checkout .order-total th{font-family:"Poppins",sans-serif;color:var(--blue);font-weight:700;text-transform:uppercase;}
body.woocommerce-checkout .order-total td strong{color:var(--red);font-weight:800;}

/* ---- 7. Payment + place order ------------------------------------------- */
body.woocommerce-checkout #payment{background:transparent;}
body.woocommerce-checkout #payment .payment_methods{margin:0;padding:0;list-style:none;}
body.woocommerce-checkout #payment .payment_methods .woocommerce-info{background:#fafafa;border:1px solid #e2e2e2;border-radius:6px;padding:14px 16px;font-family:var(--font-roboto);font-size:14px;color:var(--dark);margin:0 0 1.1rem;}
body.woocommerce-checkout #payment .payment_methods .woocommerce-info::before{display:none;}

/* confirmation / privacy note */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin-bottom:1.1rem;}
body.woocommerce-checkout .woocommerce-privacy-policy-text p{background:#fff6f6;border:1px solid #f2d3d5;border-left:4px solid var(--red);border-radius:6px;padding:13px 16px;font-family:var(--font-roboto);font-size:14px;line-height:1.6;color:var(--dark);margin:0;}
body.woocommerce-checkout .woocommerce-privacy-policy-text p strong{color:var(--red);}

/* place order button (matches FFL submit) */
body.woocommerce-checkout #place_order,body.woocommerce-checkout .checkout_coupon button.button{background:var(--blue);color:#fff;border:0;border-radius:6px;font-family:"Poppins",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;transition:background .2s,transform .1s;}
body.woocommerce-checkout #place_order{width:100%;padding:1rem 2rem;font-size:15px;}
body.woocommerce-checkout .checkout_coupon button.button{padding:12px 30px;font-size:14px;white-space:nowrap;}
body.woocommerce-checkout #place_order:hover,body.woocommerce-checkout .checkout_coupon button.button:hover{background:var(--red);transform:translateY(-1px);}

/* ---- 8. Notices (errors / messages) ------------------------------------- */
body.woocommerce-checkout .woocommerce-error,body.woocommerce-checkout .woocommerce-message{border-radius:6px;border:1px solid #e2e2e2;border-left-width:4px;list-style:none;padding:14px 18px;font-family:var(--font-roboto);font-size:14px;}
body.woocommerce-checkout .woocommerce-error{border-left-color:var(--red);background:#fff6f6;}
body.woocommerce-checkout .woocommerce-message{border-left-color:#2f8f4e;background:#f4fbf6;}


/* checkout form ke andar wale errors (required fields etc.) */
body.woocommerce-checkout form.checkout .woocommerce-NoticeGroup{grid-area:notices;margin:0 0 1.5rem;}
body.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-error{margin:0;}
body.woocommerce-checkout .woocommerce-error li{margin:0 0 6px;padding:0;list-style:none;line-height:1.55;}
body.woocommerce-checkout .woocommerce-error li:last-child{margin-bottom:0;}
body.woocommerce-checkout .woocommerce-error li::before{display:none;}
body.woocommerce-checkout .woocommerce-error li a{color:var(--dark);text-decoration:none;}
body.woocommerce-checkout .woocommerce-error li a:hover{text-decoration:underline;}
body.woocommerce-checkout .woocommerce-error li strong{color:var(--red);}
body.woocommerce-checkout .checkout-inline-error-message{margin:.4rem 0 0;font-family:var(--font-roboto);font-size:13px;color:var(--red);}

/*=== Order Received / Thank You Page ===*/
body.woocommerce-order-received .woocommerce-order{max-width:900px;margin:0 auto;font-family:var(--font-roboto);color:var(--dark);font-size:15px;}

/* ---- 1. Success notice --------------------------------------------------- */
body.woocommerce-order-received .woocommerce-notice--success{position:relative;background:#f4fbf6;border:1px solid #cfe8d6;border-left:4px solid #2f8f4e;border-radius:8px;padding:1.15rem 1.25rem 1.15rem 3.4rem;margin:0 0 1.75rem;font-family:"Poppins",sans-serif;font-size:1.05rem;font-weight:600;color:#1f6d3a;}
body.woocommerce-order-received .woocommerce-notice--success::before{content:"";position:absolute;left:1.15rem;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;background:#2f8f4e;	/* white check mark */background-image:linear-gradient(45deg,transparent 45%,#fff 45%,#fff 55%,transparent 55%);box-shadow:inset 0 0 0 2px #2f8f4e;}

/* ---- 2. Order overview cards -------------------------------------------- */
body.woocommerce-order-received .woocommerce-order-overview.order_details{list-style:none;margin:0 0 2rem;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;border:0;}
body.woocommerce-order-received .woocommerce-order-overview.order_details::before,body.woocommerce-order-received .woocommerce-order-overview.order_details::after{display:none;}
body.woocommerce-order-received .woocommerce-order-overview li{background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:15px!important;margin:0;border-right:1px solid #e2e2e2!important; /* override woo border */font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#8a8a8a;text-align:left;line-height:1.3;box-shadow:0 8px 24px rgba(0,0,0,.04);}
body.woocommerce-order-received .woocommerce-order-overview li strong{display:block;margin-top:.5rem;font-family:"Poppins",sans-serif;font-size:1.15rem;font-weight:700;letter-spacing:0;text-transform:none;color:var(--dark);}
body.woocommerce-order-received .woocommerce-order-overview li.total strong,body.woocommerce-order-received .woocommerce-order-overview li.total strong .amount{color:var(--red);}

/* short line under the overview (e.g. "Pay with cash upon delivery.") */
body.woocommerce-order-received .woocommerce-order > p{font-size:15px;color:var(--dark);margin:0 0 2rem;}

/* ---- 3. Section titles (Poppins, uppercase, red accent) ------------------ */
body.woocommerce-order-received .woocommerce-order-details__title,body.woocommerce-order-received .woocommerce-column__title{font-family:"Poppins",sans-serif;font-size:1.5rem;font-weight:700;text-transform:uppercase;color:var(--dark);margin:0 0 1.25rem;padding-bottom:.65rem;border-bottom:2px solid #ececec;position:relative;}
body.woocommerce-order-received .woocommerce-order-details__title::after,body.woocommerce-order-received .woocommerce-column__title::after{content:"";position:absolute;left:0;bottom:-2px;width:46px;height:2px;background:var(--red);}

/* ---- 4. Cards for each section ------------------------------------------ */
body.woocommerce-order-received .woocommerce-order-details,body.woocommerce-order-received .woocommerce-customer-details{background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:1.5rem 1.75rem;margin-bottom:1.5rem;box-shadow:0 15px 40px rgba(0,0,0,.05);}

/* ---- 5. Tables (order details, ffl, customer) --------------------------- */
body.woocommerce-order-received .shop_table{width:100%;border-collapse:collapse;margin:0;font-size:15px;}
body.woocommerce-order-received .shop_table thead th{text-align:left;font-family:"Poppins",sans-serif;font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:#8a8a8a;font-weight:700;padding:0 0 12px;border-bottom:2px solid #ececec;}
body.woocommerce-order-received .shop_table thead th.product-total{text-align:right;}
body.woocommerce-order-received .shop_table td,body.woocommerce-order-received .shop_table th{padding:13px 0!important;vertical-align:top;}

/* line items */
body.woocommerce-order-received .shop_table tbody .order_item td{border-bottom:1px solid #ececec;}
body.woocommerce-order-received .shop_table .product-name a{color:var(--dark);font-weight:600;text-decoration:none;transition:color .2s;}
body.woocommerce-order-received .shop_table .product-name a:hover{color:var(--red);}
body.woocommerce-order-received .shop_table .product-quantity{color:#8a8a8a;font-weight:600;font-size:13px;}
body.woocommerce-order-received .shop_table td.product-total{text-align:right;white-space:nowrap;font-weight:600;}

/* footer totals */
body.woocommerce-order-received .shop_table tfoot th,body.woocommerce-order-received .shop_table tfoot td{padding:11px 0;border-bottom:1px solid #f0f0f0;text-align:left;}
body.woocommerce-order-received .shop_table tfoot td{text-align:right;}
body.woocommerce-order-received .shop_table tfoot tr th{font-weight:600;color:var(--dark);}
body.woocommerce-order-received .shop_table tfoot tr:last-child th,body.woocommerce-order-received .shop_table tfoot tr:last-child td{border-bottom:0;}

/* grand total row = last "Total:" — highlight the amount */
body.woocommerce-order-received .shop_table tfoot tr:nth-child(2) th{color:var(--blue);font-family:"Poppins",sans-serif;text-transform:uppercase;}
body.woocommerce-order-received .shop_table tfoot tr:nth-child(2) td .amount{color:var(--red);font-weight:800;font-size:17px;}

/* ---- 6. FFL details table (label/value rows) ---------------------------- */
body.woocommerce-order-received .woocommerce-ffl-details{margin-top:1.75rem;}
body.woocommerce-order-received .ffl_details tbody th,body.woocommerce-order-received .ffl_details tbody td{border-bottom:1px solid #f0f0f0;padding:12px 0;}
body.woocommerce-order-received .ffl_details tbody tr:last-child th,body.woocommerce-order-received .ffl_details tbody tr:last-child td{border-bottom:0;}
body.woocommerce-order-received .ffl_details th{width:40%;text-align:left;font-family:"Poppins",sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.04em;font-weight:700;color:#8a8a8a;}
body.woocommerce-order-received .ffl_details td{color:var(--dark);font-weight:500;}

/* ---- 7. Customer / billing address -------------------------------------- */
body.woocommerce-order-received .woocommerce-customer-details address{border:0;border-radius:0;padding:0;font-style:normal;line-height:1.9;color:var(--dark);font-size:15px;}
body.woocommerce-order-received .woocommerce-customer-details--phone,body.woocommerce-order-received .woocommerce-customer-details--email{margin:.5rem 0 0;padding-left:1.6rem;position:relative;color:var(--dark);}




/* ============================================================
   Truly Epic — 404 Page
   Add this to style.css (or enqueue as error-404.css).
   Brand tokens: --te-red #e01414 · --te-blue #14143c
   ============================================================ */
.te-404{min-height:68vh;display:flex;align-items:center;justify-content:center;padding:5rem 1.25rem;background:radial-gradient(circle at 50% 38%,rgba(224,20,20,0.06),transparent 60%),#f7f8fb;text-align:center;}
.te-404-inner{max-width:620px;width:100%;}

/* --- Eyebrow --- */
.te-404-eyebrow{display:inline-block;font-family:"Poppins",sans-serif;font-size:12px;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:#e01414;margin-bottom:1.25rem;}

/* --- Scope / reticle visual around the 404 number --- */
.te-404-visual{margin-bottom:1.75rem;}
.te-404-scope{position:relative;display:inline-flex;align-items:center;justify-content:center;width:220px;height:220px;border-radius:50%;border:2px solid rgba(20,20,60,0.12);box-shadow:inset 0 0 0 10px #fff,inset 0 0 0 11px rgba(20,20,60,0.08);}

/* crosshair lines */
.te-404-scope::before,.te-404-scope::after{content:"";position:absolute;background:rgba(20,20,60,0.14);}
.te-404-scope::before{width:100%;height:1px;top:50%;}
.te-404-scope::after{height:100%;width:1px;left:50%;}
.te-404-code{position:relative;z-index:2;font-family:"Poppins",sans-serif;font-size:4.4rem;font-weight:800;line-height:1;color:#14143c;background:#f7f8fb;padding:0 0.5rem;letter-spacing:-0.02em;}

/* small red aim dot */
.te-404-reticle{position:absolute;z-index:3;top:26%;left:50%;transform:translateX(-50%);width:10px;height:10px;border-radius:50%;background:#e01414;box-shadow:0 0 0 4px rgba(224,20,20,0.18);animation:te404pulse 2.4s ease-in-out infinite;}
@keyframes te404pulse{
	0%,100%{transform:translateX(-50%) scale(1);opacity:1;}
	50%{transform:translateX(-50%) scale(1.35);opacity:0.7;}
}

/* --- Text --- */
.te-404-title{font-family:"Poppins",sans-serif;font-size:clamp(1.6rem,4vw,2.3rem);font-weight:700;color:#14143c;margin:0 0 0.75rem;}
.te-404-text{font-size:14px;line-height:1.7;color:var(--dark);max-width:460px;margin:0 auto 2rem;}

/* --- Buttons --- */
.te-404-actions{display:flex;gap:0.85rem;justify-content:center;flex-wrap:wrap;margin-bottom:2.25rem;}
.te-404-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 30px;border-radius:6px;font-family:"Poppins",sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:all 0.2s ease;}
.te-404-inner .te-404-btn-primary{background:var(--blue);color:#fff;}
.te-404-inner .te-404-btn-primary:hover{background:var(--red);color:#fff;transform:translateY(-2px);}
.te-404-inner .te-404-btn-ghost{background:transparent;color:#14143c;border:1.5px solid rgba(20,20,60,0.2);}
.te-404-inner .te-404-btn-ghost:hover{border-color:var(--red);background:var(--red);color:#fff;transform:translateY(-2px);}



/* --- Mobile --- */
@media (max-width:560px){
	.te-404{padding:3.5rem 1rem;}
	.te-404-scope{width:175px;height:175px;}
	.te-404-code{font-size:3.4rem;}
	.te-404-actions{flex-direction:column;}
	.te-404-btn{width:100%;}
}

/* --- Reduced motion --- */
@media (prefers-reduced-motion:reduce){
	.te-404-reticle{animation:none;}
	.te-404-btn:hover{transform:none;}
}


/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 767px) {
	body.woocommerce-order-received .woocommerce-order-overview.order_details {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 480px) {
	body.woocommerce-order-received .woocommerce-order-overview.order_details {
		grid-template-columns: 1fr;
	}
	body.woocommerce-order-received .woocommerce-order-details,
	body.woocommerce-order-received .woocommerce-customer-details { padding: 1.25rem; }
	body.woocommerce-order-received .ffl_details th { width: 45%; }
}


/* ==========================================================================
   RESPONSIVE Checkout
   ========================================================================== */

/* tablet — order summary drops below the form */
@media (max-width: 991px) {
		body.woocommerce-checkout form.checkout.woocommerce-checkout {grid-template-columns: 1fr;grid-template-areas:"notices""details""review-h""review";gap: 8px;}
	body.woocommerce-checkout #order_review { position: static; margin-top: 10px; }
	body.woocommerce-checkout #order_review_heading { margin-top: 14px; }
}

/* mobile */
@media (max-width: 600px) {
	body.woocommerce-checkout .checkout .form-row-first,
	body.woocommerce-checkout .checkout .form-row-last { flex: 1 1 100%; }

	body.woocommerce-checkout form.checkout_coupon { padding: 1.25rem; }
	body.woocommerce-checkout .checkout_coupon button.button { width: 100%; }

	body.woocommerce-checkout #order_review { padding: 6px 1.15rem 1.25rem; }
	body.woocommerce-checkout #ffl_checkout_fields { padding: 1.25rem; }

	/* prevent iOS zoom on focus */
	body.woocommerce-checkout .checkout input.input-text,
	body.woocommerce-checkout .checkout textarea.input-text,
	body.woocommerce-checkout .checkout select { font-size: 16px; }
}


.woocommerce .woocommerce-message {border-left-color: var(--blue);}
.woocommerce ul.products li.product .onsale,body.woocommerce span.onsale {background: var(--blue);font-size: 14px;text-transform: uppercase;font-weight: 600;}
.woocommerce form .form-row .button{font-size: 14px;}


/* ===== Responsive ===== */

@media (max-width: 900px) {
	.te-ffl-grid { grid-template-columns: 1fr; gap: 2rem; }
	.te-ffl-form { padding: 1.5rem; }
}
@media (max-width: 700px) {
	.te-ffl-form .row { grid-template-columns: 1fr; }
	.te-ffl-form .lg\:col-span-6 { grid-column: 1 / -1; }
}


@media (max-width: 900px) {
	.te-about-grid { grid-template-columns: 1fr; gap: 2rem; }
	.te-about-stack { padding: 0; }
	.te-about-stack-back { width: 100%; }
	.te-about-stack-front { position: static; width: 60%; margin-top: -3rem; margin-left: 1rem; }
}



/*=== Responsive ===*/

@media (max-width: 1190px) {
  
  html {font-size: 62%;}
  .te-newsletter .te-container, .te-site-footer .te-container,
  .site-container,.te-container,.te-footer-bottom .te-container{padding-left: 15px;padding-right: 15px;.te-container}
  .custom-top-bar p,p{font-size: 14px;}
  .custom-top-bar p{line-height: 1.3;}
  .custom-top-bar {height: auto;padding: 15px 0;}
  .main-navigation .primary-menu-container > ul > li.menu-item > a {font-size: 14px;}
  .header-navigation .menu {gap: 24px;}
  .card-before-header .txt {font-size: 14px;margin-bottom: 6px;}
  .card-before-header li, .card-before-header li a {font-size: 14px;}
  .te-card-title {font-size: 22px;}
  .te-feature-text {font-size: 14px;line-height: inherit;}
  body .te-btn,body .te-btn-outline {font-size: 14px;padding: 14px 30px;}
  .te-split-left,.te-split-grid .te-split-right {padding: 40px;}
  .te-split-grid .te-link-arrow,.te-footer-copy, .te-footer-copy a {font-size: 14px;}
  .te-eyebrow {font-size: 14px;}
  .te-promo-text p,.te-sell-text p,.te-blog .te-blog-excerpt,
  .te-newsletter-text,.te-footer-about p,.te-about-text p {font-size: 14px;line-height: inherit;padding: 0;}
  .te-blog .te-link-arrow {font-size: 15px;}
  .te-blog-title {font-size: 16px;}
  footer .te-footer-title {font-size: 18px;}
  .te-footer-links li a, .te-footer-links li span {font-size: 14px;}
  .te-footer-social a {width: 36px;height: 36px;}
  .te-features-grid .te-feature {padding: 0px 20px !important;}
  .te-feature-text br {display: none;}
  .te-footer-grid .te-footer-col:nth-child(3),.te-footer-grid .te-footer-col:nth-child(2){padding-left: 25px;}
  .te-newsletter-form input[type="email"] {font-size: 14px;height: 60px;}
  .te-newsletter-form .wpcf7-submit {height: 60px;font-size: 14px !important;width: auto;padding: 10px 30px;}
  .te-ffl-text p{font-size: 15px;}
  .te-faq-q{font-size: 16px;}
  .te-content{font-size: 14px;}
  .te-content h1{font-size:24px;}
  .te-content h2{font-size:20px;}
  .te-content h3{font-size:18px;}
  .te-content h4{font-size:17px;}
  .te-product-price {font-size: 18px;}
  body .te-product-info .te-product-name {font-size: 18px;line-height: 24px;}




}


@media (max-width: 1024px){
	
	.te-banner-heading {font-size: 38px;line-height: 50px;}
	.custom-top-bar{margin-bottom: 0;}
	#mobile-header {padding: 10px 0;}
	#mobile-drawer .drawer-inner {max-width: 100%;width: 300px;}
	.te-split-grid .te-split-heading {font-size: 24px;line-height: normal;}
	.te-product-info .te-product-name {font-size: 16px;}
	body .header-cart-button .header-cart-total {width: 18px;height: 18px;font-size: 10px;position: static;}
	.kadence-header-cart .header-cart-button .kadence-svg-iconset{width: 2.25rem;
  height: 2.1875rem;
  background: url(images/cart.png)no-repeat;background-size: 2.25rem auto;}
  .kadence-header-cart .header-cart-button .kadence-svg-iconset svg{display: none;}

}


@media (max-width: 900px){

.te-features-grid {display: grid;grid-template-columns: repeat(2, 1fr);gap: 40px;}
.te-features-grid .te-feature {width: 100% !important;border-left: 0;}
.te-features-grid .te-feature:nth-child(3),
.te-features-grid .te-feature:nth-child(4){border-top: 1px solid #2B2B2B;padding-top: 40px !important;}
.te-split-left, .te-split-grid .te-split-right {padding-left: 15px;padding-right: 15px;}


}



@media (max-width: 800px){

	.te-banner-image{flex: 0 0 30%;width: 30%;}
	.te-banner-inner{padding-bottom: 80px;}
	.te-banner-content {flex: 0 0 70%;width: 80%;float: left;padding-left: 40px;}
	.te-newsletter-body,.te-newsletter-form {flex: 0 0 100%;width: 100%;}
	.te-newsletter-grid {gap: 30px;}
	.te-newsletter form {width: 100%;}
	.te-newsletter-form input[type="email"] {padding-right: 32%;}
}



@media (max-width: 767px){
	.te-split-left{flex: 0 0 100%;width: 100%;height: 400px;background-position: center;}
	.te-split-grid .te-split-right{height: 400px;flex: 0 0 100%;}
	.te-split-grid {height: auto;min-height: auto;}
	.te-promo .te-promo-media,.te-promo .te-promo-body{width: 100%;flex: 0 0 100%;}
	.te-promo .te-promo-body{padding-left: 0;}
	.te-footer-grid {display: block;}
	footer .te-footer-grid .te-footer-col {width: 100% !important;margin-bottom: 30px;border: 0 !important;}
	.te-footer-grid .te-footer-col:nth-child(3), .te-footer-grid .te-footer-col:nth-child(2) {padding-left: 0;}
	footer .te-footer-grid .te-footer-col:last-child{margin-bottom: 0;}
	.te-site-footer {padding-top: 50px;padding-bottom: 50px;}
	.te-banner-image {flex: 0 0 100%;width: 100%;}
	.te-banner-content {flex: 0 0 100%;width: 100%;padding-left: 0;}
	.te-banner-image img {max-width: 250px;margin-bottom: 30px;}
	.te-sell-text {max-width: 100%;}
	.te-blog{margin-top: 50px;}
	.te-sell,.te-brands{padding-top: 50px;}
	.te-promo,.te-products,.te-features {padding-bottom: 50px;padding-top: 50px;}
	.te-blog .te-section-title,.te-sell .te-section-title,
	.te-promo .te-section-title,.te-products .te-section-title,.te-newsletter .te-newsletter-title,
	.te-about-heading {font-size: 25px;line-height: 30px;}
	.te-footer-bottom .te-container {flex-direction: column;gap: 20px;}

	.te-carousel-nav.te-nav-bottom,.te-blog-nav.te-nav-bottom {
		display: flex;
		justify-content: center;
		gap: .75rem;
		margin-top:30px;
		width: 100%;
	}
	.te-page-hero-title, .entry-hero.page-hero-section .entry-title,.te-ffl-heading {font-size: 25px;}
	.te-video-img {height: 150px;}
	.te-video-poster .te-video-play {width: 40px;height: 40px;}
	.te-banner-heading {font-size: 28px;line-height: 34px;margin-bottom: 20px;}
}

@media (max-width: 576px){

	.te-banner-image img {max-width: 200px;margin-bottom: 20px;}
	.te-banner-inner{padding-top: 30px;padding-bottom: 30px;}
	.te-banner-swiper .swiper-button-next, .te-banner-swiper .swiper-button-prev {position: relative;margin: 0;float: left;}
	.te-banner-swiper .swiper-button-next {float: right;}
}

@media (max-width: 480px){

	.te-features-grid {grid-template-columns: repeat(1,1fr);grid-row-gap: 30px;}
	.te-features-grid .te-feature:nth-child(3), .te-features-grid .te-feature:nth-child(4) {border-top: 0;padding-top: 0px !important;}
	.te-features-grid .te-feature {border-bottom: 1px solid #2b2b2b;padding-bottom: 30px !important;text-align: center;}
	.te-feature-icon{display: block;margin-left: auto;margin-right: auto;}
	.te-newsletter-form .wpcf7-submit {position: static;width: 100%;margin-top: 15px;}
	.te-newsletter-form input[type="email"] {padding: 15px;}

}