/* =========================================================
   ROOT
========================================================= */

:root {
	--cc-red: #BD2E2E;
	--cc-dark: #191919;
	--cc-black: #000000;
	--cc-white: #ffffff;

	--cc-gradient: linear-gradient(90deg,
			#BD2E2E 20%,
			#191919 100%);

	--cc-font: "Inter Tight", sans-serif;
}


/* =========================================================
   GLOBAL RESET
========================================================= */

html {
	scroll-behavior: smooth;
}

html,
body {
	margin: 0 !important;
	padding: 0 !important;
}

body.chimney-assessment-page {
	font-family: var(--cc-font);
	background: #ffffff;
	color: #ffffff;
}


/* REMOVE WORDPRESS / GENERATEPRESS SPACING */

.chimney-assessment-page .site,
.chimney-assessment-page .site-content,
.chimney-assessment-page .content-area,
.chimney-assessment-page .site-main,
.chimney-assessment-page .entry-content {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}

.chimney-assessment-page .entry-header {
	display: none !important;
}


/* =========================================================
   HEADER
========================================================= */

.cc-header {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    z-index: 99999;

    color: var(--cc-white);

    transition:
        background-color 0.3s ease,
        box-shadow 0.3s ease;
}


/* =========================================================
   TOP BAR
========================================================= */

.cc-topbar {
	width: 100%;

	background: var(--cc-gradient);
}


.cc-topbar-inner {
	min-height: 55px;

	display: flex;
	align-items: center;
	justify-content: space-between;
}


/* =========================================================
   PHONE
========================================================= */

.cc-phone {
	display: inline-flex;

	align-items: center;

	gap: 10px;

	color: #ffffff !important;

	text-decoration: none !important;

	font-size: 19px;

	font-weight: 500;

	line-height: 1;
}


.cc-phone i {
	font-size: 19px;
}


/* =========================================================
   SOCIAL ICONS
========================================================= */

.cc-socials {
	display: flex;

	align-items: center;

	gap: 12px;
}


.cc-social {
	width: 35px;
	height: 35px;

	display: flex;
	align-items: center;
	justify-content: center;

	border: 2px solid #ffffff;

	border-radius: 50%;

	color: #ffffff !important;

	text-decoration: none !important;

	font-size: 18px;

	transition: all 0.25s ease;
}


.cc-social:hover {
	background: #ffffff;

	color: var(--cc-dark) !important;

	transform: translateY(-2px);
}


/* =========================================================
   MAIN NAVIGATION
========================================================= */

.cc-navbar {
	width: 100%;

	min-height: 130px;

	padding: 0 !important;

	background: var(--cc-dark) !important;
}


.cc-navbar-container {
	min-height: 130px;

	display: flex;

	align-items: center;
}


/* =========================================================
   LOGO
========================================================= */

.cc-logo {
	width: 240px;

	flex: 0 0 240px;

	display: flex;

	align-items: center;
}


.cc-logo-link {
	display: inline-flex;

	align-items: center;

	margin: 0;

	padding: 0;

	text-decoration: none !important;
}


.cc-logo .custom-logo-link {
	display: inline-flex;

	align-items: center;

	margin: 0;

	padding: 0;
}


.cc-logo img.custom-logo {
	display: block !important;

	width: 160px !important;

	height: auto !important;

	max-width: 190px !important;

	max-height: 145px !important;

	object-fit: contain;

	margin: 0 !important;

	padding: 0 !important;
}


.cc-site-title {
	color: #ffffff !important;

	font-size: 28px;

	font-weight: 700;

	text-decoration: none !important;
}


/* =========================================================
   NAVIGATION AREA
========================================================= */

.cc-navbar-collapse {
	display: flex;

	align-items: center;

	flex: 1;
}


/* =========================================================
   WORDPRESS MENU RESET
========================================================= */

.cc-menu {
	display: flex !important;

	flex-direction: row;

	align-items: center;

	justify-content: center;

	gap: 35px;

	flex: 1;

	margin: 0 !important;

	padding: 0 !important;

	list-style: none !important;
}


/* IMPORTANT: REMOVE WORDPRESS BULLETS */

.cc-menu,
.cc-menu ul,
.cc-menu li {
	list-style: none !important;

	margin-top: 0;

	margin-bottom: 0;
}


.cc-menu li::before {
	display: none !important;

	content: none !important;
}


/* =========================================================
   MENU ITEM
========================================================= */

.cc-menu>.menu-item {
	position: relative;

	margin: 0 !important;

	padding: 0 !important;
}


.cc-menu>.menu-item>a {
	display: inline-flex;

	align-items: center;

	gap: 9px;

	padding: 10px 0 !important;

	margin: 0 !important;

	color: #ffffff !important;

	font-family: var(--cc-font);

	font-size: 19px;

	font-weight: 500;

	line-height: 1.2;

	text-decoration: none !important;

	white-space: nowrap;

	background: transparent !important;

	border: 0 !important;

	transition: color 0.25s ease;
}


.cc-menu>.menu-item>a:hover {
	color: #dddddd !important;
}


/* =========================================================
   SERVICES DROPDOWN ARROW
========================================================= */

.cc-menu .menu-item-has-children>a::after {

	content: "";

	display: inline-block;

	width: 9px;
	height: 9px;

	border-right: 2px solid #ffffff;
	border-bottom: 2px solid #ffffff;

	transform: rotate(45deg);

	margin-left: 4px;
	margin-top: -5px;
}


/* =========================================================
   DROPDOWN
========================================================= */

.cc-menu .sub-menu {

	position: absolute;

	top: calc(100% + 8px);

	left: 0;

	min-width: 220px;

	margin: 0 !important;

	padding: 10px 0 !important;

	list-style: none !important;

	background: #191919;

	border-radius: 4px;

	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);

	opacity: 0;

	visibility: hidden;

	transform: translateY(8px);

	transition: all 0.2s ease;

	z-index: 1000;
}


.cc-menu .menu-item-has-children:hover>.sub-menu {

	opacity: 1;

	visibility: visible;

	transform: translateY(0);
}


.cc-menu .sub-menu li {
	list-style: none !important;

	margin: 0 !important;

	padding: 0 !important;
}


.cc-menu .sub-menu li a {

	display: block;

	padding: 11px 18px;

	color: #ffffff !important;

	font-size: 17px;

	font-weight: 500;

	text-decoration: none !important;
}


.cc-menu .sub-menu li a:hover {
	background: var(--cc-red);
}


/* =========================================================
   CONTACT BUTTON
========================================================= */

.cc-nav-contact {
	margin-left: 30px;

	flex: 0 0 auto;
}


.cc-contact-button {

	min-width: 170px;

	height: 55px;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	padding: 0 0px;

	border-radius: 50px;

	background: var(--cc-red);

	color: #ffffff !important;

	font-family: var(--cc-font);

	font-size: 19px;

	font-weight: 500;

	text-decoration: none !important;

	transition: all 0.25s ease;
}


.cc-contact-button:hover {
	background: #a92525;

	color: #ffffff !important;

	transform: translateY(-2px);
}


/* =========================================================
   MOBILE TOGGLE
========================================================= */

.cc-navbar-toggler {

	width: 56px;

	height: 52px;

	padding: 0 !important;

	margin-left: auto;

	border: 0 !important;

	border-radius: 3px !important;

	background: var(--cc-red) !important;

	display: none;

	align-items: center;

	justify-content: center;
}


.cc-navbar-toggler:focus {
	box-shadow: none !important;
}


/* =========================================================
   CUSTOM HAMBURGER
========================================================= */

.cc-navbar-toggler .navbar-toggler-icon {

	width: 28px;

	height: 20px;

	background-image: none !important;

	position: relative;

	display: block;
}


.cc-navbar-toggler .navbar-toggler-icon::before,
.cc-navbar-toggler .navbar-toggler-icon::after {

	content: "";

	position: absolute;

	left: 0;

	width: 28px;

	height: 2px;

	background: #ffffff;

	border-radius: 2px;
}


.cc-navbar-toggler .navbar-toggler-icon::before {
	top: 2px;

	box-shadow: 0 8px 0 #ffffff,
		0 16px 0 #ffffff;
}


.cc-navbar-toggler .navbar-toggler-icon::after {
	display: none;
}


/* =========================================================
   STICKY HEADER
========================================================= */

/* =====================================================
   STICKY HEADER — AFTER SCROLL
===================================================== */

.cc-header.cc-is-sticky {

    position: fixed !important;

    top: 0 !important;
    left: 0 !important;

    width: 100% !important;

    z-index: 99999 !important;

    background: #000000 !important;

    box-shadow:
        0 5px 25px rgba(0, 0, 0, 0.35);
}


/* =====================================================
   HIDE TOPBAR
===================================================== */

.cc-header.cc-is-sticky .cc-topbar {

    display: none !important;
}


/* =====================================================
   STICKY NAVBAR
===================================================== */

.cc-header.cc-is-sticky .cc-navbar {

    min-height: 90px !important;

    background: #000000 !important;
}


/* =====================================================
   STICKY NAVBAR CONTAINER
===================================================== */

.cc-header.cc-is-sticky .cc-navbar-container {

    min-height: 90px !important;
}


/* =====================================================
   STICKY LOGO
===================================================== */

.cc-header.cc-is-sticky
.cc-logo img.custom-logo {

    width: 150px !important;

    max-width: 150px !important;

    max-height: 75px !important;
}
/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199.98px) {

	.cc-logo {
		width: 200px;

		flex-basis: 200px;
	}


	.cc-logo img.custom-logo {

		width: 155px !important;

		max-width: 155px !important;
	}


	.cc-menu {

		gap: 20px;
	}


	.cc-menu>.menu-item>a {

		font-size: 18px;
	}


	.cc-nav-contact {
		margin-left: 18px;
	}


	.cc-contact-button {

		min-width: 150px;

		height: 56px;

		font-size: 18px;

		padding: 0 20px;
	}
}


/* =========================================================
   MOBILE / TABLET
========================================================= */
/* =========================================================
   MOBILE / TABLET
========================================================= */

@media (max-width: 991.98px) {

	.cc-topbar-inner {
		min-height: 62px;
	}

	.cc-phone {
		font-size: 19px;
	}

	.cc-socials {
		gap: 8px;
	}

	.cc-social {
		width: 38px;
		height: 38px;
		font-size: 15px;
	}

	/* NAVBAR */

	.cc-navbar {
		min-height: 95px;
	}

	.cc-navbar-container {
		min-height: 95px;
		position: relative;
	}

	/* LOGO */

	.cc-logo {
		width: auto;
		flex: 0 0 auto;
	}

	.cc-logo img.custom-logo {
		width: 140px !important;
		max-width: 140px !important;
	}

	/* HAMBURGER */

	.cc-navbar-toggler {
		display: flex !important;
		width: 56px;
		height: 52px;
		margin-left: auto;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 3px !important;
		background: var(--cc-red) !important;
		align-items: center;
		justify-content: center;
		position: relative;
		z-index: 10002;
		cursor: pointer;
	}

	.cc-navbar-toggler:focus {
		outline: none !important;
		box-shadow: none !important;
	}

	/* HAMBURGER ICON */

	.cc-navbar-toggler .navbar-toggler-icon {
		width: 28px;
		height: 20px;
		background-image: none !important;
		position: relative;
		display: block;
	}

	.cc-navbar-toggler .navbar-toggler-icon::before {
		content: "";
		position: absolute;
		left: 0;
		top: 2px;
		width: 28px;
		height: 2px;
		background: #ffffff;
		border-radius: 2px;
		box-shadow:
			0 8px 0 #ffffff,
			0 16px 0 #ffffff;
	}

	/* MENU CLOSED */

	 .cc-navbar-collapse {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        width: 100% !important;

        display: block !important;

        padding: 20px !important;

        background: #191919 !important;

        border-top: 1px solid rgba(255, 255, 255, 0.08);

        opacity: 0;
        visibility: hidden;
        pointer-events: none;

        transform: translateY(-10px);

        transition:
            opacity 0.25s ease,
            visibility 0.25s ease,
            transform 0.25s ease;

        z-index: 10000;

        box-sizing: border-box;
    }


    .cc-navbar-collapse.cc-menu-open {
        opacity: 1 !important;

        visibility: visible !important;

        pointer-events: auto;

        transform: translateY(0) !important;
    }

	/* MENU */

	.cc-menu {
		display: flex !important;

		flex-direction: column !important;

		align-items: stretch !important;

		justify-content: flex-start !important;

		gap: 0 !important;

		width: 100% !important;

		margin: 0 !important;

		padding: 0 !important;

		list-style: none !important;
	}

	.cc-menu>.menu-item {
		width: 100%;
		margin: 0 !important;
		padding: 0 !important;
	}

	.cc-menu>.menu-item>a {
		display: flex !important;

		align-items: center;

		width: 100%;

		padding: 14px 5px !important;

		color: #ffffff !important;

		font-size: 21px;

		font-weight: 500;

		text-decoration: none !important;

		box-sizing: border-box;
	}

	/* SUBMENU */

	.cc-menu .sub-menu {
		position: static !important;

		display: none !important;

		opacity: 1 !important;

		visibility: visible !important;

		transform: none !important;

		width: 100%;

		background: transparent !important;

		box-shadow: none !important;

		padding: 0 0 10px 20px !important;

		margin: 0 !important;
	}

	.cc-menu .sub-menu.cc-submenu-open {
		display: block !important;
	}

	.cc-menu .menu-item-has-children:hover>.sub-menu {
		display: none !important;
	}

	/* SERVICES ARROW */

	.cc-menu .menu-item-has-children>a::after {
		margin-left: auto !important;
	}

	/* CONTACT */

	.cc-nav-contact {
		width: 100%;

		margin: 20px 0 0 !important;
	}

	.cc-contact-button {
		width: 100% !important;
		height: 55px;
	}

}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575.98px) {

	.cc-topbar-inner {

		min-height: 58px;
	}


	.cc-phone {

		font-size: 16px;

		gap: 7px;
	}


	.cc-phone i {

		font-size: 16px;
	}


	.cc-socials {

		gap: 5px;
	}


	.cc-social {

		width: 32px;

		height: 32px;

		border-width: 1.5px;

		font-size: 13px;
	}


	.cc-navbar {

		min-height: 88px;
	}


	.cc-navbar-container {

		min-height: 88px;
	}


	.cc-logo img.custom-logo {

		width: 120px !important;

		max-width: 120px !important;
	}


	.cc-navbar-toggler {

		width: 52px;

		height: 48px;
	}


	.cc-navbar-collapse {

		padding: 15px;
	}


	.cc-menu>.menu-item>a {

		font-size: 20px;

		padding: 13px 5px !important;
	}
}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 380px) {

	.cc-phone {

		font-size: 14px;
	}


	.cc-phone i {

		display: none;
	}


	.cc-social:nth-child(2) {

		display: none;
	}


	.cc-logo img.custom-logo {

		width: 105px !important;

		max-width: 105px !important;
	}


	.cc-navbar-toggler {

		width: 48px;

		height: 45px;
	}
}

/* =====================================================
   HERO SECTION
===================================================== */

.cc-hero {
	position: relative;
	min-height: 700px;

	background-image: url("../images/New-Project.webp");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;

	display: flex;
	align-items: center;

	overflow: hidden;
}


/* =====================================================
   DARK OVERLAY
===================================================== */

.cc-hero-overlay {
	position: absolute;
	inset: 0;

	background: rgba(0, 0, 0, 0.68);

	z-index: 1;
}


/* =====================================================
   HERO CONTAINER
===================================================== */

.cc-hero-container {
	position: relative;
	z-index: 2;

	width: 100%;

	padding-top: 55px;
	padding-bottom: 55px;
}


/* =====================================================
   HERO ROW
===================================================== */

.cc-hero-container .row {
	min-height: 590px;
}


/* =====================================================
   LEFT CONTENT
===================================================== */

.cc-hero-content {
	max-width: 760px;

	color: #ffffff;
}


/* =====================================================
   MAIN HEADING
===================================================== */

.cc-hero-title {
	margin: 0 0 35px;

	color: #ffffff !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 49px !important;
	font-weight: 600 !important;

	line-height: 1.12 !important;

	letter-spacing: -1.5px;

	text-align: left;
}


/* =====================================================
   SUBTITLE
===================================================== */

.cc-hero-subtitle {
	margin: 0 0 35px;

	color: #ffffff !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 26px !important;
	font-weight: 700 !important;

	line-height: 1.25 !important;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.cc-hero-description {
	max-width: 750px;

	margin: 0 0 30px;

	color: #ffffff !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 19px !important;
	font-weight: 400;

	line-height: 1.45 !important;
}


/* =====================================================
   HERO BUTTONS
===================================================== */

.cc-hero-buttons {
	display: flex;

	align-items: center;

	gap: 15px;

	margin-top: 25px;
}


/* =====================================================
   COMMON BUTTON
===================================================== */

.cc-btn {
	display: inline-flex;

	align-items: center;
	justify-content: center;

	min-height: 55px;

	padding: 12px 30px;

	border-radius: 30px;

	text-decoration: none !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 18px !important;
	font-weight: 600 !important;

	line-height: 1;

	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		transform 0.25s ease;
}


/* =====================================================
   RED BUTTON
===================================================== */

.cc-btn-primary {
	color: #ffffff !important;

	background: #d62828;

	border: 1px solid #d62828;
}


.cc-btn-primary:hover {
	color: #ffffff !important;

	background: #bd2020;

	border-color: #bd2020;

	transform: translateY(-2px);
}


/* =====================================================
   PHONE BUTTON
===================================================== */

.cc-btn-phone {
	color: #ffffff !important;

	background: rgba(255, 255, 255, 0.18);

	border: 1px solid rgba(255, 255, 255, 0.55);

	backdrop-filter: blur(4px);
}


.cc-btn-phone:hover {
	color: #ffffff !important;

	background: #bd2020;

	transform: translateY(-2px);
}


/* =====================================================
   SERVICE FORM CARD
===================================================== */

.cc-service-form {
	width: 100%;

	background: #ffffff;

	border-radius: 16px;

	padding: 38px;

	box-sizing: border-box;

	box-shadow: 0 10px 35px rgba(0, 0, 0, 0.20);
}


/* =====================================================
   FORM HEADING
===================================================== */

.cc-form-title {
	margin: 0 0 8px;

	color: #111111 !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 32px !important;
	font-weight: 500 !important;

	line-height: 1.15 !important;
}


.cc-form-description {
	margin: 0 0 30px;

	color: #111111 !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 19px !important;
	font-weight: 400;

	line-height: 1.45 !important;
}


/* =====================================================
   FORM FIELD
===================================================== */

.cc-form-field {
	margin-bottom: 25px;
}


.cc-form-field .form-control {
	width: 100%;

	min-height: 50px;

	padding: 16px 25px;

	border: 1px solid #d8d8d8 !important;

	border-radius: 4px !important;

	background: #f8f8f8 !important;

	color: #222222;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 18px !important;

	box-shadow: none !important;

	box-sizing: border-box;
}


.cc-form-field .form-control::placeholder {
	color: #999999;

	opacity: 1;
}


.cc-form-field .form-control:focus {
	border-color: #bbbbbb !important;

	box-shadow: none !important;

	outline: none;
}


.cc-form-field textarea.form-control {
	min-height: 75px;

	resize: vertical;
}


/* =====================================================
   CAPTCHA
===================================================== */

.cc-captcha {
	width: 380px;
	max-width: 100%;

	min-height: 78px;

	display: flex;

	align-items: center;

	gap: 14px;

	padding: 12px 15px;

	margin: 4px 0 18px;

	border: 1px solid #d8d8d8;

	background: #fafafa;

	box-sizing: border-box;

	font-family: Arial, sans-serif;

	font-size: 16px;

	color: #222222;
}


.cc-captcha-checkbox {
	width: 25px;
	height: 25px;

	flex: 0 0 25px;

	border: 2px solid #777777;

	background: #ffffff;
}


.cc-captcha small {
	margin-left: auto;

	color: #777777;

	font-size: 11px;
}


/* =====================================================
   FORM SUBMIT
===================================================== */

.cc-form-submit {
	display: inline-flex;

	align-items: center;
	justify-content: center;

	min-height: 52px;

	padding: 12px 30px;

	border: 0;

	border-radius: 28px;

	background: #d62828;

	color: #ffffff !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 17px !important;
	font-weight: 600 !important;

	cursor: pointer;

	transition: background-color 0.25s ease;
}


.cc-form-submit:hover {
	background: #bd2020;
}


/* =====================================================
   FORM NOTE
===================================================== */

.cc-form-note {
	margin: 16px 0 0;

	color: #222222 !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 10px !important;

	line-height: 1.4 !important;
}


/* =====================================================
   LARGE DESKTOP
===================================================== */

@media (min-width: 1400px) {

	.cc-hero {
		min-height: 700px;
	}

	.cc-hero-container {
		max-width: 1400px;
	}

	.cc-hero-title {
		font-size: 49px !important;
	}

	.cc-hero-subtitle {
		font-size: 26px !important;
	}

	.cc-hero-description {
		font-size: 19px !important;
	}

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1199.98px) {

	.cc-hero {
		min-height: 650px;
	}


	.cc-hero-title {
		font-size: 52px !important;
	}


	.cc-hero-subtitle {
		font-size: 26px !important;
	}


	.cc-hero-description {
		font-size: 18px !important;
	}


	.cc-service-form {
		padding: 30px;
	}


	.cc-form-title {
		font-size: 34px !important;
	}


	.cc-form-description {
		font-size: 19px !important;
	}


	.cc-form-field .form-control {
		min-height: 62px;

		font-size: 16px !important;
	}

}


/* =====================================================
   TABLET / SMALL LAPTOP
===================================================== */

@media (max-width: 991.98px) {

	.cc-hero {
		min-height: auto;

		background-position: center center;
	}


	.cc-hero-container {
		padding-top: 70px;
		padding-bottom: 70px;
	}


	.cc-hero-container .row {
		min-height: auto;
	}


	.cc-hero-content {
		max-width: 800px;

		margin: 0 auto 50px;
	}


	.cc-hero-title {
		font-size: 48px !important;
	}


	.cc-hero-subtitle {
		font-size: 25px !important;
	}


	.cc-hero-description {
		font-size: 18px !important;
	}


	.cc-service-form {
		max-width: 650px;

		margin: 0 auto;
	}

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767.98px) {

	.cc-hero {
		min-height: auto;

		background-position: 60% center;
	}


	.cc-hero-overlay {
		background: rgba(0, 0, 0, 0.72);
	}


	.cc-hero-container {
		padding-top: 50px;
		padding-bottom: 50px;
	}


	.cc-hero-content {
		margin-bottom: 40px;
	}


	.cc-hero-title {
		font-size: 38px !important;

		line-height: 1.15 !important;

		letter-spacing: -0.5px;

		margin-bottom: 25px;
	}


	.cc-hero-subtitle {
		font-size: 22px !important;

		line-height: 1.3 !important;

		margin-bottom: 22px;
	}


	.cc-hero-description {
		font-size: 16px !important;

		line-height: 1.5 !important;

		margin-bottom: 20px;
	}


	.cc-hero-buttons {
		flex-wrap: wrap;

		gap: 12px;

		margin-top: 20px;
	}


	.cc-btn {
		min-height: 50px;

		padding: 11px 25px;

		font-size: 16px !important;
	}


	.cc-service-form {
		padding: 25px;

		border-radius: 12px;
	}


	.cc-form-title {
		font-size: 30px !important;
	}


	.cc-form-description {
		font-size: 17px !important;

		margin-bottom: 22px;
	}


	.cc-form-field {
		margin-bottom: 18px;
	}


	.cc-form-field .form-control {
		min-height: 58px;

		padding: 14px 18px;

		font-size: 15px !important;
	}


	.cc-captcha {
		width: 100%;

		min-height: 70px;
	}

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

	.cc-hero-container {
		padding-top: 40px;
		padding-bottom: 40px;
	}


	.cc-hero-title {
		font-size: 32px !important;
	}


	.cc-hero-subtitle {
		font-size: 19px !important;
	}


	.cc-hero-description {
		font-size: 15px !important;
	}


	.cc-hero-buttons {
		flex-direction: column;

		align-items: stretch;
	}


	.cc-btn {
		width: 100%;
	}


	.cc-service-form {
		padding: 20px;
	}


	.cc-form-title {
		font-size: 27px !important;
	}


	.cc-form-description {
		font-size: 15px !important;
	}


	.cc-form-field .form-control {
		min-height: 54px;

		font-size: 14px !important;
	}


	.cc-form-submit {
		min-height: 48px;

		font-size: 15px !important;
	}

}


/* =====================================================
   FOOTER
===================================================== */

.cc-footer {
	width: 100%;

	background: #000000;

	color: #ffffff;

	font-family: "Inter Tight", sans-serif;

	overflow: hidden;
}


/* =====================================================
   FOOTER CONTAINER
===================================================== */

.cc-footer-container {
	width: 100%;

	max-width: 1400px;

	margin: 0 auto;

	padding-left: 0;
	padding-right: 0;
}


/* =====================================================
   CTA AREA
===================================================== */

.cc-footer-cta {
	min-height: 315px;

	padding-top: 48px;

	box-sizing: border-box;
}


/* =====================================================
   CTA HEADING
===================================================== */

.cc-footer-heading {
	margin: 0;

	color: #ffffff !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 64px !important;

	font-weight: 500 !important;

	line-height: 1.12 !important;

	letter-spacing: -1.8px;

	text-align: left;
}


/* =====================================================
   CTA BUTTON AREA
===================================================== */

.cc-footer-actions {
	width: 100%;

	display: flex;

	flex-direction: column;

	align-items: flex-end;

	gap: 25px;

	padding-top: 2px;
}


/* =====================================================
   FOOTER BUTTON
===================================================== */

.cc-footer-btn {
	width: 230px;

	height: 60px;

	display: flex;

	align-items: center;

	justify-content: center;

	box-sizing: border-box;

	border-radius: 40px;

	text-decoration: none !important;

	color: #ffffff !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 19px !important;

	font-weight: 500 !important;

	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		transform 0.25s ease;
}


/* =====================================================
   RED CTA BUTTON
===================================================== */

.cc-footer-btn-primary {
	background: #d32f2f;

	border: 1px solid #d32f2f;
}


.cc-footer-btn-primary:hover {
	color: #ffffff !important;

	background: #bd2525;

	border-color: #bd2525;

	transform: translateY(-2px);
}


/* =====================================================
   PHONE BUTTON
===================================================== */

.cc-footer-btn-phone {
	background: #3b3b3b;

	border: 1px solid #777777;
}


.cc-footer-btn-phone:hover {
	color: #ffffff !important;

	background: #4a4a4a;

	border-color: #888888;

	transform: translateY(-2px);
}


/* =====================================================
   CONTACT AREA
===================================================== */

.cc-footer-contact {
	min-height: 290px;

	padding-left: 12px;

	padding-top: 15px;

	box-sizing: border-box;
}


/* =====================================================
   CONTACT BLOCK
===================================================== */

.cc-contact-block {
	margin-bottom: 42px;
}


/* =====================================================
   CONTACT TITLE
===================================================== */

.cc-contact-title {
	margin: 0 0 15px;

	color: #ffffff !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 25px !important;

	font-weight: 600 !important;

	line-height: 1.2 !important;
}


/* =====================================================
   CONTACT ITEM
===================================================== */

.cc-contact-item {
	display: flex;

	align-items: center;

	gap: 12px;

	margin-bottom: 13px;

	color: #ffffff !important;

	text-decoration: none !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 21px !important;

	font-weight: 400 !important;

	line-height: 1.3;
}


.cc-contact-item:hover {
	color: #ffffff !important;
}


/* =====================================================
   CONTACT ICON
===================================================== */

.cc-contact-icon {
	width: 22px;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	color: #ffffff;

	font-size: 20px;
}


/* =====================================================
   ADDRESS
===================================================== */

.cc-address-block {
	margin-top: 38px;

	margin-bottom: 0;
}


.cc-address {
	margin: 0;

	color: #ffffff !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 21px !important;

	font-weight: 400 !important;

	line-height: 1.3;
}


/* =====================================================
   BOTTOM BORDER
===================================================== */

.cc-footer-bottom {
	min-height: 72px;

	border-top: 1px solid #444444;

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 30px;

	padding: 0 12px;

	box-sizing: border-box;
}


/* =====================================================
   COPYRIGHT
===================================================== */

.cc-footer-copyright {
	color: #ffffff;

	font-family: "Inter Tight", sans-serif;

	font-size: 18px;

	font-weight: 400;

	line-height: 1.3;

	white-space: nowrap;
}


/* =====================================================
   FOOTER LINKS
===================================================== */

.cc-footer-links {
	display: flex;

	align-items: center;

	justify-content: flex-end;

	gap: 18px;

	white-space: nowrap;
}


.cc-footer-links a {
	color: #ffffff !important;

	text-decoration: none !important;

	font-family: "Inter Tight", sans-serif !important;

	font-size: 18px !important;

	font-weight: 400 !important;

	line-height: 1.3;

	transition: opacity 0.2s ease;
}


.cc-footer-links a:hover {
	color: #ffffff !important;

	opacity: 0.7;
}


/* =====================================================
   VERTICAL DIVIDER
===================================================== */

.cc-footer-divider {
	width: 1px;

	height: 20px;

	background: #777777;

	flex: 0 0 1px;
}


/* =====================================================
   LARGE DESKTOP
===================================================== */

@media (min-width: 1400px) {




	.cc-footer-heading {
		font-size: 64px !important;
	}

}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1399.98px) {

	.cc-footer-container {
		max-width: 1200px;
	}


	.cc-footer-heading {
		font-size: 56px !important;
	}


	.cc-footer-btn {
		width: 270px;

		height: 68px;
	}


	.cc-footer-copyright,
	.cc-footer-links a {
		font-size: 16px !important;
	}

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991.98px) {

	.cc-footer-container {
		max-width: 90%;
	}


	.cc-footer-cta {
		min-height: auto;

		padding-top: 55px;

		padding-bottom: 50px;
	}


	.cc-footer-heading {
		font-size: 48px !important;

		margin-bottom: 40px;
	}


	.cc-footer-actions {
		align-items: flex-start;

		padding-top: 0;
	}


	.cc-footer-contact {
		min-height: auto;

		padding-bottom: 40px;
	}


	.cc-footer-bottom {
		min-height: auto;

		padding-top: 25px;

		padding-bottom: 25px;

		flex-direction: column;

		align-items: flex-start;

		gap: 20px;
	}


	.cc-footer-links {
		flex-wrap: wrap;

		justify-content: flex-start;
	}

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767.98px) {

	.cc-footer-container {
		max-width: 100%;

		padding-left: 25px;

		padding-right: 25px;

		box-sizing: border-box;
	}


	.cc-footer-cta {
		padding-top: 40px;

		padding-bottom: 45px;
	}


	.cc-footer-heading {
		font-size: 38px !important;

		line-height: 1.12 !important;

		letter-spacing: -0.8px;

		margin-bottom: 30px;
	}


	.cc-footer-actions {
		align-items: stretch;

		gap: 15px;
	}


	.cc-footer-btn {
		width: 100%;

		height: 58px;

		font-size: 17px !important;
	}


	.cc-footer-contact {
		padding-left: 0;

		padding-top: 10px;

		padding-bottom: 30px;
	}


	.cc-contact-block {
		margin-bottom: 32px;
	}


	.cc-contact-title {
		font-size: 21px !important;
	}


	.cc-contact-item,
	.cc-address {
		font-size: 17px !important;
	}


	.cc-footer-bottom {
		padding-left: 0;

		padding-right: 0;

		padding-top: 25px;

		padding-bottom: 25px;

		gap: 20px;
	}


	.cc-footer-copyright {
		white-space: normal;

		font-size: 15px !important;
	}


	.cc-footer-links {
		width: 100%;

		gap: 12px;

		white-space: normal;
	}


	.cc-footer-links a {
		font-size: 14px !important;
	}


	.cc-footer-divider {
		height: 16px;
	}

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

	.cc-footer-container {
		padding-left: 20px;

		padding-right: 20px;
	}


	.cc-footer-heading {
		font-size: 32px !important;
	}


	.cc-contact-item,
	.cc-address {
		font-size: 15px !important;
	}


	.cc-footer-links {
		display: grid;

		grid-template-columns: 1fr 1fr;

		gap: 12px;
	}


	.cc-footer-divider {
		display: none;
	}

}

.cc-footer-bottom-container {
	display: flex;
	justify-content: space-between;
}