:root {
	--redFilter: invert(19%) sepia(96%) saturate(6834%) hue-rotate(359deg) brightness(108%) contrast(118%);
	--travessaRed: rgb(235, 0, 0);
}

html, body { height: 100%; width: 100%;}
* {border: 0px;margin: 0px;padding: 0px;vertical-align: baseline;outline:none;box-sizing: border-box;font-family: acumin-pro, sans-serif;} 

body {
	font-family: acumin-pro, sans-serif;
	background: white;
}


b, strong {
	font-weight: 600;
}

.content {
    max-width: 1920px;
    margin: auto;
}
.contentHot {
    padding-top: 20px;
    margin-top: 20px;
}
    .travessaHeader {
    background-image: url(images/headerDesktop.svg);
    height: 6.67vw;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100vw 6.67vw;
    position: relative;
    border-bottom: 1px solid black;
}

.travessaHeader.whiteBG:before, .travessaHeader.whiteBG:after {
	content: '';
	width: 30vw;
	height: 100%;
	background: white;
	position: absolute;
}

.travessaHeader.whiteBG:after {
	right: 0;
}

.travessaHeader a.home {
	position: absolute;
	left: 0;
	right: 0;
	top: 10px;
	margin: auto;
	width: 36vw;
	height: 5vw;
}

.travessaHeader a.facebook,
.travessaHeader a.instagram,
.travessaHeader a.youtube {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 40px;
	margin: auto;
	width: 25px;
	height: 25px;
	background-image: url(images/facebook.svg?v2);
	background-size: cover;
	transition: 0.3s all;
	background-position: center;
}

.menu a.instagram,
.menu a.facebook,
.menu a.youtube {
	display: none;
}

.travessaHeader a.instagram {
	left: 71px;
	background-image: url(images/instagram.svg?v2);
}

.travessaHeader a.youtube {
    left: 102px;
    background-image: url(images/youtube.svg?v2);
}

.travessaHeader a:hover {
	transform: scale(1.1);
}

.travessaHeader div {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: white;
    opacity: 0;
    /* transition: 0.3s all; */
}

.travessaHeader.whiteBG div {
	opacity: 1;
}

.travessaHeader .logo {
    position: absolute;
    left: 50%;
    width: 650px;
    margin-left: -325px;
    top: 45px;
}

.travessaHeader .sig {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 40px;
	width: 140px;
	margin: auto;
	transition: 0.3s opacity;
	opacity: 1;
}

.menu {
	padding: 0 40px;
	border-bottom: 1px solid black;
	transition: 0.3s opacity;
}

.menu ul, .details ul, ul.nodot {
    list-style-type: none;
}

.menu > ul > li, .menu .icon {
	position: relative;
	font-size: 17px;
	font-weight: 600;
	cursor: pointer;
	flex: 1 1 auto;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.menu > ul {
	display: flex;
	height: 60px;
	justify-content: center;
	align-items: center;
}

.menu li:hover {
	color: var(--travessaRed);
}

.menu li ul {
	display: none;
}

.menu li li {
	font-weight: 400;
	font-size: 14px;
	padding: 2px 0;
	line-height: 1.6;
	color: black;
	white-space: nowrap;
}

.menu li a {
	text-decoration: none;
}

.menu > ul > li:hover > ul {
	display: block;
	position: absolute;
	background: white;
	border: 1px solid black;
	padding: 15px 60px 15px 30px;
	top: 60px;
	min-width: calc(100% + 30px);
	left: -30px;
	z-index: 2;
}

.menu .icon {
	flex: 0 1 45px;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
}

.menu .icon:before {
	content: '';
	height: 25px;
	width: 25px;
	display: inline-block;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}


.menu .icon:hover:before,
.menu .busca:focus-within:before {
	filter: var(--redFilter);
}

.menu .busca:before {
	background-image: url(images/search.svg);
	position: relative;
	left: 25px;
	top: 2px;
}

.menu .sacola:before {
	background-image: url(images/bag.svg);
}

.menu .desejo:before, .minhaconta .desejo:after {
	background-image: url(images/heart.svg);
}

.menu .usuario:before, .minhaconta .usuario:after {
	background-image: url(images/user.svg);
}

.menu .sacola.showCount:after {
	content: attr(data-itens);
	position: absolute;
	font-size: 11px;
	top: 26px;
	left: 26px;
	/* background: black; */
	width: 13px;
	height: 13px;
	line-height: 13px;
	/* color: white; */
	text-align: center;
	border-radius: 100%;
}

.menu .sacola.showCount:hover:after {
	/* background: var(--travessaRed); */
}

.menu .busca {
	/* position: relative; */
}

.busca-bar:hover {
    color: var(--travessaRed);
    filter: var(--redFilter);
}
/*.menu  input {
	opacity: 0;
	display: inline-block;
	width: 25px;
	padding: 5px;
	box-sizing: border-box;
	transition: 0.3s all;
	position: relative;
	top: 1px;
	height: 32px;
	cursor: pointer;
}*/

.menu .txtBusca {
    opacity: 1;
    padding: 5px 0px 5px 0px;
    border: 1px solid #ccc;
    display: inline-block;
  /*  width: 180px;*/
    box-sizing: border-box;

    margin: 0 0px 0 0px;
    cursor: auto;
    height: 32px;
}

.fixedMenu .travessaHeader {
    position: fixed;
    top: 0;
    z-index: 999;
    width: 100%;
    background-color: white;
    max-width: 1920px;
}

.fixedMenu .menu {
	position: fixed;
	top: 6.67vw;
	width: 100%;
	z-index: 999;
	background: white;
	max-width: 1920px;
}

.fixedMenu .content {
	margin-top: calc(6.67vw + 60px);
}


.hideMenu .travessaHeader,
.hideMenu .menu {
	opacity: 0;
	pointer-events: none;
}

.homeBanners {
    margin-bottom: 50px!important;
}

.homeBanners a,
.homeBanners img,
.homeBanners video {
	width: 100%;
	display: block;
}


.homeBanners + hr {
	margin: 0;
}

.homeBanners .slick-dots {
	bottom: -30px;
}

.homeBanners .slick-dots li {
	margin: 0 1px;
}

.homeBanners .slick-dots li button:before {
	background: white;
	border: 1px solid #777;
	width: 8px;
	height: 8px;
	content: '';
	opacity: 1;
}

.homeBanners .slick-dots li.slick-active button:before {
	background: black;
	border: 1px solid black;
	opacity: 1;
}

p {
	margin: 10px 0;
}


b {color: var(--travessaRed);}

a { color: black; }

a:hover { color: var(--travessaRed); }

h2 {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 32px;
    margin: 33px auto 65px auto;
}

h2 a {
	text-decoration: none;
}

.content > h3 {
	text-align: center;
}

.content > h2 + h3 {
	margin-top: -20px;
	margin-bottom: 40px;
}

.slick-prev, .slick-next {
	z-index: 1;
	height: 35px!important;
	width: 30px!important;
	background-image: url(images/arrow.svg)!important;
	mix-blend-mode: hard-light;
}

.homeBanners .slick-prev:hover, .homeBanners .slick-next:hover {
    filter:brightness(100);
}

.slick-prev {
	left: 25px!important;
}

.slick-next {
	right: 25px!important;
	transform: scaleX(-1) translateY(-50%)!important;
}

.slick-prev:before, .slick-next:before {
	content: ''!important;
}

.productCarousel {
	max-width: 90%;
	margin: 50px auto;
	/* display: flex; */
	/* align-items: center; */
}

.productBox > div {
    width: 200px;
    display: block;
    /* margin: 1.5%; */
    /* vertical-align: middle; */
    text-align: center;
    margin: 20px auto;
}

.productBox .cover {
    width: 200px;
    height: 200px;
    display: block;
    position: relative;
    margin-bottom: 25px;
}

.productBox img {
	max-width: 200px;
	max-height: 200px;
	display: block;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	/*box-shadow: 4px 4px 6px rgb(0 0 0 / 50%);*/
	transition: 0.3s transform;
}

.productBox img:hover {
	transform: scale(1.05);
}

.productBox .de {
    display: block;
    font-weight: 600;
    margin-top: 10px;
    font-size: 15px;
}

.productBox .price {
	display: block;
	font-weight: 600;
	margin-top: 5px;
	font-size: 18px;
}



.productBox a {
	display: block;
	text-decoration: none;
}

.productBox:hover a {
	color: black;
	color: var(--travessaRed);
	text-decoration: underline;
}

.productBox .title {
	font-weight: 500;
	font-size: 18px;
	line-height: 1.3;
}

.productBox .subtitle {
	font-size: 16px;
}

.productBox button {
	opacity: 0;
	cursor: pointer;
	margin: 10px;
}

.productBox button.secondary {
    display: none;
}

.call2action.button, .productBox button {
	background: var(--travessaRed);
	color: white;
	padding: 10px;
	text-transform: uppercase;
	font-size: 12.5px;
	cursor: pointer;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
	transition: 0.3s all;
	text-decoration: none;
	min-width: 130px;
}

.call2action.button:hover,
.productBox button:hover {
	background: black;
}

.productBox:hover button {
	opacity: 1;
}

.ellipsis {
    white-space: nowrap; 
    overflow: hidden;
    text-overflow: ellipsis;
}

.productCarousel .slick-prev {
	left: -25px!important;
	top: 115px;
}

.productCarousel .slick-next {
	right: -25px!important;
	top: 115px;
	transform: scale(-0.75)!important;
}

.productCarousel .slick-prev,
.productCarousel .slick-next {
    /*opacity: 0.1;*/
    mix-blend-mode: normal;
    transform: scale(0.7);
    color: #d4d4d4;
}

    .productCarousel .slick-prev:hover,
    .productCarousel .slick-next:hover {
        /*opacity: 0.4;*/
        background-image: url(images/arrow1.svg) !important;
        background-repeat: no-repeat;
        /*color: #ababab;*/
    }
/*OBJDESEJO*/
.productCarouselObj {
    max-width: 90%;
    margin: 30px auto;
    /* display: flex; */
    /* align-items: center; */
}

.productBoxObj > div {
    width: 200px;
    display: block;
    /* margin: 1.5%; */
    /* vertical-align: middle; */
    text-align: center;
    margin: 20px auto;
}

.productBoxObj .cover {
    width: 200px;
    height: 200px;
    display: block;
    position: relative;
    margin-bottom: 25px;
}

.productBoxObj img {
    max-width: 200px;
    max-height: 200px;
    display: block;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    /*box-shadow: 4px 4px 6px rgb(0 0 0 / 50%);*/
    transition: 0.3s transform;
}

.productBoxObj img:hover {
    transform: scale(1.05);
}

.productBoxObj .de {
    display: block;
    font-weight: 600;
    margin-top: 10px;
    font-size: 15px;
}

.productBoxObj .price {
    display: block;
    font-weight: 600;
    margin-top: 5px;
    font-size: 18px;
}



.productBoxObj a {
    display: block;
    text-decoration: none;
text-align:center;
}

.productBoxObj:hover a {
    color: black;
    color: var(--travessaRed);
    text-decoration: underline;
}

.productBoxObj .title {
    font-weight: 500;
    font-size: 18px;
    line-height: 1.3;
}

.productBoxObj .subtitle {
    font-size: 16px;
}

.productBoxObj button {
    opacity: 0; 
    cursor: pointer;
    margin: 10px;
}

    .productBoxObj button.secondary {
        display: none;
    }

.call2action.button, .productBoxObj button {
    background: var(--travessaRed);
    color: white;
    padding: 10px;
    text-transform: uppercase;
    font-size: 11.5px;
    cursor: pointer;
    font-weight: 600;
    text-align: center;
    line-height: 1.2;
    transition: 0.3s all;
    text-decoration: none;
    min-width: 130px;
}

    .call2action.button:hover,
    .productBoxObj button:hover {
        background: black;
    }

.productBoxObj:hover button {
    opacity: 1;
}

.ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.productCarouselObj .slick-prev {
    left: -35px !important;
    top: 115px !important;
}

.productCarouselObj .slick-next {
    right: -35px !important;
    top: 115px;
    transform: scale(-0.75) !important;
}

.productCarouselObj .slick-prev,
.productCarouselObj .slick-next {
    opacity: 0.3;
    mix-blend-mode: normal;
    transform: scale(0.7);
    color: #ececec;
}

    .productCarouselObj .slick-prev:hover,
    .productCarouselObj .slick-next:hover {
        opacity: 0.5;
    }

/*FIM object DESEJO*/
.catList {
    display: flex;
    flex-wrap: wrap;
    max-width: 90%;
    margin: auto;
}

.catList .productBox { flex: 1 1 20%; }

.subcats {
	display: flex;
	justify-content: space-around;
	width: 90%;
	max-width: 1300px;
	margin: 0 auto 50px auto;
	position: absolute;
	left: 0;
	right: 0;
	/* z-index: 1; */
}

.subcats a {
	text-decoration: none;
}

.subcats > a {
	border: 1px solid black;
	padding: 5px 10px;
	text-align: center;
	min-width: 190px;
	max-height: 35px;
}

a.selected {
	color: var(--travessaRed);
}

.subcats + .catList {
	margin-top: 150px;
}

.details {
	border: 1px solid black;
	padding: 5px 20px 5px 10px;
	background: white;
	min-width: 220px;
	z-index: 1;
	overflow: hidden;
	max-height: 35px;
	cursor: pointer;
}

.details:hover,
.details.selected,
.details:focus-within {
    padding-bottom: 15px;
    max-height: initial;
    cursor: pointer;
}

.details .summary {
	cursor: pointer;
	position: relative;
}

.details .summary:hover {
	color: var(--travessaRed);
}

.details.open .summary {
	margin-bottom: 25px;
	color: var(--travessaRed);
}

.details .summary:before {
	content: '';
	position: absolute;
	right: -12px;
	top: 6px;
	width: 12px;
	height: 12px;
	background-image: url(images/arrow.svg);
	background-repeat: no-repeat;
	filter: brightness(0);
}

.details .summary:hover:before,
.details.selected .summary:before,
.details:focus-within .summary:before {
	filter: var(--redFilter);
}

.details:hover .summary:before,
.details.selected .summary:before,
.details:focus-within .summary:before {
	transform: rotate(-90deg);
	filter: var(--redFilter);
}

.subcats .details ul {
	max-width: 175px;
}

.subcats .details ul li {
	line-height: 1.2;
	margin-top: 12px;
}

button, .button {
    font-weight: 600;
    cursor: pointer;
    text-align: center;
}

button.verTodos,
.button.verTodos {
	display: block;
	margin: auto;
	background: white;
	border: 1px solid black;
	padding: 15px 20px;
	text-transform: uppercase;
	font-weight: 600;
	cursor: pointer;
	width: 160px;
	text-decoration: none;
	text-align: center;
}

button.verTodos:hover,
.button.verTodos:hover,
.buttonBox:hover {
	background:black;
	color: white;
}

.buttonBox {
    border: 1px solid black;
    padding: 0.5em 1em;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
}

hr {
	height: 1px;
	background: black;
	display: block;
	margin: 40px auto;
	max-width: 90%;
}

hr.hidden {
	opacity: 0;
}

.content > img, footer > img {
	display: block;
	max-width: 90%;
	margin: 20px auto;
}

/*img.bannerMed {
	max-width: 75%;
	margin: 70px auto 20px auto;
}*/

.bannerMed {
    max-width: 75%;
    margin: 70px auto 20px auto;
}


img.bannerSmall {
	max-width: 60%;
	margin: 70px auto 50px auto;
}

.content .bannerFullWidth {
	width: 100%;
	margin: 0 0 30px 0;
	max-width: 100%;
}

img.vitrineTelaCheia {
	display: block;
	width: 100%;
max-width: 100%;}

img.vitrineMedia {
	display: block;
	max-width: 900px;
width: 100%;}

img.vitrinePequena {
	display: block;
	max-width: 600px;
width: 100%;}

.small {
	font-size: smaller;
}

.x-small {
	font-size: x-small;
}
.x-smallRed {
    font-size: x-small;
    color: rgb(235, 0, 0);
}

.xx-small {
    font-size: xx-small;
    
}

.center {
	text-align: center;
}

.freteGratisGIF {
	width: 1000px;
}

.pager {
	text-align: center;
	margin: 50px auto;
}

.pager > div {
	display: inline-block;
	border: 1px solid black;
	padding: 10px 0;
}

.pager a {
	display: inline-block;
	width: 25px;
	height: 15px;
	position: relative;
	margin: 0 10px;
	background-image: url(images/arrow.svg);
	background-repeat: no-repeat;
	top: 2px;
	transition: 0.3s all;
	filter: brightness(0);
}

.pager .prev {
    background-position: left;
}

.pager .prev:hover {
	transform: translateX(-5px);
	filter: brightness(0.7);
}

.pager .next {
    transform: scaleX(-1);
}

.pager .next:hover {
	transform: scaleX(-1) translateX(-5px);
	filter: brightness(0.7);
}

.singleProduct {
	max-width: 600px;
	margin: 0 auto 50px auto;
}

.singleProduct .main {
	position: relative;
}

.singleProduct .cover {
	max-width: 275px;
	height: 360px;
/*box-shadow: 4px 4px 6px rgb(0 0 0 / 50%);*/

}

.singleProduct .breadCrumbs {
	position: absolute;
	top: 0;
	left: 300px;
	font-size: 11px;
	line-height: 0.5;
	font-weight: 600;
}

.singleProduct .breadCrumbs a {
	text-decoration: none;
	text-transform: uppercase;
}

.singleProduct .breadCrumbs a:last-of-type {
	color: var(--travessaRed);
	font-weight: 600;
}

.breadcrumbArrow {
	width: 0.5em;
	height: 0.5em;
	background-image: url(images/arrow.svg);
	background-repeat: no-repeat;
	filter: brightness(0);
	display: inline-block;
	transform: scaleX(-1);
	position: relative;
	top: -0.12em;
	margin: 0 0.3em;
}

h2.breadCrumbs .current {
	color: var(--travessaRed);
}

.singleProduct h3 {
	position: absolute;
	left: 300px;
	top: 0px;
	font-size: 16px;
	line-height: 1.25;
	max-width: 350px;
	/*max-height: 50px;*/
	/*text-overflow: ellipsis;*/
	overflow: hidden;
	display: -webkit-box;
/*	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;*/
}

/*.singleProduct .descricao {
	position: absolute;
	top: 50px;
	left: 500px;
	font-size: 12px;
}*/

/*.singleProduct .descricao span {
	
color: var(--travessaRed);display: inline-block;margin-left: 5px;cursor: pointer;}*/

.singleProduct .autordiretor {
    position: absolute;
    top: 40px;
    left: 300px;
    font-size: 12px;
  
}

.singleProduct .disponibilidade {
	position: absolute;
	top: 85px;
	left: 300px;
	font-size: 12px;
	text-transform: uppercase;
}

.singleProduct .cep {
	position: absolute;
	top: 120px;
	left: 300px;
	font-size: 13px;
}

.singleProduct .cep label {
	display: block;
	margin-bottom: 2px;
}

.singleProduct .cep input {
	display: inline-block;
	border: 1px solid black;
	padding: 5px;
	width: 85px;
	font-size: 12px;
	text-align: center;
	float: left;
	height: 25px;
	line-height: 25px;
}

.singleProduct .cep button {
	display: inline-block;
	background: black;
	color: white;
	/* padding: 5px; */
	font-size: 11px;
	float: left;
	width: 30px;
	height: 25px;
	line-height: 25px;
	transition: 0.3s all;
}

.singleProduct .cep button:hover {
	background: var(--travessaRed);
}

.singleProduct .valor {
    position: absolute;
    top: 215px;
    left: 300px;
    font-size: 12px;
    line-height: 1.2;
}

.singleProduct .valor .valorOriginal:after,
.searchPage .results .valor .valorOriginal:after {
    content: '';
    display: block;
}

.singleProduct .valor strong,
.searchPage .results .valor strong {
	font-size: 20px;
	display: block;
}

.singleProduct .adicionarSacola {
    position: absolute;
    left: 300px;
    top: 310px;
}

.singleProduct .heart {
    position: absolute;
    left: 450px;
    top: 316px;
    width: 110px;
    height: 35px;
    font-size: 11px;
    line-height: 1.1;
    text-decoration: none;
    padding-left: 44px;
    background-size: 35px;
    color: black;
}

.singleProduct .heart:hover {
	color: var(--travessaRed);
}

.singleProduct .heart:after {
	content: '';
	background-image: url(images/heart.svg);
	background-repeat: no-repeat;
	cursor: pointer;
	background-color: transparent;
	transition: 0.3s background-image;
	position: absolute;
	height: 35px;
	width: 70px;
	left: 0;
	top: 0;
	transform: scale(1);
	transform-origin: 10px 20px;
}

.singleProduct .heart:before {
	content: "adicionar";
	text-transform: uppercase;
	display: block;
}

.singleProduct .heart.selected:before {
	content: "remover";
}

.singleProduct .heart.selected:after {
	background-image: url(images/heart-fill.svg);
	filter: var(--redFilter);
}

.singleProduct .heart:hover:after {
	filter: var(--redFilter);
}

.singleProduct .heart:hover:after {
    animation: pulse 1s infinite;
}

@keyframes pulse {
	10% {transform: scale(1.1)}
}


.singleProduct .sinopse {
	max-height: 5em;
	overflow: hidden;
	font-size: 14px;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	margin: 20px auto;
	cursor: pointer;
}

.singleProduct .sinopse.selected {
	max-height: initial;
	display: block;
}

.singleProduct .leiamais {
	font-size: 14px;
	margin: -20px 0 20px 0;
	color: var(--travessaRed);
	cursor: pointer;
}

.singleProduct .sinopse.selected + .leiamais {
	display: none;
}

.singleProduct .sinopse p {
	margin: 0 auto 20px auto;
}

.singleProduct .mail {
	width: 45px;
	height: 30px;
	display: block;
	background-image: url(images/mail.svg);
	background-repeat: no-repeat;
	/* position: absolute; */
	/* top: 270px; */
	/* left: 450px; */
}

.singleProduct .dados {
	font-size: 14px;
	line-height: 1.4;
	margin: 20px 0;
}

.singleProduct h4 {
	font-size: 15px;
	margin-bottom: 5px;
}

.scrollBox {
	max-width: 960px;
	margin: 40px auto 100px auto;
	display: flex;
	max-height: 984px;
	/* border: 1px solid black; */
}

.scrollBox > div {
	/* width: 50%; */
}

.scrollBox > .photo {
	width: 580px;
	height: 984px;
	overflow: hidden;
}

.scrollBox img {
	height: 100%;
}

.scrollBox .text {
	/* margin-left: 30px; */
	padding: 0 18px 0 30px;
	flex: 1 0 380px;
	font-size: 14px;
	overflow-y: scroll;
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	border-right: 1px solid black;
}

.scrollBox .text::-webkit-scrollbar {
	width: 15px;
	background: #eee;
}

.scrollBox .text::-webkit-scrollbar-track {
	background: #eee;
}

.scrollBox .text::-webkit-scrollbar-thumb {
	background-color: #bbb;
	cursor: pointer;
}

.scrollBox .text h3 {
	margin-bottom: 30px;
	margin-top: 10px;
}

.scrollBox .text p+h3 {
	margin: 30px 0;
}

.scrollBox .lojas.text b {
	display: block;
	color: black;
}

.scrollBox .lojas.text p + * {
	margin-top: 20px;
	border-top: 1px solid black;
	padding-top: 20px;
}

.scrollBox .lojas.text p a {
	display: block;
	margin: 15px 0;
	text-decoration: none;
}

.bannerFull {
	width: 100%;
	max-width: 100%!important;
}

picture.bannerFull img {
	max-width: 100%;
}

.textBox {
	width: 700px;
	margin: 40px auto;
	text-align: justify;
	font-size: 14.5px;
}

.textBox blockquote {
    clear: both;
    margin: 40px 0;
    font-size: 16px;
    font-weight: 600;
}

.textBox blockquote b {
	color: black;
	display: block;
	text-align: right;
}

.quem .button {
    float: right;
    margin-bottom: 20px;
}

.quem b {
	display: block;
	color: black;
}

.textBox h3 {
	margin: 3em 0 1.5em 0;
}

h3.center {
	margin: 3em 0 1.5em 0;
	text-align: center;
}

.scrollBox .eventos.text p {
    margin: 0;
}

.scrollBox .eventos.text > div + div {
    margin: 20px 0;
}

.scrollBox .eventos.text .data {
    color: var(--travessaRed);
    font-weight: 600;
    font-size: 25px;
    margin-top: 10px;
    line-height: 1.1;
}

.scrollBox .eventos.text .local {
    color: var(--travessaRed);
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 5px;
    line-height: 1.2;
}

.scrollBox .eventos.text .tipo {
    font-size: 12px;
}

.scrollBox .eventos.text .nome {
    font-weight: 600;
    font-size: 15px;
    line-height: 1.2;
    margin-bottom: 5px;
}

.scrollBox .eventos.text time {
    font-size: 15px;
    font-weight: 600;
}

.scrollBox .eventos.text .autor {
    display: block;
    line-height: 1.2;
    margin: 5px 0;
}

.searchPage {
	
	margin: auto;
	position: relative;
	min-height: 300px;
}

.searchPage form {
	display: flex;
	justify-content: space-between;
	max-width: calc(100% - 40px);
	margin: auto;
	position: absolute;
	width: 670px;
	min-height: 300px;
	left: 0;
	right: 0;
	top: 0;
}

.searchPage form > div {width: 50%;}

.searchPage .order select {
	width: 210px;
	padding: 5px 20px 5px 10px;
}

.clearfix:after {
  content: "";
  clear: both;
  display: table;
}

.travessaForm .button.right {
	float: right;
}

.left {float: left;}
.right {float: right;}


.travessaForm select {
    border: 1px solid black;
    padding: 5px 20px 5px 10px;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    font-size: 16px;
    background-image: url(images/arrowBlack.svg);
    background-repeat: no-repeat;
    background-position: calc(100% - 6px) center;
    background-size: 10px;
    height: 36px;
    background-color: white;
    color: black;
}

.travessaForm .enviar {
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    font-size: 16px;
    background-image: url(images/arrowBlack.svg);
    background-repeat: no-repeat;
    background-position: calc(100% - 6px) center;
    background-size: 10px;
    height: 36px;
    background-color: white;
    color: black;
}

.travessaForm input[type=text],
.travessaForm input[type=email],
.travessaForm input[type=number],
.travessaForm input[type=password],
.travessaForm input[type=date],
footer input {
    border: 1px solid black;
    padding: 7px;
}

.travessaForm input[type=date] {
    -webkit-appearance: none;
    height: 36px;
    background-color: white;
    color: black;
    font-size: 16px;
    text-transform: uppercase;
    line-height: 1;
}

.travessaForm select:focus {
    outline: 1px solid black;
}
.travessaForm button {
	padding: 10px 15px;
	text-transform: uppercase;
user-select: none;}

.travessaForm .limpar, .button.secondary {
	background: white;
	color: black;
	border: 1px solid black;
	padding: 10px 15px;
	font-size: 12.5px;
	line-height: 1.2;
	transition: 0.3s all;
	text-decoration: none;
	display: inline-block;
}

.travessaForm .limpar:hover, .button.secondary:hover {
    background: black;
	color: white;
}

.travessaForm .enviar {
	background: var(--travessaRed);
	color: white;
	font-size: 12.5px;
	transition: 0.3s background;
}

.travessaForm .enviar:hover {
	background: black;
}

.travessaForm .checkbox {
    position: relative;
    padding-left: 35px;
    font-size: 14px;
    max-width: max-content;
    margin: 20px 0;
}

.travessaForm a.checkbox {
	display: inline-block;
	text-decoration: none;
}

.travessaForm a.checkbox + a.checkbox {
	margin-left: 20px;
}

.travessaForm div.checkbox label {
    cursor: pointer;
}

.travessaForm div.checkbox.address {
    border: 1px solid black;
    padding: 20px;
    padding-left: 70px;
}

.travessaForm div.checkbox label:before,
.travessaForm span.checkbox label:before,
.travessaForm a.checkbox:before {
    content: '';
    width: 25px;
    height: 25px;
    border: 1px solid black;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.travessaForm .checkbox.address label:before {
	left: 20px;
}

.travessaForm div.checkbox input[type=radio],
.travessaForm div.checkbox input[type=checkbox] {
	display: none;
}

.travessaForm div.checkbox:hover label {
    color: var(--travessaRed);
}

.travessaForm div.checkbox:hover label:before,
.travessaForm a.checkbox:hover:before {
	background: #eee;
}

.travessaForm div.checkbox input:checked + label:before,
.travessaForm a.checkbox.checked:before {
	background: var(--travessaRed);
	border-color: var(--travessaRed);
}

.travessaForm div.checkbox.showTextarea {
	max-width: 100%;
}

.travessaForm div.checkbox.showTextarea textarea {
	display: none;
}

.travessaForm div.checkbox.showTextarea input:checked + label + textarea {
	display: block;
	height: 70px;
	position: relative;
	left: -35px;
	top: 15px;
	width: calc(100% + 35px);
}

.travessaForm div.checkbox.showTextarea input:checked + label:before {
	top: -70px;
}

.travessaForm sup {
	color: var(--travessaRed);
	display: inline-block;
	margin-left: 2px;
}

.travessaForm .formLine {
	margin-bottom: 20px;
	display: flex;
	align-items: center;
}

.travessaForm .formLine.singleHeight {
	margin-bottom: 13px;
}

.travessaForm .formLine.singleHeight > div {
	height: 35px;
	display: flex;
	align-items: center;
}

.travessaForm .formLine.singleHeight input,
.travessaForm .formLine.singleHeight select {
	height: 100%;
	width: 100%;
}

.page.travessaForm.pedidos, .page.maisEscolas,
.page.cadastro, .page.cartaoPresente,
.page.opiniao {
	width: 560px;
	max-width: calc(100% - 40px);
	margin: auto;
}

.page > img {
	max-width: 100%;
	display: block;
	margin: 15px 0;
}

.travessaForm.pedidos select {
	display: inline-block;
	text-transform: uppercase;
	width: 25%;
}

.travessaForm.pedidos select+select {
	margin-left: 10px;
}


.travessaForm .formLine:after {
  content: "";
  clear: both;
  display: table;
}

.travessaForm label {
	font-size: 14px;
}

.travessaForm .formLine label {
	display: inline-block;
	float: left;
}

.travessaForm .formLine label input,
.travessaForm .formLine label select {
	display: inline-block;
	width: calc(100% - 20px);
	margin-top: 5px;
}

.travessaForm .formLine label input:only-of-type {
	display: block;
}

.travessaForm .formLine.simple label:last-of-type input {
	width: 100%;
}

.travessaForm .formLine .w100 {
	width: 100%;
}

.travessaForm .formLine .w70 {
	width: 70%;
}

.travessaForm .formLine .w65 {
	width: 65%;
}

.travessaForm .formLine .w60 {
	width: 60%;
}

.travessaForm .formLine .w50 {
	width: 50%;
}

.travessaForm .formLine .w40 {
	width: 40%;
}

.travessaForm .formLine .w35 {
	width: 35%;
}

.travessaForm .formLine .w30 {
	width: 30%;
}

.travessaForm .formLine .w25 {
	width: 25%;
}

.travessaForm .formLine .w20 {
	width: 20%;
}

.travessaForm input.erro,
.travessaForm textarea.erro{
	border: 1px solid var(--travessaRed);
	box-shadow: 0 0 3px var(--travessaRed);
}

.travessaForm .stars {
	display: flex;
	margin-left: 5px;
}

.travessaForm .stars i {
	width: 18px;
	height: 18px;
	background-image: url(images/star.svg);
	margin: 0 1.5px;
	cursor: pointer;
	background-repeat: no-repeat;
}

.travessaForm .stars i.selected {
	filter: var(--redFilter);
	background-image: url(images/star_solid.svg);
}
	
.mw700 {
	max-width: 700px;
    margin: auto;
	width: 90%;
}

.mw500 {
	max-width: 500px;
    margin: auto;
	width: 90%;	
}

.mw400 {
	max-width: 500px;
    margin: auto;
	width: 90%;	
}

.mw300 {
	max-width: 300px;
    margin: auto;
}

.mw200 {
	max-width: 200px;
    margin: auto;
}

.travessaForm .DDD {
	max-width: 65px;
}

.travessaForm .tel { max-width: 190px;}

.travessaTable {
	max-width: 960px;
	margin: auto;
	overflow: auto;
	border-collapse: collapse;
}

.travessaTable table {
	border-collapse: collapse;
	margin: 20px 0;
	width: 100%;
}

.travessaTable th {
	border: 1px solid black;
	padding: 10px;
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 100;
	vertical-align: middle;
}

.travessaTable td {
	padding: 40px 20px;
	vertical-align: middle;
	position: relative;
}

.travessaTable td.valor {
    text-align: center;
}

.travessaTable td:after {
	content: attr(data-tipo);
	position: absolute;
	bottom: 15px;
	left: 0;
	right: 0;
	margin: auto;
	display: block;
	text-align: center;
	font-size: 13px;
	text-transform: uppercase;
}

.travessaTable td + td:before {
	content: '';
	position: absolute;
	left: 0;
	height: 70%;
	width: 1px;
	background: black;
	top: 15%;
}

.travessaTable .cover {
	text-align: right;
	text-align: center;
}

.travessaTable img {
	max-width: 120px;
	max-height: 120px;
	/*box-shadow: 2px 2px 4px rgb(0 0 0 / 50%);*/
	display: inline-block;
}

.travessaTable .title {
	color: var(--travessaRed);
	font-weight: 700;
	font-size: 14px;
	max-width: 370px;
	text-overflow: ellipsis;
	overflow: hidden;
}

.travessaTable p {
	font-size: 13px;
	margin: 5px 0;
}

.desejoTable .mudarLista,
.travessaTable .mudarLista {
	text-decoration: none;
	font-size: 13px;
	display: inline-block;
	line-height: 1.2;
	text-align: center;
}

.desejoTable .mudarLista:before,
.travessaTable .mudarLista:before {
	content: '';
	background-image: url(images/heart.svg);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 30px;
	width: 30px;
	display: block;
	margin: 10px auto;
}

.desejoTable .mudarLista:hover:before,
.desejoTable .remover:hover,
.travessaTable .mudarLista:hover:before,
.travessaTable .remover:hover {
	filter: var(--redFilter);
}

.desejoTable .remover,
.travessaTable .remover,
footer .remover {
	background-image: url(images/x.svg);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 20px;
	width: 20px;
	display: block;
	margin: auto;
}

.desejoTable.travessaForm table div.checkbox label:before {
	left: 12px;
	top: -23px;
}

.desejoTable tr + tr,
.travessaTable tr + tr {
	border-bottom: 1px solid black;
}

.desejoTable td.valor {
	/* min-width: 110px; */
}

.desejoTable .call2action {
    float: right;
}

.searchPage .refineSearch .enviar {
	float: right;
}

.searchPage .refineSearch {
	/* position: absolute; */
	padding: 5px 20px 15px 20px;
}

.searchPage .refineSearch .summary {
	margin-left: -10px;
}

.searchPage .refineSearch ul {
	margin: 20px 0;
	font-size: 14px;
}

.searchPage .order label {
	color: var(--travessaRed);
	font-size: 14px;
	font-weight: 600;
}

.searchPage .refineSearch li {
	margin: 20px -5px 0 2px;
}

.searchPage .refineSearch li * {
	display: inline-block;
	vertical-align: middle;
}

.searchPage .refineSearch li label {
	display: inline-block;
	width: 65px;
	line-height: 1.1;
}

.searchPage .refineSearch li select,
.searchPage .refineSearch li input {
    width: calc( 100% - 75px );
    font-size: 14px;
}

.searchPage .results {
	position: relative;
	/*top: 150px;*/
	margin-bottom: 200px;
}

    .searchPage .results section {
        /* border-top: 1px solid black; */
        padding: 20px;
        max-width: 960px;
        height: auto;
        margin: auto;
        align-items: flex-start;
    }

.searchPage .results section > a {
	text-decoration: none;
	display: inline-block;
	width: 70%;
	height: 285px;
	vertical-align: top;
	position: relative;
}

.searchPage .results section > a:first-of-type {
	text-align: right;
	width: 25%;
	margin-right: 4%;
}

.searchPage .results section img {
	max-width: 100%;
	max-height: 100%;
	/*box-shadow: 3px 4px 10px rgb(0 0 0 / 50%);*/
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

.searchPage .results section > a p {
	font-size: 14px;
	margin: 0;
}

.searchPage .results section > a * {
	color: black;
}

.searchPage .results section > a h3 {
	margin: -5px 0 20px 0;
	line-height: 1;
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 22px;
}

.searchPage .results section > a:hover h3 {
	color: var(--travessaRed);
}

.searchPage .results section > a .sinopse {
	margin: 20px 0;
}

.searchPage .results section > a:hover .sinopse b {
	color: var(--travessaRed);
}

.searchPage .results .valor {
	font-size: 12px;
	line-height: 1.2;
}

.searchPage .call2action.button {
	color: white;
    padding-top:10px;
	/*position: absolute;*/
	bottom: 0px;
	left: 150px;
    float:right;
}

.hidden {
	display: none;
}

.page.minhaconta, .page.presenteMsg {
    max-width: max-content;
    margin: auto;
}

.minhaconta a {
	display: block;
	text-decoration: none;
	padding: 5px 45px;
	margin: 20px 0;
	border: 1px solid black;
	position: relative;
	height: 35px;
}

.minhaconta a:before {
	content: '';
	width: 35px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: black;
}

.minhaconta a:after {
	content: '';
	width: 35px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-repeat: no-repeat;
	background-size: 25px 25px;
	background-position: center;
	filter: invert(1);
}


.minhaconta a:hover:before {
	background-color: var(--travessaRed);
}

.minhaconta .mail:after {
	background-image: url(images/mail.svg);
}

.minhaconta .t_travessa:after {
	background-image: url(images/T.svg);
}

.minhaconta .pedidos:after {
	background-image: url(images/pedidos.svg);
}

.minhaconta .senha:after {
	background-image: url(images/senha.svg);
}

.minhaconta .entrega:after {
	background-image: url(images/entrega.svg);
}

.minhaconta .privacidade:after {
	background-image: url(images/privacidade2.svg?);
}

.minhaconta .atendimento:after {
	background-image: url(images/atendimento.svg?);
}

.page.alterarCadastro {
	width: 700px;
	max-width: calc(100% - 40px);
	margin: auto;
}

.page.desejo.travessaForm {
	display: flex;
	justify-content: space-between;
	margin: 50px auto;
	max-width: 600px;
}

.page.presentear {
	width: 500px;
	max-width: calc(100% - 40px);
	margin: auto;
}

.page.presentear.usuario {
	width: 960px;
	max-width: calc(100% - 40px);
}

.parisStreet {
	width: 160px;
	height: 130px;
	background: url(images/paris-street2.svg);
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	line-height: 1.2;
	flex-direction: column;
	cursor: pointer;
	text-decoration: none;
}

.parisStreet:before {
	content: '';
	height: 45px;
	width: 45px;
	background-image: url(images/heart.svg);
	display: block;
	background-repeat: no-repeat;
	filter: var(--redFilter);
}

.parisStreet:hover:before {
	background-image: url(images/heart-fill.svg);
	animation: pulse 1s infinite;
}

.page.flexCenter {
	display: flex;
	margin: auto;
}

.page.flexCenter form {
	margin: auto;
}

.page.compraSucesso {
	max-width: 960px;
}

.page.compraSucesso .msg {
	margin: 40px auto 70px auto;
}

.page.compraSucesso .travessaTable {
	width: 100%;
	border-collapse: collapse;
}

.page.compraSucesso .travessaTable tr + tr {	
	border: none;
}

.page.compraSucesso .travessaTable + .msg {
	margin-top: 0;
	text-align: left;
}

.page.compraSucesso .card {
	margin: 50px auto;
}

.page.compraSucesso td button {
	margin-top: 20px;
	width: 100%;
}

.page.compraSucesso td.valorTotal {
	text-align: right;
}

.page.compraSucesso .card table {
	width: calc(100% - 40px);
	margin: 20px auto;
}

.page.compraSucesso .card .endereco {
	padding: 15px;
}

.page.compraSucesso p {
	max-width: 500px;
	margin: 15px auto;
	text-align: justify;
}

.page.compraSucesso .endPageButtons {
	max-width: 500px;
	margin: 30px auto 15px auto;
}

.page.alterarSenha {
	width: 350px;
	margin: auto;
}

.page.alterarEndereco .meuEndereco {
	margin: 20px 0;
}

.page.alterarEndereco p {
	margin: 0;
	font-size: 13px;
}
.page.alterarEndereco {
    width: 350px;
    margin: auto;
}

/*.page.alterarEndereco .alterar,
.page.alterarEndereco .novo {
	width: 230px;
}*/
.page.minhaSacola td.desejo {
    text-align: center;
}

.page.minhaSacola .quantidade input {
	max-width: 80px;
	margin-bottom: 10px;
	text-align: center;
}

.page.minhaSacola .quantidade input::-webkit-inner-spin-button,
.page.minhaSacola .quantidade input::-webkit-outer-spin-button {
	opacity: 1;

  /* -webkit-appearance: none; */
  /* -moz-appearance: textfield; */
  /* margin: 0; */

}

i.presente {
	background-image: url(images/presente.svg);
	display: inline-block;
	background-repeat: no-repeat;
	background-size: contain;
}

.page.minhaSacola .presente,
.travessaTable .presente {
	width: 30px;
	height: 30px;
	cursor: pointer;
}

.page.minhaSacola .quantidade span {
	display: none;
}

.pedidos .presente {
	display: block;
	margin: auto;
}

.pedidos .presente,
.pedidos .remover {
	cursor: auto;
}

.pedidos .presente:hover,
.pedidos .remover:hover {
	filter: none;
}

.presente.selected {
	background-image: url(images/presente-fill.svg?v2);
	filter: var(--redFilter);
}

.presente:hover {
	filter: var(--redFilter);
}

.presente.selected:hover {
	transform: scale(1.1);
}

.pedidos.travessaTable .valor span {
	white-space: nowrap;
}

.pedidos.travessaTable .qty, td.center {
	text-align: center;
}

.pedidos.travessaTable .pos {
	text-align: center;
	font-size: 13px;
	line-height: 1.2;
}

.pedidos.busca h3 {
	text-align: center;
}

.pedidos.busca .pedidoInfo,
.pedidos.busca .entregaPagamento {
	display: flex;
	margin: 20px auto 50px auto;
	justify-content: space-between;
	max-width: 690px;
	font-size: 14px;
}

.pedidos.busca .pedidoInfo > div {
	border: 1px solid black;
	padding: 10px 20px;
	text-align: center;
	flex: 1;
}

.pedidos.busca .pedidoInfo > div + div {
	border-left: 0;
}

.pedidos.busca .entregaPagamento p {
	font-size: 15px;
	margin-top: 0;
	margin-bottom: 10px;
}

.pedidos.busca .freteValor {
	max-width: 50%;
	margin: 40px auto;
	font-size: 18px;
	font-weight: 600;
}

.pedidos.busca hr,
.page.presentear hr,
.page.privacidade hr  {
	max-width: 100%;
}

.pedidos.busca .entregaPagamento > div {
	border: 1px solid black;
	padding: 15px 20px;
	flex: 0 1 48%;
	line-height: 1.2;
}

.pedidos.busca .icon {
	margin: 20px 0;
	position: relative;
	font-size: 14px;
}

.pedidos.busca .icon:before {
	content: '';
	width: 30px;
	height: 30px;
	display: inline-block;
	background-color: var(--travessaRed);
	margin-right: 10px;
	vertical-align: middle;
	margin-top: -5px;
}

.pedidos.busca .icon:after {
	content: '';
	position: absolute;
	left: 7px;
	top: 0;
	width: 18px;
	height: 18px;
	background-repeat: no-repeat;
	filter: invert(1);
}

.pedidos.busca .confirmacao:after {
	background-image: url(images/thumbsUp.svg);
}

.pedidos.busca .emailsEnviados:after {
	top: 4px;
	background-image: url(images/mail.svg);
	left: 6px;
}

.pedidos.busca .nota:after {
	top: 1px;
	left: 8px;
	background-image: url(images/nota.svg);
}

table.border {
	border-collapse: collapse;
}

table.border td, table.border th {
	padding: 5px 10px;
	border: 1px solid black;
}

.pedidos.busca + .pedidos.busca {
	width: 640px;
	margin: auto;
	max-width: calc(100% - 40px);
}

.pedidos.busca table.border,
.page.presentear table.border {
	width: 100%;
	font-size: 14px;
	margin: auto;
}

.minhaSacola td+td+td,
.page.compraSucesso .travessaTable td+td+td {
	text-align: center;
}

.minhaSacola .total span {
	white-space: nowrap;
	font-weight: 600;
	font-size: 18px;
}

.minhaSacola .mudarLista.selected:before {
	background-image: url(images/heart-fill.svg);
	filter: var(--redFilter);
}

.minhaSacola .mudarLista.selected:hover:before {
    animation: pulse 1s infinite;
}

.minhaSacola .remover {
	padding-left: 30px;
	text-decoration: none;
	font-size: 13px;
	text-transform: uppercase;
	height: 15px;
	width: 15px;
	line-height: 14px;
	margin-left: -6px;
}

.minhaSacola .checkbox {
	line-height: 35px;
}

.minhaSacola .formLine.checkbox {
	max-width: 30%;
}

.minhaSacola .subtotal,
.minhaSacola .valorTotal {
	border: 1px solid black;
	padding: 0 20px;
	text-align: right;
	font-weight: 600;
	font-size: 18px;
	line-height: 40px;
	position: relative;
}

.minhaSacola .subtotal .valor,
.minhaSacola .valorTotal .valor {
    color: var(--travessaRed);
    border-left: 1px solid black;
    display: inline-block;
    padding-left: 20px;
    position: relative;
}

.minhaSacola .subtotal .valor:before,
.minhaSacola .valorTotal .valor:before {
	content: "subtotal";
	position: absolute;
	left: -100px;
	color: black;
	text-transform: uppercase;
	font-size: 15px;
}

.minhaSacola .valorTotal .valor:before {
    content: "total";
    font-size: 18px;
    left: -72px;
}

.minhaSacola .cep * {
	height: 36px;
	display: inline-block;
	vertical-align: middle;
}

.minhaSacola .cep {
	position: relative;
}

.minhaSacola .cep .valor {
	color: var(--travessaRed);
	font-weight: 600;
	position: absolute;
	right: 0;
}

.minhaSacola .cep .button {
	min-width: min-content;
	margin-left: 10px;
}

.minhaSacola .final {
	margin: 10px 0
}

.minhaSacola .final .button,
.finalSubmit .button {
	display: inline-block;
	text-align: center;
	min-width: 130px;
	vertical-align: middle;
}

.finalSubmit {
	display: flex;
    align-content: center;
    align-items: center;
    justify-content: space-between;
}

.finalSubmit .button {
	min-height: 50px;
	vertical-align: middle;
	box-sizing: border-box;
	padding: 0;
	display: flex;
	align-content: center;
	justify-content: center;
	align-items: center;
}

.minhaSacola .final .button+.button {
	margin-left: 15px;
}

.minhaSacola .final .call2action {
	float: right;
}

.msg {
	background: #ebebeb;
	text-align: center;
	margin: 50px auto;
	padding: 15px;
	line-height: 1.2;
}

.msgNoSpace {
    background: #ebebeb;
    text-align: center;
   
    padding: 15px;
    line-height: 1.2;
}

big {
	font-size: 25px;
}

.mW80 {
	max-width: 80%;
}

.page.didaticos .escolas {
    display: flex;
    /*flex-wrap: wrap;*/
    flex-flow: wrap;
    max-width: 890px;
    margin: auto;
    justify-content: space-between;
}

    .page.didaticos .escolas::after {
        content: "";
        /*flex: auto;*/
        width: 27em;
    }
.page.didaticos .escolas > a {
    margin-bottom: 10px;
    max-width: 200px;
    cursor: pointer;
    text-decoration: none;
}

.page.didaticos .escolas > a:hover img {
	opacity: 0.5;
	filter: grayscale(100%);
}

.page.didaticos .escolas > a:hover span {
	font-weight: 600;
	letter-spacing: -0.2px;
}

.page.didaticos .escolas .imgHolder,
.page.didaticosIndividual .imgHolder {
	border: 1px solid black;
	width: 200px;
	height: 200px;
	position: relative;
}

.page.didaticos .escolas .imgHolder.embreve:before {
	content: "EM BREVE";
	position: absolute;
	background: var(--travessaRed);
	color: white;
	padding: 5px 15px;
	left: 0;
	right: 0;
	bottom: 10px;
	width: 80px;
	margin: auto;
	text-align: center;
	z-index: 1;
	font-size: 14px;
}

.page.didaticos .escolas .imgHolder:hover:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: var(--travessaRed);
	mix-blend-mode: color;
}

.page.didaticos .escolas img,
.page.didaticosIndividual img {
	display: block;
	max-width: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
}

.page.didaticos .escolas span {
	text-align: center;
	display: block;
	text-transform: uppercase;
	font-size: 13px;
	max-width: 80%;
	margin: 5px auto;
	line-height: 1.2;
	min-height: 35px;
}

.page.didaticos .maisEscolas {
	background: var(--travessaRed);
	color: white;
	text-decoration: none;
	width: 200px;
	height: 200px;
	display: flex;
	text-align: center;
	text-transform: uppercase;
	font-size: 20px;
	line-height: 1.2;
	margin: auto;
	transition: 0.2s all;
	align-items: center;
	justify-content: center;
}

.page.didaticos .maisEscolas:hover {
	font-size: 25px;
}

.page.didaticosIndividual .productBox button span+span {
    display: none;
}

.page.didaticosIndividual .productBox.selected {
	position: relative;
}

.page.didaticosIndividual .productBox.selected button span {
    display: none;
}

.page.didaticosIndividual .productBox.selected button span+span {
    display: inline-block;
}

.page.didaticosIndividual .productBox.selected:before {
	content: '';
	height: 25px;
	width: 25px;
	display: inline-block;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(images/bag.svg);
    position: absolute;
    left: 0;
    right: 0;
    top: -20px;
    margin: auto;
}

.page.didaticosIndividual .productBox.selected button {
    display: none;
}

.page.didaticosIndividual .productBox.selected:hover button.secondary {
    display: inline-block;
padding: 9px 15px;}

.page.cadastro.travessaForm .formLine.singleHeight .lembrarEmail {
	margin-left: 5%;
    position: relative;
    top: 11px;
} 

.page.cadastro.travessaForm a.call2action {
	display: inline-block;
}

.page.entrega .checkbox.address .nome {
	font-weight: 600;
}

.page.entrega {
	max-width: 420px;
}

.page.entrega a {
	display: inline-block;
	min-height: 35px;
}

.page.entrega .secondary {
	min-width: 130px;
}

.page.entrega .checkbox.address {
	max-width: 250px;
}

.page.entrega .checkbox.address + .secondary {
	width: 100%;
	max-width: 250px;
}

.card {
    border: 1px solid black;
    margin: 20px 0;
}

.card > * {
	padding: 5px 15px;
}

.card .title {
	background: var(--travessaRed);
	color: white;
	font-weight: 600;
	text-align: center;
}

.card .title+p {
	font-weight: 600;
}

.card .endereco {
	font-size: 14px;
}

.card .endereco .nome {
	font-weight: 600;
}

.card table {
	width: calc(100% - 25px);
	font-size: 14px;
	border-collapse:collapse;
	margin: 15px;
}

.card table .itens td:first-of-type {
	font-weight: 600;
}

.card table .subtotal {
	font-weight: 600;
}

.card table .frete td {
	padding-bottom: 10px;
}

.card table .total {
	background: #eee;
	color: var(--travessaRed);
	font-weight: 600;
	transform: translateX(-6px);
}

.card table .total td {
	padding: 3px 7px;
}

.page.checkout hr {
	max-width: 100%;
}

.page.checkout .card {
	max-width: 250px;
}

.page.formasPagamento {
	max-width: 580px;
	margin: auto;
}

.page.formasPagamento .secondary {
	min-width: 130px;
	display: flex;
}

.formasPagamento .formLine.checkbox {
	max-width: 40%;
}

.formasPagamento .validade {
	max-width: 85px;
}

.formasPagamento .cvc {
	position: relative;
}

.formasPagamento .cvc input {
	max-width: 100px;
	display: inline-block!important;
}

.formasPagamento .cvc:after {
	content: '';
	background-image: url(images/credit-card-back.svg);
	background-repeat: no-repeat;
	height: 40px;
	width: 50px;
	position: absolute;
	right: 20px;
	top: 23px;
}
/*
.formasPagamento .boleto {
	display: none;
}*/

.boletoIcon {
	background-image: url(images/boleto.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

.formasPagamento .boletoIcon {
	margin: auto;
	width: 110px;
	height: 50px;
}

.sameHeight {
	display: flex;
	justify-content: space-between;
	align-content: center;
}

.sameHeight > * {
	display: flex;
	align-items: center;
	justify-content: center;
}

.thumbsUp {
	background-image: url(images/thumbsUp.svg);
	background-repeat: no-repeat;
}

.compraSucesso .thumbsUp {
	width: 70px;
	height: 70px;
	margin: 25px auto;
}

.compraSucesso h3 {
	text-align: center;
}

.t {
	background-image: url(images/T.svg);
	background-repeat: no-repeat;
}

.cadastroSucesso .t {
	width: 70px;
	height: 70px;
	margin: 25px auto;
	background-color: rgb(225 225 225);
	padding: 60px;
	background-size: 70px 70px;
	background-position: center;
	border-radius: 100%;
	border: 8px solid rgb(190 190 190);
}

.page.programaPontos {
	width: 500px;
	margin: auto;
	text-align: justify;
}

.page.programaPontosPrincipal a.checkbox {
	display: block;
	margin: 20px 0!important;
}

a.checkbox.hover:hover:before {
	background: var(--travessaRed);
	border-color: var(--travessaRed);
}

.redLink {
	text-decoration: none;
	color: var(--travessaRed);
}

.redLink:hover {
	text-decoration: underline;
}

.page.programaPontos .pontosSobre {
	display: flex;
	height: 145px;
	background: rgb(235 235 235);
	align-items: center;
	font-size: 32px;
	justify-content: space-between;
	margin: 30px 0;
}

.page.programaPontos .pontosSobre div {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 20px;
	height: 100%;
	flex: 1 0 auto;
	align-items: center;
	font-weight: 600;
}

.page.programaPontos .pontosSobre div br {
	display: none;
}

.page.programaPontos .pontosSobre div:first-of-type {
	background: var(--travessaRed);
	color: white;
	font-size: 23px;
	max-width: 150px;
	line-height: 14px;
	white-space: pre-wrap;
	padding-top: 30px;
}

.page.programaPontos table.pontos {
	/* background: #ebebeb; */
	width: 100%;
	padding: 20px;
	text-transform: uppercase;
	margin: 30px 0;
	border: 1px solid black;
}

.page.programaPontos table.pontos td:first-of-type {
	font-weight: 600;
}

.page.programaPontos table.pontos td+td {
	color: var(--travessaRed);
}

.page.programaPontos .button {
	display: flex;
	margin: 20px 0;
	max-width: 130px;
	min-height: 50px;
	justify-content: center;
	align-items: center;
}

.page.descadastrar .button {
	min-width: 130px;
	line-height: 1;
}

p.gray {
	background: #ebebeb;
	padding: 10px 15px;
}

.page.topicos {
	width: 750px;
	margin: auto;
	max-width: calc(100% - 80px);
}

.page.topicos .topico > * {
	display: none;
	line-height: 1.2;
	margin: 20px 0;
	font-size: 15px;
}

.page.topicos .topico p.titulo {
	display: block;
	cursor: pointer;
	position: relative;
}

.page.topicos .topico p.titulo:hover {
	color: var(--travessaRed);
}

.page.topicos .topico p.titulo:before {
	content: '';
	position: absolute;
	left: -20px;
	top: 5px;
	width: 12px;
	height: 12px;
	background-image: url(images/arrow.svg);
	background-repeat: no-repeat;
	filter: brightness(0);
	transform: scale(-1);
}

.page.topicos .topico p.titulo:hover:before {
	filter: var(--redFilter);
}

.page.topicos .topico.selected > * {
	display: block;
}

.page.topicos .topico.selected p.titulo:before {
	transform: scale(-1) rotate(90deg);
	filter: var(--redFilter);
	top: 6px;
}

.page.topicos .topico.selected p.titulo {
	color: var(--travessaRed);
}

.page.topicos .faleconosco {
	line-height: 1.1;
}

.page.topicos .faleconosco > .opcoes {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.page.topicos .faleconosco .checkbox {
    flex: 0 1 0;
}

.page.topicos .faleconosco .w50 + .w50 input {
	width: 100%;
}

textarea {
	border: 1px solid black;
	padding: 5px 10px;
}

.page.topicos textarea {
    width: 100%;
    display: block;
    margin: 5px 0;
}

.page.faqs .titulo {
	color: var(--travessaRed);
	margin-bottom: -10px;
	font-weight: 600;
}

.page.faqs p + .titulo  {
	margin-top: 30px;
}

.page.faqs p {
	line-height: 1.3;
	text-align: justify;
}

.page.privacidade .call2action {
	min-width: 130px;
	display: inline-block;
}

.page.regulamento {
	text-align: justify;
}

.lightbox {
	position: fixed;
	width: 100%;
	height: 100%;
	background: rgb(0 0 0 / 50%);
	top: 0;
	left: 0;
	z-index: 2;
}

.lightbox img {
	width: 400px;
	max-width: 90%;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	cursor: pointer;
}

.authorBox {
	width: 100%;
	max-width: 960px;
	margin: 20px auto 70px auto;
	display: flex;
	align-items: center;
}

.authorBox > div {
	margin-top: 7px;
}

.authorBox p {
	font-size: 14px;
	text-align: justify;
}

.authorBox img {
	/* float: left; */
	margin-right: 20px;
	max-width: 300px;
	border: 1px solid black;
}

.page.presenteMsg td a {
	color: var(--travessaRed);
	text-decoration: none;
	font-weight: 600;
}

.page.presenteMsg td a:hover {
	text-decoration: underline;
}

.page.presenteMsg tr > * {
	text-align: center;
	padding: 10px 20px;
}

.page.presenteMsg th {
	/* background: #ebebeb; */
font-weight: 100;}

.page.login {
	display: flex;
	max-width: 960px;
	margin: 50px auto;
}

.page.login > div {
	width: 50%;
	padding: 50px;
}

.page.login > div+div {
	border-left: 1px solid black;
}

.page.login h3 {
	line-height: 1.15;
	font-size: 23px;
}

.page.login p {
	line-height: 1.3;
	font-size: 14px;
}

.page.login h3 + p {
	margin-top: 20px;
}

.page.login .lembrarEmail {
	margin: -5px 0 20px 0;
}

.page.login .esqueceuSenha {
	margin: -15px 0 20px 0;
}

.page.formasPagamento .call2action,
.page.entrega .call2action,
.page.entrega .secondary,
.page.maisEscolas .call2action,
.page.privacidade .call2action,
.page.privacidade .secondary,
.page.descadastrar .button,
.page.presentear .button,
.page.pedidos .button,
.page.novocliente .button,
.page.minhaconta .button,
.page.emails .button,
.page.presentear .button,
.page.cadastro .button,
.page.alterarSenha .button,
.page.alterarCadastro .button {
	padding: 17.5px;
	height: 50px;
	width: 130px;
}

.page.privacidade .button,
.page.minhaconta .button {
	display: flex;
	align-items: center;
	justify-content: center;
}

footer nav {
	max-width: 75%;
	margin: 50px auto;
	padding-left: 30px;
	border: 1px solid black;
	display: flex;
	justify-content: space-between;
}

footer nav a {
	text-decoration: none;
}

footer nav a:hover {
	text-decoration: underline;
	color: black;
}

footer nav h3 {
	margin-bottom: 10px;
	text-transform: uppercase;
	font-weight: 500;
	font-size: 16px;
}

footer nav > div {
	padding: 30px 0;
}

footer nav > div:last-of-type {
	background: #ebebeb;
	flex: 0 1 220px;
	position: relative;
	display: flex;
	justify-content: center;
	/* align-items: center; */
}

footer nav > div:last-of-type h3 {
    line-height: 1.2;
}

footer nav ul {
    list-style-type: none;
    font-size: 12px;
}

footer .banner {
	position: fixed;
	bottom: 0;
	width: 100%;
	max-width: 1920px;
	background: white;
	padding: 10px 20px;
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	z-index: 1;
}

footer .banner.privacidadeCookie {
	background: #ebebeb;
display: flex;justify-content: space-evenly;flex-wrap: wrap;text-align: center;z-index: 9;}


footer .banner form {
	display: flex;
	justify-content: space-between;
	max-width: 960px;
	align-items: center;
	margin: auto;
}

footer .remover {
	margin: unset;
	cursor: pointer;
}

footer .banner p {
	font-size: 14px;
}

footer .banner input {
	flex: 0 1 22%;
	/* margin: 0 3%; */
}

footer center {
	margin: auto;
	line-height: 40px;
}


/* Share This */
.a2a_svg, .a2a_count { border-radius: 0 !important; }

@media ( min-width: 1921px ) {
    .travessaHeader {
    	height: 130px;
    	background-size: 1920px 130px;
    }

    .travessaHeader.whiteBG:before, .travessaHeader.whiteBG:after {
    	width: 600px;
    }

    .fixedMenu .menu {
    	top: 130px;
    }

    .fixedMenu .content {
	    margin-top: 190px;
    }

    .travessaHeader a.home {
    	width: 700px;
    	height: 100px;
    }
}

@media ( max-width: 1300px ) {

    .menu > ul > li {
    	font-size: 14px;
    	letter-spacing: -0.5px;
    }

    .catList .productBox {
    	flex: 1 1 30%;
    }

}

@media ( min-width: 1001px ) {
	
	.travessaForm .stars i:hover {
		filter: var(--redFilter);
	}

	.travessaForm .stars i.selected:hover {
		filter: none;
	}
	
}
