/*##########################################################################
# Zimmerbuchung  [de/templates/zimmerbuchen.php]
##########################################################################*/
.zimmerbuchung-wrap .zimmerbuchung-card
{
	background:#fff;
    border:1px solid var(--border-beige);
	border-radius:12px;
	box-shadow:0 10px 28px rgba(0,0,0,0.06);
	padding:24px 24px 20px;
}

.zimmerbuchung-lead
{
	background:#f8f3ea;
    border:1px solid var(--border-warm);
	border-radius:8px;
	padding:14px 16px;
	margin-bottom:20px;
	line-height:1.5;
}

.zimmerbuchung-section-title
{
	font-weight:bold;
	font-size:15px;
	margin:8px 0 8px;
	color:var(--status-brown-light);
}

.zimmerbuchung-block
{
	border:1px solid var(--border-warm);
	border-radius:8px;
	padding:14px 16px 8px;
    background:var(--surface-warm-light);
	margin:0 0 10px;
}

.zimmerbuchung-equal-col
{
	display:flex;
}

.zimmerbuchung-equal-col .zimmerbuchung-block
{
	flex:1;
	margin-bottom:0;
}

.zimmerbuchung-block.is-invalid-group
{
    border-color:var(--border-error);
	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
}

.zimmerbuchung-subtitle
{
	font-weight:bold;
	font-size:17px;
	margin:0 0 8px;
    color:var(--status-brown);
}

.zimmerbuchung-room-row
{
	display:block;
	margin:0 0 8px;
}

.zimmerbuchung-room-row label
{
	display:block;
	margin-bottom:4px;
	font-weight:normal;
	color:#333;
	font-size:16px;
}

.zimmerbuchung-radio-stack.is-invalid-group,
.form-group.is-invalid-group
{
	border-color:var(--border-error);
	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
}

.zimmerbuchung-radio-line
{
	display:block;
}

.zimmerbuchung-radio-line label
{
	display:inline-block;
	margin-right:18px;
	font-weight:normal;
}

.zimmerbuchung-radio-stack
{
    border:1px solid var(--border-warm);
	border-radius:8px;
    background:var(--surface-warm-light);
	padding:10px 14px 4px;
}

.zimmerbuchung-datum-label
{
	display:block;
	font-weight:bold;
	margin:0 0 8px;
    color:var(--status-brown-light);
	font-size:17px;
}

.zimmerbuchung-label-plain
{
	display:block;
	font-weight:normal;
	margin:0 0 6px;
	color:#333;
	font-size:16px;
}

.zimmerbuchung-radio-label
{
	display:block;
	font-weight:normal;
	margin:0 0 8px;
	color:#333;
	font-size:16px;
}

.zimmerbuchung-handy-hint
{
	margin-top:8px;
	font-style:italic;
    color:var(--status-brown-dark);
	font-size:16px;
}

.zimmerbuchung-kapazitaet-hinweis
{
	margin-top:12px;
    color:var(--status-error);
	font-weight:normal;
	font-size:16px;
	line-height:1.4;
}

.zimmerbuchung-datenschutz
{
	padding-top:10px;
	line-height:1.5;
    font-size: 14px;
}

.zimmerbuchung-side
{
	margin-top:24px;
	padding:18px 20px;
    background:var(--surface-warm-soft);
    border:1px solid var(--border-warm);
	border-radius:12px;
}

.zimmerbuchung-danke
{
	padding:20px 22px;
    background:var(--surface-card);
    border:1px solid var(--border-beige);
	border-radius:12px;
	box-shadow:0 10px 28px rgba(0,0,0,0.06);
}

.right
{
	float:right;
}

/*##### Zimmerbuchung Ende ####*/
/*##########################################################################
# Shop-Abschnitt  [de/templates/shop/shop-abschnitt.php]
##########################################################################*/
.shop-abschnitt {
    padding-top: 0px;
}
.shop-abschnitt-layout {
	display: grid;
	grid-template-columns: 320px minmax(0, 1fr);
	gap: 42px;
	align-items: start;
	width: 100%;
	max-width: 100%;

}

.shop-abschnitt-layout.shop-artikel-auswahl-ohne-navigation {
	grid-template-columns: minmax(0, 1fr);
}

.shop-login-layout {
	align-items: stretch;
}

.shop-login-layout > .shop-login-card {
	height: 100%;
	box-sizing: border-box;
}

.shop-abschnitt-navigation {
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
}

.shop-warenkorb-widget {
	display: flex;
	align-items: center;
	gap: 12px;
	box-sizing: border-box;
	width: 200px;
	min-height: 80px;
	padding: 12px 14px;
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.28);
	box-shadow: 0 8px 20px rgba(36, 24, 15, 0.22);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	color: #ffffff;
	text-decoration: none;
	transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.shop-warenkorb-widget:hover,
.shop-warenkorb-widget:focus {
	background: rgba(255, 255, 255, 0.42);
	box-shadow: 0 10px 24px rgba(36, 24, 15, 0.28);
	color: #ffffff;
	text-decoration: none;
}

.shop-warenkorb-widget-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 34px;
	height: 34px;
	border-radius: 50%;
	background: #f4e7d9;
	color: #7c431c;
	font-size: 18px;
	opacity: 1;
}

.shop-warenkorb-widget-inhalt {
	display: flex;
	flex-direction: column;
	min-width: 0;
	line-height: 1.25;
}

.shop-warenkorb-widget-inhalt strong {
	font-size: 18px;
	color: #ffffff;
	opacity: 1;
}

.shop-warenkorb-widget-inhalt span {
	margin-top: 3px;
	font-size: 18px;
	color: #ffffff;
	opacity: 1;
}

@media (max-width: 240px) {
	.shop-warenkorb-widget {
		width: 100%;
	}
}

.shop-abschnitt-navigation-block {
	min-width: 0;
	padding: 18px;
	border: 1px solid #d9c8b5;
	border-radius: 10px;
	background: #fbf8f4;
}

.shop-abschnitt-mein-shop h2 {
	margin: 0 0 18px;
	color: #103654;
	font-size: 19px;
	line-height: 1.3;
	text-align: center;
}

.shop-abschnitt-mein-shop ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.shop-abschnitt-mein-shop .shopnav > li + li {
	margin-top: 8px;
	padding-top: 0;
	border-top: 0;
}

.shop-abschnitt-mein-shop .shopnav > li:last-child {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid #e5d8ca;
}

.shop-abschnitt-mein-shop .shopnav > li > a {
	display: block;
	color: #103654;
	font-size: 19px;
	line-height: 1.3;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.shop-abschnitt-mein-shop .shopnav > li > a:hover,
.shop-abschnitt-mein-shop .shopnav > li > a:focus,
.shop-abschnitt-mein-shop .shopnav > li > a.active {
	color: #7c431c !important;
	text-decoration: none;
}

.shop-abschnitt-mein-shop .shopnav_subcontainer {
	position: static;
	width: auto;
	max-width: none;
	height: auto;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
	opacity: 1;
	transform: none;
	pointer-events: auto;
	overflow: visible;
}

.shop-abschnitt-mein-shop .shopnav_subcontainer_inner {
	padding: 0;
}

.shop-abschnitt-mein-shop .shopnav_group_list {
	height: auto;
	overflow: visible;
}

.shop-abschnitt-mein-shop .shopnav_group {
	margin-top: 0;
	margin-left: 15px;
	padding-top: 0;
	border-top: 0;
}
.shop-abschnitt-mein-shop .shopnav_group:first-of-type {
    margin-top: 8px;
}
.shop-abschnitt-mein-shop .shopnav_group summary {
	display: block;
	color: #103654;
	font-size: 19px;
	line-height: 1.3;
	text-decoration: none;
	overflow-wrap: anywhere;
	cursor: pointer;
	list-style: none;
}

.shop-abschnitt-mein-shop .shopnav_group summary::-webkit-details-marker {
	display: none;
}

.shop-abschnitt-mein-shop .shopnav_group summary:after {
	content: '+';
	float: right;
	font-size: 18px;
	line-height: 1;
}

.shop-abschnitt-mein-shop .shopnav_group details[open] summary:after {
	content: '\2212';
}

.shop-abschnitt-mein-shop .shopnav_group summary:hover,
.shop-abschnitt-mein-shop .shopnav_group summary:focus,
.shop-abschnitt-mein-shop .shopnav_group summary.active {
	color: #7c431c !important;
	text-decoration: none;
}

.shop-abschnitt-mein-shop .shopnav_group_list .shopnav_sub_li {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.shop-abschnitt-mein-shop li + li {
	margin-top: 8px;
	padding-top: 0;
	border-top: 0;
}

.shop-abschnitt-suche {
	margin-bottom: 24px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e5d8ca;
}

.shop-abschnitt-suche .shop-suche label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.shop-abschnitt-suche .shop-suche {
	display: flex;
	align-items: stretch;
}

.shop-abschnitt-suche .shop-suche input[type="search"] {
	box-sizing: border-box;
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	max-width: none;
	height: 38px;
	padding: 6px 10px;
	font-size: 16px;
	border: 1px solid #cbbcac;
	border-radius: 4px 0 0 4px;
}

.shop-abschnitt-suche .shop-suche button {
	flex: 0 0 38px;
	width: 38px;
	height: 38px;
	margin: 0;
	padding: 0;
	font-size: 0;
	border: 1px solid #cbbcac;
	border-left: 0;
	border-radius: 0 4px 4px 0;
	background-color: #f3ece4;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5' fill='none' stroke='%23103654' stroke-width='2'/%3E%3Cpath d='M15.5 15.5L21 21' fill='none' stroke='%23103654' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 19px 19px;
}

.shop-abschnitt-suche .shop-suche button:hover {
	background-color: #eadfd4;
}

.shop-abschnitt-kategorie + .shop-abschnitt-kategorie {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid #e5d8ca;
}

.shop-abschnitt-kategorie > a,
.shop-abschnitt-kategorie summary,
.shop-abschnitt-mein-shop a {
	display: block;
	color: #103654;
	font-size: 19px;
	line-height: 1.3;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.shop-abschnitt-kategorie summary {
	cursor: pointer;
	list-style: none;
}

.shop-abschnitt-kategorie summary::-webkit-details-marker {
	display: none;
}

.shop-abschnitt-kategorie summary:after {
	content: '+';
	float: right;
	font-size: 18px;
	line-height: 1;
}

.shop-abschnitt-kategorie details[open] summary:after {
	content: '\2212';
}

.shop-abschnitt-kategorie > a:hover,
.shop-abschnitt-kategorie > a:focus,
.shop-abschnitt-kategorie > a.active,
.shop-abschnitt-mein-shop a:hover,
.shop-abschnitt-mein-shop a:focus,
.shop-abschnitt-mein-shop a.active {
	color: #7c431c !important;
	text-decoration: none;
}

.shop-abschnitt-filter {
	display: block;
	margin-top: 8px;
	padding: 7px 10px;
	border-radius: 5px;
	color: #526273;
	line-height: 1.3;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.shop-abschnitt-filter:hover,
.shop-abschnitt-filter:focus,
.shop-abschnitt-filter.active {
	background: #eadcca;
	color: #7c431c !important;
	text-decoration: none;
}

.rightside-div {
	min-width: 0;
}

.shop-artikel-detail h1 {
	font-size: 30px;
}

.shop_artikel_titel_varianten {
    font-size: 22px;
    color:var(--brand-blue);
    font-weight: 600;
}

.shop-artikel-detail-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	column-gap: 40px;
	align-items: start;
}

.shop-artikel-detail-bilder {
	grid-column: 2;
	grid-row: 1 / span 6;
	width: 340px;
	text-align: center;
}

.shop-artikel-detail-hauptbild-rahmen {
	box-sizing: border-box;
	width: 340px;
	padding: 20px;
	border: 1px solid #e5d8ca;
	border-radius: 10px;
	background: #f7f7f7;
}

.shop-artikel-detail-hauptbild {
	display: block;
	width: 300px;
	height: 300px;
	max-width: 100%;
	margin: 0 auto;
	object-fit: contain;
}

.shop-artikel-detail-variantenbilder {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	margin-top: 20px;
}

.shop-artikel-detail-naehrwerte {
	box-sizing: border-box;
	width: 100%;
	height: auto;
	min-height: 0;
	align-self: start;
	margin-top: 30px;
	padding: 15px;
	border: 1px solid #e5d8ca;
	border-radius: 10px;
	background: #f7f7f7;
	text-align: left;
}

.shop-artikel-detail-variantenthumb {
	padding: 0;
	border: 1px solid #e5d8ca;
	background: transparent;
	line-height: 0;
	cursor: pointer;
}

.shop-artikel-detail-variantenthumb:hover,
.shop-artikel-detail-variantenthumb:focus {
	opacity: 0.75;
}

.shop-artikel-detail-artikelnummer {
	grid-column: 1;
	grid-row: 2;
	margin-bottom: 14px;
	font-size: 13px;
	color: #666;
}

.shop-artikel-detail-information {
	display: contents;
}

.shop-artikel-detail-information h1 {
	grid-column: 1;
	grid-row: 1;
	margin-top: 0;
}

.shop-artikel-detail-beschreibung {
	grid-column: 1;
	grid-row: 3;
}

.shop-artikel-detail-attribute {
	margin-bottom: 22px;
}

.shop-artikel-detail-attribute p {
	margin-bottom: 14px;
}

.shop-artikel-detail-attribute label {
	display: block;
	margin-bottom: 6px;
	color: #526273;
	font-size: 16px;
	font-weight: 600;
}

.shop-artikel-detail-attribute .form-control {
	width: 100%;
	margin-bottom: 14px;
	border: 1px solid #c9c1b8;
	border-radius: 6px;
	background-color: #fff;
	color: #103654;
	font-size: 16px;
}

.shop-artikel-detail-attribute .form-control:last-child {
	margin-bottom: 0;
}

.shop-artikel-detail-kaufblock {
	grid-column: 1;
	grid-row: 4;
	padding: 10px;
	border: 1px solid #e5d8ca;
	border-radius: 10px;
	background: #fbf8f4;
    margin-top:15px;
}

.shop-artikel-detail-preis {
	margin-top: 0;
	color: #8b2115;
	font-size: 32px;
	font-weight: 600;
	line-height: 1.2;
}

.shop-artikel-detail-preis small {
	display: block;
	margin-top: 8px;
	color: #526273;
	font-size: 16px;
	font-weight: 400;
}

.shop-artikel-detail-versand {
	grid-column: 1 / -1;
	grid-row: 2;
	margin-top: 0px;
	font-size: 15px;
}

.shop-artikel-detail-versand a {
	color: #526273;
	text-decoration: underline;
}

.shop-artikel-detail-steuerung {
	grid-column: 2;
	grid-row: 1;
	margin-top: 0;
}

.shop-artikel-detail-preissteuerung {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: 15px;
	align-items: start;
	margin-top: 15px;
}

.shop-artikel-detail-steuerung label {
	display: block;
	margin-bottom: 7px;
	font-weight: 600;
}

.shop-artikel-detail-steuerung-zeile {
	display: flex;
	align-items: stretch;
	gap: 10px;
}

.shop-artikel-detail-ausverkauft {
	color: #8b2115;
	font-size: 18px;
	font-weight: 600;
}

.shop-artikel-detail-steuerung input {
	width: 78px;
	padding: 9px 10px;
	border: 1px solid #bbb;
	font-size: 16px;
}

.shop-artikel-detail-menge-fest {
	pointer-events: none;
}

.shop-artikel-detail-steuerung button {
	min-width: 54px;
	padding: 9px 18px;
	border: 0;
	background: #8b2115;
	color: #fff;
	font-size: 20px;
	cursor: default;
}

.shop-artikel-detail-warenkorb-overlay {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 10000;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: rgba(0, 0, 0, 0.7);
}

.shop-artikel-detail-warenkorb-overlay.is-visible {
	display: flex;
}

.shop-artikel-detail-warenkorb-box {
	box-sizing: border-box;
	width: 100%;
	max-width: 460px;
	padding: 30px;
	border-radius: 14px;
	background: #eadcca;
	color: #103654;
	text-align: center;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35);
}

.shop-artikel-detail-warenkorb-box h2 {
	margin: 0 0 14px;
	font-size: 25px;
}

.shop-artikel-detail-warenkorb-box p {
	margin: 0 0 24px;
	font-size: 17px;
}

.shop-artikel-detail-warenkorb-aktionen {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
}

.shop-artikel-detail-warenkorb-aktion {
	padding: 10px 16px;
	border: 1px solid #8b2115;
	border-radius: 6px;
	background: transparent;
	color: #8b2115;
	font-size: 16px;
	text-decoration: none;
	cursor: pointer;
}

.shop-artikel-detail-warenkorb-aktion-hervorgehoben {
	background: #8b2115;
	color: #fff;
}

@media (max-width: 767px) {
	.shop-artikel-detail-layout {
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	.shop-artikel-detail-bilder {
		order: 1;
		width: 100%;
	}

	.shop-artikel-detail-hauptbild-rahmen {
		width: 100%;
		padding: 16px;
	}

	.shop-artikel-detail-artikelnummer {
		order: 2;
		align-self: flex-end;
		margin: 8px 0 12px;
		text-align: right;
	}

	.shop-artikel-detail-information {
		display: block;
		order: 3;
		width: 100%;
	}

	.shop-artikel-detail-preissteuerung {
		display: block;
		margin-top: 24px;
	}

	.shop-artikel-detail-steuerung {
		margin-top: 24px;
	}

	.shop-artikel-detail-information h1 {
		margin-bottom: 16px;
	}

	.shop-artikel-detail-variantenbilder {
		display: none;
	}

	.shop-artikel-detail-steuerung-zeile {
		flex-wrap: wrap;
	}

	.shop-artikel-detail-steuerung button {
		flex: 1 1 220px;
	}
}

.shop-abschnitt-artikel-h1 {
	margin: 0 0 18px;
	color: #8b2115;
	font-size: 34px;
	line-height: 1.2;
}

.shop-abschnitt-steuerung {
	display: flex;
	align-items: flex-end;
	gap: 24px;
	margin-bottom: 28px;
}

.shop-abschnitt-sortierung {
	min-width: 280px;
}

.shop-abschnitt-filterauswahl {
	min-width: 240px;
}

.shop-abschnitt-filterauswahl label {
	display: block;
	margin-bottom: 6px;
	color: #526273;
	font-size: 16px;
}

.shop-abschnitt-filterauswahl select {
	width: 100%;
	min-height: 42px;
	padding: 8px 12px;
	border: 1px solid #b8b8b8;
	border-radius: 0;
	background: #fff;
	color: #526273;
	font-size: 16px;
}

.shop-abschnitt-sortierung label {
	display: block;
	margin-bottom: 6px;
	color: #526273;
	font-size: 16px;
}

.shop-abschnitt-sortierung select {
	width: 100%;
	min-height: 42px;
	padding: 8px 12px;
	border: 1px solid #b8b8b8;
	border-radius: 0;
	background: #fff;
	color: #526273;
	font-size: 16px;
}

.shop-abschnitt-artikel-kacheln {
	margin-top: 0;
	margin-left: 0;
	margin-right: 0;
}

.shop-abschnitt-artikel-kachel-wrapper {
	margin-top: 0;
	margin-bottom: 28px;
	box-sizing: border-box;
}

.shop-abschnitt-artikel-kacheln-kategorie > .shop-abschnitt-artikel-kachel-wrapper {
	padding-left: 0;
	padding-right: 0;
}

.shop-abschnitt-artikel-kachel {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin-top: 0;
	padding: 14px;
	border: 1px solid #e5d8ca;
	border-radius: 10px;
	background: #f7f7f7;
	box-sizing: border-box;
}

.shop-abschnitt-artikel-kachel a {
	display: block;
	color: #103654;
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.shop-abschnitt-artikel-kachel > a:first-child:hover,
.shop-abschnitt-artikel-kachel > a:first-child:focus {
	transform: translateY(-3px);
}

.shop-abschnitt-artikel-kachel img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px;
}

.shop-abschnitt-artikel-kachel h2 {
	margin: 14px 0 0;
	font-size: 18px;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.shop-abschnitt-filter-kachel > a:first-child {
	text-align: center;
}

.shop-abschnitt-filter-kacheln > .shop-abschnitt-artikel-kachel-wrapper {
	padding-left: 0;
	padding-right: 0;
}

.shop-abschnitt-filter-kachel-name {
	min-height: 0 !important;
	text-align: center;
}

.shop-abschnitt-filter-kachel-link {
	margin-top: 14px;
	color: #103654;
	text-align: center;
}

.shop-abschnitt-artikel-kurzbeschreibung {
	margin-top: 10px;
	color: #526273;
	font-size: 16px;
	line-height: 1.35;
}

.shop-abschnitt-artikelnummer {
	margin-top: 12px;
	color: #7c431c;
	font-size: 16px;
    min-height: 1.8em;
}

.shop-abschnitt-artikel-abschluss {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: auto;
	height: 64px;
	box-sizing: border-box;
}

.shop-abschnitt-artikel-preisblock {
	flex: 0 0 auto;
	margin-left: auto;
}

.shop-abschnitt-artikel-preis {
	margin-top: 0;
	color: #7c431c;
	font-size: 22px;
	font-weight: 600;
	text-align: right;
}

.shop-abschnitt-artikel-mwst,
.shop-abschnitt-artikel-versand {
	color: #7c431c;
	font-size: 13px;
	text-align: right;
}

.shop-abschnitt-artikel-versand a {
	color: inherit;
	text-decoration: underline;
}

.shop-abschnitt-artikel-link {
	display: block;
	flex: 0 0 auto;
	margin-top: 0;
	color: #7c431c;
	font-size: 17px;
	font-weight: 600;
	text-decoration: none;
}

.shop-abschnitt-artikel-link:hover,
.shop-abschnitt-artikel-link:focus {
	text-decoration: underline;
}

.shop-abschnitt-artikel-ladepunkt {
	height: 1px;
}

@media (min-width: 971px) and (max-width: 1245px) {
	.shop-abschnitt-artikel-kachel-wrapper {
		flex: 0 0 50%;
		max-width: 50%;
	}
}

@media (max-width: 970px) {
	.shop-abschnitt-artikel-kachel-wrapper {
		flex: 0 0 100%;
		max-width: 100%;
	}
}

@media (max-width: 767px) {
	.shop-abschnitt-layout {
		display: block;
	}

	.shop-abschnitt-navigation {
		display: none;
	}

	.shop-abschnitt-navigation-block {
		margin-bottom: 0;
	}

	.shop-abschnitt-steuerung {
		display: block;
	}

	.shop-abschnitt-sortierung {
		min-width: 0;
	}

	.shop-abschnitt-filterauswahl {
		min-width: 0;
		margin-top: 18px;
	}
}
/*##### Shop-Abschnitt Ende ####*/

/* Warenkorb */
.shop-warenkorb-titel {
	margin: 0 0 24px;
	color: #103654;
	font-size: 34px;
	line-height: 1.2;
}

.shop-warenkorb-leer {
	padding: 24px;
	border: 1px solid #d9c8b5;
	border-radius: 10px;
	background: #fbf8f4;
	color: #526273;
}

.shop-warenkorb-leer p { margin: 0; }

.shop-warenkorb-positionen {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.shop-warenkorb-position {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 145px 125px 125px;
	gap: 20px;
	align-items: start;
	padding: 20px;
	border: 1px solid #d9c8b5;
	border-radius: 10px;
	background: #fbf8f4;
}

.shop-warenkorb-artikelname {
	margin: 0 0 6px;
	color: #7c431c;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.25;
}
.shop-warenkorb-artikelname a,
.checkout-bestellen-artikel h2 a { color: inherit; text-decoration: none; }
.shop-warenkorb-artikelname a:hover,
.shop-warenkorb-artikelname a:focus,
.checkout-bestellen-artikel h2 a:hover,
.checkout-bestellen-artikel h2 a:focus { text-decoration: underline; }

.shop-warenkorb-artikel-details {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	column-gap: 10px;
	font-size: 16px;
	line-height: 1.45;
}
.shop-warenkorb-artikelnummer-label,
.shop-warenkorb-artikelnummer-wert { color: #7c431c; font-size: 14px; }
.shop-warenkorb-attribute-name,
.shop-warenkorb-attribute-wert { color: #526273; }

.shop-warenkorb-position-menge label {
	display: block;
	margin-bottom: 6px;
	color: #103654;
	font-weight: 600;
}

.shop-warenkorb-position-menge input {
	box-sizing: border-box;
	width: 82px;
	min-height: 36px;
	padding: 5px 8px;
	border: 1px solid #b8b8b8;
	background: #fff;
	color: #103654;
	font-size: 17px;
}

.shop-warenkorb-mengensteuerung {
	display: flex;
	align-items: center;
	gap: 8px;
}

.shop-warenkorb-position-preis {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 5px;
	color: #526273;
	font-size: 14px;
}

.shop-warenkorb-position-preis span { white-space: nowrap; text-align: right; }
.shop-warenkorb-position-preis strong { color: #7c431c; font-size: 18px; white-space: nowrap; text-align: right; }

.shop-warenkorb-position-loeschen {
	width: 32px;
	height: 32px;
	padding: 0;
	border: 1px solid #8b2115;
	border-radius: 50%;
	background: transparent;
	color: #8b2115;
	font-size: 25px;
	line-height: 27px;
	cursor: pointer;
}

.shop-warenkorb-position-loeschen:hover,
.shop-warenkorb-position-loeschen:focus { background: #f3e5dc; }

.shop-warenkorb-summenbox {
	max-width: 420px;
	margin: 24px 0 0 auto;
	padding: 18px 20px;
	border-top: 2px solid #d9c8b5;
	background: #f7f0e8;
}

.shop-warenkorb-summen-zeile {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 125px;
	column-gap: 20px;
	color: #526273;
	font-size: 17px;
}

.shop-warenkorb-summen-zeile + .shop-warenkorb-summen-zeile { margin-top: 8px; }
.shop-warenkorb-summen-zeile strong { color: #7c431c; white-space: nowrap; text-align: right; }
.shop-warenkorb-mwst-zeile {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 125px;
	column-gap: 20px;
	margin-top: 8px;
	color: #526273;
	font-size: 15px;
	line-height: 1.35;
}

.shop-warenkorb-mwst-zeile span { white-space: nowrap; }

.shop-warenkorb-mwst-zeile strong {
	color: #526273;
	font-weight: 400;
	text-align: right;
	white-space: nowrap;
}
.shop-warenkorb-versandhinweis { margin-top: 10px; font-size: 15px; text-align: right; }
.shop-warenkorb-versandhinweis a { color: #526273; text-decoration: underline; }
.shop-warenkorb-aktionen { margin-top: 18px; text-align: right; }

@media (max-width: 970px) {
	.shop-warenkorb-position { grid-template-columns: minmax(0, 1fr) 145px 125px 125px; }
}

@media (max-width: 600px) {
	.shop-warenkorb-position { display: block; padding: 16px; }
	.shop-warenkorb-position-menge,
	.shop-warenkorb-position-preis { margin-top: 16px; max-width: 240px; }
	.shop-warenkorb-position-loeschen { margin-top: 16px; }
	.shop-warenkorb-summenbox { max-width: none; }
	.shop-warenkorb-aktionen { text-align: left; }
}

/* Checkout-Bestellübersicht */
.checkout-bestellen { container-type: inline-size; }
.checkout-bestellen-kopf,
.checkout-bestellen-adresse-kopf,
.checkout-bestellen-warenkorb-kopf { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.checkout-bestellen-adresse-kopf { align-items: flex-start; gap: 12px; }
.checkout-bestellen-kopf { margin-bottom: 30px; }
.checkout-bestellen-kopf h1 { margin: 0; color: #103654; }
.checkout-bestellen-adressen { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid #d9c8b5; }
.checkout-bestellen-adresse { min-height: 145px; padding: 18px 24px; border-right: 1px solid #d9c8b5; }
.checkout-bestellen-adresse:last-child { border-right: 0; }
.checkout-bestellen-adresse h2,
.checkout-bestellen-rabattcode-kopf h2 { min-width: 0; flex: 1 1 auto; margin: 0; color: #7c431c; font-size: 22px; line-height: 1.15; overflow-wrap: break-word; }
.checkout-bestellen-adresse p { margin: 10px 0 0; color: #526273; font-size: 17px; line-height: 1.4; }
.checkout-bestellen-rabattcode-kopf { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-top: 16px; }
.checkout-bestellen-rabattcode-kopf a { flex: 0 0 auto; color: #7c431c; text-decoration: underline; white-space: nowrap; }
.checkout-bestellen-rabattcode-wert { display: flex; align-items: center; gap: 8px; margin-top: 10px; color: #526273; font-size: 17px; line-height: 1.4; }
.checkout-bestellen-rabattcode-wert span { color: #7c431c; font-weight: 600; }
.checkout-bestellen-rabattcode-loeschen-form { display: inline; margin: 0; }
.checkout-bestellen-rabattcode-loeschen { padding: 0; border: 0; background: transparent; color: #a52b20; font-size: 20px; line-height: 1; cursor: pointer; }
.checkout-bestellen-rabattcode-fehler { margin-top: 10px; color: #a52b20; }
.checkout-bestellen-rabattcode-aktionen { margin-top: 18px; text-align: right; }
#checkout-bestellen-rabattcode-overlay:target { visibility: visible; opacity: 1; }
.checkout-bestellen-aendern { flex: 0 0 auto; color: #7c431c; text-decoration: underline; white-space: nowrap; }
.checkout-bestellen-warenkorb-kopf { margin: 30px 0 12px; color: #7c431c; }
.checkout-bestellen-positionen { display: flex; flex-direction: column; gap: 10px; }
.checkout-bestellen-tabellenkopf { display: grid; grid-template-columns: 90px minmax(0, 1fr) 150px 100px; gap: 0; padding: 0; color: #526273; font-size: 15px; font-weight: 600; }
.checkout-bestellen-tabellenkopf span:nth-child(n+3) { text-align: right; }
.checkout-bestellen-position { display: grid; grid-template-columns: 90px minmax(0, 1fr) 150px 100px; gap: 0; align-items: start; padding: 22px 0; border: 1px solid #d9c8b5; background: #f7f0e8; color: #7c431c; }
.checkout-bestellen-tabellenkopf > span:first-child,
.checkout-bestellen-position > div:first-child { padding-left: 22px; padding-right: 10px; }
.checkout-bestellen-tabellenkopf > span:nth-child(2),
.checkout-bestellen-tabellenkopf > span:nth-child(3),
.checkout-bestellen-position > div:nth-child(2),
.checkout-bestellen-position > div:nth-child(3) { padding-left: 0; padding-right: 10px; }
.checkout-bestellen-tabellenkopf > span:last-child,
.checkout-bestellen-position > strong:last-child { padding-left: 0; padding-right: 22px; }
.checkout-bestellen-menge { color: #526273; }
.checkout-bestellen-artikel h2 { margin: 0 0 6px; color: #7c431c; font-size: 18px; font-weight: 600; }
.checkout-bestellen-artikel-details { display: grid; grid-template-columns: max-content minmax(0, 1fr); column-gap: 10px; font-size: 15px; line-height: 1.45; }
.checkout-bestellen-artikelnummer-label,
.checkout-bestellen-artikelnummer-wert { color: #7c431c; }
.checkout-bestellen-artikel-attribute-name,
.checkout-bestellen-artikel-attribute-wert { color: #526273; }
.checkout-bestellen-einzelpreis { text-align: right; white-space: nowrap; }
.checkout-bestellen-position > strong { text-align: right; white-space: nowrap; font-size: 18px; }
.checkout-bestellen-abschluss { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, 450px); gap: 70px; align-items: start; margin-top: 35px; }
.checkout-bestellen-summen { max-width: 450px; width: 100%; margin: 0 0 0 auto; color: #526273; }
.checkout-bestellen-summen > div { display: flex; justify-content: space-between; gap: 20px; margin-top: 8px; }
.checkout-bestellen-summen strong { color: #7c431c; white-space: nowrap; }
.checkout-bestellen-summen hr { margin: 28px 0; border: 0; border-top: 1px solid #d9c8b5; }
.checkout-bestellen-summen .checkout-bestellen-gesamt { font-size: 19px; font-weight: 600; }
.checkout-bestellen-summen .checkout-bestellen-gesamt strong { font-size: 21px; }
.checkout-bestellen-summen .checkout-bestellen-mwst { font-size: 15px; }
.checkout-bestellen-summen .checkout-bestellen-mwst strong { color: #526273; font-weight: 400; }
.checkout-bestellen-steuerfrei { margin-top: 12px; color: #526273; font-size: 15px; line-height: 1.4; }
.checkout-bestellen-hinweis { width: 100%; color: #526273; font-weight: 600; }
.checkout-bestellen-hinweis label { display: block; margin-bottom: 6px; }
.checkout-bestellen-hinweis textarea { display: block; width: 100%; padding: 10px; border: 1px solid #b8b8b8; resize: vertical; font-size: 16px; font-weight: 400; }
.checkout-bestellen-agb { margin-top: 28px; color: #526273; }
.checkout-bestellen-agb p { margin: 0 0 8px; }
.checkout-bestellen-agb p:last-child { margin-bottom: 0; }
.checkout-bestellen-agb a { color: #7c431c; text-decoration: underline; }

@media (max-width: 800px) {
	.checkout-bestellen-adressen { grid-template-columns: 1fr; }
	.checkout-bestellen-adresse { min-height: 0; border-right: 0; border-bottom: 1px solid #d9c8b5; }
	.checkout-bestellen-adresse:last-child { border-bottom: 0; }
	.checkout-bestellen-tabellenkopf,
	.checkout-bestellen-position { grid-template-columns: 90px minmax(0, 1fr) 130px 110px; gap: 0; }
	.checkout-bestellen-position { padding-top: 18px; padding-bottom: 18px; }
	.checkout-bestellen-einzelpreis,
	.checkout-bestellen-position > strong { text-align: right; }
	.checkout-bestellen-abschluss { grid-template-columns: 1fr; gap: 0; }
	.checkout-bestellen-summen { margin-top: 35px; }
}

@container (max-width: 800px) {
	.checkout-bestellen-kopf h1 { font-size: 32px; }
	.checkout-bestellen-adressen { grid-template-columns: 1fr; }
	.checkout-bestellen-adresse { min-height: 0; border-right: 0; border-bottom: 1px solid #d9c8b5; }
	.checkout-bestellen-adresse:last-child { border-bottom: 0; }
	.checkout-bestellen-tabellenkopf,
	.checkout-bestellen-position { grid-template-columns: 90px minmax(0, 1fr) 130px 110px; gap: 0; }
	.checkout-bestellen-position { padding-top: 18px; padding-bottom: 18px; }
	.checkout-bestellen-einzelpreis,
	.checkout-bestellen-position > strong { text-align: right; }
	.checkout-bestellen-abschluss { grid-template-columns: 1fr; gap: 0; }
	.checkout-bestellen-summen { margin-top: 35px; }
}

@media (max-width: 500px) {
	.checkout-bestellen-tabellenkopf { display: none; }
	.checkout-bestellen-position { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "menge summe" "artikel artikel"; row-gap: 12px; }
	.checkout-bestellen-menge { grid-area: menge; }
	.checkout-bestellen-artikel { grid-area: artikel; }
	.checkout-bestellen-einzelpreis { display: none; }
	.checkout-bestellen-position > strong { grid-area: summe; grid-column: auto; text-align: right; }
}

/* Shop-Navigation */
.shopnav>li{
            position:relative;
        }

        .shopnav_subcontainer{
            position:absolute;
            left:0;
            top:calc(100% + 3px);

            width:<?=$shopnavMegaWidth?>px;

            border:1px solid #7c431c;
            padding:10px 15px;
            box-sizing:border-box;
            background-color:rgba(255,255,255,0.95);
            box-shadow:4px 4px 5px rgba(0,0,0,0.3);

            opacity:0;
            transform:translateY(6px);
            pointer-events:none;
            height:0;
            overflow:hidden;

            transition:height 0.35s ease,opacity 0.2s ease,transform 0.25s ease;
        }

        .shopnav_subcontainer a,
        .shopnav_subcontainer a:link,
        .shopnav_subcontainer a:visited,
        .shopnav_subcontainer a:hover,
        .shopnav_subcontainer a:focus{
            text-shadow:none;
            filter:none;
        }

        li.shopnav_is_open>.shopnav_subcontainer{
            opacity:1;
            transform:translateY(0);
            pointer-events:auto;
        }

        .shopnav_group{
            margin:0 0 0 0;
            text-align:left;
        }

        .shopnav_group_list{
            margin:0;
            padding:0;
            list-style:none;

            height:0;
            overflow:hidden;
            transition:height 0.25s ease;

            text-align:left;
        }

        .shopnav_group.shopnav_is_open>.shopnav_group_list{
            height:auto;
        }

        .shopnav_subcontainer,
        .shopnav_group,
        .shopnav_group_list,
        .shopnav_group_list .shopnav_sub_li{
            text-align:left;
        }

        .shopnav_subcontainer .shopnav_sub_h,
        .shopnav_subcontainer .shopnav_sub_h:link,
        .shopnav_subcontainer .shopnav_sub_h:visited{
            color:#11336a;
            text-decoration:none;
            font-size:16px;
            display:inline-block;
            margin:0px 0 8px 0;
        }

        .shopnav_subcontainer .shopnav_sub_h:hover{
            color:#cc9943;
            text-decoration:none;
        }

        .shopnav_subcontainer .shopnav_sub_h.active{
            color:#cc9943;
        }

        .shopnav_subcontainer .shopnav_sub_a,
        .shopnav_subcontainer .shopnav_sub_a:link,
        .shopnav_subcontainer .shopnav_sub_a:visited{
            color:#11336a;
            text-decoration:none;
            font-size:15px;

            display:block;
            width:100%;
            white-space:normal;
            line-height:1.25;

            padding:4px 0;

            padding-left:22px;
            text-indent:-22px;

            transform:translateZ(0);
            transition:color 140ms ease,filter 140ms ease;
            filter:none;
            text-align:left;
        }

        .shopnav_subcontainer .shopnav_sub_a:hover{
            color:#cc9943;
            text-decoration:none;
        }

        .shopnav_subcontainer .shopnav_sub_a.active{
            color:#cc9943;
        }

        .shopnav_group_list .shopnav_sub_li>a.shopnav_sub_a::before{
            content:"";
            display:inline-block;
            width:22px;
        }
/*
        .shopnav_group.shopnav_has_children>a.shopnav_sub_h::after{
            font-family:"Font Awesome 7 Pro";
            content:"\f061";
            display:inline-block;
            margin-left:8px;
            font-size:12px;
            vertical-align:middle;
            transform:translateY(0px) rotate(0deg);
            transition:transform 0.2s ease;
        }

        .shopnav_group.shopnav_has_children.shopnav_is_open>a.shopnav_sub_h::after{
            transform:translateY(0px) rotate(90deg);
        }

/* Klappbare Shop-Navigation im Sidebar-Block: identisch zur Kategorien-Navigation. */
.shop-abschnitt-mein-shop .shopnav_group details {
	display: block;
}

.shop-abschnitt-mein-shop .shopnav_group details > summary.shopnav_sub_h {
	display: block;
	margin: 0;
	font-size: 19px;
	line-height: 1.3;
	cursor: pointer;
	list-style: none;
}

.shop-abschnitt-mein-shop .shopnav_group details > summary.shopnav_sub_h::-webkit-details-marker {
	display: none;
}

.shop-abschnitt-mein-shop .shopnav_group details > ul.shopnav_group_list {
	height: auto;
	overflow: visible;
	margin: 0;
	padding: 0 0 0 18px;
}

.shop-abschnitt-mein-shop .shopnav_root_details > summary {
	display: block;
	color: #103654;
	font-size: 19px;
	line-height: 1.3;
	text-decoration: none;
	overflow-wrap: anywhere;
	cursor: pointer;
	list-style: none;
}

.shop-abschnitt-mein-shop .shopnav_root_details > summary::-webkit-details-marker {
	display: none;
}

.shop-abschnitt-mein-shop .shopnav_root_details > summary:after {
	content: '\002b';
	float: right;
	font-size: 18px;
	line-height: 1;
}

.shop-abschnitt-mein-shop .shopnav_root_details[open] > summary:after {
	content: '\2212';
}

.shop-abschnitt-mein-shop .shopnav_root_details > summary:hover,
.shop-abschnitt-mein-shop .shopnav_root_details > summary:focus,
.shop-abschnitt-mein-shop .shopnav_root_details > summary.active {
	color: #7c431c !important;
	text-decoration: none;
}
*/
        .shopnav_subcontainer[data-align="right"]{
            left:auto;
            right:0;
        }
        /* Ebene 1 mit Kindern
       oben enger zwischen Ebene 1 Titel und erstem Kind
       unten größer zwischen letztem Kind und nächstem Ebene 1 Titel */
        .shopnav_group.shopnav_has_children > a.shopnav_sub_h {
            padding-bottom: 2px;
        }

        .shopnav_group.shopnav_has_children > ul.shopnav_group_list > li:first-child > a.shopnav_sub_a {
            padding-top: 0;
        }

        /* hier kommt der gewünschte größere Abstand nach unten */
        .shopnav_group.shopnav_has_children > ul.shopnav_group_list > li:last-child > a.shopnav_sub_a {
            padding-bottom: 12px;
        }

/* Shop-Login-Abschnitt */
.shop-login-abschnitt {
    max-width: 980px;
    margin: 0 auto;
    padding: 24px 16px;
}

.shop-login-card {
    padding: 28px 32px;
    border: 1px solid #d9c8b5;
    border-radius: 10px;
    background: #fbf8f4;
    color: #103654;
}

.shop-login-card h2 {
    margin: 0 0 12px;
    color: #103654;
    font-size: 30px;
    font-weight: 600;
}

.shop-login-card p {
    margin: 0 0 22px;
    color: #536b80;
}

.shop-login-form label {
    display: block;
    margin: 0 0 6px;
    color: #103654;
    font-weight: 600;
}

.shop-login-anrede {
    display: block;
    width: 100%;
}

.shop-login-anrede-label {
    display: block;
    margin: 0 0 6px;
    color: #103654;
    font-weight: 600;
}

.shop-login-anrede-options {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin: 0 0 18px;
}

.shop-login-anrede-options label {
    display: inline-flex;
    align-items: center;
    width: auto;
    margin: 0;
    color: #103654;
    font-weight: 400;
}

.shop-login-anrede-options input[type="radio"] {
    margin: 0 0.4rem 0 0;
}


.shop-login-email-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.shop-login-email-row p {
    margin: 0 !important;
}

.shop-login-email-row .buttonnav {
    flex: 0 0 auto;
}

.shop-login-passwort-vergessen {
    display: block;
    width: fit-content;
    margin: -10px 0 18px;
    font-size: 14px;
}

.shop-login-anmelden-row {
    display: flex;
    justify-content: flex-end;
    margin-top: 4px;
}

@media (max-width: 700px) {
    .shop-login-email-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .shop-login-anmelden-row {
        justify-content: flex-start;
    }
}
.shop-login-form .form-control {
    margin-bottom: 18px;
}

.shop-login-form button {
    margin-top: 4px;
}

.shop-login-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
}

.shop-login-checkbox {
    display: flex !important;
    gap: 9px;
    align-items: flex-start;
    margin: 4px 0 20px !important;
    font-weight: 400 !important;
}

.shop-login-checkbox input {
    margin-top: 4px;
}

.shop-login-pflicht {
    margin: 12px 0 18px !important;
    font-size: 14px;
}

.shop-login-fehler {
    margin: -8px 0 16px;
    color: #a1261b;
}

/* Shop-Widerruf-Abschnitt */
.shop-widerruf-card {
    min-width: 0;
}

.shop-widerruf-card .abschnitt-headline {
    margin-top: 0;
}

.shop-widerruf-card .grauwrap {
    margin-bottom: 24px;
}

.shop-widerruf-form {
    margin-top: 24px;
}

.shop-widerruf-grid {
    margin-bottom: 2px;
}

.shop-widerruf-grid .form-group,
.shop-widerruf-betrifft,
.shop-widerruf-nachricht {
    min-width: 0;
}

.shop-widerruf-nummer {
    grid-column: 1 / -1;
}

.shop-widerruf-betrifft {
    margin: 4px 0 20px;
    padding: 14px 16px;
    border: 1px solid #d9c8b5;
    border-radius: 7px;
    background: #ffffff;
}

.shop-widerruf-betrifft > label:first-child {
    margin-bottom: 10px;
}

.shop-widerruf-radio-options {
    display: block;
}

.shop-widerruf-radio-options label {
    display: inline-flex;
    align-items: center;
    width: auto;
    margin: 0;
    font-weight: 400;
}

.shop-widerruf-radio-options input[type="radio"] {
    margin: 0 8px 0 0;
}

.shop-widerruf-nachricht p {
    margin: -8px 0 20px;
    color: #536b80;
    font-size: 14px;
}

.shop-widerruf-fehler,
.shop-widerruf-erfolg {
    margin: 20px 0;
    padding: 13px 16px;
    border-radius: 7px;
}

.shop-widerruf-fehler {
    border: 1px solid #d7a39d;
    background: #fff1ef;
    color: #a1261b;
}

.shop-widerruf-erfolg {
    border: 1px solid #a9c7ad;
    background: #f1f8f1;
    color: #285e32;
}

.shop-widerruf-neu-form {
    margin-top: 24px;
}

@media (max-width: 700px) {
    .shop-widerruf-radio-options {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }
}

@media (max-width: 700px) {
    .shop-login-card {
        padding: 22px 18px;
    }

    .shop-login-grid {
        grid-template-columns: 1fr;
    }
}
