.price-notice {
	position: fixed;
	left: 24px;
	bottom: 24px;
	z-index: 250;
	display: grid;
	grid-template-columns: 134px minmax(0, 1fr);
	grid-template-rows: auto auto;
	width: min(510px, calc(100vw - 48px));
	min-height: 168px;
	border: 1px solid rgba(219, 192, 130, .42);
	border-radius: 18px;
	overflow: hidden;
	background: #17281f;
	color: #f8f5ee;
	box-shadow: 0 16px 48px rgba(0, 0, 0, .35);
	opacity: 0;
	transform: translateY(14px);
	transition: opacity .25s ease, transform .25s ease;
}
.price-notice[hidden] { display: none; }
.price-notice.is-visible { opacity: 1; transform: none; }
.price-notice__image { grid-row: 1 / 3; width: 100%; height: 100%; object-fit: cover; object-position: 49% center; }
.price-notice__copy { min-width: 0; padding: 19px 48px 5px 19px; }
.price-notice__eyebrow { display: block; margin-bottom: 6px; color: #d6b975; font-size: 10px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.price-notice__title { display: block; max-width: 300px; font-size: 18px; line-height: 1.2; font-weight: 650; }
.price-notice__copy p { margin: 6px 0 0; color: rgba(248, 245, 238, .76); font-size: 13px; line-height: 1.35; }
.price-notice__actions { display: flex; gap: 8px; padding: 10px 19px 18px; }
.price-notice__button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 8px 12px; border-radius: 999px; font-size: 12px; font-weight: 700; line-height: 1.15; text-align: center; text-decoration: none; }
.price-notice__button--primary { background: #d9bd80; color: #17281f; }
.price-notice__button--secondary { border: 1px solid rgba(248, 245, 238, .5); color: #f8f5ee; }
.price-notice__button:hover, .price-notice__button:focus-visible { filter: brightness(1.1); }
.price-notice__close { position: absolute; top: 5px; right: 5px; display: grid; place-items: center; width: 42px; height: 42px; border: 0; border-radius: 50%; background: transparent; color: #f8f5ee; font-size: 27px; line-height: 1; cursor: pointer; }
.price-notice__close:hover, .price-notice__close:focus-visible { background: rgba(248, 245, 238, .14); }

@media (max-width: 600px) {
	.price-notice {
		left: 12px;
		bottom: calc(78px + env(safe-area-inset-bottom, 0px));
		grid-template-columns: 72px minmax(0, 1fr);
		grid-template-rows: auto auto;
		width: calc(100vw - 24px);
		min-height: 0;
		border-radius: 15px;
	}
	.price-notice__image { grid-row: 1; height: 100%; min-height: 84px; }
	.price-notice__copy { padding: 12px 42px 7px 12px; }
	.price-notice__eyebrow { margin-bottom: 4px; font-size: 9px; }
	.price-notice__title { font-size: 15px; }
	.price-notice__copy p { margin-top: 4px; font-size: 11px; }
	.price-notice__actions { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); padding: 8px 12px 12px; }
	.price-notice__button { min-height: 40px; padding: 7px 8px; font-size: 11px; }
	.price-notice__close { top: 1px; right: 1px; width: 42px; height: 42px; }
}

@media (prefers-reduced-motion: reduce) {
	.price-notice { transition: none; transform: none; }
}

@media (max-width: 360px) {
	.price-notice__copy p { display: none; }
}
