/*
Theme Name: Cuts and Edges Theme
Theme URI: https://cutsandedges.com/
Author: Team Cuts&Edges
Author URI: https://cutsandedges.com/
Description: A fully custom WordPress theme for Cuts and Edges – minimal, responsive, and CMS-controlled.
Version: 2.4
*/

body {
	margin: 0 !important;
	font-family: sans-serif;
}

main {
	padding: 168px 16px 16px 16px;
}

/* Limit font size on mobile */
@media (max-width: 768px) {
	h1, h2, h3, h4, h5, h6 {
		font-size: 22px !important;
	}
}

h1, h2, h3, h4, h5, h6,
button, input, select, textarea,
.desktop-header, .desktop-nav, .mobile-header {
	font-family: inherit;
	margin: 0 !important;
}

/* ----- Container ----- */
.cuts-type-style-container {
	display: flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	gap: 32px;
}

.cuts-type-style-not-found {
	padding: 20px;
	background: #eee;
	color: #666;
	text-align: center;
	width: 100%;
	box-sizing: border-box;
}

/* ----- Link Block ----- */
.cuts-type-style-link {
	text-decoration: none;
	display:flex;
	justify-content:center;
	align-items:center;
	border-radius: 24px;
	overflow: hidden;
	width: 100%;
	box-sizing: border-box;
	width:65vw;
}


@media (min-width: 768px) {
	.cuts-type-style-link {
		min-height: 40vh;
	}
}

@media (max-width: 768px) {
	.cuts-type-style-link {
		min-height: 40vh;
		width:95vw;
	}
}



/* ----- Main Wrapper ----- */
.cuts-type-style-wrapper {
	width: 100%;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	padding: 20px;
	box-sizing: border-box;
	cursor: pointer;
	height: 100%;
}

.cuts-type-style-wrapper.no-image {
	justify-content: center;
	text-align: center;
}

/* ----- Text Column ----- */
.cuts-type-style-left {
	width: 75%;
	display: flex;
	align-items: center;
}

.cuts-type-style-wrapper.no-image .cuts-type-style-left {
	width: 100%;
	justify-content: center;
}

/* Title text */
.cuts-type-style-heading {
	font-size: 4.5em !important;
	margin: 0;
	line-height: 1.2;
	word-break: break-word;
}

/* ----- Image Column ----- */
.cuts-type-style-right {
	width: 25%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding-left: 20px;
	box-sizing: border-box;
	overflow: hidden;
	border-radius: 16px;
}

.cuts-type-style-wrapper.no-image .cuts-type-style-right {
	display: none;
}

.cuts-type-style-image {
	width: 100%;
	max-height: 40vh;
	height: auto;
	object-fit: contain;
	border-radius: 16px;
	display: block;
	box-sizing: border-box;
}

/* ----- Mobile Styles ----- */
@media (max-width: 768px) {
	.cuts-type-style-wrapper {
		flex-direction: column-reverse;
		padding: 16px;
		text-align: center;
	}

	.cuts-type-style-right {
		width: 100%;
		justify-content: center;
		padding: 0;
		margin-bottom: 8px;
	}

	.cuts-type-style-left {
		width: 100%;
		justify-content: center;
		margin-top: 0;
	}

	.cuts-type-style-image {
		max-height: 25vh;
		height: auto;
		margin: 0 auto;
	}

	.cuts-type-style-heading {
		font-size: 2.3em !important;
		margin-top: 8px;
	}

	.cuts-type-style-link {
		min-height: 20vh;
	}
}