/**------Global Setting----**/

 .container {
    max-width:  1400px !important;
	width: 100% !important;
}


.form button.button--theme--primary {
   font-size: 18px;
   font-weight: 500;
   color: #fff !important;
   letter-spacing: 0.8px;
    background-color:#4580C2 !important;
    border: 0px !important;
    border-radius: 12px;
    padding: 20px 40px;
    margin-top: 20px !important;
}

.form button.button--theme--primary:hover {
   color: #fff  !important;
    border-radius: 12px !important;
    background-color: #383F53 !important
}

 .form button.button--theme--primary i {
	display: none;
}

.form button.button--theme--primary:focus {
	outline: 0;
}



#bodyContainer {
padding: 50px 0px;
}


h1, h2, h3, h4, h5 {
	color: #383F53 !important;
}


h1 {
   font-size: 48px  !important;
    line-height: 1.2em;
    font-weight: 600  !important;
}


 h2 {
	font-size: 48px !important;
    font-weight: 600;
    line-height: 1.2em;
}



@media (min-width: 1025px) and (max-width: 1600px) {
 .container {
	width: 95% !important;
}
}

@media (max-width: 1024px)  {
.container {
	width: 90%;
	padding: 0px;
}

#bodyContainer {
    padding: 80px 40px;
}



h1 {
	font-size: 36px  !important;
}

h2 {
	font-size: 32px  !important;
}

}

@media (max-width: 767px)  {
	.container {
		width: 90%;
		padding-left: 0px;
}

	#bodyContainer {
		padding: 50px 0px !important;
}

.form button.button--theme--primary {
	font-size: 18px;
}

}

@media (max-width: 480px)  {
#bodyContainer {
    padding: 60px 20px !important;
}

}


/**------Topbar ------**/

.top-banner {
   text-align: center;
   color: #fff;
   background-color: #4580C2 !important;
    padding: 8px 0;
}

.top-banner p {
 color: #fff;
}


@media (max-width: 1024px) {
.top-banner p {
     max-width: 480px;
     margin: 0 auto;
}
}

@media (max-width: 480px) {
.top-banner p {
     max-width: 300px;
     margin: 0 auto;
}
}


/**-------Navbar ------**/

.header-wrapper {
	border-bottom: 1px solid #e6e6e6;
	padding: 0;
}


.header-wrapper .cart-indicator a {
	color: #4580C2 !important;
}

.header-wrapper  .btnGoLogin {
   color: #383F53;
    font-size: 18px;
    font-weight: 600;
}


.header-wrapper .nav--site .nav-list>li {
	margin-bottom: 0px !important;
	margin-right: 20px !important;
}

.header-wrapper .nav--site .nav-list li {
    font-size: 18px;
    font-weight: 500;
    color:#383F53 !important;
}

.header-wrapper .nav--site .nav-list li.has-children a:after {
	transform: translateY(-40%);
}


.header-wrapper .nav--site .nav-list li ul {
	width: 260px;
    border: 0;
	box-shadow: 0px 1px 15px 5px rgb(31 43 51 / 8%);
	background-color: transparent;
	border-top: 4px solid #0085CA;
}

.header-wrapper .nav--site .nav-list li ul li {
	font-size: 18px;
    padding: 14px 20px;
    border-bottom: 1px solid #D9DCED;
	background-color: #fff;
}


.header-wrapper .nav--site .nav-list li ul li a:hover {
	color: #0085CA;
}

.header-wrapper .nav-list li ul li a:hover {
	background-color: transparent !important;
}


.header-wrapper .search-box .search-form {
    border: 1px solid #e6e6e6;
    box-shadow: none;
    padding: 10px;
    border-radius: 100px;
    width: 52%;
	padding: 12px 20px;
}

.header-wrapper .search-box .search-form label input {
   padding: 0;
   border: 0;
   box-shadow: none;
  color: #383F53;
}

.header-wrapper .search-box .search-form .search {
   color: #4580C2;
    border: 0;
    margin-left: -10px;
    z-index: 1;
}





@media (max-width: 1024px) {

.header-wrapper .header--site {
	padding: 20px;
}

.header-wrapper .search-box .search-form {
    width: 100%;
}

  .header-wrapper .nav--site .nav-list li {
     font-size: 14px;
}
}


@media (max-width: 767px) {

.header-wrapper .nav--site .menu-toggle {
	font-size: 22px;
    font-family: "neue-haas-grotesk-display",sans-serif;
}


.header-wrapper .nav-list {
	columns: 1;
    background-color: #fff;
}

.header-wrapper .nav--site .nav-list li  {
    border-bottom: 1px solid #e6e6e6;
    background-color: #fff;
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
    margin-top: 0px;
}

.header-wrapper .nav--site .nav-list .has-children > a {
	padding: 0px;
}


.header-wrapper .nav--user {
	justify-self: center !important;
}

}


@media (max-width: 480px) {
  .header-wrapper .nav--site .nav-list li {
     font-size: 20px;
}
}



/**---Home Header Slider -----**/

.container--homepage .slider .owl-stage {
    height: 590px;
    object-fit: cover;
    object-position: 15% 43%;
}


@media (max-width: 1024px) {
  .container--homepage .slider .owl-stage {
        height: unset;
}
}


/**---Featured Collections Section -----**/

.container--homepage .homepage__callouts {
    border-bottom: 1px solid #D9DCED;
    padding: 40px 0px 80px 0px;
}

.container--homepage .homepage__callouts h2 {
    margin-bottom: 30px;
}

.container--homepage .homepage__callouts .callout {
	box-shadow: none;
}



/**---Trending Products Section -----**/

.container--homepage .homepage__secondary-callouts {
	padding: 40px 0px 0px;
}

.container--homepage .homepage__secondary-callouts h2 {
    margin-bottom: 50px;
}

.container--homepage .homepage__secondary-callouts .callouts {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
   gap: 40px !important;
}

.container--homepage .homepage__secondary-callouts .callouts .callout {
  width: 30%;
}

.container--homepage .homepage__secondary-callouts .callout__image {
	box-shadow: none;
}

.container--homepage .homepage__secondary-callouts img {
    border: 1px solid #DBDDEE;
    border-radius: 10px;
}

.container--homepage .homepage__secondary-callouts img:hover {
	border: 2px solid #0085CA;
}


@media (max-width: 1024px)  {
 
  .container--homepage .homepage__secondary-callouts .callouts {
   gap: 20px !important
 }
  .container--homepage .homepage__secondary-callouts .callouts .callout {
    width: 46%;
  }

}


@media (max-width: 767px) {
.container--homepage .homepage__callouts {
	border-bottom: 0px;
    border-top: 1px solid #D9DCED;
    padding: 40px 0px 0px 0px;
}
.container--homepage .homepage__secondary-callouts h2 {
    margin-bottom: 30px;
}

.container--homepage .homepage__secondary-callouts .callouts .callout {
  width: 100%;
}


}


/**---Product Index Page -----**/ 


.products.products--grid {
	gap:40px;
	padding-top: 0px !important;
}

.products .product {
	border-bottom: 1px solid #e6e6e6;
    padding-bottom: 30px;
	gap: 20px !important;
}

.products .product:hover {
	border-bottom:1px solid #4580C2;
}

.products  .product__image img {
    border: 1px solid #e6e6e6;
    border-radius: 8px;
}

.products  .product__image a:focus {
	outline: 0px;
}

.products .product:hover img {
	border: 1px solid #4580C2;
}

.products .product .product__info {
	position: relative;
}

.products .product .product__title {
	max-width: 322px;
}

.products .product .product__title h3 {
	font-size: 24px;
	line-height: 1.16em;
	color: #2b2a28;
	font-weight: 600;
}

.products .product .product__title h3 a {
	font-weight: 600;
	color: #2b2a28;
}

.products .product .product__title h3 a:focus {
	outline: 0px;
}

.products .product .product__copy {
	display: inline-block;
	max-width: 325px;
	z-index: 11;
}

.products .product .product__copy p {
    font-size: 16px;
    line-height: 1.4em;
    letter-spacing: 0.54px;
    font-weight: 300;
    color:#696967;
}


.products .product .product__cta {
    margin-bottom: 0 !important;
    padding: 0px;
	border: 0px;
    position: absolute;
    top: 28px;
}


.products .product .product__cta a {
    font-size: 16px;
   font-weight: 500;
   color: #fff;
    background-color: #4580C2;
    border-radius: 12px;
    border: 0px;
    padding: 12px 32px;
    margin-top: -20px !important;
    letter-spacing: 0.8px;
}

.products .product .product__cta a:hover {
	color: #fff !important;
	background-color: #383F53 !important;
	outline: 0px;
}


#bodyContainer .page__text img {
	height: unset  !important;
}



@media (min-width: 1025px) and (max-width: 1600px) {

	.products .product .product__title {
		max-width: 260px;
}

	.products .product .product__title h3 {
		font-size: 20px !important;
	}
}


@media (max-width: 1024px) {

.products.products--grid {
	gap: 40px 30px !important;
}

.products .product .product__title {
	max-width: 100%;
}

.products .product .product__title h3 {
	font-size: 22px;
}

.products .product .product__copy {
	display: block;
	max-width: 100%;
}

.products .product .product__cta {
    width: 100%;
    position: unset;
    justify-content: flex-start;
	margin-top: 30px !important;
}

}



@media (max-width: 767px)  {
	.products.products--grid {
	padding: 0px !important;
}

#bodyContainer .page__title {
	padding: 0px;
    margin: 0;
}

#bodyContainer .page__text {
	font-size: 16px;
}

.products .product .product__copy p {
	font-size: 16px;
}

}



/**----Single Product -----**/

#productTemplate .product-landing {
    grid-template-columns: 48%;
}

#productTemplate .page__title {
	padding: 0;
    margin-bottom: 50px;
}


#productTemplate .page__title h1 {
font-weight: 600 !important;
	max-width: 710px;
    margin: 0 auto;
}


#productTemplate .product-landing  .product__images {
    padding-right: 70px;
}



#productTemplate .product__images .img-wrap img, #productTemplate .product__images .gallery img{
	border: 1px solid #e6e6e6;
	border-radius: 8px;
}


#productTemplate .product__info .product__details,
#productTemplate .product__info .product__details .product__description {
    font-size: 16px;
    font-style: normal;
    color:#696967;
    border-bottom: 1px solid #e6e6e6;
    padding-bottom: 20px;
     margin-bottom: 20px;
}


#productTemplate .product__info .product__details h3 {
   font-size: 24px;
    font-weight: 600;
    color: #2B2A28;
    margin-bottom: 15px;
}

#productTemplate .product__info .product__details p {
	font-size: 18px;
    letter-spacing: 0.54px;
	line-height: 1.55em;
	color: #696967;
    font-weight: 500;
}

#productTemplate .product__info .product__details ul li {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.44em;
    color: #696967;
	margin-bottom: 10px;
	list-style: none;
	position: relative;
}

#productTemplate .product__info .product__details ul li:before {
	content: "";
	background-color: #4580C2;
	width: 8px;
	height: 8px;
	border-radius: 100px;
	position: absolute;
    top: 8px;
    left: -20px;
    border-radius: 100px;
}

#productTemplate .form label {
    font-size: 24px;
    color: #383F53;
    font-weight: 600;
    padding-bottom: 10px;
}


#productTemplate .form input, 
#productTemplate .form select {
    font-size: 18px;
    font-weight: 500;
	color: #696967;
    border: 1px solid #e6e6e6;
    height: 60px;
    border-radius: 8px;
    padding: 10px 20px;
}

#productTemplate .form input:focus, 
#productTemplate .form select:focus {
    border: 1px solid #344b43;
    outline: 0px !important;
   box-shadow: none;
}


#productTemplate .form .estimated-cost {
	font-size: 20px;
	font-weight: 500;
	color: #696967;
	margin-top: 40px;
}

#productTemplate .form .estimated-cost .estimated-cost-label {
	font-weight: 700;
	color: #696967;
	margin-bottom: 10px;
}



#productTemplate  .product__pricing th, #productTemplate  .product__pricing td {
	font-size: 21px;
	padding: 14px 20px;
}

#productTemplate  .product__pricing th {
    font-weight: 600;
    color: #fff;
	background-color: #4580C2;
}

#productTemplate  .product__pricing td {
	font-weight: 500;
    color: #323E48;
	background-color:#EEEEEE;
}


#productTemplate  .product__pricing th:first-child {
	border-radius: 8px 0px 0px 0px;
}

#productTemplate  .product__pricing th:last-child {
	 border-radius: 0px 8px 0px 0px;
    border-left: 1px solid #FFE466;
}


#productTemplate  .product__pricing td:first-child {
	    border-radius: 0px 0px 0px 8px;
}

#productTemplate  .product__pricing td:last-child {
	 border-radius: 0px 0px 8px 0px;
    border-left: 1px solid #CDD0D1;
}



#productTemplate  .flash{
	border-radius: 100px;
    box-shadow: none;
    padding: 10px 20px;
}


@media (max-width: 1024px) {
#productTemplate .product-landing {
    display: flex;
    flex-direction: column;
}
#productTemplate .product-landing .product__images {
	padding-right: 0px;
}

#productTemplate .product__info {
    width: 100%;
}

#productTemplate .product-landing .product__pricing {
	width: 100%;
}

}


@media (max-width: 767px) {
	#productTemplate .form label {
	font-size: 18px;
}


#productTemplate .form .estimated-cost {
	font-size: 16px;
}

#productTemplate .product__pricing th, #productTemplate .product__pricing td {
	font-size: 16px;
}

}




/**----Cart Page -----**/

.cart .cart__contents {
    padding-top: 40px;
	padding-bottom: 40px;
}

.cart .cart__footer .cart__footer__info {
	border-top: 1px solid #e6e6e6
    padding-top: 60px;
}

.cart .cart__item .item__preview img{
    border: 1px solid #e6e6e6;
    border-radius: 8px;
	box-shadow: none;
}

.cart .cart__item .item__text {
    background-color: transparent;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    padding: 20px 30px;
    box-shadow: none;
	min-height: 200px;
}

.cart .cart__item h2 {
	font-size: 24px !important;
    font-weight: 600;
}

.cart .cart__item .desc {
    font-size: 18px;
    font-weight: 300;
    color: #696967;
    letter-spacing: 0.54px;
    line-height: 1.55em;
}

.cart .cart__item .options {
	color: #696967;
	margin-top: 10px;
	margin-bottom: 10px;
}

.cart .cart__item .item__info a {
	padding: 8px 14px !important;
    border-radius: 100px  !important;
    background-color: #2B2A28;
}

.cart .cart__item .item__pricing label {
	font-size: 20px;
    font-weight: 600;
    color: #696967;

} 

.cart .cart__item .item__pricing  select , .cart .cart__item .item__pricing input  {
	font-size: 18px;
	font-weight: 600;
	border: 1px solid #D4D4D4;
    border-radius: 6px;
    padding: 10px 20px;
    text-align: center !important;
}

.cart .cart__item .item__details .item__pricing dl{
	font-size: 18px;
    font-weight: 600;
    color: #696967;
    font-family: "neue-haas-grotesk-display",sans-serif;
}


.cart .cart__item .item__details .item__pricing dl dt {
    font-weight: 500;
}


.cart .cart__item .item__controls button {
    font-size: 14px !important;
    font-weight: 500;
	color: #fff;
    background-color: #383F53;
    border: 0px;
    border-radius: 100px;
    padding: 10px 14px  !important;
}

.cart .cart__item .item__controls button:hover {
	color: #fff;
}


.cart .cart__footer__info dt{
	font-size: 18px;
    font-weight: 500;
	color: #2B2A28;

}


.cart .cart__footer__info .addrContainer {
	gap: 20px !important;
	align-items: center;
}

.cart .cart__footer__info .shippingPostalCodeEntry label:before {
	display: none;
}

.cart .cart__footer__info .addrContainer .cartTotal {
	font-size: 24px;
    font-weight: 600;
}


.cart .cart__footer__info .addrContainer .shippingPostalCodeEntry input {
	border: 1px solid #D4D4D4;
    border-radius: 6px;
    padding: 10px 20px;
}


.cart .cart__footer__info .addrContainer .shipping-cta-container button {
	font-size: 14px;
    background-color: #2B2A28;
    color: #fff;
    border: 0px;
    border-radius: 100px;
    opacity: 1;
    padding: 12px 15px;	
}

.cart .cart__footer__info .cart__controls {
	margin-top: 40px !important;
    max-width: 610px;
    margin: 0 0 auto auto;
}


.cart .cart__footer__info .cart__controls button, .cart .cart__footer__info .cart__controls #btnGoToCheckout {
	font-size: 18px;
    font-weight:500;
    border: 0px;
    padding: 20px 40px;
    border-radius: 100px;
}


.cart .cart__footer__info .cart__controls button {
    color: #001489;
    background-color: #E8EAF4;
}

.cart .cart__footer__info .cart__controls button i {
	color: #0085CA;
	transition: all 300ms ease;
}

.cart .cart__footer__info .cart__controls button:hover {
	color: #fff;
    background-color: #0085CA;
}

.cart .cart__footer__info .cart__controls button:hover i {
	color: #fff;
}



.cart .cart__footer__info .cart__controls #btnGoToCheckout {
	color: #fff;
    background-color:#0085CA;
}

.cart .cart__footer__info .cart__controls #btnGoToCheckout:hover {
	color: #fff;
    background-color:#2B2A28;
}





@media (max-width: 1024px) {

.cart .cart__item {
	display: flex;
    flex-direction: column;
    margin-bottom: 60px;
}

.cart .cart__item:last-child {
	margin-bottom: 0px;
}

.cart .cart__item .item__preview img{
	width: 680px !important;
	max-width: 100% !important;
}

.cart .cart__item .item__details {
	display: flex;
    flex-direction: column;
	width: 100%;
}

.cart .cart__item .item__details .item__controls {
	justify-content: flex-start;
}


.cart .cart__footer__info {
	grid-template: 1fr auto/0fr 3fr !important;
	grid-template-areas:
        "messaging pricing"
        "messaging controls" !important;
}

}



@media (max-width: 767px) {

.cart .cart__contents {
    padding-top: 20px;
}


.cart .cart__item h2 {
	font-size: 20px !important;
}

.cart .cart__item .desc {
	    font-size: 16px;
}

.cart .cart__footer .cart__footer__info {
	padding-top: 40px;
}


.cart .cart__footer__info {
    grid-template: auto/auto !important;
    grid-template-areas:
        "messaging"
        "pricing"
        "controls" !important;
}

}





/**----Login Page -----**/

.login .form-area .swap-pane button{
	font-size: 16px;
    font-weight: 500;
    padding: 12px 15px !important;
}

.login .login__box {
	width: 40%;
}

.login fieldset {
	padding: 40px;
}


.login .form-area .swap-trigger {
	background: #4580C2  !important;
    color: #fff  !important;
}

.login .form-area .swap-trigger.current {
	background: #fff  !important;
    color: #4580C2 !important;
}


.login .form-area label {
	font-size: 16px !important;
    font-weight: 500;
    padding-bottom: 10px;
    color: #696967;
}

.login .form-area label:before {
	display: none;
}


.login .form-area input {
	font-size: 16px;
    color: #2b2a28;
    font-weight: 400;
    padding: 10px 15px !important;
    border: 1px solid #E9E9E9 !important;
    border-radius: 6px;
    height: 50px !important;
}

.login .form-area input:focus {
	box-shadow: none;
}

.login .form-area .hint {
	padding: 0;
}


.login .control button {
	font-size: 16px;
    font-weight: 500;
    padding: 14px 15px !important;
    color: #fff !important;
    letter-spacing: 0.42px;
    background-color: #0085CA !important;
    border: 0px !important;
    border-radius: 12px;
    width: 30%;
}

.login fieldset #passwordReset {
	color: #696967;
}






/**----Contact Us Page -----**/

.contact {
	margin: 0px;
}

.contact .form label {
	font-size: 16px !important;
	font-weight: 500;
	padding-bottom: 15px;
	color:#383f53;
 }

.contact .form {
	margin-top: 40px;
}

.contact .form label.required::before{
	display: none;
}


.contact .form input,
.contact .form textarea{
	font-size: 18px;
	color: #2b2a28;
 	font-weight: 400;
	padding: 10px 20px;
    border: 1px solid #e6e6e6  !important;
    border-radius: 6px;
    height: 60px;
}

.contact .form input:focus,
.contact .form textarea:focus {
	border: 1px solid #4580C2 !important;
    box-shadow: none;
}

.contact .form button.button--theme--primary {
	color: #fff !important;
   background-color: #4580C2 !important;
}

.contact .form button.button--theme--primary:hover {
	color: #fff !important;
    background-color: #383f53!important;
}

.contact .wrap .map iframe {
	padding: 0px;
    border-radius: 10px;
    height:700px;
}

.contact .wrap .gm-style .place-card .place-name {
	font-size: 18px !important;
    font-weight: 700;
	color: #344B43 !important;
}

.contact .wrap #map a {
	color: #2b2a28 !important;
}



@media (max-width: 1024px) {
#bodyContainer {
    padding: 80px 40px;
}

.contact .wrap {
    display: flex;
    flex-direction: column;
    gap: 40px !important;
}
}

@media (max-width: 480px)  {
#bodyContainer {
    padding: 40px 20px !important;
}

.contact .form input {
    height: 50px;
}

.contact .form button.button--theme--primary {
	font-size: 18px !important;
}

.contact .wrap .map iframe {
    height: 400px !important;
}

}





/**----Footer-----**/

.footer-wrapper {
    padding: 70px 0px !important;
    border: 0;
}