/* header offset for Wordpress admin bar - See @media (min-width:783px) also  */
.admin-bar.sticky-header header.header,
.admin-bar.not-sticky-header header.header.has-banner.transparent-header { top:46px; }

body.noscroll { overflow: hidden; }

header.header { position:relative; top:0; left:0; width:100%; transition:background-color 500ms, padding 500ms; z-index:100; }

/* Header Positioning */
/* sticky with banner & not transparent or no banner */
.sticky-header header.header { position:sticky; }
/* sticky & transparent */
.sticky-header header.header.has-banner.transparent-header,
/* .stick-header applied when mobile menu open */
.not-sticky-header.sticky-header header.header.has-banner { position:fixed; }
/* not sticky & transparent */
.not-sticky-header header.header.has-banner.transparent-header { position:absolute; }

/* Header Background Colour */
/* .fixed applied on scroll will override the transparency */
header.transparent-header:not(.fixed),
header.transparent-header.mobile-menu-open { background-color:transparent; }

/* Top Header */

.header .top-banner { padding:0.313rem 0; background-color: hsla(var(--black),0.5); }
.header .top-banner .wrapper > div.do-flex { justify-content:space-between; align-items:center; gap:0.625rem; }
.header .top-banner .left > div.do-flex { justify-content:flex-start; align-items:center; gap:0.625rem; }
.header .top-banner small { display:inline-block; padding:0.1em 0.5em; border-radius:0.188rem; background-color:hsl(var(--first)); color:hsl(var(--white)); }
.header .top-banner a { text-decoration:none; color:hsl(var(--white)); }

.header .top-banner br,
.header .top-banner .mobile-hide { display:none; }

.header .top-banner .left,
.header .top-banner .right { display:flex; gap:var(--gap); }

.header .top-banner .left .social { display: flex; gap:1.25rem; }

.header .top-banner .right { font-size:0.875em; }
.header .top-banner .right .do-flex { align-items:center; }
.header .top-banner .right .icon { font-size:1.2em; color:hsl(var(--white)); flex:0 1 auto; min-width:20px; text-align:center; margin-right:5px; }
.header .top-banner .right p { flex:0 1 auto; }

/* Inner Header */

.inner-header { padding:var(--gutter) 0; transition:padding 500ms; }
.inner-header .wrapper > .do-flex { justify-content:space-between; /* align-items:center; */ gap: 2rem; /* transition:padding 300ms; */ }

/* Logo */

.header .logo { flex:0 1 auto; transition:transform 500ms; transform: scale(1); transform-origin: center left; }
.header.fixed .logo { transform: scale(0.7); }
.header .logo img { position:relative; z-index:2; }
.header .logo a { transition: filter 1000ms; }
/* Filter black and white */
.header .logo.dark-logo a { filter:brightness(0); }
.header .logo.light-logo a { filter:brightness(0) invert(1); }
/* Swap logo filter on scroll with fixed header */
.header.fixed:not(.mobile-menu-open):not(.no-banner) .logo.dark-logo.invert-logo a { filter:brightness(0) invert(1); }
.header.fixed:not(.mobile-menu-open):not(.no-banner) .logo.light-logo.invert-logo a { filter:brightness(0); }
/* Remove filter on scroll with fixed header */
.header.fixed:not(.mobile-menu-open):not(.no-banner) .logo.dark-logo.true-logo a,
.header.fixed:not(.mobile-menu-open):not(.no-banner) .logo.light-logo.true-logo a { filter:none; }
/* Add filter on scroll with fixed header */
.header.fixed:not(.mobile-menu-open):not(.no-banner) .logo.filter-dark a { filter:brightness(0); }
.header.fixed:not(.mobile-menu-open):not(.no-banner) .logo.filter-light a { filter:brightness(0) invert(1); }



/* Anchor Offsets for fixed and absolute Header  */
.anchor-offset { position:relative; display:block; }
.sticky-header .anchor-offset { /*top:-117px;*/ }
.not-sticky-header .anchor-offset { /*top:-30px;*/ }


/*** FOOTER **/

.sticky-footer { position:sticky; top:100vh;  }

.footer-wrapper {  }

.footer { position:relative; z-index:2; }
.footer .col-1-2 { flex-wrap:wrap; }
.footer .do-flex { justify-content:center; text-align:center; }

.footer .logos-wrapper {  }
.footer .footer-logo { /*min-width:100%; flex:0 1 auto; filter:brightness(0)invert(1); margin:0 auto; display:flex; flex-direction:column; gap:1.25rem; */}
.footer .footer-logo img.logo { display:inline-block; margin-bottom: 2rem; }

.footer .col { text-align:center; }
.footer .col p { margin-bottom:0.5em; }
.footer .col p.h-5 { margin-block:2em; }

.footer-contacts .has-icon {
  .icon { flex:0 1 auto; min-width:1.125em; text-align:center; margin-right:0.5em; 
    svg path { fill:hsl(var(--white)); }
  }
  p { flex:1 1 auto; 
    a { text-decoration:none; color:hsl(var(--white)); transition:color 300ms; 
      &:hover { color:hsl(var(--white)); }
    }
  }
}

.footer-blog { 
  a { display: block; text-decoration: none; color: hsl(var(--grey-light)); margin-bottom: 1em; 
    small { display: block; }
  }
}

.footer-contacts .address p { line-height:1.75em; }

.footer-contacts .social { margin-bottom:1em; }
.footer-contacts .social span { display:inline-block; font-size:1.25rem; width:1em; margin-right:0.75em; text-align:center; }
.footer-contacts .social span a { text-decoration:none; color:hsl(var(--white)); }

.footer-menu ul { overflow:visible; padding-left:0; }
.footer-menu ul li { list-style-type:none;  margin:0 0 0.75em; padding:0; }
.footer-menu ul li a { display:block; color:hsl(var(--grey-light)); }

.footer .footer-contacts > .has-icon { justify-content:center; }
.footer-contacts .has-icon .icon { margin-right:5px; }
.footer-contacts .has-icon p { flex:0 1 auto; margin-bottom:1.375rem; }
.footer-contacts .larger-txt { font-size:var(--h6) !important; }

img.icon {  width:80px; }

.footer-logos { display:flex;  gap:var(--gutter); justify-content:center; }
.footer-logos > * { display:flex; height:100px; }
.footer-logos img { object-fit:contain; }

footer.footer > p { padding-block:var(--gutter); text-align:center; }

.sub-footer { font-size:0.875rem; padding:var(--gutter) 0; color:hsl(var(--white)); }
.sub-footer .wrapper { z-index:2; }
.sub-footer .do-flex { flex-wrap:nowrap; align-items:center; flex-direction:column; gap:var(--gutter); }
.sub-footer a { text-decoration:none; color:hsl(var(--white)); }
.sub-footer nav ul { display:flex; justify-content:center; flex-wrap:wrap; gap:var(--gutter); list-style-type:none; margin:0; padding:0; }
.sub-footer nav ul li {  }

.sub-footer .social {
  span { padding:0.5em; background-color: hsla(var(--grey-mid),0.5); border-radius:2px; }
  svg path { fill: hsl(var(--grey-light)); }
}


@media (max-width:499px) {

  .header .wrapper { padding-inline:0.625rem; }

}

@media (min-width:380px) {

  .sticky-header .anchor-offset { top:-112px; }

}

@media (min-width:500px) {

  /*.header .logo { width:60%; min-width:240px; }*/

  .footer-contacts .more-button { padding:1em 2em; }

}

@media (min-width:600px) {

  .footer .col-1-2 > *:nth-of-type(even) { width:100%; }

}

@media (min-width:700px) {

  .header .top-banner .mobile-hide { display:inline-block; }

}

@media (min-width:769px) {


  .footer .do-flex,
  .footer .col-3 { justify-content:flex-start; text-align:unset;  }
  .footer .col-3 > div.col { width:calc(33.33% - var(--gap)/1.5); }

  .footer .footer-logo { /*flex-direction:row; align-items:center;*/ }
  .footer .footer-logo img.logo { /*flex:1 1 auto; width:240px;*/ }

  .footer .buttons-wrapper .do-flex { flex-direction:column; align-items:flex-start; }
  .footer .footer-contacts > .do-flex { justify-content:initial; }
  
  .footer-menu ul { column-count:2; text-align: left; }
  .footer-menu ul li { display:inherit; position:relative; list-style-type:none; margin-left:0; }
  .footer-menu ul li a { display:inherit; padding:0; }

}

@media (min-width:783px) {

  .admin-bar.sticky-header header.header,
	.admin-bar.not-sticky-header header.header.has-banner.transparent-header { top:32px; }

}


@media (min-width:960px) {

  /*.sticky-header .banner-wrapper,*/
  .sticky-header div.no-banner { padding-top:12vw; }
  .sticky-header .anchor-offset { top:-12vw; }

  /* .inner-header .wrapper > .do-flex { padding:0.625rem 0; } */

 /* .header .logo { min-width:unset; width:31%; max-width:inherit; }*/

  .header.fixed { /* background-color:hsla(var(--black),0.7);*/ box-shadow:0 3px 10px 0 hsla(var(--black),0.1);  }
  .header.fixed .inner-header { padding: calc(var(--gutter) / 2) 0; }


}

@media (min-width:1000px) { 

  .footer .col { text-align: unset; }
  .footer-logos { justify-content:flex-start; }
  .footer-logos > * { flex:1;  }
  .footer-logos img { object-position:left center; }

  .footer-lines { padding-left:var(--gap); border-left: 1px solid hsla(var(--white),0.5); border-right: 1px solid hsla(var(--white),0.5); }

  .footer-blog { padding-left: 5%; }

  footer.footer > p { text-align:left; }
  .footer .footer-contacts > .has-icon { justify-content:unset; }

  .sub-footer .do-flex { flex-direction: row; justify-content: space-between; }

  .sub-footer nav ul { justify-content:flex-start; }
  .sub-footer nav ul li:last-of-type { margin-left:auto; }

}

@media (min-width:1100px) { 

  .footer .footer-logo { /*flex-direction: column; align-items: flex-start;*/ }
  
  .footer .col-1-2 { flex-wrap:nowrap; }
  .footer .col-1-2 > *:nth-of-type(odd) { min-width:33.33%; }
  .footer .col-1-2 > *:nth-of-type(even) {  }
   


}

@media (min-width:1170px) { 

  
  .header .logo img { width:100%; }

  .footer .col-5 > div:nth-of-type(1), 
  .footer .col-5 > div:nth-of-type(2) { width:calc(20% - var(--gap)/1.25); text-align:unset; }

  .footer .col-5 > div:nth-of-type(2) > .do-flex { justify-content:initial; }


}
