@import url('https://fonts.googleapis.com/css2?family=Kanit:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  font-family: "Kanit", serif;
  scroll-behavior: smooth;
}

body {
  background-color: #f7f9fb;
}

.navbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  padding: 1rem;
  z-index: 1000;
  background-color: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(5px);
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
  transition: all 0.3s ease;
  
  .nav-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;

    .nav-logo {
      font-size: 1.5rem;
      font-weight: 700;
      color: #c1841a;
      text-decoration: none;
      transition: color 0.3s ease;
    }

    .nav-links {
      display: flex;
      gap: 2rem;

      .nav-link {
        color: #331100;
        text-decoration: none;
        position: relative;
        transition: color 0.3s ease;
      }
    }

    .nav-link::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 2px;
      bottom: -4px;
      left: 0;
      background-color: #c1841a;
      transform: scaleX(0);
      transition: transform 0.3s ease;
    }

    .nav-link:hover::after {
      transform: scaleX(1);
    }
  }
}

.container {

  .hero {
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-image: url("./images/RPK05100.jpg");
    overflow: hidden;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    .hero-content {
      max-width: 800px;
      opacity: 100;
      transform: translateY(20px);
      animation: fadeUp 1s ease forwards;
      
      h1 {
        font-size: 2.5rem;
        margin-bottom: 1rem;
        color: hsl(43, 76%, 38%);
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
      }
      
      p {
        font-size: 1.25rem;
        margin-bottom: 2rem;
      }
    }
  }

  .hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0);
  }

  .about {
    width: 1200px;
    margin: 0 auto;

    .about-container {
      margin: 50px;

      .about-info {
        text-align: center;
        margin-bottom: 20px;

        .section-title {
          color: hsl(43, 76%, 38%);
        }
      }
    }
  }

  .services {
    margin-bottom: 5rem;
    .section-title {
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 20px;
      color: hsl(43, 76%, 38%);
    }

    .services-grid {
      width: 1200px;
      margin: 0 auto;
      display: flex;
      gap: 50px;

      .services-left {
        display: flex;
        justify-content: center;
        align-items: center;

        img {
          max-width: 550px;
          height: auto;
          display: block;
        }
      }

      .services-right {

        h1 {
          padding-bottom: 10px;
        }
      }
    }
  }

  .gallery {
    

    .section-title {
      text-align: center;
      margin-bottom: 20px;
    }

    .gallery-info {
      width: 1300px;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      justify-content: center;
      gap: 10px;
      margin: 0 auto;

      .gallery-item {
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden;

        img {
          width: 100%;
          height: 100%;
          object-fit: contain;
        }
      }
    }
  }

  .contact {
    margin: 20px;

    .section-title {
      text-align: center;
    }
  }

  .contact-form {
    max-width: 600px;
    margin: 0 auto;
    padding: 2rem;
  }
   
  .form-group {
    margin-bottom: 1.5rem;
  }
   
  input, textarea {
    width: 100%;
    padding: 0.8rem;
    border: 1px solid hsl(43, 38%, 90%);
    border-radius: 4px;
    font-size: 1rem;
    transition: border-color 0.3s ease;
  }
   
  input:focus, textarea:focus {
    outline: none;
    border-color: hsl(43, 76%, 38%);
  }
   
  button {
    background: hsl(43, 76%, 38%);
    color: white;
    padding: 0.8rem 2rem;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.3s ease;
  }
}