@tailwind base;
@tailwind components;
@tailwind utilities;

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

@font-face {
  font-family: Gilroy-Bold;
  src: url(/assets/font/Gilroy-Bold.ttf);
}

h1,
h2 {
  font-family: Gilroy-Bold;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Urbanist", sans-serif;
  font-weight: 400;
  color: #000;
  background-color: #fff;
  overflow-x: hidden;
}

p {
  font-size: 1.3vw;
}

/* - ======================== Loading overlay ============================*/
.loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

/* Loader animation */
.loader {
  border: 8px solid #f3f3f3;
  border-top: 8px solid #3498db;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* Existing Navbar Styles */
nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2vw 5vw;
}

nav .links {
  display: flex;
  align-items: center;
  gap: 2vw;
  font-size: 1.3vw;
  color: gray;
}

nav img {
  width: 10vw;
}

nav .left {
  display: flex;
  align-items: center;
  gap: 10vw;
}

button a {
  background-color: #b41f25;
  color: #fff;
  padding: 1vw 3vw;
  border-radius: 3vw;
  font-weight: 600;
  width: fit-content;
  display: block;
  transition: all 0.2s ease-in-out;
  position: relative;
  z-index: 999;
}

button a:hover {
  transform: scale(1.1);
}

.close {
  display: none;
}

/* Menu Icon */
.menu-icon {
  display: none;
  flex-direction: column;
  cursor: pointer;
}

.menu-icon span {
  width: 25px;
  height: 3px;
  background-color: #000;
  margin: 4px 0;
  transition: 0.4s;
}

/* Sidebar Styles */
.sidebar {
  height: 100%;
  width: 0;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
  overflow-x: hidden;
  transition: 0.5s;
  padding-top: 60px;
  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
  z-index: 9999;
}

.sidebar a {
  padding: 15px 25px;
  text-decoration: none;
  font-size: 18px;
  color: #333;
  display: block;
  transition: 0.3s;
}

.sidebar a:hover {
  background-color: #f1f1f1;
}

.header {
  padding: 5vw;
}

.header .left {
  width: 50%;
  flex-direction: column;
  display: flex;
  gap: 2vw;
}

.header h1 {
  font-size: 4vw;
  line-height: 4vw;
}

.tank {
  position: relative;
  margin-top: -30vw;
}

.tank img {
  width: 100%;
}

.tank .tank_1 {
  width: 60vw;
  margin-left: auto;
  position: relative;
  z-index: 99;
}

.tank .road {
  margin-top: -10vw;
}

/* about  */
.about {
  padding: 10vw;
}

.about h1 {
  font-size: 5vw;
  line-height: 4vw;
}

.about p {
  font-size: 1.5vw;
  margin-top: 2vw;
}

.banner {
  padding: 0 5vw;
  width: 100%;
  object-fit: contain;
}

.Services {
  background-color: #1d1d1b;
  padding: 20vw 5vw 5vw 5vw;
  margin-top: -10vw;
  color: #fff;
  text-align: center;
}

.Services h2 {
  font-size: 5vw;
  line-height: 4vw;
}

.Services p {
  font-size: 1.5vw;
  margin-top: 2vw;
}

.Services .box {
  padding: 2vw 3vw;
  border-right: 1px solid #ffffff;
}
.Services .box_2 {
  padding: 2vw 3vw;
  border-right: none;
}

.Services .box img {
  width: 8vw;
  margin: auto;
}

.Services .box h3 {
  font-size: 1.5vw;
  font-weight: 700;
  margin-top: -2vw;
}

.Services .para {
  padding-top: 5vw;
  opacity: 0.9;
}

.WhyChoose {
  padding: 5vw 10vw;
  position: relative;
}

.WhyChoose h1 {
  font-size: 5vw;
  line-height: 4vw;
  text-align: center;
}

.WhyChoose .box {
  padding: 3vw;
  border-radius: 2vw;
  border: 2px solid #cbcbcb;
  margin-top: 5vw;
  position: sticky;
  top: 0;
  background-color: #fff;
  overflow: hidden;
}

.WhyChoose h2 {
  font-size: 2vw;
  line-height: 2vw;
}

.WhyChoose p {
  font-size: 1.4vw;
  margin-top: 1vw;
  opacity: 0.8;
}

.join {
  padding: 5vw 10vw;
  background-color: #1d1d1b;
  color: #fff;
}

.join h2 {
  font-size: 4vw;
  line-height: 4.5vw;
}

.join p {
  font-size: 1.4vw;
  opacity: 0.8;
  margin-bottom: 2vw;
}

.footer {
  background-color: #e6e6e6;
  padding: 2vw;
  text-align: center;
}
.emails {
  background: #b41f25;
  padding: 1vw;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3vw;
  color: #fff;
  font-weight: 600;
}

.cursor,
.cursor2,
.cursor3 {
  position: fixed;
  border-radius: 50%;
  transform: translateX(-50%) translateY(-50%);
  pointer-events: none;
  left: -100px;
  top: 50%;
  z-index: 4;
}
.cursor {
  background-color: #b41f25;
  height: 0;
  width: 0;
}
.cursor2,
.cursor3 {
  height: 50px;
  width: 50px;
  transition: all 200ms ease-out;
  background-position: center;
  background-size: 0 0;
}
.cursor2.hover,
.cursor3.hover {
  height: 220px;
  width: 320px;
  border: none;
  border-radius: 8px;
}
.cursor2 {
  border: 2px solid #b41f25;
  box-shadow: 0 0 30px #b41f25;
}
.cursor2.hover {
  background-size: cover;
  box-shadow: 0 0 0 #b41f25;
}
body.img-1-wrap .cursor2,
.cursor3 {
  background-image: url("https://assets.codepen.io/1462889/sl1.jpg");
}
body.img-2-wrap .cursor2,
.cursor3 {
  background-image: url("https://assets.codepen.io/1462889/sl2.jpg");
}
body.img-3-wrap .cursor2,
.cursor3 {
  background-image: url("https://assets.codepen.io/1462889/sl3.jpg");
}
body.img-4-wrap .cursor2,
.cursor3 {
  background-image: url("https://assets.codepen.io/1462889/sl4.jpg");
}
body.logo-wrap .cursor2,
.cursor3 {
  background-image: none;
  height: 36px;
  width: 36px;
}
body.logo-wrap .cursor2.hover,
body.logo-wrap .cursor3.hover {
  height: 36px;
  width: 36px;
  transform: scale(2) translateX(-25%) translateY(-25%);
  border-radius: 50%;
  background-color: var(--yellow);
}

.hover-target {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color: var(--purple);
  transition: color 250ms ease;
}
.hover-target:before {
  position: absolute;
  content: "";
  height: 0;
  border-radius: 1px;
  bottom: 0;
  left: -10px;
  width: calc(100% + 20px);
  border-radius: 2px;
  display: block;
  background-color: var(--yellow);
  transition: height 250ms ease;
  mix-blend-mode: difference;
  opacity: 0.6;
}
.hover-target:hover:before {
  height: 100%;
}
.hover-target:hover {
  z-index: 5;
  color: var(--yellow);
}
