@charset "UTF-8";
/* ==========================================================================
   NewssPro — პრემიუმ ნიუს პორტალის დიზაინ სისტემა
   1. Tokens          6. Header / Nav        11. Article
   2. Reset           7. Ticker / Search     12. Comments
   3. Base            8. Hero / Slider       13. Archive / Search
   4. Layout          9. Cards               14. Footer
   5. Components     10. Home sections       15. Responsive / Motion
   ========================================================================== */

/* 1. TOKENS ================================================================ */

:root {
	--np-accent: #E5122E;
	--np-accent-rgb: 229, 18, 46;
	--np-container: 1320px;
	--np-radius: 14px;

	--np-sans: "Noto Sans Georgian", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	--np-serif: "Noto Serif Georgian", Georgia, "Times New Roman", serif;
	--np-head: var(--np-serif);

	/* ღია სქემა */
	--np-bg: #FFFFFF;
	--np-bg-soft: #F7F8FA;
	--np-bg-mute: #EDF0F5;
	--np-bg-invert: #0B0E14;
	--np-ink: #0C0F16;
	--np-ink-2: #414B5C;
	--np-ink-3: #6D7889;
	--np-line: #E3E8EF;
	--np-line-soft: #EEF1F6;
	--np-white: #FFFFFF;

	--np-shadow-sm: 0 1px 2px rgba(12, 15, 22, .05);
	--np-shadow: 0 2px 6px rgba(12, 15, 22, .05), 0 12px 32px -16px rgba(12, 15, 22, .18);
	--np-shadow-lg: 0 4px 12px rgba(12, 15, 22, .06), 0 28px 60px -28px rgba(12, 15, 22, .30);

	--np-gap: 24px;
	--np-gap-lg: 40px;
	--np-sec: clamp(40px, 5vw, 68px);

	--np-r-sm: 8px;
	--np-r: var(--np-radius);
	--np-r-lg: calc(var(--np-radius) + 6px);
	--np-r-pill: 999px;

	--np-ease: cubic-bezier(.22, .61, .36, 1);
	--np-fast: .18s var(--np-ease);
	--np-base: .3s var(--np-ease);

	--np-header-h: 68px;

	color-scheme: light;
}

[data-scheme="dark"] {
	--np-bg: #0A0C11;
	--np-bg-soft: #10131A;
	--np-bg-mute: #171C25;
	--np-bg-invert: #05070B;
	--np-ink: #ECF0F6;
	--np-ink-2: #A7B2C2;
	--np-ink-3: #7B8697;
	--np-line: #1F2632;
	--np-line-soft: #161B24;

	--np-shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);
	--np-shadow: 0 2px 8px rgba(0, 0, 0, .38), 0 16px 40px -20px rgba(0, 0, 0, .7);
	--np-shadow-lg: 0 6px 16px rgba(0, 0, 0, .45), 0 32px 70px -30px rgba(0, 0, 0, .85);

	color-scheme: dark;
}

.np-headline-sans { --np-head: var(--np-sans); }

/* 2. RESET ================================================================= */

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

html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--np-header-h) + 16px);
}

body {
	margin: 0;
	background: var(--np-bg);
	color: var(--np-ink);
	font-family: var(--np-sans);
	font-size: 16px;
	line-height: 1.6;
	font-synthesis-weight: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-wrap: break-word;
}

body.np-locked { overflow: hidden; }

h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 700; line-height: 1.22; letter-spacing: -.015em; }
p, ul, ol, figure, blockquote, pre { margin: 0; }
ul, ol { padding: 0; list-style: none; }
img, svg, video, iframe { display: block; max-width: 100%; }
img { height: auto; border: 0; }

a { color: inherit; text-decoration: none; transition: color var(--np-fast); }

button, input, select, textarea {
	font: inherit;
	color: inherit;
	margin: 0;
}

button { background: none; border: 0; padding: 0; cursor: pointer; }

:where(a, button, input, select, textarea, [tabindex]):focus-visible {
	outline: 2px solid var(--np-accent);
	outline-offset: 3px;
	border-radius: 4px;
}

::selection { background: rgba(var(--np-accent-rgb), .18); }

.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip-path: inset(50%);
	white-space: nowrap; border: 0;
}

.np-skip {
	position: fixed;
	top: 8px; left: 8px;
	z-index: 999;
	padding: 12px 20px;
	background: var(--np-accent);
	color: #fff;
	border-radius: var(--np-r-sm);
	font-weight: 600;
	transform: translateY(-160%);
	transition: transform var(--np-base);
}
.np-skip:focus { transform: none; }

/* 3. BASE ================================================================== */

.np-site { display: flex; flex-direction: column; min-height: 100vh; }
.np-main { flex: 1; }

.np-container {
	width: 100%;
	max-width: var(--np-container);
	margin-inline: auto;
	padding-inline: clamp(16px, 4vw, 32px);
}
.np-container--wide { max-width: 1560px; }

.np-icon { flex: none; }

/* 4. LAYOUT ================================================================ */

.np-layout { display: grid; gap: var(--np-gap-lg); align-items: start; }

@media (min-width: 1024px) {
	.np-layout--sidebar { grid-template-columns: minmax(0, 1fr) 340px; }
}

.np-layout--narrow > .np-layout__main { max-width: 760px; margin-inline: auto; }
.np-layout__main { min-width: 0; }
.np-layout__side { min-width: 0; }

.np-sticky { position: sticky; top: calc(var(--np-header-h) + 20px); display: grid; gap: 28px; }

.np-grid { display: grid; gap: var(--np-gap); grid-template-columns: repeat(1, minmax(0, 1fr)); }

@media (min-width: 560px) {
	.np-grid--2, .np-grid--3, .np-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 900px) {
	.np-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.np-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

.np-grid__ad { grid-column: 1 / -1; }

/* სექციები ერთი მიმართულებით სუნთქავენ — ზედა padding მხოლოდ Hero-ს აქვს,
   რაც თანაბარ ვერტიკალურ რიტმს იძლევა ბლოკების ნებისმიერი თანმიმდევრობისას. */
.np-sec { padding-bottom: var(--np-sec); }
.np-sec:first-child { padding-top: var(--np-sec); }

/* 5. COMPONENTS ============================================================ */

/* ღილაკები */
.np-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 11px 20px;
	border-radius: var(--np-r-pill);
	font-weight: 650;
	font-size: 14.5px;
	letter-spacing: -.01em;
	white-space: nowrap;
	cursor: pointer;
	transition: background var(--np-fast), color var(--np-fast), border-color var(--np-fast), transform var(--np-fast), box-shadow var(--np-fast);
}
.np-btn:active { transform: translateY(1px); }

.np-btn--primary {
	background: var(--np-accent);
	color: #fff;
	box-shadow: 0 6px 18px -8px rgba(var(--np-accent-rgb), .8);
}
.np-btn--primary:hover { background: color-mix(in srgb, var(--np-accent) 88%, #000); }

.np-btn--ghost {
	border: 1px solid var(--np-line);
	color: var(--np-ink);
	background: var(--np-bg);
}
.np-btn--ghost:hover { border-color: var(--np-ink-3); background: var(--np-bg-soft); }

.np-btn--lg { padding: 14px 28px; font-size: 15.5px; }
.np-btn--block { width: 100%; }

.np-iconbtn {
	display: inline-grid;
	place-items: center;
	width: 40px; height: 40px;
	border-radius: 50%;
	color: var(--np-ink-2);
	transition: background var(--np-fast), color var(--np-fast);
}
.np-iconbtn:hover { background: var(--np-bg-mute); color: var(--np-ink); }

/* ბეიჯი */
.np-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 11px;
	border-radius: var(--np-r-sm);
	background: var(--np-cat, var(--np-accent));
	color: #fff;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	line-height: 1.3;
	white-space: nowrap;
}
.np-badge--lg { padding: 7px 14px; font-size: 12.5px; }
.np-badge--float { position: absolute; inset-block-start: 12px; inset-inline-start: 12px; z-index: 2; }

.np-badge--text {
	background: none;
	color: var(--np-cat, var(--np-accent));
	padding: 0;
	font-size: 11.5px;
}

.np-chip {
	display: inline-flex;
	align-items: center;
	padding: 7px 14px;
	border-radius: var(--np-r-pill);
	background: var(--np-bg-mute);
	color: var(--np-ink-2);
	font-size: 13.5px;
	font-weight: 550;
	transition: background var(--np-fast), color var(--np-fast);
}
.np-chip:hover { background: var(--np-ink); color: var(--np-bg); }
.np-chip--cat:hover { background: var(--np-cat, var(--np-accent)); color: #fff; }

/* მეტა */
.np-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 14px;
	color: var(--np-ink-3);
	font-size: 13px;
	line-height: 1.4;
}
.np-meta__item { display: inline-flex; align-items: center; gap: 5px; }
.np-meta__item + .np-meta__item::before {
	content: "";
	width: 3px; height: 3px;
	border-radius: 50%;
	background: currentColor;
	opacity: .5;
	margin-inline-end: 9px;
}
.np-meta__author a { color: var(--np-ink-2); font-weight: 600; }
.np-meta__author a:hover { color: var(--np-accent); }
.np-meta--light { color: rgba(255, 255, 255, .78); }
.np-meta--light .np-meta__author a { color: #fff; }

/* სექციის სათაური */
.np-sechead {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 26px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--np-line);
}
.np-sechead__title {
	position: relative;
	font-family: var(--np-head);
	font-size: clamp(21px, 2.4vw, 28px);
	letter-spacing: -.02em;
}
.np-sechead--accent .np-sechead__title,
.np-sechead--cat .np-sechead__title { padding-inline-start: 16px; }
.np-sechead--accent .np-sechead__title::before,
.np-sechead--cat .np-sechead__title::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 50%;
	translate: 0 -50%;
	width: 5px; height: 1.1em;
	border-radius: 3px;
	background: var(--np-cat, var(--np-accent));
}
.np-sechead__sub { margin-top: 6px; color: var(--np-ink-3); font-size: 14px; }
.np-sechead__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: none;
	color: var(--np-ink-2);
	font-size: 14px;
	font-weight: 600;
}
.np-sechead__link:hover { color: var(--np-accent); }
.np-sechead__link svg { transition: transform var(--np-fast); }
.np-sechead__link:hover svg { transform: translateX(3px); }

.np-sechead--onDark { border-bottom-color: rgba(255, 255, 255, .12); }
.np-sechead--onDark .np-sechead__title { color: #fff; }
.np-sechead--onDark .np-sechead__sub { color: rgba(255, 255, 255, .6); }
.np-sechead--onDark .np-sechead__link { color: rgba(255, 255, 255, .75); }

/* რეკლამა */
.np-ad { display: block; max-width: 100%; text-align: center; }
.np-ad__label {
	display: block;
	margin-bottom: 8px;
	color: var(--np-ink-3);
	font-size: 10.5px;
	letter-spacing: .14em;
	text-transform: uppercase;
}
/* ბანერი ვერასდროს გასცდება კონტეინერს — ჰორიზონტალური scroll გამორიცხულია. */
.np-ad__body {
	display: flex;
	justify-content: center;
	max-width: 100%;
	overflow-x: hidden;
}
.np-ad__body > * { max-width: 100%; }
.np-ad__body :is(img, iframe, ins) { max-width: 100%; margin-inline: auto; }
.np-ad__link { display: block; max-width: 100%; }
.np-ad__img { display: block; max-width: 100%; height: auto; margin-inline: auto; border-radius: var(--np-r); }

.np-ad--spaced { margin-block: var(--np-gap-lg); }
.np-ad--footer { margin-bottom: 40px; }
.np-ad--inarticle { margin-block: 32px; }
.np-ad--rect .np-ad__body { min-height: 0; }

/* Header/Footer-ის ბანერები კონტეინერის გარეთ იდგმება — აქ ვუბრუნებთ ჩარჩოს. */
.np-ad--header, .np-ad--footer {
	width: 100%;
	max-width: var(--np-container);
	margin-inline: auto;
	padding-inline: clamp(16px, 4vw, 32px);
}
.np-ad--header { margin-block: 24px; }

/* ---- VINEX.GE სპონსორული ბანერი (სუფთა CSS, სურათებისა და ანიმაციის გარეშე) ---- */
.np-promo {
	position: relative;
	display: flex;
	flex-wrap: wrap; /* ვიწრო კონტეინერში (sidebar) ლამაზად ეშვება */
	align-items: center;
	gap: clamp(16px, 3vw, 32px);
	width: 100%;
	padding: clamp(18px, 2.6vw, 26px) clamp(20px, 3vw, 32px);
	border-radius: var(--np-r-lg);
	background: linear-gradient(112deg, #061223 0%, #0C2447 48%, #123C73 100%);
	color: #fff;
	text-align: start;
	overflow: hidden;
	isolation: isolate;
	transition: transform var(--np-fast), box-shadow var(--np-fast);
}
.np-promo:hover { transform: translateY(-2px); box-shadow: 0 18px 40px -22px rgba(18, 60, 115, .9); }

/* დიაგონალური „მოძრაობის" ტექსტურა — მხოლოდ gradient, DOM-ის გარეშე */
.np-promo::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		radial-gradient(65% 130% at 88% 18%, rgba(56, 152, 255, .38), transparent 62%),
		repeating-linear-gradient(115deg, rgba(255, 255, 255, .05) 0 2px, transparent 2px 26px);
}

.np-promo__body { display: grid; gap: 6px; min-width: 0; }

.np-promo__brand {
	display: inline-flex;
	align-self: start;
	align-items: center;
	padding: 4px 10px;
	margin-bottom: 2px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: var(--np-r-sm);
	background: rgba(255, 255, 255, .07);
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: .13em;
	line-height: 1.4;
}
.np-promo__brand span { color: #56B8FF; }

.np-promo__title {
	font-family: var(--np-head);
	font-size: clamp(17px, 2.3vw, 27px);
	font-weight: 750;
	line-height: 1.22;
	letter-spacing: -.02em;
	color: #fff;
	text-wrap: balance;
}
.np-promo__sub {
	font-size: clamp(13px, 1.15vw, 15.5px);
	line-height: 1.45;
	color: rgba(255, 255, 255, .74);
}

.np-promo__cta {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	flex: none;
	margin-inline-start: auto;
	padding: 13px 26px;
	border-radius: var(--np-r-pill);
	background: linear-gradient(180deg, #3A9BFF, #0B6AE0);
	box-shadow: 0 10px 24px -12px rgba(11, 106, 224, .95);
	color: #fff;
	font-size: clamp(14px, 1.15vw, 15.5px);
	font-weight: 700;
	white-space: nowrap;
	transition: filter var(--np-fast);
}
.np-promo__cta::after { content: "→"; font-size: 1.05em; line-height: 1; }
.np-promo:hover .np-promo__cta { filter: brightness(1.08); }

@media (max-width: 720px) {
	.np-promo { flex-direction: column; align-items: stretch; gap: 16px; }
	.np-promo__cta { margin-inline-start: 0; justify-content: center; width: 100%; }
	.np-promo__title { font-size: 19px; }
	.np-promo__sub { font-size: 13.5px; }
}

/* AMINDI.IN — ცისფერი ვარიანტი, VINEX-ისგან ვიზუალურად გასარჩევად */
.np-promo--sky { background: linear-gradient(112deg, #04283A 0%, #075E7B 46%, #0E86A8 100%); }
.np-promo--sky::before {
	background:
		radial-gradient(60% 120% at 86% 14%, rgba(125, 226, 255, .34), transparent 62%),
		repeating-linear-gradient(115deg, rgba(255, 255, 255, .05) 0 2px, transparent 2px 26px);
}
.np-promo--sky .np-promo__brand span { color: #7DE2FF; }
.np-promo--sky .np-promo__cta {
	background: linear-gradient(180deg, #34C8F0, #0891B2);
	box-shadow: 0 10px 24px -12px rgba(8, 145, 178, .95);
}

/* ---- თავისუფალი სარეკლამო ადგილები ----
   განზრახ ნეიტრალური: არ უნდა ჰგავდეს მოქმედ რეკლამას.
   ფერები თემის ტოკენებიდან — ავტომატურად მუშაობს ღია და მუქ რეჟიმში. */
.np-phb {
	position: relative;
	display: grid;
	place-items: center;
	width: 100%;
	padding: 10px;
	border-radius: var(--np-r);
	background: var(--np-bg-soft);
	color: var(--np-ink-3);
	text-align: center;
	transition: border-color var(--np-fast), background var(--np-fast);
	border: 1px solid var(--np-line);
}
.np-phb:hover { border-color: var(--np-ink-3); background: var(--np-bg-mute); }

.np-phb__inner {
	display: grid;
	gap: 6px;
	justify-items: center;
	align-content: center;
	width: 100%;
	height: 100%;
	padding: 18px 20px;
	border: 1px dashed var(--np-line);
	border-radius: calc(var(--np-r) - 4px);
}
.np-phb__label {
	font-size: clamp(14.5px, 1.5vw, 17px);
	font-weight: 650;
	letter-spacing: -.01em;
	line-height: 1.3;
	color: var(--np-ink-2);
}
.np-phb__sub { font-size: 12.5px; line-height: 1.45; color: var(--np-ink-3); max-width: 40ch; }
.np-phb__size {
	margin-top: 2px;
	padding: 2px 10px;
	border: 1px solid var(--np-line);
	border-radius: var(--np-r-pill);
	background: var(--np-bg);
	color: var(--np-ink-3);
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: .08em;
}

/* ფორმატები */
.np-phb--lead { min-height: 112px; }
.np-phb--wide { min-height: clamp(140px, 15vw, 200px); }
.np-phb--rect { aspect-ratio: 6 / 5; }
.np-phb--tall { aspect-ratio: 1 / 1.72; }

/* მობილურზე ვერტიკალური ბანერები არ უნდა გაიწელოს */
@media (max-width: 1023px) {
	.np-phb--tall, .np-phb--rect { aspect-ratio: auto; min-height: 148px; }
}
@media (max-width: 640px) {
	.np-phb__inner { padding: 16px 14px; }
	.np-phb--wide { min-height: 132px; }
	.np-phb__sub { font-size: 12px; }
}

/* ---- ELGRO MOTORS — საბურავების ბანერი (სუფთა CSS, სურათების გარეშე) ---- */
.np-elgro { background: linear-gradient(104deg, #08090B 0%, #16181D 50%, #262A31 100%); }
.np-elgro::before {
	background:
		radial-gradient(72% 130% at 86% 16%, rgba(249, 115, 22, .30), transparent 60%),
		repeating-linear-gradient(101deg, rgba(255, 255, 255, .035) 0 1px, transparent 1px 9px);
}
/* გზის მონიშვნა ქვედა კიდეზე */
.np-elgro::after {
	content: "";
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	height: 5px;
	background: repeating-linear-gradient(90deg, rgba(249, 115, 22, .85) 0 36px, transparent 36px 66px);
	opacity: .5;
	pointer-events: none;
}

/* საბურავი — კონცენტრული gradient-ები, DOM-ის დამატებითი ელემენტების გარეშე */
.np-elgro__tire {
	position: relative;
	flex: none;
	width: clamp(78px, 9.5vw, 124px);
	aspect-ratio: 1;
	border-radius: 50%;
	background: repeating-conic-gradient(from 0deg, #101216 0deg 5deg, #23262d 5deg 10deg);
	box-shadow: inset 0 0 0 2px #060709, 0 14px 28px -14px rgba(0, 0, 0, .95);
}
.np-elgro__tire::before {          /* გვერდითი კედელი */
	content: "";
	position: absolute;
	inset: 12%;
	border-radius: 50%;
	background: radial-gradient(circle at 34% 26%, #2b2f37, #0d0f13 72%);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .07);
}
.np-elgro__tire::after {           /* დისკი + ნარინჯისფერი რგოლი */
	content: "";
	position: absolute;
	inset: 29%;
	border-radius: 50%;
	background:
		repeating-conic-gradient(from 12deg, rgba(255, 255, 255, .55) 0deg 11deg, transparent 11deg 30deg),
		radial-gradient(circle at 38% 30%, #e9eef4, #8b95a3 78%);
	box-shadow: inset 0 0 0 3px #F97316, 0 0 0 2px rgba(0, 0, 0, .55);
}

.np-elgro__title {
	font-family: var(--np-head);
	font-size: clamp(16px, 2vw, 24px);
	font-weight: 700;
	line-height: 1.24;
	color: #fff;
	text-wrap: balance;
}
/* ფასი — ბანერის ყველაზე გამოკვეთილი ელემენტი */
.np-elgro__title strong {
	display: inline-block;
	color: #FDBA74;
	font-size: 1.26em;
	font-weight: 800;
	letter-spacing: -.02em;
	white-space: nowrap;
}
.np-elgro .np-promo__brand { border-color: rgba(249, 115, 22, .38); background: rgba(249, 115, 22, .12); }
.np-elgro .np-promo__brand span { color: #FDBA74; }
.np-elgro__cta {
	background: linear-gradient(180deg, #FB923C, #EA580C);
	box-shadow: 0 10px 24px -12px rgba(234, 88, 12, .95);
}

@media (max-width: 720px) {
	/* ტელეფონზე: საბურავი + ტექსტი ერთ რიგში, ღილაკი ქვემოთ სრული სიგანით */
	.np-elgro { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 14px; }
	.np-elgro__tire { width: 66px; }
	.np-elgro .np-promo__body { flex: 1 1 55%; min-width: 0; }
	.np-elgro__cta { flex: 1 1 100%; }
	.np-elgro__title { font-size: 17px; }
}

.np-stickyad {
	position: fixed;
	inset-inline: 0;
	bottom: 0;
	z-index: 90;
	display: flex;
	justify-content: center;
	padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
	background: color-mix(in srgb, var(--np-bg) 88%, transparent);
	backdrop-filter: saturate(180%) blur(14px);
	border-top: 1px solid var(--np-line);
	animation: np-up .35s var(--np-ease);
}
.np-stickyad__close {
	position: absolute;
	top: -14px;
	inset-inline-end: 14px;
	display: grid;
	place-items: center;
	width: 28px; height: 28px;
	border-radius: 50%;
	background: var(--np-ink);
	color: var(--np-bg);
	box-shadow: var(--np-shadow-sm);
}

@keyframes np-up { from { transform: translateY(100%); } }

/* ---- Popup რეკლამა ---- */
.np-popup {
	position: fixed;
	inset: 0;
	z-index: 130;
	display: grid;
	place-items: center;
	padding: 22px;
}
.np-popup[hidden] { display: none; }

.np-popup__overlay {
	position: absolute;
	inset: 0;
	background: rgba(6, 8, 12, .74);
	backdrop-filter: blur(3px);
	opacity: 0;
	transition: opacity .3s var(--np-ease);
	cursor: pointer;
}

.np-popup__box {
	position: relative;
	display: grid;
	gap: 14px;
	justify-items: center;
	max-width: min(560px, 100%);
	opacity: 0;
	transform: translateY(12px) scale(.97);
	transition: opacity .3s var(--np-ease), transform .3s var(--np-ease);
}

.np-popup.is-open .np-popup__overlay { opacity: 1; }
.np-popup.is-open .np-popup__box { opacity: 1; transform: none; }

.np-popup__link { display: block; max-width: 100%; line-height: 0; }

/* სურათი მთლიანად ეტევა ეკრანზე — არაფერი იჭრება */
.np-popup__img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 74vh;
	object-fit: contain;
	border-radius: var(--np-r-lg);
	box-shadow: 0 30px 70px -32px rgba(0, 0, 0, .95);
}

.np-popup__close {
	position: absolute;
	top: -16px;
	inset-inline-end: -16px;
	z-index: 3;
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: #fff;
	color: #0C0F16;
	box-shadow: 0 10px 26px -10px rgba(0, 0, 0, .7);
	transition: transform var(--np-fast), background var(--np-fast), color var(--np-fast);
}
.np-popup__close:hover { transform: rotate(90deg); background: var(--np-accent); color: #fff; }

.np-popup__timer {
	color: rgba(255, 255, 255, .8);
	font-size: 13.5px;
	letter-spacing: .01em;
	text-align: center;
}
.np-popup__count {
	display: inline-grid;
	place-items: center;
	min-width: 26px;
	height: 26px;
	padding-inline: 6px;
	margin-inline: 3px;
	border-radius: var(--np-r-pill);
	background: rgba(255, 255, 255, .14);
	border: 1px solid rgba(255, 255, 255, .2);
	color: #fff;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	vertical-align: -6px;
}

@media (max-width: 560px) {
	.np-popup { padding: 14px; }
	/* პატარა ეკრანზე ღილაკი სურათის შიგნით — კიდეს ვერ გასცდება */
	.np-popup__close {
		top: 10px;
		inset-inline-end: 10px;
		width: 42px;
		height: 42px;
	}
	.np-popup__img { max-height: 68vh; }
}

/* პროგრესი */
.np-progress {
	position: fixed;
	inset-block-start: 0;
	inset-inline: 0;
	height: 3px;
	z-index: 120;
	background: transparent;
	pointer-events: none;
}
.np-progress__bar {
	display: block;
	height: 100%;
	width: 0;
	background: linear-gradient(90deg, var(--np-accent), color-mix(in srgb, var(--np-accent) 55%, #ff9d00));
	transition: width .1s linear;
}

/* ვიჯეტები */
.np-widget {
	padding: 24px;
	background: var(--np-bg-soft);
	border: 1px solid var(--np-line-soft);
	border-radius: var(--np-r-lg);
}
.np-widget__title {
	position: relative;
	margin-bottom: 16px;
	padding-inline-start: 14px;
	font-family: var(--np-head);
	font-size: 17px;
}
.np-widget__title::before {
	content: "";
	position: absolute;
	inset-inline-start: 0; top: 50%;
	translate: 0 -50%;
	width: 4px; height: 1.05em;
	border-radius: 2px;
	background: var(--np-accent);
}
.np-widget ul li { padding: 9px 0; border-bottom: 1px solid var(--np-line-soft); font-size: 14.5px; }
.np-widget ul li:last-child { border-bottom: 0; padding-bottom: 0; }
.np-widget a:hover { color: var(--np-accent); }

.np-sform { position: relative; display: flex; align-items: center; }
.np-sform > svg { position: absolute; inset-inline-start: 14px; color: var(--np-ink-3); pointer-events: none; }
.np-sform input {
	width: 100%;
	padding: 12px 48px 12px 42px;
	border: 1px solid var(--np-line);
	border-radius: var(--np-r-pill);
	background: var(--np-bg);
	font-size: 14.5px;
}
.np-sform input:focus { outline: none; border-color: var(--np-accent); }
.np-sform button {
	position: absolute;
	inset-inline-end: 6px;
	display: grid; place-items: center;
	width: 34px; height: 34px;
	border-radius: 50%;
	background: var(--np-accent);
	color: #fff;
}

/* 6. HEADER / NAV ========================================================== */

.np-header { position: relative; z-index: 60; background: var(--np-bg); }

.np-topbar {
	border-bottom: 1px solid var(--np-line-soft);
	background: var(--np-bg-soft);
	font-size: 13px;
}
.np-topbar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 38px;
}
.np-topbar__left, .np-topbar__right { display: flex; align-items: center; gap: 20px; }
.np-topbar__date { display: inline-flex; align-items: center; gap: 7px; color: var(--np-ink-3); }
.np-topbar__note { color: var(--np-ink-2); font-weight: 550; }
.np-topbar__menu { display: flex; gap: 18px; }
.np-topbar__menu a { color: var(--np-ink-3); }
.np-topbar__menu a:hover { color: var(--np-accent); }

@media (max-width: 860px) { .np-topbar { display: none; } }

.np-header__main {
	position: relative; /* mega menu-ს საყრდენი */
	border-bottom: 1px solid var(--np-line);
	background: var(--np-bg);
	transition: box-shadow var(--np-base);
}
.np-sticky .np-header__main { position: sticky; top: 0; z-index: 61; }
.np-header__main.is-stuck {
	box-shadow: var(--np-shadow);
	background: color-mix(in srgb, var(--np-bg) 90%, transparent);
	backdrop-filter: saturate(180%) blur(16px);
}

.np-header__inner {
	display: flex;
	align-items: center;
	gap: clamp(12px, 2vw, 28px);
	min-height: var(--np-header-h);
}

.np-header__burger { display: none; margin-inline-start: -8px; }

.np-logo { flex: none; font-size: 0; }
.np-logo a { display: inline-flex; align-items: center; }
.np-logo__img { max-height: 42px; width: auto; }
.np-logo__img--dark { display: none; }
[data-scheme="dark"] .np-logo__img--light { display: none; }
[data-scheme="dark"] .np-logo__img--dark { display: block; }

.np-logo__text {
	font-family: var(--np-head);
	font-size: 27px;
	font-weight: 800;
	letter-spacing: -.035em;
	color: var(--np-ink);
	line-height: 1;
}
.np-logo__text span { color: var(--np-accent); }

/* ნავიგაცია */
.np-nav { flex: 1; min-width: 0; }
.np-nav__list { display: flex; align-items: center; gap: 2px; }

.np-nav__item { position: relative; }
/* Mega menu-ს კონტეინერი header-ია, რომ ეკრანიდან არ გავიდეს. */
.np-nav__item--mega { position: static; }
.np-nav__link {
	position: relative;
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 10px 13px;
	border-radius: var(--np-r-sm);
	color: var(--np-ink-2);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -.01em;
	white-space: nowrap;
	transition: color var(--np-fast), background var(--np-fast);
}
.np-nav__link:hover { color: var(--np-ink); background: var(--np-bg-mute); }

.np-nav__link::after {
	content: "";
	position: absolute;
	inset-inline: 13px;
	bottom: -11px;
	height: 2px;
	border-radius: 2px 2px 0 0;
	background: var(--np-cat, var(--np-accent));
	scale: 0 1;
	transition: scale var(--np-base);
	transform-origin: center;
}
.np-nav__item:hover > .np-nav__link::after,
.np-nav__item.current-menu-item > .np-nav__link::after,
.np-nav__item.current-menu-parent > .np-nav__link::after,
.np-nav__item.current-menu-ancestor > .np-nav__link::after { scale: 1 1; }

.np-nav__item.current-menu-item > .np-nav__link,
.np-nav__item.current-menu-parent > .np-nav__link { color: var(--np-ink); }

.np-nav__caret { opacity: .6; transition: transform var(--np-fast); }
.np-nav__item:hover .np-nav__caret { transform: rotate(180deg); }
.np-nav__toggle { display: none; }

/* dropdown */
.np-sub {
	position: absolute;
	top: calc(100% + 6px);
	inset-inline-start: 0;
	min-width: 230px;
	padding: 8px;
	background: var(--np-bg);
	border: 1px solid var(--np-line);
	border-radius: var(--np-r);
	box-shadow: var(--np-shadow-lg);
	opacity: 0;
	visibility: hidden;
	translate: 0 8px;
	transition: opacity var(--np-fast), translate var(--np-fast), visibility var(--np-fast);
	z-index: 20;
}
.np-nav__item:hover > .np-sub,
.np-nav__item:focus-within > .np-sub { opacity: 1; visibility: visible; translate: 0; }

.np-sub__link {
	display: block;
	padding: 9px 12px;
	border-radius: var(--np-r-sm);
	font-size: 14.5px;
	color: var(--np-ink-2);
}
.np-sub__link:hover { background: var(--np-bg-mute); color: var(--np-ink); }
.np-sub .np-sub { top: -8px; inset-inline-start: 100%; }

/* mega menu */
.np-mega {
	position: absolute;
	top: 100%;
	inset-inline-start: 50%;
	translate: -50% 8px;
	width: min(var(--np-container), calc(100vw - 40px));
	max-width: 1160px;
	padding: 26px;
	background: var(--np-bg);
	border: 1px solid var(--np-line);
	border-radius: var(--np-r-lg);
	box-shadow: var(--np-shadow-lg);
	opacity: 0;
	visibility: hidden;
	transition: opacity var(--np-base), translate var(--np-base), visibility var(--np-base);
	z-index: 20;
}
.np-nav__item--mega:hover > .np-mega,
.np-nav__item--mega:focus-within > .np-mega { opacity: 1; visibility: visible; translate: -50% 0; }

.np-mega__inner { display: grid; gap: 26px; grid-template-columns: 210px minmax(0, 1fr); }

.np-mega__links { display: grid; gap: 2px; align-content: start; padding-inline-end: 22px; border-inline-end: 1px solid var(--np-line-soft); }
.np-mega__links .np-sub__link { font-weight: 550; }
.np-mega__links .np-sub__link:hover { color: var(--np-cat, var(--np-accent)); }

.np-mega__posts { display: grid; gap: 18px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.np-mega__post { display: grid; gap: 8px; align-content: start; }
.np-mega__thumb .np-thumb { border-radius: var(--np-r-sm); aspect-ratio: 16 / 10; }
.np-mega__title {
	font-family: var(--np-head);
	font-size: 14px;
	font-weight: 650;
	line-height: 1.35;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.np-mega__post:hover .np-mega__title { color: var(--np-cat, var(--np-accent)); }
.np-mega__time { color: var(--np-ink-3); font-size: 12px; }

@media (max-width: 1023px) { .np-nav { display: none; } }

/* header tools */
.np-header__tools { display: flex; align-items: center; gap: 4px; margin-inline-start: auto; }
.np-header__cta { margin-inline-start: 8px; }

.np-schemebtn__moon { display: none; }
[data-scheme="dark"] .np-schemebtn__sun { display: none; }
[data-scheme="dark"] .np-schemebtn__moon { display: block; }

@media (max-width: 1023px) {
	.np-header__burger { display: inline-grid; }
	.np-header__inner { justify-content: space-between; }
	.np-logo { margin-inline-end: auto; }
	.np-header__cta { display: none; }
}

/* 7. TICKER / SEARCH / DRAWER ============================================== */

.np-ticker {
	background: var(--np-bg-invert);
	color: #fff;
	overflow: hidden;
}
.np-ticker__inner { display: flex; align-items: center; gap: 0; min-height: 46px; }

.np-ticker__label {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	flex: none;
	align-self: stretch;
	padding-inline: 4px 20px;
	margin-inline-end: 20px;
	font-size: 12.5px;
	font-weight: 750;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: #fff;
}
.np-ticker__label::after {
	content: "";
	position: absolute;
	inset-block: 0;
	inset-inline-end: 0;
	width: 1px;
	background: rgba(255, 255, 255, .16);
}
.np-ticker__pulse {
	width: 8px; height: 8px;
	border-radius: 50%;
	background: var(--np-accent);
	box-shadow: 0 0 0 0 rgba(var(--np-accent-rgb), .85);
	animation: np-pulse 2s infinite;
}
@keyframes np-pulse {
	70% { box-shadow: 0 0 0 9px rgba(var(--np-accent-rgb), 0); }
	100% { box-shadow: 0 0 0 0 rgba(var(--np-accent-rgb), 0); }
}

.np-ticker__viewport { flex: 1; min-width: 0; overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 24px, #000 calc(100% - 24px), transparent); }
.np-ticker__track { display: flex; width: max-content; animation: np-marquee var(--np-ticker-duration, 45s) linear infinite; }
.np-ticker__track:hover, .np-ticker.is-paused .np-ticker__track { animation-play-state: paused; }

@keyframes np-marquee { to { transform: translateX(-50%); } }

.np-ticker__list { display: flex; align-items: center; }
.np-ticker__item { display: flex; align-items: center; }
.np-ticker__item > * { display: inline-flex; align-items: center; gap: 10px; padding-inline-end: 38px; }
.np-ticker__dot { width: 5px; height: 5px; border-radius: 50%; background: var(--np-accent); flex: none; }
.np-ticker__text { font-size: 14px; font-weight: 550; color: rgba(255, 255, 255, .92); white-space: nowrap; }
.np-ticker__item a:hover .np-ticker__text { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.np-ticker__time { font-size: 12px; color: rgba(255, 255, 255, .45); white-space: nowrap; }

.np-ticker__pause {
	display: flex; align-items: center; gap: 3px;
	flex: none;
	padding-inline-start: 16px;
	opacity: .5;
	transition: opacity var(--np-fast);
}
.np-ticker__pause:hover { opacity: 1; }
.np-ticker__pausebar { display: block; width: 3px; height: 12px; border-radius: 1px; background: #fff; }
.np-ticker.is-paused .np-ticker__pausebar:first-child { height: 0; border-block: 6px solid transparent; border-inline-start: 9px solid #fff; width: 0; border-radius: 0; }
.np-ticker.is-paused .np-ticker__pausebar:last-child { display: none; }

@media (max-width: 640px) {
	.np-ticker__label { font-size: 11px; padding-inline-end: 14px; margin-inline-end: 14px; }
	.np-ticker__pause { display: none; }
}

/* ძებნის overlay */
.np-search { position: fixed; inset: 0; z-index: 100; }
.np-search[hidden] { display: none; }
.np-search__backdrop {
	position: absolute; inset: 0;
	background: rgba(6, 8, 12, .55);
	backdrop-filter: blur(4px);
	animation: np-fade .2s var(--np-ease);
}
.np-search__panel {
	position: relative;
	max-width: 760px;
	margin: clamp(12px, 8vh, 90px) auto 0;
	background: var(--np-bg);
	border-radius: var(--np-r-lg);
	box-shadow: var(--np-shadow-lg);
	overflow: hidden;
	animation: np-pop .26s var(--np-ease);
}
@keyframes np-fade { from { opacity: 0; } }
@keyframes np-pop { from { opacity: 0; transform: translateY(-14px) scale(.98); } }

.np-search__form { display: flex; align-items: center; gap: 12px; padding: 18px 20px; border-bottom: 1px solid var(--np-line); }
.np-search__icon { color: var(--np-ink-3); display: flex; }
.np-search__input {
	flex: 1;
	border: 0;
	background: none;
	font-size: 19px;
	font-weight: 550;
	letter-spacing: -.01em;
}
.np-search__input:focus { outline: none; }
.np-search__input::-webkit-search-cancel-button { display: none; }
.np-search__close { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; color: var(--np-ink-3); }
.np-search__close:hover { background: var(--np-bg-mute); color: var(--np-ink); }

.np-search__body { max-height: min(60vh, 520px); overflow-y: auto; padding: 8px; }

.np-searchres__list { display: grid; gap: 2px; }
.np-searchres__item a { display: flex; gap: 14px; padding: 10px; border-radius: var(--np-r); transition: background var(--np-fast); }
.np-searchres__item a:hover { background: var(--np-bg-mute); }
.np-searchres__thumb { flex: none; width: 92px; }
.np-searchres__thumb .np-thumb { border-radius: var(--np-r-sm); aspect-ratio: 16 / 10; }
.np-searchres__body { display: grid; gap: 3px; align-content: center; min-width: 0; }
.np-searchres__cat { color: var(--np-accent); font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.np-searchres__title { font-family: var(--np-head); font-size: 15px; font-weight: 650; line-height: 1.35; }
.np-searchres__time { color: var(--np-ink-3); font-size: 12.5px; }
.np-searchres__all {
	display: flex; align-items: center; justify-content: center; gap: 8px;
	margin-top: 8px; padding: 14px;
	border-top: 1px solid var(--np-line-soft);
	color: var(--np-accent);
	font-weight: 650; font-size: 14.5px;
}
.np-searchres__empty { padding: 32px 16px; text-align: center; color: var(--np-ink-3); }

.np-search__hints { padding: 16px 12px 20px; }
.np-search__hintlabel {
	margin: 14px 0 10px;
	color: var(--np-ink-3);
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.np-search__hintlabel:first-child { margin-top: 0; }
.np-search__tags { display: flex; flex-wrap: wrap; gap: 8px; }

/* drawer */
.np-drawer { position: fixed; inset: 0; z-index: 110; }
.np-drawer[hidden] { display: none; }
.np-drawer__backdrop { position: absolute; inset: 0; background: rgba(6, 8, 12, .5); animation: np-fade .2s var(--np-ease); }
.np-drawer__panel {
	position: relative;
	display: flex;
	flex-direction: column;
	width: min(360px, 88vw);
	height: 100%;
	background: var(--np-bg);
	box-shadow: var(--np-shadow-lg);
	animation: np-slide .3s var(--np-ease);
	overflow-y: auto;
}
@keyframes np-slide { from { transform: translateX(-100%); } }

.np-drawer__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; border-bottom: 1px solid var(--np-line); }
.np-drawer__search { position: relative; display: flex; align-items: center; margin: 16px 18px 8px; }
.np-drawer__search svg { position: absolute; inset-inline-start: 14px; color: var(--np-ink-3); }
.np-drawer__search input {
	width: 100%;
	padding: 11px 14px 11px 42px;
	border: 1px solid var(--np-line);
	border-radius: var(--np-r-pill);
	background: var(--np-bg-soft);
	font-size: 14.5px;
}
.np-drawer__search input:focus { outline: none; border-color: var(--np-accent); background: var(--np-bg); }

.np-mnav { flex: 1; padding: 8px 12px; }
.np-mnav__item { position: relative; border-bottom: 1px solid var(--np-line-soft); }
.np-mnav__item--top > .np-mnav__link { font-weight: 650; font-size: 15.5px; }
.np-mnav__link {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 13px 44px 13px 12px;
	color: var(--np-ink);
	font-size: 15px;
}
.np-mnav__item--top > .np-mnav__link::before {
	content: "";
	width: 4px; height: 16px;
	border-radius: 2px;
	background: var(--np-cat, var(--np-accent));
	flex: none;
}
.np-mnav__toggle {
	position: absolute;
	top: 4px;
	inset-inline-end: 4px;
	display: grid; place-items: center;
	width: 38px; height: 38px;
	border-radius: 50%;
	color: var(--np-ink-3);
	transition: background var(--np-fast), transform var(--np-fast);
}
.np-mnav__toggle[aria-expanded="true"] { transform: rotate(180deg); background: var(--np-bg-mute); }
.np-mnav__sub { display: none; padding: 0 0 8px 26px; }
.np-mnav__item.is-open > .np-mnav__sub { display: block; }
.np-mnav__sub .np-mnav__item { border-bottom: 0; }
.np-mnav__sub .np-mnav__link { padding-block: 9px; font-size: 14px; color: var(--np-ink-2); }

.np-drawer__foot { display: grid; gap: 16px; padding: 20px 18px calc(24px + env(safe-area-inset-bottom)); border-top: 1px solid var(--np-line); }
.np-drawer__copy { color: var(--np-ink-3); font-size: 12.5px; }

/* სოციალური */
.np-social { display: flex; align-items: center; gap: 6px; }
.np-social__link {
	display: grid;
	place-items: center;
	width: 34px; height: 34px;
	border-radius: 50%;
	color: var(--np-ink-3);
	transition: background var(--np-fast), color var(--np-fast), transform var(--np-fast);
}
.np-social__link:hover { color: #fff; transform: translateY(-2px); }
.np-social__link--facebook:hover { background: #1877F2; }
.np-social__link--x:hover { background: #0F1419; }
.np-social__link--instagram:hover { background: linear-gradient(45deg, #F09433, #DC2743, #BC1888); }
.np-social__link--youtube:hover { background: #FF0000; }
.np-social__link--telegram:hover { background: #229ED9; }
.np-social__link--tiktok:hover { background: #010101; }
.np-social__link--linkedin:hover { background: #0A66C2; }
.np-social__link--rss:hover { background: #F26522; }

.np-social--sm .np-social__link { width: 28px; height: 28px; }
.np-social--sm svg { width: 15px; height: 15px; }
.np-social--lg .np-social__link { width: 42px; height: 42px; background: var(--np-bg-mute); }
.np-social--footer .np-social__link { background: rgba(255, 255, 255, .06); color: rgba(255, 255, 255, .7); }

/* 8. HERO / SLIDER ========================================================= */

.np-hero { padding-top: clamp(24px, 3vw, 40px); }

.np-hero__grid { display: grid; gap: var(--np-gap); }
@media (min-width: 1024px) {
	.np-hero__grid { grid-template-columns: minmax(0, 1.72fr) minmax(0, 1fr); gap: var(--np-gap-lg); }
}

.np-hero__lead { position: relative; border-radius: var(--np-r-lg); overflow: hidden; isolation: isolate; }
.np-hero__media { display: block; position: relative; }
.np-hero__lead .np-thumb { aspect-ratio: 16 / 9; }
@media (max-width: 640px) { .np-hero__lead .np-thumb { aspect-ratio: 4 / 3; } }

.np-hero__shade {
	position: absolute; inset: 0;
	background: linear-gradient(to top, rgba(6, 8, 12, .92) 0%, rgba(6, 8, 12, .62) 34%, rgba(6, 8, 12, .12) 62%, transparent 84%);
}

.np-hero__body {
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	display: grid;
	gap: 14px;
	justify-items: start;
	padding: clamp(20px, 3vw, 36px);
	pointer-events: none;
}
.np-hero__body > * { pointer-events: auto; }

.np-hero__title {
	font-family: var(--np-head);
	font-size: clamp(24px, 3.4vw, 42px);
	font-weight: 750;
	line-height: 1.16;
	letter-spacing: -.028em;
	color: #fff;
	text-wrap: balance;
	max-width: 20ch;
}
.np-hero__title a { background-image: linear-gradient(currentColor, currentColor); background-size: 0 1.5px; background-position: 0 100%; background-repeat: no-repeat; transition: background-size var(--np-base); }
.np-hero__title a:hover { background-size: 100% 1.5px; }

.np-hero__excerpt {
	max-width: 58ch;
	color: rgba(255, 255, 255, .8);
	font-size: clamp(14.5px, 1.2vw, 16.5px);
	line-height: 1.55;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
@media (max-width: 640px) { .np-hero__excerpt { display: none; } }

.np-hero__side { display: grid; gap: 4px; align-content: start; }
.np-hero__side .np-card--list { padding-block: 14px; border-bottom: 1px solid var(--np-line); }
.np-hero__side .np-card--list:last-child { border-bottom: 0; }
@media (min-width: 1024px) { .np-hero__side .np-card--list:first-child { padding-top: 0; } }

/* მოზაიკა */
.np-mosaic { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.np-mosaic__cell--0 { grid-column: 1 / -1; }
.np-mosaic__cell--0 .np-cover { aspect-ratio: 16 / 9; }
.np-cover { position: relative; aspect-ratio: 4 / 3; border-radius: var(--np-r); overflow: hidden; isolation: isolate; }
.np-cover .np-thumb, .np-cover .np-thumb__img { height: 100%; width: 100%; object-fit: cover; }
.np-cover__shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(6, 8, 12, .9), rgba(6, 8, 12, .35) 48%, transparent 78%); }
.np-cover__body { position: absolute; inset-inline: 0; bottom: 0; display: grid; gap: 10px; justify-items: start; padding: clamp(14px, 2vw, 24px); }
.np-cover__title {
	font-family: var(--np-head);
	font-size: clamp(15px, 1.7vw, 20px);
	font-weight: 700;
	line-height: 1.28;
	color: #fff;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.np-mosaic__cell--0 .np-cover__title { font-size: clamp(22px, 3vw, 36px); max-width: 22ch; }
.np-cover__excerpt { color: rgba(255, 255, 255, .78); font-size: 15px; max-width: 56ch; }
.np-cover .np-thumb__img { transition: transform .6s var(--np-ease); }
.np-cover:hover .np-thumb__img { transform: scale(1.05); }

@media (min-width: 900px) {
	.np-mosaic { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.np-mosaic__cell--0 { grid-column: span 4; }
}

/* სლაიდერი */
.np-hero--full { padding-top: 0; }
.np-slider { position: relative; overflow: hidden; }
.np-slider__track { display: flex; transition: transform .6s var(--np-ease); }
.np-slide { position: relative; flex: 0 0 100%; min-height: clamp(380px, 58vh, 620px); display: grid; }
.np-slide .np-thumb, .np-slide .np-thumb__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.np-slide__shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(6, 8, 12, .94), rgba(6, 8, 12, .5) 45%, rgba(6, 8, 12, .15)); }
.np-slide__body { position: relative; align-self: end; display: grid; gap: 14px; justify-items: start; padding-bottom: clamp(48px, 7vh, 84px); }
.np-slide__title { font-family: var(--np-head); font-size: clamp(26px, 4vw, 50px); line-height: 1.12; letter-spacing: -.03em; color: #fff; max-width: 18ch; text-wrap: balance; }
.np-slide__excerpt { color: rgba(255, 255, 255, .8); font-size: clamp(15px, 1.3vw, 17px); max-width: 58ch; }

.np-slider__nav {
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	display: grid; place-items: center;
	width: 46px; height: 46px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .14);
	backdrop-filter: blur(8px);
	color: #fff;
	transition: background var(--np-fast);
	z-index: 3;
}
.np-slider__nav:hover { background: rgba(255, 255, 255, .28); }
.np-slider__nav--prev { inset-inline-start: 20px; }
.np-slider__nav--next { inset-inline-end: 20px; }
@media (max-width: 720px) { .np-slider__nav { display: none; } }

.np-slider__dots { position: absolute; bottom: 22px; inset-inline: 0; display: flex; justify-content: center; gap: 8px; z-index: 3; }
.np-slider__dot { padding: 6px; }
.np-slider__dot span { display: block; width: 24px; height: 3px; border-radius: 2px; background: rgba(255, 255, 255, .35); transition: background var(--np-fast), width var(--np-base); }
.np-slider__dot.is-active span { background: var(--np-accent); width: 40px; }

/* 9. CARDS ================================================================= */

.np-thumb { position: relative; overflow: hidden; background: var(--np-bg-mute); border-radius: var(--np-r); aspect-ratio: 16 / 9; }
.np-thumb__img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s var(--np-ease), opacity var(--np-base); }
.np-thumb--empty {
	display: grid;
	place-items: center;
	background: linear-gradient(135deg, color-mix(in srgb, var(--np-cat, var(--np-accent)) 16%, var(--np-bg-mute)), var(--np-bg-mute));
}
.np-thumb--empty span { font-family: var(--np-head); font-size: 2.2em; font-weight: 800; color: color-mix(in srgb, var(--np-cat, var(--np-accent)) 60%, transparent); }

.np-card { position: relative; min-width: 0; }
.np-card__media { position: relative; display: block; }
.np-card:hover .np-thumb__img { transform: scale(1.055); }

.np-card__title {
	font-family: var(--np-head);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -.018em;
	text-wrap: pretty;
}
.np-card__title a { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.np-card:hover .np-card__title a { color: var(--np-cat, var(--np-accent)); }

.np-card__excerpt {
	color: var(--np-ink-2);
	font-size: 14.5px;
	line-height: 1.58;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* md */
.np-card--md { display: grid; gap: 14px; align-content: start; }
.np-card--md .np-card__body { display: grid; gap: 9px; }
.np-card--md .np-card__title { font-size: clamp(16px, 1.5vw, 18.5px); }

/* lg */
.np-card--lg { display: grid; gap: 18px; align-content: start; }
.np-card--lg .np-card__body { display: grid; gap: 11px; }
.np-card--lg .np-card__title { font-size: clamp(19px, 2vw, 25px); }
.np-card--lg .np-card__title a { -webkit-line-clamp: 3; }

/* sm */
.np-card--sm { display: grid; gap: 11px; align-content: start; }
.np-card--sm .np-card__body { display: grid; gap: 7px; }
.np-card--sm .np-card__title { font-size: 15.5px; }

/* list */
.np-card--list { display: grid; grid-template-columns: 108px minmax(0, 1fr); gap: 14px; align-items: start; }
.np-card--list .np-thumb { aspect-ratio: 4 / 3; border-radius: var(--np-r-sm); }
.np-card--list .np-card__body { display: grid; gap: 6px; }
.np-card--list .np-card__title { font-size: 15.5px; line-height: 1.34; }
.np-card--list .np-card__title a { -webkit-line-clamp: 3; }

/* wide */
.np-card--wide { display: grid; gap: 20px; padding-block: 26px; border-bottom: 1px solid var(--np-line); }
.np-card--wide .np-card__body { display: grid; gap: 10px; align-content: start; }
.np-card--wide .np-card__title { font-size: clamp(18px, 2vw, 23px); }
.np-card--wide .np-thumb { border-radius: var(--np-r); }
@media (min-width: 720px) { .np-card--wide { grid-template-columns: 300px minmax(0, 1fr); } }

/* num */
.np-card--num {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) 76px;
	gap: 16px;
	align-items: center;
	padding: 16px 0;
	border-bottom: 1px solid var(--np-line);
}
.np-card__num {
	font-family: var(--np-head);
	font-size: 30px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -.04em;
	color: transparent;
	-webkit-text-stroke: 1.4px color-mix(in srgb, var(--np-cat, var(--np-accent)) 55%, transparent);
	transition: color var(--np-base);
}
.np-card--num:hover .np-card__num { color: var(--np-cat, var(--np-accent)); }
.np-card--num .np-card__body { display: grid; gap: 6px; }
.np-card--num .np-card__title { font-size: 16px; }
.np-card--num .np-thumb { aspect-ratio: 1; border-radius: var(--np-r-sm); }

/* კარტების სტილები */
.np-cards-bordered .np-card--md,
.np-cards-bordered .np-card--sm,
.np-cards-bordered .np-card--lg {
	padding: 14px;
	border: 1px solid var(--np-line);
	border-radius: var(--np-r-lg);
	background: var(--np-bg);
	transition: border-color var(--np-fast);
}
.np-cards-bordered .np-card--md:hover { border-color: var(--np-cat, var(--np-accent)); }

.np-cards-elevated .np-card--md,
.np-cards-elevated .np-card--sm,
.np-cards-elevated .np-card--lg {
	padding: 14px;
	border-radius: var(--np-r-lg);
	background: var(--np-bg);
	box-shadow: var(--np-shadow-sm);
	transition: box-shadow var(--np-base), transform var(--np-base);
}
.np-cards-elevated .np-card--md:hover { box-shadow: var(--np-shadow); transform: translateY(-3px); }

/* 10. HOME SECTIONS ======================================================== */

/* ლენტა */
.np-rail { position: relative; }
.np-rail__track {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(240px, 1fr);
	gap: var(--np-gap);
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	padding-bottom: 4px;
	margin-inline: calc(clamp(16px, 4vw, 32px) * -1);
	padding-inline: clamp(16px, 4vw, 32px);
}
.np-rail__track::-webkit-scrollbar { display: none; }
.np-rail__item { scroll-snap-align: start; }
.np-rail__item--cover { min-width: 300px; }
.np-rail__item--cover .np-cover { aspect-ratio: 3 / 4; }

@media (min-width: 1100px) {
	/* პოპულარული — ბადედ იქცევა, სქროლის საჭიროების გარეშე. */
	.np-sec--popular .np-rail__track {
		grid-auto-flow: row;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		overflow: visible;
		margin-inline: 0;
		padding-inline: 0;
	}
	/* რედაქტორის რჩეული — რჩება ლენტად, მაგრამ უფრო ფართო კარტებით. */
	.np-sec--editors .np-rail__track { grid-auto-columns: minmax(0, 1fr); }
	.np-rail__item--cover { min-width: 0; }
}

.np-rail__nav {
	position: absolute;
	top: 34%;
	display: none;
	place-items: center;
	width: 40px; height: 40px;
	border-radius: 50%;
	background: var(--np-bg);
	border: 1px solid var(--np-line);
	box-shadow: var(--np-shadow);
	color: var(--np-ink);
	z-index: 4;
}
.np-rail__nav--prev { inset-inline-start: -14px; }
.np-rail__nav--next { inset-inline-end: -14px; }
.np-rail:hover .np-rail__nav { display: grid; }
@media (max-width: 1099px) { .np-rail:hover .np-rail__nav { display: none; } }

/* კატეგორიების ბლოკები */
.np-catblock + .np-catblock { margin-top: var(--np-sec); }
.np-catblock__grid { display: grid; gap: var(--np-gap-lg); }
@media (min-width: 900px) { .np-catblock__grid { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); } }
.np-catblock__list { display: grid; gap: 0; align-content: start; }
.np-catblock__list .np-card--list { padding-block: 15px; border-bottom: 1px solid var(--np-line-soft); }
.np-catblock__list .np-card--list:first-child { padding-top: 0; }
.np-catblock__list .np-card--list:last-child { border-bottom: 0; }

/* რედაქტორის რჩეული */
.np-editors {
	position: relative;
	padding: clamp(30px, 4vw, 52px);
	border-radius: var(--np-r-lg);
	background: var(--np-bg-invert);
	background-image: radial-gradient(120% 90% at 12% 0%, rgba(var(--np-accent-rgb), .22), transparent 58%);
	overflow: hidden;
}
.np-editors .np-cover__title { font-size: 18px; }

/* ყველაზე წაკითხული */
.np-numgrid { display: grid; gap: 0 var(--np-gap-lg); }
@media (min-width: 800px) { .np-numgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.np-numgrid .np-card--num:last-child,
.np-numgrid .np-card--num:nth-last-child(2):nth-child(odd) { border-bottom: 0; }

/* newsletter */
.np-newsletter {
	position: relative;
	display: grid;
	gap: 22px;
	padding: clamp(32px, 5vw, 60px);
	border-radius: var(--np-r-lg);
	background: var(--np-bg-invert);
	color: #fff;
	overflow: hidden;
	text-align: center;
	justify-items: center;
}
.np-newsletter__glow {
	position: absolute;
	inset-block-start: -55%;
	inset-inline-start: 50%;
	translate: -50% 0;
	width: 700px; height: 700px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(var(--np-accent-rgb), .3), transparent 62%);
	pointer-events: none;
}
.np-newsletter__body { position: relative; display: grid; gap: 12px; justify-items: center; max-width: 620px; }
.np-newsletter__icon {
	display: grid; place-items: center;
	width: 54px; height: 54px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .14);
	color: #fff;
	margin-bottom: 4px;
}
.np-newsletter__title { font-family: var(--np-head); font-size: clamp(22px, 3vw, 32px); letter-spacing: -.025em; }
.np-newsletter__text { color: rgba(255, 255, 255, .7); font-size: 15.5px; line-height: 1.6; }

.np-newsletter__form { position: relative; display: flex; gap: 10px; width: min(520px, 100%); }
.np-newsletter__form input {
	flex: 1;
	min-width: 0;
	padding: 14px 20px;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: var(--np-r-pill);
	background: rgba(255, 255, 255, .07);
	color: #fff;
	font-size: 15px;
}
.np-newsletter__form input::placeholder { color: rgba(255, 255, 255, .45); }
.np-newsletter__form input:focus { outline: none; border-color: rgba(255, 255, 255, .4); background: rgba(255, 255, 255, .12); }
.np-newsletter__note { position: relative; color: rgba(255, 255, 255, .42); font-size: 12.5px; }

@media (max-width: 520px) {
	.np-newsletter__form { flex-direction: column; }
	.np-newsletter__form .np-btn { justify-content: center; }
}

/* load more */
.np-loadmore { display: flex; justify-content: center; margin-top: 40px; }
.np-loadmore .np-btn.is-loading { opacity: .6; pointer-events: none; }

/* 11. ARTICLE ============================================================== */

.np-crumbs { padding-block: 20px 4px; font-size: 13px; color: var(--np-ink-3); }
.np-crumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.np-crumbs li { display: inline-flex; align-items: center; gap: 6px; }
.np-crumbs li + li::before { content: "/"; opacity: .45; }
.np-crumbs a:hover { color: var(--np-accent); }
.np-crumbs [aria-current] { color: var(--np-ink-2); }
.np-crumbs--light, .np-crumbs--light a, .np-crumbs--light [aria-current] { color: rgba(255, 255, 255, .72); }

.np-arthead { padding-block: 18px 26px; }
.np-arthead__inner { display: grid; gap: 16px; justify-items: start; max-width: 860px; }

.np-article__title {
	font-family: var(--np-head);
	font-size: clamp(28px, 4.2vw, 50px);
	font-weight: 750;
	line-height: 1.13;
	letter-spacing: -.03em;
	text-wrap: balance;
}
.np-article__sub {
	color: var(--np-ink-2);
	font-size: clamp(16px, 1.6vw, 20px);
	line-height: 1.55;
	font-weight: 450;
	max-width: 62ch;
}

.np-artcover { position: relative; min-height: clamp(400px, 62vh, 660px); display: grid; align-items: end; margin-bottom: 40px; }
.np-artcover .np-thumb, .np-artcover .np-thumb__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.np-artcover__shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(6, 8, 12, .95), rgba(6, 8, 12, .55) 45%, rgba(6, 8, 12, .2)); }
.np-artcover__body { position: relative; display: grid; gap: 16px; justify-items: start; padding-bottom: clamp(36px, 6vh, 64px); max-width: 900px; }
.np-artcover__body .np-article__title, .np-artcover__body .np-article__sub { color: #fff; }
.np-artcover__body .np-article__sub { color: rgba(255, 255, 255, .78); }

/* სტატიის მთავარი ფოტო — ზომიერი სიგანე, ორიგინალის პროპორცია, კადრირების გარეშე. */
.np-artfig { margin-block: 10px 40px; }
.np-artfig__img {
	display: block;
	width: 100%;
	max-width: 920px;
	height: auto;              /* სიმაღლე თავად მოერგება პროპორციას */
	margin-inline: auto;
	border-radius: var(--np-r-lg);
}
.np-artfig--boxed .np-artfig__img { max-width: 780px; }
.np-artfig--portrait .np-artfig__img { max-width: 620px; }
.np-artfig__cap { max-width: 920px; margin: 14px auto 0; color: var(--np-ink-3); font-size: 13.5px; text-align: center; }

@media (max-width: 640px) {
	.np-artfig { margin-block: 6px 28px; }
	.np-artfig__img { border-radius: var(--np-r); }
}

/* byline */
.np-byline { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; width: 100%; }
.np-byline__author { display: inline-flex; align-items: center; gap: 11px; }
.np-byline__avatar { border-radius: 50%; }
.np-byline__author span { display: grid; line-height: 1.35; }
.np-byline__author strong { font-size: 14.5px; font-weight: 650; }
.np-byline__author time { color: var(--np-ink-3); font-size: 13px; }
.np-byline__author:hover strong { color: var(--np-accent); }
.np-byline__stats { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin-inline-start: auto; color: var(--np-ink-3); font-size: 13.5px; }
.np-byline__stat { display: inline-flex; align-items: center; gap: 6px; }
.np-byline__stat--upd { color: var(--np-accent); font-weight: 550; }
.np-byline--light { color: rgba(255, 255, 255, .8); }
.np-byline--light .np-byline__author strong { color: #fff; }
.np-byline--light .np-byline__author time,
.np-byline--light .np-byline__stats { color: rgba(255, 255, 255, .62); }

/* კონტენტის ტიპოგრაფია */
.np-content {
	font-size: clamp(17px, 1.35vw, 18.5px);
	line-height: 1.78;
	color: var(--np-ink);
	letter-spacing: -.003em;
}
.np-content > * + * { margin-top: 1.35em; }
.np-content p { text-wrap: pretty; }

.np-content :is(h2, h3, h4) { font-family: var(--np-head); letter-spacing: -.022em; scroll-margin-top: calc(var(--np-header-h) + 20px); }
.np-content h2 { margin-top: 1.9em; font-size: 1.5em; }
.np-content h3 { margin-top: 1.7em; font-size: 1.26em; }
.np-content h4 { margin-top: 1.5em; font-size: 1.1em; }

.np-content a {
	color: var(--np-accent);
	text-decoration: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 3px;
	text-decoration-color: rgba(var(--np-accent-rgb), .35);
}
.np-content a:hover { text-decoration-color: currentColor; }

.np-content :is(ul, ol) { padding-inline-start: 1.4em; }
.np-content ul { list-style: none; }
.np-content ul li { position: relative; }
.np-content ul li::before {
	content: "";
	position: absolute;
	inset-inline-start: -1.05em;
	top: .72em;
	width: 6px; height: 6px;
	border-radius: 50%;
	background: var(--np-cat, var(--np-accent));
}
.np-content ol { list-style: decimal; }
.np-content ol li::marker { color: var(--np-cat, var(--np-accent)); font-weight: 700; }
.np-content li + li { margin-top: .5em; }

.np-content blockquote {
	position: relative;
	margin-block: 1.9em;
	padding: 4px 0 4px 26px;
	border-inline-start: 3px solid var(--np-cat, var(--np-accent));
	font-family: var(--np-head);
	font-size: 1.16em;
	font-style: italic;
	line-height: 1.5;
	color: var(--np-ink);
}
.np-content blockquote cite { display: block; margin-top: .7em; font-size: .74em; font-style: normal; color: var(--np-ink-3); }

.np-content :is(img, figure img) { border-radius: var(--np-r); }
.np-content figure { margin-block: 1.9em; }
.np-content figcaption { margin-top: 10px; color: var(--np-ink-3); font-size: 13.5px; text-align: center; }

.np-content :is(pre, code) { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .88em; }
.np-content code { padding: 2px 6px; border-radius: 5px; background: var(--np-bg-mute); }
.np-content pre { padding: 20px; border-radius: var(--np-r); background: var(--np-bg-invert); color: #E6EAF2; overflow-x: auto; }
.np-content pre code { background: none; padding: 0; }

.np-content hr { margin-block: 2.4em; border: 0; border-top: 1px solid var(--np-line); }

.np-content table { width: 100%; border-collapse: collapse; font-size: .93em; }
.np-content :is(th, td) { padding: 12px 14px; border-bottom: 1px solid var(--np-line); text-align: start; }
.np-content th { font-weight: 650; background: var(--np-bg-soft); }

.np-content .wp-block-image, .np-content .alignwide { margin-inline: auto; }
@media (min-width: 1100px) {
	.np-layout--narrow .np-content .alignwide,
	.np-layout--wide .np-content .alignwide { width: min(1080px, calc(100vw - 64px)); margin-inline: calc(50% - min(540px, calc(50vw - 32px))); }
}

.np-embed { position: relative; margin-block: 1.9em; border-radius: var(--np-r); overflow: hidden; }
.np-embed iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; }

.np-pagelinks { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 2.4em; font-size: 14px; }
.np-pagelinks :is(a, > span > span) { display: grid; place-items: center; min-width: 36px; height: 36px; padding-inline: 10px; border: 1px solid var(--np-line); border-radius: var(--np-r-sm); }
.np-pagelinks a:hover { border-color: var(--np-accent); color: var(--np-accent); }

.np-source { margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--np-line); color: var(--np-ink-3); font-size: 14px; }
.np-source a { color: var(--np-accent); text-decoration: underline; text-underline-offset: 3px; }

.np-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-top: 30px; }
.np-tags__label { color: var(--np-ink-3); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; margin-inline-end: 4px; }

/* გაზიარება */
.np-share { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.np-share--top { margin-bottom: 26px; padding-bottom: 20px; border-bottom: 1px solid var(--np-line); }
.np-share--bottom { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--np-line); }
.np-share__label { color: var(--np-ink-3); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.np-share__list { display: flex; flex-wrap: wrap; gap: 8px; }
.np-share__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px;
	border-radius: var(--np-r-pill);
	border: 1px solid var(--np-line);
	color: var(--np-ink-2);
	font-size: 13.5px;
	font-weight: 600;
	transition: background var(--np-fast), color var(--np-fast), border-color var(--np-fast), transform var(--np-fast);
}
.np-share__btn span { display: none; }
.np-share--labels .np-share__btn { padding-inline: 14px 16px; }
.np-share--labels .np-share__btn span { display: inline; }
.np-share__btn:hover { color: #fff; border-color: transparent; transform: translateY(-2px); }
.np-share__btn--facebook:hover { background: #1877F2; }
.np-share__btn--x:hover { background: #0F1419; }
.np-share__btn--telegram:hover { background: #229ED9; }
.np-share__btn--whatsapp:hover { background: #25D366; }
.np-share__btn--linkedin:hover { background: #0A66C2; }
.np-share__btn--mail:hover { background: var(--np-ink); }
.np-share__btn--copy:hover { background: var(--np-accent); }
.np-share__btn.is-copied { background: #16A34A; color: #fff; border-color: transparent; }

/* ავტორის ბლოკი */
.np-authorbox {
	display: grid;
	gap: 20px;
	margin-top: 40px;
	padding: clamp(22px, 3vw, 32px);
	border-radius: var(--np-r-lg);
	background: var(--np-bg-soft);
	border: 1px solid var(--np-line-soft);
}
@media (min-width: 640px) { .np-authorbox { grid-template-columns: auto minmax(0, 1fr); } }
.np-authorbox__avatar img { border-radius: 50%; }
.np-authorbox__body { display: grid; gap: 8px; align-content: start; }
.np-authorbox__label { color: var(--np-accent); font-size: 11.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.np-authorbox__name { font-family: var(--np-head); font-size: 21px; }
.np-authorbox__name a:hover { color: var(--np-accent); }
.np-authorbox__bio { color: var(--np-ink-2); font-size: 14.5px; line-height: 1.65; }
.np-authorbox__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; margin-top: 6px; font-size: 13.5px; }
.np-authorbox__count { color: var(--np-ink-3); }
.np-authorbox__link { display: inline-flex; align-items: center; gap: 6px; color: var(--np-ink-2); font-weight: 600; }
.np-authorbox__link:hover { color: var(--np-accent); }

/* prev / next */
.np-prevnext { display: grid; gap: 16px; margin-top: 40px; }
@media (min-width: 720px) { .np-prevnext { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.np-prevnext__item {
	display: grid;
	gap: 8px;
	padding: 20px 22px;
	border: 1px solid var(--np-line);
	border-radius: var(--np-r-lg);
	transition: border-color var(--np-fast), background var(--np-fast);
}
.np-prevnext__item:hover { border-color: var(--np-accent); background: var(--np-bg-soft); }
.np-prevnext__item--empty { border: 0; padding: 0; }
.np-prevnext__label { display: inline-flex; align-items: center; gap: 6px; color: var(--np-ink-3); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.np-prevnext__item--next { text-align: end; }
.np-prevnext__item--next .np-prevnext__label { justify-content: flex-end; }
.np-prevnext__title { font-family: var(--np-head); font-size: 16.5px; font-weight: 650; line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* 12. COMMENTS ============================================================= */

.np-comments { margin-top: 48px; padding-top: 36px; border-top: 1px solid var(--np-line); }
.np-comments__head { margin-bottom: 26px; }
.np-comments__title { display: flex; align-items: center; gap: 10px; font-family: var(--np-head); font-size: 22px; }
.np-comments__title svg { color: var(--np-accent); }
.np-comments__note { margin-top: 8px; color: var(--np-ink-3); font-size: 13.5px; }
.np-comments__closed { color: var(--np-ink-3); font-size: 14px; }

.np-comments__list { display: grid; gap: 6px; }
.np-comments__list .children { padding-inline-start: clamp(18px, 4vw, 42px); border-inline-start: 2px solid var(--np-line-soft); margin-block: 6px; }

.np-comment__body { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px; padding: 16px 0; }
.np-comment__img { border-radius: 50%; }
.np-comment__main { display: grid; gap: 8px; min-width: 0; }
.np-comment__head { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.np-comment__author { font-weight: 650; font-size: 14.5px; }
.np-comment__badge { padding: 3px 8px; border-radius: var(--np-r-pill); background: rgba(var(--np-accent-rgb), .12); color: var(--np-accent); font-size: 11px; font-weight: 700; }
.np-comment__time { color: var(--np-ink-3); font-size: 12.5px; }
.np-comment__text { color: var(--np-ink-2); font-size: 15px; line-height: 1.7; }
.np-comment__text > * + * { margin-top: .9em; }
.np-comment__pending { color: var(--np-accent); font-size: 13.5px; font-style: italic; }
.np-comment__foot { display: flex; gap: 16px; font-size: 13px; }
.np-comment__foot a { display: inline-flex; align-items: center; gap: 5px; color: var(--np-ink-3); font-weight: 600; }
.np-comment__foot a:hover { color: var(--np-accent); }

.np-cform, .comment-respond { margin-top: 36px; padding: clamp(22px, 3vw, 30px); border-radius: var(--np-r-lg); background: var(--np-bg-soft); border: 1px solid var(--np-line-soft); }
.comment-respond .comment-reply-title, .np-cform__title { font-family: var(--np-head); font-size: 19px; margin-bottom: 18px; }
.comment-respond .comment-reply-title small { margin-inline-start: 10px; font-size: 13px; font-weight: 400; }
.comment-form { display: grid; gap: 16px; }
.np-field { display: grid; gap: 7px; }
.np-field label { font-size: 13.5px; font-weight: 600; }
.np-field label span { color: var(--np-accent); }
.np-field :is(input, textarea) {
	width: 100%;
	padding: 12px 15px;
	border: 1px solid var(--np-line);
	border-radius: var(--np-r);
	background: var(--np-bg);
	font-size: 15px;
	transition: border-color var(--np-fast), box-shadow var(--np-fast);
}
.np-field :is(input, textarea):focus { outline: none; border-color: var(--np-accent); box-shadow: 0 0 0 3px rgba(var(--np-accent-rgb), .12); }
.np-field textarea { resize: vertical; min-height: 130px; }
@media (min-width: 640px) {
	.comment-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.comment-form > :not(.np-field--half) { grid-column: 1 / -1; }
}
.comment-form .form-submit { margin: 0; }
.comment-form :is(.comment-notes, .comment-form-cookies-consent) { font-size: 13px; color: var(--np-ink-3); }
.comment-form-cookies-consent { display: flex; align-items: center; gap: 8px; }

/* 13. ARCHIVE / SEARCH ===================================================== */

.np-archead { position: relative; padding-block: 8px 34px; }
.np-archead__inner { display: grid; gap: 14px; justify-items: start; position: relative; max-width: 860px; }
.np-archead__eyebrow { color: var(--np-accent); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.np-archead__title {
	font-family: var(--np-head);
	font-size: clamp(30px, 4.6vw, 52px);
	letter-spacing: -.032em;
	line-height: 1.1;
}
.np-archead__desc { color: var(--np-ink-2); font-size: clamp(15px, 1.5vw, 17.5px); line-height: 1.6; max-width: 65ch; }
.np-archead__count { color: var(--np-ink-3); font-size: 13.5px; }
.np-archead__subs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }

.np-archead--img { min-height: 320px; display: grid; align-items: end; margin-bottom: 36px; padding-top: 60px; }
.np-archead__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.np-archead__shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(6, 8, 12, .93), rgba(6, 8, 12, .5) 55%, rgba(6, 8, 12, .25)); }
.np-archead--img :is(.np-archead__title, .np-archead__desc, .np-archead__count) { color: #fff; }
.np-archead--img .np-archead__desc { color: rgba(255, 255, 255, .78); }
.np-archead--img .np-chip { background: rgba(255, 255, 255, .14); color: #fff; }

.np-archead__form { position: relative; display: flex; align-items: center; gap: 10px; width: min(560px, 100%); margin-top: 8px; }
.np-archead__form > svg { position: absolute; inset-inline-start: 16px; color: var(--np-ink-3); }
.np-archead__form input {
	flex: 1;
	padding: 13px 18px 13px 46px;
	border: 1px solid var(--np-line);
	border-radius: var(--np-r-pill);
	background: var(--np-bg-soft);
	font-size: 15px;
}
.np-archead__form input:focus { outline: none; border-color: var(--np-accent); background: var(--np-bg); }

.np-searchlist { display: grid; }
.np-searchlist .np-card--wide:first-child { padding-top: 0; }

.np-pagination { margin-top: 44px; }
.np-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; }
.np-pagination :is(a, span).page-numbers,
.np-pagination .page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 42px; height: 42px;
	padding-inline: 14px;
	border: 1px solid var(--np-line);
	border-radius: var(--np-r-sm);
	color: var(--np-ink-2);
	font-size: 14.5px;
	font-weight: 600;
	transition: background var(--np-fast), color var(--np-fast), border-color var(--np-fast);
}
.np-pagination .page-numbers:hover { border-color: var(--np-accent); color: var(--np-accent); }
.np-pagination .page-numbers.current { background: var(--np-accent); border-color: var(--np-accent); color: #fff; }
.np-pagination .page-numbers.dots { border: 0; min-width: 24px; }
.np-pagination :is(.prev, .next) { display: inline-flex; gap: 6px; align-items: center; }
@media (max-width: 520px) { .np-pagination :is(.prev, .next) span { display: none; } }

/* ცარიელი */
.np-empty { display: grid; gap: 14px; justify-items: center; text-align: center; padding: clamp(48px, 9vw, 90px) 20px; }
.np-empty__icon { display: grid; place-items: center; width: 72px; height: 72px; border-radius: 50%; background: var(--np-bg-mute); color: var(--np-ink-3); }
.np-empty__title { font-family: var(--np-head); font-size: 23px; }
.np-empty__text { color: var(--np-ink-3); max-width: 46ch; }
.np-empty__cats { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 10px; }

/* 404 */
.np-404 { display: grid; gap: 18px; justify-items: center; text-align: center; padding: clamp(52px, 10vw, 110px) 20px clamp(40px, 6vw, 70px); }
.np-404__code {
	font-family: var(--np-head);
	font-size: clamp(84px, 16vw, 180px);
	font-weight: 800;
	line-height: .9;
	letter-spacing: -.06em;
	color: transparent;
	-webkit-text-stroke: 2px color-mix(in srgb, var(--np-accent) 45%, transparent);
}
.np-404__title { font-family: var(--np-head); font-size: clamp(24px, 3.4vw, 36px); }
.np-404__text { color: var(--np-ink-2); max-width: 52ch; }
.np-404__form { position: relative; display: flex; gap: 10px; width: min(520px, 100%); margin-top: 6px; }
.np-404__form > svg { position: absolute; inset-inline-start: 16px; top: 50%; translate: 0 -50%; color: var(--np-ink-3); }
.np-404__form input { flex: 1; padding: 13px 18px 13px 46px; border: 1px solid var(--np-line); border-radius: var(--np-r-pill); background: var(--np-bg-soft); }
.np-404__form input:focus { outline: none; border-color: var(--np-accent); }

.np-page .np-content { max-width: 760px; }

/* 14. FOOTER =============================================================== */

.np-footer {
	position: relative;
	margin-top: var(--np-sec);
	background: var(--np-bg-invert);
	color: rgba(255, 255, 255, .68);
	overflow: hidden;
}
.np-footer__glow {
	position: absolute;
	inset-block-start: -220px;
	inset-inline-start: 8%;
	width: 620px; height: 620px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(var(--np-accent-rgb), .18), transparent 62%);
	pointer-events: none;
}

.np-footer__top {
	position: relative;
	display: grid;
	gap: clamp(30px, 4vw, 52px);
	padding-block: clamp(44px, 6vw, 72px);
}
@media (min-width: 720px) { .np-footer__top { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .np-footer__top { grid-template-columns: 1.6fr 1fr 1.3fr 1.1fr; } }

.np-footer__col { display: grid; gap: 16px; align-content: start; min-width: 0; }
.np-footer .np-logo__text { color: #fff; }
.np-footer__about { color: rgba(255, 255, 255, .58); font-size: 14.5px; line-height: 1.7; max-width: 42ch; }

.np-footer__title {
	color: #fff;
	font-family: var(--np-head);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: .02em;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.np-footer__links { display: grid; gap: 2px; }
.np-footer__links a {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 6px 0;
	color: rgba(255, 255, 255, .62);
	font-size: 14.5px;
	transition: color var(--np-fast), padding var(--np-fast);
}
.np-footer__links a:hover { color: #fff; padding-inline-start: 5px; }
.np-footer__bullet { width: 5px; height: 5px; border-radius: 50%; background: var(--np-cat, var(--np-accent)); flex: none; }
.np-footer__links em { margin-inline-start: auto; font-style: normal; font-size: 12px; color: rgba(255, 255, 255, .3); }

.np-footer__posts { display: grid; gap: 14px; }
.np-footer__posts a { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; align-items: center; }
.np-footer__thumb .np-thumb { aspect-ratio: 1; border-radius: var(--np-r-sm); }
.np-footer__postbody { display: grid; gap: 3px; min-width: 0; }
.np-footer__posttitle { color: rgba(255, 255, 255, .8); font-size: 13.8px; font-weight: 550; line-height: 1.4; }
.np-footer__posts a:hover .np-footer__posttitle { color: #fff; }
.np-footer__posttime { color: rgba(255, 255, 255, .34); font-size: 12px; }

.np-footer__contact { display: grid; gap: 12px; }
.np-footer__contact li { display: flex; align-items: flex-start; gap: 10px; font-size: 14.5px; color: rgba(255, 255, 255, .62); }
.np-footer__contact svg { color: var(--np-accent); margin-top: 2px; flex: none; }
.np-footer__contact a:hover { color: #fff; }

.np-footer__widgets .np-widget { background: rgba(255, 255, 255, .04); border-color: rgba(255, 255, 255, .08); padding: 18px; }
.np-footer__widgets .np-widget__title { color: #fff; }

.np-footer__bottom { position: relative; border-top: 1px solid rgba(255, 255, 255, .09); }
.np-footer__bottominner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 24px;
	padding-block: 22px;
}
.np-footer__copy { color: rgba(255, 255, 255, .42); font-size: 13px; }
.np-footer__legal { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.np-footer__legal a { color: rgba(255, 255, 255, .5); font-size: 13px; }
.np-footer__legal a:hover { color: #fff; }

.np-totop {
	position: fixed;
	inset-inline-end: 20px;
	bottom: 20px;
	z-index: 80;
	display: grid;
	place-items: center;
	width: 44px; height: 44px;
	border-radius: 50%;
	background: var(--np-ink);
	color: var(--np-bg);
	box-shadow: var(--np-shadow);
	opacity: 0;
	visibility: hidden;
	translate: 0 12px;
	transition: opacity var(--np-base), translate var(--np-base), visibility var(--np-base);
}
.np-totop.is-visible { opacity: 1; visibility: visible; translate: 0; }
.np-totop:hover { background: var(--np-accent); color: #fff; }

/* 15. RESPONSIVE / MOTION ================================================== */

@media (max-width: 900px) {
	:root { --np-gap: 20px; --np-gap-lg: 28px; }
	.np-sechead { margin-bottom: 20px; }
	.np-share--top { display: none; }
}

@media (max-width: 640px) {
	.np-card--list { grid-template-columns: 96px minmax(0, 1fr); gap: 12px; }
	.np-card--num { grid-template-columns: auto minmax(0, 1fr); }
	.np-card--num .np-card__media { display: none; }
	.np-hero__body { padding: 18px; }
	.np-artcover { min-height: 62vh; }
	.np-sechead { flex-wrap: wrap; align-items: center; gap: 8px 12px; }
	.np-sechead__main { flex: 1 1 100%; }
	.np-totop { inset-inline-end: 14px; bottom: 14px; }
}

/* პრინტი */
@media print {
	.np-header, .np-footer, .np-share, .np-comments, .np-prevnext, .np-sec--related,
	.np-ad, .np-totop, .np-stickyad, .np-progress, .np-drawer, .np-search { display: none !important; }
	body { background: #fff; color: #000; }
	.np-content { font-size: 12pt; }
}

/* მოძრაობის შემცირება */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}
	.np-ticker__track { animation: none; }
	.np-thumb__img { transition: none; }
}

/* ჩატვირთვის ანიმაცია (მხოლოდ პირველი ეკრანის ქვემოთ) */
@media (prefers-reduced-motion: no-preference) {
	.np-reveal { opacity: 0; transform: translateY(14px); }
	.np-reveal.is-in { opacity: 1; transform: none; transition: opacity .5s var(--np-ease), transform .5s var(--np-ease); }
}
