:root {
	--ndk-container: 1452px;
	--ndk-gutter: clamp(16px, 2.45vw, 35px);
	--ndk-primary: #f16b34;
	--ndk-primary-hover: #d85420;
	--ndk-primary-soft: #fff1eb;
	--ndk-ink: #111111;
	--ndk-text: #111111;
	--ndk-muted: #6d6d6d;
	--ndk-border: #e5e5e5;
	--ndk-border-strong: #aaaaaa;
	--ndk-surface: #ffffff;
	--ndk-soft: #f7f7f7;
	--ndk-dark: #171717;
	--ndk-success: #237a45;
	--ndk-error: #b42318;
	--ndk-radius-sm: 8px;
	--ndk-radius-md: 14px;
	--ndk-radius-lg: 24px;
	--ndk-pill: 999px;
	--ndk-shadow: 0 12px 36px rgba(17, 17, 17, .08);
	--ndk-heading: Lexend, "Segoe UI", Arial, sans-serif;
	--ndk-body: Outfit, "Segoe UI", Arial, sans-serif;
	--ndk-transition: 180ms ease;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body.ndk-storefront { margin: 0; overflow-x: clip; background: var(--ndk-surface); color: var(--ndk-text); font-family: var(--ndk-body); font-size: 16px; font-weight: 300; line-height: 1.6; -webkit-font-smoothing: antialiased; }
body.ndk-lock-scroll { overflow: hidden; }
body.ndk-storefront a { color: inherit; text-decoration: none; }
body.ndk-storefront a:hover { color: var(--ndk-primary); }
body.ndk-storefront img { max-width: 100%; height: auto; }
body.ndk-storefront h1, body.ndk-storefront h2, body.ndk-storefront h3, body.ndk-storefront h4, body.ndk-storefront h5, body.ndk-storefront h6 { margin-top: 0; color: var(--ndk-ink); font-family: var(--ndk-heading); font-weight: 600; line-height: 1.28; letter-spacing: -.025em; }
body.ndk-storefront h1 { font-size: clamp(2rem, 4vw, 3rem); }
body.ndk-storefront h2 { font-size: clamp(1.65rem, 2.2vw, 1.8rem); }
body.ndk-storefront h3 { font-size: clamp(1.15rem, 2vw, 1.425rem); }
body.ndk-storefront p { margin-top: 0; }
body.ndk-storefront :where(button, input, select, textarea) { font: inherit; }
body.ndk-storefront :where(button, .button, input[type="submit"]) { min-height: 44px; }
body.ndk-storefront :focus-visible { outline: 3px solid rgba(241, 107, 52, .48); outline-offset: 3px; }
.ndk-container { width: min(calc(100% - (2 * var(--ndk-gutter))), var(--ndk-container)); margin-inline: auto; }
.grid-container { max-width: var(--ndk-container); }
.site-header { display: none; }
.site-content { padding: clamp(34px, 5vw, 70px) 0; }
.home .site-content { max-width: none; padding: 0; }
.home .site-content > * { width: 100%; }
.home #page { width: 100%; max-width: none; }
.inside-article { box-shadow: none; }
.ndk-section { padding-block: clamp(58px, 7vw, 100px); }
.ndk-section-heading { margin-bottom: clamp(28px, 4vw, 48px); }
.ndk-section-heading h2 { margin-bottom: 0; }
.ndk-section-heading--center { max-width: 760px; margin-right: auto; margin-left: auto; text-align: center; }
.ndk-section-heading--row { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.ndk-eyebrow { margin-bottom: 8px; color: var(--ndk-primary); font-size: .78rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.ndk-icon { display: inline-block; width: 24px; height: 24px; flex: 0 0 auto; vertical-align: middle; }
.ndk-button, body.ndk-storefront .button, body.ndk-storefront button.button, body.ndk-storefront input.button, body.ndk-storefront input[type="submit"] { display: inline-flex; min-height: 47px; align-items: center; justify-content: center; gap: 9px; padding: 10px 29px; border: 1px solid var(--ndk-primary); border-radius: var(--ndk-pill); background: var(--ndk-primary); box-shadow: none; color: #fff; font-size: 16px; font-weight: 400; line-height: 1.3; text-align: center; text-transform: none; transition: color var(--ndk-transition), background var(--ndk-transition), border-color var(--ndk-transition), transform var(--ndk-transition); }
.ndk-button:hover, body.ndk-storefront .button:hover, body.ndk-storefront button.button:hover, body.ndk-storefront input.button:hover, body.ndk-storefront input[type="submit"]:hover { border-color: var(--ndk-primary-hover); background: var(--ndk-primary-hover); color: #fff; transform: translateY(-1px); }
.ndk-button--small { min-height: 42px; padding: 8px 20px; font-size: 15px; }
.ndk-button--light { border-color: #fff; background: #fff; color: var(--ndk-dark); }
.ndk-button--light:hover { border-color: var(--ndk-primary); background: var(--ndk-primary); color: #fff; }
.ndk-text-link { display: inline-flex; align-items: center; gap: 7px; color: var(--ndk-ink); font-weight: 600; }
.ndk-text-link .ndk-icon { width: 18px; height: 18px; transition: transform var(--ndk-transition); }
.ndk-text-link:hover .ndk-icon { transform: translateX(4px); }
.ndk-prose { max-width: 820px; }
.ndk-prose a { color: var(--ndk-primary); text-decoration: underline; text-underline-offset: 3px; }

body.ndk-storefront :where(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="search"], input[type="number"], select, textarea) { width: 100%; min-height: 50px; padding: 10px 14px; border: 1px solid #cfcfcf; border-radius: var(--ndk-radius-sm); background: #fff; color: var(--ndk-ink); box-shadow: none; transition: border-color var(--ndk-transition), box-shadow var(--ndk-transition); }
body.ndk-storefront :where(input, select, textarea):focus { border-color: var(--ndk-primary); box-shadow: 0 0 0 3px rgba(241, 107, 52, .14); outline: 0; }
body.ndk-storefront label { color: var(--ndk-ink); font-weight: 600; }
.required { color: var(--ndk-error); }

.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner { margin: 0 0 24px; padding: 16px 18px 16px 50px; border: 1px solid var(--ndk-border); border-top: 0; border-left: 4px solid var(--ndk-success); border-radius: var(--ndk-radius-sm); background: #f2fbf5; color: var(--ndk-ink); box-shadow: none; }
.woocommerce-info { border-left-color: #2878b8; background: #f2f8fc; }
.woocommerce-error { border-left-color: var(--ndk-error); background: #fff4f3; }
.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before { top: 16px; left: 18px; color: inherit; }
.woocommerce a.remove { display: inline-grid; width: 34px; height: 34px; place-items: center; border: 1px solid var(--ndk-border); border-radius: 50%; color: var(--ndk-error) !important; font-size: 20px; line-height: 1; }
.woocommerce a.remove:hover { border-color: var(--ndk-error); background: var(--ndk-error); color: #fff !important; }
.woocommerce .blockUI.blockOverlay::before { width: 32px; height: 32px; margin: -16px 0 0 -16px; }
body.ndk-storefront .button:disabled, body.ndk-storefront .button.disabled, body.ndk-storefront button:disabled { cursor: not-allowed; opacity: .52; transform: none; }

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

/* WooCommerce paints .alt buttons purple with .woocommerce button.button.alt (0,3,1).
   These selectors carry (0,4,1) so the storefront colour wins without !important. */
body.ndk-storefront.woocommerce .button.alt,
body.ndk-storefront.woocommerce button.button.alt,
body.ndk-storefront.woocommerce a.button.alt,
body.ndk-storefront.woocommerce input.button.alt,
body.ndk-storefront.woocommerce-page .button.alt,
body.ndk-storefront.woocommerce-page button.button.alt,
body.ndk-storefront.woocommerce-page a.button.alt,
body.ndk-storefront.woocommerce-page input.button.alt,
body.ndk-storefront.woocommerce #respond input#submit.alt,
body.ndk-storefront .single_add_to_cart_button.button,
body.ndk-storefront .checkout-button.button,
body.ndk-storefront .wc-block-components-button { border: 1px solid var(--ndk-primary); background: var(--ndk-primary); color: #fff; }
body.ndk-storefront.woocommerce .button.alt:hover,
body.ndk-storefront.woocommerce button.button.alt:hover,
body.ndk-storefront.woocommerce a.button.alt:hover,
body.ndk-storefront.woocommerce input.button.alt:hover,
body.ndk-storefront.woocommerce-page .button.alt:hover,
body.ndk-storefront.woocommerce-page button.button.alt:hover,
body.ndk-storefront.woocommerce-page a.button.alt:hover,
body.ndk-storefront.woocommerce-page input.button.alt:hover,
body.ndk-storefront.woocommerce #respond input#submit.alt:hover,
body.ndk-storefront .single_add_to_cart_button.button:hover,
body.ndk-storefront .checkout-button.button:hover,
body.ndk-storefront .wc-block-components-button:hover { border-color: var(--ndk-primary-hover); background: var(--ndk-primary-hover); color: #fff; }
