@media (max-width: 1180px) {
	.bss-primary-nav,
	.bss-header-actions {
		display: none;
	}

	.bss-site-header .bss-menu-toggle {
		display: block !important;
		flex: 0 0 44px;
		width: 44px !important;
		height: 44px !important;
	}

	.bss-mobile-menu {
		align-content: start;
		gap: 30px;
		padding: clamp(108px, 13vh, 138px) clamp(32px, 6vw, 72px) 44px;
		overflow: hidden;
		background: rgba(8, 13, 15, 0.9);
		-webkit-backdrop-filter: blur(16px);
		backdrop-filter: blur(16px);
	}

	.bss-mobile-menu nav {
		gap: 15px;
	}

	.bss-mobile-menu nav a {
		color: var(--bss-white) !important;
		font-size: clamp(1.65rem, 3.5vw, 2.55rem);
		font-weight: 650;
		line-height: 1.08;
		opacity: 0;
		transform: translateY(12px);
		transition: color 180ms ease, opacity 220ms ease, transform 220ms ease;
	}

	.bss-mobile-menu nav a::after {
		width: 100%;
		height: 2px;
		background: var(--bss-brand);
		opacity: 0;
		transform: scaleX(0);
	}

	.bss-mobile-menu.is-open nav a {
		opacity: 1;
		transform: translateY(0);
	}

	.bss-mobile-menu.is-open nav a::after {
		animation: bss-mobile-link-line 460ms cubic-bezier(0.2, 0.75, 0.25, 1) forwards;
	}

	.bss-mobile-menu.is-open nav a:nth-child(2)::after {
		animation-delay: 55ms;
	}

	.bss-mobile-menu.is-open nav a:nth-child(3)::after {
		animation-delay: 110ms;
	}

	.bss-mobile-menu.is-open nav a:nth-child(4)::after {
		animation-delay: 165ms;
	}

	.bss-mobile-menu.is-open nav a:nth-child(5)::after {
		animation-delay: 220ms;
	}

	.bss-mobile-menu nav a:hover,
	.bss-mobile-menu nav a:focus-visible,
	.bss-mobile-menu nav a[aria-current="page"] {
		color: var(--bss-brand) !important;
	}

	.bss-mobile-menu__contact .bss-button {
		display: inline-flex !important;
		width: fit-content !important;
		min-height: 40px;
		padding: 10px 15px;
		border: 1px solid rgba(0, 196, 190, 0.68);
		background: rgba(0, 196, 190, 0.1);
		color: var(--bss-brand) !important;
		font-size: 0.94rem;
		font-weight: 590;
		line-height: 1;
	}

	.bss-about__layout,
	.bss-industries__layout,
	.bss-quality__layout,
	.bss-contact__layout {
		grid-template-columns: 1fr;
	}

	.bss-industries__layout > div,
	.bss-quality__intro {
		max-width: 700px;
	}

	.bss-industries::after {
		top: auto;
		right: 24px;
		bottom: 8%;
		width: min(52vw, 360px);
		opacity: 0.14;
	}

	.bss-about__media {
		max-width: 700px;
	}

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

	.bss-services__secondary-title {
		grid-column: 1 / -1;
		border-bottom: 1px solid var(--bss-border);
	}

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

@media (max-width: 768px) {
	.bss-container,
	.bss-header__inner {
		width: min(calc(100% - 32px), var(--bss-container));
	}

	.bss-nav-shell .bss-header__inner {
		min-height: 78px;
	}

	.bss-site-header {
		background: rgba(247, 247, 244, 0.94);
		color: var(--bss-ink);
		box-shadow: 0 12px 34px rgba(0, 0, 0, 0.08);
		backdrop-filter: blur(14px);
	}

	.bss-site-header .bss-menu-toggle {
		background: var(--bss-white) !important;
	}

	.bss-logo__image--light {
		opacity: 0;
	}

	.bss-logo__image--dark {
		opacity: 1;
	}

	.bss-logo__image {
		width: 92px;
	}

	.bss-hero {
		min-height: 560px;
		padding: 108px 0 72px;
		align-items: center;
	}

	.bss-hero::before {
		background-image:
			linear-gradient(90deg, rgba(10, 14, 16, 0.94), rgba(10, 14, 16, 0.58)),
			linear-gradient(180deg, transparent 40%, rgba(10, 14, 16, 0.92)),
			var(--bss-hero-image);
		background-position: 62% center;
	}

	.bss-hero__inner {
		padding-bottom: 0;
	}

	.bss-display {
		max-width: 9ch;
		font-size: clamp(3rem, 13vw, 4.25rem);
	}

	.bss-hero .bss-eyebrow,
	.bss-hero__content .bss-lead,
	.bss-hero .bss-button-row,
	.bss-hero__content .bss-lead {
		display: none;
	}

	.bss-hero__rail {
		display: none;
	}

	.bss-contact .bss-button-row {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
		justify-items: start;
		width: 100%;
	}

	.bss-contact .bss-button-row .bss-button--ghost {
		width: fit-content !important;
		max-width: 100%;
		min-height: 46px;
		justify-content: space-between;
		padding: 11px 14px;
		font-size: clamp(0.88rem, 3.8vw, 1rem);
		font-weight: 620;
		line-height: 1.2;
	}

	.bss-proof__grid,
	.bss-services__primary,
	.bss-quality__list,
	.bss-footer__grid {
		grid-template-columns: 1fr;
	}

	.bss-proof__grid {
		border-top: 1px solid var(--bss-border);
	}

	.bss-proof p {
		min-height: 0;
		border-right: 0;
		border-bottom: 1px solid var(--bss-border);
	}

	.bss-proof p > span {
		margin-bottom: 12px;
	}

	.bss-service-card__body {
		min-height: 250px;
	}

	.bss-services__secondary {
		grid-template-columns: 1fr;
	}

	.bss-services__secondary-title,
	.bss-services__secondary a {
		border-right: 0;
		border-bottom: 1px solid var(--bss-border);
	}

	.bss-about__media {
		padding-left: 20px;
	}

	.bss-about__image-cut {
		right: 0;
	}

	.bss-quality-card {
		right: 2%;
	}

	.bss-check-list {
		grid-template-columns: 1fr;
	}

	.bss-process__steps {
		grid-template-columns: 1fr;
		padding: 0 0 0 30px;
	}

	.bss-process__steps::before {
		top: 0;
		bottom: 0;
		left: 7px;
		width: 1px;
		height: auto;
	}

	.bss-process__steps li {
		padding: 0 0 22px;
	}

	.bss-process__steps li::before {
		top: 5px;
		left: -30px;
	}

	.bss-footer__bottom {
		grid-template-columns: 1fr;
		justify-items: center;
		gap: 16px;
		padding-block: 24px;
		text-align: center;
	}

	.bss-footer__copyright,
	.bss-footer__legal,
	.bss-footer__powered {
		justify-self: center;
	}

	.bss-footer {
		padding-top: 84px;
	}

	.bss-footer__grid {
		gap: 44px;
		padding-bottom: 54px;
	}

	.bss-footer .bss-footer__legal {
		grid-template-columns: repeat(3, max-content);
		justify-content: center;
		column-gap: clamp(20px, 6vw, 32px);
		width: 100%;
	}

	.bss-legal-hero {
		min-height: 300px;
		padding: 124px 0 46px;
	}

	.bss-legal-hero h1 {
		max-width: 100%;
		font-size: clamp(2.25rem, 13vw, 4.4rem);
		line-height: 1;
	}

	.bss-legal-content__grid {
		grid-template-columns: 1fr;
	}

	.bss-cookie-banner {
		right: auto;
		bottom: 16px;
		left: 50%;
		width: min(calc(100% - 32px), 360px);
		transform: translateX(-50%);
	}

	.bss-cookie-banner__inner {
		width: 100%;
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 18px;
		border: 1px solid rgba(0, 196, 190, 0.24);
		border-radius: 8px;
		background: rgba(8, 13, 15, 0.96);
		box-shadow: 0 20px 56px rgba(0, 0, 0, 0.34);
		animation: bss-cookie-sheet-in 260ms cubic-bezier(0.2, 0.75, 0.25, 1);
	}

	.bss-cookie-banner__actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
		width: 100%;
	}

	.bss-cookie-banner .bss-button {
		width: 100%;
		min-height: 42px;
		padding: 10px 12px;
		border-radius: 6px !important;
		font-size: 0.78rem;
	}

	.bss-cookie-floating-button {
		right: 14px;
		bottom: 14px;
		width: 40px;
		height: 40px;
		border: 1px solid rgba(0, 196, 190, 0.35);
		background: rgba(16, 21, 23, 0.84) !important;
		color: var(--bss-white);
		box-shadow: 0 14px 34px rgba(0, 0, 0, 0.26);
		backdrop-filter: blur(12px);
	}

	.bss-cookie-floating-button svg {
		width: 19px;
		height: 19px;
	}

	.bss-mobile-menu {
		inset: 0;
		display: grid;
		align-content: start;
		gap: 28px;
		max-height: none;
		padding: clamp(106px, 13vh, 124px) 32px 40px;
		overflow: hidden;
		background: rgba(8, 13, 15, 0.88);
		border: 0;
		border-radius: 0;
		color: var(--bss-white);
		box-shadow: none;
		-webkit-backdrop-filter: blur(16px);
		backdrop-filter: blur(16px);
		transform: translateY(-10px);
	}

	.bss-mobile-menu nav {
		display: grid;
		gap: 15px;
	}

	.bss-mobile-menu a {
		width: fit-content;
		color: inherit !important;
		font-size: clamp(1.52rem, 6.7vw, 2.1rem) !important;
		font-weight: 650;
		line-height: 1.08 !important;
		opacity: 0;
		transform: translateY(12px);
		transition: color 180ms ease, opacity 220ms ease, transform 220ms ease;
	}

	.bss-mobile-menu nav a::after {
		right: auto;
		bottom: -6px;
		left: 0;
		width: 100%;
		height: 2px;
		background: var(--bss-brand);
		opacity: 0;
		transform: scaleX(0);
		transition: opacity 180ms ease, transform 260ms ease;
	}

	.bss-mobile-menu.is-open a {
		opacity: 1;
		transform: translateY(0);
	}

	.bss-mobile-menu.is-open nav a::after {
		animation: bss-mobile-link-line 460ms cubic-bezier(0.2, 0.75, 0.25, 1) forwards;
	}

	.bss-mobile-menu.is-open nav a:nth-child(2)::after {
		animation-delay: 55ms;
	}

	.bss-mobile-menu.is-open nav a:nth-child(3)::after {
		animation-delay: 110ms;
	}

	.bss-mobile-menu.is-open nav a:nth-child(4)::after {
		animation-delay: 165ms;
	}

	.bss-mobile-menu.is-open nav a:nth-child(5)::after {
		animation-delay: 220ms;
	}

	.bss-mobile-menu.is-open a:nth-child(2) {
		transition-delay: 35ms;
	}

	.bss-mobile-menu.is-open a:nth-child(3) {
		transition-delay: 70ms;
	}

	.bss-mobile-menu.is-open a:nth-child(4) {
		transition-delay: 105ms;
	}

	.bss-mobile-menu.is-open a:nth-child(5) {
		transition-delay: 140ms;
	}

	.bss-mobile-menu a:hover,
	.bss-mobile-menu a:focus-visible,
	.bss-mobile-menu a[aria-current="page"] {
		color: var(--bss-brand) !important;
	}

	.bss-mobile-menu nav a:hover::after,
	.bss-mobile-menu nav a:focus-visible::after,
	.bss-mobile-menu nav a[aria-current="page"]::after {
		opacity: 1;
		transform: scaleX(1);
	}

	.bss-mobile-menu__contact {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 12px 16px;
		padding-top: 4px;
	}

	.bss-mobile-menu__contact .bss-button {
		display: inline-flex !important;
		width: auto !important;
		max-width: none;
		min-height: 38px;
		padding: 9px 14px;
		border: 1px solid rgba(0, 196, 190, 0.68);
		background: rgba(0, 196, 190, 0.1);
		color: var(--bss-brand) !important;
		font-size: clamp(0.88rem, 3.8vw, 1rem) !important;
		font-weight: 590 !important;
		line-height: 1 !important;
	}

	.bss-mobile-menu__contact .bss-button::after {
		font-size: 0.85em;
	}
}

@keyframes bss-cookie-sheet-in {
	from {
		opacity: 0;
		transform: translateY(12px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes bss-mobile-link-line {
	from {
		opacity: 0;
		transform: scaleX(0);
	}

	to {
		opacity: 0.82;
		transform: scaleX(1);
	}
}

@media (max-width: 430px) {
	.bss-container,
	.bss-header__inner {
		width: min(calc(100% - 28px), var(--bss-container));
	}

	.bss-display {
		font-size: clamp(2.72rem, 13vw, 3.4rem);
		line-height: 1;
	}

	.bss-h2 {
		font-size: clamp(2.05rem, 10vw, 2.85rem);
	}

	.bss-button-row,
	.bss-button {
		width: 100%;
	}

	.bss-hero .bss-button-row {
		width: auto;
	}

	.bss-button {
		min-height: 50px;
	}

	.bss-mobile-menu {
		inset: 0;
		gap: 26px;
		padding: 88px 24px 34px;
	}

	.bss-mobile-menu a {
		font-size: clamp(1.4rem, 6.5vw, 1.78rem) !important;
		line-height: 1.08 !important;
	}

	.bss-site-header .bss-menu-toggle {
		flex-basis: 40px;
		width: 40px !important;
		height: 40px !important;
	}

	.bss-mobile-menu__close {
		top: 22px;
		right: 24px;
		width: 40px !important;
		min-width: 40px !important;
		max-width: 40px !important;
		height: 40px !important;
	}

	.bss-service-card__number {
		top: 28px;
		right: 28px;
	}

	.bss-about__media {
		padding-bottom: 56px;
	}

	.bss-quality-card {
		position: relative;
		top: auto;
		right: auto;
		margin: -34px 14px 0 34px;
	}

	.bss-legal-hero h1 {
		font-size: clamp(2rem, 12vw, 3.15rem);
	}
}
