body 
{
	margin: 0px 0px 0px 0px;
}

p 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-style: normal;
	line-height: 12px;
}

li 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-style: normal;
	line-height: 12px;
}

div 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-style: normal;
}

table 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-style: normal;
}

caption 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-style: normal;
}

th 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-style: normal;
}

td 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-style: normal;
}

a:link 
{
	font-family: Arial, Helvetica, sans-serif;
	font-style: normal;
	text-transform: none;
	text-decoration: underline;
}

a:visited 
{
	font-family: Arial, Helvetica, sans-serif;
	font-style: normal;
	text-transform: none;
	text-decoration: underline;
}

a:hover 
{
	font-family: Arial, Helvetica, sans-serif;
	font-style: normal;
	text-transform: none;
	text-decoration: underline;
}

h1 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: bold;
	text-transform: none;
	text-decoration: none;
	margin-bottom: 5px;
}

h2 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: bold;
	text-transform: none;
	text-decoration: none;
	margin-bottom: 5px;
}

h3 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: bold;
	text-transform: none;
	text-decoration: none;
	margin-bottom: 5px;
}

h4 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	font-weight: bold;
	text-transform: none;
	text-decoration: none;
	margin-bottom: 5px;
}

h5 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 8px;
	font-style: normal;
	font-weight: bold;
	text-transform: none;
	text-decoration: none;
	margin-bottom: 5px;
}

h6 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 6px;
	font-style: normal;
	font-weight: bold;
	text-transform: none;
	text-decoration: none;
	margin-bottom: 5px;
}

hr 
{
}

ul li 
{
	list-style-type: disc;
}

em, i 
{
	font-style: italic !important;
}

input[type="text"], input[type="email"], input[type="password"] 
{
    height: 20px;
}

select 
{
    height: 26px;
}

.MoSTTable 
{
}

.MoSTTable th 
{
	vertical-align: top;
}

.MoSTTable th, .MoSTTable th * 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	font-weight: bold;
	text-transform: capitalize;
	text-decoration: none;
	text-align: left;
}

.MoSTTable td 
{
	vertical-align: top;
}

.MoSTTable td, .MoSTTable td * 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	font-weight: normal;
	text-transform: none;
	text-decoration: none;
}

.MoSTTableAlt, .MoSTTableAlt td 
{
}

.MoSTTableAlt, .MoSTTableAlt *, .MoSTTableAlt td, .MoSTTableAlt td * 
{
}

.MoSTTableColumn, .MoSTTableColumn td 
{
}

.MoSTTableColumn, .MoSTTableColumn *, .MoSTTableColumn td, .MoSTTableColumn td * 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	font-weight: bold;
	text-transform: none;
	text-decoration: none;
}

.MoSTTable a:visited 
{
	font-style: normal;
	text-transform: none;
	text-decoration: underline;
}

.MoSTTable a:hover 
{
	font-style: normal;
	text-transform: none;
	text-decoration: underline;
}

.MoSTTable a:link 
{
	font-style: normal;
	text-transform: none;
	text-decoration: underline;
}

.MoSTImage 
{
	border-width: 0px;	
}

.MoSTRequiredField 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-weight: normal;
}

.MoSTTextField 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	border-style: solid;
	border-width: 1px;
}

.MoSTPasswordField 
{
	font-size: 10px;
	font-style: normal;
	border-style: solid;
	border-width: 1px;
}

.MoSTDropdownList 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: italic;
}

.MoSTButton 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	color: #000000 !important;
	background-color: #CCCCCC;
	border-color: #FFFFFF #666666 #666666 #FFFFFF;
	border-style: solid;
	border-width: 2px;
}

.MoSTTransparent 
{
	background-color: transparent;
	border: none;
}

.MoSTAbstract * 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	margin: 0;
}

.MoSTDocumentList 
{
	width: 100%;
	float: left;
}

.MoSTDocumentListRow 
{
	float: left;
	width: 100%;
}

.MoSTDocumentListCell1 
{
	float: left;
	margin: 1px;
}

.MoSTDocumentListCellFull 
{
	width: auto;
}

.MoSTDocumentList li 
{
	list-style-type: disc;
}

.MoSTDocumentListHeading 
{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-weight: normal;
}

.MoSTDocumentListHeading a:visited 
{
	font-family: Arial, Helvetica, sans-serif;
}

.MoSTDocumentListHeading a:hover 
{
	font-family: Arial, Helvetica, sans-serif;
}

.MoSTDocumentListHeading a:link 
{
	font-family: Arial, Helvetica, sans-serif;
}

.MoSTSearchIcon {
    float: left;
    width: 32px;
    height: 32px;
}

.MoSTSearchIconWord 
{
    background: url("/tools/icons/word.png") no-repeat;
}

.MoSTSearchIconPdf 
{
    background: url("/tools/icons/pdf.png") no-repeat;
}

.MoSTSearchIconUnknown 
{
    background: url("/tools/icons/unknown.png") no-repeat;
}

/* Form Layout */
.MoSTFormLayout {
    width: 100%;
    float: left;
}

.MoSTFormLayoutRow 
{
    width: 100%;
    float: left;
    text-align: right;
}

.MoSTFormLayoutCell1 
{
	float: left;
    text-align: left;
}

.MoSTFormLayoutCell2 
{
    display: inline-block;
    text-align: left;
}

.MoSTFormLayoutCellFull 
{
    text-align: left;
}

/* Event Pricing Layout */
.MoSTEventRegLinks 
{
    text-align: left;
}

.MoSTEventPrices
{
	width: 100%;
	float: left;
}

.MoSTEventPrices .MoSTFormLayoutCell3 
{
    display:inline-block;
    width: 100px;
}

.SubEvents 
{
    float: right;
}

/* Screen and Print Template Display */
.MoSTTemplate 
{
	display: block;
}

.MoSTPrint 
{
	display: none;	
}

/* User Defined Custom Styles */
:root {
  --theme-primary-color: #2E5979; /* Dark Blue */
  --theme-secondary-color: #4099B7; /* Light Blue */
  --theme-tertiary-color: #EB7B0D; /* Orange */
  --theme-dark-color: #053355; /* Dark Blue */
  --theme-light-color: #EFA818; /* Yellow */
  --outer-spacing: 150px; /* The gap for new sections/different backgrounds */
  --inner-spacing: 50px;  /* The gap between matching layouts */
}

/* General Styles --------------------------*/

html {
  scroll-behavior: smooth;
}

body {
  background-color:#F5F4F9;
  padding:0!important;
  margin:0!important;
}

#MoSTContent {
    margin: 70px auto 100px auto;
    max-width: 940px;
    width: 90%;
}

#MoSTContent:has(.full-width) {
    margin: 0;
    max-width: none;
    width: 100%;
}

#MoSTContent img, footer img {
  height: auto;
  max-width: 100%;
}

a {
  color: inherit!important;
  text-decoration: underline;
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
      font-family: inherit !important;
}

h1, h2, h3, h4, h5 {
  font-family: "Bebas Neue", sans-serif;
  margin-bottom:10px;
}

h1 {
  font-size: clamp(2.2rem, 8vw, 5.3rem) !important;
  color: var(--theme-primary-color);
}

h2 {
  font-size: clamp(2.1rem, 8vw, 5.2rem) !important;
  color: var(--theme-primary-color);
}

/*h3 {
  font-size: clamp(2rem, 8vw, 5rem) !important;
}*/

h4 {
  font-size: clamp(1.9rem, 8vw, 3rem) !important;
}

h5 {
  font-size: clamp(1.6rem, 8vw, 2.5rem) !important;
}

.bg-dark :is(h1, h2, h3, h4, h5, h6, p, li),
.text-white :is(h1, h2, h3, h4, h5, h6, p, li),
.bg-secondary :is(h1, h2, h3, h4, h5, h6, p, li) {
    color: inherit !important;
}

p, a, li, h6, code {
  font-family: "Roboto", sans-serif;
}

p, li, h6 {
  margin-bottom:10px;
  font-size:18px;
  line-height: 1.4;
}


#MoSTContent section._DocumentList p:first-of-type,
#MoSTContent #header p:first-of-type {
    font-size:1rem;
    font-weight:400;
}

a:hover, a:focus {
    color: inherit;
    text-decoration: none;
}

code {
  font-size: 100%;
  font-family: inherit;
  color: inherit;
}

button {
    border: none;
}

hr {
    border-top: 2px solid var(--theme-secondary-color);
    width: 110%;
    margin-left: -5%;
    margin-top: 50px;
    margin-bottom: 50px;
}

.pmb-0 p {
  margin-bottom:0;
}

.btn, .btn-primary {
  border-color: transparent;
  padding: 0.6rem 1.5rem;
  white-space: break-spaces;
}

.text-shadow {
  text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.1);
}

table {
  color: inherit;
  line-height: 1.4;
  width:100%;
}

.table td, .table th {
  border: none !important;
  padding:0;
}

table.MoSTTable td,
table.MoSTTable th,
.table-column table.MoSTTable td {
  padding: .75rem;
  vertical-align: top;
  border-bottom: 1px solid #dee2e6!important;
}


.min-vh-100 {
    min-height: 100vh;
}

.div-link {
  cursor:pointer;
  transition:0.3s;
}

._ListPager {
    text-align: center;
    margin-top:30px;
}

button._ListPagerNext {
    margin-right: 15px;
}

._ListPager .mdl-button--fab {
    background-color: rgb(203 203 203 / 75%) !important;
}

._ListPager .mdl-slider__background-lower, ._ListPager  .mdl-slider__background-upper {
    background: rgb(203 203 203 / 75%) !important;
}

._ListItems {
  display: none;
}

  .border-top {
    border-width: 2px !important;
    padding-top: 15px;
  }

  .pri01 {
    border-color: var(--theme-light-color) !important;
  }

  .pri02 {
    border-color: var(--theme-secondary-color) !important;
  }

  .pri03 {
    border-color: var(--theme-tertiary-color) !important;
  }


/* Navigation ------------------------------*/

#navFloat {
    background-color: #ffffffcc;
    box-shadow: 5px 5px 15px #0000001a;
    backdrop-filter: blur(5px);
    border-radius: 5px;
    width: 95%;
    max-width: 1280px;
    margin: 0 auto;
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    top: 50px;
    z-index: 100000000;
}

#navFloat a.btn {
    font-size:inherit;
    margin-left: 10px;
    padding-left: 12px !important;
    padding-right: 12px !important;
    display: flex;
    flex-direction: row;
    justify-content: center;
    border: none;
}

.nav-logo img {
    max-height: 60px;
    max-width: 320px;
    width:100%;
    object-fit: contain;
    object-position: left;
    padding: 5px 0;
}

.nav-logo:has(img) .org-name {
    display: none;
}

#navMenu {
    flex-grow: 1;
    justify-content: flex-end;
}

#navFloat .container-fluid {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
}

#navMenu p {
    margin: 0;
}

a.nav-link:not(.btn) {
  text-decoration: none;
}

#navFloat a:hover {
    text-decoration: none;
    background-color: rgb(0 0 0 / 10%);
}

#navFloat .nav-logo a:hover {
    background-color: transparent;
    opacity: 0.8;
}

.nav-logo a:hover {
    background: transparent;
}


#navFloat ul li a {
  text-decoration: none;
  padding:3px 10px!important;
}

ul.DropDownMenu a:hover {
    background-color: #0000001c;
}

#navFloat ul li, li.nav-item {
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

li.Parent ul {
  background-color: var(--theme-secondary-color);
  box-shadow: 3px 3px 10px 0px #00000075;
}

.mobBtn {
  display:none;
}

.mobBtn button {
    padding: 8px 15px;
    background-color: transparent;
}

.mobBtn span.material-icons {
    color: black;
    font-size: 35px;
}

.btn-look * {
    background-color: var(--theme-primary-color);
    border-radius: 5px;
    padding-top:15px;
    padding-bottom:15px;
    text-align: center;
    width: 100%;
    white-space:break-spaces;
}

.autohide {
      position: fixed;
      top: 0;
      right: 0;
      left: 0;
      width: 100%;
      z-index: 1030;
}

.scrolled-down {
      transform: translateY(-200%);
      transition: all 0.3s ease-in-out;
}

.scrolled-up {
      transform: translateY(0);
      transition: all 0.3s ease-in-out;
}


/* Banner --------------------------------------------------------------- */


#header {
    background-image: var(--theme-image);
    background-position: center;
    background-size: cover;
    background-color: #005756;
    display: flex;
    flex-direction: column;
    justify-content: center; 
    align-items: flex-start; 
    width: 100%;
    min-height: 60vh;
    position: relative;
    padding-top: 175px;
    padding-bottom: 50px;
  /*added for overlay-graphic*/
  position: relative;
    overflow: hidden;
}

/* "/templates/_template_2026/images/squares-graphic2.png" */

#header::before {
   content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; 
    height: 100%;     
    background-image: url("/templates/_template_2026/images/squares-graphic2.png"); 
    background-repeat: no-repeat;    
    background-position: left bottom;     
    background-size: auto 530px; 
    z-index: 2; 
    pointer-events: none;
    /*opacity: 0.9;*/
   mix-blend-mode: screen;
}

#header::after {
    display: none;
}

#header:has(._DocumentThumbnail img) {
    background-image: none;
}

#header span._DocumentThumbnail img {
    display: block !important;
    height: 100%;
    object-fit: cover;  
    object-position: center;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

#header#MoSTContent, .hero-wrapper#MoSTContent {
    width: 100%;
    max-width: none;
}

.header-image {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
}

.header-image img {
    display: block !important;
    height: 100%;
    object-fit: cover;
    object-position: top;
    width: 100%;
    position: absolute;
}

.header-image::after {
    background: rgb(149,199,207);
    background: linear-gradient(90deg, rgba(5,51,85,0.8) 0%, rgba(46,89,121,0.5) 45%, rgba(149,199,207,0) 100%);
    content: " ";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: inline-block;
    z-index: 1;
}

.header-image p {
    height: 0;
    margin: 0;
    font-size: 0;
}

.hero-content {
    margin-bottom: 0; 
    display: block;
    vertical-align: middle;
    white-space: normal;
    z-index: 2; 
    width: 100%;
}

.hero-content .container * {
    color: #fff;
    text-shadow: -1px -1px 5px rgb(0 0 0 / 50%), 1px -1px 5px rgb(0 0 0 / 50%), -1px 1px 5px rgb(0 0 0 / 50%), 1px 1px 5px rgb(0 0 0 / 50%);
}

#header * {
    color: #ffffff;
}

#header h1 {
    font-size: clamp(2.2rem, 8vw, 5.3rem) !important;
    line-height: 0.95;
}

#header h2, #header h6 {
    font-family: "Roboto";
    font-size: 1.5rem!important;
}

.hero-text {
    max-width: 770px;
}

div#sub h3 {
    display: none;
}

#sub ul li {
    list-style-type: none;
    display: inline-block;
}

#sub ul {
    padding: 0;
}

#sub ul::before {
    content: "More Links:";
}

#MoSTTemplate:not(:has(figure.table)) #header .header-image {
    display: none;
}

#MoSTTemplate:not(:has(figure.table)) #header {
    background-image: none;
    min-height: 40vh;
}

#MoSTTemplate:not(:has(figure.table))
   #header .abstract {
   display:none;
}


#MoSTTemplate:not(:has(figure.table)) #MoSTContent p:first-of-type {
    font-size: 150%;
    font-weight: 500;
}


#MoSTTemplate:not(:has(figure.table)) #header::before {
    opacity: 0.5;
}

/* Footer */

footer.container-fluid {
    position: relative;
    overflow: hidden; 
}

footer.container-fluid::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("/templates/_template_2026/images/squares-graphic2.png");
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 800px auto;
    transform: scaleX(-1);
    mix-blend-mode: screen;
    opacity: 0.3;
    pointer-events: none;
    z-index: 0;
}

footer.container-fluid .container {
    position: relative;
    z-index: 1;
}

.contact p:first-child {
  white-space: pre-line;
}

footer .ext-links .btn {
    border:none;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Layouts -------------------------------------------------------------- */


.table-column table td {
    padding: 0 20px;
}

.table-column table td {
    border: none !important;
}

figure {
   display: table;
   padding: 5px;
}

figure.table {
    padding: 0;
    display: initial;
}
figure.image {
   margin:20px auto;
}

figure.image img {
  display: block;
  height:auto;
    margin: 0 auto;    
    max-width: 100%;
}

figcaption { 
    display: table-caption;
    caption-side: bottom;
    padding: 10px;
    text-align: center;
    font-size: 90%;
    margin-bottom: 20px;
}

table.h-section {
    border-collapse: separate;
}


/* Forms ---------------------------------------------------------------- */

._EmailForm,
._ProfileForm,
._PublicationForm, ._EzineForm,
._SubscriptionForm,
._EventRegistrationForm,
._ProductOrderForm {
  background-color: rgb(255 255 255 / 0%);
    margin: 0 auto 20px;
    max-width: 600px;
    padding: 20px;
    width: 100%;
}

.email-form h4 {
    color: var(--theme-primary-color);
    text-align: center;
  }


.mdl-textfield {
  width:100%!important;
}

.mdl-textfield__input {
    background-color: rgb(255 255 255 / 40%);
    padding-left: 5px;
    padding-right: 5px;
    width: 100% !important;
    border: 1px solid var(--theme-primary-color);
}

.mdl-textfield__label {
    text-transform: capitalize !important;
    padding-left: 10px;
  top: 26px;
}

.mdl-textfield--floating-label.is-dirty .mdl-textfield__label,
  .mdl-textfield--floating-label.is-focused .mdl-textfield__label {
    padding-left: 0 !important;
  }

.mdl-textfield.is-focused .mdl-textfield__input {
    color: inherit;
    border-color: var(--theme-primary-color);
}

.mdl-textfield--floating-label.has-placeholder .mdl-textfield__label,
.mdl-textfield--floating-label.is-dirty .mdl-textfield__label,
.mdl-textfield--floating-label.is-focused .mdl-textfield__label,
.mdl-textfield--floating-label.is-active .mdl-textfield__label {
  color: var(--theme-primary-color);
}

.intl-tel-input {
    width: 100%;
}

._MobileNumber .mdl-textfield__label {
    left: 90px;
}

.mdl-textfield__label:after {
    width: 0;
    height: 0;
}

.mdl-button, .mdl-button--raised.mdl-button--colored, .mdl-button.mdl-button--colored {
    color: initial;
    text-transform: none;
} 

.mdl-button {
  border-radius:0;
  transition:0.3s;
  font-family: "Lato", sans-serif;
}

.mdl-button--fab {
  border-radius: 50%;
  margin-top:10px;
  margin-right:5px;
}

.mdl-button:hover {
    background-color: rgb(158 158 158 / 50%);
  -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
}

._Captcha {
    margin-bottom: 30px;
    padding-top: 15px;
    padding-bottom: 15px;
    text-align: center;
}

.message textarea {
    height: auto !important;
    min-height: 150px !important;
}

.mdl-button--fab {
    background-color: #ffffff;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, .12), 0 1px 1px 0 rgba(0, 0, 0, .24);
  }

table._SubscriptionTypes.mdl-data-table.mdl-js-data-table {
    background: transparent;
}

button._EmailSubmit {
    width: 100%;
    text-transform: uppercase !important;
    font-size: 20px;
    padding-top: 3px;
    padding-bottom: 3px;
    height: auto;
  }

  button#txt_document_upload-button {
    background: var(--theme-primary-colour);
    border-radius: 14px;
    color: #fff;
    display:block;
    margin: 20px auto;
    padding: 5px 11px;
  }


/* Calendar / Date Picker */

.mddtp-picker .mddtp-picker__header, .mddtp-picker__body .mddtp-picker__viewHolder .mddtp-picker__grid span.mddtp-picker__cell--selected, .mddtp-picker__body .mddtp-picker__viewHolder .mddtp-picker__grid .mddtp-picker__tr span.mddtp-picker__cell:hover {
   background-color: var(--theme-primary-color);
}


.mddtp-picker-date .mddtp-picker__left, .mddtp-picker-date .mddtp-picker__right, .mddtp-button {
    background-color: #bdbdbd;
    transition: 0.3s;
}


/* Search layout */

.mdl-data-table {
    background: transparent;
    font-family: Roboto;
    font-size: 16px;
    line-height: 1.4;
}

td.search-options {
    padding-right: 5%;
    margin-left:2%;
    width: 30%;
}

td.search-results {
    margin-right: 2%;
}

._SearchFull .mdl-textfield {
    width: 100%;
}

button._SearchFind {
    margin-right: 10px;
}

._SearchSettingsOptions .mdl-data-table, ._SearchSettingsOptions .mdl-data-table td {
    border: none!important;
}

._SearchSettingsOptions {
    margin-top: 20px;
}

._SearchSettingsOptions .mdl-data-table tbody tr {
    height: 30px !important;
}

._SearchSettingsOptions .mdl-data-table td, ._SearchSettingsOptions .mdl-data-table th {
    height: auto!important;
    padding: 0!important;
}

._SearchSettingsOptions .mdl-data-table label {
  margin-bottom: 0;
  margin-top: 3px;
}

._SearchSettingsOptions .mdl-data-table thead {
    margin-top: 20px;
    margin-bottom: 5px;
    font-weight: bold;
}

.sres {
    border-left: 1px solid var(--theme-secondary-color);
    padding-left: 20px;
    padding-bottom: 5px;
    padding-top: 5px;
    margin-bottom: 30px;
}

.sres h3 {
    font-size: 1.5rem!important;
}

.sres ._DocumentAbstract h1,
.sres ._DocumentAbstract h2,
.sres ._DocumentAbstract h3,
.sres ._DocumentAbstract h4,
.sres ._DocumentAbstract h5,
.sres ._DocumentAbstract h6 {
    font-size: 1.5rem!important;
}



/* Basic Search */

._SearchBasic {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 95%;
    max-width: 720px;
    margin: 10px auto;
}

._SearchBasic span {
    width: calc(100% - 45px);
}

._SearchBasic input[type="search"] {
    background-color: rgb(255 255 255 / 60%);
    border: 1px solid #ffffff;
    border-radius: 3px;
    color: #053355;
    font-size: 16px;
    margin-right: 15px;
    padding: 11px 15px;
    width: 100%;
}

._SearchBasic button._SearchFind {
    background-color: var(--theme-dark-color);
    color: #fff;
    border: solid 1px #fff;
    border-radius: 5px;
    margin-right: 0;
    margin-left: 10px;
    padding: 10px 15px;
    transition:0.3s;
}

._SearchBasic button._SearchFind:hover {
    background-color: rgb(255 255 255 / 40%);
  -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
    box-shadow: 0px 5px 5px rgb(0 0 0 / 15%);
}

._SearchBasic button._SearchFind .material-icons {
    font-family: Roboto, sans-serif;
    text-transform: capitalize;
    font-size: 18px;
}

._SearchBasic i.material-icons {
    font-size: 25px;
}

._SearchBasic ::placeholder {
  color: var(--theme-dark-color);
  opacity: 1; 
}


/* Reusable layouts ------------------------------------------------- */

.h-section {
    padding-top: 150px !important;
    padding-bottom: 150px !important;
  }

.h-section .h-section {
  padding-top: 0 !important;
    padding-bottom: 0 !important;
}


  .bg-primary.h-section h3 {
    color: inherit;
  }

  #MoSTContent:has(.full-width) {
    margin: 0;
    max-width: none;
    width: 100%;
  }

  .image-col {
    padding: 0 !important;
  }

  .max-width-wrapper {
    max-width: 560px;
  }

  .mw-right {
    margin-right: auto;
    margin-left: 0;
  }

  .mw-left {
    margin-right: 0;
    margin-left: auto;
  }

  .image-col img {
    width: 100%;
    position: absolute;
    object-fit: cover;
    height: 100%;
  }


/* Document Lists */

._DocumentList:has(.item),
._Library:has(.item) {
    /*display: flex!important;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;*/
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 15px;
    grid-row-gap: 30px;
}

.item {
    flex: 0 0 31%;
}

.news {
    padding: 0 1%;
}

.news-thumb {
    position: relative;
}

.news-thumb img {
    width: 100%;
    border-radius: 5px;
    margin-bottom: 10px;
    aspect-ratio: 5 / 3;
    object-fit: cover;
}

.news-thumb span._DocumentPublished {
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--theme-secondary-color);
    text-shadow: 1px 1px 5px #053355;
    color: #fff;
    border-radius: 0 5px 0 5px;
    padding: 3px 15px;
}

.news-text span._DocumentDescription {
    font-size: 120%;
    display: block;
    margin-bottom: 5px;
}

.news span._DocumentLink a {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    line-height: 1.5;
    border-radius: .25rem;
    padding: 0.6rem 1.5rem;
    white-space: break-spaces;
    background-color: var(--theme-secondary-color) !important;
    color: #FFFFFF !important;
    border: none;
    text-decoration: none !important;
    font-style: normal;
    font-weight: 500;
    font-size: inherit;
}

.news span._DocumentLink a:hover {
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
    box-shadow: 0px 5px 5px rgb(0 0 0 / 15%);
}

/* Submissions List */

.submission {
    border: 1px solid white;
    border-radius: 5px;
    background-color: #ffffffcc;
  padding:20px;
  position:relative;
  transition:0.3s;
}

.submission:hover {
  background-color:#ffffff;
}

.submission-text {
    color: black;
   margin-bottom:25px;
}

.bg-dark ._Library .submission-text a, .bg-primary ._Library .submission-text a, .bg-dark ._Library .submission-text a::before, .bg-primary ._Library .submission-text a::before {
  color: var(--theme-dark-color)!important;
}

.submission span._DocumentDescription {
    font-size: 1.3rem;
    display: block;
    margin-bottom: 10px;
}

.submission span._DocumentLink a,
._Library .submission span._DocumentLink {
    position: absolute;
    bottom: 0;
    right: 0;
    background: #fff;
  color:black;
    text-decoration: none;
    border-radius: 5px 0 5px 0;
    padding: 2px 15px;
}

.bg-white .submission span._DocumentLink a,
.bg-white ._Library .submission span._DocumentLink {
    color: #fff;
    background-color: var(--theme-primary-color);
}

.bg-white .submission {
    border-color: var(--theme-primary-color);
}



.calendar {
    border: 2px solid var(--theme-primary-color);
    padding: 40px 15px 15px 15px;
    border-radius: 5px;
    position: relative;
}

.calendar-date {
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--theme-primary-color);
    padding: 5px 20px;
    color: #fff;
    border-radius: 0 1px 0 5px;
}

.calendar ._DocumentBody h5 {
    font-family: Roboto;
    font-size: 23px !important;
    font-weight: 700;
    margin-bottom: 0;
}

.calendar-annual-general-meeting {
    border-color: var(--theme-secondary-color);
}

.calendar-annual-general-meeting .calendar-date {
    background-color: var(--theme-secondary-color);
}

/* Accordion / File Viewer */

.document-dropdown, .external-links  {
    margin-bottom: 20px!important;
}

.ui-accordion .ui-state-active {
    background-color: #fff !important;
    border-color: #D9D9D9 !important;
    border-bottom: none;
}

.ui-accordion  h4.ui-accordion-header {
    background-color: #fff;
    color: #000;
    padding-right: 70px!important;
}

.ui-accordion .ui-accordion-content {
    border-color: #D9D9D9;
}

.ui-accordion .ui-accordion-header {
    margin-top: 30px !important;
    padding: 15px 20px !important;
}

.document-dropdown span.ui-accordion-header-icon,
.external-links span.ui-accordion-header-icon {
    background-image: none !important;   
    position: absolute;
    right: 20px;
    top: 40%;
    height: 40px;
    width: 40px;
}

.dd-expand,
.dd-contract {
    position: relative;
}

.ui-icon.dd-expand,
.ui-icon.dd-contract {
    text-indent: revert;
}

.dd-expand::after,
.dd-contract::after {
    font-family: "Material Icons";
    font-weight: 400;
    font-style: normal;
    font-size: 32px;   
    position: absolute;
    right: 0px;
    top: 0;
    height: 40px;
    width: 40px;
}

.dd-expand::after {
    content: \e145
}

.dd-contract::after {
    content: \e15b
}

.document-dropdown .dropdown-content {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.document-dropdown ._Layout {
   flex: 0 0 25%;
   margin-bottom: 10px;
   padding: 2px 10px;
}

.document-dropdown p {
    margin-bottom: 2px!important;
}

/*.dropdown-content a {
    clear: both;
    display: block;
    min-height: 20px;
    margin-bottom: 0;
    position: relative;
    text-decoration: none;
    vertical-align: middle;
    word-break: break-word;
}

.dropdown-content a::before {
    color: #1b3c54;
    display: block;
    font-size: 42px;
    font-family: Material Icons;
    left: 0;
    margin-bottom: 0;
    position: absolute;   
    text-decoration: none;
    top: -10px;
    transition:0.3s;
}

.document-dropdown ._Layout:hover a::before {
    color: var(--theme-secondary-color);
}*/

.document-dropdown ._DirectoryResults {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.b-member {
    flex: 0 0 48%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  margin-bottom:10px;
}

.member-img {
    flex: 0 0 25%;
}

.profile-details {
    flex: 0 0 70%;
}

.b-member img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 50%;
}

.member-name span._FieldText.b-position::before {
    content: "(";
}

.member-name span._FieldText.b-position::after {
    content: ")";
}

#MoSTContent ._DirectoryResults p:first-of-type {
    font-size: 18px;
    font-weight: 400;
}

.member-bio p {
    margin-bottom: 10px!important;
}

.member-name h6 {
    font-size: 22px;
}

#MoSTContent ._DirectoryResults p:first-of-type {
    font-size: 18px;
    font-weight: 400;
}

.member-bio p {
    margin-bottom: 10px!important;
}

.member-name h6 {
    font-size: 22px;
}

.member-img:not(:has(img)) {
    display: none;
}

.dropdown-content:has(.member-img img) .member-img:not(:has(img)) {
    display: block;
    flex: 0 0 5%;
}

/* Expandable Cards (Membership Page) */

  .row.card-row {
    margin-left: 15px;
    margin-right: 15px;
    margin-top: 30px;
  }

  .card-row .card {
    margin: 10px auto;
    margin-bottom: 20px;
    padding: 15px 15px 30px 15px;
    border-color: var(--theme-primary-color);
    position: relative;
    width: 100%
  }

  .card button.accordion-toggle {
    cursor: pointer;
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: var(--theme-primary-color);
    color: #fff;
    padding: 2px 18px;
    border-radius: 5px 0 0px 0;
    transition: 0.3s;
  }

  .card button.accordion-toggle:hover {
    cursor: mouse;
    background-color: var(--theme-dark-color);
  }

/* File Viewer */

._Library {
    margin-top: 10px;
}

ul._Library li {
    margin-bottom: 30px;
}

._Library a {
    clear: both;
  color: var(--theme-primary-color)!important;
    display: block;
    min-height: 20px;
    margin-bottom: 0;
    position: relative;
    text-decoration: none;
    vertical-align: middle;
    word-break: break-word;
}


._Library a::before {
    color: var(--theme-primary-color);
    display: block;
    font-size: 42px;
    font-family: Material Icons;
    left: 0;
    margin-bottom: 0;
    position: absolute;   
    text-decoration: none;
    top: -10px;
    transition:0.3s;
}

.bg-dark ._Library a,
.bg-primary ._Library a,
.bg-dark ._Library a::before,
.bg-primary ._Library a::before {
    color: #fff!important;
}

.document-dropdown ._Layout:hover a::before {
    color: var(--theme-secondary-color);
}

._Library a, .file-info {
    padding-left: 50px;
}

._Library a[href^="/files"]::before {
    content: \e873;
  }
._Library a[href$=".pdf"]::before {
    content: \e415;
  }

._Library a[href$=".docx"]::before {
    content: \e873;
  }

._Library a[href$=".xlsx"]::before {
   content: \e228;
  }

._Library a[href$=".jpg"]::before {
    content: \e228;
}

.file-info p {
    font-size: 12px !important;
}


/*Nav dropdown testing */
.touch-trigger.rotated { transform: rotate(180deg); transition: 0.3s; }
@media (min-width: 992px) {
    /* Ensure the parent doesnt cut off the child */
    .navbar-nav, .nav-item.dropdown {
        overflow: visible !important;
        position: relative;
    }

    /* Force the dropdown to be a floating box */
    .dropdown-menu {
        display: none; /* jQuery will handle showing this */
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        z-index: 9999 !important; /* Higher than any banners or sliders */
        background-color: #ffffffcc;
    box-shadow: 5px 5px 15px #0000001a;
    backdrop-filter: blur(5px);
    border-radius: 5px;
        min-width: 200px;
        padding: 10px 0;
        margin: 0;
        
    }

    /* Ensure links inside are visible */
    .dropdown-item {
        display: block;
        width: 100%;
        padding: 8px 20px;
        clear: both;
        font-weight: 400;
        color: #212529;
        text-align: inherit;
        white-space: nowrap;
        background-color: transparent;
        border: 0;
    }

    .dropdown-item:hover {
        background-color: #f8f9fa;
        color: #005a9c;
        text-decoration: none;
    }
}

/* Ensure the menu stays open when triggered by touch */
.nav-item.dropdown.show-touch > .dropdown-menu {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}
/* Hide the trigger on desktop by default */
.touch-trigger {
    display: none;
    background: none;
    border: none;
    padding: 5px;
    cursor: pointer;
    color: inherit;
    transition: transform 0.4s ease-in-out;
}

/* On screens smaller than 992px (Tablets/Phones) */
@media (max-width: 991px) {
    .nav-link-wrapper {
        justify-content: space-between;
        width: 100%;
    }

    .touch-trigger {
        display: inline-flex;
        align-items: center;
    }

    .touch-trigger.rotated {
        transform: rotate(180deg);
    }

    /* Ensure the dropdown pushes content down on mobile instead of floating */
    .dropdown-menu {
        position: static !important;
        display: none; /* Controlled by jQuery slideToggle */
        box-shadow: none;
        border: none;
        padding-left: 20px;
        background-color: transparent !important;
    }
}

/* Ensure desktop still works on hover as we set it up before */
@media (min-width: 992px) {
    .touch-trigger {
        display: none !important;
    }
}


/* Login */


#login-wrapper {
    border: 2px solid #053355;
    border-radius: 4px;
    padding: 0 0 20px 0;
}

#login-wrapper h1:first-of-type {
    background-color: #053355;
    color: white;
    text-transform: uppercase;
    padding: 5px 20px;
    border-radius: 0;
}

#login-wrapper p {
    padding-left: 20px;
    padding-right: 20px;
}

#login-wrapper .MoSTLogin {
    padding: 20px;
    margin: 30px 0;
    width: 100%;
    
}

#login-wrapper .MoSTLogin .MoSTFormLayout {width: 100%!important;}

#login-wrapper .MoSTLogin .MoSTFormLayoutCell1 {width: 30%!important;}

#login-wrapper .MoSTLogin .MoSTFormLayoutCell2 {width: 70%!important;}

form#frmMoSTContent p,
form#frmMoSTContent h2 {
    padding-left: 20px;
    padding-right: 20px;
        margin-bottom: 10px;
}

form#frmMoSTContent .MoSTLogin {
    padding: 20px;
    margin: 30px 0;
    width: 100%;
    
}

form#frmMoSTContent .MoSTLogin .MoSTFormLayout {width: 100%!important;}

form#frmMoSTContent .MoSTLogin .MoSTFormLayoutCell1 {width: 30%!important;}

form#frmMoSTContent .MoSTLogin .MoSTFormLayoutCell2 {width: 70%!important;}

#MoSTContent .MoSTTextField,
#MoSTContent .MoSTPasswordField {
  color: #333 !important;
  border-radius: 4px;
  border-color: #ccc;
  box-sizing: border-box;
}

#MoSTContent .MoSTTextField {
  height: 36px;
    padding: 2px;
    width: 90% !important;
    font-size: 16px;
}

div.MoSTFormLayoutRow {
    margin: 5px 0;
    width: 100%;
    float: left;
    margin-top: 12px;
}

.MoSTFormLayout input[type=checkbox], .MoSTFormLayout input[type=radio] {
    margin: 5px 5px 0 8px !important;
    float: left;
    padding: 0;
    width: 3%;
    /*width: 15px;*/
}

 input.MoSTButton {
    width: auto !important;
    padding: 7px 20px;
    border-radius: 3px;
    margin: 20px 0;
    text-align: center;
    background-color: #053355;
    border: 1px solid #053355;
    color: #ffffff !important;
    font-size: 16px;
    line-height: 22px;
    text-transform: uppercase;
    text-decoration: none;
    font-family: Roboto, sans-serif;
}

#MoSTSubscription .MoSTFormLayoutRow,
#MoSTDetails .MoSTFormLayoutRow  {
  width: 100%;
  clear: both;
}

#MoSTSubscription .MoSTFormLayoutWidth,
#MoSTDetails .MoSTFormLayoutWidth {
  width: 50%;
}

#MoSTSubscription .MoSTFormLayoutCell1,
#MoSTDetails .MoSTFormLayoutCell1  {
    float: left;
    width: 49%;
    text-align: left;
    margin-right: 1%;
}

#MoSTSubscription .MoSTFormLayoutCell2,
#MoSTDetails .MoSTFormLayoutCell2 {
    display: inline-block;
    text-align: left;
}

#MoSTSubscription .MoSTFormLayoutCellFull,
#MoSTDetails .MoSTFormLayoutCellFull {
    width: 100%;
    float: left;
}

#MoSTSubscription h3,
#MoSTDetails h3 {
  margin: 50px 0 5px 0;
}

#MoSTSubscription p,
#MoSTDetails p {
  margin: 0;
}


.MoSTDropdownList {
    font-size: 16px;
}



/* Mobile Styles ---------------------------------------------------- */

@media (max-width: 1200px) { 
  nav#navFloat {
  top: 20px;
}
      .card {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 48%;
        flex: 0 0 48%;
        max-width: 48%;
    }
}

@media (max-width: 992px) {
  #mobNav, .mobBtn {
    display: block;
}
    
  /* mobNav */

  
#navMenu  {
  display:none;
  flex-direction: column;
    flex-wrap: nowrap;
}
  
 #navFloat .navbar-expand-lg > .container, #navFloat .navbar-expand-lg > .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
  
#navMenu ul.DropDownMenu {
   padding: 10px 0 15px 0;
   margin-bottom: 0;
}

#navFloat ul li, li.nav-item {
    display: block;
    float: none;
  position:relative;
}
  
  #navFloat ul li:has(.btn) {
    margin-bottom:10px;
  }
  
#navMenu ul.DropDownMenu li span.material-icons {
  position: absolute;
  top:3px;
  left: 0;
}
  
  #navFloat ul li a {
    padding: 6px 10px !important;
}
  
#navMenu ul.DropDownMenu li.Parent {
    padding-left: 20px !important;
}

#navMenu ul.DropDownMenu li.Parent ul {
    position: inherit;
}

#navMenu ul.DropDownMenu li {
    max-width: 960px;
    margin: 0 auto;
}

#navMenu li.Parent ul {
    background-color: transparent;
    box-shadow: none;
}
  
#navFloat .container {
    flex-wrap: wrap;
}
  
  #navMenu .social-links a {
    display: inline-block;
}

.nav-logo {
    justify-content: space-between;
    width: auto;
    flex: auto;
    display: flex !important;
    display: inline-block;
    padding-top: .3125rem;
    padding-bottom: .3125rem;
    margin-right: 1rem;
    font-size: 1.25rem;
    line-height: inherit;
    white-space: nowrap;
    order: 1;
    flex-grow: 2;
}

.mobBtn {
    color: #ffffff !important;
    text-decoration: none;
    padding: .25rem 0;
    font-size: 1.25rem;
    line-height: 1;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: .25rem;
    order: 2;
    flex-grow: 2;
    margin-left: auto;
    text-align: right;
}

#navMenu {
    order: 3;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-align: center;
    -ms-flex-pack: center !important;
    flex: 2;
    justify-content: space-between;
    width: auto;
    flex: auto;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-align: center;
}
  
  .h-section {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }
  
   .max-width-wrapper {
      max-width: 720px;
      margin: 0 auto;
    }
  
  .image-col img {
      height: auto;
        margin-bottom: 0;
        max-height: 70vh;
        position: relative;
        object-fit: cover;
    }
  
 
  .item {
        flex: 0 0 48%;
    }
  
  ._DocumentList:has(.item) {
    grid-template-columns: repeat(2, 1fr);
    grid-row-gap: 20px;
}
  
  .b-member {
    flex: 0 0 100%;
}

    #MoSTSubscription .MoSTFormLayoutCell1, #MoSTDetails .MoSTFormLayoutCell1, #MoSTSubscription .MoSTFormLayoutCell2, #MoSTDetails .MoSTFormLayoutCell2 {
        float: none;
        width: 100%;
    }

}

@media (max-width: 768px) {  
  .container:has(.container) {
    padding-left: 0;
    padding-right: 0;
}
  
  #navMenu ul.DropDownMenu li {
    max-width: 720px;
}
  
  span.org-name {
    max-width: 200px;
    font-size: 100%;
    padding: 15px 0;
}
  
  #footer-nav ul.DropDownMenu li {
    display: block;
  }
  
  td.search-options {
    display: block;
    margin-right: 2%;
    padding-right:0;
    width: 96%;
  }

  td.search-results {
   display: block;
   margin-left:2%;
   width:96%;
  }
 
  ol._BreadCrumbs {
    display: block;
 }

  ol._BreadCrumbs li {
    display: inline-block;
  }
  
  #header {
        padding-top: 125px;
        padding-bottom: 40px;
        min-height: 400px;
    }
  
  #header::before {
        background-size: 350px auto; 
    }

    #header h1 {
        margin-bottom: 15px;
    }

    #header h2, #header h6 {
        font-size: 1.1rem;
    }

    .hero-text {
        padding: 0 20px; 
        max-width: 100%;
    }
    
    .header-image::after {
        background: linear-gradient(180deg, rgba(5,51,85,0.9) 0%, rgba(46,89,121,0.6) 100%);
    }
  
  .h-section {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  
  ._DocumentList:has(.item) {
    grid-template-columns: 1fr;
}
   
  .news {
        padding-left: 10px;
        padding-right: 10px;
    }
  
  .b-member {
    flex-direction: column;
}
  .member-img {
    flex: 0;
    height: auto;
    display: block;
    margin-bottom: 15px;
}
  .b-member img {
  max-width:150px;
}
}

@media (max-width: 576px) { 
 .nav-logo img {
    max-width: 170px;
}
  #header::before {
        background-size: 200px auto; 
    }
  
  .item {
    flex: 0 0 100%;
  }
  
  .news {
    padding-left: 0;
    padding-right: 0;
   }
  
      .card {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}




div.MoSTVersion {
   display: none;
   visibility: hidden;
}
