@import url("https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap");

:root {
  --netural-1: #ffffff;
  --netural-2: #0c0e17;
  --primary-1: #ff1919;
  --netural-3: #fafafa;
  --boder-color: ##0c0e1752;

  --font-h1: clamp(3.75rem, calc(3.5rem + 2vw), 7.5rem);
  --font-h2: clamp(1.75rem, calc(1.5rem + 2%), 2.5rem);
  --font-body-l: clamp(1rem, calc(0.875rem + 2%), 1.5rem);
  --font-body-s: clamp(0.75rem, calc(0.625rem + 1%), 1rem);

  /* Breakpoints  font size*/
  --font-small: 14px;
  --font-base: 16px;
  --font-large: 18px;

  /* Spacing */
  --space-unit: 0.25rem;
  --s-1: max(
    calc(var(--space-unit) * 3),
    calc(0.375% + var(--space-unit) * 1.5)
  ); /* ~14px */
  --s-2: max(
    calc(var(--space-unit) * 4),
    calc(0.5% + var(--space-unit) * 2)
  ); /* ~18px */
  --s-3: max(
    calc(var(--space-unit) * 9),
    calc(1.125% + var(--space-unit) * 4.5)
  ); /* ~40px */
  --s-4: max(
    calc(var(--space-unit) * 10),
    calc(1.25% + var(--space-unit) * 5)
  ); /* ~45px */
  --s-5: max(
    calc(var(--space-unit) * 11),
    calc(1.375% + var(--space-unit) * 5.5)
  ); /* ~50px */

  --container-max-width: clamp(90%, 65rem, 88.625rem); /* ~1418px fluid */
  --container-gutter: clamp(1rem, 2vw, 2rem); /* ~32px fluid */
}

body {
  overflow-x: hidden;
  font-family: "Figtree", sans-serif;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* ========= Flex Utilities =========== */
/* Base Flex Utility */
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
/* Flex Direction */
.flex-row {
  flex-direction: row;
}
.flex-row-reverse {
  flex-direction: row-reverse;
}
.flex-col {
  flex-direction: column;
}
.flex-col-reverse {
  flex-direction: column-reverse;
}
/* Flex Wrap */
.flex-wrap {
  flex-wrap: wrap;
}
.flex-nowrap {
  flex-wrap: nowrap;
}
.flex-wrap-reverse {
  flex-wrap: wrap-reverse;
}
/* Justify Content */
.justify-start {
  justify-content: flex-start;
}
.justify-center {
  justify-content: center;
}
.justify-end {
  justify-content: flex-end;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}
.justify-evenly {
  justify-content: space-evenly;
}

/* Align Items */
.items-start {
  align-items: flex-start;
}
.items-center {
  align-items: center;
}
.items-end {
  align-items: flex-end;
}
.items-baseline {
  align-items: baseline;
}
.items-stretch {
  align-items: stretch;
}

/* Gap Utilities */
.gap-1 {
  gap: var(--s-1);
}
.gap-2 {
  gap: var(--s-2);
}
.gap-3 {
  gap: var(--s-3);
}
.gap-4 {
  gap: var(--s-4);
}
.gap-5 {
  gap: var(--s-5);
}

/* ==== Padding Utilities class ======== */
/* All sides padding */
.p-1 {
  padding: var(--s-1);
}
.p-2 {
  padding: var(--s-2);
}
.p-3 {
  padding: var(--s-3);
}
.p-4 {
  padding: var(--s-4);
}
.p-5 {
  padding: var(--s-5);
}

/* Padding X-axis (left & right) */
.px-1 {
  padding-left: var(--s-1);
  padding-right: var(--s-1);
}
.px-2 {
  padding-left: var(--s-2);
  padding-right: var(--s-2);
}
.px-3 {
  padding-left: var(--s-3);
  padding-right: var(--s-3);
}
.px-4 {
  padding-left: var(--s-4);
  padding-right: var(--s-4);
}
.px-5 {
  padding-left: var(--s-5);
  padding-right: var(--s-5);
}

/* Padding Y-axis (top & bottom) */
.py-1 {
  padding-top: var(--s-1);
  padding-bottom: var(--s-1);
}
.py-2 {
  padding-top: var(--s-2);
  padding-bottom: var(--s-2);
}
.py-3 {
  padding-top: var(--s-3);
  padding-bottom: var(--s-3);
}
.py-4 {
  padding-top: var(--s-4);
  padding-bottom: var(--s-4);
}
.py-5 {
  padding-top: var(--s-5);
  padding-bottom: var(--s-5);
}

/* Individual sides */
.pt-1 {
  padding-top: var(--s-1);
}
.pb-1 {
  padding-bottom: var(--s-1);
}
.pl-1 {
  padding-left: var(--s-1);
}
.pr-1 {
  padding-right: var(--s-1);
}

.pt-2 {
  padding-top: var(--s-2);
}
.pb-2 {
  padding-bottom: var(--s-2);
}
.pl-2 {
  padding-left: var(--s-2);
}
.pr-2 {
  padding-right: var(--s-2);
}

.pt-3 {
  padding-top: var(--s-3);
}
.pb-3 {
  padding-bottom: var(--s-3);
}
.pl-3 {
  padding-left: var(--s-3);
}
.pr-3 {
  padding-right: var(--s-3);
}

.pt-4 {
  padding-top: var(--s-4);
}
.pb-4 {
  padding-bottom: var(--s-4);
}
.pl-4 {
  padding-left: var(--s-4);
}
.pr-4 {
  padding-right: var(--s-4);
}

.pt-5 {
  padding-top: var(--s-5);
}
.pb-5 {
  padding-bottom: var(--s-5);
}
.pl-5 {
  padding-left: var(--s-5);
}
.pr-5 {
  padding-right: var(--s-5);
}

/*==== Margin Utilities class ===========  */

/* All sides margin */
.m-1 {
  margin: var(--s-1);
}
.m-2 {
  margin: var(--s-2);
}
.m-3 {
  margin: var(--s-3);
}
.m-4 {
  margin: var(--s-4);
}
.m-5 {
  margin: var(--s-5);
}

/* Margin X-axis (left & right) */
.mx-1 {
  margin-left: var(--s-1);
  margin-right: var(--s-1);
}
.mx-2 {
  margin-left: var(--s-2);
  margin-right: var(--s-2);
}
.mx-3 {
  margin-left: var(--s-3);
  margin-right: var(--s-3);
}
.mx-4 {
  margin-left: var(--s-4);
  margin-right: var(--s-4);
}
.mx-5 {
  margin-left: var(--s-5);
  margin-right: var(--s-5);
}

/* Margin Y-axis (top & bottom) */
.my-1 {
  margin-top: var(--s-1);
  margin-bottom: var(--s-1);
}
.my-2 {
  margin-top: var(--s-2);
  margin-bottom: var(--s-2);
}
.my-3 {
  margin-top: var(--s-3);
  margin-bottom: var(--s-3);
}
.my-4 {
  margin-top: var(--s-4);
  margin-bottom: var(--s-4);
}
.my-5 {
  margin-top: var(--s-5);
  margin-bottom: var(--s-5);
}

/* Individual sides */
.mt-1 {
  margin-top: var(--s-1);
}
.mb-1 {
  margin-bottom: var(--s-1);
}
.ml-1 {
  margin-left: var(--s-1);
}
.mr-1 {
  margin-right: var(--s-1);
}

.mt-2 {
  margin-top: var(--s-2);
}
.mb-2 {
  margin-bottom: var(--s-2);
}
.ml-2 {
  margin-left: var(--s-2);
}
.mr-2 {
  margin-right: var(--s-2);
}

.mt-3 {
  margin-top: var(--s-3);
}
.mb-3 {
  margin-bottom: var(--s-3);
}
.ml-3 {
  margin-left: var(--s-3);
}
.mr-3 {
  margin-right: var(--s-3);
}

.mt-4 {
  margin-top: var(--s-4);
}
.mb-4 {
  margin-bottom: var(--s-4);
}
.ml-4 {
  margin-left: var(--s-4);
}
.mr-4 {
  margin-right: var(--s-4);
}

.mt-5 {
  margin-top: var(--s-5);
}
.mb-5 {
  margin-bottom: var(--s-5);
}
.ml-5 {
  margin-left: var(--s-5);
}
.mr-5 {
  margin-right: var(--s-5);
}
/* ==== button ====== */
.btn-primery {
  background-color: var(--primary-1);
  color: var(--netural-1);
  border-radius: var(--s-1);
  font-size: var(--font-body-s);
  appearance: none;
  font-weight: 600;
  border: 1px solid var(--boder-color);
}
.btn-sec {
  border: 1px solid var(--boder-color);
  background-color: var(--netural-3);
  color: var(--netural-2);
  border-radius: var(--s-1);
  font-size: var(--font-body-s);
  appearance: none;
  font-weight: 600;
}

/*===== Coustome CSS start here ========== */
.bg-img {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background: linear-gradient(
      122deg,
      rgba(12, 14, 23, 1) 0%,
      rgba(12, 14, 23, 0.12) 100%
    ),
    url(./bg-img.webp);
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}

.logo-div {
  grid-column: 1 / span 6;
}

.left-div {
  grid-column: 7 / span 6;
}

.text-div {
  grid-column: 1 / span 6;
}

.form-div {
  grid-column: 8 / span 6;
}

.sub-menu {
  display: none;
}

.hero {
  justify-items: end;
}

ul {
  list-style-type: none;
}

a {
  text-decoration: none;
  color: var(--netural-3);
  font-size: var(--font-body-s);
}

.text-div h1 {
  font-size: var(--font-h1);
  color: var(--netural-1);
  font-weight: 500;
  line-height: 100%;
}
.text-div p {
  font-size: var(--font-body-l);
  color: var(--netural-3);
  width: 70%;
  line-height: 170%;
}

.form-div {
  background: rgba(255, 255, 255, 0.2);
  box-shadow: 0 4px 84px 0 rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(32px);
  -webkit-backdrop-filter: blur(32px);
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  width: 70%;
}

.form-div h3 {
  font-size: var(--font-h2);
  color: var(--netural-1);
  text-align: center;
  font-weight: 600;
  line-height: 140%;
}

input,
textarea,
select,
option {
  border-radius: 8px;
  font-family: "Figtree", sans-serif;
  font-size: var(--font-body-s);
}
/* ====== Container and media query ====== */
.container {
  width: min(var(--container-max-width), 100%);
  margin: auto;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--container-gutter);
}

@media (max-width: 600px) {
  html {
    font-size: var(--font-small);
  }
  .container {
    grid-template-columns: repeat(4, 1fr); /* Stack to 4 columns */
  }

  .span-res {
    grid-column: span 4;
  }
}

@media (min-width: 601px) and (max-width: 1199px) {
  html {
    font-size: var(--font-base);
  }
  .container {
    grid-template-columns: repeat(8, 1fr); /* Stack to 8 columns */
  }
}

@media (min-width: 1200px) {
  html {
    font-size: var(--font-large);
  }
  .container {
    grid-template-columns: repeat(12, 1fr);
  }
}
