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

  /*
  ---------------------------------------
  TYPOGRAPHY
  ---------------------------------------
  */

  h2, h3, h4 {
    font-size: 25px;
  }

  /*
  ---------------------------------------
  CONTROL BAR
  ---------------------------------------
  */

  .control-bar {
    position: absolute !important;
    bottom: 10px !important;
    right: 10px !important;
    left: 10px !important;
    top: auto !important;
  }

  .control-bar a.btn {
    width: 100%;
    display: block !important;
    float: none !important;
    margin: 0 !important;
    text-align: center;
  }

  /*
  ---------------------------------------
  HEADER
  ---------------------------------------
  */

  header .product-search {
    width: 90px;
  }

  header a.basket-preview span.basket-text {
    display: none;
  }

  header a.header-tel {
    left: 165px;
    top: 16px;
  }

  header a.header-email {
    left: 200px;
    top: 16px;
  }

  header .user-controls {
    top: 60px;
    left: 20px;
    right: auto;
  }

  /*
  ---------------------------------------
  NAV
  ---------------------------------------
  */

  ul#menu {
    padding: 45px 0 0 0;
  }

  ul#menu a,
  ul#menu li.menu-heading {
    width: 340px;
    padding: 0 60px;
  }

  ul#menu a {
    height: 50px;
    line-height: 50px;
    font-size: 21px;
    letter-spacing: 5px;
  }

  /*
  ---------------------------------------
  HERO
  ---------------------------------------
  */

  .hero h1 {
    font-size: 35px;
  }

  .hero h2 {
    font-size: 30px;
  }

  /*
  ---------------------------------------
  DEFAULT HERO
  ---------------------------------------
  */

  .default-hero,
  .default-hero .revolve-bg,
  .default-hero .revolve-bg .revolve-bg-item {
    height: 500px;
  }

  .default-hero h1 {
    font-size: 30px;
    letter-spacing: 5px;
  }

  /*
  ---------------------------------------
  SUB HERO 01
  ---------------------------------------
  */

  .sub-hero-01,
  .sub-hero-01 .revolve-bg,
  .sub-hero-01 .revolve-bg .revolve-bg-item {
    height: 300px;
  }

  /*
  ---------------------------------------
  SUB HERO 03
  ---------------------------------------
  */

  .sub-hero-03 .col-1-2 {
    padding: 50px;
  }

  .sub-hero-03 .control-bar {
    position: static !important;
    padding: 0 10px 10px 10px;
  }

  .sub-hero-03 .control-bar.cb-03 {
    padding: 0;
  }

  /*
  ---------------------------------------
  OFFSET HERO
  ---------------------------------------
  */

  .offset-hero .offset-content {
    padding: 50px;
  }

  /*
  ---------------------------------------
  OFFSET HERO 01
  ---------------------------------------
  */

  .offset-hero-01.inc-control-bar .offset-content {
    padding: 50px 50px 110px 50px;
  }

  /*
  ---------------------------------------
  GRID LIST PL
  ---------------------------------------
  */

  .grid-list-pl,
  .grid-list-pl .col-1-4,
  .grid-list-pl .col-1-2 {
    margin: 0;
  }

  .grid-list-pl .col-1-4,
  .grid-list-pl .col-1-2 {
    width: 100%;
  }

  /*
  ---------------------------------------
  GRID LIST PL 02
  ---------------------------------------
  */

  .grid-list-pl-02 {
    grid-template-columns: repeat(1, 1fr);
  }

  .grid-list-pl-02 .pl-item .label {
    border: none;
  }

  /*
  ---------------------------------------
  STANDARD BLOCK
  ---------------------------------------
  */

  .std-block h2 {
    font-size: 30px;
  }

  /*
  -------------------------------------
  STANDARD BLOCK 02
  -------------------------------------
  */

  .std-block-02 h4 {
    font-family: 'Circular Std Book', Arial, Helvetica, sans-serif;
    font-size: 25px;
    margin-top: 20px;
  }

  /*
  ---------------------------------------
  GRID LIST OL 01
  ---------------------------------------
  */

  .grid-list-ol-01 .ol-item .label {
    padding: 50px 0;
  }

  .grid-list-ol-01 .ol-item .label h2 {
    font-size: 30px;
  }

  /*
  ---------------------------------------
  HEADING BAR
  ---------------------------------------
  */

  .heading-bar h3 {
    font-size: 16px;
  }

  /*
  ---------------------------------------
  PRODUCTS
  ---------------------------------------
  */

  .options-bar .options-filter {
    display: none;
  }

  .options-bar .options-sort h6 {
    font-size: 13px;
    right: auto;
    left: 0;
  }

  .options-bar .options-sort .select2-container .select2-selection--single .select2-selection__rendered {
    padding-left: 10px;
    padding-right: 10px;
    width: 230px;
    font-size: 13px;
  }

  .options-sort span.select2-container {
    width: 180px !important;
  }

  .product-detail .gallery {
    margin-bottom: 30px;
  }

  .product-detail h2.product-name {
    padding-bottom: 20px;
    font-size: 21px;
  }

  .product-detail .long-desc {
    padding: 20px 0 0 0;
  }

  .product-detail .product-data .col-1-3 {
    width: 100%;
    float: none;
  }

  .product-detail .product-data .col-1-3 + .col-1-3 {
    margin-top: 20px;
  }

  .product-detail .product-designer img,
  .product-detail .product-designer-details {
    float: none;
  }

  .product-detail .product-designer img {
    margin: 0 auto 20px auto;
  }

  .product-designer .product-designer-details {
    width: 100%;
    margin-left: 0;
  }

  .product-detail .product-designer h6,
  .product-detail .product-designer-details h4,
  .product-detail .product-designer-details p {
    text-align: center;
  }

  .product-data .grid-wrapper {
    display: block;
  }

  .product-detail .long-desc + .product-data {
    margin-top: 25px;
  }

  .product-detail .long-desc + .product-data p span {
    padding-left: 10px;
  }

  .product-detail .long-desc + .product-data p span:first-child {
    padding-left: 0;
  }

  .product-options .exp-content a.product-option h4 {
    font-size: 13px;
  }

  .product-detail .file-downloads a {
    font-size: 14px;
  }

  /*
  -------------------------------------
  BASKET
  -------------------------------------
  */

  .basket-list .heading-bar {
    display: none;
  }

  .basket-list-item {
    height: fit-content;
    padding-bottom: 70px;
  }

  .basket-list .basket-item-img {
    top: 15px;
    left: 15px;
  }

  .basket-list-item .basket-item-controls i {
    font-size: 17px;
  }

  .basket-list-item .basket-item-data h2 a {
    padding-right: 0;
  }

  .basket-list-item p {
    font-size: 12px;
  }

  .basket-list .basket-item-img {
    width: 100%;
    height: auto;
  }

  .basket-list .basket-item-img,
  .basket-list .basket-item-controls,
  .basket-list-item .basket-item-data {
    position: static;
  }

  /*
  ---------------------------------------
  PRICES
  ---------------------------------------
  */

  .basket-list p.basket-total {
    margin: 25px 50px;
    font-size: 18px;
  }

  .basket-list p.basket-auth-message {
    margin-top: -15px;
    margin-bottom: 20px;
    font-size: 14px;
  }

  /*
  ---------------------------------------
  FOOTER
  ---------------------------------------
  */

  footer h6 {
    font-size: 30px;
    line-height: 120%;
  }

  /*
  ---------------------------------------
  FOOTER 01
  ---------------------------------------
  */

  footer.footer-01 .col-1-3 {
    padding-top: 30px;
  }

  footer.footer-01 .col-1-3:first-of-type {
    padding-top: 0;
  }

  footer.footer-01 .grid-wrapper .col-1-3,
  footer.footer-01 .grid-wrapper .col-1-3:first-of-type {
    margin: 0;
  }

  footer.footer-01 img {
    margin-top: 50px;
  }

  footer h5 {
    font-size: 14px;
  }

  footer p,
  footer a {
    font-size: 13px;
  }

  /*
  -------------------------------------
  SPACING
  -------------------------------------
  */

  .products-list,
  .product-detail,
  .collections-detail .grid-list-pl,
  .collections-detail button.btn-01,
  .basket-list-item,
  .basket-list a.basket-continue,
  .basket-list p.basket-auth-message,
  form.std-form,
  .gallery.content-block,
  .std-block,
  .heading-bar,
  .grid-list-ol,
  footer {
    margin-left: 50px;
    margin-right: 50px;
  }

  .std-block,
  .heading-bar,
  .grid-list-ol,
  footer,
  .contact-form .success {
    margin-left: 50px;
    margin-right: 50px;
  }

  .basket-list-item,
  .collections-detail button.btn-01,
  .basket-list a.basket-continue {
    width: calc(100% - 100px);
  }

  .product-detail + footer,
  .products-list + footer,
  .std-block-01 + footer {
    padding-top: 50px;
  }

  .collections-detail .std-block-02,
  footer,
  .std-block-09 {
    margin-top: 50px;
    margin-bottom: 50px;
  }

  .sub-hero + .offset-hero,
  .std-block-02 + .std-block-07,
  .sub-hero + .std-block-02,
  .std-block-02 + .sub-hero,
  .std-block-02 + .offset-hero,
  .std-block-02 + .gallery.content-block,
  .std-block-02 + .form-01,
  .form-01 + .sub-hero-02{
    margin-top: 50px;
  }

  .heading-bar + .std-block-02,
  .std-block-02 + .std-block-02 {
    margin-top: 30px;
  }

  .product-detail + footer,
  .products-list + footer {
    margin-top: 0;
  }

  /* Login form */
  .form-extra a {
    margin: 0 50px;
  }

}
