@media (max-width: 920px) {
	:root {
		--tc-header: 68px;
	}

	.tc-site-header {
		padding-inline: 18px;
	}

	.tc-menu-toggle {
		display: block;
		order: 3;
	}

	.tc-header-cta {
		display: none;
	}

	.tc-nav {
		position: fixed;
		inset: var(--tc-header) 14px auto;
		padding: 18px;
		border-radius: 8px;
		background: rgba(255,255,255,0.96);
		box-shadow: 0 24px 55px rgba(30,42,47,0.18);
		transform: translateY(-18px);
		opacity: 0;
		pointer-events: none;
		transition: transform 220ms ease, opacity 220ms ease;
	}

	body.tc-menu-open .tc-nav {
		transform: translateY(0);
		opacity: 1;
		pointer-events: auto;
	}

	body.tc-menu-open .tc-menu-toggle span:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	body.tc-menu-open .tc-menu-toggle span:nth-child(2) {
		opacity: 0;
	}

	body.tc-menu-open .tc-menu-toggle span:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	.tc-nav ul {
		display: grid;
		gap: 8px;
	}

	.tc-nav a {
		padding: 12px;
	}

	.tc-hero {
		min-height: 100svh;
		align-items: start;
		padding-top: calc(var(--tc-header) + 24px);
	}

	.tc-hero__content {
		width: min(100% - 36px, 620px);
		margin-inline: auto;
		padding-block: 4vh 44vh;
	}

	.tc-hero h1 {
		font-size: clamp(3.35rem, 16vw, 5.8rem);
		max-width: 7.5ch;
	}

	.tc-layer--ingredients {
		width: 110vw;
		right: -50vw;
		top: 24vh;
		opacity: 0.48;
	}

	.tc-layer--splash {
		width: 110vw;
		left: -30vw;
		bottom: 8vh;
		opacity: 0.45;
	}

	.tc-product-traveller {
		width: min(46vw, 220px);
		left: 50%;
		top: 69%;
	}

	.tc-scene-copy h2,
	.tc-faq h2 {
		font-size: clamp(2.6rem, 13vw, 4.8rem);
	}

	.tc-pin-stage {
		min-height: 92svh;
	}

	.tc-flow {
		min-height: 100svh;
		padding: 22vh 0 12vh;
	}

	.tc-flow__pour {
		top: 4vh;
		right: -24vw;
		width: 92vw;
		opacity: 0.72;
	}

	.tc-ingredients__grid,
	.tc-viewer__grid,
	.tc-order__grid {
		grid-template-columns: 1fr;
	}

	.tc-depth-composition {
		min-height: 430px;
		order: -1;
	}

	.tc-depth--product {
		width: 40%;
		left: 32%;
	}

	.tc-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tc-product-viewer__stage {
		min-height: 520px;
	}

	.tc-product-viewer__stage img {
		max-height: 470px;
	}

	.tc-final__ingredients {
		width: 80vw;
		right: -36vw;
		opacity: 0.34;
	}

	.tc-cursor-drop {
		display: none;
	}
}

@media (max-width: 560px) {
	.tc-actions,
	.tc-site-footer {
		flex-direction: column;
		align-items: stretch;
	}

	.tc-button {
		width: 100%;
	}

	.tc-hero p,
	.tc-scene-copy p {
		font-size: 1rem;
	}

	.tc-benefits {
		grid-template-columns: 1fr;
	}

	.tc-benefit-card {
		min-height: 110px;
	}

	.tc-glass__copy,
	.tc-order__panel {
		width: min(100% - 28px, 520px);
		padding: 22px;
	}

	.tc-product-viewer__stage {
		min-height: 430px;
	}

	.tc-product-viewer__stage img {
		max-height: 390px;
	}

	.tc-quantity {
		grid-template-columns: 1fr auto auto auto;
	}
}

@media (hover: none), (pointer: coarse) {
	.tc-cursor-drop {
		display: none;
	}

	.tc-magnetic {
		transform: none !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.001ms !important;
	}

	.tc-loader {
		display: none;
	}

	.tc-product-traveller {
		position: absolute;
		top: 42vh;
		opacity: 0.95;
	}
}
