/* Import Google Fonts */
@import 'https://fonts.googleapis.com/css?family=Material+Icons|Roboto:100,200,300,400,500,600,700,800,900|Roboto+Condensed:100,200,300,400,500,600,700,800,900|Open+Sans:100,200,300,400,500,600,700,800,900|Montserrat:100,200,300,400,500,600,700,800,900';

/* Color & spacing system */
:root{
	--color-primary:#0B2742;
	--color-primary-80:rgba(11,39,66,0.8);
	--color-secondary:#F26B38;
	--color-secondary-light:#FF8A4A;
	--color-neutral-900:#0F1F30;
	--color-neutral-700:#4C5F73;
	--color-neutral-500:#7C8DA3;
	--color-neutral-300:#C9D4E1;
	--color-neutral-150:#E4EAF1;
	--color-neutral-100:#F3F6F9;
	--color-neutral-50:#FAFBFC;
	--color-success:#3FB984;
	--color-error:#FF5C5C;
	--radius-xs:4px;
	--radius-sm:8px;
	--radius-md:14px;
	--shadow-soft:0 10px 25px -15px rgba(11,39,66,0.35);
	--shadow-hover:0 20px 35px -20px rgba(11,39,66,0.5);
	--transition-base:all ease 0.3s;
	--transition-slow:all ease 0.6s;
	--grid-gap-desktop:30px;
	--grid-gap-mobile:20px;
}

/* Set a unified style */
*{
	box-sizing:border-box;
	margin:0;
	padding:0;
	text-decoration:none;
	list-style:none;
	border:0;
}
html{
	scroll-behavior:smooth;
}
body{
	font-family:'Open Sans',sans-serif;
	font-weight:400;
	font-size:15px;
	line-height:1.6;
	color:var(--color-neutral-900);
	background:var(--color-neutral-50);
}
a{
	color:var(--color-secondary);
	transition:var(--transition-base);
}
a:hover,
a:focus-visible{
	color:var(--color-secondary-light);
}
button{
	font:inherit;
	cursor:pointer;
}

/* Better focus states */
input:focus,
select:focus,
textarea:focus,
button:focus,
a:focus-visible {
	outline:3px solid rgba(242,107,56,0.45);
	outline-offset:2px;
}

/* Modern scrollbars */
*::-webkit-scrollbar{
	width:10px;
	height:10px;
}
*::-webkit-scrollbar-track{
	background:var(--color-neutral-150);
	border-radius:var(--radius-sm);
}
*::-webkit-scrollbar-thumb{
	background:linear-gradient(180deg,var(--color-primary),var(--color-secondary));
	border-radius:var(--radius-sm);
}

/* Form inputs */
input[type="checkbox"],
input[type="radio"]{
	position:absolute;
	opacity:0;
	width:0;
	height:0;
}
label{
	position:relative;
	padding-left:24px;
	font-size:15px;
	color:var(--color-neutral-900);
	cursor:pointer;
	transition:var(--transition-base);
}
label:hover{
	color:var(--color-secondary);
}

/* Checkbox styles */
.lx-unchecked-box::before,
.lx-checked-box::before{
	position:absolute;
	content:"";
	left:0;
	top:2px;
	display:inline-block;
	width:16px;
	height:16px;
	border-radius:var(--radius-xs);
}
.lx-unchecked-box::before{
	border:1.5px solid var(--color-neutral-500);
	background:#FFFFFF;
}
.lx-checked-box::before{
	border:1.5px solid var(--color-secondary);
	background:rgba(242,107,56,0.08);
	box-shadow:var(--shadow-soft);
}
.lx-checked-box::after{
	position:absolute;
	content:"";
	left:5px;
	top:7px;
	width:6px;
	height:10px;
	border:2px solid var(--color-secondary);
	border-top:0;
	border-left:0;
	transform:rotate(45deg);
}

/* Radio styles */
.lx-unchecked-radio::before,
.lx-checked-radio::before{
	position:absolute;
	content:"";
	left:0;
	top:2px;
	display:inline-block;
	width:16px;
	height:16px;
	border-radius:50%;
}
.lx-unchecked-radio::before{
	border:1.5px solid var(--color-neutral-500);
	background:#FFFFFF;
}
.lx-checked-radio::before{
	border:1.5px solid var(--color-secondary);
	background:rgba(242,107,56,0.08);
	box-shadow:var(--shadow-soft);
}
.lx-checked-radio::after{
	position:absolute;
	content:"";
	left:5px;
	top:7px;
	width:6px;
	height:6px;
	border-radius:50%;
	background:var(--color-secondary);
}

/* Set a clear fix */
.lx-clear-fix{
	clear:both;
}

/* Responsive grid helpers */
[class^="lx-g"],
[class*=" lx-g"]{
	padding:var(--grid-gap-desktop)/2;
	transition:var(--transition-slow);
}

.lx-g1,
.lx-g1-f{
	width:100%;
}

.lx-g2,
.lx-g2-f{
	float:left;
	width:50%;
}

.lx-g3,
.lx-g3-f{
	float:left;
	width:33.33%;
}

.lx-g3-2,
.lx-g3-2-f{
	float:left;
	width:66.66%;
}

.lx-g4,
.lx-g4-f{
	float:left;
	width:25%;
}

.lx-g4-3,
.lx-g4-3-f{
	float:left;
	width:75%;
}

.lx-g5,
.lx-g5-f{
	float:left;
	width:20%;
}

.lx-g5-2,
.lx-g5-2-f{
	float:left;
	width:40%;
}

.lx-g5-3,
.lx-g5-3-f{
	float:left;
	width:60%;
}

.lx-g5-4,
.lx-g5-4-f{
	float:left;
	width:80%;
}

.lx-g6,
.lx-g6-f{
	float:left;
	width:16.66%;
}

.lx-g6-5,
.lx-g6-5-f{
	float:left;
	width:83.33%;
}

.lx-g8,
.lx-g8-f{
	float:left;
	width:12.5%;
}

.lx-g8-7,
.lx-g8-7-f{
	float:left;
	width:87.5%;
}

/* Utility helpers for layout polish */
.lx-stack{
	display:flex;
	flex-direction:column;
	gap:var(--grid-gap-desktop);
}
.lx-card{
	background:#FFFFFF;
	border-radius:var(--radius-md);
	box-shadow:var(--shadow-soft);
	padding:30px;
	transition:var(--transition-slow);
}
.lx-card:hover{
	box-shadow:var(--shadow-hover);
	transform:translateY(-4px);
}
.lx-badge{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:4px 12px;
	border-radius:999px;
	font-size:12px;
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:0.08em;
	color:#FFFFFF;
	background:var(--color-secondary);
}
.lx-heading{
	font-family:'Montserrat',sans-serif;
	color:var(--color-primary);
	font-weight:700;
	margin-bottom:20px;
}
.lx-gradient-divider{
	width:72px;
	height:4px;
	border-radius:var(--radius-xs);
	background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));
	margin-bottom:20px;
}

/* Responsive adjustments */
@media(max-width:1024px){
	[class^="lx-g"],
	[class*=" lx-g"]{
		padding:var(--grid-gap-mobile)/2;
	}
}
@media(max-width:768px){
	[class^="lx-g"],
	[class*=" lx-g"],
	.lx-g1-f,
	.lx-g2-f,
	.lx-g3-f,
	.lx-g3-2-f,
	.lx-g4-f,
	.lx-g4-3-f,
	.lx-g5-f,
	.lx-g5-2-f,
	.lx-g5-3-f,
	.lx-g5-4-f,
	.lx-g6-f,
	.lx-g6-5-f,
	.lx-g8-f,
	.lx-g8-7-f{
		float:none;
		width:100%;
		padding:var(--grid-gap-mobile)/2;
	}
	.lx-card{
		padding:24px;
	}
}

/* Handy transition class */
.lx-fade-in{
	opacity:0;
	transform:translateY(15px);
	animation:lxFadeIn 0.8s ease forwards;
}
@keyframes lxFadeIn{
	to{
		opacity:1;
		transform:none;
	}
}