:root{
  --primary:#2ec8fe;
  --primary-dark:#018dbe;
  --secondary:#0a1e3f;
  --dark:#0a1e3f;
  --muted:#6f7b91;
  --light:#f5f8ff;
  --white:#ffffff;
  --success:#20bf6b;
  --border:#e6f2f4;
  --shadow:0 20px 60px rgba(26, 57, 120, .12);
  --radius:24px;
}

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-family:"Inter",sans-serif;
  color:var(--dark);
  background:#fff;
  overflow-x:hidden;
}

h1,h2,h3,h4,h5,h6{
  font-family:"Manrope",sans-serif;
  font-weight:800;
}

p{
  color:var(--muted);
  line-height:1.75;
}

a{
  text-decoration:none;
}

section{
  position:relative;
}

@media (min-width: 992px) and (max-width: 1199px) {
  .container, .container-lg, .container-md, .container-sm {
	max-width: 1100px;
  }
}

.section-padding{
  padding:100px 0;
}

.section-title{
  max-width:680px;
  margin:0 auto 55px;
  text-align:center;
}

.section-title .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  color:var(--primary);
  background:rgba(31,181,255,.09);
  font-weight:700;
  font-size:.82rem;
  margin-bottom:15px;
}

.section-title h2{
  font-size:clamp(2rem,4vw,3.2rem);
  line-height:1.1;
  margin-bottom:16px;
}

.section-title p{
  margin-bottom:0;
  font-size:1.04rem;
}

/* NAVBAR */
.navbar{
  transition:.3s ease;
  padding:18px 0;
  z-index:1000;
}

.navbar.scrolled{
  background:rgba(255,255,255,.96);
  box-shadow:0 12px 40px rgba(13,24,48,.08);
  backdrop-filter:blur(12px);
  padding:11px 0;
}

.navbar-brand{
  font-family:"Oswald",sans-serif;
  font-weight:800;
  font-size:1.55rem;
  color:var(--dark);
  display:flex;
  align-items:center;
  gap:10px;
}

.navbar-brand:hover{
	color:var(--dark);
}

.brand-icon{
  width:40px;
  height:40px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--primary),var(--secondary));
  display:grid;
  place-items:center;
  color:#fff;
  box-shadow:0 10px 24px rgba(31,108,255,.28);
}

.brand-img img{
	width:103px;
	height:80px;
	border-radius:8px;
}

.nav-link{
  font-weight:600;
  color:#4c5871 !important;
  margin:0 7px;
}

.nav-link:hover,
.nav-link.active{
  color:var(--primary)!important;
}

.btn-app{
  border:none;
  color:#fff;
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  padding:12px 20px;
  border-radius:14px;
  font-weight:700;
  box-shadow:0 12px 28px rgba(31,108,255,.24);
  transition:.25s ease;
}

.btn-app:hover{
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(31,108,255,.3);
}

@media (min-width: 992px) and (max-width: 1199px) {
	.brand-img img {
		width: 72px;
		height: 58px;
	}
	.navbar-brand{
		font-size:1rem;
	}
	.nav-link{
		font-size: 14px;
	}
	.btn-app {
		padding: 9px 14px;
		font-size: 14px;
	}
}

/* HERO */
.hero{
  min-height:100vh;
  display:flex;
  align-items:center;
  padding:130px 0 80px;
  background:
	radial-gradient(circle at 10% 15%,rgba(97, 211, 255, 0.15),transparent 30%),
	radial-gradient(circle at 85% 12%,rgba(31, 244, 255, 0.16),transparent 28%),
	linear-gradient(180deg,#f8feff 0%,#ffffff 100%);
  overflow:hidden;
}

.hero::before,
.hero::after{
  content:"";
  position:absolute;
  border-radius:50%;
  filter:blur(2px);
  opacity:.65;
  z-index:0;
}

.hero::before{
  width:430px;
  height:430px;
  right:-180px;
  top:110px;
  background:rgba(31, 213, 255, 0.08);
}

.hero::after{
  width:250px;
  height:250px;
  left:-90px;
  bottom:40px;
  background:rgba(97, 211, 255, 0.08);
}

.hero .container{
  position:relative;
  z-index:2;
}

.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 15px;
  border:1px solid rgba(31,108,255,.13);
  background:var(--secondary);
  border-radius:999px;
  color:var(--primary);
  font-size:.86rem;
  font-weight:700;
  box-shadow:0 10px 28px rgba(26,57,120,.06);
  margin-bottom:18px;
}

.hero h1{
  font-size:clamp(3rem,7vw,5.4rem);
  line-height:.98;
  letter-spacing:-.04em;
  max-width:740px;
  margin-bottom:25px;
}

.gradient-text{
  background:linear-gradient(90deg,var(--primary),var(--primary-dark));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}

.hero .lead{
  max-width:640px;
  font-size:1.12rem;
  margin-bottom:30px;
}

.hero-actions{
  display:flex;
  gap:15px;
  flex-wrap:wrap;
  margin-bottom:30px;
}

.btn-store{
  min-width:180px;
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:13px 18px;
  border-radius:16px;
  color:#fff;
  background:var(--dark);
  transition:.25s ease;
  box-shadow:0 14px 30px rgba(13,24,48,.16);
}

.btn-store:hover{
  transform:translateY(-3px);
  color:#fff;
  background:#17264a;
}

.btn-store i{
  font-size:1.6rem;
}

.btn-store small{
  display:block;
  opacity:.72;
  line-height:1.1;
  font-size:.65rem;
}

.btn-store strong{
  font-size:.94rem;
}

.hero-trust{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
}

.trust-item{
  display:flex;
  align-items:center;
  gap:10px;
  color:#56627a;
  font-weight:600;
  font-size:.92rem;
}

.trust-item i{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#eaf6ef;
  color:var(--success);
}

/* PHONE */
.phone-stage{
  position:relative;
  min-height:580px;
  display:flex;
  justify-content:center;
  align-items:center;
}

.phone{
  width:305px;
  background:#0f1830;
  border-radius:42px;
  padding:10px;
  position:relative;
  z-index:5;
  box-shadow:0 45px 90px rgba(19,46,105,.25);
  transform:rotate(4deg);
  animation:floatPhone 5s ease-in-out infinite;
}

@keyframes floatPhone{
  0%,100%{ transform:translateY(0) rotate(4deg); }
  50%{ transform:translateY(-14px) rotate(1deg); }
}

.phone-screen{
  min-height:585px;
  border-radius:33px;
  overflow:hidden;
  background:#f6f8fc;
  position:relative;
}

.phone-top{
  height:190px;
  background:linear-gradient(135deg,#2ec8fe,#018dbe);
  padding:27px 20px 20px;
  color:#fff;
}

.phone-notch{
  position:absolute;
  top:12px;
  left:50%;
  transform:translateX(-50%);
  width:92px;
  height:21px;
  border-radius:0 0 14px 14px;
  background:#0f1830;
  z-index:3;
}

.driver-row{
  margin-top:26px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.driver-info{
  display:flex;
  align-items:center;
  gap:10px;
}

.avatar{
  width:44px;
  height:44px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  color:var(--primary);
  font-weight:800;
  border:3px solid rgba(255,255,255,.3);
}

.online-pill{
  font-size:.7rem;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.24);
  padding:7px 11px;
  border-radius:999px;
}

.map-box{
  width:calc(100% - 28px);
  height:190px;
  margin:-35px auto 0;
  border-radius:24px;
  position:relative;
  overflow:hidden;
  background:
	linear-gradient(45deg,transparent 46%,rgba(31,108,255,.12) 47%,rgba(31,108,255,.12) 53%,transparent 54%),
	linear-gradient(-45deg,transparent 46%,rgba(123,97,255,.12) 47%,rgba(123,97,255,.12) 53%,transparent 54%),
	#eaf1f8;
  background-size:55px 55px;
  box-shadow:0 12px 28px rgba(17,48,108,.12);
}

.map-route{
  position:absolute;
  left:45px;
  top:105px;
  width:140px;
  height:4px;
  background:var(--primary);
  transform:rotate(-24deg);
  border-radius:10px;
}

.map-route::after{
  content:"";
  position:absolute;
  width:60px;
  height:4px;
  background:var(--primary);
  right:-49px;
  top:-11px;
  transform:rotate(45deg);
  border-radius:10px;
}

.map-pin{
  position:absolute;
  width:28px;
  height:28px;
  border-radius:50% 50% 50% 0;
  transform:rotate(-45deg);
  display:grid;
  place-items:center;
  background:var(--primary);
  color:#fff;
  box-shadow:0 6px 16px rgba(31,108,255,.28);
}

.map-pin i{
  transform:rotate(45deg);
  font-size:.78rem;
}

.pin-a{ left:35px; bottom:34px; }
.pin-b{ right:46px; top:39px; background:var(--secondary); }

.ride-card{
  margin:17px 14px;
  padding:17px;
  background:#fff;
  border-radius:20px;
  box-shadow:0 10px 26px rgba(13,24,48,.08);
}

.ride-card .tiny{
  color:#8b95a8;
  font-size:.72rem;
  margin-bottom:4px;
}

.route-line{
  display:grid;
  grid-template-columns:16px 1fr;
  gap:9px;
  margin-top:14px;
}

.route-dots{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding-top:4px;
}

.dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--primary);
}

.route-seg{
  width:2px;height:27px;background:#dfe5f0;margin:3px 0;
}

.earnings{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:0 14px;
}

.earn-box{
  border-radius:18px;
  padding:14px;
  background:#fff;
  box-shadow:0 10px 24px rgba(13,24,48,.06);
}

.earn-box strong{
  display:block;
  font-size:1.1rem;
  margin-top:4px;
}

.floating-card{
  position:absolute;
  z-index:6;
  padding:15px 18px;
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow);
  min-width:190px;
  animation:floatCard 4s ease-in-out infinite;
}

@keyframes floatCard{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-10px); }
}

.float-one{
  top:92px;
  left:0;
}

.float-two{
  bottom:105px;
  right:-10px;
  animation-delay:1.2s;
}

.floating-card .icon-wrap{
  width:42px;height:42px;
  display:grid;
  place-items:center;
  border-radius:13px;
  margin-bottom:10px;
  background:#eafaff;
  color:var(--primary);
  font-size:1.15rem;
}

.floating-card span{
  color:#8a95a9;
  font-size:.73rem;
}

.floating-card strong{
  display:block;
  font-size:1rem;
  margin-top:3px;
}

/* STATS */
.stats-strip{
  margin-top:-35px;
  position:relative;
  z-index:5;
}

.stats-card{
  background:#fff;
  border:1px solid var(--border);
  box-shadow:var(--shadow);
  border-radius:26px;
  padding:30px 15px;
}

.stat-item{
  text-align:center;
  padding:14px 8px;
}

.stat-item h3{
  font-size:2rem;
  margin:0;
  color:var(--primary);
}

.stat-item p{
  margin:5px 0 0;
  font-size:.92rem;
}

/* FEATURES */
.features{
  background:#fff;
}

.feature-card{
  height:100%;
  padding:30px;
  border:1px solid var(--border);
  border-radius:24px;
  background:#fff;
  transition:.3s ease;
}

.feature-card:hover{
  transform:translateY(-7px);
  box-shadow:var(--shadow);
  border-color:transparent;
}

.feature-icon{
  width:60px;height:60px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg,#edfbff,#effeff);
  color:var(--primary);
  font-size:1.45rem;
  margin-bottom:20px;
}

.feature-card h4{
  font-size:1.2rem;
  margin-bottom:10px;
}

.feature-card p{
  margin:0;
  font-size:.95rem;
}

/* HOW IT WORKS */
.how{
  background:var(--light);
  overflow:hidden;
}

.step-card{
  position:relative;
  background:#fff;
  border-radius:24px;
  padding:28px;
  height:100%;
  box-shadow:0 12px 30px rgba(33,64,124,.06);
}

.step-number{
  width:46px;
  height:46px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:800;
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  margin-bottom:20px;
}

.step-card::after{
  content:"";
  position:absolute;
  top:49px;
  right:-32px;
  width:64px;
  border-top:2px dashed #cbd6ea;
}

.steps .col-lg-3:last-child .step-card::after{
  display:none;
}

/* APP PREVIEW */
.app-preview{
  overflow:hidden;
}

.preview-panel{
  border-radius:34px;
  background:linear-gradient(135deg,#04214e,#06225d);
  color:#fff;
  padding:55px;
  overflow:hidden;
  position:relative;
}

.preview-panel::before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border-radius:50%;
  background:rgba(8, 200, 253, 0.9);
  right:-160px;
  top:-190px;
}

.preview-panel h2{
  font-size:clamp(2.3rem,4vw,3.7rem);
  line-height:1.08;
}

.preview-panel p{
  color:#b9c5df;
}

.check-list{
  list-style:none;
  padding:0;
  margin:25px 0 30px;
}

.check-list li{
  display:flex;
  gap:11px;
  margin-bottom:13px;
  color:#dbe3f3;
}

.check-list i{
  color:#77e4a2;
}

.dashboard-box{
  position:relative;
  z-index:2;
  border-radius:26px;
  padding:22px;
  background:#f7f9fd;
  color:var(--dark);
  box-shadow:0 30px 60px rgba(0,0,0,.22);
}

.dash-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:18px;
}

.mini-chart{
  height:180px;
  border-radius:20px;
  background:
	linear-gradient(to top,rgba(31,108,255,.07),rgba(31,108,255,0)),
	#fff;
  position:relative;
  overflow:hidden;
  border:1px solid #ebeff7;
}

.bars{
  position:absolute;
  left:25px; right:25px; bottom:20px; top:30px;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:8px;
}

.bar{
  width:12%;
  border-radius:8px 8px 2px 2px;
  background:linear-gradient(to top,var(--primary),#8ef9fe);
}

.mini-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-top:14px;
}

.mini-stat{
  background:#fff;
  border:1px solid #ebeff7;
  border-radius:16px;
  padding:13px;
}

.mini-stat small{
  color:#8d97aa;
}

.mini-stat strong{
  display:block;
  margin-top:3px;
}



/* SERVICES */
.services{
  background:#fff;
}

.service-card{
  height:100%;
  position:relative;
  overflow:hidden;
  padding:30px;
  border-radius:26px;
  border:1px solid var(--border);
  background:linear-gradient(180deg,#ffffff 0%,#f9fdff 100%);
  transition:.3s ease;
}

.service-card:hover{
  transform:translateY(-8px);
  box-shadow:var(--shadow);
  border-color:transparent;
}

.service-card::after{
  content:"";
  position:absolute;
  width:130px;
  height:130px;
  border-radius:50%;
  background:rgba(31, 213, 255, 0.06);
  right:-45px;
  bottom:-50px;
  transition:.3s ease;
}

.service-card:hover::after{
  transform:scale(1.2);
}

.service-icon{
  width:66px;
  height:66px;
  display:grid;
  place-items:center;
  border-radius:20px;
  margin-bottom:22px;
  font-size:1.55rem;
  color:#fff;
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  box-shadow:0 14px 28px rgba(31,108,255,.2);
  position:relative;
  z-index:2;
}

.service-card h4{
  font-size:1.25rem;
  margin-bottom:11px;
  position:relative;
  z-index:2;
}

.service-card p{
  margin-bottom:18px;
  font-size:.94rem;
  position:relative;
  z-index:2;
}

.service-list{
  list-style:none;
  padding:0;
  margin:0 0 22px;
  position:relative;
  z-index:2;
}

.service-list li{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:9px;
  color:#5e6a81;
  font-size:.9rem;
}

.service-list i{
  color:var(--success);
  font-size:.95rem;
}

.service-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--primary);
  font-weight:700;
  font-size:.92rem;
  position:relative;
  z-index:2;
}

.service-link:hover{
  color:var(--primary-dark);
}

/* CUSTOMER BOOKING */
.customer-booking{
  background:#ffffff;
}

.customer-booking-wrap{
  background:linear-gradient(135deg,#f7fdff,#f2fbff);
  border:1px solid var(--border);
  border-radius:34px;
  padding:55px;
  overflow:hidden;
  position:relative;
}

.customer-booking-wrap::before{
  content:"";
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  background:rgba(31, 213, 255, 0.08);
  right:-120px;
  top:-130px;
}

.customer-booking-wrap::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  border-radius:50%;
  background:rgba(97, 218, 255, 0.08);
  left:-90px;
  bottom:-110px;
}

.customer-booking-content{
  position:relative;
  z-index:2;
}

.customer-booking-content h2{
  font-size:clamp(2.2rem,4vw,3.5rem);
  line-height:1.08;
  margin-bottom:18px;
}

.customer-step-list{
  margin-top:28px;
  display:grid;
  gap:16px;
}

.customer-step{
  display:flex;
  align-items:flex-start;
  gap:15px;
  padding:16px 18px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 10px 24px rgba(22,49,102,.06);
  border:1px solid #e9eef7;
}

.customer-step-icon{
  width:46px;
  height:46px;
  min-width:46px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  color:#fff;
  font-size:1.05rem;
}

.customer-step h5{
  font-size:1rem;
  margin-bottom:4px;
}

.customer-step p{
  margin:0;
  font-size:.9rem;
}

.booking-phone{
  max-width:360px;
  margin:auto;
  background:#111a31;
  border-radius:38px;
  padding:10px;
  box-shadow:0 35px 70px rgba(15,34,76,.24);
  transform:rotate(-2deg);
  position:relative;
  z-index:2;
}

.booking-screen{
  min-height:560px;
  border-radius:30px;
  background:#f7f9fd;
  overflow:hidden;
  padding:18px;
  position:relative;
}

.booking-top{
  padding:18px 4px 16px;
}

.booking-search{
  background:#fff;
  border-radius:18px;
  padding:14px 15px;
  box-shadow:0 10px 24px rgba(22,49,102,.06);
  margin-bottom:14px;
}

.booking-search .text-warning{
	color:var(--primary) !important;
}

.booking-search small{
  color:#8c97aa;
  display:block;
  margin-bottom:4px;
}

.booking-search strong{
  font-size:.92rem;
}

.vehicle-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  background:#fff;
  border-radius:18px;
  padding:14px;
  margin-bottom:11px;
  border:1px solid #edf0f6;
}

.vehicle-card.active{
  border-color:var(--primary);
  box-shadow:0 8px 20px rgba(31,108,255,.1);
}

.vehicle-left{
  display:flex;
  align-items:center;
  gap:11px;
}

.vehicle-icon{
  width:44px;
  height:44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:#edf8ff;
  color:var(--primary);
  font-size:1.15rem;
}

.booking-action{
  margin-top:16px;
  width:100%;
  border:none;
  border-radius:16px;
  padding:14px;
  color:#fff;
  font-weight:700;
  background:linear-gradient(135deg,var(--primary),var(--secondary));
}

/* CUSTOMER FEATURES */
.customer-features{
  background:var(--light);
}

.customer-feature-card{
  height:100%;
  background:#fff;
  border-radius:22px;
  padding:26px;
  border:1px solid var(--border);
  transition:.3s ease;
}

.customer-feature-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow);
  border-color:transparent;
}

.customer-feature-icon{
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:17px;
  background:linear-gradient(135deg,#eafeff,#edfffd);
  color:var(--primary);
  font-size:1.35rem;
  margin-bottom:18px;
}

.customer-feature-card h4{
  font-size:1.12rem;
  margin-bottom:9px;
}

.customer-feature-card p{
  font-size:.92rem;
  margin:0;
}

/* TESTIMONIALS */
.testimonials{
  background:#fff;
}

.testimonial-card{
  height:100%;
  border:1px solid var(--border);
  border-radius:24px;
  padding:28px;
  background:#fff;
  transition:.3s ease;
}

.testimonial-card:hover{
  box-shadow:var(--shadow);
  transform:translateY(-5px);
}

.stars{
  color:#f5a623;
  letter-spacing:2px;
  font-size:.95rem;
}

.client{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:22px;
}

.client-avatar{
  width:48px;height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background: linear-gradient(135deg,#ddfdff,#e8fdff);
  color:var(--primary);
  font-weight:800;
}

/* CTA */
.cta{
  padding:95px 0;
}

.cta-box{
  border-radius:32px;
  padding:58px;
  background:
	radial-gradient(circle at 20% 10%,rgba(255,255,255,.18),transparent 24%),
	linear-gradient(135deg,var(--primary),var(--secondary));
  color:#fff;
  position:relative;
  overflow:hidden;
}

.cta-box::after{
  content:"";
  position:absolute;
  width:260px;height:260px;
  border:45px solid rgba(255,255,255,.08);
  border-radius:50%;
  right:-70px;
  bottom:-110px;
}

.cta-box h2{
  font-size:clamp(2.2rem,4vw,3.4rem);
  max-width:620px;
}

.cta-box p{
  color:rgba(255,255,255,.8);
  max-width:580px;
}

.cta .btn-store{
  background:#fff;
  color:var(--dark);
}

.cta .btn-store:hover{
  color:var(--dark);
  background:#f3f5f9;
}

/* FOOTER */
footer{
  background:#073e6e;
  color:#cdd7eb;
  padding:70px 0 25px;
}

footer .navbar-brand{
  color:#fff;
}

footer p{
  color:#9daac3;
}

.footer-title{
  color:#fff;
  font-size:1rem;
  margin-bottom:18px;
}

.footer-contact{
	display:flex;
	flex-direction:column;
	gap:14px;
}

.footer-contact-item{
	display:flex;
	align-items:flex-start;
	gap:10px;
	color:#9daac3;
	font-size:.9rem;
	line-height:1.5;
}

.footer-contact-item i{
	color:var(--primary);
	font-size:1rem;
	margin-top:3px;
	min-width:18px;
	line-height:1;
}

.footer-contact-item a{
	color:#9daac3;
	text-decoration:none;
	transition:.2s ease;
	word-break:break-word;
}

.footer-contact-item a:hover{
	color:#fff;
}

.footer-link{
  display:block;
  color:#9daac3;
  margin-bottom:10px;
  transition:.2s ease;
}

.footer-link:hover{
  color:#fff;
  transform:translateX(3px);
}

.socials{
  display:flex;
  gap:10px;
  margin-top:20px;
}

.socials a{
  width:38px;height:38px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:rgba(255,255,255,.06);
  color:#fff;
}

.socials a:hover{
  background:var(--primary);
}

.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:45px;
  padding-top:22px;
  font-size:.86rem;
  color:#8390a9;
}

/* BACK TO TOP */
#backToTop{
  position:fixed;
  right:22px;
  bottom:22px;
  width:46px;height:46px;
  border:none;
  border-radius:14px;
  background:var(--primary);
  color:#fff;
  box-shadow:0 12px 26px rgba(31,108,255,.28);
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:.25s;
  z-index:999;
}

#backToTop.show{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

/* REVEAL */
.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .7s ease, transform .7s ease;
}

.reveal.visible{
  opacity:1;
  transform:translateY(0);
}

@media (max-width: 991.98px){
  .hero{
	text-align:center;
	padding-top:115px;
  }

  .hero h1,
  .hero .lead{
	margin-left:auto;
	margin-right:auto;
  }

  .hero-actions,
  .hero-trust{
	justify-content:center;
  }

  .phone-stage{
	margin-top:55px;
  }

  .float-one{ left:5%; }
  .float-two{ right:3%; }

  .step-card::after{
	display:none;
  }

  .preview-panel{
	padding:38px 28px;
  }

  .dashboard-box{
	margin-top:35px;
  }
}

@media (max-width: 575.98px){
  .section-padding{
	padding:76px 0;
  }

  .hero h1{
	font-size:2.85rem;
  }

  .hero-actions{
	flex-direction:column;
	align-items:center;
  }

  .btn-store{
	width:100%;
	max-width:260px;
  }

  .phone{
	width:275px;
  }

  .phone-screen{
	min-height:550px;
  }

  .phone-stage{
	min-height:620px;
  }

  .floating-card{
	transform:scale(.86);
  }

  .float-one{
	left:-7px;
	top:70px;
  }

  .float-two{
	right:-10px;
	bottom:58px;
  }

  .cta-box{
	padding:38px 24px;
  }

  .mini-stats{
	grid-template-columns:1fr;
  }
}