/* #region -------------------------- ROOT */
@media only screen and (max-width : 1024px) { 
  :root {
    --h1: 60px;
    --h2: 36px;
    --h3: 20px;
    --h4: 18px;
  }
} 
@media only screen and (max-width : 767px) { 
  :root {
    --h1: 48px;
    --h2: 28px;
  }
} 
@media only screen and (max-width : 480px) { 
  :root {
    --h1: 36px;
    --h2: 22px;
  }
} 
/* #endregion */

/* #region - -------------------------- GENERAL */
@media only screen and (max-width : 1059px) {
  section.element .wrap { padding: 30px 0; }
  section.element .nwrap { padding: 0; }
}
@media only screen and (max-width : 1024px) { 
  .element.no-br br { display: none; }
  header .side-menu-wrap .text-wrap { display: none; }
  header .menu_wrap { background: var(--color1); }
  header .menu-oc-right.opener { width: 100%; text-align: right; }
  header .navbar-brand { max-width: 150px !important; }
  .navbar { align-items: center; flex-wrap: nowrap; }
  footer .dtop .row .cc {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .footer-0 .navbar-brand { max-width: 220px !important; }
}  
@media only screen and (max-width : 767px) { 
  footer .dtop .row .cc {
    flex: 0 0 100%;
    max-width: 100%;
  }
  footer .menu-title {
    margin-top: 0;
  }
  footer .copyright {
    margin-top: 30px;
  }
  footer .footer-logos {
    margin-top: 30px;
    padding-bottom: 30px;
  }
  footer {
    padding: 30px 0;
  }
  footer .overlay.color2, footer .overlay.color3 {
    height: calc(100% - 20%);
  }
}
@media only screen and (max-width : 600px) { 
  footer .ff-cta .dtext br {
    display: none;
  }
}
@media only screen and (max-width : 480px) { 
  footer .footer-logos {
    flex-wrap: wrap;
    gap: 15px;
  }
}
/* #endregion */

/* #region - -------------------------- OVERALL */
@media only screen and (max-width : 1200px) { 
  .rowaccordion-01 .dinfo, 
  .rowaccordion-01 .acc-content {
    margin: 0 !important;
  }
  .rowmedia-02 .col-md-6.cc {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
  .gcpt-02 .grid .grid-item.item-0 {
    width: 500px;
  }
}
@media only screen and (max-width : 1059px) { 
  .heroopt-01 .wrap {
    min-height: 350px;
  }
  .contact-01 .wrap {
    padding-top: 200px !important;
  }
  .heroslider-01 .wrap {
    padding-top: 300px !important;
  }
}  
@media only screen and (max-width : 1024px) { 
  .cardsflex-01 .ititle,
  .gcpt-01 .post-title.ititle {
    font-size: var(--h3);
  }
  .single-teams .title-wrap h2,
  .contact-01 .ssc a p, 
  .contact-01 .ssc a span,
  .proj-wrap .dinfo .ititle {
    font-size: var(--h2);
  }
  .single-teams .wrap {
    padding: 30px 0 !important;
  }
  .single-teams .container:before {
    left: 50%;
    transform: translateX(-50%);
  }
  .contact-01 .wrap {
    padding-top: 30px !important;
  }
  .contact-01 .copyright {
    margin-bottom: 30px;
  }
  .heroslider-01 .dinfo.hero-opt {
    margin-bottom: 0;
  }
  .heroslider-01 .wrap {
    padding: 30px 0 !important;
    min-height: 500px;
    align-items: center;
  }
  .js-tabs-01 .flexic {
    gap: 30px;
    width: 100%;
    margin: 0 !important;
  }
  .js-tabs-01 .dinfo,
  .js-tabs-01 .ntabs {
    max-width: 100%;
  }
  .js-tabs-01 .nav-item .nav-link {
    padding: 30px 0;
  }
  .js-tabs-01 .flexic .lg {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}
@media only screen and (max-width : 991px) {
  .gcpt-02 .grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
  .gcpt-02 .grid .grid-item.item-0 { grid-area: 1 / 1 / 2 / 3; }
  .gcpt-02 .grid .grid-item.item-1 { grid-area: 2 / 1 / 3 / 2; }
  .gcpt-02 .grid .grid-item.item-2 { grid-area: 2 / 2 / 3 / 3; }
  .gcpt-02 .grid .grid-item.item-3 { grid-area: 3 / 1 / 4 / 2; }
  .gcpt-02 .grid .grid-item.item-4 { grid-area: 3 / 2 / 4 / 3; }
  .gcpt-02 .grid .grid-item {
    width: 100% !important;
    height: 320px;
  }
  .gcpt-02 .grid .grid-item.item-0 .bg-img {
    min-height: 320px;
  }
  .gcpt-02 .grid .grid-item .overlay.color2 {
    width: 85px !important;
  }
  .gcpt-02 .grid .grid-item .overlay.color {
    height: 150px !important;
  }
  .gcpt-02 .grid .grid-item:hover .overlay.color {
    height: 100% !important;
  }
  .ajaxc-01 .ajx_btn {
    margin-top: 60px !important;
  }
}
@media only screen and (max-width : 767px) { 
  .p-text-01 .mtitle,
  .rowmedia-01 .mtitle,
  .rowaccordion-01 .mtitle,
  .qslider-01 .mtitle,
  .rowmedia-02 .mtitle,
  .cardsflex-01 .mntitle,
  .cardsflex-01 .mtext,
  .single-teams .title-wrap,
  .gcpt-02 .dinfo,
  .ajaxc-01 .maintitle,
  .ajaxc-01 .mtext {
    margin-bottom: 30px;
  }
  .p-text-01 .col-info,
  .rowmedia-02 .col-md-6.cc {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  .heroopt-01 .wrap {
    min-height: 250px;
  }
  .heroopt-01 .overlay.color2 {
    height: 200px;
  }
  .rowmedia-01 .dinfo,
  .rowaccordion-01 .dinfo, 
  .rowaccordion-01 .acc-content,
  .rowmedia-02 .dinfo {
    max-width: 100% !important;
  }
  .rowmedia-01 .img-wrapper {
    text-align: left !important;
  }
  .fire-element.design-2 .abt-bg {
    right: 0;
  }
  .cardsflex-01 .flexic {
    flex-direction: column;
    gap: 30px;
    align-items: center;
  }
  .cardsflex-01 .flex-item {
    flex: 0 0 100%;
    max-width: 370px;
    width: 100%;
    margin: auto;
  }
  .cardsflex-01 .mtext ul {
    column-count: 2;
    column-gap: 30px;
    margin-bottom: 30px;
  }
  .cardsflex-01 .div-link .pad,
  .heroslider-01 .btn-wrap {
    bottom: 30px;
  }
  .cardsflex-01 .div-link .ititle {
    margin-bottom: 20px;
  }
  .cardsflex-01 .div-link .overlay.color {
    height: 205px;
  }
  .gcpt-01 .read-txt {
    opacity: 1;
  }
  .gcpt-01 .row {
    row-gap: 30px;
  }
  .gcpt-02 .grid {
    grid-template-rows: 1fr;
    grid-template-columns: 1fr;
  }
  .gcpt-02 .grid .grid-item {
    grid-area: unset !important;
  }
  .gcpt-02 .grid .grid-item .view-txt {
    font-size: 12px;
    margin-top: 5px;
  }
  .gcpt-02 .grid .grid-item:hover .text-wrap {
    bottom: 50px;
  }
  .gcpt-02 .grid .grid-item .ititle {
    font-size: var(--h3);
    margin-bottom: 0;
  }
  .gcpt-02 .grid .grid-item .address {
    font-size: 13px;
  }
  .gcpt-02 .grid .grid-item .text-wrap {
    bottom: 0;
    left: 20px;
    right: 20px;
  }
  .gcpt-02 .grid-item.item-0:hover .view-txt {
    margin-top: 15px !important;
  }
  .ajaxc-01 .ajx_btn {
    margin-top: 30px !important;
  }
  .proj-wrap .slider-btns {
    bottom: -60px;
    right: unset;
    left: 50%;
    transform: translateX(-50%);
  }
	.cardsflex-01 .mntitle, 
	.cardsflex-01 .mtext *,
	.ajaxc-01 .maintitle,
	.ajaxc-01 .mtext * {
		text-align: left !important;
	}
	.cardsflex-01 .container-xl:before {
		content: unset;
	}
}
@media only screen and (max-width : 600px) { 
  .qslider-01 .owlbtn {
    top: 20%;
  }
}
@media only screen and (max-width : 480px) { 
  .rowmedia-02 .dtext ul,
  .cardsflex-01 .mtext ul {
    column-count: 1;
  }
  .rowmedia-02 .dtext ul li,
  .cardsflex-01 .mtext ul li {
    max-width: 100%;
  }
}
/* #endregion */