/*!
Theme Name: JAMP University
Theme URI: http://underscores.me/
Author: printandweb
Author URI: https://printandweb.net/
Description: A custom WordPress theme using Bootstrap and the Underscores starter theme
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: jampuniversitytheme
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.

JAMP University 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/
*/
/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}
.wp-caption-text {
  text-align: center;
}
/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}
.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}
.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}
.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}
.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}
.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}
.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}
.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}
.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}
.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}
.gallery-caption {
  display: block;
}
/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation, .infinite-scroll.neverending .site-footer {
  display: none;
}
/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}
/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}
/* Do not show the outline on the skip link target. */
#main[tabindex="-1"]:focus {
  outline: 0;
}
/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}
.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}
.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}
/* --------------------------------------

Custom styles

--------------------------------------- */
*:root {
  --color-primary: #294c56;
  --color-secondary: #afd4df;
  --color-secondary-light: #d7e9ef;
  --color-accent: #d25827;
  --color-accent-light: #f5dad0;
  --color-surface-light-1: #f1f1e6;
  --color-surface-light-2: #ececec;
  --color-surface-dark: #000000;
  --heading-font: "Poppins", sans-serif;
  --body-font: "Lora", serif;
}
/* --------------------------------------

Google fonts

--------------------------------------- */
/* poppins-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Poppins";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/poppins-v23-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* poppins-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Poppins";
  font-style: normal;
  font-weight: 800;
  src: url("fonts/poppins-v23-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* poppins-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Poppins";
  font-style: italic;
  font-weight: 800;
  src: url("fonts/poppins-v23-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lora-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lora";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/lora-v36-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lora-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lora";
  font-style: italic;
  font-weight: 400;
  src: url("fonts/lora-v36-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lora-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lora";
  font-style: normal;
  font-weight: 700;
  src: url("fonts/lora-v36-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lora-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lora";
  font-style: italic;
  font-weight: 700;
  src: url("fonts/lora-v36-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* --------------------------------------

Global

--------------------------------------- */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 3rem;
}
body {
  font-family: var(--body-font);
  font-size: 18px;
  line-height: 1.6;
  font-weight: 400;
  color: #333333;
  overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6 {
  font-family: var(--heading-font);
  font-weight: 800;
  color: var(--color-primary);
  line-height: 1.3;
  margin-bottom: 0.7em;
}
h1 {
  font-size: 2.28rem;
}
h2 {
  font-size: 2.03rem;
}
h3 {
  font-size: 1.8rem;
}
h4 {
  font-size: 1.6rem;
}
p, ul, ol {
  margin-bottom: 1.3em;
}
ul li, ol li {
  margin-bottom: 0.5em;
}
section, .welcome-text {
  padding: 6rem 0 6rem;
}
.col-pl-2 {
  padding-left: 2rem;
}
.col-pr-2 {
  padding-right: 2rem;
}
.heading-white h2, .heading-white h3 {
  color: #ffffff;
}
.heading-color-accent h3 {
  color: var(--color-accent);
}
/* ----- Backgrounds ----- */
.color-primary-bg {
  background-color: var(--color-primary);
}
.color-secondary-bg {
  background-color: var(--color-secondary);
}
.color-surface-light-1-bg {
  background-color: var(--color-surface-light-1);
}
.color-surface-light-2-bg {
  background-color: var(--color-surface-light-2);
}
/* ----- Link styling ----- */
a:link, a:visited {
  color: var(--color-accent);
  text-decoration: underline;
}
a:hover, a:active, a:focus {
  color: var(--color-accent);
  text-decoration: none;
  opacity: 0.9;
}
/* ----- Buttons ----- */
.large-btn, .wpcf7-submit, .mepr-submit, .submit input[type=button], .login-page #mepr_loginform input[type="submit"], .login-page #mepr_forgot_password_form input[type="submit"], .page-id-161 #mepr_loginform input[type="submit"] {
  font-family: var(--body-font);
  color: #fff !important;
  font-size: 1.063rem;
  font-weight: 700;
  background-color: var(--color-accent);
  padding: 0.7em 1.4em 0.7em 1.4em;
  text-decoration: none !important;
  word-break: break-word;
  cursor: pointer;
  border: none;
  border-radius: 4px;
  display: inline-block;
  text-transform: uppercase;
  line-height: normal;
}
.large-btn:hover, .wpcf7-submit:hover, .mepr-submit:hover, .submit input[type=button]:hover, .page-id-161 #mepr_loginform input[type="submit"]:hover {
  color: #ffffff;
  background: var(--color-primary);
  text-decoration: none;
}
.login-page #mepr_loginform input[type="submit"]:hover, .login-page #mepr_forgot_password_form input[type="submit"]:hover {
  color: var(--color-accent) !important;
  background: #fff;
  text-decoration: none;
}
.large-btn.color-secondary-btn:hover {
  color: var(--color-primary) !important;
  background: var(--color-secondary);
}
.large-btn.color-primary-btn {
  background-color: var(--color-primary);
}
.large-btn.color-primary-btn:hover {
  background: var(--color-accent);
}
/* --------------------------------------

Navbar

--------------------------------------- */
.navbar {
  padding: 0.8rem 0.8rem;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
}
.navbar .nav-link {
  font-family: var(--body-font);
  font-size: 1.125rem;
  line-height: 1.3;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  margin-left: 0.4em;
  margin-right: 0.4em;
}
.navbar .nav-link:hover {
  color: var(--color-accent);
}
.navbar-nav .nav-link.active {
  color: var(--color-accent);
}
.navbar .nav-button {
  font-family: var(--body-font);
  font-size: 1.1rem;
  color: #fff;
  border: 1px solid #fff;
  padding-left: 0.8em !important;
  padding-right: 0.8em !important;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
  border-radius: 4px;
  display: inline-block;
  line-height: normal;
}
.navbar .nav-button:hover {
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
}
.navbar-nav .nav-button.active {
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
}
.navbar-nav .nav-link.show {
  color: #fff;
}
.navbar li {
  margin-bottom: 0;
}
.dropdown-menu {
  font-size: 1.1rem;
  border-radius: 0;
  width: 250px;
}
.dropdown-menu a {
  color: var(--color-primary);
}
.dropdown-menu a:hover {
  color: var(--color-accent);
}
.dropdown-item {
  white-space: wrap;
}
a.dropdown-item {
  font-family: var(--body-font);
  text-decoration: none;
  border-bottom: 1px solid var(--color-primary);
  line-height: 1.4;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
}
.dropdown-menu li:last-child a.dropdown-item {
  border-bottom: 0px solid var(--color-primary);
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--color-primary);
  background-color: var(--light-gray-color);
}
.offcanvas {
  background-color: #1c1c1c;
}
.offcanvas .btn-close {
  filter: invert(1);
}
/* ----- Navbar toggler icon ----- */
.navbar-toggler {
  color: #fff;
  border: 2px solid #fff;
  opacity: 0.9;
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 1)' stroke-width='4' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
/* --------------------------------------

Homepage

--------------------------------------- */
#heading, .hero-text, .hero-section .sub-heading, .hero-section .large-btn {
  opacity: 0;
}
.hero-section {
  padding: 14rem 0 7rem;
  overflow: hidden;
  position: relative;
  z-index: 0;
  background: radial-gradient(at 96% 10%, #302631 0px, transparent 50%), radial-gradient(at 50% 51%, #31262d 0px, transparent 50%), radial-gradient(at 16% 35%, #312627 0px, transparent 50%), radial-gradient(at 11% 84%, #273126 0px, transparent 50%), radial-gradient(at 33% 12%, #263130 0px, transparent 50%) #000000;
  mix-blend-mode: normal;
}
.hero-section.login-page {
  height: 100vh;
}
/* .hero-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/images/homepage-header-bg.jpg") no-repeat center/cover;
  opacity: 0.1;
  z-index: -1;
} */
.hero-section h1 {
  color: #fff;
  margin-bottom: 0.9em;
}
.background-lights {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: -1;
  pointer-events: none;
}
.light {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  mix-blend-mode: screen;
  opacity: 0.4;
  will-change: transform;
}
.image-cards {
  display: flex;
  align-items: center;
  justify-content: center;
}
.image-card-1 {
  border-radius: 20px;
  border: 2px solid #fff;
  width: 278px;
  height: 400px;
  transform: rotate(-5deg);
  box-shadow: 5px 5px 10px 1px rgba(0, 0, 0, 0.5);
}
.image-card-2 {
  border-radius: 20px;
  border: 2px solid #fff;
  width: 220px;
  height: 300px;
  transform: rotate(5deg);
  margin-left: -35px;
  box-shadow: 5px 5px 10px 1px rgba(0, 0, 0, 0.5);
}
.image-card-3 {
  border-radius: 20px;
  border: 2px solid #fff;
  width: 160px;
  height: 160px;
  transform: rotate(-3deg);
  margin-left: -35px;
  box-shadow: 5px 5px 10px 1px rgba(0, 0, 0, 0.5);
}
.founder-photo {
  margin-top: -1em;
}
.why-jampu-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, auto);
  column-gap: 60px;
  row-gap: 2rem;
}
.why-jampu svg {
  margin-bottom: 0.4rem;
}
.why-jampu h3 {
  margin-bottom: 0.4em;
}
.program-name {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #aeaeae;
  margin-top: 1rem;
  padding-bottom: 1rem;
  text-decoration: none !important;
  color: inherit;
  cursor: pointer;
  transition: color 0.3s;
}
.program-name h4 {
  font-size: 1.25rem;
  margin-bottom: 0.3em;
  transition: color 0.3s;
}
a.program-name p {
  color: #333;
}
.program-name:first-child {
  margin-top: 0;
}
.program-image {
  overflow: hidden;
  display: inline-block;
  border-radius: 20px;
}
.program-image img {
  transition: transform 0.4s ease;
}
.program-image:hover img {
  transform: scale(1.1);
}
.program-name svg {
  transition: transform 0.3s;
}
.program-name:hover h4 {
  color: var(--color-accent);
}
.program-name:hover svg {
  transform: translateX(10px);
}
.programs-list {
  margin-bottom: 3rem;
}
.programs-list:nth-child(even) {
  display: flex;
  flex-direction: column-reverse;
}
.programs-list:nth-child(odd) .program-image {
  margin-top: 3rem;
}
.programs-list:nth-child(even) .program-image {
  margin-top: 6rem;
  margin-bottom: 3rem;
}
.programs-list h3 {
  font-family: var(--body-font);
  font-size: 1.424rem;
  color: #333;
  text-transform: uppercase;
}
/* ----- Testimonials ----- */
.testimonial {
  padding: 1rem;
}
.testimonial p {
  font-size: 1.424rem;
  color: var(--color-primary);
  font-style: italic;
}
blockquote cite {
  color: #333;
  font-style: normal;
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
}
blockquote cite::before {
  content: "\2014";
  margin-right: 0.5em;
}
/* ----- FAQ ----- */
.accordion, .accordion-item {
  background-color: transparent;
}
.accordion-item {
  border-color: #b4b4b4;
}
.accordion-button {
  color: #333;
  font-family: var(--body-font);
  background-color: transparent;
  font-size: 1.35rem;
  font-weight: 700;
  gap: 1rem;
}
.accordion-button:not(.collapsed) {
  color: #333;
  background-color: transparent;
  box-shadow: none;
}
/* ----- Info boxes ----- */
.info-box {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  padding: 2rem;
  color: #fff;
  margin-bottom: 2rem;
  width: 100%;
  min-height: 450px;
}
/* --------------------------------------

Footer

--------------------------------------- */
.footer-content {
  padding: 4rem 0 4rem;
}
.social-links {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin-top: 1.2rem;
  margin-bottom: 1rem;
}
.social-links svg {
  width: 32px;
  height: 32px;
}
/* --------------------------------------

Animation

--------------------------------------- */
.move-up {
  transform: translateY(0);
  opacity: 1;
  transition: all 0.3s ease-out;
}
/* --------------------------------------

Pages

--------------------------------------- */
.page-template-default .hero-section h1 {
  text-align: center;
}
.hilite-text {
  background-color: var(--color-accent-light);
  padding: 0.2em 0.4em;
  border-radius: 6px;
  display: inline-block;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}
.hilite-text.hilite-color-primary {
  background-color: var(--color-primary);
  color: #fff;
}
/* ----- Color boxes ----- */
.color-secondary-light-box {
  padding: 2rem;
  background-color: var(--color-secondary-light);
  border-radius: 20px;
  width: 100%;
}
.color-secondary-box {
  padding: 2rem;
  background-color: var(--color-secondary);
  border-radius: 20px;
  width: 100%;
}
.numbered-box {
  display: flex;
  gap: 1.5rem;
  margin-bottom: 2rem;
}
.number {
  font-family: var(--heading-font);
  font-size: 4.5rem;
  font-weight: 800;
  color: var(--color-secondary);
  line-height: 100%;
}
.starred-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, auto);
  column-gap: 90px;
}
.starred-box {
  display: flex;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
  align-items: flex-start;
}
.starred-box svg {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--color-accent);
  flex-shrink: 0;
}
.starred-box div {
  flex: 1;
}
.starred-box h3 {
  color: var(--color-accent);
  margin-bottom: 0.3rem;
}
.cta-btns {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
  justify-content: center;
}
.training-details h3, .training-details p {
  margin-bottom: 0.2rem;
}
.training-details svg {
  height: 4.375rem;
  width: auto;
  fill: var(--color-primary);
  margin-bottom: 0.8rem;
}
.training-details.stars svg {
  height: 3rem;
  width: auto;
  fill: var(--color-accent);
}
.checked-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, auto);
  column-gap: 90px;
}
.checked-box {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  align-items: flex-start;
}
.checked-box svg {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--color-accent);
  flex-shrink: 0;
}
.checked-box div {
  flex: 1;
}
.checked-box h3 {
  color: var(--color-accent);
  margin-bottom: 0.3rem;
}
.training-components-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, auto);
  column-gap: 5.625rem;
  row-gap: 0.5rem;
}
.training-component {
  display: flex;
  gap: 1rem;
}
.training-component svg {
  width: 2rem;
  height: 2rem;
  fill: var(--color-primary);
  flex-shrink: 0;
}
.training-component p {
  margin-bottom: 0.5rem;
}
.training-component ul li {
  margin-bottom: 0;
}
.treatment-list-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 5.625rem;
  row-gap: 0.5rem;
}
.treatment-list ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.treatment-list li {
  border-bottom: 1px solid #fff;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  position: relative;
}
.treatment-list.jamp-advantages li {
  padding-left: 3.25rem;
  break-inside: avoid; /* Prevent item break across columns */
}
.treatment-list.jamp-advantages li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.1em;
  width: 2rem;
  height: 2rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23d25827' d='M173.9 439.4l-166.4-166.4c-10-10-10-26.2 0-36.2l36.2-36.2c10-10 26.2-10 36.2 0L192 312.7 432.1 72.6c10-10 26.2-10 36.2 0l36.2 36.2c10 10 10 26.2 0 36.2l-294.4 294.4c-10 10-26.2 10-36.2 0z'/%3E%3C/svg%3E") no-repeat center center;
  background-size: contain;
}
.checkmark svg {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--color-accent);
  margin-bottom: 0.3rem;
}
.checkmark h3 {
  font-size: 1.602rem;
  color: var(--color-accent);
}
/* ----- Modal ----- */
.modal-content {
  border-radius: 20px;
  border: none;
}
/* --------------------------------------

Contact forms

--------------------------------------- */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 .wpcf7-textarea, .wpcf7 .wpcf7-tel {
  width: 100%;
  border: 1px solid #CCCCCC;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  padding: 0.4rem;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.wpcf7 select {
  width: 30%;
  border: 1px solid #CCCCCC;
  background-color: transparent;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  padding: 0.4rem;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.wpcf7 .wpcf7-date {
  width: 50%;
  border: 1px solid #CCCCCC;
  background-color: transparent;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  padding: 0.4rem;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.wpcf7 label {
  display: block;
}
.wpcf7-form p {
  margin-bottom: 1rem;
}
span[data-name="select-year"] {
  margin-right: 0.4rem;
}
/* --------------------------------------

Faculty page

--------------------------------------- */
.faculty-bio {
  margin-bottom: 3rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid #b4b4b4;
}
.faculty-photo img {
  border-radius: 20px;
  max-width: 300px;
  width: 100%;
}
.faculty-bio h2 {
  margin-bottom: 0.2em;
}
.faculty-bio h3 {
  font-family: var(--body-font);
}
/* --------------------------------------

Member pages

--------------------------------------- */
.course {
  height: 300px;
  width: 100%;
  border-radius: 20px;
  padding: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-bottom: 2rem;
  position: relative;
  overflow: hidden;
}
.course-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: transform 0.5s ease;
  z-index: 0;
}
.course:hover .course-bg {
  transform: scale(1.1);
}
.course-content {
  position: relative;
  z-index: 1;
  color: white;
  padding: 2rem;
}
.course h2 {
  color: #fff;
  font-size: 1.6rem;
  margin-bottom: 0.4rem;
}
.course p {
  margin-bottom: 0;
}
.course a {
  color: #fff;
  text-decoration: none;
}
.course svg {
  color: #fff;
}
.course-link {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}
/* --------------------------------------

Login page

--------------------------------------- */
.mp_wrapper.mp_login_form, .page-id-121 form#mepr_forgot_password_form, .page-id-121 h3 {
  color: #fff;
}
/* --------------------------------------

Unauthorized page

--------------------------------------- */
.page-id-161 form#mepr_loginform {
  color: #333333;
}
/* --------------------------------------

Publications page

--------------------------------------- */
.literature .entry-snippet {
  margin-bottom: 3em;
}
.literature .entry-info {
  padding-right: 2em;
}
.literature .entry-info h2 {
  font-size: 1.6rem;
}
.literature .entry-info a {
  text-decoration: none;
}
.literature .entry-photo img {
  width: 250px;
  height: auto;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.6));
}
/* --------------------------------------

Sensei LMS

--------------------------------------- */
.sensei-jampuniversitytheme.course {
  padding: 0;
  display: block;
  overflow: inherit;
}
.sensei-jampuniversitytheme .course {
  height: 300px;
  width: 100%;
  border-radius: 0;
  padding: 0;
  display: block;
  justify-content: center;
  align-items: center;
  text-align: left;
  margin-bottom: 2rem;
  position: relative;
  overflow: inherit;
}
.sensei-jampuniversitytheme .course svg {
  color: #333333;
}
/* --------------------------------------

Media queries

--------------------------------------- */
/* `xxl` applies to x-large devices (large desktops, less than 1400px) */
@media (max-width: 1399.98px) {
  .navbar-brand img, img.logo {
    width: 180px;
    height: auto;
  }
  .navbar .nav-link {
    margin-left: 0.3em;
    margin-right: 0.3em;
  }
  .navbar .nav-button {
    margin-top: 0.9rem;
  }
}
/* `xl` applies to large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
  .checked-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 50px;
  }
  .starred-grid {
    column-gap: 50px;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  /* Styles for devices between 992px and 1199.98px */
  .numbered-box {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-direction: column;
  }
}
/*  Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  .vertical-line {
    border-right: 1px solid var(--color-secondary);
  }
  .vertical-line:last-child {
    border-right: 0px solid var(--color-secondary);
  }
}
/* `lg` applies to medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
  h1 {
    font-size: 1.824rem;
  }
  h2 {
    font-size: 1.622rem;
  }
  h3 {
    font-size: 1.441rem;
  }
  h4, .course h2, .literature .entry-info h2 {
    font-size: 1.281rem;
  }
  .starred-grid, .checked-grid {
    grid-template-columns: 1fr;
  }
  .col-pr-2 {
    padding-right: 0;
  }
  .col-pl-2 {
    padding-left: 0;
  }
  .hero-section .image-cards {
    margin-top: 4rem;
  }
  .programs-list:nth-child(even) {
    flex-direction: column;
  }
  .programs-list:nth-child(even) .program-image {
    margin-top: 3rem;
    margin-bottom: 0;
  }
  .program-image img {
    width: 100%;
    height: auto;
  }
  .founder-photo img {
    width: 300px;
    height: auto;
  }
  .navbar .nav-link {
    margin-left: 0;
    margin-right: 0.4rem;
    margin-bottom: 0.7rem;
  }
  .navbar .nav-button {
    margin-top: 0.7rem;
  }
  .training-components-grid {
    grid-template-columns: 1fr;
  }
  .treatment-list-grid {
    grid-template-columns: 1fr;
  }
  .treatment-list h3 {
    text-align: center;
  }
  .literature .entry-info {
    padding-right: 0;
    text-align: center;
  }
}
/* Styles for devices between 768px and 991.98px */
@media (min-width: 768px) and (max-width: 991.98px) {
  .vertical-line:nth-child(odd) {
    border-right: 1px solid var(--color-secondary);
  }
  .vertical-line:nth-child(1), .vertical-line:nth-child(2) {
    border-bottom: 1px solid var(--color-secondary);
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  .vertical-line:nth-child(3), .vertical-line:nth-child(4) {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  .vertical-line:last-child {
    border-right: 0px solid var(--color-secondary);
  }
}
/* `md` applies to small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
  section, .welcome-text {
    padding: 3rem 0 3rem;
  }
  .info-box {
    min-height: 350px;
  }
  .cta-btns {
    display: inline-flex;
    margin: 1rem 2rem 2rem;
    flex-direction: column;
  }
  .why-jampu-grid {
    grid-template-columns: 1fr;
  }
  .vertical-line {
    border-bottom: 1px solid var(--color-secondary);
    padding-top: 1rem;
    text-align: center;
  }
}
/* `sm` applies to x-small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
  .navbar-brand img, img.logo {
    width: 160px;
    height: auto;
  }
  .image-card-1 {
    width: 50%;
    height: 250px;
  }
  .image-card-2 {
    width: 50%;
    height: 165px;
  }
  .image-card-3 {
    display: none;
  }
  .testimonial p {
    font-size: 1.266rem;
  }
  .founder-photo img {
    width: 200px;
    height: auto;
  }
  .hero-section {
    padding: 10rem 0 5rem;
  }
  .why-jampu-grid {
    row-gap: 1rem;
  }
  .numbered-box {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-direction: column;
  }
  .color-secondary-light-box {
    padding: 1.5rem;
  }
  .number {
    font-size: 4rem;
  }
  .starred-box {
    gap: 1rem;
    margin-bottom: 0.5rem;
  }
  .wpcf7 select {
    width: 45%;
  }
  .faculty-photo img {
    max-width: 200px;
  }
  .course {
    height: 260px;
  }
  .literature .entry-photo img {
    height: 250px;
    width: auto;
  }
}