@media (min-width: 576px) {
    .modal.adimage .modal-dialog {max-width:800px;}
    .modal.adimage .modal-dialog .modal-body img {margin: 0 auto; display: block;}
    
    .modal-instructions.modal .modal-dialog {max-width:800px; width: auto; text-align: center;}
    .modal.lto .modal-dialog {max-width: 875px; width: auto;}
    #qrcode.modal .modal-body {padding: 20px 15px;}
    #qrcode.modal .modal-body img {width:350px;}
    
    #subscribemodal .modal-dialog {max-width: 800px;}
    #subscribemodal .subscribeindex form {padding: 15px;}
    
    /**** Information Pages *****/
    
    /* Response */
    .formbody.success .rightoutput h3 {font-size: 1.2rem; line-height:1.6rem;}
}

@media (min-width: 768px) {
    body {font-size: 18px; font-size: 1.125rem;}
    .btn {font-size: 18px; font-size: 1.125rem;}
    
    h1 {font-size: 34px; font-size: 2.125rem;}
    h2 {font-size: 26px; font-size: 1.625rem;}
    h3 {font-size: 24px; font-size: 1.5rem;}
    h4 {font-size: 22px; font-size: 1.375rem;}
    
    #spacer {height:133px;}
    
    /* header */
    .topbar .container-fluid {padding-top:9px; padding-bottom: 9px;-webkit-box-pack:flex-end; -ms-flex-pack:end; justify-content: flex-end; height:43px;}
    header .navbar .container-fluid {height:89px;}
    .navbar-brand {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -ms-flex-wrap:nowrap; flex-wrap:nowrap; -webkit-box-align: center;-ms-flex-align: center;align-items: center; width:246px;}
    .navbar-brand img {height:25px;}
    
    #navbarCollapse {-webkit-box-pack:flex-end; -ms-flex-pack:end; justify-content: flex-end; flex-grow: 0; height:100%}
    #navbarCollapse .navbar-nav {-webkit-box-pack:space-around; -ms-flex-pack:distribute; justify-content: space-around;-webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center;height:100%}
    #navbarCollapse .navbar-nav > li { padding: 0px; box-shadow: none; background-color: transparent; white-space: nowrap; height:100%; webkit-box-align: center;-ms-flex-align: center;align-items: center; display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; position: relative;}
    #navbarCollapse .navbar-nav > li > a {font-size: 16px; font-size: 1rem; padding: 5px 8px; line-height: 1.25; display: -webkit-box;display: -moz-box;display: -webkit-flex;display: -ms-flexbox;display: flex;flex: 1 1 auto;-webkit-box-pack: center;-ms-flex-pack:center;justify-content: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;text-align: center;position: relative;}
    
    
    /* PROGRAM Main Menu */
    header.program #navbarCollapse .navbar-nav > li > a {}
    
    #navbarCollapse .sub-menu {position: absolute; top:100%; left:50%; opacity:0; visibility: hidden;transform: scale(1,0); height: auto; display: block; z-index: 5; border: none; width: 250px; margin-left:-125px; transform-origin: 0 0; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; padding: 0px; border-radius:0; border-top:2px solid #b32572;box-shadow: rgba(0, 0, 0, 0.3) 0px 2px 5px -2px;background:#fff;}
    
    /* Footer */
    footer {color: #fff; background:#ffd301; background:-webkit-gradient(linear,left top,right top,from(#ffd301),color-stop(20%,#f4702a),color-stop(40%,#ee254a),color-stop(60%,#ed2870),color-stop(80%,#c52378),to(#861766));background:linear-gradient(90deg,#ffd301 0,#f4702a 20%,#ee254a 40%,#ed2870 60%,#c52378 80%,#861766);}
    footer .container-fluid:after {display: none;}
    
    footer .copyright {color: #fff; margin: 0;}
    footer .footerlinks ul li a {color:#fff;}
    footer .footerlinks ul li a:hover {color:#fff;}
    
    /* Index */
    #mainimage .container-fluid {padding-bottom: 35px; padding-top:35px;}
    #mainimage .caption {min-height: 200px;}
    #mainimage .caption h1 {}
    #mainimage .locations a.card {font-size: 1rem; line-height: 1.4;}
    #mainimage .locations a.card .card-body i {font-size: 50px; margin: 0 0 9px;}
    #mainimage .locations a.card .card-body img {height:50px;margin: 0 0 9px;}
    #mainimage .locations a.card .card-body h2 {font-size: 1.125rem;}
    
    .indexmiddle .locations a.card {font-size: 1rem; line-height: 1.4;}
    .indexmiddle .locations a.card .card-body i {font-size: 50px; margin: 0 0 9px;}
    .indexmiddle .locations a.card .card-body img {height:50px;margin: 0 0 9px;}
    .indexmiddle .locations a.card .card-body h2 {font-size: 1.125rem;}
    
    #faqsaccordion .accordion-item h2 button {font-size: 1.2rem;padding-right:2.5rem;}
    #faqsaccordion .accordion-item h2 button i {font-size: 2.25rem;}
    
    #indexslides .caption h2 {font-size: 42px;}
    
    /* FAQS (programs) */
    #faqs.accordion .accordion-item h3 a.accordion-button {font-size: 1.375rem;}
    
    /* Inside Pages */
    body.mainsite .pagecontent {padding: 80px 0 40px;}
    
    /* Discounts & Program Info */
    .toplinks a {-webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center; -ms-flex-direction: column; flex-direction:column; font-size: 1.5rem; padding:24px 30px 30px;}
    .toplinks a i {font-size: 2.75rem; margin: 0 auto 1.5rem;}
    
    /* Signatures */
	#signature-pad {width:538px;}
	#signature-modal input.form-control {width:75%;}
	.pad-outer {padding: 15px;}
    #signature-modal .modal-dialog {width: 600px; max-width: 600px;}
    
    /* Response */
    .formbody.success #enrollformresponse .height {height: 260px;}
    .formbody.success #enrollformresponse .leftoutput { width:40%; padding: 0;}
    .formbody.success #enrollformresponse .leftoutput img {width:200px;}
    .formbody.success #enrollformresponse .rightoutput {width:60%; text-align: left;}
    .formbody.success #enrollformresponse .rightoutput h3 { margin-top:0;}
    .formbody.success #enrollformresponse .rightoutput h5 {margin-bottom: 1.5rem;margin-top:1.5rem;}
    .formbody.success .rightoutput a {font-size: 1.125rem;}
}

@media (min-width: 992px) {
    h1 {font-size: 42px; font-size: 2.625rem;}
    h2 {font-size: 34px; font-size: 2.125rem;}
    h3 {font-size: 30px; font-size: 1.875rem;}
    h4 {font-size: 26px; font-size: 1.625rem;}
    
    /* Header */
    .topbar .container-fluid {}
    .topbar ul li {margin: 0 0 0 30px;}
    .topbar ul li:after {right: -1rem;}
    
    #navbarCollapse .navbar-nav > li {margin: 0 0 0 30px;}
    #navbarCollapse .navbar-nav > li > a {text-align: center; font-size: 20px; font-size: 1.25rem;}
    
    /* Footer */
    footer .container-fluid {padding-top:7px;padding-bottom: 7px; -ms-flex-direction: row; flex-direction: row; -webkit-box-pack:space-between; -ms-flex-pack:justify; justify-content: space-between;}
    
    /* PROGRAM Main Menu */
    header.program #navbarCollapse .navbar-nav > li {margin: 0 0 0 20px;}
    header.program #navbarCollapse .navbar-nav > li > a {font-size: 18px; font-size: 1.15rem;}
    #navbarCollapse .navbar-nav > li.search > a {width:32px;height:32px;}
    #navbarCollapse .navbar-nav > li.search > a i {font-size: 24px;}
    
    /* PROGRAM Main Menu */
    header.program #navbarCollapse .navbar-nav > li > a {padding: 0px; outline-offset: .5rem;}
    #navbarCollapse li.hasdrop.dropOpen > a {color:#b32572}
    #navbarCollapse li.hasdrop.dropOpen > a:hover {color:#830065}
    #navbarCollapse li.hasdrop.dropOpen > a i.bi-chevron-down:before {content:"\F286";}
    #navbarCollapse .navbar-nav > li > a i.bi-chevron-down {display: block; position: relative; top:auto; left: auto;color:#830065;margin: 0 0 0 11px; font-size: 1.125rem; transform: none;height:auto;}
    #navbarCollapse .navbar-nav > li > a i.bi-chevron-down:before {color:#830065; -webkit-background-clip:none;background:none;-webkit-text-fill-color:#830065;}
    
    #navbarCollapse .sub-menu {position: absolute; top:100%; left:50%; opacity:0; visibility: hidden;transform: scale(1,0); height: auto; display: block; z-index: 5; border: none; width: 250px; margin-left:-125px; transform-origin: 0 0; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; padding: 0px; border-radius:0; border-top:2px solid #b32572;box-shadow: rgba(0, 0, 0, 0.3) 0px 2px 5px -2px;background:#fff;}
    #navbarCollapse .sub-menu:before {content: ''; display: block; position: absolute;top:3px;left:50%; transform:translate(-50%,calc(-100% - 4px)); border-left:9px solid transparent; border-right: 9px solid transparent; border-bottom: 9px solid #b32572}
    #navbarCollapse li.hasdrop.dropOpen .sub-menu {opacity: 1; visibility: visible; transform: scale(1);}
    
    #navbarCollapse .sub-menu > ul {position: relative; background:#fff;padding:1rem 0; width:100%; border:none;}
    #navbarCollapse .sub-menu > ul li {position: relative;}
    #navbarCollapse .sub-menu > ul li.nothing {display: block;padding:.35rem 1rem; color:#333; font-size: .95rem;line-height: 27px; font-weight: 400; white-space: normal; font-style:italic;}
    #navbarCollapse .sub-menu > ul li a {position: relative; display: block;padding:.35rem 1rem; color:#333; font-size: .95rem; text-decoration: none; line-height: 27px; font-weight: 400;}
    #navbarCollapse .sub-menu > ul li a:hover {background-color: #f5f5f5; color:#830065}
    /*#navbarCollapse .sub-menu > ul li a.active {background-color: #f5f5f5; color:#830065}*/
    
    /* Index */
    #mainimage .container-fluid {padding-bottom:55px;padding-top:0;}
    #mainimage .slideimage {position: absolute; top:0; left: 50%; width:100vw; height:100%; -webkit-transform:translate(-50%); transform: translate(-50%);overflow: hidden;}
    #mainimage .slideimage:before {background:-webkit-gradient(linear,left top,right top,from(hsla(0,0%,100%,.75)),to(hsla(0,0%,100%,0))); background:linear-gradient(90deg,hsla(0,0%,100%,.75),hsla(0,0%,100%,0)); opacity: 1; top:auto; bottom:0; width:100%;}
    #mainimage .slideimage img {object-fit: cover; width:100%; object-position: bottom; font-family: "object-fit: cover; object-position: center;"; /*height:780px; width:auto; max-width:none;object-position: 0% 90%;max-height:none;*/}
    #mainimage .caption {padding: 70px 1rem; width:60%; max-width:600px; text-align: center; min-height: 0;}
    #mainimage .caption > div {margin: 0 0 21px;}
    #mainimage .caption h1 {font-size: 1.75rem; font-weight: 600; color:#333; display: block; line-height: 1.2;}
    #mainimage .caption h1 > span {color:#830065; font-weight: 900; line-height: 1; font-size: 6rem; max-width: 450px; margin-left: auto; margin-right: auto;display: block; text-transform: uppercase;}
    #mainimage .caption p {color:#333;}
    
    #mainimage .locations a.card {font-size: 1.125rem; border:none; box-shadow: 0 0 29px rgba(0,0,0,.15);}
    #mainimage .locations a.card .card-body {padding: 40px 32px;}
    #mainimage .locations a.card .card-body i {font-size: 60px;}
    #mainimage .locations a.card .card-body img {height:70px;}
    #mainimage .locations a.card .card-body h2 {font-size: 1.5rem;}
    
    .indexbottom .container-fluid {padding-top:75px; padding-bottom: 100px;}
    #faqsaccordion .accordion-item h2 button {font-size: 1.35rem;}
    
    #indexslides .caption h2 {font-size: 50px;}
    #indexslides .caption p {font-size: 35px; font-weight: 500;}
    .indextabs ul.nav-pills li a {font-size: 17px;}
    
    #discountindex ul li a {font-size: 18px;}
    #discountindex ul li a span i {font-size: 16px;}
    
    /* Form Pages */
    body.program .formContainer #formresponse > div p {text-align: left;}
    
    /* FAQS (programs) */
    #faqs.accordion .accordion-item h3 a.accordion-button {font-size: 1.625rem;}
    
    /* Inside Pages */
    body.program.insidepage .maincontent {/*border-width: 25px 25px 0px 25px; border-color:#fff; border-style: solid; background-color: #fff;*/ padding-bottom: 50px; }
    .leftcolumn {margin-top: -12px;}
    .leftcolumn .sidebar {padding: 0px 16px 16px 16px;}
    .leftcolumn .sidebar:before {content: ''; display: block; position: absolute; bottom:0; left: 0; border-left: 1px solid #bbb; top:0;}
    
    .navbar-expand-lg #accordion {display:block !important;}
    #accordion {margin-top:3px;}
    #accordion .accordion-item {animation: flipdown 0.5s ease both; animation-delay:0.5s; border:none;}
    #accordion .accordion-item .accordion-body {max-height:550px;}
    #accordion .accordion-item .accordion-body ul li {border:none;}
    
    .rightcolumn {padding-right: 30px;}
    .subtitle > h3 {}
    #main.onecolumn.bg .maincontent {padding-top:50px;}
    
    
    /* Contact (Main Site) */
    .contactinfo h5 {font-size: 1.35rem;}
    
    /* Discounts & Program Info */
    .toplinks a {}
    .toplinks a i {font-size: 3rem;}
    .toplinks.programinfo .row > div {margin-bottom: 3rem;}
    
    /* Vendors */
    #vendordiscounts .item a span.outerimg {padding: 7px;}
    
    /* Cats */
    #cats .item a span.outerimg {padding: 7px;}
    
    /* New Vendors */
    #newvendors .item a span.outerimg {padding: 7px;}
    
    /* Locations */
    .locationlist.addscroll {max-height:600px;}
    
    /* Search Page */
    #searchouter {width: 75%;}
    #searchresults {padding:45px 0px;}
    
    /* Mobile App */
    .appslides {padding:45px 0px;}
    
    /** INFORMATION PAGES **/
    body.program.infopage #mainimage .slideimage:before {opacity: 0.75;}
    body.program.infopage #mainimage .caption {padding:90px 1rem;}
    body.program.infopage #mainimage .container-fluid {padding-bottom: 25px; padding-top:25px;}
    
    #information > div {padding: 50px 0px;}
    
    .formouter .formbody > * {width: 85%; margin-left: 7.5%;}
    .formouter .formbody form {width: 85%; margin-left: 7.5%;}
    .formouter .formbody > #enrollformresponse {width:100%; margin-left: auto;}
    .formbody.success .rightoutput h3 {font-size: 1.5rem; line-height:1.2;}
    .formbody.success .rightoutput a {font-size: 1.25rem;}
}

@media (min-width: 1200px) {
    
    /* PROGRAM Main Menu */
    header.program #navbarCollapse .navbar-nav > li {margin: 0 0 0 20px;}
    header.program #navbarCollapse .navbar-nav > li > a {font-size: 18px; font-size: 1.125rem;}
    #navbarCollapse .navbar-nav > li.search > a {width:35px; height:35px;}
    
    /* Index */
    #indexslides .caption h2 {font-size: 60px; font-weight: 400;}
    #indexslides .caption a.btn {font-size: 22px;}
    .indextabs ul.nav-pills li {margin:0 5px;}
    .indextabs ul.nav-pills li a {font-size: 20px;padding: 20px 25px;background-color: transparent;border-radius: 0;border-left: none;}
    .indextabs ul.nav-pills li a:before {position: absolute; content: ''; left: 0; top: 0; width:100%; height: 100%; background-color:#830065; border-radius: 3px; transition:all .8s cubic-bezier(.21, 1.21, .64, 1.07);}
    .indextabs ul.nav-pills li a:hover:before {transform: scale(1.05); background-color:#a70081;}
    .indextabs ul.nav-pills li a:hover {background-color: transparent;}
    .indextabs ul.nav-pills li a.activetab:before {background-color:#a70081; box-shadow: 0 0 20px rgba(0, 0, 0, .21) inset;}
    
    #subscribeindex .insideindex {width:85%;margin-left:7.5%;}
    
    /* Inside Pages */
    .rightcolumn {padding-right: 50px;}
    
    /* Search Page */
    #searchouter {width: 60%;}
}

@media (min-width:1300px) {
    /* Vendors */
    #vendordiscounts .grid .item {width: 20%;}
    
    /* New Vendors */
    #newvendors .grid .item {width: 20%;}
    
    /* National Discounts */
    #nationaldiscounts .grid .item {width: 20%;}
    
    /* Cats */
    #cat .grid .item {width: 20%;}
    
    /** INFORMATION PAGES **/
    body.program.infopage #mainimage .container-fluid {padding-bottom: 40px; padding-top:40px;}
}

@media (min-width: 1500px) {
    /* Header */
    header .navbar .container-fluid {padding-left: 0; padding-right: 0;}
    
    /* Inside Pages */
    body.program.insidepage .maincontent {padding-left:0;padding-right:0;}
    .breadcrumbs .container-fluid {padding-left: 0; padding-right: 0;}
    .pagetitle .container-fluid {padding-left: 0; padding-right: 0;}
    .leftcolumn .sidebar {padding-left:40px;}
    #accordion .accordion-item .accordion-body {max-height: 700px;}
}


@media (max-width: 992px) {
    
    /* Index */
    #mainimage .caption {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; justify-content: center; align-items: flex-start;}
    
    /* Inside Pages */
    #accordion {padding: 0 1rem;}
    
    
}

@media (max-width: 767px) {
    /* Header*/
    #navbarCollapse {position: fixed; top:90px; bottom:0; left: 0; width:100%; background-color:#f9f9f9; z-index: 101; height:calc(100vh - 90px); visibility: hidden; opacity: 0;  display: block;}
    #navbarCollapse.show {visibility: visible; opacity: 1;transition:all 0.2s ease-in-out;}
    #navbarCollapse .navbar-nav {padding:21px 16px;}
    #navbarCollapse .navbar-nav > li {margin: 0 0 11px;}
    #navbarCollapse .navbar-nav > li > a {box-shadow: 0 0 9px rgba(0,0,0,.2); background-color:#fff; padding: 19px 21px 19px 70px;}
    #navbarCollapse .navbar-nav > li > a i.bi {display: block;}
    
    #navbarCollapse .sub-menu {display: none;}
    
    /* Footer */
    footer .footerlinks ul {flex-wrap:wrap;}
    
    /* Index */
    .programindex.container-fluid {padding-left: 0; padding-right: 0;}
    #indexslides {height:250px; position: relative; bottom:auto;}
    #indexslides .slideimage {background-position: top center; height:300px;}
    .indexcontent {height: auto !important;}
    
    /* Search */
    form.resultsfilter {-ms-flex-direction:column; flex-direction: column;}
    .resultsfilter a.btn {margin-right: auto; margin-bottom: 0.5rem;}
    
     /**** INFORMATION PAGES ****/
    .contacttext > span:first-child > i {display:none;}
    .contacttext > span:first-child br {display: block;}
    
    .formbody table.formtable td {width:100%; display:block; height:auto; text-align: left;}
	.formbody table.formtable td label.control-label {padding: 10px 0px 0px 0px; margin-bottom:5px;}
    .formbody table.formtable td.answer {margin-bottom:15px; margin-top:0px;}
	.formbody table.formtable.text td {padding-top:15px;}
	.formbody table.formtable.text td.lasttext {padding-top:15px;}
	.formbody table.formtable.signaturetable {margin-top:0px;}
	.formbody table.formtable.signaturetable td {text-align: center;}
	.formbody table.formtable.signaturetable td.tablespace {display:none;}
	.formbody table.formtable.signaturetable td:not(.answer) {height:auto;}
	.formbody table.formtable.signaturetable td.answer {margin-top:15px; margin-bottom:0px;}
	.formbody table.formtable.signaturetable td input.form-control {text-align: center;}
	.formbody table.formtable.signaturetable td input[type=button] {text-align: center;}
	.formbody table.formtable.signaturetable #hiddenImage img {margin: 0 auto;}
    
    /* Signatures */
	#signature-pad {max-width:95%;}
    
    /* Response */
	.formbody.success #enrollformresponse .otherLinks {}
    
   
}

@media (max-width: 767px) and (max-height: 710px) {
    /* Index */
    .indexlinks {height: auto !important;}
}

@media (max-width: 575px) {
    
    
    /* Inside Pages */
    .top-pagination {flex-direction: column;}
    .top-pagination > * {margin-bottom: 0.5rem;}
}

@media (max-width: 480px) {
    
    /* Inside Pages */
    .pagination-buttons {flex-direction: column;}
    .pagination-buttons .newvendorfilter {margin-right:0;margin-bottom: 0.5rem;}
    
    /* Directions & Locations */
    #form-outer > form#location-form .row {-ms-flex-direction: column; flex-direction: column; -webkit-box-align: center;-ms-flex-align: center;align-items: center;}
    
    
    /**** Information ****/
    .contacttext {margin: 5px auto 25px auto;}
    .contacttext > span {font-size:15px; line-height:20px;}
    .contacttext > span:last-child br {display: block;}
    .contacttext > span:last-child > i:nth-child(4) {display: none;}
	.contacttext > span:last-child > i:nth-child(6) {display:none;}
}

@media (max-width: 410px) {
    /* Response */
	.formbody.success .rightoutput {padding: 0;}
	.formbody.success .leftoutput {padding: 0; }
}

@media (max-width:375px) {
    /* Response */
	.formbody.success .otherLinks a.btn {display:block; margin: 0 auto;}
	.formbody.success .otherLinks a.btn:last-child {margin-top:10px;}
}

@media (max-width: 350px) {
    /**** INFORMATION PAGES ****/
    .contacttext > span {font-size:14px;}
	.formlogo img {width:150px;}
}

html.ie .ltoImage img.img-fluid {width:100% !important;}