*{
  box-sizing: border-box;
  padding:0;
  margin:0;
}

body {
    color:#2b2b2b;
}

html {
  scroll-behavior: smooth;
}

    .skip-link {
      position: absolute;
      top: -200%; /* Move off-screen */
      left: 0;
      padding: 10px 15px;
      background-color: #fff; /* Ensure sufficient contrast */
      color: #000;
      text-decoration: none;
      z-index: 1000; /* Ensure it's on top */
    }

    .skip-link:focus {
      top: 0; /* Move back on-screen when focused */
    }
    
.container-fluid {
    padding: 15px 30px;
}

a.nav-link:hover {
    color:#150F2B;
}

header {
    position: relative;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 90px;
   -moz-box-sizing: border-box;
    box-sizing: border-box;   
    z-index: 2;
    border-bottom: 1px solid #101C2A;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out;
}

.navbar {
  min-height:80px;
  justify-content: space-between;
  align-items: center;
  padding:0;
  display: flex;
}

.nav-menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

li{
  list-style: none;
}

.nav-item {
    padding: 0 25px;
}

.nav-link {
  transition: 0.5s ease;
  font-size: 1.25rem;
}

.hamburger{
  display: none;
  cursor: pointer;
}

.bar {
  display: block;
  width:28px;
  height:4px;
  margin: 5px auto;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background-color:#101C2A;
}

.jcmlogo {
  width: 215px;
}

.btn {
    background-color: #150F2B;
    stroke: none;
    color:#fff;
}

.btn:hover {
    background-color:#322466;
    color: #fff;
}

h1 {
  font-weight: 500;
  font-size: 3.5rem;
}

h2 {
  font-size: 2.35rem;
}

h3 {
  font-size: 2rem;
}

/*h1, h2 {
    color: #101C2A;
} */

h1, .title {
    font-family: 'PT Serif', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

h2, .tag {
    font-family: 'Mukta', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-weight: 300;
}

h3 {
    font-family: 'Mukta', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-weight: 300;
}

.introp {
  margin:0;
  padding:.75em;
}

.jcm-info-container {
  background-color: #1F3651;
  color:#fff;
  padding:20px;
  border-radius: 8px;
}

.footer-link {
  color: #fff;
  text-decoration: underline;
}

.pt-serif-regular {
  font-family: "PT Serif", serif;
  font-weight: 400;
  font-style: normal;
}

.pt-serif-bold {
  font-family: "PT Serif", serif;
  font-weight: 700;
  font-style: normal;
}

.pt-serif-regular-italic {
  font-family: "PT Serif", serif;
  font-weight: 400;
  font-style: italic;
}

.pt-serif-bold-italic {
  font-family: "PT Serif", serif;
  font-weight: 700;
  font-style: italic;
}

.mukta-extralight {
  font-family: "Mukta", sans-serif;
  font-weight: 200;
  font-style: normal;
}

.mukta-light {
  font-family: "Mukta", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.mukta-regular {
  font-family: "Mukta", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.mukta-medium {
  font-family: "Mukta", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.mukta-semibold {
  font-family: "Mukta", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.mukta-bold {
  font-family: "Mukta", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.mukta-extrabold {
  font-family: "Mukta", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.first-row {
    margin: 60px auto;
    text-align: center;
}

footer {
  background-color: #101C2A;
  padding: 45px;
  width: 100%;
}

footer p {
  color: #fff;
}

.title {
  font-size: 1.325rem;
}

.tag {
  font-size: 1rem;
}

.panel-heading {
  font-size: 1.55rem;
}

.price-row {
  margin-bottom: 40px;
}

.price-container {
  text-align: center;
  border: 1px solid #000;
  border-radius: 12px;
  padding:20px;
  
}

.type-container {
  text-align: center;
  padding:20px 20px 0 20px;
  
}

.photo-price {
  font-weight: 600;
  font-size: 2.2rem;
  margin-bottom:0;
}


@media only screen and (max-width: 768px){
   h1 {
    font-size: 2.75rem;
  }
  
  h2 {
    font-size: 2.5rem;
  }

  h3 {
    font-size: 2.25rem;
  }

.panel-heading {
  font-size: 1.65rem;
}
  .hamburger {
    display: block;
  }

  .hamburger.active .bar:nth-child(2){
    opacity:0;
  }
.hamburger.active .bar:nth-child(1){
    transform: translateY(10px) rotate(45deg);
  }
  .hamburger.active .bar:nth-child(3){
    transform: translateY(-10px) rotate(-45deg);
  }
.nav-menu {
  position:fixed;
  left:-100%;
  top: 7px;
  gap: 0;
  flex-direction: column;
  width:100%;
  text-align: center;
  transition: 0.2s;
  margin-top:80px;
  
}

.nav-item {
  margin:12px 0;
}

.nav-menu.active {
  left: 0;
  margin-top:80px;
  background-color: #dddddd;
  z-index:1;
}

h1, h2 {
    text-align: center;
  }

.price-row {
  margin-bottom: 0;
}
.price-row div {
  margin-bottom:20px;
}  

}
