#top-menu li a:hover {
    --tw-text-opacity: 1;
    color: rgb(233 154 3 / var(--tw-text-opacity));
}

#top-menu li:not(:first-of-type)::before {
    content: '\2022';
    padding: 0 .6em 0 .5em;
}

.front #main-menu {
    margin-bottom: -1em;
}

#main-menu {
    margin-top: 0.75rem;
  font-size: 15px;
  font-weight: bold;
  text-transform: uppercase;
}

#main-menu .sfHover a.sf-depth-1 {
  color: white !important;
}

#main-menu .sfHover a.sf-depth-1:hover {
  color: #e99a03 !important; /* $secondary */
}

#main-menu .sfHover {
  background-color: #4e4e4e;
}

#main-menu ul {
  border-radius: 0 !important;
}

#main-menu ul li {
  margin: 0;
}

#main-menu ul li.active-trail a {
  color: #004990; /* $primary */
  padding: 1em 0.5em 10px 0.5em;
  border-bottom: 5px solid #004990; /* $primary */
}

#main-menu ul li.active-trail a.sf-depth-2 {
  color: white;
}

#main-menu ul li.active-trail a.sf-depth-2:hover {
  color: #e99a03; /* $secondary */
}

#main-menu ul li.last.sf-depth-1 ul {
  right: 0 !important;
}

#main-menu .active-trail ul li a {
  border-bottom: none;
  padding: 0.5em 1em;
}

#main-menu a.sf-depth-1 {
  color: #e99a03; /* $secondary */
  padding: 1em 0.8em;
}

#main-menu a.sf-depth-1:hover,
#main-menu a.sf-depth-1:focus {
  color: white;
  background-color: #4e4e4e;
}

#main-menu .sf-depth-2 a {
  background-color: #4e4e4e;
  border-bottom: 1px solid #858585;
  font-weight: 400;
  color: white;
  display: block;
  padding: 0.5em 1em;
}

#main-menu .sf-depth-2 a:hover,
#main-menu .sf-depth-2 a:focus {
  color: #e99a03; /* $secondary */
}

#main-menu .sf-menu.sf-horizontal.sf-shadow ul,
#main-menu .sf-menu.sf-vertical.sf-shadow ul,
#main-menu .sf-menu.sf-navbar.sf-shadow ul ul {
  padding: 0 !important;
}

#main-menu .sf-depth-1 ul {
  padding: 0;
  margin: 0;
  margin-top: 7px;
  background-color: #4e4e4e;
  border-top: 2px solid #e99a03; /* $secondary */
  background: none !important;
}

#main-menu li.sf-depth-2 {
  background-color: white;
}

#main-menu li.sf-depth-2 ul {
  display: none !important;
}

#main-menu .sf-sub-indicator {
  display: none;
}

@media (max-width: 885px) {
  #main-menu {
      width: inherit;
      position: inherit;
  }
}

/* Specific for hamburger menu */
.dl-menuwrapper {
  max-width: 100%;
}

.dl-menuwrapper button {
  height: 60px;
  position: absolute;
  right: 15px;
  top: 60px;
  width: 60px;
  background-color: #FFFFFF;
}

@media (max-width: 560px) {
  .dl-menuwrapper button {
      top: 2px;
  }
}

.dl-menuwrapper button::after {
  border-radius: 2px;
  height: 4px;
  left: 25%;
  top: 31%;
  width: 50%;
  background: #e99a03 none repeat scroll 0 0;
  box-shadow: 0 10px 0 #e99a03, 0 20px 0 #e99a03;
}

ul.sf-menu.sf-style-default li,
ul.sf-menu.sf-style-default.sf-navbar {
  background: white;
}

#footer-menu ul li a {

    margin-right: 1.5rem
}

#footer-menu ul li a:hover {

    --tw-text-opacity: 1;

    color: rgb(233 154 3 / var(--tw-text-opacity))
}

.landing-body p,
.landing-body ul,
.landing-body ol {

    margin-bottom: 1rem
}

.landing-body ol {

    list-style-type: decimal;

    list-style-position: outside;

    padding-left: 2.5rem;

    margin-top: 1rem;

    margin-bottom: 1rem
}

.landing-body ul {

    list-style-type: disc;

    list-style-position: outside;

    padding-left: 2.5rem;

    margin-top: 1rem;

    margin-bottom: 1rem
}

.landing-body a {

    --tw-text-opacity: 1;

    color: rgb(0 73 144 / var(--tw-text-opacity))
}

.landing-body a:hover {

    --tw-text-opacity: 1;

    color: rgb(233 154 3 / var(--tw-text-opacity))
}

.tabs ul {
  display: flex;
  justify-content: center;
  gap: 1rem;
}

.tabs ul li a {
  --tw-bg-opacity: 1;
  background-color: rgb(227 230 232 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-radius: 0.5rem;
  margin-bottom: 0.5rem;
  display: block;
  cursor: pointer;
}


.tabs ul li.is-active a,
.tabs ul li a:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(233 154 3 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}


.tabs ul li.is-active a:hover {
  background-color: #FF8C00;
}

.news-and-views-menu { margin-top: 2rem; margin-bottom: 2rem
}

.news-and-views-menu ul { display: flex; justify-content: center; list-style-type: none; padding: 0px; --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity))
}

.news-and-views-menu ul li { flex: 1 1 0%; text-align: center; margin-right: 0.125rem
}

.news-and-views-menu ul a { display: block; /* Ensure the anchor behaves like a block for better click area */ --tw-text-opacity: 1; color: rgb(0 73 144 / var(--tw-text-opacity)); /* Blue text for links */ text-transform: uppercase; font-weight: 700; padding: 1rem; /* Add spacing around the text */ --tw-bg-opacity: 1; background-color: rgb(227 230 232 / var(--tw-bg-opacity)); /* Background matches the menu */ border-bottom-width: 4px; /* Default bottom border */ --tw-border-opacity: 1; border-color: rgb(217 217 219 / var(--tw-border-opacity)); transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 300ms /* Smooth transition for hover and active effects */
}

.news-and-views-menu ul a:hover { --tw-border-opacity: 1; border-color: rgb(0 73 144 / var(--tw-border-opacity)) /* Highlight the bottom border on hover with the primary color */
}

.news-and-views-menu ul a.active { --tw-border-opacity: 1; border-color: rgb(233 154 3 / var(--tw-border-opacity))
}

		/* padding: 0;
	}
	ul li {
		float: left;
		text-align: center;
		width: 32%;
		/* @include breakpoint(480px) {
			width: 33%;
		} */
		/* background: #eeeef0; */
		/* margin-right: 2px;
		&:last-child {
			margin-right: 0;
		}
		margin-bottom: 2em;
		padding: 0;
		list-style: none;

		a {
			color: $primary;
			text-transform: uppercase;
			&:hover, &:focus {color: $secondary;}
			display: block;
			padding: .7em;
			border-bottom: solid 5px #d9d9db;
			&:hover, &:focus {
				border-bottom-color: $secondary;
			}
		}

		&.active a {
							border-bottom-color: $secondary;

		}
	}
} */

.node-grid-item img {
    width: 100%;
}

@media (min-width: 768px) {

    .node--full .node--full__image {
        margin-left: 2rem;
        margin-bottom: 2rem;
        float: right;
    }
}

.node--full .node--full__image img {
    width: 100%;
    margin-bottom: 1rem;
}

@media (min-width: 768px) {

    .node--full .node--full__image img {
        width: auto;
    }
}

.node--full .node--full__introduction {
    font-size: 1.25rem;
    line-height: 1.75rem;
    text-align: left;
    margin-bottom: 1rem;
}

.node--full .node--full__author a {
    --tw-text-opacity: 1;
    color: rgb(0 73 144 / var(--tw-text-opacity));
    font-size: 1.125rem;
    line-height: 1.75rem;
}

.node--full .node--full__author a:hover {
    --tw-text-opacity: 1;
    color: rgb(233 154 3 / var(--tw-text-opacity));
}

.node--full .node--full__introduction a {
    --tw-text-opacity: 1;
    color: rgb(0 73 144 / var(--tw-text-opacity));
}

.node--full .node--full__introduction a:hover {
    --tw-text-opacity: 1;
    color: rgb(233 154 3 / var(--tw-text-opacity));
}

.node--full p {
    margin-bottom: 1rem;
}


.node--full h1 {
    font-size: 2.25rem;
    line-height: 2.5rem;
    font-weight: 700;
    margin-bottom: 2rem;
}

.node--full__body {
    display: flow-root;
}

.node--full__body a {
    --tw-text-opacity: 1;
    color: rgb(0 73 144 / var(--tw-text-opacity));
}

.node--full__body a:hover {
    --tw-text-opacity: 1;
    color: rgb(233 154 3 / var(--tw-text-opacity));
}

.node--full a {
    --tw-text-opacity: 1;
    color: rgb(0 73 144 / var(--tw-text-opacity));
}

.node--full a:hover {
    --tw-text-opacity: 1;
    color: rgb(233 154 3 / var(--tw-text-opacity));
}

.node--full__body h3 {
    font-size: 1.25rem;
    line-height: 1.75rem;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.node--full__body h4 {
  display: block;
  clear: both;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(78 78 78 / var(--tw-text-opacity));
  margin-bottom: 1rem;
}

.node--full__body ol {
    list-style-type: decimal;
    list-style-position: outside;
    padding-left: 2.5rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.node--full__body ul {
    list-style-type: disc;
    list-style-position: outside;
    padding-left: 2.5rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.node--full__body .niab-image-left-50 {
    width: 50% !important;
  height: auto !important;
  margin: 0 20px 20px 0 !important;
  display: block;
}

.node--teaser-large__introduction {
    font-size: 1.125rem;
    line-height: 1.75rem;
    text-align: left;
    margin-bottom: 1rem;
}

.node--teaser-large time,
.node--teaser-small time {
    font-size: 0.875rem;
    line-height: 1.25rem;
}

.home--section-research img {
    position: relative;
}

.node--full .person--teaser h3 {
    margin-top: 0px;
    margin-bottom: 0.5rem;
}

.node--vacacy--teaser {
    margin-bottom: 2rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 1rem;
    border-width: 2px;
    border-style: solid;
  border-color: lightgrey;
}
.node--vacacy--teaser p {
    margin-bottom: 0px;
}

a span.extlink-nobreak svg {
  display: inline;
  vertical-align: inherit;
}

.node--full h4 {

}

.node--full--vacancy a.button-apply {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
}

@media (min-width: 768px) {

    .node--person .node--full__image.w-280 img {
        width: 280px;
    }
}

.pager ul {
  text-align: center;
}

.pager ul li {
  display: inline-block;
  margin: 0 15px;
}

.pager ul li a {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  border-radius: 0.375rem;
}

.pager ul li a:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(0 73 144 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.pager ul li.is-active a {
  --tw-bg-opacity: 1;
  background-color: rgb(0 73 144 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

h1, h2, h3, h4, h5, h6 {
  color: #666;
}

.node--full h2 {
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.sidebar-first {
  --tw-bg-opacity: 1;
  background-color: rgb(238 238 240 / var(--tw-bg-opacity));
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-right: 1rem;
}

.sidebar-first ul[data-menu-level="0"] > li > a,
.sidebar-first ul[data-menu-level="1"] > li > a {
  text-transform: uppercase;
}

.sidebar-first ul li a {
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(0 73 144 / var(--tw-text-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  display: block;
  border-left-width: 4px;
}

.sidebar-first ul[data-menu-level="1"] li.menu-item--expanded.active-trail > a,
.sidebar-first ul[data-menu-level="1"] li > a:hover {
  --tw-border-opacity: 1;
  border-color: rgb(233 154 3 / var(--tw-border-opacity));
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
}

.sidebar-first ul[data-menu-level="2"] li a {
  padding-left: 2.5rem;
  --tw-border-opacity: 1;
  border-color: rgb(238 238 240 / var(--tw-border-opacity));
}

.sidebar-first ul[data-menu-level="2"] li a:hover {
  --tw-border-opacity: 1;
  border-color: rgb(238 238 240 / var(--tw-border-opacity));
}

.sidebar-first .menu-item--expanded .active-trail > a {
  /* @apply border-brand-secondary; */
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
}

/* .sidebar-first ul {
  @apply font-bold;
  @apply flex-col
}

.sidebar-first ul.menu {
  padding: 0;
  margin: 0;
}

.sidebar-first li.menu-item--expanded li.menu-item--expanded li.active-trail {
  @apply text-brand-secondary;
  @apply border-brand-secondary;
}

.sidebar-first li.menu-item--expanded li.menu-item--expanded > a {
  @apply text-brand-secondary;
  @apply border-l-4;

}

.sidebar-first li.active-trail ul.menu li.active-trail {
}

.sidebar-first li ul.menu li ul.menu a {
  @apply pl-2;
}

.sidebar-first li {
  text-transform: uppercase;
  list-style: none;
}

.sidebar-first li a	{
  @apply block;
  @apply py-2;
  @apply px-4;
  @apply border-l-4;
  border-color: #eeeef0;
}

.sidebar-first li a:hover,
.sidebar-first li a:focus {
  @apply border-l-4;
  @apply border-brand-secondary;
} */

a.niab-link-button {
    background: orange;
    color: white !important;
    font-weight: bold;
    display: inline-block;
    padding: 10px 20px;
    border-radius: 10px;
    border-bottom: 2px solid tomato;
    text-shadow: 1px 1px tomato;
    margin-bottom: 1.5rem;
    margin-top: 1rem;
}

a.niab-link-button:hover, a.niab-link-button:focus {
    background: darkorange;
}

.hero-banner__image img {
    width: 100%;
}

.slide {
  position: relative;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.slide .title {
  bottom: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(0 73 144 / var(--tw-bg-opacity));
  font-style: italic;
  font-weight: 100;
  text-align: center;
  line-height: 1.375;
}

.owl-carousel {
  position: relative;
}

.owl-dots {
  display: none;
}

.owl-nav {
  position: absolute;
  top: 50%; /* Position halfway up the parent */
  width: 100%;
  transform: translateY(-50%); /* Adjust for vertical centering */
  display: flex;
  justify-content: space-between; /* Align the prev/next buttons to the sides */
  pointer-events: none; /* Prevent navigation buttons from interfering with clicks on the carousel items */
}

.owl-nav .owl-prev,
.owl-nav .owl-next {
  pointer-events: all; /* Restore pointer events for the buttons */
  position: absolute;
  top: 50%; /* Center buttons vertically */
  transform: translateY(-50%); /* Adjust for vertical centering */
  padding: 0;
  opacity: .8;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  width: 40px; /* Set a fixed width */
  height: 40px; /* Set a fixed height */
}

.owl-nav .owl-prev:hover,
.owl-nav .owl-next:hover {

}

.owl-nav .owl-prev {
  left: 10px; /* 10px from the left */
  background-image: url(/themes/custom/frontend/img/slide-prev.png) !important;
}

.owl-nav .owl-next {
  right: 10px; /* 10px from the right */
  background-image: url(/themes/custom/frontend/img/slide-next.png) !important;
}

#views-exposed-form-search-page-1 {

    display: flex;

    align-items: center
}

#views-exposed-form-search-page-1 input[type=submit] {

    margin-left: 1rem
}

#views-exposed-form-search-page-1 input[type=submit]:hover {

    --tw-bg-opacity: 1;

    background-color: rgb(0 73 144 / var(--tw-bg-opacity))
}

#views-exposed-form-search-page-1 input[type=submit] {

    --tw-text-opacity: 1;

    color: rgb(255 255 255 / var(--tw-text-opacity));

    font-weight: 700;

    --tw-bg-opacity: 1;

    background-color: rgb(233 154 3 / var(--tw-bg-opacity));

    padding-left: 1rem;

    padding-right: 1rem;

    padding-top: 0.5rem;

    padding-bottom: 0.5rem;

    border-radius: 9999px;

    cursor: pointer
}

.header #views-exposed-form-search-page-1 input[type=submit] {

    margin-left: 0.5rem
}

.header #views-exposed-form-search-page-1 input[type=submit]:hover {

    --tw-bg-opacity: 1;

    background-color: rgb(0 73 144 / var(--tw-bg-opacity))
}

.header #views-exposed-form-search-page-1 input[type=submit] {

    --tw-text-opacity: 1;

    color: rgb(255 255 255 / var(--tw-text-opacity));

    font-weight: 700;

    --tw-bg-opacity: 1;

    background-color: rgb(233 154 3 / var(--tw-bg-opacity));

    padding-left: 1rem;

    padding-right: 1rem;

    padding-top: 0.5rem;

    padding-bottom: 0.5rem;

    border-radius: 9999px;

    cursor: pointer;

    font-size: 0.875rem;

    line-height: 1.25rem
}

.header #views-exposed-form-search-page-1 input[type=text] {

    height: 33px;

    border-radius: 0.375rem;

    border-width: 1px;

    --tw-border-opacity: 1;

    border-color: rgb(227 230 232 / var(--tw-border-opacity));

    font-size: 13px
}


.form-container {
  gap: 16px;
}

.form-main {
  flex: 1;
  /* Takes up available space */
}

@media (min-width: 1024px) {

  .application-form-buttons-wrapper {
    position: sticky;
  }
}

.application-form-buttons-wrapper {
  top: 20px;
  align-self: flex-start;
  max-width: 300px;
}

.application-form-buttons input,
.application-form-buttons a {
  text-align: center;
}

.application-form .form-item {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.application-form .form-item label,
.application-form .field--type-datetime h4,
.application-form legend,
.application-form .field--name-field-app-status,
.application-form .vertical-tabs {
  display: none;
}

.application-form .field--name-field-app-status {
  display: block;
}

.application-form input[type="text"],
.application-form input[type="date"],
.application-form textarea,
.application-form input[type="email"] {
  background-color: #edf3f9;
  border-radius: 5px;
  border: 1px solid #9cbad7;
  padding: 5px 10px;
  width: 100%;
}

.application-form input[type="text"]:focus,
.application-form input[type="date"]:focus,
.application-form textarea:focus,
.application-form input[type="email"]:focus {
  --tw-border-opacity: 1;
  border-color: rgb(233 154 3 / var(--tw-border-opacity));
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}


.application-form input[type="text"]:disabled {
  opacity: 0.75;
}

.application-form h2 {
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.75rem;
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(217 217 219 / var(--tw-border-opacity));
  padding-bottom: 0.5rem;
}

.application-form .js-form-type-radio,
.application-form .form-checkboxes .js-form-type-checkbox {
  display: flex;
  margin-right: 1rem;
  align-items: center;
  --tw-bg-opacity: 1;
  background-color: rgb(238 238 240 / var(--tw-bg-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-radius: 0.375rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(217 217 219 / var(--tw-border-opacity));
}

.application-form .js-form-type-radio input {
  margin-right: 0.5rem;
}

.application-form .js-form-type-radio label,
.application-form .form-checkboxes .js-form-type-checkbox label {
  display: block;
}

.application-form .js-form-type-checkbox label {
  margin-left: 0.5rem;
}

.application-form #edit-field-app-work-permit,
.application-form #edit-field-app-criminal-offence,
.application-form #edit-field-app-gender,
.application-form #edit-field-app-marital,
.application-form #edit-field-app-ethnic-racial,
.application-form #edit-field-app-driving-license,
.application-form #edit-field-ctp-app-advertised-in,
.application-form #edit-field-app-ctp-honorific,
.application-form #edit-field-app-ctp-preferred-pronoun,
.application-form #edit-field-app-ctp-home-or-intl,
.application-form #edit-field-app-ctp-english,
.application-form #edit-field-app-ctp-gender,
.application-form #edit-field-app-ctp-orientation,
.application-form #edit-field-app-ctp-disability,
.application-form #edit-field-app-ctp-disability-details,
.application-form #edit-field-app-ctp-it-skills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.application-form #edit-field-app-work-permit > div:first-child.form-item,
.application-form #edit-field-app-criminal-offence > div:first-child.form-item,
.application-form #edit-field-app-gender > div:first-child.form-item,
.application-form #edit-field-app-marital > div:first-child.form-item,
.application-form #edit-field-app-ethnic-racial  > div:first-child.form-item,
.application-form #edit-field-app-driving-license >div:first-child.form-item {

}

.application-form-buttons-wrapper input[type="submit"],
.application-form-buttons-wrapper a.cancel,
.application-form-buttons-wrapper a.button--danger {
  --tw-bg-opacity: 1;
  background-color: rgb(233 154 3 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-radius: 0.5rem;
  margin-bottom: 0.5rem;
  display: block;
  cursor: pointer;
  width: 100%;
}

.application-form-buttons-wrapper input[type="submit"]:hover,
.application-form-buttons-wrapper a.cancel:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(0 73 144 / var(--tw-bg-opacity));
}

.application-form fieldset.form-item {
  padding: 0;
}

.application-form .required-in-error {
  --tw-bg-opacity: 1;
  background-color: rgb(248 180 180 / var(--tw-bg-opacity));
}

.application-form .required-in-error textarea,
.application-form .required-in-error input[type="checkbox"],
.application-form .required-in-error input[type="file"],
.application-form .required-in-error .description {
  /* @apply ml-4; */
}

.application-form .required-in-error .form-composite .fieldset-wrapper {
  /* @apply p-4; */
}

.application-form .required-in-error {
  padding: 1rem;
}

.required-fields-message-visible {
  display: block;
}

.required-fields-message-hidden {
  display: none;
}

.application-form  ol {
  list-style-type: decimal;
  list-style-position: outside;
  padding-left: 2.5rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.application-form ul {
  list-style-type: disc;
  list-style-position: outside;
  padding-left: 2.5rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.application-form .form-main a {
  --tw-text-opacity: 1;
  color: rgb(0 73 144 / var(--tw-text-opacity));
}

.application-form .form-main a:hover {
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
}

.application-form .studentships select,
.application-form .studentships .js-form-type-select {
  display: none;
}

.application-form .unrequired-radios .js-form-type-radio:first-child {
  display: none;
}

.application-form .fake-button-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
}

.application-form .fake-button-wrapper input[type="submit"] {
  color: transparent !important;
  text-shadow: none !important;
  position: relative;
  z-index: 1;
}

.application-form .fake-button-label {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  transform: translateY(-50%);
  color: white;
  pointer-events: none;
  z-index: 2;
  margin-top: -0.25rem;
}

.node-app-full .row {
  display: flex;
}

.node-app-full .row .left {
  font-weight: 700;
  margin-right: 2rem;
  width: 20%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.node-app-full h3 {
  --tw-bg-opacity: 1;
  background-color: rgb(238 238 240 / var(--tw-bg-opacity));
  padding: 1rem;
}

/* Fix for Superfish mobile menu flash issue - hide desktop menu on mobile */
@media only screen and (max-width: 1024px) {
  #superfish-main {
    display: none !important;
  }
}

.mobile-header .sf-accordion-toggle {
  position: absolute;
  right: 0;
  top: 10px;
}

.mobile-header .sf-accordion-toggle span {
  display: none;
}

.mobile-header .sf-accordion-toggle a {
  --tw-bg-opacity: 1;
  background-color: rgb(78 78 78 / var(--tw-bg-opacity));
  width: 50px;
  height: 50px;
  display: block;
}

.mobile-header .sf-accordion-toggle .sf-expanded {
  --tw-bg-opacity: 1;
  background-color: rgb(78 78 78 / var(--tw-bg-opacity));
}

.mobile-header .sf-accordion-toggle a span:after {
  border-radius: 2px;
  height: 4px;
  content: " ";
  left: 25%;
  top: 31%;
  width: 50%;
  background: #e99a03 none repeat scroll 0 0;
  box-shadow: 0 10px 0 #e99a03, 0 20px 0 #e99a03;
}

.mobile-header #superfish-main-accordion {
  margin-top: 16px;
  margin-bottom: 16px;
  --tw-bg-opacity: 1;
  background-color: rgb(78 78 78 / var(--tw-bg-opacity));
}

.mobile-header #superfish-main-accordion a {
  font-weight: 100;
}

#superfish-main--2-toggle {
  display: block;
  width: 60px;
  height: 60px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
  background-image: url('/themes/custom/frontend/img/hamburger-off.png');
}

#superfish-main--2-toggle.sf-expanded,
#superfish-main--2-toggle:hover {
  background-image: url('/themes/custom/frontend/img/hamburger.png');
}

#superfish-main--2-toggle span {
  display: none;
}

.mobile-header .sf-accordion {
  --tw-bg-opacity: 1;
  background-color: rgb(78 78 78 / var(--tw-bg-opacity));
}

.mobile-header .sf-accordion li a {
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
  font-weight: 100;
  font-size: 1.125rem;
  line-height: 1.75rem;
  text-transform: uppercase;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.mobile-header .sf-accordion li a:hover {
  background-color: #605F5B;
}

.mobile-header .sf-accordion li {
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
}

.mobile-header .sf-accordion li a:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.mobile-header ul.sf-menu.menu {
  margin-top: 1rem;
}

.mobile-header .sf-sub-indicator {
  opacity: 1 !important;
  height: 30px !important;
  width: 30px !important;
}

.mobile-header .sf-sub-indicator:after {
  content: "" !important;
  display: inline-block;
  width: 30px;
  height: 30px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url('/themes/custom/frontend/img/down-chevron-blue.png');
}

.mobile-header li:hover .sf-sub-indicator:after {
  background-image: url('/themes/custom/frontend/img/down-chevron-white.png');
}

.sitemap {}

.sitemap .sitemap-item {
  margin-bottom: 2rem;
}

.sitemap .sitemap-item h2 {
  --tw-gradient-to: #4e4e4e var(--tw-gradient-to-position);
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 2rem;
  margin-bottom: 1rem;
}

.sitemap .sitemap-item a {
  --tw-text-opacity: 1;
  color: rgb(0 73 144 / var(--tw-text-opacity));
}

.sitemap .sitemap-item a:hover {
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
}

.sitemap .sitemap-item img {
  display: none;
}

.sitemap .sitemap-item ul {
  list-style-type: disc;
  list-style-position: outside;
  padding-left: 1.25rem;
}

.niab-image-left-25 {
  float: left;
  max-width: 25%;
  height: auto !important;
  margin: 0 20px 20px 0;
}

.niab-image-left-50 {
  float: left;
  max-width: 50%;
  height: auto !important;
  margin: 0 20px 20px 0;
}

.niab-image-left-75 {
  float: left;
  max-width: 75%;
  height: auto !important;
  margin: 0 20px 20px 0;
}

.niab-image-centre-25 {
  display: block;
  margin: 0 auto !important;
  max-width: 25%;
  height: auto !important;
}

.niab-image-centre-50 {
  display: block;
  margin: 0 auto !important;
  max-width: 50%;
  height: auto !important;
}

.niab-image-centre-75 {
  display: block;
  margin: 0 auto !important;
  max-width: 75%;
  height: auto !important;
}

.niab-image-centre-100 {
  display: block;
  margin: 0 auto !important;
  max-width: 100%;
  height: auto !important;
}

.niab-image-right-25 {
  float: right;
  max-width: 25%;
  height: auto !important;
  margin: 0 0 20px 20px;
}

.niab-image-right-50 {
  float: right;
  max-width: 50%;
  height: auto !important;
  margin: 0 0 20px 20px;
}

.niab-image-right-75 {
  float: right;
  max-width: 75%;
  height: auto !important;
  margin: 0 0 20px 20px;
}

.user-login-form .form-item label,
.user-pass .form-item label {
  display: block;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.25rem;
}

.user-login-form .form-item,
.user-pass .form-item {
  margin-bottom: 1rem;
}

.user-login-form input[type="submit"],
.user-pass input[type="submit"],
.user-pass-reset input[type="submit"] {
  --tw-bg-opacity: 1;
  background-color: rgb(233 154 3 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-radius: 0.5rem;
  margin-bottom: 0.5rem;
  display: block;
  cursor: pointer;
}

.user-login-form input[type="submit"]:hover,
.user-pass input[type="submit"]:hover {
  background-color: #FF8C00;
}

.user-login-form .form-item label.form-required::after,
.user-pass .form-item label.form-required::after {
  content: " *";
  color: red;
  margin-left: 4px;
}

.user-pass p,
.user-pass-reset p {
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-bottom: 1rem;
}


ul.breadcrumb {
  padding: .5em 1em .5em 0;
}

ul.breadcrumb li {
  font-weight: 400;
  margin: 0 0 0 0;
  padding: 0 1.125em 0.125em 0;
  display: inline-block;
  list-style: none;
  font-size: 14px;
}

ul.breadcrumb li a {
  --tw-text-opacity: 1;
  color: rgb(0 73 144 / var(--tw-text-opacity));
}

ul.breadcrumb li a:hover {
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
}

ul.breadcrumb li::after {
  content: ">";
  padding-left: 1.125em;
}

ul.breadcrumb li:last-child::after {
  display: none;
}

.webform input[type="text"],
.webform input[type="date"],
.webform textarea,
.webform input[type="email"] {
  background-color: #edf3f9;
  border-radius: 5px;
  border: 1px solid #9cbad7;
  padding: 5px 10px;
  width: 100%;
}

.webform .form-item {
  display: flex;
  flex-direction: column;
  /* @apply lg:w-1/2; */
  margin-bottom: 1rem;
}

.webform .form-item label {
  font-weight: 700;
}

.webform input[type="submit"] {
  --tw-bg-opacity: 1;
  background-color: rgb(233 154 3 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-radius: 0.5rem;
  margin-bottom: 0.5rem;
  display: block;
  cursor: pointer;
  width: auto;
}

.webform .form-actions {
  margin-top: 2rem;
}

.webform-buttons-wrapper input[type="submit"]:hover,
.webform-buttons-wrapper a.cancel:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(0 73 144 / var(--tw-bg-opacity));
}

.webform a.cancel {
  display: none;
}

.webform p a {
  --tw-text-opacity: 1;
  color: rgb(0 73 144 / var(--tw-text-opacity));
}

.webform p a:hover {
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
}

.webform h1 {
  font-size: 2.25rem;
  line-height: 2.5rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

.webform input[type="text"]:focus,
.webform input[type="date"]:focus,
.webform textarea:focus,
.webform input[type="email"]:focus {
  --tw-border-opacity: 1;
  border-color: rgb(233 154 3 / var(--tw-border-opacity));
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.webform .form-checkboxes .form-item,
.webform .js-form-type-checkbox,
.webform .js-webform-radios .form-item {
  display: flex;
  flex-direction: row;
  width: 100%;
  gap: 0.5rem;
  align-items: center;
}

.webform .form-checkboxes .form-item label,
.webform .js-form-type-checkbox label,
.webform .js-webform-radios .form-item label {
  font-weight: 400;
}

.webform legend {
  font-weight: 700;
  margin-bottom: 1rem;
}

.webform .js-form-type-processed-text p {
  margin-bottom: 1rem;
}

.webform img {
  height: auto !important;
}

.webform h4 {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 2rem;
  margin-bottom: 1rem;
}

.webform ol {
  list-style-type: decimal;
  list-style-position: outside;
  padding-left: 2.5rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.webform ul {
  list-style-type: disc;
  list-style-position: outside;
  padding-left: 2.5rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.webform-likert-table th {
  background: #547830 !important;
  color: white !important;
  padding: 5px !important;
  border: solid 1px lightgrey !important;
}

.webform-likert-table tr:nth-child(odd) {
  background-color: #ddd;
}

.webform-likert-table tr td {
  padding: 5px !important;
  border: solid 1px lightgrey !important;
}

.webform-likert-table tr td .js-form-type-radio {
  text-align: center;
  display: block;
  margin-bottom: 0;
}

.webform-likert-table tr td:first-child > div {
  /* width: 30px; */
}

.webform-likert-table-wrapper th:first-child,
.webform-likert-table-wrapper td:first-child {
  width: 2% !important;
  text-align: inherit;
}

.webform-likert-table-wrapper th:first-child .form-item,
.webform-likert-table-wrapper td:first-child .form-item {
  text-align: center;
  margin-top: 1em;
}

/* Table Styles - Applied to all tables automatically */
table {
  margin-bottom: 1.5rem;
  width: 100%;
  border-collapse: collapse;
}

/* Make tables responsive by default */
table {
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Table headers */
table th {
  border-bottom-width: 2px;
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  text-align: left;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity));
}

/* Table cells */
table td {
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity));
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}

/* Table body */
table tbody tr {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
table tbody tr:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}


/* Table caption styling */
table caption {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  text-align: left;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}

/* Table footer */
table tfoot td,
table tfoot th {
  border-top-width: 2px;
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
  font-weight: 600;
}

/* First column often contains headers in CMS tables */
table td:first-child {
  font-weight: 500;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  table {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
  
  table th,
  table td {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  
  /* Prevent text wrapping on small screens */
  table th,
  table td {
    white-space: nowrap;
  }
}


/* Ensure tables don't break layouts */
.content table,
.node__content table,
.field--type-text-with-summary table,
.field--type-text-long table {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  max-width: 100%;
}

/* Better handling of empty cells */
table td:empty::before {
  content: "\00a0"; /* Non-breaking space */
}
/* CRM Events Tabs Styling */

/* Tab container wrapper - white background */
.crm-events-tabs {
  background-color: white;
  padding: 0;
  border-radius: 0.5rem;
  margin: 1rem 0;
}

/* Tab navigation wrapper for scroll controls */
.crm-events-tabs .tab-nav-wrapper {
  position: relative;
  overflow: hidden;
}

/* Tab navigation container - now scrollable */
.crm-events-tabs .tab-nav {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0;
  padding: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #ccc transparent;
  padding-bottom: 5px; /* Space for scrollbar */
}

/* Custom scrollbar for webkit browsers */
.crm-events-tabs .tab-nav::-webkit-scrollbar {
  height: 6px;
}

.crm-events-tabs .tab-nav::-webkit-scrollbar-track {
  background: transparent;
}

.crm-events-tabs .tab-nav::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border-radius: 3px;
}

.crm-events-tabs .tab-nav::-webkit-scrollbar-thumb:hover {
  background-color: #999;
}

/* Scroll buttons */
.crm-events-tabs .scroll-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: white;
  border: 1px solid #ddd;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 20;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
}

.crm-events-tabs .scroll-button:hover {
  background-color: #f5f5f5;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.crm-events-tabs .scroll-button.scroll-left {
  left: 5px;
}

.crm-events-tabs .scroll-button.scroll-right {
  right: 5px;
}

.crm-events-tabs .scroll-button.hidden {
  display: none;
}

/* Gradient fade effect at edges */
.crm-events-tabs .tab-nav-wrapper::before,
.crm-events-tabs .tab-nav-wrapper::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 5px; /* Account for scrollbar */
  width: 30px;
  z-index: 15;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.crm-events-tabs .tab-nav-wrapper::before {
  left: 0;
  background: linear-gradient(to right, white, transparent);
}

.crm-events-tabs .tab-nav-wrapper::after {
  right: 0;
  background: linear-gradient(to left, white, transparent);
}

.crm-events-tabs .tab-nav-wrapper.can-scroll-left::before,
.crm-events-tabs .tab-nav-wrapper.can-scroll-right::after {
  opacity: 1;
}

/* Tab buttons - color will be applied dynamically via JavaScript */
.crm-events-tabs .tab-button {
  color: white;
  padding: 0.75rem 1.5rem;
  padding-bottom: calc(0.75rem + 10px); /* Extend tabs down to cover gap */
  border-radius: 0.5rem 0.5rem 0 0;
  border: none;
  cursor: pointer;
  font-weight: 600;
  font-size: 1rem;
  transition: all 0.3s ease;
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-width: 180px;
  max-width: 240px;
  justify-content: center;
  text-align: center;
  height: 85px;
  background-color: #cccccc; /* Default fallback color */
  flex-shrink: 0; /* Prevent tabs from shrinking */
  white-space: normal; /* Allow text wrapping */
}

/* Tab icon (leaf shape) - using SVG background */
.crm-events-tabs .tab-button::after {
  content: "";
  width: 24px;
  height: 24px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" fill="white"><path d="M19.2 19.4c-.2 0-.4-.1-.5-.4l-1.3-4.7c-.9-3.2.9-6.5 4-7.5l8-2.7c.2-.1.3 0 .5.1 0 0 .1.1.1.3V13c0 3.3-2.6 6-5.9 6.1l-4.9.3zM29 5.2l-7.4 2.5c-2.6.9-4.1 3.7-3.3 6.3l1.2 4.3 4.5-.2c2.7-.1 4.9-2.4 4.9-5.2l.1-7.7z"></path><path d="M24.8 11.6c-.2 0-.5-.2-.5-.4 0-.3.1-.5.4-.6l2.5-.4c.3 0 .5.1.6.4 0 .3-.1.5-.4.6l-2.6.4zm-1.5 2c-.2 0-.5-.2-.5-.4l-.6-3.5c0-.3.1-.5.4-.6.3 0 .5.1.6.4l.6 3.5c0 .3-.2.6-.5.6zm-1.5 2.1c-.2 0-.5-.2-.5-.4 0-.3.1-.5.4-.6l3.5-.6c.3 0 .5.1.6.4 0 .3-.1.5-.4.6l-3.6.6c.1 0 0 0 0 0zm-1.5 2c-.2 0-.5-.2-.5-.4l-.5-2.9c0-.3.1-.5.4-.6.3 0 .5.1.6.4l.5 2.9c.1.3-.1.6-.5.6.1 0 .1 0 0 0z"></path><path d="M19.2 19.4c-.1 0-.2 0-.3-.1-.2-.2-.3-.5-.1-.7l7.9-11c.2-.2.5-.3.7-.1.2.2.3.5.1.7l-7.9 11c-.1.1-.3.2-.4.2zm-5.3-.6-5.4-.3c-3.6-.2-6.4-3.1-6.4-6.7L2 2.5c0-.2.1-.3.2-.4.1-.1.3-.1.5-.1l8.8 3c3.4 1.2 5.3 4.8 4.3 8.2l-1.5 5.2c0 .3-.2.4-.4.4zM3 3.2l.1 8.6c0 3.1 2.4 5.6 5.5 5.7l5 .2 1.3-4.8c.8-2.9-.8-6-3.7-7L3 3.2zm12.4 9.9z"></path><path d="m7.7 10.2-2.8-.4c-.3 0-.5-.3-.4-.6 0-.3.3-.5.6-.4l2.7.4c.3 0 .5.3.4.6 0 .3-.2.4-.5.4zm1.7 2.3c-.1 0-.1 0 0 0-.4-.1-.5-.3-.5-.6L9.5 8c0-.3.3-.5.6-.4.3 0 .5.3.4.6l-.6 3.9c-.1.2-.3.4-.5.4zm1.6 2.3s-.1 0 0 0l-4-.6c-.3 0-.5-.3-.4-.6 0-.3.3-.5.6-.4l3.9.6c.3 0 .5.3.4.6-.1.2-.3.4-.5.4zm1.6 2.2c-.4-.1-.5-.3-.5-.6l.5-3.2c0-.3.3-.5.6-.4.3 0 .5.3.4.6l-.5 3.2c0 .2-.2.4-.5.4zm3.2 9.2c-.3 0-.5-.2-.5-.5 0-.4.1-.8.1-1.2.2-1.3.8-2.5 1.6-3.6l1.7-2.3c.2-.2.5-.3.7-.1.2.2.3.5.1.7l-1.7 2.3c-.7.9-1.2 2-1.4 3.2-.1.3-.1.7-.1 1.1 0 .2-.2.4-.5.4z"></path><path d="M14.1 30c-.1 0-.2 0-.3-.1-.2-.2-.3-.5-.1-.7.9-1.2 1.5-2.7 1.7-4.2v-.5c.1-2-.5-3.9-1.6-5.5L4.7 6.4c-.2-.2-.1-.5.1-.7.2-.1.6-.1.7.1l9.1 12.6c1.3 1.8 1.9 3.9 1.8 6.1v.5c-.2 1.7-.8 3.3-1.8 4.7-.2.2-.3.3-.5.3z"></path></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
}

/* Active tab styling - keep color background with white text */
.crm-events-tabs .tab-button.is-active {
  color: white !important;
  position: relative;
  z-index: 10;
}

/* Hover state for inactive tabs */
.crm-events-tabs .tab-button:not(.is-active):hover {
  opacity: 0.8;
}

/* Tab content container with colored border - color will be applied dynamically */
.crm-events-tabs .tab-content-wrapper {
  padding: 10px;
  border-radius: 0 0.5rem 0.5rem 0.5rem;
  transition: background-color 0.3s ease;
  margin-top: -10px; /* Pull content up to meet extended tabs */
  position: relative;
  background-color: #cccccc; /* Default fallback color */
}

/* Tab content inner container */
.crm-events-tabs .tab-content {
  background-color: white;
  padding: 2rem;
  border-radius: 0.25rem;
  min-height: 400px;
}

/* Hide inactive tab panes */
.crm-events-tabs .tab-pane {
  display: none;
}

/* Show active tab pane */
.crm-events-tabs .tab-pane.is-active {
  display: block;
}

/* Table styling within tabs */
.crm-events-tabs table {
  width: 100%;
  border-collapse: collapse;
  background-color: white;
}

.crm-events-tabs table thead tr {
  background-color: #f8f9fa;
  border-top: 1px solid #dee2e6;
  border-bottom: 2px solid #dee2e6;
}

.crm-events-tabs table th {
  padding: 0.75rem 1.5rem;
  text-align: left;
  font-size: 0.875rem;
  font-weight: 700;
  color: #495057;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.crm-events-tabs table tbody tr {
  border-bottom: 1px solid #dee2e6;
}

.crm-events-tabs table tbody tr:hover {
  background-color: #f8f9fa;
}

.crm-events-tabs table td {
  padding: 1rem 1.5rem;
  font-size: 0.875rem;
  color: #212529;
}

/* Loading placeholder */
.crm-events-tabs .loading-placeholder {
  text-align: center;
  padding: 3rem;
  color: #6c757d;
  font-size: 1.125rem;
}

/* No events message */
.crm-events-tabs .text-gray-500 {
  text-align: center;
  padding: 3rem;
  color: #6c757d;
  font-size: 1.125rem;
}

/* Book button styling (already styled inline, but adding for consistency) */
.crm-events-tabs .crm-book-button {
  background-color: #e99a03 !important;
  color: white !important;
  padding: 0.5rem 1rem;
  border-radius: 0.375rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  transition: background-color 0.3s ease;
  font-weight: 500;
}

.crm-events-tabs .crm-book-button:hover {
  background-color: #FF8C00 !important;
  color: white !important;
  text-decoration: none;
}

/* Link styling for event titles */
.crm-events-tabs a:not(.crm-book-button) {
  color: #0066cc;
  text-decoration: none;
}

.crm-events-tabs a:not(.crm-book-button):hover {
  color: #0052a3;
  text-decoration: underline;
}

/* Mobile dropdown styling */
.crm-events-tabs .mobile-tab-selector {
  display: none;
  position: relative;
  margin-bottom: 1rem;
}

.crm-events-tabs .mobile-dropdown-button {
  width: 100%;
  padding: 1rem;
  background-color: white;
  border: 2px solid #ddd;
  border-radius: 0.5rem;
  font-size: 1rem;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: all 0.3s ease;
}

.crm-events-tabs .mobile-dropdown-button:hover {
  border-color: #999;
}

.crm-events-tabs .mobile-dropdown-button.open {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-color: transparent;
}

.crm-events-tabs .mobile-dropdown-arrow {
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #666;
  transition: transform 0.3s ease;
}

.crm-events-tabs .mobile-dropdown-button.open .mobile-dropdown-arrow {
  transform: rotate(180deg);
}

.crm-events-tabs .mobile-dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background-color: white;
  border: 2px solid #ddd;
  border-top: none;
  border-radius: 0 0 0.5rem 0.5rem;
  max-height: 300px;
  overflow-y: auto;
  z-index: 100;
  display: none;
}

.crm-events-tabs .mobile-dropdown-menu.open {
  display: block;
}

.crm-events-tabs .mobile-dropdown-item {
  padding: 1rem;
  border-bottom: 1px solid #eee;
  cursor: pointer;
  font-size: 0.95rem;
  color: white;
  font-weight: 500;
  transition: all 0.3s ease;
}

.crm-events-tabs .mobile-dropdown-item:last-child {
  border-bottom: none;
}

.crm-events-tabs .mobile-dropdown-item:hover {
  opacity: 0.8;
}

.crm-events-tabs .mobile-dropdown-item.active {
  position: relative;
}

.crm-events-tabs .mobile-dropdown-item.active::after {
  content: '✓';
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  font-weight: bold;
}

/* Mobile responsive behavior */
@media (max-width: 768px) {
  /* Hide desktop tabs on mobile */
  .crm-events-tabs .tab-nav-wrapper {
    display: none;
  }
  
  /* Show mobile dropdown on mobile */
  .crm-events-tabs .mobile-tab-selector {
    display: block;
  }
  
  /* Adjust tab content for mobile */
  .crm-events-tabs .tab-content {
    padding: 1rem;
    min-height: 300px;
  }
  
  /* Adjust table styling for mobile */
  .crm-events-tabs table {
    font-size: 0.8rem;
  }
  
  .crm-events-tabs table th,
  .crm-events-tabs table td {
    padding: 0.5rem;
  }
}

/*
! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com
*//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #E5E7EB; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9CA3AF; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9CA3AF; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden] {
  display: none;
}

.tooltip-arrow,.tooltip-arrow:before {
  position: absolute;
  width: 8px;
  height: 8px;
  background: inherit;
}

.tooltip-arrow {
  visibility: hidden;
}

.tooltip-arrow:before {
  content: "";
  visibility: visible;
  transform: rotate(45deg);
}

[data-tooltip-style^='light'] + .tooltip > .tooltip-arrow:before {
  border-style: solid;
  border-color: #e5e7eb;
}

[data-tooltip-style^='light'] + .tooltip[data-popper-placement^='top'] > .tooltip-arrow:before {
  border-bottom-width: 1px;
  border-right-width: 1px;
}

[data-tooltip-style^='light'] + .tooltip[data-popper-placement^='right'] > .tooltip-arrow:before {
  border-bottom-width: 1px;
  border-left-width: 1px;
}

[data-tooltip-style^='light'] + .tooltip[data-popper-placement^='bottom'] > .tooltip-arrow:before {
  border-top-width: 1px;
  border-left-width: 1px;
}

[data-tooltip-style^='light'] + .tooltip[data-popper-placement^='left'] > .tooltip-arrow:before {
  border-top-width: 1px;
  border-right-width: 1px;
}

.tooltip[data-popper-placement^='top'] > .tooltip-arrow {
  bottom: -4px;
}

.tooltip[data-popper-placement^='bottom'] > .tooltip-arrow {
  top: -4px;
}

.tooltip[data-popper-placement^='left'] > .tooltip-arrow {
  right: -4px;
}

.tooltip[data-popper-placement^='right'] > .tooltip-arrow {
  left: -4px;
}

.tooltip.invisible > .tooltip-arrow:before {
  visibility: hidden;
}

[data-popper-arrow],[data-popper-arrow]:before {
  position: absolute;
  width: 8px;
  height: 8px;
  background: inherit;
}

[data-popper-arrow] {
  visibility: hidden;
}

[data-popper-arrow]:before {
  content: "";
  visibility: visible;
  transform: rotate(45deg);
}

[data-popper-arrow]:after {
  content: "";
  visibility: visible;
  transform: rotate(45deg);
  position: absolute;
  width: 9px;
  height: 9px;
  background: inherit;
}

[role="tooltip"] > [data-popper-arrow]:before {
  border-style: solid;
  border-color: #e5e7eb;
}

.dark [role="tooltip"] > [data-popper-arrow]:before {
  border-style: solid;
  border-color: #4b5563;
}

[role="tooltip"] > [data-popper-arrow]:after {
  border-style: solid;
  border-color: #e5e7eb;
}

.dark [role="tooltip"] > [data-popper-arrow]:after {
  border-style: solid;
  border-color: #4b5563;
}

[data-popover][role="tooltip"][data-popper-placement^='top'] > [data-popper-arrow]:before {
  border-bottom-width: 1px;
  border-right-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='top'] > [data-popper-arrow]:after {
  border-bottom-width: 1px;
  border-right-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='right'] > [data-popper-arrow]:before {
  border-bottom-width: 1px;
  border-left-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='right'] > [data-popper-arrow]:after {
  border-bottom-width: 1px;
  border-left-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='bottom'] > [data-popper-arrow]:before {
  border-top-width: 1px;
  border-left-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='bottom'] > [data-popper-arrow]:after {
  border-top-width: 1px;
  border-left-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='left'] > [data-popper-arrow]:before {
  border-top-width: 1px;
  border-right-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='left'] > [data-popper-arrow]:after {
  border-top-width: 1px;
  border-right-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='top'] > [data-popper-arrow] {
  bottom: -5px;
}

[data-popover][role="tooltip"][data-popper-placement^='bottom'] > [data-popper-arrow] {
  top: -5px;
}

[data-popover][role="tooltip"][data-popper-placement^='left'] > [data-popper-arrow] {
  right: -5px;
}

[data-popover][role="tooltip"][data-popper-placement^='right'] > [data-popper-arrow] {
  left: -5px;
}

[role="tooltip"].invisible > [data-popper-arrow]:before {
  visibility: hidden;
}

[role="tooltip"].invisible > [data-popper-arrow]:after {
  visibility: hidden;
}

[type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  border-color: #6B7280;
  border-width: 1px;
  border-radius: 0px;
  padding-top: 0.5rem;
  padding-right: 0.75rem;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  font-size: 1rem;
  line-height: 1.5rem;
  --tw-shadow: 0 0 #0000;
}

[type='text']:focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #1C64F2;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-color: #1C64F2;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #6B7280;
  opacity: 1;
}

input::placeholder,textarea::placeholder {
  color: #6B7280;
  opacity: 1;
}

::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}

::-webkit-date-and-time-value {
  min-height: 1.5em;
}

select:not([size]) {
  background-image: url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 10 6'%3e %3cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m1 1 4 4 4-4'/%3e %3c/svg%3e");
  background-position: right 0.75rem center;
  background-repeat: no-repeat;
  background-size: 0.75em 0.75em;
  padding-right: 2.5rem;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}

[multiple] {
  background-image: initial;
  background-position: initial;
  background-repeat: unset;
  background-size: initial;
  padding-right: 0.75rem;
  -webkit-print-color-adjust: unset;
          print-color-adjust: unset;
}

[type='checkbox'],[type='radio'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
  display: inline-block;
  vertical-align: middle;
  background-origin: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  flex-shrink: 0;
  height: 1rem;
  width: 1rem;
  color: #1C64F2;
  background-color: #fff;
  border-color: #6B7280;
  border-width: 1px;
  --tw-shadow: 0 0 #0000;
}

[type='checkbox'] {
  border-radius: 0px;
}

[type='radio'] {
  border-radius: 100%;
}

[type='checkbox']:focus,[type='radio']:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #1C64F2;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

[type='checkbox']:checked,[type='radio']:checked,.dark [type='checkbox']:checked,.dark [type='radio']:checked {
  border-color: transparent;
  background-color: currentColor;
  background-size: 0.55em 0.55em;
  background-position: center;
  background-repeat: no-repeat;
}

[type='checkbox']:checked {
  background-image: url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3e %3c/svg%3e");
  background-repeat: no-repeat;
  background-size: 0.55em 0.55em;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}

[type='radio']:checked {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
  background-size: 1em 1em;
}

.dark [type='radio']:checked {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
  background-size: 1em 1em;
}

[type='checkbox']:indeterminate {
  background-image: url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3e %3c/svg%3e");
  background-color: currentColor;
  border-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.55em 0.55em;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}

[type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus {
  border-color: transparent;
  background-color: currentColor;
}

[type='file'] {
  background: unset;
  border-color: inherit;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-size: unset;
  line-height: inherit;
}

[type='file']:focus {
  outline: 1px auto inherit;
}

input[type=file]::file-selector-button {
  color: white;
  background: #1F2937;
  border: 0;
  font-weight: 500;
  font-size: 0.875rem;
  cursor: pointer;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 2rem;
  padding-right: 1rem;
  margin-inline-start: -1rem;
  margin-inline-end: 1rem;
}

input[type=file]::file-selector-button:hover {
  background: #374151;
}

.dark input[type=file]::file-selector-button {
  color: white;
  background: #4B5563;
}

.dark input[type=file]::file-selector-button:hover {
  background: #6B7280;
}

input[type="range"]::-webkit-slider-thumb {
  height: 1.25rem;
  width: 1.25rem;
  background: #1C64F2;
  border-radius: 9999px;
  border: 0;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}

input[type="range"]:disabled::-webkit-slider-thumb {
  background: #9CA3AF;
}

.dark input[type="range"]:disabled::-webkit-slider-thumb {
  background: #6B7280;
}

input[type="range"]:focus::-webkit-slider-thumb {
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1px;
  --tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity));
}

input[type="range"]::-moz-range-thumb {
  height: 1.25rem;
  width: 1.25rem;
  background: #1C64F2;
  border-radius: 9999px;
  border: 0;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}

input[type="range"]:disabled::-moz-range-thumb {
  background: #9CA3AF;
}

.dark input[type="range"]:disabled::-moz-range-thumb {
  background: #6B7280;
}

input[type="range"]::-moz-range-progress {
  background: #3F83F8;
}

input[type="range"]::-ms-fill-lower {
  background: #3F83F8;
}

.toggle-bg:after {
  content: "";
  position: absolute;
  top: 0.125rem;
  left: 0.125rem;
  background: white;
  border-color: #D1D5DB;
  border-width: 1px;
  border-radius: 9999px;
  height: 1.25rem;
  width: 1.25rem;
  transition-property: background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;
  transition-duration: .15s;
  box-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
}

input:checked + .toggle-bg:after {
  transform: translateX(100%);;
  border-color: white;
}

input:checked + .toggle-bg {
  background: #1C64F2;
  border-color: #1C64F2;
}

*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(63 131 248 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(63 131 248 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}
.\!container {
  width: 100% !important;
}
.container {
  width: 100%;
}
@media (min-width: 640px) {

  .\!container {
    max-width: 640px !important;
  }

  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {

  .\!container {
    max-width: 768px !important;
  }

  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {

  .\!container {
    max-width: 1024px !important;
  }

  .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {

  .\!container {
    max-width: 1280px !important;
  }

  .container {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {

  .\!container {
    max-width: 1536px !important;
  }

  .container {
    max-width: 1536px;
  }
}
.visible {
  visibility: visible;
}
.invisible {
  visibility: hidden;
}
.collapse {
  visibility: collapse;
}
.static {
  position: static;
}
.fixed {
  position: fixed;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.inset-0 {
  inset: 0px;
}
.bottom-0 {
  bottom: 0px;
}
.bottom-\[60px\] {
  bottom: 60px;
}
.left-0 {
  left: 0px;
}
.left-1\/2 {
  left: 50%;
}
.right-0 {
  right: 0px;
}
.top-0 {
  top: 0px;
}
.isolate {
  isolation: isolate;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.z-30 {
  z-index: 30;
}
.z-40 {
  z-index: 40;
}
.z-50 {
  z-index: 50;
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.col-span-1 {
  grid-column: span 1 / span 1;
}
.col-span-3 {
  grid-column: span 3 / span 3;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.my-16 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.mb-1 {
  margin-bottom: 0.25rem;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-12 {
  margin-bottom: 3rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-20 {
  margin-bottom: 5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.mb-6 {
  margin-bottom: 1.5rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
.ml-1 {
  margin-left: 0.25rem;
}
.mr-1 {
  margin-right: 0.25rem;
}
.mr-10 {
  margin-right: 2.5rem;
}
.mr-4 {
  margin-right: 1rem;
}
.mr-8 {
  margin-right: 2rem;
}
.mt-0 {
  margin-top: 0px;
}
.mt-10 {
  margin-top: 2.5rem;
}
.mt-12 {
  margin-top: 3rem;
}
.mt-2 {
  margin-top: 0.5rem;
}
.mt-3 {
  margin-top: 0.75rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mt-5 {
  margin-top: 1.25rem;
}
.mt-6 {
  margin-top: 1.5rem;
}
.mt-8 {
  margin-top: 2rem;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.inline {
  display: inline;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.table {
  display: table;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.h-4 {
  height: 1rem;
}
.h-6 {
  height: 1.5rem;
}
.h-9 {
  height: 2.25rem;
}
.w-1\/2 {
  width: 50%;
}
.w-1\/4 {
  width: 25%;
}
.w-1\/6 {
  width: 16.666667%;
}
.w-2\/5 {
  width: 40%;
}
.w-3\/4 {
  width: 75%;
}
.w-4 {
  width: 1rem;
}
.w-4\/5 {
  width: 80%;
}
.w-4\/6 {
  width: 66.666667%;
}
.w-64 {
  width: 16rem;
}
.w-\[160px\] {
  width: 160px;
}
.w-\[30px\] {
  width: 30px;
}
.w-full {
  width: 100%;
}
.flex-1 {
  flex: 1 1 0%;
}
.flex-shrink {
  flex-shrink: 1;
}
.-translate-x-1\/2 {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-full {
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-full {
  --tw-translate-y: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-full {
  --tw-translate-y: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform-none {
  transform: none;
}
.cursor-default {
  cursor: default;
}
.cursor-not-allowed {
  cursor: not-allowed;
}
.cursor-pointer {
  cursor: pointer;
}
.resize {
  resize: both;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.grid-cols-7 {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.items-start {
  align-items: flex-start;
}
.items-end {
  align-items: flex-end;
}
.items-center {
  align-items: center;
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.gap-4 {
  gap: 1rem;
}
.gap-8 {
  gap: 2rem;
}
.gap-x-4 {
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.gap-x-6 {
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.gap-x-8 {
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
.gap-y-0 {
  row-gap: 0px;
}
.gap-y-6 {
  row-gap: 1.5rem;
}
.gap-y-8 {
  row-gap: 2rem;
}
.space-x-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
  margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1rem * var(--tw-space-x-reverse));
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-y-8 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}
.overflow-hidden {
  overflow: hidden;
}
.scroll-smooth {
  scroll-behavior: smooth;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-3xl {
  border-radius: 1.5rem;
}
.rounded-lg {
  border-radius: 0.5rem;
}
.rounded-l-lg {
  border-top-left-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}
.rounded-r-lg {
  border-top-right-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.border {
  border-width: 1px;
}
.border-0 {
  border-width: 0px;
}
.border-4 {
  border-width: 4px;
}
.border-b {
  border-bottom-width: 1px;
}
.border-t {
  border-top-width: 1px;
}
.border-blue-600 {
  --tw-border-opacity: 1;
  border-color: rgb(28 100 242 / var(--tw-border-opacity));
}
.border-blue-700 {
  --tw-border-opacity: 1;
  border-color: rgb(26 86 219 / var(--tw-border-opacity));
}
.border-brand-grey {
  --tw-border-opacity: 1;
  border-color: rgb(227 230 232 / var(--tw-border-opacity));
}
.border-gray-100 {
  --tw-border-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-border-opacity));
}
.border-gray-300 {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity));
}
.border-gray-900\/5 {
  border-color: rgb(17 24 39 / 0.05);
}
.bg-\[rgba\(13\2c 60\2c 105\2c 0\.9\)\] {
  background-color: rgba(13,60,105,0.9);
}
.bg-blue-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(26 86 219 / var(--tw-bg-opacity));
}
.bg-brand-black {
  --tw-bg-opacity: 1;
  background-color: rgb(78 78 78 / var(--tw-bg-opacity));
}
.bg-brand-grey {
  --tw-bg-opacity: 1;
  background-color: rgb(227 230 232 / var(--tw-bg-opacity));
}
.bg-brand-grey-light {
  --tw-bg-opacity: 1;
  background-color: rgb(238 238 240 / var(--tw-bg-opacity));
}
.bg-brand-primary {
  --tw-bg-opacity: 1;
  background-color: rgb(0 73 144 / var(--tw-bg-opacity));
}
.bg-brand-secondary {
  --tw-bg-opacity: 1;
  background-color: rgb(233 154 3 / var(--tw-bg-opacity));
}
.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
.bg-gray-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity));
}
.bg-gray-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}
.bg-gray-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity));
}
.bg-red-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(248 180 180 / var(--tw-bg-opacity));
}
.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.bg-white\/50 {
  background-color: rgb(255 255 255 / 0.5);
}
.bg-opacity-50 {
  --tw-bg-opacity: 0.5;
}
.bg-texture {
  background-image: url('/themes/custom/frontend/img/texture.png');
}
.p-1 {
  padding: 0.25rem;
}
.p-2 {
  padding: 0.5rem;
}
.p-2\.5 {
  padding: 0.625rem;
}
.p-4 {
  padding: 1rem;
}
.px-14 {
  padding-left: 3.5rem;
  padding-right: 3.5rem;
}
.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.pb-12 {
  padding-bottom: 3rem;
}
.pb-3 {
  padding-bottom: 0.75rem;
}
.pb-4 {
  padding-bottom: 1rem;
}
.pb-8 {
  padding-bottom: 2rem;
}
.pl-2 {
  padding-left: 0.5rem;
}
.pr-4 {
  padding-right: 1rem;
}
.pt-12 {
  padding-top: 3rem;
}
.pt-2 {
  padding-top: 0.5rem;
}
.pt-4 {
  padding-top: 1rem;
}
.pt-8 {
  padding-top: 2rem;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.font-base {
  font-family: Lato, Verdana, Helvetica, sans-serif;
}
.text-13px {
  font-size: 13px;
}
.text-16px {
  font-size: 16px;
}
.text-28px {
  font-size: 28px;
}
.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}
.text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem;
}
.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.text-6xl {
  font-size: 3.75rem;
  line-height: 1;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}
.font-bold {
  font-weight: 700;
}
.font-medium {
  font-weight: 500;
}
.font-semibold {
  font-weight: 600;
}
.font-thin {
  font-weight: 100;
}
.uppercase {
  text-transform: uppercase;
}
.italic {
  font-style: italic;
}
.leading-6 {
  line-height: 1.5rem;
}
.leading-9 {
  line-height: 2.25rem;
}
.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(28 100 242 / var(--tw-text-opacity));
}
.text-brand-black {
  --tw-text-opacity: 1;
  color: rgb(78 78 78 / var(--tw-text-opacity));
}
.text-brand-blue {
  --tw-text-opacity: 1;
  color: rgb(0 73 144 / var(--tw-text-opacity));
}
.text-brand-primary {
  --tw-text-opacity: 1;
  color: rgb(0 73 144 / var(--tw-text-opacity));
}
.text-brand-secondary {
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
}
.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity));
}
.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.underline {
  text-decoration-line: underline;
}
.opacity-0 {
  opacity: 0;
}
.opacity-100 {
  opacity: 1;
}
.opacity-50 {
  opacity: 0.5;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.outline {
  outline-style: solid;
}
.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-opacity {
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
.hover\:border-gray-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity));
}
.hover\:bg-blue-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(30 66 159 / var(--tw-bg-opacity));
}
.hover\:bg-brand-primary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(0 73 144 / var(--tw-bg-opacity));
}
.hover\:bg-brand-secondary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(233 154 3 / var(--tw-bg-opacity));
}
.hover\:bg-gray-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
.hover\:bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.hover\:text-blue-600:hover {
  --tw-text-opacity: 1;
  color: rgb(28 100 242 / var(--tw-text-opacity));
}
.hover\:text-brand-secondary:hover {
  --tw-text-opacity: 1;
  color: rgb(233 154 3 / var(--tw-text-opacity));
}
.hover\:text-gray-600:hover {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}
.hover\:text-gray-900:hover {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}
.hover\:text-white:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-4:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-blue-300:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity));
}
.focus\:ring-gray-200:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity));
}
@media (min-width: 768px) {

  .md\:mb-0 {
    margin-bottom: 0px;
  }

  .md\:mb-8 {
    margin-bottom: 2rem;
  }

  .md\:block {
    display: block;
  }

  .md\:flex {
    display: flex;
  }

  .md\:grid {
    display: grid;
  }

  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .md\:justify-between {
    justify-content: space-between;
  }

  .md\:justify-items-end {
    justify-items: end;
  }

  .md\:bg-transparent {
    background-color: transparent;
  }

  .md\:px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .md\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .md\:py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .md\:pt-4 {
    padding-top: 1rem;
  }

  .md\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
@media (min-width: 1024px) {

  .lg\:absolute {
    position: absolute;
  }

  .lg\:left-1\/2 {
    left: 50%;
  }

  .lg\:order-1 {
    order: 1;
  }

  .lg\:order-2 {
    order: 2;
  }

  .lg\:float-right {
    float: right;
  }

  .lg\:my-0 {
    margin-top: 0px;
    margin-bottom: 0px;
  }

  .lg\:mb-0 {
    margin-bottom: 0px;
  }

  .lg\:mr-10 {
    margin-right: 2.5rem;
  }

  .lg\:mt-0 {
    margin-top: 0px;
  }

  .lg\:mt-8 {
    margin-top: 2rem;
  }

  .lg\:block {
    display: block;
  }

  .lg\:flex {
    display: flex;
  }

  .lg\:grid {
    display: grid;
  }

  .lg\:hidden {
    display: none;
  }

  .lg\:w-1\/2 {
    width: 50%;
  }

  .lg\:w-1\/4 {
    width: 25%;
  }

  .lg\:w-2\/5 {
    width: 40%;
  }

  .lg\:w-3\/4 {
    width: 75%;
  }

  .lg\:w-3\/5 {
    width: 60%;
  }

  .lg\:w-4\/5 {
    width: 80%;
  }

  .lg\:max-w-\[600px\] {
    max-width: 600px;
  }

  .lg\:-translate-x-1\/2 {
    --tw-translate-x: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .lg\:transform {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lg\:flex-row {
    flex-direction: row;
  }

  .lg\:space-x-8 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(2rem * var(--tw-space-x-reverse));
    margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .lg\:space-y-8 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(2rem * var(--tw-space-y-reverse));
  }

  .lg\:border-0 {
    border-width: 0px;
  }

  .lg\:border-b {
    border-bottom-width: 1px;
  }

  .lg\:p-10 {
    padding: 2.5rem;
  }

  .lg\:text-center {
    text-align: center;
  }

  .lg\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .lg\:text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }

  .lg\:font-medium {
    font-weight: 500;
  }
}
@media (prefers-color-scheme: dark) {

  .dark\:border-blue-500 {
    --tw-border-opacity: 1;
    border-color: rgb(63 131 248 / var(--tw-border-opacity));
  }

  .dark\:border-gray-600 {
    --tw-border-opacity: 1;
    border-color: rgb(75 85 99 / var(--tw-border-opacity));
  }

  .dark\:border-gray-700 {
    --tw-border-opacity: 1;
    border-color: rgb(55 65 81 / var(--tw-border-opacity));
  }

  .dark\:border-transparent {
    border-color: transparent;
  }

  .dark\:bg-blue-600 {
    --tw-bg-opacity: 1;
    background-color: rgb(28 100 242 / var(--tw-bg-opacity));
  }

  .dark\:bg-gray-600 {
    --tw-bg-opacity: 1;
    background-color: rgb(75 85 99 / var(--tw-bg-opacity));
  }

  .dark\:bg-gray-700 {
    --tw-bg-opacity: 1;
    background-color: rgb(55 65 81 / var(--tw-bg-opacity));
  }

  .dark\:bg-gray-800 {
    --tw-bg-opacity: 1;
    background-color: rgb(31 41 55 / var(--tw-bg-opacity));
  }

  .dark\:bg-gray-800\/50 {
    background-color: rgb(31 41 55 / 0.5);
  }

  .dark\:bg-opacity-80 {
    --tw-bg-opacity: 0.8;
  }

  .dark\:text-blue-500 {
    --tw-text-opacity: 1;
    color: rgb(63 131 248 / var(--tw-text-opacity));
  }

  .dark\:text-gray-400 {
    --tw-text-opacity: 1;
    color: rgb(156 163 175 / var(--tw-text-opacity));
  }

  .dark\:text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
  }

  .dark\:hover\:bg-blue-700:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(26 86 219 / var(--tw-bg-opacity));
  }

  .dark\:hover\:bg-gray-600:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(75 85 99 / var(--tw-bg-opacity));
  }

  .dark\:hover\:bg-gray-800:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(31 41 55 / var(--tw-bg-opacity));
  }

  .dark\:hover\:text-blue-500:hover {
    --tw-text-opacity: 1;
    color: rgb(63 131 248 / var(--tw-text-opacity));
  }

  .dark\:hover\:text-gray-300:hover {
    --tw-text-opacity: 1;
    color: rgb(209 213 219 / var(--tw-text-opacity));
  }

  .dark\:hover\:text-white:hover {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
  }
}

