/* Large Deveice: 1280px. 
=======================================================================
=======================================================================
*/
@media only screen and (min-width: 992px) {
  .language-switcher-wap {
    display: none;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1200px) {
  .header-area .logo img {
    max-width: 160px;
    height: auto;
  }

  .sub-title p {
    font-size: 16px;
  }

  .sub-title::before {
    left: -11px;
  }

  #header-aside .aside-content .info-wrap {
    margin-right: 14px;
  }

  #header-aside .aside-content .info-i span i::before {
    font-size: 30px;
  }

  #header-aside .aside-content .inner>div {
    font-size: 14px;
  }

  .section-title h2 {
    font-size: 2rem;
    line-height: 50px;
  }

  .about-img {
    padding-left: 60px;
  }

  p {
    font-size: 15px;
  }

  p.highlight {
    font-size: 16px;
    margin: 15px 0;
  }

  .founded-text p {
    font-size: 20px;
    padding-top: 15px;
    padding-bottom: 15px;
  }

  .single-service-area p {
    font-size: 14px;
  }

  .feature-image {
    width: max-content;
  }

  .main-menu li.nav-item {
    margin-right: 30px;
  }

  #header-2 .main-menu li.nav-item {
    margin-right: 20px;
  }

  #header-2 .main-menu .navbar-nav .nav-link {
    padding: 30px 0;
  }

  .info-content {
    padding: 30px;
  }

  .featured-process-area .process-grids h3 {
    font-size: 19px;
  }

  .choose-us-inner h5 {
    font-size: 17px;
  }

  .testimonial-content p {
    font-size: 15px;
  }

  .about-content-area p.highlight {
    margin: 15px 0;
    font-size: 15px;
  }

  .about-key li p {
    font-size: 14px;
  }

  #service-3 .single-serv-area {
    height: 300px;
    padding: 40px 20px;
  }

  .single-serv-bg {
    height: 300px;
  }

  .single-process-item h5 {
    font-size: 18px;
  }

  .single-price-item .main-btn {
    padding: 10px 20px;
  }
}

/* Tablet Layout: 768px. 
========================================================================
========================================================================
*/

@media only screen and (min-width: 768px) and (max-width: 991px) {

  #header-1 .logo {
    display: none;
  }

  .responsive-logo {
    display: block;
    width: 200px;
    margin-top: 10px;
    float: left;
    position: relative;
    top: 5px;
    left: 0px;
    z-index: 999;
  }

  .sub-title {
    display: none;
  }



  .header-area .logo img {
    margin: 15px 0;
  }

  .search-box button {
    display: none;
  }

  #header-aside .aside-content {
    display: none;
  }

  .header-area.absolute-header {
    top: 0;
    padding: 0;
  }

  .header-area .navigation {
    box-shadow: none;
  }

  .header-area .main-btn {
    display: none;
  }

  .main-menu .navbar-nav .nav-link {
    padding: 15px;
    color: inherit;
  }

  .navbar-toggler {
    padding: 5px 15px;
    font-size: 20px;
    line-height: 1;
    background-color: transparent;
    border: none;
    position: absolute;
    top: 25px;
    right: 0;
    z-index: 99999;
  }

  #header-2 .navbar-toggler {
    top: -61px;
  }

  #header-3 .navbar-toggler {
    top: -65px;
  }

  .navbar-toggler-icon {
    display: block;
    width: 30px;
    height: 2px;
    background-color: var(--color-primary);
    margin: 6px 0;
    -webkit-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
  }

  .active .navbar-toggler-icon:nth-of-type(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 7px;
  }

  .active .navbar-toggler-icon:nth-of-type(2) {
    opacity: 0;
  }

  .active .navbar-toggler-icon:nth-of-type(3) {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 7px;
  }

  .main-menu .navbar .navbar-collapse {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--brand-white);
    z-index: 999;
    padding: 10px 16px;
    -webkit-box-shadow: 0 26px 48px 0 var(--color-shadow);
    box-shadow: 0 26px 48px 0 var(--color-shadow);
    margin-top: 100px;
  }

  #header-2 .main-menu .navbar .navbar-collapse {
    margin-top: 0;
  }

  #header-3 .main-menu .navbar .navbar-collapse {
    margin-top: 0;
  }

  .navigation .navbar .navbar-nav .nav-item .sub-nav-toggler {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    padding: 10px 14px;
    font-size: 16px;
    background: none;
    border: 0;
    color: var(--color-secondary);
  }

  .sub-menu {
    position: relative !important;
    width: 100% !important;
    left: 0 !important;
    top: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: none;
    right: auto;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-align: left;
    border-top: 0;
    -webkit-transition: 0s;
    transition: 0s;
  }

  .main-menu .sub-menu li a {
    font-size: 14px;
    display: block;
    padding: 12px;
    padding-left: 12px;
    color: var(--color-text);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    padding-left: 30px;
  }

  .main-menu .navbar-toggler:focus,
  .navbar-toggler:hover {
    text-decoration: none;
    outline: 0;
    cursor: pointer !important;
  }

  .sub-menu::after {
    display: none;
  }

  #header-2.header-area li.nav-item .nav-link {
    color: var(--color-text);
  }

  #header-3 .main-menu .navbar-nav .nav-link {
    padding: 15px;
    color: var(--color-text);
  }

  #header-3.header-area li.nav-item .nav-link {
    color: var(--color-text);
  }

  .single-slide-item h1 {
    font-size: 65px;
    line-height: 75px;
  }

  #home-2 .single-slide-item h1 {
    font-size: 54px;
    line-height: 64px;
  }

  #home-3 .single-slide-item h1 {
    font-size: 55px;
    line-height: 65px;
  }

  .single-slide-item p {
    font-size: 15px;
    line-height: 25px;
  }

  .hero-area-content .main-btn {
    font-size: 15px;
  }

  .info-img {
    margin-top: 50px;
  }

  .info-bg.bg-cover {
    display: none;
  }

  .about-img {
    padding: 0;
  }

  .achievement-area {
    height: 500px;
  }

  .featured-process-area .process-grids .grid {
    width: 50%;
    border-bottom: 1px solid rgba(var(--brand-white-rgb), 0.2);
  }

  .featured-process-area .process-grids .overlay-2 {
    padding: 80px 30px 50px;
    top: 0;
  }

  .featured-process-area .bg-cover {
    height: 100%;
  }

  .choose-us-area {
    height: 800px;
  }

  .choose-us-inner {
    border-bottom: 1px solid var(--color-border);
  }

  .testimonial-content p {
    font-size: 16px;
  }

  .feature-image {
    margin-bottom: 50px;
  }

  .feature-image::after {
    width: 85%;
    left: 40px;
  }

  .cta-area {
    height: 1100px;
  }

  .cta-area-2 {
    height: 400px;
  }

  .cta-area-2.white {
    height: 400px;
  }

  .team-area {
    padding-bottom: 100px;
  }

  .testimonial-content-wrapper {
    margin-left: 50px;
    margin-top: -50px;
  }

  .blog-area .main-btn.transparent {
    display: none;
  }

  .footer-area p {
    margin-top: 15px;
  }

  .single-promo-item {
    margin-top: -60px;
  }

  .skill-area .section-title h2 {
    font-size: 35px;
  }

  .skill-content {
    padding: 50px;
  }

  .process-num {
    right: 115px;
  }

  .feat-content {
    padding: 15px;
  }

  .single-feat-item.red {
    margin-top: 50px;
  }

  #home-2.achievement-area {
    height: 500px;
  }

  .single-key-feat {
    margin-bottom: 30px;
  }

  .single-team-member {
    margin-bottom: 80px;
  }

  .team_area {
    padding-bottom: 50px;
  }

  .single-service {
    margin-top: 50px;
  }
}

/* Fluid typography: keep the legacy layout breakpoints while using one responsive text scale. */
p,
p.highlight,
.single-service p,
.skill-content p,
#blog-page .blog-content p.blog-meta,
.home-about__copy p {
  font-size: var(--font-size-body);
}

a,
.main-btn,
input,
textarea,
select,
input[type='submit'],
button[type='submit'],
.main-menu .navbar-nav .nav-link,
.case-info .main-btn,
.question-section button,
.home-hero__button,
.home-about__action {
  font-size: var(--font-size-ui);
}

input::placeholder,
textarea::placeholder,
.main-menu .sub-menu li a,
.section-title h6,
.home-about__eyebrow,
.home-about__capability p,
.lawyer-card .title,
.lawyer-card .tags,
.lawyer-card .dept,
.contact-us-inner .con-address,
.contact-us-inner .con-tel,
.single-recent-post h6,
.popular-tag span,
.pagination-block .page-numbers,
a.reply-btn,
.single-comments-section p span {
  font-size: var(--font-size-small);
}

.site-footer .footer-bottom p,
.site-footer .footer-bottom a,
.home-hero__highlights li,
.home-hero__visual-caption {
  font-size: var(--font-size-caption);
}

.section-title h2,
.cta-area h2,
.cta-area-2 h2,
.breadcroumb-area .breadcroumb-title h1,
.info-content h5,
.case-single-section h3 {
  font-size: var(--font-size-heading-2);
}

h4,
h5,
.helpline-content h4,
.single-service h4,
.single-service-area h4,
.feature-content h5,
.single-process-item h5,
.team-content .team-title a,
.blog-content a,
#blog-page .blog-content a,
.blog-category h5,
.archive h5,
.comments-section h5,
.single-blog-wrap h3,
.case-info h5,
.home-about__capability h3,
.lawyer-card h3 {
  font-size: var(--font-size-heading-3);
}

h6,
.sub-title p,
.founded-text p,
.single-price-item h6,
.contact-inner h6,
.breadcroumb-area h6,
.contact-us-inner a {
  font-size: var(--font-size-subtitle);
}

@media (max-width: 991px) {
  .contact-us-layout {
    grid-template-columns: 1fr;
    gap: 36px;
    padding: 44px;
  }

  .contact-us-qr-space {
    position: static;
    align-self: auto;
    align-items: center;
    justify-content: center;
    min-height: 0;
  }

  .contact-us-qr-code {
    position: static;
    display: block;
    width: min(100%, 220px);
    height: auto;
  }

  .contact-us-qr-code img {
    width: min(100%, 220px);
    height: auto;
  }

  .contact-us-qr-caption {
    margin-top: 10px;
  }
}

@media (max-width: 575px) {
  .contact-us-layout {
    display: block;
    padding: 34px 24px;
  }

  .contact-us-details {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .contact-us-item__icon {
    margin-right: 14px;
  }

  .contact-us-qr-space {
    justify-content: center;
    min-height: 0;
    margin-top: 34px;
  }

  .contact-us-qr-code img {
    width: 180px;
  }

  .contact-us-qr-code {
    width: 180px;
  }

  .contact-us-qr-placeholder {
    width: 180px;
  }

  .contact-message-section .contact-form {
    margin-top: 28px;
    padding: 0 8px;
  }

  .contact-message-section .form-field {
    margin-bottom: 26px;
  }

  .contact-message-section .contact-form textarea {
    min-height: 144px;
  }

  .contact-message-section .captcha-control {
    gap: 10px;
  }

  .contact-message-section .captcha-control img {
    flex-basis: 84px;
    width: 84px;
  }

  .contact-message-section .contact-form__submit {
    justify-content: stretch;
  }

  .contact-message-section .contact-form .main-btn {
    width: 100%;
    margin-bottom: 22px;
  }

  .cta-area input[name='checkcode'],
  .contact-form input[name='checkcode'] {
    flex: 1 1 0;
    width: auto !important;
    min-width: 0;
    margin-right: 10px !important;
  }

  .cta-area input[name='checkcode']+img,
  .contact-form input[name='checkcode']+img {
    flex: 0 0 84px;
    width: 84px !important;
    max-width: 84px;
  }

  .contact-message-section .captcha-control input[name='checkcode'] {
    margin-right: 0 !important;
  }
}

/* Brand footer */
@media (max-width: 991px) {
  .site-footer.footer-area {
    text-align: center;
  }

  .site-footer .footer-up {
    padding: 48px 0 28px;
  }

  .site-footer .footer-top {
    flex-direction: column;
    justify-content: center;
    gap: 24px;
  }

  .site-footer .footer-navigation-row {
    width: 100%;
    margin: 0;
  }

  .site-footer .footer-navigation-row ul {
    display: grid;
    max-width: 560px;
    margin: 0 auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px 28px;
  }

  .site-footer .footer-navigation-row li+li::before {
    display: none;
  }

  .site-footer .footer-navigation-row li {
    justify-content: center;
  }

  .site-footer .footer-navigation-row a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 4px 0;
  }

  .site-footer .footer-main-content {
    max-width: 680px;
    margin: 28px auto 0;
    gap: 36px;
  }

  .site-footer .footer-bottom-content {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 10px;
    text-align: center;
  }

  .site-footer .footer-records,
  .site-footer .footer-legal-links {
    justify-content: center;
  }

}

@media (max-width: 575px) {
  .site-footer .footer-up {
    padding: 48px 0 24px;
  }

  .site-footer .footer-top {
    gap: 22px;
  }

  .site-footer .footer-logo {
    width: min(100%, 190px);
  }

  .site-footer .footer-navigation-row {
    margin: 0;
  }

  .site-footer .footer-navigation-row ul {
    width: min(100%, 280px);
  }

  .site-footer .footer-main-content {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 28px;
    margin-top: 24px;
    padding-top: 24px;
  }

  .site-footer .footer-contact-block {
    width: 100%;
    text-align: center;
  }

  .site-footer .footer-contact-list {
    width: min(100%, 310px);
    margin-right: auto;
    margin-left: auto;
    text-align: left;
  }

  .site-footer .footer-qr-card {
    width: 116px;
  }

  .site-footer .footer-qr-card img {
    width: 106px;
    height: 106px;
  }

  .site-footer .footer-bottom {
    padding: 16px 0 18px;
  }

  .site-footer .footer-bottom .privacy {
    margin: 0;
  }

  .site-footer .footer-bottom-content {
    gap: 10px;
  }

  .site-footer .footer-records {
    flex-direction: column;
    gap: 2px;
  }

  .site-footer .footer-legal-links {
    flex-wrap: wrap;
    row-gap: 6px;
    white-space: normal;
  }

  .site-footer .footer-legal-links a+a::before {
    margin-right: 10px;
    margin-left: 10px;
  }

  .legal-page-main {
    padding: 44px 0;
  }

  .legal-document {
    padding: 30px 22px;
  }

  .legal-document__lead {
    margin-bottom: 30px;
  }

  .legal-document section+section {
    margin-top: 28px;
  }

  .legal-document__notice {
    padding: 16px;
  }
}

/* Full-screen mobile navigation (Aquila Law, 2026-08-23). */
@media only screen and (min-width: 992px) {
  .mobile-menu-toolbar {
    display: none;
  }
}

@media only screen and (max-width: 991px) {
  body.mobile-menu-open {
    overflow: hidden;
  }

  #header-2 .main-menu .navbar .navbar-collapse {
    position: fixed !important;
    inset: 0 !important;
    z-index: 100000 !important;
    width: auto !important;
    height: 100vh !important;
    max-height: 100vh !important;
    margin: 0 !important;
    padding: 59px 0 0 !important;
    overflow-y: auto !important;
    background: var(--color-bg) !important;
    box-shadow: none !important;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0);
    transition: opacity 220ms ease-out, -webkit-clip-path 320ms cubic-bezier(0.22, 0.61, 0.36, 1), clip-path 320ms cubic-bezier(0.22, 0.61, 0.36, 1), visibility 0s linear 320ms;
    will-change: clip-path, opacity;
  }

  #header-2 .main-menu .navbar .navbar-collapse.mobile-menu-panel.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    transition: opacity 220ms ease-out, -webkit-clip-path 320ms cubic-bezier(0.22, 0.61, 0.36, 1), clip-path 320ms cubic-bezier(0.22, 0.61, 0.36, 1), visibility 0s linear 0s;
  }

  #header-2 .main-menu .navbar .navbar-collapse.mobile-menu-panel.is-closing {
    visibility: visible;
    pointer-events: none;
  }

  #header-2 .navbar-toggler {
    position: fixed !important;
    top: 17px !important;
    right: 16px !important;
    z-index: 100001 !important;
    padding: 8px !important;
  }

  #header-2 .language-switcher-wap {
    display: none !important;
  }

  #header-2 .language-switcher-pc {
    position: fixed !important;
    top: 22px !important;
    right: 68px !important;
    left: auto !important;
    z-index: 100001 !important;
    display: inline-flex !important;
    align-items: center;
    height: 32px;
  }

  #header-2 .language-switcher-pc .main-btn {
    margin: 0 !important;
  }

  #header-2 .logo img {
    max-width: min(190px, calc(100vw - 152px));
    height: auto;
  }

  #header-2 .navbar-toggler-icon {
    width: 24px !important;
    height: 1px !important;
    margin: 6px 0 !important;
    background-color: var(--color-primary) !important;
  }

  body:not(.mobile-menu-open) #header-2.header-area.absolute-header .is-sticky .language-switcher-pc .main-btn {
    color: var(--color-text-inverse) !important;
  }

  body:not(.mobile-menu-open) #header-2.header-area.absolute-header .is-sticky .navbar-toggler-icon {
    background-color: var(--color-text-inverse) !important;
  }

  #header-2 .active .navbar-toggler-icon:nth-of-type(1),
  #header-2 .active .navbar-toggler-icon:nth-of-type(3) {
    top: 8px !important;
  }

  #header-2 .main-menu .navbar .mobile-menu-toolbar {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 59px;
    padding: 0 65px 0 18px;
    border-bottom: 1px solid var(--color-border);
  }

  #header-2 .mobile-menu-brand {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    color: var(--color-primary);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-decoration: none;
  }

  #header-2 .mobile-menu-brand:hover {
    color: var(--color-link);
  }

  #header-2 .mobile-menu-brand:focus-visible {
    outline: 2px solid var(--color-focus);
    outline-offset: 3px;
  }

  #header-2 .mobile-menu-language a {
    color: var(--color-primary) !important;
  }

  #header-2 .navbar-collapse .navbar-nav {
    width: 100%;
    margin: 0 !important;
    padding: 0;
  }

  #header-2 .main-menu li.nav-item {
    display: block !important;
    margin: 0 !important;
    border-bottom: 1px solid var(--color-border) !important;
  }

  #header-2 .main-menu .navbar-nav .nav-link,
  #header-2.header-area li.nav-item .nav-link {
    position: relative;
    min-height: 53px !important;
    padding: 16px 56px 16px 18px !important;
    color: var(--color-text) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 21px !important;
  }

  #header-2 .main-menu .navbar-nav .nav-item:hover>a,
  #header-2 .main-menu .navbar-nav .active>a {
    color: var(--color-primary) !important;
    background: var(--color-bg-muted) !important;
  }

  #header-2 .navigation .navbar .navbar-nav .nav-item .sub-nav-toggler {
    top: 0 !important;
    right: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 53px !important;
    height: 53px !important;
    padding: 0 !important;
    color: var(--color-secondary) !important;
  }

  #header-2 .navigation .navbar .navbar-nav .nav-item .sub-nav-toggler i {
    font-size: 15px;
    transition: transform 0.2s ease;
  }

  #header-2 .navigation .navbar .navbar-nav .nav-item .sub-nav-toggler.active i {
    transform: rotate(180deg);
  }

  #header-2 .main-menu .sub-menu {
    margin: 0;
    background: var(--color-bg-muted);
  }

  #header-2 .main-menu .sub-menu li {
    border-color: var(--color-border);
  }

  #header-2 .main-menu .sub-menu li a {
    padding: 13px 18px 13px 36px !important;
    color: var(--color-text) !important;
    font-size: 13px !important;
    line-height: 20px !important;
  }

  #header-2 .main-menu .sub-menu li:hover>a {
    color: var(--color-link);
  }

  body.mobile-menu-open #header-2 .language-switcher-pc {
    visibility: hidden;
  }
}

@media (prefers-reduced-motion: reduce) {
  #header-2 .main-menu .navbar .navbar-collapse.mobile-menu-panel {
    transition: none;
  }

  #header-2 .navigation .navbar .navbar-nav .nav-item .sub-nav-toggler i {
    transition: none;
  }
}

/* Mobile Layout: 320px. 
=====================================================================
=====================================================================
*/

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

  p {
    font-size: 15px;
  }

  #header-1 .logo {
    display: none;
  }

  .responsive-logo {
    display: block;
    width: 200px;
    margin-top: 20px;
    float: left;
    position: relative;
    top: 5px;
    left: 0px;
    z-index: 999;
  }

  .sub-title {
    display: none;
  }

  .search-box button {
    display: none;
  }

  #header-aside .aside-content {
    display: none;
  }

  .header-area.absolute-header {
    top: 0;
    padding: 0;
  }

  .container-fluid {
    padding: 0;
  }

  .header-area .navigation {
    padding: 0 20px;
    margin-top: 0;
    height: 90px;
  }

  /* #header-2.header-area .navigation {
    margin-top: 10px;
  } */

  #header-2.header-area li.nav-item .nav-link {
    color: var(--color-text);
  }

  .header-area .main-btn {
    display: none;
  }

  .main-menu .navbar-nav .nav-link {
    padding: 15px;
    color: inherit;
  }

  #header-2 .main-menu .navbar-nav .nav-link {
    padding: 15px;
    color: var(--color-text);
  }

  .navbar-toggler {
    padding: 5px 15px;
    font-size: 20px;
    line-height: 1;
    background-color: transparent;
    border: none;
    position: absolute;
    top: 25px;
    right: 0;
    z-index: 99999;
  }

  #header-2 .navbar-toggler {
    padding: 5px 10px;
    font-size: 20px;
    line-height: 1;
    background-color: transparent;
    border: none;
    position: absolute;
    top: -65px;
    right: 0;
    z-index: 99999;
  }

  #header-3 .navbar-toggler {
    top: -58px;
  }

  .navbar-toggler-icon {
    display: block;
    width: 30px;
    height: 2px;
    background-color: var(--color-primary);
    margin: 6px 0;
    -webkit-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
  }

  .active .navbar-toggler-icon:nth-of-type(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 7px;
  }

  .active .navbar-toggler-icon:nth-of-type(2) {
    opacity: 0;
  }

  .active .navbar-toggler-icon:nth-of-type(3) {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 7px;
  }

  .main-menu .navbar .navbar-collapse {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--brand-white);
    z-index: 999;
    padding: 10px 16px;
    -webkit-box-shadow: 0 26px 48px 0 var(--color-shadow);
    box-shadow: 0 26px 48px 0 var(--color-shadow);
    margin-top: 90px;
  }

  #header-2 .main-menu .navbar .navbar-collapse {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--brand-white);
    z-index: 999;
    padding: 10px 16px;
    -webkit-box-shadow: 0 26px 48px 0 var(--color-shadow);
    box-shadow: 0 26px 48px 0 var(--color-shadow);
    margin-top: 15px;
  }

  #header-3 .main-menu .navbar .navbar-collapse {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--brand-white);
    z-index: 999;
    padding: 10px 16px;
    -webkit-box-shadow: 0 26px 48px 0 var(--color-shadow);
    box-shadow: 0 26px 48px 0 var(--color-shadow);
    margin-top: 10px;
  }

  .navigation .navbar .navbar-nav .nav-item .sub-nav-toggler {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    padding: 10px 14px;
    font-size: 16px;
    background: none;
    border: 0;
    color: var(--color-secondary);
  }

  .sub-menu {
    position: relative !important;
    width: 100% !important;
    left: 0 !important;
    top: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: none;
    right: auto;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-align: left;
    border-top: 0;
    -webkit-transition: 0s;
    transition: 0s;
  }

  .main-menu .sub-menu li a {
    font-size: 14px;
    display: block;
    padding: 12px;
    padding-left: 12px;
    color: var(--color-text);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    padding-left: 30px;
  }

  .main-menu .navbar-toggler:focus,
  .navbar-toggler:hover {
    text-decoration: none;
    outline: 0;
    cursor: pointer !important;
  }

  .sub-menu::after {
    display: none;
  }

  .section-title h2 {
    font-size: 30px;
    line-height: 40px;
  }

  .single-slide-item {
    text-align: center;
    height: 600px;
  }

  .single-slide-item h1 {
    font-size: 36px;
    line-height: 46px;
  }

  #home-2 .single-slide-item {
    height: 600px;
  }

  #home-3 .single-slide-item {
    height: 750px;
  }

  #home-3 .single-slide-item h1 {
    font-size: 32px;
    line-height: 44px;
  }

  .single-slide-item h1::before {
    display: none;
  }

  .single-slide-item p {
    font-size: 16px;
    line-height: 26px;
  }

  .single-promo-item {
    margin-top: -60px;
  }

  .hero-area-content .main-btn {
    font-size: 14px;
    padding: 12px 24px;
    margin: 15px 0;
    margin-right: 10px;
  }

  .about-img {
    padding: 0;
  }

  .about-key li {
    width: 100%;
  }

  p.highlight {
    font-size: 15px;
  }

  .founded img {
    display: none;
  }

  .founded-text p {
    font-size: 20px;
  }

  .info-img {
    margin-top: 40px;
  }

  .info-content h5 {
    font-size: 30px;
  }

  .featured-process-area .process-grids .grid {
    width: 100%;
    border-bottom: 1px solid rgba(var(--brand-white-rgb), 0.2);
  }

  .featured-process-area .process-grids .overlay-2 {
    padding: 80px 30px 50px;
    top: 0;
  }

  .featured-process-area .bg-cover {
    height: 100%;
  }

  .choose-us-area {
    height: 1600px;
  }

  .choose-us-inner {
    border-bottom: 1px solid var(--color-border);
  }

  .testimonial-content h4 {
    font-size: 16px;
  }

  .testimonial-content p {
    font-size: 15px;
  }

  .achievement-area {
    height: 850px;
  }

  #home-2.achievement-area {
    height: 900px;
  }

  .skill-content {
    text-align: center;
  }

  .process-num {
    right: 135px;
  }

  .single-counter-box h6 {
    font-size: 16px;
  }

  .single-counter-box .counter-number span {
    font-size: 45px;
    margin-bottom: 10px;
  }

  .featured-process-area .process-grids .inner {
    padding: 90px 60px;
  }

  .spacer {
    margin: 0;
    padding: 0;
  }

  .contact-info .main-btn {
    padding: 10px 20px;
    font-size: 15px;
  }

  .testimonial-content-wrapper {
    margin-left: 50px;
    margin-top: -50px;
  }

  .testimonial-area .section-title {
    padding-right: 0;
  }

  .testimonial-area-2 {
    height: 500px;
  }

  .testimonial-carousel .owl-dots {
    margin: 0;
  }

  .blog-area .main-btn {
    display: none;
  }

  .single-blog-item.small {
    height: auto;
  }

  .single-blog-item.small .blog-bg img {
    height: auto;
  }

  .single-carousel-item p {
    font-size: 14px;
    line-height: 26px;
  }

  .feature-image {
    margin-bottom: 50px;
  }

  .feature-image::after {
    top: -20px;
    right: -20px;
  }

  .feature-content h5 {
    font-size: 18px;
  }

  .single-feature-item .feature-icon {
    top: 5px;
  }

  .single-counter-box {
    margin: 30px 0;
  }

  .single-blog-item {
    margin-bottom: 40px;
  }

  .team-area {
    padding-bottom: 50px;
  }

  .single-team-member {
    margin-bottom: 80px;
  }

  .team-member-bg {
    height: 350px;
  }

  .footer-up {
    padding-top: 60px;
  }

  .footer-up .logo {
    margin: 0 auto;
  }

  .footer-area {
    text-align: center;
  }

  .footer-area p {
    margin-top: 10px;
  }

  .copyright-line {
    text-align: center;
  }

  p.privacy {
    text-align: center;
  }

  #header-3.header-area li.nav-item .nav-link {
    color: var(--color-text);
  }

  #home-2 .hero-area-content .main-btn {
    margin-left: 0;
    margin-top: 30px;
  }

  #home-2 .single-slide-item h6 {
    padding-left: 0;
  }

  #home-2 .single-slide-item h6:before {
    display: none;
  }

  #service-3 .single-serv-area {
    height: 300px;
  }

  .about-content-wrapper {
    padding: 30px;
  }

  .single-counter-box.one {
    border: none;
  }

  .single-counter-box.two {
    border: none;
  }

  .single-counter-box.three {
    border: none;
  }

  .single-key-feat {
    text-align: left;
  }

  .key-feature-wrap {
    margin: 80px 0;
  }

  .cta-area {
    text-align: center;
    height: 1250px;
  }

  .cta-area-2 {
    height: 600px;
    text-align: center;
  }

  .cta-area-2.white {
    height: 600px;
    text-align: center;
  }

  .cta-area-2 .contact-info i {
    float: none;
    margin: 15px 0;
  }

  .cta-area h2 {
    font-size: 30px;
    line-height: 40px;
    padding-top: 20px;
  }

  .cta-area .contact-info {
    text-align: center;
  }

  input,
  textarea,
  select {
    height: 80%;
  }

  .single-blog-wrap h3 {
    font-size: 22px;
  }

  .single-service {
    margin-top: 50px;
  }
}

/* Wide Mobile Layout: 480px. 
=====================================================================
=====================================================================
*/

@media only screen and (min-width: 576px) and (max-width: 767px) {
  p {
    font-size: 15px;
  }

  #header-1 .logo {
    display: none;
  }

  .responsive-logo {
    display: block;
    width: 200px;
    margin-top: 20px;
    float: left;
    position: relative;
    top: 5px;
    left: 0px;
    z-index: 999;
  }

  .sub-title {
    display: none;
  }


  .search-box button {
    display: none;
  }

  #header-aside .aside-content {
    display: none;
  }

  .header-area.absolute-header {
    top: 0;
    padding: 0;
  }

  .container-fluid {
    padding: 0;
  }

  .header-area .navigation {
    padding: 0 20px;
    margin-top: 0;
    height: 90px;
  }

  /* #header-2.header-area .navigation {
    margin-top: 10px;
  } */

  #header-2.header-area li.nav-item .nav-link {
    color: var(--color-text);
  }

  .header-area .main-btn {
    display: none;
  }

  .main-menu .navbar-nav .nav-link {
    padding: 15px;
    color: inherit;
  }

  #header-2 .main-menu .navbar-nav .nav-link {
    padding: 15px;
    color: var(--color-text);
  }

  .navbar-toggler {
    padding: 5px 15px;
    font-size: 20px;
    line-height: 1;
    background-color: transparent;
    border: none;
    position: absolute;
    top: 25px;
    right: 0;
    z-index: 99999;
  }

  #header-2 .navbar-toggler {
    padding: 5px 15px;
    font-size: 20px;
    line-height: 1;
    background-color: transparent;
    border: none;
    position: absolute;
    top: -60px;
    right: 0;
    z-index: 99999;
  }

  #header-3 .navbar-toggler {
    top: -60px;
  }

  .navbar-toggler-icon {
    display: block;
    width: 30px;
    height: 2px;
    background-color: var(--color-primary);
    margin: 6px 0;
    -webkit-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
  }

  .active .navbar-toggler-icon:nth-of-type(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 7px;
  }

  .active .navbar-toggler-icon:nth-of-type(2) {
    opacity: 0;
  }

  .active .navbar-toggler-icon:nth-of-type(3) {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 7px;
  }

  .main-menu .navbar .navbar-collapse {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--brand-white);
    z-index: 999;
    padding: 10px 16px;
    -webkit-box-shadow: 0 26px 48px 0 var(--color-shadow);
    box-shadow: 0 26px 48px 0 var(--color-shadow);
    margin-top: 90px;
  }

  #header-2 .main-menu .navbar .navbar-collapse {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--brand-white);
    z-index: 999;
    padding: 10px 16px;
    -webkit-box-shadow: 0 26px 48px 0 var(--color-shadow);
    box-shadow: 0 26px 48px 0 var(--color-shadow);
    margin-top: 15px;
  }

  #header-3 .main-menu .navbar .navbar-collapse {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: var(--brand-white);
    z-index: 999;
    padding: 10px 16px;
    -webkit-box-shadow: 0 26px 48px 0 var(--color-shadow);
    box-shadow: 0 26px 48px 0 var(--color-shadow);
    margin-top: 10px;
  }

  .navigation .navbar .navbar-nav .nav-item .sub-nav-toggler {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    padding: 10px 14px;
    font-size: 16px;
    background: none;
    border: 0;
    color: var(--color-secondary);
  }

  .sub-menu {
    position: relative !important;
    width: 100% !important;
    left: 0 !important;
    top: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: none;
    right: auto;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-align: left;
    border-top: 0;
    -webkit-transition: 0s;
    transition: 0s;
  }

  .main-menu .sub-menu li a {
    font-size: 14px;
    display: block;
    padding: 12px;
    padding-left: 12px;
    color: var(--color-text);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    padding-left: 30px;
  }

  .main-menu .navbar-toggler:focus,
  .navbar-toggler:hover {
    text-decoration: none;
    outline: 0;
    cursor: pointer !important;
  }

  .sub-menu::after {
    display: none;
  }

  .section-title h2 {
    font-size: 35px;
    line-height: 50px;
  }

  .single-slide-item {
    text-align: center;
    height: 600px;
  }

  .single-slide-item h1 {
    font-size: 40px;
    line-height: 55px;
  }

  #home-2 .single-slide-item {
    height: 600px;
  }

  #home-3 .single-slide-item {
    height: 650px;
  }

  #home-3 .single-slide-item h1 {
    font-size: 40px;
    line-height: 50px;
  }

  .single-slide-item h1::before {
    display: none;
  }

  .single-slide-item p {
    font-size: 14px;
    line-height: 26px;
  }

  .single-promo-item {
    margin-top: -60px;
  }

  .hero-area-content .main-btn {
    font-size: 14px;
    padding: 12px 24px;
    margin: 15px 0;
    margin-right: 10px;
  }

  .about-img {
    padding: 0;
  }

  .about-key li {
    width: 100%;
  }

  p.highlight {
    font-size: 15px;
  }

  .founded img {
    display: none;
  }

  .founded-text p {
    font-size: 20px;
  }

  .info-img {
    margin-top: 40px;
  }

  .featured-process-area .process-grids .grid {
    width: 100%;
    border-bottom: 1px solid rgba(var(--brand-white-rgb), 0.2);
  }

  .featured-process-area .process-grids .overlay-2 {
    padding: 80px 30px 50px;
    top: 0;
  }

  .featured-process-area .bg-cover {
    height: 100%;
  }

  .choose-us-area {
    height: 1500px;
  }

  .choose-us-inner {
    border-bottom: 1px solid var(--color-border);
  }

  .testimonial-area-2 {
    height: 450px;
  }

  .testimonial-content p {
    font-size: 15px;
  }

  .achievement-area {
    height: 850px;
  }

  #home-2.achievement-area {
    height: 900px;
  }

  .skill-content {
    text-align: center;
  }

  .process-num {
    right: 135px;
  }

  .single-counter-box h6 {
    font-size: 16px;
  }

  .single-counter-box .counter-number span {
    font-size: 45px;
    margin-bottom: 10px;
  }

  .spacer {
    margin: 0;
    padding: 0;
  }

  .contact-info .main-btn {
    padding: 10px 20px;
    font-size: 15px;
  }

  .testimonial-content-wrapper {
    margin-left: 50px;
    margin-top: -50px;
  }

  .testimonial-area .section-title {
    padding-right: 0;
  }

  .blog-area .main-btn {
    display: none;
  }

  .single-blog-item.small {
    height: auto;
  }

  .single-blog-item.small .blog-bg img {
    height: auto;
  }

  .single-carousel-item p {
    font-size: 14px;
    line-height: 26px;
  }

  .feature-image {
    margin-bottom: 50px;
  }

  .feature-image::after {
    top: -20px;
    right: -20px;
  }

  .feature-content h5 {
    font-size: 18px;
  }

  .single-feature-item .feature-icon {
    top: 5px;
  }

  .single-counter-box {
    margin: 30px 0;
  }

  .single-blog-item {
    margin-bottom: 40px;
  }

  .single-team-member {
    margin-bottom: 100px;
  }

  .team-area {
    padding-bottom: 50px;
  }

  .team-member-bg {
    height: 350px;
  }

  .footer-up {
    padding-top: 60px;
  }

  .footer-up .logo {
    margin: 0 auto;
  }

  .footer-area {
    text-align: center;
  }

  .footer-area p {
    margin-top: 10px;
  }

  .copyright-line {
    text-align: center;
  }

  p.privacy {
    text-align: center;
  }

  #header-3.header-area li.nav-item .nav-link {
    color: var(--color-text);
  }

  #home-2 .hero-area-content .main-btn {
    margin-left: 0;
    margin-top: 30px;
  }

  #home-2 .single-slide-item h6 {
    padding-left: 0;
  }

  #home-2 .single-slide-item h6:before {
    display: none;
  }

  #service-3 .single-serv-area {
    height: 300px;
  }

  .info-content h5 {
    font-size: 30px;
  }

  .about-content-wrapper {
    padding: 30px;
  }

  .single-counter-box.one {
    border: none;
  }

  .single-counter-box.two {
    border: none;
  }

  .single-counter-box.three {
    border: none;
  }

  .single-key-feat {
    text-align: left;
  }

  .key-feature-wrap {
    margin: 80px 0;
  }

  .featured-process-area .process-grids .inner {
    padding: 100px 60px;
  }

  .cta-area {
    text-align: center;
    height: 1250px;
  }

  .cta-area-2 {
    height: 600px;
    text-align: center;
  }

  .cta-area-2.white {
    height: 600px;
    text-align: center;
  }

  .cta-area-2 .contact-info i {
    float: none;
    margin: 15px 0;
  }

  .cta-area h2 {
    font-size: 30px;
    line-height: 40px;
    padding-top: 20px;
  }

  .cta-area .contact-info {
    text-align: center;
  }

  input,
  textarea,
  select {
    height: 80%;
  }

  .single-blog-wrap h3 {
    font-size: 22px;
  }

  .single-service {
    margin-top: 50px;
  }
}

/* Mobile contact CTA: stack each icon above its centered copy. */
@media only screen and (max-width: 767px) {
  .cta-area-2 .call,
  .cta-area-2 .mail {
    flex-direction: column;
    justify-content: center;
    text-align: center;
  }

  .cta-area-2 .call {
    margin-bottom: 28px;
  }

  .cta-area-2 .contact-info i,
  .cta-area-2.white .contact-info i {
    margin: 0 0 14px;
    padding-right: 0;
  }

  .cta-area-2 .contact-info__content {
    width: 100%;
    text-align: center;
  }

  .cta-area-2 .contact-info h5 {
    margin-bottom: 4px;
  }

  .cta-area-2 .contact-info p {
    margin: 0;
  }
}
