@media (max-width: 575px) {
   /* HEADER */
   header {
      padding: 50px 0;
   }

   .header_logo h1 {
      font-size: 1.4rem;
   }

   .header_desc {
      font-size: 0.8rem;
   }

   .header_phone {
      font-size: 0.7rem;
      margin-bottom: 8px;
   }

   .header_hours {
      font-size: 0.7rem;
   }

   header .header_hours span {
      display: none;
   }

   .header-benefits {
      margin-top: 50px;
      margin-left: 20px;
   }

   .header-benefits li {
      font-size: 0.8rem;
      font-weight: normal;
   }

   .header-call-to-action {
      padding: 0;
      margin-top: 50px;
   }

   .header-call-to-action span {
      font-size: 14px;
   }

   .benefits__item {
      margin: 10px 0;
   }

   header .action-btn {
      width: 200px;
      height: 40px;
   }

   header .action-btn {
      font-size: 16px;
      display: flex;
      justify-content: center;
      align-items: center;
   }

   .header-nav {
      padding: 0;
      margin: 0;
   }

   .header-nav-right {
      padding-left: 0px;
   }

   .header-nav-right:after {
      content: "";
      display: block;
      position: absolute;
      height: 50px;
      width: 2px;
      background-color: red;
      right: 0;
      top: 0px;
   }
   /* HEADER END*/

   /* DEFINITION */

   .definition {
      padding: 50px 0;
   }

   .definition-container {
      grid-template-columns: 1fr;
      grid-gap: 25px;
      padding: 25px;
   }

   .definition-desc h2 {
      font-size: 1rem;
      text-align: center;
   }

   .definition-desc p {
      font-size: 0.7rem;
   }

   .definition-img__bg:before,
   .definition-img span:after,
   .definition-img__bg::after,
   .definition-img span:before {
      display: none;
   }
   /* DESCRIPTION END*/

   /* AUDIENCE */
   .audience-container {
      padding: 50px 25px;
   }

   .audience-container h2 {
      margin-bottom: 50px;
   }

   .audience-info {
      grid-template-columns: 1fr;
   }

   .audience-info p {
      margin: 0;
   }

   .audience-container h2 {
      font-size: 1rem;
   }

   .audience-info-left p,
   .audience-info-right p {
      font-size: 0.7rem;
   }

   .audience-info img:nth-child(2),
   .audience-info img {
      max-width: 150px;
      max-height: 200px;
      margin: 0 15px;
   }

   /* AUDIENCE END */

   /* OFFERS */
   .offer-container {
      padding: 50px 25px;
   }

   .offers-container {
      grid-template-columns: 1fr;
      margin-top: 50px;
   }

   .offer__item {
      width: 250px;
      height: 200px;
   }

   .offer__item img {
      width: 50px;
   }

   .offer__item p {
      width: 150px;
      margin-top: 45px;
      font-size: 0.8rem;
   }

   .offers-container span {
      font-size: 0.9rem;
   }

   .offer__item img.cross {
      width: 30px;
   }

   .offer-container h2 {
      font-size: 1rem;
   }
   /* OFFERS END */

   /* SCENARIO */
   .scenario {
      padding: 50px 25px;
   }

   .scenario h2 {
      margin-bottom: 50px;
      font-size: 1rem;
   }

   .scenario-container {
      grid-template-columns: 1fr;
      grid-gap: 25px;
   }

   .scenario__item span {
      font-size: 1rem;
      margin-bottom: 25px;
   }

   .scenario__item img {
      width: 40px;
   }

   .scenario__item p {
      font-size: 0.7rem;
   }
   /* SCENARIO END */

   /* PRICE */

   .price {
      padding: 50px 25px;
   }

   .price h2 span {
      font-size: 1rem;
   }

   .price-container {
      padding: 50px 25px;
      grid-template-columns: 1fr;
   }

   .price__item {
      width: 200px;
      height: 225px;
   }

   .price__item .action-btn {
      font-size: 1rem;
      width: 200px;
      height: 40px;
      display: flex;
      justify-content: center;
      align-items: center;
   }

   .price__item a {
      bottom: -20px;
   }

   .price__item p {
      font-size: 1.4rem;
   }

   .price__item-info span {
      font-size: 2rem;
   }

   .price-time {
      right: -10px;
      font-size: 1.2rem !important;
   }

   .price__item-info:after {
      top: -30px;
      left: 50%;
   }

   /* PRICE END */

   /* GALLERY */

   .gallery {
      padding: 50px 25px;
   }

   .gallery h2 {
      margin-bottom: 25px;
      font-size: 1rem;
   }

   .swiper-container {
      height: 250px;
   }

   /* GALLERY END */

   /* MAP */

   .map {
      padding: 50px 0;
   }

   .map h2 {
      font-size: 1rem;
      margin-bottom: 50px;
   }

   /* MAP  END*/

   /* CONTACT */

   .contact {
      padding: 50px 25px;
   }

   .contact h2 {
      font-size: 1rem;
      margin-bottom: 50px;
   }

   .contact-container {
      grid-template-columns: 1fr;
      justify-items: center;
   }

   .contact-form {
      width: 100%;
   }

   .contact-form input {
      font-size: 0.8rem;
   }

   .form-info__item {
      margin-bottom: 20px;
   }

   .form-info__item p {
      font-size: 0.8rem;
   }

   .input-container {
      flex-direction: column;
      width: 100%;
   }

   .input-container input:first-child {
      margin-right: 0;
   }

   .input-container input:last-child {
      margin-left: 0;
   }

   .input-container input {
      width: 90%;
   }

   /* CONTACT END */

   /* QUESTIONS */

   .questions {
      padding: 50px 25px;
   }

   .questions h2 {
      font-size: 1rem;
      margin-bottom: 50px;
   }

   .questions-container {
      grid-template-columns: 1fr;
      grid-template-rows: 1fr;
      grid-gap: 0;
      font-size: 0.7rem;
   }

   .question-container-1 {
      margin-right: 0;
   }

   .question-container-2 {
      margin-left: 0;
      margin-top: 0;
   }

   .img-container img {
      display: none;
   }

   /* QUESTIONS END */

   /* FOOTER */

   footer h2 {
      font-size: 1rem;
   }

   .footer-container .info p {
      font-size: 0.7rem;
   }

   /* FOOTER END */

   /* RESERVATION */

   .calendar {
      margin-top: 20px;
      margin-bottom: 75px;
   }

   .date-container {
      align-items: center;
      flex-direction: column;
      margin-bottom: 100px;
   }

   .date-container ul{
      margin-bottom: 0;
   }

   .date__session, .date__hour{
      padding: 10 40px;
   }

   .date-container h3 {
      text-align: center;
      font-size: 1.2rem
   }

   .session__item{
      height: 35px;
   }

   .date__hour ul li{
      height: 35px;
      width: 35px;
      margin: 0;
   }

   .date__hour ul{
      padding: 0 20px;
   }

   .userdata{
      flex-direction: column;
      margin-bottom: 50px;
   }

   .date-container h3:after{
      display: none;
   }
   
   .userdata input, .userdata input[name="phoneNumber"]{
      padding: 0;
      width: 100%;
      margin-right: 0;
   }

   .userdata button{
      top: 90%;
   }

   /* RESERVATION END */
}

@media (min-width: 576px) and (max-width: 765px) {
   .container {
      max-width: 700px;
   }

   /* HEADER*/

   body {
      font-size: 16px;
   }

   .header_logo h1 {
      font-size: 1.8rem;
   }

   .header-nav {
      padding: 0;
      margin: 0;
   }

   .header-nav-right {
      padding-left: 0px;
   }

   .header-call-to-action {
      padding: 0;
      margin-top: 75px;
   }

   .header-call-to-action span:first-child {
      font-size: 1rem;
   }
   /* HEADER END*/

   /* DEFINITION */
   .definition {
      padding: 50px 0;
   }

   .definition-container {
      grid-template-columns: 1fr;
      grid-gap: 25px;
      padding: 50px;
   }

   .definition-desc h2 {
      font-size: 1.2rem;
      text-align: center;
   }

   .definition-desc p {
      font-size: 1rem;
   }

   .definition-img__bg:before,
   .definition-img span:after,
   .definition-img__bg::after,
   .definition-img span:before {
      display: none;
   }
   /* DEFINITION END */

   /* AUDIENCE */
   .audience-container {
      padding: 75px 50px;
   }

   .audience-container h2 {
      margin-bottom: 50px;
   }

   .audience-info {
      grid-template-columns: 1fr;
   }
   .audience-container h2 {
      font-size: 1.2rem;
   }

   .audience-info-left p,
   .audience-info-right p {
      font-size: 1rem;
   }

   .audience-info img:nth-child(2),
   .audience-info img {
      max-width: 200px;
      max-height: 250px;
      margin: 0 15px;
   }
   /* AUDIENCE END */

   /* OFFERS */
   .offer-container {
      padding: 50px 25px;
   }

   .offers-container {
      grid-template-columns: 1fr;
      margin-top: 50px;
   }

   .offer__item {
      width: 300px;
      height: 250px;
   }

   .offer__item img {
      width: 60px;
   }

   .offer__item p {
      width: 200px;
      margin-top: 45px;
      font-size: 1rem;
   }

   .offers-container span {
      font-size: 1.2rem;
   }

   .offer__item img.cross {
      width: 40px;
   }

   .offer-container h2 {
      font-size: 1.2rem;
   }
   /* OFFERS END */

   /* SCENARIO */
   .scenario {
      padding: 50px 25px;
   }

   .scenario h2 {
      margin-bottom: 50px;
      font-size: 1.2rem;
   }

   .scenario-container {
      grid-template-columns: 1fr;
      grid-gap: 25px;
   }

   .scenario__item span {
      font-size: 1rem;
      margin-bottom: 25px;
   }

   .scenario__item img {
      width: 50px;
   }

   .scenario__item p {
      font-size: 1rem;
   }
   /* SCENARIO END */

   /* PRICE */

   .price {
      padding: 50px 25px;
   }

   .price h2 span {
      font-size: 1.2rem;
   }

   .price-container {
      padding: 50px 25px;
      grid-template-columns: 1fr;
   }

   .price__item {
      width: 300px;
      height: 325px;
   }

   .price__item .action-btn {
      font-size: 24px;
      width: 300px;
      height: 72px;
   }

   .price__item a {
      bottom: -35px;
   }

   .price__item p {
      font-size: 2rem;
   }

   .price__item-info span {
      font-size: 2rem;
   }

   .price-time {
      right: -15px;
      font-size: 2rem !important;
   }

   .price__item-info:after {
      top: -35px;
      left: 50%;
   }

   /* PRICE END */

   /* GALLERY */

   .gallery {
      padding: 50px 0px;
   }

   .gallery h2 {
      font-size: 1.2rem;
      margin-bottom: 50px;
   }

   /* GALLERY END */

   /* MAP */

   .map {
      padding: 50px 0;
   }

   .map h2 {
      font-size: 1.4rem;
      margin-bottom: 50px;
   }
   /* MAP END */

   /* CONTACT */

   .contact {
      padding: 50px 25px;
   }

   .contact h2 {
      font-size: 1.2rem;
      margin-bottom: 50px;
   }

   .contact-container {
      grid-template-columns: 1fr;
      justify-items: center;
   }

   .contact-form {
      width: 100%;
   }

   .contact-form input {
      font-size: 1rem;
   }

   .form-info__item {
      margin-bottom: 20px;
   }

   .form-info__item p {
      font-size: 1rem;
   }

   .input-container {
      flex-direction: column;
      width: 100%;
   }

   .input-container input:first-child {
      margin-right: 0;
   }

   .input-container input:last-child {
      margin-left: 0;
   }

   .input-container input {
      width: 90%;
   }

   /* CONTACT END */

   /* QUESTIONS */

   .questions {
      padding: 50px 25px;
   }

   .questions h2 {
      font-size: 1.2rem;
      margin-bottom: 50px;
   }

   .questions-container {
      grid-template-columns: 1fr;
      grid-template-rows: 1fr;
      grid-gap: 0;
      font-size: 1rem;
   }

   .question-container-1 {
      margin-right: 0;
   }

   .question-container-2 {
      margin-left: 0;
      margin-top: 0;
   }

   .img-container img {
      display: none;
   }

   /* QUESTIONS END */

   /* FOOTER */

   footer h2 {
      font-size: 1.2rem;
   }

   .footer-container .info p {
      font-size: 1rem;
   }

   /* FOOTER END */

    /* RESERVATION */

    .calendar {
      margin-top: 20px;
      margin-bottom: 75px;
   }

   .date-container {
      align-items: center;
      flex-direction: column;
      margin-bottom: 100px;
   }

   .date-container ul{
      margin-bottom: 0;
   }

   .date__session, .date__hour{
      padding: 10 40px;
   }

   .date-container h3 {
      text-align: center;
      font-size: 1.2rem
   }

   .session__item{
      height: 40px;
   }

   .date__hour ul li{
      height: 40px;
      width: 40px;
      margin: 0;
      margin-right: 5px;
   }

   .date__hour ul{
      padding: 0 20px;
   }

   .userdata{
      flex-direction: column;
      margin-bottom: 50px;
   }

   .date-container h3:after{
      display: none;
   }
   
   .userdata input, .userdata input[name="phoneNumber"]{
      padding: 0;
      width: 100%;
      margin-right: 0;
   }

   .userdata button{
      top: 90%;
   }

   /* RESERVATION END */
}

@media (min-width: 766px) and (max-width: 991px) {
   /* HEADER END*/

   .header-call-to-action span:first-child {
      font-size: 16px;
   }

   .header-call-to-action span {
      font-size: 22px;
   }

   /* HEADER END*/

   /* AUDIENCE */
   .audience-container {
      padding: 75px 50px;
   }

   .audience-container h2 {
      margin-bottom: 50px;
   }

   .audience-info {
      grid-template-columns: 1fr;
   }
   .audience-container h2 {
      font-size: 1.4rem;
   }

   .audience-info-left p,
   .audience-info-right p {
      font-size: 1.2rem;
   }

   .audience-info img:nth-child(2),
   .audience-info img {
      max-width: 250px;
      max-height: 300px;
      margin: 0 15px;
   }
   /* AUDIENCE END */

   /* DEFINITOION */

   .definition {
      padding: 75px 50px;
   }

   .definition-img__bg:before {
      height: 50px;
      width: 2px;
      left: -20px;
      bottom: 80px;
   }

   .definition-img span:after {
      height: 2px;
      width: 50px;
      left: -30px;
      bottom: 90px;
   }

   .definition-img__bg::after {
      height: 50px;
      width: 2px;
      right: -20px;
      top: 80px;
   }

   .definition-img span:before {
      height: 2px;
      width: 50px;
      right: -30px;
      top: 90px;
   }

   /* DEFINITOION END */

   /* OFFERS */
   .offer-container {
      padding: 75px 0px;
   }

   .offers-container {
      grid-template-columns: 1fr 1fr;
      margin-top: 50px;
   }

   .offer__item {
      width: 325px;
      height: 275px;
   }

   .offer__item img {
      width: 60px;
   }

   .offer__item p {
      width: 200px;
      margin-top: 45px;
      font-size: 1.2rem;
   }

   .offers-container span {
      font-size: 1.4rem;
   }

   .offer__item img.cross {
      width: 50px;
   }

   .offer-container h2 {
      font-size: 1.4rem;
   }
   /* OFFERS END */

   /* SCENARIO */
   .scenario {
      padding: 50px 25px;
   }

   .scenario h2 {
      margin-bottom: 50px;
      font-size: 1.4rem;
   }

   .scenario-container {
      grid-template-columns: 1fr 1fr;
      grid-gap: 50px;
   }

   .scenario__item span {
      font-size: 1.4rem;
      margin-bottom: 25px;
   }

   .scenario__item img {
      width: 60px;
   }

   .scenario__item p {
      font-size: 1.2rem;
   }
   /* SCENARIO END */

   /* PRICE */

   .price {
      padding: 50px 25px;
   }

   .price h2 span {
      font-size: 1.4rem;
   }

   .price-container {
      padding: 75px 25px;
      grid-template-columns: 1fr 1fr;
      justify-content: center;
   }

   .price__item {
      width: 300px;
      height: 325px;
   }

   .price__item .action-btn {
      font-size: 24px;
      width: 300px;
      height: 72px;
   }

   .price__item a {
      bottom: -35px;
   }

   .price__item p {
      font-size: 2rem;
   }

   .price__item-info span {
      font-size: 2rem;
   }

   .price-time {
      right: -15px;
      font-size: 2rem !important;
   }

   .price__item-info:after {
      top: -35px;
      left: 50%;
   }

   /* PRICE END */

   /* GALLERY */

   .gallery {
      padding: 75px 0px;
   }

   .gallery h2 {
      font-size: 1.4rem;
      margin-bottom: 50px;
   }

   /* GALLERY END */

   /* MAP */

   .map {
      padding: 50px 0;
   }

   .map h2 {
      font-size: 1.6rem;
      margin-bottom: 50px;
   }
   /* MAP END */

   /* CONTACT  */

   .contact {
      padding: 75px 50px;
   }

   .contact h2 {
      font-size: 1.4rem;
      margin-bottom: 50px;
   }

   .contact-container {
      grid-gap: 0;
   }

   .form-info {
      margin-left: 25px;
   }

   .form-info__item {
      margin-bottom: 25px;
   }

   .form-info__item p {
      font-size: 1rem;
   }

   /* CONTACT END */

   /* QUESTIONS */

   .questions {
      padding: 75px 50px;
   }

   .questions h2 {
      font-size: 1.4rem;
      margin-bottom: 50px;
   }

   .questions-container {
      grid-template-columns: 1fr;
      grid-template-rows: 1fr;
      grid-gap: 0;
      font-size: 1rem;
   }

   .question-container-1 {
      margin-right: 0;
   }

   .question-container-2 {
      margin-left: 0;
      margin-top: 0;
   }

   .img-container img {
      display: none;
   }

   /* QUESTIONS END */

    /* RESERVATION */

    .calendar {
      margin-top: 20px;
      margin-bottom: 75px;
   }

   .date-container {
      align-items: center;
      flex-direction: column;
      margin-bottom: 100px;
   }

   .date-container ul{
      margin-bottom: 0;
   }

   .date__session, .date__hour{
      padding: 10 40px;
   }

   .date-container h3 {
      text-align: center;
      font-size: 1.2rem
   }

   .session__item{
      height: 40px;
   }

   .date__hour ul li{
      height: 40px;
      width: 40px;
      margin: 0;
      margin-right: 5px;
   }

   .date__hour ul{
      padding: 0 20px;
   }

   .userdata{
      flex-direction: column;
      margin-bottom: 50px;
   }

   .date-container h3:after{
      display: none;
   }
   
   .userdata input, .userdata input[name="phoneNumber"]{
      padding: 0;
      width: 100%;
      margin-right: 0;
   }

   .userdata button{
      top: 90%;
   }

   /* RESERVATION END */
}

@media (min-width: 992px) and (max-width: 1199px) {
   .header-nav-right {
      text-align: right;
   }

   .header-call-to-action span:first-child {
      font-size: 20px;
   }

   .definition {
      padding: 150px 50px;
   }

   .definition-img__bg:before {
      height: 50px;
      width: 2px;
      left: 0px;
      bottom: 0px;
   }

   .definition-img span:after {
      height: 2px;
      width: 50px;
      left: -10px;
      bottom: 10px;
   }

   .definition-img__bg::after {
      height: 50px;
      width: 2px;
      right: 0px;
      top: 0px;
   }

   .definition-img span:before {
      height: 2px;
      width: 50px;
      right: -10px;
      top: 10px;
   }

   /* AUDIENCE */

   .audience-info img:nth-child(2) {
      max-width: 275px;
      max-height: 325px;
   }
   .audience-info img {
      max-width: 275px;
      max-height: 375px;
   }

   .audience-info p {
      margin: 0 15px;
   }
   /* AUDIENCE END */

   /* OFFERS */
   .offers-container {
      margin-top: 100px;
   }
   /* OFFERS END */

   /* PRICE */

   .price {
      padding: 50px 25px;
   }

   .price h2 span {
      font-size: 1.6rem;
   }

   .price-container {
      padding: 75px 50px;
      grid-template-columns: 1fr 1fr 1fr;
      grid-gap: 50px;
      justify-content: center;
   }

   .price__item {
      width: 275px;
      height: 325px;
   }

   .price__item .action-btn {
      font-size: 24px;
      width: 275px;
      height: 72px;
   }

   .price__item a {
      bottom: -35px;
   }

   .price__item p {
      font-size: 2rem;
   }

   .price__item-info span {
      font-size: 2rem;
   }

   .price-time {
      right: -15px;
      font-size: 2rem !important;
      bottom: -40px;
   }

   .price__item-info:after {
      top: -35px;
      left: 50%;
   }

   /* PRICE END */
}
