@media only screen and (min-width: 1200px) and (max-width: 1440px) {
  .bg-benefit {
    width: 493px;
  }
}

@media (min-width: 992px) {
  .section-reason .container {
    max-width: 1200px;
    margin: 0px auto;
  }

  .section-project-list .container {
    max-width: 1000px;
  }
}

@media (max-width: 1199px) {
  .bg-benefit {
    width: 417px;
  }

  .section-benefit .row {
    padding-left: 0;
  }

  .benefit-content {
    margin-left: 0;
  }
}

@media (max-width: 991px) {
  .header .container-fluid {
    max-width: 97%;
  }

  .header .btn {
    margin-right: 0;
  }

  .navbar-brand img {
    max-width: 82px;
  }

  .section-hero {
    background-position: center;
  }

  .section-hero,
  .section-reason,
  .section-banner-inquiry,
  .section-bottom-banner {
    background-attachment: initial;
  }

  .reason-text h3 {
    font-size: 30px;
    margin-top: 12px;
  }

  .reason-text,
  .reason-content {
    padding-left: 0;
    margin-left: 0;
  }

  .section-reason {
    padding-bottom: 70px;
  }

  .card-price {
    max-width: 315px;
  }

  .bg-benefit {
    width: 300px;
  }

  .benefit-image {
    width: 280px;
    margin-left: auto;
  }

  .benefit-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }

  .section-benefit {
    min-height: inherit;
    padding: 60px 0px;
  }

  .section-benefit .row {
    padding-top: 70px;
  }

  .section-client {
    padding: 50px 0px;
  }

  .client-content {
    max-width: 80%;
  }

  .client-content p {
    line-height: 1.7;
    font-size: 25px;
  }

  .section-banner-inquiry {
    padding: 130px 0;
  }

  .banner-inquiry-content h2 {
    font-size: 31px;
    line-height: 52px;
  }

  .banner-inquiry-content {
    max-width: 80%;
    margin: 0 auto;
  }

  .trial-image {
    margin-right: 24px;
    margin-left: auto;
  }

  .trial-content {
    margin-left: 0;
  }

  .footer>div {
    padding-left: 0;
  }

  .footer-top {
    padding: 40px 0 30px;
  }

  .footer-logo {
    max-width: 80%;
  }

  .footer-logo-image {
    max-width: 50%;
    margin: 0 auto;
  }

  .footer-vertical-text,
  .footer-link {
    display: none;
  }

  .footer-social {
    text-align: center;
    margin: 36px 0;
  }

  .footer-logo-content p {
    font-size: 15px;
    line-height: 2.2;
    letter-spacing: 0.05em;
    font-weight: 500;
  }

  .footer-block-images {
    min-width: initial;
    gap: 8px;
    justify-content: center;
  }

  .footer-block-image {
    max-width: 95px;
  }

  .footer-copyright a {
    line-height: 1.4;
    letter-spacing: 0.18em;
    font-family: var(--bs-font-monospacer);
  }

  .back-top-button {
    display: block;
  }

  .project-banner {
    height: 400px;
  }

  .project-banner-image img {
    height: 365px;
  }

  .project-banner-content {
    margin-left: 0;
    margin-bottom: 80px;
    max-width: 300px;
  }

  .project-banner-content h1 {
    font-size: 29px;
    margin-bottom: 0;
  }

  .project-banner-content h2 {
    font-size: 20px;
  }

  .section-project-list h3 {
    font-size: 23px;
    margin-left: 18%;
  }

  .project-list ul {
    max-width: 170px;
    margin-left: auto;
  }

  .card-project {
    max-width: 585px;
  }

  .section-bottom-banner {
    padding: 150px 0;
  }

  .section-bottom-banner h4 {
    font-size: 29px;
    margin-bottom: 30px;
  }

  .process-banner {
    height: 400px;
  }

  .process-content h1 {
    font-size: 25px;
  }

  .process-content h2 {
    font-size: 19px;
  }

  .section-process {
    padding-top: 80px;
  }

  .section-process h3 {
    width: 87%;
    margin: 0px auto 40px;
  }

  .process-list-image,
  .row-process:nth-child(3) .process-list-image {
    height: 370px;
    width: 270px;
    margin: 0 auto;
  }

  .process-list-info {
    max-width: 72%;
  }

  .row-process:nth-child(3) .process-list-content .process-list-info {
    margin-left: 70px;
  }

  .process-list-info h4 {
    font-size: 17px;
  }

  .process-list-info p {
    line-height: 22px;
    font-size: 12px;
  }

  .section-faq h3,
  .faq-list {
    max-width: 89%;
  }

  .section-faq h3 {
    margin-bottom: 60px;
  }

  .faq-list-item {
    margin-bottom: 40px;
    width: 45%;
  }

  .faq-list-item-full {
    width: 100%;
  }

  .contact-content {
    margin-left: 0;
  }

  .contact-form,
  .contact-form-thankyou {
    max-width: 100%;
  }

  .contact-content p {
    padding-left: 0;
    padding-right: 24px;
  }
}

@media (max-width: 767px) {
  .header {
    height: 53px;
    background-color: var(--bs-primary);
    padding: 9px 0 9px 8px;
  }

  .header+div {
    margin-top: 53px;
  }

  .hero-content {
    margin-top: 0;
  }

  .hero-content h1 {
    font-size: 25px;
  }

  .hero-content h6::after {
    margin: 25px auto;
  }

  .vertical-divider {
    display: none;
  }

  .section-hero p {
    margin: 20px 60px 0px;
  }

  .section-about-photographer {
    padding: 50px 0px 130px;
  }

  .about-photographer-content {
    width: 80%;
    margin: 0 auto;
  }

  .about-photographer-content h2 {
    font-family: var(--bs-font-monospace);
    text-transform: uppercase;
    font-size: 34px;
    font-style: normal;
    margin: 20px 0px;
  }

  .about-photographer-image {
    width: 80%;
    margin: 80px auto -225px;
    position: relative;
    z-index: 1;
  }

  .reason-text,
  .reason-content {
    padding-left: 0;
    max-width: 80%;
    margin: 0 auto;
    text-align: center;
  }

  .reason-text h3 {
    font-size: 27px;
    margin-top: 36px;
    margin-bottom: 32px;
  }

  .reason-content {
    text-align: left;
  }

  .section-price {
    padding: 75px 0 0;
  }

  .section-price .container {
    max-width: 78%;
  }

  .section-price h3 {
    font-size: 27px;
    line-height: 1.7;
  }

  .card-price {
    max-width: 100%;
  }

  .card-price-divider {
    height: 1px;
    width: 100%;
    margin: 10px auto 40px;
  }

  .bg-benefit {
    width: 263px;
    height: 500px;
    top: 58px;
  }

  .bg-benefit img {
    height: 100%;
    object-position: -180px center;
  }

  .benefit-image {
    display: block;
    height: 360px;
    width: 264px;
    margin-bottom: 90px;
    margin-left: 52px;
  }

  .benefit-content {
    max-width: 80%;
    margin: 0 auto;
  }

  .benefit-content h4 {
    font-size: 23px;
    margin-left: 0;
    margin-top: 24px;
  }

  .benefit-content-image {
    margin-right: 24px;
  }

  .section-banner-inquiry {
    padding: 100px 0;
  }

  .section-trial {
    padding: 115px 0px 50px;
  }

  .trial-image,
  .trial-content {
    max-width: 80%;
    margin: 0 auto;
  }

  .trial-content h4 {
    font-size: 27px;
    line-height: 1.5;
    margin-top: 34px;
  }

  .trial-image {
    margin: 0 auto;
  }

  .project-banner-image {
    display: none;
  }

  .project-banner {
    height: 350px;
  }

  .project-banner-content {
    margin-bottom: 40px;
  }

  .section-project-banner .container {
    max-width: 85%;
    margin: 0 auto;
    bottom: 0;
    top: auto;
  }

  .project-banner-content h1 {
    font-size: 31px;
  }

  .project-banner-content h2 {
    font-size: 23px;
    line-height: 33px;
  }

  .section-project-list {
    padding-top: 30px;
  }

  .section-project-list .container {
    border-bottom: 0;
  }

  .section-project-list h3 {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    max-width: 80%;
  }

  .project-list {
    margin-left: auto;
    margin-right: auto;
    flex-direction: column;
    max-width: 80%;
  }

  .project-list ul {
    margin-left: 14px;
    max-width: 100%;
    margin-bottom: 0;
    margin-top: 0;
  }

  .project-list ul+ul {
    right: 0;
  }

  .card-project {
    margin-bottom: 35px;
  }

  .section-bottom-banner h4 {
    font-size: 24px;
    line-height: normal;
  }

  .process-banner {
    height: 350px;
  }

  .process-content h1 {
    font-size: 31px;
    margin-bottom: 4px;
  }

  .process-content h2 {
    font-size: 23px;
    line-height: 33px;
  }

  .section-process {
    padding: 40px 0;
  }

  .process-list-image,
  .row-process:nth-child(3) .process-list-image {
    height: 375px;
    width: 280px;
  }

  .process-list-info {
    max-width: 70%;
    margin: auto;
  }

  .process-list-info h4 {
    font-size: 20px;
    margin-top: 40px;
  }

  .faq-list-item {
    margin-bottom: 30px;
    width: 100%;
  }

  .section-faq h3,
  .faq-list {
    max-width: 80%;
  }

  .faq-list-item h4 {
    margin-bottom: 8px;
  }

  .contact-content {
    padding: 30px 21px 40px;
  }

  .contact-content h3 {
    font-size: 26px;
  }

  .contact-content p {
    padding-right: 0;
  }

  .contact-social {
    padding-left: 0;
    text-align: center;
  }

  .contact-form,
  .contact-form-thankyou {
    top: 0;
    left: 0;
    padding: 30px;
    max-width: 97%;
    margin: 0 auto;
  }
}