@charset "utf-8";

/* IMPORT RESET */
@import url("normalize.css");

* { 
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	*behavior: url(../../js/boxsizing.htc); 
	/*	
		If you need support for IE7 and lower make 
		sure the boxsizing.htc file is linked properly.
		More info here:  https://github.com/Schepp/box-sizing-polyfill
	*/
}

/*Scrollbar CSS*/
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

::-webkit-scrollbar-track {
    background: #fff;
}

::-webkit-scrollbar-thumb {
    /*background: #88c932;*/
    background: #202744;
}

input[type=date]::-webkit-inner-spin-button, 
input[type=date]::-webkit-inner-spin-button, 
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
  -webkit-appearance: none !important; 
  margin: 0 !important; 
}

input[type=date]::-moz-inner-spin-button, 
input[type=date]::-moz-inner-spin-button, 
input[type=number]::-moz-inner-spin-button, 
input[type=number]::-moz-outer-spin-button { 
  -moz-appearance: none !important; 
  margin: 0 !important; 
}

input[type=date]::-ms-inner-spin-button, 
input[type=date]::-ms-inner-spin-button, 
input[type=number]::-ms-inner-spin-button, 
input[type=number]::-ms-outer-spin-button { 
  -ms-appearance: none !important; 
  margin: 0 !important; 
}

input[type=date]::inner-spin-button, 
input[type=date]::inner-spin-button, 
input[type=number]::inner-spin-button, 
input[type=number]::outer-spin-button { 
  appearance: none !important; 
  margin: 0 !important; 
}

/*font*/
/* @font-face
{
    font-family: 'dinblack';
    src: url('../../fonts/DINBlack.otf');
}

@font-face
{
    font-family: 'dinbold';
    src: url('../../fonts/DIN-Bold.otf');
}

@font-face
{
    font-family: 'din';
    src: url('../../fonts/DIN-Regular.otf');
} */

@font-face
{
    font-family: 'southern';
    src: url('../../fonts/SouthernAire_Personal_Use_Only.ttf');
}

@font-face
{
    font-family: 'brandon';
    src: url('../../fonts/brandon-grotesque-light-58a8a4b38001d.otf');
}


/* Global */
html, body {
	padding: 0px;
	margin: 0px;
	-webkit-text-size-adjust: 100% !important;
	-webkit-font-smoothing: antialiased !important;
	-webkit-text-stroke-width: 0 !important;
}

img {
	max-width: 100%;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover {
	/*color: inherit;*/
	text-decoration: none;
}

a:focus {
	outline: 0;
}

/* Presets */
.none { /* this class is used to hid the skip to content link at the beginning of the document for accessibility */
	display: none;
}

.clear {
	clear: both;
}

.float-left {
	float: left;
}

.float-right {
	float: right;
}

.aligncenter {
	text-align: center;
}

.alignleft {
	text-align: left;
}

.alignright {
	text-align: right;
}

input:focus {
	outline: 0px;
}

.font-family1 {
	font-family: raleway;
}


.color1 {
	color: #5c5c5c;
}

.color2 {
	color: #074995;
}

.background1 {
	color: #5c5c5c;
}

.background2 {
	color: #074995;
}



/*Pagination*/
.pagination {
	position: relative;
	display: block;
	font-size: 0px;
	padding: 0px;
	text-align: center;
	font-family: "Heebo";
	font-weight: bold;
	bottom: 50px;
}

.pagination .mid {
	text-align: center;
}

.pagination .mid > span {
	top: 2px;
	position: relative;
	display: block;
}

.pagination .mid > div {
	top: 1px;
	position: relative;
	display: block;
}

.pagination > li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 14px;
	margin-right: 10px;
	background: transparent;
	color: #222;

	-webkit-transition: color 0.4s, background 0.4s;
	-moz-transition: color 0.4s, background 0.4s;
	-ms-transition: color 0.4s, background 0.4s;
	transition: color 0.4s, background 0.4s;
}

.pagination > li.disabled {
	display: none !important;
}

.pagination > li:last-child {
	margin-right: 0px;
}

.pagination > li * {
	position: relative;
	display: block;
	height: 30px;
	width: 30px;
	line-height: 30px;
}

.pagination > li:hover {
	color: #fff;
	background: #202744;

	-webkit-transition: color 0.4s, background 0.4s;
	-moz-transition: color 0.4s, background 0.4s;
	-ms-transition: color 0.4s, background 0.4s;
	transition: color 0.4s, background 0.4s;
}

.pagination > li.active {
	background: #202744 !important;
	color: #fff !important;
}


/* ----- Master CSS ----- */

.blur-container {
	position: fixed;
	width: 100vw;
	height: 100vh;
	left: 0px;
	top: 0px;
	background: rgba(255, 255, 255, 0.9);
	z-index: 100;
	line-height: 24px;
}

.ajax-message {
	display: none;
}

.header-loading-container {
	display: none;
}

.blur-content {
	position: relative;
	display: table;
	margin: auto;
	width: calc(100% - 40px);
	padding: 20px 30px;
	max-width: 500px;
	text-align: center;
	font-size: 16px;
	background: #282b65;
	border: 1px solid #282b65;
	color: #fff;
}

.blur-close {
	position: absolute;
	right: -35px;
	top: 0px;
	width: 25px;
	height: 25px;
	cursor: pointer;
}

.blur-close:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 1px;
	background: #282b65;
	left: 0px;
	top: 11px;

	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.blur-close:after {
	content: '';
	position: absolute;
	width: 100%;
	height: 1px;
	background: #282b65;
	left: 0px;
	top: 11px;

	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.mid {
	position: relative;
	width: 100%;
	height: 100%;
	
	justify-content: center;
	display: flex;
	align-items: center;	
}

.validation-container {
	position: relative;
	display: block;
}

.validation-message {
	position: relative;
	display: block;
	margin-bottom: 10px;
	padding: 10px;
	font-weight: 500;
	background: red;
	color: #fff;
}

.validation-message:last-child {
	margin-bottom: 30px;
}

.top-right {
    position: absolute;
    right: 10px;
    top: 18px;
    z-index: 1;
}

.links > a {
    color: #636b6f;
    font-size: 14px;
    font-weight: 100;
    text-decoration: none;
    text-transform: uppercase;
    padding: 5px 0px;
    margin: 0px 20px;
	border-bottom: 1px solid transparent;

    -webkit-transition: border 0.4s;
	-moz-transition: border 0.4s;
	-ms-transition: border 0.4s;
	transition: border 0.4s;
}

.links > a:hover {
	border-bottom: 1px solid #636b6f;

	-webkit-transition: border 0.4s;
	-moz-transition: border 0.4s;
	-ms-transition: border 0.4s;
	transition: border 0.4s;
}


.error-message-container {
	position: relative;
	display: block;
	width: 100%;
	max-width: 610px;
	margin: 0px auto;
}

.error-message-item {
	position: relative;
	display: block;
	margin-bottom: 10px;
	width: 100%;
	padding: 0px 20px;
	/* background: red; */
	color: red;
	font-family: "Heebo";
	text-align: left;
	font-size: 26px;
}

.error-message-item:before {
	content: "*";
	position: absolute;
	display: block;
	left: 0px;
	top: 0px;
}

.error-message-item:last-child {
	margin-bottom: 80px;
}

.loading-list {
	position: absolute;
	display: none;
	width: calc(100% + 10px);
	height: calc(100% + 10px);
	font-size: 32px;
	color: #282b65;
	background: #fff;
	font-family: "Heebo";
	font-weight: bold;
	left: -5px;
	top: -5px;
}

.loading-list:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}


.container {
	position: relative;
	display: block;
	font-family: "Heebo";
	font-weight: bold;
	color: #222;
	/* width: 1920px; */
}

.header-container {
	position: fixed;
	display: block;
	width: 100%;
	height: 113px;
	top: 67px;
	z-index: 2000;
	font-size: 0px;
	/* text-align: center; */
}

.not-active.headroom--pinned {
    opacity: 1 !important;
	top: 67px !important;
	background: #fff;

    -webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
}

.not-active.headroom--unpinned {
    opacity: 0 !important;
	top: -120px !important;
	
    -webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
}

.not-active.nav-opened .headroom--unpinned {
	opacity: 1 !important;
	top: 67px !important;
	background: transparent !important;

	-webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
}

.not-active.headroom--top {
	opacity: 1 !important;
	top: 67px !important;
	background: transparent !important;

    -webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
}

.not-active.headroom--not-top {
	background: #fff;
	
    -webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, left 0.4s;
}

.nav-opened .headroom--not-top {
	background: transparent !important;

	-webkit-transition: background 0.4s;
	-moz-transition: background 0.4s;
	-ms-transition: background 0.4s;
	transition: background 0.4s;
}

.header-group {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 0px;
	width: calc(50% - 1px);
}

.header-group:first-child {
	text-align: right;
}

.header-group:last-child {
	text-align: left;
}

.header-nav {
	position: relative;
	display: inline-block;
	vertical-align: top;
	/* font-size: 28px; */
	font-size: 24px;
	font-weight: 800;
	font-family: "Heebo";
	color: #282b65;
	line-height: 113px;
}

.header-nav span {
	position: absolute;
	display: block;
	border-radius: 50%;
	height: 20px;
	min-width: 20px;
	text-align: center;
	line-height: 18px;
	background: red;
	color: #fff;
	font-size: 12px;
	right: -10px;
	top: calc((100% - 40px) / 2);
}

.header-icon-mob-link span {
	position: absolute;
	display: block;
	border-radius: 50%;
	height: 17px;
	min-width: 17px;
	text-align: center;
	line-height: 17px;
	background: red;
	color: #fff;
	font-size: 10px;
	right: -10px;
	top: calc((100% - 40px) / 2);
}

.header-wait {
	position: absolute;
	display: block;
	width: 10px;
	height: 10px;
	right: -3px;
	top: calc((100% - 30px) / 2);
	background: red;
	border-radius: 50%;
}

.header-wait.member {
	right: 0px;
	position: relative;
	display: inline-block;
	vertical-align: top;
}

.header-group:first-child .header-nav {
	margin-left: 12.29%;
	/* margin-left: 118px; */
}

.header-group:first-child .header-nav:last-child {
	margin-right: 29.16% !important;
}

.header-group:last-child .header-nav:first-child {
	margin-left: 21.56% !important;
}

.header-group:last-child .header-nav {
	margin-right: 8.72%;
	/* margin-right: 101px; */
}

.header-nav:first-child {
	margin-left: 0px !important;
}

.header-nav:last-child {
	margin-right: 0px !important;
}

.header-logo {
	position: absolute;
	display: block;
	/* width: 8.82%; */
	width: 120px;
	height: 100%;
	left: 44.57%;
	/* left: 875px; */
	bottom: 0px;
	background: url('../../img/front/ricosta-logo.png') no-repeat;
	background-size: contain !important;
	background-position: 50% !important;
}

.header-container.active .header-logo {
	background: url('../../img/front/ricosta-white-logo.png') no-repeat;
}

.content {
	position: relative;
	display: block;
	/* min-height: 500px; */
}

.footer-container {
	position: relative;
	display: block;
	padding: 120px 8.07% 190px;
	/* padding: 120px 155px 190px; */
	background: #202744;
	color: #fff;
	font-size: 0px;
}

.footer-group {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 26px;
	line-height: 43px;
	margin-right: 3.90%;
	/* margin-right: 75px; */
}

.footer-title {
	position: relative;
	display: block;
	font-family: "Heebo";
	line-height: 25px;
	margin-bottom: 16px;
	font-weight: 800;
}

.footer-link {
	position: relative;
	display: block;
	font-family: brandon;
	font-weight: 100;
}

.footer-right {
	position: absolute;
	display: block;
	right: 0px;
	top: 120px;
	width: 38.02%;
	/* width: 730px; */
}

.footer-newsletter-title {
	position: relative;
	display: block;
	font-size: 18px;
	color: #fff;
	font-family: brandon;
	margin-bottom: 5px;
}

.footer-form {
	position: relative;
	display: block;
	margin-bottom: 23px;
	padding: 3px;
}

.footer-text {
	position: relative;
	display: inline-block;
	vertical-align: top;
	height: 78px;
	border: 3px solid #fff;
	background: #202744;
	color: #fff;
	border-right: 0px;
	width: 55.72%;
	/* width: 407px; */
	padding: 0px 10px;
	font-size: 26px;
	margin-right: 0px;
}

.footer-submit {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 154px;
	height: 78px;
	background: #fff;
	color: #202744;
	font-size: 26px;
	font-weight: 800;
	border: 3px solid #fff;
	font-family: "Heebo";
}

.footer-icon-group {
	position: relative;
	display: block;
	font-size: 0px;
}

.footer-icon {
	position: relative;
	display: inline-block;
	vertical-align: top;
	height: 35px;
	margin-right: 6.16%;
	/* margin-right: 45px; */
}

.footer-icon:last-child {
	margin-right: 0px;
}

.footer-icon.instagram {
	width: 35px;
	background: url('../../img/front/instagram-icon.png') no-repeat;
	background-position: 50% !important;
	background-size: contain !important;
}

.footer-icon.facebook {
	width: 20px;
	background: url('../../img/front/facebook-icon.png') no-repeat;
	background-position: 50% !important;
	background-size: contain !important;
}

.footer-icon.youtube {
	width: 35px;
	background: url('../../img/front/youtube-icon.png') no-repeat;
	background-position: 50% !important;
	background-size: contain !important;
}

.cr-container {
	position: fixed;
	display: block;
	top: 0px;
	right: -50%;
	opacity: 0;
	/* right: 0px; */
	/* width: 44.63%; */
	width: 50%;
	/* max-width: 857px; */
	max-width: calc(1920px / 2);
	height: 100vh;
	overflow: auto;
	background: #fff;
	padding: 0px 50px 50px;
	z-index: 2000;
	box-shadow: 0px 0px 10px #ccc;
}

.cr-header {
	position: relative;
	display: block;
	width: 100%;
	padding: 109px 0px 43px;
	border-bottom: 2px solid #282b65;
	font-size: 42px;
	line-height: 36px;
	color: #282b65;
	font-weight: 800;
	font-family: "Heebo";
	text-align: center;
}

.cr-header span {
	position: relative;
	display: block;
	text-align: center;
	height: 36px;
}

.cr-header-before {
	position: absolute;
	display: block;
	left: 0px;
	bottom: 35px;
	width: 80px;
	height: 26px;
	cursor: pointer;
	z-index: 1;
}

.cr-header-line {
	position: absolute;
	display: block;
	width: 100%;
	height: 4px;
	left: 0px;
	top: calc((100% - 4px) / 2);
	background: #282b65;
}

.cr-header-before:before {
	content: '';
	position: absolute;
	display: block;
	width: 4px;
	height: 15px;
	background: #282b65;
	top: 0px;
	right: 0px;

	-webkit-transform: rotate(-30deg);
	-moz-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);

	-webkit-transition: 0.4s right 0.1s, 0.4s -webkit-transform 0.1s;
	-moz-transition: 0.4s right 0.1s, 0.4s -moz-transform 0.1s;
	-ms-transition: 0.4s right 0.1s, 0.4s -ms-transform 0.1s;
	transition: 0.4s right 0.1s, 0.4s transform 0.1s;
}

.cr-header-before:after {
	content: '';
	position: absolute;
	display: block;
	width: 4px;
	height: 15px;
	background: #282b65;
	bottom: 0px;
	right: 0px;

	-webkit-transform: rotate(30deg);
	-moz-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg);

	-webkit-transition: 0.4s right 0.1s, 0.4s -webkit-transform 0.1s;
	-moz-transition: 0.4s right 0.1s, 0.4s -moz-transform 0.1s;
	-ms-transition: 0.4s right 0.1s, 0.4s -ms-transform 0.1s;
	transition: 0.4s right 0.1s, 0.4s transform 0.1s;
}

.cr-header-before.active:before {
	right: 0px;

	-webkit-transform: rotate(-30deg);
	-moz-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	transform: rotate(-30deg);

	-webkit-transition: 0.4s right 0.1s, 0.4s -webkit-transform 0.1s;
	-moz-transition: 0.4s right 0.1s, 0.4s -moz-transform 0.1s;
	-ms-transition: 0.4s right 0.1s, 0.4s -ms-transform 0.1s;
	transition: 0.4s right 0.1s, 0.4s transform 0.1s;
}

.cr-header-before.active:after {
	right: 0px;

	-webkit-transform: rotate(30deg);
	-moz-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	transform: rotate(30deg);

	-webkit-transition: 0.4s right 0.1s, 0.4s -webkit-transform 0.1s;
	-moz-transition: 0.4s right 0.1s, 0.4s -moz-transform 0.1s;
	-ms-transition: 0.4s right 0.1s, 0.4s -ms-transform 0.1s;
	transition: 0.4s right 0.1s, 0.4s transform 0.1s;
}

.cr-item-load {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	font-size: 28px;
	color: #282b65;
	background: #fff;
	line-height: 100%;
	text-align: center;
	display: none;
	font-family: "Heebo";
}

.cr-item-load:before {
	content: "";
	position: relative;
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}

.cr-loading {
	position: absolute;
	display: block;
	left: 0px;
	top: 210px;
	width: 100%;
	padding: 50px 30px;
	font-size: 32px;
	color: #282b65;
	font-family: "Heebo";
	font-weight: bold;
	text-align: center;
}

.cr-empty {
	position: relative;
	display: block;
	width: 100%;
	font-family: "Heebo";
	height: calc(100vh - 188px);
}

.cr-empty-content {
	position: relative;
	display: block;
	text-align: center;
	margin: 0px auto;
	width: 100%;
}

.cr-empty-content span {
	position: relative;
	display: block;
	font-size: 34px;
	font-weight: bold;
	color: #282b65;
	margin-bottom: calc((100vh - 188px - (58px * 2)) / 3);
	text-align: center;
}

.cr-empty-link {
	position: relative;
	display: block;
	width: 100%;
	width: 435px;
	background: #282b65;
	color: #fff;
	line-height: 85px;
	height: 85px;
	font-size: 28px;
	text-align: center;
}

.cr-exist {
	position: relative;
	display: block;
}

.cr-item-group {
	position: relative;
	display: block;
	font-size: 0px;
	padding: 50px 0px;
}

.cr-item-list {
	position: relative;
	display: block;
	margin-bottom: 50px;
}

.cr-anim {
	opacity: 0;
	top: 100px;
}

.cr-item-list:last-child {
	margin-bottom: 0px;
}

.cr-item-img {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 200px;
	background-size: cover !important;
	background-position: 50% !important;
}

.cr-item-img:before {
	content: "";
	position: relative;
	display: block;
	padding-top: 100%;
}

.cr-item-desc {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 200px);
	height: 100%;
	padding-left: 30px;
}

.cr-item-series {
	position: relative;
	display: block;
	font-size: 30px;
	font-family: "Heebo";
	font-weight: bold;
	color: #000;
}

.mac-os .cr-item-series {
	line-height: 25px;
}

.cr-item-variant {
	line-height: 18px;
}

.cr-item-variant {
	position: relative;
	display: block;
	font-size: 28px;
	margin-bottom: 15px;
	font-family: "Heebo";
	font-weight: bold;
	color: #282b65;
}

.cr-item-link {
	position: relative;
	display: table;
	/* bottom: 51px; */
	/* left: 30px; */
	font-size: 22px;
	margin-bottom: 10px;
	color: #282b65;
	border-bottom: 2px solid #282b65;
}

.cr-size-group {
	position: relative;
	display: block;
	font-family: "Heebo";
	font-weight: bold;
	font-size: 0px;
	line-height: 30px;
	color: #000;
	/* left: 30px; */
	/* bottom: 12px; */
}

.cr-size-label {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 28px;
	margin-right: 15px;
}

.mac-os .cr-size-label {
	line-height: 20px;
}

.cr-size-change {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 28px;
	padding: 0px 9px;
	cursor: pointer;
	line-height: 24px;
}

.cr-size-text {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 62px;
	height: 30px;
	background: #e9e9e9;
	border: 0px;
	font-size: 22px;
	padding: 0px 10px;
}

.cr-item-close {
	position: absolute;
	display: block;
	top: 0px;
	right: 0px;
	width: 20px;
	height: 20px;
	cursor: pointer;
}

.cr-item-close:before {
	content: '';
	position: absolute;
	display: block;
	left: 5px;
	top: 0px;
	width: 5px;
	height: 100%;
	background: #000;

	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.cr-item-close:after {
	content: '';
	position: absolute;
	display: block;
	left: 5px;
	top: 0px;
	width: 5px;
	height: 100%;
	background: #000;

	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.cr-item-total {
	position: absolute;
	display: block;
	right: 0px;
	bottom: 12px;
	font-size: 28px;
	font-family: "Heebo";
	font-weight: bold;
}

.cr-exist-shipping {
	position: relative;
	display: block;
	border-top: 2px solid #282b65;
}

.cr-exist-shipping.subtotal {
	font-weight: bold;
	margin-bottom: 20px;
}

.cr-exist-shipping span {
	position: relative;
	display: block;
	padding: 30px 0px 30px 12px;
	font-size: 28px;
	color: #000;
	font-family: "Heebo";
	line-height: 18px;
}

.cr-exist-shipping span:first-child {
	font-family: "Heebo";
}

.cr-exist-shipping span:last-child {
	position: absolute;
	display: block;
	right: 0px;
	top: 0px;
}

.cr-exist-link-group {
	position: relative;
	display: block;
	font-size: 0px;
	width: 100%;
	margin-bottom: 15px;
}

.cr-exist-link {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: calc(50% - 20px);
	max-width: 400px;
	height: 85px;
	background: #282b65;
	color: #fff;
	font-family: "Heebo";
	font-size: 28px;
	text-align: center;
	line-height: 85px;
}

.mac-os .cr-exist-link {
	line-height: 65px;
}

.cr-exist-link:last-child {
	position: absolute;
	right: 0px;
	top: 0px;
}

.cr-exist-note {
	position: relative;
	display: block;
	padding: 20px 15px;
	background: #e9e9e9;
	color: #000;
	font-family: "Heebo";
	font-size: 20px;
	font-weight: bold;
}

.cr-exist-custom {
	position: relative;
	display: block;
	text-align: right;
	margin-bottom: 60px;
}

.cr-exist-custom span {
	position: relative;
	display: block;
}

.cr-exist-custom span:first-child {
	font-size: 24px;
}

.cr-item-custom {
	position: relative;
	display: block;
	margin-bottom: 20px;
}

.cr-item-custom-list {
	position: relative;
	display: block;
	line-height: 26px;
}

.cr-item-custom-list {
	line-height: 16px;
}

.cr-item-custom-list span {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 22px;
	font-family: "Heebo";
	font-weight: bold;
}

.cr-item-custom-list span:first-child {
	width: 120px;
	margin-right: 10px;
}

.cr-item-custom-list span:first-child:before {
	content: ":";
	position: absolute;
	right: 0px;
	top: 0px;
}

.cr-item-custom-list span.title:first-child:before {
	content: "";
	width: 100%;
}


.cr-item-finishing {
	position: relative;
	display: block;
	margin-bottom: 15px;
}

.cr-item-finishing span {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 22px;
	font-family: "Heebo";
	font-weight: bold;
}

.mac-os .cr-item-finishing span {
	line-height: 16px;
}

.cr-item-finishing span:first-child {
	width: 120px;
	margin-right: 10px;
}

.cr-item-finishing span:first-child:before {
	content: ":";
	position: absolute;
	right: 0px;
	top: 0px;
}

.cr-item-finishing span.title:first-child:before {
	content: "";
	width: 100%;
}

.header-icon-mob {
	display: none;
}

.header-switch {
	display: none;
}

.header-mob-nav {
	display: none;
}

.footer-copy {
	position: relative;
	display: block;
	font-size: 16px;
	padding: 30px 20px 0px;
	font-family: brandon;
	font-weight: normal;
	text-align: center;
}

/* Desktops and laptops */
@media screen and (max-width : 1440px) {
	.cr-container {
		width: 40%;
	}

	.header-nav {
		font-size: 24px;
	}
	
	.header-group:first-child .header-nav {
		margin-left: 10%;
	}

	.header-group:first-child .header-nav:last-child {
		margin-right: 23% !important;
	}

	.header-group:last-child .header-nav:first-child {
		margin-left: 18% !important;
	}

	.header-group:last-child .header-nav {
		margin-right: 6%;
	}

	.footer-container {
		padding: 120px 60px 190px;
	}

	.footer-text {
		width: calc(100% - 154px - 60px);
	}
}

@media screen and (max-width: 1367px) {
	.cr-item-list {
		margin-bottom: 30px;
	}

	.cr-item-group {
		padding: 30px 0px 15px;
	}

	.error-message-container {
		max-width: 500px;
	}

	.error-message-item:last-child {
		margin-bottom: 30px;
	}

	.error-message-item {
		padding: 0px 10px;
		font-size: 14px;
	}

	.cr-loading {
		font-size: 22px;
	}

	.cr-container {
		padding: 0px 35px 20px;
	}

	.cr-header {
		padding: 40px 0px 30px;
		font-size: 24px;
	}

	.cr-header-before {
		width: 40px;
	}

	.cr-empty-content span {
		font-size: 20px;
	}

	.cr-empty-link {
		width: 100%;
		margin: 0px auto;
		max-width: 300px;
		height: 60px;
		line-height: 60px;
		font-size: 20px;
	}

	.header-logo {
		height: 100px;
		/* top: -10px; */
	}

	.header-container {
		top: 0px;
		height: 100px;
		padding-top: 0px;
	}

	.not-active.headroom--pinned {
		top: 0px !important;
	}

	.not-active.nav-opened .headroom--unpinned {
		top: 0px !important;
	}

	.not-active.headroom--top {
		top: 0px !important;
	}

	.header-nav {
		font-size: 20px;
		line-height: 100px;
	}

	.header-group:first-child .header-nav {
		margin-left: 12%;
	}

	.header-group:last-child .header-nav {
		margin-right: 8%;
	}

	.footer-container {
		padding: 70px 50px 100px;
	}

	.footer-group {
		font-size: 18px;
		line-height: 28px;
	}

	.footer-right {
		width: 31%;
		top: 70px;
	}

	.footer-text {
		width: calc(100% - 100px - 50px);
		height: 50px;
		border: 2px solid #fff;
		font-size: 18px;
	}

	.footer-submit {
		height: 50px;
		font-size: 16px;
		width: 100px;
	}

	.footer-icon {
		height: 20px;
	}

	.footer-icon.instagram {
		width: 20px;
	}

	.footer-icon.facebook {
		width: 12px;
	}

	.footer-icon.twitter {
		width: 24px;
	}

	.cr-item-img {
		width: 100px;
	}

	.cr-item-desc {
		width: calc(100% - 100px);
	}

	.cr-item-variant {
		font-size: 20px;
		margin-bottom: 10px;
	}

	.cr-item-finishing {
		margin-bottom: 10px;
	}

	.cr-item-custom {
		margin-bottom: 10px;
	}

	.cr-item-custom-list {
		line-height: normal;
	}

	.cr-item-finishing span {
		font-size: 14px;
	}

	.cr-item-custom-list span {
		font-size: 14px;
	}

	.cr-item-link {
		font-size: 12px;
		border-bottom: 1px solid #282b65;
		margin-bottom: 5px;
	}

	.cr-size-label {
		font-size: 16px;
		line-height: normal;
	}

	.cr-item-series {
		font-size: 22px;
	}

	.cr-item-total {
		font-size: 20px;
	}

	.cr-item-close:before {
		width: 3px;
	}

	.cr-item-close:after {
		width: 3px;
	}

	.cr-exist-shipping span {
		padding: 20px 0px 20px 12px;
		font-size: 22px;
	}

	.cr-exist-link {
		height: 50px;
		line-height: 50px;
		font-size: 20px;
	}

	.cr-exist-custom span:first-child {
		font-size: 20px;
	}

	.cr-exist-note {
		font-size: 16px;
	}
}

@media screen and (max-width: 1110px) {
	
}

/* Tablet */
@media screen and (max-width: 1024px) {
	.header-nav {
		font-size: 16px;
	}

	.header-logo {
		width: 9%;
		left: 45%;
	}

	.footer-right {
		width: 35%;
	}
}

@media screen and (max-width: 970px) {
	/* .cat-container {
		margin-right: 30px;
	} */
}

@media screen and (max-width: 870px) {
	.cr-header {
		font-size: 18px;
		padding: 35px 0px 10px;
	}

	.cr-header-before {
		bottom: 15px;
	}

	.cr-header-line {
		height: 2px;
	}

	.cr-header-before:before {
		width: 2px;
		height: 10px;
		top: 3px;
	}
	
	.cr-header-before:after {
		width: 2px;
		height: 10px;
		bottom: 5px;
	}

	.cr-item-img {
		width: 70px;
	}

	.cr-item-desc {
		width: calc(100% - 70px);
		padding-left: 20px;
	}

	.cr-item-series {
		font-size: 16px;
	}

	.cr-item-variant {
		font-size: 14px;
		margin-bottom: 5px;
	}

	.cr-item-custom-list span {
		font-size: 12px;
	}

	.cr-item-finishing span {
		font-size: 12px;
	}

	.cr-item-custom-list span:first-child {
		width: 70px;
	}

	.cr-item-finishing span:first-child {
		width: 70px;
	}

	.cr-item-link {
		font-size: 11px;
	}

	.cr-size-label {
		font-size: 12px;
	}

	.cr-item-total {
		font-size: 16px;
	}

	.cr-item-close {
		width: 15px;
		height: 15px;
	}

	.cr-exist-shipping span {
		padding: 10px 0px 10px 10px;
		font-size: 16px;
	}

	.cr-exist-link {
		height: 40px;
		line-height: 40px;
		font-size: 14px;
	}

	.cr-exist-custom span:first-child {
		font-size: 14px;
	}

	.cr-exist-note {
		font-size: 12px;
	}
}

@media screen and (max-width: 820px) {
	.header-nav {
		font-size: 14px;
	}

	.header-group:first-child .header-nav {
		margin-left: 10%;
	}

	.header-group:last-child .header-nav {
		margin-right: 7%;
	}

	.footer-container {
		padding: 40px 20px 60px;
	}

	.footer-title {
		margin-bottom: 10px;
	}

	.footer-group {
		font-size: 14px;
		line-height: 24px;
	}

	.footer-right {
		top: 40px;
	}

	.footer-text {
		width: calc(100% - 80px - 30px);
		height: 40px;
	}

	.footer-submit {
		height: 40px;
		font-size: 14px;
		width: 80px;
	}

	.footer-icon {
		height: 15px;
	}
}

/* Mobile */
@media screen and (max-width: 768px) {
	.pagination {
		bottom: 30px;
	}

	.cr-container {
		padding: 0px 20px 20px;
	}

	.footer-copy {
		padding-top: 40px;
	}

	.cr-header {
		font-size: 16px;
		padding: 30px 0px 10px;
	}

	.cr-header-line {
		height: 2px;
	}

	.cr-header-before {
		bottom: 15px;
	}

	.cr-header-before:before {
		width: 2px;
		height: 9px;
		top: 4px;
	}

	.cr-header-before:after {
		width: 2px;
		height: 9px;
		bottom: 6px;
	}

	.cr-empty-content span {
		font-size: 16px;
	}

	.cr-empty-link {
		height: 40px;
		line-height: 40px;
		font-size: 14px;
		margin: 0px auto;
	}
}

@media screen and (max-width : 660px) {
	.header-nav {
		font-size: 12px;
	}

	.header-logo {
		width: 11%;
		left: 44%;
	}
}

@media screen and (max-width : 550px) {
	.header-container {
		height: 100px;
		padding-top: 0px;
		z-index: 101;
	}

	.header-icon-mob {
		position: absolute;
		display: block;
		right: 20px;
		height: 100px;
	}
	
	.header-icon-mob-link {
		position: relative;
		display: inline-block;
		vertical-align: top;
		width: 20px;
		height: 100%;
		background-position: 50% !important;
		background-size: contain !important;
		margin-left: 30px;
		cursor: pointer;
	}

	.header-icon-mob-link.cart {
		background: url('../../img/front/icon-cart-blue.png') no-repeat;
	}
	
	.header-container.active .header-icon-mob-link.cart {
		background: url('../../img/front/icon-cart-white.png') no-repeat;
	}

	.header-icon-mob-link.account {
		background: url('../../img/front/icon-member-blue.png') no-repeat;
	}
	
	.header-container.active .header-icon-mob-link.account {
		background: url('../../img/front/icon-member-white.png') no-repeat;
	}

	.header-switch {
		position: absolute;
		display: block;
		height: 15px;
		width: 25px;
		cursor: pointer;
		left: 20px;
		top: calc((100px - 15px) / 2);
		z-index: 6;

		-webkit-transition: rotate(0deg);
		-moz-transition: rotate(0deg);
		-ms-transition: rotate(0deg);
		transition: rotate(0deg);

		-webkit-transition: -webkit-transform 0.4s;
		-moz-transition: -moz-transform 0.4s;
		-ms-transition: -ms-transform 0.4s;
		transition: transform 0.4s;
	}

	.header-switch-line {
		position: relative;
		display: block;
		margin-bottom: 4px;
		height: 2px;
		width: 100%;
		background: #282b65;
		left: 0px;
		top: 0px;
		opacity: 1;

		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);

		-webkit-transition: background 0.4s, left 0.4s, top 0.4s, opacity 0.4s, -webkit-transform 0.4s;
		-moz-transition: background 0.4s, left 0.4s, top 0.4s, opacity 0.4s, -moz-transform 0.4s;
		-ms-transition: background 0.4s, left 0.4s, top 0.4s, opacity 0.4s, -ms-transform 0.4s;
		transition: background 0.4s, left 0.4s, top 0.4s, opacity 0.4s, transform 0.4s;
	}

	.header-switch.active .header-switch-line {
		background: #fff;

		-webkit-transition: background 0.4s;
		-moz-transition: background 0.4s;
		-ms-transition: background 0.4s;
		transition: background 0.4s;
	}

	.header-switch-line:last-child {
		margin-bottom: 0px;
	}

	.header-switch.active {
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
		transform: rotate(180deg);

		-webkit-transition: -webkit-transform 0.4s;
		-moz-transition: -moz-transform 0.4s;
		-ms-transition: -ms-transform 0.4s;
		transition: transform 0.4s;
	}

	.header-switch.active .line1 {
		top: 6px;
		left: 0px;

		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);

		-webkit-transition: left 0.4s, top 0.4s, -webkit-transform 0.4s;
		-moz-transition: left 0.4s, top 0.4s, -moz-transform 0.4s;
		-ms-transition: left 0.4s, top 0.4s, -ms-transform 0.4s;
		transition: left 0.4s, top 0.4s, transform 0.4s;
	}

	.header-switch.active .line2 {
		opacity: 0;

		-webkit-transition: opacity 0.4s;
		-moz-transition: opacity 0.4s;
		-ms-transition: opacity 0.4s;
		transition: opacity 0.4s;
	}

	.header-switch.active .line3 {
		top: -6px;
		left: 0px;

		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);

		-webkit-transition: top 0.4s, left 0.4s, -webkit-transform 0.4s;
		-moz-transition: top 0.4s, left 0.4s, -moz-transform 0.4s;
		-ms-transition: top 0.4s, left 0.4s, -ms-transform 0.4s;
		transition: top 0.4s, left 0.4s, transform 0.4s;
	}

	.header-mob-nav-group {
		position: fixed;
		display: none;
		padding-bottom: 50px;
		z-index: 100;
		width: 100vw;
		height: 100vh;
		/* background: #282b65; */
		background: rgba(40, 43, 101, 0.9);
		color: #fff;
		font-family: "Heebo";
		font-weight: bold;
		font-size: 20px;
		line-height: 20px;
		padding-top: 100px;
	}

	.header-nav {
		display: none;
	}
	
	.header-mob-nav {
		margin-bottom: 30px;
		position: relative;
		display: block;
		text-align: center;
		top: 100px;
		opacity: 0;
	}

	.header-mob-nav:last-child {
		margin-bottom: 0px;
	}

	.header-logo {
		width: 100px;
		left: calc((100% - 100px) / 2);
	}

	.header-white-logo {
		position: fixed;
		display: block;
		width: 70px;
		left: calc((100% - 70px) / 2);
		height: 100px;
		top: 0px;
		background: url('../../img/front/ricosta-white-logo.png') no-repeat;
		background-size: contain !important;
		background-position: 50% !important;
	}

	.footer-right {
		position: relative;
		display: block;
		width: 100%;
		top: 0px;
		padding-top: 50px;
	}

	.footer-group {
		width: calc(100% / 3);
		margin: 0px;
	}

	.footer-form {
		padding: 0px;
	}

	.footer-text {
		width: calc(100% - 80px);
	}
}

@media screen and (max-width : 500px) {
	.footer-group {
		width: 50%;
		margin: 0px 0px 20px;
	}

	.footer-group:nth-child(3) {
		margin-bottom: 0px;
	}

	.cr-container {
		width: 100%;
		right: -100%;
	}

	.blur-close {
		right: 0px;
		top: -35px;
	}
}