@import "_normalize.less";
@import "remixins.less";

@import "_utils.less";
@import "_grid.less";
@import "_icons.less";
@import "_config.less";
@import "_webfont.less";


.visible_on_mobile { display: none; }
.visible_on_ipadportrait { display: none; }
@media only screen and (max-width: @ipadPortrait){
  .visible_on_ipadportrait { display: block; }
  .full_on_ipadportrait { width: @grid_12 !important; }
  .hidden_on_ipadportrait { display: none; }
}
@media only screen and (max-width: @mobile){
  .visible_on_mobile { display: block; }
  .full_on_mobile { width: @grid_12 !important; }
  .hidden_on_mobile { display: none; }
}

/* styles */
body, html{
  font-size: 62.5%;
  background-color: #fff;
  overflow-x: hidden;
}

form input,
form select { 
  border: solid 1px @gray;
  background-color: #fff;
  .rounded(0); 
}

body {
  padding-top: 110px;
  &.has_promo_bar { padding-top: 110px; }
}
@media only screen and (max-width: @ipadPortrait){ 
  body,
  body.has_promo_bar {
    padding-top: 80px;
  }
}

.to_the_top {
  position: fixed;
  z-index: 2;
  right: 20px;
  bottom: 20px;
  opacity: 0;
  visibility: hidden;
  ._sprite(309px, 106px);
  .transition(0.3s);

  &.visible {
    opacity: 1;
    visibility: visible;
  }
}

.bt {
  position: relative;
  .reset;
  height: 40px;
  background-color: transparent;
  border: solid 2px #fff;
  color: #fff;
  padding: 0 20px;
  padding-right: 10px;
  text-align: center;
  .f_proxima_reg;
  font-size: 14px;
  text-transform: uppercase;
  .no-highlight;
  .transition(0.3s);
}
.bt--white {
  color: #fff;
}
.bt--white:after {
  display: none;
  content: '';
  position: absolute;
  top: 5px;
  right: 5px;
  .sprite;
  .icon_arrow_right-white;
}
.bt--white:hover {
  color: #000;
  background-color: #fff;
}
.bt--white:hover:after {
  .icon_arrow_right-black;
}
.bt--black {
  color: #000;
  border-color: #000;
}
.bt--black:after {
  display: none;
  content: '';
  position: absolute;
  top: 5px;
  right: 5px;
  .sprite;
  .icon_arrow_right-black;
}
.bt--black:hover {
  color: #fff;
  background-color: #000;
}
.bt--black:hover:after {
  .icon_arrow_right-white;
}
.bt--orange {
  padding-right: 20px;
  color: @orange;
  border-color: @orange;
}
.bt--orange:hover {
  color: #fff;
  background-color: @orange;
}

.main { width: 100%; }
.warper {
  width: 1380px;
  font-size: 16px;
  .m_center;
}
.container_12 .warper {
  margin-top: 30px;
}

@media only screen and (max-width: 1380px){ 
  .container_12 .warper,
  .warper { width: 98%; }
}
@media only screen and (max-width: @desktop){ 
  .container_12 .warper,
  .warper { width: 98%; }
}
@media only screen and (max-width: @ipadPortrait){ 
  .container_12 .warper,
  .warper { width: 96%; }
}
@media only screen and (max-width: @mobile){ 
  .warper--interior .container_12 > .grid_3,
  .warper--interior .container_12 > .grid_9 { width: @grid_12 !important; }
}

.mobile__menu {
  position: fixed;
  z-index: 140;
  top: 70px;
  right: -100%;
  width: 90%;
  height: ~"calc(100% - 70px)";
  background-color: #fff;
  box-shadow: -4px 2px 5px 0px rgba(0,0,0, 0.15);
  overflow: auto;
  overflow-x: hidden;
  .transition(0.3s);
  .no-highlight;

  &.mobile__menu--open { right: 0; }
  a { 
    color: #000;
    text-decoration: none;
  }
  a:hover { color: @orange; }
  .main__menu {
    width: 50%;
    height: 100%;
    display: block;
    padding-left: 0;
    overflow-y: auto;
    overflow-x: hidden;

    &> li {
      height: auto;
      min-height: 20px;
      padding-top: 20px;
      float: none;
      line-height: 20px;
      font-size: 18px;
      color: @orange;
    }
    &> li:first-child { padding-top: 10px; }
    &> li:hover {
      border: 0;
    }
    &> li:hover:after {
      display: none;
    }
  }
  .submenu__baners { display: none; }
  .submenu,
  .submenu.has_banners {
    display: block;
    position: relative;
    width: 100%;
    margin-top: 5px;
    padding-bottom: 0;
    border:0;

    .flex,
    .flex__item { width: 100%; }
    ul { display: none; }
    li {
      font-size: 18px;
      margin-bottom: 5px;
    }
  }
  .submenu__content:last-child h2 { 
    border: 0; 
  }
  .submenu .submenu__content { 
    padding-top: 10px;
    padding-bottom: 10px;
    h2 { padding-bottom: 0px; }
  }
  .submenu .submenu__content {
    clear: both;
    border-bottom: solid 1px #d2d2d2;
    h2{ 
      position: relative;
      float: left;
      margin-top: 0; 
      margin-bottom: 0;
      border:0;

      div {
        position: absolute;
        width: 20px;
        right: -25px;
        top: -5px;
        height: 20px;
        line-height: 22px;
        vertical-align: middle;
        color: #fff;
        text-align: center;
        background-color: @gray;
        .rounded(100%);
      }
    }
  }
  .submenu .submenu__content:last-child { border: 0; }
}
@media only screen and (max-width: @mobile){
  .mobile__menu {
    .submenu { padding-top: 0px; }
    .l-pesquisa__mobile { margin-bottom: 20px; }
    .submenu__content {
      h2 { 
        .f_brandon_reg; 
        font-weight: normal;
      }
    }
  }
}
.mobile__menu-back {
  position: fixed;
  left: 0px;
  top: 0px;
  z-index: 110;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  background-color: rgba(0,0,0, 0.5);
  .transition(0.3s);

  &.mobile__menu--open {
    opacity: 1;
    visibility: visible;
  }
}
.mobile__menu-slider {
  position: relative;
  width: 200%;
  height: 100%;
  overflow: hidden;
  .transition(0.3s);
}
.mobile__menu-slider--sub__view {
  left: -100%;
}
.submenu__view {
  position: absolute;
  z-index: 1;
  left: 50%;
  width: 50%;
  height: 100%;
  padding-top: 40px;
  font-size: 16px;
  background-color: #fff;
  overflow-y: auto;

  h2 {
    position: fixed;
    width: 100%;
    height: 40px;
    .reset;
    margin-top: -40px;
    padding-left: 35px;
    font-weight: normal;
    font-size: 18px;
    .f_brandon_bold;
    line-height: 40px;
    vertical-align: middle;
    color: #000;
    text-transform: uppercase;
    box-shadow: 0px 5px 12px rgba(0, 0, 0, 0.15);
    background-color: #fff;
    .boxsizing;
    div { display: none; }
  }
  h2:before {
    content: '';
    position: absolute;
    left: 5px;
    top: 8px;
    .sprite;
    .icon_arrow_left-black;
  }
  ul{ 
    .ul_reset; 
    margin-top: 5px;
  }
  a { color: @gray2; }
  li {
    padding-left: 13px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 18px;
    .f_brandon_reg;
    color: @gray2;
    border-bottom: solid 1px #d2d2d2;
  }
}
@media only screen and (max-width: @ipadPortrait){ 
  .mobile__topo {
    display: block;
  }
}

.l-aux_topo {
  width: 100%;
  height: 40px;
  background-color: rgb(48, 62, 72);

  .warper { margin-top: 0px; }
  .link {
    display: inline-block;
    margin-left: 10px;
    line-height: 40px;
    height: 40px;
    vertical-align: middle;
    .f_brandon_reg;
    font-size: 12px;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    i { margin-left: 5px; }
  }
  .link:hover { 
    color: rgb(158, 174, 223);
  }
}
@media only screen and (max-width: @ipadPortrait){
  .l-aux_topo {
    display: none;
  }
}

.main__nav {
  position: fixed;
  z-index: 120;
  top: 0px;
  width: 100%;
  min-height: 110px;
  background-color: #fff;
  box-shadow: 0px 5px 5px rgba(0,0,0, 0.15);
  .transition(0.3s);

  &.small{ top: -40px; }
}
.main__nav-promo_bar {
  width: 100%;
  min-height: 40px;
  line-height: 40px;
  .f_brandon_bold;
  text-transform: uppercase;
  color: #fff;
  background-color: #000;
}
.main__nav-warper.main__nav-warper {
  width: 100%;
  position: relative;
  height: 70px;
  margin-top: 0px;
  .logo_big { 
    position: absolute;
    left: 50%;
    margin-left: -147px;
    margin-top: 21px; 
  }
  a { 
    color: #000;
    text-decoration: none;
  }
  a:hover { color: @orange; }
  .menu_icon {
    display: none;
    float: left;
    margin-top: 20px;
    margin-right: 8px;
  }
  .mobile_icons {
    display: none;
    float: right;
    font-size: 20px;
    margin-top: 22px;
    i { margin-left: 10px; }
  }
}
@media only screen and (max-width: @ipadPortrait){ 
  .main__nav-promo_bar { display: none; }
  .main__nav {
    height: 60px;
    min-height: 70px;
  }
  .main__nav-warper.main__nav-warper {
    .main_logo { margin-left: 5px; }
    .mobile_icons,
    .menu_icon { display: block; }
    .logo_big {
      left: 50%;
      margin-left: -145px;
      ._scale(0.6, 0.6);
    }
  }
}

.main__menu {
  .ul_reset;
  position: relative;

  &> li {
    position: relative;
    float: left;
    height: 70px;
    padding: 0 10px;
    line-height: 70px;
    font-size: 18px;
    vertical-align: middle;
    .f_brandon_reg;
    
    .boxsizing;
  }
  li:hover {
    color: @orange;
    .submenu { display: block; }
  }
  &> li:hover:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #fff;
  }
}
@media only screen and (max-width: @ipadPortrait){ 
  .form__pesquisa,
  .main__menu { display: none; }
}

.l-pesquisa__mobile {
  display: none;
}
@media only screen and (max-width: @ipadPortrait){
  .l-pesquisa__mobile {
    display: block;
    .form__pesquisa {
      display: block;
      width: 100%;
      height: 35px;

      input[type="text"] { 
        width: 100%; 
        height: 35px;
      }
      input[type="submit"] {
        width: 35px;
        height: 35px;
        background-position: -212px 4px;
      }
    }
  }
}

.form__pesquisa {
  position: relative;
  margin-top: 18px;

  .fa-search {
    position: absolute;
    color: @orange;
    width: 35px;
    height: 35px;
    position: absolute;
    right: 0px;
    line-height: 35px;
    vertical-align: middle;
    text-align: center;
  }
  input[type="submit"] {
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    font-size: 0;
    border: 0;
    font-size: 0;
    background-color: transparent;
    .no-highlight;
  }
  input[type="text"] {
    .reset;
    padding: 0 5px;
    width: 180px;
    height: 35px;
    .f_brandon_reg;
    font-size: 16px;
    color: #000;
    .boxsizing;
    outline: 0;
  }
}

.flex {}
.flex__item {}

.submenu {
  position: absolute;
  display: none;
  padding: 40px;
  padding-top: 35px;
  margin-left: -20px;
  background-color: #fff;
  box-shadow: -5px 5px 12px rgba(0,0,0, 0.15);
  border: 1px solid #ddd;

  &.has_banners {
    width: 580px;
  }
  &.banners__full {
    width: 460px;
    img { margin-right: 20px; }
    a:last-child img { margin-right: 0; }
    .submenu__baners { 
      width: 100%; 
      font-size: 0;
    }
  }
  .flex { width: 540px; } //360	
  .flex__item { 
    float: left;
    width: 160px; 
    margin-right: 20px;
  }
  h2 {
    .reset;
    margin: 0 0 15px 2px;
    padding-bottom: 5px;
    font-size: 18px;
    line-height: 18px;
    .f_brandon_bold;
    color: #636463;
    border-bottom: 1px solid #ddd;
  }
  ul { .ul_reset; }
  li {
    margin-left: 3px;
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 20px;
    .f_brandon_light;
    text-transform: none;
    color: #636463;
  }
  a:hover li { color: @orange !important; }
}
.submenu__baners { 
  float: right;
  width: 220px;
}
.submenu__baner { margin-top: 20px; }

.promobar__warper {
  font-size: 14px;

  .icon_close { 
    display: none;
    margin-top: 8px; 
    cursor: pointer;
  }

  &.visible {
    .promobar__link { display: none; }
    .icon_close { display: block; }
  }
}
.promobar__link {
  margin-left: 15px;
  text-transform: none;
  color: @orange;
  cursor: pointer;
}
.promobar__content {
  display: none;
  width: 100%;
  height: 150px;
  background-color: @gray;
}

.destaque__container {
  width: 100%;
  
}
.destaque__main {
  position: relative;

  .destaque-poster {
    position: relative !important;
    display: none;
    width: 100%;
  }
  video { width: 100%; }
  img { width: 100%; }
}
.destaque-content {
  position: absolute;
  z-index: 2;
  bottom: 100px;
  left: 50%;
  width: 500px;
  text-align: center;
  ._transform(-50%, 0, 0);

  h1 {
    .reset;
    .f_bodoni;
    color: #fff;
    font-size: 40px;
    font-style: italic;
    font-weight: normal;
  }
  p {
    .f_bodoni;
    color: #fff;
    font-weight: normal;
    font-style: italic;
    font-size: 24px;
  }
}
.destaque-content--black {
  h1 { color: #000; }
  p { color: #000; }
}
@media only screen and (max-width: @desktop){
  .destaque__main {
    .destaque-poster {
      display: block;
    }
    video {
      display: none;
    }
  }
}
@media only screen and (max-width: @ipadPortrait){
  .destaque-content { bottom: 50px; }
}
@media only screen and (max-width: @mobile){
  .destaque__main { 
    background-color: #fff; 
    margin-bottom: 20px;
  }
  .destaque-content {
    position: relative;
    left: 0;
    bottom: auto;
    width: 100%;
    margin-top: 10px;
    ._transform(0, 0, 0);

    p { 
      font-size: 20px; 
      margin-top: 10px;
    }
    h1 {
      line-height: 40px;
    }
  }
  .bt { margin-bottom: 10px !important; }
}

.destaque {
  position: relative;
  margin-top: 5px;
  float: left;
}
.destaque:before {
  content: '';
  position: absolute;
  opacity: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0, 0.2);
  .transition(0.3s);
}
.destaque:hover:before {
  display: none;
  opacity: 1;
}
.destaque__duplo .destaque {
  position: relative;
  width: ~"calc(50% - 2.5px)";
  margin-right: 5px;
  
  h1 { 
    line-height: 55px;
    font-size: 50px;
    font-style: normal;
    &.v2 {
      .f_proxima_reg;
      font-size: 40px;
      text-transform: uppercase;
      span {
        .f_bodoni;
        font-size: 40px;
        font-style: italic;
        text-transform: none;
      }
    }
  }
  p { 
    .reset;
    margin-bottom: 20px;
    .f_proxima_reg;
    font-size: 20px;
    font-style: normal;
  }
  .destaque-content {
    width: 90%;
    bottom: 25%;
  }
  img { width: 100%; }
}
.destaque__multiple .destaque:last-child,
.destaque__duplo .destaque:last-child { margin-right: 0; }

.destaque__2x2 {
  &:before { display: none; }
  .destaque { 
    float: left;
    margin-top: 0;
    margin-bottom: 5px;
  }
  .destaque:nth-child(2),
  .destaque:nth-child(4) { margin-right: 0; }

  .destaque:nth-child(3),
  .destaque:nth-child(4) { margin-bottom: 0; }
}

.destaque__multiple .destaque {
  position: relative;
  width: ~"calc(25% - 3.75px)";
  margin-right: 5px;
}

.destaque__2x2 .destaque,
.destaque__multiple .destaque {
  h1 {
    .f_bodoni;
    font-size: 30px;
    line-height: 40px;
    span {
      .f_proxima_reg;
      font-style: normal;
    }
  }
  .destaque-content {
    width: 90%;
    top: 50%;
    bottom: auto;
    ._transform(-50%, -50%, 0);
  }
  img { width: 100%; }
}
@media only screen and (max-width: @mobile){
  .destaque:before { display: none; }
  .destaque__multiple .destaque,
  .destaque__duplo .destaque {
    width: 100%;
    margin-right: 0px;
    .destaque-content { width: 100%; }
  }
  .destaque__multiple .destaque {
    .destaque-content {
      position: absolute;
      left: 50%;
      h1, h2, h3 { color: #fff !important; }
    }
  }
}

.main__footer {
  padding-bottom: 40px;
  margin-top: 40px;
  padding-top: 40px;
  .f_brandon_light;
  font-size: 14px;
  line-height: 16px;
  color: #fff;
  background-color: #898c8d;

  .grid_3 p { 
    .reset;
    font-size: 14px;
  }
  h2 {
    .reset;
    margin-bottom: 10px;
    .f_brandon_bold;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #fff;
  }
  a {
    font-size: 14px;
    text-decoration: none;
    color: #fff;
  }
  a:hover { color: @orange; }
  ul { .ul_reset; }
  li { margin-bottom: 5px; }
  .nav__sep {
    padding-left: 30px;
    .boxsizing;
  }
}
@media only screen and (max-width: @mobile){ 
  .main__footer {
    .grid_4,
    .grid_3,
    .grid_2 {
      width: @grid_12;
      padding-left: 0;
      margin-bottom: 20px;
    }
  }
}

.c-form,
.form__bottom {
  position: relative;
  width: 100%;
  margin-top: 10px;

  select,
  textarea,
  input[type="text"]{
    .reset;
    width: 100%;
    padding: 0 5px;
    padding-right: 50px;
    height: 25px;
    font-size: 14px;
    .f_brandon_light;
    border: solid 1px @gray;
    .boxsizing;
    outline: 0;
  }
  div.error,
  input[type="submit"]{
    position: absolute;
    right: 0px;
    width: 45px;
    height: 25px;
    padding: 0 5px;
    .f_brandon_light;
    font-size: 14px;
    color: #fff;
    background-color: #000;
    text-transform: uppercase;
    border: 0;
  }
  input[type="submit"]:hover { background-color: @orange; }
}

.c-form {
  margin-top: 30px;
  font-size: 14px;
  .f_brandon_light;

  label {
    display: inline-block;
    width: 150px;
    font-size: 14px;
    .f_brandon_light;
  }
  .legal {
    display: inline-block;
    width: 380px;
    font-size: 14px;
  }
  select,
  textarea,
  input[type="text"]{
    display: inline-block;
    width: 380px;
    padding: 0 5px;
  }
  textarea { height: 90px; }
  .row {
    position: relative;
    margin-bottom: 10px;
  }
  .row_sub {
    padding-left: 20px;
    .boxsizing;
  }
  input[type="submit"]{
    position: relative;
    width: auto;
    padding: 0 10px;
  }
  div.error {
    top: 0px;
    width: auto;
    padding: 0 10px;
    line-height: 25px;
    background-color: @orange;
  }
}

.form__mapa {
  margin-bottom: 10px;
  input[type="submit"]{ width: auto; }
}
@media only screen and (max-width: @mobile){
  .form__mapa {
    width: @grid_12 !important;
  }
}

.bread__crumb {
  position: relative;
  height: 20px;
  .f_brandon_light;
  font-size: 14px;

  a { 
    color: #000;
    text-decoration: none; 
  }
  a:hover { color: @orange; }
  span {
    padding: 0 3px;
  }
}

.local__info {
  margin-top: 20px;
  h2,
  h1 {
    .reset;
    .f_brandon_bold;
    font-size: 19px;
    text-transform: uppercase;
  }
  h1 { 
    padding-top: 20px;
    margin-bottom: 20px; 
    border-top: solid 1px #000;
  }
}
.lojas__list {}
.lojas__list-item {
  margin-bottom: 15px;
  cursor: pointer;

  h2 {
    font-size: 16px;
  }
  p {
    .reset;
    font-size: 14px;
    .f_brandon_light;
  }
}

.catalogo__categorias, 
.catalogo__categorias ul{
  .ul_reset;
}
.catalogo__categorias {
  margin-top: 25px;
  font-size: 14px;
  .f_brandon_reg;
  font-weight: bold;
  text-transform: uppercase;
  color: @gray2;

  .visible { color: @orange; }
  .state {
    position: absolute;
    right: 3px;
    top: 8px;
  }
  a { 
    color: @gray2;
    text-decoration: none; 
  }
  a:hover { color: @orange; }
  li:first-child { border-top: solid 1px @gray; }
  li {
    position: relative;
    padding-top: 8px;
    padding-bottom: 5px;
    cursor: pointer;
    border-bottom: solid 1px @gray;
  }
  li.selected { .f_brandon_bold; }
  ul { 
    display: none; 
    margin-top: 5px;
    margin-bottom: 10px;
  }
  ul li:first-child { border: 0; }
  ul li {
    .reset;
    margin-bottom: 3px;
    font-weight: normal;
    text-transform: none;
    border: 0;
  }
}
.catalogo__header {
  margin-top: 5px;
}
.catalogo__header-banner { width: 100%; }
.catalogo__list_controls {
  margin-top: 20px;
  padding-bottom: 5px;
  border-bottom: solid 1px @gray;

  select {
    height: 25px;
    padding: 0 5px;
    .f_brandon_reg;
    font-size: 14px;
    color: #000;
    border: solid 1px @gray;
  }
}
.catalogo__header--footer { 
  margin-top: -1px;
  border-top: solid 1px @gray; 
  .catalogo__list_pager,
  .catalogo__list_controls { margin-top: 5px; }
}
.catalogo__list_pager {
  .f_brandon_reg;
  font-size: 13px;
  a {
    padding: 0 5px;
    color: @gray2;
    text-decoration: none;
    cursor: pointer;
  }
  a:hover,
  a.selected {
    background-color: @orange;
    color: #fff;
  }
}

.catalogo__list {
  margin-top: 20px;

  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;

  -webkit-flex-wrap: wrap;
  -moz-box-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.catalogo__list--list,
.catalogo__list--wishlist {
  max-width: 1024px;
  margin-bottom: 40px;
  .m_center;
  img { display:block !important; }
  .catalogo__item-image_container { height: auto; }
}
.catalogo__list--wishlist {
  max-width: 100%;
}
.catalogo__item {
  display: none;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 0.83%;
  padding-bottom: 20px;
  border-bottom: solid 1px @gray;
  &.inited { display: block; }

  h1 {
    clear: both;
    .reset;
    font-size: 16px;
    .f_brandon_reg;
    color: @gray2;
  }
}
.catalogo__item--relacionado { 
  display: block; 
  border-bottom: 0;
}
.catalogo__item-image_container {
  position: relative;
  height: auto;
  padding-bottom: 94%;
  font-size: 0;

  img {
    position: absolute;
    width: 100%;
    max-height: 100%;
  }
}
.catalogo__item-image {
  display: none;
  width: 100%;
  &.selected,
  &.hover { display: block; }
}
.catalogo__item-colors {
  margin-bottom: 10px;
  div {
    position: relative;
    float: left;
    width: 24px;
    height: 24px;
    margin-right: 5px;
    margin-bottom: 5px;
    font-size: 0px;
    background-color: #000;
    cursor: pointer;
    border: solid 1px #000;
    .boxsizing;
    img { 
      width: 100%;
      height: 100%;
    }
  }
  .selected { border: 0; }
  .selected:after { 
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    border: solid 2px @orange; 
    .boxsizing;
  }
}
.catalogo__item-preco {
  margin-right: 5px;
  font-size: 16px;
  .f_brandon_light;
  color: @gray2;

  &.old { text-decoration: line-through; }
  &.promo {
    color: @orange;
  }
}
@media only screen and (max-width: @mobile){ 
  .catalogo__item { width: @grid_6 !important; }
  .catalogo__left,
  .catalogo__right { width: @grid_12 !important; }
  .catalogo__left { margin-bottom: 20px; }
  .catalogo__item-image_container { height: auto; }
  .catalogo__categorias { margin-top: 10px; }
  .catalogo__categorias ul li { font-size: 17px; }
  .catalogo__left { display: none; }
  .catalogo__item-colors {
    div {
      width: 30px;
      height: 30px;
    }
  }
}

.catalogo__filter_box {
  width: 100%;
  padding: 5px;
  margin-top: 10px;
  .f_brandon_reg;
  color: @gray2;
  font-size: 14px;
  line-height: 14px;
  background-color: #f2f3f4;
  .boxsizing;

  h1 {
    .reset;
    width: 100%;
    padding: 3px;
    .f_brandon_reg;
    font-weight: normal;
    font-size: 13px;
    color: #fff;
    background-color: @orange;
    .boxsizing;
  }
  h2 {
    .reset;
    margin-top: 10px;
    margin-bottom: 10px;
    color: @gray2;
    .f_brandon_reg;
    font-weight: bold;
    font-size: 14px;
  }
}
.catalogo__filter_box--content {
  padding: 0 10px;
  div {
    margin-bottom: 10px;
    font-size: 16px;
    cursor: pointer;
  }
  div:hover,
  div.selected { color: @orange; }
}

.l-bt_wishlist {
  font-size: 30px;
  color: @orange;
  cursor: pointer;
}
@media only screen and (max-width: @mobile){ 
  .l-bt_wishlist {
    text-align: center;
  }
}

.c-slider_comp {
  position: relative;
  z-index: 1;
  
  .arrow {
    position: absolute;
    top: 50%;
    z-index: 200;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    text-align: center;
    line-height: 40px;
    vertical-align: middle;
    color: #676766;
    font-size: 22px;
    cursor: pointer;
  }
  .arrow.left { left: -40px; }
  .arrow.right { right: -40px; }
  .slider { 
    width: 100%; 
    position: relative;
    min-width: 100%; // This can be whatever you want
    min-height: 100%; // This can be whatever you want
    &.anim { .transition(0.5s); } // This need to be here for slide css based animation
  }
  .catalogo__item {
    position: absolute;
  }
  .cover {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
}

.bt {
  position: relative;
  .reset;
  height: 40px;
  background-color: transparent;
  border: solid 2px #fff;
  color: #fff;
  padding: 0 20px;
  padding-right: 10px;
  text-align: center;
  .f_proxima_reg;
  font-size: 14px;
  text-transform: uppercase;
  .no-highlight;
  .transition(0.3s);
}
.bt--white {
  color: #fff;
}
.bt--white:after {
  content: '';
  position: absolute;
  top: 5px;
  right: 5px;
  .sprite;
  .icon_arrow_right-white;
}
.bt--white:hover {
  color: #000;
  background-color: #fff;
}
.bt--white:hover:after {
  .icon_arrow_right-black;
}
.bt--black {
  color: #000;
  border-color: #000;
}
.bt--black:after {
  content: '';
  position: absolute;
  top: 5px;
  right: 5px;
  .sprite;
  .icon_arrow_right-black;
}
.bt--black:hover {
  color: #fff;
  background-color: #000;
}
.bt--black:hover:after {
  .icon_arrow_right-white;
}
.bt--orange {
  padding-right: 20px;
  color: @orange;
  border-color: @orange;
}
.bt--orange:hover {
  color: #fff;
  background-color: @orange;
}

.produto__ficha {}
.produto__ficha-left {
  position: relative;
}
.produto__ficha-right {}
.produto__ficha-preco {
  margin-bottom: 20px;

  h1, h2, h3 { 
    .reset; 
    color: @gray2;
  }

  h1 {
    .f_brandon_reg;
    font-weight: normal;
    font-size: 28px;
    border-bottom: solid 1px #cccccc;
  }
  h2 {
    float: left;
    margin-right: 10px;
    margin-top: 10px;
    .f_brandon_reg;
    font-weight: normal;
    font-size: 20px;
    &.promo { color: @orange; }
  }
  h3 {
    float: left;
    margin-right: 10px;
    margin-top: 10px;
    display: none;
    .f_brandon_reg;
    font-weight: normal;
    font-size: 20px;
    text-decoration: line-through;
  }
}
.produto__ficha-small_desc {
  .f_brandon_light;
  font-size: 16px;
  color: @gray2;
  b { .f_brandon_bold; }
}
.produto__ficha-cores {
  margin-top: 20px;
  margin-bottom: 20px;
  div {
    position: relative;
    float: left;
    width: 24px;
    height: 24px;
    margin-right: 5px;
    margin-bottom: 5px;
    font-size: 0;
    background-color: #000;
    cursor: pointer;
    border: solid 1px #000;
    .boxsizing;
    img {
      width: 100%;
      height: 100%;
    }
  }
  .selected { border: 0; }
  .selected:after { 
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    border: solid 2px @orange; 
    .boxsizing;
  }
}
.produto__ficha-social {
  width: 100%;
  margin-top: 10px;
  padding: 10px 0;
  border:solid 1px #000;
  border-left: 0;
  border-right: 0;

  .sprite { 
    float: right; 
    margin-left: 5px;
    cursor: pointer;
  }
}
.produto__ficha-info_box {
  width: 100%;
  padding: 20px;
  margin-top: 20px;
  .f_brandon_light;
  font-size: 15px;
  color: @gray2;
  border: solid 1px @gray;
  .boxsizing;

  p {
    .reset;
    margin-bottom: 15px;
  }
  p:last-child { margin-bottom: 0; }
  h1, h2, h3 { 
    .reset; 
    margin-bottom: 5px;
    .f_brandon_bold;
    font-weight: normal;
    color: @orange;
    text-transform: uppercase;
  }

  h1 { font-size: 21px; }
  h2 { font-size: 18px; }
  h3 { font-size: 15px; }
}

.produto__ficha-video {
  display: none;
  position: absolute;
  z-index: 2;
  top: 20px;
  right: 20px;
  cursor: pointer;
}
.produto__ficha-video_html { display: none; }
.produto__ficha-video_player {
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0, 0.8);

  iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90%;
    height: 100%;
    max-height: 450px;
    max-width: 800px;
    ._transform(-50%, -50%, 0);
  }
}
@media only screen and (max-width: @mobile){
  .produto__ficha-info_box,
  .produto__ficha-left,
  .produto__ficha-right { width: @grid_12 !important; }
  .produto__ficha-social { display: none; }
  .produto__ficha-preco,
  .produto__ficha-small_desc { text-align: center; }
  .produto__ficha-cores {
    position: relative;
    left: 50%;
    margin-left: 2.5px;
    float: left;
    ._transform(-50%, 0, 0);
  }
  .produto__ficha-preco {
    h2, h3 {
      float: none;
    }
  }
}

.produto__galeria {
  z-index: 1;
  display: none;
  width: 100%;
  &.selected { display: block; }
  .icon_lupa_big {
    position: absolute;
    z-index: 110;
    top: 20px;
    right: 60px;
    cursor: pointer;
  }
}
.produto__galeria-canvas {
  width: 100%;
  height: 460px;
  font-size: 0;
  line-height: 460px;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;

  img { 
    max-width: 100%;
    max-height: 100%;
  }
}
.produto__galeria-thumbs {
  width: 100%;
  height: 100px;
}
.produto__galeria-thumb {
  width: 16.66%;
  height: 100px;
  float: left;
  text-align: center;
  font-size: 0;
  line-height: 100px;
  vertical-align: middle;
  cursor: pointer;

  img { 
    max-width: 100%;
    max-height: 100%;
  }
}
.produto__galeria-canvas--v2 {
  width: 83.3%;
  float: left;
}
.produto__galeria-thumbs--v2 {
  width: 16.61%;
  height: auto;
  float: left;
  .produto__galeria-thumb { 
    width: 100%; 
    float: none;
  }
}
@media only screen and (max-width: @mobile){
  .produto__galeria {
    height: 218px;
  }
  .produto__galeria-canvas { display: none; }
  .produto__galeria-thumbs {
    position: relative;
    height: 218px;
  }
  .produto__galeria-thumb {
    position: absolute;
    width: 100%;
    height: 100%;
  }
}

.produto__tech-list {
  position: relative;
  width: 100%;
}
.produto__tech-item {
  width: 100%;
  margin-bottom: 20px;
}
.produto__tech-image {
  float: left;
  width: 45px;
  margin-right: 15px;
}
.produto__tech-desc {
  float: left;
  width: ~"calc(100% - 60px)";
}
.produto__tech-item--destaque {
  .produto__tech-desc,
  .produto__tech-image {
    width: 100%;
    float: none;
  }
  .produto__tech-image {
    margin-bottom: 5px;
  }
}

.no_data_msg {
  padding: 20px 0;
  font-size: 18px;
  .f_brandon_bold;
}

.social__wall {}
.social__wall-list {
  width: 100%;

  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;

  -webkit-flex-wrap: wrap;
  -moz-box-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.social__wall-item {
  position: relative;
  width: 100%;
  padding-bottom: 45px;
  margin-bottom: 1.63%;
  font-size: 16px;
  .f_brandon_reg;
  background-color: #f2f3f3;

  a {
    font-size: 20px;
    text-decoration: none;
    color: @orange
  }
  p {
    .reset;
    padding: 0px 20px;
    color: @gray2;
  }
  .icon_face_big,
  .icon_insta_big {
    .m_center;
    margin-top: 20px;
    margin-bottom: 10px;
  }
  .more_link {
    position: absolute;
    bottom: 10px;
    width: 100%;
    text-align: center;
  }
}
.social__wall-item_thumb {
  width: 100%;
  height: 227px;
  line-height: 227px;
  vertical-align: middle;
  text-align: center;

  img { 
    max-width: 100%; 
    max-height: 100%;
  }
}
.social__wall-title {
  h1, h2 {
    .reset;
    margin-bottom: 20px;
    float: left;
    font-weight: normal;
    .f_bodoni;
    font-size: 72px;
  }
  h2 {
    margin-top: 50px;
    float: right;
    font-style: italic;
    font-size: 21px;
    color: @orange;
    span { color: #000; }
  }
}
.social__wall-title_home {
  position: relative;
  margin-top: 50px;
  h1{
    .reset;
    text-align: center;
    .f_bodoni;
    font-weight: normal;
    font-size: 40px;
    line-height: 23px;
    border: solid 1px #fff;

    span {
      font-size: 18px;
      color: @orange;
      font-style: italic;
    }
  }
  .content {
    position: relative;
    z-index: 2;
    width: 330px;
    .m_center;
    background-color: #fff;
  }
}
.social__wall-title_home:after {
  content: '';
  position: absolute;
  top: 10px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #000;
}
@media only screen and (max-width: @ipadPortrait){ 
  .social__wall-item_thumb {
    height: 161px;
    line-height: 161px;
  }
}
@media only screen and (max-width: @mobile){ 
  .social__wall-title_home .content { width: 100%; }
  .social__wall-list {
    .grid_2 { 
      width: @grid_12 !important; 
      margin-bottom: 20px;
    }
  }
  .social__wall-title {
    line-height: 72px;
    h2 {
      float: none;
      margin-top: 0;
      line-height: 21px;
    }
  }
  .social__wall-item_thumb {
    height: auto;
    line-height: auto;
  }
}

.page__title {
  .reset;
  margin-bottom: 20px;
  font-size: 22px;
  .f_brandon_bold;
}

.faq__list {
  width: @grid_10;
}
.faq__item {
  position: relative;
  width: 100%;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: solid 1px #000;
  cursor: pointer;

  .sprite {
    position: absolute;
    right: 0px;
  }
}
.faq__item-title {
  font-size: 19px;
  .f_brandon_bold;
  color: #000;
  span { color: @gray2; }
}
.faq__item-text {
  display: none;
}
@media only screen and (max-width: @mobile){
  .faq__list { width: @grid_12; }
}

.historia__container {
  position: relative;
  margin-top: 40px;
}
.historia__container-line {
  content: '';
  position: absolute;
  z-index: 1;
  top: 10px;
  left: 50%;
  width: 3px;
  height: 100%;
  margin-left: -4px;
  background-color: #000;
}
.historia__item {
  position: relative;
  width: 100%;
  margin-bottom: 20px;

  h1, h2 {
    position: relative;
    .reset;
    font-size: 50px;
    font-weight: normal;
    .f_proxima_reg;
    text-align: right;
    color: @gray2;
  }
  p {
    .reset;
    margin-bottom: 15px;
    .f_bodoni;
    font-style: italic;
    font-size: 20px;
    color: @gray2;
  }
  h2 {
    margin-bottom: 15px;
    .f_brandon_bold;
    font-size: 15px;
    text-align: left;
    color: @orange;
  }
  h1:after {
    position: absolute;
    z-index: 2;
    content: '';
    top: 10px;
    right: -68px;
    width: 30px;
    height: 30px;
    background-color: @orange;
    border: solid 5px #fff;
    .rounded(100%);
  }
}
.historia__item:nth-child(even) {
  background-color: #f2f3f4;
}
.historia__item-column {
  width: 50%;
  padding: 0 25px;
  .boxsizing;

  &.left { 
    float: left; 
    padding-right: 50px;
  }
  &.right { 
    float: right; 
    padding-top: 10px;
    padding-left: 50px;
  }
}
.historia__item-image {
  width: 100%;
  margin-bottom: 20px;
}
.historia__item-media {
  position: relative;
  cursor: pointer;

  .sprite {
    position: absolute;
    top: 50%;
    left: 50%;
    ._transform(-50%, -50%, 0);
  }
}
@media only screen and (max-width: @mobile){
  .historia__container-line { display: none; }
  .historia__item-column {
    width: 100%;
    h1 { 
      padding-left: 20px;
      text-align: left; 
    }
    h1:after {
      margin-top: 3px;
      right: auto;
      left: -25px;
    }
    &.left,
    &.right {
      padding:0 25px;
    }
  }
}

.store__map {
  width: 100%;
  height: 400px;
}

.modal {
  position: fixed;
  z-index: 20000;
  top: 0px;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  .transition(0.4s);
  ._scale(0.8, 0.8);
}
.modal--visible { 
  opacity: 1;
  visibility: visible;
  ._scale(1, 1);
}

.zoom__component {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: rgba(0,0,0, 0.8);

  .zoom__image{
    position: relative;
    z-index: 10;
  } 
  .catalogo__sw-item__content { z-index: 20; }
}
.zoom__component-close {
  position: absolute;
  z-index: 20;
  right: 20px;
  top: 20px;
  cursor: pointer;
  width: 40px;
  height: 40px;

  .icon_close {
    margin-top: 8px;
    margin-left: 8px;
  }
}
.zoom__image {
  position: relative;
  height: 100%;
  text-align: center;

  img { display: none; }
  .centered {
    position: relative;
    top: 50%;
    max-width: 100%;
    max-height: 100%;
    ._transform(0, -50%, 0);
  }
}
@media only screen and (max-width: @ipadPortrait){
  .zoom__image {
    img { max-width: 1500px; }
  }
}

@import "_home_banners.less";


.c-layer {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 3000;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.7);
}
.c-layer__content {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 96%;
  max-width: 800px;
  padding: 0px;
  background-color: #fff;
  .boxsizing;
  ._transform(-50%, -50%, 0);

  img { 
    width: 100%; 
    height: auto;
  }
  .close {
    position: absolute;
    right: -50px;
    top: 0px;
    cursor: pointer;
  }
}
@media only screen and (max-width: @mobile){
  .c-layer__content {
    .close {
      right: 0px;
      top: -50px;
    }
  }
}



@import "_editor.less";


.l-page_title_big.l-page_title_big {
  margin-top: 120px;
  margin-bottom: 30px;
  font-size: 35px;
  .f_brandon_reg;
}
.l-page_title_small.l-page_title_small {
  font-size: 16px;
  text-decoration: underline;
  .f_brandon_bold;
}
.l-tech_sub_menu.l-tech_sub_menu{
  font-size: 16px;
  .f_brandon_bold;

  span {
    display: inline-block;
    margin: 0 10px;
    cursor: pointer;
    text-decoration: underline;
  }
  span.selected { color: @orange; }
}
.l-tech_image {
  display: none;
  img { 
    max-width: 100%; 
    height: auto !important;
  }
  .grid_8 { margin-bottom: 40px; }
  .grid_7 {
    border-right: solid 2px #3b3b39;
    .boxsizing;
  }
  .tech_prop_title {
    margin-bottom: 10px;
    font-size: 16px;
    .f_brandon_bold;
    text-decoration: underline;
  }
  .tech_prop_text {
    margin: 0;
    .f_brandon_reg;
    font-size: 16px;
    margin-bottom: 25px;
    text-transform: lowercase;
  }
  .tech_prop_text::first-letter { text-transform: uppercase; }
  .m_center {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  
  &.visible { display: block; }
}
.tech_comp {
  .bottom_bts {
    margin-top: 60px;
    text-align: center;

    .bt { 
      padding: 10px 20px; 
      margin: 5px;
      text-decoration: none;
      cursor: pointer;
    }
    .bt--gray {
      color: #fff;
      border: solid 1px #3b3b39;
      background-color: #3b3b39;
      .f_brandon_bold;
      .boxsizing;
    }
    .bt--gray:hover {
      color: #3b3b39;
      background-color: #fff;
    }
  }
}
@media only screen and (max-width: @mobile){
  .l-tech_sub_menu { 
    width: 100%; 
    span {
      display: block;
      margin-bottom: 5px;
    }
  }
  .l-tech_image {
    .grid_2 { display: none; }
    .grid_8,
    .grid_7,
    .grid_4 { 
      .container_12.grid_12; 
      border: 0;
    }
  }
  .tech_comp {
    .grid_8,
    .grid_7,
    .grid_4 { 
      .container_12.grid_12; 
      border: 0;
    }
    .bottom_bts {
      .bt {
        display: block;
      }
    }
  }
}


.l-barra_promos {
  left: 0px;
  top: 110px;
  position: fixed;
  z-index: 100;
  width: 100%;
  height: 38px;
  line-height: 38px;
  vertical-align: middle;
  .f_apercu_bold;
  font-size: 18px;
  color: #fff;
  background-color: #ef3844;
  text-align: center;
  box-shadow: 0px 5px 5px rgba(0,0,0, 0.15);
}
@media only screen and (max-width: @ipadPortrait){
  .l-barra_promos {
    top: 70px;
    font-size: 10px;
  }
}


/* helpers */
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}
.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}
.invisible {
    visibility: hidden;
}

.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}