/**************************\
  Basic Modal Styles
\**************************/

.modal {
    font-family: -apple-system,BlinkMacSystemFont,avenir next,avenir,helvetica neue,helvetica,ubuntu,roboto,noto,segoe ui,arial,sans-serif;
  }
  
  .modal__overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 999999999;
  }
  
  .modal__container {
    background-color: #fff;
    max-width: 680px;
    max-height: 85vh;
    border-radius: 24px;
    overflow-y: auto;
    box-sizing: border-box;
  }
  
  .modal__header {
	background-color: #fff;
	display: flex;
    justify-content: space-between;
    position: sticky;
    top: 0;
	padding: 16px
  }

.modal__header__container {
  	display: flex;
	flex-direction: column;
    align-items: start;}

.modal__close {
  display: flex;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0.5rem;
  justify-content: center;
  align-items: center;
  border-radius: 0.5rem;
  border: 1px solid #EAECF0;
  background: #FBFAF9;
  color: #717680;
  cursor: pointer;
}


.modal__footer {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.5rem;
	padding: 1rem;
    position: sticky;
    bottom: 0;
	background: #fff;
    }

@media (max-width: 640px) {
  .modal__footer {
    grid-template-columns: 1fr;
  }
}
  
  .modal__title {
	color: rgb(56, 66, 80);
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 0px;
  }

.modal__description {
	font-size: .875rem;
	line-height: 1.25rem;
	color: var(--catersmart-text-color);
	margin-bottom: 0px;}
  
  
  .modal__header .modal__close:before { content: "\2715"; }
  
  .modal__content {
    margin-top: 2rem;
    margin-bottom: 2rem;
    line-height: 1.5;
    color: var(--catersmart-text-color);
  }
  
.modal__btn:not(.modal__btn-primary) {
  border-radius: 0.5rem;
  border: 1px solid #EAECF0;
  background: #FFF;
  box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
  color: #384250;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.25rem;
  padding: 0.75rem 1rem;
  width: 100%;
  cursor: pointer;
}

.modal__btn:not(.modal__btn-primary):hover {
	background: #f9f9f9;
}
  

  
.modal__btn-primary, .modal__btn-primary:focus {
    background: var(--catersmart-brand-color);
    color: #fff;
	  border-radius: 0.5rem;
border: 1px solid color-mix(in srgb, var(--catersmart-brand-color) 90%, black);  
	box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.25rem;
  padding: 0.75rem 1rem;
  width: 100%;
  cursor: pointer;
}

.modal__btn-primary:hover {
	background: color-mix(in srgb, var(--catersmart-brand-color) 90%, black);
}
	


/* Package Item Styles */

.course--item {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.course--content__container h2 {
	margin-bottom: 0px;
	color: var(--catersmart-emphasis-color);
	font-size: 1.25rem;
	font-style: normal;
	font-weight: 600;
	line-height: 1.875rem;
}

.package--content__items {
	padding: 1rem;}

.package--item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.25rem;
  width: 100%;
  padding: 1rem;
  border-radius: 1.5rem;
  border: 1px solid var(--catersmart-border-color);
  background: #FFF;
  box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
}

.package--image__container {
	display: flex;
}

.package--image__container img {
  width: 15.27775rem;
  height: 11rem;
  border-radius: 1rem;
  border: 1px solid var(--catersmart-border-color);
}

.package--content__container {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: start;
  max-width: 100%;
}

.package--content__container h3 {
  margin-bottom: 0px;
  color: var(--catersmart-emphasis-color);
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.75rem;
}

.package--content__container p {
  margin-bottom: 0px;
  color: var(--catersmart-text-color);
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.25rem;
}

@media (max-width: 640px) {
  .package--item {
    grid-template-columns: 1fr !important;
	gap: 0.5rem !important;
	padding: 0.75rem 0.75rem 1rem 0.75rem!important;
  }

  .package--image__container img {
    width: 100% !important;
    height: auto;
  }
}
  
  
  /**************************\
    Demo Animation Style
  \**************************/
  @keyframes mmfadeIn {
      from { opacity: 0; }
        to { opacity: 1; }
  }
  
  @keyframes mmfadeOut {
      from { opacity: 1; }
        to { opacity: 0; }
  }
  
  @keyframes mmslideIn {
    from { transform: translateY(15%); }
      to { transform: translateY(0); }
  }
  
  @keyframes mmslideOut {
      from { transform: translateY(0); }
      to { transform: translateY(-10%); }
  }
  
  .micromodal-slide {
    display: none;
  }
  
  .micromodal-slide.is-open {
    display: block;
  }
  
  .micromodal-slide[aria-hidden="false"] .modal__overlay {
    animation: mmfadeIn .3s cubic-bezier(0.0, 0.0, 0.2, 1);
  }
  
  .micromodal-slide[aria-hidden="false"] .modal__container {
    animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
  }
  
  .micromodal-slide[aria-hidden="true"] .modal__overlay {
    animation: mmfadeOut .3s cubic-bezier(0.0, 0.0, 0.2, 1);
  }
  
  .micromodal-slide[aria-hidden="true"] .modal__container {
    animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1);
  }
  
  .micromodal-slide .modal__container,
  .micromodal-slide .modal__overlay {
    will-change: transform;
  }