/* ******************************************************* */
/*                                                         */
/*             This file should not be changed.            */
/*    If changes are required - override in styles.css     */
/*                                                         */
/* ******************************************************* */

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}
/* #page-wrap initial variables */
#page-wrap {
  /* initlally set height at zero */
  --d-user-account-menu-height: 0rem;
  --d-navigation-height: 0rem;
}
/* #page-wrap variables if header used, navigation full-width, or both */
#page-wrap {
  --d-heading-height-total: calc((var(--d-heading-padding-tb) * 2) + var(--d-logo-height) + var(--d-user-account-menu-height));
}
#page-wrap.header-top-used {
  /* Set value if #block-useraccountmenu exists */
  --d-user-account-menu-height: calc((var(--d-user-account-menu-padding-tb) * 2) + var(--d-user-account-menu-font-size));
}
#page-wrap.navigation-full-width {
  /* Set value if navigation is full width (navigation doesn't use any vertical height on mobile or tablet) */
  --d-navigation-height: 0rem;
}
/* Body */
body {
  background-color: var(--d-body-bg); /* Colour of area below footer - should be the same as #footer-bottom-wrap */
}
/* Common Settings */
#header,
#slideshow-wrap,
#page-content-main,
#breadcrumb-wrap,
#footer-wrap {
  width:100%;
  margin:0;
  padding:0;
}
/* Main Page Content */
#page-wrap {
  padding-top: calc(var(--d-toolbar-height) + var(--d-toolbar-tray-height));
}
#page-content-main,
.page-content { /* Main content container to edge of screen */
  background-color: var(--d-page-content-bg);
  position:relative;
}
#page-content-main .col1 {
  min-height: 50rem;
}
/* Page margins */
/*.onecol.page-content,
.twocol-sideleft.page-content .content-top-full,
.twocol-sideleft.page-content .col1,
.twocol-sideleft.page-content .col2,
.twocol-sideright.page-content .content-top-full,
.twocol-sideright.page-content .col1,
.twocol-sideright.page-content .col2,*/
.content-top-full,
.col-wrap:not(.ctf) .col2-top,
.col-wrap:not(.ctf):not(.c2t) .col1 {
  padding-top: var(--page-margin);
}
.col-wrap:not(.c2fs) .col1,
.col2 {
  padding-bottom: calc(var(--page-margin) - var(--d-margin-bottom-base)); /* padding-top minus the bottom padding of all block items */
}
/*.no-top-bottom-margin .onecol.page-content,
.no-top-bottom-margin .twocol-sideleft.page-content .content-top-full,
.no-top-bottom-margin .twocol-sideright.page-content .content-top-full,
.no-top-bottom-margin .twocol-sideleft.page-content .col-wrap:not(.content-top-full-used) .col1,
.no-top-bottom-margin .twocol-sideright.page-content .col-wrap:not(.content-top-full-used) .col1,
.no-top-margin .onecol.page-content,
.no-top-margin .twocol-sideleft.page-content .content-top-full,
.no-top-margin .twocol-sideright.page-content .content-top-full,
.no-top-margin .twocol-sideleft.page-content .col-wrap:not(.content-top-full-used) .col1,
.no-top-margin .twocol-sideright.page-content .col-wrap:not(.content-top-full-used) .col1*/
.no-top-margin .content-top-full,
.no-top-margin .col-wrap:not(.ctf) .col2-top,
.no-top-margin .col-wrap:not(.ctf):not(.c2t) .col1,
.no-top-bottom-margin .content-top-full,
.no-top-bottom-margin .col-wrap:not(.ctf) .col2-top,
.no-top-bottom-margin .col-wrap:not(.ctf):not(.c2t) .col1 {
  padding-top: 0;
}
/*.no-top-bottom-margin .onecol.page-content,
.no-top-bottom-margin .twocol-sideleft.page-content .col1,
.no-top-bottom-margin .twocol-sideright.page-content .col1,
.no-bottom-margin .onecol.page-content,
.no-bottom-margin .twocol-sideleft.page-content .col1,
.no-bottom-margin .twocol-sideright.page-content .col1*/
.no-top-bottom-margin .col-wrap:not(.c2fs) .col1,
.no-top-bottom-margin .col2,
.no-bottom-margin .col-wrap:not(.c2fs) .col1,
.no-bottom-margin .col2 {
  padding-bottom: 0;
}
/* Page Column Settings  */
.col-wrap {
  width:100%;
  display: grid;
}
.onecol .col-wrap,
.twocol-sideleft .col-wrap,
.twocol-sideright .col-wrap {
  grid-template-columns: 100%;
}

.twocol-sideright .col1,
.twocol-sideleft .col1 { /* Main Content */
  order: 2;
}
.twocol-sideright .col2-top,
.twocol-sideleft .col2-top { /* Sidebar Content above Main Content */
  order: 1;
}
.twocol-sideright .col2,
.twocol-sideleft .col2 { /* Sidebar Content */
  order: 3;
}
/* Column colours */
.col1 { /* Main Content */
  background-color:var(--d-page-col1-bg); /* Main Content background colour */
}
.col2,
.col2-top { /* Sidebar */
  background-color:var(--d-page-col2-bg); /* Sidebar background colour */
}

/* ---- RESPONSIVE ADJUSTMENTS ---- */
@media all and (min-width: 768px), print {
  /* TABLET - Non-Retina - (768px-1024px) */

  /* Reset from Mobile */
  .twocol-sideright .col1,
  .twocol-sideleft .col1 { /* Main Content */
    order: 1;
  }
  .twocol-sideright .col2-top,
  .twocol-sideleft .col2-top { /* Sidebar Content above Main Content */
    order: 2;
  }
  .twocol-sideright .col2,
  .twocol-sideleft .col2 { /* Sidebar Content  */
    order: 3;
  }
  /* Page Column Settings */
  .twocol-sideright .col-wrap.c2t.c2fs,
  .twocol-sideleft .col-wrap.c2t.c2fs {
    /*display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-content: stretch;*/
    grid-template-rows: auto 1fr;
  }
  .twocol-sideleft .col-wrap {
    /*flex-direction: row-reverse;*/
    grid-template-columns: 34% 66%;
  }
  .twocol-sideright .col-wrap {
    grid-template-columns: 66% 34%;
  }
  .twocol-sideleft .col-wrap .col1 {
    grid-column-start: 2;
  }
  .twocol-sideright .col-wrap.c2t.c2fs .col1,/* only if Col2-top and Col2 are populated */
  .twocol-sideleft .col-wrap.c2t.c2fs .col1 {/* only if Col2-top and Col2 are populated */
    /*flex: 0 1 66%;
    max-width: 66%;
    align-self: auto;*/
    grid-row: span 2 / span 2;
  }
  /*.twocol-sideright .col-wrap .col2,
  .twocol-sideleft .col-wrap .col2 {
    flex: 0 1 34%;
    max-width: 34%;
    align-self: auto;
  }*/
  .twocol-sideleft .col-wrap .col2-top {
    grid-column-start: 1;
    grid-row-start: 1;
  }
  /* Page margins */
  .col-wrap:not(.ctf) .col1,
  .col-wrap:not(.ctf):not(.c2t) .col2 {
    padding-top: var(--page-margin) !important;
  }
  .col1,
  .col-wrap:not(.c2fs) .col2-top,
  .col2 {
    padding-bottom: calc(var(--page-margin) - var(--d-margin-bottom-base)) !important; /* padding-top minus the bottom padding of all block items */
  }
  .no-top-margin .col-wrap:not(.ctf) .col1,
  .no-top-bottom-margin .col-wrap:not(.ctf) .col1,
  .no-top-margin .col-wrap:not(.ctf):not(.c2t) .col2,
  .no-top-bottom-margin .col-wrap:not(.ctf):not(.c2t) .col2 {
    padding-top: 0 !important;
  }
  .no-top-bottom-margin .col1,
  .no-top-bottom-margin .col-wrap:not(.c2fs) .col2-top,
  .no-top-bottom-margin .col2,
  .no-bottom-margin .col1,
  .no-bottom-margin .col-wrap:not(.c2fs) .col2-top,
  .no-bottom-margin .col2 {
    padding-bottom: 0 !important;
  }

}
@media
only screen and (min-device-pixel-ratio: 2) and (min-width: 768px),
only screen and (min-resolution: 192dpi) and (min-width: 768px),
only screen and (min-resolution: 2dppx) and (min-width: 768px) {
  /* TABLET - Retina - (768px-1024px) */

}
@media all and (min-width: 1025px), print {
  /* DESKTOP SMALL - Non-Retina - (1025px-1280px) */

}
@media
only screen and (min-device-pixel-ratio: 2) and (min-width: 1025px),
only screen and (min-resolution: 192dpi) and (min-width: 1025px),
only screen and (min-resolution: 2dppx) and (min-width: 1025px) {
  /* DESKTOP SMALL - Retina - (1025px-1280px) */

}
@media all and (min-width: 1281px), print {
  /* DESKTOP - Non-Retina - (1281px-1920px) */

  /* Page Column Settings */
  /*.twocol-sideright .col-wrap .col1,
  .twocol-sideleft .col-wrap .col1 {
    flex-basis: calc(((100% - 1280px) / 2) + 845px);
    max-width: calc(((100% - 1280px) / 2) + 845px);
  }
  .twocol-sideright .col-wrap .col2,
  .twocol-sideleft .col-wrap .col2 {
    flex-basis: calc(((100% - 1280px) / 2) + 435px);
    max-width: calc(((100% - 1280px) / 2) + 435px);
  }*/
  .twocol-sideleft .col-wrap {
    grid-template-columns: calc(((100% - 1280px) / 2) + 435px) calc(((100% - 1280px) / 2) + 845px);
   }
   .twocol-sideright .col-wrap {
    grid-template-columns: calc(((100% - 1280px) / 2) + 845px) calc(((100% - 1280px) / 2) + 435px);
   }


}
@media
only screen and (min-device-pixel-ratio: 2) and (min-width: 1281px),
only screen and (min-resolution: 192dpi) and (min-width: 1281px),
only screen and (min-resolution: 2dppx) and (min-width: 1281px) {
  /* DESKTOP - Retina - (1281px-1920px) */

}
@media all and (min-width: 1921px), print {
  /* DESKTOP LARGE - Non-Retina - (1921px and larger) */

}
@media
only screen and (-webkit-min-device-pixel-ratio: 2) and (min-width: 1921px),
only screen and (min--moz-device-pixel-ratio: 2) and (min-width: 1921px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (min-width: 1921px),
only screen and (min-device-pixel-ratio: 2) and (min-width: 1921px),
only screen and (min-resolution: 192dpi) and (min-width: 1921px),
only screen and (min-resolution: 2dppx) and (min-width: 1921px) {
  /* DESKTOP LARGE - Retina - (1921px and larger) */

}
