/**
 * OneXWay Heading Module Style
 * shortcodes/onexway-heading/style.css
 */

.onexway-heading-wrap {
	display: flex;
	flex-direction: column;
	width: 100%;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}

/* Alignments */
.onexway-heading-wrap.align-center {
	text-align: center;
	align-items: center;
	margin-left: auto;
	margin-right: auto;
}

.onexway-heading-wrap.align-left {
	text-align: left;
	align-items: flex-start;
	margin-left: 0;
	margin-right: auto;
}

.onexway-heading-wrap.align-right {
	text-align: right;
	align-items: flex-end;
	margin-left: auto;
	margin-right: 0;
}

.onexway-heading-wrap.align-justify {
	text-align: justify;
	align-items: stretch;
	margin-left: auto;
	margin-right: auto;
}

/* Title Element */
.onexway-heading__title {
	margin: 0 0 var(--onexway-heading-spacing, 16px) 0 !important;
	padding: 0;
	font-family: inherit;
	font-size: var(--onexway-title-size, 40px) !important;
	font-weight: var(--onexway-title-weight, 700) !important;
	line-height: var(--onexway-title-lh, 52px) !important;
	color: var(--onexway-title-color, #1a1a1a) !important;
	letter-spacing: -0.02em;
	word-break: break-word;
	width: 100%;
}

/* Content Element */
.onexway-heading__content {
	margin: 0;
	padding: 0;
	font-family: inherit;
	word-break: break-word;
	width: 100%;
	display: block;
}

.onexway-heading__content,
.onexway-heading__content p {
	font-family: inherit;
	font-size: var(--onexway-content-size, 16px) !important;
	font-weight: var(--onexway-content-weight, 500) !important;
	line-height: var(--onexway-content-lh, 24px) !important;
	color: var(--onexway-content-color, #595959) !important;
}

.onexway-heading__content > *:first-child {
	margin-top: 0;
}

.onexway-heading__content > *:last-child {
	margin-bottom: 0;
}

.onexway-heading__content p {
	margin: 0 0 10px 0;
}

.onexway-heading__content p:last-child {
	margin-bottom: 0;
}

/* Responsive adjustments */
@media (max-width: 849px) {
	.onexway-heading__title {
		font-size: clamp(28px, 5.5vw, var(--onexway-title-size, 40px)) !important;
		line-height: clamp(38px, 7vw, var(--onexway-title-lh, 52px)) !important;
		margin-bottom: clamp(12px, 2.5vw, var(--onexway-heading-spacing, 16px)) !important;
	}
	.onexway-heading__content,
	.onexway-heading__content p {
		font-size: clamp(15px, 2.8vw, var(--onexway-content-size, 16px)) !important;
		line-height: clamp(22px, 4vw, var(--onexway-content-lh, 24px)) !important;
	}
}

@media (max-width: 549px) {
	.onexway-heading__title {
		font-size: clamp(24px, 7vw, 32px) !important;
		line-height: clamp(32px, 9vw, 42px) !important;
		letter-spacing: -0.01em;
	}
	.onexway-heading__content,
	.onexway-heading__content p {
		font-size: 14.5px !important;
		line-height: 22px !important;
	}
}
