@charset "UTF-8";
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.5rem 1.5rem;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 700;
  font-size: 1rem;
  border-radius: 0.5rem;
  border: 2px solid transparent;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
}
.button:focus-visible {
  outline: 2px solid #E2C799;
  outline-offset: 2px;
}

.button--primary {
  background-color: #E2C799;
  color: #0A2F2B;
  border-color: rgba(255, 255, 255, 0.2);
}
.button--primary:hover {
  filter: brightness(1.1);
}

.dark .button--primary,
.dark a.button--primary,
[data-theme=dark] .button--primary,
[data-theme=dark] a.button--primary {
  color: #0A2F2B;
}
.dark .button--primary:hover,
.dark a.button--primary:hover,
[data-theme=dark] .button--primary:hover,
[data-theme=dark] a.button--primary:hover {
  color: #0A2F2B;
}

.button--secondary {
  background-color: transparent;
  color: #0A2F2B;
  border-color: rgba(10, 47, 43, 0.2);
}
.button--secondary:hover {
  background-color: #ECFDF5;
}

.dark .button--secondary,
[data-theme=dark] .button--secondary {
  color: #E2C799;
  border-color: rgba(226, 199, 153, 0.4);
}
.dark .button--secondary:hover,
[data-theme=dark] .button--secondary:hover {
  background-color: rgba(10, 47, 43, 0.4);
}

.button__icon {
  font-size: 1.25rem;
}

.section-header {
  text-align: center;
  margin-bottom: 3rem;
}
.section-header__label {
  display: block;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #E2C799;
  margin-bottom: 1rem;
}
.dark .section-header__label, [data-theme=dark] .section-header__label {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
}
.section-header__title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: 2.25rem;
  margin-bottom: 1rem;
  color: #0A2F2B;
}
.dark .section-header__title, [data-theme=dark] .section-header__title {
  color: #ffffff;
  font-family: "Playfair Display", Georgia, serif;
}
.section-header__divider {
  width: 4rem;
  height: 4px;
  background-color: #E2C799;
  margin: 1rem auto 0;
}
.section-header__subtitle {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 1.125rem;
  color: #475569;
  max-width: 42rem;
  margin: 1rem auto 0;
}
.dark .section-header__subtitle, [data-theme=dark] .section-header__subtitle {
  color: #CBD5E1;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 400;
}

.card, .service-card {
  padding: 2rem;
  border-radius: 1.5rem;
  border: 1px solid rgba(226, 199, 153, 0.1);
  background-color: #ffffff;
  transition: all 0.3s ease;
}
.card:hover, .service-card:hover {
  border-color: rgba(226, 199, 153, 0.4);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.dark .card, .dark .service-card,
[data-theme=dark] .card,
[data-theme=dark] .service-card {
  background-color: rgba(10, 47, 43, 0.4);
}

.card--service, .service-card {
  background-color: #ffffff;
}
.dark .card--service, .dark .service-card {
  background-color: rgba(10, 47, 43, 0.4);
}
.card--service .card__icon, .service-card .card__icon {
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ECFDF5;
  border-radius: 1rem;
  margin-bottom: 1.5rem;
  transition: background-color 0.3s;
}
.card--service .card__icon .material-symbols-outlined, .service-card .card__icon .material-symbols-outlined {
  color: #0A2F2B;
  font-size: 1.75rem;
}
.card--service:hover .card__icon, .service-card:hover .card__icon {
  background-color: #E2C799;
}
.card--service .card__title, .service-card .card__title {
  font-size: 1.25rem;
  margin-bottom: 0.75rem;
  color: #0A2F2B;
}
.card--service .dark .card__title, .service-card .dark .card__title,
.card--service [data-theme=dark] .card__title,
.service-card [data-theme=dark] .card__title {
  color: #E2C799;
}
.card--service .card__description, .service-card .card__description {
  color: #475569;
}
.card--service .dark .card__description, .service-card .dark .card__description,
.card--service [data-theme=dark] .card__description,
.service-card [data-theme=dark] .card__description {
  color: #94A3B8;
}

.card--package {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.card--package.card--highlighted {
  background-color: #0A2F2B;
  border-color: #E2C799;
  border-width: 2px;
  color: #ffffff;
}
.card--package.card--highlighted .card__title {
  color: #E2C799;
}

.package-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.package-card__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 2rem;
  border-radius: 1.5rem;
  border: 1px solid rgba(226, 199, 153, 0.1);
  background-color: #F8FAFC;
}
.dark .package-card__inner {
  background-color: rgba(10, 47, 43, 0.2);
}
.package-card__inner--highlighted {
  background-color: #0A2F2B;
  border: 2px solid #E2C799;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
@media (min-width: 1024px) {
  .package-card__inner--highlighted {
    transform: scale(1.05);
    z-index: 1;
  }
}
.package-card__inner--highlighted .package-card__title {
  color: #E2C799;
}
.package-card__inner--highlighted .package-card__desc {
  color: rgba(209, 250, 229, 0.7);
}
.package-card__inner--highlighted .package-card__features li {
  color: #ecfdf5;
}
.package-card__badge {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #E2C799;
  color: #0A2F2B;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.5rem 1.25rem;
  border-radius: 9999px;
  white-space: nowrap;
  z-index: 2;
  box-shadow: 0 2px 8px rgba(10, 47, 43, 0.2);
  border: 1px solid rgba(10, 47, 43, 0.25);
  line-height: 1.25;
}
.package-card__title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: 1.5rem;
  color: #0A2F2B;
  margin-bottom: 1rem;
  margin-top: 0.5rem;
}
.dark .package-card__inner:not(.package-card__inner--highlighted) .package-card__title {
  color: #E2C799;
  font-family: "Playfair Display", Georgia, serif;
}
.package-card__desc {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  color: #475569;
  margin-bottom: 2rem;
  flex: 1;
}
.dark .package-card__desc {
  color: #CBD5E1;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
}
.package-card__features {
  list-style: none;
  padding: 0;
  margin: 0 0 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.package-card__features li {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: #475569;
}
.dark .package-card__inner:not(.package-card__inner--highlighted) .package-card__features li {
  color: #CBD5E1;
}
.package-card__features li::before {
  content: "";
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23E2C799'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E");
  background-size: contain;
  flex-shrink: 0;
}
.package-card__cta {
  display: block;
  width: 100%;
  text-align: center;
}

.service-card__icon {
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ECFDF5;
  border-radius: 1rem;
  margin-bottom: 1.5rem;
}
.service-card:hover .service-card__icon {
  background-color: #E2C799;
}
.dark .service-card__icon, [data-theme=dark] .service-card__icon {
  background-color: #0A2F2B;
}
.service-card__title {
  font-size: 1.25rem;
  margin-bottom: 0.75rem;
  color: #0A2F2B;
}
.service-card__summary, .service-card__description {
  color: #475569;
}
.service-card__features {
  list-style: none;
  padding: 0;
  margin: 1rem 0 0;
}
.service-card__feature-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0;
}
.service-card__feature-item .material-symbols-outlined {
  color: #E2C799;
  font-size: 0.875rem;
}

.services-page__hero {
  background: linear-gradient(135deg, #0A2F2B 0%, #051210 100%);
  padding: 0;
  text-align: center;
  border-bottom: 1px solid rgba(226, 199, 153, 0.1);
}
.services-page__layout {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  max-width: 80rem;
  margin: 0 auto;
  padding: 4rem 1rem;
  background: #F8FAFC;
}
@media (min-width: 1024px) {
  .services-page__layout {
    flex-direction: row;
    gap: 3rem;
    padding: 5rem 2rem;
  }
}
.dark .services-page__layout {
  background: #051210;
}
.services-page__sidebar {
  min-width: 0;
}
@media (min-width: 1024px) {
  .services-page__sidebar {
    width: 25%;
    flex-shrink: 0;
  }
}
.services-page__sidebar-card {
  background: linear-gradient(135deg, #0A2F2B 0%, #051210 100%);
  border-radius: 1.5rem;
  padding: 1.5rem;
  border: 1px solid rgba(226, 199, 153, 0.1);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  overflow: hidden;
}
@media (min-width: 1024px) {
  .services-page__sidebar-card {
    position: sticky;
    top: 7rem;
  }
}
.dark .services-page__sidebar-card {
  background: linear-gradient(135deg, rgba(10, 47, 43, 0.95) 0%, #051210 100%);
  border-color: rgba(226, 199, 153, 0.15);
}
.services-page__nav-title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: #E2C799;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(226, 199, 153, 0.1);
}
.services-page__nav {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.services-page__nav-link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem;
  border-radius: 1.5rem;
  color: rgba(209, 250, 229, 0.6);
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s ease;
  border: 1px solid transparent;
}
.services-page__nav-link:hover {
  background: rgba(255, 255, 255, 0.05);
  color: #E2C799;
}
.services-page__nav-link--active {
  background: rgba(226, 199, 153, 0.1);
  color: #E2C799;
  font-weight: 600;
  border-color: rgba(226, 199, 153, 0.2);
}
.services-page__nav-link .material-symbols-outlined {
  color: #E2C799;
  font-size: 1.25rem;
  flex-shrink: 0;
}
.services-page__sidebar-cta {
  margin-top: 2rem;
  padding: 0.75rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(226, 199, 153, 0.1);
  border-radius: 1.5rem;
  text-align: center;
}
.services-page__sidebar-cta-text {
  font-size: 0.75rem;
  color: rgba(209, 250, 229, 0.5);
  margin-bottom: 0.75rem;
}
.services-page__sidebar-cta-btn {
  display: block;
  width: 100%;
  padding: 0.75rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 700;
  text-align: center;
  background: #E2C799;
  color: #0A2F2B;
  border: none;
  border-radius: 1rem;
  text-decoration: none;
  transition: filter 0.2s ease;
  box-sizing: border-box;
}
.services-page__sidebar-cta-btn:hover {
  filter: brightness(1.1);
}
.dark .services-page__sidebar-cta-btn {
  color: #0A2F2B;
}
.services-page__main {
  flex: 1;
  min-width: 0;
}
@media (min-width: 1024px) {
  .services-page__main {
    width: 75%;
  }
}
.services-page__service {
  scroll-margin-top: 8rem;
}
.services-page__service-inner {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .services-page__service-inner {
    flex-direction: row;
    gap: 3rem;
    align-items: flex-start;
  }
}
@media (min-width: 768px) {
  .services-page__service-inner--reverse {
    flex-direction: row-reverse;
  }
}
.services-page__service-media {
  width: 100%;
  position: relative;
}
@media (min-width: 768px) {
  .services-page__service-media {
    width: 33.333%;
    flex-shrink: 0;
  }
}
.services-page__service-image {
  aspect-ratio: 4/3;
  min-height: 16rem;
  border-radius: 1.5rem;
  background: #ffffff;
  border: 1px solid rgba(10, 47, 43, 0.08);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -2px rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.services-page__service-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.services-page__service-image-icon {
  font-size: 4rem;
  color: rgba(226, 199, 153, 0.6);
}
.dark .services-page__service-image {
  background: rgba(10, 47, 43, 0.4);
  border-color: rgba(226, 199, 153, 0.15);
}
.services-page__service-image-badge {
  position: absolute;
  top: 1rem;
  right: 1rem;
  padding: 0.5rem 1rem;
  background: #ffffff;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #0A2F2B;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.services-page__service-body {
  flex: 1;
  min-width: 0;
}
.services-page__service-header {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1rem;
}
.services-page__service-icon {
  font-size: 2.25rem;
  color: #E2C799;
  flex-shrink: 0;
  margin-top: 0.25rem;
}
.services-page__service-title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: 1.875rem;
  color: #0A2F2B;
  margin: 0;
  line-height: 1.25;
}
.dark .services-page__service-title {
  color: #ffffff;
}
.services-page__service-desc {
  font-size: 1.125rem;
  line-height: 1.625;
  margin-bottom: 1.5rem;
  color: #475569;
}
.dark .services-page__service-desc {
  color: #CBD5E1;
}
.services-page__service-features {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .services-page__service-features {
    grid-template-columns: repeat(2, 1fr);
  }
}
.services-page__service-feature {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #475569;
  font-size: 1rem;
}
.dark .services-page__service-feature {
  color: #CBD5E1;
}
.services-page__service-feature-icon {
  flex-shrink: 0;
  color: #E2C799;
  font-size: 0.875rem;
}
.services-page__service-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 700;
  color: #E2C799;
  text-decoration: none;
  transition: transform 0.2s ease;
}
.services-page__service-cta:hover {
  transform: translateX(0.5rem);
}
.services-page__service-cta .material-symbols-outlined {
  font-size: 1.25rem;
}
.services-page__divider {
  height: 1px;
  width: 100%;
  background: rgba(10, 47, 43, 0.12);
  margin-top: 4rem;
}
.services-page__service--ngo .services-page__service-inner--ngo {
  background: #0A2F2B;
  border-radius: 1.875rem;
  padding: 2.5rem;
  border: 1px solid rgba(226, 199, 153, 0.2);
  flex-direction: column;
}
.dark .services-page__service--ngo .services-page__service-inner--ngo {
  background: rgba(10, 47, 43, 0.95);
}
.services-page__service--ngo .services-page__service-header {
  margin-bottom: 1.5rem;
}
.services-page__service--ngo .services-page__service-icon {
  color: #E2C799;
}
.services-page__service--ngo .services-page__service-title {
  color: #ffffff;
}
.services-page__service--ngo .services-page__service-desc {
  color: rgba(209, 250, 229, 0.7);
  max-width: 42rem;
}
.services-page__service--ngo .services-page__service-body {
  width: 100%;
}
.services-page__ngo-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  margin-bottom: 2.5rem;
}
@media (min-width: 768px) {
  .services-page__ngo-cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
.services-page__ngo-card {
  padding: 1rem;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 1.5rem;
  border: 1px solid rgba(226, 199, 153, 0.1);
}
.services-page__service--ngo .services-page__ngo-card {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(226, 199, 153, 0.1);
}
.dark .services-page__service--ngo .services-page__ngo-card {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(226, 199, 153, 0.1);
}
.services-page__ngo-card-title {
  font-weight: 700;
  font-size: 1rem;
  color: #E2C799;
  margin: 0 0 0.5rem;
}
.services-page__service--ngo .services-page__ngo-card-title {
  color: #E2C799;
}
.services-page__ngo-card-desc {
  font-size: 0.875rem;
  color: rgba(209, 250, 229, 0.5);
  margin: 0;
  line-height: 1.625;
}
.services-page__service--ngo .services-page__ngo-card-desc {
  color: rgba(209, 250, 229, 0.5);
}
.services-page__service--ngo .services-page__service-cta-btn {
  background: #E2C799;
  color: #0A2F2B;
  border: none;
}
.services-page__service--ngo .services-page__service-cta-btn:hover {
  filter: brightness(1.05);
}
.dark .services-page__service--ngo .services-page__service-cta-btn {
  color: #0A2F2B;
}
.services-page .hero--compact {
  min-height: auto;
}
.services-page .hero--compact .hero__inner {
  max-width: 42rem;
  margin: 0 auto;
  padding: 1rem 1rem;
}
.services-page .hero--compact .hero__title {
  color: #ffffff;
  font-size: 2.25rem;
}
@media (min-width: 768px) {
  .services-page .hero--compact .hero__title {
    font-size: 3.75rem;
  }
}
.services-page .hero--compact .hero__subtitle {
  color: rgba(209, 250, 229, 0.7);
  font-size: 1.125rem;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-style: normal;
}
.services-page .hero--compact .hero__title-accent {
  color: #E2C799;
  font-style: italic;
}

.scroll-mt-32 {
  scroll-margin-top: 8rem;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(203, 213, 225, 0.5);
}
.dark .site-header {
  background: rgba(10, 47, 43, 0.95);
  border-color: rgba(226, 199, 153, 0.1);
}

.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.75rem;
  max-width: 80rem;
  margin: 0 auto;
  padding: 0 1rem;
  min-height: 5rem;
}
@media (min-width: 640px) {
  .site-header__inner {
    padding: 0 1.5rem;
    gap: 1rem;
  }
}
@media (min-width: 1024px) {
  .site-header__inner {
    padding: 0 2rem;
  }
}

.site-header__logo {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
  text-decoration: none;
  color: inherit;
}

.site-header__logo-img {
  height: 2.5rem;
  width: auto;
  max-width: 12rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.site-header__logo-img--dark {
  display: none;
}
.dark .site-header__logo-img--light {
  display: none;
}
.dark .site-header__logo-img--dark {
  display: block;
}

.site-header__logo-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: #0A2F2B;
  color: #E2C799;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.25rem;
  font-weight: 700;
  font-style: italic;
  border-radius: 0.5rem;
  border: 1px solid rgba(226, 199, 153, 0.3);
}

.site-header__logo-text {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.25rem;
  font-weight: 700;
  color: #0A2F2B;
  display: none;
}
.dark .site-header__logo-text {
  color: #E2C799;
}
@media (min-width: 640px) {
  .site-header__logo-text {
    display: inline;
  }
}

.site-header__nav {
  display: none;
  align-items: center;
  gap: 2rem;
  margin-left: auto;
  min-width: 0;
  flex: 1 1 auto;
  justify-content: flex-end;
}
@media (min-width: 1024px) {
  .site-header__nav {
    display: flex;
  }
}

.site-header__menu {
  display: flex;
  align-items: center;
  gap: 2rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

.site-header__link {
  font-weight: 500;
  color: #475569;
  text-decoration: none;
  transition: color 0.2s;
}
.site-header__link:hover {
  color: #0A2F2B;
}
.dark .site-header__link {
  color: #CBD5E1;
}
.dark .site-header__link:hover {
  color: #E2C799;
}

.site-header__login {
  font-weight: 600;
  color: #475569;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.2s;
}
.site-header__login:hover {
  color: #0A2F2B;
}
.dark .site-header__login {
  color: #CBD5E1;
}
.dark .site-header__login:hover {
  color: #E2C799;
}

.site-header__portal {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
}
.site-header__portal .material-symbols-outlined {
  font-size: 1.125rem;
}

.site-header__cta {
  white-space: nowrap;
  padding: 0.625rem 1.5rem;
  border-radius: 9999px;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.site-header__mobile-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-left: auto;
  padding: 0.5rem;
  background: none;
  border: none;
  color: #0A2F2B;
  cursor: pointer;
}
.dark .site-header__mobile-toggle {
  color: #E2C799;
}
@media (min-width: 1024px) {
  .site-header__mobile-toggle {
    display: none;
  }
}

.site-header__nav > ul,
.site-header__nav .site-header__menu {
  display: flex;
  align-items: center;
  gap: 2rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.site-header__nav > ul > li,
.site-header__nav .site-header__menu > li {
  margin: 0;
}
.site-header__nav > ul a,
.site-header__nav .site-header__menu a {
  font-weight: 500;
  color: #475569;
  text-decoration: none;
  transition: color 0.2s;
  display: inline-block;
}
.site-header__nav > ul a:hover,
.site-header__nav .site-header__menu a:hover {
  color: #0A2F2B;
}
.dark .site-header__nav > ul a,
.dark .site-header__nav .site-header__menu a {
  color: #CBD5E1;
}
.dark .site-header__nav > ul a:hover,
.dark .site-header__nav .site-header__menu a:hover {
  color: #E2C799;
}

.site-header__menu-row {
  display: contents;
}
@media (max-width: 1023px) {
  .site-header__menu-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }
}

.site-header__submenu-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  border: none;
  border-radius: 0.5rem;
  background: rgba(10, 47, 43, 0.06);
  color: #0A2F2B;
  cursor: pointer;
  transition: background 0.2s, transform 0.2s;
}
.site-header__submenu-toggle .material-symbols-outlined {
  font-size: 1.25rem;
  transition: transform 0.2s;
}
.dark .site-header__submenu-toggle {
  background: rgba(255, 255, 255, 0.08);
  color: #E2C799;
}
@media (max-width: 1023px) {
  .site-header__submenu-toggle {
    display: inline-flex;
  }
}

.site-header__menu-item--has-children {
  position: relative;
}
@media (min-width: 1024px) {
  .site-header__menu-item--has-children::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: max(13rem, 100%);
    height: 0.75rem;
  }
}
.site-header__menu-item--has-children > .site-header__menu-row > .site-header__link,
.site-header__menu-item--has-children > .site-header__link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.site-header__menu-item--has-children > .site-header__menu-row > .site-header__link::after,
.site-header__menu-item--has-children > .site-header__link::after {
  content: "expand_more";
  font-family: "Material Symbols Outlined";
  font-size: 1.125rem;
  line-height: 1;
  transition: transform 0.2s;
}
@media (max-width: 1023px) {
  .site-header__menu-item--has-children > .site-header__menu-row > .site-header__link::after,
  .site-header__menu-item--has-children > .site-header__link::after {
    display: none;
  }
}
.site-header__menu-item--has-children:hover > .site-header__menu-row > .site-header__link::after, .site-header__menu-item--has-children:focus-within > .site-header__menu-row > .site-header__link::after, .site-header__menu-item--has-children:hover > .site-header__link::after, .site-header__menu-item--has-children:focus-within > .site-header__link::after {
  transform: rotate(180deg);
}
.site-header__menu-item--has-children.is-submenu-open .site-header__submenu-toggle .material-symbols-outlined {
  transform: rotate(180deg);
}
.site-header__menu-item--has-children.is-active-trail > .site-header__menu-row > .site-header__link, .site-header__menu-item--has-children.is-active-trail > .site-header__link {
  color: rgb(212.4519083969, 172.8381679389, 105.3480916031);
}
.dark .site-header__menu-item--has-children.is-active-trail > .site-header__menu-row > .site-header__link, .dark .site-header__menu-item--has-children.is-active-trail > .site-header__link {
  color: #E2C799;
}
.site-header__menu-item--has-children.is-active > .site-header__menu-row > .site-header__link, .site-header__menu-item--has-children.is-active > .site-header__link {
  font-weight: 700;
}

.site-header__submenu {
  display: none;
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  min-width: 13rem;
  padding: 0.5rem;
  margin: 0;
  list-style: none;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(226, 199, 153, 0.25);
  border-radius: 1rem;
  box-shadow: 0 16px 40px -8px rgba(10, 47, 43, 0.18);
}
.dark .site-header__submenu {
  background: rgba(0, 45, 32, 0.98);
  border-color: rgba(226, 199, 153, 0.2);
}
.site-header__submenu .site-header__link {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  display: block;
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  white-space: nowrap;
}
.site-header__submenu .site-header__link:hover {
  background: rgba(226, 199, 153, 0.12);
  color: #0A2F2B;
}
.dark .site-header__submenu .site-header__link:hover {
  background: rgba(226, 199, 153, 0.1);
  color: #E2C799;
}
.site-header__submenu .site-header__menu-item.is-active .site-header__link {
  color: rgb(212.4519083969, 172.8381679389, 105.3480916031);
  font-weight: 700;
  background: rgba(226, 199, 153, 0.1);
}
.dark .site-header__submenu .site-header__menu-item.is-active .site-header__link {
  color: #E2C799;
}

@media (min-width: 1024px) {
  .site-header__menu-item--has-children:hover > .site-header__submenu,
  .site-header__menu-item--has-children:focus-within > .site-header__submenu,
  .site-header__menu-item--has-children.is-submenu-open > .site-header__submenu {
    display: flex;
  }
}

.site-header__theme-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0.5rem;
  color: #475569;
  cursor: pointer;
  transition: color 0.2s, background 0.2s;
}
.site-header__theme-toggle .material-symbols-outlined {
  font-size: 1.5rem;
}
.site-header__theme-toggle:hover {
  color: #0A2F2B;
  background: rgba(10, 47, 43, 0.08);
}
.dark .site-header__theme-toggle {
  color: #CBD5E1;
}
.dark .site-header__theme-toggle:hover {
  color: #E2C799;
  background: rgba(226, 199, 153, 0.1);
}

.site-header__nav > a.site-header__cta {
  flex-shrink: 0;
}

.site-header__mobile-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 40;
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(203, 213, 225, 0.5);
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
  max-height: 80vh;
  overflow-y: auto;
}
.dark .site-header__mobile-menu {
  background: rgba(10, 47, 43, 0.98);
  border-color: rgba(226, 199, 153, 0.1);
}
.site-header__mobile-menu.is-open {
  display: block;
}
@media (min-width: 1024px) {
  .site-header__mobile-menu {
    display: none !important;
  }
}

.site-header__mobile-menu-inner {
  padding: 1rem 1rem 1.5rem;
  max-width: 80rem;
  margin: 0 auto;
}

.site-header__mobile-menu-list,
.site-header__mobile-menu ul {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.site-header__mobile-menu-list a,
.site-header__mobile-menu ul a {
  display: block;
  padding: 0.75rem 1rem;
  font-weight: 500;
  color: #0A2F2B;
  text-decoration: none;
  border-radius: 1rem;
  transition: background 0.2s;
}
.site-header__mobile-menu-list a:hover,
.site-header__mobile-menu ul a:hover {
  background: rgba(10, 47, 43, 0.08);
  color: #0A2F2B;
}
.dark .site-header__mobile-menu-list a,
.dark .site-header__mobile-menu ul a {
  color: #D1FAE5;
}
.dark .site-header__mobile-menu-list a:hover,
.dark .site-header__mobile-menu ul a:hover {
  background: rgba(255, 255, 255, 0.08);
}

.site-header__mobile-menu .site-header__submenu {
  position: static;
  transform: none;
  display: none;
  min-width: 0;
  padding: 0 0 0.5rem 1rem;
  margin: 0;
  background: transparent;
  border: none;
  border-left: 2px solid rgba(226, 199, 153, 0.25);
  border-radius: 0;
  box-shadow: none;
}
.dark .site-header__mobile-menu .site-header__submenu {
  border-left-color: rgba(226, 199, 153, 0.25);
}
.site-header__mobile-menu .site-header__submenu .site-header__link {
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  font-family: "Playfair Display", Georgia, serif;
}

.site-header__mobile-menu .site-header__menu-item--has-children.is-submenu-open > .site-header__submenu {
  display: flex;
}

.site-header__mobile-actions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(203, 213, 225, 0.3);
}
.dark .site-header__mobile-actions {
  border-color: rgba(255, 255, 255, 0.1);
}
.site-header__mobile-actions .site-header__cta,
.site-header__mobile-actions .site-header__portal {
  justify-content: center;
  text-align: center;
}
.site-header__mobile-actions .site-header__login {
  padding: 0.75rem 1rem;
  text-align: center;
  border-radius: 1rem;
  background: rgba(10, 47, 43, 0.06);
}
.site-header__mobile-actions .site-header__login:hover {
  background: rgba(10, 47, 43, 0.1);
}

.site-footer {
  background: var(--color-primary, #0A2F2B);
  border-top: 1px solid rgba(226, 199, 153, 0.2);
  padding-top: 5rem;
  padding-bottom: 2.5rem;
  color: rgba(209, 250, 229, 0.7);
}

.site-footer__inner {
  max-width: 80rem;
  margin: 0 auto;
  padding: 0 1rem;
  min-width: 0;
  box-sizing: border-box;
}
@media (min-width: 640px) {
  .site-footer__inner {
    padding: 0 1.5rem;
  }
}
@media (min-width: 1024px) {
  .site-footer__inner {
    padding: 0 2rem;
  }
}

.site-footer__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  margin-bottom: 4rem;
  min-width: 0;
}
@media (min-width: 768px) {
  .site-footer__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .site-footer__grid {
    grid-template-columns: 1fr repeat(2, auto) 1fr;
  }
}

.site-footer__brand {
  grid-column: 1/-1;
}
@media (min-width: 1024px) {
  .site-footer__brand {
    grid-column: 1;
  }
}

.site-footer__logo {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
  text-decoration: none;
  color: inherit;
}

.site-footer__logo-img {
  height: 2rem;
  width: auto;
  max-width: 10rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.site-footer__logo-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background: #E2C799;
  color: #0A2F2B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 0.75rem;
  font-weight: 700;
  font-style: italic;
  border-radius: 0.5rem;
}

.site-footer__logo-text {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: #E2C799;
}

.site-footer__tagline {
  color: rgba(209, 250, 229, 0.7);
  margin: 0 0 1.5rem;
  max-width: 20rem;
}

.site-footer__contact {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
}

.site-footer__contact-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: rgba(209, 250, 229, 0.85);
  text-decoration: none;
  transition: color 0.2s;
}
.site-footer__contact-link .material-symbols-outlined {
  font-size: 1rem;
  color: #E2C799;
  opacity: 0.9;
}
.site-footer__contact-link:hover {
  color: #E2C799;
}

.site-footer__social {
  display: flex;
  gap: 1rem;
}

.site-footer__social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: rgba(226, 199, 153, 0.1);
  border: 1px solid rgba(226, 199, 153, 0.2);
  color: #E2C799;
  text-decoration: none;
  transition: all 0.2s;
}
.site-footer__social-link:hover {
  background: #E2C799;
  color: #0A2F2B;
}

.site-footer__social-svg {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

.site-footer__heading {
  font-weight: 700;
  color: #E2C799;
  margin-bottom: 1.5rem;
  font-size: 1rem;
}

.site-footer__links {
  list-style: none;
  padding: 0;
  margin: 0;
}
.site-footer__links li {
  margin-bottom: 1rem;
}
.site-footer__links a {
  color: rgba(209, 250, 229, 0.7);
  text-decoration: none;
  transition: color 0.2s;
}
.site-footer__links a:hover {
  color: #E2C799;
}

.site-footer__newsletter {
  min-width: 0;
  max-width: 100%;
}
@media (min-width: 1024px) {
  .site-footer__newsletter {
    min-width: 14rem;
  }
}

.site-footer__newsletter-text {
  font-size: 0.875rem;
  color: rgba(209, 250, 229, 0.7);
  margin-bottom: 1rem;
}

.site-footer__newsletter-form {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.5rem;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
@media (max-width: 639px) {
  .site-footer__newsletter-form {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
  }
}

.site-footer__newsletter-input {
  flex: 1 1 0;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0.5rem 1rem;
  border: 1px solid rgba(226, 199, 153, 0.2);
  border-radius: 0.5rem;
  background: rgba(255, 255, 255, 0.05);
  font-size: 0.875rem;
  color: #ffffff;
}
@media (max-width: 639px) {
  .site-footer__newsletter-input {
    flex: none;
  }
}
.site-footer__newsletter-input::-moz-placeholder {
  color: rgba(209, 250, 229, 0.3);
}
.site-footer__newsletter-input::placeholder {
  color: rgba(209, 250, 229, 0.3);
}
.site-footer__newsletter-input:focus {
  outline: none;
  border-color: #E2C799;
  box-shadow: 0 0 0 2px rgba(226, 199, 153, 0.2);
}

.site-footer__newsletter-btn, .site-footer__newsletter-webform form.webform-submission-form .form-submit,
.site-footer__newsletter-webform form.webform-submission-form button.webform-button--submit,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form .form-submit,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form button.webform-button--submit {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0.5rem 0.75rem;
  min-width: 2.75rem;
  background: #E2C799;
  color: #0A2F2B;
  border: none;
  border-radius: 0.5rem;
  cursor: pointer;
  transition: all 0.2s;
  box-sizing: border-box;
  font-size: 0.875rem;
  font-weight: 700;
}
@media (max-width: 639px) {
  .site-footer__newsletter-btn, .site-footer__newsletter-webform form.webform-submission-form .form-submit,
  .site-footer__newsletter-webform form.webform-submission-form button.webform-button--submit,
  .site-footer__newsletter-webform form.site-footer__newsletter-webform-form .form-submit,
  .site-footer__newsletter-webform form.site-footer__newsletter-webform-form button.webform-button--submit {
    width: 100%;
    min-height: 2.75rem;
  }
}
.site-footer__newsletter-btn:hover, .site-footer__newsletter-webform form.webform-submission-form .form-submit:hover,
.site-footer__newsletter-webform form.webform-submission-form button.webform-button--submit:hover,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form .form-submit:hover,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form button.webform-button--submit:hover {
  filter: brightness(1.1);
}
.site-footer__newsletter-btn .material-symbols-outlined, .site-footer__newsletter-webform form.webform-submission-form .form-submit .material-symbols-outlined,
.site-footer__newsletter-webform form.webform-submission-form button.webform-button--submit .material-symbols-outlined,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form .form-submit .material-symbols-outlined,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form button.webform-button--submit .material-symbols-outlined {
  font-size: 0.875rem;
}

.site-footer__newsletter-webform {
  min-width: 0;
  width: 100%;
  max-width: 100%;
}
.site-footer__newsletter-webform .webform-ajax-wrapper {
  width: 100%;
  min-width: 0;
}
.site-footer__newsletter-webform form.webform-submission-form,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.5rem;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
}
@media (max-width: 639px) {
  .site-footer__newsletter-webform form.webform-submission-form,
  .site-footer__newsletter-webform form.site-footer__newsletter-webform-form {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
  }
}
.site-footer__newsletter-webform form.webform-submission-form .form-item,
.site-footer__newsletter-webform form.webform-submission-form .js-form-item,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form .form-item,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form .js-form-item {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
}
.site-footer__newsletter-webform form.webform-submission-form .form-actions,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form .form-actions {
  margin: 0;
  flex-shrink: 0;
  display: flex;
  align-items: stretch;
}
@media (max-width: 639px) {
  .site-footer__newsletter-webform form.webform-submission-form .form-actions,
  .site-footer__newsletter-webform form.site-footer__newsletter-webform-form .form-actions {
    width: 100%;
  }
}
.site-footer__newsletter-webform form.webform-submission-form .form-submit,
.site-footer__newsletter-webform form.webform-submission-form button.form-submit,
.site-footer__newsletter-webform form.webform-submission-form button.webform-button--submit,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form .form-submit,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form button.form-submit,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form button.webform-button--submit {
  height: 100%;
  min-height: 2.5rem;
}
.site-footer__newsletter-webform form.webform-submission-form input.form-email,
.site-footer__newsletter-webform form.webform-submission-form input[type=email],
.site-footer__newsletter-webform form.webform-submission-form input.site-footer__newsletter-input,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input.form-email,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input[type=email],
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input.site-footer__newsletter-input {
  flex: 1 1 0;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0.5rem 1rem;
  border: 1px solid rgba(226, 199, 153, 0.2);
  border-radius: 0.5rem;
  background: rgba(255, 255, 255, 0.05);
  font-size: 0.875rem;
  color: #ffffff;
  font-family: inherit;
}
.site-footer__newsletter-webform form.webform-submission-form input.form-email::-moz-placeholder, .site-footer__newsletter-webform form.webform-submission-form input[type=email]::-moz-placeholder, .site-footer__newsletter-webform form.webform-submission-form input.site-footer__newsletter-input::-moz-placeholder, .site-footer__newsletter-webform form.site-footer__newsletter-webform-form input.form-email::-moz-placeholder, .site-footer__newsletter-webform form.site-footer__newsletter-webform-form input[type=email]::-moz-placeholder, .site-footer__newsletter-webform form.site-footer__newsletter-webform-form input.site-footer__newsletter-input::-moz-placeholder {
  color: rgba(209, 250, 229, 0.3);
}
.site-footer__newsletter-webform form.webform-submission-form input.form-email::placeholder,
.site-footer__newsletter-webform form.webform-submission-form input[type=email]::placeholder,
.site-footer__newsletter-webform form.webform-submission-form input.site-footer__newsletter-input::placeholder,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input.form-email::placeholder,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input[type=email]::placeholder,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input.site-footer__newsletter-input::placeholder {
  color: rgba(209, 250, 229, 0.3);
}
.site-footer__newsletter-webform form.webform-submission-form input.form-email:focus,
.site-footer__newsletter-webform form.webform-submission-form input[type=email]:focus,
.site-footer__newsletter-webform form.webform-submission-form input.site-footer__newsletter-input:focus,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input.form-email:focus,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input[type=email]:focus,
.site-footer__newsletter-webform form.site-footer__newsletter-webform-form input.site-footer__newsletter-input:focus {
  outline: none;
  border-color: #E2C799;
  box-shadow: 0 0 0 2px rgba(226, 199, 153, 0.2);
}
.site-footer__newsletter-webform .webform-confirmation {
  font-size: 0.875rem;
  color: rgba(209, 250, 229, 0.85);
  margin: 0;
}

.site-footer__bottom {
  padding-top: 2rem;
  border-top: 1px solid rgba(226, 199, 153, 0.1);
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}
@media (min-width: 768px) {
  .site-footer__bottom {
    flex-direction: row;
    justify-content: space-between;
  }
}

.site-footer__copyright {
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.025em;
  color: #E2C799;
  margin: 0;
}

.site-footer__legal {
  display: flex;
  gap: 2rem;
}
.site-footer__legal a {
  font-size: 0.875rem;
  color: rgba(209, 250, 229, 0.5);
  text-decoration: none;
  transition: color 0.2s;
}
.site-footer__legal a:hover {
  color: #E2C799;
}

.consultation-page {
  padding: 4rem 0;
}
@media (min-width: 768px) {
  .consultation-page {
    padding: 6rem 0;
  }
}

.consultation-page__inner {
  max-width: 56rem;
  margin: 0 auto;
  padding: 0 1rem;
}
@media (min-width: 640px) {
  .consultation-page__inner {
    padding: 0 1.5rem;
  }
}
@media (min-width: 1024px) {
  .consultation-page__inner {
    padding: 0 2rem;
  }
}

.consultation-page__header {
  text-align: center;
  margin-bottom: 4rem;
}

.consultation-page__title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 800;
  font-size: 2.25rem;
  color: #0A2F2B;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .consultation-page__title {
    font-size: 3rem;
  }
}
.dark .consultation-page__title {
  color: #ffffff;
}

.consultation-page__title-accent {
  color: #E2C799;
  font-style: italic;
}

.consultation-page__subtitle {
  font-size: 1.125rem;
  color: #475569;
  max-width: 42rem;
  margin: 0 auto;
}
.dark .consultation-page__subtitle {
  color: #94A3B8;
}

.consultation-page__card {
  background: #ffffff;
  border-radius: 2.25rem;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  overflow: visible;
  border: 1px solid rgba(10, 47, 43, 0.1);
}
.dark .consultation-page__card {
  background: rgba(10, 47, 43, 0.1);
}

.consultation-page__grid {
  display: grid;
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .consultation-page__grid {
    grid-template-columns: 2fr 3fr;
  }
}

.consultation-page__contact-info {
  background: #0A2F2B;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 2.25rem 0 0 2.25rem;
}
@media (min-width: 768px) {
  .consultation-page__contact-info {
    padding: 3rem;
    border-right: 1px solid rgba(226, 199, 153, 0.1);
  }
}
@media (max-width: 767px) {
  .consultation-page__contact-info {
    border-radius: 2.25rem 2.25rem 0 0;
  }
}
.consultation-page__contact-info a {
  color: #E2C799;
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: rgba(226, 199, 153, 0.45);
  text-underline-offset: 0.15em;
}
.consultation-page__contact-info a:hover, .consultation-page__contact-info a:focus-visible {
  color: #D1FAE5;
  text-decoration-color: rgba(209, 250, 229, 0.7);
}

.consultation-page__contact-title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: 1.5rem;
  color: #E2C799;
  margin-bottom: 1.5rem;
}

.consultation-page__contact-items {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.consultation-page__contact-item {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}
.consultation-page__contact-item .material-symbols-outlined {
  color: #E2C799;
  font-size: 1.5rem;
  flex-shrink: 0;
}

.consultation-page__contact-label {
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 0.25rem;
}

.consultation-page__contact-value {
  font-size: 0.875rem;
  color: rgba(209, 250, 229, 0.6);
  margin: 0;
}

.consultation-page__quote {
  margin-top: 3rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-style: italic;
  font-size: 0.875rem;
  color: rgba(209, 250, 229, 0.8);
}

.consultation-page__form-wrapper {
  padding: 2rem;
  overflow: visible;
  position: relative;
  z-index: 2;
  border-radius: 0 2.25rem 2.25rem 0;
  background: #ffffff;
}
.dark .consultation-page__form-wrapper {
  background: transparent;
}
@media (max-width: 767px) {
  .consultation-page__form-wrapper {
    border-radius: 0 0 2.25rem 2.25rem;
  }
}
@media (min-width: 768px) {
  .consultation-page__form-wrapper {
    padding: 3rem;
  }
}

.consultation-form .form-item,
.consultation-form .js-form-item {
  margin-bottom: 1.5rem;
  min-width: 0;
}
.consultation-form .form-actions {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  border: none;
  background: transparent;
}
.consultation-form .form-item-service,
.consultation-form .form-item-service-interest,
.consultation-form .form-type-select[class*=service-interest] {
  position: relative;
  z-index: 10;
}
.consultation-form select {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  cursor: pointer;
}
.consultation-form label:not(.visually-hidden):not(.js-form-required-mark),
.consultation-form .fieldset__legend,
.consultation-form legend {
  display: block;
  font-weight: 700;
  font-size: 0.875rem;
  color: #0A2F2B;
  margin-bottom: 0.5rem;
}
.dark .consultation-form label:not(.visually-hidden):not(.js-form-required-mark),
.dark .consultation-form .fieldset__legend,
.dark .consultation-form legend {
  color: #E2C799;
}
.consultation-form input.form-text,
.consultation-form input.form-email,
.consultation-form input[type=text],
.consultation-form input[type=email],
.consultation-form select,
.consultation-form textarea,
.consultation-form textarea.form-textarea {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 0.75rem 1rem;
  border-radius: 1rem;
  border: 1px solid rgba(10, 47, 43, 0.2);
  background: #ECFDF5;
  color: #0A2F2B;
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.5;
}
.consultation-form input.form-text:focus,
.consultation-form input.form-email:focus,
.consultation-form input[type=text]:focus,
.consultation-form input[type=email]:focus,
.consultation-form select:focus,
.consultation-form textarea:focus,
.consultation-form textarea.form-textarea:focus {
  outline: none;
  border-color: #0A2F2B;
  box-shadow: 0 0 0 2px rgba(10, 47, 43, 0.2);
}
.dark .consultation-form input.form-text,
.dark .consultation-form input.form-email,
.dark .consultation-form input[type=text],
.dark .consultation-form input[type=email],
.dark .consultation-form select,
.dark .consultation-form textarea,
.dark .consultation-form textarea.form-textarea {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(10, 47, 43, 0.5);
  color: #ffffff;
}
.dark .consultation-form input.form-text:focus,
.dark .consultation-form input.form-email:focus,
.dark .consultation-form input[type=text]:focus,
.dark .consultation-form input[type=email]:focus,
.dark .consultation-form select:focus,
.dark .consultation-form textarea:focus,
.dark .consultation-form textarea.form-textarea:focus {
  border-color: #E2C799;
  box-shadow: 0 0 0 2px rgba(226, 199, 153, 0.15);
}
.consultation-form select {
  max-width: 100%;
}
.consultation-form textarea,
.consultation-form textarea.form-textarea {
  min-height: 8rem;
  resize: vertical;
}
.consultation-form .description,
.consultation-form .webform-element-description {
  font-size: 0.875rem;
  color: #475569;
  margin-top: 0.25rem;
}
.dark .consultation-form .description,
.dark .consultation-form .webform-element-description {
  color: #94A3B8;
}
.consultation-form .form-submit,
.consultation-form input.form-submit,
.consultation-form button.form-submit,
.consultation-form button.webform-button--submit,
.consultation-form .button.button--primary.form-submit {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 1rem 2rem;
  font-size: 1rem;
  font-weight: 700;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  border-radius: 9999px;
  border: 2px solid rgba(255, 255, 255, 0.2);
  cursor: pointer;
  box-sizing: border-box;
  transition: filter 0.2s ease;
  background-color: #E2C799;
  color: #0A2F2B;
}
.consultation-form .form-submit:hover,
.consultation-form input.form-submit:hover,
.consultation-form button.form-submit:hover,
.consultation-form button.webform-button--submit:hover,
.consultation-form .button.button--primary.form-submit:hover {
  filter: brightness(1.08);
}
.dark .consultation-form .form-submit,
.dark .consultation-form input.form-submit,
.dark .consultation-form button.form-submit,
.dark .consultation-form button.webform-button--submit,
.dark .consultation-form .button.button--primary.form-submit {
  color: #0A2F2B;
}

.consultation-page__form-wrapper form .form-item,
.consultation-page__form-wrapper form .js-form-item {
  margin-bottom: 1.5rem;
  min-width: 0;
}
.consultation-page__form-wrapper form .form-actions {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  border: none;
  background: transparent;
}
.consultation-page__form-wrapper form .form-item-service,
.consultation-page__form-wrapper form .form-item-service-interest,
.consultation-page__form-wrapper form .form-type-select[class*=service-interest] {
  position: relative;
  z-index: 10;
}
.consultation-page__form-wrapper form select {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  cursor: pointer;
}
.consultation-page__form-wrapper form label:not(.visually-hidden):not(.js-form-required-mark),
.consultation-page__form-wrapper form .fieldset__legend,
.consultation-page__form-wrapper form legend {
  display: block;
  font-weight: 700;
  font-size: 0.875rem;
  color: #0A2F2B;
  margin-bottom: 0.5rem;
}
.dark .consultation-page__form-wrapper form label:not(.visually-hidden):not(.js-form-required-mark),
.dark .consultation-page__form-wrapper form .fieldset__legend,
.dark .consultation-page__form-wrapper form legend {
  color: #E2C799;
}
.consultation-page__form-wrapper form input.form-text,
.consultation-page__form-wrapper form input.form-email,
.consultation-page__form-wrapper form input[type=text],
.consultation-page__form-wrapper form input[type=email],
.consultation-page__form-wrapper form select,
.consultation-page__form-wrapper form textarea,
.consultation-page__form-wrapper form textarea.form-textarea {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 0.75rem 1rem;
  border-radius: 1rem;
  border: 1px solid rgba(10, 47, 43, 0.2);
  background: #ECFDF5;
  color: #0A2F2B;
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.5;
}
.consultation-page__form-wrapper form input.form-text:focus,
.consultation-page__form-wrapper form input.form-email:focus,
.consultation-page__form-wrapper form input[type=text]:focus,
.consultation-page__form-wrapper form input[type=email]:focus,
.consultation-page__form-wrapper form select:focus,
.consultation-page__form-wrapper form textarea:focus,
.consultation-page__form-wrapper form textarea.form-textarea:focus {
  outline: none;
  border-color: #0A2F2B;
  box-shadow: 0 0 0 2px rgba(10, 47, 43, 0.2);
}
.dark .consultation-page__form-wrapper form input.form-text,
.dark .consultation-page__form-wrapper form input.form-email,
.dark .consultation-page__form-wrapper form input[type=text],
.dark .consultation-page__form-wrapper form input[type=email],
.dark .consultation-page__form-wrapper form select,
.dark .consultation-page__form-wrapper form textarea,
.dark .consultation-page__form-wrapper form textarea.form-textarea {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(10, 47, 43, 0.5);
  color: #ffffff;
}
.dark .consultation-page__form-wrapper form input.form-text:focus,
.dark .consultation-page__form-wrapper form input.form-email:focus,
.dark .consultation-page__form-wrapper form input[type=text]:focus,
.dark .consultation-page__form-wrapper form input[type=email]:focus,
.dark .consultation-page__form-wrapper form select:focus,
.dark .consultation-page__form-wrapper form textarea:focus,
.dark .consultation-page__form-wrapper form textarea.form-textarea:focus {
  border-color: #E2C799;
  box-shadow: 0 0 0 2px rgba(226, 199, 153, 0.15);
}
.consultation-page__form-wrapper form select {
  max-width: 100%;
}
.consultation-page__form-wrapper form textarea,
.consultation-page__form-wrapper form textarea.form-textarea {
  min-height: 8rem;
  resize: vertical;
}
.consultation-page__form-wrapper form .description,
.consultation-page__form-wrapper form .webform-element-description {
  font-size: 0.875rem;
  color: #475569;
  margin-top: 0.25rem;
}
.dark .consultation-page__form-wrapper form .description,
.dark .consultation-page__form-wrapper form .webform-element-description {
  color: #94A3B8;
}
.consultation-page__form-wrapper form .form-submit,
.consultation-page__form-wrapper form input.form-submit,
.consultation-page__form-wrapper form button.form-submit,
.consultation-page__form-wrapper form button.webform-button--submit,
.consultation-page__form-wrapper form .button.button--primary.form-submit {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 1rem 2rem;
  font-size: 1rem;
  font-weight: 700;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  border-radius: 9999px;
  border: 2px solid rgba(255, 255, 255, 0.2);
  cursor: pointer;
  box-sizing: border-box;
  transition: filter 0.2s ease;
  background-color: #E2C799;
  color: #0A2F2B;
}
.consultation-page__form-wrapper form .form-submit:hover,
.consultation-page__form-wrapper form input.form-submit:hover,
.consultation-page__form-wrapper form button.form-submit:hover,
.consultation-page__form-wrapper form button.webform-button--submit:hover,
.consultation-page__form-wrapper form .button.button--primary.form-submit:hover {
  filter: brightness(1.08);
}
.dark .consultation-page__form-wrapper form .form-submit,
.dark .consultation-page__form-wrapper form input.form-submit,
.dark .consultation-page__form-wrapper form button.form-submit,
.dark .consultation-page__form-wrapper form button.webform-button--submit,
.dark .consultation-page__form-wrapper form .button.button--primary.form-submit {
  color: #0A2F2B;
}

.about-page__breadcrumb {
  display: none;
}

.about-page__inner {
  max-width: 80rem;
  margin: 0 auto;
  padding-top: 0;
  padding-bottom: 3rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (min-width: 640px) {
  .about-page__inner {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .about-page__inner {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (min-width: 768px) {
  .about-page__inner {
    padding-bottom: 4rem;
  }
}
.about-page__inner .node__content--sections {
  margin: 0;
}
.about-page__inner .node__content--sections > div,
.about-page__inner .node__content--sections > div > div {
  display: contents;
}
.about-page__inner {
  max-width: 90rem;
  padding-top: 1.5rem;
}
@media (min-width: 768px) {
  .about-page__inner {
    padding-top: 2rem;
  }
}
.about-page__inner .node--page-about {
  margin: 0;
}

.about-page__breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0.875rem;
  color: rgba(10, 47, 43, 0.55);
}

.about-page__breadcrumb-item {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.about-page__breadcrumb-item:not(:last-child)::after {
  content: "/";
  color: rgba(10, 47, 43, 0.35);
}
.about-page__breadcrumb-item a {
  color: inherit;
  text-decoration: none;
}
.about-page__breadcrumb-item a:hover {
  color: #0A2F2B;
}
.about-page__breadcrumb-item[aria-current=page] {
  color: #0A2F2B;
  font-weight: 600;
}

html.dark body.page-about .about-page__breadcrumb-list,
html.dark body.page-team .about-page__breadcrumb-list,
html[data-theme=dark] body.page-about .about-page__breadcrumb-list,
html[data-theme=dark] body.page-team .about-page__breadcrumb-list {
  color: rgba(209, 250, 229, 0.55);
}
html.dark body.page-about .about-page__breadcrumb-item:not(:last-child)::after,
html.dark body.page-team .about-page__breadcrumb-item:not(:last-child)::after,
html[data-theme=dark] body.page-about .about-page__breadcrumb-item:not(:last-child)::after,
html[data-theme=dark] body.page-team .about-page__breadcrumb-item:not(:last-child)::after {
  color: rgba(209, 250, 229, 0.35);
}
html.dark body.page-about .about-page__breadcrumb-item[aria-current=page],
html.dark body.page-team .about-page__breadcrumb-item[aria-current=page],
html[data-theme=dark] body.page-about .about-page__breadcrumb-item[aria-current=page],
html[data-theme=dark] body.page-team .about-page__breadcrumb-item[aria-current=page] {
  color: #D1FAE5;
}
html.dark body.page-about .about-page__breadcrumb-item a:hover,
html.dark body.page-team .about-page__breadcrumb-item a:hover,
html[data-theme=dark] body.page-about .about-page__breadcrumb-item a:hover,
html[data-theme=dark] body.page-team .about-page__breadcrumb-item a:hover {
  color: #E2C799;
}

.about-page__hero-accent {
  display: inline;
  color: #E2C799;
  font-style: italic;
}

.about-page__hero-title-main {
  display: inline;
}

.about-page__hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.about-page__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.5rem;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border: 1px solid transparent;
  transition: opacity 0.2s, background 0.2s, transform 0.2s;
}

.about-page__section-rule {
  width: 6rem;
  height: 4px;
  background: #E2C799;
  margin: 0.5rem 0 0;
}

.about-page__hero-title-main {
  color: var(--about-hero-title, var(--about-heading, #002d20));
}

.about-page {
  --about-bg: #001711;
  --about-surface: #00251d;
  --about-primary-container: #002d20;
  --about-heading: #ffffff;
  --about-hero-title: #ffffff;
  --about-on-background: #c4ebdd;
  --about-on-surface-variant: #c1c8c3;
  --about-gold: #E2C799;
  --about-glass-bg: rgba(0, 45, 32, 0.4);
  --about-glass-border: rgba(212, 175, 55, 0.15);
  --about-pillar-text: rgba(193, 200, 195, 0.7);
  --about-mission-bg: #e9c349;
  --about-mission-color: #002d20;
  --about-mission-icon-color: #002d20;
  --about-hero-image-opacity: 0.8;
  --about-values-image-filter: grayscale(0.5) contrast(1.1);
  --about-btn-outline-bg: rgba(212, 175, 55, 0.05);
  --about-btn-outline-border: rgba(212, 175, 55, 0.2);
  --about-card-title: #c4ebdd;
  --about-card-bg: #00251d;
  --about-card-border: rgba(226, 199, 153, 0.12);
  --about-section-gap: var(--page-section-gap, 6rem);
  --about-hero-subtitle: #c1c8c3;
  --about-hero-image-max-height: 22rem;
  background: var(--about-bg);
  color: var(--about-on-background);
}
@media (min-width: 768px) {
  .about-page {
    --about-hero-image-max-height: 31.25rem;
  }
}
.about-page .paragraph {
  padding: 0;
}
.about-page .glass-card {
  background: var(--about-glass-bg);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--about-glass-border);
  border-radius: 0.75rem;
}
.about-page .about-page__hero {
  margin-bottom: var(--about-section-gap);
}
.about-page .about-page__hero-grid {
  display: grid;
  gap: 1.5rem;
  align-items: start;
}
@media (min-width: 768px) {
  .about-page .about-page__hero-grid {
    grid-template-columns: minmax(0, 7fr) minmax(10rem, 5fr);
    gap: 1.5rem;
  }
}
.about-page .about-page__hero-content {
  min-width: 0;
}
.about-page .about-page__vault-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 1rem;
  margin-bottom: 1.5rem;
  border-radius: 9999px;
  background: var(--about-btn-outline-bg);
  border: 1px solid var(--about-btn-outline-border);
  backdrop-filter: blur(10px);
}
.about-page .about-page__vault-icon {
  font-size: 1.125rem;
  color: var(--about-gold);
  font-variation-settings: "FILL" 1;
}
.about-page .about-page__vault-label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--about-gold);
}
.about-page .about-page__hero-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.5rem, 5.5vw, 4rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 1.5rem;
  color: var(--about-on-background);
}
.about-page .about-page__hero-subtitle {
  font-size: 1.125rem;
  line-height: 1.625;
  color: var(--about-hero-subtitle);
  margin: 0 0 2rem;
  max-width: 42rem;
}
.about-page .about-page__hero-media {
  width: 100%;
  padding: 0.25rem;
  overflow: hidden;
  background: var(--about-primary-container);
  border-radius: 0.75rem;
}
@media (min-width: 768px) {
  .about-page .about-page__hero-media {
    position: relative;
    align-self: start;
    width: 100%;
    height: var(--about-hero-image-max-height);
    max-height: var(--about-hero-image-max-height);
  }
}
.about-page .about-page__hero-image {
  display: block;
  width: 100%;
  aspect-ratio: 3/4;
  max-height: var(--about-hero-image-max-height);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: calc(0.75rem - 2px);
  opacity: var(--about-hero-image-opacity);
}
@media (min-width: 768px) {
  .about-page .about-page__hero-image {
    position: absolute;
    inset: 0;
    height: 100%;
    max-height: none;
    aspect-ratio: unset;
  }
}
.about-page .about-page__btn {
  border-radius: 0.75rem;
  padding: 1rem 2rem;
}
.about-page .about-page__btn--primary {
  background: var(--about-gold);
  color: var(--about-mission-color);
}
.about-page .about-page__btn--primary:hover {
  opacity: 0.9;
}
.about-page .about-page__btn--outline {
  background: var(--about-btn-outline-bg);
  color: var(--about-gold);
  border-color: var(--about-btn-outline-border);
}
.about-page .about-page__btn--outline:hover {
  background: rgba(226, 199, 153, 0.2);
}
.about-page .about-page__intro {
  margin-bottom: var(--about-section-gap);
}
.about-page .about-page__intro-grid {
  display: grid;
  gap: 1.5rem;
  align-items: stretch;
}
@media (min-width: 768px) {
  .about-page .about-page__intro-grid {
    grid-template-columns: minmax(0, 8fr) minmax(14rem, 4fr);
  }
}
.about-page .about-page__who {
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
  overflow: visible;
}
.about-page .about-page__who-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--about-gold);
  margin: 0;
}
.about-page .about-page__who-text {
  font-size: 1rem;
  line-height: 1.625;
  color: var(--about-on-surface-variant);
  margin: 0;
}
.about-page .about-page__who-text p {
  margin: 0 0 1.5rem;
}
.about-page .about-page__who-text p:first-child {
  font-size: 1.125rem;
  line-height: 1.625;
}
.about-page .about-page__who-text p:last-child {
  margin-bottom: 0;
  font-size: 1rem;
  opacity: 0.8;
}
.about-page .about-page__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
  margin-top: 3rem;
  padding-top: 0;
  border-top: none;
  overflow: visible;
}
.about-page .about-page__stats > div,
.about-page .about-page__stats > div > div {
  display: contents;
}
.about-page .about-page__stat-value {
  display: block;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 600;
  line-height: 1;
  color: var(--about-gold);
}
.about-page .about-page__stat-label {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--about-on-surface-variant);
}
.about-page .about-page__mission {
  position: relative;
  padding: 2.5rem;
  background: var(--about-mission-bg);
  color: var(--about-mission-color);
  border-radius: 0.75rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.about-page .about-page__mission-icon {
  position: absolute;
  right: -2.5rem;
  bottom: -2.5rem;
  font-size: 12rem;
  opacity: 0.1;
  color: var(--about-mission-icon-color);
  pointer-events: none;
  font-variation-settings: "FILL" 1;
}
.about-page .about-page__mission-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-style: italic;
  margin: 0 0 1rem;
  position: relative;
  z-index: 1;
}
.about-page .about-page__mission-quote {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.125rem, 2.5vw, 1.5rem);
  font-weight: 500;
  line-height: 1.35;
  margin: 0;
  position: relative;
  z-index: 1;
  quotes: none;
}
.about-page .about-page__mission-quote::before, .about-page .about-page__mission-quote::after {
  content: none;
}
.about-page .about-page__pillars {
  margin-bottom: 0;
  padding-bottom: 0.5rem;
}
.about-page .about-page__pillars-header {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2.5rem;
  padding: 0 0.25rem;
}
@media (min-width: 768px) {
  .about-page .about-page__pillars-header {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    padding: 0;
  }
}
.about-page .about-page__section-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 500;
  margin: 0 0 0.5rem;
  color: var(--about-heading);
}
.about-page .about-page__pillars-intro {
  margin: 0;
  max-width: 24rem;
  font-size: 1rem;
  line-height: 1.625;
  color: var(--about-on-surface-variant);
  text-align: left;
}
@media (min-width: 768px) {
  .about-page .about-page__pillars-intro {
    text-align: right;
  }
}
.about-page .about-page__pillars-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: 1fr;
  align-items: stretch;
  padding: 0.25rem;
}
@media (min-width: 768px) {
  .about-page .about-page__pillars-grid {
    gap: 1.5rem;
    padding: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1024px) {
  .about-page .about-page__pillars-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.about-page .about-page__pillars-grid > div,
.about-page .about-page__pillars-grid > div > div {
  display: contents;
}
.about-page .about-page__pillar-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100%;
  padding: 2rem;
  transition: border-color 0.2s, transform 0.2s;
}
.about-page .about-page__pillar-card:hover {
  border-color: rgba(226, 199, 153, 0.4);
  transform: translateY(-2px);
}
.about-page .about-page__pillar-card-link {
  display: flex;
  flex-direction: column;
  flex: 1;
  color: inherit;
  text-decoration: none;
}
.about-page .about-page__pillar-card-link:hover, .about-page .about-page__pillar-card-link:focus {
  color: inherit;
  text-decoration: none;
}
.about-page .about-page__pillar-icon {
  display: block;
  flex-shrink: 0;
  font-size: 2.25rem;
  color: var(--about-gold);
  margin-bottom: 1.5rem;
  transition: transform 0.2s;
}
.about-page .about-page__pillar-card:hover .about-page__pillar-icon {
  transform: scale(1.08);
}
.about-page .about-page__pillar-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.3;
  margin: 0 0 1rem;
  color: var(--about-card-title);
}
.about-page .about-page__pillar-text {
  margin: 0;
  margin-top: auto;
  font-size: 1rem;
  line-height: 1.625;
  color: var(--about-pillar-text);
}
.about-page .about-page__values {
  padding: 0;
  overflow: hidden;
  margin-top: var(--about-section-gap);
  margin-bottom: 0;
  border-radius: 0.75rem;
  border: none;
}
.about-page .about-page__values-grid {
  display: grid;
  align-items: start;
  overflow: hidden;
  border-radius: 0.75rem;
}
@media (min-width: 768px) {
  .about-page .about-page__values-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    align-items: stretch;
    min-height: 25rem;
  }
}
.about-page .about-page__values-content {
  padding: 2rem;
}
@media (min-width: 768px) {
  .about-page .about-page__values-content {
    padding: 3rem;
  }
}
.about-page .about-page__values-content {
  background: var(--about-primary-container);
  border-right: 1px solid rgba(226, 199, 153, 0.1);
}
@media (max-width: 767px) {
  .about-page .about-page__values-content {
    border-right: none;
    border-bottom: 1px solid rgba(226, 199, 153, 0.1);
  }
}
.about-page .about-page__values-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  margin: 0 0 1rem;
  color: var(--about-heading);
}
.about-page .about-page__values-intro {
  margin: 0 0 1.25rem;
  font-size: 1rem;
  line-height: 1.625;
  color: var(--about-on-surface-variant);
}
.about-page .about-page__values-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.about-page .about-page__values-list > div,
.about-page .about-page__values-list > div > div {
  display: contents;
}
.about-page .about-page__values-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0;
  margin: 0;
}
.about-page .about-page__values-num {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  border: 1px solid rgba(226, 199, 153, 0.3);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--about-gold);
  transition: background 0.2s, color 0.2s;
}
.about-page .about-page__values-item:hover .about-page__values-num {
  background: var(--about-gold);
  color: var(--about-mission-color);
}
.about-page .about-page__values-name {
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--about-heading);
}
.about-page .about-page__values-media {
  overflow: hidden;
  max-height: 14rem;
}
@media (min-width: 768px) {
  .about-page .about-page__values-media {
    max-height: none;
    min-height: 0;
  }
}
.about-page .about-page__values-image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 10rem;
  max-height: 14rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  filter: var(--about-values-image-filter);
}
@media (min-width: 768px) {
  .about-page .about-page__values-image {
    min-height: 100%;
    max-height: none;
  }
}

body.page-about,
body.page-team {
  --page-section-gap: 6rem;
  background: #001711;
  color: #c4ebdd;
}
body.page-about .page__main,
body.page-team .page__main {
  background: #001711;
  padding: 0;
}
body.page-about h1, body.page-about h2, body.page-about h3, body.page-about h4, body.page-about h5, body.page-about h6,
body.page-team h1,
body.page-team h2,
body.page-team h3,
body.page-team h4,
body.page-team h5,
body.page-team h6 {
  color: inherit;
}
body.page-about .page__header,
body.page-team .page__header {
  background: transparent;
  border-bottom: none;
}
body.page-about .site-header,
body.page-team .site-header {
  background: rgba(0, 45, 32, 0.88);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(226, 199, 153, 0.2);
}
body.page-about .site-header__link,
body.page-team .site-header__link {
  color: rgba(209, 250, 229, 0.7);
}
body.page-about .site-header__link:hover,
body.page-team .site-header__link:hover {
  color: #E2C799;
}
body.page-about .site-header__menu-item.is-active-trail > .site-header__menu-row > .site-header__link,
body.page-about .site-header__menu-item.is-active-trail > .site-header__link,
body.page-team .site-header__menu-item.is-active-trail > .site-header__menu-row > .site-header__link,
body.page-team .site-header__menu-item.is-active-trail > .site-header__link {
  color: #E2C799;
}
body.page-about .site-header__theme-toggle,
body.page-team .site-header__theme-toggle {
  color: rgba(209, 250, 229, 0.7);
}
body.page-about .site-header__theme-toggle:hover,
body.page-team .site-header__theme-toggle:hover {
  color: #E2C799;
  background: rgba(226, 199, 153, 0.1);
}
body.page-about .site-header__mobile-toggle,
body.page-team .site-header__mobile-toggle {
  color: rgba(209, 250, 229, 0.85);
}

.team-page {
  --team-bg: #001711;
  --team-on-background: #c4ebdd;
  --team-on-surface-variant: #c1c8c3;
  --team-gold: #E2C799;
  --team-primary-container: #002d20;
  --team-surface-high: #0b3027;
  --team-surface-highest: #183b32;
  --team-glass-bg: rgba(0, 45, 32, 0.4);
  --team-glass-border: rgba($color-accent, 0.15);
  --team-spotlight-image-filter: grayscale(0.35) contrast(1.05);
  --team-spotlight-image-filter-hover: grayscale(0);
  --team-spotlight-glow-opacity: 0.2;
  --team-btn-outline-bg: rgba($color-accent, 0.05);
  --team-btn-outline-border: rgba($color-accent, 0.3);
  --team-section-gap: var(--page-section-gap, 6rem);
  background: var(--team-bg);
  color: var(--team-on-background);
}
.team-page .paragraph {
  padding: 0;
}
.team-page .glass-card {
  background: rgba(0, 45, 32, 0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--team-glass-border);
  border-radius: 0.75rem;
}
.team-page__inner {
  max-width: 80rem;
  margin: 0 auto;
  padding-top: 0;
  padding-bottom: 3rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (min-width: 640px) {
  .team-page__inner {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .team-page__inner {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (min-width: 768px) {
  .team-page__inner {
    padding-bottom: 4rem;
  }
}
.team-page__inner .node__content--sections {
  margin: 0;
}
.team-page__inner .node__content--sections > div,
.team-page__inner .node__content--sections > div > div {
  display: contents;
}
.team-page__inner {
  max-width: 90rem;
  padding-top: 1.5rem;
}
@media (min-width: 768px) {
  .team-page__inner {
    padding-top: 2rem;
  }
}
.team-page__inner .node--page-team {
  margin: 0;
}
.team-page__spotlight, .team-page__differentiators, .team-page__grid-section {
  margin-bottom: var(--team-section-gap);
}
.team-page__spotlight {
  display: grid;
  gap: 2.5rem;
  align-items: center;
  grid-template-areas: "media" "content";
}
@media (min-width: 768px) {
  .team-page__spotlight {
    grid-template-columns: minmax(16rem, 5fr) minmax(0, 7fr);
    grid-template-areas: "media content";
    gap: 2.5rem;
  }
}
.team-page__spotlight-media {
  grid-area: media;
  position: relative;
  min-width: 0;
  width: 100%;
}
.team-page__spotlight-glow {
  position: absolute;
  inset: -0.25rem;
  z-index: 0;
  background: var(--team-gold);
  opacity: var(--team-spotlight-glow-opacity);
  filter: blur(24px);
  border-radius: 1.5rem;
  transition: opacity 0.3s;
  pointer-events: none;
}
.team-page .team-page__spotlight-media:hover .team-page__spotlight-glow {
  opacity: calc(var(--team-spotlight-glow-opacity) + 0.1);
}
.team-page__spotlight-photo {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 28rem;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  background: transparent;
  border-radius: 0.75rem;
}
@media (min-width: 768px) {
  .team-page__spotlight-photo {
    margin: 0;
    max-width: none;
  }
}
.team-page__spotlight-image {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  aspect-ratio: 4/5;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  border-radius: 0.75rem;
  filter: var(--team-spotlight-image-filter);
  transition: filter 0.7s ease;
}
.team-page__spotlight-media:hover .team-page__spotlight-image {
  filter: var(--team-spotlight-image-filter-hover, var(--team-spotlight-image-filter));
}
.team-page__spotlight-badge {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.75rem 1rem;
  background: rgba(0, 23, 17, 0.88);
  border: 1px solid var(--team-glass-border);
  border-radius: 1rem;
  backdrop-filter: blur(8px);
}
.team-page__spotlight-badge-value {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1;
  color: var(--team-gold);
}
.team-page__spotlight-badge-label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--team-on-surface-variant);
}
.team-page__spotlight-content {
  grid-area: content;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 0;
}
.team-page__eyebrow {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--team-gold);
  margin-bottom: 0.5rem;
}
.team-page__leader-name {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.5rem, 5.5vw, 4rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0;
  color: var(--team-on-background);
}
.team-page__member-heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
}
.team-page__credentials {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--team-on-surface-variant);
  line-height: 1.375;
}
.team-page__leader-role {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-style: italic;
  color: var(--team-gold);
  margin: 0;
}
.team-page__spotlight-head {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.team-page__quote-card {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  border-radius: 0.75rem;
}
.team-page__quote-icon {
  font-size: 2.25rem;
  color: var(--team-gold);
  line-height: 1;
}
.team-page__quote-text {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.625;
  color: var(--team-on-surface-variant);
}
.team-page__quote-footer {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
}
.team-page__quote-rule {
  flex: 1;
  height: 1px;
  background: rgba(226, 199, 153, 0.2);
}
.team-page__quote-signature {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-style: normal;
  color: var(--team-gold);
}
.team-page__section-header {
  text-align: center;
  margin-bottom: 2rem;
}
.team-page__section-eyebrow {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--team-gold);
  margin-bottom: 0.5rem;
}
.team-page__section-rule {
  width: 6rem;
  height: 4px;
  background: var(--team-gold);
  margin: 0.75rem auto 0;
}
.team-page__section-title, .team-page__grid-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 500;
  margin: 0.5rem 0 0;
  color: var(--team-on-background);
}
.team-page__bento {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(12, 1fr);
}
.team-page__bento-card {
  grid-column: span 12;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: background 0.2s;
  border-radius: 0.75rem;
}
@media (min-width: 768px) {
  .team-page__bento-card {
    grid-column: span 4;
  }
}
.team-page__bento-card--featured {
  background: var(--team-surface-highest);
  border-color: rgba(226, 199, 153, 0.3);
}
.team-page__bento-card--wide {
  flex-direction: row;
  align-items: center;
  gap: 1.5rem;
  border-style: dashed;
  border-color: rgba(226, 199, 153, 0.2);
}
@media (min-width: 768px) {
  .team-page__bento-card--wide {
    grid-column: span 6;
  }
}
.team-page__bento-card--wide .team-page__bento-icon {
  margin-bottom: 0;
  flex-shrink: 0;
  width: 3.5rem;
  height: 3.5rem;
  font-size: 1.75rem;
  padding: 1rem;
  border-radius: 9999px;
  background: rgba(226, 199, 153, 0.1);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.team-page__bento-card:not(.team-page__bento-card--featured):hover {
  background: var(--team-surface-high);
}
.team-page__bento-icon {
  font-size: 3rem;
  color: var(--team-gold);
  margin-bottom: 1.5rem;
  line-height: 1;
}
.team-page__bento-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-weight: 500;
  margin: 0 0 0.5rem;
  color: var(--team-on-background);
}
.team-page__bento-text {
  margin: 0;
  color: var(--team-on-surface-variant);
  line-height: 1.625;
}
.team-page__grid-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1rem;
  margin-bottom: 2rem;
}
.team-page__grid-cta {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--team-gold);
  text-decoration: none;
  border-bottom: 1px solid var(--team-gold);
  padding-bottom: 0.25rem;
  transition: opacity 0.2s;
}
.team-page__grid-cta:hover {
  opacity: 0.7;
}
.team-page__grid-intro {
  margin: 0.5rem 0 0;
  max-width: 28rem;
  font-size: 1rem;
  line-height: 1.625;
  color: var(--team-on-surface-variant);
}
.team-page__grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .team-page__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .team-page__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.team-page__card {
  overflow: hidden;
  transition: border-color 0.5s ease;
}
.team-page__card:hover {
  border-color: rgba(226, 199, 153, 0.4);
}
.team-page__card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.team-page__card-photo {
  position: relative;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.team-page__card-photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.7s ease;
}
.team-page__card:hover .team-page__card-photo img {
  transform: scale(1.1);
}
.team-page__card-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, var(--team-bg) 0%, transparent 55%);
  opacity: 0.6;
  pointer-events: none;
}
.team-page__card-body {
  padding: 1.5rem;
}
.team-page__card-name {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--team-on-background);
  margin: 0;
}
.team-page__card-role {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--team-gold);
  margin: 0;
}
.team-page__card-summary {
  margin: 0.5rem 0 0;
  font-size: 0.875rem;
  line-height: 1.625;
  color: var(--team-on-surface-variant);
}
.team-page__empty {
  text-align: center;
  color: var(--team-on-surface-variant);
  padding: 3rem;
  border: 1px dashed rgba(226, 199, 153, 0.25);
  border-radius: 1rem;
}
.team-page__cta {
  position: relative;
  padding: 3rem;
  overflow: hidden;
  margin-bottom: 0;
  border-radius: 1rem;
}
.team-page__cta-glow {
  position: absolute;
  top: -5rem;
  right: -5rem;
  width: 20rem;
  height: 20rem;
  background: rgba(226, 199, 153, 0.1);
  border-radius: 9999px;
  filter: blur(100px);
  pointer-events: none;
}
.team-page__cta-inner {
  position: relative;
  z-index: 1;
  max-width: 48rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.team-page__cta-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 500;
  margin: 0;
  color: var(--team-on-background);
}
.team-page__cta-text {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.625;
  color: var(--team-on-surface-variant);
}
.team-page__cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.team-page__spotlight-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.team-page__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 0.75rem;
  border: 1px solid transparent;
  transition: opacity 0.2s, background 0.2s, transform 0.2s;
}
.team-page__btn--primary {
  background: var(--team-gold);
  color: var(--team-primary-container);
}
.team-page__btn--primary:hover {
  filter: brightness(1.1);
}
.team-page__btn--outline {
  background: var(--team-btn-outline-bg);
  color: var(--team-gold);
  border-color: var(--team-btn-outline-border);
}
.team-page__btn--outline:hover {
  background: rgba(226, 199, 153, 0.1);
}

html.dark body.page-team .team-page .team-page__spotlight-badge,
html.dark body.page-team .team-page .team-page__spotlight-actions,
html[data-theme=dark] body.page-team .team-page .team-page__spotlight-badge,
html[data-theme=dark] body.page-team .team-page .team-page__spotlight-actions {
  display: none;
}

html:not(.dark) body.page-about,
html:not(.dark) body.page-team,
html[data-theme=light] body.page-about,
html[data-theme=light] body.page-team {
  background: #fdfbf7;
  color: #002d20;
}
html:not(.dark) body.page-about .page__main,
html:not(.dark) body.page-team .page__main,
html[data-theme=light] body.page-about .page__main,
html[data-theme=light] body.page-team .page__main {
  background: #fdfbf7;
}
html:not(.dark) body.page-about .page__header,
html:not(.dark) body.page-team .page__header,
html[data-theme=light] body.page-about .page__header,
html[data-theme=light] body.page-team .page__header {
  background: transparent;
  border-bottom: none;
}
html:not(.dark) body.page-about .site-header,
html:not(.dark) body.page-team .site-header,
html[data-theme=light] body.page-about .site-header,
html[data-theme=light] body.page-team .site-header {
  background: rgba(253, 251, 247, 0.92);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(226, 199, 153, 0.2);
}
html:not(.dark) body.page-about .site-header__link,
html:not(.dark) body.page-team .site-header__link,
html[data-theme=light] body.page-about .site-header__link,
html[data-theme=light] body.page-team .site-header__link {
  color: rgba(0, 45, 32, 0.75);
}
html:not(.dark) body.page-about .site-header__link:hover,
html:not(.dark) body.page-team .site-header__link:hover,
html[data-theme=light] body.page-about .site-header__link:hover,
html[data-theme=light] body.page-team .site-header__link:hover {
  color: #002d20;
}
html:not(.dark) body.page-about .site-header__menu-item.is-active-trail > .site-header__menu-row > .site-header__link,
html:not(.dark) body.page-about .site-header__menu-item.is-active-trail > .site-header__link,
html:not(.dark) body.page-team .site-header__menu-item.is-active-trail > .site-header__menu-row > .site-header__link,
html:not(.dark) body.page-team .site-header__menu-item.is-active-trail > .site-header__link,
html[data-theme=light] body.page-about .site-header__menu-item.is-active-trail > .site-header__menu-row > .site-header__link,
html[data-theme=light] body.page-about .site-header__menu-item.is-active-trail > .site-header__link,
html[data-theme=light] body.page-team .site-header__menu-item.is-active-trail > .site-header__menu-row > .site-header__link,
html[data-theme=light] body.page-team .site-header__menu-item.is-active-trail > .site-header__link {
  color: rgb(216.9679389313, 181.558778626, 121.2320610687);
}
html:not(.dark) body.page-about .site-header__theme-toggle,
html:not(.dark) body.page-team .site-header__theme-toggle,
html[data-theme=light] body.page-about .site-header__theme-toggle,
html[data-theme=light] body.page-team .site-header__theme-toggle {
  color: rgba(0, 45, 32, 0.65);
}
html:not(.dark) body.page-about .site-header__theme-toggle:hover,
html:not(.dark) body.page-team .site-header__theme-toggle:hover,
html[data-theme=light] body.page-about .site-header__theme-toggle:hover,
html[data-theme=light] body.page-team .site-header__theme-toggle:hover {
  color: #002d20;
  background: rgba(0, 45, 32, 0.06);
}
html:not(.dark) body.page-about .site-header__mobile-toggle,
html:not(.dark) body.page-team .site-header__mobile-toggle,
html[data-theme=light] body.page-about .site-header__mobile-toggle,
html[data-theme=light] body.page-team .site-header__mobile-toggle {
  color: rgba(0, 45, 32, 0.85);
}
html:not(.dark) body.page-about .about-page__breadcrumb-list,
html:not(.dark) body.page-team .about-page__breadcrumb-list,
html[data-theme=light] body.page-about .about-page__breadcrumb-list,
html[data-theme=light] body.page-team .about-page__breadcrumb-list {
  color: rgba(0, 45, 32, 0.55);
}
html:not(.dark) body.page-about .about-page__breadcrumb-item:not(:last-child)::after,
html:not(.dark) body.page-team .about-page__breadcrumb-item:not(:last-child)::after,
html[data-theme=light] body.page-about .about-page__breadcrumb-item:not(:last-child)::after,
html[data-theme=light] body.page-team .about-page__breadcrumb-item:not(:last-child)::after {
  color: rgba(0, 45, 32, 0.35);
}
html:not(.dark) body.page-about .about-page__breadcrumb-item[aria-current=page],
html:not(.dark) body.page-team .about-page__breadcrumb-item[aria-current=page],
html[data-theme=light] body.page-about .about-page__breadcrumb-item[aria-current=page],
html[data-theme=light] body.page-team .about-page__breadcrumb-item[aria-current=page] {
  color: #002d20;
}
html:not(.dark) body.page-about .about-page__breadcrumb-item a:hover,
html:not(.dark) body.page-team .about-page__breadcrumb-item a:hover,
html[data-theme=light] body.page-about .about-page__breadcrumb-item a:hover,
html[data-theme=light] body.page-team .about-page__breadcrumb-item a:hover {
  color: rgb(214.7099236641, 177.1984732824, 113.2900763359);
}
html:not(.dark) body.page-about .about-page,
html[data-theme=light] body.page-about .about-page {
  --about-bg: #fdfbf7;
  --about-surface: rgba(255, 255, 255, 0.92);
  --about-primary-container: rgba(0, 45, 32, 0.06);
  --about-heading: #002d20;
  --about-hero-title: #002d20;
  --about-on-background: #002d20;
  --about-on-surface-variant: rgba(0, 45, 32, 0.65);
  --about-glass-bg: rgba(255, 255, 255, 0.82);
  --about-glass-border: rgba($color-accent, 0.35);
  --about-pillar-text: rgba(0, 45, 32, 0.65);
  --about-mission-bg: var(--about-gold);
  --about-mission-color: #002d20;
  --about-mission-icon-color: #002d20;
  --about-hero-image-opacity: 1;
  --about-hero-subtitle: var(--about-on-surface-variant);
  --about-values-image-filter: grayscale(0.15) contrast(1.05);
  --about-btn-outline-bg: rgba($color-accent, 0.12);
  --about-btn-outline-border: rgba($color-accent, 0.45);
  --about-card-title: #002d20;
  --about-card-bg: var(--about-glass-bg);
  --about-card-border: var(--about-glass-border);
  --about-hero-image-max-height: 22rem;
}
@media (min-width: 768px) {
  html:not(.dark) body.page-about .about-page,
  html[data-theme=light] body.page-about .about-page {
    --about-hero-image-max-height: 28rem;
  }
}
html:not(.dark) body.page-team .team-page,
html[data-theme=light] body.page-team .team-page {
  --team-bg: #fdfbf7;
  --team-on-background: #002d20;
  --team-on-surface-variant: rgba(0, 45, 32, 0.65);
  --team-gold: rgb(219.2259541985, 185.9190839695, 129.1740458015);
  --team-primary-container: #002d20;
  --team-surface-high: rgba(255, 255, 255, 0.88);
  --team-surface-highest: rgba(0, 45, 32, 0.08);
  --team-glass-bg: rgba(0, 45, 32, 0.06);
  --team-glass-border: rgba($color-accent, 0.25);
  --team-spotlight-image-filter: none;
  --team-spotlight-image-filter-hover: none;
  --team-spotlight-glow-opacity: 0.08;
  --team-spotlight-badge-bg: var(--team-gold);
  --team-spotlight-badge-color: #002d20;
  --team-btn-outline-bg: rgba($color-accent, 0.08);
  --team-btn-outline-border: rgba($color-accent, 0.45);
}
html:not(.dark) body.page-team .team-page .glass-card,
html[data-theme=light] body.page-team .team-page .glass-card {
  background: var(--team-glass-bg);
  border-color: var(--team-glass-border);
}
html:not(.dark) body.page-team .team-page .team-page__spotlight-badge,
html[data-theme=light] body.page-team .team-page .team-page__spotlight-badge {
  background: var(--team-spotlight-badge-bg);
  border-color: rgba(0, 45, 32, 0.12);
}
html:not(.dark) body.page-team .team-page .team-page__spotlight-badge-value,
html:not(.dark) body.page-team .team-page .team-page__spotlight-badge-label,
html[data-theme=light] body.page-team .team-page .team-page__spotlight-badge-value,
html[data-theme=light] body.page-team .team-page .team-page__spotlight-badge-label {
  color: var(--team-spotlight-badge-color);
}
html:not(.dark) body.page-team .team-page .team-page__card-gradient,
html[data-theme=light] body.page-team .team-page .team-page__card-gradient {
  background: linear-gradient(to top, rgba(253, 251, 247, 0.95) 0%, transparent 55%);
}

.team-profile {
  background: #fdfbf7;
  padding: 3rem 0 4rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (min-width: 640px) {
  .team-profile {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .team-profile {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.dark .team-profile {
  background: #051210;
}
.team-profile__inner {
  max-width: 56rem;
  margin: 0 auto;
}
.team-profile__back {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 2rem;
  color: rgba(10, 47, 43, 0.7);
  text-decoration: none;
  font-weight: 500;
}
.team-profile__back:hover {
  color: #0A2F2B;
}
.dark .team-profile__back {
  color: rgba(209, 250, 229, 0.7);
}
.dark .team-profile__back:hover {
  color: #E2C799;
}
.team-profile__layout {
  display: grid;
  gap: 2.5rem;
}
@media (min-width: 768px) {
  .team-profile__layout {
    grid-template-columns: 2fr 3fr;
    align-items: start;
  }
}
.team-profile__photo {
  border-radius: 1.5rem;
  overflow: hidden;
  border: 2px solid rgba(226, 199, 153, 0.15);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}
.team-profile__photo img {
  width: 100%;
  height: auto;
  display: block;
}
.team-profile__eyebrow {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgb(212.4519083969, 172.8381679389, 105.3480916031);
  margin-bottom: 0.75rem;
}
.team-profile__name {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2rem, 4vw, 3rem);
  margin: 0 0 0.5rem;
  color: #002d20;
}
.dark .team-profile__name {
  color: #D1FAE5;
}
.team-profile__credentials {
  margin: 0 0 1rem;
}
.team-profile__role {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.25rem;
  font-style: italic;
  color: rgb(214.7099236641, 177.1984732824, 113.2900763359);
  margin: 0 0 2rem;
}
.team-profile__bio {
  font-size: 1.125rem;
  line-height: 1.625;
  color: rgba(10, 47, 43, 0.8);
  margin-bottom: 2rem;
}
.dark .team-profile__bio {
  color: rgba(209, 250, 229, 0.85);
}
.team-profile__cta {
  font-family: "Playfair Display", Georgia, serif;
}

.login-page {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
@media (min-width: 1024px) {
  .login-page {
    flex-direction: row;
  }
}

.login-page__branding {
  display: none;
  background: #0A2F2B;
  padding: 4rem;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  min-height: 100vh;
}
@media (min-width: 1024px) {
  .login-page__branding {
    display: flex;
    width: 40%;
  }
}

.login-page__logo {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  text-decoration: none;
  color: #ffffff;
}
.login-page__logo-img {
  height: 2.5rem;
  width: auto;
  max-width: 12rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.login-page__logo-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  background: #E2C799;
  color: #0A2F2B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-weight: 700;
  font-style: italic;
  border-radius: 1rem;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.login-page__logo-text {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-weight: 700;
  color: #ffffff;
}

.login-page__brand-content {
  max-width: 32rem;
}

.login-page__title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: clamp(1.875rem, 4vw, 3.75rem);
  color: #ffffff;
  line-height: 1.25;
  margin-bottom: 2rem;
}

.login-page__title-accent {
  color: #E2C799;
}

.login-page__tagline {
  font-size: 1.25rem;
  font-weight: 500;
  color: rgba(209, 250, 229, 0.9);
  padding-left: 1.5rem;
  border-left: 3px solid #E2C799;
  margin: 0;
}

.login-page__security {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.7);
}
.login-page__security .material-symbols-outlined {
  font-size: 1.25rem;
  color: rgba(255, 255, 255, 0.8);
}

.login-page__form-section {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background: #F8FAFC;
}
@media (min-width: 1024px) {
  .login-page__form-section {
    width: 60%;
    padding: 4rem 6rem;
  }
}

.login-page__form-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  max-width: 28rem;
  margin: 0 auto;
  width: 100%;
  padding: 2rem 1.5rem;
}
@media (min-width: 640px) {
  .login-page__form-inner {
    padding: 3rem 2rem;
  }
}
@media (min-width: 1024px) {
  .login-page__form-inner {
    padding: 4rem 0;
  }
}

.login-page__mobile-logo {
  display: flex;
  margin-bottom: 2.5rem;
}
@media (min-width: 1024px) {
  .login-page__mobile-logo {
    display: none;
  }
}

.login-page__form-header {
  position: relative;
  margin-bottom: 2.5rem;
}

.login-page__theme-toggle {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0.5rem;
  color: #475569;
  cursor: pointer;
  transition: color 0.2s, background 0.2s;
}
.login-page__theme-toggle .material-symbols-outlined {
  font-size: 1.5rem;
}
.login-page__theme-toggle:hover {
  color: #0A2F2B;
  background: rgba(10, 47, 43, 0.08);
}
.dark .login-page__theme-toggle {
  color: #94A3B8;
}
.dark .login-page__theme-toggle:hover {
  color: #E2C799;
  background: rgba(226, 199, 153, 0.1);
}

.login-page__form-title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: 1.875rem;
  color: #0A2F2B;
  margin: 0 0 0.5rem;
}

.login-page__form-desc {
  font-size: 1rem;
  color: #475569;
  margin: 0;
}

.login-page__form .form-item {
  margin-bottom: 1.5rem;
}

.login-page__form .form-item label:not(.option) {
  display: block;
  font-weight: 600;
  color: #0A2F2B;
  margin-bottom: 0.5rem;
  font-size: 0.875rem;
}

.login-page__pass-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
}
.login-page__pass-header label {
  font-weight: 600;
  color: #0A2F2B;
  font-size: 0.875rem;
}

.login-page__forgot {
  font-size: 0.875rem;
  color: #0A2F2B;
  text-decoration: none;
  font-weight: 500;
}
.login-page__forgot:hover {
  text-decoration: underline;
}

.login-page__form .form-text,
.login-page__form .form-password {
  width: 100%;
  padding: 0.75rem 1rem 0.75rem 3rem;
  border-radius: 1rem;
  border: 1px solid #CBD5E1;
  background: #ffffff;
  font-size: 1rem;
  color: #0A2F2B;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.login-page__form .form-text::-moz-placeholder, .login-page__form .form-password::-moz-placeholder {
  color: #475569;
}
.login-page__form .form-text::placeholder,
.login-page__form .form-password::placeholder {
  color: #475569;
}
.login-page__form .form-text:focus,
.login-page__form .form-password:focus {
  outline: none;
  border-color: #0A2F2B;
  box-shadow: 0 0 0 2px rgba(10, 47, 43, 0.15);
}

.login-page__form .form-item-name .form-text {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23475569'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 1rem center;
  background-size: 1.25rem;
}

.login-page__form .form-item-pass .form-password {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23475569'%3E%3Cpath d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 1rem center;
  background-size: 1.25rem;
}

.login-page__remember {
  margin-bottom: 2rem;
}

.login-page__form .form-item-remember-me .form-checkbox {
  margin-right: 0.5rem;
  width: 1.125rem;
  height: 1.125rem;
  accent-color: #0A2F2B;
}
.login-page__form .form-item-remember-me label {
  font-weight: 400;
  color: #475569;
}

.login-page__submit {
  width: 100%;
  padding: 1rem 1.5rem;
  background: linear-gradient(180deg, rgb(231.6450381679, 209.9007633588, 172.8549618321) 0%, #E2C799 100%);
  color: #0A2F2B;
  font-weight: 700;
  font-size: 1.125rem;
  border: none;
  border-radius: 1.5rem;
  box-shadow: 0 4px 14px rgba(10, 47, 43, 0.15);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  cursor: pointer;
  transition: filter 0.2s, box-shadow 0.2s;
}
.login-page__submit:hover {
  filter: brightness(1.05);
  box-shadow: 0 6px 20px rgba(10, 47, 43, 0.2);
}
.login-page__submit::after {
  content: "→";
  font-size: 1.25rem;
  margin-left: 0.5rem;
}

.login-page__form-divider {
  display: flex;
  align-items: center;
  margin: 2.5rem 0;
  gap: 1rem;
}
.login-page__form-divider::before, .login-page__form-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #CBD5E1;
}

.login-page__form-divider-text {
  font-size: 0.875rem;
  font-weight: 500;
  color: #475569;
}

.login-page__biometric-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  padding: 1rem 1.5rem;
  background: #ffffff;
  color: #0A2F2B;
  font-weight: 700;
  font-size: 1rem;
  border: 2px solid #CBD5E1;
  border-radius: 1.5rem;
  text-decoration: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: border-color 0.2s, background 0.2s;
}
.login-page__biometric-btn .material-symbols-outlined {
  font-size: 1.5rem;
}
.login-page__biometric-btn:hover {
  border-color: #0A2F2B;
  background: #ECFDF5;
}

.login-page__request-access {
  margin: 2.5rem 0 0;
  font-size: 1rem;
  color: #475569;
}
.login-page__request-access .login-page__request-link {
  color: #0A2F2B;
  font-weight: 600;
  text-decoration: none;
}
.login-page__request-access .login-page__request-link:hover {
  text-decoration: underline;
}

.login-page__footer {
  margin-top: auto;
  padding: 2.5rem 1.5rem;
  text-align: center;
  border-top: 1px solid #E2E8F0;
}
@media (min-width: 1024px) {
  .login-page__footer {
    text-align: right;
    padding: 2rem 6rem 2rem 0;
  }
}

.login-page__footer-links {
  font-size: 0.875rem;
  color: #475569;
  margin-bottom: 0.5rem;
}
.login-page__footer-links a {
  color: #475569;
  text-decoration: none;
}
.login-page__footer-links a:hover {
  color: #0A2F2B;
}

.login-page__footer-sep {
  margin: 0 0.5rem;
  color: #CBD5E1;
}

.login-page__footer-copy {
  font-size: 0.75rem;
  color: #475569;
  margin: 0;
}

.dark .login-page__form-section {
  background: #051210;
}

.dark .login-page__form-title {
  color: #E2C799;
}

.dark .login-page__form-desc {
  color: #94A3B8;
}

.dark .login-page__form .form-item label:not(.option),
.dark .login-page__pass-header label {
  color: #D1FAE5;
}

.dark .login-page__forgot {
  color: #E2C799;
}
.dark .login-page__forgot:hover {
  color: rgb(237.2900763359, 220.8015267176, 192.7099236641);
}

.dark .login-page__form .form-text,
.dark .login-page__form .form-password {
  background: rgba(10, 47, 43, 0.4);
  border-color: rgba(226, 199, 153, 0.3);
  color: #D1FAE5;
}
.dark .login-page__form .form-text::-moz-placeholder, .dark .login-page__form .form-password::-moz-placeholder {
  color: #94A3B8;
}
.dark .login-page__form .form-text::placeholder,
.dark .login-page__form .form-password::placeholder {
  color: #94A3B8;
}
.dark .login-page__form .form-text:focus,
.dark .login-page__form .form-password:focus {
  border-color: #E2C799;
  box-shadow: 0 0 0 2px rgba(226, 199, 153, 0.2);
}

.dark .login-page__form .form-item-remember-me label {
  color: #94A3B8;
}

.dark .login-page__form-divider::before,
.dark .login-page__form-divider::after {
  background: #64748B;
}

.dark .login-page__form-divider-text {
  color: #94A3B8;
}

.dark .login-page__biometric-btn {
  background: rgba(10, 47, 43, 0.4);
  color: #E2C799;
  border-color: rgba(226, 199, 153, 0.3);
}
.dark .login-page__biometric-btn:hover {
  background: rgba(10, 47, 43, 0.6);
  border-color: #E2C799;
}

.dark .login-page__request-access {
  color: #94A3B8;
}
.dark .login-page__request-access .login-page__request-link {
  color: #E2C799;
}
.dark .login-page__request-access .login-page__request-link:hover {
  color: rgb(237.2900763359, 220.8015267176, 192.7099236641);
}

.dark .login-page__footer {
  border-color: rgba(226, 199, 153, 0.15);
}

.dark .login-page__footer-links,
.dark .login-page__footer-links a,
.dark .login-page__footer-copy {
  color: #94A3B8;
}

.dark .login-page__footer-links a:hover {
  color: #E2C799;
}

.dark .login-page__footer-sep {
  color: #64748B;
}

.register-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: #F8FAFC;
}

.register-page__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem 1.5rem 1rem;
  max-width: 80rem;
  margin: 0 auto;
  width: 100%;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .register-page__top {
    padding: 2rem 2rem 1.5rem;
  }
}

.register-page__top-right {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.register-page__theme-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0.5rem;
  color: #475569;
  cursor: pointer;
  transition: color 0.2s, background 0.2s;
}
.register-page__theme-toggle .material-symbols-outlined {
  font-size: 1.5rem;
}
.register-page__theme-toggle:hover {
  color: #0A2F2B;
  background: rgba(10, 47, 43, 0.08);
}
.dark .register-page__theme-toggle {
  color: #94A3B8;
}
.dark .register-page__theme-toggle:hover {
  color: #E2C799;
  background: rgba(226, 199, 153, 0.1);
}

.register-page__logo {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  color: #0A2F2B;
}
.register-page__logo-img {
  height: 2rem;
  width: auto;
  max-width: 10rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (min-width: 768px) {
  .register-page__logo-img {
    height: 2.5rem;
    max-width: 12rem;
  }
}

.register-page__logo-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: #0A2F2B;
  color: #E2C799;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.25rem;
  font-weight: 700;
  font-style: italic;
  border-radius: 0.5rem;
}

.register-page__logo-text {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: #0A2F2B;
}
@media (min-width: 768px) {
  .register-page__logo-text {
    font-size: 1.25rem;
  }
}

.register-page__login-prompt {
  font-size: 0.875rem;
  color: #475569;
  margin: 0;
}
@media (min-width: 768px) {
  .register-page__login-prompt {
    font-size: 1rem;
  }
}

.register-page__login-link {
  color: #0A2F2B;
  font-weight: 600;
  text-decoration: none;
  margin-left: 0.25rem;
}
.register-page__login-link:hover {
  text-decoration: underline;
}

.register-page__inner {
  flex: 1;
  max-width: 72rem;
  width: 100%;
  margin: 0 auto;
  padding: 3rem 1.5rem 4rem;
}
@media (min-width: 768px) {
  .register-page__inner {
    padding: 4rem 2rem 5rem;
  }
}

.register-page__header {
  text-align: center;
  margin-bottom: 3rem;
}

.register-page__title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: 2.25rem;
  color: #0A2F2B;
  margin: 0 0 1rem;
}
@media (min-width: 768px) {
  .register-page__title {
    font-size: 3rem;
  }
}

.register-page__subtitle {
  font-size: 1.125rem;
  color: #475569;
  margin: 0;
}

.register-page__cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  margin-bottom: 4rem;
}
@media (min-width: 1024px) {
  .register-page__cards {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
  }
}

.register-page__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 2.5rem 2rem;
  background: #0A2F2B;
  border-radius: 1.5rem;
  box-shadow: 0 10px 25px -5px rgba(10, 47, 43, 0.3), 0 8px 10px -6px rgba(10, 47, 43, 0.2);
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s, box-shadow 0.2s;
}
.register-page__card:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 35px -5px rgba(10, 47, 43, 0.3);
}

.register-page__card-icon {
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 50%;
  border: 2px solid #E2C799;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
}
.register-page__card-icon .material-symbols-outlined {
  font-size: 2rem;
  color: #E2C799;
}

.register-page__card-title {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  font-size: 1.5rem;
  color: #ffffff;
  margin: 0 0 1rem;
}

.register-page__card-desc {
  font-size: 0.875rem;
  color: rgba(209, 250, 229, 0.85);
  line-height: 1.625;
  margin: 0 0 1rem;
  flex: 1;
}

.register-page__card-demo {
  font-size: 0.75rem;
  color: rgba(209, 250, 229, 0.7);
  margin: 0 0 1rem;
}
.register-page__card-demo code {
  font-family: ui-monospace, monospace;
  background: rgba(0, 0, 0, 0.2);
  padding: 0.25rem 0.5rem;
  border-radius: 0.5rem;
  font-size: 0.9em;
}

.register-page__card-cta {
  font-size: 1rem;
  font-weight: 600;
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 2px;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

.register-page__trust {
  padding-top: 3rem;
  border-top: 1px solid #E2E8F0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2.5rem;
  align-items: center;
}

.register-page__trust-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #475569;
}
.register-page__trust-item .material-symbols-outlined {
  color: #E2C799;
  font-size: 1.5rem;
}

.register-page__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 2rem 1.5rem;
  border-top: 1px solid #E2E8F0;
  margin-top: auto;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .register-page__footer {
    padding: 2rem 2rem;
  }
}

.register-page__footer-logo {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  color: #0A2F2B;
}
.register-page__footer-logo-img {
  height: 1.75rem;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.register-page__footer-copy {
  font-size: 0.75rem;
  color: #475569;
  margin: 0;
  order: 3;
  width: 100%;
  text-align: center;
}
@media (min-width: 768px) {
  .register-page__footer-copy {
    order: 0;
    width: auto;
    flex: 1;
    text-align: center;
  }
}

.register-page__footer-links {
  display: flex;
  gap: 1rem;
  font-size: 0.875rem;
}
.register-page__footer-links a {
  color: #475569;
  text-decoration: none;
}
.register-page__footer-links a:hover {
  color: #0A2F2B;
}

.register-page__form-wrapper {
  max-width: 28rem;
  margin: 0 auto 4rem;
}

.register-page__form {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.register-page__form .form-item,
.register-page__form .form-wrapper {
  margin: 0;
}
.register-page__form .description,
.register-page__form .form-item .description {
  font-size: 0.75rem;
  color: #475569;
  margin-top: 0.25rem;
  line-height: 1.5;
}
.register-page__form fieldset.form-item {
  border: none;
  padding: 0;
  margin: 0;
}
.register-page__form fieldset.form-item legend {
  display: none;
}
.register-page__form label,
.register-page__form .form-item label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: #0A2F2B;
  margin-bottom: 0.5rem;
}
.register-page__form input[type=text],
.register-page__form input[type=email],
.register-page__form input[type=password],
.register-page__form .form-text,
.register-page__form .form-email,
.register-page__form .form-password {
  width: 100%;
  padding: 0.75rem 1rem 0.75rem 3rem;
  font-size: 1rem;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  color: #0A2F2B;
  border: 1px solid #CBD5E1;
  border-radius: 1rem;
  background: #ffffff;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.register-page__form input[type=text]::-moz-placeholder, .register-page__form input[type=email]::-moz-placeholder, .register-page__form input[type=password]::-moz-placeholder, .register-page__form .form-text::-moz-placeholder, .register-page__form .form-email::-moz-placeholder, .register-page__form .form-password::-moz-placeholder {
  color: #475569;
}
.register-page__form input[type=text]::placeholder,
.register-page__form input[type=email]::placeholder,
.register-page__form input[type=password]::placeholder,
.register-page__form .form-text::placeholder,
.register-page__form .form-email::placeholder,
.register-page__form .form-password::placeholder {
  color: #475569;
}
.register-page__form input[type=text]:focus,
.register-page__form input[type=email]:focus,
.register-page__form input[type=password]:focus,
.register-page__form .form-text:focus,
.register-page__form .form-email:focus,
.register-page__form .form-password:focus {
  outline: none;
  border-color: #0A2F2B;
  box-shadow: 0 0 0 2px rgba(10, 47, 43, 0.15);
}
.register-page__form .form-item-name .form-text,
.register-page__form .form-item-account-name .form-text {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23475569'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 1rem center;
  background-size: 1.25rem;
}
.register-page__form .form-item-mail .form-email,
.register-page__form .form-item-account-mail .form-email {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23475569'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 1rem center;
  background-size: 1.25rem;
}
.register-page__form .form-item-pass input,
.register-page__form .form-item-account-pass input,
.register-page__form .form-item-pass-pass1 input,
.register-page__form .form-item-pass-pass2 input,
.register-page__form .password-parent input {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23475569'%3E%3Cpath d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 1rem center;
  background-size: 1.25rem;
}
.register-page__form .js-form-type-password-confirm .form-item {
  margin-bottom: 1rem;
}
.register-page__form .js-form-type-password-confirm .form-item:last-child {
  margin-bottom: 0;
}
.register-page__form .password-strength,
.register-page__form .password-strength__title,
.register-page__form .password-strength__text {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: #475569;
}
.register-page__form .password-strength__meter {
  height: 4px;
  border-radius: 2px;
  background: #E2E8F0;
  overflow: hidden;
}
.register-page__form .password-strength__indicator {
  height: 100%;
  border-radius: 2px;
  transition: width 0.2s, background-color 0.2s;
}
.register-page__form .password-strength .is-weak .password-strength__indicator {
  background: #dc2626;
}
.register-page__form .password-strength .is-fair .password-strength__indicator {
  background: #f59e0b;
}
.register-page__form .password-strength .is-good .password-strength__indicator {
  background: #E2C799;
}
.register-page__form .password-strength .is-strong .password-strength__indicator {
  background: #059669;
}
.register-page__form .form-actions {
  margin-top: 1rem;
}
.register-page__form .form-submit,
.register-page__form .register-page__submit {
  width: 100%;
  padding: 1rem 1.5rem;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: #0A2F2B;
  background: linear-gradient(180deg, rgb(231.6450381679, 209.9007633588, 172.8549618321) 0%, #E2C799 100%);
  border: none;
  border-radius: 1.5rem;
  box-shadow: 0 4px 14px rgba(10, 47, 43, 0.15);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  transition: filter 0.2s, box-shadow 0.2s;
}
.register-page__form .form-submit:hover,
.register-page__form .register-page__submit:hover {
  filter: brightness(1.05);
  box-shadow: 0 6px 20px rgba(10, 47, 43, 0.2);
}
.register-page__form .form-submit:active,
.register-page__form .register-page__submit:active {
  transform: scale(0.99);
}
.register-page__form .form-submit::after,
.register-page__form .register-page__submit::after {
  content: "→";
  font-size: 1.25rem;
  margin-left: 0.5rem;
}

.dark .register-page {
  background: #051210;
}

.dark .register-page__logo-text,
.dark .register-page__title {
  color: #E2C799;
}

.dark .register-page__login-prompt {
  color: #94A3B8;
}

.dark .register-page__login-link {
  color: #E2C799;
}
.dark .register-page__login-link:hover {
  color: rgb(237.2900763359, 220.8015267176, 192.7099236641);
}

.dark .register-page__subtitle {
  color: #94A3B8;
}

.dark .register-page__trust {
  border-color: rgba(226, 199, 153, 0.15);
}

.dark .register-page__trust-item {
  color: #94A3B8;
}

.dark .register-page__footer {
  border-color: rgba(226, 199, 153, 0.15);
}

.dark .register-page__footer-copy,
.dark .register-page__footer-links a {
  color: #94A3B8;
}

.dark .register-page__footer-links a:hover {
  color: #E2C799;
}

.dark .register-page__form label,
.dark .register-page__form .form-item label {
  color: #D1FAE5;
}

.dark .register-page__form .description,
.dark .register-page__form .form-item .description {
  color: #94A3B8;
}

.dark .register-page__form input[type=text],
.dark .register-page__form input[type=email],
.dark .register-page__form input[type=password],
.dark .register-page__form .form-text,
.dark .register-page__form .form-email,
.dark .register-page__form .form-password {
  background: rgba(10, 47, 43, 0.4);
  border-color: rgba(226, 199, 153, 0.3);
  color: #D1FAE5;
}
.dark .register-page__form input[type=text]::-moz-placeholder, .dark .register-page__form input[type=email]::-moz-placeholder, .dark .register-page__form input[type=password]::-moz-placeholder, .dark .register-page__form .form-text::-moz-placeholder, .dark .register-page__form .form-email::-moz-placeholder, .dark .register-page__form .form-password::-moz-placeholder {
  color: #94A3B8;
}
.dark .register-page__form input[type=text]::placeholder,
.dark .register-page__form input[type=email]::placeholder,
.dark .register-page__form input[type=password]::placeholder,
.dark .register-page__form .form-text::placeholder,
.dark .register-page__form .form-email::placeholder,
.dark .register-page__form .form-password::placeholder {
  color: #94A3B8;
}
.dark .register-page__form input[type=text]:focus,
.dark .register-page__form input[type=email]:focus,
.dark .register-page__form input[type=password]:focus,
.dark .register-page__form .form-text:focus,
.dark .register-page__form .form-email:focus,
.dark .register-page__form .form-password:focus {
  border-color: #E2C799;
  box-shadow: 0 0 0 2px rgba(226, 199, 153, 0.2);
}

.dark .register-page__form .password-strength,
.dark .register-page__form .password-strength__title,
.dark .register-page__form .password-strength__text {
  color: #94A3B8;
}

.dark .register-page__form .password-strength__meter {
  background: rgba(226, 199, 153, 0.2);
}

.ai-bot {
  position: fixed;
  z-index: 1000;
  bottom: max(1.5rem, env(safe-area-inset-bottom, 0px));
  right: max(1.5rem, env(safe-area-inset-right, 0px));
  left: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.75rem;
  max-width: 100vw;
  padding-left: 1rem;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .ai-bot {
    bottom: max(1rem, env(safe-area-inset-bottom, 0px));
    right: max(1rem, env(safe-area-inset-right, 0px));
    gap: 0.5rem;
    padding-left: 0.75rem;
  }
}

.ai-bot__panel {
  width: min(20rem, 100vw - 2rem);
  max-width: calc(100vw - 2rem);
  height: min(24rem, 72dvh);
  max-height: 72dvh;
  min-height: 14rem;
  border-radius: 1.5rem;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(226, 199, 153, 0.25);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.dark .ai-bot__panel, [data-theme=dark] .ai-bot__panel {
  background: rgba(10, 47, 43, 0.96);
  border-color: rgba(226, 199, 153, 0.25);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.06);
}
.ai-bot__panel[aria-hidden=true] {
  display: none;
}
.ai-bot__panel[aria-hidden=false] {
  display: flex;
}
@media (max-width: 639px) {
  .ai-bot__panel {
    width: calc(100vw - 1.5rem);
    max-width: calc(100vw - 1.5rem);
    border-radius: 1rem;
    height: min(26rem, 65dvh);
    max-height: 65dvh;
  }
}

.ai-bot__header {
  flex-shrink: 0;
  padding: 0.75rem 1rem;
  background: #0A2F2B;
  color: #E2C799;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}

.ai-bot__status {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
}

.ai-bot__pulse {
  flex-shrink: 0;
  width: 0.5rem;
  height: 0.5rem;
  background: #4ade80;
  border-radius: 9999px;
  animation: ai-bot-pulse 2s ease-in-out infinite;
}

@keyframes ai-bot-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.75;
    transform: scale(1.2);
  }
}
.ai-bot__title {
  font-weight: 700;
  font-size: 0.875rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ai-bot__close {
  flex-shrink: 0;
  background: none;
  border: none;
  color: #E2C799;
  cursor: pointer;
  padding: 0.25rem;
  min-width: 2.25rem;
  min-height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  transition: transform 0.2s, background 0.2s;
}
.ai-bot__close:hover {
  transform: rotate(90deg);
  background: rgba(255, 255, 255, 0.08);
}

.ai-bot__messages {
  flex: 1 1 auto;
  min-height: 0;
  padding: 0.75rem 1rem;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.ai-bot__message {
  padding: 0.75rem;
  border-radius: 1rem;
  font-size: 0.75rem;
  line-height: 1.625;
  word-break: break-word;
}
.ai-bot__message--assistant {
  align-self: flex-start;
  max-width: 95%;
  background: #ECFDF5;
  color: #475569;
  border: 1px solid #D1FAE5;
}
.dark .ai-bot__message--assistant, [data-theme=dark] .ai-bot__message--assistant {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(226, 199, 153, 0.2);
  color: #D1FAE5;
}
.ai-bot__message--user {
  align-self: flex-end;
  max-width: 90%;
  background: rgba(10, 47, 43, 0.08);
  color: #0A2F2B;
  border: 1px solid rgba(10, 47, 43, 0.12);
}
.dark .ai-bot__message--user, [data-theme=dark] .ai-bot__message--user {
  background: rgba(226, 199, 153, 0.14);
  color: #D1FAE5;
  border-color: rgba(226, 199, 153, 0.28);
}

.ai-bot__body {
  margin: 0;
}

.ai-bot__cta {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(10, 47, 43, 0.08);
}
.dark .ai-bot__cta, [data-theme=dark] .ai-bot__cta {
  border-top-color: rgba(226, 199, 153, 0.15);
}

.ai-bot__cta-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  box-sizing: border-box;
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  color: #ffffff !important;
  background: #0A2F2B;
  border: 1px solid rgba(10, 47, 43, 0.2);
  transition: background 0.15s ease, transform 0.1s ease, filter 0.15s ease;
}
.ai-bot__cta-link:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
}
.ai-bot__cta-link:focus-visible {
  outline: 2px solid #E2C799;
  outline-offset: 2px;
}
.dark .ai-bot__cta-link, [data-theme=dark] .ai-bot__cta-link {
  background: #E2C799;
  color: #0A2F2B !important;
  border-color: rgba(226, 199, 153, 0.35);
}
.dark .ai-bot__cta-link:hover, [data-theme=dark] .ai-bot__cta-link:hover {
  filter: brightness(1.06);
}

.ai-bot__disclaimer {
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  font-size: 0.625rem;
  line-height: 1.45;
  color: #0A2F2B;
  text-align: center;
  font-style: italic;
  background: rgba(10, 47, 43, 0.06);
  border: 1px solid rgba(226, 199, 153, 0.12);
}
.dark .ai-bot__disclaimer, [data-theme=dark] .ai-bot__disclaimer {
  color: rgba(209, 250, 229, 0.85);
  background: rgba(0, 0, 0, 0.2);
  border-color: rgba(226, 199, 153, 0.15);
}

.ai-bot__input-wrapper {
  flex-shrink: 0;
  padding: 0.75rem 1rem;
  border-top: 1px solid rgba(226, 199, 153, 0.12);
  position: relative;
}
.dark .ai-bot__input-wrapper, [data-theme=dark] .ai-bot__input-wrapper {
  border-top-color: rgba(226, 199, 153, 0.15);
}

.ai-bot__input {
  width: 100%;
  box-sizing: border-box;
  padding: 0.5rem 1rem;
  padding-right: 2.75rem;
  min-height: 2.5rem;
  border: 1px solid rgba(226, 199, 153, 0.25);
  border-radius: 9999px;
  background: #ffffff;
  color: #0A2F2B;
  caret-color: #0A2F2B;
  font-size: 0.875rem;
  line-height: 1.4;
}
.ai-bot__input::-moz-placeholder {
  color: rgba(71, 85, 105, 0.65);
  opacity: 1;
}
.ai-bot__input::placeholder {
  color: rgba(71, 85, 105, 0.65);
  opacity: 1;
}
.ai-bot__input:focus {
  outline: none;
  border-color: #E2C799;
  box-shadow: 0 0 0 2px rgba(226, 199, 153, 0.25);
}
.dark .ai-bot__input, [data-theme=dark] .ai-bot__input {
  background: rgba(0, 0, 0, 0.35);
  border-color: rgba(226, 199, 153, 0.35);
  color: #ffffff;
  caret-color: #E2C799;
  -webkit-text-fill-color: #ffffff;
}
.dark .ai-bot__input::-moz-placeholder, [data-theme=dark] .ai-bot__input::-moz-placeholder {
  color: rgba(209, 250, 229, 0.45);
  -webkit-text-fill-color: rgba(209, 250, 229, 0.45);
}
.dark .ai-bot__input::placeholder, [data-theme=dark] .ai-bot__input::placeholder {
  color: rgba(209, 250, 229, 0.45);
  -webkit-text-fill-color: rgba(209, 250, 229, 0.45);
}
.dark .ai-bot__input:focus, [data-theme=dark] .ai-bot__input:focus {
  border-color: #E2C799;
  box-shadow: 0 0 0 2px rgba(226, 199, 153, 0.2);
}

.ai-bot__send {
  position: absolute;
  right: 1.25rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: #E2C799;
  cursor: pointer;
  padding: 0.5rem;
  min-width: 2.5rem;
  min-height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  transition: background 0.2s, color 0.2s;
}
.ai-bot__send:hover {
  background: rgba(226, 199, 153, 0.12);
}
.dark .ai-bot__send, [data-theme=dark] .ai-bot__send {
  color: #E2C799;
}
.dark .ai-bot__send:hover, [data-theme=dark] .ai-bot__send:hover {
  background: rgba(226, 199, 153, 0.15);
}

.ai-bot__toggle {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  max-width: calc(100vw - 2rem);
  padding: 0.75rem 1.25rem;
  border-radius: 9999px;
  box-shadow: 0 20px 40px -12px rgba(0, 0, 0, 0.22), 0 0 0 1px rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(226, 199, 153, 0.45);
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s;
}
.ai-bot__toggle:hover {
  transform: scale(1.02);
  box-shadow: 0 22px 44px -12px rgba(0, 0, 0, 0.28), 0 0 0 1px rgba(0, 0, 0, 0.05);
}
.ai-bot__toggle:active {
  transform: scale(0.98);
}
.dark .ai-bot__toggle, [data-theme=dark] .ai-bot__toggle {
  background: rgba(10, 47, 43, 0.96);
  border-color: rgba(226, 199, 153, 0.45);
  box-shadow: 0 20px 40px -12px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.06);
}
@media (max-width: 639px) {
  .ai-bot__toggle {
    gap: 0.5rem;
    padding: 0.75rem 1rem;
  }
}
@media (max-width: 360px) {
  .ai-bot__toggle .ai-bot__label {
    display: none;
  }
  .ai-bot__toggle {
    padding: 0.75rem;
    border-radius: 9999px;
  }
}

.ai-bot__icon {
  position: relative;
  display: flex;
  flex-shrink: 0;
}
.ai-bot__icon .material-symbols-outlined {
  font-size: 1.5rem;
  color: #0A2F2B;
}
.dark .ai-bot__icon .material-symbols-outlined, [data-theme=dark] .ai-bot__icon .material-symbols-outlined {
  color: #E2C799;
}

.ai-bot__badge {
  position: absolute;
  top: -0.25rem;
  right: -0.25rem;
  width: 0.75rem;
  height: 0.75rem;
  background: #E2C799;
  border-radius: 9999px;
}
.ai-bot__badge::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 9999px;
  background: #E2C799;
  animation: ai-bot-ping 2s ease-in-out infinite;
}

@keyframes ai-bot-ping {
  0% {
    transform: scale(1);
    opacity: 0.75;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
.ai-bot__label {
  text-align: left;
  min-width: 0;
}

.ai-bot__label-tag {
  display: block;
  font-size: 0.625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #475569;
}
.dark .ai-bot__label-tag, [data-theme=dark] .ai-bot__label-tag {
  color: rgba(209, 250, 229, 0.55);
}

.ai-bot__label-title {
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  color: #0A2F2B;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 11rem;
}
.dark .ai-bot__label-title, [data-theme=dark] .ai-bot__label-title {
  color: #ffffff;
}
@media (max-width: 639px) {
  .ai-bot__label-title {
    max-width: 9rem;
  }
}

.tax-insights-faq {
  padding-block: 2rem;
}
@media (max-width: 767px) {
  .tax-insights-faq {
    padding-block: 1.5rem;
  }
}
.tax-insights-faq__inner {
  max-width: 48rem;
  margin-inline: auto;
  padding-inline: 1rem;
}
.tax-insights-faq__header {
  margin-bottom: 1.25rem;
}
.tax-insights-faq__intro {
  margin-bottom: 1.25rem;
  line-height: 1.625;
  color: rgba(10, 47, 43, 0.88);
}
.dark .tax-insights-faq__intro, [data-theme=dark] .tax-insights-faq__intro {
  color: rgba(209, 250, 229, 0.88);
}
.tax-insights-faq__list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.tax-insights-faq__item {
  border: 1px solid rgba(10, 47, 43, 0.1);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.85);
  overflow: hidden;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
}
.dark .tax-insights-faq__item, [data-theme=dark] .tax-insights-faq__item {
  background: rgba(10, 47, 43, 0.35);
  border-color: rgba(226, 199, 153, 0.15);
}
.tax-insights-faq__question {
  list-style: none;
  cursor: pointer;
  padding: 0.75rem 1rem;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.45;
  color: #0A2F2B;
}
.tax-insights-faq__question::-webkit-details-marker {
  display: none;
}
.tax-insights-faq__question::before {
  content: "";
  display: inline-block;
  width: 0.4rem;
  height: 0.4rem;
  margin-inline-end: 0.85rem;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  vertical-align: middle;
  opacity: 0.75;
  transition: transform 0.15s ease;
}
.dark .tax-insights-faq__question, [data-theme=dark] .tax-insights-faq__question {
  color: #D1FAE5;
}
.tax-insights-faq__item[open] .tax-insights-faq__question::before {
  transform: rotate(45deg) translateY(0.1rem);
}
.tax-insights-faq__answer {
  padding: 0 1rem 1rem;
  margin-top: -0.25rem;
  font-size: 0.875rem;
  line-height: 1.625;
  color: rgba(71, 85, 105, 0.95);
}
.dark .tax-insights-faq__answer, [data-theme=dark] .tax-insights-faq__answer {
  color: rgba(209, 250, 229, 0.85);
}
.tax-insights-faq__empty {
  margin: 0;
  padding: 1rem;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(10, 47, 43, 0.65);
  background: rgba(10, 47, 43, 0.04);
  border-radius: 1rem;
  border: 1px dashed rgba(10, 47, 43, 0.12);
}
.dark .tax-insights-faq__empty, [data-theme=dark] .tax-insights-faq__empty {
  color: rgba(209, 250, 229, 0.65);
  background: rgba(0, 0, 0, 0.15);
  border-color: rgba(226, 199, 153, 0.12);
}

.client-portal {
  display: flex;
  min-height: 100vh;
  background: #F8FAFC;
  color: #0A2F2B;
  overflow-x: hidden;
}

.client-portal__sidebar-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 35;
  background: rgba(0, 0, 0, 0.4);
  opacity: 0;
  transition: opacity 0.2s;
}
@media (min-width: 1024px) {
  .client-portal__sidebar-backdrop {
    display: none !important;
  }
}

.client-portal__sidebar-backdrop.is-visible {
  display: block;
  opacity: 1;
}

.client-portal__sidebar {
  width: 18rem;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  border-right: 1px solid rgba(10, 47, 43, 0.1);
  background: #ffffff;
  position: sticky;
  top: 0;
  height: 100vh;
}
@media (max-width: 1023px) {
  .client-portal__sidebar {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 40;
    height: 100vh;
    transform: translateX(-100%);
    transition: transform 0.25s ease;
    box-shadow: none;
  }
  .client-portal.is-sidebar-open .client-portal__sidebar {
    transform: translateX(0);
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.15);
  }
}
@media (min-width: 1024px) {
  .client-portal__sidebar {
    transform: none;
  }
}

.dark .client-portal,
[data-theme=dark] .client-portal {
  background: #051210;
  color: #D1FAE5;
}

.dark .client-portal__sidebar,
[data-theme=dark] .client-portal__sidebar {
  border-right-color: rgba(255, 255, 255, 0.05);
  background: rgba(0, 0, 0, 0.4);
}

.client-portal__sidebar-inner {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.client-portal__brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem;
  margin-bottom: 1rem;
  padding: 0 0.5rem;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.2s;
}
.client-portal__brand:hover {
  opacity: 0.9;
}

.client-portal__brand-logo {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.client-portal__brand-logo img {
  height: 2rem;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.client-portal__brand-logo .client-portal__logo-img--light {
  display: block;
}
.client-portal__brand-logo .client-portal__logo-img--dark {
  display: none;
}

.dark .client-portal__brand-logo .client-portal__logo-img--light,
[data-theme=dark] .client-portal__brand-logo .client-portal__logo-img--light {
  display: none;
}

.dark .client-portal__brand-logo .client-portal__logo-img--dark,
[data-theme=dark] .client-portal__brand-logo .client-portal__logo-img--dark {
  display: block;
}

.client-portal__logo-mark {
  font-weight: 700;
  font-size: 1.125rem;
  color: #0A2F2B;
  letter-spacing: 0.02em;
}

.dark .client-portal__logo-mark,
[data-theme=dark] .client-portal__logo-mark {
  color: #ffffff;
}

.client-portal__logo-text {
  font-size: 0.875rem;
  color: #475569;
  font-weight: 600;
}

.dark .client-portal__logo-text,
[data-theme=dark] .client-portal__logo-text {
  color: #94A3B8;
}

.client-portal__brand-subtitle {
  font-size: 0.75rem;
  color: #E2C799;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}

.client-portal__back-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 2.5rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  color: #475569;
  text-decoration: none;
  border-radius: 1rem;
  transition: color 0.2s, background 0.2s;
}
.client-portal__back-link:hover {
  color: #0A2F2B;
  background: rgba(10, 47, 43, 0.05);
}
.client-portal__back-link .material-symbols-outlined {
  font-size: 1.125rem;
}

.dark .client-portal__back-link,
[data-theme=dark] .client-portal__back-link {
  color: #94A3B8;
}
.dark .client-portal__back-link:hover,
[data-theme=dark] .client-portal__back-link:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.05);
}

.client-portal__nav {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.client-portal__nav-link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  color: #475569;
  text-decoration: none;
  font-size: 0.875rem;
  border-radius: 1.5rem;
  transition: color 0.2s, background 0.2s;
}
.client-portal__nav-link:hover {
  color: #0A2F2B;
  background: rgba(10, 47, 43, 0.05);
}
.client-portal__nav-link--active {
  color: #0A2F2B;
  background: rgba(10, 47, 43, 0.1);
  border: 1px solid rgba(10, 47, 43, 0.2);
  font-weight: 600;
}

.dark .client-portal__nav-link,
[data-theme=dark] .client-portal__nav-link {
  color: #94A3B8;
}
.dark .client-portal__nav-link:hover,
[data-theme=dark] .client-portal__nav-link:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.05);
}
.dark .client-portal__nav-link--active,
[data-theme=dark] .client-portal__nav-link--active {
  color: #E2C799;
  background: rgba(226, 199, 153, 0.1);
  border-color: rgba(226, 199, 153, 0.2);
}

.client-portal__user {
  margin-top: auto;
  padding-top: 1.5rem;
}

.client-portal__user-card {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem;
  background: rgba(10, 47, 43, 0.05);
  border-radius: 2.25rem;
  border: 1px solid rgba(10, 47, 43, 0.1);
}

.client-portal__user-avatar {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: #CBD5E1;
  flex-shrink: 0;
}

.client-portal__user-name {
  font-size: 0.875rem;
  font-weight: 700;
  color: #0A2F2B;
}

.dark .client-portal__user-card,
[data-theme=dark] .client-portal__user-card {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.05);
}

.dark .client-portal__user-avatar,
[data-theme=dark] .client-portal__user-avatar {
  background: #94A3B8;
}

.dark .client-portal__user-name,
[data-theme=dark] .client-portal__user-name {
  color: #ffffff;
}

.client-portal__user-role {
  font-size: 0.75rem;
  color: #E2C799;
  font-weight: 700;
  text-transform: uppercase;
}

.client-portal__main {
  flex: 1;
  overflow-y: auto;
  min-width: 0;
}

.client-portal__mobile-nav-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  background: none;
  border: none;
  border-radius: 1rem;
  color: #0A2F2B;
  cursor: pointer;
}
.dark .client-portal__mobile-nav-toggle, [data-theme=dark] .client-portal__mobile-nav-toggle {
  color: #D1FAE5;
}
@media (min-width: 1024px) {
  .client-portal__mobile-nav-toggle {
    display: none;
  }
}

.client-portal__header {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1rem 1rem 1.5rem;
}
@media (min-width: 768px) {
  .client-portal__header {
    padding: 1.5rem 2rem;
  }
}
.client-portal__header {
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(10, 47, 43, 0.1);
}

.client-portal__header .client-portal__title {
  flex: 1;
  min-width: 0;
  font-size: 1.125rem;
}
@media (min-width: 768px) {
  .client-portal__header .client-portal__title {
    font-size: 1.25rem;
  }
}

.client-portal__header-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.client-portal__theme-toggle {
  padding: 0.5rem;
  background: transparent;
  border: none;
  border-radius: 1rem;
  color: #0A2F2B;
  cursor: pointer;
  transition: color 0.2s, background 0.2s;
}
.client-portal__theme-toggle:hover {
  background: rgba(10, 47, 43, 0.1);
  color: #E2C799;
}

.client-portal__title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #0A2F2B;
}

.dark .client-portal__header,
[data-theme=dark] .client-portal__header {
  background: rgba(15, 23, 42, 0.6);
  border-bottom-color: rgba(255, 255, 255, 0.05);
}

.dark .client-portal__theme-toggle,
[data-theme=dark] .client-portal__theme-toggle {
  color: #D1FAE5;
}
.dark .client-portal__theme-toggle:hover,
[data-theme=dark] .client-portal__theme-toggle:hover {
  background: rgba(255, 255, 255, 0.05);
  color: #E2C799;
}

.dark .client-portal__title,
[data-theme=dark] .client-portal__title {
  color: #ffffff;
}

.client-portal__content {
  padding: 1rem;
  max-width: 80rem;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .client-portal__content {
    padding: 2rem;
  }
}

.client-portal__bento {
  background: #ffffff;
  border: 1px solid rgba(10, 47, 43, 0.15);
  border-radius: 2.25rem;
  padding: 2rem;
  margin-bottom: 1.5rem;
  transition: all 0.3s ease;
}
.client-portal__bento:hover {
  border-color: rgba(10, 47, 43, 0.3);
  box-shadow: 0 4px 20px rgba(10, 47, 43, 0.08);
}

.dark .client-portal__bento,
[data-theme=dark] .client-portal__bento {
  background: rgba(10, 47, 43, 0.2);
  border-color: rgba(226, 199, 153, 0.2);
}
.dark .client-portal__bento:hover,
[data-theme=dark] .client-portal__bento:hover {
  border-color: rgba(226, 199, 153, 0.4);
  box-shadow: 0 0 20px rgba(226, 199, 153, 0.05);
}

.client-portal__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .client-portal__grid {
    grid-template-columns: repeat(12, 1fr);
  }
}

.client-portal__footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem 1.5rem 2rem;
  gap: 1rem;
  border-top: 1px solid rgba(10, 47, 43, 0.1);
  opacity: 0.7;
}
@media (min-width: 768px) {
  .client-portal__footer {
    padding: 2rem 22rem 2rem 2rem;
  }
}

.dark .client-portal__footer,
[data-theme=dark] .client-portal__footer {
  border-top-color: rgba(255, 255, 255, 0.05);
}

.client-portal__footer p {
  font-size: 0.75rem;
  margin: 0;
}

.client-portal__footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
  flex: 1;
  justify-content: center;
}
@media (min-width: 768px) {
  .client-portal__footer-links {
    margin-right: 2rem;
  }
}

.client-portal__footer-links a {
  font-size: 0.75rem;
  font-weight: 700;
  color: inherit;
  text-decoration: none;
}
.client-portal__footer-links a:hover {
  color: #E2C799;
}

@media (min-width: 768px) {
  .client-portal__grid-item--4 {
    grid-column: span 4;
  }
}

@media (min-width: 768px) {
  .client-portal__grid-item--6 {
    grid-column: span 6;
  }
}

@media (min-width: 768px) {
  .client-portal__grid-item--8 {
    grid-column: span 8;
  }
}

@media (min-width: 768px) {
  .client-portal__grid-item--12 {
    grid-column: span 12;
  }
}

.client-portal__summary-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.5rem;
}

.client-portal__summary-icon {
  width: 4rem;
  height: 4rem;
  background: rgba(10, 47, 43, 0.1);
  border-radius: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #E2C799;
}

.client-portal__summary-body {
  flex: 1;
  min-width: 12rem;
}
.client-portal__summary-body h3 {
  margin: 0 0 0.25rem;
  font-size: 1.125rem;
  color: #0A2F2B;
}
.client-portal__summary-body p {
  margin: 0;
  font-size: 0.875rem;
  color: #475569;
}

.dark .client-portal__summary-body h3,
[data-theme=dark] .client-portal__summary-body h3 {
  color: #ffffff;
}

.dark .client-portal__summary-body p,
[data-theme=dark] .client-portal__summary-body p {
  color: #94A3B8;
}

.client-portal__card-label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #64748B;
  margin: 0 0 0.5rem;
}

.client-portal__card-desc {
  font-size: 0.75rem;
  color: #64748B;
  margin: 0 0 1rem;
}

.client-portal__big-number {
  font-size: 2.25rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
  color: #0A2F2B;
}

.dark .client-portal__big-number,
[data-theme=dark] .client-portal__big-number {
  color: #ffffff;
}

.client-portal__score-circle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 1.5rem 0;
}

.client-portal__score-value {
  font-size: 3rem;
  font-weight: 800;
  color: #0A2F2B;
}

.dark .client-portal__score-value,
[data-theme=dark] .client-portal__score-value {
  color: #ffffff;
}

.client-portal__score-delta {
  font-size: 0.75rem;
  font-weight: 700;
  color: #10b981;
}

.client-portal__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
  font-weight: 700;
  border-radius: 9999px;
  background: rgba(10, 47, 43, 0.1);
  border: 1px solid rgba(10, 47, 43, 0.2);
}
.client-portal__badge--success {
  background: rgba(16, 185, 129, 0.1);
  color: #10b981;
}

.client-portal__text-success {
  color: #10b981;
}

.client-portal__accent {
  color: #E2C799;
}

.client-portal__forecast-rows {
  margin: 1rem 0;
}

.client-portal__forecast-row {
  display: flex;
  justify-content: space-between;
  padding: 0.5rem 0;
  font-size: 0.875rem;
  border-bottom: 1px solid rgba(10, 47, 43, 0.1);
}

.dark .client-portal__forecast-row,
[data-theme=dark] .client-portal__forecast-row {
  border-bottom-color: rgba(255, 255, 255, 0.05);
}

.client-portal__compliance-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin-top: 1.5rem;
}

.client-portal__compliance-item {
  padding: 1rem;
  background: rgba(10, 47, 43, 0.05);
  border-radius: 1.5rem;
  border: 1px solid rgba(10, 47, 43, 0.1);
}
.client-portal__compliance-item p {
  margin: 0.5rem 0 0;
  font-size: 0.875rem;
  font-weight: 700;
  color: #0A2F2B;
}

.dark .client-portal__compliance-item,
[data-theme=dark] .client-portal__compliance-item {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.05);
}
.dark .client-portal__compliance-item p,
[data-theme=dark] .client-portal__compliance-item p {
  color: #ffffff;
}

.client-portal__compliance-label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #64748B;
}

.client-portal__icon-success {
  color: #10b981;
}

.client-portal__chart-bars {
  display: flex;
  align-items: flex-end;
  gap: 1rem;
  height: 12rem;
  margin-top: 1.5rem;
}
.client-portal__chart-bars--large {
  height: 16rem;
}
.client-portal__chart-bars--inline {
  flex: 1;
  margin-top: 0;
  padding: 1.5rem;
  background: rgba(10, 47, 43, 0.3);
  border-radius: 1.5rem;
  border: 1px solid rgba(226, 199, 153, 0.2);
}

.client-portal__chart-bar {
  flex: 1;
  min-width: 1rem;
  background: rgba(10, 47, 43, 0.4);
  border-radius: 1rem 1rem 0 0;
  transition: height 0.3s ease;
}
.client-portal__chart-bar--gold {
  background: rgba(226, 199, 153, 0.3);
}

.client-portal__recommendation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}

.client-portal__rec-icon {
  width: 3.5rem;
  height: 3.5rem;
  background: rgba(10, 47, 43, 0.08);
  border-radius: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #E2C799;
}

.dark .client-portal__rec-icon,
[data-theme=dark] .client-portal__rec-icon {
  background: rgba(255, 255, 255, 0.05);
}

.client-portal__rec-actions {
  display: flex;
  gap: 1rem;
}

.client-portal__vault-hero-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2rem;
}

.client-portal__vault-icon {
  width: 5rem;
  height: 5rem;
  background: rgba(10, 47, 43, 0.3);
  border-radius: 1.5rem;
  border: 1px solid rgba(226, 199, 153, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #E2C799;
  font-size: 2.5rem;
}

.client-portal__vault-body {
  flex: 1;
  min-width: 12rem;
}

.client-portal__protection {
  flex-shrink: 0;
}

.client-portal__protection-label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #64748B;
  display: block;
  margin-bottom: 0.5rem;
  text-align: right;
}

.client-portal__progress {
  height: 0.5rem;
  width: 12rem;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 9999px;
  overflow: hidden;
}

.client-portal__progress-fill {
  height: 100%;
  background: #E2C799;
  border-radius: 9999px;
}

.client-portal__biometric {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.client-portal__biometric-icon {
  width: 6rem;
  height: 6rem;
  border: 2px dashed rgba(226, 199, 153, 0.3);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  margin-bottom: 1.5rem;
}
.client-portal__biometric-icon .material-symbols-outlined {
  font-size: 2.5rem;
  color: #E2C799;
}

.client-portal__docs-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
}

.client-portal__tags {
  display: flex;
  gap: 0.5rem;
}

.client-portal__tag {
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 700;
  border-radius: 9999px;
  background: rgba(226, 199, 153, 0.1);
  border: 1px solid rgba(226, 199, 153, 0.2);
}

.client-portal__doc-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.client-portal__doc-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
  background: rgba(10, 47, 43, 0.04);
  border-radius: 1.5rem;
  border: 1px solid rgba(10, 47, 43, 0.1);
  transition: background 0.2s;
}
.client-portal__doc-item:hover {
  background: rgba(10, 47, 43, 0.08);
}

.dark .client-portal__doc-item,
[data-theme=dark] .client-portal__doc-item {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.05);
}
.dark .client-portal__doc-item:hover,
[data-theme=dark] .client-portal__doc-item:hover {
  background: rgba(255, 255, 255, 0.08);
}

.client-portal__doc-icon {
  width: 2.5rem;
  height: 2.5rem;
  background: rgba(10, 47, 43, 0.08);
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.client-portal__doc-icon--pdf .material-symbols-outlined {
  color: #f87171;
}
.client-portal__doc-icon--doc .material-symbols-outlined {
  color: #60a5fa;
}
.client-portal__doc-icon--draw .material-symbols-outlined {
  color: #fbbf24;
}

.dark .client-portal__doc-icon,
[data-theme=dark] .client-portal__doc-icon {
  background: rgba(255, 255, 255, 0.1);
}

.client-portal__doc-title {
  font-size: 0.875rem;
  font-weight: 700;
  margin: 0 0 0.25rem;
  color: #0A2F2B;
}

.client-portal__doc-meta {
  font-size: 0.75rem;
  color: #475569;
  margin: 0;
}

.dark .client-portal__doc-title,
[data-theme=dark] .client-portal__doc-title {
  color: #ffffff;
}

.dark .client-portal__doc-meta,
[data-theme=dark] .client-portal__doc-meta {
  color: #64748B;
}

.dark .client-portal__doc-title,
[data-theme=dark] .client-portal__doc-title {
  color: #ffffff;
}

.dark .client-portal__doc-meta,
[data-theme=dark] .client-portal__doc-meta {
  color: #64748B;
}

.client-portal__doc-download {
  color: #94A3B8;
  cursor: pointer;
  margin-left: auto;
}
.client-portal__doc-item:hover .client-portal__doc-download {
  color: #E2C799;
}

.client-portal__activity-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 2rem;
}

.client-portal__activity-table {
  overflow-x: auto;
}
.client-portal__activity-table table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 0.875rem;
}
.client-portal__activity-table thead {
  border-bottom: 1px solid rgba(10, 47, 43, 0.2);
}
.client-portal__activity-table th {
  padding-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #475569;
}
.client-portal__activity-table td {
  padding: 1rem 0;
  border-bottom: 1px solid rgba(10, 47, 43, 0.1);
  color: #0A2F2B;
}
.client-portal__activity-table tbody tr:last-child td {
  border-bottom: none;
}

.dark .client-portal__activity-table thead,
[data-theme=dark] .client-portal__activity-table thead {
  border-bottom-color: rgba(255, 255, 255, 0.05);
}

.dark .client-portal__activity-table th,
[data-theme=dark] .client-portal__activity-table th {
  color: #64748B;
}

.dark .client-portal__activity-table td,
[data-theme=dark] .client-portal__activity-table td {
  border-bottom-color: rgba(255, 255, 255, 0.05);
  color: #CBD5E1;
}

.client-portal__mono {
  font-family: ui-monospace, monospace;
  font-size: 0.75rem;
  color: #94A3B8;
}

.client-portal__bold {
  font-weight: 700;
}

.client-portal__status {
  padding: 0.25rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 700;
  border-radius: 0.5rem;
}
.client-portal__status--success {
  background: rgba(16, 185, 129, 0.1);
  color: #10b981;
}
.client-portal__status--authorized {
  background: rgba(245, 158, 11, 0.1);
  color: #f59e0b;
}

.text-right {
  text-align: right;
}

.client-portal__upload-zone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer;
}

.client-portal__upload-icon {
  width: 4rem;
  height: 4rem;
  background: rgba(10, 47, 43, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0A2F2B;
  margin-bottom: 1rem;
}
.client-portal__upload-icon .material-symbols-outlined {
  font-size: 2rem;
}

.client-portal__doc-actions {
  display: flex;
  gap: 0.5rem;
  margin-top: 1rem;
  align-items: center;
}

.client-portal__ledger-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
}

.client-portal__analytics-hero {
  position: relative;
  overflow: hidden;
}

.client-portal__analytics-hero-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2rem;
}

.client-portal__analytics-stats {
  margin-top: 2rem;
}

.client-portal__strategy-header {
  margin-bottom: 1.5rem;
}

.client-portal__strategy-header .client-portal__badge {
  margin-bottom: 0.5rem;
}

.client-portal__alert.client-portal__alert--warning {
  border-color: rgba(239, 68, 68, 0.3);
  background: rgba(239, 68, 68, 0.05);
}
.client-portal__alert.client-portal__alert--info {
  border-color: rgba(226, 199, 153, 0.3);
  background: rgba(226, 199, 153, 0.05);
}

.client-portal__alert-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}
.client-portal__alert-header .material-symbols-outlined {
  font-size: 0.875rem;
}

.client-portal__alert--warning .client-portal__alert-header {
  color: #f87171;
}

.client-portal__alert--info .client-portal__alert-header {
  color: #E2C799;
}
/*# sourceMappingURL=components.css.map */
