 :root{
	 --plum:#2D102C;
	 --burgundy:#7F1D1D;
	 --champagne:#F7E7CE;
	 --graphite:#2F343B;
	 --ink:#0B101A;
	 --ink-2:#121827;
	 --muted:#CBBFCC;
	 --text:#FFF8F0;
	 --line:rgba(247,231,206,.18);
	 --glass:rgba(255,255,255,.075);
	 --glass-strong:rgba(255,255,255,.115);
	 --shadow:0 28px 70px rgba(0,0,0,.32);
	 --radius:24px;
	 --gradient:linear-gradient(120deg,#2D102C 0%,#7F1D1D 40%,#F7E7CE 72%,#2F343B 100%);
	 --surface:linear-gradient(135deg,rgba(45,16,44,.88),rgba(127,29,29,.42),rgba(47,52,59,.75));
}
 *{
	box-sizing:border-box
}
 html{
	scroll-behavior:smooth
}
 body{
	margin:0;
	font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	background:#0B101A;
	color:var(--text);
	line-height:1.65;
	text-rendering:optimizeLegibility
}
 a{
	color:inherit;
	text-decoration:none
}
 img{
	display:block;
	max-width:100%;
	height:auto
}
 .container{
	width:min(1180px,calc(100% - 40px));
	margin-inline:auto
}
 .section{
	padding:96px 0;
	position:relative;
	overflow:hidden
}
 .section.compact{
	padding:70px 0
}
 .section.dark{
	background:linear-gradient(180deg,#101522,#0B101A)
}
 .section.plum{
	background:radial-gradient(circle at 10% 20%,rgba(127,29,29,.42),transparent 35%),linear-gradient(120deg,#1A1230,#2D102C 48%,#121827)
}
 .section.velvet{
	background:radial-gradient(circle at 80% 25%,rgba(247,231,206,.16),transparent 25%),linear-gradient(135deg,#2D102C 0%,#7F1D1D 54%,#171E2A 100%)
}
 .section.champagne{
	background:linear-gradient(145deg,rgba(247,231,206,.12),rgba(127,29,29,.16)),#111827
}
 .eyebrow{
	display:inline-flex;
	align-items:center;
	gap:.5rem;
	color:var(--champagne);
	background:rgba(247,231,206,.10);
	border:1px solid var(--line);
	border-radius:999px;
	padding:.45rem .8rem;
	font-size:.8rem;
	font-weight:800;
	letter-spacing:.08em;
	text-transform:uppercase
}
 h1,h2,h3,h4{
	line-height:1.05;
	margin:0 0 18px;
	color:#fff;
	letter-spacing:-.04em
}
 h1{
	font-size:clamp(2.7rem,6.5vw,4.15rem);
	max-width:980px
}
 h2{
	font-size:clamp(2rem,4.6vw,3.9rem);
	max-width:880px
}
 h3{
	font-size:clamp(1.3rem,2.2vw,2rem);
	letter-spacing:-.025em
}
 p{
	margin:0 0 18px;
	color:var(--muted)
}
 .lead{
	font-size:clamp(1.05rem,1.6vw,.34rem);
	max-width:820px;
	color:#EFE3DB
}
 .small{
	font-size:.94rem;
	color:#B9B0BD
}
.tiny{
	font-size:.8rem;
	color:#A79DAC
}
 .center{
	text-align:center
}
.center .lead,.center h2{
	margin-left:auto;
	margin-right:auto
}
.grid{
	display:grid;
	gap:26px
}
.grid-2{
	grid-template-columns:repeat(2,minmax(0,1fr))
}
.grid-3{
	grid-template-columns:repeat(3,minmax(0,1fr))
}
.grid-4{
	grid-template-columns:repeat(4,minmax(0,1fr))
}
 .card{
	background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045));
	border:1px solid var(--line);
	border-radius:var(--radius);
	box-shadow:var(--shadow);
	backdrop-filter:blur(18px);
	padding:30px;
	position:relative;
	overflow:hidden
}
 .card::before{
	content:"";
	position:absolute;
	inset:0;
	background:radial-gradient(circle at 85% 5%,rgba(247,231,206,.18),transparent 30%);
	pointer-events:none
}
 .card > *{
	position:relative
}
.soft-card{
	background:rgba(11,16,26,.72);
	border:1px solid var(--line);
	border-radius:24px;
	padding:28px
}
.highlight{
	color:var(--champagne)
}
 .btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:.65rem;
	border:1px solid transparent;
	border-radius:999px;
	padding:.92rem 1.26rem;
	font-weight:900;
	line-height:1;
	transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease;
	cursor:pointer;
	min-height:48px
}
 .btn:hover,.btn:focus{
	transform:translateY(-2px);
	box-shadow:0 18px 45px rgba(0,0,0,.26)
}
 .btn.primary{
	background:linear-gradient(135deg,#F7E7CE,#B98A77 45%,#7F1D1D);
	color:#1D1018
}
.btn.secondary{
	border-color:var(--line);
	background:rgba(255,255,255,.055);
	color:#fff
}
.btn.ghost{
	color:var(--champagne);
	border-color:rgba(247,231,206,.22);
	background:rgba(247,231,206,.06)
}
 .icon{
	width:48px;
	height:48px;
	border-radius:16px;
	display:grid;
	place-items:center;
	background:linear-gradient(135deg,rgba(247,231,206,.9),rgba(127,29,29,.75));
	color:#180E19;
	font-weight:900;
	box-shadow:0 12px 28px rgba(0,0,0,.22)
}
 .site-header{
	position:sticky;
	top:0;
	z-index:1000;
	background:rgba(11,16,26,.72);
	backdrop-filter:blur(20px);
	border-bottom:1px solid rgba(247,231,206,.13)
}
 .navbar{
	height:82px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:24px
}
.brand{
	display:flex;
	align-items:center;
	gap:.76rem;
	font-weight:950;
	letter-spacing:-.03em
}
.brand img{
	width:40px;
	height:40px;
	border-radius:12px
}
.brand small{
	display:block;
	color:#B7ADBC;
	font-weight:700;
	letter-spacing:.05em;
	text-transform:uppercase;
	font-size:.67rem;
	margin-top:-4px
}
.nav-links{
	display:flex;
	align-items:center;
	gap:4px
}
.nav-links a{
	padding:.72rem .9rem;
	border-radius:999px;
	color:#EAE0E8;
	font-weight:750;
	font-size:.95rem
}
.nav-links a:hover,.nav-links a.active{
	background:rgba(247,231,206,.105);
	color:#fff
}
.nav-cta{
	display:flex;
	align-items:center;
	gap:12px
}
.burger{
	display:none;
	width:48px;
	height:48px;
	border-radius:16px;
	border:1px solid var(--line);
	background:rgba(255,255,255,.06);
	color:#fff;
	cursor:pointer
}
.burger span{
	display:block;
	width:22px;
	height:2px;
	background:#fff;
	margin:5px auto;
	border-radius:999px;
	transition:.22s ease
}
 .hero{
	min-height:calc(100vh - 82px);
	display:flex;
	align-items:center;
	background:radial-gradient(circle at 76% 20%,rgba(247,231,206,.17),transparent 26%),radial-gradient(circle at 16% 85%,rgba(127,29,29,.42),transparent 31%),linear-gradient(128deg,#0B101A 0%,#2D102C 42%,#7F1D1D 70%,#2F343B 100%);
	padding:84px 0 96px;
	position:relative;
	overflow:hidden
}
.hero::after{
	content:"";
	position:absolute;
	inset:auto -10% -35% -10%;
	height:56%;
	background:radial-gradient(ellipse at center,rgba(247,231,206,.14),transparent 56%);
	pointer-events:none
}
.hero-grid{
	display:grid;
	grid-template-columns:1.05fr .95fr;
	align-items:center;
	gap:54px;
	position:relative;
	z-index:1
}
.hero-media{
	position:relative
}
.hero-media img{
	border-radius:34px;
	box-shadow:0 36px 90px rgba(0,0,0,.38);
	border:1px solid rgba(247,231,206,.18)
}
.floating-badge{
	position:absolute;
	left:-20px;
	bottom:-24px;
	background:linear-gradient(135deg,#2D102C,#7F1D1D);
	border:1px solid rgba(247,231,206,.26);
	border-radius:22px;
	padding:18px 20px;
	box-shadow:var(--shadow)
}
.floating-badge strong{
	display:block;
	font-size:1.9rem;
	color:var(--champagne);
	line-height:1
}
.hero-actions{
	display:flex;
	gap:14px;
	flex-wrap:wrap;
	margin:32px 0
}
.trust-row{
	display:flex;
	gap:12px;
	flex-wrap:wrap;
	margin-top:26px
}
.trust-pill{
	padding:.64rem .84rem;
	border:1px solid rgba(247,231,206,.18);
	border-radius:999px;
	background:rgba(255,255,255,.065);
	font-weight:800;
	color:#EFE5DB;
	font-size:.9rem
}
.split{
	display:grid;
	grid-template-columns:.9fr 1.1fr;
	gap:52px;
	align-items:center
}
.image-frame{
	position:relative
}
.image-frame img{
	border-radius:32px;
	border:1px solid var(--line);
	box-shadow:var(--shadow)
}
.image-frame::before{
	content:"";
	position:absolute;
	inset:-14px;
	z-index:-1;
	border-radius:38px;
	background:var(--gradient);
	opacity:.48;
	filter:blur(6px)
}
 .check-list{
	display:grid;
	gap:18px;
	margin:26px 0
}
.check-item{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:14px;
	align-items:start
}
.check{
	width:28px;
	height:28px;
	border-radius:999px;
	display:grid;
	place-items:center;
	background:linear-gradient(135deg,#F7E7CE,#7F1D1D);
	color:#1B1020;
	font-size:.88rem;
	font-weight:950;
	flex:none
}
.feature-list{
	padding:0;
	margin:18px 0 0;
	list-style:none;
	display:grid;
	gap:10px
}
.feature-list li{
	color:#D7CBD4;
	display:grid;
	grid-template-columns:auto 1fr;
	gap:10px
}
.feature-list li::before{
	content:"";
	width:7px;
	height:7px;
	border-radius:50%;
	background:var(--champagne);
	margin-top:.66rem;
	box-shadow:0 0 0 5px rgba(247,231,206,.08)
}
.stat{
	font-size:clamp(2.2rem,5vw,4.4rem);
	font-weight:950;
	letter-spacing:-.07em;
	color:var(--champagne);
	line-height:1
}
.stats-grid{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:22px;
	margin-top:42px
}
.stat-card{
	text-align:center;
	padding:30px 18px;
	background:rgba(255,255,255,.06);
	border:1px solid var(--line);
	border-radius:22px
}
.testimonial{
	border-left:4px solid var(--champagne);
	padding-left:22px
}
.fleet-card{
	display:flex;
	flex-direction:column;
	gap:18px
}
.fleet-card img{
	border-radius:22px;
	aspect-ratio:4/3;
	object-fit:cover;
	border:1px solid var(--line)
}
.fleet-meta{
	display:flex;
	flex-wrap:wrap;
	gap:8px
}
.tag{
	display:inline-flex;
	border-radius:999px;
	border:1px solid rgba(247,231,206,.18);
	padding:.36rem .62rem;
	font-size:.78rem;
	font-weight:800;
	color:#EFE4DB;
	background:rgba(247,231,206,.06)
}
.price{
	font-size:1.55rem;
	font-weight:950;
	color:var(--champagne)
}
 .table-wrap{
	overflow:auto;
	border:1px solid var(--line);
	border-radius:22px;
	background:rgba(255,255,255,.04)
}
table{
	width:100%;
	border-collapse:collapse;
	min-width:720px
}
th,td{
	text-align:left;
	padding:18px;
	border-bottom:1px solid rgba(247,231,206,.12);
	vertical-align:top
}
th{
	color:#fff;
	background:rgba(247,231,206,.07)
}
td{
	color:#D4CBD2
}
tr:last-child td{
	border-bottom:none
}
.form-card{
	background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.055));
	border:1px solid var(--line);
	border-radius:28px;
	padding:32px;
	box-shadow:var(--shadow)
}
form{
	display:grid;
	gap:16px
}
.form-row{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:16px
}
label{
	display:grid;
	gap:8px;
	font-weight:850;
	color:#fff;
	font-size:.92rem
}
input,select,textarea{
	width:100%;
	border:1px solid rgba(247,231,206,.18);
	border-radius:14px;
	background:rgba(11,16,26,.55);
	color:#fff;
	padding:14px 15px;
	font:inherit;
	outline:none;
	transition:border-color .2s ease,box-shadow .2s ease
}
input:focus,select:focus,textarea:focus{
	border-color:rgba(247,231,206,.72);
	box-shadow:0 0 0 4px rgba(247,231,206,.1)
}
textarea{
	min-height:128px;
	resize:vertical
}
::placeholder{
	color:#8F8793
}
.contact-grid{
	display:grid;
	grid-template-columns:1fr .86fr;
	gap:38px;
	align-items:start
}
.info-stack{
	display:grid;
	gap:18px
}
.info-box{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:14px;
	align-items:start
}
.map-image{
	border-radius:28px;
	border:1px solid var(--line);
	box-shadow:var(--shadow);
	aspect-ratio:16/10;
	object-fit:cover;
	width:100%
}
.footer{
	background:#080D17;
	border-top:1px solid rgba(247,231,206,.13);
	padding:70px 0 34px
}
.footer-grid{
	display:grid;
	grid-template-columns:1.3fr repeat(3,1fr);
	gap:42px
}
.footer a{
	color:#D1C6CF
}
.footer a:hover{
	color:#fff
}
.footer-title{
	font-weight:950;
	margin-bottom:16px;
	color:#fff
}
.footer-links{
	display:grid;
	gap:10px
}
.footer-bottom{
	border-top:1px solid rgba(247,231,206,.12);
	margin-top:48px;
	padding-top:28px;
	display:grid;
	grid-template-columns:1fr 1.2fr;
	gap:28px;
	color:#9F95A4;
	font-size:.88rem
}
.legal-content{
	max-width:920px;
	margin-inline:auto
}
.legal-content h2{
	font-size:2rem;
	margin-top:42px
}
.legal-content h3{
	font-size:1.35rem;
	margin-top:28px
}
.legal-content ul{
	color:#D1C7D0
}
.breadcrumb{
	display:flex;
	gap:8px;
	flex-wrap:wrap;
	color:#CABFD0;
	font-size:.9rem;
	margin-bottom:24px
}
.breadcrumb a{
	color:var(--champagne)
}
.page-hero{
	padding:86px 0 72px;
	background:radial-gradient(circle at 18% 50%,rgba(127,29,29,.35),transparent 32%),linear-gradient(120deg,#0B101A,#2D102C 54%,#2F343B);
	border-bottom:1px solid rgba(247,231,206,.12)
}
.page-hero h1{
	font-size:clamp(2.55rem,5.5vw,5.25rem)
}
.service-band{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:22px;
	margin-top:34px
}
.process{
	counter-reset:step;
	display:grid;
	gap:18px
}
.process .card{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:18px
}
.process .card::after{
	counter-increment:step;
	content:counter(step, decimal-leading-zero);
	font-weight:950;
	color:rgba(247,231,206,.35);
	font-size:2.4rem;
	position:absolute;
	right:24px;
	top:18px
}
.faq{
	display:grid;
	gap:14px
}
.faq details{
	background:rgba(255,255,255,.055);
	border:1px solid var(--line);
	border-radius:18px;
	padding:18px 20px
}
.faq summary{
	cursor:pointer;
	font-weight:900;
	color:#fff
}
.faq p{
	margin-top:12px
}
.cookie-banner{
	position:fixed;
	left:20px;
	right:20px;
	bottom:20px;
	z-index:1100;
	display:none
}
.cookie-banner.show{
	display:block
}
.cookie-inner{
	width:min(1040px,100%);
	margin:auto;
	background:rgba(10,14,24,.94);
	backdrop-filter:blur(18px);
	border:1px solid rgba(247,231,206,.22);
	border-radius:24px;
	box-shadow:0 24px 80px rgba(0,0,0,.44);
	padding:22px;
	display:grid;
	grid-template-columns:1fr auto;
	gap:20px;
	align-items:center
}
.cookie-actions{
	display:flex;
	gap:10px;
	flex-wrap:wrap
}
.alert-pop{
	position:fixed;
	right:24px;
	top:104px;
	z-index:1300;
	max-width:440px;
	background:linear-gradient(135deg,#2D102C,#7F1D1D);
	border:1px solid rgba(247,231,206,.32);
	border-radius:22px;
	box-shadow:0 24px 70px rgba(0,0,0,.38);
	padding:20px 22px;
	transform:translateY(-18px) scale(.98);
	opacity:0;
	animation:popIn .46s cubic-bezier(.2,.7,.2,1) forwards
}
.alert-pop strong{
	display:block;
	color:var(--champagne);
	font-size:1.05rem;
	margin-bottom:5px
}
.alert-pop p{
	margin:0;
	color:#F4EAE3
}
.alert-close{
	position:absolute;
	right:12px;
	top:10px;
	background:transparent;
	border:0;
	color:#fff;
	font-size:1.2rem;
	cursor:pointer
}
@keyframes popIn{
	to{
		transform:translateY(0) scale(1);
		opacity:1
	}
}
.sr-only{
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	white-space:nowrap;
	border:0
}
.skip-link{
	position:absolute;
	top:-40px;
	left:14px;
	background:#fff;
	color:#111;
	padding:8px 12px;
	border-radius:8px;
	z-index:2000
}
.skip-link:focus{
	top:14px
}
.notice{
	border:1px solid rgba(247,231,206,.2);
	background:rgba(247,231,206,.08);
	border-radius:18px;
	padding:18px;
	color:#E9DED7
}
 @media (max-width: 980px){
	.container{
		width:min(100% - 28px,1180px)
	}
	.nav-cta .btn{
		display:none
	}
	.burger{
		display:block
	}
	.nav-links{
		position:fixed;
		left:14px;
		right:14px;
		top:92px;
		display:grid;
		gap:8px;
		background:rgba(11,16,26,.97);
		border:1px solid var(--line);
		border-radius:24px;
		padding:16px;
		transform:translateY(-16px);
		opacity:0;
		pointer-events:none;
		transition:.24s ease;
		box-shadow:var(--shadow)
	}
	.nav-links.open{
		opacity:1;
		transform:translateY(0);
		pointer-events:auto
	}
	.nav-links a{
		padding:1rem
	}
	.hero-grid,.split,.contact-grid,.grid-2{
		grid-template-columns:1fr
	}
	.grid-3,.grid-4,.stats-grid,.service-band{
		grid-template-columns:repeat(2,minmax(0,1fr))
	}
	.footer-grid,.footer-bottom{
		grid-template-columns:1fr
	}
	.hero{
		min-height:auto
	}
	.hero-media{
		order:-1
	}
	.floating-badge{
		left:16px;
		bottom:16px
	}
	.cookie-inner{
		grid-template-columns:1fr
	}
	.section{
		padding:72px 0
	}
}
 @media (max-width: 620px){
	h1{
		font-size:2.7rem
	}
	.hero{
		padding-top:36px
	}
	.grid-3,.grid-4,.stats-grid,.service-band{
		grid-template-columns:1fr
	}
	.form-row{
		grid-template-columns:1fr
	}
	.hero-actions,.cookie-actions{
		flex-direction:column
	}
	.btn{
		width:100%
	}
	.card,.form-card{
		padding:22px
	}
	.navbar{
		height:74px
	}
	.brand small{
		display:none
	}
	.alert-pop{
		left:14px;
		right:14px;
		top:88px
	}
	.page-hero{
		padding:58px 0
	}
	.section{
		padding:58px 0
	}
	.footer{
		padding:50px 0 24px
	}
}
 @media (prefers-reduced-motion:reduce){
	*{
		scroll-behavior:auto!important;
		animation:none!important;
		transition:none!important
	}
}
/* Pinterest-style polish and motion enhancements */
 html.js .reveal{
	opacity:0;
	transform:translateY(30px) scale(.985);
	filter:blur(7px);
	transition:opacity .78s cubic-bezier(.2,.7,.2,1),transform .78s cubic-bezier(.2,.7,.2,1),filter .78s ease;
	transition-delay:calc(var(--stagger,0) * 65ms)
}
 html.js .reveal.in-view{
	opacity:1;
	transform:none;
	filter:none
}
.site-header{
	transition:background .28s ease,box-shadow .28s ease,border-color .28s ease
}
.site-header.is-scrolled{
	background:rgba(11,16,26,.94);
	border-bottom-color:rgba(247,231,206,.22);
	box-shadow:0 16px 50px rgba(0,0,0,.26)
}
 .burger.is-open span:nth-child(1){
	transform:translateY(7px) rotate(45deg)
}
.burger.is-open span:nth-child(2){
	opacity:0;
	transform:scaleX(.2)
}
.burger.is-open span:nth-child(3){
	transform:translateY(-7px) rotate(-45deg)
}
body.menu-open{
	overflow:hidden
}
.nav-links.open a{
	animation:navItemIn .28s ease both
}
.nav-links.open a:nth-child(2){
	animation-delay:.04s
}
.nav-links.open a:nth-child(3){
	animation-delay:.08s
}
.nav-links.open a:nth-child(4){
	animation-delay:.12s
}
.nav-links.open a:nth-child(5){
	animation-delay:.16s
}
@keyframes navItemIn{
	from{
		opacity:0;
		transform:translateY(-8px)
	}
	to{
		opacity:1;
		transform:none
	}
}
 .hero-media::before,.image-frame::after{
	content:"";
	position:absolute;
	inset:-1px;
	border-radius:34px;
	background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.08) 34%,rgba(247,231,206,.24) 47%,rgba(255,255,255,.05) 58%,transparent 100%);
	transform:translateX(-120%);
	pointer-events:none;
	z-index:2
}
.hero-media:hover::before,.image-frame:hover::after{
	animation:imageShine 1.15s cubic-bezier(.2,.7,.2,1)
}
@keyframes imageShine{
	to{
		transform:translateX(120%)
	}
}
 .hero-media,.image-frame,.card{
	transform-style:preserve-3d;
	will-change:transform
}
.hero-media img,.image-frame img,.fleet-card img{
	transition:transform .62s cubic-bezier(.2,.7,.2,1),filter .62s ease;
	will-change:transform
}
.hero-media:hover img,.image-frame:hover img{
	transform:scale(1.018)
}
.fleet-card:hover img{
	transform:scale(1.035);
	filter:saturate(1.08) contrast(1.05)
}
.card{
	transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease
}
.card:hover{
	border-color:rgba(247,231,206,.32);
	box-shadow:0 34px 80px rgba(0,0,0,.38);
	background:linear-gradient(145deg,rgba(255,255,255,.125),rgba(255,255,255,.055))
}
.card:hover .icon{
	transform:translateY(-3px) rotate(-3deg);
	box-shadow:0 18px 36px rgba(0,0,0,.28)
}
.icon{
	transition:transform .3s ease,box-shadow .3s ease
}
.trust-pill,.tag{
	transition:transform .22s ease,border-color .22s ease,background .22s ease
}
.trust-pill:hover,.tag:hover{
	transform:translateY(-2px);
	border-color:rgba(247,231,206,.36);
	background:rgba(247,231,206,.11)
}
 .btn{
	position:relative;
	overflow:hidden
}
.btn::after{
	content:"";
	position:absolute;
	inset:0;
	background:radial-gradient(circle at var(--x,50%) var(--y,50%),rgba(255,255,255,.30),transparent 28%);
	opacity:0;
	transition:opacity .35s ease
}
.btn:hover::after{
	opacity:1
}
.floating-badge{
	animation:badgeFloat 5s ease-in-out infinite
}
@keyframes badgeFloat{
	0%,100%{
		transform:translateY(0)
	}
	50%{
		transform:translateY(-9px)
	}
}
 .stat-card{
	position:relative;
	overflow:hidden
}
.stat-card::before{
	content:"";
	position:absolute;
	left:18%;
	right:18%;
	top:0;
	height:1px;
	background:linear-gradient(90deg,transparent,rgba(247,231,206,.75),transparent);
	opacity:.5
}
.stat{
	font-variant-numeric:tabular-nums
}
.cookie-banner.show .cookie-inner{
	animation:cookieLift .46s cubic-bezier(.2,.7,.2,1) both
}
@keyframes cookieLift{
	from{
		opacity:0;
		transform:translateY(24px) scale(.98)
	}
	to{
		opacity:1;
		transform:none
	}
}
 .alert-pop{
	overflow:hidden
}
.alert-pop::after{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	height:3px;
	width:100%;
	background:linear-gradient(90deg,#F7E7CE,#B98A77,#7F1D1D);
	transform-origin:left;
	animation:alertTimer 7.2s linear forwards
}
@keyframes alertTimer{
	to{
		transform:scaleX(0)
	}
}
.alert-pop.is-leaving{
	animation:popOut .22s ease forwards
}
@keyframes popOut{
	to{
		opacity:0;
		transform:translateY(-12px) scale(.98)
	}
}
 @media (max-width:980px){
	body.menu-open .site-header{
		background:rgba(11,16,26,.98)
	}
}
 @media (prefers-reduced-motion:reduce){
	html.js .reveal{
		opacity:1!important;
		transform:none!important;
		filter:none!important
	}
	.floating-badge,.nav-links.open a,.cookie-banner.show .cookie-inner,.alert-pop::after{
		animation:none!important
	}
	.hero-media:hover img,.image-frame:hover img,.fleet-card:hover img,.trust-pill:hover,.tag:hover,.card:hover,.btn:hover,.btn:focus{
		transform:none!important
	}
}
/* Generated editorial photography sections */
 .photo-showcase{
	position:relative
}
 .photo-showcase::before{
	content:"";
	position:absolute;
	inset:0;
	background:radial-gradient(circle at 16% 18%,rgba(247,231,206,.10),transparent 28%),radial-gradient(circle at 88% 82%,rgba(127,29,29,.20),transparent 30%);
	pointer-events:none
}
 .photo-grid{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:22px;
	position:relative;
	z-index:1
}
 .photo-card{
	margin:0;
	border-radius:26px;
	overflow:hidden;
	border:1px solid var(--line);
	background:rgba(255,255,255,.055);
	box-shadow:var(--shadow);
	cursor:zoom-in;
	position:relative;
	min-height:100%
}
 .photo-card img{
	width:100%;
	aspect-ratio:4/5;
	object-fit:cover;
	transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s ease;
	filter:saturate(1.04) contrast(1.02)
}
 .photo-card:hover img{
	transform:scale(1.055);
	filter:saturate(1.12) contrast(1.06)
}
 .photo-card figcaption{
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	padding:22px;
	background:linear-gradient(180deg,transparent,rgba(11,16,26,.93));
	color:#fff;
	transform:translateY(10px);
	transition:transform .3s ease
}
 .photo-card:hover figcaption{
	transform:none
}
 .photo-card figcaption strong{
	display:block;
	font-size:1.05rem;
	letter-spacing:-.02em
}
.photo-card figcaption span{
	display:block;
	color:#E8DCD1;
	font-size:.9rem;
	margin-top:4px;
	line-height:1.35
}
 .photo-strip{
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	gap:22px
}
.photo-strip img{
	width:100%;
	aspect-ratio:4/3;
	object-fit:cover;
	border-radius:26px;
	border:1px solid var(--line);
	box-shadow:var(--shadow);
	transition:transform .62s cubic-bezier(.2,.7,.2,1),filter .62s ease
}
.photo-strip img:hover{
	transform:translateY(-5px) scale(1.02);
	filter:saturate(1.1) contrast(1.05)
}
 .photo-mosaic{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:18px
}
.photo-mosaic img{
	width:100%;
	aspect-ratio:4/5;
	object-fit:cover;
	border-radius:26px;
	border:1px solid var(--line);
	box-shadow:var(--shadow)
}
.photo-mosaic img:nth-child(2){
	margin-top:46px
}
 .lightbox-view{
	position:fixed;
	inset:0;
	z-index:4000;
	display:grid;
	place-items:center;
	background:rgba(5,8,14,.86);
	backdrop-filter:blur(18px);
	padding:28px;
	opacity:0;
	pointer-events:none;
	transition:opacity .24s ease
}
.lightbox-view.open{
	opacity:1;
	pointer-events:auto
}
.lightbox-view img{
	max-width:min(1100px,92vw);
	max-height:82vh;
	border-radius:24px;
	border:1px solid rgba(247,231,206,.28);
	box-shadow:0 34px 100px rgba(0,0,0,.55);
	transform:scale(.96);
	transition:transform .24s ease
}
.lightbox-view.open img{
	transform:scale(1)
}
.lightbox-close{
	position:absolute;
	top:22px;
	right:22px;
	width:48px;
	height:48px;
	border-radius:999px;
	border:1px solid var(--line);
	background:rgba(247,231,206,.09);
	color:#fff;
	font-size:1.8rem;
	cursor:pointer
}
 @media(max-width:980px){
	.photo-grid{
		grid-template-columns:repeat(2,minmax(0,1fr))
	}
	.photo-strip{
		grid-template-columns:1fr
	}
	.photo-mosaic img:nth-child(2){
		margin-top:0
	}
}
 @media(max-width:620px){
	.photo-grid,.photo-mosaic{
		grid-template-columns:1fr
	}
	.photo-card figcaption{
		position:relative;
		background:rgba(11,16,26,.94);
		transform:none
	}
	.lightbox-view{
		display:none
	}
}
 