.garrot-cookie-consent {
	background: #10110f;
	border: 1px solid #373634;
	bottom: 1rem;
	box-shadow: 0 1.25rem 3.5rem rgb(0 0 0 / 42%);
	color: var(--bone-muted);
	inline-size: min(calc(100% - 2rem), 35rem);
	inset-inline-start: 1rem;
	padding: clamp(1.25rem, 2vw, 1.7rem);
	position: fixed;
	z-index: 80;
}

.garrot-cookie-consent__heading {
	align-items: baseline;
	display: flex;
	gap: .8rem;
	justify-content: space-between;
}

.garrot-cookie-consent__heading p {
	color: var(--forge-red);
	font-family: var(--font-interface);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .13em;
	margin: 0;
	text-transform: uppercase;
}

.garrot-cookie-consent h2 {
	color: var(--bone);
	font-family: var(--font-display);
	font-size: clamp(1.65rem, 3vw, 2.25rem);
	font-weight: 600;
	letter-spacing: -.04em;
	line-height: .9;
	margin: .7rem 0 1rem;
}

.garrot-cookie-consent > p {
	font-size: .87rem;
	line-height: 1.55;
	margin: 0;
}

.garrot-cookie-consent a {
	color: var(--bone);
	font-weight: 700;
	text-underline-offset: .18em;
}

.garrot-cookie-consent__actions {
	display: grid;
	margin-block-start: 1.25rem;
}

.garrot-cookie-consent__button {
	align-items: center;
	background: var(--forge-red);
	border: 1px solid var(--forge-red);
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--font-interface);
	font-size: .7rem;
	font-weight: 800;
	justify-content: center;
	letter-spacing: .085em;
	line-height: 1.25;
	min-block-size: 3rem;
	padding: .7rem;
	text-align: center;
	text-transform: uppercase;
}

.garrot-cookie-consent__button:hover,
.garrot-cookie-consent__button:focus-visible {
	background: var(--bone);
	border-color: var(--bone);
	color: var(--carbon);
	outline: 0;
}

.garrot-whatsapp-float {
	align-items: center;
	background: #25d366;
	border-radius: 100px;
	bottom: 1.125rem;
	box-shadow: 0 .875rem 2.25rem -.625rem rgb(37 211 102 / 76%);
	color: #fff;
	display: flex;
	font-family: var(--font-interface);
	font-size: .81rem;
	font-weight: 800;
	gap: .7rem;
	inset-inline-end: 1.125rem;
	letter-spacing: .035em;
	min-block-size: 3.5rem;
	padding: .75rem 1.375rem .75rem 1.05rem;
	position: fixed;
	text-decoration: none;
	text-transform: none;
	transition: background .25s ease, transform .4s cubic-bezier(.16, 1, .3, 1), box-shadow .25s ease;
	z-index: 40;
}

.garrot-whatsapp-float::after {
	animation: garrot-whatsapp-pulse 2.6s infinite;
	border-radius: inherit;
	box-shadow: 0 0 0 0 rgb(37 211 102 / 60%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.garrot-whatsapp-float svg {
	block-size: 1.45rem;
	flex: none;
	inline-size: 1.45rem;
}

.garrot-whatsapp-float:hover {
	background: #1ebe5d;
	box-shadow: 0 1.1rem 2.5rem -.55rem rgb(37 211 102 / 88%);
	color: #fff;
	transform: translateY(-3px) scale(1.03);
}

.garrot-whatsapp-float:focus-visible {
	background: #1ebe5d;
	color: #fff;
	outline: 2px solid var(--bone);
	outline-offset: 3px;
}

@keyframes garrot-whatsapp-pulse {
	70% {
		box-shadow: 0 0 0 1rem rgb(37 211 102 / 0%);
	}

	100% {
		box-shadow: 0 0 0 0 rgb(37 211 102 / 0%);
	}
}

@media (prefers-reduced-motion: reduce) {
	.garrot-whatsapp-float,
	.garrot-whatsapp-float::after {
		animation: none;
		transition: none;
	}
}

@media (max-width: 34.99rem) {
	.garrot-cookie-consent {
		bottom: 1rem;
		inline-size: calc(100% - 1.5rem);
		inset-inline-start: .75rem;
	}

	.garrot-cookie-consent__heading {
		display: block;
	}

	.garrot-whatsapp-float {
		bottom: .875rem;
		font-size: .66rem;
		gap: .5rem;
		inset-inline-end: .875rem;
		min-block-size: 3.25rem;
		padding: .6rem .9rem .6rem .75rem;
	}

	.garrot-whatsapp-float svg {
		block-size: 1.25rem;
		inline-size: 1.25rem;
	}

	.garrot-cookie-consent-open .garrot-whatsapp-float {
		bottom: calc(18rem + env(safe-area-inset-bottom));
	}
}
