/*
Theme Name: Soffosang
Theme URI: http://www.elegantthemes.com/gallery/divi/
Version: 4.17.4
Template: Divi
Description: Divi Child
Author: Mathinic AB
Author URI: http://www.mathinic.se
*/

/* =Theme customization starts here
------------------------------------------------------- */

/* ==================================================
   Soff & Sängbutiken – gemensam design
   ================================================== */

:root {
	--ss-dark: #302c29;
	--ss-dark-deep: #25211f;
	--ss-accent: #b95d48;
	--ss-accent-dark: #8f3d2f;
	--ss-text: #292929;
	--ss-muted: #625d57;
	--ss-light: #f7f5f1;
	--ss-border: #e8e2dc;
	--ss-button-bg: #302c29;
	--ss-button-bg-hover: #b95d48;
	--ss-button-text: #ffffff;
	--ss-button-radius: 0;
}

/* ==================================================
   Katalogläge
   ================================================== */

.site-header-cart,
.et-cart-info,
.woocommerce-cart-form,
.wc-block-cart,
.wc-block-checkout {
	display: none !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 18px !important;
}

.woocommerce ul.products li.product .price {
	color: var(--ss-accent-dark) !important;
	font-weight: 700 !important;
}

/* ==================================================
   Sidhuvud
   ================================================== */

#main-header,
#top-header {
	display: none !important;
}

.soffosang-site-header {
	position: relative;
	z-index: 9999;
	background: #fff;
	border-bottom: 1px solid var(--ss-border);
}

.soffosang-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	max-width: 1200px;
	margin: auto;
	padding: 18px 24px;
}

.soffosang-brand {
	color: #1d1d1d !important;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.soffosang-brand span {
	display: block;
	font-family: Georgia, serif;
	font-size: 30px;
	font-weight: 700;
}

.soffosang-brand small {
	display: block;
	margin-top: 6px;
	font-size: 11px;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.soffosang-main-nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.soffosang-main-nav > ul {
	display: flex;
	align-items: center;
	gap: 26px;
}

.soffosang-main-nav li {
	position: relative;
}

.soffosang-main-nav a {
	display: block;
	padding: 12px 0;
	color: var(--ss-text) !important;
	font-weight: 600;
	text-decoration: none;
}

.soffosang-main-nav .sub-menu {
	position: absolute;
	top: 100%;
	left: -18px;
	display: none;
	min-width: 220px;
	padding: 10px 18px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}

.soffosang-main-nav li:hover > .sub-menu,
.soffosang-main-nav li:focus-within > .sub-menu {
	display: block;
}

.soffosang-main-nav .sub-menu a {
	padding: 8px 0;
	font-weight: 500;
}

.soffosang-menu-toggle {
	display: none;
	padding: 10px 16px;
	border: 0;
	background: var(--ss-accent-dark);
	color: #fff;
	font-weight: 700;
}

/* ==================================================
   Sidfot
   ================================================== */

#main-footer {
	display: none !important;
}

.soffosang-site-footer {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
	padding: 45px max(24px, calc((100vw - 1152px) / 2));
	background: var(--ss-dark-deep);
	color: #fff;
}

.soffosang-site-footer a {
	color: #fff !important;
}

.soffosang-site-footer p {
	margin-top: 10px;
	color: #eee;
}

/* ==================================================
   Grundlayout
   ================================================== */

.woocommerce-page #sidebar,
.page #sidebar {
	display: none !important;
}

.woocommerce-page #left-area,
.page #left-area {
	float: none !important;
	width: 100% !important;
	padding-right: 0 !important;
}

.woocommerce-page #main-content .container::before,
.page #main-content .container::before {
	display: none !important;
}

.woocommerce-page #main-content .container,
.page #main-content .container {
	width: 92%;
	max-width: 1200px;
	padding-top: 65px;
}

.post-type-archive-product .entry-title,
.woocommerce-shop .entry-title {
	display: none !important;
}

/* ==================================================
   Startsida
   ================================================== */

.soffosang-home {
	background: #fff;
}

/* Äldre hero – kan behållas tills alla heros använder ss-hero-modern */
.soffosang-hero {
	display: flex;
	align-items: center;
	min-height: 540px;
	padding: 80px max(7vw, 24px);
	background: linear-gradient(100deg, #eee5dc 0%, #f7f3ef 58%, #ddd0c2 100%);
}

.soffosang-hero > div {
	max-width: 680px;
}

.soffosang-hero h1 {
	margin: 12px 0 24px;
	color: #211e1c;
	font-family: Georgia, serif;
	font-size: clamp(42px, 6vw, 76px);
	line-height: 1.05;
}

.soffosang-hero p {
	max-width: 600px;
	font-size: 19px;
	line-height: 1.7;
}

.eyebrow {
	color: var(--ss-accent-dark);
	font-size: 12px !important;
	font-weight: 800;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.soffosang-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin: 16px 16px 0 0;
	padding: 13px 24px;
	background: var(--ss-button-bg);
	color: var(--ss-button-text) !important;
	font-weight: 600;
	text-decoration: none;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.soffosang-cta:hover {
	background: var(--ss-button-bg-hover);
	color: #fff !important;
	transform: translateY(-2px);
}

.soffosang-link {
	display: inline-block;
	padding: 12px 0;
	border-bottom: 1px solid var(--ss-text);
	color: var(--ss-text) !important;
	font-weight: 700;
	text-decoration: none;
}

.soffosang-section {
	max-width: 1200px;
	margin: auto;
	padding: 80px 24px;
}

.section-heading {
	margin-bottom: 36px;
	text-align: center;
}

.section-heading h2,
.soffosang-visit h2 {
	color: #211e1c;
	font-family: Georgia, serif;
	font-size: clamp(32px, 4vw, 50px);
}

.soffosang-category-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.category-card {
	overflow: hidden;
	background: #f4f0ec;
	color: #211e1c !important;
	text-decoration: none;
}

.category-card img,
.category-placeholder {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	background: linear-gradient(145deg, #ddd1c5, #f6f2ee);
}

.category-card span:last-child {
	display: block;
	padding: 18px;
}

.category-card strong {
	display: block;
	font-family: Georgia, serif;
	font-size: 22px;
}

.category-card small {
	display: block;
	margin-top: 5px;
	color: #6d6661;
}

.soffosang-products {
	padding-top: 30px;
}

.soffosang-products ul.products {
	margin-top: 35px;
}

.center {
	text-align: center;
}

.soffosang-visit {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	max-width: 1152px;
	margin: 20px auto 80px;
	padding: 55px;
	background: #292522;
	color: #fff;
}

.soffosang-visit h2,
.soffosang-visit a {
	color: #fff !important;
}

/* ==================================================
   Sortiment
   ================================================== */

.catalog-hero {
	width: 92%;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 65px;
}

.soffosang-catalog-intro {
	max-width: 760px;
	margin: 0 auto 50px;
	text-align: center;
}

.soffosang-catalog-intro h1 {
	margin: 10px 0 20px;
	color: #211e1c;
	font-family: Georgia, serif;
	font-size: clamp(38px, 5vw, 64px);
}

/* ==================================================
   Om oss
   ================================================== */

.soffosang-about {
	max-width: 1200px;
	margin: auto;
}

.about-hero {
	max-width: 900px;
	padding: 80px 0 90px;
}

.about-hero h1 {
	margin: 15px 0 28px;
	color: #211e1c;
	font-family: Georgia, serif;
	font-size: clamp(46px, 7vw, 82px);
	line-height: 1.05;
}

.about-hero .lead {
	max-width: 760px;
	font-size: 22px;
	line-height: 1.7;
}

.about-story {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
	padding: 80px 60px;
	background: #f3ede7;
}

.about-story h2,
.about-value h2,
.about-cta h2 {
	color: #211e1c;
	font-family: Georgia, serif;
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1.15;
}

.about-story p,
.about-value p {
	font-size: 17px;
	line-height: 1.8;
}

.about-numbers {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	margin: 70px 0;
	background: #ddd3ca;
}

.about-numbers > div {
	padding: 35px 28px;
	background: #fff;
}

.about-numbers strong {
	display: block;
	color: var(--ss-accent-dark);
	font-family: Georgia, serif;
	font-size: 28px;
}

.about-numbers span {
	display: block;
	margin-top: 8px;
	color: #5d5651;
}

.about-value {
	max-width: 820px;
	margin: 90px auto;
	padding: 0 24px;
}

.about-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 50px;
	margin-bottom: 80px;
	padding: 55px 60px;
	background: #292522;
	color: #fff;
}

.about-cta h2,
.about-cta a {
	color: #fff !important;
}

.about-cta > div:first-child {
	max-width: 680px;
}

.light {
	border-color: #fff !important;
}

/* ==================================================
   Återanvändbara Divi-klasser
   ================================================== */

.section-heading p:first-child,
.visit-copy p:first-child,
.about-hero p:first-child,
.about-section-heading p:first-child,
.about-value-copy p:first-child,
.contact-hero p:first-child,
.catalog-hero p:first-child {
	color: var(--ss-accent-dark);
	font-size: 12px !important;
	font-weight: 800;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.visit-copy p:first-child {
	color: #fff;
}

/* ==================================================
   Produktsidor
   ================================================== */

.single-product .et-l--body .et_pb_section {
	padding: 70px 0 85px;
	background: var(--ss-light);
}

.single-product .et-l--body .et_pb_row {
	width: 90%;
	max-width: 1280px;
}

.single-product .et-l--body .et_pb_row:first-child {
	display: flex;
	align-items: flex-start;
	gap: 45px;
	padding: 34px;
	border-radius: 3px;
	background: #fff;
	box-shadow: 0 14px 45px rgba(35, 31, 28, 0.07);
}

.single-product .et_pb_wc_images {
	padding: 24px;
	border-radius: 2px;
	background: #f1efea;
}

.single-product .et_pb_wc_images img {
	mix-blend-mode: multiply;
}

.single-product .et_pb_wc_title h1 {
	margin-bottom: 18px;
	color: #282522 !important;
	font-family: Georgia, serif !important;
	font-size: clamp(34px, 4vw, 56px) !important;
	line-height: 1.08 !important;
}

.single-product .et_pb_wc_price .price {
	color: var(--ss-accent-dark) !important;
	font-size: 27px !important;
	font-weight: 700 !important;
}

.single-product .et_pb_wc_description {
	margin: 22px 0;
	color: var(--ss-muted);
	font-size: 16px;
	line-height: 1.8;
}

.single-product .et_pb_row:first-child .et_pb_column:last-child .et_pb_text {
	margin-top: 25px;
	padding: 28px 30px;
	border-radius: 2px;
	background: #373737;
	color: #fff;
}

.single-product .et_pb_row:first-child .et_pb_column:last-child .et_pb_text h3 {
	margin-bottom: 8px;
	color: #fff !important;
	font-family: Georgia, serif;
	font-size: 24px;
}

.single-product .et_pb_row:first-child .et_pb_column:last-child .et_pb_text p {
	color: #eee8e1;
	line-height: 1.65;
}

.single-product .et_pb_row:first-child .et_pb_column:last-child .et_pb_text p:last-child {
	margin-top: 18px;
}

.single-product .et_pb_row:first-child .et_pb_column:last-child .et_pb_text a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin: 4px 7px 4px 0;
	padding: 13px 24px;
	border: 1px solid var(--ss-button-bg);
	border-radius: var(--ss-button-radius);
	background: var(--ss-button-bg);
	color: var(--ss-button-text) !important;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.single-product .et_pb_row:first-child .et_pb_column:last-child .et_pb_text a:hover {
	border-color: var(--ss-button-bg-hover);
	background: var(--ss-button-bg-hover);
	color: #fff !important;
	transform: translateY(-2px);
}

.single-product .ss-product-details {
	margin-top: 28px;
	padding: clamp(30px, 5vw, 54px);
	border: 1px solid #e6e0d9;
	background: #fff;
}

.single-product .ss-product-details h2,
.single-product .ss-product-details h3,
.single-product .related h2 {
	color: #282522 !important;
	font-family: Georgia, serif !important;
}

.single-product .et_pb_wc_related_products {
	margin-top: 60px;
}

.single-product .related.products > h2 {
	margin-bottom: 28px;
	font-size: 36px !important;
	text-align: center;
}

.single-product .related.products li.product {
	padding-bottom: 18px;
	background: #fff;
	box-shadow: 0 8px 25px rgba(35, 31, 28, 0.05);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.single-product .related.products li.product:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 32px rgba(35, 31, 28, 0.10);
}

/* ==================================================
   Gemensam knappstil
   ================================================== */

.soffosang-contact-button {
	margin-top: 18px !important;
}

body .et_pb_button,
body .button,
body button.button,
body input.button,
body input[type="submit"],
body .woocommerce a.button,
body .woocommerce button.button,
body .woocommerce input.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 13px 24px !important;
	border: 1px solid var(--ss-button-bg) !important;
	border-radius: var(--ss-button-radius) !important;
	background: var(--ss-button-bg) !important;
	box-shadow: none !important;
	color: var(--ss-button-text) !important;
	cursor: pointer;
	font-family: inherit;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.02em;
	text-decoration: none !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease !important;
}

body .et_pb_button:hover,
body .button:hover,
body button.button:hover,
body input.button:hover,
body input[type="submit"]:hover,
body .woocommerce a.button:hover,
body .woocommerce button.button:hover,
body .woocommerce input.button:hover,
body .et_pb_button:focus-visible,
body .button:focus-visible {
	padding: 13px 24px !important;
	border-color: var(--ss-button-bg-hover) !important;
	background: var(--ss-button-bg-hover) !important;
	box-shadow: none !important;
	color: #fff !important;
	transform: translateY(-2px);
}

body .et_pb_button::after,
body .et_pb_button:hover::after {
	display: none !important;
	content: none !important;
}

body .et_pb_button:focus-visible,
body .button:focus-visible,
body button.button:focus-visible,
body input[type="submit"]:focus-visible {
	outline: 2px solid var(--ss-button-bg-hover);
	outline-offset: 3px;
}

body .woocommerce .button.disabled,
body .woocommerce .button:disabled,
body .woocommerce .button:disabled[disabled] {
	opacity: 0.45;
	cursor: not-allowed;
	transform: none;
}

/* ==================================================
   Heltäckande Blurb-bildkort
   ================================================== */

.ss-image-blurb {
	position: relative;
	min-height: 440px;
	overflow: hidden;
	background: #2f2b28;
	isolation: isolate;
}

.ss-image-blurb .et_pb_blurb_content {
	position: static !important;
	width: 100% !important;
	max-width: none !important;
	min-height: inherit;
	margin: 0 !important;
}

.ss-image-blurb .et_pb_main_blurb_image {
	position: absolute !important;
	inset: 0 !important;
	z-index: 0;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
}

.ss-image-blurb .et_pb_image_wrap {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

.ss-image-blurb .et_pb_main_blurb_image img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center;
	transition: transform 0.6s cubic-bezier(0.2, 0.65, 0.3, 1);
}

.ss-image-blurb::after {
	position: absolute;
	inset: 0;
	z-index: 1;
	content: "";
	pointer-events: none;
	background: linear-gradient(
		180deg,
		rgba(25, 22, 20, 0.02) 25%,
		rgba(25, 22, 20, 0.18) 58%,
		rgba(25, 22, 20, 0.68) 100%
	);
}

.ss-image-blurb .et_pb_blurb_container {
	position: absolute !important;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 44px;
	text-align: left;
}

.ss-image-blurb .et_pb_module_header {
	order: 2;
	max-width: 620px;
	margin: 5px 0 0 !important;
	padding: 0 !important;
	color: #fff !important;
	font-size: clamp(34px, 4vw, 48px) !important;
	font-weight: 500 !important;
	line-height: 1.08 !important;
	letter-spacing: -0.025em;
}

.ss-image-blurb .et_pb_blurb_description {
	order: 1;
	margin: 0 !important;
	color: #fff !important;
	font-size: 20px !important;
	font-weight: 600;
	line-height: 1.25;
}

.ss-image-blurb .et_pb_blurb_description p {
	padding: 0 !important;
}

.ss-image-blurb .et_pb_module_header a {
	color: inherit !important;
}

.ss-image-blurb:hover .et_pb_main_blurb_image img {
	transform: scale(1.035);
}

/* ==================================================
   Modern hero
   ================================================== */

.ss-hero-modern {
	position: relative;
	display: flex;
	align-items: center;
	min-height: clamp(580px, 72vh, 760px);
	overflow: hidden;
	background-color: #282522;
	background-position: center;
	background-size: cover;
	isolation: isolate;
}

.ss-hero-modern::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	content: "";
	pointer-events: none;
	background: linear-gradient(
		90deg,
		rgba(21, 20, 18, 0.62) 0%,
		rgba(21, 20, 18, 0.38) 48%,
		rgba(21, 20, 18, 0.18) 100%
	);
}

.ss-hero-modern .et_parallax_bg {
	z-index: -1;
	background-position: center;
	background-size: cover;
}

.ss-hero-modern .et_pb_fullwidth_header_container,
.ss-hero-modern .header-content-container,
.ss-hero-modern .header-content {
	position: relative;
	z-index: 2;
}

.ss-hero-modern .et_pb_fullwidth_header_container {
	width: min(calc(100% - 48px), 1180px) !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
}

.ss-hero-modern .header-content-container {
	display: flex;
	align-items: center;
	width: 100% !important;
}

.ss-hero-modern .header-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: min(100%, 980px) !important;
	max-width: 980px !important;
	margin: 0 !important;
	padding: 80px 0 !important;
	text-align: left !important;
}

.ss-hero-modern .et_pb_module_header {
	order: 2;
	max-width: 980px;
	margin: 14px 0 0 !important;
	padding: 0 !important;
	color: #fff3c9 !important;
	font-size: clamp(54px, 6.4vw, 106px) !important;
	font-weight: 600 !important;
	line-height: 0.98 !important;
	letter-spacing: -0.055em !important;
	text-wrap: balance;
}

.ss-hero-modern .et_pb_fullwidth_header_subhead {
	order: 1;
	margin: 0 !important;
	color: #fff3c9 !important;
	font-size: clamp(16px, 1.5vw, 24px) !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.32em !important;
	text-transform: uppercase;
}

.ss-hero-modern .et_pb_header_content_wrapper {
	order: 3;
	max-width: 680px;
	margin-top: 24px;
	color: rgba(255, 255, 255, 0.88);
	font-size: 18px;
	line-height: 1.65;
}

.ss-hero-modern .et_pb_button_wrapper {
	order: 4;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 30px;
}

.ss-hero-modern .et_pb_button {
	margin: 0 !important;
}

/* ==================================================
   Responsivt
   ================================================== */

@media (max-width: 980px) {
	.soffosang-header-inner {
		flex-wrap: wrap;
	}

	.soffosang-menu-toggle {
		display: block;
	}

	.soffosang-main-nav {
		display: none;
		width: 100%;
	}

	.menu-open .soffosang-main-nav {
		display: block;
	}

	.soffosang-main-nav > ul {
		display: block;
	}

	.soffosang-main-nav .sub-menu {
		position: static;
		display: block;
		padding: 0 0 0 20px;
		box-shadow: none;
	}

	.soffosang-site-footer {
		grid-template-columns: 1fr;
	}

	.soffosang-category-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.soffosang-visit {
		display: block;
		margin: 20px 24px 60px;
	}

	.about-story {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 55px 28px;
	}

	.about-numbers {
		grid-template-columns: 1fr;
	}

	.about-cta {
		display: block;
		padding: 45px 28px;
	}

	.about-hero {
		padding: 55px 0 65px;
	}

	.single-product .et-l--body .et_pb_section {
		padding: 35px 0 55px;
	}

	.single-product .et-l--body .et_pb_row:first-child {
		gap: 20px;
		padding: 20px;
	}

	.single-product .et_pb_wc_title h1 {
		font-size: 36px !important;
	}

	.ss-hero-modern {
		min-height: 620px;
	}

	.ss-hero-modern .et_pb_fullwidth_header_container {
		width: min(calc(100% - 56px), 1180px) !important;
	}

	.ss-hero-modern .header-content {
		padding: 70px 0 !important;
	}
}

@media (max-width: 767px) {
	.ss-image-blurb {
		min-height: 340px;
	}

	.ss-image-blurb .et_pb_blurb_container {
		padding: 28px;
	}

	.ss-image-blurb .et_pb_module_header {
		font-size: clamp(30px, 9vw, 40px) !important;
	}

	.ss-image-blurb .et_pb_blurb_description {
		font-size: 17px !important;
	}

	.ss-hero-modern {
		min-height: 520px;
		background-position: 60% center;
	}

	.ss-hero-modern::before {
		background: linear-gradient(
			90deg,
			rgba(21, 20, 18, 0.72) 0%,
			rgba(21, 20, 18, 0.44) 100%
		);
	}

	.ss-hero-modern .et_pb_fullwidth_header_container {
		width: calc(100% - 40px) !important;
	}

	.ss-hero-modern .header-content {
		padding: 56px 0 !important;
	}

	.ss-hero-modern .et_pb_module_header {
		font-size: clamp(42px, 13vw, 64px) !important;
		line-height: 1 !important;
	}

	.ss-hero-modern .et_pb_fullwidth_header_subhead {
		font-size: 14px !important;
		letter-spacing: 0.24em !important;
	}
}

@media (max-width: 540px) {
	.soffosang-category-grid {
		grid-template-columns: 1fr;
	}

	.soffosang-hero {
		min-height: 460px;
	}

	.soffosang-section {
		padding: 55px 20px;
	}
}

/* Relaterade produkter – lika höga produktkort */
.single-product .related.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 48px;
}

.single-product .related.products ul.products::before,
.single-product .related.products ul.products::after {
	display: none !important;
}

.single-product .related.products ul.products li.product {
	display: flex !important;
	flex-direction: column;
	width: 100% !important;
	height: 100%;
	margin: 0 !important;
	padding: 0 0 20px;
	background: #fff;
}

.single-product .related.products ul.products li.product a {
	display: flex;
	flex: 1;
	flex-direction: column;
}

.single-product .related.products ul.products li.product img {
	width: 100%;
	aspect-ratio: 1 / 1;
	margin: 0;
	object-fit: contain;
}

.single-product .related.products ul.products li.product
.woocommerce-loop-product__title {
	min-height: 62px;
	margin: 0;
	padding: 16px 18px 6px !important;
	font-size: 18px;
	line-height: 1.25;
}

.single-product .related.products ul.products li.product .price {
	display: block;
	margin-top: auto;
	padding: 0 18px 4px;
	line-height: 1.4;
}

/* Surfplatta */
@media (max-width: 980px) {
	.single-product .related.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 28px;
	}
}

/* Mobil */
@media (max-width: 540px) {
	.single-product .related.products ul.products {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.single-product .related.products ul.products li.product
	.woocommerce-loop-product__title {
		min-height: 0;
		padding: 14px 14px 6px !important;
		font-size: 16px;
	}

	.single-product .related.products ul.products li.product .price {
		padding-right: 14px;
		padding-left: 14px;
	}
}