/*
Theme Name: Невские Технологии
Theme URI: https://endo-nt.ru/
Author: Невские Технологии
Description: Блочная тема сайта компании «Невские Технологии».
Version: 1.0.4
Requires at least: 7.0
Requires PHP: 8.1
Text Domain: nevtech
*/

:root {
	--nevtech-border: #e5e7eb;
	--nevtech-shadow-sm: 0 0.5rem 1.5rem rgb(29 29 31 / 5%);
	--nevtech-shadow-md: 0 0.75rem 2rem rgb(29 29 31 / 10%);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

:where(a, button, input, select, textarea):focus-visible {
	outline: 3px solid var(--wp--preset--color--accent);
	outline-offset: 3px;
}

.nevtech-site-header {
	position: relative;
	z-index: 10;
	background: rgb(255 255 255 / 98%);
	border-bottom: 1px solid var(--nevtech-border);
}

.nevtech-site-header .wp-block-site-title {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	font-size: 0.9375rem;
	font-weight: 700;
	white-space: normal;
}

.nevtech-site-header .wp-block-site-title::before {
	width: 0.625rem;
	height: 0.625rem;
	flex: 0 0 auto;
	border-radius: 50%;
	background: var(--wp--preset--color--accent);
	content: "";
}

.nevtech-site-header .wp-block-navigation {
	font-size: 0.8125rem;
}

.nevtech-site-header .wp-block-navigation-item__content {
	min-height: 44px;
	display: flex;
	align-items: center;
}

.nevtech-site-header > .wp-block-group {
	flex-wrap: wrap !important;
}

.nevtech-header-actions {
	gap: 0.75rem;
}

.nevtech-site-header .nevtech-header-cta .wp-block-button__link {
	min-height: 44px;
	padding-inline: 1rem;
	font-size: 0.8125rem;
}

.nevtech-header-search {
	flex: 0 0 auto;
}

.nevtech-header-search .wp-block-search__button {
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0.625rem;
	color: var(--wp--preset--color--foreground);
	background: var(--wp--preset--color--surface);
	border-radius: 50%;
}

.nevtech-pill-button .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	min-height: 52px;
	padding-inline: 1.625rem;
	border-radius: 999px;
	font-size: 0.9375rem;
}

.nevtech-section-kicker {
	margin-block-end: 1.5rem;
	font-weight: 700;
}

.nevtech-section-title {
	max-width: 16ch;
	margin-block: 0 1.5rem;
	font-size: clamp(2.25rem, 3vw, 2.75rem) !important;
	line-height: 1.02;
	letter-spacing: -0.045em;
	text-wrap: balance;
	overflow-wrap: anywhere;
}

.nevtech-section-title span {
	color: var(--wp--preset--color--muted);
}

.nevtech-arrow-link a {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	min-height: 44px;
	font-weight: 600;
	text-decoration: none;
}

.nevtech-home-hero {
	padding-block: 1.5rem 4.25rem;
	background: var(--wp--preset--color--white);
}

.wp-site-blocks > .nevtech-home {
	margin-block-start: 0;
}

.nevtech-home > * {
	margin-block-start: 0 !important;
}

.nevtech-home-hero__grid {
	gap: clamp(2rem, 5vw, 5.5rem);
}

.nevtech-home-hero__copy {
	position: relative;
	top: 0.75rem;
}

.nevtech-home-hero__title {
	max-width: 10em;
	margin-block: 0 1.5rem;
	font-size: clamp(3.5rem, 4.5vw, 4rem) !important;
	line-height: 0.98;
	letter-spacing: -0.055em;
	text-wrap: balance;
}

.nevtech-home-hero__title span {
	color: var(--wp--preset--color--muted);
}

.nevtech-home-hero__lead {
	max-width: 34rem;
	margin-block-end: 2rem;
	font-size: 1rem !important;
	line-height: 1.45;
}

.nevtech-home-hero__actions {
	gap: 0.5rem;
}

.nevtech-home-hero__actions .wp-block-button__link {
	padding-inline: 1rem;
}

.nevtech-home-hero__actions .is-style-outline .wp-block-button__link {
	min-width: 8.5rem;
}

.nevtech-home-hero__visual {
	position: relative;
	min-height: 31rem;
	overflow: hidden;
	border-radius: 1.75rem;
	background:
		linear-gradient(145deg, #eef1f4, #dfe4e8);
	box-shadow: 0 2rem 4rem rgb(29 29 31 / 10%);
}

.nevtech-home-hero__image {
	position: absolute;
	inset: 0;
	margin: 0;
}

.nevtech-home-hero__image img {
	width: 100%;
	height: 100%;
	padding: 1.5rem 2rem 9rem;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.nevtech-home-hero__visual--photo .nevtech-home-hero__image img {
	padding: 0;
	object-fit: cover;
	mix-blend-mode: normal;
}

.nevtech-home-hero__model {
	position: absolute;
	z-index: 2;
	top: 1.5rem;
	right: 1.5rem;
	margin: 0;
	padding: 0.5rem 0.875rem;
	border-radius: 999px;
	background: rgb(255 255 255 / 88%);
	font-weight: 700;
}

.nevtech-home-hero__feature {
	position: absolute;
	z-index: 2;
	right: 1.5rem;
	bottom: 1.5rem;
	left: 1.5rem;
	padding: 1.5rem;
	border: 1px solid rgb(255 255 255 / 80%);
	border-radius: 1.25rem;
	background: rgb(255 255 255 / 92%);
	box-shadow: var(--nevtech-shadow-md);
	backdrop-filter: blur(12px);
}

.nevtech-home-hero__feature > * {
	margin-block: 0 0.625rem;
}

.nevtech-home-hero__feature > *:last-child {
	margin-block-end: 0;
}

.nevtech-hero-carousel {
	isolation: isolate;
}

.nevtech-hero-carousel__slide {
	position: absolute;
	inset: 0;
	visibility: hidden;
	opacity: 0;
	transition:
		visibility 0s linear 250ms,
		opacity 250ms ease;
}

.nevtech-hero-carousel__slide.is-active {
	visibility: visible;
	opacity: 1;
	transition-delay: 0s;
}

.nevtech-hero-carousel__slide figure {
	position: absolute;
	inset: 0;
	margin: 0;
}

.nevtech-hero-carousel__slide img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.nevtech-hero-carousel__slide--medical {
	background:
		radial-gradient(circle at 76% 20%, rgb(255 255 255 / 44%), transparent 15rem),
		linear-gradient(145deg, #dce9f5, #7db1df);
}

.nevtech-hero-carousel__slide--medical img {
	padding: 1rem 0.5rem 7.75rem 28%;
	object-position: right top;
	filter: drop-shadow(0 1.5rem 2rem rgb(29 29 31 / 18%));
}

.nevtech-hero-carousel__slide--endoscopy::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgb(14 24 34 / 88%), rgb(14 24 34 / 8%) 75%);
	content: "";
}

.nevtech-hero-carousel__slide--endoscopy img {
	object-fit: cover;
	object-position: 54% center;
}

.nevtech-hero-carousel__caption {
	position: absolute;
	z-index: 2;
	right: 1.5rem;
	bottom: 1.5rem;
	left: 1.5rem;
	padding: 1.5rem;
	color: var(--wp--preset--color--white);
	border: 1px solid rgb(255 255 255 / 45%);
	border-radius: 1.25rem;
	background: rgb(29 29 31 / 72%);
	backdrop-filter: blur(12px);
}

.nevtech-hero-carousel__caption h2 {
	margin: 0 0 0.75rem;
	color: inherit;
	font-size: clamp(1.5rem, 2.2vw, 2rem);
	line-height: 1.05;
}

.nevtech-hero-carousel__caption a {
	display: inline-flex;
	gap: 0.75rem;
	align-items: center;
	min-height: 44px;
	color: inherit;
	font-weight: 600;
	text-decoration: none;
}

.nevtech-hero-carousel__controls {
	position: absolute;
	z-index: 3;
	right: 3rem;
	top: 3rem;
	display: flex;
	gap: 0.5rem;
}

.nevtech-hero-carousel__controls button {
	display: grid;
	width: 44px;
	height: 44px;
	padding: 0;
	place-items: center;
	color: var(--wp--preset--color--foreground);
	border: 0;
	border-radius: 50%;
	background: rgb(255 255 255 / 92%);
	cursor: pointer;
	transition:
		background-color 200ms ease,
		transform 200ms ease;
}

.nevtech-hero-carousel__controls button:hover {
	background: var(--wp--preset--color--white);
	transform: translateY(-2px);
}

.nevtech-home-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1.5rem, 4vw, 4rem);
	margin-block-start: clamp(3rem, 6vw, 5rem);
	padding-block-start: 2rem;
	border-top: 1px solid var(--nevtech-border);
}

.nevtech-home-step__number {
	margin: 0;
	font-size: clamp(2.5rem, 4vw, 3rem);
	font-weight: 650;
	line-height: 1;
	letter-spacing: -0.04em;
}

.nevtech-home-step p:not(.nevtech-home-step__number) {
	max-width: 16rem;
	margin-block: 0;
	font-weight: 600;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.nevtech-cycle-section {
	padding-block: 5rem;
}

.nevtech-cycle-grid {
	gap: clamp(3rem, 7vw, 7rem);
}

.nevtech-cycle-list {
	border-top: 1px solid var(--nevtech-border);
}

.nevtech-cycle-list > .nevtech-cycle-row,
.nevtech-directions-grid > .nevtech-direction-card {
	margin-block-start: 0 !important;
}

.nevtech-cycle-row {
	display: grid;
	grid-template-columns: 8rem minmax(0, 1fr) 44px;
	gap: 1rem;
	align-items: start;
	padding-block: 1.5rem;
	border-bottom: 1px solid var(--nevtech-border);
}

.nevtech-cycle-row > p,
.nevtech-cycle-row > h3 {
	margin: 0;
}

.nevtech-cycle-row > a {
	margin-block-start: 0 !important;
}

.nevtech-cycle-section .nevtech-section-title {
	max-width: 100%;
}

.nevtech-cycle-row > p {
	padding-block-start: 0.2rem;
	color: var(--wp--preset--color--muted);
	font-size: 0.875rem;
}

.nevtech-cycle-row > h3 {
	font-size: clamp(1rem, 1.7vw, 1.25rem);
	line-height: 1.35;
}

.nevtech-cycle-row > h3 span {
	color: var(--wp--preset--color--muted);
	font-weight: 400;
}

.nevtech-cycle-row > a {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	color: var(--wp--preset--color--muted);
	text-decoration: none;
}

.nevtech-directions-section {
	padding-block: clamp(4rem, 8vw, 8rem);
}

.nevtech-directions-heading {
	margin-block-end: clamp(3rem, 6vw, 5rem);
}

.nevtech-directions-heading .nevtech-section-title {
	max-width: 22ch;
}

.nevtech-directions-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.5rem);
}

.nevtech-direction-card {
	position: relative;
	grid-column: span 4;
	display: flex;
	min-height: 22rem;
	overflow: hidden;
	flex-direction: column;
	justify-content: flex-end;
	padding: clamp(1.5rem, 3vw, 2rem);
	color: var(--wp--preset--color--white);
	border: 0;
	border-radius: 1.5rem;
	background: #334155;
	box-shadow: none;
	transition:
		box-shadow 200ms ease,
		transform 200ms ease;
	isolation: isolate;
}

.nevtech-direction-card--wide {
	grid-column: span 6;
	min-height: 28rem;
}

.nevtech-direction-card--blue {
	background:
		radial-gradient(circle at 80% 15%, rgb(255 255 255 / 22%), transparent 18rem),
		linear-gradient(145deg, #4b8fd9, #20568e);
}

.nevtech-direction-card--graphite {
	background:
		radial-gradient(circle at 15% 20%, rgb(255 255 255 / 12%), transparent 16rem),
		linear-gradient(145deg, #56616d, #1d1d1f);
}

.nevtech-direction-card--soft {
	color: var(--wp--preset--color--foreground);
	background:
		linear-gradient(145deg, #f0f4f8, #dce7f0);
}

.nevtech-direction-card--ink {
	background:
		linear-gradient(145deg, #243143, #111827);
}

.nevtech-direction-card--light {
	color: var(--wp--preset--color--foreground);
	background:
		linear-gradient(145deg, #f7f7f7, #e7e7e7);
}

.nevtech-direction-card--mint {
	color: var(--wp--preset--color--foreground);
	background:
		linear-gradient(145deg, #edf7f5, #cfe6e1);
}

.nevtech-direction-card--service {
	background:
		linear-gradient(145deg, #5f7892, #2d465e);
}

.nevtech-direction-card--image {
	background: #e6e9ec;
}

.nevtech-direction-card--image::after {
	position: absolute;
	z-index: -1;
	inset: 0;
	background: linear-gradient(to top, rgb(14 24 34 / 88%), rgb(14 24 34 / 5%) 75%);
	content: "";
}

.nevtech-direction-card--image figure {
	position: absolute;
	z-index: -2;
	inset: 0;
	margin: 0;
}

.nevtech-direction-card--image img {
	width: 100%;
	height: 100%;
	padding: 1rem 1rem 7rem;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.nevtech-direction-card--photo {
	color: var(--wp--preset--color--white);
}

.nevtech-direction-card--photo::after {
	background: linear-gradient(to top, rgb(14 24 34 / 92%), rgb(14 24 34 / 5%) 78%);
}

.nevtech-direction-card--photo img {
	padding: 0;
	object-fit: cover;
	mix-blend-mode: normal;
}

.nevtech-direction-card--product img {
	padding: 1.25rem 1.25rem 8.5rem 42%;
	object-position: right top;
}

.nevtech-direction-card--product::after {
	background: linear-gradient(to top, rgb(14 24 34 / 72%), transparent 78%);
}

.nevtech-direction-card__index {
	position: absolute;
	z-index: -1;
	top: 1rem;
	right: 1.25rem;
	color: rgb(255 255 255 / 15%);
	font-size: clamp(5rem, 10vw, 9rem);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.08em;
}

.nevtech-direction-card--soft .nevtech-direction-card__index,
.nevtech-direction-card--light .nevtech-direction-card__index,
.nevtech-direction-card--mint .nevtech-direction-card__index {
	color: rgb(29 29 31 / 8%);
}

.nevtech-direction-card__label {
	align-self: flex-start;
	margin-block: 0 auto;
	padding: 0.45rem 0.75rem;
	color: var(--wp--preset--color--foreground) !important;
	border-radius: 999px;
	background: rgb(255 255 255 / 90%);
	font-size: 0.75rem;
	font-weight: 600;
}

.nevtech-direction-card > * {
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.nevtech-direction-card:hover,
.nevtech-direction-card:focus-within {
	box-shadow: 0 1.5rem 3.5rem rgb(29 29 31 / 16%);
	transform: translateY(-3px);
}

.nevtech-direction-card h3 {
	z-index: 1;
	margin-block: 0 0.75rem;
	color: inherit;
	font-size: clamp(1.5rem, 2.2vw, 2rem);
	line-height: 1.05;
	letter-spacing: -0.035em;
}

.nevtech-direction-card > p:not(.nevtech-direction-card__label) {
	font-size: 0.875rem;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.nevtech-direction-card h3 a::after {
	position: absolute;
	inset: 0;
	content: "";
}

.nevtech-direction-card h3 a {
	color: inherit;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.nevtech-direction-card p {
	z-index: 1;
	max-width: 32rem;
	color: rgb(255 255 255 / 78%);
	margin-block-end: 0;
}

.nevtech-direction-card--soft p:not(.nevtech-direction-card__label),
.nevtech-direction-card--light p:not(.nevtech-direction-card__label),
.nevtech-direction-card--mint p:not(.nevtech-direction-card__label) {
	color: var(--wp--preset--color--muted);
}

.nevtech-home-cta-section {
	padding-block: clamp(3rem, 7vw, 7rem);
}

.nevtech-home-cta {
	gap: 2rem;
	padding: clamp(2rem, 5vw, 4rem);
	border-radius: 1.75rem;
	background: var(--wp--preset--color--surface);
}

.nevtech-site-footer {
	border-top: 1px solid var(--nevtech-border);
}

.nevtech-site-footer .nevtech-footer__columns {
	display: grid;
	grid-template-columns: minmax(16rem, 1.4fr) repeat(2, minmax(12rem, 1fr));
	gap: clamp(2rem, 5vw, 4rem);
}

.nevtech-footer__brand p {
	max-width: 34rem;
}

.nevtech-footer__links {
	margin: 0;
	padding: 0;
	list-style: none;
}

.nevtech-footer__links a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}

.nevtech-footer__legal {
	border-top: 1px solid var(--nevtech-border);
}

.nevtech-footer-wordmark {
	padding-block: clamp(5rem, 10vw, 8rem);
}

.nevtech-footer-wordmark p {
	max-width: none !important;
	margin: 0;
	font-size: clamp(4rem, 12vw, 10rem);
	font-weight: 600;
	line-height: 0.76;
	letter-spacing: -0.075em;
	overflow-wrap: anywhere;
}

.nevtech-footer-wordmark span {
	color: #d8dade;
	overflow-wrap: anywhere;
}

.nevtech-catalog-main,
.nevtech-product-main {
	padding-block: clamp(2rem, 5vw, 4.5rem);
}

.nevtech-catalog-main .wp-block-query-title,
.nevtech-search-main .wp-block-query-title {
	overflow-wrap: anywhere;
}

.nevtech-catalog-layout {
	align-items: flex-start;
	gap: clamp(1.5rem, 3vw, 3rem);
}

.nevtech-catalog-sidebar {
	position: sticky;
	top: 1.5rem;
	padding: 1.25rem;
	border: 1px solid var(--nevtech-border);
	border-radius: 1rem;
	background: var(--wp--preset--color--surface);
}

.nevtech-catalog-sidebar h2 {
	margin-block-start: 0;
}

.nevtech-catalog-sidebar__links {
	margin: 0;
	padding: 0;
	list-style: none;
}

.nevtech-catalog-sidebar__links a {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding-block: 0.375rem;
	line-height: 1.3;
}

.nevtech-catalog-toolbar {
	min-height: 44px;
}

.nevtech-search-main {
	padding-block: clamp(2rem, 5vw, 4.5rem);
}

.nevtech-search-form {
	margin-block: 1.5rem clamp(2rem, 4vw, 3rem);
}

.nevtech-search-form .wp-block-search__inside-wrapper {
	max-width: 48rem;
}

.nevtech-search-form .wp-block-search__input,
.nevtech-search-form .wp-block-search__button {
	min-height: 48px;
}

.nevtech-search-results .wp-block-post-template {
	gap: clamp(1rem, 2.5vw, 1.75rem);
}

.nevtech-search-card {
	height: 100%;
	padding: clamp(1rem, 2vw, 1.5rem);
	border: 1px solid var(--nevtech-border);
	border-radius: 1rem;
	background: var(--wp--preset--color--white);
	box-shadow: var(--nevtech-shadow-sm);
}

.nevtech-search-card .wp-block-post-featured-image img {
	width: 100%;
	object-fit: contain;
	background: var(--wp--preset--color--surface);
	border-radius: 0.75rem;
}

.nevtech-search-empty {
	padding: clamp(1.5rem, 4vw, 3rem);
	border: 1px solid var(--nevtech-border);
	border-radius: 1rem;
}

.nevtech-page-main,
.nevtech-not-found-main {
	padding-block: clamp(2rem, 5vw, 4.5rem);
}

.nevtech-page-main > .wp-block-post-content {
	max-width: 80rem;
}

.nevtech-page-featured-image img {
	width: 100%;
	max-height: 36rem;
	object-fit: contain;
	background: var(--wp--preset--color--surface);
	border-radius: 1rem;
}

.nevtech-not-found {
	max-width: 56rem;
	padding: clamp(1.5rem, 5vw, 4rem);
	border: 1px solid var(--nevtech-border);
	border-radius: 1rem;
}

.nevtech-not-found > p:first-child {
	margin-block-end: 0;
	font-weight: 700;
}

.wc-block-product-template {
	gap: clamp(1rem, 2.5vw, 1.75rem);
}

.wc-block-product-template .wc-block-product {
	overflow: hidden;
	padding: clamp(1rem, 2vw, 1.5rem);
	border: 1px solid var(--nevtech-border);
	border-radius: 1rem;
	background: var(--wp--preset--color--white);
	box-shadow: var(--nevtech-shadow-sm);
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.wc-block-product-template .wc-block-product:hover {
	border-color: color-mix(in srgb, var(--wp--preset--color--accent) 45%, white);
	box-shadow: var(--nevtech-shadow-md);
	transform: translateY(-2px);
}

.wc-block-components-product-image img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	background: var(--wp--preset--color--surface);
	border-radius: 0.75rem;
}

.wc-block-components-product-title {
	text-wrap: balance;
}

.wp-block-button__link,
.wc-block-components-button,
.single_add_to_cart_button {
	min-height: 44px;
}

.nevtech-product-main .woocommerce-product-gallery img {
	object-fit: contain;
	background: var(--wp--preset--color--surface);
	border-radius: 1rem;
}

.nevtech-product-shell .woocommerce-breadcrumb {
	margin-block-end: clamp(1.5rem, 3vw, 2.5rem);
}

.nevtech-product-shell .woocommerce div.product {
	display: flow-root;
}

.nevtech-product-shell .woocommerce div.product div.images {
	padding: clamp(0.75rem, 2vw, 1.25rem);
	border: 1px solid var(--nevtech-border);
	border-radius: 1rem;
	background: var(--wp--preset--color--surface);
}

.nevtech-product-shell .woocommerce div.product div.summary {
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1px solid var(--nevtech-border);
	border-radius: 1rem;
	background: var(--wp--preset--color--white);
	box-shadow: var(--nevtech-shadow-sm);
}

.nevtech-product-shell .summary .product_title {
	margin-block: 0 1.25rem;
	text-wrap: balance;
}

.nevtech-product-shell .summary .price {
	color: var(--wp--preset--color--foreground);
	font-size: clamp(1.25rem, 2vw, 1.5rem);
	font-weight: 700;
}

.nevtech-product-shell .summary .woocommerce-product-details__short-description {
	color: var(--wp--preset--color--muted);
}

.nevtech-product-shell .summary .cart {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: center;
}

.nevtech-product-shell .summary .quantity .qty {
	min-height: 44px;
}

.nevtech-product-shell .summary .product_meta {
	display: grid;
	gap: 0.5rem;
	margin-block-start: 1.5rem;
	padding-block-start: 1rem;
	border-top: 1px solid var(--nevtech-border);
}

.nevtech-product-registration {
	padding: 0.875rem 1rem;
	border-left: 4px solid var(--wp--preset--color--accent);
	background: color-mix(in srgb, var(--wp--preset--color--accent) 8%, white);
	border-radius: 0.25rem 0.75rem 0.75rem 0.25rem;
}

.nevtech-product-shell .woocommerce-tabs {
	clear: both;
	padding-block-start: clamp(2rem, 5vw, 4rem);
}

.nevtech-product-shell .woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0;
	padding: 0 0 0.75rem;
	border-bottom: 1px solid var(--nevtech-border);
}

.nevtech-product-shell .woocommerce div.product .woocommerce-tabs ul.tabs::before,
.nevtech-product-shell .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.nevtech-product-shell .woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	display: none;
}

.nevtech-product-shell .woocommerce div.product .woocommerce-tabs ul.tabs li {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0.5rem;
	background: transparent;
}

.nevtech-product-shell .woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0.5rem 0.875rem;
}

.nevtech-product-shell .woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background: var(--wp--preset--color--surface);
}

.nevtech-product-shell .woocommerce-Tabs-panel {
	max-width: 60rem;
	padding-block-start: 1.5rem;
}

.nevtech-product-shell #review_form_wrapper {
	max-width: 48rem;
}

.nevtech-product-shell #review_form label {
	display: block;
}

.nevtech-product-shell #review_form input[type="text"],
.nevtech-product-shell #review_form input[type="email"],
.nevtech-product-shell #review_form textarea {
	width: 100%;
	min-height: 44px;
	padding: 0.75rem;
	border: 1px solid var(--nevtech-border);
	border-radius: 0.5rem;
	font: inherit;
}

.nevtech-product-shell #review_form textarea {
	min-height: 10rem;
}

.nevtech-product-shell .related.products {
	clear: both;
	padding-block-start: clamp(2rem, 5vw, 4rem);
}

@media (max-width: 900px) {
	.nevtech-site-header .wp-block-navigation__responsive-container-open {
		width: 44px;
		height: 44px;
		align-items: center;
		justify-content: center;
	}

	.nevtech-site-header .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex !important;
	}

	.nevtech-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}

	.nevtech-site-header .nevtech-header-cta {
		display: none !important;
	}
}

@media (min-width: 782px) {
	.nevtech-home-hero {
		padding-block: 0.625rem 6.1875rem;
	}

	.nevtech-cycle-section {
		padding-block: 7.1875rem 1.625rem;
	}

	.nevtech-cycle-section .nevtech-section-title {
		font-size: 2.375rem !important;
	}

	.nevtech-directions-section {
		padding-block: 7.1875rem 1.3125rem;
	}
}

@media (max-width: 781px) {
	.nevtech-site-header .wp-block-navigation__responsive-container.is-menu-open {
		padding: 1.25rem;
	}

	.nevtech-site-header .nevtech-header-cta {
		display: none !important;
	}

	.nevtech-home-hero {
		padding-block: 2.8125rem 5.6875rem;
	}

	.nevtech-home-hero__copy {
		top: 0;
	}

	.nevtech-home-hero__grid {
		row-gap: 3rem;
	}

	.nevtech-home-hero__title {
		font-size: clamp(2.25rem, 9vw, 3.5rem) !important;
	}

	.nevtech-section-title {
		font-size: 1.75rem !important;
	}

	.nevtech-cycle-section .nevtech-section-title {
		font-size: 1.5rem !important;
	}

	.nevtech-cycle-section {
		padding-block: 7.25rem 4rem;
	}

	.nevtech-directions-section {
		padding-block-start: 4rem;
	}

	.nevtech-catalog-main .wp-block-query-title,
	.nevtech-search-main .wp-block-query-title {
		font-size: clamp(1.875rem, 8vw, 2.25rem) !important;
	}

	.nevtech-home-hero__visual {
		min-height: 29rem;
	}

	.nevtech-home-hero__image img {
		padding: 1.25rem 1.25rem 10rem;
	}

	.nevtech-home-hero__visual--photo .nevtech-home-hero__image img {
		padding: 0;
	}

	.nevtech-home-hero__feature {
		right: 1rem;
		bottom: 1rem;
		left: 1rem;
		padding: 1.25rem;
	}

	.nevtech-hero-carousel__caption {
		right: 1rem;
		bottom: 1rem;
		left: 1rem;
		padding: 1.25rem;
	}

	.nevtech-hero-carousel__controls {
		right: 2rem;
		top: 2rem;
	}

	.nevtech-home-steps {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.25rem;
	}

	.nevtech-home-step {
		display: block;
	}

	.nevtech-home-step__number {
		font-size: 2rem;
	}

	.nevtech-home-step p:not(.nevtech-home-step__number) {
		margin: 0;
	}

	.nevtech-cycle-row {
		grid-template-columns: minmax(0, 1fr) 44px;
	}

	.nevtech-cycle-row > p {
		grid-column: 1 / -1;
	}

	.nevtech-directions-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.nevtech-direction-card,
	.nevtech-direction-card--wide {
		grid-column: auto;
		min-height: 22rem;
	}

	.nevtech-home-cta .wp-block-buttons {
		justify-content: flex-start;
	}

	.nevtech-footer-wordmark p {
		font-size: clamp(3.25rem, 15vw, 4.25rem);
	}

	.nevtech-site-footer .nevtech-footer__columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nevtech-footer__brand {
		grid-column: 1 / -1;
	}

	.nevtech-catalog-sidebar {
		position: static;
	}

	.nevtech-catalog-sidebar__links {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0 1rem;
	}

	.wc-block-product-template__responsive {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.nevtech-search-results .wp-block-post-template {
		grid-template-columns: minmax(0, 1fr);
	}

	.nevtech-direction-card:hover,
	.nevtech-direction-card:focus-within,
	.wc-block-product-template .wc-block-product:hover {
		transform: none;
	}

	.nevtech-product-main .woocommerce div.product div.images,
	.nevtech-product-main .woocommerce div.product div.summary {
		float: none;
		width: 100%;
	}

	.nevtech-product-shell .woocommerce div.product div.summary {
		margin-block-start: 1.5rem;
	}
}

@media (max-width: 360px) {
	.nevtech-site-header .wp-block-site-title {
		gap: 0.4rem;
		font-size: 0.875rem;
	}

	.nevtech-site-header .nevtech-header-search {
		display: none;
	}

	.nevtech-footer-wordmark p {
		font-size: 3rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
