/*!
Theme Name: Ken Vandermark
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: ken-vandermark
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Ken Vandermark is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/* ---------------------------------------------
abstracts
--------------------------------------------- */
/* Min */
/* Max */
/* Min and Max */
/* ---------------------------------------------
Design
--------------------------------------------- */
/* color ---- */
hr {
  border-color: var(--bs-dark-border-subtle) !important;
  opacity: 1 !important;
}

/* header ---- */
header.site-header .site-branding h1.site-title,
header.site-header .site-branding span.site-title {
  color: var(--bs-dark);
}
header.site-header .site-branding span.site-description {
  font-size: 0.85rem;
  color: var(--bs-body-color);
}

header.entry-header {
  padding: 1.75rem 0 2rem 0;
  background-color: rgba(255, 255, 255, 0.0125);
  border-bottom: 1px solid var(--bs-dark-border-subtle);
  margin-bottom: 1.75rem;
}
@media (max-width: 767.98px) {
  header.entry-header {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}
@media (max-width: 575.98px) {
  header.entry-header {
    text-align: start;
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 0.75rem;
  }
}
header.entry-header h1 {
  margin: 0;
  padding: 0;
}
@media (max-width: 575.98px) {
  header.entry-header .dash-dark {
    display: none;
  }
}

header.entry-header-post {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

header.page-header {
  padding: 1.75rem 0 2rem 0;
  background-color: rgba(255, 255, 255, 0.0125);
  border-bottom: 1px solid var(--bs-dark-border-subtle);
  margin-bottom: 1.75rem;
}
@media (max-width: 575.98px) {
  header.page-header {
    text-align: start;
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (max-width: 575.98px) {
  header.page-header .dash-one {
    display: none;
  }
}
header.page-header h1.page-title {
  color: var(--bs-secondary) !important;
}

/* hero ---- */
.kv-hero {
  position: relative;
  border-bottom: 1px solid var(--bs-dark-border-subtle);
  width: 100%;
  height: 720px;
}
@media (max-width: 1399.98px) {
  .kv-hero {
    height: 720px;
  }
}
@media (max-width: 991.98px) {
  .kv-hero {
    height: 500px;
  }
}
@media (max-width: 767.98px) {
  .kv-hero {
    height: 450px;
  }
}
@media (max-width: 575.98px) {
  .kv-hero {
    height: 450px;
  }
}
@media (max-width: 413.98px) {
  .kv-hero {
    height: 480px;
  }
}
.kv-hero__eyebrow {
  color: var(--bs-primary);
}
.kv-hero__heading {
  color: var(--bs-light);
}
.kv-hero__text {
  font-size: 1.25rem;
  line-height: 1.75rem;
  color: rgba(255, 255, 255, 0.75);
}
@media (max-width: 767.98px) {
  .kv-hero__text {
    font-size: 1rem;
    line-height: 1.4rem;
  }
}
@media (max-width: 575.98px) {
  .kv-hero__text {
    font-size: 0.85rem;
    line-height: 1.25rem;
  }
}
.kv-hero .container {
  z-index: 3;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

/* navbar ---- */
.navbar-brand {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-right: 0 !important;
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  text-decoration: none;
  white-space: nowrap;
}

/* nav ---- */
nav.navbar {
  border-bottom: 1px solid var(--bs-dark-border-subtle);
}

.nav-link {
  font-family: "Roboto", sans-serif !important;
  color: var(--bs-gray-600) !important;
}
.nav-link.active {
  color: var(--bs-light) !important;
}
.nav-link .bi {
  font-size: 0.875rem;
  color: var(--bs-secondary);
}

.nav-link:hover, .nav-link:focus {
  color: var(--bs-gray-500) !important;
}

/* card ---- */
.card-post {
  display: flex;
  flex-direction: column;
}
.card-post__image-wrap {
  width: 100%;
  aspect-ratio: 3/2;
  overflow: hidden;
  background-color: var(--bs-gray-800);
}
.card-post__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  transition: transform 0.35s ease;
}
.card-post__image:hover {
  transform: scale(1.03);
}
.card-post__body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.card-post__category a {
  text-decoration: none;
  text-transform: uppercase;
  font-size: 0.75rem;
}
.card-post__category span.cat-sep {
  margin-inline: 0.35em;
  opacity: 0.5;
}
.card-post__title {
  margin-top: 0.5rem;
  line-height: 1.35;
}
.card-post__title a {
  text-decoration: none;
}
.card-post__title a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.card-post__excerpt {
  flex: 1;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--bs-gray-400);
}
.card-post__excerpt p {
  margin-bottom: 0;
}
.card-post .entry-meta {
  font-size: 0.85rem;
  color: var(--bs-gray-500);
}

@media (max-width: 767.98px) {
  .card-post {
    flex-direction: row;
    gap: 0.75rem;
  }
  .card-post__image-wrap {
    width: 33%;
    flex-shrink: 0;
    aspect-ratio: 1/1;
  }
  .card-post__body {
    padding-top: 0;
  }
  .card-post__excerpt {
    display: none;
  }
}
/* body ---- */
body {
  background-color: var(--bs-dark) !important;
  font-weight: 400;
  line-height: 1.6rem;
  /* Para Chrome, Safari y Edge (basados en WebKit/Blink) */
  -webkit-font-smoothing: antialiased;
  /* Para Firefox en macOS */
  -moz-osx-font-smoothing: grayscale;
}

/* main ---- */
main.site-contend-main {
  padding-bottom: 2rem;
  background-color: var(--bs-dark-bg-subtle) !important;
}

/* footer ---- */
footer.site-footer {
  background-color: var(--bs-dark) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.075);
}
footer.site-footer .site-info {
  color: var(--bs-gray-700);
  font-size: 0.85rem !important;
}
footer.site-footer .site-info span.sep {
  color: var(--bs-gray-800);
}
footer.site-footer .site-info a {
  color: var(--bs-gray-700) !important;
}

/* brand ---- */
.navbar-brand {
  font-family: "Rationale", sans-serif;
  font-size: 1.75rem !important;
  color: var(--bs-primary) !important;
  font-weight: 400;
  font-style: normal;
}
@media (max-width: 575.98px) {
  .navbar-brand {
    font-size: 1.25rem !important;
  }
}

@media (max-width: 575.98px) {
  p.brand-info {
    font-size: 0.75rem;
  }
}

.brand-vr {
  margin: 0.75rem;
}

/* headings ---- */
h1,
h2,
.h2,
.h1 {
  font-weight: 500;
  color: var(--bs-light) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  /* Para Chrome, Safari y Edge (basados en WebKit/Blink) */
  -webkit-font-smoothing: antialiased;
  /* Para Firefox en macOS */
  -moz-osx-font-smoothing: grayscale;
}

.dash-dark {
  color: rgba(255, 255, 255, 0.25);
}

.dash-secondary {
  color: rgba(255, 255, 255, 0.25);
}

header.page-header h1 {
  color: var(--bs-primary);
}

h1.entry-title {
  color: var(--bs-secondary) !important;
}

/* article ---- */
.kv_article-page {
  padding-bottom: 2rem;
}
.kv_article-page__header {
  padding: 1.75rem 0 2rem 0;
  background-color: rgba(255, 255, 255, 0.0125);
  border-bottom: 1px solid var(--bs-dark-border-subtle);
  margin-bottom: 1.75rem;
}
@media (max-width: 767.98px) {
  .kv_article-page__header {
    margin-bottom: 1rem;
  }
}
.kv_article-page__title h1 {
  color: var(--bs-secondary) !important;
  margin: 0;
}
.kv_article-page__index-meta span a {
  color: var(--bs-body-color);
  text-decoration: none;
}
.kv_article-page__index-meta span a:hover {
  color: var(--bs-link-color);
  text-decoration: underline;
}
.kv_article-page .post-thumbnail {
  display: block;
  margin-bottom: 1rem;
}
.kv_article-page .post-thumbnail img {
  max-width: 100%;
  height: auto;
}
.kv_article-page footer.entry-footer .edit-link {
  display: block;
}
.kv_article-page footer.entry-footer .edit-link a {
  color: var(--bs-success);
}
.kv_article-page .col-aside {
  border-left: 1px dotted var(--bs-dark-border-subtle);
}

.kv_index-blog__header,
.kv_index-archive__header {
  padding: 1.75rem 0 2rem 0;
  background-color: rgba(255, 255, 255, 0.0125);
  border-bottom: 1px solid var(--bs-dark-border-subtle);
  margin-bottom: 1.75rem;
}
@media (max-width: 767.98px) {
  .kv_index-blog__header,
  .kv_index-archive__header {
    margin-bottom: 1rem;
  }
}
.kv_index-blog__title h1,
.kv_index-archive__title h1 {
  color: var(--bs-secondary) !important;
  margin: 0;
}
.kv_index-blog__title h2,
.kv_index-archive__title h2 {
  font-size: calc(1.25rem + 0.7vw);
}
.kv_index-blog__index-meta span a,
.kv_index-archive__index-meta span a {
  color: var(--bs-body-color);
  text-decoration: none;
}
.kv_index-blog__index-meta span a:hover,
.kv_index-archive__index-meta span a:hover {
  color: var(--bs-link-color);
  text-decoration: underline;
}
.kv_index-blog .post-thumbnail,
.kv_index-archive .post-thumbnail {
  display: block;
  margin-bottom: 1rem;
}
.kv_index-blog .post-thumbnail img,
.kv_index-archive .post-thumbnail img {
  max-width: 100%;
  height: auto;
}
.kv_index-blog ul.post-categories,
.kv_index-archive ul.post-categories {
  list-style: none;
  padding: 0;
  margin-bottom: 0.5rem;
}
.kv_index-blog ul.post-categories li a,
.kv_index-archive ul.post-categories li a {
  text-transform: uppercase;
  font-size: 0.85rem;
  text-decoration: none;
}
.kv_index-blog ul.post-categories li a:hover,
.kv_index-archive ul.post-categories li a:hover {
  text-decoration: underline;
}
.kv_index-blog .col-aside,
.kv_index-archive .col-aside {
  border-left: 1px dotted var(--bs-dark-border-subtle);
}
.kv_index-blog footer.entry-footer .edit-link,
.kv_index-archive footer.entry-footer .edit-link {
  display: block;
}
.kv_index-blog footer.entry-footer .edit-link a,
.kv_index-archive footer.entry-footer .edit-link a {
  color: var(--bs-success);
}

/* section ---- */
section.error-404 .page-content {
  color: var(--bs-body-color);
}

.kv-blog-home {
  background-color: var(--bs-dark-bg-subtle);
  padding: 3rem 0;
}
.kv-blog-home__heading {
  text-align: center;
  color: var(--bs-primary) !important;
}

.kv-calendar-home {
  background-color: var(--bs-dark);
  padding: 3rem 0;
}
.kv-calendar-home__heading {
  text-align: center;
  color: var(--bs-primary) !important;
}

.kv-latest-home {
  background-color: var(--bs-secondary);
  padding: 3rem 0;
}
.kv-latest-home__heading {
  text-align: center;
  color: var(--bs-light) !important;
}
.kv-latest-home .latest-swiper__title {
  color: var(--bs-light) !important;
  margin-bottom: 0.25rem;
}
.kv-latest-home .latest-swiper__by {
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: var(--bs-primary-bg-subtle) !important;
}
.kv-latest-home .latest-swiper__cover {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border: 3px solid var(--bs-secondary-border-subtle);
  margin-bottom: 0.5rem;
}

.kv-instagram-home {
  background-color: var(--bs-black);
  padding: 3rem 0;
}
.kv-instagram-home__heading {
  text-align: center;
  color: var(--bs-primary) !important;
}

section.widget {
  margin-bottom: 1rem;
}

/* single ---- */
.caption-image, figcaption.wp-element-caption {
  font-size: 0.85rem !important;
  font-style: italic !important;
  font-weight: 300 !important;
  color: var(--bs-tertiary-color) !important;
}

/* pagination ---- */
nav.pagination {
  margin-top: 1rem;
  padding-top: 1rem;
  display: flex;
  justify-content: center;
}
nav.pagination h2 {
  display: none;
}
nav.pagination .nav-links {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
nav.pagination .nav-links .page-numbers {
  color: var(--bs-primary);
  display: inline-block;
  padding: 0.375rem 0.75rem;
  margin-left: 0.065rem;
  margin-right: 0.065rem;
  border: 1px solid var(--bs-gray-700);
  background: transparent;
  line-height: 1;
  text-decoration: none;
  border-radius: 2px;
}
nav.pagination .nav-links .page-numbers.current,
nav.pagination .nav-links a.page-numbers:hover {
  background: var(--bs-secondary);
  color: var(--bs-light);
  border-color: var(--bs-primary) !important;
}

/* networks ---- */
nav.networks-home a.nav-link {
  color: var(--bs-primary) !important;
  padding: 0 0.5rem;
}

nav.networks-footer a.nav-link {
  color: var(--bs-gray-700);
}

/* scrollbar ---- */
::-webkit-scrollbar {
  width: 12px;
}

::-webkit-scrollbar-track {
  border-radius: 0;
  background: var(--bs-dark-bg-subtle);
  border-left: 1px solid var(--bs-gray-800);
  border-right: 1px solid var(--bs-gray-800);
}

::-webkit-scrollbar-thumb {
  background: var(--bs-gray-800);
}

/* discography ---- */
img.img-page {
  border: 3px solid var(--bs-dark-border-subtle);
}

.kv-discography__cover {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border: 2px solid var(--bs-dark-border-subtle);
  margin-bottom: 0.5rem;
}
.kv-discography__title {
  color: var(--bs-primary) !important;
  margin-bottom: 0.25rem;
}
.kv-discography__by {
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: var(--bs-light) !important;
}

/* events ---- */
.kv-events__row {
  padding: 1rem 0;
  border-bottom: 1px solid var(--bs-dark-border-subtle);
}
.kv-events__date {
  border: 1px solid var(--bs-secondary);
  text-align: center;
  padding: 0.5rem;
  background-color: var(--bs-secondary-bg-subtle);
}
.kv-events__day-name {
  font-size: 1.25rem;
  font-weight: 400;
  color: var(--bs-secondary);
  text-transform: uppercase;
}
@media (max-width: 575.98px) {
  .kv-events__day-name {
    font-size: 0.85rem;
  }
}
.kv-events__date-day {
  font-size: 2rem;
  font-weight: 600;
  color: var(--bs-secondary);
}
@media (max-width: 575.98px) {
  .kv-events__date-day {
    font-size: 1rem;
  }
}
.kv-events__date-month {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--bs-secondary);
}
@media (max-width: 575.98px) {
  .kv-events__date-month {
    font-size: 0.85rem;
  }
}
.kv-events__title {
  font-weight: 400;
  color: var(--bs-gray-400);
}
.kv-events__title a {
  text-decoration: none;
}
.kv-events__title a:hover {
  text-decoration: underline;
}
@media (max-width: 575.98px) {
  .kv-events__text {
    font-size: 0.85rem;
  }
}
.kv-events__alert {
  border: 1px solid var(--bs-secondary) !important;
}

ul.nav.event li {
  padding: 0.25rem 1rem;
  border-left: 1px solid var(--bs-gray-800);
}
ul.nav.event li:first-child {
  border: none;
}

/* aside ---- */
aside section.widget h2.wp-block-heading {
  font-size: 1.5rem;
}
aside section.widget ul.wp-block-latest-posts__list,
aside section.widget ul.wp-block-archives-list,
aside section.widget ul.wp-block-categories-list {
  list-style: none;
  padding-left: 1rem;
  margin-bottom: 1.5rem;
}
aside section.widget ul.wp-block-latest-posts__list li,
aside section.widget ul.wp-block-archives-list li,
aside section.widget ul.wp-block-categories-list li {
  padding: 0;
}
aside section.widget ul.wp-block-latest-posts__list li a,
aside section.widget ul.wp-block-archives-list li a,
aside section.widget ul.wp-block-categories-list li a {
  color: var(--bs-body-color);
  position: relative;
}
aside section.widget ul.wp-block-latest-posts__list li a::before,
aside section.widget ul.wp-block-archives-list li a::before,
aside section.widget ul.wp-block-categories-list li a::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  content: "\f285";
  font-family: "Bootstrap-icons";
  font-size: 0.75rem;
  color: var(--bs-primary) !important;
  margin-left: -1rem;
  text-decoration: none !important;
}
aside section.widget ul.wp-block-latest-posts__list li a:hover,
aside section.widget ul.wp-block-archives-list li a:hover,
aside section.widget ul.wp-block-categories-list li a:hover {
  color: var(--bs-link-color);
}

/* search ---- */
.search-form {
  position: relative;
}
.search-form .search-submit .icon {
  color: var(--bs-light);
}
.search-form .search-submit {
  bottom: 3px;
  position: absolute;
  right: 3px;
  top: 3px;
  padding: 0.25rem 0.5rem !important;
}

.kv-search__img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border: 2px solid var(--bs-dark-border-subtle);
  margin-bottom: 0.5rem;
}
.kv-search__title a {
  font-size: 0.875rem;
  line-height: 1.25rem;
  text-decoration: none;
  color: var(--bs-link-color) !important;
}
.kv-search__title a:hover {
  text-decoration: underline;
}

/* swiper ---- */
:root {
  --swiper-theme-color: var(--bs-primary) !important;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.button-nav {
  position: absolute;
  width: 100px;
  bottom: 40px;
  right: 0;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: "Material Symbols Outlined" !important;
  font-weight: normal !important;
  font-style: normal !important;
  font-size: 24px;
  display: inline-block;
  line-height: 1 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  color: var(--bs-ligth);
}
@media (min-width: 1400px) {
  .swiper-button-prev:after,
  .swiper-button-next:after {
    font-size: 36px;
  }
}

.swiper-button-prev:after {
  content: "\e2ea" !important;
}

.swiper-button-next:after {
  content: "\e5e1" !important;
}

/* WPForms ---- */
div.wpforms-container-full {
  margin: 0 auto !important;
  margin-bottom: 1.25rem;
}

.wpforms-form .wpforms-hidden {
  display: none;
}
.wpforms-form .wpforms-field-container .wpforms-field {
  margin-bottom: 1rem;
  padding: 0;
}
.wpforms-form .wpforms-field-container .wpforms-field .wpforms-field-label.wpforms-label-hide {
  position: absolute;
  top: -99999px;
  left: -99999px;
}
.wpforms-form .wpforms-field-container .wpforms-field .wpforms-required-label {
  color: var(--bs-red);
}
.wpforms-form .wpforms-field-container .wpforms-field legend {
  margin-bottom: 0.5rem;
  color: var(--bs-body-color);
}
.wpforms-form .wpforms-field-container .wpforms-field label {
  margin-bottom: 0.5rem;
  color: var(--bs-body-color);
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email],
.wpforms-form .wpforms-field-container .wpforms-field input[type=text],
.wpforms-form .wpforms-field-container .wpforms-field input[type=number],
.wpforms-form .wpforms-field-container .wpforms-field textarea {
  display: block;
  width: 100% !important;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color) !important;
  background-color: rgba(14, 14, 15, 0.5);
  background-clip: padding-box;
  border: 1px solid var(--bs-dark-border-subtle);
  appearance: none;
  border-radius: 0.085rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email]::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field input[type=text]::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field input[type=number]::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field textarea::placeholder {
  color: var(--bs-tertiary-color);
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email]:focus,
.wpforms-form .wpforms-field-container .wpforms-field input[type=text]:focus,
.wpforms-form .wpforms-field-container .wpforms-field input[type=number]:focus,
.wpforms-form .wpforms-field-container .wpforms-field textarea:focus {
  background-color: var(--bs-tertiary-bg);
  border-color: var(--bs-primary);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
}
.wpforms-form .wpforms-field-container .wpforms-field textarea {
  height: 150px;
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email].wpforms-error,
.wpforms-form .wpforms-field-container .wpforms-field input[type=text].wpforms-error,
.wpforms-form .wpforms-field-container .wpforms-field input[type=number].wpforms-error,
.wpforms-form .wpforms-field-container .wpforms-field textarea.wpforms-error {
  border: 1px solid var(--bs-danger-border-subtle);
  color: var(--bs-danger-text-emphasis) !important;
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email].wpforms-error::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field input[type=text].wpforms-error::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field input[type=number].wpforms-error::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field textarea.wpforms-error::placeholder {
  color: var(--bs-tertiary-color);
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email].wpforms-error:focus,
.wpforms-form .wpforms-field-container .wpforms-field input[type=text].wpforms-error:focus,
.wpforms-form .wpforms-field-container .wpforms-field input[type=number].wpforms-error:focus,
.wpforms-form .wpforms-field-container .wpforms-field textarea.wpforms-error:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email].wpforms-valid,
.wpforms-form .wpforms-field-container .wpforms-field input[type=text].wpforms-valid,
.wpforms-form .wpforms-field-container .wpforms-field input[type=number].wpforms-valid,
.wpforms-form .wpforms-field-container .wpforms-field textarea.wpforms-valid {
  border: 1px solid var(--bs-success-border-subtle);
  color: var(--bs-success-text-emphasis) !important;
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email].wpforms-valid::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field input[type=text].wpforms-valid::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field input[type=number].wpforms-valid::placeholder,
.wpforms-form .wpforms-field-container .wpforms-field textarea.wpforms-valid::placeholder {
  color: var(--bs-tertiary-color);
}
.wpforms-form .wpforms-field-container .wpforms-field input[type=email].wpforms-valid:focus,
.wpforms-form .wpforms-field-container .wpforms-field input[type=text].wpforms-valid:focus,
.wpforms-form .wpforms-field-container .wpforms-field input[type=number].wpforms-valid:focus,
.wpforms-form .wpforms-field-container .wpforms-field textarea.wpforms-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}
.wpforms-form .wpforms-field-container .wpforms-field .wpforms-error {
  color: var(--bs-form-invalid-color);
  margin-top: 0.25rem;
  font-size: 0.875em;
}
.wpforms-form .wpforms-submit-container button[type=submit] {
  --bs-btn-hover-bg: var(--bs-link-hover-color);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.5;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-white) !important;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-primary);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-primary) !important;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.wpforms-form .wpforms-submit-container button[type=submit]:hover {
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-bg);
}

.wpforms-container input.wpforms-field-medium,
.wpforms-container select.wpforms-field-medium,
.wpforms-container .wpforms-field-row.wpforms-field-medium {
  max-width: 100%;
}
.wpforms-container .wpforms-confirmation-container {
  --bs-alert-color: var(--bs-success-text-emphasis);
  --bs-alert-bg: var(--bs-success-bg-subtle);
  --bs-alert-border-color: var(--bs-success-border-subtle);
  --bs-alert-link-color: var(--bs-success-text-emphasis);
  --bs-alert-padding-x: 1rem;
  --bs-alert-padding-y: 1rem;
  --bs-alert-margin-bottom: 1rem;
  --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
  --bs-alert-border-radius: var(--bs-border-radius);
  position: relative;
  padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
  margin-bottom: var(--bs-alert-margin-bottom);
  color: var(--bs-alert-color);
  background-color: var(--bs-alert-bg);
  border: var(--bs-alert-border);
  border-radius: var(--bs-alert-border-radius);
  text-align: center;
}

.info h4 {
  margin-top: 1rem;
}
.info p {
  margin-bottom: 1rem !important;
}
.info p a {
  color: var(--bs-body-color);
}
.info p a::before {
  content: "\e158";
  font-family: "Material Symbols Outlined";
  color: var(--bs-light);
  font-weight: normal;
  font-style: normal;
  font-size: 1.25rem;
  display: inline-block;
  vertical-align: middle;
  width: 1em;
  height: 1em;
  margin-right: 0.25rem;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
}

.wpform-contact h2.info {
  margin-top: 1rem;
}
.wpform-contact p.icon-mail {
  margin-bottom: 1rem !important;
}
.wpform-contact p.icon-mail a {
  color: var(--bs-primary);
}
.wpform-contact p.icon-mail a::before {
  content: "\e158";
  font-family: "Material Symbols Outlined";
  color: var(--bs-light);
  font-weight: normal;
  font-style: normal;
  font-size: 1.25rem;
  display: inline-block;
  vertical-align: middle;
  width: 1em;
  height: 1em;
  margin-right: 0.25rem;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
}

div.wpforms-container-full .wpforms-confirmation-container-full,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
  background: var(--bs-success-bg-subtle);
  border: 1px solid var(--bs-success-border-subtle);
  box-sizing: border-box;
  color: var(--bs-success-text-emphasis) !important;
}
div.wpforms-container-full .wpforms-confirmation-container-full p,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) p {
  color: var(--bs-success-text-emphasis) !important;
}

.wpforms-form .wpforms-field-container .wpforms-field .wpforms-error {
  color: var(--bs-form-invalid-color) !important;
}