/* template.css overrides -- use only when absolutely necessary
================================*/
.banner {padding-top:41.667%;}
.banner-img {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
max-height: 300px;
background: url(../imgs/hero.jpg) no-repeat 0 0;
background-size:289.722222%;
}
.header2021-logo-img > img{
  width:102px !important;
  height:auto;
}

.price{margin:0 0 0.825em 0;}
.price-save-dollar,.price-save-label,.price-save-percent{position:relative;background:#cc4e00;color:#fff;font-weight:700;font-size:13px;}
.price-save-percent:after{left: 100%;border-bottom:19px solid #cc4e00;border-right: 10px solid transparent;margin-bottom:0;}
.price-save-label{padding:2px 0 1px 6px}
.price-save-dollar{padding:2px 0 1px 2px}
.price-save-percent{padding:2px 6px 1px 2px}
.price-save-label:before,.price-save-percent:after{content:'';position:absolute;bottom:0;width:0;height:0;}
.item-cell{border-bottom:none;}
.item-promo{margin-top:1em;}
.item-promo-code{border-color:#888;}
.item-promo-title span{color:#333;}
.item-promo-info{color:#cc4e00;}
.item-promo-code{padding:1.5em 5px 1em 5px;height:auto;color:#cc4e00;}
.item-promo-code-save{display:inline;}
li.mir{display:none;}
.instantSavings, .mir{display:block;}
.finalPrice{font-size:1.6em;}
.instantSavings{font-size:0.925em}
.finalPrice, .instantSavings{color:#000;}
.shipping{visibility:hidden;}
.mir{font-size:1em;margin:0;color:#016B04}
.header .logo { width:125px; }
.items-grid:after { background:none; }
.item-title a { font-size:14px; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; }
.item-container:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	-webkit-transition: all 0.2s ease-in-out;
	   -moz-transition: all 0.2s ease-in-out;
		 -o-transition: all 0.2s ease-in-out;
			transition: all 0.2s ease-in-out;
}
/* No Orange Bar for Custom LPs with Black Background
.price-save-dollar,.price-save-label,.price-save-percent{position:relative;background:none;color:#fff;font-weight:700;font-size:13px;}
.price-save-percent:after{left: 100%;border-bottom:none;border-right: 10px solid transparent;margin-bottom:0;}
================================*/

/* custom CSS
================================*/

:root {
	--ngg-darkblue:#09144f;
	--ngg-blue:#084BA6;
	--ngg-orange:#fa9d28;
	--ngg-darkorange: #ff8500;  
	--ngg-footgry: #333;  
	--ngg-opensans:'Open Sans', sans-serif;
	--ngg-btn-txt:#212121;
	--ngg-lblue:#74d5ff; 
	--ngg-dblue:#00b4b4;
  }

body { background-color:#031c4c; }
.section-inner { max-width:1920px; }
.ngg-inner-content { text-align:center; font-family:'Montserrat',sans-serif; }
.ngg-container { position:relative; max-width:1580px; width:100%; margin:1% auto 5%; }
.ngg-item-img { margin:auto; text-align:center; }
/* THE MAGIC — one rule to rule them all */
    .ngg-auto-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)); }

    /* Optional: force-exact columns when you really need exactly 2, 3, 4… */
    .ngg-cols-2 { grid-template-columns: repeat(2, 1fr); }
    .ngg-cols-3 { grid-template-columns: repeat(3, 1fr); }
    .ngg-cols-4 { grid-template-columns: repeat(4, 1fr); }
    .ngg-cols-5 { grid-template-columns: repeat(5, 1fr); }
    .ngg-cols-6 { grid-template-columns: repeat(6, 1fr); }

    /* Card style */
    .ngg-card { background: linear-gradient( 180deg , rgba(12, 44, 100, 1) 0% , rgba(25, 64, 134, 1) 100% ); border-radius: 12px; padding:15px; font-family:'Open Sans',sans-serif; }
	.ngg-card-sold { border-radius: 12px; padding:15px; font-family:'Open Sans',sans-serif; background-color:#001434; }

    /*.ngg-card:hover { transform: translateY(-8px); box-shadow: 0 10px 20px rgba(0,0,0,0.12); }*/

/* NGG BUTTON Sizes */  
.btn-primary, .button.button-primary, .ngg-shopall, .ngg-buynow { text-transform:none; font-family:var(--ngg-opensans); border:0; background-color:#fccb67; color:#000; }
.ngg-btn { border:0; background:none; width:100%; margin:3% 0; }
.ngg-item-btn { margin:auto; text-align:center; }
.ngg-item-btn a { border-radius:35px; width:100%; letter-spacing:0; font-size:clamp(14px, 1.5vw, 1rem); }
.ngg-shopall, .ngg-buynow { border-radius:50px; text-align:center; transition:0.5s;	font-weight:700; font-family:var(--ngg-opensans); }
.ngg-shopall { border-radius:50px; text-align:center; background-color:#fa9d28; color:#212121; border:0; padding:6px 2%; transition:0.5s; font-weight:700; text-transform:none; font-family:'Open Sans' !important; font-size:clamp(1.5rem, 2vw, 2rem); }
.ngg-buynow { margin-top:20px; padding:8px 6%; font-size:clamp(1.25rem, 2vw, 1.60rem); }
.ngg-shopall:hover, .ngg-buynow:hover, .ngg-item-btn a:hover { background-color:#ff8500; transition:0.35s; text-decoration:none; color:#212121; }
.ngg-cta { width:100%; }
.ngg-cta2 { text-align:center; }
.ngg-item-gift { color:#fff; background-color:#177428; padding:1px 2%; max-width:150px; border-radius:30px; text-align:center; font-weight:500; }
.ngg-btn-mt5 { margin-top:20px; }
.ngg-14px { font-size:14px; }

/* NGG BUTTON Colors 
.ngg-btn-blue { background-color: #006aff; color:#fff; }
.ngg-btn-ext { padding-left:4%; padding-right:4%; }*/

.ngg-btn-stroke { background-color: #fff; border:2px solid #006aff; color:#006aff;  }
.ngg-btn-yellow { background-color: #fccb67; }
.fa-caret-right { position: relative; top:1px; }
.ngg-btn-white { background-color: #fff;}

.ngg-hero { margin:0 auto; font-family:'Montserrat',sans-serif; text-align:center; padding:0 0 0; }
.ngg-hero-img { margin:auto; position:relative; top:0px; }
.ngg-hero-img img { width:100%; }
.ngg-hero2 { position:relative; margin:0 auto; }
.ngg-hero2 img { max-width:1920px; width:100%; }

.ngg-hero-details { display:flex; flex-direction:column; align-items:center; max-height:255px; }
.ngg-hero-details div { padding:1% 0; }
.ngg-hero-details div > p { max-width:380px; }
.ngg-hero-img { margin:auto; position:relative; top:0px; }
.ngg-hero-img img { width:100%; }
.ngg-hero-bg { background:url('../imgs/hero.jpg') no-repeat top center; background-size:100%; padding-top:11%; }
.ngg-hero-calendar-bg { background:url('../imgs/hero-calendar.jpg') no-repeat top center; background-size:120%; padding-top:14%; }
.ngg-feature { margin:5% 5% 0; }
.ngg-centered { text-align:center; }
.ngg-bg-purple { background-color: purple; }

.ngg-fineprint { font-size:clamp(11px, 1vw, 1rem); }
.ngg-contact { margin:0% auto 3%; }
.ngg-img img { max-width:500px; width:100%; }
.ngg-txt-italic { font-style:italic; }
.ngg-list li { text-align:left; }
.ngg-disclaimer { padding:3%; color:#fff; font-size:clamp(1.2rem, 1.6vw, 1.6rem); font-family:'Open Sans', sans-serif; }



/* NGG Columns */
.ngg-1col, .ngg-2col, .ngg-3col, .ngg-4col { display:flex; justify-content:space-between; flex-wrap:wrap; margin:2% auto; gap:0 20px; }
.ngg-1col div { flex:95%; padding-top:1%; padding-bottom:1%; }
.ngg-2col div { flex:49%; }
.ngg-3col div { flex:30%; }
.ngg-4col div { flex:20%;  padding:1%; border-radius:10px; }


/* NGG Spacings */
.ngg-space-1 { padding:1% 0; }
.ngg-space-2 { padding:2% 0; }
.ngg-padd15 { padding-left:15%; padding-right:15%; }
.ngg-row-space { padding-top:3%; }
.ngg-pop-space { margin-top:17%; }


/* NGG TXT Sizes */
.ngg-txt-left { text-align:left; }
.ngg-h1 { font-size:clamp(4rem, 5vw, 5rem); line-height:1.2; color:#000 }
.ngg-h1 span { color:#006aff; }
.ngg-h2 { font-size:clamp(2.5rem, 4vw, 3.5rem); }
.ngg-h3 { font-size:clamp(2rem, 3vw, 3rem); }
.ngg-h4 { font-size:clamp(1.8rem, 3vw, 2.8rem); }
.ngg-h4 sup { font-size:clamp(1rem, 1.5vw, 1rem); font-weight:500; }
.ngg-p { font-size:clamp(1.5rem, 1.8vw, 1.8rem); }
.ngg-fontfam h1, .ngg-fontfam h2, .ngg-fontfam h3,
	.ngg-fontfam h4, .ngg-fontfam h5, .ngg-fontfam h6, .ngg-price { font-family:'Montserrat', sans-serif; }


/* NGG TXT Custom Sizes */
.ngg-initpay { display:flex; justify-content:space-evenly; max-width:250px; margin:auto; gap:0 10px; align-items:center; padding:0; max-height:80px; }
.ngg-initpay > div { padding:0; }
.ngg-price { font-weight:700; }
.ngg-dollar { font-size:clamp(5rem, 6vw, 6rem); font-family:'Montserrat',sans-serif; font-weight:900; }	
.ngg-value { font-size:clamp(8rem, 10vw, 10rem); font-family:'Lato', sans-serif; font-weight:800; }
.ngg-price-txt { font-size:clamp(3rem, 3vw, 3.85rem); font-family:'Montserrat',sans-serif; font-weight:700; text-align:left; line-height:25px; }
.ngg-price-txt sup, .ngg-h4 sup, .ngg-font400 { font-weight:400; }
.ngg-start-time { position:relative; top:0px; color:#fff; }
.ngg-start-time h1 { font-size:clamp(2.8rem, 4.5vw, 4.5rem); font-weight:800; line-height:1; padding:0 0 10px; font-family:'Montserrat',sans-serif; }
.ngg-start-time h2 { font-size:clamp(1.65rem, 2vw, 1.8rem); font-family:'Open sans',sans-serif; line-height:1; padding-bottom:6px;}



/* NGG TXT Colors */
.ngg-txt-white { color:#fff; }
.ngg-txt-blue { color:#006aff; }
.ngg-txt-dgrey { color:#454f5b; }
.ngg-txt-gold { color:rgba(252, 203, 103, 1); }
.ngg-txt-lblue { color:rgba(164,255,255,1); }


/* NGG BG Colors */
.ngg-bg-lgrey { background-color:#f4f6f8; }
.ngg-bg-gpurple { background: #0B003A;
background: linear-gradient(314deg, rgba(11, 0, 58, 1) 5%, rgba(69, 46, 137, 1) 30%, rgba(83, 73, 114, 1) 72%, rgba(41, 25, 90, 1) 95%); padding:10px 0; }
.ngg-bg-lblue { background-color:#a4ffff; }
.ngg-bg-goldorange { background: linear-gradient( -45deg , rgba(200, 141, 41, 1) 0% , rgba(247, 226, 76, 1) 21% , rgba(255, 251, 220, 1) 47% , rgba(247, 226, 76, 1) 72% , rgba(200, 141, 41, 1) 100% ); }

/* Toggle for FAQ section */
.ngg-faq-title { text-align:center; padding:3% 0 2%; color:#fff; font-family:'Open Sans',sans-serif; }
.ngg-all-faq { display:flex; max-width:1300px; width:96%; margin:auto; gap:10px; text-align:left; font-family:'Open Sans',sans-serif; }
.ngg-all-faq div { flex:1; }
.ngg-faq { display:flex; flex-direction:column; gap:5px; }
.ngg-faq details { width:100%; max-width:640px; margin:0 auto 1%; background-color:#fff2; color:#fff; border-radius:8px; border:1px solid #fff5; transition:.58s; }
.ngg-faq summary { padding:10px 15px; cursor:pointer; border-radius:8px; font-weight:bold; display:list-item; transition:.58s; }
.ngg-faq summary:hover { background: #FFF3; /*
background: linear-gradient(90deg, rgba(165, 255, 255, 1) 0%, rgba(233, 255, 255, 1) 50%); color:#09144f; transition:.58s; */}
.ngg-faq details[open] > summary { border-bottom:1px dotted #ccc; border-bottom-left-radius:0; border-bottom-right-radius:0; transition:0s; background: #FFF3;
/*background: linear-gradient(90deg, rgba(165, 255, 255, 1) 0%, rgba(233, 255, 255, 1) 50%);*/ color:#fff; }
.ngg-faq details p, .ngg-faq details ol { padding:10px 20px; color:#fff; background-color:#fff1; border-bottom-left-radius:8px; border-bottom-right-radius:8px; }
.ngg-faq details ol li { padding:0 0 10px; }
.ngg-faq details a { text-decoration: underline; }


.ngg-thunder-bolt {
    width: 40px;
    height: 50px;
    /* The Gradient */
    background: linear-gradient(180deg, #fec98d 0%, #ff8500 100%);    
    /* Creating the lightning shape using coordinates */
	clip-path: polygon(
      40% 0%, 
      90% 0%, 
      60% 30%, 
      100% 30%, 
      0% 100%, 
      43% 45%, 
      0 45%
    );
}

.ngg-thunder-bolt-preview {
	width: 40px;
    height: 50px;
    /* The Gradient */
    background: linear-gradient( 180deg , rgba(59, 179, 255, 1) 0% , rgba(39, 158, 255, 1) 100% );
	clip-path: polygon(
      40% 0%, 
      90% 0%, 
      60% 30%, 
      100% 30%, 
      0% 100%, 
      43% 45%, 
      0 45%
    );
}


/* responsive CSS
================================*/
@media only screen and (max-width: 768px) {
  /* insert responsive CSS for tablet screens below 768px */
  .ngg-hero-bg { padding-top:27%; background-image:url('../imgs/hero-sm.jpg'); background-size:100%;  }
  .ngg-start-time { top:16px; }
  .ngg-cta { margin-top:3%; }
  .ngg-start-time h2 { line-height:1.25; padding:0 5% 2%; } 
  .ngg-calendar-container { margin-top:6%; }
  .ngg-pop-space { margin-top:21%; }
  .ngg-overlay { width:93%; }
  .ngg-calendar-container {
    display: grid;
    /* Forces 3 equal columns */
    grid-template-columns: repeat(3, 1fr);
    /* Sets 5 rows at 100px each */
    grid-template-rows: repeat(5, 100px);
    gap: 15px; /* Slightly smaller gap for mobile screens */
    margin-bottom: 30px;
    margin-top: 3%;}
  .ngg-popcard { min-height:unset; }
  .ngg-bg-pop2 { background:url(../imgs/doorbuster-popup-bg.png) no-repeat, linear-gradient(to bottom, rgb(4 30 80), rgba(27, 91, 205, 1)); background-size:150%; background-position:top center; }
  
}

@media only screen and (max-width: 550px) {
	/* insert responsive CSS for mobile screens below 550px */
  .items-grid .item-cell { width:90%; text-align:center; border-bottom:1px solid #333; padding-bottom:8%; }
  .item-img > img { max-width:300px; }
	.items-grid .item-title { height:auto; }
    .ngg-shopall { padding:6px 7% 8px; }
	.ngg-all-faq { flex-direction:column; }   
	.ngg-start-time { top:6px; }
	.ngg-item-deal { flex-direction:row; gap:20px; }
	.ngg-item-deal img { max-width:100px; max-height:100px; }
	.ngg-card { padding:5px 5px 10px; }
	.ngg-item-price { align-items:normal; width:95%; }
	.ngg-container { margin:9% auto 5%; }
	.alert-body { padding:0 3% 0 0; }
	.ngg-item-deal > div { flex:unset; }
}

@media only screen and (min-width: 375px) {
	/* insert responsive CSS for screens above 375px */
}
@media only screen and (min-width: 481px) {
	/* insert responsive CSS for screens above 481px */
}
@media only screen and (min-width: 641px) {
	/* insert responsive CSS for screens above 641px */
	.banner { padding-top: 21.96%; }
	.banner-img {
		background-position:100% 0;
		background-size: 152.7086383601757%;
	}	

	.items-grid .item-cell { width:19%; margin:0; }
}

@media only screen and (min-width: 769px) {
	/* insert responsive CSS for screens above 769px */
}

@media only screen and (min-width: 1025px) {
	/* insert responsive CSS for screens above 1025px */
}