/* Neelkanth Opticals — navy & gold */
:root {
	--radius: .375rem;
	--navy-deep: oklch(0.17 0.06 275);
	--navy: oklch(0.25 0.09 275);
	--gold: oklch(0.76 0.13 85);
	--gold-light: oklch(0.88 0.1 90);
	--cream: oklch(0.975 0.015 85);
	--whatsapp: oklch(0.62 0.17 150);
	--card: #fff;
	--secondary: oklch(0.94 0.025 85);
	--muted-fg: oklch(0.45 0.04 275);
	--border: oklch(0.86 0.04 85);
	--gradient-navy: linear-gradient(160deg, var(--navy-deep) 0%, var(--navy) 100%);
	--gradient-gold: linear-gradient(135deg, oklch(0.68 0.12 75) 0%, var(--gold-light) 45%, var(--gold) 70%, oklch(0.62 0.11 70) 100%);
	--shadow-gold: 0 10px 30px -12px color-mix(in oklab, var(--gold) 55%, transparent);
	--font-display: "Cinzel", "Cormorant Garamond", serif;
	--font-serif: "Cormorant Garamond", serif;
	--font-sans: "Manrope", system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--cream); color: var(--navy-deep); font-family: var(--font-sans); line-height: 1.55; -webkit-font-smoothing: antialiased; }
img, svg { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; text-decoration: none; }
h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 500; letter-spacing: .02em; margin: 0; line-height: 1.2; }
p { margin: 0; }
button { font: inherit; cursor: pointer; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.screen-reader-text:focus { position: fixed !important; top: 8px; left: 8px; width: auto; height: auto; clip: auto; background: #fff; color: var(--navy-deep); padding: 10px 14px; z-index: 100; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; }

.nk-wrap { width: 100%; max-width: 80rem; margin: 0 auto; padding: 0 1rem; }
.nk-icon { width: 1.25rem; height: 1.25rem; flex: none; }
.nk-icon.is-gold { color: var(--gold); }
.nk-icon.is-wa { color: var(--whatsapp); }

/* Utilities from the original design */
.text-gold-gradient { background-image: var(--gradient-gold); -webkit-background-clip: text; background-clip: text; color: transparent; }
.frame-gold { border: 1px solid var(--gold); outline: 1px solid color-mix(in oklab, var(--gold) 40%, transparent); outline-offset: 4px; }
.btn-gold, .btn-outline-gold, .btn-whatsapp { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; border-radius: var(--radius); border: 0; font-weight: 600; transition: transform .2s, filter .2s, background .2s; text-align: center; line-height: 1.25; }
.btn-gold { background-image: var(--gradient-gold); color: var(--navy-deep); font-weight: 700; padding: .75rem 1.4rem; box-shadow: var(--shadow-gold); }
.btn-gold:hover { transform: translateY(-1px); filter: brightness(1.06); }
.btn-outline-gold { border: 1px solid var(--gold); color: var(--gold-light); padding: .75rem 1.4rem; }
.btn-outline-gold:hover { background: color-mix(in oklab, var(--gold) 15%, transparent); }
.btn-whatsapp { background: var(--whatsapp); color: #fff; padding: .6rem 1rem; }
.btn-whatsapp:hover { filter: brightness(1.08); }
.nk-btn-lg { padding: .85rem 1.5rem; }
.nk-full { width: 100%; }
.field { width: 100%; border: 1px solid var(--border); background: #fff; border-radius: var(--radius); padding: .7rem .9rem; font: inherit; font-size: .95rem; color: var(--navy-deep); }
.field:focus { outline: 2px solid var(--gold); outline-offset: 1px; }
.nk-center { text-align: center; }
.nk-navy { color: var(--navy); }
.nk-muted { color: var(--muted-fg); }
.nk-rounded { border-radius: var(--radius); }
.nk-link-gold { font-weight: 600; color: var(--navy); text-decoration: underline; text-decoration-color: var(--gold); text-underline-offset: 4px; }
.nk-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }

/* Monogram, ornament, section titles */
.nk-mono { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; border-radius: 50%; background-image: var(--gradient-gold); font-family: var(--font-display); font-size: .875rem; font-weight: 700; color: var(--navy-deep); box-shadow: var(--shadow-gold); }
.nk-ornament { display: flex; align-items: center; justify-content: center; gap: .75rem; padding: .5rem 0; color: var(--gold); }
.nk-ornament.is-light { color: var(--gold-light); }
.nk-ornament.is-left { justify-content: flex-start; }
.nk-ornament__line { height: 1px; width: 4rem; background-image: var(--gradient-gold); }
.nk-sectiontitle { text-align: center; margin-bottom: 2.5rem; }
.nk-sectiontitle h2 { font-size: 1.875rem; }
.nk-eyebrow { margin-bottom: .5rem; font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .3em; color: var(--gold); }
.nk-eyebrow--left { text-align: left; }
.nk-h2 { font-size: 1.875rem; color: var(--navy); }
.nk-h2--lg { font-size: 2.25rem; }
.nk-section { padding-top: 4rem; padding-bottom: 4rem; }
.nk-band { padding: 4rem 0; }
.nk-band--soft { background: var(--secondary); }
@media (min-width: 640px) { .nk-sectiontitle h2 { font-size: 2.25rem; } .nk-h2 { font-size: 2.25rem; } .nk-ornament__line { width: 6rem; } .nk-section { padding-top: 5rem; padding-bottom: 5rem; } .nk-band { padding: 5rem 0; } }

/* Offer badge */
.nk-bogo-sm { background-image: var(--gradient-gold); padding: .125rem .5rem; border-radius: 2px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--navy-deep); }
.nk-new { background: var(--navy); padding: .125rem .5rem; border-radius: 2px; font-size: 10px; font-weight: 700; text-transform: uppercase; color: var(--gold-light); }
.nk-offer { display: inline-flex; align-items: center; gap: .75rem; padding: .5rem 1rem; border: 1px solid var(--gold); border-radius: var(--radius); background: color-mix(in oklab, var(--navy-deep) 60%, transparent); }
.nk-offer--lg { padding: .75rem 1.25rem; }
.nk-offer__main { font-family: var(--font-display); font-weight: 700; font-size: 1.125rem; }
.nk-offer--lg .nk-offer__main { font-size: 1.5rem; }
.nk-offer__sep { width: 1px; height: 1.5rem; background: var(--gold); }
.nk-offer__sub { font-size: .875rem; color: var(--cream); }
.nk-offer__sub b { color: var(--gold-light); }

/* Header */
.nk-header { position: sticky; top: 0; z-index: 40; }
.admin-bar .nk-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .nk-header { top: 46px; } }
.nk-topbar { background-image: var(--gradient-gold); padding: .375rem 1rem; text-align: center; font-size: .75rem; font-weight: 600; color: var(--navy-deep); }
.nk-bar { background-image: var(--gradient-navy); color: var(--cream); box-shadow: 0 10px 15px -3px rgb(0 0 0 / .25); }
.nk-bar__in { display: flex; align-items: center; justify-content: space-between; gap: 1rem; max-width: 80rem; margin: 0 auto; padding: .75rem 1rem; }
.nk-brand { display: flex; align-items: center; gap: .75rem; }
.nk-brand__text { display: block; line-height: 1.15; }
.nk-brand__name { display: block; font-family: var(--font-display); font-weight: 700; font-size: 1rem; }
.nk-brand__sub { display: block; font-family: var(--font-display); font-size: 10px; letter-spacing: .35em; color: var(--gold-light); }
.nk-nav { display: none; align-items: center; gap: 1.5rem; font-size: .875rem; }
.nk-nav a:hover, .nk-nav a.is-active { color: var(--gold-light); }
.nk-bar__actions { display: flex; align-items: center; gap: .75rem; }
.nk-bar__phone { display: none; align-items: center; gap: .5rem; font-size: .875rem; color: var(--gold-light); }
.nk-bar__phone .nk-icon { width: 1rem; height: 1rem; }
.nk-bar__test { display: none; padding: .5rem 1.4rem; font-size: .875rem; }
.nk-menu-toggle { background: none; border: 0; padding: .25rem; color: var(--gold); }
.nk-menu-toggle .nk-icon { width: 1.5rem; height: 1.5rem; }
.nk-menu-close { display: none; }
.nk-menu-toggle[aria-expanded="true"] .nk-menu-close { display: block; }
.nk-menu-toggle[aria-expanded="true"] .nk-menu-open { display: none; }
.nk-mobile { display: none; border-top: 1px solid color-mix(in oklab, var(--gold) 30%, transparent); padding: 0 1rem 1rem; }
.nk-mobile.is-open { display: block; }
.nk-mobile a { display: block; padding: .65rem 0; }
@media (min-width: 640px) { .nk-topbar { font-size: .875rem; } .nk-bar__test { display: inline-flex; } .nk-brand__name { font-size: 1.125rem; } }
@media (min-width: 768px) { .nk-bar__phone { display: flex; } }
@media (min-width: 1024px) { .nk-nav { display: flex; } .nk-menu-toggle, .nk-mobile, .nk-mobile.is-open { display: none; } }

.nk-main { min-height: 60vh; }

/* Hero */
.nk-hero { position: relative; overflow: hidden; background: var(--navy-deep); }
.nk-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .6; }
.nk-hero__shade { position: absolute; inset: 0; background: linear-gradient(to right, var(--navy-deep), color-mix(in oklab, var(--navy-deep) 80%, transparent), transparent); }
.nk-hero__in { position: relative; padding-top: 6rem; padding-bottom: 6rem; }
.nk-hero__eyebrow { font-size: .75rem; text-transform: uppercase; letter-spacing: .4em; color: var(--gold-light); }
.nk-hero h1 { margin-top: 1rem; max-width: 42rem; font-size: 3rem; line-height: 1.1; font-weight: 500; }
.nk-hero__lead { margin-top: 1rem; max-width: 28rem; font-family: var(--font-serif); font-size: 1.25rem; color: color-mix(in oklab, var(--cream) 85%, transparent); }
.nk-hero__offer { margin-top: 2rem; }
.nk-hero__cta { margin-top: 2rem; display: flex; flex-wrap: wrap; gap: .75rem; }
@media (min-width: 640px) { .nk-hero__in { padding-top: 8rem; padding-bottom: 8rem; } .nk-hero h1 { font-size: 4.5rem; } }

.nk-bogostrip { background-image: var(--gradient-gold); color: var(--navy-deep); }
.nk-bogostrip__in { display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: .75rem; padding-top: 1.25rem; padding-bottom: 1.25rem; text-align: center; }
.nk-bogostrip__big { font-family: var(--font-display); font-size: 1.5rem; font-weight: 700; }
.nk-bogostrip__text { font-size: .875rem; font-weight: 600; }
.nk-bogostrip__btn { background: var(--navy-deep); color: var(--gold-light); padding: .625rem 1.25rem; border-radius: var(--radius); font-size: .875rem; font-weight: 700; }
@media (min-width: 640px) { .nk-bogostrip__in { flex-direction: row; } .nk-bogostrip__big { font-size: 1.875rem; } }

/* Category tiles */
.nk-cats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
@media (min-width: 768px) { .nk-cats { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.nk-cat { display: block; overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius); background: var(--card); transition: border-color .2s, box-shadow .2s; }
.nk-cat:hover { border-color: var(--gold); box-shadow: var(--shadow-gold); }
.nk-cat__img { display: block; aspect-ratio: 1; overflow: hidden; }
.nk-cat__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.nk-cat:hover .nk-cat__img img { transform: scale(1.05); }
.nk-cat__label { display: block; padding: 1rem; text-align: center; border-top: 1px solid color-mix(in oklab, var(--gold) 40%, transparent); background-image: var(--gradient-navy); }
.nk-cat__name { display: block; font-family: var(--font-display); font-size: 1.125rem; }
.nk-cat__blurb { display: none; margin-top: .25rem; font-size: .75rem; color: color-mix(in oklab, var(--cream) 70%, transparent); }
@media (min-width: 640px) { .nk-cat__blurb { display: block; } }

/* Horizontal scrollers */
.nk-scroller { display: flex; gap: 1rem; overflow-x: auto; padding-bottom: 1rem; scroll-snap-type: x mandatory; }
.nk-scroller__item { flex: none; width: 14rem; scroll-snap-align: start; }
.nk-scroller__item .nk-card { height: 100%; }
.nk-reel { position: relative; flex: none; width: 11rem; aspect-ratio: 9 / 16; overflow: hidden; border-radius: var(--radius); background: var(--navy); scroll-snap-align: start; }
.nk-reel img { width: 100%; height: 100%; object-fit: cover; opacity: .7; }
.nk-reel__label { position: absolute; inset: auto 0 0 0; padding: .75rem; font-size: .875rem; font-weight: 600; color: var(--cream); background: linear-gradient(to top, var(--navy-deep), transparent); }
.nk-reel__label .nk-icon { width: 1rem; height: 1rem; margin-bottom: .25rem; }

/* Eye test band */
.nk-eyeband { background-image: var(--gradient-navy); padding: 4rem 0; text-align: center; color: var(--cream); }
.nk-eyeband__in { max-width: 48rem; margin: 0 auto; padding: 0 1rem; }
.nk-eyeband h2 { font-size: 1.875rem; }
.nk-eyeband p { margin: .5rem 0 0; color: color-mix(in oklab, var(--cream) 80%, transparent); }
.nk-eyeband .btn-gold { margin-top: 1.5rem; }
@media (min-width: 640px) { .nk-eyeband h2 { font-size: 2.25rem; } }

/* Split sections */
.nk-split { display: grid; gap: 2.5rem; align-items: center; }
@media (min-width: 768px) { .nk-split { grid-template-columns: 1fr 1fr; } .nk-split.is-reverse > :first-child { order: 2; } }
.nk-split img { width: 100%; }
.nk-cover { aspect-ratio: 4 / 3; object-fit: cover; }
.nk-muted { margin-top: 1rem; }
.nk-address { display: flex; gap: .5rem; margin-top: 1.25rem; color: var(--navy); }
.nk-btn-line { border: 1px solid var(--navy); color: var(--navy); border-radius: var(--radius); padding: .75rem 1.25rem; font-weight: 600; }
.nk-serif { margin-top: .5rem; font-family: var(--font-serif); font-size: 1.25rem; color: var(--muted-fg); }
.nk-prose { color: var(--muted-fg); }
.nk-prose > * + * { margin-top: 1rem; }
.nk-prose .btn-gold { display: inline-flex; }
.nk-prose--wide { max-width: 48rem; margin: 0 auto; }
.nk-prose h2, .nk-prose h3 { color: var(--navy); }
.nk-values { display: grid; gap: 1.5rem; }
@media (min-width: 768px) { .nk-values { grid-template-columns: repeat(3, 1fr); } }
.nk-value { padding: 1.5rem; text-align: center; background: var(--card); border: 1px solid color-mix(in oklab, var(--gold) 50%, transparent); border-radius: var(--radius); }
.nk-value h3 { font-size: 1.125rem; color: var(--navy); }
.nk-value p { margin-top: .5rem; font-size: .875rem; color: var(--muted-fg); }

/* Page hero */
.nk-pagehero { background-image: var(--gradient-navy); padding: 3.5rem 1rem; text-align: center; }
.nk-pagehero h1 { font-size: 1.875rem; }
.nk-pagehero p { max-width: 36rem; margin: .5rem auto 0; color: color-mix(in oklab, var(--cream) 80%, transparent); }
@media (min-width: 640px) { .nk-pagehero h1 { font-size: 3rem; } }

/* Shop */
.nk-offerstrip { background: var(--navy-deep); padding: .75rem 1rem; text-align: center; }
.nk-shop { padding-top: 2.5rem; padding-bottom: 4rem; }
.nk-filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
@media (min-width: 768px) { .nk-filters { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .nk-filters { grid-template-columns: repeat(7, minmax(0, 1fr)); } }
.nk-count { margin: 1.25rem 0; font-size: .875rem; color: var(--muted-fg); }
.nk-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
@media (min-width: 768px) { .nk-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .nk-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.nk-empty { padding: 3rem 0; text-align: center; color: var(--muted-fg); }
.navigation.pagination { margin-top: 2.5rem; }
.nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; }
.nav-links .page-numbers { padding: .5rem .9rem; border: 1px solid var(--border); border-radius: var(--radius); background: #fff; }
.nav-links .page-numbers.current { background: var(--navy); border-color: var(--navy); color: var(--gold-light); }
.nav-links a.page-numbers:hover { border-color: var(--gold); }

/* Product card */
.nk-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius); background: var(--card); transition: border-color .2s, box-shadow .2s; }
.nk-card:hover { border-color: var(--gold); box-shadow: var(--shadow-gold); }
.nk-card__media { position: relative; display: block; aspect-ratio: 1; overflow: hidden; background: var(--cream); }
.nk-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.nk-card:hover .nk-card__media img { transform: scale(1.05); }
.nk-card__badges { position: absolute; top: .5rem; left: .5rem; display: flex; gap: .25rem; }
.nk-card__body { display: flex; flex-direction: column; flex: 1; padding: .75rem; }
.nk-card__brand { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--muted-fg); }
.nk-card__name { margin-top: .125rem; font-weight: 600; color: var(--navy); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.nk-card__price { margin: .25rem 0 .75rem; font-family: var(--font-display); font-size: 1.125rem; color: var(--navy); }
.nk-card__wa { margin-top: auto; padding: .5rem .75rem; font-size: .75rem; }
.nk-card__wa .nk-icon { width: 1rem; height: 1rem; }
.nk-noimage { display: grid; place-items: center; width: 100%; height: 100%; min-height: 8rem; background: var(--secondary); }

/* Price (markup comes from the catalog plugin) */
.wacp-price-now { font-weight: 700; }
.wacp-price-mrp { margin-left: .5rem; font-family: var(--font-sans); font-size: .8em; font-weight: 400; color: var(--muted-fg); text-decoration: line-through; }
.wacp-price-off { margin-left: .5rem; font-family: var(--font-sans); font-size: .75em; font-weight: 700; color: oklch(0.45 0.13 150); }
.wacp-price-ask { font-family: var(--font-sans); font-size: .85rem; font-weight: 500; color: var(--muted-fg); }

/* Single product */
.nk-product { padding-top: 2rem; padding-bottom: 4rem; }
.nk-crumbs { margin-bottom: 1.5rem; font-size: .875rem; color: var(--muted-fg); }
.nk-crumbs a:hover { color: var(--navy); text-decoration: underline; }
.nk-product__grid { display: grid; gap: 2.5rem; }
@media (min-width: 768px) { .nk-product__grid { grid-template-columns: 1fr 1fr; } }
.nk-product__main { aspect-ratio: 1; overflow: hidden; border-radius: var(--radius); background: #fff; }
.nk-product__main img { width: 100%; height: 100%; object-fit: cover; }
.nk-thumbs { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.nk-thumb { width: 4.5rem; height: 4.5rem; padding: 0; overflow: hidden; border: 2px solid transparent; border-radius: var(--radius); background: #fff; }
.nk-thumb img { width: 100%; height: 100%; object-fit: cover; }
.nk-thumb.is-active { border-color: var(--gold); }
.nk-product__title { margin-top: .25rem; font-size: 1.875rem; color: var(--navy); }
.nk-product__price { margin-top: .75rem; font-family: var(--font-display); font-size: 1.875rem; color: var(--navy); }
.nk-product__price .wacp-price-mrp { font-size: .5em; }
.nk-product__offer { margin-top: 1rem; }
.nk-product__excerpt { margin-top: 1rem; color: var(--muted-fg); }
.nk-specs { margin: 1.5rem 0 0; border-top: 1px solid var(--border); }
.nk-specs div { display: flex; padding: .6rem 0; border-bottom: 1px solid var(--border); font-size: .9rem; }
.nk-specs dt { width: 8rem; color: var(--muted-fg); }
.nk-specs dd { margin: 0; font-weight: 600; }
.nk-variants { border: 0; margin: 1.5rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.nk-variants legend { padding: 0; margin-bottom: .5rem; font-weight: 700; color: var(--navy); }
.nk-variant { position: relative; cursor: pointer; }
.nk-variant input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.nk-variant span { display: inline-block; padding: .5rem .9rem; border: 1px solid var(--border); border-radius: var(--radius); background: #fff; }
.nk-variant small { display: block; font-size: .72rem; color: var(--muted-fg); }
.nk-variant input:checked + span { border-color: var(--gold); box-shadow: inset 0 0 0 1px var(--gold); }
.nk-variant input:focus-visible + span { outline: 3px solid var(--gold); outline-offset: 2px; }
.nk-product__cta { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }
.nk-description { max-width: 48rem; margin-top: 3rem; color: var(--muted-fg); }
.nk-description h2 { margin-bottom: 1rem; font-size: 1.5rem; color: var(--navy); }
.nk-related-title { margin: 4rem 0 1.5rem; font-size: 1.5rem; color: var(--navy); }

/* Forms: contact + eye test */
.nk-contact { display: grid; gap: 2.5rem; padding-top: 3rem; padding-bottom: 3rem; }
@media (min-width: 1024px) { .nk-contact { grid-template-columns: 1fr 1fr; } }
.nk-map { width: 100%; height: 20rem; border-radius: var(--radius); }
.nk-contact__list { display: grid; gap: .75rem; margin-top: 1.5rem; color: var(--navy); }
.nk-contact__list a, .nk-contact__list p { display: flex; gap: .75rem; }
.nk-form { display: grid; gap: 1rem; height: fit-content; padding: 1.5rem; border-radius: var(--radius); background: var(--card); }
.nk-narrow { max-width: 32rem; margin: 0 auto; padding: 3rem 1rem; }
.nk-label { display: block; font-size: .875rem; font-weight: 600; color: var(--navy); }
.nk-label .field { margin-top: .25rem; }
.nk-two { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.nk-locate { display: flex; align-items: center; justify-content: center; gap: .5rem; width: 100%; margin-top: .25rem; padding: .65rem; border: 1px solid var(--gold); border-radius: var(--radius); background: #fff; font-size: .875rem; font-weight: 600; color: var(--navy); }
.nk-or { margin: .5rem 0; text-align: center; font-size: .75rem; color: var(--muted-fg); }
.nk-status { margin-top: .5rem; font-size: .75rem; color: var(--muted-fg); }
.nk-result { margin-top: 1.5rem; padding: 1.25rem; border-radius: var(--radius); font-size: .875rem; }
.nk-result[hidden] { display: none; }
.nk-result--ok { background: var(--card); border: 1px solid var(--whatsapp); }
.nk-result--far { background-image: var(--gradient-navy); color: var(--cream); }
.nk-result__title { font-family: var(--font-display); font-size: 1.125rem; }
.nk-result p + p { margin-top: .5rem; }

/* Gallery */
.nk-gallery { columns: 2; column-gap: 1rem; padding-top: 3rem; padding-bottom: 3rem; }
@media (min-width: 768px) { .nk-gallery { columns: 3; } }
.nk-gallery__item { display: block; width: 100%; margin: 0 0 1.5rem; padding: .375rem; overflow: hidden; border-radius: 2px; background: var(--navy); break-inside: avoid; }
.nk-gallery__item img { width: 100%; transition: transform .5s; }
.nk-gallery__item:hover img { transform: scale(1.05); }
.nk-lightbox { position: fixed; inset: 0; z-index: 60; display: grid; place-items: center; padding: 1rem; background: color-mix(in oklab, var(--navy-deep) 95%, transparent); }
.nk-lightbox[hidden] { display: none; }
.nk-lightbox img { max-height: 85vh; border: 1px solid var(--gold); border-radius: 4px; }
.nk-lightbox__close { position: absolute; top: 1rem; right: 1rem; background: none; border: 0; color: var(--gold); }
.nk-lightbox__close .nk-icon { width: 2rem; height: 2rem; }

/* Footer */
.nk-footer { background-image: var(--gradient-navy); color: var(--cream); padding-bottom: 6rem; }
.nk-footer__grid { display: grid; gap: 2.5rem; padding-top: 3.5rem; padding-bottom: 3.5rem; }
@media (min-width: 768px) { .nk-footer { padding-bottom: 0; } .nk-footer__grid { grid-template-columns: repeat(4, 1fr); } }
.nk-footer__brand { display: flex; align-items: center; gap: .75rem; font-family: var(--font-display); font-size: 1.125rem; }
.nk-footer__about { margin-top: 1rem; font-size: .875rem; color: color-mix(in oklab, var(--cream) 70%, transparent); }
.nk-footer h3 { margin-bottom: .75rem; font-size: .875rem; color: var(--gold); }
.nk-footer__grid > div > a:not(.btn-whatsapp), .nk-footer__row { display: flex; gap: .5rem; padding: .25rem 0; font-size: .875rem; color: color-mix(in oklab, var(--cream) 80%, transparent); }
.nk-footer__grid > div > a:not(.btn-whatsapp):hover { color: var(--gold-light); }
.nk-footer__row .nk-icon { width: 1rem; height: 1rem; margin-top: .2rem; color: var(--gold); }
.nk-footer__insta { margin-top: .75rem; align-items: center; }
.nk-footer__copy { padding: 1rem; text-align: center; font-size: .75rem; color: color-mix(in oklab, var(--cream) 50%, transparent); border-top: 1px solid color-mix(in oklab, var(--gold) 20%, transparent); }

/* Mobile action bar */
.nk-actionbar { position: fixed; inset: auto 0 0 0; z-index: 40; display: grid; grid-template-columns: repeat(3, 1fr); background: var(--navy-deep); border-top: 1px solid color-mix(in oklab, var(--gold) 40%, transparent); color: var(--cream); font-size: .75rem; }
.nk-actionbar a { display: flex; flex-direction: column; align-items: center; gap: .25rem; padding: .625rem 0; }
.nk-actionbar .nk-icon { width: 1.25rem; height: 1.25rem; }
.nk-actionbar .is-cta { background-image: var(--gradient-gold); color: var(--navy-deep); font-weight: 700; }
@media (min-width: 768px) { .nk-actionbar { display: none; } }

/* 404 */
.nk-404 { display: grid; justify-items: center; gap: 1rem; padding: 6rem 1rem; text-align: center; }
.nk-404 h1 { font-size: 5rem; }
.nk-404 h2 { font-size: 1.25rem; }
.nk-404 p { color: var(--muted-fg); }

.nk-post h2 a:hover { text-decoration: underline; }

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

/* Offer badge on light backgrounds */
.nk-product__offer .nk-offer { background: var(--navy-deep); }
