/* =========================================================
   LANDING GLOBAL CSS
   Version: cleaned final
   Note:
   - chunk must contain ONLY pure CSS
   - <style> wrapper is already added in template
   ========================================================= */


/* =========================================================
   SECTION: HEADER
   Purpose:
   - landing header
   - request CTA + phone dropdown
   - dropdown overlays content instead of pushing layout
   ========================================================= */

.lphdr{
	position:relative;
	z-index:120;
	margin:0 auto 14px;
}

.lphdr__bar{
	background:#ffffff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	padding:10px 12px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
}

.lphdr__brand{
	display:flex;
	align-items:center;
	min-width:0;
	flex:1 1 auto;
}

.lphdr__logo{
	display:inline-flex;
	align-items:center;
	text-decoration:none;
	color:#000000;
	min-width:0;
}

.lphdr__logo:hover,
.lphdr__logo:focus{
	text-decoration:none;
	color:#000000;
}

.lphdr__logo-img{
	display:block;
	width:auto;
	height:36px;
	max-width:150px;
}

.lphdr__mobile{
	display:flex;
	align-items:center;
	gap:8px;
	flex:0 0 auto;
}

.lphdr__desktop{
	display:none;
}

.lphdr__actions{
	display:flex;
	align-items:center;
	gap:8px;
	flex:0 0 auto;
}

.lphdr__cta{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	height:40px;
	padding:0 14px;
	border-radius:12px;
	font-size:14px;
	font-weight:700;
	line-height:1;
	text-decoration:none;
	white-space:nowrap;
	box-sizing:border-box;
	border:1px solid transparent;
	background:#ffffff;
	transition:background .2s ease, border-color .2s ease, color .2s ease;
	cursor:pointer;
	outline:none;
}

.lphdr__cta:hover,
.lphdr__cta:focus{
	text-decoration:none;
}

.lphdr__cta--primary{
	background:#ec4424;
	border-color:#ec4424;
	color:#ffffff;
}

.lphdr__cta--primary:hover,
.lphdr__cta--primary:focus{
	background:#d63b1d;
	border-color:#d63b1d;
	color:#ffffff;
}

.lphdr__cta--secondary{
	background:#ffffff;
	border-color:#d7e0ea;
	color:#0d2f63;
}

.lphdr__cta--secondary:hover,
.lphdr__cta--secondary:focus{
	color:#0d2f63;
	border-color:#c6d3e2;
	background:#fbfcfe;
}

.lphdr__request-btn{
	gap:8px;
}

.lphdr__phones-toggle{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
}

.lphdr__phones-toggle .lphdr__phone-text{
	display:inline-block;
}

.lphdr__svg{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:16px;
	height:16px;
	flex:0 0 16px;
	line-height:0;
}

.lphdr__svg svg{
	display:block;
	width:16px;
	height:16px;
}

.lphdr__chevron{
	transition:transform .2s ease;
}

.lphdr__phones-toggle[aria-expanded="true"] .lphdr__chevron{
	transform:rotate(180deg);
}

.lphdr__mobile .lphdr__request-btn{
	padding:0 14px;
}

.lphdr__mobile .lphdr__phones-toggle{
	min-width:58px;
	padding:0 12px;
}

.lphdr__dropdown-wrap{
	position:relative;
	height:0;
	width:100%;
	z-index:9999;
}

.lphdr__dropdown{
	display:none;
	position:absolute;
	top:8px;
	right:0;
	width:100%;
	background:#ffffff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	padding:10px;
	box-shadow:0 10px 24px rgba(15,23,42,.08);
	box-sizing:border-box;
}

.lphdr__dropdown.is-open{
	display:block;
}

.lphdr__dropdown-list{
	margin:0;
	padding:0;
	list-style:none;
}

.lphdr__dropdown-item{
	margin:0 0 8px;
}

.lphdr__dropdown-item:last-child{
	margin-bottom:0;
}

.lphdr__dropdown-link{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	min-height:46px;
	padding:0 14px;
	border:1px solid #dfe7f0;
	border-radius:12px;
	background:#fbfcfe;
	color:#0d2f63;
	font-size:14px;
	font-weight:700;
	text-decoration:none;
	box-sizing:border-box;
}

.lphdr__dropdown-link:hover,
.lphdr__dropdown-link:focus{
	text-decoration:none;
	color:#0d2f63;
	border-color:#cbd7e5;
	background:#ffffff;
}

.lphdr__dropdown-phone{
	display:block;
	word-break:normal;
	white-space:nowrap;
}

.lphdr__dropdown-note{
	color:#5f6f84;
	font-size:12px;
	font-weight:500;
	white-space:nowrap;
	flex:0 0 auto;
}

@media (min-width:768px){
	.lphdr{
		margin-bottom:18px;
	}

	.lphdr__bar{
		padding:12px 18px;
		gap:14px;
	}

	.lphdr__logo-img{
		height:42px;
		max-width:180px;
	}

	.lphdr__mobile{
		display:none;
	}

	.lphdr__desktop{
		display:flex;
		align-items:center;
		flex:0 0 auto;
	}

	.lphdr__actions{
		gap:10px;
	}

	.lphdr__cta{
		height:42px;
		font-size:14px;
	}

	.lphdr__request-btn{
		padding:0 18px;
	}

	.lphdr__desktop .lphdr__phones-toggle{
		min-width:252px;
		padding:0 14px;
		gap:10px;
	}

	.lphdr__dropdown{
		width:252px;
	}
}

@media (min-width:1200px){
	.lphdr{
		max-width:1180px;
		margin-bottom:20px;
	}

	.lphdr__bar{
		padding:14px 18px;
	}

	.lphdr__logo-img{
		height:46px;
		max-width:210px;
	}

	.lphdr__request-btn{
		padding:0 20px;
	}

	.lphdr__desktop .lphdr__phones-toggle{
		min-width:272px;
		padding:0 14px;
	}

	.lphdr__dropdown{
		width:272px;
	}
}


/* =========================================================
   SECTION: TERMS / STATS
   Purpose:
   - compact “Условия лизинга” block
   - supports 3 to 8 cards
   ========================================================= */

.lterms-section{
	margin:0 0 20px;
}

.lterms__eyebrow{
	display:inline-block;
	margin:0 0 12px;
	font-size:14px;
	font-weight:700;
	line-height:1.2;
	color:#ec4424;
}

.lterms-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:12px;
}

.lterms-card{
	background:#ffffff;
	border:1px solid #d9e2ec;
	border-radius:18px;
	padding:18px 16px;
	min-height:116px;
	box-sizing:border-box;
}

.lterms-card__value{
	margin:0 0 12px;
	font-size:24px;
	line-height:1.05;
	font-weight:800;
	color:#f24f2a;
	word-break:break-word;
}

.lterms-card__label{
	font-size:14px;
	line-height:1.35;
	font-weight:600;
	color:#5f6f84;
	word-break:break-word;
}

@media (min-width:768px){
	.lterms-section{
		margin:0 0 24px;
	}

	.lterms__eyebrow{
		margin-bottom:14px;
	}

	.lterms-grid{
		grid-template-columns:repeat(3, minmax(0, 1fr));
		gap:14px;
	}

	.lterms-card{
		min-height:132px;
		padding:22px 18px;
	}

	.lterms-card__value{
		font-size:26px;
	}

	.lterms-card__label{
		font-size:15px;
	}
}

@media (min-width:1200px){
	.lterms-section{
		max-width:1200px;
		margin:0 auto 24px;
	}

	.lterms-grid{
		grid-template-columns:repeat(4, minmax(0, 1fr));
		gap:16px;
	}
}

/* =========================================================
   SECTION: OFFER DETAILS
   Purpose:
   - explanatory block “Что важно знать”
   ========================================================= */

.lpod-offer{
	margin:0 auto 22px;
}

.lpod-offer__card{
	background:#fff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	padding:18px 16px 18px;
}

.lpod-offer__title{
	margin:0 0 12px;
	color:#0d2f63;
	font-size:24px;
	font-weight:700;
	line-height:1.08;
	text-transform:uppercase;
}

.lpod-offer__lead{
	margin:0 0 14px;
	color:#5f6f84;
	font-size:15px;
	line-height:1.5;
	max-width:860px;
}

.lpod-offer__list{
	margin:0;
	padding:0;
	list-style:none;
}

.lpod-offer__item{
	position:relative;
	padding-left:22px;
	color:#2e3c52;
	font-size:15px;
	line-height:1.55;
	margin:0 0 12px;
}

.lpod-offer__item:last-child{
	margin-bottom:0;
}

.lpod-offer__item:before{
	content:"";
	position:absolute;
	left:0;
	top:11px;
	width:12px;
	height:2px;
	background:#ec4424;
	border-radius:2px;
}

@media (min-width:768px){
	.lpod-offer{
		margin:0 auto 24px;
	}

	.lpod-offer__card{
		padding:22px 20px 22px;
	}

	.lpod-offer__title{
		font-size:28px;
		margin-bottom:14px;
	}

	.lpod-offer__lead{
		font-size:16px;
		margin-bottom:16px;
	}

	.lpod-offer__item{
		font-size:16px;
		padding-left:24px;
		margin-bottom:13px;
	}
}

@media (min-width:1200px){
	.lpod-offer{
		max-width:1180px;
		margin:0 auto 24px;
	}

	.lpod-offer__card{
		padding:26px 24px 24px;
		border-radius:18px;
	}

	.lpod-offer__title{
		font-size:30px;
		margin-bottom:16px;
	}

	.lpod-offer__lead{
		font-size:16px;
		line-height:1.55;
		margin-bottom:18px;
		max-width:900px;
	}

	.lpod-offer__list{
		max-width:980px;
	}

	.lpod-offer__item{
		font-size:16px;
		line-height:1.6;
		padding-left:26px;
		margin-bottom:14px;
	}
}

/* =========================================================
   SECTION: PROGRAMS
   Purpose:
   - block “Программы”
   - rebuilt for production logic
   - cards source = ddMultipleFields
   - visual style aligned with landing UI
   - no card icons in this block
   ========================================================= */

.lpprograms{
	margin:0 auto 22px;
}

.lpprograms__head{
	margin:0 0 16px;
}

.lpprograms__title{
	margin:0 0 10px;
	color:#0d2f63;
	font-size:28px;
	font-weight:700;
	line-height:1.08;
	text-transform:uppercase;
}

.lpprograms__lead{
	margin:0;
	color:#5f6f84;
	font-size:15px;
	line-height:1.5;
	max-width:860px;
}

.lpprograms__grid{
	display:grid;
	grid-template-columns:1fr;
	gap:12px;
}

.lpprograms__card{
	position:relative;
	display:flex;
	flex-direction:column;
	min-height:100%;
	padding:18px 16px 18px;
	border-radius:18px;
	overflow:hidden;
}

.lpprograms__card:before{
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:30%;
	height:100%;
	pointer-events:none;
	clip-path:polygon(38% 0,100% 0,100% 100%,0 100%);
	opacity:.55;
}

.lpprograms__card--light{
	background:#ffffff;
	border:1px solid #dfe7f0;
}

.lpprograms__card--light:before{
	background:linear-gradient(180deg, rgba(70, 70, 70, .01) 0%, rgba(70, 70, 70, .05) 100%);
}

.lpprograms__card--dark{
	background:#54514d;
	border:1px solid #54514d;
}

.lpprograms__card--dark:before{
	background:linear-gradient(180deg, rgba(255,255,255,.03) 0%, rgba(255,255,255,.07) 100%);
}

.lpprograms__eyebrow{
	position:relative;
	z-index:1;
	display:inline-block;
	margin:0 0 8px;
	color:#ec4424;
	font-size:13px;
	font-weight:700;
	line-height:1.2;
}

.lpprograms__card-title{
	position:relative;
	z-index:1;
	margin:0 0 10px;
	color:#0d2f63;
	font-size:28px;
	font-weight:700;
	line-height:1.08;
	letter-spacing:-0.01em;
}

.lpprograms__card--dark .lpprograms__card-title{
	color:#ffffff;
}

.lpprograms__content{
	position:relative;
	z-index:1;
	color:#5f6f84;
	font-size:14px;
	line-height:1.55;
	max-width:980px;
}

.lpprograms__card--dark .lpprograms__content{
	color:rgba(255,255,255,.92);
}

.lpprograms__content > *:first-child{
	margin-top:0;
}

.lpprograms__content > *:last-child{
	margin-bottom:0;
}

.lpprograms__content p{
	margin:0 0 12px;
}

.lpprograms__content strong{
	font-weight:700;
}

.lpprograms__content em{
	font-style:italic;
}

.lpprograms__content u{
	text-decoration:underline;
	text-underline-offset:2px;
}

.lpprograms__content h4{
	margin:14px 0 8px;
	color:#0d2f63;
	font-size:18px;
	font-weight:700;
	line-height:1.25;
}

.lpprograms__card--dark .lpprograms__content h4{
	color:#ffffff;
}

.lpprograms__content ul,
.lpprograms__content ol{
	margin:0;
	padding:0;
	list-style:none;
}

.lpprograms__content ul li,
.lpprograms__content ol li{
	position:relative;
	padding-left:22px;
	margin:0 0 12px;
}

.lpprograms__content ul li:last-child,
.lpprograms__content ol li:last-child{
	margin-bottom:0;
}

.lpprograms__content ul li:before{
	content:"";
	position:absolute;
	left:0;
	top:11px;
	width:12px;
	height:2px;
	background:#ec4424;
	border-radius:2px;
}

.lpprograms__content ol{
	counter-reset:lpprograms-ol;
}

.lpprograms__content ol li{
	counter-increment:lpprograms-ol;
}

.lpprograms__content ol li:before{
	content:counter(lpprograms-ol);
	position:absolute;
	left:0;
	top:1px;
	width:auto;
	height:auto;
	background:none;
	border-radius:0;
	color:#ec4424;
	font-size:15px;
	font-weight:700;
	line-height:1.3;
}

.lpprograms__content blockquote{
	margin:14px 0;
	padding:12px 14px;
	border-left:3px solid #ec4424;
	border-radius:0 12px 12px 0;
	background:#fbfcfe;
	color:inherit;
	font-size:14px;
	line-height:1.55;
}

.lpprograms__card--dark .lpprograms__content blockquote{
	background:rgba(255,255,255,.08);
	border-left-color:#ec4424;
}

.lpprograms__pills{
	position:relative;
	z-index:1;
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:14px;
}

.lpprograms__pill{
	display:inline-flex;
	align-items:center;
	min-height:30px;
	padding:4px 10px;
	border:1px solid #ec4424;
	border-radius:8px;
	background:#ffffff;
}

.lpprograms__card--dark .lpprograms__pill{
	background:rgba(255,255,255,.08);
	border-color:rgba(255,255,255,.18);
}

.lpprograms__pill-text{
	display:block;
	color:#0d2f63;
	font-size:13px;
	font-weight:700;
	line-height:1.2;
	white-space:nowrap;
}

.lpprograms__card--dark .lpprograms__pill-text{
	color:#ffffff;
}

.lpprograms__actions{
	position:relative;
	z-index:1;
	margin-top:auto;
	padding-top:16px;
}

.lpprograms__btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:0 18px;
	border:0;
	border-radius:12px;
	font-size:15px;
	font-weight:700;
	line-height:1;
	text-decoration:none;
	cursor:pointer;
	box-sizing:border-box;
	transition:background .2s ease, color .2s ease, border-color .2s ease;
}

.lpprograms__btn--light{
	background:#ec4424;
	color:#ffffff;
	border:1px solid #ec4424;
}

.lpprograms__btn--light:hover,
.lpprograms__btn--light:focus{
	background:#d63b1d;
	border-color:#d63b1d;
	color:#ffffff;
}

.lpprograms__btn--dark{
	background:#ffffff;
	color:#ec4424;
	border:1px solid #ffffff;
}

.lpprograms__btn--dark:hover,
.lpprograms__btn--dark:focus{
	background:#f7f9fc;
	border-color:#f7f9fc;
	color:#ec4424;
}

@media (min-width:768px){
	.lpprograms{
		margin:0 auto 24px;
	}

	.lpprograms__head{
		margin-bottom:18px;
	}

	.lpprograms__title{
		font-size:32px;
		margin-bottom:12px;
	}

	.lpprograms__lead{
		font-size:16px;
		max-width:900px;
	}

	.lpprograms__grid{
		grid-template-columns:repeat(2, 1fr);
		gap:14px;
		align-items:stretch;
	}

	.lpprograms__card{
		padding:22px 20px 20px;
	}

	.lpprograms__card-title{
		font-size:32px;
		margin-bottom:12px;
	}

	.lpprograms__content{
		font-size:15px;
	}

	.lpprograms__content blockquote{
		font-size:15px;
	}

	.lpprograms__actions{
		padding-top:18px;
	}
}

@media (min-width:1200px){
	.lpprograms{
		max-width:1180px;
		margin:0 auto 24px;
	}

	.lpprograms__head{
		margin-bottom:20px;
	}

	.lpprograms__title{
		font-size:34px;
	}

	.lpprograms__lead{
		font-size:16px;
		line-height:1.55;
		max-width:920px;
	}

	.lpprograms__grid{
		grid-template-columns:repeat(2, 1fr);
		gap:16px;
	}

	.lpprograms__card{
		padding:26px 24px 24px;
		border-radius:18px;
	}

	.lpprograms__card-title{
		font-size:34px;
		margin-bottom:14px;
	}

	.lpprograms__content{
		font-size:15px;
		line-height:1.6;
	}

	.lpprograms__content blockquote{
		font-size:15px;
		line-height:1.6;
	}
}

/* =========================================================
   SECTION: STEPS
   Purpose:
   - redesign block “Как это работает?”
   - align with current landing UI patterns
   - shared card wrapper like FAQ / DETAILS blocks
   - desktop: 3–5 steps stretched across block width
   - mobile: compact vertical list inside the same wrapper
   ========================================================= */

.lpsteps{
	margin:0 auto 24px;
}

.lpsteps__card{
	background:#ffffff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	padding:22px 20px 22px;
}

.lpsteps__head{
	margin:0 0 24px;
}

.lpsteps__title{
	margin:0 0 10px;
	color:#0d2f63;
	font-size:28px;
	font-weight:700;
	line-height:1.08;
	text-transform:uppercase;
}

.lpsteps__lead{
	margin:0;
	color:#5f6f84;
	font-size:15px;
	line-height:1.55;
	max-width:860px;
}

/* ---------------------------------------------------------
   Desktop / tablet grid
   Notes:
   - 3A behavior: keep all steps in one row on desktop
   - support 3 / 4 / 5 columns
   --------------------------------------------------------- */
.lpsteps__grid{
	display:grid;
	gap:18px;
	align-items:start;
}

.lpsteps__grid--count-3{
	grid-template-columns:repeat(3, minmax(0, 1fr));
}

.lpsteps__grid--count-4{
	grid-template-columns:repeat(4, minmax(0, 1fr));
}

.lpsteps__grid--count-5{
	grid-template-columns:repeat(5, minmax(0, 1fr));
	gap:14px;
}

.lpsteps__item{
	min-width:0;
}

.lpsteps__marker{
	display:flex;
	align-items:center;
	gap:14px;
	margin:0 0 14px;
}

.lpsteps__num{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:36px;
	height:36px;
	flex:0 0 36px;
	border-radius:12px;
	background:#f7fafc;
	border:1px solid #dfe7f0;
	color:#ec4424;
	font-size:18px;
	font-weight:700;
	line-height:1;
}

.lpsteps__line{
	display:block;
	flex:1 1 auto;
	height:1px;
	background:#dfe7f0;
}

.lpsteps__item.is-last .lpsteps__line{
	display:none;
}

.lpsteps__content{
	padding:0;
}

.lpsteps__item-title{
	margin:0 0 8px;
	color:#0d2f63;
	font-size:18px;
	font-weight:700;
	line-height:1.3;
}

.lpsteps__item-text{
	margin:0;
	color:#5f6f84;
	font-size:15px;
	line-height:1.55;
}

.lpsteps__actions{
	margin-top:14px;
}

.lpsteps__btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:0 18px;
	border:1px solid #ec4424;
	border-radius:12px;
	background:#ec4424;
	color:#ffffff;
	font-size:15px;
	font-weight:700;
	line-height:1;
	text-decoration:none;
	cursor:pointer;
	box-sizing:border-box;
	transition:background .2s ease, border-color .2s ease, color .2s ease;
}

.lpsteps__btn:hover,
.lpsteps__btn:focus{
	background:#d63b1d;
	border-color:#d63b1d;
	color:#ffffff;
}

/* ---------------------------------------------------------
   Desktop fine-tuning by step count
   --------------------------------------------------------- */
.lpsteps__grid--count-4 .lpsteps__item-title,
.lpsteps__grid--count-5 .lpsteps__item-title{
	font-size:17px;
}

.lpsteps__grid--count-5 .lpsteps__item-text{
	font-size:14px;
	line-height:1.5;
}

.lpsteps__grid--count-5 .lpsteps__btn{
	min-height:42px;
	padding:0 16px;
	font-size:14px;
}

/* ---------------------------------------------------------
   Tablet
   --------------------------------------------------------- */
@media (min-width:768px){
	.lpsteps__card{
		padding:26px 24px 24px;
	}

	.lpsteps__head{
		margin-bottom:26px;
	}

	.lpsteps__title{
		font-size:32px;
		margin-bottom:12px;
	}

	.lpsteps__lead{
		font-size:16px;
		max-width:900px;
	}
}

/* ---------------------------------------------------------
   Large desktop
   --------------------------------------------------------- */
@media (min-width:1200px){
	.lpsteps{
		max-width:1180px;
		margin:0 auto 24px;
	}

	.lpsteps__card{
		padding:26px 30px 26px;
	}

	.lpsteps__title{
		font-size:34px;
	}

	.lpsteps__lead{
		font-size:16px;
		line-height:1.55;
		max-width:920px;
	}

	.lpsteps__grid{
		gap:22px;
	}

	.lpsteps__grid--count-5{
		gap:16px;
	}
}

/* ---------------------------------------------------------
   Mobile
   Notes:
   - keep one shared wrapper card
   - vertical list
   - no connector lines
   --------------------------------------------------------- */
@media (max-width:767px){
	.lpsteps{
		margin:0 auto 24px;
	}

	.lpsteps__card{
		padding:18px 16px 18px;
	}

	.lpsteps__head{
		margin-bottom:20px;
	}

	.lpsteps__title{
		font-size:24px;
		line-height:1.12;
		margin-bottom:10px;
	}

	.lpsteps__lead{
		font-size:14px;
		line-height:1.5;
	}

	.lpsteps__grid,
	.lpsteps__grid--count-3,
	.lpsteps__grid--count-4,
	.lpsteps__grid--count-5{
		display:flex;
		flex-direction:column;
		gap:18px;
	}

	.lpsteps__item{
		display:grid;
		grid-template-columns:36px minmax(0, 1fr);
		column-gap:12px;
		align-items:start;
	}

	.lpsteps__marker{
		display:block;
		margin:0;
	}

	.lpsteps__num{
		width:32px;
		height:32px;
		flex:0 0 32px;
		border-radius:10px;
		font-size:16px;
	}

	.lpsteps__line{
		display:none !important;
	}

	.lpsteps__item-title{
		font-size:17px;
		line-height:1.3;
		margin-bottom:6px;
	}

	.lpsteps__item-text{
		font-size:14px;
		line-height:1.5;
	}

	.lpsteps__actions{
		margin-top:12px;
	}

	.lpsteps__btn{
		min-height:42px;
		padding:0 16px;
		font-size:14px;
		border-radius:12px;
	}
}

/* =========================================================
   SECTION: ABOUT COMPANY
   Purpose:
   - structured about-company block with sortable sections
   - history supports image
   - advantages support icon
   ========================================================= */

.lco-about{
	margin:0 auto 22px;
	background:#ffffff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	padding:18px 16px 18px;
	box-sizing:border-box;
}

.lco-about__intro{
	margin:0 0 14px;
}

.lco-about__eyebrow{
	display:inline-block;
	margin:0 0 8px;
	color:#ec4424;
	font-size:14px;
	font-weight:700;
	line-height:1.2;
}

.lco-about__title{
	margin:0 0 10px;
	color:#0d2f63;
	font-size:28px;
	font-weight:700;
	line-height:1.08;
	text-transform:uppercase;
}

.lco-about__lead{
	margin:0;
	color:#5f6f84;
	font-size:15px;
	line-height:1.5;
	max-width:860px;
}

.lco-about__accordion{
	display:flex;
	flex-direction:column;
	gap:10px;
}

.lco-about__item{
	border:1px solid #dfe7f0;
	border-radius:18px;
	background:#ffffff;
	overflow:hidden;
}

.lco-about__summary{
	position:relative;
	display:block;
	padding:16px 46px 16px 16px;
	cursor:pointer;
	list-style:none;
	color:#0d2f63;
	font-size:16px;
	font-weight:700;
	line-height:1.35;
	background:#fbfcfe;
}

.lco-about__summary::-webkit-details-marker{
	display:none;
}

.lco-about__summary:after{
	content:"+";
	position:absolute;
	right:16px;
	top:50%;
	transform:translateY(-50%);
	color:#ec4424;
	font-size:24px;
	font-weight:400;
	line-height:1;
}

.lco-about__item[open] .lco-about__summary:after{
	content:"−";
}

.lco-about__content{
	padding:16px;
}

.lco-about__text-grid,
.lco-about__adv-grid,
.lco-about__facts,
.lco-about__timeline{
	display:grid;
	grid-template-columns:1fr;
	gap:12px;
}

.lco-about__text-card,
.lco-about__adv-card,
.lco-about__fact,
.lco-about__timeline-card{
	background:#fbfcfe;
	border:1px solid #e1e8f0;
	border-radius:16px;
	padding:16px;
	box-sizing:border-box;
}

.lco-about__text-card h3,
.lco-about__adv-card h3,
.lco-about__timeline-card h3{
	margin:0 0 8px;
	font-size:18px;
	line-height:1.2;
	font-weight:700;
	color:#0d2f63;
}

.lco-about__text-card p,
.lco-about__adv-card p,
.lco-about__timeline-card p{
	margin:0;
	font-size:15px;
	line-height:1.55;
	color:#5f6f84;
}

.lco-about__timeline-card{
	display:grid;
	grid-template-columns:1fr;
	gap:14px;
	align-items:start;
}

.lco-about__timeline-main{
	min-width:0;
}

.lco-about__timeline-media{
	width:100%;
	max-width:180px;
}

.lco-about__timeline-media img{
	display:block;
	width:100%;
	aspect-ratio:1 / 1;
	object-fit:cover;
	border-radius:14px;
	border:1px solid #dfe7f0;
	background:#ffffff;
}

.lco-about__year{
	display:inline-block;
	margin:0 0 10px;
	padding:4px 9px;
	border:1px solid #ec4424;
	border-radius:8px;
	background:#ffffff;
	color:#ec4424;
	font-size:13px;
	font-weight:700;
	line-height:1;
}

.lco-about__fact{
	background:#fff7f3;
	border:1px solid #ffd8cb;
}

.lco-about__fact-value{
	margin:0 0 8px;
	font-size:28px;
	line-height:1;
	font-weight:700;
	color:#ec4424;
}

.lco-about__fact-label{
	font-size:15px;
	line-height:1.35;
	font-weight:600;
	color:#0d2f63;
}

.lco-about__adv-head{
	display:flex;
	align-items:center;
	gap:12px;
	margin:0 0 8px;
}

.lco-about__adv-icon{
	width:44px;
	height:44px;
	flex:0 0 44px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:12px;
	background:#ffffff;
	border:1px solid #dfe7f0;
}

.lco-about__adv-icon img{
	display:block;
	width:24px;
	height:24px;
	object-fit:contain;
}

.lco-about__stickers{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}

.lco-about__sticker{
	display:inline-flex;
	align-items:center;
	min-height:36px;
	padding:8px 14px;
	border:1px solid #d9e2ec;
	border-radius:999px;
	background:#f7fafc;
	color:#0d2f63;
	font-size:14px;
	line-height:1.2;
	font-weight:700;
}

@media (min-width:768px){
	.lco-about{
		margin:0 auto 24px;
		padding:22px 20px 22px;
	}

	.lco-about__title{
		font-size:32px;
		margin-bottom:12px;
	}

	.lco-about__lead{
		font-size:16px;
		max-width:900px;
	}

	.lco-about__summary{
		padding:18px 50px 18px 18px;
		font-size:17px;
	}

	.lco-about__content{
		padding:18px;
	}

	.lco-about__text-grid,
	.lco-about__adv-grid,
	.lco-about__facts{
		grid-template-columns:1fr 1fr;
	}

	.lco-about__timeline-card{
		grid-template-columns:minmax(0, 1fr) 180px;
	}
}

@media (min-width:1200px){
	.lco-about{
		max-width:1180px;
		margin:0 auto 24px;
		padding:26px 24px 24px;
	}

	.lco-about__title{
		font-size:34px;
	}

	.lco-about__lead{
		font-size:16px;
		line-height:1.55;
		max-width:920px;
	}

	.lco-about__text-grid,
	.lco-about__adv-grid{
		grid-template-columns:1fr 1fr;
		gap:14px;
	}

	.lco-about__facts{
		grid-template-columns:repeat(3, 1fr);
		gap:14px;
	}

	.lco-about__timeline{
		grid-template-columns:1fr 1fr;
		gap:14px;
	}

	.lco-about__timeline-card{
		grid-template-columns:minmax(0, 1fr) 160px;
	}
}

/* =========================================================
   ABOUT COMPANY PATCH
   Purpose:
   - support section summary lead
   - support financed pills with icons
   ========================================================= */
.lco-about__section-lead{
	margin:0 0 14px;
	color:#5f6f84;
	font-size:14px;
	line-height:1.55;
	max-width:860px;
}

.lco-about__sticker{
	display:inline-flex;
	align-items:center;
	gap:8px;
	min-height:36px;
	padding:8px 14px;
	border:1px solid #d9e2ec;
	border-radius:999px;
	background:#f7fafc;
	color:#0d2f63;
	font-size:14px;
	line-height:1.2;
	font-weight:700;
}

.lco-about__sticker-icon{
	display:block;
	width:16px;
	height:16px;
	flex:0 0 16px;
	object-fit:contain;
}

.lco-about__sticker-text{
	display:block;
}

@media (min-width:768px){
	.lco-about__section-lead{
		font-size:15px;
	}
}

@media (min-width:1200px){
	.lco-about__section-lead{
		font-size:15px;
		line-height:1.6;
		max-width:920px;
	}
}

/* =========================================================
   SECTION: FOOTER
   Purpose:
   - minimal landing-only footer
   - reduced exits from the page
   ========================================================= */

.al-footer-ref--landing .alfr-shell--landing{
	padding-top:18px;
	padding-bottom:12px;
}

.al-footer-ref--landing .alfr-top--landing{
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
	justify-content:space-between;
	gap:24px;
}

.al-footer-ref--landing .alfr-brand--landing{
	max-width:260px;
}

.al-footer-ref--landing .alfr-logo--static{
	display:inline-block;
	cursor:default;
	pointer-events:none;
}

.al-footer-ref--landing .alfr-address--landing{
	max-width:280px;
}

.al-footer-ref--landing .alfr-contacts--landing{
	max-width:280px;
}

.al-footer-ref--landing .alfr-main{
	display:none !important;
}

.al-footer-ref--landing .alfr-route{
	display:none !important;
}

.al-footer-ref--landing .alfr-social{
	display:none !important;
}

.al-footer-ref--landing .alfr-callback{
	display:none !important;
}

.al-footer-ref--landing .alfr-dev{
	display:none !important;
}

.al-footer-ref--landing .alfr-links--landing{
	display:flex;
	flex-wrap:wrap;
	gap:12px 18px;
	padding-top:18px;
	margin-top:18px;
	border-top:1px solid #e2e8f0;
}

.al-footer-ref--landing .alfr-links--landing a{
	font-size:13px;
	line-height:1.4;
}

.al-footer-ref--landing .alfr-bottom--landing{
	padding-top:14px;
	margin-top:14px;
	border-top:1px solid #eef2f6;
}

.al-footer-ref--landing .alfr-up{
	margin-bottom:10px;
}

@media (max-width:767px){
	.al-footer-ref--landing .alfr-top--landing{
		gap:16px;
	}

	.al-footer-ref--landing .alfr-brand--landing,
	.al-footer-ref--landing .alfr-address--landing,
	.al-footer-ref--landing .alfr-contacts--landing{
		max-width:none;
		width:100%;
	}

	.al-footer-ref--landing .alfr-links--landing{
		flex-direction:column;
		gap:10px;
	}
}

@media (max-width:767px){
	.al-footer-ref--landing .alfr-top--landing{
		gap:16px;
	}

	.al-footer-ref--landing .alfr-brand--landing,
	.al-footer-ref--landing .alfr-address--landing,
	.al-footer-ref--landing .alfr-contacts--landing{
		max-width:none;
		width:100%;
	}

	.al-footer-ref--landing .alfr-links--landing{
		flex-direction:column;
		gap:10px;
	}


}


/* =========================================================
   SECTION: FORMS
   Status:
   - reserved for landing phone-only form styles / patches
   - currently uses existing lf-* UI classes
   ========================================================= */


/* =========================================================
   SECTION: PATCHES / OVERRIDES
   Status:
   - reserved for future hotfixes
   ========================================================= */


/* =========================================================
   SECTION: HERO
   Purpose:
   - hero landing block
   - hero phone-only form
   ========================================================= */

.lpv3-hero{
	margin:14px auto 20px;
}

.lpv3-hero__card{
	background:#fff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	overflow:hidden;
}

.lpv3-hero__media{
	background:#eef2f6;
}

.lpv3-hero__media img{
	display:block;
	width:100%;
	height:auto;
}

.lpv3-hero__content{
	padding:14px 14px 16px;
}

.lpv3-hero__badges{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin:0 0 12px;
}

.lpv3-hero__badges:empty{
	display:none;
	margin:0;
}

.lpv3-hero__badge{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:28px;
	max-width:230px;
	padding:3px 12px;
	border:1px solid #ec4424;
	border-radius:14px;
	background:#fffaf7;
	color:#ec4424;
	box-sizing:border-box;
	text-align:center;
}

.lpv3-hero__badge-text{
	display:block;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	line-height:1.15;
	font-size:11px;
	font-weight:600;
	max-width:30ch;
}

.lpv3-hero__title{
	margin:0 0 10px;
	color:#0d2f63;
	font-size:27px;
	font-weight:700;
	line-height:1.12;
	letter-spacing:-0.02em;
	text-transform:uppercase;
}

.lpv3-hero__subtitle{
	margin:0 0 14px;
	color:#5f6f84;
	font-size:16px;
	line-height:1.35;
}

.lpv3-hero__form{
	margin:0;
}

.lpv3-hero__field{
	margin:0 0 12px;
}

.lpv3-hero__input{
	display:block;
	width:100%;
	height:46px;
	padding:0 14px;
	border:1px solid #d7e0ea;
	border-radius:10px;
	background:#fff;
	color:#23324a;
	font-size:15px;
	line-height:46px;
	outline:none;
	box-shadow:none;
	box-sizing:border-box;
}

.lpv3-hero__input:focus{
	border-color:#ec4424;
}

.lpv3-hero__input::placeholder{
	color:#98a3b4;
}

.lpv3-hero__consent{
	display:block;
	margin:0 0 12px;
	color:#5f6f84;
	font-size:12px;
	line-height:1.35;
}

.lpv3-hero__consent input{
	position:relative;
	top:1px;
	margin-right:8px;
}

.lpv3-hero__consent a{
	color:#0d2f63;
	text-decoration:underline;
}

.lpv3-hero__btn{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:46px;
	padding:0 18px;
	border:0;
	border-radius:12px;
	background:#ec4424;
	color:#fff;
	font-size:15px;
	font-weight:700;
	text-decoration:none;
	cursor:pointer;
	box-sizing:border-box;
}

.lpv3-hero__btn:hover,
.lpv3-hero__btn:focus{
	background:#d93b1d;
	color:#fff;
	text-decoration:none;
}

.lpv3-hero__btn[disabled]{
	opacity:.72;
	cursor:default;
}

.lpv3-hero__status{
	margin-top:10px;
	min-height:18px;
}

.lpv3-hero__trust{
	margin-top:10px;
	color:#5f6f84;
	font-size:12px;
	line-height:1.35;
	display:flex;
	align-items:flex-start;
	gap:6px;
}

.lpv3-hero__trust-icon{
	display:inline-flex;
	line-height:1;
	font-size:14px;
	color:#ec4424;
}

.lpv3-hero__trust-icon i{
	line-height:1;
}

.lpv3-hero__sr{
	position:absolute !important;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	border:0;
}

@media (min-width:768px){
	.lpv3-hero{
		margin:18px auto 22px;
	}

	.lpv3-hero__content{
		padding:18px 20px 20px;
	}

	.lpv3-hero__title{
		font-size:34px;
		line-height:1.10;
		max-width:560px;
	}

	.lpv3-hero__subtitle{
		font-size:18px;
		max-width:520px;
	}

	.lpv3-hero__form{
		max-width:420px;
	}
}

@media (min-width:1200px){
	.lpv3-hero{
		max-width:1180px;
		margin:20px auto 24px;
	}

	.lpv3-hero__card{
		display:grid;
		grid-template-columns:42% 58%;
		grid-template-areas:"content media";
		min-height:340px;
		align-items:stretch;
	}

	.lpv3-hero__content{
		grid-area:content;
		padding:24px 26px 22px 32px;
		display:flex;
		flex-direction:column;
		justify-content:center;
		position:relative;
		z-index:2;
		background:#fff;
	}

	.lpv3-hero__media{
		grid-area:media;
		position:relative;
		min-height:340px;
		height:100%;
		overflow:hidden;
		background:#eef2f6;
	}

	.lpv3-hero__media img{
		width:100%;
		height:100%;
		object-fit:cover;
		object-position:center center;
	}

	.lpv3-hero__badges{
		margin-bottom:14px;
		gap:10px;
	}

	.lpv3-hero__badge{
		min-height:30px;
		max-width:250px;
		padding:4px 14px;
		border-radius:14px;
	}

	.lpv3-hero__badge-text{
		font-size:12px;
		max-width:30ch;
	}

	.lpv3-hero__title{
		font-size:40px;
		line-height:1.10;
		max-width:430px;
		margin-bottom:12px;
	}

	.lpv3-hero__subtitle{
		font-size:17px;
		max-width:380px;
		margin-bottom:16px;
	}

	.lpv3-hero__form{
		max-width:330px;
	}

	.lpv3-hero__input{
		height:44px;
		line-height:44px;
		font-size:15px;
	}

	.lpv3-hero__btn{
		min-height:44px;
		font-size:15px;
	}
}

/* =========================================================
   SECTION: FORMS
   Purpose:
   - shared status styles for landing forms
   ========================================================= */

.lf-calc-status{
	margin:0;
	font-size:13px;
	line-height:1.35;
	min-height:18px;
	color:#5f6f84;
}

.lf-calc-status.is-success{
	color:#1f7a3d;
}

.lf-calc-status.is-error{
	color:#c0392b;
}


/* =========================================================
   SECTION: FAQ
   Purpose:
   - landing FAQ accordion
   ========================================================= */

.lpfaq{
	margin:0 auto 22px;
}

.lpfaq__card{
	background:#ffffff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	padding:18px 16px 18px;
}

.lpfaq__head{
	margin:0 0 16px;
}

.lpfaq__title{
	margin:0 0 10px;
	color:#0d2f63;
	font-size:28px;
	font-weight:700;
	line-height:1.08;
	text-transform:uppercase;
}

.lpfaq__lead{
	margin:0;
	color:#5f6f84;
	font-size:15px;
	line-height:1.5;
	max-width:860px;
}

.lpfaq__list{
	margin:0;
	padding:0;
}

.lpfaq__item{
	margin:0 0 10px;
	border:1px solid #dfe7f0;
	border-radius:14px;
	background:#fbfcfe;
	overflow:hidden;
}

.lpfaq__item:last-child{
	margin-bottom:0;
}

.lpfaq__question{
	position:relative;
	display:block;
	width:100%;
	padding:16px 46px 16px 14px;
	border:0;
	background:transparent;
	text-align:left;
	color:#0d2f63;
	font-size:16px;
	font-weight:700;
	line-height:1.35;
	cursor:pointer;
	box-sizing:border-box;
}

.lpfaq__question:after{
	content:"+";
	position:absolute;
	right:16px;
	top:50%;
	transform:translateY(-50%);
	color:#ec4424;
	font-size:24px;
	font-weight:400;
	line-height:1;
}

.lpfaq__item.is-open .lpfaq__question:after{
	content:"−";
}

.lpfaq__answer{
	display:none;
	padding:0 14px 16px;
	color:#5f6f84;
	font-size:14px;
	line-height:1.55;
}

.lpfaq__item.is-open .lpfaq__answer{
	display:block;
}

@media (min-width:768px){
	.lpfaq{
		margin:0 auto 24px;
	}

	.lpfaq__card{
		padding:22px 20px 22px;
	}

	.lpfaq__head{
		margin-bottom:18px;
	}

	.lpfaq__title{
		font-size:32px;
		margin-bottom:12px;
	}

	.lpfaq__lead{
		font-size:16px;
		max-width:900px;
	}

	.lpfaq__question{
		padding:18px 50px 18px 16px;
		font-size:17px;
	}

	.lpfaq__answer{
		padding:0 16px 18px;
		font-size:15px;
	}
}

@media (min-width:1200px){
	.lpfaq{
		max-width:1180px;
		margin:0 auto 24px;
	}

	.lpfaq__card{
		padding:26px 24px 24px;
	}

	.lpfaq__head{
		margin-bottom:20px;
	}

	.lpfaq__title{
		font-size:34px;
	}

	.lpfaq__lead{
		font-size:16px;
		line-height:1.55;
		max-width:920px;
	}

	.lpfaq__question{
		padding:20px 56px 20px 18px;
		font-size:18px;
	}

	.lpfaq__question:after{
		right:18px;
		font-size:26px;
	}

	.lpfaq__answer{
		padding:0 18px 20px;
		font-size:15px;
		line-height:1.6;
		max-width:980px;
	}
}

/* =========================================================
   SECTION: FAQ CTA PATCH
   Purpose:
   - optional CTA under FAQ block
   ========================================================= */

.lpfaq__cta{
	margin-top:14px;
	padding-top:16px;
	border-top:1px solid #eef2f6;
	display:flex;
	flex-direction:column;
	gap:14px;
	align-items:flex-start;
}

.lpfaq__cta-text{
	color:#5f6f84;
	font-size:14px;
	line-height:1.55;
	max-width:920px;
}

.lpfaq__cta-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:0 18px;
	border:1px solid #ec4424;
	border-radius:12px;
	background:#ec4424;
	color:#ffffff;
	font-size:15px;
	font-weight:700;
	line-height:1;
	cursor:pointer;
	box-sizing:border-box;
}

.lpfaq__cta-btn:hover,
.lpfaq__cta-btn:focus{
	background:#d63b1d;
	border-color:#d63b1d;
	color:#ffffff;
}

@media (min-width:768px){
	.lpfaq__cta{
		margin-top:16px;
		padding-top:18px;
	}

	.lpfaq__cta-text{
		font-size:15px;
	}
}


/* =========================================================
   SECTION: MOBILE FLOAT BAR
   Purpose:
   - mobile-only sticky CTA bar
   - shown after first screen
   ========================================================= */

/* =========================================================
   SECTION: MOBILE FLOAT BAR
   Purpose:
   - mobile-only sticky CTA bar
   - shown after first screen
   - call button opens phones dropdown upward
   ========================================================= */

.lpmbar{
	position:fixed;
	left:10px;
	right:10px;
	bottom:10px;
	z-index:9999;
	opacity:0;
	visibility:hidden;
	transform:translateY(18px);
	transition:opacity .24s ease, transform .24s ease, visibility .24s ease;
	pointer-events:none;
}

.lpmbar.is-visible{
	opacity:1;
	visibility:visible;
	transform:translateY(0);
	pointer-events:auto;
}

.lpmbar__inner{
	position:relative;
	background:rgba(255,255,255,.98);
	border:1px solid #dfe7f0;
	border-radius:16px;
	box-shadow:0 8px 24px rgba(15, 23, 42, .14);
	padding:8px;
	display:grid;
	grid-template-columns:1.25fr .95fr;
	gap:8px;
	backdrop-filter:blur(8px);
}

.lpmbar__btn{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	min-height:46px;
	padding:0 14px;
	border-radius:12px;
	font-size:14px;
	font-weight:700;
	line-height:1.2;
	text-decoration:none;
	box-sizing:border-box;
	white-space:nowrap;
}

.lpmbar__btn:hover,
.lpmbar__btn:focus{
	text-decoration:none;
}

.lpmbar__btn--primary{
	background:#ec4424;
	color:#fff;
	border:1px solid #ec4424;
}

.lpmbar__btn--primary:hover,
.lpmbar__btn--primary:focus{
	background:#d63b1d;
	color:#fff;
}

.lpmbar__btn--secondary{
	background:#fff;
	color:#0d2f63;
	border:1px solid #d7e0ea;
}

.lpmbar__btn--secondary:hover,
.lpmbar__btn--secondary:focus{
	color:#0d2f63;
	border-color:#c4d2e2;
}

.lpmbar__icon,
.lpmbar__chevron{
	display:none;
	flex:0 0 auto;
	line-height:0;
}

.lpmbar__icon svg,
.lpmbar__chevron svg{
	display:block;
	width:16px;
	height:16px;
}

.lpmbar__btn.is-request .lpmbar__icon--plane{
	display:inline-flex;
}

.lpmbar__btn.is-call .lpmbar__icon--phone,
.lpmbar__btn.is-call .lpmbar__chevron{
	display:inline-flex;
}

.lpmbar__btn[aria-expanded="true"] .lpmbar__chevron{
	transform:rotate(180deg);
}

.lpmbar__phones{
	position:absolute;
	left:0;
	right:0;
	bottom:calc(100% + 8px);
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transform:translateY(8px);
	transition:opacity .2s ease, visibility .2s ease, transform .2s ease;
}

.lpmbar__phones.is-open{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
	transform:translateY(0);
}

.lpmbar__phones-list{
	margin:0;
	padding:8px;
	list-style:none;
	background:rgba(255,255,255,.98);
	border:1px solid #dfe7f0;
	border-radius:16px;
	box-shadow:0 8px 24px rgba(15, 23, 42, .14);
}

.lpmbar__phones-item{
	margin:0 0 8px;
}

.lpmbar__phones-item:last-child{
	margin-bottom:0;
}

.lpmbar__phones-link{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	min-height:44px;
	padding:0 14px;
	border:1px solid #dfe7f0;
	border-radius:12px;
	background:#fbfcfe;
	color:#0d2f63;
	font-size:14px;
	font-weight:700;
	text-decoration:none;
	box-sizing:border-box;
}

.lpmbar__phones-link:hover,
.lpmbar__phones-link:focus{
	text-decoration:none;
	color:#0d2f63;
	border-color:#cbd7e5;
	background:#ffffff;
}

.lpmbar__phones-number{
	display:block;
	white-space:nowrap;
}

.lpmbar__phones-note{
	color:#5f6f84;
	font-size:12px;
	font-weight:500;
	white-space:nowrap;
	flex:0 0 auto;
}

@media (min-width:768px){
	.lpmbar{
		display:none !important;
	}
}


/* =========================================================
   SECTION: QUICK MODAL FORM
   Purpose:
   - shared quick lead form for header and floatbar
   - hard-centered on screen
   ========================================================= */

body.landing-modal-open{
	overflow:hidden;
}

.lpqmodal{
	position:fixed;
	inset:0;
	z-index:10050;
	display:block;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity .2s ease, visibility .2s ease;
}

.lpqmodal.is-open{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
}

.lpqmodal__backdrop{
	position:absolute;
	inset:0;
	background:rgba(15,23,42,.48);
}

.lpqmodal__dialog{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	width:calc(100vw - 24px);
	max-width:420px;
	max-height:calc(100vh - 24px);
	overflow:auto;
	margin:0;
	background:#ffffff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	box-shadow:0 20px 48px rgba(15,23,42,.18);
	box-sizing:border-box;
}

.lpqmodal__body{
	padding:22px 18px 18px;
}

.lpqmodal__close{
	position:absolute;
	top:10px;
	right:10px;
	width:36px;
	height:36px;
	border:0;
	border-radius:10px;
	background:#f5f7fa;
	color:#0d2f63;
	font-size:24px;
	line-height:1;
	cursor:pointer;
}

.lpqmodal__eyebrow{
	display:inline-block;
	margin:0 0 8px;
	color:#ec4424;
	font-size:13px;
	font-weight:700;
	line-height:1.2;
}

.lpqmodal__title{
	margin:0 0 10px;
	color:#0d2f63;
	font-size:28px;
	font-weight:700;
	line-height:1.08;
}

.lpqmodal__text{
	margin:0 0 14px;
	color:#5f6f84;
	font-size:14px;
	line-height:1.45;
}

.lpqmodal__form{
	margin:0;
}

.lpqmodal__field{
	margin:0 0 12px;
}

.lpqmodal__input{
	display:block;
	width:100%;
	height:46px;
	padding:0 14px;
	border:1px solid #d7e0ea;
	border-radius:12px;
	background:#fff;
	color:#23324a;
	font-size:15px;
	line-height:46px;
	outline:none;
	box-shadow:none;
	box-sizing:border-box;
}

.lpqmodal__input:focus{
	border-color:#ec4424;
}

.lpqmodal__consent{
	display:block;
	margin:0 0 12px;
	color:#5f6f84;
	font-size:12px;
	line-height:1.35;
}

.lpqmodal__consent input{
	position:relative;
	top:1px;
	margin-right:8px;
}

.lpqmodal__consent a{
	color:#0d2f63;
	text-decoration:underline;
}

.lpqmodal__btn{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:46px;
	padding:0 18px;
	border:0;
	border-radius:12px;
	background:#ec4424;
	color:#fff;
	font-size:15px;
	font-weight:700;
	cursor:pointer;
	box-sizing:border-box;
}

.lpqmodal__btn:hover,
.lpqmodal__btn:focus{
	background:#d63b1d;
	color:#fff;
}

.lpqmodal__btn[disabled]{
	opacity:.72;
	cursor:default;
}

.lpqmodal__status{
	margin-top:10px;
	min-height:18px;
}

.lpqmodal__sr{
	position:absolute !important;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	border:0;
}

/* =========================================================
   SECTION: THANK YOU MODAL
   Purpose:
   - success confirmation after form submit
   ========================================================= */

.lptymodal{
	position:fixed;
	inset:0;
	z-index:10060;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:12px;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity .2s ease, visibility .2s ease;
}

.lptymodal.is-open{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
}

.lptymodal__backdrop{
	position:absolute;
	inset:0;
	background:rgba(15,23,42,.52);
}

.lptymodal__dialog{
	position:relative;
	width:100%;
	max-width:400px;
	margin:0;
	background:#ffffff;
	border:1px solid #dfe7f0;
	border-radius:18px;
	box-shadow:0 20px 48px rgba(15,23,42,.18);
}

.lptymodal__body{
	padding:26px 20px 20px;
	text-align:center;
}

.lptymodal__close{
	position:absolute;
	top:10px;
	right:10px;
	width:36px;
	height:36px;
	border:0;
	border-radius:10px;
	background:#f5f7fa;
	color:#0d2f63;
	font-size:24px;
	line-height:1;
	cursor:pointer;
}

.lptymodal__icon{
	margin:0 0 10px;
	color:#1f7a3d;
	font-size:40px;
	line-height:1;
}

.lptymodal__eyebrow{
	display:inline-block;
	margin:0 0 8px;
	color:#ec4424;
	font-size:13px;
	font-weight:700;
	line-height:1.2;
}

.lptymodal__title{
	margin:0 0 10px;
	color:#0d2f63;
	font-size:28px;
	font-weight:700;
	line-height:1.08;
}

.lptymodal__text{
	margin:0 0 16px;
	color:#5f6f84;
	font-size:14px;
	line-height:1.45;
}

.lptymodal__btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:0 18px;
	border:0;
	border-radius:12px;
	background:#ec4424;
	color:#fff;
	font-size:15px;
	font-weight:700;
	cursor:pointer;
}

.lptymodal__btn:hover,
.lptymodal__btn:focus{
	background:#d63b1d;
	color:#fff;
}

@media (min-width:768px){
	.lpqmodal__dialog{
		width:min(420px, calc(100vw - 40px));
		max-height:calc(100vh - 40px);
	}

	.lpqmodal__body{
		padding:24px 22px 20px;
	}

	.lpqmodal__title,
	.lptymodal__title{
		font-size:30px;
	}

	.lpqmodal__text,
	.lptymodal__text{
		font-size:15px;
	}

	.lptymodal{
		padding:20px;
	}
}

/* =========================================================
   SECTION: LAYOUT WIDTH 1200
   Purpose:
   - local landing override over bootstrap container width
   - align all desktop blocks to 1200px
   ========================================================= */

@media (min-width:1200px){
	#landingContainer.container,
	.al-footer-ref--landing .container{
		max-width:1200px;
		width:100%;
	}

	.lphdr,
	.lpv3-hero,
	.lterms-section,
	.lpod-offer,
	.lpcta,
	.lpsteps,
	.lpfaq{
		max-width:1200px;
	}
}

/* =========================================================
   QUICK MODAL: universal fields
   Purpose:
   - supports email / name / comment / select in modal
   ========================================================= */
.lpqmodal__field[hidden]{
	display:none !important;
}

.lpqmodal__textarea,
.lpqmodal__select{
	display:block;
	width:100%;
	min-height:48px;
	padding:12px 16px;
	border:1px solid #d7e0ea;
	border-radius:16px;
	background:#ffffff;
	color:#23324a;
	font-size:15px;
	line-height:1.45;
	outline:none;
	box-shadow:none;
	box-sizing:border-box;
}

.lpqmodal__select{
	height:48px;
	padding-top:0;
	padding-bottom:0;
	border-radius:999px;
	line-height:48px;
	appearance:none;
	-webkit-appearance:none;
	-moz-appearance:none;
	background-image:linear-gradient(45deg, transparent 50%, #99a6b8 50%), linear-gradient(135deg, #99a6b8 50%, transparent 50%);
	background-position:calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px);
	background-size:6px 6px, 6px 6px;
	background-repeat:no-repeat;
}

.lpqmodal__textarea:focus,
.lpqmodal__select:focus{
	border-color:#ec4424;
}

.lpqmodal__honeypot{
	position:absolute !important;
	left:-9999px !important;
	top:auto !important;
	width:1px !important;
	height:1px !important;
	overflow:hidden !important;
	opacity:0 !important;
	pointer-events:none !important;
}

/* =========================================================
   PROGRAMS LAB PATCH
   Purpose:
   - adds icon support to test block
   - improves HTML content rendering inside cards
   - does not affect original PROGRAMS block structure
   ========================================================= */
.lpprograms--lab .lpprograms__card-head{
	display:flex;
	align-items:flex-start;
	gap:12px;
	margin:0 0 12px;
}

.lpprograms--lab .lpprograms__card-head-text{
	min-width:0;
	flex:1 1 auto;
}

.lpprograms--lab .lpprograms__card-icon{
	flex:0 0 52px;
	width:52px;
	height:52px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid #dfe7f0;
	border-radius:12px;
	background:#ffffff;
	overflow:hidden;
}

.lpprograms--lab .lpprograms__card-icon img{
	display:block;
	width:32px;
	height:32px;
	object-fit:contain;
}

.lpprograms--lab .lpprograms__content p{
	margin:0 0 12px;
}

.lpprograms--lab .lpprograms__content p:last-child{
	margin-bottom:0;
}

.lpprograms--lab .lpprograms__content ul,
.lpprograms--lab .lpprograms__content ol{
	margin:0 0 14px 20px;
	padding:0;
}

.lpprograms--lab .lpprograms__content li{
	margin:0 0 8px;
}

.lpprograms--lab .lpprograms__content strong{
	font-weight:700;
}


/* =========================================================
   HERO FORM PATCH
   Purpose:
   - support select / textarea / hidden fields
   - support universal hero form renderer
   ========================================================= */
.lpv3-hero__field[hidden]{
	display:none !important;
}

.lpv3-hero__select,
.lpv3-hero__textarea{
	display:block;
	width:100%;
	box-sizing:border-box;
	border:1px solid #d7e0ea;
	background:#fff;
	color:#23324a;
	outline:none;
	box-shadow:none;
}

.lpv3-hero__select{
	height:46px;
	padding:0 14px;
	border-radius:10px;
	font-size:15px;
	line-height:46px;
	appearance:none;
	-webkit-appearance:none;
	-moz-appearance:none;
	background-image:linear-gradient(45deg, transparent 50%, #98a3b4 50%), linear-gradient(135deg, #98a3b4 50%, transparent 50%);
	background-position:calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px);
	background-size:6px 6px, 6px 6px;
	background-repeat:no-repeat;
}

.lpv3-hero__textarea{
	min-height:96px;
	padding:12px 14px;
	border-radius:10px;
	font-size:15px;
	line-height:1.45;
	resize:vertical;
}

.lpv3-hero__select:focus,
.lpv3-hero__textarea:focus{
	border-color:#ec4424;
}

.lpv3-hero__honeypot{
	position:absolute !important;
	left:-9999px !important;
	top:auto !important;
	width:1px !important;
	height:1px !important;
	overflow:hidden !important;
	opacity:0 !important;
	pointer-events:none !important;
}

/* =========================================================
   OFFER DETAILS HTML PATCH
   Purpose:
   - support rich HTML content in DETAILS block
   ========================================================= */
.lpod-offer__html{
	color:#2e3c52;
	font-size:15px;
	line-height:1.55;
	max-width:980px;
}

.lpod-offer__html > *:first-child{
	margin-top:0;
}

.lpod-offer__html > *:last-child{
	margin-bottom:0;
}

.lpod-offer__html p{
	margin:0 0 12px;
}

.lpod-offer__html strong{
	font-weight:700;
}

.lpod-offer__html em{
	font-style:italic;
}

.lpod-offer__html u{
	text-decoration:underline;
	text-underline-offset:2px;
}

.lpod-offer__html h3,
.lpod-offer__html h4{
	margin:16px 0 10px;
	color:#0d2f63;
	font-weight:700;
	line-height:1.25;
}

.lpod-offer__html h3{
	font-size:22px;
}

.lpod-offer__html h4{
	font-size:18px;
}

.lpod-offer__html ul,
.lpod-offer__html ol{
	margin:0;
	padding:0;
	list-style:none;
}

.lpod-offer__html ul li,
.lpod-offer__html ol li{
	position:relative;
	padding-left:22px;
	margin:0 0 12px;
}

.lpod-offer__html ul li:last-child,
.lpod-offer__html ol li:last-child{
	margin-bottom:0;
}

.lpod-offer__html ul li:before{
	content:"";
	position:absolute;
	left:0;
	top:11px;
	width:12px;
	height:2px;
	background:#ec4424;
	border-radius:2px;
}

.lpod-offer__html ol{
	counter-reset:lpod-ol;
}

.lpod-offer__html ol li{
	counter-increment:lpod-ol;
}

.lpod-offer__html ol li:before{
	content:counter(lpod-ol);
	position:absolute;
	left:0;
	top:1px;
	width:auto;
	height:auto;
	background:none;
	border-radius:0;
	color:#ec4424;
	font-size:15px;
	font-weight:700;
	line-height:1.3;
}

.lpod-offer__html blockquote{
	margin:14px 0;
	padding:12px 14px;
	border-left:3px solid #ec4424;
	border-radius:0 12px 12px 0;
	background:#fbfcfe;
	color:inherit;
	font-size:14px;
	line-height:1.55;
}

@media (min-width:768px){
	.lpod-offer__html{
		font-size:16px;
	}

	.lpod-offer__html h3{
		font-size:24px;
	}

	.lpod-offer__html h4{
		font-size:19px;
	}

	.lpod-offer__html blockquote{
		font-size:15px;
	}
}

@media (min-width:1200px){
	.lpod-offer__html{
		font-size:16px;
		line-height:1.6;
	}

	.lpod-offer__html h3{
		font-size:26px;
	}

	.lpod-offer__html h4{
		font-size:20px;
	}

	.lpod-offer__html blockquote{
		font-size:15px;
		line-height:1.6;
	}
}