@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,500&family=Rubik:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,500;1,600;1,700&display=swap');

:root {
	--primary-color: #062A78;
	--blue: #062A78;
	--secondary-color: #FF5A36;
	--orange: #FF5A36;
	--black: #333333;
	--white: #FFFFFF;
	--light-grey: #C1CADD;
	--light-blue: #E6EFFF;
}

::-moz-selection {
	color: var(--white);
	background-color: var(--primary-color);
}

::selection {
	color: var(--white);
	background-color: var(--primary-color);
}

::placeholder {
	color: var(--light-grey) !important;
	opacity: 1;
}

:-ms-input-placeholder {
	color: var(--light-grey) !important;
}

::-ms-input-placeholder {
	color: var(--light-grey) !important;
}

.blue {
	color: var(--blue);
}

.orange {
	color: var(--secondary-color);
}

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

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

html {
	width: 100vw;
	overflow-x: hidden;
}

body {
	color: var(--blue);
	font-family: 'Rubik', sans-serif;
	overflow-x: hidden;
	font-size: 14px;
	width: 100vw;
}

.alert {
	z-index: 10000;
}

.alert.red-bg {
	background-color: var(--orange);
	border-radius: 0px;
	color: var(--white);
	font-weight: 500;
}

/* Spacing */

.pb-54 {
	padding-bottom: 54px;
}

.p-54 {
	padding: 54px;
}

.px-54 {
	padding-left: 54px;
	padding-right: 54px;
}

.px-108 {
	padding-left: 108px;
	padding-right: 108px;
}

.mt-24 {
	margin-top: 24px !important;
}

.mb-24 {
	margin-bottom: 24px !important;
}

.mt-18 {
	margin-top: 24px !important;
}

.my-24 {
	margin-top: 24px !important;
	margin-bottom: 24px !important;
}

.py-54 {
	padding-bottom: 54px;
	padding-top: 54px;
}

.my-54 {
	margin-bottom: 54px;
	margin-top: 54px;
}

.mb-54 {
	margin-bottom: 54px;
}

.mt-54 {
	margin-top: 54px;
}

.font-sm {
	font-size: 13px;
}

/* Buttons */

.btn {
	font-family: 'Poppins', sans-serif;
	text-transform: uppercase;
	font-size: 14px;
	font-weight: 600;
	border-radius: 3rem;
}

a {
	text-decoration: none;
	color: var(--blue);
}

a:hover {
	color: var(--orange);
}

a, .btn:hover {
	transition: .3s all ease-out;
}

.btn-medium {
	padding: 12px 24px;
}

.btn-small {
	font-size: 12px;
	padding: 8px 18px;
}

.btn-primary, .btn-blue {
	color: var(--white);
	background-color: var(--primary-color);
	border: 2px solid var(--primary-color) !important;
}

.btn-secondary, .btn-orange, .btn-orange-outline:hover {
	color: var(--white);
	background-color: var(--secondary-color);
	border: 2px solid var(--secondary-color) !important;
}

.btn-orange-outline {
	color: var(--orange);
	background: transparent;
	border: 2px solid var(--secondary-color) !important;
}

.btn-white {
	color: var(--primary-color);
	background-color: var(--white);
	box-shadow: 0px 12px 24px rgb(6 42 120 / 15%);
}

.btn-white:hover {
	color: var(--white);
	background-color: var(--primary-color);
}

.btn-primary:hover, .btn-blue:hover {
	background-color: var(--white);
	color: var(--primary-color);
}

.btn-secondary:hover, .btn-orange:hover, .custom-search-botton:hover {
	background-color: var(--white);
	color: var(--secondary-color);
}

a.c-white {
	color: var(--white);
}

a.c-white:hover {
	color: var(--black);
}

.custom-search {
	position: relative;
	width: 340px;
	box-shadow: 0px 12px 24px rgb(6 42 120 / 15%);
	border-radius: 100px;
}

.custom-search-input {
	width: 100%;
	border: none;
	border-radius: 100px;
	padding: 16px 100px 16px 20px;
	line-height: 1;
	box-sizing: border-box;
	outline: none;
}

.custom-search-botton {
	position: absolute;
	right: 5px;
	top: 5px;
	bottom: 5px;
	border: 2px solid var(--orange);
	background: var(--orange);
	line-height: 1;
	color: #fff;
	outline: none;
	margin: 0;
	padding: 12px 24px;
	border-radius: 100px;
	z-index: 2;
}

/* Nav Bar */

.nav {
	margin-left: auto;
	margin-right: auto;
}

.navbar {
	border-bottom: 1px solid var(--light-blue);
	padding-top: 24px;
	padding-bottom: 24px;
	margin-bottom: 96px;
}

nav + div {
	margin-top: 96px;
}

.nav-container {
	padding-right: 54px;
	padding-left: 54px;
}

.navbar .nav-link {
	font-size: 14px;
	text-transform: uppercase;
	font-weight: 600;
	padding-left: 0px;
	padding-right: 0px;
	margin-left: 18px;
	margin-right: 18px;
	color: var(--black);
	border-bottom: 2px solid transparent;
}

.white-nav {
	background-color: rgb(255 255 255 / 100%);
}

.navbar .nav-link:hover {
	color: var(--orange);
	border-bottom: 2px solid var(--orange);
}

.dropdown-item {
	font-size: 13px;
}

.dropdown-item.active, .dropdown-item:active {
	background-color: var(--blue);
}

.dropdown-menu {
	border: none;
	box-shadow: 0px 12px 24px rgb(6 42 120 / 15%);
}

.dropdown-item:focus, .dropdown-item:hover {
    color: var(--black);
    background-color: var(--light-blue);
}

/* Breadcrumbs */

.breadcrumbs {
	display: flex;
    justify-content: center;
}

.breadcrumb-item {
	text-transform: uppercase;
}

.breadcrumb-item a {
	color: var(--white);
}

.breadcrumb-item a:hover {
	color: var(--orange);
}

.breadcrumb-item.active {
    color: var(--light-grey);
}

.breadcrumb-item+.breadcrumb-item::before {
    color: var(--light-grey);
}

/* Landing Page */

.landing-section {
	padding-left: 54px;
	padding-right: 54px;
	height: calc(100vh - 100px);
}

.vertical-center {
	height: 100%;
	display: flex;
	align-items: center;
}

.main-heading {
	font-size: 72px;
	font-weight: 800;
	margin-bottom: 16px;
	line-height: 1;
}

.blue-bg-grad {
	background: radial-gradient(circle at 0%, rgb(6 42 120 / 20%), transparent 28%, transparent);
	z-index: 0;
}

.disp-img {
	background: radial-gradient(circle at center, #f0f4fd 50%, transparent 50%);
	display: inline-block;
}

.disp-img-desc {
	margin-top: 54px;
	padding-left: 32px;
}

.socials {
	border-top: 1px solid var(--light-blue);
	padding-top: 32px;
	padding-bottom: 32px;
	text-align: end;
}

.socials i {
	padding-left: 32px;
	font-size: 16px;
}

.social-link {
	color: var(--blue);
	display: inline-block;
	text-decoration: none;
}

.social-link:hover {
	color: var(--orange);
}

/* Services */

section {
	padding-top: 54px;
	padding-bottom: 54px;
}

.section-header {
	margin-bottom: 24px;
	text-align: center;
}

.header-text {
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 54px;
	margin-bottom: 24px;
}

.header-line {
	width: 148px;
	margin-right: auto;
    margin-left: auto;
}

.header-line hr {
	background-color: var(--orange);
	opacity: 1;
	margin-bottom: 24px;
}

.header-line hr:not([size]) {
	height: 4px;
}

.service-card {
    width: 200px;
	margin-left: auto;
	margin-right: auto;
	min-width: 200px;
	max-width: 200px;
	min-height: 170px;
    border: none;
	text-align: center;
	box-shadow: 0px 12px 24px rgb(6 42 120 / 15%);
	border-radius: 16px;
	transition: .3s all ease-out;
}

.service-card:hover {
	box-shadow: 0px 12px 24px rgb(255 90 54 / 30%);
	transition: .3s all ease-out;
}

.service-card .card-body {
	padding: 24px;
}

.service-img {
	max-width: 64px;
	margin-bottom: 24px;
}

.card h6 {
	font-size: 14px;
    text-transform: uppercase;
    font-weight: 600;
    text-align: center;
    margin-bottom: 0px;
	color: var(--blue);
}

span.subheading {
	font-family: 'Poppins', sans-serif;
	font-weight: 400;
	text-transform: uppercase;
	font-size: 16px;
	display: block;
	padding-bottom: 12px;
}

#hotels, #residentials {
	padding-left: 54px;
	padding-right: 54px;
	min-height: 100vh;
}

.section-images {
	position: relative;
}

.section-img {
	width: 100%;
}

.front-img {
	width: 440px;
	max-width: 440px;
	height: 440px;
	max-height: 440px;
	overflow: hidden;
	position: absolute;
	border: 7px solid var(--white);
}

.right-offset {
	left: 100px;
	top: 100px;
}

.back-img {
	position: absolute;
    z-index: -1;
    width: 440px;
    height: 440px;
    overflow: hidden;
}

.center-offset {
	width: 100%;
	display: flex;
    justify-content: center;
}

.center-offset .back-img{
	width: 630px;
}

.center-offset .front-img {
	width: 460px;
	top: 200px;
}

#commercials, #partners, #contact, #faqs {
	padding-left: 54px;
	padding-right: 54px;
	margin-top: 54px;
	margin-bottom: 54px;
}

.section-img-centered {
	width: 100%;
}

.centered-img {
	width: 500px;
	height: 440px;
	overflow: hidden;
}

.orange-container {
	position: absolute;
	background-color: var(--orange);
	min-height: 300px;
	width: 700px;
	border: 7px solid var(--white);
	padding: 32px;
}

.center-container {
	justify-content: center;
    display: flex;
    align-items: center;
}

#partners {
	border-top: 1px solid var(--light-blue);
	border-bottom: 1px solid var(--light-blue);
}

.partners {
	display: flex;
    justify-content: space-around;
}

.partners img {
	height: 60px;
	width: auto !important;
}

.contact-container {
	background-color: var(--light-blue);
	border-radius: 32px;
	padding: 54px;
}

.form-control {
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	background-color: var(--white);
	padding: 24px 32px;
	border-radius: 18px;
	border: none;
}

.accordion-button:not(.collapsed) {
    color: var(--blue);
    background-color: var(--light-blue);
    box-shadow: none;
}

.accordion-item {
    border: 1px solid var(--light-blue);
}

.accordion-button {
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--blue);
}

.accordion-button::after {
	width: 1rem;
	height: 1rem;
	background-size: 1rem;
}

footer {
	background-image: url('../img/blue_bg.png');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	color: var(--white);
	padding: 54px;
}

footer h6 {
	text-transform: uppercase;
	margin-bottom: 24px;
}

footer p {
	font-size: 13px;
	color: var(--light-grey);
	margin-bottom: 32px;
}

footer li {
	font-size: 13px;
	color: var(--light-grey);
}

footer a {
	font-size: 13px;
	color: var(--light-blue);
}

footer a:hover {
	color: var(--orange);
}

footer ul {
	margin-bottom: 32px;
}

ul.undercorated {
	list-style: none;
    padding-left: 0px;
}

.copyright {
	text-align: center;
}

.copyright p {
	margin-bottom: 1rem;
}

footer hr {
	background-color: var(--light-blue);
}

.footer-logo {
	position: relative;
}

.footer-logo img {
	width: 100%;
    position: absolute;
    top: -132px;
}

.footer-socials a.social-link {
	color: var(--white);
	padding-right: 32px;
}

.footer-socials a.social-link:hover {
	color: var(--orange);
}

/* Products */

#products, #contactPage, #categoryPage, #aboutPage {
	padding-left: 54px;
	padding-right: 54px;
}

.page-header {
	background-image: url('../img/blue_bg.png');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-top: 32px;
	padding-top: 32px;
	padding-bottom: 32px;
	text-align: center;
	color: var(--white);
}

h4.category-header {
	font-size: 18px;
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 54px;
    margin-top: 54px;
}

.product-list .card {
	width: 260px;
	border: none;
	margin-bottom: 24px;
	margin-left: 12px;
}

.product-list .card-body {
	padding: 0px;
}

.product-list .prod-img {
	width: 100%;
	border: 1px solid rgb(205 202 221 / 25%);
}

.product-list .card-footer {
	text-align: center;
	padding: 24px;
	background-color: var(--white);
	border: none;
}

.product-list small.category-text {
	text-transform: uppercase;
	color: var(--light-grey);
	display: block;
}

.product-list .name {
	font-size: 16px;
	text-transform: uppercase;
	margin-bottom: 0px;
}

.card.product:hover {
	box-shadow: 0px 12px 24px rgb(6 42 120 / 15%);
}

#products #categoryProducts {
	margin-bottom: 54px;
}

.owl-carousel .owl-dots.disabled {
    display: block;
}

/* Categories */

.category {
	border-radius: 50%;
	width: 200px;
	height: 200px;
	overflow: hidden;
	margin-bottom: 24px;
	box-shadow: 0px 12px 24px rgb(6 42 120 / 15%);
	align-content: center;
    text-align: -webkit-center;
}

.category:hover {
	box-shadow: 0px 12px 24px rgb(255 90 54 / 30%);
}

.category img {
	width: 100%;
}

.category-container {
	position: relative;
	width: 200px;
}

.category-overlay {
	background-color: rgb(255 255 255 / 80%);
    height: 100px;
    width: 200px;
    position: absolute;
    border-radius: 150px 150px 0 0;
    transform: rotate(180deg);
    top: 100px;
	display: flex;
    justify-content: center;
}

.category-overlay h6 {
	transform: rotate(180deg);
	position: absolute;
	top: 50%;
}

.product a.name {
	color: var(--blue);
	display: block;
}

.product a.name:hover {
	color: var(--orange);
}

#productDetail {
	padding: 54px;
}

.tag {
	color: var(--light-grey);
	text-transform: uppercase;
	margin-right: 5px;
}

.whatsapp-btn {
	background: transparent;
    margin: 0px;
    padding: 0px;
    border: none;
}

/* .tag:not(:first-child)::before {
	content: '';
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: var(--light-grey);
	display: inline-block;
	vertical-align: middle;
	margin-right: 8px;
} */

#productDetail h1.name {
	font-size: 54px;
	text-transform: uppercase;
}

#productDetail .product-image img{
	width: 100%;
}

#productDetail li {
	margin-bottom: 6px;
}

h3.subheading {
	font-size: 24px;
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	margin-bottom: 16px;
}

.category-header::before {
	content: '';
	width: 240px;
	height: 1px;
	background-color: var(--light-grey);
	display: inline-block;
	margin-right: 16px;
	vertical-align: middle;
}

.category-header::after {
	content: '';
	width: 240px;
	height: 1px;
	background-color: var(--light-grey);
	display: inline-block;
	margin-left: 16px;
	vertical-align: middle;
}

#contactPage section#contact {
	margin-top: 0px;
	padding-left: 0px;
}

.contact-info li{
	font-weight: 600;
	line-height: 2;
}

#singleCategory {
	margin-top: 54px;
	margin-bottom: 54px;
}

#legalPage, #blogPage {
	min-height: calc(100vh);
	margin-bottom: 108px;
}

.post {
	display: block;
	margin-top: 54px;
	margin-bottom: 54px;
}

.post img {
	width: 100%;
	height: auto;
}

.post a {
	color: var(--orange);
}

.post .tags {
	text-align: center;
}

.post .tag {
	font-size: 13px;
    border: 1px solid var(--light-grey);
    display: inline-flex;
    padding: 2px 4px;
    border-radius: 5px;
}

.blogs {
	padding: 54px;
}

.blogs .card {
	border: none;
}

.blogs .card-footer {
	background: none;
	border: none;
}

.document-card .card {
	border: 1px solid #e3e3e3;
	border-radius: 8px;
	text-align: center;
}
.document-card .card-body {
	padding: 1rem;
}
.document-icon {
	font-size: 2.5rem;
	color: var(--secondary-color);
}
.document-title {
	font-weight: bold;
	font-size: 1rem;
	margin: 0.5rem 0;
}
.document-meta {
	font-size: 0.9rem;
	color: #6c757d;
}
.action-icons i {
	cursor: pointer;
	font-size: 1.2rem;
	margin: 0 0.5rem;
}
.action-icons i.download {
	color: var(--primary-color);
}
.action-icons i.delete {
	color: var(--secondary-color);
}

#catalogPage {
	margin-bottom: 250px;
}

@media (max-width: 576px){
	.orange-container {
		width: calc(100vw - 54px);
	}

	.nav-container {
		padding-right: 32px;
		padding-left: 32px;
	}

	.navbar {
		position: absolute;
		width: 100%;
		background: rgb(255 255 255 / 90%);
	}

	.landing-section {
		padding-left: 32px;
		padding-right: 32px;
		height: unset;
		padding-top: 154px;
	}

	.main-heading {
		font-size: 60px;
	}

	.landing-section .text-container {
		margin-bottom: 24px;
	}

	.header-text {
		font-size: 44px;
	}

	.disp-img-desc {
		margin-top: 24px;
		padding-left: 0px;
		text-align: center;
	}

	.socials {
		text-align: center;
	}

	#services {
		padding-left: 24px;
		padding-right: 24px;
	}

	#commercials, #partners, #contact, #faqs {
		padding-left: 24px;
		padding-right: 24px;
	}

	#hotels, #residentials {
		padding-left: 0px;
		padding-right: 0px;
	}

	.section-images {
		height: 500px;
		display: flex;
		justify-content: center;
	}

	.back-img {
		width: 100vw;
		height: 100vw;
	}

	.right-offset {
		left: unset;
		width: calc(100vw - 54px);
		height: calc(100vw - 54px);
	}

	.center-offset .front-img {
		width: calc(100vw - 54px);
		height: calc(100vw - 54px);
		top: 100px;
	}

	.alt-order {
		order: 1;
	}

	#contact .contact-container {
		padding: 24px;
	}

	.footer-logo {
		height: 200px;
		display: flex;
		justify-content: center;
	}

	.footer-logo img {
		width: calc(100% - 60px);
	}

	footer {
		padding-left: 24px;
		padding-right: 24px;
	}
}