/* Responsive guardrails loaded after the main theme styles. */
.np-drawer {
	overflow: hidden;
}

html,
body {
	max-width: 100%;
}

.np-hero {
	width: 100%;
	max-width: 100%;
	height: auto;
	min-height: 0;
	max-height: 760px;
	aspect-ratio: 16 / 9;
}

.np-hero__slide {
	background-position: center center;
	background-size: cover;
}

@media (max-width: 640px) {
	.np-hero {
		height: auto;
		min-height: 0;
	}

	.np-hero__dots {
		bottom: 16px;
	}

	.np-hero__dot {
		width: 24px;
	}

	.np-hero__dot.is-active {
		width: 42px;
	}
}

@media (max-width: 380px) {
	:root {
		--np-gutter: 18px;
	}
}

.np-footer__newsletter-inner > div,
.np-footer__col,
.np-newsletter-form input {
	min-width: 0;
}

.np-newsletter-form {
	min-width: min(320px, 100%);
}

.np-footer__main {
	align-items: start;
}

@media (max-width: 991px) {
	.np-footer .np-container {
		padding-left: calc(var(--np-gutter) + 5px);
	}

	#np-footer .np-footer__newsletter-inner,
	#np-footer .np-footer__main,
	#np-footer .np-footer__bottom-inner {
		padding-left: calc(var(--np-gutter) + 5px) !important;
		padding-right: calc(var(--np-gutter) - 5px) !important;
	}

	.np-footer__newsletter-inner {
		align-items: flex-start;
		gap: 24px;
	}

	.np-newsletter-form {
		width: 100%;
		max-width: none;
	}

	.np-footer__main {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 36px 28px;
		padding: 52px 0;
	}

	.np-footer__col--about {
		grid-column: 1 / -1;
	}

	.np-footer__about {
		max-width: 720px;
	}

	.np-footer__bottom-inner {
		justify-content: center;
		text-align: center;
	}

	.np-footer__pay {
		justify-content: center;
	}
}

@media (max-width: 700px) {
	.np-footer__newsletter {
		padding: 44px 0;
	}

	.np-footer__newsletter-inner {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
	}

	.np-footer__newsletter-sub {
		max-width: none;
	}

	.np-footer__main {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 34px 24px;
		padding: 44px 0;
	}

	.np-footer__col--about {
		text-align: center;
	}

	.np-footer__col--about .np-logo {
		display: flex;
		justify-content: center;
	}

	.np-footer__about {
		max-width: none;
	}

	.np-footer__socials {
		justify-content: center;
	}

	.np-footer__pay {
		gap: 8px;
	}

	.np-footer__pay span {
		letter-spacing: .16em;
		padding: 5px 8px;
	}
}

@media (max-width: 480px) {
	#np-footer .np-footer__newsletter-inner,
	#np-footer .np-footer__main,
	#np-footer .np-footer__bottom-inner {
		padding-left: 5px !important;
		padding-right: 5px !important;
		text-align: left;
	}

	#np-footer .np-footer__col--about,
	#np-footer .np-footer__about,
	#np-footer .np-footer__title,
	#np-footer .np-footer__menu {
		text-align: left;
	}

	#np-footer .np-footer__col--about .np-logo,
	#np-footer .np-footer__socials,
	#np-footer .np-footer__pay {
		justify-content: flex-start;
	}

	.np-newsletter-form {
		display: grid;
		gap: 10px;
	}

	.np-newsletter-form input {
		border-right: 1px solid var(--np-line-soft);
		border-radius: var(--np-radius);
		width: 100%;
	}

	.np-newsletter-form .np-btn {
		border-radius: var(--np-radius);
		width: 100%;
		padding-left: 18px;
		padding-right: 18px;
	}

	.np-footer__main {
		grid-template-columns: 1fr;
		gap: 28px;
		text-align: left;
	}

	.np-footer__menu li {
		margin-bottom: 9px;
	}

	.np-footer__bottom {
		padding: 20px 0 28px;
	}
}
