:root {
  --nw-white: #ffffff;
  --nw-bg-1: #e6f4f1;
  --nw-main-blue: #0183c5;
  --nw-dk-blue: #00356d;
  --nw-dk-green: #009377;
  --nw-main-red: #c60037;
  --nw-lt-gray: #e5e5e5;
  --nw-ult-gray: #f3f3f3;
  --nw-sem-md-gray: #cccccc;
  --nw-md-gray: #666666;
  --nw-dk-gray: #333333;
  --nw-black: #000000;
}

#sp-main-body {
  min-height: 80dvh;
  padding-block: 100px;
}

@media (width < 768px) {
  #sp-main-body {
    padding-block: 30px;
  }
}

.view-subscribers,
.view-members,
.login-screen {
  #sp-title{
    background: var(--nw-bg-1);
  }
  #sp-main-body {
    background: var(--nw-bg-1);
    padding-block: 50px;
  }
}

.view-subscribers #sp-main-body,
.view-members #sp-main-body {
  padding-inline: 5dvw;

  .btn-primary, .sppb-btn-primary {
    border: none;
    background-color: rgb(from var(--nw-dk-green) r g b / .8);
  }

  .btn-primary:hover,
  .btn-primary:focus-within,
  .btn-primary:active {
    background-color: var(--nw-dk-green);
  }

  .text-info {
    color: var(--nw-dk-blue)!important;
  } 

  .btn-danger {
    background: var(--nw-main-red);
    border-color: var(--nw-main-red);
  }

  .btn-primary {
    background: var(--nw-main-blue);
    border-color: var(--nw-main-blue);
  }

  button {
    border-radius: 0px;
  }
}

.table > :not(caption) > * > * {
  background-color: var(--nw-white);
}
  
.signup-screen #sp-main-body {
  padding-inline: 1dvw;
}

.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn:not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}

@media (width > 991px) {
  .signup-screen #sp-main-body {
    padding-inline: 5dvw;

    #field_username .col-md-3,
    #field_password .col-md-3,
    #field_password2 .col-md-3,
    .osm-captcha-container .col-md-3 {
      width: 15%;
    }

    #field_username .col-md-9,
    #field_password .col-md-9,
    #field_password2 .col-md-9,
    .osm-captcha-container .col-md-9 {
      width: 85%;
    }
  }
}

.osm-captcha-container {
  display: block;

  .required {
    padding-left: 0;
    color: var(--nw-main-red);
  }
}


.sp-megamenu-parent > li:last-child > a {
  color: var(--nw-main-blue);
  padding: 5px;
  border: 2px solid var(--nw-main-blue);
  font-size: 1.2;
}

.sp-megamenu-parent > li:last-child > a::before {
  content: "\f007";
  padding-right: .5ch;
  font-family: "Font Awesome 6 Pro";
  font-weight: 900;
}

.sp-megamenu-parent > li:last-child > a:hover {
  color: var(--nw-white);
  background: var(--nw-main-blue);
  padding: 5px;
  border: 2px solid var(--nw-main-blue);
}

.login .password-group button.input-password-toggle {
  background: var(--nw-dk-blue);
  color: var(--nw-white);
}

.icon-eye.icon-fw,
.icon-fw.icon-eye-slash {
  font-size: 1.2rem;
  font-weight: 300;
}



.btn-lg,
.form-control,
.list-group-item:first-child,
.list-group-item:last-child,
.input-password-toggle {
  border-radius: 0px;
}


*, *::before, *::after {
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
  font: inherit;
}

img, picture, svg, video {
  display: block;
  max-width: 100%;
}

input, text-area, button, select {
  font: inherit;
}

html {
  color-scheme: dark light;
  color: var(--nw-black);
  scrollbar-gutter: stable;
}

body {
  min-block-size: 80svh;
  color: var(--nw-black);
}

/* This has been added to test the variable font scaling from Syntax */
body, h1, h2, h3, h4, h5, h6, p, a, li, .fluid, textarea, input, select, button, .btn, th, td,
.sppb-btn, .sppb-btn-custom, .sppb-addon-button-group .sppb-btn-custom {
	--fl: 0;
	--font-size-min: 14;
	--font-size-max: 22;
	--font-ratio-min: 1.125;
	--font-ratio-max: 1.125;
	--font-width-min: 320;
	--font-width-max: 1500;
	--fluid-min: calc(var(--font-size-min) * pow(var(--font-ratio-min), var(--fl, 0)));
	--fluid-max: calc(var(--font-size-max) * pow(var(--font-ratio-max), var(--fl, 0)));
	--fluid-preferred: calc((var(--fluid-max) - var(--fluid-min)) / (var(--font-width-max) - var(--font-width-min)));
	--fluid-type: clamp(
		(var(--fluid-min) / 16) * 1rem,
		((var(--fluid-min) / 16) * 1rem) -
			(((var(--fluid-preferred) * var(--font-width-min)) / 16) * 1rem) +
			(var(--fluid-preferred) * var(--variable-unit, 100vi)),
		(var(--fluid-max) / 16) * 1rem
	);
	font-size: var(--fluid-type);
    font-family: system-ui, san-serif;
}

/* This makes containers, with container queries use a cqi unit instead of vi */
.fluid-text-container {
	container-type: inline-size;
  --variable-unit: 100cqi;
}
h1, .h1 {--fl: 5;}

h2, .h2 {--fl: 5;}

h3, .h3 {--fl: 3;}

h4, .h4 {--fl: 2;}

h5, .h5 {--fl: 1;}

h6, .h6 {--fl: 0;}

p, li, body {--fl: 0; line-height: 1.25;}

.fs-xs{--fl: -1;}

.fs-base{--fl: 0;}

.fs-s{--fl: 1;}

.fs-m{--fl: 2;}

.fs-l{--fl: 3;}

.fs-xl{--fl: 4;}

.fs-xxl{--fl: 5;}

.fs-xxxl{--fl: 6;}
/* This is the end of what has been added to test the variable font scaling from Syntax */

h1, h2, h3, h4 {
  font-weight: 600;
  line-height: 1;
  text-wrap: balance;
}

.container {
  max-width: 100dvw;
}

.sppb-panel-title,
.sp-megamenu-parent > li > a {
  font-family: system-ui, san-serif;
  font-size: 1.125rem;
  line-height: 1.6;
  font-weight: 400;
  text-wrap: pretty;
}

.nw-attn-text {
  p {
    padding: 8px 15px;
    background: var(--nw-white);
    width: fit-content;
    display: flex;
    margin-inline: auto;
    border: 1px solid rgb(from var(--nw-md-gray) r g b / .5);
    align-items: center;
    box-shadow: 0px 0px 8px rgb(from var(--nw-black) r g b / .15) !important;
  }
  i {
    padding-right: .5ch;
    font-size: 1.5rem;
  }
  strong {
    padding-right: .5ch;
    font-weight: 800;
  }
}

.sppb-panel-title {
  font-weight: 600;
}

.nw-white-green-button,
.nw-green-white-button,
.nw-white-blue-button,
.sppb-addon-button-group .sppb-btn-custom,
.nw-green-white-button .sppb-btn-custom {
  
  padding-block: min(calc(.5vw + .375rem), 10px);
  padding-inline: min(calc(1vw + 1rem), 25px);

  border-width: 2px!important;
  border-style: solid!important;
  border-radius: 100vw!important;
  background: transparent;
  text-transform: uppercase;
  transition: background 500ms ease-out, color 500ms ease-out!important;
  font-size: var(--fluid-type)!important;
}

@media (width < 1100px) {
  .nw-white-green-button,
  .nw-green-white-button,
  .nw-white-blue-button {
    font-size: 1rem;
  }
}

.nw-white-green-button,
.nw-white-blue-button,
.sppb-addon-button-group .sppb-btn-custom {
  border-color: var(--nw-white);
  color: var(--nw-white);
}

.nw-green-white-button,
.nw-green-white-button .sppb-btn-custom {
  border-color: var(--nw-dk-green)!important;
  color: var(--nw-dk-green)!important;
}

.nw-white-green-button:hover,
.nw-white-green-button:focus-within {
  color: var(--nw-dk-green)!important;
  background: var(--nw-white)!important;
}

.nw-white-blue-button:hover,
.nw-white-blue-button:focus-within,
.sppb-addon-button-group .sppb-btn-custom:hover,
.sppb-addon-button-group .sppb-btn-custom:focus-within {
  color: var(--nw-dk-blue);
  background: var(--nw-white);
}

.nw-green-white-button:hover,
.nw-green-white-button:focus-within,
.nw-green-white-button .sppb-btn-custom:hover,
.nw-green-white-button .sppb-btn-custom:focus-within {
  color: var(--nw-white)!important;
  background: var(--nw-dk-green)!important;
}

.sppb-btn.focus,
.sppb-btn:focus,
.sppb-btn.active,
.sppb-btn:active {
  box-shadow: none;
}

.nw-highlight-text {
  p, a {
    font-size: 1rem;
    line-height: 1.4;
  }
}

.nw-highlight-icon {
  --icon-font-size: 2.25rem; /*change this to change entire icon and border size */
  font-size: var(--icon-font-size);
  line-height: 1;
  border: 2px solid var(--nw-black);
  border-radius: 100vw;
  margin: 0 auto 10px auto;
  width: calc(var(--icon-font-size) + 30px);
  height: calc(var(--icon-font-size) + 30px);
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (width < 768px) {
   /*change this to change entire icon and border size */
  .nw-highlight-icon {--icon-font-size: 1.75rem;}
}

.sp-menu-heading,
.sp-megamenu-parent > li > a,
.sp-megamenu-parent > li > span,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item span:not(.sp-menu-badge) {
  font-size: 1rem;
  line-height:1;
}

.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li.active:hover > a,
.sp-megamenu-parent > li:hover > a,
.sp-megamenu-parent > li.active:focus-within > a,
.sp-megamenu-parent > li:focus-within > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover,
.sp-megamenu-parent > li:focus-within > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:focus-within {
  color: var(--nw-main-blue);
}

.sp-megamenu-parent .sp-dropdown.sp-dropdown-main,
.sp-megamenu-parent .sp-dropdown.sp-dropdown-sub {
  width: max-content !important;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a.superusersonly {
  background: var(--nw-dk-blue);
  color: var(--nw-white)!important;
  padding-inline: 2px;
}


body.ltr .sp-megamenu-parent .sp-dropdown.sp-dropdown-main.sp-menu-right {
  left: auto;
  right: 0;
}

a {color: rgb(from var(--nw-main-blue) r g b / .8);}
a:hover,
a:focus-within {
  color: rgb(from var(--nw-main-blue) r g b / 1);
}

.nw-animated-links a {
  background-image: linear-gradient(90deg, var(--nw-main-blue), rgb(50,78,62,.1));
  background-size: 0% 2px;
  background-repeat: no-repeat;
  background-position: bottom left;
  transition: background-size 350ms ease, opacity 350ms ease;
  padding-inline: 0px!important;
}

.nw-animated-links a:hover,
.nw-animated-links a:focus,
.nw-animated-links a:focus-within {
  background-size: 100% 2px;
  opacity: 1;
}

.mod-dpcalendar-upcoming-default.nw-animated-links a {
  display: none;
}

#sp-top-bar {
  background: #00508c;
  color: #ffffff;
  padding-inline: 5dvw;
}

#sp-top-bar a {
  color: rgb(from var(--nw-white) r g b / .7);
  font-size: 1.25rem;
}

ul.social-icons > li a {
  font-size: 1.5rem!important; 
}

ul.social-icons > li a svg {
  scale: 150%;
}


#sp-top-bar a:hover,
#sp-top-bar a:focus-within {
  color: var(--nw-white);
}

.sp-contact-info li {
  font-size: 1rem;
}

#sp-header {
  padding-inline: 5dvw 1dvw;
}

@media (width > 1400px) {
  #sp-header {
    padding-inline: 5dvw;
  }
}
@media (width < 1400px) {
  .sp-sign-in,
  .sp-menu-heading,
  .sp-megamenu-parent > li > a,
  .sp-megamenu-parent > li > span,
  .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a,
  .sp-megamenu-parent .sp-dropdown li.sp-menu-item span:not(.sp-menu-badge) {
    font-size: .85rem;
  }
  .sp-megamenu-parent > li > a,
  .sp-megamenu-parent > li > span {
    padding-inline: 8px;
  }
  #sp-header {
    padding-inline: .75dvw;
  }
  .logo-image {
    height: 60px!important;
  }
    #sp-header .sp-module {
    margin-left: 0px;
  }
}

@media (width < 992px) {
  #sp-header {
    height: 60px;
  }
   .logo-image {
    height: 50px!important;
  }
}

.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > .nav-header > .menu-toggler {
  width: 100%;
  text-align: right;
}

.com-dpcalendar #sp-main-body {
  padding: 50px 5svw 0px 5svw;
}

.page-top-header {
  border-top: 1px solid var(--nw-md-gray);
  border-bottom: 1px solid var(--nw-md-gray);
  padding-block: calc(1vw + .125rem);
}

.page-top-header i {
  padding-left: 10px;
}

#sp-page-builder {
  min-height: 80dvh;
  background: var(--nw-bg-1);
}

.sp-sign-in {
  outline: 2px solid var(--nw-main-blue);
  color: var(--nw-main-blue);
  padding: 5px;
}

a.sp-sign-in:hover,
a.sp-sign-in:focus-within {
  background: var(--nw-main-blue);
  color: var(--nw-white);
}

.sp-sign-in a:hover,
.sp-sign-in a:focus-within {
    color: var(--nw-main-white);
}

.nw-inset-logo {
  display: inline-block;
  width: clamp(150px, 15dvw, 300px);
  margin: .5rem 1rem .25rem 0px;
  float: left;
}

.nw-highlight-box {
  box-shadow: 0px 0px 8px rgb(from var(--nw-black) r g b /.15)!important;
  height: auto;
}

.dp-icon_clock {
  display: none;
}

.mod-dpcalendar-upcoming-default__information .dp-link {
  cursor: none;
  color: var(--nw-dk-green);
  font-weight: 700;
  font-size: 1.25rem;
}

.mod-dpcalendar-upcoming-default__event {
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--nw-md-gray);
}


.sppb-nav-custom {
  border: 1px solid rgb(from var(--nw-md-gray) r g b / .5);
  border-bottom: none;
  background: var(--nw-ult-gray);
  color: var(--nw-main-blue);
  z-index: 1;
}

.sppb-tab-content.sppb-tab-custom-content {
  max-width: 100%;
  border: 1px solid rgb(from var(--nw-md-gray) r g b / .5);
  background: var(--nw-white);
  margin-top: -1px;
}

.sppb-nav > li > a {
  border-left: 1px solid rgb(from var(--nw-md-gray) r g b / .5);
  border-right: 1px solid rgb(from var(--nw-md-gray) r g b / .5);
}

.sppb-nav > li > a:focus, .sppb-nav > li > a:hover {
  background-color: var(--nw-white);
  color: var(--nw-dk-blue);
}

@media (width < 767px) {
  .sppb-nav > li > a {
    padding: 5px;
    font-size: 82%;
  }
}

.sppb-nav-custom .active a {
  color: var(--nw-dk-blue);
  background-color: var(--nw-white);
  border-left: 1px solid rgb(from var(--nw-md-gray) r g b / .5);
  border-right: 1px solid rgb(from var(--nw-md-gray) r g b / .5);
  border-bottom: none;
}

@media (width > 1099px) {
  .nw-tab-btn {
    font-size: 80%;
  }
}

.sppb-container-inner {
  padding: 10px;
}

@media (min-width > 990px) {
  .nw-tab-btn {
    font-size: 80%;
  }
}

.sppb-addon-table-main td {
  color: var(--nw-black);
}

.sppb-addon-table-main th p,
.sppb-addon-table-main td p {
  margin: 0px;
  line-height: 1.25;
}

@media (width < 768px) {
  .sppb-addon-table-main th p,
  .sppb-addon-table-main td p {
    font-size: 80%;
  }
}

.sppb-addon-table-main th p {
  font-weight: 700;
}

.sppb-addon-table-main td p {
  font-weight: 400;
}

tbody {
  border: 1px solid var(--nw-lt-gray);
  border-top: none;
}

.sppb-addon-table-pagination-wrap .sppb-page-item.active .sppb-page-link {
  background-color: var(--nw-dk-blue);
  border-color: var(--nw-dk-blue);
}

.sppb-addon-table-pagination-wrap .sppb-page-link {
  padding: .5rem 1rem;
  color: var(--nw-main-blue);
}

.sppb-page-link {
  color: var(--nw-main-blue);
  background-color: var(--nw-white);
  border: 1px solid var(--nw-lt-gray);
}

.sppb-page-link:hover {
  color: var(--nw-main-blue);
  background-color: var(--nw-ult-gray);
  border-color: var(--nw-lt-gray);
}

.nw-tabs-title:has(h3) {
  color: var(--nw-dk-blue);
  text-align: center!important;
  margin-block: 20px;
}

.sppb-addon-table-pagination-wrap {
  margin-top: 10px;
}

.sppb-table-prev-link .fa-angle-left {
  font-weight: 400;
}

.sppb-table-next-link .fa-angle-right {
  font-weight: 400;
}

.sppb-addon-table input[type="text"].sppb-addon-table-search {
  border-color: var(--nw-lt-gray);
  color: var(--nw-md-gray);
  background: var(--nw-white);
}

.sppb-table-addon-item-search {
  background: var(--nw-white)!important;
}

.sppb-addon-table-pagination-wrap {
  margin-top: 0px;
  padding-top: 10px;
  background: var(--nw-lt-gray);
}

.nw-woty p:after {
  content: ' (WOTY)';
  color: var(--nw-main-red);
}

.nw-moty p:after {
  content: ' (MOTY)';
  color: var(--nw-main-blue);
}

.nw-nudescenes::before {
  font-family: "Font Awesome 6 Sharp";
  content: '\f56d';
  font-weight: 300;
  padding-right: .5ch;
}

.rsform-thankyou-button {
  border: none;
  background: rgb(from var(--nw-dk-green) r g b /.75);
  color: var(--nw-bg-1);
  transition: background 350ms ease-in-out;
  border-radius: 0px;
  font-size: 1.25rem;
  letter-spacing: .125rem;
  padding: 8px 25px;
  text-transform: uppercase;
}

.rsform-thankyou-button:hover,
.rsform-thankyou-button:focus-within {
  background: var(--nw-dk-green);
  color: var(--nw-bg-1);
}

#sp-footer {
  background: none;
  color: inherit;
}

#sp-footer .container,
#sp-footer .container-inner {
  padding: 0px;
  border: none;
}