body:not(.elementor-page) .so-single {

	&-cats {
		padding-top: 20px;
		padding-bottom: 20px;

		a {
			@include font-main();
			@include font(14px, 1);
			@include transition();
			font-weight: 500;
			padding: 10px 35px;
			border-radius: 25px;
			margin-right: 15px;
			margin-bottom: 15px;
			letter-spacing: 0.5px;
			display: inline-block;
			background-color: #ebe9eb;
			color: #5A3F2E;
			text-decoration: none !important;

			&:hover, &:focus {
				background-color: #5A3F2E;
				color: #fff;
			}

		}

	}

	&-tags {
		@include font(14px, 1);
		font-weight: 500;
		color: #5A3F2E;

		a {
			@include font-main();
			@include font(14px, 1);
			@include transition();
			display: inline-block;
			font-weight: 500;
			color: #5A3F2E;
			margin-right: 5px;
			margin-left: 5px;
			opacity: 1;
			text-decoration: none !important;

			&:hover, &:focus {
				opacity: 0.7;
			}

		}

	}

	&-user {
		@include flex($just: flex-start);

		img {
			@include dims(60px, 60px);
			border-radius: 100%;
			margin-right: 15px;
			display: inline-block;
		}

		&-data {

			span {
				@include font-main();
				@include font(14px, 1);
				font-weight: 500;
			}

		}

	}

	&-nav {

		.so-row {
			@include flex($align: stretch);
			padding-left: 0;
			padding-right: 0;
			max-width: none;
		}

		.so-col {
			width: 50%;
			background-position: center;
			background-repeat: no-repeat;
			background-size: cover;
			display: block;
			padding-top: 140px;
			padding-bottom: 140px;
			position: relative;

			&:before {
				@include pos();
				top: 0;
				left: 0;
				bottom: 0;
				right: 0;
				background-color: #000;
				opacity: 0.43;
				transition: all 0.3s ease;
				z-index: 1;
				content: '';
			}

			&:hover, &:focus {

				&:before {
					opacity: 0.6;
				}

			}

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

			&:first-child {
				@include flex($just: flex-end);

				div {
					padding-left: 20px;
					padding-right: 20px;
				}

			}

			&:last-child {
				@include flex($just: flex-start);

				div {
					padding-right: 20px;
					padding-left: 20px;
				}

			}

			div {
				box-sizing: border-box;
				max-width: 587px;
				display: inline-block;
				width: 100%;
			}

			h4 {
				@include font(20px, 1.5);
				color: #fff;
				padding-bottom: 0;
				font-weight: 700;
				word-break: break-all;
			}

			span {
				@include font(16px, 1.1);
				font-weight: 500;
				color: #fff;
			}

		}

		&.single-nav {

			.so-col {
				@include flex($just: center);
				width: 100%;

				div {
					padding-left: 20px;
				}

			}

		}

	}

}

body .so-page {

	.so-row-main {
		@include flex($align: flex-start);
	}

	&-main {
		width: 100%;
	}

	&-sidebar {
		max-width: 300px;
		width: 100%;
		box-sizing: border-box;
		background-color: #F6F6F6;
		padding: 15px;
		border-radius: 5px;

		.searchform {

			.screen-reader-text {
				display: block;
				padding-bottom: 10px;
			}

		}

		&-right {
			margin-left: 30px;
		}

		&-left {
			margin-right: 30px;
		}

		input {
			box-sizing: border-box;
			margin-bottom: 15px;
		}

		aside {
			padding: 0;
		}

		.widget_recent_entries {

			ul {
				padding-left: 15px;
				padding-right: 15px;
			}

		}

		.recentcomments {
			font-size: 14px;
			margin-bottom: 10px;

			a {
				font-size: 14px;
				padding: 0;
				border-bottom: 1px solid #5A3F2E;
				opacity: 1;
				border-radius: 0;

				&:hover, &:focus {
					background-color: transparent;
					opacity: 0.7;
				}

			}

		}

		.widget_shopping_cart_content {

			.woocommerce-mini-cart {
				padding-bottom: 15px;

				.woocommerce-mini-cart-item {
					margin-bottom: 10px;

					.remove {
						display: none !important;
					}

					a {
						padding: 0;

						&:hover, &:focus {
							background-color: transparent;
						}

						img {
							width: 40px;
						}

					}

				}

			}

			.woocommerce-mini-cart__total {
				margin-bottom: 10px;
			}

			.woocommerce-mini-cart__buttons {

				a.button {
					width: 100%;
					text-align: center;
					box-sizing: border-box;
				}

			}

		}

		#wp-calendar {
			width: 100%;
			padding-left: 20px;
			padding-right: 20px;

			caption {
				padding-bottom: 10px;
				font-size: 14px;
			}

			td, th {
				text-align: center;
				font-size: 14px;
				padding-top: 5px;
				padding-bottom: 5px;
			}

		}

		.product_list_widget {
			padding-bottom: 20px;

			li {
				margin-bottom: 10px;

				a {
					padding: 0;

					&:hover, &:focus {
						background-color: transparent;
					}

					img {
						width: 40px;
					}

				}

			}

		}

		.widget_media_image {
			margin-bottom: 20px;

			img {
				border: 1px solid transparent;
				border-radius: 5px;

				&:hover, &:focus {
					border-color: #5A3F2E;
				}

			}

		}

		.gallery {
			padding-bottom: 20px;

			.gallery-icon {
				padding: 4px;
				box-sizing: border-box;

				img {
					border: 1px solid transparent !important;
					border-radius: 4px;
				}

				&:hover, &:focus {

					img {
						border-color: #5A3F2E !important;
					}

				}

			}

		}

		.mejs-container {
			color: #fff;
			margin-bottom: 15px;

			* {
				color: #fff;
				font-size: 10px;
			}

		}

		.select2 {
			margin-bottom: 15px;
		}

		#recentcomments {
			padding-left: 20px;
			padding-right: 20px;
		}

		.children {
			padding-bottom: 0;
		}

		.tagcloud {
			padding-left: 17px;
			padding-right: 17px;

			a {
				font-size: 12px;
				display: inline-block;
				margin-left: 3px;
				margin-right: 3px;
				margin-bottom: 5px;
				opacity: 1;

				&:hover, &:focus {
					opacity: 0.7;
				}

			}

		}

		.widget-description {
			padding-left: 20px;
			padding-right: 20px;
			font-size: 14px;
			line-height: 1.3;
			padding-bottom: 20px;

			* {
				font-size: 14px;
				line-height: 1.3;
			}

		}

		.widget_recent_entries {

			ul {

				li {

					span {
						font-size: 14px;
					}

					a {
						font-size: 14px;
						padding: 0;
						border-bottom: 1px solid #5A3F2E;
						opacity: 1;
						border-radius: 0;
						display: inline-block;
						margin: 8px;

						&:hover, &:focus {
							background-color: transparent;
							opacity: 0.7;
						}

					}

				}

			}

		}

		.woocommerce-product-search {
			padding-bottom: 20px;

			button {
				font-size: 14px;
				line-height: 1.5;
				font-weight: 500;
				transition: all 0.3s ease;
				width: 100%;
				cursor: pointer;
				text-align: center;
				padding: 10px 25px;
				border-radius: 5px;
				letter-spacing: 0.4px;
				opacity: 1;

				&:hover, &:focus {
					opacity: 0.7;
				}

			}

		}

		#searchsubmit, .woocommerce-product-search button {
			color: #fff;
			background-color: #5A3F2E;
			border-width: 0;
			cursor: pointer;
			opacity: 1;
			letter-spacing: 0.4px;

			&:hover, &:focus {
				opacity: 0.7;
			}

		}

		h3 {
			font-size: 20px;
			padding-left: 20px;
			padding-bottom: 10px;
		}

		ul {
			padding-left: 0;
			padding-bottom: 20px;

			&:empty {
				display: none;
			}

			li {
				font-size: 0;

				a {
					@include transition();
					font-size: 14px;
					display: block;
					padding: 10px 20px;
					border-radius: 3px;

					&:hover, &:focus {
						background-color: #dddddd;
					}

				}

			}

		}

		#searchform {
			padding-bottom: 15px;
		}

		#sidebar {

			& > ul {
				padding-bottom: 0;
			}

		}

	}

	.so-content {
		padding-bottom: 30px;
		padding-top: 30px;
	}

	.so-content-comment {
		background-color: #F6F6F6;
		padding-bottom: 120px;
		padding-top: 120px;
	}

	.so-row-comment {
		text-align: center !important;
		max-width: 1000px;

		.comment-form {

			& > p {
				margin-bottom: 25px;
			}

			label {
				position: relative;
				top: -3px;
			}

			.form-submit {
				margin-bottom: 0 !important;
			}

			.comment-form-cookies-consent {
				margin-bottom: 0 !important;

				input {
					display: inline-block;
					width: auto;
					position: relative;
					top: -2px;
					margin-right: 10px;
				}

			}

		}

		.navigation {

			a {
				@include transition();
				font-size: 14px;
				font-weight: 500;
				display: inline-block;
				margin-bottom: 30px;
				margin-top: 30px;
				opacity: 1;

				&:hover, &:focus {
					opacity: 0.6;
				}

			}

		}

		#comments {
			text-align: center;
		}

		.commentlist {
			padding-left: 0;

			.trackback {
				text-align: left;
			}

			.pingback {}

			.comment, .trackback, .pingback {
				text-align: left;
				list-style: none;
				padding-bottom: 15px;

				.comment-author {
					@include flex($just: flex-start);
					line-height: 1;
					padding-bottom: 0 !important;

					* {
						@include font(14px, 1.4);
					}

					img {
						line-height: 1;
						display: inline-block;
						border-radius: 100%;
						margin-right: 10px;
					}

					.fn {
						margin-right: 10px;
					}

				}

				.comment-body {

					a {
						text-decoration: none;
					}

					& > p {
						@include font(14px, 1.4);
						padding-bottom: 10px;
						padding-top: 10px;
					}

				}

				.comment-meta {
					padding-bottom: 0 !important;

					a {
						text-decoration: none;
					}

					* {
						@include font(12px, 1.4);
					}

				}

				.reply {
					text-align: right;
					padding-bottom: 0;

					a {
						@include font(12px, 1.4);
					}

				}

			}

		}

	}
	
	.comment-respond {
		text-align: left;
		width: 100%;
		display: inline-block;

		textarea {
			box-sizing: border-box;
			margin-top: 15px;
		}

		h3 {
			padding-bottom: 10px;
		}

		.submit {
			@include font(14px, 1.5);
			@include font-button();
			@include transition();
			@include appearance(none !important);
			display: inline-block;
			padding: 10px 25px;
			box-sizing: border-radius;
			font-weight: 500 !important;
			border-radius: 5px;
			border-width: 0;
			cursor: pointer;
			background-color: #5A3F2E !important;
			color: #fff !important;
			text-decoration: none;
			opacity: 1;
			margin-top: 20px !important;

			&:hover, &:focus {
				opacity: 0.7;
			}
		}

	}

}

body.single-post .so-page,
body.single-recipe .so-page,
body.page-template-default .so-page {

	.so-row .so-page-main, .commentlist .comment-body {
		clear: both;

		.wp-block-quote, blockquote, q {
			border-left: 3px solid #5A3F2E;
			padding-left: 20px;
			padding-bottom: 0;
			margin-bottom: 25px;
		}

		fieldset {
			margin-bottom: 30px;
		}

		hr {
			margin-bottom: 50px;
			margin-top: 50px;
		}

		* {
			line-height: 1.8;
		}

		& > * {
			padding-bottom: 25px;
		}

		a {
			text-decoration: underline;
		}

		dl {

			dt {}

			dd {
				padding-left: 30px;
			}

		}

		.is-style-circle-mask {
			
			img {
				border-radius: 100%;
			}

		}

		small, .has-small-font-size {
			font-size: 14px;
		}

		.has-large-font-size {
			font-size: 26px;
		}

		.has-background {
			margin-bottom: 25px;
		}

		code {
			padding: 10px 15px 10px 15px;
			background-color: lighten(#5A3F2E, 70%);
			display: inline-block;
			margin-top: 15px;
			margin-bottom: 15px;
		}

		table {
			margin-bottom: 25px;

			th {
				padding: 7px;
				border: 1px solid #5A3F2E;
			}

			td {
				padding: 7px;
				border: 1px solid #5A3F2E;
			}

		}

		h1, h2, h3, h4, h5, h6 {
			line-height: 1.4;
		}

		h4, h5, h6 {
			padding-bottom: 15px;
		}

		ul {
			list-style: disc;
		}

		ol {
			list-style: decimal;
		}

		ul, ol {
			padding-top: 15px;
			padding-bottom: 15px;

			li {
				margin-bottom: 10px;
			}

		}

		.wp-block-image {
			display: inherit;
			padding-bottom: 0;

			figcaption {
				font-size: 12px;
				text-align: center;
			}

		}

		.aligncenter {
			margin: auto;
		}

		.alignleft {
			float: left;
			margin: 5px 20px 5px 0;
		}

		.alignright {
			float: right;
			margin: 5px 0 5px 20px;
		}

		figure {

			figcaption {
				font-size: 14px;
				padding-top: 10px;
				text-align: center;

				a {
					text-decoration: underline;
					font-size: inherit;
					color: inherit;
					line-height: inherit;
				}

				* {
					font-size: inherit;
					color: inherit;
					line-height: inherit;
				}

			}

		}

		.wp-caption {

			&-text {
				font-size: 14px;
				padding-top: 10px;
				text-align: center;

				a {
					text-decoration: underline;
					font-size: inherit;
					color: inherit;
					line-height: inherit;
				}

			}

		}

		.wp-block-cover {
			padding-bottom: 0;
			margin-bottom: 40px;
		}

		.wp-block-button {

			&__link {
				color: #fff;
				background-color: #5A3F2E;
				opacity: 1;
				text-decoration: none;

				&:hover, &:focus {
					opacity: 0.7;
				}

			}

			&.is-style-outline {

				.wp-block-button__link {
					background-color: #926950;
					border-color: #5A3F2E;
				}

			}

		}

		.blocks-gallery-grid {
			@include flex($just: flex-start, $align: stretch);
			@include flex-wrap();
			padding-left: 0;

			.blocks-gallery-item {
				display: inline-flex;

				figcaption {
					box-sizing: border-box;
				}

				img {
					min-height: 200px;
				}

			}

		}

		.wp-block-gallery {
			padding-bottom: 40px;
		}

		.clear {
			clear: both;
		}

		.wp-block-embed__wrapper {
			text-align: center;

			& > div, & > iframe {
				margin-left: auto !important;
				margin-right: auto !important;
				display: inline-block;
			}

		}

		.alignfull {

			.wp-block-embed__wrapper {

				& > div, & > iframe {
					width: 100% !important;
					max-width: none !important;
					min-height: 500px;
				}

			}

		}

		.wp-block-group {
			padding: 25px;
			margin-bottom: 25px;
		}

		hr {

			&.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
				@include dims(100%, 3px);
				padding: 0;
				background-color: #5A3F2E;
				margin: auto;
				display: inline-block;
				max-width: 300px;
			}

			&.is-style-wide, &:not(.wp-block-separator) {
				@include dims(100%, 3px);
				padding: 0;
				background-color: #5A3F2E;
				margin: auto;
				display: inline-block;
			}

		}

		.post-password-form {

			input {
				box-sizing: border-box;
				margin-bottom: 25px;
			}

		}

		.mejs-container {

			.mejs-currenttime, .mejs-duration {
				position: relative;
				top: -10px;
				color: #fff;
			}

		}

		.gallery {

			.gallery-item {
				box-sizing: border-box;
				padding-left: 15px;
				padding-right: 15px;
				padding-bottom: 30px;

				img {
					width: 100%;
					margin: auto;
					border-color: #5A3F2E !important;
				}

				.gallery-icon {
					margin-bottom: 20px;
				}

				.gallery-caption {
					padding-left: 0;
					padding-top: 0;
				}

			}

		}

	}

	.commentlist .comment-body {

		code {
			background-color: #ece8e4;
		}

		img {
			margin-bottom: 20px;
			margin-top: 20px;
		}

		.comment-author img {
			margin-top: 0;
			margin-bottom: 0;
		}

	}

}

@media screen and (max-width: 991px) {
	body.single-post .so-page,
	body.page-template-default .so-page {

		.so-row-main {
			@include flex-col();
		}

		.so-page-sidebar {
			width: 100%;
			margin-left: 0;
			max-width: none;
			margin-bottom: 30px;
		}

	}
}

@media screen and (max-width: 600px) {
	.so-single {

		&-nav {

			.so-row {
				@include flex-col();
			}

			.so-col {
				width: 100% !important;
				padding-top: 50px !important;
				padding-bottom: 50px !important;
				min-height: 215px;
				box-sizing: border-box;

				div {
					padding-left: 20px !important;
					padding-right: 20px !important;
				}

			}

		}

	}
}




