/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* ============================================================
GLOBAL
============================================================ */
html, body {
	width: 100%;
	overflow-x:hidden;

}

.ast-container {
	max-width: 100% !important;
	padding: 0 !important;
}

.ast-article-single {
	padding: 0 !important;
}


.elementor-icon svg {
	overflow:visible;
}

.btn-height-50 a {
	height: 2.604vw;
}

.orange-btn .elementor-button-text {
	width: 6vw;
}

.orange-btn a .elementor-button-content-wrapper {
	align-items: center;
	justify-content: center; 
}

.orange-btn .elementor-button-icon {
	width: 1.771vw;
	height: 1.771vw;
	background-color: #fff;
	border-radius: 100vw;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.3s ease !important;
}

.orange-btn svg {
	font-size: 0.521vw;
}

.orange-btn a:hover .elementor-button-icon {
	background-color: #F06000;
}

.orange-btn a:hover svg path {
	fill: #fff !important;
	color: #fff !important;
}

.transparent-btn .elementor-button-text {
	width: 6.5vw;
}

.transparent-btn a {
	display: flex;
	align-items: center;
	justify-content: center;
}

.transparent-btn a .elementor-button-content-wrapper {
	align-items: center;
	justify-content: center; 
}

.transparent-btn .elementor-button-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

.transparent-btn svg {
	font-size: 1.927vw;
}


.transparent-btn a:hover svg rect {
	fill: #004785 ;
}

.text-with-morespace p:not(:last-child) {
	margin-bottom:1.1em;
}



/* ============================================================
ELEMENTOR TEXT EDITOR
============================================================ */
.elementor-widget-text-editor p {
	margin-bottom: 0.75em;
}

.elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}

/* ============================================================
HEADER CSS
============================================================ */
.header-menu .sub-arrow svg {
	display: none;
}


.header-menu .sub-arrow {
	background: url(/wp-content/uploads/2026/03/down-arrow.svg);
	background-position: center center;
	background-size: 100% auto;
	background-repeat: no-repeat;
	margin-right: 0.5vw;
}


.header-menu .sub-menu {
	min-width: 15.625vw !important;
}


/* ============================================================
HOME PAGE CSS
============================================================ */
.icons-list ul
{
	align-items:flex-start;
}

.icons-list li.elementor-inline-item:nth-child(odd) {
	width:calc(55% - 1.354vw);


}
.icons-list li.elementor-inline-item:nth-child(even) {
	width:calc(45% - 1.354vw);


}
.icons-list li.elementor-inline-item {
	margin-top:3.5px;
	margin-bottom:3.5px;
}

.icons-list li img {
	width: 1.146vw !important;
}


.icons-sec-main .e-con {
	width:calc(33.33% - 1vw);
}

.whatsappicon img 
{
	margin-right:0.5vw;
	width:2vw;
}
.number-list-main:before {
	content: '';
	width: 0.26vw;
	height: 110%;
	position: absolute;
	right: 1.17vw;
	top: -1.5vw;
	display: block;
	border-radius: 5px 5px 0 0;
	background: var(--logo-gradient, linear-gradient(180deg, #F06000 0%, #E2231A 100%));
}



.icon-numbers .elementor-icon-box-title img {
	position: absolute;
	top: -0.25vw;
	margin-right:0.5vw;
	width:2vw;
}

.icon-numbers.last-numico .elementor-icon-box-description img {
	margin-bottom:1vw;
	margin-top:-1vw;
}


.icon-numbers.last-numico .elementor-icon-box-icon {
	margin-top:-6vw;
}

.cta-box .elementor-cta__icon {
	position: absolute;
	left: 1.5vw;
	width: auto;
	height: auto;
	line-height: 0;
}

.cta-box .elementor-cta__bg-wrapper {
	border-radius:1.042vw;
}

.cta-box .elementor-cta__title  ,.cta-box .elementor-cta__description {
	width:60%;
}

.cta-box .elementor-icon svg rect {
	transition: all 0.3s ease !important;
}


.cta-box:hover .elementor-icon svg rect {
	fill: #004785;
}


.contact-form input::placeholder,
.contact-form textarea::placeholder {
	opacity: 1 !important
}


.contact-form input,
.contact-form select {
	height: 2.5vw !important;
	padding: 0.729vw 1.25vw !important;
}

.contact-form .select-caret-down-wrapper svg {
	display: none;
}

.contact-form .select-caret-down-wrapper {
	background: url(/wp-content/uploads/2026/03/down-arrow.svg);
	background-position: center center;
	background-size: 100% auto;
	background-repeat: no-repeat;
	width: 0.677vw;
	height: 0.469vw;
}

.contact-form input:focus {
	outline: 0 !important;
	box-shadow: none !important;
}

.contact-form textarea {
	height: 7.083vw !important;
	padding: 0.729vw 1.51vw !important;
	border-radius: 1.042vw !important;
	resize: none;
}

.contact-form button[type="submit"] {
	height: 2.5vw !important;
	padding: 0.729vw 1.25vw !important;
	width: 15.885vw !important;
}

/* ============================================================
BLOG PAGE CSS
============================================================ */

.blog-grid .elementor-grid {
	display: flex !important;
	justify-content: center !important;
}

.blog-grid .e-loop-item {
	width: calc(33.33% - 3.698vw) !important;
}


/* ============================================================
SINGLE BLOG PAGE CSS
============================================================ */

.blog-content h1,
.blog-content h2 {
	font-weight: 700;
	font-size: 1.25vw;
	line-height: 1.3em;
	color: #004785 !important;
	margin: 1.042vw 0 0.625vw !important;
}

.blog-content h3,
.blog-content h4,
.blog-content h5,
.blog-content h6 {
	font-weight: 700;
	font-size: 1.042vw;
	line-height: 1.3em;
	color: #0A0A0A !important;
	margin: 1.042vw 0 0.625vw !important;
}

.blog-content p {
	margin-bottom: 0 !important;
}

.blog-content ol {
	margin: 0 1vw 0 0 !important;
}

.blog-content ul {
	margin: 0 1vw 0 0 !important;
}

.blog-content ul:last-child,
.blog-content ol:last-child {
	margin-bottom: 0 !important;
}



.blog-share .elementor-share-btn_print svg,
.blog-share .elementor-share-btn_whatsapp svg {
	display: none;
}

.blog-share .elementor-share-btn_print .elementor-share-btn__icon {
	background: url(/wp-content/uploads/2026/03/print.svg) center no-repeat;
	background-size: contain;
	width: 2.344vw;
	height: 1.042vw;
}

.blog-share .elementor-share-btn_whatsapp .elementor-share-btn__icon {
	background: url(/wp-content/uploads/2026/03/logos_whatsapp-icon.svg) center no-repeat;
	background-size: contain;
	width: 2.344vw;
	height: 1.042vw;
}

.related-services-list {
	list-style-type:none;
	margin:0;
}

.related-services-list li a{
    color: #212121;
    font-family: var(--e-global-typography-1b3882e-font-family), Sans-serif;
    font-size: var(--e-global-typography-1b3882e-font-size);
    font-weight: var(--e-global-typography-1b3882e-font-weight);
    line-height: var(--e-global-typography-1b3882e-line-height);
	text-align:center;
	text-decoration:underline;
	margin-bottom:5px;
	display:block;
}

.related-services-list li:last-child a {
	margin-bottom:0;
}

.wlink {
	display:inline !important;
}

/* ============================================================
LAPTOP	 BREAKPOINT
============================================================ */
@media (min-width: 1024px) and (max-width: 1366px) {
.orange-btn .elementor-button-text {
    width: 7.365vw;
}
	
	.transparent-btn .elementor-button-text {
    width: 7.5vw;
}
}


/* ============================================================
MOBILE BREAKPOINT
============================================================ */
@media (max-width: 767px) {

	/* ===============
	GLOBAL CSS
	================== */

	.no-br br {
		display: none;
	}


	.btn-height-50 a {
		height: 11vw;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.orange-btn .elementor-button-text {
		width: 28vw;
	}

	.orange-btn a .elementor-button-content-wrapper {
		align-items: center;
		justify-content: center; 
	}

	.orange-btn .elementor-button-icon {
		width: 7vw;
		height: 7vw;
	}

	.orange-btn svg {
		font-size: 2vw;
	}

	.transparent-btn .elementor-button-text {
		width: 28vw;
	}

	.transparent-btn a {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.transparent-btn a .elementor-button-content-wrapper {
		align-items: center;
		justify-content: center; 
	}

	.transparent-btn svg {
		font-size: 7vw;
	}


	/* ===============
	HEADER CSS
	================== */


	.header-menu .sub-arrow {
		margin-right: 2vw;
	}

	/* ===============
	HOME PAGE CSS
	================== */

	.icons-list li.elementor-inline-item {
		width:100% !important;
	}

	.icons-list li.elementor-inline-item {
		margin-top:2vw;
		margin-bottom:2vw;
	}

	.icons-list li img {
		width: 4vw !important;
	}

	.icons-sec-main .e-con {
		width:calc(100% - 0vw);
	}

	.whatsappicon img {
		margin-right: 1.5vw;
		width: 6vw;
	}


	.icon-numbers .elementor-icon-box-title img {
		position: absolute;
		top: -0.25vw;
		margin-right:0.5vw;
		width:7vw;
	}


	.cta-box .elementor-cta__icon {
		left: 4vw;
	}

	.cta-box .elementor-cta__bg-wrapper {
		border-radius: 4.762vw;
	}

	.cta-box .elementor-cta__title  ,.cta-box .elementor-cta__description {
		width:60%;
	}

	.cta-box .elementor-icon svg {
		font-size: 8vw !important;
	}


	.contact-form input,
	.contact-form select {
		height: 13vw !important;
		padding: 1vw 5vw !important;
	}

	.contact-form .elementor-field-group {
		margin-bottom: 5vw !important;
	}

	.contact-form .select-caret-down-wrapper {
		width: 3.5vw;
		height: 2vw;
	}

	.contact-form textarea {
		height: 40vw !important;
		padding: 4vw 4.51vw !important;
		border-radius: 4.762vw !important;
	}

	.contact-form button[type="submit"] {
		height: 13vw !important;
		padding: 0.729vw 1.25vw !important;
		width: 100% !important;
	}

	.contact-form button span {
		gap: 2vw !important;
	}
	.number-list-main:before {	
 content: '';
    width: 1vw;
    height: 120%;
    position: absolute;
    right: 2.25vw;
    top: -1.5vw;
    display: block;
    border-radius: 5px 5px 0 0;
    background: var(--logo-gradient, linear-gradient(180deg, #F06000 0%, #E2231A 100%));
	}
	
	/* ============================================================
	BLOG PAGE CSS
	============================================================ */

	.blog-grid .elementor-grid {
		flex-direction: column;
	}

	.blog-grid .e-loop-item {
		width: 100% !important;
		background: #0000 !important;
		padding: 0 !important;
		border: 0 !important;
	}

	/* ============================================================
	SINGLE BLOG PAGE CSS
	============================================================ */

	.blog-content h1,
	.blog-content h2 {
		font-size: 4.75vw;
		margin: 7vw 0 5vw !important;
	}

	.blog-content h3,
	.blog-content h4,
	.blog-content h5,
	.blog-content h6 {
		font-size: 4.25vw;
		margin: 7vw 0 5vw !important;
	}


	.blog-content ol {
		margin: 0 5vw 0 0 !important;
	}

	.blog-content ul {
		margin: 0 4vw 0 0 !important;
	}
	
	.blog-content li {
		margin-bottom: 2vw !important;
	}


	.blog-share .elementor-share-btn_print .elementor-share-btn__icon {
		width: 6.5vw;
        height: 8vw;
	}

	.blog-share .elementor-share-btn_whatsapp .elementor-share-btn__icon {
		width: 6.5vw;
        height: 8vw;
	}




}
