/* Branding  */

:root {

	/* Color Variable */
	--theme-primary-color: #800000;
	--theme-secondary-color: #ffe4e1;
	--dark-color: #222222;
	--lightdark-color: #666666;
	--dark-white: #ffffffb2;

	/* Linear Gradient Variable */
	/* --technology-icon-linear: linear-gradient(#e7e5ff1a 0%, #e7e5ff00 100%); */

	/* Font Size Variable */
	--h1-fs: 58px;
	--h2-fs: 44px;
	--h3-fs: 36px;
	--h4-fs: 30px;
	--h5-fs: 24px;
	--h6-fs: 18px;
	--p-fs: 18px;

	/* Spacing Variable */
	--section-padding: 80px;
	/* --section-title-bottom: 70px; */
	--content-space: 30px;
	--headding-lh: 1.2em;

	/* Font Family Variable */
	/* --theme-font: "Poppins", Arial, sans-serif; */
	--font-petrona: 'Petrona';
	--font-dm-sans: 'DM Sans';

}

html.lenis {
	height: auto;
}
.lenis.lenis-smooth {
	scroll-behavior: auto;
} 
.lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}
.lenis.lenis-stopped {
	overflow: hidden;
}
.lenis.lenis-scrolling iframe {
	pointer-events: none;
} 


/* Common CSS */
body {
	font-size: var(--p-fs);
	font-weight: 400;
	color: var(--lightdark-color);
	font-family: var(--font-dm-sans);
}
a {
	color: inherit;
	text-decoration: none;
	background-color: transparent;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
a:focus {
	outline: none;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
	border: none;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
	-webkit-box-shadow: 0 0 0 30px white inset !important;
}
:focus {
  outline: none;
}
:focus-visible {
  box-shadow: none !important;
}


/* Headings */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	margin: 0;
	font-weight: bold;
	color: var(--theme-primary-color);
	line-height: var(--headding-lh);
	font-family: var(--font-petrona);
	margin-bottom: var(--content-space);
}

h1,
.h1 {
	font-size: var(--h1-fs);
}
h2,
.h2 {
	font-size: var(--h2-fs);
}
h3,
.h3 {
	font-size: var(--h3-fs);
}
h4,
.h4 {
	font-size: var(--h4-fs);
}
h5,
.h5 {
	font-size: var(--h5-fs);
}
h6,
.h6 {
	font-size: var(--h6-fs);
}
p {
	font-size: var(--p-fs);
	line-height: 1.6em;
	margin-bottom: 16px;
	text-align: justify;
}


/* Section CSS */
.sec-padding {
  padding-block: var(--section-padding);
}

/* Theme Title CSS */
.theme-title {
	padding-bottom: 30px;
	position: relative;
}
.theme-title .star-line {
    gap: 5px;
    width: 100px;
	margin: 0 auto;
	display: flex;
    font-size: 10px;
    position: relative;
    justify-content: center;
    color: var(--theme-primary-color);
	padding: 5px;
}
.theme-title .star-line::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background-color: var(--bs-white);
}
.theme-title .star-line::after {
	content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 300px;
    height: 1px;
	z-index: 0;
    transform: translateX(-50%);
    background-color: var(--theme-primary-color);
}
.theme-title .star-line i {
	position: relative;
	z-index: 2;
}
.theme-title h2 {
	margin-bottom: 10px;
}

.bg-section .theme-title .star-line::before {
	background-color: var(--theme-secondary-color);
}


.body-content {
	margin-top: 76px;
}
.bg-section {
	background-color: var(--theme-secondary-color);
}

/* Buttons CSS */
.btn {
	border: 0;
    line-height: 1;
    padding: 15px 30px;
    border-radius: 30px;
	font-weight: 600;
}
.btn-primary {
	color: var(--bs-white);
	background-color: var(--theme-primary-color);
}
.btn-primary:hover,
.btn-primary:focus, 
.btn-primary.active,
.btn-primary.show,
.btn-primary:first-child:active,
:not(.btn-check)+.btn:active
{
	color: var(--theme-primary-color);
	background-color: var(--theme-secondary-color);
}
.btn-secondary {
	color: var(--theme-primary-color);
	background-color: var(--theme-secondary-color);
}
.btn-secondary:hover,
.btn-secondary:focus, 
.btn-secondary.active,
.btn-secondary.show,
.btn-secondary:first-child:active,
:not(.btn-check)+.btn:active {
	color: var(--bs-white);
	background-color: var(--theme-primary-color);
}
.btn-line {
	border: 1px solid var(--theme-primary-color) !important;
}






@media screen and (max-width: 1200px) {
	:root {
		--h2-fs: 38px;
		--h3-fs: 32px;

		--content-space: 20px;
	}
	
}
@media screen and (max-width: 992px) {
	:root {
		--h1-fs: 40px;
		--h2-fs: 36px;
		--h3-fs: 30px;
		--p-fs: 16px;
	}
}
@media screen and (max-width: 767px) {
	:root {
		--h1-fs: 30px;
        --h2-fs: 28px;
        --h3-fs: 26px;
        --h5-fs: 22px;
		--content-space: 10px;
		--section-padding: 50px;
	}
	
	p {
		line-height: 1.5em;
    	margin-bottom: 10px;
	}
	.theme-title {
		padding-bottom: 20px;
	}
	.theme-title .star-line {
		font-size: 7px;
		width: 65px;
		gap: 3px;
	}
	.theme-title .star-line::after {
    	width: 200px;
	}
}

@media screen and (max-width: 576px) {
    :root {
        --h1-fs: 26px;
        --h2-fs: 24px;
        --h3-fs: 22px;
        --h5-fs: 20px;
        --content-space: 8px;
        --section-padding: 40px;
    }
}