/* only screen and (max-width: 786px)  */

#main #cart {
	padding-top: 25px;
}

section {
	max-width: 100vw;
}

#scroll-to-top {
	display: none;
}

#main > #cart h1, 
#main > #cart .h1 {
	font-size: 28px;
	margin-top: 15px;
	margin-bottom: 35px;
	line-height: 1.4;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item {
	-webkit-tap-highlight-color: transparent;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column > .content .button-container {
	display: flex;
	justify-content: center;
	column-gap: 20px;
	padding: 35px 0 15px 0;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column > .content .button-container > .btn {
	margin-top: 0;
	max-width: 200px;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column > .canvas-container + .content > .inner {
	position: initial;
	min-width: initial;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item > .flex-row {
	column-gap: initial;
	flex-direction: column;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .canvas-wrapper,
#cart .cart-collapsible > ul.collapsible-nav .menu-item .overlay-carousel-slider-container {
	display: none; 
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item.active .overlay-carousel-slider-container {
	display: block;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .overlay-carousel-slider {
	padding-top: 25px;
	margin-left: calc(var(--horizontal-margin) * -1);
	margin-right: calc(var(--horizontal-margin) * -1);
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .overlay-carousel-slider,
#cart .cart-collapsible > ul.collapsible-nav .menu-item .overlay-carousel-slider > ul li {
	max-width: 100vw;
	min-width: 100vw;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .overlay-carousel-slider > ul {
	display: flex;
	flex-direction: row;
	gap: 2px;
	list-style: none;
	padding: 0;
	margin: 0;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .overlay-carousel-slider > ul li {
	position:	relative;
	scroll-snap-align: center;
	scroll-snap-stop: always;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .overlay-carousel-slider-container .button-container {
	display: flex;
	gap: 25px;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column + .flex-column {
	margin-right: 25px;
	padding-top: 20px;
	padding-bottom: 15px;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item.active .flex-column + .flex-column {
	margin-right: 0;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column .table td {
	padding: 5px 5px;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column .table th {
	padding: 5px 2px;
	white-space: break-spaces;
	word-break: break-word;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item.active .flex-column .table > thead > tr > th:nth-child(1) {
	width: 100%;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column .table > thead > tr > th:nth-child(1) {
	width: 28%;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column .table > thead > tr > th:nth-child(2) {
	text-align: left;
	width: 20%;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column .table > thead > tr > th:nth-child(3) {
	text-align: left;
	width: 25%;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column .table > thead > tr > th:nth-child(4) {
	width: 27%;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column .table td.file-link {
	line-height: 0.5;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .flex-column .table td.file-link .underline::after {
	bottom: -0.5em;
}

/* cart row (first table) - product name is displayed on a separate line on mobile. */
#cart .cart-collapsible > ul.collapsible-nav .menu-item.order-product .table-responsive:first-child {
	display: block;
}

/* cart row (second table) - product name is hidden on mobile */
#cart .cart-collapsible > ul.collapsible-nav .menu-item.order-product .table-responsive + .table-responsive th.product-name {
	display: none;
}

/* cart row (second table) when active - hide the second table */
#cart .cart-collapsible > ul.collapsible-nav .menu-item:not(.no-options).active .table-responsive + .table-responsive {
	max-height: 0;
}

/* F.A.Q - search */
#cart-faq-container .container > h2, 
#cart-faq-container .container > .h2 {
	font-size: 28px;
	font-weight: 800;
	margin-bottom: 25px;
}

#main #cart-faq-container {
	padding-top: 25px;
}

#cart-faq h4,
#cart-faq .h4 {
	font-size: 18px;
	font-weight: 700;
}

/* collapse / expand icon position */
#cart .cart-collapsible > ul.collapsible-nav .menu-item:not(.order-total)::after {
	top: 17px;
}

.collapsible:not(.wrap-multi-column) > ul.collapsible-nav > li.menu-item > a::after,
#cart .cart-collapsible > ul.collapsible-nav .menu-item:not(.order-total)::after {
	font-size: 22px;
}

#cart .cart-collapsible > ul.collapsible-nav .menu-item .table > tbody > tr.total-sum > td:last-child {
	font-size: 18px;
	font-weight: 800;
}

/* cart footer adaptions */
#main #cart-footer,
body:not(.shrink-header) #main #cart-footer {
	top: -1px;
	bottom: 97px;
	height: 90px;
	padding-top: 0;
	padding-left: var(--horizontal-margin);
	padding-bottom: 0;
	padding-right: var(--horizontal-margin);
	width: 100%;
}

#cart-footer .content .btn {
	font-size: 14px !important;
	padding: 18px 20px !important;
}

/* cover the gap between the pinned cart footer and bottom menu */
#cart-footer.is-pinned.is-bottom::after {
	content: "";
	position: absolute;
	bottom: -50px;
	left: 0;
	right: 0;
	height: 50px;
	background-color: white;
}

#cart-footer .content > .flex-row > .flex-column:last-child {
	align-items: center;
}

#cart-footer .content::before,
#cart-footer .content::after {
	left: 0;
	right: 0;
}