/**
 * CTA front-end styles.
 *
 * Don't delete this file.
 * It's used on the front-end for legacy sites
 * that haven't converted the CTA block to Core blocks.
 * Since that conversion only happens on opening the block editor,
 * there will always be sites that need this file.
 */

.gb-block-cta {
	margin: 0 0 1.2em 0;
	position: relative;
	background: #f2f2f2;
	color: #293038;
	padding: 5% 3%;
	border-radius: 5px;

	.components-autocomplete {
		display: inline-block;
		width: auto;
		margin: 0 auto;
		position: relative;
	}

	* {
		z-index: 10;
		position: relative;
	}

	&.alignfull {
		border-radius: 0;
		padding: 8% 3%;
	}

	@media only screen and (max-width: 768px) {
		padding: 8% 6%;
	}

	&.alignfull .gb-cta-content,
	&.alignfull .gb-cta-button {

		@media only screen and (min-width: 768px) {
			max-width: 60%;
			margin: 0 auto;
		}
	}

	&.alignwide .gb-cta-content,
	&.alignwide .gb-cta-button {

		@media only screen and (min-width: 768px) {
			max-width: 80%;
			margin: 0 auto;
		}
	}

	.gb-cta-image-wrap {
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		height: 100%;
		z-index: 1;
	}

	.gb-cta-image {
		object-fit: cover;
		height: 100%;
		width: 100%;
		transition: 0.3s ease;
	}

	.gb-cta-title {
		display: inline-block;
		width: 100%;
		margin-bottom: 0.3em;
		line-height: 1.2;
	}

	.gb-cta-text {
		line-height: 1.4;

		p {
			color: inherit;
		}

		a {
			color: inherit;
			box-shadow: 0 -1px 0 inset;
			text-decoration: none;

			&:hover {
				color: inherit;
				box-shadow: 0 -2px 0 inset;
			}
		}
	}

	.gb-cta-button .blocks-rich-text {
		display: inline-flex;
	}

	.gb-button {
		text-align: center;
		font-size: 18px;
		line-height: 1 !important;
		background-color: #32373c;
		border: none;
		border-radius: 50px;
		box-shadow: none;
		color: #fff;
		cursor: pointer;
		padding: 0.6em 1em;
		text-decoration: none;
		word-break: break-word;
		transition: 0.3s ease;
		display: inline-block;

		&:hover {
			box-shadow: inset 0 0 200px rgba(255, 255, 255, 0.15);
		}
	}

	.gb-cta-title:empty,
	.gb-cta-text:empty,
	.gb-cta-button:empty,
	.gb-button:empty {
		display: none;
	}

	.gb-button-shape-square {
		border-radius: 0;
	}

	.gb-button-shape-rounded {
		border-radius: 5px;
	}

	.gb-button-shape-circular {
		border-radius: 100px;
	}

	.gb-button-size-small {
		font-size: 14px;
	}

	.gb-button-size-medium {
		font-size: 20px;
	}

	.gb-button-size-large {
		font-size: 26px;
		padding: 0.8em 1.2em;
	}

	.gb-button-size-extralarge {
		font-size: 32px;
		padding: 0.8em 1.2em;
	}

	.gb-font-size-24.gb-cta-title {
		font-size: 24px;
	}

	.gb-font-size-26.gb-cta-title {
		font-size: 26px;
	}

	.gb-font-size-28.gb-cta-title {
		font-size: 28px;
	}

	.gb-font-size-30.gb-cta-title {
		font-size: 30px;
	}

	.gb-font-size-32.gb-cta-title {
		font-size: 32px;
	}

	.gb-font-size-34.gb-cta-title {
		font-size: 34px;
	}

	.gb-font-size-36.gb-cta-title {
		font-size: 36px;
	}

	.gb-font-size-38.gb-cta-title {
		font-size: 38px;
	}

	.gb-font-size-40.gb-cta-title {
		font-size: 40px;
	}

	.gb-font-size-42.gb-cta-title {
		font-size: 42px;
	}

	.gb-font-size-44.gb-cta-title {
		font-size: 44px;
	}

	.gb-font-size-46.gb-cta-title {
		font-size: 46px;
	}

	.gb-font-size-48.gb-cta-title {
		font-size: 48px;
	}

	.gb-font-size-50.gb-cta-title {
		font-size: 50px;
	}

	.gb-font-size-52.gb-cta-title {
		font-size: 52px;
	}

	.gb-font-size-54.gb-cta-title {
		font-size: 54px;
	}

	.gb-font-size-56.gb-cta-title {
		font-size: 56px;
	}

	.gb-font-size-58.gb-cta-title {
		font-size: 58px;
	}

	.gb-font-size-60.gb-cta-title {
		font-size: 60px;
	}

	.blocks-button__inline-link {
		margin-top: 15px;
	}

	.gb-cta-image:not(.has-background-dim) {
		opacity: 0;
	}

	.has-background-dim {
		opacity: 0.5;
	}

	.has-background-dim-10 {
		opacity: 0.1;
	}

	.has-background-dim-20 {
		opacity: 0.2;
	}

	.has-background-dim-30 {
		opacity: 0.3;
	}

	.has-background-dim-40 {
		opacity: 0.4;
	}

	.has-background-dim-50 {
		opacity: 0.5;
	}

	.has-background-dim-60 {
		opacity: 0.6;
	}

	.has-background-dim-70 {
		opacity: 0.7;
	}

	.has-background-dim-80 {
		opacity: 0.8;
	}

	.has-background-dim-90 {
		opacity: 0.9;
	}

	.has-background-dim-100 {
		opacity: 1;
	}
}

.gb-button-right {
	transform: translateX(-100%);
	left: 100%;
	position: relative;
}

.gb-button-center {
	margin: 0 auto;
}

.gb-cta-inspector-media.components-button {
	vertical-align: top;
	border: 1px solid #e2e4e7;
	background-color: #fff;
	display: inline-flex;
	border-radius: 3px;
	margin-bottom: 15px;

	&:hover {
		box-shadow: none !important;
		border: solid 1px #555d66;
	}

	&:first-child {
		margin-right: 8px;
	}

	svg {
		margin-right: 5px;
	}
}
