/* Responsive Css */

/* Large Desktop */
@media only screen and (max-width: 1749px){
  .large-container {
    padding: 0px 20px;
  }
}

/* Desktop */
@media only screen and (max-width: 1499px){
  .auto-container {
    max-width: 1300px;
  }

  .large-container {
    max-width: 1500px;
  }
}

/* Laptop */
@media only screen and (max-width: 1399px){
  .auto-container {
    max-width: 1200px;
    padding: 0px 20px;
  }
}

/* Tablet Landscape */
@media only screen and (max-width: 1299px){
  .auto-container {
    max-width: 1100px;
  }
}

/* Tablet Portrait */
@media only screen and (max-width: 1200px){
  .main-menu,
  .sticky-header,
  .main-header.style-one .outer-container:before{
    display: none !important;
  }

  .menu-area .mobile-nav-toggler {
    display: block;
    padding: 10px;
  }

  .megamenu ul li:first-child{
    display: none;
  }

  .auto-container {
    max-width: 100%;
    padding: 0px 15px;
  }

  .sec-title h2 {
    font-size: 32px;
    line-height: 42px;
  }

  .theme-btn {
    padding: 12px 24px;
    font-size: 14px;
  }

  /* Banner responsive */
  .banner-section .content-box h2 {
    font-size: 36px;
    line-height: 46px;
  }

  .banner-section .content-box p {
    font-size: 16px;
    line-height: 24px;
  }

  /* Category section */
  .category-carousel .owl-nav {
    display: block;
  }

  /* Shop section */
  .shop-section .sec-title {
    text-align: center;
  }
}

@media only screen and (min-width: 768px){
  .main-menu .navigation > li > ul,
  .main-menu .navigation > li > ul > li > ul,
  .main-menu .navigation > li > .megamenu{
    display:block !important;
    visibility:hidden;
    opacity:0;
  }
}

/* Small Tablet */
@media only screen and (max-width: 991px){
  .auto-container {
    padding: 0px 20px;
  }

  .sec-title h2 {
    font-size: 28px;
    line-height: 38px;
  }

  .sec-title p {
    font-size: 16px;
    line-height: 24px;
  }

  /* Header adjustments */
  .header-top .top-inner {
    display: block;
    text-align: center;
  }

  .header-top .info-list,
  .header-top .right-column {
    justify-content: center;
    margin-bottom: 10px;
  }

  /* Banner adjustments */
  .banner-section .content-box h2 {
    font-size: 32px;
    line-height: 42px;
  }

  .banner-section .content-box p {
    font-size: 15px;
    line-height: 22px;
  }

  /* Forms */
  .form-group input,
  .form-group select,
  .form-group textarea {
    font-size: 16px; /* Prevent zoom on iOS */
    padding: 12px 15px;
  }

  /* Buttons */
  .theme-btn {
    padding: 14px 28px;
    font-size: 15px;
  }

  /* Product cards */
  .shop-block-one .inner-box {
    padding: 15px;
  }

  .shop-block-one .inner-box h4 {
    font-size: 16px;
    line-height: 22px;
  }

  /* Footer */
  .footer-widget {
    margin-bottom: 30px;
  }
}

/* Mobile Landscape */
@media only screen and (max-width: 767px){
  .auto-container {
    padding: 0px 15px;
  }

  .boxed_wrapper {
    overflow-x: hidden;
  }

  /* Typography */
  .sec-title h2 {
    font-size: 24px;
    line-height: 32px;
  }

  .sec-title p {
    font-size: 15px;
    line-height: 22px;
  }

  h1 {
    font-size: 28px;
    line-height: 36px;
  }

  h2 {
    font-size: 22px;
    line-height: 30px;
  }

  h3 {
    font-size: 20px;
    line-height: 28px;
  }

  /* Header mobile */
  .header-upper .upper-inner {
    display: block;
  }

  .header-upper .logo-box {
    text-align: center;
    margin-bottom: 15px;
  }

  .header-upper .search-area {
    margin-bottom: 15px;
  }

  /* Banner mobile */
  .banner-section .row {
    flex-direction: column-reverse;
  }

  .banner-section .content-column {
    text-align: center;
    margin-bottom: 30px;
  }

  .banner-section .image-column {
    text-align: center;
  }

  .banner-section .content-box h2 {
    font-size: 28px;
    line-height: 36px;
  }

  .banner-section .content-box p {
    font-size: 14px;
    line-height: 20px;
  }

  /* Categories mobile */
  .category-block-one {
    margin-bottom: 20px;
  }

  .category-block-one .inner-box {
    padding: 20px 15px;
  }

  /* Product grid */
  .shop-block-one {
    width: 50%;
    margin-bottom: 20px;
  }

  .shop-block-one .inner-box {
    padding: 12px;
  }

  /* Forms mobile */
  .row.clearfix {
    margin: 0px -10px;
  }

  .field-column {
    padding: 0px 10px;
    margin-bottom: 20px;
  }

  /* Buttons mobile */
  .btn-box {
    text-align: center;
  }

  .theme-btn {
    display: inline-block;
    width: auto;
    min-width: 200px;
  }

  /* Tables to cards */
  .cart-table {
    display: none;
  }

  .mobile-cart-items {
    display: block;
  }

  /* Footer mobile */
  .footer-widget {
    text-align: center;
  }

  .footer-widget .widget-title {
    margin-bottom: 15px;
  }

  /* Modal adjustments */
  .modal-dialog {
    margin: 10px;
  }

  .modal-content {
    border-radius: 8px;
  }
}

/* Mobile Portrait */
@media only screen and (max-width: 599px){
  .auto-container {
    padding: 0px 10px;
  }

  .pagination li a{
    width: 40px;
    height: 40px;
    line-height: 40px;
  }

  /* Single column layout */
  .shop-block-one {
    width: 100%;
  }

  /* Banner mobile */
  .banner-section .content-box h2 {
    font-size: 24px;
    line-height: 32px;
  }

  .banner-section .btn-box {
    margin-top: 20px;
  }

  /* Categories single row */
  /* width override removed */

  /* Forms single column */
  .col-lg-6,
  .col-md-6,
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  /* Product cards mobile */
  .shop-block-one .inner-box {
    text-align: center;
  }

  .shop-block-one .image-box {
    margin-bottom: 15px;
  }

  /* Cart mobile */
  .cart-section .lower-content .row {
    flex-direction: column;
  }

  .cart-section .coupon-column,
  .cart-section .cart-column {
    margin-bottom: 20px;
  }

  /* Checkout mobile */
  .checkout-section .row.clearfix {
    flex-direction: column;
  }

  .billing-column,
  .order-column {
    margin-bottom: 30px;
  }

  /* Footer mobile */
  .footer-bottom .copyright-text {
    text-align: center;
    margin-bottom: 10px;
  }

  .footer-bottom .footer-nav {
    text-align: center;
  }

  /* Images responsive */
  img {
    max-width: 100%;
    height: auto;
  }

  /* Hide large elements */
  .desktop-only {
    display: none !important;
  }
}

/* Small Mobile */
@media only screen and (max-width: 499px){
  .mobile-menu{
    width: 100%;
  }

  .auto-container {
    padding: 0px 8px;
  }

  /* Typography small screens */
  .sec-title h2 {
    font-size: 20px;
    line-height: 28px;
  }

  h1 {
    font-size: 24px;
    line-height: 32px;
  }

  /* Header small mobile */
  .header-top .info-list li {
    display: block;
    margin-bottom: 8px;
    padding-left: 0;
    margin-right: 0;
  }

  .header-top .info-list li i {
    display: none;
  }

  /* Search full width */
  .header-upper .search-area {
    width: 100%;
  }

  .header-upper .search-area .form-group {
    width: 100%;
  }

  /* Buttons small */
  .theme-btn {
    padding: 12px 20px;
    font-size: 14px;
    min-width: 180px;
  }

  /* Spacing adjustments */
  .sec-title {
    margin-bottom: 20px;
  }

  .pb_80 {
    padding-bottom: 40px !important;
  }

  .pt_80 {
    padding-top: 40px !important;
  }

  /* Modal small screens */
  .modal-dialog {
    margin: 5px;
  }

  /* Hide unnecessary elements */
  .mobile-hide {
    display: none !important;
  }
}

/* Extra Small Mobile */
@media only screen and (max-width: 374px){
  .auto-container {
    padding: 0px 5px;
  }

  .theme-btn {
    padding: 10px 16px;
    font-size: 13px;
    min-width: 160px;
  }

  .form-group input,
  .form-group select,
  .form-group textarea {
    padding: 10px 12px;
    font-size: 15px;
  }
}
