@charset "UTF-8";
@import 'plugins.css';
@import 'colors.css';

/********************************** 
	Global CSS
**********************************/
html, body { height: 100%; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; scroll-behavior: smooth; }
body { font-family: 'Roboto', sans-serif; font-size: 16px; line-height: normal; font-weight: 400; position: relative; z-index: 1; background: var(--body-bg); color: var(--dark); overflow-x: hidden; }

h1, h2, h3, h4, h5, h6 { position: relative; color: var(--dark); font-weight: 400; margin: 0; }

a { text-decoration: none; cursor: pointer; font-size: 12px; font-weight: 400; color: var(--green); -webkit-transition: 0.5s; transition: 0.5s; }
a:hover { color: var(--dark); }

p { font-size: 18px; font-weight: 400; line-height: 27px; position: relative; color: var(--dark); }

button, input, textarea, a:hover, a:focus, a:visited { text-decoration: none; outline: none; outline-width: 0 !important; }
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder { color: transparent; }

img { display: inline-block; max-width: 100%; }

i, span, a { display: inline-block; }

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

table th, table td { border: 1px solid var(--table-border); }
th, tr, td { padding: 10px; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
figure { margin: 0; padding: 0; }

.fix { overflow: hidden; }

.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

/********************************** 
	Section Padding and Margin CSS 
**********************************/
.ml-auto { margin-left: auto !important; }
.mr-auto { margin-right: auto !important; }

.pt-0 { padding-top: 0; }
.pt-20 { padding-top: 20px; }
.pt-30 { padding-top: 30px; }
.pt-40 { padding-top: 40px; }
.pt-50 { padding-top: 50px; }
.pt-60 { padding-top: 60px; }
.pt-70 { padding-top: 70px; }
.pt-80 { padding-top: 80px; }
.pt-90 { padding-top: 90px; }
.pt-100 { padding-top: 100px; }
.pt-120 { padding-top: 120px; }
.pt-150 { padding-top: 150px; }
.pt-180 { padding-top: 180px; }
.pt-200 { padding-top: 200px; }

.pb-0 { padding-bottom: 0; }
.pb-20 { padding-bottom: 20px; }
.pb-30 { padding-bottom: 30px; }
.pb-40 { padding-bottom: 40px; }
.pb-50 { padding-bottom: 50px; }
.pb-60 { padding-bottom: 60px; }
.pb-70 { padding-bottom: 70px; }
.pb-80 { padding-bottom: 80px; }
.pb-90 { padding-bottom: 90px; }
.pb-100 { padding-bottom: 100px; }
.pb-120 { padding-bottom: 120px; }
.pb-150 { padding-bottom: 150px; }
.pb-180 { padding-bottom: 180px; }
.pb-200 { padding-bottom: 200px; }

.pl-50 { padding-left: 50px; }
.pl-60 { padding-left: 60px; }
.pl-100 { padding-left: 100px; }
.pl-150 { padding-left: 150px; }

.pr-50 { padding-right: 50px; }
.pr-60 { padding-right: 60px; }
.pr-100 { padding-right: 100px; }
.pr-150 { padding-right: 150px; }

.mt-10 { margin-top: 10px; }
.mt-15 { margin-top: 15px; }
.mt-20 { margin-top: 20px; }
.mt-30 { margin-top: 30px; }
.mt-40 { margin-top: 40px; }
.mt-50 { margin-top: 50px; }
.mt-60 { margin-top: 60px; }
.mt-70 { margin-top: 70px; }
.mt-80 { margin-top: 80px; }
.mt-90 { margin-top: 90px; }
.mt-100 { margin-top: 100px; }
.mt-120 { margin-top: 120px; }
.mt-150 { margin-top: 150px; }
.mt-300 { margin-top: 300px; }

.mb-10 { margin-bottom: 10px; }
.mb-15 { margin-bottom: 15px; }
.mb-20 { margin-bottom: 20px; }
.mb-30 { margin-bottom: 30px; }
.mb-40 { margin-bottom: 40px; }
.mb-50 { margin-bottom: 50px; }
.mb-60 { margin-bottom: 60px; }
.mb-70 { margin-bottom: 70px; }
.mb-80 { margin-bottom: 80px; }
.mb-90 { margin-bottom: 90px; }
.mb-100 { margin-bottom: 100px; }
.mb-120 { margin-bottom: 120px; }
.mb-150 { margin-bottom: 150px; }
.mb-300 { margin-bottom: 300px; }

.ml-10 { margin-left: 10px; }
.ml-20 { margin-left: 20px; }
.ml-30 { margin-left: 30px; }
.ml-40 { margin-left: 40px; }
.ml-50 { margin-left: 50px; }

.mr-10 { margin-right: 10px; }
.mr-20 { margin-right: 20px; }
.mr-30 { margin-right: 30px; }
.mr-40 { margin-right: 40px; }
.mr-50 { margin-right: 50px; }


/********************************** 
	Overlay CSS 
**********************************/
.overlay { position: absolute; display: none; content: ""; width: 100%; height: 100%; background-color: #090A1A; opacity: 0.7; top: 0; left: 0; z-index: -1; }
.overlay.active { position: fixed; display: block; right: 0; top: 0; height: 100%; width: 100%; content: ""; background-color: #000; z-index: 9; opacity: 0.5; visibility: visible; }


/********************************** 
	Section & Page Title CSS 
**********************************/
.page-title { display: block; margin: 0 0 50px 0; padding: 0; text-align: center; }
.page-title h1 { position: relative; display: inline-block; font-size: 42px; line-height: 42px; font-weight: 400; color: var(--dark-green); letter-spacing: 0;}
.page-title h1:after { content: ""; position: absolute; bottom: -20px; left: 20%; right: 20%; height: 3px; background: var(--dark-green); }

.section-title { position: relative; display: block; padding: 0; margin: 50px 0; color: var(--main); font-size: 42px; text-transform: uppercase; font-weight: 600; text-align: center; }
.section-title:after { display: block; width: 150px; height: 2px; margin: 10px auto 0 auto; background: var(--second); content: ""; }

.section-title-2 { position: relative; display: block; line-height: normal; margin: 20px 0 0 0; padding: 0; padding: 10px; color: var(--main); font-size: 24px; text-transform: uppercase; font-weight: 600; }


/********************************** 
	Buttons CSS 
**********************************/
.btn { position: relative; display: grid; grid-template-columns: auto auto; align-content: center; justify-content: center; justify-items: center; align-items: center; font-size: 16px; font-weight: 300; line-height: normal; text-align: center; cursor: pointer; -webkit-transition: 0.3s; transition: 0.3s; letter-spacing: 0; border-radius: 10px; padding: 8px 30px; border: 1px solid transparent; background: transparent; }
.btn:after { content: "\f101"; font-family: 'Line Awesome Free'; font-weight: 500; margin: 0; transition: .2s all; font-size: 16px; font-weight: 300; margin: 0 0 0 5px; }
.btn:hover:after { margin: 0 0 0 15px; }

.theme-btn { background: var(--green); border-color: var(--green); color: var(--white); }
.theme-btn:hover { background: var(--dark-green); border-color: var(--dark-green); color: var(--white); }

.dark-btn { background: var(--dark); border-color: var(--dark); color: var(--white); }
.dark-btn:hover { background: var(--dark-green); border-color: var(--dark-green); color: var(--white); }


/********************************** 
	Bootstrap CSS 
**********************************/
.container-fluid { padding: 0 20px; }
.container { max-width: 1400px; }
.navbar-toggler-icon { background-image: none; }
.btn:focus, .btn:active {outline: none !important; box-shadow: none; }


/********************************** 
	Header & Nav Menu CSS 
**********************************/
.header { position: relative; width: 100%; z-index: 8; background: #fff; }

.header .header-wrapper { height: 100px; position: relative; z-index: 9; display: grid; grid-template-columns: 1fr auto auto; justify-items: start; align-items: center; justify-content: space-between; align-content: center; margin: 0; padding: 0; }
.header .header-wrapper .logo { height: 100%; line-height: normal; text-align: center; }
.header .header-wrapper .logo img { margin: 0; padding: 0; width: auto; height: 80px; max-height: 80px; }

.header .header-wrapper ul { display: grid; grid-template-columns: repeat(4, auto); justify-self: end; align-self: center; align-items: center; justify-items: center; column-gap: 2rem; margin: 0; padding: 0; }
.header .header-wrapper ul li { position: relative; display: grid; grid-template-columns: auto auto; align-items: center; justify-items: center; margin: 0; padding: 0; }
.header .header-wrapper ul li:before { font-family: 'Line Awesome Free'; margin: 0 5px 0 0; color: var(--dark); font-size: 22px; }
.header .header-wrapper ul li.phone:before { content: "\f095"; }
.header .header-wrapper ul li.email:before { content: "\f0e0"; }
.header .header-wrapper ul li a { color: var(--dark); font-size: 16px; }
.header .header-wrapper ul li:hover a { text-decoration: underline; }

.header .header-wrapper form { display: grid; justify-self: end; grid-template-columns: auto auto; margin: 0; padding: 0; height: 44px; }
.header .header-wrapper form input { width: 300px; height: 44px; background: #fff; color: var(--dark); border: 1px solid #ccc; outline: 0; padding: 0 15px; font-size: 14px; font-weight: 400; }
.header .header-wrapper form button { width: 50px; height: 44px; text-align: center; border: 0; outline: 0; background: var(--second); color: #fff; font-size: 22px; -webkit-transition: 0.3s; transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; }
.header .header-wrapper form button:hover { background: var(--main); }

.header .header-sticky { position: fixed; top: 0; left: 0; right: 0; background: var(--main); opacity: 1; visibility: visible; width: 100%; box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px; animation: 0.5s ease-in-out 0s normal none 1 running fadeInDown; z-index: 999; }
.header #header-sticky { background: var(--main); }
.header .navmenu > ul { display: flex; justify-content: space-between; justify-items: center; align-items: center; flex-direction: row; line-height: normal; }
.header .navmenu ul > li { position: relative; height: 50px; line-height: 50px; margin: 0 10px; }
.header .navmenu ul > li > a { font-size: 16px; font-weight: 400; text-transform: none; padding: 0 10px; overflow: hidden; color: var(--white); }
.header .navmenu ul > li.active > a { background: var(--second); color: var(--white); }
.header .navmenu ul > li:hover > a { background: var(--second); color: var(--white); }
.header .navmenu ul > li:hover > ul { opacity: 1; visibility: visible; transform: translateY(0); }
.header .navmenu ul > li > ul { position: absolute; top: 101%; width: 260px; background: var(--main); left: 0; z-index: 999; box-shadow: 0 13px 35px -12px rgba(35, 35, 35, 0.15); visibility: hidden; opacity: 0; transform: translateY(40px); transition: all 0.3s ease-in-out; margin: 0; padding: 0; }
.header .navmenu ul > li > ul li { height: auto; line-height: normal; display: block; padding: 0; margin: 0; border-bottom: 1px solid #1373a7; }
.header .navmenu ul > li > ul li:last-child { border-bottom: 0; }
.header .navmenu ul > li > ul li a { display: block; color: var(--white) !important; padding: 15px 10px; font-size: 15px; font-weight: 400; text-transform: none; }
.header .navmenu ul > li > ul li a:hover { color: var(--white) !important; }
.header .navmenu ul > li > ul li.active a { background: var(--second); color: var(--white); }

#hamburger { display: none; }

.mobile-nav { position: fixed; right: -380px; top: 0; width: 320px; height: 100vh; scroll-behavior: smooth; overflow-y: scroll; transition: right 0.5s ease-in; background-color: var(--dark-green); padding: 20px; z-index: 9999; box-shadow: 0 13px 35px -12px rgba(35, 35, 35, 0.15); }
.mobile-nav.show { right: 0px; }
.mobile-nav .close-nav { border: 0; background: transparent; color: var(--white); border-radius: 30px; font-size: 30px; position: absolute; left: 20px; top: 20px; }
.mobile-nav .sidebar-nav { margin-top: 60px; }
.mobile-nav .sidebar-nav:last-child { margin: 20px 0 60px 0; }
.mobile-nav .sidebar-nav ul { margin: 0; padding: 0; list-style: none; background-color: transparent; }
.mobile-nav .sidebar-nav .metismenu { display: flex; flex-direction: column; }
.mobile-nav .sidebar-nav .metismenu > li { position: relative; display: block; width: 100%; border-bottom: 1px solid var(--green); }
.mobile-nav .sidebar-nav .metismenu > li.dropdown:after { position: absolute; display: block; top: 10px; right: 10px; content: "\f107"; font-family: 'Line Awesome Free'; color: var(--white); }
.mobile-nav .sidebar-nav .metismenu > li.dropdown.active:after { content: "\f106"; transition: all 0.3s ease-in-out; }
.mobile-nav .sidebar-nav .metismenu a { position: relative; display: block; padding: 10px 15px; transition: all 0.3s ease-out; text-decoration: none; color: var(--white); outline-width: 0; font-size: 14px; text-transform: uppercase; letter-spacing: 0; line-height: normal; border: 0; }
.mobile-nav .sidebar-nav .metismenu ul li { display: block; }
.mobile-nav .sidebar-nav .metismenu ul a { padding: 10px 15px 10px 35px; position: relative; }
.mobile-nav .sidebar-nav .metismenu ul a:hover { padding-left: 40px; }
.mobile-nav .sidebar-nav .metismenu ul a:hover::before { background-color: var(--white); }
.mobile-nav .sidebar-nav .metismenu ul a:before { position: absolute; left: 15px; width: 10px; height: 10px; border-radius: 50%; border: 2px solid var(--white); content: ""; top: 50%; transition: all 0.3s ease-in-out; transform: translateY(-50%); }
.mobile-nav .sidebar-nav .metismenu ul ul { list-style-type: circle !important; }
.mobile-nav .sidebar-nav .metismenu ul ul a { padding: 10px 15px 10px 45px; }
.mobile-nav .sidebar-nav .metismenu a:hover, .mobile-nav .sidebar-nav .metismenu a:focus, .mobile-nav .sidebar-nav .metismenu a:active { text-decoration: none; color: var(--white); background: var(--green); }


/********************************** 
	Main Section CSS 
**********************************/
#wrapper { position: relative; display: grid; grid-template-columns: 1fr auto; column-gap: 1.5rem; margin: 10px 0; }


/********************************** 
	Slider CSS 
**********************************/
.slider { position: relative; }
.slider .owl-dots { position: absolute; left: 0; right: 0; bottom: 30px; width: 100%; text-align: center; }
.slider .owl-dots button.owl-dot span { width: 16px; height: 16px; border-radius: 16px; background: #fff; margin: 0 5px; }
.slider .owl-dots button.owl-dot.active span { background: var(--second); }


/********************************** 
	Top Products CSS 
**********************************/
.products { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); column-gap: 2rem; row-gap: 1rem; justify-items: start; align-items: stretch; margin: 0 0 100px 0; padding: 0; }
.products article { display: grid; align-items: start; justify-items: center; text-align: center; border-bottom: 1px solid #ccc; padding: 0 0 20px 0; }
.products article figure { position: relative; overflow: hidden; display: grid; width: 100%; height: 200px; justify-content: center; align-content: center; transform: scale(1, 1); transition: all 0.3s ease-out; }
.products article figure a img { width: 100%; max-width: 100%; max-height: 100%; }
.products article h3 a { display: block; font-size: 15px; line-height: 1.3; font-weight: 600; color: var(--dark); }
.products article .price { display: block; padding: 0; margin: 5px 0 0 0; text-align: left; font-size: 15px; }
.products article .price strong { display: inline-block; vertical-align: middle; color: var(--second); font-weight: 800; }
.products article .price span { display: inline-block; vertical-align: middle; color: #666; text-decoration: line-through; font-weight: 400; }
.products article .price em { display: inline-block; vertical-align: middle; color: var(--second); margin: 0 5px; }
.products article:hover figure { transform: scale(1.10, 1.10); }

.no-results { display: block; text-align: center; padding: 40px 0 80px 0; color: var(--dark); font-size: 22px; font-weight: 300; font-style: italic; }


/********************************** 
	Product Page CSS 
**********************************/
.product-page { position: relative; padding: 50px 0; }
.product-page .product-wrapper { display: grid; grid-template-columns: repeat(2, 1fr); }

.product-page .product-images .product-main-image { position: relative; width: 100%; text-align: left; }
.product-page .product-images .product-main-image img { max-width: 100%; height: auto; }
.product-page .product-images .product-gallery { position: relative; margin: 20px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); justify-content: center; column-gap: .5rem; row-gap: .5rem; align-content: center; }
.product-page .product-images .product-gallery figure { width: 100%; margin: 0; padding: 0; }
.product-page .product-images .product-gallery figure img { width: 100%; margin: 0; padding: 0; }

.product-page .product-content { padding: 0 0 0 10px; }
.product-page .product-content .product-title { display: block; margin: 0 0 30px 0; padding: 0; font-weight: 600; color: var(--dark); font-size: 32px; }
.product-page .product-content .product-price { position: relative; display: block; text-align: left; margin: 5px 0; padding: 0; }
.product-page .product-content .product-price span, .product-page .product-content .product-price strong { display: inline; display: inline-block; vertical-align: middle; margin: 0; }
.product-page .product-content .product-price span { font-weight: 300; text-decoration: line-through; color: #666; font-size: 17px; margin-left: 10px; }
.product-page .product-content .product-price strong { font-weight: 800; color: var(--second); font-size: 28px; }

.product-page .product-content .product-cats { display: block; margin: 20px 0 0 0; }
.product-page .product-content .product-cats li { position: relative; display: grid; grid-template-columns: auto auto; align-items: center; justify-content: start; column-gap: .5rem; padding: 5px 0; }
.product-page .product-content .product-cats li strong { color: var(--dark); font-size: 15px; font-weight: 500; }
.product-page .product-content .product-cats li span { color: var(--main); font-size: 15px; font-weight: 400; }
.product-page .product-content .product-cats li a { color: var(--main); font-size: 15px; font-weight: 400; }
.product-page .product-content .product-cats li:hover a { text-decoration: underline; }

.product-page .product-info-wrapper { display: block; margin: 40px 0 0 0; padding: 30px 0; background: #fff; }
.product-page .product-info { position: relative; color: var(--dark); font-size: 15px; margin: 15px 0 0 0; padding: 0; font-weight: 400; text-align: justify; }
.product-page .product-info strong { font-weight: 800; }
.product-page .product-info * { color: var(--dark); margin: 0; padding: 0; }
.product-page .product-info h2 { display: block; font-weight: 600; margin: 10px 0; font-size: 20px; color: var(--dark); line-height: normal; text-transform: none; }
.product-page .product-info h3 { display: block; font-weight: 600; margin: 10px 0; font-size: 18px; color: var(--dark); line-height: normal; text-transform: none; }
.product-page .product-info p { display: block; margin: 0 0 5px 0; padding: 0; color: var(--dark); font-size: 15px; font-weight: 400; }
.product-page .product-info a:hover { text-decoration: underline; color: var(--second); }
.product-page .product-info table { width: 100%; max-width: 100%; margin: 0; padding: 0; border: 0 !important; height: auto; background: transparent; }
.product-page .product-info table th, .product-page .product-info table td { border: 0; border-bottom: 1px solid #ddd; background: transparent; color: var(--dark); font-size: 16px; margin: 0; padding: 5px; line-height: normal; text-align: left; }
.product-page .product-info ul, .product-page .product-info ol { margin: 0 0 10px 0; }
.product-page .product-info li { display: block; padding: 3px 0; margin: 0; font-size: 15px; color: var(--dark); line-height: normal; font-weight: 400; }
.product-page .product-info ol li { list-style-type: decimal !important; }
.product-page .product-info ul li:before { font-family: "Font Awesome 5 Free"; content: "\f054"; color: var(--second); font-size: 12px; margin: 0 10px 0 0; font-weight: 600; }


/********************************** 
	Section Page CSS 
**********************************/
.section-page { position: relative; margin: 0 0 50px 0; padding: 30px; background: #f8f8f8; border: 1px solid #ddd; color: var(--dark); text-align: justify; font-size: 18px; }
.section-page * { color: var(--dark); text-align: justify; }
.section-page h2 { display: block; margin: 10px 0; padding: 0; line-height: normal; font-size: 24px; font-weight: 600; }
.section-page h3 { display: block; margin: 10px 0; padding: 0; line-height: normal; font-size: 20px; font-weight: 600; }
.section-page p { display: block; margin: 0 0 15px 0; padding: 0; line-height: normal; font-size: 16px; }
.section-page a { font-size: 18px; text-decoration: underline; color: var(--second); }
.section-page ul { margin: 15px 0; }
.section-page ul li, .section-page ol li { display: grid; grid-template-columns: auto 1fr; column-gap: 1rem; align-items: start; justify-items: start; margin: 0 0 10px 0; font-size: 16px; }
.section-page ul li:before { content: ""; width: 9px; height: 9px; border-radius: 9px; background: var(--second); margin: 10px 0 0 0; }


/********************************** 
	Contacts Page CSS 
**********************************/
.contacts-page { position: relative; margin: 0; padding: 60px 0; display: grid; grid-template-columns: repeat(2, auto); justify-content: center; align-content: center; column-gap: 8rem; }
.contacts-page a { display: grid; grid-template-rows: repeat(2, 1fr); row-gap: 1.5rem; text-align: center; }
.contacts-page a strong { font-size: 26px; font-weight: 600; color: var(--dark); }
.contacts-page a:before { font-family: 'Line Awesome Free'; width: 90px; height: 90px; line-height: 90px; border-radius: 90px; font-size: 36px; font-weight: 600; background: var(--white); color: var(--main); margin: 0 auto; box-shadow: 0 0 15px rgba(50, 50, 50, .2); transition: .2s all; -webkit-transition: .2s all; -o-transition: .2s all; -ms-transition: .2s all; }
.contacts-page a.phone:before { content: "\f095"; }
.contacts-page a.email:before { content: "\f0e0"; }
.contacts-page a:hover:before { color: var(--second); }
.contacts-page a:hover strong { text-decoration: underline; }
.map { position: relative; margin: 50px 0 0 0; width: 100%; }
.map iframe { width: 100%; max-width: 100%; min-width: 100%; height: 450px; border: 0; outline: 0; }


/********************************** 
	Sitemap Page CSS 
**********************************/
.sitemap-page { position: relative; }
.sitemap-page h2 { display: block; padding: 0; margin: 30px 0 0 0; font-size: 26px; font-weight: 500; color: var(--blue-dark); }
.sitemap-page ul { margin: 20px 0 0 0; }
.sitemap-page ul li { position: relative; margin: 0 0 5px 0; padding: 0; color: var(--dark); font-weight: 400; }
.sitemap-page li:before { margin: 0 7px 0 0; content: "\f105"; font-family: 'Line Awesome Free'; color: var(--orange); font-size: 15px; font-weight: 700; transition: .3s all; }
.sitemap-page li a { font-size: 18px; color: var(--black); padding: 5px 0; font-weight: 400; }
.sitemap-page li:hover > a { text-decoration: underline; color: var(--blue); }
.sitemap-page li:hover:before { margin: 0 14px 0 0; }
.sitemap-page ul ul { margin-top: 0; margin-left: 20px; }


/********************************** 
	Search Page CSS 
**********************************/
.search-page { position: relative; padding: 0; }
.search-page .search-page-info { display: block; text-align: center; font-weight: 300; font-size: 20px; color: var(--body-text); padding: 0; font-style: italic; }
.search-page h2 { display: block; margin: 40px 0 0 0; font-size: 28px; font-weight: 500; color: var(--dark); } 
.search-page .search-rows { display: block; } 
.search-page .search-rows a { display: grid; grid-template-columns: 1fr auto; justify-content: center; align-content: center; width: 100%; padding: 10px 0; margin: 10px 0; border-bottom: 1px solid #ddd; } 
.search-page .search-rows a h3 { position: relative; justify-self: start; align-self: center; font-size: 18px; font-weight: 400; color: var(--blue-dark); transition: .1s all; -webkit-transition: .1s all; -o-transition: .1s all; -ms-transition: .1s all; }
.search-page .search-rows a h3:before { content: "\f054"; font-family: 'Line Awesome Free'; font-weight: 500; margin: 0 10px 0 0; transition: .2s all; font-size: 15px; }
.search-page .search-rows a:hover h3:before { margin: 0 15px 0 10px; }
.search-page .search-rows a span { justify-self: end; align-self: center; font-size: 13px; font-weight: 400; color: var(--dark); }
.search-page .search-rows a:hover h3 { font-weight: 500; }


/********************************** 
	Form Style CSS 
**********************************/
.form-row { position: relative; }
.form-row label { display: block; margin: 0; padding: 5px; font-size: 14px; font-weight: 400; color: var(--dark); }
.form-row input, .form-row textarea, .form-row select { width: 100%; background: var(--form-input-bg); border: 1px solid var(--form-border); font-size: 14px; -webkit-transition: 0.3s; transition: 0.3s; margin: 0 0 15px 0; border-radius: 0; }
.form-row input, .form-row select { height: 46px; line-height: 46px; padding: 0 20px; }
.form-row textarea { height: 300px; line-height: normal; padding: 13px 20px; }
.form-row button { width: auto; height: 46px; padding: 0 30px; background: var(--form-button); border-color: var(--form-button); border-radius: 0; display: inline-block; color: var(--form-button-text); -webkit-transition: 0.3s; transition: 0.3s; cursor: pointer; font-size: 14px; font-weight: 400; border-radius: 0; border: 0; outline: 0; text-transform: uppercase; }
.form-row button:hover { background: var(--form-button-hover); color: var(--form-button-text); }
.form-row input::placeholder, textarea::placeholder { font-size: 14px; font-weight: 300; color: var(--dark); }
.form-row.align-button { text-align: right !important; }
.form-error { margin: 0 0 0 10px; padding: 0 10px; color: var(--form-error); font-size: 14px; font-weight: 400; border-radius: 0; }

.form-row .radio { display: block; margin: 10px 0; padding: 0; text-align: left; }
.form-row .radio label { display: grid; grid-template-columns: auto 1fr; justify-items: start; align-items: center; column-gap: 1rem; cursor: pointer; padding: 0; margin: 0; cursor: pointer; float: none; }
.form-row .radio label input { width: 22px; height: 22px; cursor: pointer; margin: 0; padding: 0; }
.form-row .radio label span { margin: 0; padding: 0; font-size: 17px; font-weight: normal; color: var(--dark); }

.form-row .checkbox { display: block; margin: 10px 0; padding: 0; text-align: left; }
.form-row .checkbox label { display: grid; grid-template-columns: auto 1fr; justify-items: start; align-items: center; column-gap: 1rem; cursor: pointer; padding: 0; margin: 0 0 10px 0; cursor: pointer; float: none; }
.form-row .checkbox label input { width: 22px; height: 22px; cursor: pointer; margin: 0; padding: 0; }
.form-row .checkbox label span { margin: 0; padding: 0; font-size: 17px; font-weight: normal; color: var(--dark); }

.form-row .input-error { border-color: var(--red); }

.captcha-error { margin: 0 0 10px 0; }
.captcha-row { display: grid; grid-template-columns: auto auto; justify-items: center; align-items: center; justify-content: start; align-content: center; text-align: center; column-gap: .5rem; margin: 0; }
.captcha-row .captcha-code { height: 46px; line-height: 46px; padding: 0 20px; margin: 0; border-radius: 0; background: var(--captcha-bg); color: var(--captcha-text); font-size: 16px; font-weight: 400; }
.captcha-row .captcha-input { height: 46px; margin: 0; }


/********************************** 
	Error Page CSS 
**********************************/
.error-page { position: relative; margin: 0; padding: 30px 0 100px 0; text-align: center; }
.error-page p { display: block; margin: 0; padding: 5px 0; font-size: 20px; font-weight: 400; color: var(--dark); text-align: center; }
.error-page p a { font-size: 20px; font-weight: 400; text-decoration: underline; }
.error-page img { max-width: 500px; margin: 0 0 30px 0; }


/********************************** 
	Breadcrumb CSS 
**********************************/
.breadcrumb { position: relative; margin: 5px 0; padding: 0 15px; background: var(--breadcrumb-bg); border-top: 1px solid var(--breadcrumb-border-color); }
.breadcrumb ul { position: relative; overflow: hidden; height: 44px; display: block; margin: 0; padding: 0; text-align: left; }
.breadcrumb ul li { display: inline-block; vertical-align: middle; margin: 0; padding: 0; }
.breadcrumb ul li a { position: relative; display: block; height: 44px; line-height: 44px;; margin: 0 5px 0 0; padding: 0 17px 0 0; color: var(--green); font-size: 13px; font-weight: 400; }
.breadcrumb ul li a:hover span { text-decoration: underline; }
.breadcrumb ul li a:after { position: absolute; right: 0; top: 0; height: 44px; line-height: 44px; content: "\f105"; font-family: 'Line Awesome Free'; font-size: 12px; color: var(--dark-green); font-weight: 400; }
.breadcrumb ul li:last-child a:after { display: none; }


/********************************** 
	Table CSS 
**********************************/
table { background: #fff; border: 1px solid #eee; text-align: center; width: 100%; color: #0B0D26; }
table th { font-size: 18px; font-weight: 500; padding: 20px 10px; text-align: center; vertical-align: middle; white-space: nowrap; border-bottom: 1px solid #eee; }
table td { font-size: 18px; padding: 25px 10px; vertical-align: middle; border-right: 1px solid #eee; }


/********************************** 
	Pagination CSS 
**********************************/
.pagination { margin: 70px 0 50px 0; }
.pagination .page-item .page-link, .pagination .page-item.active .page-link { margin-right: 2px; width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; font-size: 15px; }
.pagination .page-item .page-link { background: var(--pagination-bg); border-color: var(--pagination-bg); color: var(--pagination-text); }
.pagination .page-item.active .page-link { background: var(--pagination-active-bg); border-color: var(--pagination-active-bg); color: var(--pagination-text); }
.pagination .page-item .page-link:hover, .pagination .page-item.active .page-link:hover { background: var(--pagination-hover-bg); border-color: var(--pagination-hover-bg); color: var(--white); }


/********************************** 
	BackToTop CSS 
**********************************/
.progress-wrap { position: fixed; right: 50px; bottom: 80px; height: 46px; width: 46px; cursor: pointer; display: block; border-radius: 50px; box-shadow: inset 0 0 0 2px var(--white); z-index: 99; opacity: 0; visibility: hidden; transform: translateY(15px); -webkit-transition: all 200ms linear; transition: all 200ms linear; }
.progress-wrap.active-progress { opacity: 1; visibility: visible; transform: translateY(0); }
.progress-wrap::after { position: absolute; content: "\f062"; font-family: 'Line Awesome Free'; text-align: center; line-height: 46px; font-size: 20px; color: var(--second); left: 0; top: 0; height: 46px; width: 46px; cursor: pointer; display: block; z-index: 1; -webkit-transition: all 200ms linear; transition: all 200ms linear; }
.progress-wrap svg path { fill: none; }
.progress-wrap svg.progress-circle path { stroke: #ccc; stroke-width: 6; box-sizing: border-box; -webkit-transition: all 200ms linear; transition: all 200ms linear; }



/********************************** 
	Footer CSS 
**********************************/
#footer { position: relative; margin: 100px 0 0 0; padding: 0; background: var(--dark); color: var(--white); }

#footer .footer-nav { padding: 30px 0; margin: 0; border-bottom: 1px solid #444; }
#footer .footer-nav ul { position: relative; display: block; margin: 0; padding: 0; text-align: center; }
#footer .footer-nav ul li { display: inline-block; vertical-align: middle; margin: 0; padding: 0; }
#footer .footer-nav ul li a { padding: 0 20px; border-right: 1px solid #444; font-size: 18px; color: var(--white); font-weight: 300; }
#footer .footer-nav ul li:last-child a { border-right: 0; }
#footer .footer-nav ul li:hover a, #footer .footer-nav ul li:hover a span { text-decoration: underline; color: var(--white); }

#footer .footer-pages { padding: 30px 0 20px 0; margin: 0; }
#footer .footer-pages ul { position: relative; display: block; margin: 0; padding: 0; text-align: center; }
#footer .footer-pages ul li { display: inline-block; vertical-align: middle; margin: 0; padding: 0 15px; border-right: 1px solid #555; }
#footer .footer-pages ul li:last-child { border-right: 0; }
#footer .footer-pages ul li a { font-size: 13px; color: #ccc; font-weight: 400; text-transform: uppercase; }
#footer .footer-pages ul li:hover a { text-decoration: underline; }

#footer .footer-text { padding: 60px 0 30px 0; margin: 0; }
#footer .footer-text p { display: block; text-align: center; line-height: 20px; color: var(--white); font-size: 13px; font-weight: 400; }
#footer .footer-text p a { color: var(--white); }
#footer .footer-text p a:hover { color: var(--white); text-decoration: underline; }


/********************************** 
	Under Construction CSS
**********************************/
.under-construction { padding: 30px 0 100px 0; text-align: center; background-color: var(--white); }
.under-construction img { width: auto; max-width: 100%; margin: 0 auto; }