:root {
  --padding:2rem; /*32*/
  --gap:1.5rem; /*24*/
  --gutter:1rem; /*16*/
  --radius:0.5rem; /*8*/
  /* --radius:0;  */
}


.wrapper { padding-left:var(--gutter); padding-right:var(--gutter); position:relative; z-index:2; }
.wrapper.to-edge { padding-left:0; padding-right:0; }

/*** LAYOUTS ***/

.col-1, .col-2, .col-2-1, .col-1-2, .col-1-3, .col-3, .col-4, .col-5, .col-6 { display:flex; flex-direction:column; justify-content:center; gap:var(--gap); }
.gallery { display:flex; flex-wrap:wrap; gap:var(--gap); }
.do-flex { display:flex; flex-wrap:wrap; }

/* .col-1 { flex-direction:unset; } */

.col-1 > *,
.col-2-1 > *:nth-of-type(n),
.col-1-2 > *:nth-of-type(n),
.col-1-3 > *:nth-of-type(n),
.col-2 > *,
.col-3 > *,
.col-4 > *,
.col-5 > *,
.col-6 > *,
.gallery-columns-2 > *,
.gallery-columns-3 > *,
.gallery-columns-4 > *,
.gallery-columns-5 > *,
.gallery-columns-6 > * { width:100%; position:relative; }

.gallery-caption { display:none; }

.block .col-1 > *,
.col > *:last-child { margin-bottom:0; }

.content > div.nogap { gap:0; }
.nogap > * { /*flex:1 1 auto; min-width:300px;*/ }

/** Set minimum display of 2 columns  **/
.min-col-2 { flex-direction:row; flex-wrap:wrap; }
.min-col-2 > * { flex:1 1 auto; max-width:calc(50% - var(--gap)/2); }
.min-col-2.nogap > * { flex:initial; max-width:50%; }
 
.gallery > br,
.gallery > p { display:none; }
.gallery figcaption { font-size:1.3rem; padding:0.5em 0.25em 0; }

.nowrap { flex-wrap:nowrap; }

/* vertical center in flex container, flex-direction:column **/
.v-center { justify-content:center; }

.grid-lines { gap:1px !important; }
.grid-lines > .col { padding:var(--gap) var(--gutter); background-color:hsla(var(--black),0.2); font-size:0.813rem; }
.grid-lines > .col p { line-height:1.25em; }

/*** IMAGES ***/

section .bg-image { display:flex; overflow:hidden; /*opacity:0.4;*/ }
section .bg-image img { object-fit:cover; }

.content img.alignleft,
.content img.alignright,
.content img.aligncenter { float:none; margin:5px auto 10%; }

.object-fit { aspect-ratio:1/1; display:flex; overflow:hidden; }
.object-fit.square { aspect-ratio:1/1; }
.object-fit.thumbnail { aspect-ratio:2/1.5; }
.object-fit.banner { aspect-ratio:2/1; }
.object-fit.panoramic { aspect-ratio:3/1; }
.object-fit.portrait { aspect-ratio:2/3; }
.object-fit img { object-fit:cover; object-position:center center; }
.object-fit.cover img { object-fit:cover; }
.object-fit.contain img { object-fit:contain; }

/* Animated top boder on Grid Box <span class="border text-bg"><span class="second-bg"></span></span> */
span.border { position:absolute; width:100%; top:0; left:0; height:0.5rem; z-index:10; }
span.border span { position:absolute; width:0; }

span.icon svg { width:1em; }


/*** TABLES ***/

.table-overflow { overflow-x:scroll; }

table.cookie-table { width:100%; }
.cookie-table { background:hsl(var(--white)); border-collapse:separate; border-spacing:1px; text-align:center; margin-bottom:30px; }
.cookie-table th { background:hsl(var(--second)); padding:0.5em 0.625em 0.375em; vertical-align:top; text-align:center; font-weight:bold; color:hsl(var(--white));  }
.cookie-table td { background:hsla(var(--grey-mid),0.1); padding:0.625em; text-align:center; vertical-align:middle;  }
.cookie-table th, .cookie-table td { line-height:1.5em; }
.cookie-table tr th:last-of-type, .cookie-table tr td:last-of-type { text-align:left; }

table.content-table { width:100%; }
.content-table { background:hsl(var(--white)); border-collapse:separate; border-spacing:1px; text-align:left; margin-bottom:30px; }
.content-table th { background:hsl(var(--first)); padding:0.5em 0.625em 0.375em; vertical-align:top; line-height:1.5em; font-weight:bold; color:hsl(var(--white));  }
.content-table td { background:hsla(var(--grey-mid),0.1); padding:0.625em; vertical-align:middle; line-height:1.5em; }

table.spec-table { width:100%; }
.spec-table { background:hsla(var(--first-light),0.5); border-collapse:separate; border-spacing:1px; text-align:left; margin-bottom:30px; }
.spec-table th { background:hsl(var(--first-light)); padding:0.5em 0.625em 0.375em; vertical-align:top; line-height:1.5em; font-weight:bold; color:hsl(var(--white));  }
.spec-table td { background:hsla(var(--white),1); padding:0.625em; vertical-align:middle; line-height:1.5em; }


/*** BORDERS ***/

.border-all { border-width:1px; border-style:solid; }
.border-top { border-top-width:1px; border-top-style:solid; }
.border-bottom { border-bottom-width:1px; border-bottom-style:solid; }
.border-block { border-top-width:1px; border-top-style:solid; border-bottom-width:1px; border-bottom-style:solid; }

.border-inline::before { content:''; position:absolute; height:100%; width:1px; border-left-width:1px; border-left-style:solid; }
.border-inline::after { content:''; position:absolute; height:100%; width:1px; border-right-width:1px; border-right-style:solid; }

.nogap .border-inline::before { left:-1px; }
.nogap .border-inline::after { right:-1px; }
.gap .border-inline::before { left:calc((var(--gap) / 2) * -1); }
.gap .border-inline::after { right:calc(((var(--gap) / 2) * -1) - 1px); }

/*** MISC ***/

.relative { position:relative; }

.absolute-top,
.absolute-bottom { position:absolute; width:100%; left:0; }
.absolute-top { top:-1px; }
.absolute-bottom { bottom:-1px; }

.line { clear:both; display:block; height:var(--gap); margin-bottom:var(--gap); border-bottom:2px solid hsla(var(--grey-mid),0.5); }

.overflow { overflow:hidden; }

.clear { clear:both; padding:2% 0; }

.fill { position:absolute; inset:0; z-index:1; }

.padding { padding-top:var(--padding); padding-bottom:var(--padding); }
.padding-top { padding-top:var(--padding); }
.padding-bottom { padding-bottom:var(--padding); }

.padding-small { padding-top:var(--gap); padding-bottom:var(--gap); }
.padding-small-top { padding-top:var(--gap); }
.padding-small-bottom { padding-bottom:var(--gap); }

.padding-2x { padding-top:calc(var(--padding) * 2); padding-bottom:calc(var(--padding) * 2); }
.padding-2x-top { padding-top:calc(var(--padding) * 2); }
.padding-2x-bottom { padding-bottom:calc(var(--padding) * 2); }

.padding-inline { padding-left:1rem; padding-right:1rem; }
.padding-inline-2x { padding-left:var(--gutter); padding-right:var(--gutter); }

.box-border { padding:2rem; border-radius:0.5rem; border:1px solid hsla(var(--black),0.3); }
.white-txt .box-border { border-color:hsla(var(--white),0.3); }

.no-margin { margin-bottom:0 !important; }

.rounded { border-radius:var(--radius); }
.rounded-large { border-radius:calc(var(--radius) * 2); }
.rounded-small { border-radius:calc(var(--radius) / 2); }
.rounded, .rounded-large, .rounded-small { overflow:hidden; }

@media (min-width:380px) {


}


@media (min-width:400px) {

  

}


@media (min-width:500px) {

  :root { --gutter:1.5rem; }

  .col-4,
  .col-5,
  .col-6,
  .gallery-columns-2,
  .gallery-columns-3,
  .gallery-columns-4,
  .gallery-columns-5,
  .gallery-columns-6 { flex-direction:row; flex-wrap:wrap; }
  .col-4 > *,
  .col-5 > *,
  .col-6 > *,
  .gallery-columns-2 > *,
  .gallery-columns-3 > *,
  .gallery-columns-4 > *,
  .gallery-columns-5 > *,
  .gallery-columns-6 > * {  width:calc(50% - var(--gap)/2); }
  .col-4.nogap > *:not(.slick-list),
  .col-5.nogap > *:not(.slick-list),
  .col-6.nogap > *:not(.slick-list) {  width:50%; }

  .content img.alignleft { float:left; margin:3px 3% 2% 0; width:auto; max-width:45%; }
  .content img.alignright { float:right; margin:3px 0 2% 3%; width:auto; max-width:45%; }
  .content img.aligncenter { display:block; margin:5px auto 3%; width:auto; }

}

@media (min-width:589px) {


}

@media (min-width:600px) {

  .col-2,
  .col-2-1,
  .col-1-2,
  .col-3,
  .gallery-columns-2,
  .gallery-columns-3 { flex-direction:row; }

  .col-2,
  .col-3,
  .gallery-columns-2,
  .gallery-columns-3 { flex-wrap:wrap; }

  .col-2-1 > *:nth-of-type(odd),
  .col-1-2 > *:nth-of-type(even) { width:calc(66.66% - var(--gap)/2); }
  .col-2-1 > *:nth-of-type(even),
  .col-1-2 > *:nth-of-type(odd) { width:calc(33.33% - var(--gap)/2); }

  .col-2 > *,
  .col-3 > *,
  .gallery-columns-2 > *,
  .gallery-columns-3 > * { width:calc(50% - var(--gap)/2); }
  .col-2.nogap > *:not(.slick-list),
  .col-3.nogap > *:not(.slick-list) {  width:50%; }

  /** Break earlier if noraml wrapper **/
  .normal :where(.col-5, .col-6) > * { width:calc(33.33% - var(--gap)/1.5); }
  .normal :where(.col-5.nogap, .col-6.nogap) > *:not(.slick-list) { width:33.33%; }

  /** Set 2 column minimum width. Stay at single column until 39rem = 778px **/
  div.col-2.min-width { flex-wrap:wrap; }
  div.col-2.min-width > * { min-width:100%; flex:1 1 auto; }


}

@media (min-width:700px) {

  .col-1-3 { flex-direction:row; }
  .col-1-3 > *:nth-of-type(even) { min-width:calc(75% - var(--gap)/2); }
  .col-1-3 > *:nth-of-type(odd) { width:calc(25% - var(--gap)/2); }

}

@media (min-width:769px) {

  

  .col-4 > *,
  .col-5 > *,
  .col-6 > *,
  .gallery-columns-3 > *,
  .gallery-columns-4 > * { width:calc(33.33% - var(--gap)/1.5); }
  .col-4.nogap > *:not(.slick-list),
  .col-5.nogap > *:not(.slick-list),
  .col-6.nogap > *:not(.slick-list) { width:33.33%; }

  .text-columns-2 { column-count:2; }
  .text-columns-3 { column-count:3; }
  .text-columns-4 { column-count:4; }
  .text-columns-2, .text-columns-3, .text-columns-4 { column-gap:var(--gap); }
  .text-columns-2 li, .text-columns-3 li, .text-columns-4 li { break-inside:avoid; }

  div.col-2.min-width > * { min-width:unset; }

  .box-hover { position:relative; transform:translateY(0); box-shadow:none; transition:transform 500ms, box-shadow 500ms; }
  .box-hover:not(.no-hover):hover { transform:translateY(-10px); box-shadow:0 15px 30px 0 hsla(var(--grey-mid),0.8); }
  .white-txt .box-hover:not(.no-hover):hover { box-shadow:0 15px 30px 0 hsla(var(--black),0.6); }

  span.border span { left:50%; transform:translateX(-50%); top:0; height:0.5rem; transition:width 600ms; }
  .box-hover:hover span.border span { width:100%; }

  .object-fit img.scale,
  .simplelightbox img.attachment-thumbnail { position:relative; transform:scale(1); opacity:1; transition:transform 700ms, opacity 700ms; }
  .col:hover .object-fit > img.scale,
  .gallery-item:hover .simplelightbox img.attachment-thumbnail { transform:scale(1.1); opacity:0.6; }

  .gallery-item .gallery-icon { background-color:hsl(var(--first)); overflow:hidden; }

}

@media (min-width:900px) { 

  

}

@media (min-width:960px) {

  .wrapper.narrow { max-width:960px; margin:0 auto; }

}

@media (min-width:1000px) { 

  :root { --padding:5rem; --gap:2.5rem; }

  .col-3 > * { width:calc(33.33% - var(--gap)/1.5); }
  .col-3.nogap > *:not(.slick-list) { width:33.33%; }

  .col-4 > *,
  .col-5 > *,
  .col-6 > *,
  .gallery-columns-4 > *,
  .gallery-columns-5 > *,
  .gallery-columns-6 > * { width:calc(25% - var(--gap)/1.3); }
  .col-4.nogap > *:not(.slick-list),
  .col-5.nogap > *:not(.slick-list),
  .col-6.nogap > *:not(.slick-list) { width:25%; min-width:unset; }


}

@media (min-width:1100px) { 

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

  .col-5 > *,
  .col-6 > *,
  .gallery-columns-5 > *,
  .gallery-columns-6 > * { width:calc(20% - var(--gap)/1.25); }
  .col-5.nogap > *:not(.slick-list),
  .col-6.nogap > *:not(.slick-list) { width:20%; }


}

@media (min-width:1240px) { 

  .wrapper { max-width:1240px; margin:0 auto; }
  .wrapper.wide { max-width:1640px; margin:0 auto; }
  .wrapper.full,
  .wrapper.to-edge { max-width:unset; }

  .col-6 > *,
  .gallery-columns-6 > * { width:calc(16.66% - var(--gap)/1.125); }
  .col-6.nogap > *:not(.slick-list) { width:16.66%; }

}
