:root {
  --ink: #0b0d10;
  --ink2: #121620;
  --ink3: #1c2434;
  --line-d: #242c3b;
  --paper: #f7f8fa;
  --paper2: #ffffff;
  --line: #e7e9ed;
  --text: #0b0d10;
  --text-d: #eaf0f2;
  --slate: #465064;
  --muted: #8a93a0;
  --muted-d: #899aab;
  --teal: #00e6c3;
  --teal2: #00c9ab;
  --teal-deep: #00a88e;
  --r: 14px;
  --maxw: 1140px;
  --disp: "Saira", -apple-system, BlinkMacSystemFont, sans-serif;
  --body: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, Menlo, monospace;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
	line-height: 1.55 !important;
}

html {
  scroll-behavior: smooth;
	scroll-padding-top: 65px;
}

body {
  font-family: var(--body) !important;
  background: var(--paper);
  color: var(--text) !important;
  line-height: 1.55 !important;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

.reveal {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity .6s ease, transform .6s ease
}

.reveal.in {
	opacity: 1;
	transform: none
}

a {
  color: inherit;
  text-decoration: none;
}

.wrap {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 24px;
}

.mono *,
.mono {
  font-family: var(--mono)  !important;
}

h1,
h2,
h3 {
  font-family: var(--disp) !important;
  font-weight: 700;
  letter-spacing: -0.02em !important;
  line-height: 1.04 !important;
}

p{
	font-family: var(--body) !important;
}

.btn a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--disp) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  border-radius: 10px;
  padding: 13px 22px;
  cursor: pointer;
  border: 1px solid transparent;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.btn-primary a{
  background-color: var(--teal) !important;
  color: #04120e !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
}

.btn-primary a:hover {
  background-color: var(--teal2) !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 22px -8px rgba(0, 230, 195, 0.55);
}

.btn-ghost a{
  background-color: transparent !important;
  color: var(--text) !important;
  border-color: var(--line);
}

.btn-ghost a:hover {
  border-color: var(--ink) !important;
  transform: translateY(-1px);
}

.btn-dark a{
  background: var(--ink);
  color: var(--text-d);
}

.btn-dark a:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px -12px rgba(0, 0, 0, 0.5);
}

.eyebrow p{
  font-family: var(--body, "Hanken Grotesk", sans-serif) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase;
  color:var(--teal,#00E6C3) !important;
	margin-bottom: 10px;
}

.features-title h1{
	font-size:clamp(32px,5vw,52px) !important;
	font-weight:800 !important;
	max-width:20ch !important;
	margin:14px auto 0 !important;
	color: var(--text, #0b0d10) !important;
}
h1{
	font-family:var(--disp);
}

.sec-head-h2 h1,
.sec-head-h2 h2{
	font-size: clamp(28px, 4vw, 42px);
    margin-top: 4px;
	color: var(--text) !important;
	max-width: 537px;
	text-align: center;
	font-weight: 700 !important;
	margin-inline: auto;
}

.sec-head-p p{
	color: var(--slate) !important;
    font-size: 17px;
    margin-top: 14px;
	text-align: center;
	max-width: 537px;
	margin-inline: auto;
	font-weight: 400 !important;
	font-family: var(--body) !important;
}

@media (max-width: 560px) {
	.sec-head-h2 h1,
  .sec-head-h2 h2{
    font-size: clamp(24px, 8vw, 36px);
  }
}

 .mag-lens {
	 position: fixed;
	 width: 190px;
	 height: 190px;
	 border-radius: 50%;
	 border: 2.5px solid var(--teal, #00E6C3);
	 box-shadow: 0 0 0 1px rgba(0, 230, 195, .25), 0 16px 48px rgba(0, 0, 0, .55);
	 pointer-events: none;
	 display: none;
	 z-index: 9999;
	 overflow: hidden;
	 transform: translate(-50%, -50%);
	 cursor: none;
	 background-repeat: no-repeat;
}

@media(max-width:768px) {
	.mag-lens {
		display: none !important
	}
}

/* Header */
header>div{
	width: 100% !important;
} 

.navbar{
	max-width: 1160px !important;
	width: 100% !important;
}

.navbar>.e-con-inner>div{
	    min-width: unset !important;
    max-width: unset !important;
    width: fit-content !important;
    text-wrap: nowrap !important;
}

.navbar-logo,
.navbar-logo a,
.navbar-logo a img{
	min-width: 101px !important;
}

.nav-cta-btn .elementor-button{
    display: inline-flex;
    align-items: center;
    font-family: var(--disp) !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    background: var(--teal,#00E6C3) !important;
    color: #04120E;
    padding: 9px 18px;
    border-radius: 9px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: background .15s,transform .15s;
	line-height:1.55 !important;
}
.nav-cta-btn-secondary .elementor-button{
    font-size: 14px !important;
    font-weight: 500;
    color: var(--slate);
    text-decoration: none;
    padding: 6px 10px;
    transition: color .15s;
	background: #f7f8fa !important;
	margin-right:10px;
	align-items: center;
    justify-content: center;
    display: flex;
	height: 100%;
	line-height:1.55 !important;
	background: transparent !important;
}
.nav-links nav ul li a{
	font-size: 14.5px !important;
    font-weight: 500 !important;
    color: var(--slate, #465064) !important;
    padding: 6px 12px !important;
    border-radius: 8px;
    transition: color .15s, background .15s !important;
    text-decoration: none;
    white-space: nowrap !important;
	margin: 0 !important;
}

.nav-links nav ul{
	gap: 4px;
}

.nav-links nav ul::after{
	display: none;
}

header {
    position: sticky !important;
	height:65px;
    top: 0;
    z-index: 100 !important;
    background: rgba(247,248,250,.92);
    backdrop-filter: saturate(180%) blur(14px);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    border-bottom: 1px solid var(--line,#E7E9ED);
	display: flex;
    justify-content: center;
    align-items: center;
}

.nav-links ul li:nth-last-child(1),
.nav-links ul li:nth-last-child(2){
	display: none;
}

.nav-links nav ul li.current-menu-item a{
	color: var(--ink) !important;
}

.elementor-menu-toggle{
	padding: 8px !important;
}

.elementor-menu-toggle span{
	height: fit-content;
    display: flex !important;
}

.elementor-menu-toggle__icon--close{
	display: none !important;
}

.elementor-menu-toggle.elementor-active svg{
	overflow: unset;
}

.elementor-menu-toggle svg rect{
	transition: transform .2s, opacity .2s;
}

.elementor-menu-toggle.elementor-active svg rect:nth-child(1) {
    transform: translate(4px, 0px) rotate(45deg);
}

.elementor-menu-toggle.elementor-active svg rect:nth-child(2) {
    opacity: 0;
}

.elementor-menu-toggle.elementor-active svg rect:nth-child(3) {
    transform: translate(-7px, 6px) rotate(-45deg);
}

.elementor-nav-menu--toggle .elementor-menu-toggle:not(.elementor-active)+.elementor-nav-menu__container{
	display: none;
}

@media(min-width:767.98px) {
	.nav-links nav ul li a:hover{
		color: var(--ink) !important;
    	background: rgba(0,0,0,.05) !important;
	}
}

@media(max-width:767.98px) {
	.nav-cta-btn-secondary,
	.nav-cta-btn {
		display: none !important
	}
	
	.nav-links{
		padding: 0 !important;
	}
	
	.elementor-menu-toggle{
		background: transparent !important;
	}
	
	.nav-links ul li:nth-last-child(1), .nav-links ul li:nth-last-child(2){
		display: block;
	}
	
	.elementor-nav-menu--dropdown{
		padding: 20px 24px 28px;
		border-bottom: 1px solid var(--line);
		box-shadow: 0 20px 40px -10px rgba(0, 0, 0, .12);
		margin-top: 16px !important;
	}
	
	.elementor-nav-menu{
		display: flex !important;
		flex-direction: column;
	}
	
	.nav-links nav ul li a{
		font-size: 16px !important;
		color: var(--ink) !important;
		padding: 12px 0 !important;
		border: none;
		background: none !important;
		cursor: pointer;
		font-family: var(--body) !important;
		text-decoration: none;
		text-align: left;
		border-bottom: 1px solid var(--line);
		border-radius: 0 !important;
	}
	
	.nav-links ul li:nth-last-child(1) a{
		margin-top: 12px !important;
		justify-content: center;
		width: 100%;
		font-size: 15px !important;
		padding: 13px !important;
		border-bottom: 0;
	}
}

@media (max-width: 480px) {
    .navbar {
        padding: 0 16px !important;
    }
}

/* Footer */
.footer .foot-bot .elementor-widget-heading{
	display: flex;
	width: fit-content;
}

.footer-logo{
	min-height: 31px !important;
}

.footer .foot-col{
	width: fit-content !important;
}

.footer-info .elementor-widget-heading{
	display: flex !important;
}

@media(prefers-reduced-motion:reduce) {
	* {
		scroll-behavior: auto !important
	}

	.reveal {
		opacity: 1;
		transform: none;
		transition: none
	}

	.btn,
	.plan,
	.value {
		transition: none
	}
}