.ml-scroll-top {
	position: fixed;
	z-index: 120;
	right: max(18px, calc(env(safe-area-inset-right) + var(--ml-floating-visual-right, 0px)));
	top: auto;
	bottom: calc(82px + env(safe-area-inset-bottom));
	display: inline-flex;
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 9px 12px;
	background: #284f40;
	border: 1px solid rgb(255 253 248 / 70%);
	border-radius: 999px;
	box-shadow: 0 8px 26px rgb(24 48 40 / 24%);
	color: #fffdf8;
	font: inherit;
	font-size: 0.82rem;
	font-weight: 750;
	cursor: pointer;
}

body.sunshine-photo-cart .sunshine-price {
	display: inline-flex;
	align-items: baseline;
	gap: .35em;
	white-space: nowrap;
}

body.sunshine-photo-cart .sunshine-price .sunshine-amount {
	font-variant-numeric: tabular-nums;
}

body.sunshine-photo-cart .sunshine-price .sunshine-currency-symbol {
	white-space: nowrap;
}

.ml-scroll-top[hidden],
.ml-scroll-top--suppressed,
body.ml-ux-repair--no-page-top .ml-scroll-top--page,
body.lg-on .ml-scroll-top--page,
body.ml-lightbox-open .ml-scroll-top--page,
body.sunshine--modal--open .ml-scroll-top--page {
	display: none !important;
}

.ml-scroll-top:focus-visible {
	outline: 2px solid #fffdf8;
	outline-offset: 2px;
	box-shadow: 0 0 0 5px #284f40;
}

.ml-scroll-top--picker {
	display: none !important;
}

.ml-favorite-tooltip.ml-favorite-tooltip--viewport {
	position: fixed;
	z-index: 99140;
	right: auto;
	bottom: auto;
	width: min(210px, calc(100vw - 24px));
	max-width: 210px;
	padding: 10px 12px;
	overflow-wrap: anywhere;
	background: #fffdf8;
	border: 1px solid #9caa9f;
	border-radius: 10px;
	box-shadow: 0 12px 30px rgb(24 48 40 / 24%);
	color: #20342d;
	text-align: left;
	opacity: 1;
}

.ml-favorite-tooltip.ml-favorite-tooltip--viewport::after {
	right: auto;
	left: clamp(14px, calc(var(--ml-favorite-tooltip-pointer, 50%) - 7px), calc(100% - 28px));
}

.ml-favorite-tooltip.ml-favorite-tooltip--viewport.ml-favorite-tooltip--below::after {
	top: -7px;
	bottom: auto;
}

body:not(.ml-favorite-used).ml-warm-editorial-gallery #sunshine--image-items .sunshine--image-item:nth-child(-n + 10) .sunshine--add-to-favorites[aria-pressed="false"] {
	position: relative;
}

body:not(.ml-favorite-used).ml-warm-editorial-gallery #sunshine--image-items .sunshine--image-item:nth-child(-n + 10) .sunshine--add-to-favorites[aria-pressed="false"]::before {
	animation: none !important;
	opacity: 1 !important;
	transform: none !important;
}

body:not(.ml-favorite-used).ml-warm-editorial-gallery #sunshine--image-items .sunshine--image-item:nth-child(-n + 10) .sunshine--add-to-favorites[aria-pressed="false"]::after {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--ml-gallery-terra, #a6533f);
	content: "\f102";
	font-family: SunshineIcons;
	font-size: 20px;
	line-height: 20px;
	pointer-events: none;
	animation: ml-favorite-fill-attention 2.4s linear infinite;
}

body:not(.ml-favorite-used).ml-warm-editorial-gallery #sunshine--image-items .sunshine--image-item:nth-child(n + 11) .sunshine--add-to-favorites[aria-pressed="false"]::after {
	content: none;
	animation: none;
}

body:not(.ml-favorite-used).ml-warm-editorial-gallery .lg-outer .ml-lightbox__actionbar #sunshine--lightbox--favorite[aria-pressed="false"] {
	position: relative !important;
}

body:not(.ml-favorite-used).ml-warm-editorial-gallery .lg-outer .ml-lightbox__actionbar #sunshine--lightbox--favorite[aria-pressed="false"]::before {
	display: inline-block;
	color: var(--ml-gallery-terra, #a6533f);
	content: "\f101";
	font-family: SunshineIcons;
	animation: none !important;
	opacity: 1 !important;
	transform: none !important;
}

body:not(.ml-favorite-used).ml-warm-editorial-gallery .lg-outer .ml-lightbox__actionbar #sunshine--lightbox--favorite[aria-pressed="false"]::after {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--ml-gallery-terra, #a6533f);
	content: "\f102";
	font-family: SunshineIcons;
	font-size: 20px;
	line-height: 20px;
	pointer-events: none;
	animation: ml-favorite-fill-attention 2.4s linear infinite;
}

@keyframes ml-favorite-fill-attention {
	0% { opacity: 0; }
	2.5% { opacity: .05; }
	5% { opacity: .1; }
	7.5% { opacity: .15; }
	10% { opacity: .2; }
	12.5% { opacity: .25; }
	15% { opacity: .3; }
	17.5% { opacity: .35; }
	20% { opacity: .4; }
	22.5% { opacity: .45; }
	25% { opacity: .5; }
	27.5% { opacity: .55; }
	30% { opacity: .6; }
	32.5% { opacity: .65; }
	35% { opacity: .7; }
	37.5% { opacity: .75; }
	40% { opacity: .8; }
	42.5% { opacity: .85; }
	45% { opacity: .9; }
	47.5% { opacity: .95; }
	50% { opacity: 1; }
	52.5% { opacity: .95; }
	55% { opacity: .9; }
	57.5% { opacity: .85; }
	60% { opacity: .8; }
	62.5% { opacity: .75; }
	65% { opacity: .7; }
	67.5% { opacity: .65; }
	70% { opacity: .6; }
	72.5% { opacity: .55; }
	75% { opacity: .5; }
	77.5% { opacity: .45; }
	80% { opacity: .4; }
	82.5% { opacity: .35; }
	85% { opacity: .3; }
	87.5% { opacity: .25; }
	90% { opacity: .2; }
	92.5% { opacity: .15; }
	95% { opacity: .1; }
	97.5% { opacity: .05; }
	100% { opacity: 0; }
}

body.ml-warm-editorial-gallery .lg-outer .ml-lightbox__favorites-tray {
	position: fixed;
	z-index: 99125;
	top: max(8px, env(safe-area-inset-top));
	right: max(68px, calc(60px + env(safe-area-inset-right)));
	left: max(16px, env(safe-area-inset-left));
	box-sizing: border-box;
	min-height: 44px;
	max-width: 390px;
	pointer-events: auto;
}

html.lg-on body.ml-warm-editorial-gallery .lg-outer .ml-lightbox__favorites-tray #sunshine--selection-tray-minimized,
html.lg-on body.ml-warm-editorial-gallery .lg-outer .ml-lightbox__favorites-tray #sunshine--selection-tray-widget {
	visibility: visible !important;
	pointer-events: auto !important;
}

body.ml-warm-editorial-gallery .lg-outer .ml-lightbox__favorites-tray #sunshine--selection-tray-minimized {
	position: static;
	width: fit-content;
	max-width: 100%;
	min-height: 44px;
	padding: 9px 14px;
	border-radius: 14px;
	box-shadow: 0 8px 24px rgb(0 0 0 / 24%);
	overflow: hidden;
	white-space: nowrap;
}

body.ml-warm-editorial-gallery .lg-outer .ml-lightbox__favorites-tray #sunshine--selection-tray-minimized::after {
	display: none !important;
	content: none !important;
}

body.ml-warm-editorial-gallery:not(.ml-lightbox-open) #sunshine--selection-tray-minimized,
body.ml-warm-editorial-store:not(.ml-lightbox-open) #sunshine--selection-tray-minimized {
	border-radius: 14px;
	overflow: hidden;
}

body.ml-warm-editorial-gallery:not(.ml-lightbox-open) #sunshine--selection-tray-minimized::after,
body.ml-warm-editorial-store:not(.ml-lightbox-open) #sunshine--selection-tray-minimized::after {
	display: none !important;
	content: none !important;
}

body.ml-warm-editorial-gallery .lg-outer .ml-lightbox__favorites-tray #sunshine--selection-tray-widget {
	position: absolute;
	z-index: 1;
	top: calc(100% + 8px);
	right: auto;
	bottom: auto;
	left: 0;
	width: min(390px, calc(100vw - 88px));
	max-height: min(310px, calc(100dvh - 88px));
	overflow-y: auto;
}

body.ml-warm-editorial-gallery .lg-outer .ml-lightbox__favorites-tray #sunshine--selection-tray-widget.sunshine--minimized {
	display: none !important;
}

body.ml-warm-editorial-gallery .lg-outer .ml-lightbox__favorites-tray #sunshine--selection-tray-widget.sunshine--has-images:not(.sunshine--minimized) {
	display: block !important;
}

body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine--header {
	display: flex;
	min-height: 76px;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 16px clamp(18px, 4vw, 42px);
	background: #fffdf8;
	border-bottom: 1px solid #ded5c6;
	box-shadow: 0 4px 18px rgb(32 52 45 / 6%);
}

body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine--logo {
	max-width: 18rem;
	font-size: clamp(1.1rem, 4vw, 1.55rem);
	line-height: 1.18;
}

body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine--main-menu {
	flex: 0 0 auto;
}

#sunshine--main-menu .sunshine--login,
#sunshine--main-menu .sunshine--register,
#sunshine--main-menu .sunshine--account {
	display: none !important;
}

body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine > .sunshine--action-menu {
	width: min(1180px, calc(100% - 32px));
	margin: 18px auto 8px;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine > .sunshine--action-menu ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine > .sunshine--action-menu a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	padding: 8px 14px;
	background: #fffdf8;
	border: 1px solid #9caa9f;
	border-radius: 999px;
	color: #284f40;
	font-weight: 750;
	text-decoration: none;
}

.ml-persistent-cart {
	position: fixed;
	z-index: 118;
	right: max(18px, calc(env(safe-area-inset-right) + var(--ml-floating-visual-right, 0px)));
	bottom: calc(18px + env(safe-area-inset-bottom));
}

.ml-persistent-cart__toggle {
	position: relative;
	display: inline-flex;
	width: 52px;
	height: 52px;
	align-items: center;
	justify-content: center;
	padding: 0;
	background: #284f40;
	border: 1px solid rgb(255 253 248 / 70%);
	border-radius: 50%;
	box-shadow: 0 10px 28px rgb(24 48 40 / 26%);
	color: #fffdf8;
	font-size: 1.15rem;
	cursor: pointer;
	opacity: 1;
	backdrop-filter: blur(8px);
}

body:not(.lg-on):not(.ml-lightbox-open):not(.sunshine--modal--open) .ml-scroll-top--page {
	width: 52px;
	height: 52px;
	min-width: 52px;
	min-height: 52px;
	padding: 0;
	opacity: 1;
	backdrop-filter: blur(8px);
}

body.ml-cart-summary-open .ml-scroll-top--page {
	opacity: 0 !important;
	pointer-events: none !important;
}

.ml-persistent-cart__badge {
	position: absolute;
	top: -5px;
	right: -5px;
	display: grid;
	min-width: 24px;
	height: 24px;
	place-items: center;
	padding: 0 5px;
	background: #a6533f;
	border: 2px solid #fffdf8;
	border-radius: 999px;
	color: #fff;
	font-size: .7rem;
	font-weight: 850;
}

.ml-persistent-cart__panel {
	position: absolute;
	right: 0;
	bottom: 62px;
	display: grid;
	width: min(290px, calc(100vw - 32px));
	gap: 9px;
	padding: 18px;
	background: #fffdf8;
	border: 1px solid #ded5c6;
	border-radius: 16px 16px 4px 16px;
	box-shadow: 0 18px 46px rgb(24 48 40 / 24%);
	color: #20342d;
}

.ml-persistent-cart__panel[hidden] {
	display: none;
}

.ml-persistent-cart__panel a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 9px 14px;
	background: #284f40;
	border-radius: 9px;
	color: #fffdf8;
	font-weight: 800;
	text-decoration: none;
}

.ml-persistent-cart__close {
	position: absolute;
	top: 5px;
	right: 7px;
	width: 36px;
	height: 36px;
	padding: 0;
	background: transparent;
	border: 0;
	color: #284f40;
	font-size: 1.5rem;
	cursor: pointer;
}

body.lg-on .ml-persistent-cart,
body.ml-lightbox-open .ml-persistent-cart,
body.sunshine--modal--open .ml-persistent-cart,
body.ml-warm-editorial-cart .ml-persistent-cart,
body.ml-warm-editorial-checkout .ml-persistent-cart {
	display: none !important;
}

.ml-persistent-cart :focus-visible,
body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine > .sunshine--action-menu a:focus-visible {
	outline: 2px solid #fffdf8;
	outline-offset: 2px;
	box-shadow: 0 0 0 4px #20342d;
}

@media (max-width: 520px) {
	.ml-scroll-top {
		right: max(10px, calc(env(safe-area-inset-right) + var(--ml-floating-visual-right, 0px)));
		bottom: calc(78px + env(safe-area-inset-bottom));
	}

	body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine--header {
		min-height: 76px;
		padding: 14px 18px;
	}

	body.sunshine-photo-cart:not(.ml-warm-editorial-checkout) #sunshine > .sunshine--action-menu {
		width: calc(100% - 24px);
		margin-top: 12px;
	}

	.ml-persistent-cart {
		right: max(12px, calc(env(safe-area-inset-right) + var(--ml-floating-visual-right, 0px)));
		bottom: calc(12px + env(safe-area-inset-bottom));
	}

	#sunshine--selection-tray-minimized {
		bottom: calc(12px + env(safe-area-inset-bottom)) !important;
		opacity: 1;
		backdrop-filter: blur(8px);
	}

	#sunshine--selection-tray-minimized::after {
		position: absolute;
		z-index: -1;
		top: calc(100% - 2px);
		left: 0;
		width: 100%;
		height: calc(20px + env(safe-area-inset-bottom));
		background: inherit;
		content: "";
		pointer-events: none;
	}

	.ml-scroll-top__label {
		position: absolute;
		width: 1px;
		height: 1px;
		margin: -1px;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		overflow: hidden;
		white-space: nowrap;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ml-scroll-top {
		scroll-behavior: auto;
		transition: none;
	}

	body:not(.ml-favorite-used).ml-warm-editorial-gallery #sunshine--image-items .sunshine--image-item:nth-child(-n + 10) .sunshine--add-to-favorites[aria-pressed="false"]::after {
		animation: none !important;
	}

	body:not(.ml-favorite-used).ml-warm-editorial-gallery .lg-outer .ml-lightbox__actionbar #sunshine--lightbox--favorite[aria-pressed="false"]::after {
		animation: none !important;
		opacity: 0 !important;
	}
}
