/**
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
*/

:root {
	--rose-red: #e50909;
	--rose-red-2: #ff1717;
	--rose-white: #f7f7f7;
	--rose-ivory: #fffff0;
	--rose-gray: #cfd0d2;
	--rose-muted: #a9a9a9;
	--rose-max: 1120px;
	--rose-radius: 28px;
}

body.rose-landing-page,
body.home,
body {
	margin: 0;
	background: #000;
}

.site,
.site-content,
.ast-container,
.content-area,
.site-main,
.entry-content {
	background: #000;
}

p,
.entry-content p {
	color: var(--rose-ivory);
}

body.page .site-header,
body.single-post .site-header,
body.page .entry-header,
body.single-post .entry-header,
body.home .site-footer,
body.home .entry-header {
	display: none;
}

body.page .site-content,
body.page .site-main,
body.page .entry-content,
body.page .entry-content > .rose-landing,
body.home .site-content,
body.home .site-main,
body.home .entry-content,
body.home .entry-content > .rose-landing {
	margin: 0;
	padding: 0;
}

body.page .ast-container,
body.home .ast-container {
	max-width: none;
	padding: 0;
}

body.page .entry-content > .rose-landing,
body.home .entry-content > .rose-landing {
	max-width: none;
}

.rose-landing {
	min-height: 100vh;
	margin: 0;
	font-family: Eurostile, "Bank Gothic", Rajdhani, Orbitron, "Arial Black", Arial, sans-serif;
	color: var(--rose-white);
	background:
		radial-gradient(circle at 80% 10%, rgba(229, 9, 9, .18), transparent 28%),
		linear-gradient(180deg, #000 0%, #080808 46%, #000 100%);
	letter-spacing: .04em;
}

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

.rose-landing::before {
	content: "";
	position: fixed;
	inset: 0;
	pointer-events: none;
	opacity: .22;
	background-image:
		linear-gradient(135deg, rgba(255, 255, 255, .05) 25%, transparent 25%),
		linear-gradient(225deg, rgba(255, 255, 255, .04) 25%, transparent 25%);
	background-size: 22px 22px;
	mix-blend-mode: screen;
}

.rose-landing a {
	color: inherit;
	text-decoration: none;
}

.rose-wrap {
	max-width: var(--rose-max);
	margin: 0 auto;
	padding: 0 22px;
}

.rose-import-v2 .rose-wrap {
	max-width: 1180px;
}

body.home .rose-wrap {
	max-width: var(--rose-max);
	padding: 0 22px;
}

.rose-header {
	position: inherit;
	top: 0;
	z-index: 10;
	background: #000;
	backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.rose-site-header {
	font-family: Eurostile, "Bank Gothic", Rajdhani, Orbitron, "Arial Black", Arial, sans-serif;
	letter-spacing: .04em;
}

.rose-nav {
	min-height: 78px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.rose-brand {
	display: flex;
	align-items: center;
	gap: 14px;
	font-weight: 900;
	text-transform: uppercase;
}

.rose-mark {
	width: 54px;
	height: 54px;
	position: relative;
	flex: 0 0 54px;
	filter: drop-shadow(0 0 10px rgba(229, 9, 9, .6));
}

.rose-mark::before {
	content: "";
	position: absolute;
	inset: 7px 11px 8px 5px;
	background: linear-gradient(145deg, var(--rose-red-2), #9f0000);
	clip-path: polygon(0 78%, 72% 0, 100% 100%);
	border-radius: 5px;
}

.rose-brand span {
	font-size: 24px;
	text-shadow: 0 2px 0 #555, 0 0 18px rgba(255, 255, 255, .25);
}

.rose-menu {
	flex: 1 1 auto;
	display: flex;
	justify-content: flex-end;
}

.rose-navlinks {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 24px;
	margin: 0;
	padding: 0;
	color: var(--rose-gray);
	font-size: 14px;
	text-transform: uppercase;
}

.rose-navlinks a {
	display: inline-flex;
	padding: 10px 0;
	text-decoration: underline;
	text-underline-offset: 5px;
	text-decoration-thickness: 2px;
	text-shadow: 0 2px 0 #555, 0 0 18px rgba(255, 255, 255, .25);
}

.rose-btn,
.rose-btn .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255, 255, 255, .18);
	padding: 14px 22px;
	border-radius: 999px;
	background: linear-gradient(180deg, var(--rose-red-2), #9b0000);
	box-shadow: 0 10px 28px rgba(229, 9, 9, .28);
	font-weight: 900;
	text-transform: uppercase;
}

.rose-btn {
	padding: 0;
}

.rose-btn .wp-block-button__link {
	color: inherit;
}

.rose-hero {
	padding: 82px 0 74px;
	overflow: hidden;
}

.rose-import-v2 .rose-hero {
	min-height: calc(100vh - 78px);
	display: grid;
	place-items: center;
	padding: 70px 0 90px;
}

.rose-grid {
	display: grid;
	grid-template-columns: 1.08fr .92fr;
	gap: 42px;
	align-items: center;
}

.rose-import-v2 .rose-grid {
	display: grid !important;
	grid-template-columns: 1.05fr .95fr;
	gap: 52px;
}

.rose-import-v2 .rose-grid > .wp-block-column {
	flex-basis: auto !important;
	margin-left: 0 !important;
	min-width: 0;
}

.rose-import-v2 .wp-block-columns {
	margin-bottom: 0;
}

.rose-eyebrow {
	color: var(--rose-red-2);
	font-weight: 900;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.rose-landing h1 {
	font-size: clamp(42px, 7vw, 78px);
	line-height: .92;
	margin: 0;
	text-transform: uppercase;
	text-shadow: 0 3px 0 #555, 0 0 32px rgba(255, 255, 255, .20);
}

.rose-sub {
	font-size: clamp(18px, 2.5vw, 28px);
	margin: 16px 0 24px;
	color: var(--rose-gray);
	text-transform: uppercase;
	letter-spacing: .18em;
}

.rose-lead {
	font-family: Arial, sans-serif;
	letter-spacing: 0;
	line-height: 1.65;
	color: #ddd;
	font-size: 18px;
	max-width: 650px;
}

.rose-import-v2 .rose-lead {
	margin-top: 26px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rose-actions {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	margin-top: 30px;
}

.rose-ghost,
.rose-ghost .wp-block-button__link {
	background: rgba(255, 255, 255, .04);
	box-shadow: none;
}

.rose-visual {
	position: relative;
	min-height: 510px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 34px;
	background: linear-gradient(155deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, .02)), #080808;
	box-shadow: 0 30px 70px rgba(0, 0, 0, .7);
	overflow: hidden;
}

.rose-visual::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 18% 20%, rgba(255, 255, 255, .18), transparent 18%),
		repeating-linear-gradient(115deg, rgba(255, 255, 255, .06) 0 2px, transparent 2px 14px);
	opacity: .45;
}

.rose-visual::after {
	content: "";
	position: absolute;
	left: -18%;
	right: -18%;
	bottom: -8%;
	height: 40%;
	background:
		linear-gradient(160deg, transparent 0 18%, #ff1717 19% 36%, #7d0000 37% 40%, #ef0b0b 41% 62%, transparent 63%),
		linear-gradient(16deg, transparent 0 24%, rgba(255, 0, 0, .9) 25% 50%, transparent 51%);
	transform: skewY(-8deg);
}

.rose-badge {
	position: absolute;
	top: 34px;
	left: 34px;
	right: 34px;
	padding: 30px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 24px;
	background: rgba(0, 0, 0, .45);
	backdrop-filter: blur(8px);
}

.rose-badge h2 {
	margin: 0;
	font-size: clamp(28px, 4vw, 46px);
	line-height: 1;
	text-transform: uppercase;
	text-shadow: 0 3px 0 #555;
}

.rose-badge p {
	margin: 14px 0 0;
	font-family: Arial, sans-serif;
	font-size: 13px;
	font-weight: 800;
	color: #ddd;
	letter-spacing: .24em;
	text-transform: uppercase;
}

.rose-stats {
	position: absolute;
	left: 34px;
	right: 34px;
	bottom: 38px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	align-items: stretch;
	gap: 12px;
	z-index: 2;
}

.rose-stats > * {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.rose-stat {
	width: 100%;
	height: 100px;
	min-height: 100px;
	padding: 18px 14px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 18px;
	background: rgba(0, 0, 0, .72);
	border: 1px solid rgba(255, 255, 255, .14);
	text-align: center;
}

.rose-stats > .rose-stat:first-child {
	align-self: stretch;
	margin-top: 0;
}

.rose-stats > .rose-stat {
	align-self: stretch;
}

.rose-stat b {
	display: block;
	font-size: 22px;
	line-height: 1;
	color: #fff;
}

.rose-stat span {
	display: block;
	margin-top: 7px;
	font-family: Arial, sans-serif;
	font-size: 10px;
	font-weight: 700;
	color: #aaa;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.rose-card {
	position: relative;
	min-height: 445px;
	border-radius: var(--rose-radius);
	padding: 36px;
	overflow: hidden;
	background: linear-gradient(160deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .02)), #080808;
	border: 1px solid rgba(255, 255, 255, .13);
	box-shadow: 0 28px 70px rgba(0, 0, 0, .62), inset 0 1px 0 rgba(255, 255, 255, .12);
}

.rose-card::after {
	content: "";
	position: absolute;
	left: -15%;
	right: -10%;
	bottom: -40px;
	height: 170px;
	background: linear-gradient(145deg, #ff1010 0%, #b90000 45%, #f71919 65%, #740000 100%);
	transform: skewY(9deg);
	box-shadow: 0 -12px 30px rgba(229, 9, 9, .28);
}

.rose-card h2 {
	font-size: 26px;
	margin: 0 0 22px;
	text-transform: uppercase;
}

.rose-services {
	list-style: none;
	padding: 0;
	margin: 0;
	position: relative;
	z-index: 1;
}

.rose-services li {
	font-size: 19px;
	font-weight: 900;
	margin: 13px 0;
	text-transform: uppercase;
	text-shadow: 0 2px 0 #333;
}

.rose-services li::before {
	content: "•";
	color: var(--rose-red-2);
	margin-right: 10px;
}

.rose-section {
	padding: 70px 0;
	border-top: 1px solid rgba(255, 255, 255, .08);
}

.rose-section-title {
	font-size: 36px;
	margin: 0 0 26px;
	text-transform: uppercase;
	text-shadow: 0 2px 0 #444;
}

.rose-import-v2 .rose-section-title {
	font-size: clamp(30px, 4.2vw, 52px);
}

.rose-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 30px;
}

.rose-section-heading .rose-section-title {
	margin-bottom: 0;
}

.rose-section-heading p {
	max-width: 420px;
	margin: 0;
	color: #b8b8b8;
	font-family: Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rose-tiles {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.rose-import-v2 .rose-tiles.wp-block-columns {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.rose-import-v2 .rose-tiles > .wp-block-column {
	flex-basis: auto !important;
	flex-grow: 0;
	margin-left: 0 !important;
	min-width: 0;
}

.rose-tile {
	background: linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .025));
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 22px;
	padding: 24px;
	min-height: 170px;
}

.rose-tile h3 {
	margin: 0 0 12px;
	font-size: 19px;
	text-transform: uppercase;
}

.rose-tile p {
	font-family: Arial, sans-serif;
	letter-spacing: 0;
	color: #cfcfcf;
	line-height: 1.55;
	margin: 0;
}

.rose-service-card {
	position: relative;
	overflow: hidden;
}

.rose-service-card::before {
	content: "";
	position: absolute;
	right: -20px;
	bottom: -42px;
	width: 155px;
	height: 85px;
	background: var(--rose-red-2);
	transform: skewX(-32deg);
	opacity: .82;
}

.rose-service-card h3,
.rose-service-card p {
	position: relative;
}

.rose-contact-panel {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 34px;
	overflow: hidden;
	background: linear-gradient(135deg, #121212, #050505);
	box-shadow: 0 30px 70px rgba(0, 0, 0, .55);
}

.rose-contact-left {
	padding: 44px;
	background: linear-gradient(160deg, rgba(229, 9, 9, .22), transparent 45%);
}

.rose-contact-left h2 {
	margin: 0;
	font-size: clamp(32px, 5vw, 58px);
	line-height: 1;
	text-transform: uppercase;
	text-shadow: 0 3px 0 #555;
}

.rose-contact-left p:not(.rose-eyebrow) {
	font-family: Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.8;
	color: #ccc;
	text-transform: uppercase;
	letter-spacing: .1em;
}

.rose-contact-right {
	padding: 44px;
	display: grid;
	gap: 18px;
	align-content: center;
	background: rgba(0, 0, 0, .28);
}

.rose-contact-item {
	padding: 20px;
	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 20px;
	background: rgba(255, 255, 255, .035);
}

.rose-contact-item small {
	display: block;
	color: var(--rose-red-2);
	font-family: Arial, sans-serif;
	font-size: 11px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: .22em;
	margin-bottom: 9px;
}

.rose-contact-item a,
.rose-contact-item strong {
	font-size: 24px;
	word-break: break-word;
	text-shadow: 0 2px 0 #444;
}

.rose-strip {
	background: linear-gradient(90deg, #8f0000, var(--rose-red-2), #8f0000);
	padding: 26px;
	border-radius: 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	box-shadow: 0 18px 55px rgba(229, 9, 9, .25);
}

.rose-strip strong {
	font-size: 25px;
	text-transform: uppercase;
}

.rose-strip p {
	margin: 0;
}

.rose-contact {
	font-size: 18px;
	color: #fff;
	text-align: right;
	line-height: 1.7;
}

.rose-footer {
	padding: 34px 0;
	color: #aaa;
	text-align: center;
	font-family: Arial, sans-serif;
	letter-spacing: 0;
}

@media (max-width: 860px) {
	.rose-grid,
	.rose-tiles,
	.rose-contact-panel {
		grid-template-columns: 1fr;
	}

	.rose-visual {
		min-height: 430px;
	}

	.rose-section-heading {
		display: block;
	}

	.rose-section-heading p {
		margin-top: 14px;
	}

	.rose-nav {
		align-items: flex-start;
		flex-direction: column;
		padding-top: 12px;
		padding-bottom: 12px;
	}

	.rose-menu {
		width: 100%;
		justify-content: flex-start;
	}

	.rose-navlinks {
		gap: 14px;
		justify-content: flex-start;
	}

	.rose-strip {
		display: block;
	}

	.rose-contact {
		text-align: left;
		margin-top: 14px;
	}

	.rose-header {
		position: relative;
	}
}

@media (max-width: 900px) {
	.rose-import-v2 .rose-grid,
	.rose-import-v2 .rose-contact-panel {
		grid-template-columns: 1fr;
	}

	.rose-import-v2 .rose-tiles.wp-block-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.rose-import-v2 .rose-tiles.wp-block-columns {
		grid-template-columns: 1fr;
	}

	.rose-badge,
	.rose-stats {
		left: 18px;
		right: 18px;
	}

	.rose-stats {
		grid-template-columns: 1fr;
	}

	.rose-contact-left,
	.rose-contact-right {
		padding: 28px;
	}

	.rose-contact-item a,
	.rose-contact-item strong {
		font-size: 18px;
	}
}
