          :root {
              --primary-color: #D4AF37;
              --secondary-color: #2A2B2E;
          }

          section.main {
              overflow-x: auto;
          }

          * {
              letter-spacing: 0.07em;
              margin: 0;
              padding: 0;
              box-sizing: border-box;
          }

          img {
              max-width: 100%;
          }

          /* 100 - Thin */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-Thin.ttf') format('truetype');
              font-weight: 100;
              font-style: normal;
          }

          /* 200 - Extra Light */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-ExtraLight.ttf') format('truetype');
              font-weight: 200;
              font-style: normal;
          }

          /* 300 - Light */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-Light.ttf') format('truetype');
              font-weight: 300;
              font-style: normal;
          }

          /* 400 - Regular */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-Regular.ttf') format('truetype');
              font-weight: 400;
              font-style: normal;
          }

          /* 500 - Medium */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-Medium.ttf') format('truetype');
              font-weight: 500;
              font-style: normal;
          }

          /* 600 - SemiBold */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-SemiBold.ttf') format('truetype');
              font-weight: 600;
              font-style: normal;
          }

          /* 700 - Bold */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-Bold.ttf') format('truetype');
              font-weight: 700;
              font-style: normal;
          }

          /* 800 - ExtraBold */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-ExtraBold.ttf') format('truetype');
              font-weight: 800;
              font-style: normal;
          }

          /* 900 - Black */

          @font-face {
              font-family: 'Montserrat';
              src: url('../font/Montserrat-Black.ttf') format('truetype');
              font-weight: 900;
              font-style: normal;
          }

          * {
              font-family: 'Montserrat', sans-serif;
          }

          .text-justify {
              text-align: justify;
          }

          .theme-container {
              max-width: 1700px;
              width: 100%;
              margin: 0 auto;
              padding: 0 30px;
          }

          .theme-btn {
              background: var(--primary-color);
              padding: 0 60px;
              border-radius: 30px;
              font-size: 18px;
              line-height: 48px;
              color: #ffffff;
              font-weight: 400;
              cursor: pointer;
              transition: .3s linear all;
              overflow: hidden;
              text-align: center;
          }

          .theme-btn:hover {
              transform: scale(0.9);
          }

          /* Default desktop font sizes */

          .theme-heading-banner {
              font-size: 48px;
              line-height: 48px;
              text-transform: uppercase;
              font-weight: 600;
          }

          .theme-big-heading {
              font-size: 45px;
          }

          .theme-heading {
              line-height: 48px;
              text-transform: uppercase;
              font-weight: 600;
          }

          .theme-tag-line {
              font-size: 20px;
              line-height: 48px;
              text-transform: uppercase;
              font-weight: 600;
          }

          .theme-paragraph {
              font-size: 16px;
              line-height: 30px;
              font-weight: 500;
          }

          /* page animation start */
          .page-animation {
              opacity: 0;
              transform: translate(0, 0);
              animation-fill-mode: forwards;
              animation-duration: 1s;
              animation-timing-function: ease-in-out;
          }

          /* ✅ Fade In */
          .fade-in {
              animation-name: fadeIn;
          }

          @keyframes fadeIn {
              from {
                  opacity: 0;
              }

              to {
                  opacity: 1;
              }
          }

          /* ✅ Fade Left (slide in from left) */
          .fade-left {
              animation-name: fadeLeft;
          }

          @keyframes fadeLeft {
              from {
                  opacity: 0;
                  transform: translateX(-50px);
              }

              to {
                  opacity: 1;
                  transform: translateX(0);
              }
          }

          /* ✅ Fade Right (slide in from right) */
          .fade-right {
              animation-name: fadeRight;
          }

          @keyframes fadeRight {
              from {
                  opacity: 0;
                  transform: translateX(50px);
              }

              to {
                  opacity: 1;
                  transform: translateX(0);
              }
          }

          /* ✅ Zoom In */
          .zoom-in {
              animation-name: zoomIn;
          }

          @keyframes zoomIn {
              from {
                  opacity: 0;
                  transform: scale(0.8);
              }

              to {
                  opacity: 1;
                  transform: scale(1);
              }
          }

          /* Optional: visible trigger */
          .page-animation.visible {
              opacity: 1;
          }

          /* page animation end */
          /* Breakpoint ≤ 1650px */

          @media (max-width: 1650px) {
              .theme-container {
                  max-width: 1600px;
              }

              .theme-heading-banner {
                  font-size: 46px;
              }

              .theme-big-heading {
                  font-size: 40px;
              }

              .theme-heading {
                  font-size: 22px;
              }

              .theme-tag-line {
                  font-size: 18px;
              }

              .theme-paragraph,
              .theme-btn {
                  font-size: 15px;
              }
          }

          /* Breakpoint ≤ 1500px */

          @media (max-width: 1500px) {
              .theme-container {
                  max-width: 1450px;
              }

              .theme-heading-banner {
                  font-size: 44px;
              }

              .theme-big-heading {
                  font-size: 35px;
              }

              .theme-heading {
                  font-size: 20px;
                  line-height: 32px;

              }

              .theme-tag-line {
                  font-size: 14px;
              }

              .theme-paragraph,
              .theme-btn {
                  font-size: 14px;
              }
          }

          /* Breakpoint ≤ 1400px */

          @media (max-width: 1400px) {
              .theme-container {
                  padding: 0 30px;
              }

              .theme-heading-banner {
                  font-size: 42px;
              }

              .theme-big-heading {
                  font-size: 30px;
              }
          }

          /* Breakpoint ≤ 768px (tablet/mobile) */

          @media (max-width: 768px) {
              .theme-container {
                  padding: 0 15px;
              }

              .theme-heading-banner {
                  font-size: 36px;
                  line-height: 1.2;
              }


              .theme-heading {
                  line-height: 1.3;
              }

              .theme-tag-line {
                  line-height: 1.3;
              }

              .theme-paragraph,
              .theme-btn {
                  font-size: 14px;
                  line-height: 1.5;
              }
          }

          /* Breakpoint ≤ 500px (small mobile) */

          @media (max-width: 500px) {
              .theme-container {
                  padding: 0 10px;
              }

              .theme-heading-banner {
                  font-size: 28px;
                  line-height: 1.2;
              }


              .theme-heading {
                  font-size: 26px;
                  line-height: 1.3;
                  margin-bottom: 15px;
              }

              .theme-tag-line {
                  line-height: 1.3;
              }

              .theme-paragraph,
              .theme-btn {
                  font-size: 14px;
                  line-height: 1.5;
              }
          }

          .call-to-action {
              text-decoration: none;
              color: #111;
              padding: 0.5rem 0.75rem;
              border-radius: 6px;
              display: inline-block;
          }

          .dropdown {
              position: relative;
          }

          /* hide submenu by default */

          .submenu {
              display: none;
              position: absolute;
              top: 100%;
              left: 0;
              min-width: 180px;
              margin-top: 0.5rem;
              background: #fff;
              box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
              border-radius: 8px;
              z-index: 10;
          }

          /* show submenu when parent has focus (keyboard or click) */

          /*.dropdown:focus-within .submenu {
              display: block;
          }*/

          .submenu.active {
              display: block !important;
          }

          /* submenu link style */

          .submenu a {
              display: block;
              padding: 0.5rem 0.9rem;
              text-decoration: none;
              color: #222;
              white-space: nowrap;
          }

          .submenu a:hover {
              background: #d4a537;
              color: white;
          }

          /* =========================
   MAIN BANNER
========================= */

          .main-banner {
              position: relative;
              width: 100%;
              height: 640px;
              overflow: hidden;
              border-radius: 0 0 150px 150px;
              background: #000;
          }

          /* =========================
   VIEWPORT (KEY PART)
========================= */

          .banner-viewport {
              display: flex;
              width: 100%;
              height: 100%;
              overflow-x: auto;
              scroll-snap-type: x mandatory;
              scroll-behavior: smooth;
          }

          /* hide scrollbar */
          .banner-viewport::-webkit-scrollbar {
              display: none;
          }

          .banner-viewport {
              scrollbar-width: none;
          }

          /* =========================
   SLIDES
========================= */

          .banner-slide {
              flex: 0 0 100%;
              height: 100%;
              position: relative;
              background-size: cover;
              background-position: center;
              scroll-snap-align: start;
          }

          /* =========================
   OVERLAY
========================= */

          .banner-overlay {
              position: absolute;
              inset: 0;
              background: rgba(0, 0, 0, .25);
          }

          /* =========================
   CONTENT
========================= */

          .banner-content-inner {
              position: absolute;
              bottom: 70px;
              left: 0;
              width: 100%;
          }

          .banner-text-inner {
              color: #fff;
              font-size: 40px;
              font-weight: 600;
              width: 70%;
              text-transform: uppercase;
          }

          /* =========================
   ARROWS
========================= */

          .banner-arrow {
              position: absolute;
              top: 50%;
              transform: translateY(-50%);
              width: 48px;
              height: 48px;
              background: rgba(0, 0, 0, .6);
              color: #fff;
              border-radius: 50%;
              text-align: center;
              line-height: 48px;
              font-size: 26px;
              text-decoration: none;
              z-index: 10;
          }

          .banner-arrow.prev {
              left: 80px;
          }

          .banner-arrow.next {
              right: 80px;
          }

          /* =========================
   DOTS
========================= */

          .banner-dots {
              position: absolute;
              bottom: 30px;
              left: 50%;
              transform: translateX(-50%);
              display: flex;
              gap: 10px;
              z-index: 10;
          }

          .banner-dots a {
              width: 12px;
              height: 12px;
              border-radius: 50%;
              background: rgba(255, 255, 255, .4);
              display: block;
              transition: background .3s;
          }


          footer.inner-footer {
              background: url(../image/footer-bg.jpg);
              background-position: center;
              background-size: cover;
              border-radius: 120px 120px 0 0;
              max-width: none;
              position: relative;
              padding: 0;
              /* padding-top: 75px; */
          }

          .footer-overlay {
              display:none;
              border-radius: 120px 120px 0 0;
              position: absolute;
              width: 100%;
              height: 100%;
              left: 0;
              top: 0;
              background-color: #000000cc;
              z-index: 0;
          }

          .footer-section1 {
              display: flex;
              justify-content: space-between;
              flex-wrap: wrap;
              align-items: center;
              position: relative;
              z-index: 2;
              padding: 25px 10px 20px;
              border-bottom: 1px solid #a7a7a7;
          }

          .footer-section2 {
              display: flex;
              justify-content: space-between;
              flex-wrap: wrap;
              align-items: start;
              position: relative;
              z-index: 2;
              padding: 10px 0;
              border-bottom: 1px solid #a7a7a7;
          }

          .footer-section3 {
              display: flex;
              justify-content: space-between;
              flex-wrap: wrap;
              align-items: center;
              position: relative;
              z-index: 2;
              padding: 25px 0;
              color: #fff;
              padding-bottom: 50px !important;
          }

          .footer-section3 a {
              color: #fff;
          }

          .footer-column ul li a {
              text-decoration: none;
              color: #fff;
              padding-bottom: 10px;
              font-size: 18px;
              line-height: 2;
              font-weight: 500;
          }
          .footer-column ul li label {
              text-decoration: none;
              color: #fff;
              padding-bottom: 10px;
              font-size: 18px;
              line-height: 2;
              font-weight: 500;
              cursor:pointer;
          }

          .footer-column ul {
              list-style: none;
          }

          .footer-column ul li {
              margin-bottom: 10px;
          }

          @media(max-width:1200px) {
              .footer-section1 {
                  padding: 35px 0 20px;
                  border-bottom: 1px solid #a7a7a7;
              }

              footer.inner-footer {
                  border-radius: 50px 50px 0 0;
              }

              .footer-overlay {
                  border-radius: 50px 50px 0 0;
              }

              .footer-section2 {
                  flex-direction: column;
              }

              .footer-section2,
              .footer-section3 {
                  padding: 15px 0;
                  gap: 15px;
              }

              .footer-column ul li a {
                  font-size: 14px;
                  padding-bottom: 5px;
              }

              .footer-column ul li {
                  margin-bottom: 0;
              }
          }