*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family: Inter, system-ui, -apple-system, sans-serif;
}

body{
  background:#fff;
  overflow-x: hidden;
  color:#111;
}



























/* ================= HERO ================= */
.hero{
  height:calc(100vh - 80px);
  padding:40px 80px 40px;
  display:flex;
}

/* columns */
.part-1{
  width:35%;
  display:flex;
  flex-direction:column;
  
}

.part-2{
  width:30%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.part-3{
  width: 35%;
    display:flex;
    padding-right:20px;
  flex-direction:column;
}

/* ================= CONTROLLED SPACING ================= */
.part-1 > * + *{
  margin-top:30px;
  width: 80%;
}

.part-3 > * + *{
  margin-top:35px;
}

/* ================= LEFT ================= */
.badge{
  display:none;
  justify-content: space-between;
  font-size:12px;

  background:#f2f2f2;
  padding:8px 16px;
  width: 80%;
  border-radius:30px;
}

.badge span{
  background:#fff;
  padding:3px 10px;
  border-radius:20px;
}

.part-1 h1{
  font-size:80px;
  line-height:1.02;
  font-weight:700;
}

.part-1 p{
  font-size:20px;
  color:#555;
  max-width:420px;
}

.cta{
  padding:18px 1px;
  background:#111;
  width: 50%;
  color:#fff;
  cursor: pointer;
  border:none;
  border-radius:6px;
  font-size:16px;
}

.trusted small{
  font-size:12px;
  color:#888;
}

.logos{
  display:flex;
  gap:28px;
  font-size:16px;
  color:#aaa;
  font-weight:600;
}

/* ================= CENTER IMAGE (UNCHANGED) ================= */
.part-2 img{
  width:100%;
  height:100%;
  object-fit:contain;
}

/* ================= RIGHT ================= */
.part-3 p{
  font-size:20px;
  padding-top:40px;
  color:#555;
  max-width:380px;
}

.video{
  display:flex;
  align-items:center;
  gap:14px;
}

.play{
  width:44px;
  height:44px;
  background:#111;
  color:#fff;
  display:grid;
  place-items:center;
  border-radius:6px;
}

.stats small{
  font-size:15px;
  color:#999;
}

.stats h2{
  font-size:55px;
  margin-top:15px;
}

.stats span{
  font-size:16px;
  color:#777;
  display:block;
  margin-bottom:24px;
}

.reviews small{
  font-size:15px;
}

.avatars{
  display:flex;
  margin-top:10px;
}

.avatar{
  width:38px;
  height:38px;
  background:#ccc;
  border-radius:50%;
  border:3px solid #fff;
  margin-left:-10px;
}

/* ================= RESPONSIVE ================= */
@media(max-width:1100px){
  .navbar,
  .hero{
    padding-left:40px;
    padding-right:40px;
  }

  .hero{
    flex-direction:column;
    height:auto;
    gap:80px;
  }

  .part-1,
  .part-2,
  .part-3{
    width:100%;
    align-items:center;
    text-align:center;
  }

  .part-2{
    height:420px;
  }

}










.vh00vh{
    height: 100vh;
}























/* ================= ANIMATIONS ONLY ================= */

/* Left from left */
.part-1{
  animation: leftIn 1s ease forwards;
}

/* Center from center */
.part-2{
  animation: centerIn 1.2s ease forwards;
}

/* Right from right */
.part-3{
  animation: rightIn 1s ease forwards;
}

/* Typewriter effect for h1 (NO CONTENT CHANGE) */


/* ================= KEYFRAMES ================= */

@keyframes leftIn{
  from{
    opacity:0;
    transform:translateX(-60px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

@keyframes rightIn{
  from{
    opacity:0;
    transform:translateX(60px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

@keyframes centerIn{
  from{
    opacity:0;
    transform:scale(0.92);
  }
  to{
    opacity:1;
    transform:scale(1);
  }
}





/* Disable animations on small screens (safety) */
@media(max-width:1100px){
  .part-1,
  .part-2,
  .part-3{
    animation:none;
  }

  .part-1 h1{
    width:auto;
    white-space:normal;
    border:none;
    animation:none;
  }
}







/* ===== Word-by-word cursor ===== */
.part-1 h1{
  position: relative;
}

.type-cursor::after{
  content: "|";
  margin-left: 6px;
  animation: blink 1s infinite;
}

@keyframes blink{
  50%{ opacity:0; }
}

















































:root{
  --analytics-bar-width: 50px;
  --analytics-bar-gap: 50px;
}

.analytics-graph-section{
  height:80vh;
  padding:40px 80px;
  max-width: 100%;
  display:flex;
  margin-top: 60px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.analytics-graph-header{
  /* max-width:1200px; */
  text-align:center;
  margin-bottom:24px;
}

.analytics-graph-header h1{
  font-size:32px;
  margin:0;
}

.analytics-graph-header p{
  margin-top:8px;
  font-size:15px;
  color:#666;
}

.analytics-graph-card{
  width:100%;
  max-width:1200px;
  height:100%;
  background:#f7f8fc;
  border-radius:24px;
  padding:32px;
  display:grid;
  grid-template-columns:3fr 1.2fr;
  gap:32px;
}

.analytics-left{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.analytics-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
}

.analytics-metrics{
  display:flex;
  gap:40px;
}

.analytics-chart{
  margin-top:30px;
  display:grid;
  grid-template-columns:60px 1fr;
  height:300px;
}

.analytics-y{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  font-size:12px;
  color:#777;
}

.analytics-bars{
  display:flex;
  align-items:flex-end;
  gap:var(--analytics-bar-gap);
  padding-top:40px;
}

.bar-shell{
  width:var(--analytics-bar-width);
  height:100%;
  background:#e4e6ee;
  border-radius:12px;
  display:flex;
  align-items:flex-end;
}

.bar-fill{
  width:100%;
  height:0;
  background:#111;
  border-radius:12px;
  transition:height .9s ease;
}

.analytics-x{
  display:flex;
  gap:var(--analytics-bar-gap);
  margin-left:60px;
  margin-top:10px;
}

.analytics-x span{
  width:var(--analytics-bar-width);
  text-align:center;
  font-size:12px;
  color:#777;
}

.analytics-right{
  background:#fff;
  border-radius:20px;
  padding:24px;
  display:flex;
  flex-direction:column;
  gap:18px;
}

.info-row{
  display:flex;
  justify-content:space-between;
  font-size:14px;
}













/* ================= RIGHT PANEL ================= */
.analytics-right{
  background:#ffffff;
  border-radius:20px;
  padding:24px 22px;

  display:flex;
  flex-direction:column;
  gap:18px;
}

/* Title */
.right-title{
  font-size:18px;
  font-weight:600;
  color:#111;
  margin-bottom:6px;
}

/* Grid holding rows */
.right-grid{
  display:grid;
  grid-template-columns:1fr 1fr;   /* two columns */
  gap:14px 20px;                   /* row | column spacing */
}

/* Each row */
.right-row{
  background:#f6f7fb;
  border-radius:14px;
  padding:12px 14px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:16px;                        /* 🔥 guaranteed spacing */
  min-height:44px;
}

/* Label */
.right-row span{
  font-size:13px;
  color:#666;
  flex:1;
  white-space:nowrap;
}

/* Value */
.right-row strong{
  font-size:13px;
  font-weight:600;
  color:#111;
  flex-shrink:0;                   /* ❌ never overlap */
}

/* Highlight row */
.right-row.highlight{
  background:#111;
}

.right-row.highlight span{
  color:#ccc;
}

.right-row.highlight strong{
  color:#fff;
}










/* ================= RESPONSIVE FIXES ================= */

/* Tablets & small laptops */
@media (max-width: 1024px) {
  :root{
    --analytics-bar-width: 42px;
    --analytics-bar-gap: 36px;
  }

  .analytics-graph-section{
    padding:40px;
    height:auto;
  }

  .analytics-graph-card{
    grid-template-columns: 1fr;   /* stack */
    height:auto;
  }

  .analytics-right{
    order:2;
  }

  .analytics-left{
    order:1;
  }
}

/* Phones */
@media (max-width: 768px) {
  :root{
    --analytics-bar-width: 32px;
    --analytics-bar-gap: 22px;
  }

  .analytics-graph-section{
    padding:24px;
  }

  .analytics-graph-header h1{
    font-size:24px;
  }

  .analytics-graph-header p{
    font-size:14px;
  }

  .analytics-graph-card{
    padding:20px;
    gap:24px;
  }

  /* Top metrics stack */
  .analytics-top{
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
  }

  .analytics-metrics{
    gap:20px;
  }

  /* Graph height adjust */
  .analytics-chart{
    height:240px;
    margin-top:20px;
  }

  .analytics-y{
    font-size:11px;
  }

  .analytics-x{
    margin-left:60px;
    font-size:11px;
  }

  /* Right panel grid becomes single column */
  .right-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .right-row{
    padding:10px 12px;
  }
}

/* Very small phones */
@media (max-width: 420px) {
  :root{
    --analytics-bar-width: 26px;
    --analytics-bar-gap: 16px;
  }

  .analytics-chart{
    height:220px;
  }

  .analytics-x span,
  .analytics-y span{
    font-size:10px;
  }
}











/* ================= FINAL X-OVERFLOW FIX ================= */

/* Ensure chart never exceeds container width */
.analytics-chart{
  overflow: visible;
}

/* Bar container adapts instead of overflowing */
.analytics-bars{
  max-width:100%;
  overflow-x:auto;          /* scroll allowed, NOT hidden */
  padding-bottom:8px;
}

/* Keep bars inside visible area */
.analytics-bars::-webkit-scrollbar{
  height:6px;
}
.analytics-bars::-webkit-scrollbar-thumb{
  background:#d0d3dc;
  border-radius:6px;
}

/* X axis aligns with bars and scrolls together */
.analytics-x{
  max-width:100%;
  overflow-x:auto;
  padding-bottom:6px;
}

.analytics-x::-webkit-scrollbar{
  height:6px;
}
.analytics-x::-webkit-scrollbar-thumb{
  background:#d0d3dc;
  border-radius:6px;
}

/* Phones: dynamically reduce bar footprint */
@media (max-width:768px){

  /* GLOBAL SAFETY */
  html, body{
    overflow-x:hidden;
  }

  /* SECTION */
  .analytics-graph-section{
    padding:20px 12px;
  }

  /* CARD */
  .analytics-graph-card{
    width:100%;
    max-width:100%;
    padding:16px;
    border-radius:16px;

    grid-template-columns:1fr;
    gap:20px;
    overflow:hidden;
  }

  /* STACK LAYOUT */
  .analytics-left,
  .analytics-right{
    width:100%;
  }

  /* TOP METRICS */
  .analytics-top{
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
  }

  .analytics-metrics{
    gap:16px;
    flex-wrap:wrap;
  }

  /* CHART FIX */
  .analytics-chart{
    grid-template-columns:48px 1fr;
    width:100%;
    height:220px;
    overflow:hidden;
  }

  /* BARS (MAIN FIX) */
  .analytics-bars{
    gap:12px;
    overflow-x:auto;
    overflow-y:hidden;
    max-width:100%;
    padding-bottom:6px;
  }

  /* X AXIS ALIGNMENT FIX */
  .analytics-x{
    margin-left:0;          /* ❌ remove overflow cause */
    padding-left:48px;      /* ✅ align with Y axis */
    gap:12px;
    overflow-x:auto;
  }

  /* TEXT SCALE */
  .analytics-y,
  .analytics-x span{
    font-size:11px;
  }

  /* RIGHT PANEL */
  .analytics-right{
    padding:16px;
    gap:14px;
  }

  .right-grid{
    grid-template-columns:1fr;
    gap:10px;
  }

  .right-row{
    padding:10px 12px;
  }

}

/* Small phones: tighter but readable */
@media (max-width: 420px){
  :root{
    --analytics-bar-width: 22px;
    --analytics-bar-gap: 12px;
  }

  .analytics-chart{
    height:200px;
  }

  .analytics-x span,
  .analytics-y span{
    font-size:10px;
  }
}






























.arc-section{
  height:100vh;
  overflow-x: hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.arc-title{
  font-size:42px;
  font-weight:700;
  margin-bottom:60px;
}

/* ================= STAGE ================= */
.arc-stage{
  position:relative;
  width:100%;
  max-width:1100px;
  height:380px;
}

/* ================= CARD ================= */
.arc-card{
  position:absolute;
  left:50%;
  top:50%;
  width:260px;
  height:300px;
  border-radius:28px;
  background:linear-gradient(180deg,#f9faff,#eef1f8);
  padding:22px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;

  box-shadow:
    0 28px 60px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.6);

  transition:
    transform 1s cubic-bezier(.22,.8,.36,1),
    opacity .8s ease,
    background .6s ease;
}

/* subtle overlay */
.arc-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:28px;
  background:linear-gradient(to top,rgba(0,0,0,.35),transparent);
  opacity:.08;
}

/* ===== CARD CONTENT ===== */
.arc-badge{
  font-size:12px;
  padding:6px 12px;
  border-radius:20px;
  background:#fff;
  width:max-content;
  box-shadow:0 4px 10px rgba(0,0,0,.1);
}

.arc-card h4{
  font-size:18px;
  margin-top:12px;
}

.arc-card p{
  font-size:14px;
  color:#555;
  line-height:1.45;
  margin-top:8px;
}

.arc-meta{
  font-size:13px;
  color:#777;
  margin-top:12px;
}

/* ===== ACTIVE (CENTER) CARD ===== */
.arc-card.active{
  background:#111;
  color:#fff;
}

.arc-card.active p,
.arc-card.active .arc-meta{
  color:#dcdcdc;
}

.arc-card.active .arc-badge{
  background:#fff;
  color:#111;
}






/* ================= RESPONSIVE : ARC SECTION ================= */

/* Tablets */
@media (max-width: 1024px){
  .arc-title{
    font-size:32px;
    margin-bottom:40px;
    text-align:center;
  }

  .arc-stage{
    height:340px;
  }

  .arc-card{
    width:220px;
    height:260px;
    padding:18px;
  }

  .arc-card h4{
    font-size:16px;
  }

  .arc-card p{
    font-size:13px;
  }
}

/* Phones */
@media (max-width: 768px){
  .arc-section{
    height:auto;
    padding:60px 20px;
  }

  .arc-title{
    font-size:24px;
    margin-bottom:28px;
    text-align:center;
    line-height:1.2;
  }

  .arc-stage{
    height:300px;
    max-width:100%;
  }

  .arc-card{
    width:190px;
    height:230px;
    padding:16px;
    border-radius:22px;
  }

  .arc-badge{
    font-size:11px;
    padding:5px 10px;
  }

  .arc-card h4{
    font-size:15px;
    margin-top:8px;
  }

  .arc-card p{
    font-size:12px;
    line-height:1.4;
  }

  .arc-meta{
    font-size:12px;
  }
}

/* Very small phones */
@media (max-width: 420px){
  .arc-title{
    font-size:20px;
    margin-bottom:24px;
  }

  .arc-stage{
    height:260px;
  }

  .arc-card{
    width:170px;
    height:210px;
    padding:14px;
  }

  .arc-card h4{
    font-size:14px;
  }

  .arc-card p{
    font-size:11.5px;
  }
}






















.bond-steps-section{
  padding:80px 80px;
  min-height:80vh;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
}

/* ================= COLUMN ================= */
.steps-column{
  background:#f7f8fc;
  border-radius:28px;
  padding:40px;
}

.steps-column h2{
  font-size:28px;
  margin-bottom:30px;
}

/* ================= STEP ================= */
.step{
  display:flex;
  gap:18px;
  align-items:flex-start;
  margin-bottom:26px;
  opacity:.35;
  transform:translateY(10px);
  transition:.5s ease;
}

.step.active{
  opacity:1;
  transform:translateY(0);
}

/* tick */
.tick{
  width:26px;
  height:26px;
  border-radius:50%;
  border:2px solid #bbb;
  display:grid;
  place-items:center;
  font-size:14px;
  flex-shrink:0;
}

.step.active .tick{
  border-color:#111;
  background:#111;
  color:#fff;
}

/* text */
.step h4{
  font-size:17px;
  margin-bottom:4px;
}

.step p{
  font-size:14px;
  color:#555;
  line-height:1.5;
}

/* ================= RESPONSIVE ================= */
@media(max-width:900px){
  .bond-steps-section{
    grid-template-columns:1fr;
    padding:40px 24px;
  }
}








/* ================= STEPPER ================= */
.step{
  display:grid;
  grid-template-columns:30px 1fr;
  gap:18px;
  position:relative;
  padding-bottom:32px;
  opacity:.35;
  transform:translateY(8px);
  transition:.5s ease;
}

.step:last-child{
  padding-bottom:0;
}

/* vertical line */
.step::before{
  content:"";
  position:absolute;
  left:14px;
  top:30px;
  width:2px;
  height:calc(100% - 30px);
  background:repeating-linear-gradient(
    to bottom,
    #ccc,
    #ccc 6px,
    transparent 6px,
    transparent 12px
  );
}

.step:last-child::before{
  display:none;
}

/* active */
.step.active{
  opacity:1;
  transform:translateY(0);
}

/* tick */
.tick{
  width:28px;
  height:28px;
  border-radius:50%;
  border:2px solid #bbb;
  display:grid;
  place-items:center;
  font-size:14px;
  background:#fff;
  z-index:2;
  transition:.4s ease;
}

.step.active .tick{
  border-color:#111;
  background:#111;
  color:#fff;
}

/* text */
.step h4{
  font-size:17px;
  margin-bottom:6px;
}

.step p{
  font-size:14px;
  color:#555;
  line-height:1.5;
}



























/* ================= SECTION ================= */
.full-image-section{
  height:80vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0px;
}

/* ================= IMAGE CONTAINER ================= */
.image-container{
  position:relative;
  width:100%;
  max-width:1200px;
  height:600px;
  border-radius:28px;
  overflow:hidden;
  background:url("assets/maps.jpg") center/cover no-repeat;
  box-shadow:0 40px 80px rgba(0,0,0,0.25);
}

/* subtle overlay for readability */
.image-container::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.15);
}

/* ================= FORM ================= */
.form-card{
  position:absolute;
  left:60px;
  top:50%;
  transform:translateY(-50%);
  width:360px;
  background:#ffffff;
  border-radius:18px;
  padding:34px;
  z-index:2;
}

.form-card h2{
  font-size:26px;
  margin-bottom:6px;
}

.form-card p{
  font-size:14px;
  color:#666;
  margin-bottom:22px;
}

.form-card form{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.form-card input,
.form-card textarea{
  border:none;
  border-bottom:1px solid #ddd;
  padding:10px 4px;
  font-size:15px;
  outline:none;
}

.form-card textarea{
  resize:none;
  height:80px;
}

.form-card label{
  font-size:12px;
  color:#666;
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:6px;
}

.form-card button{
  margin-top:18px;
  width:max-content;
  padding:12px 22px;
  border:none;
  border-radius:20px;
  background:#111;
  color:#fff;
  font-size:14px;
  cursor:pointer;
  transition:.3s ease;
}

.form-card button:hover{
  transform:translateY(-2px);
  background:#000;
}

/* ================= RESPONSIVE ================= */
@media(max-width:900px){
  .full-image-section{
    padding:30px;
  }

  .image-container{
    height:520px;
  }

  .form-card{
    left:50%;
    transform:translate(-50%, -50%);
    width:90%;
  }
}















.contact-header{
  padding:10px 20px 50px;
  text-align:center;
}

.contact-header h1{
  font-size:42px;
  font-weight:700;
  margin-bottom:10px;
}

.contact-header p{
  font-size:16px;
  color:#666;
}





























/* ================= FONTS ================= */
@import url('https://fonts.googleapis.com/css2?family=Black+Ops+One&family=Montserrat:wght@100..900&display=swap');

body{
  font-family: "Montserrat", sans-serif;
}

/* ================= NAVBAR ================= */

.ohm-navbar{
  width:100%;
  position:fixed;
  top:0;
  left:0;
  background:#fff;
  z-index:1000;
  border-bottom:1px solid #eee;
}

/* CONTAINER */
.ohm-container{
  max-width:1200px;
  margin:auto;
  height:70px;
  padding:0 20px;

  display:flex;
  align-items:center;
  justify-content:space-between;
}

/* LOGO */
.ohm-logo{
  font-family:"Black Ops One", cursive;
  font-size:22px;
  letter-spacing:2px;
  color:#000;
}

/* MENU */
.ohm-menu{
  display:flex;
  align-items:center;
  gap:24px;
  list-style:none;
}

/* LINKS */
.ohm-menu a{
  text-decoration:none;
  color:#444;
  font-size:14px;

  display:flex;
  align-items:center;
  gap:6px;

  padding:8px 14px;
  border-radius:20px;
  transition:0.3s;
}

/* HOVER */
.ohm-menu a:hover{
  background:#000;
  color:#fff;
}

/* ACTIVE */
.ohm-menu a.active{
  background:#000;
  color:#fff;
}

/* CONTACT BUTTON (DESKTOP) */
.ohm-btn{
  text-decoration:none;
  padding:8px 18px;
  background:#000;
  color:#fff;
  border-radius:30px;
  font-size:13px;
  white-space:nowrap;
  transition:0.3s;
}

.ohm-btn:hover{
  transform:translateY(-2px);
}

/* HAMBURGER */
.ohm-hamburger{
  display:none;
  flex-direction:column;
  gap:5px;
  cursor:pointer;
}

.ohm-hamburger span{
  width:25px;
  height:3px;
  background:#000;
}

/* MOBILE CONTACT (hidden desktop) */
.ohm-mobile-contact{
  display:none;
}

/* ================= MOBILE ================= */

@media(max-width:768px){

  .ohm-hamburger{
    display:flex;
  }

  /* hide desktop button */
  .ohm-btn{
    display:none;
  }

  /* menu dropdown */
  .ohm-menu{
    position:absolute;
    top:70px;
    left:0;
    width:100%;

    flex-direction:column;
    align-items:center;
    gap:20px;

    padding:20px 0;
    background:#fff;

    transform:translateY(-120%);
    opacity:0;
    transition:0.4s;
  }

  .ohm-menu.active{
    transform:translateY(0);
    opacity:1;
  }

  /* SHOW CONTACT IN MENU */
  .ohm-mobile-contact{
    display:flex;
  }

}

/* ================= SMALL FIX ================= */

/* prevent overflow */
html,body{
  overflow-x:hidden;
}

























/* SECTION */




























.cards-section{

width:90%;
margin:auto;

display:grid;

grid-template-columns:repeat(3,1fr);

gap:60px;

padding:80px 0;

justify-items:center;

}

/* PERSPECTIVE CONTAINER */

.parent{

width:320px;
height:320px;

perspective:1000px;

}

/* CARD */

.card{

height:100%;

border-radius:45px;

background:black;

transition:all 0.5s ease;

transform-style:preserve-3d;

box-shadow:
0 30px 50px rgba(0,0,0,0.2),
0 10px 25px rgba(0,0,0,0.1);

position:relative;

}

/* GLASS LAYER */

.glass{

position:absolute;

inset:8px;

border-radius:45px;

border-top-right-radius:100%;

background:linear-gradient(
0deg,
rgba(255,255,255,0.08) 0%,
rgba(255,255,255,0.25) 100%
);

transform:translate3d(0,0,25px);

border-left:1px solid rgba(255,255,255,0.4);
border-bottom:1px solid rgba(255,255,255,0.4);

transition:0.4s;

}

/* CONTENT */

.content{

padding:100px 50px 0px 30px;

transform:translate3d(0,0,30px);

}

/* TITLE */

.content .title{

display:block;

color:white;

font-weight:800;

font-size:20px;

letter-spacing:1px;

}

/* TEXT */

.content .text{

display:block;

color:#cccccc;

font-size:14px;

margin-top:20px;

line-height:1.5;

}

/* BOTTOM AREA */

.bottom{

padding:10px 12px;

position:absolute;

bottom:20px;

left:20px;

right:20px;

display:flex;

align-items:center;

justify-content:space-between;

transform:translate3d(0,0,30px);

}

/* SOCIAL BUTTONS */

.social-buttons-container{

display:flex;

gap:10px;

}

.social-button{

width:32px;

aspect-ratio:1;

background:white;

border-radius:50%;

border:none;

display:grid;

place-content:center;

cursor:pointer;

transition:0.3s;

}

.social-button svg{

width:15px;

fill:black;

}

.social-button:hover{

background:black;

border:1px solid white;

}

.social-button:hover svg{

fill:white;

}

/* VIEW BUTTON */

.view-more-button{

background:none;

border:none;

color:white;

font-weight:600;

cursor:pointer;

font-size:13px;

}

/* HOVER 3D EFFECT */

.parent:hover .card{

transform:rotate3d(1,1,0,25deg);

box-shadow:
0 40px 60px rgba(0,0,0,0.35),
0 20px 35px rgba(0,0,0,0.15);

}

/* RESPONSIVE */

@media (max-width:1200px){

.cards-section{

grid-template-columns:repeat(2,1fr);

}

}

@media (max-width:760px){

.cards-section{

grid-template-columns:1fr;

}

.parent{

width:100%;

max-width:320px;

}

}



























.navbar{

width:100%;
height:70px;

display:flex;
align-items:center;
justify-content:space-between;

padding:0 40px;

background:white;

position:fixed;
top:0;

z-index:1000;

}

/* LOGO */

.logo{

display:flex;
align-items:center;
gap:8px;

font-size:18px;
font-weight:600;

color:black;

}

.logo i{
font-size:20px;
}

/* NAV MENU */

.nav-menu{

display:flex;
align-items:center;

gap:40px;

list-style:none;

background:white;

padding:10px 20px;

border-radius:40px;

height:40px;

}

/* NAV ITEMS */

.nav-item{

display:flex;
align-items:center;
gap:8px;

height:100%;

padding:20px 18px;

border-radius:30px;

cursor:pointer;

font-size:16px;

color:#444;

transition:0.3s;

}

.nav-item i{
font-size:18px;
}


/* HOVER */

.nav-item:hover{

background:black;
color:white;

}

/* CONTACT BUTTON */

.contact-btn{

display:flex;
align-items:center;
justify-content:center;
text-decoration: none;
height:40px;

gap:8px;

background:black;
color:white;

padding:0 22px;

border-radius:30px;

cursor:pointer;

font-size:14px;

transition:0.3s;

}

/* ARROW */

.contact-btn .arrow{

opacity:0;
transform:translateX(-5px);

transition:0.3s;

}

.contact-btn:hover .arrow{

opacity:1;
transform:translateX(5px);

}

/* HAMBURGER */

.hamburger{

display:none;

flex-direction:column;
gap:5px;

cursor:pointer;

}

.hamburger span{

width:25px;
height:3px;

background:black;

display:block;

}

/* MOBILE */

@media (max-width:768px){

.navbar{
padding:0 20px;
}

/* hide menu */

.nav-menu{

position:absolute;
top:70px;
left:0;

flex-direction:column;

width:100%;

padding:20px;

display:none;

background:white;

border-top:1px solid #eee;

height:auto;

}

/* show menu */

.nav-menu.active{
display:flex;
}

/* show hamburger */

.hamburger{
display:flex;
}

/* contact button below */

.contact-btn{
display:none;
}

}









.nav-item a{
display:flex;
align-items:center;
gap:8px;
text-decoration:none;
color:inherit;
}
























.footer{

background:#0a0a0a;
color:white;

padding:120px 8% 80px;

position:relative;

overflow:hidden;

/* grid background */

background-image:
linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);

background-size:60px 60px;

}

/* top section */

.footer-top{

display:flex;
justify-content:space-between;
align-items:flex-start;

margin-bottom:120px;

}

/* brand */

.brand{

font-size:22px;
font-weight:700;
letter-spacing:2px;

}

/* links */

.footer-links{

display:flex;
flex-direction:column;
gap:10px;

}

.footer-links a{

cursor:pointer;
opacity:.7;
transition:.3s;

}

.footer-links a:hover{
opacity:1;
}

/* newsletter */

.newsletter{

max-width:320px;

}

.newsletter h3{

font-size:18px;
margin-bottom:20px;

}

/* email box */

.email-box{

display:flex;

background:white;

border-radius:40px;

overflow:hidden;

}

.email-box input{

flex:1;
border:none;

padding:15px 20px;

outline:none;

font-size:14px;

}

.email-box button{

width:50px;

background:black;

color:white;

border:none;

cursor:pointer;

}

/* BIG DISTORTED TEXT */

.big-text{

position:absolute;

left:0;
bottom:120px;

width:100%;

font-size:12vw;

font-weight:900;

color:#f5f5f5;

opacity:.15;

letter-spacing:-10px;

/* perspective distortion */

transform:
scaleY(1.2)
skewX(-15deg);

pointer-events:none;

white-space:nowrap;

}

/* bottom */

.footer-bottom{

margin-top:200px;

display:flex;
justify-content:space-between;
align-items:center;

font-size:12px;

opacity:.8;

}

.social{

display:flex;
gap:20px;

}

.social a{

cursor:pointer;

}

.social a:hover{

color:white;

}

/* responsive */

@media(max-width:900px){

.footer-top{

flex-direction:column;
gap:40px;

}

.footer-bottom{

flex-direction:column;
gap:20px;

text-align:center;

}

.big-text{

font-size:18vw;

}

}






a{
  text-decoration: none;
  color: white;
}

















/* SECTION */
.contact-section{
  padding:0px 8%;
  padding-bottom: 80px;
  background:#f8fafc;
}

/* LAYOUT */
.contact-container{
  display:flex;
  gap:60px;
  align-items:stretch;
}

/* LEFT */
.contact-left{
  flex:1;
}

.contact-left h2{
  font-size:32px;
  margin-bottom:10px;
}

.contact-left p{
  font-size:14px;
  color:#555;
  margin-bottom:20px;
}

/* INPUTS */
.contact-left input,
.contact-left textarea{
  width:100%;
  padding:12px;
  margin-bottom:12px;

  border:1px solid #ddd;
  border-radius:6px;

  font-size:14px;
  display:block;
}

/* TEXTAREA */
.contact-left textarea{
  min-height:120px;
  resize:none;
}

/* CHECKBOX */
.checkbox{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:13px;
  color:#555;
  cursor:pointer;
  padding-bottom: 20px;
}

/* SMALL BOX */
.checkbox input{
  width:13px;
  height:13px;
  margin:0;
  cursor:pointer;
}

/* TEXT */
.checkbox span{
  line-height:1.2;
}

/* LINK */
.policy-link{
  color:#000;
  text-decoration:underline;
}

/* BUTTON */
.contact-left button{
  width:100%;
  padding:14px;
  background:#000;
  color:#fff;
  border:none;
  border-radius:6px;
  cursor:pointer;
}

/* RIGHT MAP */
.contact-right{
  flex:1.2;
  position:relative;
}

/* MAP */
.map{
  width:100%;
  height:100%;
  min-height:400px;
  border-radius:12px;
  border:none;
}

/* ADDRESS CARD */
.map-card{
  position:absolute;
  bottom:20px;
  left:20px;

  background:#fff;
  padding:14px 18px;
  border-radius:10px;

  display:flex;
  gap:12px;
  align-items:center;

  box-shadow:0 10px 30px rgba(0,0,0,0.15);
}

.pin{
  font-size:20px;
}

.map-card h4{
  font-size:14px;
}

.map-card p{
  font-size:12px;
  color:#666;
}

/* RESPONSIVE */
@media(max-width:900px){
  .contact-container{
    flex-direction:column;
  }
}













.contact-container{
  display:flex;
  gap:60px;
}

/* LEFT */
.contact-left{
  flex:1;
}

/* RIGHT */
.contact-right{
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

/* GRID */
.data-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:15px;
  margin:20px 0;
}

/* CARD */
.data-card{
  border:1px solid #000;
  padding:20px;
  border-radius:10px;
  transition:0.3s;
}

.data-card h2{
  font-size:22px;
  margin-bottom:6px;
}

.data-card p{
  font-size:13px;
  color:#555;
}

/* HOVER */
.data-card:hover{
  background:#000;
  color:#fff;
}

.data-card:hover p{
  color:#ddd;
}

/* INFO BOX */
.info-box{
  display:flex;
  gap:10px;
  margin-top:15px;
  font-size:14px;
}

.info-box i{
  font-size:18px;
}

/* POLICY LINK */
.policy-link{
  color:blue;
  /* text-decoration:underline; */
}

/* RESPONSIVE */
@media(max-width:900px){
  .contact-container{
    flex-direction:column;
  }
}








.avatar img{
  width: 100%;
  height: 100%;
  /* object-fit: cover; */
  border-radius: 50%;
}
