:root{
	--forest:#052E16;
	--forest-2:#064E3B;
	--green:#22C55E;
	--mint:#BBF7D0;
	--lime:#D9F99D;
	--white:#fff;
	--ink:#EAFCEE;
	--muted:#B8D8C1;
	--dark:#021C12;
	--glass:rgba(255,255,255,.08);
	--line:rgba(217,249,157,.22);
	--shadow:0 24px 80px rgba(2,28,18,.35);
	--radius:26px
}
 *{
	box-sizing:border-box
}
html{
	scroll-behavior:smooth
}
body{
	margin:0;
	font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
	color:var(--ink);
	background:radial-gradient(circle at 12% 8%,rgba(34,197,94,.32),transparent 28rem),radial-gradient(circle at 85% 16%,rgba(217,249,157,.28),transparent 24rem),linear-gradient(135deg,#052E16 0%,#063F24 38%,#0A2516 100%);
	overflow-x:hidden
}
 body:before{
	content:"";
	position:fixed;
	inset:0;
	pointer-events:none;
	opacity:.13;
	z-index:-1;
	background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
	background-size:64px 64px
}
 img{
	max-width:100%;
	height:auto;
	display:block
}
a{
	color:inherit;
	text-decoration:none
}
p{
	line-height:1.7;
	color:var(--muted)
}
.container{
	width:min(1180px,calc(100% - 32px));
	margin:0 auto
}
.skip-link{
	position:absolute;
	left:-999px;
	top:12px;
	background:#fff;
	color:#052E16;
	padding:12px 16px;
	border-radius:12px;
	z-index:100
}
.skip-link:focus{
	left:12px
}
 .header{
	position:sticky;
	top:0;
	z-index:50;
	background:rgba(2,28,18,.78);
	backdrop-filter:blur(20px);
	border-bottom:1px solid rgba(217,249,157,.16)
}
.nav{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:18px;
	padding:16px 0
}
.logo img{
	width:164px;
	height:auto
}
.nav-links{
	display:flex;
	align-items:center;
	gap:22px
}
.nav-links a{
	font-size:15px;
	color:#DDFBE5;
	opacity:.86
}
.nav-links a:hover,.nav-links a.active{
	opacity:1;
	color:var(--lime)
}
.nav-cta{
	display:flex;
	align-items:center;
	gap:12px
}
.phone-pill{
	padding:10px 14px;
	border:1px solid rgba(217,249,157,.28);
	border-radius:999px;
	background:rgba(255,255,255,.06);
	font-size:14px;
	color:#E9FFE9
}
.burger{
	display:none;
	width:46px;
	height:46px;
	border:1px solid rgba(217,249,157,.25);
	border-radius:14px;
	background:rgba(255,255,255,.06);
	color:#fff
}
.burger span{
	display:block;
	width:22px;
	height:2px;
	background:currentColor;
	margin:5px auto;
	border-radius:4px;
	transition:.25s
}
.burger.active span:nth-child(1){
	transform:translateY(7px) rotate(45deg)
}
.burger.active span:nth-child(2){
	opacity:0
}
.burger.active span:nth-child(3){
	transform:translateY(-7px) rotate(-45deg)
}
 .btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	padding:14px 20px;
	border-radius:16px;
	border:1px solid transparent;
	font-weight:800;
	letter-spacing:.1px;
	transition:.22s ease;
	cursor:pointer
}
.btn-primary{
	background:linear-gradient(135deg,#22C55E 0%,#D9F99D 100%);
	color:#052E16;
	box-shadow:0 16px 44px rgba(34,197,94,.25)
}
.btn-primary:hover{
	transform:translateY(-2px);
	box-shadow:0 20px 54px rgba(34,197,94,.36)
}
.btn-ghost{
	border-color:rgba(217,249,157,.28);
	background:rgba(255,255,255,.06);
	color:#ECFDF5
}
.btn-ghost:hover{
	background:rgba(255,255,255,.11);
	transform:translateY(-2px)
}
 .section{
	padding:86px 0
}
.section-tight{
	padding:58px 0
}
.hero{
	position:relative;
	overflow:hidden;
	padding:72px 0 88px
}
.hero:after{
	content:"";
	position:absolute;
	inset:auto -15% -28% -15%;
	height:340px;
	background:radial-gradient(ellipse,rgba(217,249,157,.16),transparent 65%);
	pointer-events:none
}
.hero-grid{
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(360px,.96fr);
	gap:46px;
	align-items:center
}
.kicker{
	display:inline-flex;
	align-items:center;
	gap:10px;
	margin:0 0 16px;
	padding:9px 13px;
	border:1px solid rgba(217,249,157,.25);
	border-radius:999px;
	background:rgba(255,255,255,.07);
	color:#D9F99D;
	font-weight:800;
	font-size:14px
}
.kicker:before{
	content:"";
	width:9px;
	height:9px;
	border-radius:50%;
	background:#22C55E;
	box-shadow:0 0 18px #22C55E
}
h1,h2,h3{
	color:#fff;
	line-height:1.06;
	margin:0
}
h1{
	font-size:clamp(42px,6vw,50px);
	letter-spacing:-2.4px
}
h2{
	font-size:clamp(31px,4vw,52px);
	letter-spacing:-1.5px
}
h3{
	font-size:clamp(20px,2.1vw,28px)
}
.lead{
	font-size:clamp(18px,2vw,18px);
	max-width:710px;
	color:#D7FBE1
}
.gradient-text{
	background:linear-gradient(90deg,#fff,#D9F99D,#22C55E);
	-webkit-background-clip:text;
	background-clip:text;
	color:transparent
}
.hero-actions{
	display:flex;
	flex-wrap:wrap;
	gap:14px;
	margin-top:30px
}
.trust-row{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:14px;
	margin-top:32px
}
.trust-item{
	padding:16px;
	border-radius:18px;
	background:rgba(255,255,255,.07);
	border:1px solid rgba(217,249,157,.16)
}
.trust-item strong{
	display:block;
	font-size:24px;
	color:#D9F99D
}
.trust-item span{
	font-size:13px;
	color:#B8D8C1
}
.hero-media{
	position:relative
}
.hero-media img{
	border-radius:32px;
	box-shadow:var(--shadow);
	border:1px solid rgba(217,249,157,.24)
}
.float-card{
	position:absolute;
	left:-24px;
	bottom:22px;
	max-width:280px;
	padding:18px;
	border-radius:22px;
	background:rgba(2,28,18,.84);
	border:1px solid rgba(217,249,157,.22);
	backdrop-filter:blur(16px);
	box-shadow:var(--shadow)
}
.float-card strong{
	display:block;
	color:#D9F99D;
	font-size:21px
}
.float-card span{
	font-size:14px;
	color:#D7FBE1
}
 .grid-2{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:26px
}
.grid-3{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:24px
}
.grid-4{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:20px
}
.card{
	background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.055));
	border:1px solid rgba(217,249,157,.18);
	border-radius:var(--radius);
	padding:28px;
	box-shadow:0 18px 50px rgba(2,28,18,.16)
}
.card:hover{
	border-color:rgba(217,249,157,.36)
}
.icon{
	width:54px;
	height:54px;
	border-radius:18px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:linear-gradient(135deg,rgba(34,197,94,.22),rgba(217,249,157,.2));
	color:#D9F99D;
	font-size:25px;
	margin-bottom:18px
}
.section-head{
	display:flex;
	align-items:end;
	justify-content:space-between;
	gap:28px;
	margin-bottom:34px
}
.section-head p{
	max-width:640px;
	margin:12px 0 0
}
.eyebrow{
	color:#D9F99D;
	font-weight:900;
	text-transform:uppercase;
	letter-spacing:.14em;
	font-size:12px;
	margin-bottom:10px
}
.problem{
	background:linear-gradient(90deg,rgba(6,78,59,.55),rgba(34,197,94,.10));
	border-top:1px solid rgba(217,249,157,.12);
	border-bottom:1px solid rgba(217,249,157,.12)
}
.steps{
	counter-reset:step
}
.step{
	position:relative;
	padding-left:84px
}
.step:before{
	counter-increment:step;
	content:counter(step,decimal-leading-zero);
	position:absolute;
	left:0;
	top:28px;
	width:58px;
	height:58px;
	border-radius:18px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:linear-gradient(135deg,#22C55E,#D9F99D);
	color:#052E16;
	font-weight:900
}
 .spotlight{
	display:grid;
	grid-template-columns:.92fr 1.08fr;
	gap:30px;
	align-items:center;
	padding:34px;
	border-radius:34px;
	background:linear-gradient(135deg,rgba(217,249,157,.16),rgba(34,197,94,.11));
	border:1px solid rgba(217,249,157,.22)
}
.spotlight-list{
	display:grid;
	gap:14px;
	margin:22px 0
}
.check{
	display:flex;
	gap:12px;
	align-items:flex-start;
	color:#DDFBE5
}
.check:before{
	content:"✓";
	flex:0 0 26px;
	width:26px;
	height:26px;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#D9F99D;
	color:#052E16;
	font-weight:900
}
.car-card{
	padding:0;
	overflow:hidden
}
.car-card img{
	width:100%;
	aspect-ratio:1.8/1;
	object-fit:cover
}
.car-card-body{
	padding:22px
}
.tags{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin:14px 0
}
.tag{
	font-size:12px;
	font-weight:800;
	border-radius:999px;
	padding:7px 10px;
	background:rgba(217,249,157,.13);
	color:#D9F99D;
	border:1px solid rgba(217,249,157,.17)
}
.price{
	display:flex;
	align-items:end;
	gap:6px;
	margin-top:16px;
	color:#fff
}
.price strong{
	font-size:30px;
	color:#D9F99D
}
.price span{
	color:#B8D8C1
}
.metrics{
	background:#ECFDF5;
	color:#052E16
}
.metrics h2,.metrics h3{
	color:#052E16
}
.metrics p{
	color:#315D42
}
.metrics .card{
	background:#fff;
	border-color:#D9F99D
}
.metric-value{
	font-size:clamp(38px,5vw,58px);
	font-weight:950;
	letter-spacing:-2px;
	color:#16A34A
}
.benefit-band{
	background:linear-gradient(135deg,#052E16,#064E3B 48%,#22C55E);
	border-radius:36px;
	padding:46px;
	border:1px solid rgba(217,249,157,.22);
	overflow:hidden;
	position:relative
}
.benefit-band:after{
	content:"";
	position:absolute;
	right:-60px;
	top:-80px;
	width:260px;
	height:260px;
	border-radius:50%;
	background:rgba(217,249,157,.18)
}
 .prose{
	max-width:980px;
	margin:0 auto
}
.prose p{
	margin:0 0 18px
}
.prose h3{
	margin:34px 0 12px
}
.form-wrap{
	display:grid;
	grid-template-columns:1.05fr .95fr;
	gap:34px;
	align-items:start
}
.form{
	background:rgba(255,255,255,.10);
	border:1px solid rgba(217,249,157,.20);
	border-radius:30px;
	padding:28px;
	box-shadow:var(--shadow)
}
.form-grid{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:16px
}
.field{
	display:flex;
	flex-direction:column;
	gap:8px
}
.field.full{
	grid-column:1/-1
}
label{
	font-weight:800;
	color:#ECFDF5;
	font-size:14px
}
input,select,textarea{
	width:100%;
	border:1px solid rgba(217,249,157,.22);
	border-radius:16px;
	background:rgba(2,28,18,.55);
	padding:14px 15px;
	color:#fff;
	font:inherit;
	outline:none
}
select option{
	background:#052E16;
	color:#fff
}
input:focus,select:focus,textarea:focus{
	border-color:#D9F99D;
	box-shadow:0 0 0 4px rgba(217,249,157,.12)
}
.fineprint{
	font-size:12px;
	color:#B8D8C1;
	margin:14px 0 0
}
.contact-card{
	display:grid;
	gap:16px
}
.contact-row{
	display:flex;
	gap:14px;
	align-items:flex-start;
	padding:18px;
	border:1px solid rgba(217,249,157,.16);
	border-radius:20px;
	background:rgba(255,255,255,.06)
}
.contact-row b{
	display:block;
	color:#fff
}
.contact-row span,.contact-row a{
	color:#CDEFD4
}
.map-card img{
	border-radius:28px;
	border:1px solid rgba(217,249,157,.22)
}
 .footer{
	padding:54px 0 30px;
	background:#021C12;
	border-top:1px solid rgba(217,249,157,.14)
}
.footer-grid{
	display:grid;
	grid-template-columns:1.5fr repeat(3,1fr);
	gap:28px
}
.footer a{
	color:#B8D8C1;
	display:block;
	margin:10px 0
}
.footer a:hover{
	color:#D9F99D
}
.legal-row{
	display:flex;
	justify-content:space-between;
	gap:20px;
	border-top:1px solid rgba(217,249,157,.12);
	margin-top:34px;
	padding-top:22px;
	color:#8fb89b;
	font-size:13px
}
 .cookie-banner{
	position:fixed;
	z-index:80;
	left:18px;
	right:18px;
	bottom:18px;
	display:none;
	align-items:center;
	justify-content:space-between;
	gap:18px;
	max-width:1120px;
	margin:0 auto;
	padding:18px;
	border-radius:24px;
	background:rgba(2,28,18,.94);
	border:1px solid rgba(217,249,157,.24);
	box-shadow:var(--shadow);
	backdrop-filter:blur(18px)
}
.cookie-banner.show{
	display:flex;
	animation:slideUp .45s ease both
}
.cookie-actions{
	display:flex;
	gap:10px;
	flex-shrink:0
}
.alert-overlay{
	position:fixed;
	inset:0;
	background:rgba(2,28,18,.68);
	z-index:90;
	display:none;
	align-items:center;
	justify-content:center;
	padding:18px
}
.alert-overlay.show{
	display:flex
}
.alert-box{
	width:min(520px,100%);
	border-radius:30px;
	background:#ECFDF5;
	color:#052E16;
	padding:34px;
	text-align:center;
	box-shadow:0 30px 90px rgba(0,0,0,.35);
	transform:scale(.86) translateY(20px);
	opacity:0;
	animation:popIn .38s ease forwards
}
.alert-check{
	width:82px;
	height:82px;
	border-radius:50%;
	margin:0 auto 18px;
	background:linear-gradient(135deg,#22C55E,#D9F99D);
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:44px;
	color:#052E16
}
.alert-box h3{
	color:#052E16
}
.alert-box p{
	color:#315D42
}
.faq{
	display:grid;
	gap:14px
}
.faq details{
	background:rgba(255,255,255,.08);
	border:1px solid rgba(217,249,157,.16);
	border-radius:20px;
	padding:18px
}
.faq summary{
	font-weight:900;
	cursor:pointer;
	color:#fff
}
.faq p{
	margin-bottom:0
}
.table-like{
	display:grid;
	gap:12px
}
.table-row{
	display:grid;
	grid-template-columns:1.2fr 1fr 1fr;
	gap:14px;
	align-items:center;
	padding:16px;
	border-radius:18px;
	background:rgba(255,255,255,.07);
	border:1px solid rgba(217,249,157,.12)
}
.table-row.header-row{
	background:#D9F99D;
	color:#052E16;
	font-weight:900
}
.content-page .hero{
	padding-bottom:46px
}
.breadcrumbs{
	font-size:14px;
	color:#B8D8C1;
	margin-bottom:18px
}
.breadcrumbs a{
	color:#D9F99D
}
.team-grid img{
	border-radius:28px;
	border:1px solid rgba(217,249,157,.22)
}
 @keyframes slideUp{
	from{
		transform:translateY(25px);
		opacity:0
	}
	to{
		transform:translateY(0);
		opacity:1
	}
}
@keyframes popIn{
	to{
		transform:scale(1) translateY(0);
		opacity:1
	}
}
 @media (max-width:960px){
	.hero-grid,.spotlight,.form-wrap,.grid-2{
		grid-template-columns:1fr
	}
	.grid-3{
		grid-template-columns:repeat(2,1fr)
	}
	.grid-4{
		grid-template-columns:repeat(2,1fr)
	}
	.section-head{
		display:block
	}
	.footer-grid{
		grid-template-columns:1fr 1fr
	}
}
 @media (max-width:760px){
	.nav-links,.nav-cta .phone-pill,.nav-cta .btn{
		display:none
	}
	.burger{
		display:block
	}
	.nav-links{
		position:absolute;
		left:16px;
		right:16px;
		top:72px;
		display:none;
		flex-direction:column;
		align-items:stretch;
		gap:0;
		padding:14px;
		border-radius:22px;
		background:rgba(2,28,18,.97);
		border:1px solid rgba(217,249,157,.18);
		box-shadow:var(--shadow)
	}
	.nav-links.open{
		display:flex
	}
	.nav-links a{
		padding:14px;
		border-radius:14px
	}
	.hero{
		padding-top:46px
	}
	.hero-grid{
		gap:28px
	}
	.trust-row,.grid-3,.grid-4,.form-grid{
		grid-template-columns:1fr
	}
	.field.full{
		grid-column:auto
	}
	.float-card{
		position:relative;
		left:auto;
		bottom:auto;
		margin-top:14px;
		max-width:none
	}
	.table-row{
		grid-template-columns:1fr
	}
	.cookie-banner{
		display:none;
		flex-direction:column;
		align-items:flex-start
	}
	.cookie-banner.show{
		display:flex
	}
	.cookie-actions{
		width:100%;
		display:grid;
		grid-template-columns:1fr 1fr
	}
	.footer-grid{
		grid-template-columns:1fr
	}
	.legal-row{
		flex-direction:column
	}
	h1{
		letter-spacing:-1.4px
	}
}
/* Homepage hero refresh */
 .hero-copy h1{
	font-size:clamp(36px,4.4vw,56px);
	max-width:700px;
	line-height:1.02
}
 .hero-copy .lead{
	font-size:17px;
	max-width:700px
}
 .hero-grid{
	grid-template-columns:1.05fr .95fr;
	align-items:center
}
 .hero-media-home img{
	width:100%;
	max-height:500px;
	object-fit:cover;
	border-radius:34px
}
 .hero-people{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:14px;
	margin-top:18px
}
 .person-chip{
	display:grid;
	grid-template-columns:78px 1fr;
	gap:12px;
	align-items:center;
	padding:12px 14px;
	border-radius:22px;
	background:rgba(255,255,255,.08);
	border:1px solid rgba(217,249,157,.16);
	box-shadow:0 12px 35px rgba(2,28,18,.12)
}
 .person-chip img{
	width:78px;
	height:78px;
	border-radius:18px;
	object-fit:cover;
	border:1px solid rgba(217,249,157,.2)
}
 .person-chip strong{
	display:block;
	color:#fff;
	font-size:15px;
	margin-bottom:4px
}
 .person-chip span{
	display:block;
	font-size:13px;
	line-height:1.45;
	color:#CDEFD4
}
 .team-grid img{
	width:100%;
	aspect-ratio:4/5;
	object-fit:cover;
	border-radius:28px;
	border:1px solid rgba(217,249,157,.22)
}
 @media (max-width:960px){
	.hero-copy h1{
		font-size:clamp(32px,7vw,44px)
	}
	.hero-media-home img{
		max-height:420px
	}
	.hero-people{
		grid-template-columns:1fr 1fr
	}
}
 @media (max-width:760px){
	.hero-people{
		grid-template-columns:1fr
	}
	.person-chip{
		grid-template-columns:64px 1fr
	}
	.person-chip img{
		width:64px;
		height:64px
	}
	.hero-copy .lead{
		font-size:16px
	}
}
 
/* PNG logo fix — header */
.header .logo {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  width: auto;
  height: 44px;
}

.header .logo img {
  display: block;
  width: auto;
  height: 44px;
  max-width: 150px;
  object-fit: contain;
}

/* PNG logo fix — footer */
.footer img[src*="logo"] {
  display: block;
  width: auto;
  height: 46px;
  max-width: 155px;
  object-fit: contain;
  margin-bottom: 16px;
}

/* Mobile */
@media (max-width: 760px) {
  .header .logo {
    height: 38px;
  }

  .header .logo img {
    height: 38px;
    max-width: 130px;
  }

  .footer img[src*="logo"] {
    height: 40px;
    max-width: 135px;
  }

  .hero-grid {
    display: flex;
    flex-direction: column;
  }
}

/* FINAL footer icon/logo fix */
.footer .footer-grid > div:first-child > img {
  width: 54px !important;
  height: 54px !important;
  max-width: 54px !important;
  max-height: 54px !important;
  min-width: 54px !important;
  min-height: 54px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 0 18px 0 !important;
  border-radius: 14px !important;
}