/* NOVA 1.0.1 — shared presentation; responsive rules grouped by breakpoint. */
:root {
	--nova-navy:var(--wp--preset--color--contrast);
	--nova-orange:var(--wp--preset--color--accent);
	--nova-muted:var(--wp--preset--color--muted);
	--nova-line:var(--wp--preset--color--line);
	--nova-sand:var(--wp--preset--color--sand);
}

* {
	box-sizing:border-box;
}

html {
	scroll-behavior:smooth;
	scroll-padding-top:20px;
}

body {
	margin:0;
	-webkit-font-smoothing:antialiased;
}

a {
	transition:color .15s;
}

button,input,select,textarea {
	font:inherit;
}

button,a,input,select,textarea {
	touch-action:manipulation;
}

:focus-visible {
	outline:3px solid var(--nova-navy);
	outline-offset:4px;
}

img {
	max-width:100%;
	height:auto;
}

h1,h2,h3,p {
	overflow-wrap:break-word;
}

.wp-site-blocks {
	padding:0;
}

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

.novasn-demo-strip {
	background:var(--nova-navy);
	color:var(--wp--preset--color--base);
	padding:9px 20px;
}

.novasn-demo-strip p {
	font-size:10px;
	letter-spacing:.1em;
	margin:0;
}

.wp-block-site-title {
	font-size:27px!important;
	letter-spacing:-1.5px;
	font-weight:800!important;
	margin:0;
}

.wp-block-site-title a {
	text-decoration:none!important;
}

.wp-block-search__inside-wrapper {
	background:var(--wp--preset--color--secondary);
	border:1px solid transparent;
	border-radius:8px;
	padding:4px 10px;
}

.wp-block-search__input {
	background:transparent;
	border:0!important;
	font-size:12px;
	padding:8px!important;
	min-width:0;
}

.wp-block-search__button {
	background:transparent;
	color:var(--nova-navy);
	margin:0;
	padding:3px;
	border:0;
}

.novasn-main {
	padding:40px 32px 76px;
	min-height:60vh;
}

.home .novasn-main {
	padding-top:25px;
}

.novasn-hero {
	background:var(--nova-sand);
	border-radius:18px;
	overflow:hidden;
	gap:0!important;
	margin-bottom:22px!important;
	align-items:stretch!important;
}

.novasn-hero-copy {
	padding:49px 0 45px 45px;
	z-index:1;
}

.novasn-eyebrow {
	font-size:10px!important;
	font-weight:800;
	letter-spacing:.15em;
	text-transform:uppercase;
	color:var(--nova-muted);
	margin-bottom:19px!important;
}

.novasn-hero h1 {
	font-size:clamp(35px,4.3vw,60px);
	font-weight:800;
	line-height:1.06;
	letter-spacing:-.06em;
	margin:0 0 20px;
	max-width:520px;
}

.novasn-hero h1 em {
	font-style:normal;
	color:var(--nova-muted);
}

.novasn-hero-copy>p:not(.novasn-eyebrow) {
	font-size:13px;
	line-height:1.8;
	max-width:330px;
	color:var(--nova-muted);
}

.novasn-hero .wp-block-buttons {
	margin-top:25px;
}

.wp-block-button__link,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.novasn-button {
	font-size:12px;
	font-weight:800;
	letter-spacing:.01em;
	border:0;
	border-radius:7px;
	padding:15px 22px;
	background:var(--nova-orange);
	color:var(--nova-navy);
	text-decoration:none;
	display:inline-block;
	cursor:pointer;
	line-height:1.4;
}

.woocommerce a.button:hover,.woocommerce button.button:hover,.novasn-button:hover {
	background:var(--nova-navy);
	color:var(--wp--preset--color--base);
}

.novasn-hero-image {
	height:100%;
	margin:0;
}

.novasn-hero-image img {
	width:100%;
	height:100%;
	min-height:380px;
	object-fit:cover;
	mix-blend-mode:multiply;
}

.novasn-benefit-strip {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	padding:17px 8px;
	border-bottom:1px solid var(--nova-line);
	gap:20px;
	font-size:11px;
	text-align:center;
	margin-bottom:58px;
}

.novasn-benefit-strip b {
	font-size:13px;
	margin-right:7px;
}

.novasn-section-head {
	display:flex;
	align-items:end;
	justify-content:space-between;
	margin-bottom:25px;
	gap:15px;
}

.novasn-section-head h2 {
	font-size:28px;
	margin:0;
	line-height:1.2;
	font-weight:800;
}

.novasn-section-head p {
	font-size:12px;
	color:var(--nova-muted);
	margin:6px 0 0;
}

.novasn-section-head>a {
	font-size:11px;
	font-weight:700;
	white-space:nowrap;
	text-decoration:none;
}

.novasn-category-grid {
	gap:18px!important;
	margin-bottom:65px;
}

.novasn-category {
	border-radius:12px;
	overflow:hidden;
	background:var(--wp--preset--color--secondary);
}

.novasn-category figure {
	margin:0;
}

.novasn-category img {
	width:100%;
	aspect-ratio:1.3;
	object-fit:cover;
	display:block;
	transition:transform .3s;
}

.novasn-category:hover img {
	transform:scale(1.035);
}

.novasn-category p {
	padding:15px 18px;
	margin:0;
	font-size:12px;
	font-weight:800;
	display:flex;
	justify-content:space-between;
}

.novasn-category a {
	text-decoration:none;
}

.novasn-selection {
	margin-bottom:64px;
}

.woocommerce ul.products {
	display:grid!important;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:24px;
	margin:0 0 40px!important;
	padding:0;
	list-style:none;
}

.woocommerce ul.products:before,.woocommerce ul.products:after {
	display:none!important;
}

.woocommerce ul.products li.product {
	width:auto!important;
	float:none!important;
	margin:0!important;
	padding-bottom:10px;
}

.woocommerce ul.products li.product a img {
	border-radius:12px;
	aspect-ratio:1;
	object-fit:cover;
	margin:0 0 16px;
	background:var(--nova-sand);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size:13px!important;
	font-weight:750;
	padding:0!important;
	line-height:1.5;
	letter-spacing:-.01em;
}

.woocommerce ul.products li.product .price {
	color:var(--nova-navy);
	font-size:14px;
	font-weight:800;
	margin-top:9px;
	display:block;
}

.woocommerce ul.products li.product .button {
	margin-top:8px;
	background:var(--wp--preset--color--secondary);
	border:1px solid var(--nova-line);
	font-size:10px;
	padding:9px 14px;
}

.woocommerce ul.products li.product .button:hover {
	background:var(--nova-navy);
	color:var(--wp--preset--color--base);
}

.woocommerce ul.products li.product .star-rating {
	display:none;
}

.novasn-feature {
	background:var(--nova-navy);
	border-radius:16px;
	color:var(--wp--preset--color--base);
	overflow:hidden;
	gap:0!important;
	margin-bottom:66px!important;
}

.novasn-feature-image img {
	display:block;
	width:100%;
	aspect-ratio:1;
	object-fit:cover;
}

.novasn-feature-image {
	margin:0;
}

.novasn-feature-copy {
	padding:38px!important;
	display:flex;
	flex-direction:column;
	justify-content:center;
}

.novasn-feature .novasn-eyebrow {
	color:var(--nova-orange);
}

.novasn-feature h2 {
	font-size:36px;
	line-height:1.12;
	margin:0 0 15px;
	letter-spacing:-.045em;
}

.novasn-feature p,.novasn-feature li {
	font-size:12px;
	line-height:1.9;
}

.novasn-feature ul {
	padding-left:18px;
	margin-bottom:23px;
}

.novasn-feature .wp-block-button__link:hover {
	background:var(--wp--preset--color--base);
	color:var(--nova-navy);
}

.novasn-steps {
	gap:30px!important;
	margin:30px 0 60px;
}

.novasn-step {
	border-top:1px solid var(--nova-line);
	padding-top:23px;
}

.novasn-step strong {
	display:block;
	color:var(--nova-muted);
	font-size:11px;
	letter-spacing:.06em;
	margin-bottom:15px;
}

.novasn-step h3 {
	font-size:17px;
	letter-spacing:-.02em;
	margin:0 0 10px;
}

.novasn-step p {
	font-size:12px;
	color:var(--nova-muted);
}

.novasn-service {
	padding:26px 30px;
	background:var(--wp--preset--color--secondary);
	border-radius:12px;
	margin-bottom:60px;
}

.novasn-service p {
	font-size:12px;
}

.novasn-faq {
	max-width:800px!important;
	margin:auto;
}

.novasn-faq h2 {
	text-align:center;
	font-size:30px;
	margin-bottom:25px;
}

.novasn-faq details {
	border-bottom:1px solid var(--nova-line);
	padding:19px 0;
	font-size:13px;
}

.novasn-faq summary {
	cursor:pointer;
	font-weight:700;
}

.novasn-faq details p {
	color:var(--nova-muted);
	font-size:12px;
	line-height:1.8;
}

.novasn-footer {
	background:var(--nova-navy);
	color:var(--wp--preset--color--base);
	padding:50px 32px 24px;
}

.novasn-footer .wp-block-columns {
	gap:70px;
}

.novasn-footer a {
	color:inherit!important;
	text-decoration:none;
}

.novasn-footer a:hover {
	text-decoration:underline;
}

.novasn-footer p {
	font-size:11px;
	max-width:320px;
	line-height:1.9;
}

.novasn-footer h3 {
	font-size:12px;
	letter-spacing:0;
	margin:3px 0 20px;
}

.novasn-footer-bottom {
	border-top:1px solid #ffffff25;
	max-width:none!important;
	padding-top:22px;
	margin-top:30px!important;
	font-size:10px!important;
}

.woocommerce-breadcrumb {
	font-size:11px!important;
	color:var(--nova-muted)!important;
	margin-bottom:30px!important;
}

.woocommerce-products-header__title {
	font-size:40px;
	letter-spacing:-.05em;
}

.woocommerce-result-count,.woocommerce-ordering {
	font-size:12px;
}

.woocommerce-ordering select {
	border:1px solid var(--nova-line);
	padding:9px;
	border-radius:6px;
}

.woocommerce div.product .product_title {
	font-size:38px;
	line-height:1.15;
	font-weight:800;
	letter-spacing:-.04em;
}

.woocommerce div.product p.price {
	font-size:24px;
	color:var(--nova-navy);
	font-weight:800;
}

.woocommerce-product-details__short-description {
	font-size:13px;
	color:var(--nova-muted);
}

.woocommerce div.product div.images img {
	border-radius:16px;
}

.woocommerce div.product form.cart .button {
	float:none;
}

.woocommerce div.product .woocommerce-tabs {
	padding-top:30px;
}

.woocommerce div.product .woocommerce-tabs .panel {
	font-size:14px;
	line-height:1.9;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background:transparent;
	border:0;
	font-size:12px;
}

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

.woocommerce .quantity .qty {
	min-height:44px;
	border:1px solid var(--nova-line);
	border-radius:7px;
	width:65px;
}

.woocommerce .stock {
	font-size:12px!important;
}

.novasn-demo-note {
	font-size:11px!important;
	padding:12px 16px;
	background:var(--wp--preset--color--secondary);
	border-left:3px solid var(--nova-orange);
	margin:15px 0 25px;
	color:var(--nova-muted);
}

.novasn-quick {
	clear:both;
	border:1px solid var(--nova-line);
	border-radius:16px;
	padding:25px;
	margin:25px 0 35px;
	background:var(--wp--preset--color--base);
}

.novasn-quick h2 {
	font-size:23px;
	margin:0 0 8px;
}

.novasn-quick>p {
	font-size:12px;
	color:var(--nova-muted);
}

.novasn-fields {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:14px;
}

.novasn-fields label,.novasn-track label {
	display:flex;
	flex-direction:column;
	gap:6px;
	font-size:12px;
	font-weight:650;
}

.novasn-fields input,.novasn-fields select,.novasn-track input,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea {
	padding:12px;
	border:1px solid var(--nova-line);
	border-radius:6px;
	background:var(--wp--preset--color--base);
	color:var(--nova-navy);
	width:100%;
	min-height:44px;
}

.novasn-wide {
	grid-column:1/-1;
}

.novasn-quick-total {
	font-size:14px;
	font-weight:800;
	white-space:pre-line;
	padding:18px 0;
}

.novasn-quick-actions {
	display:flex;
	gap:12px;
	flex-wrap:wrap;
}

.novasn-quick-actions button {
	min-height:45px;
}

.novasn-secondary {
	background:var(--wp--preset--color--secondary);
	border:1px solid var(--nova-line);
}

.novasn-status {
	font-size:12px;
	white-space:pre-line;
	margin:15px 0;
}

.novasn-status[data-error="true"] {
	color:#9c2920;
}

.novasn-sticky {
	display:none;
}

.novasn-track {
	max-width:600px;
	padding:26px;
	background:var(--wp--preset--color--secondary);
	border-radius:12px;
}

.novasn-track label {
	margin-bottom:18px;
}

.woocommerce-info,.woocommerce-message,.woocommerce-error {
	border-top-color:var(--nova-orange);
	font-size:13px;
}

.woocommerce table.shop_table {
	font-size:13px;
}

.woocommerce #payment {
	background:var(--wp--preset--color--secondary);
}

.woocommerce #payment ul.payment_methods {
	font-size:13px;
}

.woocommerce .col2-set {
	width:100%;
}

.woocommerce-checkout h3 {
	font-size:23px;
}

.woocommerce form .form-row label {
	font-size:12px;
}

.woocommerce .woocommerce-customer-details address {
	font-size:13px;
}

.novasn-filter {
	display:flex;
	gap:9px;
	flex-wrap:wrap;
	margin:20px 0 28px;
}

.novasn-filter a {
	font-size:11px;
	padding:8px 12px;
	border:1px solid var(--nova-line);
	border-radius:50px;
	text-decoration:none;
}

.novasn-filter a:hover {
	background:var(--nova-navy);
	color:var(--wp--preset--color--base);
}

.novasn-track-output {
	white-space:pre-line;
	margin-top:15px;
	font-size:13px;
}

.novasn-hidden {
	display:none!important;
}

.woocommerce div.product form.cart .reset_variations {
	color:var(--nova-navy);
	opacity:1!important;
	font-size:12px;
	font-weight:700;
}

.woocommerce button.button.disabled,.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled] {
	opacity:1;
	background:var(--wp--preset--color--secondary);
	color:var(--nova-muted);
	cursor:not-allowed;
}

.woocommerce ul.products li.product>a {
	text-decoration:none;
}

.woocommerce-result-count {
	display:inline-block;
}

.woocommerce-ordering {
	float:right;
}

.woocommerce .added_to_cart {
	font-size:11px;
	display:block;
	margin-top:9px;
}

.woocommerce div.product .woocommerce-product-gallery {
	opacity:1!important;
}

.woocommerce-product-gallery__wrapper {
	margin:0;
}

.woocommerce-product-gallery:not(:has(.flex-viewport)) .woocommerce-product-gallery__image:not(:first-child) {
	display:none!important;
}

.woocommerce-product-gallery__image>a {
	display:block;
	aspect-ratio:1;
}

.woocommerce-product-gallery__image>a>img {
	aspect-ratio:1;
	object-fit:contain;
}

.woocommerce-product-gallery:has(.woocommerce-product-gallery__image:nth-child(2)) {
	aspect-ratio:4/5;
}

.woocommerce-product-gallery .flex-viewport {
	aspect-ratio:1;
	height:auto!important;
}

.woocommerce-product-gallery .flex-control-thumbs {
	aspect-ratio:4/1;
}

/* Header: all controls participate in the grid; only the native dialog is fixed. */
.novasn-header { padding: 0 32px; border-bottom: 1px solid var(--nova-line); }
.novasn-header .novasn-header-top {
 display: grid; grid-template-columns: auto minmax(0, 1fr) auto;
 grid-template-areas: "brand search cart" "menu menu menu";
 column-gap: 32px; row-gap: 0; padding: 24px 0 0; align-items: center;
}
.novasn-header-top > * { min-width: 0; margin: 0 !important; }
.novasn-header-top > .wp-block-site-title { grid-area: brand; line-height: 1.25; }
.novasn-header-top > .wp-block-search { grid-area: search; width: min(100%, 430px); justify-self: center; }
.novasn-header .wp-block-search__input { font-size: 14px; min-height: 36px; }
.novasn-header-top > .novasn-cart-link { grid-area: cart; justify-self: end; }
.novasn-cart-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; min-width: 44px; font-size: 13px; font-weight: 700; text-decoration: none !important; }
.novasn-cart-link svg { flex: 0 0 22px; }
.novasn-cart-count { background: var(--nova-navy); color: var(--wp--preset--color--base); border-radius: 50%; padding: 2px 7px; min-width: 24px; text-align: center; font-size: 12px; }
.novasn-header nav.novasn-nav { grid-area: menu; position: static; min-width: 0; font-size: 14px; padding: 16px 0 12px; }
.novasn-nav .wp-block-navigation__container { gap: 24px; }
.novasn-nav .wp-block-navigation-item__content { padding: 8px 0; }
.novasn-nav .wp-block-navigation__responsive-container-open,
.novasn-nav .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
.novasn-nav .wp-block-navigation__responsive-container-close { display: flex; }
.novasn-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--base); color: var(--nova-navy); padding: 24px; animation-name: novasn-menu-enter; }
.novasn-nav .is-menu-open .wp-block-navigation-item__content { min-height: 44px; padding: 10px 0; font-size: 18px; line-height: 1.4; }
.novasn-nav .is-menu-open .wp-block-navigation__container { flex-direction: column; flex-wrap: nowrap; gap: 8px; align-items: stretch; width: 100%; height: auto; }
.novasn-nav .is-menu-open .wp-block-navigation__responsive-container-close { position: fixed; top: 16px; right: 16px; z-index: 2; }
.novasn-header .wp-block-search__inside-wrapper { min-width: 0; }
.novasn-main > *, .novasn-main .wp-block-column { min-width: 0; }
.novasn-category-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.novasn-category-grid > .wp-block-column { min-width: 0; width: auto; }
.novasn-category p { font-size: 14px; }
.woocommerce ul.products li.product .button { min-height: 44px; font-size: 12px; padding: 12px 14px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 14px !important; }
.novasn-fields input, .novasn-fields select, .novasn-track input, .woocommerce input.input-text, .woocommerce-page form .form-row input.input-text, .woocommerce-page form .form-row select, .woocommerce-page form .form-row textarea.input-text, .woocommerce-ordering select, .woocommerce .variations select { font-size: 16px; }

/* An opacity-only fade keeps the fixed close control anchored while the dialog scrolls. */
@keyframes novasn-menu-enter { from { opacity: 0; } to { opacity: 1; } }

@media (min-width: 768px) {
 .novasn-hero.wp-block-columns, .novasn-feature.wp-block-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .novasn-steps.wp-block-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
 .novasn-footer .wp-block-columns { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 40px; }
 .novasn-hero-copy { padding: 40px 24px 40px 36px; }
 .novasn-feature-copy { padding: 32px !important; }
}
@media (min-width: 1024px) {
 .novasn-header nav.novasn-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: block; }
 .novasn-header nav.novasn-nav .wp-block-navigation__responsive-container-open { display: none; }
 .woocommerce-checkout #customer_details { width: 55%; float: left; }
 .woocommerce-checkout #order_review_heading, .woocommerce-checkout #order_review { width: 40%; float: right; }
 .woocommerce-checkout form.checkout::after { content: ""; display: block; clear: both; }
 .woocommerce-checkout .col-1, .woocommerce-checkout .col-2 { width: 100% !important; float: none !important; }
 .woocommerce-checkout .novasn-demo-note { clear: both; }
}
@media (max-width: 1023px) {
 .novasn-header { padding: 0 20px; }
 .novasn-header .novasn-header-top {
  grid-template-columns: 44px minmax(0, 1fr) auto;
  grid-template-areas: "menu brand cart" "search search search";
  gap: 12px; padding: 16px 0;
 }
 .novasn-header-top > .wp-block-site-title { font-size: clamp(18px, 2.8vw, 26px) !important; letter-spacing: -1px; }
 .novasn-header-top > .wp-block-search { width: 100%; }
 .novasn-header .wp-block-search__input { font-size: 16px; }
 .novasn-header nav.novasn-nav { padding: 0; width: 44px; height: 44px; font-size: 16px; }
 .novasn-header nav.novasn-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
 .novasn-header nav.novasn-nav .wp-block-navigation__responsive-container-open { display: flex !important; padding: 10px; }
 .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .woocommerce-checkout #customer_details, .woocommerce-checkout #order_review_heading, .woocommerce-checkout #order_review, .woocommerce-checkout .col-1, .woocommerce-checkout .col-2 { width: 100% !important; float: none !important; }
 .novasn-fields { grid-template-columns: 1fr; }
 .novasn-wide { grid-column: auto; }
 .novasn-fields label, .novasn-track label, .woocommerce form .form-row label { font-size: 14px; }
 .novasn-quick-actions > button { flex: 1 1 200px; }
}

@media (max-width: 767px) {
 .wp-block-site-title{font-size:23px!important}
 .novasn-main{padding:28px 20px 50px}
 .home .novasn-main{padding-top:20px}
 .novasn-hero{display:flex;flex-direction:column!important}
 .novasn-hero-copy{padding:30px 25px 4px!important}
 .novasn-eyebrow{font-size:9px!important;margin-bottom:13px!important}
 .novasn-hero h1{font-size:39px;max-width:340px}
 .novasn-hero-copy>p:not(.novasn-eyebrow){max-width:300px}
 .novasn-hero .wp-block-buttons{margin-top:18px}
 .novasn-hero-image img{min-height:0;height:210px;object-position:50% 60%}
 .novasn-benefit-strip{grid-template-columns:1fr;gap:9px;padding:15px 0;margin-bottom:36px;text-align:left;font-size:10px}
 .novasn-benefit-strip b{font-size:11px}
 .novasn-section-head h2{font-size:23px}
 .novasn-section-head>a{font-size:10px}
 .novasn-category-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:12px!important;margin-bottom:40px}
 .woocommerce ul.products li.product a img{margin-bottom:10px}
 .novasn-selection{margin-bottom:40px}
 .novasn-feature{margin-bottom:40px!important}
 .novasn-feature-copy{padding:28px!important}
 .novasn-feature h2{font-size:31px}
 .novasn-feature-image img{aspect-ratio:1.3}
 .novasn-steps{gap:22px!important;margin-bottom:38px}
 .novasn-step{padding-top:17px}
 .novasn-step strong{margin-bottom:9px}
 .novasn-service{padding:20px;margin-bottom:40px}
 .novasn-faq h2{font-size:25px}
 .novasn-footer{padding:35px 20px 25px}
 .novasn-footer .wp-block-columns{gap:25px}
 .novasn-footer .wp-block-column:first-child{margin-bottom:5px}
 .novasn-footer p{max-width:none}
 .woocommerce div.product .product_title{font-size:30px}
 .novasn-quick{padding:20px 16px}
 .novasn-sticky{display:block;position:fixed;bottom:12px;left:20px;right:20px;z-index:15;box-shadow:0 4px 20px #14213d25;text-align:center}
 .novasn-sticky[hidden]{display:none}
 .single-product .novasn-footer{padding-bottom:85px}
 .woocommerce-result-count{float:none!important}
 .woocommerce-ordering{float:none!important;margin-bottom:24px!important}
 .novasn-track{padding:20px}
 .novasn-demo-strip{padding:8px 10px}
 .novasn-demo-strip p{font-size:8px;letter-spacing:.035em}
 .woocommerce table.shop_table{font-size:12px}

 .novasn-category p { font-size: 13px; padding: 12px; }
 .novasn-section-head { display: block; }
 .novasn-section-head p { margin-top: 10px; font-size: 13px; }
 .novasn-hero-copy > p:not(.novasn-eyebrow), .novasn-step p, .novasn-service p, .novasn-faq details p { font-size: 14px; }
 .novasn-feature p, .novasn-feature li { font-size: 14px; }
 .woocommerce ul.products li.product .price { font-size: 15px; }
 .woocommerce div.product form.cart .variations { width: 100%; }
 .woocommerce table.shop_table { max-width: 100%; }
}
@media (max-width: 479px) {
 .novasn-cart-label { display: none; }
 .novasn-cart-link { gap: 5px; }
 .novasn-header { padding-inline: 16px; }
 .novasn-header .novasn-header-top { column-gap: 8px; }
}
@media (max-width: 359px) {
 .woocommerce ul.products { grid-template-columns: minmax(0, 1fr); }
 .novasn-main { padding-inline: 16px; }
 .novasn-hero-copy { padding-inline: 20px !important; }
 .novasn-hero h1 { font-size: 33px; }
 .novasn-nav .wp-block-navigation__responsive-container.is-menu-open { padding: 16px; }
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
