/* ==========================================================================
1. INSTALL FONTS
========================================================================= */

@font-face
{
	font-family: 'Inter';
	src: url('../../../partner/fonts/Inter-VariableFont_opsz,wght.ttf') format('truetype');
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
}

@font-face
{
	font-family: 'Fraunces';
	src: url('../../../partner/fonts/Fraunces-VariableFont_SOFT,WONK,opsz,wght.ttf') format('truetype');
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
}

@font-face
{
	font-family: 'IBM Plex Mono';
	src: url('../../../partner/fonts/IBMPlexMono-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face
{
	font-family: 'Archivo';
	src: url('../../../partner/fonts/Archivo-VariableFont_wdth,wght.ttf') format('truetype');
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
	
}

@font-face
{
	font-family: 'JetBrainsMono';
	src: url('../../../partner/fonts/JetBrainsMono-VariableFont_wght.ttf') format('truetype');
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
	
}

/* ==========================================================================
2. CONFIGURATION VARIABLES
========================================================================= */

:root
{
	--font-primary-inter     : 'Inter', sans-serif;
	--font-primary-mono      : 'IBM Plex Mono', monospace;
	--font-primary-fraunces  : 'Fraunces', serif;
	--font-primary-Archivo   : 'Archivo', sans-serif;
	--font-primary-JetBrainsMono  : 'JetBrainsMono', monospace; 

	--color-brand-primary    : #062b5c;
	--color-brand-secondary  : #762a78;
	--color-brand-secondary-hover : #5d1f60;
	--color-brand-secondary-dark  : #5e2160;
	--color-success               : #2e8b57;
	--color-success-dark          : #237a55;
	--color-success-bg-subtle     : #f2faf6;
	--color-success-border-subtle : #cfe7da;
	--color-danger           : #9a5252;

	--color-text-dark        : #3d4960;
	--color-text-white       : #ffffff;
	--color-text-muted       : #526078;
	--color-text-light       : #9ba4b4;
	--color-light-subtle     : #d6deea;

	--color-bg-canvas        : #f8fbff;
	--color-bg-warm          : #faf5fb;
	--color-bg-neutral       : #fbf6fc;
	--color-bg-neutral-light : #fdfafd;
	--color-kicker           : #d7a8dc;

	--color-hover-tint       : #f5ebf7;
	--color-active-tint      : #eaddec;

	--color-border-delicate  : #e9e4eb;
	--color-border-subtle    : #e7e1e9;
	--color-border-contrast  : #dce6f2;
	--color-border-muted     : #805858;
	--color-bg-soft-tint     : #fdfafd;

	--color-danger-bg-subtle       : #fff7f7;
	--color-danger-border-subtle   : #efdada;
	--color_primary_dark     : #151d3a;
	--color_link_muted       : #dfe5f2;
	--color_slate_tint       : #b8c1d3;
	--color_denim_tint       : #aeb8cc;
	--color-slate-navy       : #39415a;
	--color-rich-royal       : #1c59a8;

	--color-bg-meter-weak           : #ff704d;
	--color-bg-meter-medium         : #ffe661;
	--color-bg-meter-strong         : #5cb85c;
	--color-border-slate-subtle     : #f1f5f9;
	--color-text-black              : #000000;
	--color-bg-slate-gray           : #aaa6aa;
	--color-bg-slate-cool           : #b3b6c1;
}

/* ==========================================================================
3. UTILITY CLASSES
========================================================================= */

*, *::before, *::after {
	box-sizing: border-box;
}

html, body {
	margin: 0;
	font-family: var(--font-primary-inter);
	line-height: 1.25 !important; 
}

/* 1. Reserve the track space so Bootstrap 5 doesn't shift */
html {
	scrollbar-gutter: stable; 
}

/* 2. Style the main scrollbar container (Chrome, Edge, Safari) */
html::-webkit-scrollbar {
	width: 8px;
	scrollbar-width: thin;              
}

/* 3. THIS REMOVES THE TOP & BOTTOM ARROWS COMPLETELY */
html::-webkit-scrollbar-button {
	display: none !important;  
	height: 0 !important;      
	width: 0 !important;
}

/* 4. Style the background track path */
html::-webkit-scrollbar-track {
	background: #f8f9fa;       
}

/* 5. Style the draggable pill/handle */
html::-webkit-scrollbar-thumb {
	background: #762a78;       
	border-radius: 10px;       
}

.olt-font-primary-mono
{
	font-family: var(--font-primary-mono);
}
.olt-font-primary-fraunces
{
	font-family: var(--font-primary-fraunces);
}
.olt-text-primary
{
	color: var(--color-brand-primary) !important;
}
.olt-text-secondary
{
	color: var(--color-brand-secondary) !important;
}
.olt-text-muted
{
	color: var(--color-text-muted) !important;
}
.olt-text-success
{
	color: var(--color-success);
}
.olt-text-dark
{
	color: var(--color-text-dark);
}
.olt-text-light
{
	color: var(--color-text-light);
}
.olt-text-danger
{
	color: var(--color-danger);
}
.olt-text-accent-muted
{
	color: var(--color-border-muted);
}

.olt-text-light-subtle
{
	color: var(--color-light-subtle);
}

.olt-text-kicker
{
	color: var(--color-kicker);
}

.olt-color_denim_tint
{
	color: var(--color_denim_tint);
}

.olt-color_link_muted
{
	color: var(--color_link_muted);
}

.olt-text-anchor
{
	color: var(--color-rich-royal) !important;
}

/* ==========================================================================
4. BACKGROUND UTILITIES (olt-)
========================================================================== */

.olt-bg-primary
{
	background-color: var(--color-brand-primary);
}

.olt-bg-secondary
{
	background-color: var(--color-brand-secondary);
}

.olt-bg-canvas
{
	background-color: var(--color-bg-canvas);
}

.olt-bg-warm
{
	background-color: var(--color-bg-warm);
}

.olt-bg-delicate
{
	background-color: var(--color-border-delicate);
}

.olt-bg-danger-subtle
{
	background-color: var(--color-danger-bg-subtle) !important;
}

.olt-bg-light-purple-grad
{
	background: linear-gradient(135deg, var(--color-bg-neutral), var(--color-hover-tint));
}

.olt-bg-light-purple-hero
{
	background: radial-gradient(circle at 84% 15%, rgba(118, 42, 120, 0.11), transparent 28%), linear-gradient(#fff, var(--color-bg-neutral-light));
}

/* ==========================================================================
5. BORDER UTILITIES (olt-)
========================================================================== */

.olt-border-active
{
	border-color: var(--color-active-tint) !important;
}

.olt-border-subtle
{
	border-color: var(--color-border-subtle) !important;
}

.olt-border-contrast
{
	border-color: var(--color-border-contrast) !important;
}

.olt-border-danger-subtle
{
	border-color: var(--color-danger-border-subtle) !important;
}

.olt-border-slate-subtle
{
	border-color: var(--color-border-slate-subtle) !important;
}

/* ==========================================================================
6. FONT SIZES (olt-)
========================================================================== */

.olt-font-10
{
	font-size: 0.625rem !important; /* 10px equivalent */
}

.olt-font-11
{
	font-size: 0.6875rem; /* 11px equivalent */
}

.olt-font-11-5
{
	font-size: 0.71875rem; /* 11.5px equivalent */
}

.olt-font-12
{
	font-size: 0.75rem; /* 12px equivalent */
}

.olt-font-12-5
{
	font-size: 0.78125rem; /* 12.5px equivalent */
}

.olt-font-13
{
	font-size: 0.8125rem; /* 13px equivalent */
}

.olt-font-14
{
	font-size: 0.875rem !important; /* 14px equivalent */
}

.olt-font-15
{
	font-size: 0.9375rem !important; /* 15px equivalent */
}

.olt-font-16
{
	font-size: 1rem !important; /* 16px equivalent */
}

.olt-font-18
{
	font-size: 1.125rem; /* 18px equivalent */
}

.olt-font-20
{
	font-size: 1.25rem; /* 20px equivalent */
}

.olt-font-22
{
	font-size: 1.375rem; /* 22px equivalent */
}

.olt-font-26
{
	font-size: 1.625rem; /* 26px equivalent */
}

.olt-font-27
{
	font-size: 1.6875rem; /* 27px equivalent */
}

.olt-font-34
{
	font-size: 2.125rem; /* 34px equivalent */
}

.olt-font-35
{
	font-size: 2.1875rem; /* 35px equivalent */
}

.olt-font-50
{
	font-size: 3.125rem; /* 50px equivalent */
}

.olt-font-54
{
	font-size: 3.375rem; /* 54px equivalent */
}

.olt-font-700
{
	font-weight: 700 !important;
}
.olt-font-800
{
	font-weight: 800 !important;
}
.olt-font-900
{
	font-weight: 900 !important;
}

/* ==========================================================================
7. Image Utilities (olt-)
========================================================================== */
/* ==========================================================================
   7. NAMESPACED MASKED SVG ICONS (olt-)
   ========================================================================== */

.olt-icon
{
	display: inline-block;
	width: 1rem;  /* Added baseline safe layout width */
	height: 1rem; /* Added baseline safe layout height */
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	flex-shrink: 0;
	vertical-align: middle;
	background-color: currentColor; /* Inherits text color dynamically */
}

/* --- Core Utilities (size) --- */

.olt-icon-12
{
	width: 12px;
	height: 12px;
}

.olt-icon-14
{
	width: 14px;
	height: 14px;
}

.olt-icon-15
{
	width: 15px;
	height: 15px;
}

.olt-icon-16
{
	width: 16px;
	height: 16px;
}

.olt-icon-18
{
	width: 18px;
	height: 18px;
}

.olt-icon-20
{
	width: 20px;
	height: 20px;
}

.olt-icon-24
{
	width: 24px;
	height: 24px;
}

.olt-icon-26
{
	width: 26px;
	height: 26px;
}

.olt-icon-28
{
	width: 28px;
	height: 28px;
}

.olt-icon-30
{
	width: 30px;
	height: 30px;
}

.olt-icon-44
{
	width: 44px;
	height: 44px;
}

.olt-h-40
{
	height: 40px;
}

.olt-w-auto
{
	width: auto;
}

/* --- Core Utilities (No background color forcing) --- */

.olt-right-arrow
{
	-webkit-mask-image: url('../images/right-arrow-white.png');
	mask-image: url('../images/right-arrow-white.png');
}

.olt-tick
{
	-webkit-mask-image: url('../images/tick-purple.png');
	mask-image: url('../images/tick-purple.png');
}

.olt-tick-purple {
	-webkit-mask-image: url('../images/tick-purple.png');
	mask-image: url('../images/tick-purple.png');
}

.olt-lock
{
	-webkit-mask-image: url('../images/lock-green.png');
	mask-image: url('../images/lock-green.png');
}

.olt-dollar
{
	-webkit-mask-image: url('../images/dollar-purple.png');
	mask-image: url('../images/dollar-purple.png');
}

.olt-email-confirmation
{
	-webkit-mask-image: url('../images/email-confirmation.png');
	mask-image: url('../images/email-confirmation.png');
}

.olt-import-file
{
	-webkit-mask-image: url('../images/import-file.png');
	mask-image: url('../images/import-file.png');
}

.olt-help
{
	-webkit-mask-image: url('../images/help.png');
	mask-image: url('../images/help.png');
}

.olt-magnifier
{
	-webkit-mask-image: url('../images/magnifier-purple.png');
	mask-image: url('../images/magnifier-purple.png');
}

.olt-left-arrow
{
	-webkit-mask-image: url('../images/left-arrow-purple.png');
	mask-image: url('../images/left-arrow-purple.png');
}

.olt-tax-product-user
{
	-webkit-mask-image: url('../images/tax-product-user.png');
	mask-image: url('../images/tax-product-user.png');
}

.olt-clock-timer
{
	-webkit-mask-image: url('../images/clock-timer.png');
	mask-image: url('../images/clock-timer.png');
}

.olt-bullet-check
{
	-webkit-mask-image: url('../images/bullet-check.png');
	mask-image: url('../images/bullet-check.png');
}


.olt-list-check-blue
{
	-webkit-mask-image: url('../images/list-check-blue.png');
	mask-image: url('../images/list-check-blue.png');
}

.olt-arrow-right-circle-green
{
	-webkit-mask-image: url('../images/arrow-right-circle-green.png');
	mask-image: url('../images/arrow-right-circle-green.png');
}

.olt-warning-triangle-yellow
{
	-webkit-mask-image: url('../images/warning-triangle-yellow.png');
	mask-image: url('../images/warning-triangle-yellow.png');
}


.olt-arrow-up-blue
{
	-webkit-mask-image: url('../images/arrow-up-blue.png');
	mask-image: url('../images/arrow-up-blue.png');
}

.olt-person-plus-fill-green
{
	-webkit-mask-image: url('../images/person-plus-fill-green.png');
	mask-image: url('../images/person-plus-fill-green.png');
}

.olt-info-circle-fill
{
	-webkit-mask-image: url('../images/info-circle-fill.png');
	mask-image: url('../images/info-circle-fill.png');
}

.olt-exclamation-circle-fill
{
	-webkit-mask-image: url('../images/exclamation-circle-fill.png');
	mask-image: url('../images/exclamation-circle-fill.png');
}

.olt-search-primary
{
	-webkit-mask-image: url('../images/search-primary.png');
	mask-image: url('../images/search-primary.png');
}

.olt-question-circle-fill
{
	-webkit-mask-image: url('../images/question-circle-fill.png');
	mask-image: url('../images/question-circle-fill.png');
}

.olt-envelope-fill
{
	-webkit-mask-image: url('../images/envelope-fill.png');
	mask-image: url('../images/envelope-fill.png');
}

.olt-telephone-fill
{
	-webkit-mask-image: url('../images/telephone-fill.png');
	mask-image: url('../images/telephone-fill.png');
}

.olt-accuracy-tick
{
	-webkit-mask-image: url('../images/accuracy_tick.png');
	mask-image: url('../images/accuracy_tick.png');
}

.olt-secure
{
	-webkit-mask-image: url('../images/secure.png');
	mask-image: url('../images/secure.png');
}

.olt-homeowner
{
	-webkit-mask-image: url('../images/homeowner.png');
	mask-image: url('../images/homeowner.png');
}

.olt-right-arrow-purple {
	-webkit-mask-image: url('../images/right-arrow-purple.png');
	mask-image: url('../images/right-arrow-purple.png');
}

.olt-right-arrow-white {
	-webkit-mask-image: url('../images/right-arrow-white.png');
	mask-image: url('../images/right-arrow-white.png');
}

.olt-creditcard {
	-webkit-mask-image: url('../images/creditcard.png');
	mask-image: url('../images/creditcard.png');
}

.olt-paypal {
	-webkit-mask-image: url('../images/paypal.png');
	mask-image: url('../images/paypal.png');
}

.olt-refund-purple {
	-webkit-mask-image: url('../images/refund-purple.png');
	mask-image: url('../images/refund-purple.png');
}

.olt-lock-green
{
	-webkit-mask-image: url('../images/lock-green.png');
	mask-image: url('../images/lock-green.png');
}

.olt-box-arrow-up-right
{
	-webkit-mask-image: url('../images/box-arrow-up-right.png');
	mask-image: url('../images/box-arrow-up-right.png');

}

.olt-gurantee100
{
	-webkit-mask-image: url('../images/gurantee100.png');
	mask-image: url('../images/gurantee100.png');
}

.olt-penaltyinterest
{
	-webkit-mask-image: url('../images/penaltyinterest.png');
	mask-image: url('../images/penaltyinterest.png');
}
.olt-tax-credit-purple
{
	-webkit-mask-image: url('../images/tax-credit-purple.png');
	mask-image: url('../images/tax-credit-purple.png');
}
.olt-noextra
{
	-webkit-mask-image: url('../images/noextra.png');
	mask-image: url('../images/noextra.png');
}
.olt-secure-filing
{
	-webkit-mask-image: url('../images/secure-filing.png');
	mask-image: url('../images/secure-filing.png');
}

.olt-easy-purple
{
	-webkit-mask-image: url('../images/easy-purple.png');
	mask-image: url('../images/easy-purple.png');
}
.olt-accurate-purple
{
	-webkit-mask-image: url('../images/accurate-purple.png');
	mask-image: url('../images/accurate-purple.png');
}
.olt-quick-purple
{
	-webkit-mask-image: url('../images/quick-purple.png');
	mask-image: url('../images/quick-purple.png');
}

.olt-eitc-purple
{
	-webkit-mask-image: url('../images/eitc-purple.png');
	mask-image: url('../images/eitc-purple.png');
}

.olt-dollar-purple {
	-webkit-mask-image: url('../images/dollar-purple.png');
	mask-image: url('../images/dollar-purple.png');
}
.olt-tax-credit-purple {
	-webkit-mask-image: url('../images/tax-credit-purple.png');
	mask-image: url('../images/tax-credit-purple.png');
}
.olt-info-purple {
	-webkit-mask-image: url('../images/info-purple.png');
	mask-image: url('../images/info-purple.png');
}

.olt-lock {
	-webkit-mask-image: url('../images/lock.png');
	mask-image: url('../images/lock.png');
}
.olt-circle-tick {
	-webkit-mask-image: url('../images/circle-tick.png');
	mask-image: url('../images/circle-tick.png');
}

.olt-form {
	-webkit-mask-image: url('../images/form-purple.png');
	mask-image: url('../images/form-purple.png');
}

.olt-arrow-right-navy
{
	-webkit-mask-image: url('../images/arrow-right-navy-blue.png');
	mask-image: url('../images/arrow-right-navy-blue.png');
}

/* ==========================================================================
8. SPACING & SIZING UTILITIES (olt-)
========================================================================== */

.olt-min-h-24
{
	min-height: 24px;
}

.olt-min-h-180
{
	min-height: 180px;
}

.olt-h-2
{
	height: 2px;
}

.olt-h-40
{
	height: 40px;
}

.olt-w-h-6
{
	width: 6px;
	height: 6px;
}

.olt-w-h-26
{
	width: 26px;
	height: 26px;
}

.olt-w-h-28
{
	width: 28px;
	height: 28px;
}

.olt-w-h-40
{
	width: 40px;
	height: 40px;
}

.olt-w-h-42
{
	width: 42px;
	height: 42px;
}

.olt-w-h-52
{
	width: 52px;
	height: 52px;
}

.olt-w-h-80
{
	width: 80px;
	height: 80px;
}

.olt-max-w-570
{
	max-width: 570px;
}

.olt-max-w-600
{
	max-width: 600px;
}

.olt-max-w-620
{
	max-width: 620px;
}

.olt-max-w-670
{
	max-width: 670px;
}

.olt-max-w-690
{
	max-width: 690px;
}

.olt-max-w-720
{
	max-width: 720px;
}

.olt-max-w-770
{
	max-width: 770px;
}

.olt-max-w-800
{
	max-width: 800px;
}

.olt-max-w-860
{
	max-width: 860px;
}

.olt-max-w-1160
{
	max-width: 1160px !important;
}

.olt-max-w-1200
{
	max-width: 1200px;
}

.olt-max-w-1400
{
	max-width: 1400px;
}

.olt-pt-2
{
	padding-top: 2px;
}

.olt-px-14
{
	padding-left: 14px;
	padding-right: 14px;
}

.olt-px-17
{
	padding-left: 17px;
	padding-right: 17px;
}

.olt-px-18
{
	padding-left: 18px !important;
	padding-right: 18px !important;
}

.olt-py-10
{
	padding-top: 10px;
	padding-bottom: 10px;
}

.olt-py-12
{
	padding-top: 12px;
	padding-bottom: 12px;
}

.olt-py-13
{
	padding-top: 13px !important;
	padding-bottom: 13px !important;
}

.olt-p-26
{
	padding: 26px;
}

.olt-p-32
{
	padding: 32px;
}

.olt-p-34
{
	padding: 34px;
}

.olt-mt-14
{
	margin-top: 14px;
}

.olt-mt-22
{
	margin-top: 22px;
}

.olt-mb-5
{
	margin-bottom: 5px;
}

.olt-mb-7
{
	margin-bottom: 7px;
}

.olt-mb-10
{
	margin-bottom: 10px;
}

.olt-mb-28
{
	margin-bottom: 28px;
}

.olt-my-12-5
{
	margin-top: 12.5px;
	margin-bottom: 12.5px;
}

.olt-my-13
{
	margin-top: 13px;
	margin-bottom: 13px;
}

.olt-my-18
{
	margin-top: 18px;
	margin-bottom: 18px;
}

.olt-my-19
{
	margin-top: 19px;
	margin-bottom: 19px;
}

.olt-badge-padding
{
	padding: 6px 9px;
}

.olt-rounded-10
{
	border-radius: 10px !important;
}

.olt-rounded-18
{
	border-radius: 18px !important;
}

/* ==========================================================================
9. TYPOGRAPHY UTILITIES (olt-)
========================================================================== */

.olt-ls-wide
{
	letter-spacing: 1.8px;
}

.olt-ls-1-44
{
	letter-spacing: 1.44px;
}

.olt-ls-1
{
	letter-spacing: 1px;
}

.olt-ls-0-31
{
	letter-spacing: 0.31px;
}

.olt-ls-0-5
{
	letter-spacing: 0.5px;
}

.olt-ls-0-8
{
	letter-spacing: 0.8px;
}

.olt-ls-card-title
{
	letter-spacing: -0.5px;
}

.olt-ls-tight
{
	letter-spacing: -1px;
}

.olt-ls-tighter
{
	letter-spacing: -2px;
}

.olt-lh-1
{
	line-height: 1;
}
.olt-lh-1-02
{
	line-height: 1.02;
}

.olt-lh-1-2
{
	line-height: 1.2;
}

.olt-lh-1-267
{
	line-height: 1.267;
}

.olt-lh-1-31
{
	line-height: 1.31;
}

.olt-lh-1-35
{
	line-height: 1.35;
}

.olt-lh-1-4
{
	line-height: 1.4;
}

.olt-lh-1-45
{
	line-height: 1.45;
}

.olt-lh-1-5
{
	line-height: 1.5;
}

.olt-lh-1-55
{
	line-height: 1.55 !important;
}

.olt-lh-1-6
{
	line-height: 1.6;
}

.olt-lh-1-65
{
	line-height: 1.65;
}

.olt-lh-1-7
{
	line-height: 1.7;
}

.olt-ls-2
{
	letter-spacing: 2px;
}

.olt-brightness-170
{
	filter: brightness(1.7);
}

.olt-text-balance
{
	text-wrap: balance;
}

.olt-gap-10
{
	gap: 10px !important;
}

.olt-gap-11
{
	gap: 11px !important;
}

.olt-gap-12
{
	gap: 12px !important;
}

.olt-gap-15
{
	gap: 15px !important;
}

.olt-gap-22
{
	gap: 22px !important;
}

.olt-gap-28
{
	gap: 28px !important;
}

.olt-gap-52
{
	gap: 52px !important;
}


/* ==========================================================================
10. BORDER & SHADOW UTILITIES (olt-)
========================================================================== */

.olt-border-s-4
{
	border-left-width: 4px !important;
}

.olt-border-s-secondary
{
	border-left-color: var(--color-brand-secondary) !important;
}

.olt-border-t-secondary
{
	border-top-color: var(--color-brand-secondary) !important;
}

.olt-shadow-elevated
{
	box-shadow: 0 20px 55px rgba(20, 35, 65, 0.08) !important;
}

.olt-card-dark-glass
{
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.15);
}

.olt-inline-arrow {
	color: var(--color-text-light);
	will-change: transform;
}

.olt-link-card-trigger {
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.olt-link-card-trigger:hover {
	transform: translate3d(6px, 0, 0) !important;
	box-shadow: 0 20px 40px rgba(118, 42, 120, 0.05) !important;
	background-color: var(--color-bg-warm) !important;
}

.olt-link-card-trigger:hover .olt-text-headline {
	color: var(--color-brand-primary) !important;
}

.olt-link-card-trigger:hover .olt-inline-arrow {
	color: var(--color-brand-primary) !important;
	transform: translate3d(4px, 0, 0);
}

.olt-bg-glass
{
	border: 1px solid rgba(255, 255, 255, .15);
	background: rgba(255, 255, 255, .05);
}

/**************** Exiting classs Added Vijay *******************/

.alert-warning
{
	background-color: #fff9ed;
	border: 1px solid #eadcbf !important;
	color: #665a43;
}

.nav-link:hover
{
	background: rgb(250, 245, 251) !important;
	color: rgb(6, 43, 92) !important;
	border-radius: 10px;
}

.olt-btn-primary-default {
	background: var(--color-brand-secondary);
	color: var(--color-text-white);
	box-shadow: 0 4px 14px rgba(118, 52, 127, 0.3);
	border-radius: 8px;
	border: none;
	font-size: clamp(14px, 3.6vw, 15px);
	padding: 10px clamp(12px, 3vw, 18px);
	font-weight: 700;
}
.olt-btn-primary-default:hover,.olt-btn-primary-default:active,.olt-btn-primary-default:focus,.olt-btn-primary-default:focus-visible
{
	box-shadow: 0 6px 20px rgba(118, 52, 127, 0.4);
	color: var(--color-text-white) !important;
	outline: 0px !important;
	background: var(--color-brand-secondary-dark) !important;
}

.olt-btn-success-default {
	background: var(--color-brand-secondary);
	color: var(--color-text-white);
	transition: all 0.2s ease;
	font-size: 14px;
	border: none;
}
.olt-btn-success-default:hover,.olt-btn-success-default:active,.olt-btn-success-default:focus,.olt-btn-success-default:focus-visible {
	transform: translateY(-2px);
	color: var(--color-text-white) !important;
	background: var(--color-brand-secondary) !important;
	outline: 0px !important;
	opacity: 0.9;
}

.olt-btn-secondary-default {
	background: var(--color-text-white);
	color: var(--color-brand-primary);
	border: 1px solid var(--color-brand-primary);
	transition: all 0.2s ease;
	font-size: 14px;
}
.olt-btn-secondary-default:hover,.olt-btn-secondary-default:active,.olt-btn-secondary-default:focus,.olt-btn-secondary-default:focus-visible, .olt-btn-secondary-default.active {
	background: var(--color-brand-primary) !important;
	border: 1px solid var(--color-brand-secondary);
	outline: 0px !important;
	box-shadow: none;
	color: var(--color-text-white) !important;
}

.olt-grid
{
	display: grid;
}

.olt-hero-grid
{
	grid-template-columns: 1.08fr 0.92fr;
}

.olt-stats-grid
{
	grid-template-columns: repeat(4, 1fr);
}

.olt-offer-grid
{
	grid-template-columns: 1.1fr 0.9fr;
}

@media (max-width: 900px)
{
	.olt-hero-grid, .olt-offer-grid
	{
		grid-template-columns: 1fr;
	}
	.olt-stats-grid
	{
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 600px)
{
	.olt-stats-grid
	{
		grid-template-columns: 1fr;
	}
}

.olt-footer_section
{
	background: var(--color-brand-primary);
	color: var(--color-text-white);
	overflow:hidden;
}

.olt-footer_section ul
{
	list-style-type:none;
}
.olt-footer_section a
{
	transition: color 0.2s ease;
}
.olt-footer_section ul li a:hover
{
	color: var(--color_link_muted);
}

.olt-footer-logo img { height: 36px; filter: brightness(0) invert(1); }

.olt-copyright_section
{
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	padding: 16px clamp(16px, 4vw, 48px);
}

.olt-section-heading
{
	font-weight: 700;
	line-height: 1.15;
	color: var(--color-brand-primary);
	font-size: 35px;
	letter-spacing: -1px;
}


/**************** Exiting classs Added Vijay *******************/

.is-hidden {
	display: none !important;
}

.olt-cursor-pointer {
	cursor: pointer;
}

/* Search Input Layout & Sizing */
.olt-search-input {
	width: 100%;
	height: 56px;
	border: 1px solid var(--color-border-subtle);
	border-radius: 10px;
	padding: 0 110px 0 46px;
	font-size: 0.96875rem; /* 15.5px */
	outline: none;
	box-shadow: 0 8px 26px rgba(20, 35, 65, 0.05);
	transition: border-color 0.2s, box-shadow 0.2s;
}

.olt-search-input:focus {
	border-color: var(--color-brand-secondary) !important;
	box-shadow: 0 0 0 3px rgba(118, 42, 120, 0.09) !important;
}

.olt-search-btn {
	right: 7px;
	top: 7px;
	height: 42px;
	border-radius: 7px;
	padding: 0 17px;
	background-color: var(--color-brand-secondary);
	transition: background-color 0.2s ease;
}

.olt-search-btn:hover {
	background-color: var(--color-brand-secondary-hover);
}

.olt-search-icon-wrapper {
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	pointer-events: none;
}

.olt-sticky-sidebar {
	position: sticky;
	top: 90px;
	align-self: flex-start;
	z-index: 20;
}

.olt-accordion-btn {
	font-size: 0.90625rem; /* 14.5px */
}

.olt-hover-link {
	transition: color 0.2s ease;
}

.olt-hover-link:hover {
	color: var(--color-brand-secondary) !important;
}

.olt-accordion-btn.collapsed
{
	background-color: #ffffff !important;
}

.olt-accordion-btn:not(.collapsed)
{
	background-color: var(--color-bg-soft-tint) !important;
}

.form-check-input:checked
{
	background-color: var(--color-brand-secondary) !important;
}

.olt-table-hover-warm
{
	--bs-table-hover-bg: var(--color-bg-warm);
}

.olt-hover-border-secondary
{
	transition: border-color 0.2s ease;
}

.olt-hover-border-secondary:hover,
.olt-hover-border-secondary:focus
{
	border-color: var(--color-brand-secondary) !important;
}

input
{
	padding: 0.625rem;
}

input:focus, select:focus, .form-control:focus, .form-select:focus
{
	outline: none;
	border: 1px solid var(--color-brand-secondary) !important;
	box-shadow: 0 0 0 0.2rem rgba(118, 42, 120, 0.15) !important;
}

.olt-meter-weak
{
	background-color: var(--color-bg-meter-weak);
}

.olt-meter-medium
{
	background-color: var(--color-bg-meter-medium);
}

.olt-meter-strong
{
	background-color: var(--color-bg-meter-strong);
}

.form-control::placeholder,
.olt-search-input::placeholder
{
	color: var(--color-text-light) !important;
	opacity: 0.85 !important;
}

.form-control::-webkit-input-placeholder
{
	color: var(--color-text-light) !important;
	opacity: 0.85 !important;
}

.form-control::-moz-placeholder
{
	color: var(--color-text-light) !important;
	opacity: 0.85 !important;
}

.form-control:-ms-input-placeholder
{
	color: var(--color-text-light) !important;
	opacity: 0.85 !important;
}

.olt-card-elevate
{
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1),
	            box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1),
	            border-color 0.3s ease;
	will-change: transform, box-shadow;
}

.olt-card-elevate:hover
{
	transform: translateY(-6px);
	border-color: var(--color-brand-secondary) !important;
	box-shadow: 0 20px 38px -10px rgba(118, 42, 120, 0.12),
	            0 10px 20px -6px rgba(6, 43, 92, 0.06) !important;
}

.olt-topic-card {
	background: var(--color-text-white);
	border-radius: 1.5rem;
	padding: 32px 28px 28px;
	text-align: left;
	position: relative;
	overflow: hidden;
}

.olt-topic-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
}

.olt-topic-card h4 {
	margin-bottom: 8px;
	font-weight: 700;
	line-height: 1.25;
	font-size: 20px;
	color: var(--color-brand-primary);
}

.olt-tier-tab {
	background-color: var(--color-text-white);
	border-color: var(--color-border-subtle);
	color: var(--color-brand-primary) !important;
}

.olt-tier-tab:hover {
	background-color: var(--color-hover-tint) !important;
	border-color: var(--color-brand-secondary) !important;
	color: var(--color-brand-secondary) !important;
}


@media only screen and (max-width: 992px) {
	.nav-link
	{
		display: block !important; 
		padding: 14px 4px !important; 
		border-bottom: 1px solid rgb(236, 230, 238); 
		font-size: 14px !important; 
		font-weight: 600;  
		text-decoration: none;
		border-radius: 0 !important;
		color: var(--color-brand-primary) !important;
	}
	
	.nav-link:hover
	{
		background-color: #fff !important;
		color: var(--color-brand-primary) !important;
	}
	
	.navbar-collapse
	{
		padding: 0 !important;
	}
	
	.navbar-nav
	{
		padding: 8px 0px 4px !important; 
		margin-top: 12px !important; 
		margin-bottom: 0px !important; 
		border-top: 1px solid rgb(236, 230, 238);
		gap: 0 !important;
	}
	
	.navbar-toggler
	{
		padding: 0px !important;
	}    
}

@media (min-width: 1800px) {
	body {
		zoom: 1.4;
	}
}

.navbar-toggler-icon-menu
{
	-webkit-mask-image: url('../images/menu-purple.png');
	mask-image: url('../images/menu-purple.png');
}

.navbar-toggler-icon-close
{
	-webkit-mask-image: url('../images/close-purple.png');
	mask-image: url('../images/close-purple.png');
}

/* Tweaks line wrapping on tiny mobile screens for privacy meta links */
@media (max-width: 575.98px) {
	.olt-footer-meta a {
		font-size: 0.75rem;
		display: inline-block;
	}
}

.olt-table-head-tint
{
	background-color: var(--color-hover-tint, #f5ebf7) !important;
	border-bottom: 2px solid var(--color-brand-secondary, #762a78) !important;
	color: var(--color-brand-secondary, #762a78) !important;
}

.olt-table-head-tint th
{
	background-color: transparent !important;
	color: var(--color-brand-secondary, #762a78) !important;
}

.olt-table-striped-mild tbody tr:nth-of-type(odd) > *
{
	background-color: #ffffff !important;
}

.olt-table-striped-mild tbody tr:nth-of-type(even) > *
{
	background-color: #fcf9fd !important;
}



/* extension page start */

.olt-stepper-panel
{
	background-color: var(--color-text-white);
	border: 1px solid var(--color-border-subtle);
	border-radius: 16px;
	padding: 1.75rem;
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.03);
}

.olt-tab-toggle-group
{
	display: inline-flex;
	background-color: var(--color-bg-warm) !important;
	border: 1px solid var(--color-border-subtle) !important;
	border-radius: 50rem !important;
	padding: 4px !important;
	gap: 4px;
}

.olt-switch-btn
{
	border: none !important;
	outline: none !important;
	background: transparent !important;
	color: var(--color-text-muted) !important;
	border-radius: 50rem !important;
	padding: 8px 18px !important;
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.olt-switch-btn:hover:not(.active)
{
	color: var(--color-brand-secondary) !important;
	background-color: var(--color-hover-tint) !important;
}

.olt-switch-btn.active
{
	background-color: var(--color-brand-secondary) !important;
	color: #ffffff !important;
	box-shadow: 0 2px 8px rgba(118, 42, 120, 0.3) !important;
}

/* extension page end */

/* stateextension page start */

.olt-state-header-banner
{
	background: radial-gradient(circle at 92% 10%, rgba(118, 42, 120, 0.08), transparent 40%), linear-gradient(135deg, #ffffff 0%, #faf6fb 100%);
	border: 1px solid var(--color-border-delicate);
}

.olt-state-sidebar-card
{
	border: 1px solid var(--color-border-delicate);
	box-shadow: 0 10px 30px rgba(6, 43, 92, 0.04);
}

.olt-sidebar-search
{
	width: 100%;
	height: 38px;
	border: 1px solid var(--color-border-subtle);
	border-radius: 8px;
	padding: 0 12px 0 34px;
	font-size: 0.8125rem;
	outline: none;
	transition: all 0.2s ease;
}

.olt-sidebar-search:focus
{
	border-color: var(--color-brand-secondary) !important;
	box-shadow: 0 0 0 2px rgba(118, 42, 120, 0.1) !important;
}

#stateMenu .state-selector-btn
{
	border: 1px solid transparent;
	color: var(--color-text-dark);
	background-color: transparent;
	font-weight: 500;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

#stateMenu .state-selector-btn:hover
{
	background-color: var(--color-hover-tint) !important;
	color: var(--color-brand-secondary) !important;
	transform: translateX(3px);
}

#stateMenu .state-selector-btn.active
{
	background: linear-gradient(135deg, var(--color-brand-secondary) 0%, #5d1f60 100%) !important;
	color: #ffffff !important;
	font-weight: 600 !important;
	box-shadow: 0 4px 14px rgba(118, 42, 120, 0.25) !important;
	border-color: var(--color-brand-secondary) !important;
}

#stateMenu .state-selector-btn.active .olt-right-arrow
{
	background-color: #ffffff !important;
	opacity: 1 !important;
	transform: translateX(2px);
}

.olt-state-scroll
{
	max-height: calc(100vh - 240px);
	min-height: 440px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: rgba(118, 42, 120, 0.25) transparent;
}

.olt-state-scroll::-webkit-scrollbar
{
	width: 4px;
}

.olt-state-scroll::-webkit-scrollbar-thumb
{
	background: rgba(118, 42, 120, 0.3);
	border-radius: 8px;
}

.olt-state-card-detail
{
	border: 1px solid var(--color-border-delicate) !important;
	border-top: 4px solid var(--color-brand-secondary) !important;
	box-shadow: 0 14px 40px rgba(6, 43, 92, 0.06) !important;
}

.olt-callout-pill
{
	background: rgba(118, 42, 120, 0.06);
	border: 1px solid rgba(118, 42, 120, 0.14);
}

.olt-voucher-box
{
	background: linear-gradient(135deg, var(--color-bg-canvas) 0%, var(--color-bg-warm) 100%);
	border: 1px solid var(--color-border-contrast);
}

/* stateextension page end */

/* Federalerrorcodes page start */

@media (max-width: 991.98px)
{
	.olt-split-detail-container
	{
		border-top: 1px solid var(--color-border-subtle) !important;
		scroll-margin-top: 90px;
	}
}

@media (min-width: 992px)
{
	.olt-split-sidebar-container
	{
		position: sticky;
		top: 100px;
		max-height: calc(100vh - 140px);
		overflow-y: auto;
		padding-right: 24px;
		flex-shrink: 0;
	}

	.olt-workspace-split-divider
	{
		border-right: 1px solid var(--color-border-subtle) !important;
	}

	.olt-split-detail-container
	{
		position: sticky;
		top: 100px;
		max-height: calc(100vh - 140px);
		overflow-y: auto;
		padding-left: 24px;
		padding-right: 24px;
		flex-grow: 1;
	}
}

.olt-split-sidebar-container::-webkit-scrollbar,
.olt-split-detail-container::-webkit-scrollbar
{
	width: 4px;
}

.olt-split-sidebar-container::-webkit-scrollbar-thumb,
.olt-split-detail-container::-webkit-scrollbar-thumb
{
	background-color: rgba(118, 42, 120, 0.2);
	border-radius: 10px;
}

.olt-stream-row
{
	background: transparent !important;
	border: 1px solid transparent !important;
	border-radius: 8px;
	padding: 14px 16px;
	position: relative;
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
	word-wrap: break-word;
	word-break: break-word;
}

.olt-stream-row:hover:not(.active-error-card)
{
	background-color: var(--color-hover-tint) !important;
}

.olt-stream-row.active-error-card
{
	background-color: #ffffff !important;
	border-color: var(--color-border-subtle) !important;
	box-shadow: 0 4px 12px rgba(6, 43, 92, 0.04), 0 1px 2px rgba(6, 43, 92, 0.02) !important;
}

.olt-stream-row.active-error-card::before
{
	content: '';
	position: absolute;
	left: 0;
	top: 20%;
	height: 60%;
	width: 3px;
	background-color: var(--color-brand-secondary);
	border-radius: 0 4px 4px 0;
}

.olt-split-detail-block
{
	animation: oltWorkspacePaneSlide 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes oltWorkspacePaneSlide
{
	from { opacity: 0; transform: translateY(4px); }
	to { opacity: 1; transform: translateY(0); }
}

.olt-search-clear-btn
{
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	border: none;
	outline: none;
	background: transparent;
	color: var(--color-text-light);
	padding: 4px 6px;
	font-size: 1.15rem;
	line-height: 1;
	cursor: pointer;
	transition: color 0.2s ease;
	z-index: 6;
}

.olt-search-clear-btn:hover
{
	color: var(--color-brand-secondary) !important;
}

.olt-action-card-callout
{
	background-color: var(--color-text-white);
	border: 1px solid var(--color-border-subtle);
	border-left: 4px solid var(--color-brand-secondary) !important;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(6, 43, 92, 0.04);
}

.olt-support-banner
{
	background: linear-gradient(135deg, var(--color-bg-warm) 0%, var(--color-bg-canvas) 100%);
	border-top: 1px solid var(--color-border-delicate);
	border-bottom: 1px solid var(--color-border-delicate);
	position: relative;
}

.olt-support-banner-divider
{
	border-right: 1px dashed var(--color-border-subtle);
}

@media (max-width: 767.98px)
{
	.olt-support-banner-divider
	{
		border-right: none;
		border-bottom: 1px dashed var(--color-border-subtle);
		padding-bottom: 1rem;
		margin-bottom: 1rem;
	}
}

.olt-support-icon-pill
{
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background-color: var(--color-hover-tint);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

/* model popup start */

.olt-classic-modal .modal-dialog,
.olt-user-modal .modal-dialog
{
	margin-top: 50px;
}

@media (min-width: 768px)
{
	.olt-classic-modal .modal-dialog
	{
		max-width: 600px;
	}
}

.modal-backdrop.show
{
	opacity: 0.5 !important;
	background-color: var(--color-text-black) !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

.modal-backdrop
{
	filter: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

.modal
{
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

/* model popup end */

/* login & create buttons (mobile view) - start */

@media (max-width: 374.98px)
{
	#LoginButton, #CreateButton
	{
		font-size: 13px !important;
	}
}

@media (max-width: 334.98px)
{
	#LoginButton, #CreateButton
	{
		font-size: 11.5px !important;
	}
}

@media (max-width: 314.98px)
{
	#LoginButton, #CreateButton
	{
		font-size: 10px !important;
	}
}

/* login & create buttons (mobile view) - end */


/* default page start */

.olt-hero-badge
{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background-color: var(--color-success-bg-subtle);
	border: 1px solid var(--color-success-border-subtle);
	color: var(--color-success-dark);
	padding: 7px 10px;
	border-radius: 999px;
	margin-bottom: 12px;
}

.olt-hero-heading-lg
{
	margin: 10px 0 18px;
	font-weight: 700;
	font-size: clamp(40px, 6vw, 54px);
	line-height: 1.02;
	letter-spacing: -2px;
	color: var(--color-brand-primary);
}

.olt-feature-box
{
	border: 1px solid var(--color-border-delicate);
	border-radius: 12px;
	padding: 18px;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.olt-feature-box:hover
{
	transform: translateY(-4px);
	box-shadow: 0 14px 32px rgba(6, 43, 92, 0.08);
}

.olt-feature-icon-pill
{
	width: 26px;
	height: 26px;
	background: var(--color-success-bg-subtle);
	color: var(--color-brand-secondary);
}

.olt-link-hover
{
	color: var(--color-brand-secondary);
}

.olt-link-hover:hover
{
	color: var(--color-brand-primary);
}

footer.olt-footer_section > .olt-max-w-1400 a.olt-color_link_muted:hover
{
	color: #ffffff !important;
}

.olt-section-spacing
{
	padding: 0 clamp(20px, 4vw, 48px) 0;
}

.olt-section-py-28
{
	padding-top: 28px;
	padding-bottom: 28px;
}

.olt-section-py-64
{
	padding-top: 64px;
	padding-bottom: 64px;
}

.olt-main-content
{
	min-height: calc(100vh - 72px);
}

/* default page end */