/*
    * nswtf_join_form.css
    * Single combined stylesheet for the NSWTF join-form site.
    *
    * The Content Buddy alias/token block that used to live here now lives
    * solely in zz-02-cb-nswtf-theme.css (loads first, so these rules already
    * see it). This file is page/component rules only.
    */

/* general */
/* beats 10-UltraWaveResponsive.css, which loads after the theme */
.row {
  margin-left: 0;
  margin-right: 0;
}

html {
  font-size: var(--base-font-size);
}

body {
  max-width: 100vw;
  background-color: var(--body-bg);
  color: var(--body-fg);
  font-family: var(--default-font-family);
  font-size: var(--nswtf-font-size-base);
  overflow-x: hidden;
}

a {
  color: var(--brand-1-bg);
}

a,
input,
button {
  transition: var(--interactive-transition);
}

input,
button,
select,
textarea {
  font-family: var(--default-font-family);
}

a.backToTop {
  display: none;
}

h1,
.h1,
.PageTitle,
h2,
.h2,
.PanelTitle {
  color: var(--brand-2-bg);
  font-family: var(--title-font-family);
  font-weight: 700;
}

.panel-body,
.PanelBody,
.panel-heading.Distinguish,
.iMIS-WebPart>.ContentItemContainer,
.WebPartZone>.ContentItemContainer {
  margin: 0;
  padding: 0;
}

.panel,
.StandardPanel {
  border: none;
}

#masterHeaderBackground,
.header {
  border-bottom: none;
}

.inner,
.container,
.header-container,
.SliderPage1 {
  width: 100%;
  max-width: 1170px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
}

.OnBehalfOfContainer {
  display: none;
}

.mobileonly {
  display: none !important;
}

/* pseudo code layouts */
#masterContentArea.container {
  max-width: 100%;
  margin: 0;
  padding: 0;
}

.psc_layout {
  padding: 0;
}

.colthirds {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
}

.col-secondary {
  display: none;
}

/* imis styles */
h2,
.PanelTitle {
  font-size: 2em;
}

#masterMainBreadcrumb {
  display: none;
}

.footer-content .colthirds>div:last-child .socialnav {
  justify-content: flex-end;
  gap: 1em;
}

.footer-content .colthirds>div:last-child .socialnav a {
  font-size: var(--nswtf-font-size-lg);
  opacity: 0.5;
}

/* member portal */
.panelpage {
  font-size: var(--base-font-size);
}

.panelpage .psc_layout {
  padding: 3em 0;
}

.panelpage .colgrid {
  gap: var(--default-gap);
}

.panelpage .ContentItemContainer>.panel {
  margin-bottom: var(--default-gap);
  padding: var(--default-gap);
  background-color: var(--brand-1-fg);
  border-radius: var(--card-border-radius);
  box-shadow: var(--card-shadow);
  font-size: var(--nswtf-font-size-sm);
}

.panelpage .ContentItemContainer>.panel .panel-heading {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: solid 1px var(--brand-2-bg);
}

/* header */
#hd {
  position: relative;
  z-index: 1000;
  /* min-height: 0; */
  background-color: var(--header-bg);
  backdrop-filter: blur(5px);
}

.header-top-container {
  position: relative;
  inset: auto;
}

.header-top-container .header-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header-logo-container {
  float: none;
}

#masterHeaderImage {
  display: block;
  width: 8em;
  height: 4em;
  background-image: var(--logo-url);
  background-position: left center;
  background-size: contain;
  transition: var(--interactive-transition);
}

.navbar-header {
  float: none;
}

/* auxiliary navigation */
.nav-auxiliary {
  display: flex;
}

.auxiliary-navigation {
  display: flex;
  align-items: center;
  gap: 0.5em;
  margin: 0;
  padding: 0;
  list-style: none;
}

.auxiliary-navigation a {
  display: block;
  padding: 0.5rem;
  color: var(--secnav-fg);
  font-size: var(--secnav-font-size);
  font-weight: var(--secnav-font-weight);
  line-height: var(--secnav-line-height);
  text-decoration: none;
}


.auxiliary-navigation a:before {
  margin-right: 0.5em;
  color: var(--secnav-icon-colour);
  font-family: "Font Awesome 5 Free";
  font-size: var(--secnav-icon-size);
  font-weight: 900;
  transition: var(--interactive-transition);
}

.auxiliary-navigation .signin a:before {
  content: '\f2f6';
}

.auxiliary-navigation .account a:before {
  content: '\f007';
}

.auxiliary-navigation .searchcntr {
  display: flex;
  align-items: center;
  width: 2.2em;
  margin-left: 1em;
  padding: var(--search-padding);
  border: solid 1px transparent;
  border-radius: var(--search-border-radius);
  box-shadow: none;
  overflow: hidden;
  transition: var(--interactive-transition);
}


.auxiliary-navigation .mobilenavtrigger {}

.auxiliary-navigation .mobilenavtrigger a {
  position: relative;
  display: block;
  min-height: 1em;
  margin-left: 1em;
  padding: 0;
}


.auxiliary-navigation .mobilenavtrigger a>span {
  display: block;
  width: 1.75em;
  height: 4px;
  margin-bottom: 3px;
  background-color: var(--secnav-icon-colour);
  pointer-events: none;
  transition: all 0.3s;
}

.header-bottom-container {
  position: relative;
  inset: auto;
  background-color: var(--nav-bg);
  box-shadow: var(--nav-shadow);
}

/* change full-width background colour here */
/* default nav style */
#hd .psc-navigation {
  display: flex;
  align-items: center;
  justify-content: stretch;
  flex-wrap: wrap;
}

#hd .psc-navigation-container ul {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

#hd .psc-navigation>li {
  flex: 1;
}

#hd .psc-navigation a {
  display: block;
  padding: 0.75em 1.2em;
  background-color: transparent;
  color: var(--nav-fg);
  text-decoration: none;
}

#hd .psc-navigation>li>a {
  font-size: var(--nswtf-font-size-sm);
  line-height: 1.4em;
  text-align: center;
}


#hd .psc-navigation li {
  display: block;
}

/* style2 */
#hd.style2 {
  transition: var(--interactive-transition);
}

#hd.style2 .header-top-container .header-container {
  display: grid;
  grid-template-columns: 1fr 4fr;
  gap: 2em;
}

#hd.style2 .nav-auxiliary {
  flex-direction: column;
  align-items: flex-end;
}

#hd.style2 .auxiliary-navigation {
  padding-top: 1em;
  transition: var(--interactive-transition);
}

#hd.style2 .psc-navigation-container {
  margin: 1em 0;
  transition: var(--interactive-transition);
}

#hd.style2 .psc-navigation {
  justify-content: flex-end;
}

#hd.style2 .psc-navigation a {
  padding: 0.4em 1em;
}

#hd.style2 .psc-navigation>li {
  flex: unset;
}

#hd.style2 .psc-navigation>li>a {
  line-height: 1.2em;
  white-space: nowrap;
}

/* sticky header */
body.hasscrollindicator #hd {
  position: sticky;
  top: 0;
  z-index: 10000;
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.3);
}

/* cancels zz-03's fixed-header padding-top until zz-03 is retired */
body.hasscrollindicator,
body.hasscrollindicator.eventpage {
  padding-top: 0;
}

/* footer */
#ft {
  background-color: var(--footer-bg);
  color: var(--footer-fg);
}

#ft .psc_layout {
  padding: 0;
}

#ft .inner {
  padding-left: 0;
  padding-right: 0;
}

#ft h5 {
  margin-bottom: 1em;
  color: var(--footer-social-fg);
  font-family: var(--title-font-family);
  text-align: center;
}

#ft .colthirds {
  gap: 3em;
}

#ft .colthirds h5 {
  padding-bottom: 1em;
  border-bottom: solid 1px rgba(255, 255, 255, 0.3);
  font-size: var(--nswtf-font-size-2xl);
  text-align: left;
}

#ft .colthirds>div:nth-child(3) {
  align-self: flex-end;
}

#footerlogo {
  display: block;
  margin: 2em 0;
  padding: 0 0 2em;
  background-image: var(--logo-url);
  background-position: right top;
  background-repeat: no-repeat;
  background-size: contain;
  filter: brightness(0) invert(1);
  opacity: 0.5;
}

.footer .footer-social {
  position: relative;
  z-index: 100;
  width: 100%;
  box-shadow: var(--footer-social-shadow);
}

.footer-social {
  padding: 0em 0;
  background: var(--footer-social-bg);
  color: var(--footer-social-fg);
}

.socialnav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2em;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--nswtf-font-size-2xl);
}

.socialnav a {
  display: block;
  color: var(--footer-social-fg);
  font-size: var(--nswtf-font-size-2xl);
  text-decoration: none;
}

.footer-content {
  position: relative;
  padding: 4em 0;
  background: var(--footer-content-background);
  background-attachment: fixed;
  background-size: cover;
  color: var(--footer-content-colour);
  text-align: left;
}

.footer-content:before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: var(--footer-content-background-overlay);
  backdrop-filter: blur(4px);
}

.footer-content .container {
  position: relative;
  z-index: 10;
}

.footer-content .psc-navigation {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.5em;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-content .psc-navigation li {
  border: none;
}

.footer-content .psc-navigation a {
  display: block;
  background-color: transparent;
  color: var(--footer-fg);
  font-size: var(--footer-font-size);
  line-height: 1.2em;
  text-decoration: none;
}

.footer-content .contact {
  padding: 0;
}

.footer-content .contact ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-content .contact ul li {
  display: flex;
  align-items: flex-start;
  gap: 1.5em;
  margin-bottom: 1.5em;
}

.footer-content .contact ul li p {
  margin-top: -0.25em;
  font-size: var(--footer-font-size);
  line-height: 1.4em;
  text-align: left;
}

.footer-content .contact ul li a {
  display: flex;
  align-items: center;
  gap: 1.5em;
  background-color: transparent;
  color: var(--footer-fg);
  font-size: var(--footer-font-size);
  line-height: 1.2em;
  text-decoration: none;
}

.footer-acknowledgement {
  padding: 2em 0;
  background: var(--footer-acknowledgement-bg);
  color: var(--footer-acknowledgement-fg);
}

.countryacknowledgement {
  max-width: 100%;
  margin: 0 auto;
}

.footer-nav-copyright {
  display: block;
  margin-top: 1em;
  background-color: var(--footer-bg);
  color: var(--footer-fg);
}

.footer-nav-copyright .footer-copyright {
  float: none;
  display: block;
  font-size: 0.7em;
  text-align: left;
}

@media(max-width: 1025px) {
  :root {
    --base-font-size: var(--mobile-font-size);
    --secnav-icon-size: 1.5em;
  }
}

@media(max-width: 769px) {
  .mobileonly {
    display: block !important;
  }

  .colgrid {
    grid-template-columns: 1fr !important;
  }

  .header-top-container .header-container {
    flex-direction: column;
    margin-bottom: 1em;
  }

  #masterHeaderImage {
    background-position: center;
  }

  .auxiliary-navigation {
    gap: 1em;
  }

  .auxiliary-navigation a span {
    display: none;
  }

  .auxiliary-navigation .searchcntr {
    margin-left: 0;
    border: none;
  }

  #hd #psc-primary-nav {
    margin: 0;
    max-height: 0px;
    transition: var(--interactive-transition);
    overflow: hidden;
  }


  #hd .psc-navigation {
    flex-direction: column;
  }

  #hd .psc-navigation>li {
    width: 100%;
  }

  #hd .psc-navigation>li>a {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  #hd.style2 .header-top-container .header-container {
    display: flex;
    align-items: center;
    gap: 0;
  }

  #hd.style2 .nav-auxiliary {
    align-items: stretch;
    width: 100%;
  }

  #hd.style2 .auxiliary-navigation {
    justify-content: center;
  }

  #hd.style2 .psc-navigation a {
    padding: 0.75em 1em;
  }

  #footerlogo {
    background-position: center;
  }

  #ft .colthirds h5 {
    text-align: center;
  }

  .footer-content {
    text-align: center;
  }

  .footer-content .psc-navigation {
    align-items: center;
  }

  .footer-content .contact ul li {
    justify-content: center;
  }

  .footer-content .colthirds>div:last-child .socialnav {
    justify-content: center;
  }


  .footer-nav-copyright .footer-copyright {
    text-align: center;
  }

}

/* ==========================================================================
    Join-form specific styles (folded in from customised_joinform.css).
    These come after the portal rules so they win on shared selectors.
    ========================================================================== */
/* --- global --- */
h2 {
  color: var(--brand-1-bg);
}

#masterHeaderImage {
  width: 13em;
  height: 5em;
}


/* back to main portal button */
#hd #psc-primary-nav .nav-aux-member-home::before {
  content: "\f060";
  /* fa-arrow-left */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-right: 0.4em;
}

#hd #psc-primary-nav .nav-aux-member-home {
  display: inline-block;
  background-color: var(--nav-active-bg);
  /* yellow -- stands out from blue header */
  color: var(--nswtf-color-sys-text);
  /* dark text for contrast on yellow, was #333333 */
  padding: 0.3em 0.9em;
  border-radius: 3px;
  font-weight: 600;
  font-size: var(--nswtf-font-size-sm);
  text-decoration: none;
  white-space: nowrap;
}

.panelpage .ContentItemContainer>.panel .panel-heading {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: solid 0px var(--brand-2-bg) !important;
}

li.search>div.searchcntr {
  display: none;
}