@charset "utf-8";

/* ==============================
   Small desktop
   ============================== */
@media only screen and (max-width: 1366px) {
  .container {
    max-width: 1260px;
  }
  .inner-nav ul li {
    margin: 0 16px;
  }
  .hs-title-5 {
    font-size: 10.9809vw !important;
    line-height: 1.3 !important;
  }
  .hs-title-12 {
    font-size: 48px !important;
    line-height: 1.2 !important;
  }
  .hs-paragraph-2 {
    top: 11.713vw !important;
    right: 3.66vw !important;
    line-height: 1.6;
  }
  .section-title-large {
    font-size: calc(0.50887rem + 5.99vw) !important;
    line-height: 1.3 !important;
  }
  .section-descr {
    font-size: calc(1.152rem + 0.33vw) !important;
    line-height: 1.7 !important;
  }
  .section-descr-large {
    font-size: calc(1.23rem + 0.76vw) !important;
    line-height: 1.6 !important;
  }
  .section-descr-extralarge {
    font-size: calc(1.156rem + 1.72vw) !important;
    line-height: 1.5 !important;
  }
  .post-prev-container > *:last-child {
    padding-bottom: calc(0.459rem + 2.39vw);
  }
  .marquee-style-3 {
    font-size: 10.9809vw;
    line-height: 1.4;
  }
  .marquee-style-4 {
    font-size: 5.1244vw;
    line-height: 1.2;
  }
  .accordion-1 > dt {
    font-size: calc(0.632rem + 1.53vw);
  }
  .portfolio-3-title {
    font-size: 36px !important;
    line-height: 1.3 !important;
  }
  .portfolio-3-descr {
    line-height: 1.6;
  }
  
  .form.newsletter-modern input.newsletter-field:hover,
  .form.newsletter-modern input.newsletter-field:hover::placeholder {
    font-size: calc(1.398rem + 1.29vw);
  }
  /* Headings responsive line-heights - consolidated */
  h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    line-height: 1.4;
  }
}
@media only screen and (max-width: 1200px) {
  .hs-paragraph-2 {
    max-width: 300px;
    font-size: 14px;
    line-height: 1.6;
  }
  .inner-nav ul {
    font-size: 16px;
    line-height: 1.4;
  }
  .inner-nav ul li {
    margin: 0 11px;
  }

  /* Note: RTL version is in custom.css to avoid duplication */
  .mod-breadcrumbs-mini:not([dir="rtl"]) {
    text-align: right;
  }

  .works-grid:not(.work-grid-3) .work-item {
    width: 49.9%;
  }
}
@media only screen and (max-width: 1199px) {
  main {
    overflow: hidden;
  }
}

/* ==============================
   Tablet landskape
   ============================== */

@media only screen and (max-width: 1024px) {
  .hs-title-5 {
    font-size: 56px !important;
    line-height: 1.3 !important;
  }

  .hs-title-6 {
    line-height: 1.4 !important;
  }

  .hs-title-12 {
    font-size: 48px !important;
    line-height: 1.2 !important;
  }

  .section-title-large {
    font-size: 48px !important;
    line-height: 1.3 !important;
  }

  .section-title-inline-1 {
    font-size: 22px;
  }

  .section-caption {
    font-size: 20px;
  }

  .section-descr {
    line-height: 1.7 !important;
  }

  .section-descr-large {
    line-height: 1.6 !important;
  }

  .section-descr-extralarge {
    line-height: 1.5 !important;
  }

  .marquee-style-3 {
    font-size: 56px !important;
    line-height: 1.4 !important;
  }

  .marquee-style-4 {
    font-size: 42px !important;
    line-height: 1.2 !important;
  }

  .portfolio-3-title {
    font-size: 36px !important;
    line-height: 1.3 !important;
  }

  .portfolio-3-descr {
    line-height: 1.6;
  }

  .hs-paragraph-2 {
    position: static;
    top: 0;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    text-indent: 0;
    line-height: 1.6;
  }

  /* Headings responsive line-heights - consolidated */
  h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    line-height: 1.4;
  }

  .page-section {
    padding-top: 120px;
    padding-bottom: 120px;
  }

  .owl-pagination {
    bottom: 25px;
  }
  .lp-item:nth-child(4n + 5) {
    clear: none;
  }
  .lp-item:nth-child(2n + 3) {
    clear: left;
  }
}

@media only screen and (max-width: 991px) {
  .owl-prev,
  .owl-next {
    height: 37px;
    font-size: 37px;
  }

  .mod-breadcrumbs:not(.align-center):not(.mod-breadcrumbs-mini) {
    text-align: left !important;
  }
}

/* ==============================
   Tablet Portrait
   ============================== */

@media only screen and (max-width: 768px) {
  .hs-title-5 {
    font-size: 42px !important;
    line-height: 1.3 !important;
  }

  .hs-title-5 .d-block {
    line-height: 1.2 !important;
  }

  .hs-title-6 {
    line-height: 1.4 !important;
  }

  .hs-title-12 {
    font-size: 36px !important;
    line-height: 1.2 !important;
  }

  .section-title-large {
    font-size: 36px !important;
    line-height: 1.3 !important;
  }

  .section-title-inline-1 {
    font-size: 20px;
    line-height: 1.5;
  }

  .section-caption {
    font-size: 18px;
  }

  .section-descr {
    line-height: 1.7 !important;
  }

  .section-descr-large {
    line-height: 1.6 !important;
  }

  .section-descr-extralarge {
    line-height: 1.5 !important;
  }

  .marquee-style-3 {
    font-size: 42px !important;
    line-height: 1.4 !important;
  }

  .marquee-style-4 {
    font-size: 32px !important;
    line-height: 1.2 !important;
  }

  .portfolio-3-title {
    font-size: 28px !important;
    line-height: 1.3 !important;
  }

  .portfolio-3-descr {
    line-height: 1.6;
  }

  /* Headings responsive line-heights - consolidated */
  h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    line-height: 1.4;
  }

  dl dt {
    line-height: 1.4;
  }

  .page-section {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .owl-pagination {
    bottom: 17px;
  }

  .portfolio-3-image {
    border-radius: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .fixed-height-small {
    height: 300px;
    min-height: 300px;
  }
  .fixed-height-medium {
    height: 350px;
    min-height: 350px;
  }
  .fixed-height-large {
    height: 400px;
    min-height: 400px;
  }
  .benefit-item:hover:after {
    display: none;
  }
  .works-filter a.active:after,
  .works-filter a:hover:after {
    transform: scaleX(0);
  }
  
  .works-filter.works-filter-fancy a:hover {
    margin: 2px !important;
    width: 46%;
  }
  .works-filter.works-filter-fancy a.active:after,
  .works-filter.works-filter-fancy a:hover:after {
    transform: none;
  }
  .works-filter.works-filter-fancy a:before,
  .works-filter.works-filter-fancy a:after {
    width: 100%;
    margin-left: 0;
  }
  .works-filter.works-filter-fancy a:before {
    border: 1px solid var(--color-dark-1) !important;
  }
  .works-filter.works-filter-fancy a:before,
  .works-filter.works-filter-fancy a:after {
    border-radius: var(--border-radius-default);
  }
  
  .works-filter.works-filter-slick a:hover {
    width: 46%;
    margin: 2px !important;
    padding-top: 10px;
    padding-bottom: 10px;
    background: #fff;
    border-radius: 100px;
    box-shadow: var(--box-shadow-block);
  }
  
  .works-filter.works-filter-bold a:first-child {
    margin: 4px;
    font-size: 14px;
  }
  .text-mobile {
    font-size: 110%;
    line-height: 1.2;
  }

  .fw-social-inline-item {
    display: block;
  }
}

/* ==============================
   Phone
   ============================== */

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

  .hs-wrap {
    padding: 30px 20px;
  }

  .hs-title-5 {
    font-size: 42px !important;
    line-height: 1.3 !important;
  }

  .hs-title-5 .d-block {
    line-height: 1.2 !important;
  }

  .hs-title-12 {
    line-height: 1.2 !important;
  }

  .section-title-large {
    line-height: 1.3 !important;
  }

  .section-title-inline-1 {
    font-size: 18px;
  }

  .section-caption {
    font-size: 16px;
  }

  .marquee-style-3 {
    line-height: 1.4 !important;
  }

  .marquee-style-4 {
    line-height: 1.2 !important;
  }

  .portfolio-3-title {
    line-height: 1.3 !important;
  }

  /* Headings responsive line-heights - consolidated */
  h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    line-height: 1.4;
  }

  .scroll-down-2,
  .scroll-down-2:hover {
    animation: none;
  }
}

@media only screen and (max-width: 480px) {
  .full-wrapper {
  }
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
  .form textarea {
    min-height: 200px !important;
  }
  .blog-item-body blockquote p:before {
    display: block;
    margin-top: 1em;
    position: static;
    top: 0;
    left: 0;
    font-size: 2.58em;
    line-height: 0;
    opacity: 1;
  }
  .hs-title-5 {
    font-size: 36px !important;
    line-height: 1.3 !important;
  }

  .hs-title-5 .d-block {
    line-height: 1.2 !important;
  }

  .hs-title-12 {
    line-height: 1.2 !important;
  }

  .section-title-large {
    line-height: 1.3 !important;
  }

  .section-title-inline-1 {
    font-size: 16px;
  }

  .section-caption {
    font-size: 15px;
  }

  .section-descr {
    line-height: 1.7 !important;
  }

  .marquee-style-3 {
    line-height: 1.4 !important;
  }

  .marquee-style-4 {
    line-height: 1.2 !important;
  }

  .portfolio-3-title {
    line-height: 1.3 !important;
  }

  /* Headings responsive line-heights - consolidated */
  h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    line-height: 1.4;
  }

  .page-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .owl-pagination {
    bottom: 5px !important;
  }
  .owl-page {
    padding-left: 8px;
    padding-right: 8px;
  }
  .owl-prev {
    left: 0;
  }
  .owl-next {
    right: 0;
  }
  
  .works-filter.works-filter-fancy a:hover {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  
  .works-filter.works-filter-slick a:hover {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .pagination a {
    min-width: 32px;
    margin-right: 3px;
    padding: 6px 8px;
    font-size: 16px;
  }

  .mark-decoration-1:before {
    bottom: -0.27em;
  }
}

/* ==============================
   Max Height 768
   ============================== */

/* ==============================
   Max Height 374
   ============================== */

@media only screen and (max-height: 374px) {
  
  .min-height-100vh {
    min-height: 374px;
  }
}

/* ==============================
   IOS Background Fix
   ============================== */

.mobile .page-section,
.mobile .home-section {
  background-attachment: scroll !important;
}

/*
 * iPad Pro
 */

@media only screen and (min-width: 1024px) and (max-height: 1366px) and (-webkit-min-device-pixel-ratio: 1.5) {
  html:not(.no-touch) .page-section,
  html:not(.no-touch) .home-section,
  html:not(.no-touch) .small-section {
    background-attachment: scroll !important;
  }
}

/* ==============================
   Internet Explorer Fix
   ============================== */

@media all and (-ms-high-contrast: none) {
  .min-height-100vh {
    height: 100vh;
  }
  .fixed-height-large {
    height: 800px;
  }
  .fixed-height-medium {
    height: 700px;
  }
  .fixed-height-small {
    height: 600px;
  }
}

/* ==============================
   Print Styles Fix
   ============================== */

@media print {
  * {
    color: #000 !important;
    background: #fff !important;
  }
  .main-nav {
    display: none;
  }
  img {
    display: block;
  }
}

/* ==============================
   RTL Responsive Fixes
   ============================== */

/* Small desktop RTL */

/* Tablet landscape RTL */
@media only screen and (max-width: 1024px) {
  /* Note: [dir="rtl"] .mod-breadcrumbs-mini is defined in custom.css to avoid duplication */
  
  [dir="rtl"] .inner-nav ul li {
    margin-inline-start: 11px;
    margin-inline-end: 11px;
  }
}

/* Tablet portrait RTL */
@media only screen and (max-width: 768px) {
  
  [dir="rtl"] .owl-prev {
    left: auto;
    right: 0;
  }
  
  [dir="rtl"] .owl-next {
    right: auto;
    left: 0;
  }
}

/* Mobile RTL */
@media only screen and (max-width: 767px) {
  
  
  [dir="rtl"] .works-filter.works-filter-fancy a:hover {
    margin-inline-start: 2px !important;
    margin-inline-end: 0 !important;
  }
  
  
  [dir="rtl"] .works-filter.works-filter-slick a:hover {
    margin-inline-start: 0 !important;
    margin-inline-end: 0 !important;
  }
}

/* Small mobile RTL */

/* Extra small mobile RTL */
@media only screen and (max-width: 480px) {
  [dir="rtl"] .container {
    padding-inline-start: 20px;
    padding-inline-end: 20px;
  }
  
  [dir="rtl"] .owl-prev {
    left: auto;
    right: 0;
  }
  
  [dir="rtl"] .owl-next {
    right: auto;
    left: 0;
  }
  
  [dir="rtl"] .pagination a {
    margin-inline-start: 3px;
    margin-inline-end: 0;
  }
}

/* Team carousel RTL fix */
