/* NBD svetainė — values follow the liugaila.lt/nbd prototype (variant b, events layout a).
   Palette: #ffe600 / #0b0b0b / #fff only. Square corners, 2px outlines. Mobile first; 900px = wide. */

@font-face {
	font-family: "Nunito Sans";
	font-style: normal;
	font-weight: 200 1000;
	font-display: swap;
	src: url("../fonts/nunito-sans-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: "Nunito Sans";
	font-style: normal;
	font-weight: 200 1000;
	font-display: swap;
	src: url("../fonts/nunito-sans-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--nbd-y: #ffe600;
	--nbd-k: #0b0b0b;
	--nbd-w: #ffffff;
	--nbd-gut: clamp(16px, 2.4vw, 32px);
	--nbd-H: clamp(58px, 5.3vw, 76px);
	--nbd-gap: clamp(12px, 2.2vw, 32px);
	--nbd-sec: clamp(56px, 9vw, 140px);
	--nbd-font: "Nunito Sans", Helvetica, Arial, sans-serif; /* Client 2026-10-20: Nunito Sans (no Avenir licence). */
}

body.nbd {
	margin: 0;
	background: var(--nbd-w);
	color: var(--nbd-k);
	font-family: var(--nbd-font);
	font-size: 17px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	-webkit-tap-highlight-color: transparent;
	overflow-x: clip;
}
body.nbd *, body.nbd *::before, body.nbd *::after { box-sizing: border-box; }
.nbd-subnav { display: contents; }
/* Prototype base: 16px, the font's normal line-height; components set their own where the design does. */
.nbd-main--part, .nbd-footer, .nbd-overlay { font-size: 16px; line-height: normal; }
:where(body.nbd) img { max-width: 100%; height: auto; }
body.nbd :focus-visible { outline: 3px solid var(--nbd-k); outline-offset: 2px; }
body.nbd.nbd-menu-open { overflow: hidden; }

.nbd-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.nbd-skip { position: absolute; left: 8px; top: -100px; z-index: 100; background: var(--nbd-k); color: var(--nbd-w); padding: 12px 16px; font-weight: 800; text-decoration: none; }
.nbd-skip:focus { top: 8px; color: var(--nbd-w); }

/* Shared controls -------------------------------------------------------- */
body.nbd a { color: inherit; }
.nbd-top a, .nbd-overlay a, .nbd-footer a, .nbd-main a, .nbd-strip a { text-decoration: none; }
/* Neutralise the parent theme's button skin (pink #c36, 3px radius, nowrap, pink hover). Specificity
   (0,1,0)/(0,2,0) ties the theme's [type=button] rules and wins on order; component classes win over it. */
:where(body.nbd) :is(button, [type="button"], [type="submit"]) {
	color: inherit; background-color: transparent; border: 0; border-radius: 0; padding: 0;
	font: inherit; white-space: normal; text-align: inherit; transition: none; user-select: auto; cursor: pointer;
}
:where(body.nbd) :is(button, [type="button"], [type="submit"]):is(:hover, :focus) { color: inherit; background-color: transparent; }
.nbd .nbd-btn { font-family: inherit; border-radius: 0; cursor: pointer; }
.nbd .nbd-btn {
	display: inline-block;
	border: 2px solid var(--nbd-k);
	background: transparent;
	padding: 15px 26px;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.25;
	white-space: nowrap;
	color: var(--nbd-k);
	text-align: center;
}
.nbd .nbd-btn--sm { padding: 11px 20px; font-size: 15px; }
.nbd-actions { display: flex; justify-content: flex-end; padding-top: 28px; }
.nbd-actions .nbd-btn { padding: 16px 28px; }
.nbd-sign { display: inline-block; min-width: 1ch; text-align: center; }

/* Strip ------------------------------------------------------------------ */
.nbd-strip { height: 40px; background: var(--nbd-w); display: flex; align-items: center; padding: 0 var(--nbd-gut); }
.nbd-strip a { display: flex; align-items: center; height: 100%; }
.nbd-strip img { height: 11px; width: auto; display: block; }

/* Header: narrow ---------------------------------------------------------- */
.nbd-top { background: var(--nbd-y); position: relative; }
.nbd-header { height: 96px; display: flex; align-items: center; gap: 12px; padding: 0 16px; background: var(--nbd-y); flex-wrap: wrap; }
.nbd-header__logo { display: block; flex-shrink: 0; margin-right: auto; }
.nbd-header__logo img { height: 60px; width: auto; display: block; }
.nbd-header .nbd-lang { display: none; }
.nbd-burger { position: relative; width: 48px; height: 48px; margin-right: -11px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; }
.nbd-burger span[aria-hidden] { display: block; width: 26px; height: 2px; background: var(--nbd-k); }

.nbd-tabs { order: 3; width: calc(100% + 32px); margin: 0 -16px; position: relative; }
.nbd-tabs__scroll { display: flex; gap: 4px; overflow-x: auto; padding: 0 16px 2px; scrollbar-width: none; background: linear-gradient(var(--nbd-k), var(--nbd-k)) left bottom / 100% 2px no-repeat; }
.nbd-tabs__scroll::-webkit-scrollbar, .nbd-sub__scroll::-webkit-scrollbar { display: none; }
.nbd-tab { position: relative; flex-shrink: 0; border: 2px solid transparent; border-bottom: 0; padding: 10px 12px; font-size: 15px; line-height: 20px; font-weight: 800; white-space: nowrap; color: var(--nbd-k); }
.nbd-tab[data-active] { border-color: var(--nbd-k); background: var(--nbd-w); }
.nbd-tab[data-active]::after { content: ""; position: absolute; left: 0; right: 0; top: 100%; height: 2px; background: var(--nbd-w); }
.nbd-header { height: auto; min-height: 96px; padding-top: 18px; row-gap: 18px; }

.nbd-sub { position: relative; background: var(--nbd-w); display: flex; align-items: stretch; min-height: 44px; }
.nbd-sub__nav { flex: 1; min-width: 0; }
.nbd-sub__scroll { display: flex; overflow-x: auto; scrollbar-width: none; padding: 0 4px; }
.nbd-sub__link { flex-shrink: 0; padding: 13px 12px; font-size: 15px; line-height: 1.33; white-space: nowrap; }
.nbd-sub__link[aria-current="page"] { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 6px; }
.nbd-more-btn, .nbd-more { display: none; }

/* Scroll hint arrows (added by nbd.js on overflowing rows) */
.nbd-scrollwrap { position: relative; }
.nbd-scroll-arrow[hidden] { display: none; }
.nbd-scroll-arrow { position: absolute; top: 0; bottom: 2px; display: flex; align-items: center; z-index: 3; }
.nbd-scroll-arrow button { width: 44px; height: 42px; font-size: 26px; font-weight: 800; line-height: 1; }
.nbd-scroll-arrow--prev { left: 0; padding-right: 24px; background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, var(--nbd-bgc, #fff) 45%); }
.nbd-scroll-arrow--next { right: 0; padding-left: 24px; background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, var(--nbd-bgc, #fff) 45%); }
.nbd-tabs .nbd-scroll-arrow { --nbd-bgc: #ffe600; }
.nbd-tabs .nbd-scroll-arrow--prev { background: linear-gradient(270deg, rgba(255, 230, 0, 0) 0%, #ffe600 45%); }
.nbd-tabs .nbd-scroll-arrow--next { background: linear-gradient(90deg, rgba(255, 230, 0, 0) 0%, #ffe600 45%); }

/* Overlay (narrow menu) */
.nbd-overlay { position: fixed; inset: 0; z-index: 50; background: var(--nbd-y); padding: 0 16px 24px; display: flex; flex-direction: column; overflow-y: auto; }
.nbd-overlay[hidden] { display: none; }
.nbd-overlay__head { height: 96px; flex-shrink: 0; display: flex; justify-content: space-between; align-items: center; }
.nbd-overlay__close { position: relative; width: 48px; height: 48px; margin-right: -11px; }
.nbd-overlay__close span[aria-hidden] { position: absolute; left: 11px; top: 23px; width: 26px; height: 2px; background: var(--nbd-k); transition: transform .2s ease, opacity .2s ease; }
.nbd-overlay__close span[aria-hidden]:nth-child(1) { transform: translateY(-8px); }
.nbd-overlay__close span[aria-hidden]:nth-child(3) { transform: translateY(8px); }
.nbd-overlay.is-x .nbd-overlay__close span[aria-hidden]:nth-child(1) { transform: rotate(45deg); }
.nbd-overlay.is-x .nbd-overlay__close span[aria-hidden]:nth-child(2) { opacity: 0; }
.nbd-overlay.is-x .nbd-overlay__close span[aria-hidden]:nth-child(3) { transform: rotate(-45deg); }
@media (prefers-reduced-motion: reduce) { .nbd-overlay__close span[aria-hidden] { transition: none; } }
.nbd-overlay__parts { display: flex; flex-direction: column; gap: 4px; align-items: flex-start; padding-top: 16px; }
.nbd-overlay__part { border: 2px solid transparent; padding: 4px 10px; margin-left: -12px; font-size: 40px; font-weight: 800; letter-spacing: -0.015em; }
.nbd-overlay__part[data-active] { border-color: var(--nbd-k); }
.nbd-overlay__links { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; margin-top: 40px; }
.nbd-overlay__link { font-size: 17px; padding: 8px 10px; margin-left: -10px; }
.nbd-lang { display: flex; gap: 6px; font-size: 15px; align-items: center; }
.nbd-lang a { font-weight: 400; }
.nbd-lang a.is-current { font-weight: 800; }
.nbd-lang--boxed { margin-top: auto; align-self: flex-start; border: 2px solid var(--nbd-k); padding: 12px 16px; }
/* Prototype: the overlay carries its own LŠC strip and pins LT/EN to the bottom. */
.nbd-overlay__strip { flex-shrink: 0; margin: 0 -16px; }
.nbd-overlay__links { margin-bottom: 40px; }

/* Header: wide ------------------------------------------------------------ */
@media (min-width: 900px) {
	.nbd-header {
		height: auto; min-height: 0; flex-wrap: nowrap; align-items: flex-start; gap: var(--nbd-gap);
		padding: 22px var(--nbd-gut) 2px;
		background: var(--nbd-y) linear-gradient(var(--nbd-k), var(--nbd-k)) left bottom / 100% 2px no-repeat;
	}
	.nbd-header__logo { margin-right: 0; }
	.nbd-header__logo img { height: var(--nbd-H); }
	.nbd-tabs { order: 0; width: auto; margin: calc(var(--nbd-H) * 0.532) 0 0; flex: 1; }
	.nbd-tabs__scroll { padding: 0; overflow: visible; background: none; }
	.nbd-tabs .nbd-scroll-arrow { display: none; }
	.nbd-tab { padding: calc(var(--nbd-H) * 0.351 - 12px) clamp(8px, 1vw, 14px) calc(var(--nbd-H) * 0.117 + 10px); z-index: 2; }
	.nbd-header .nbd-lang { display: flex; margin-top: calc(var(--nbd-H) * 0.883 - 20px); }
	.nbd-header .nbd-lang a, .nbd-header .nbd-lang span { padding: 8px 0; }
	.nbd-header .nbd-lang { padding: 0 clamp(8px, 1vw, 14px); }
	.nbd-burger { display: none; }
	.nbd-sub { padding: 0 var(--nbd-gut) 0 calc(var(--nbd-gut) + var(--nbd-H) * 1.875 + var(--nbd-gap) + 2px); }
	.nbd-sub__scroll { overflow: visible; padding: 0; flex-wrap: wrap; }
	.nbd-sub .nbd-scroll-arrow { display: none; }
	.nbd-sub__link, .nbd-more-btn { display: flex; align-items: center; padding: 0 clamp(8px, 1vw, 14px); min-height: 44px; line-height: 20px; }
	.nbd-more-btn { gap: 8px; font-size: 15px; white-space: nowrap; }
	.nbd-more-btn[aria-expanded="true"] { background: var(--nbd-y); }
	.nbd-more { display: block; background: var(--nbd-w); border-top: 2px solid var(--nbd-k); padding: 0 var(--nbd-gut) 0 calc(var(--nbd-gut) + var(--nbd-H) * 1.875 + var(--nbd-gap) + 2px); }
	.nbd-more[hidden] { display: none; }
	.nbd-more__nav { display: flex; flex-wrap: wrap; }
	.nbd-overlay { display: none !important; }
}

/* Hero ------------------------------------------------------------------- */
.nbd-hero { background: var(--nbd-y); }
.nbd-hero__media { height: clamp(320px, 52vw, 760px); background: #222; overflow: hidden; }
.nbd-hero__img { display: block; width: 100%; height: 100% !important; object-fit: cover; object-position: center 30%; }
.nbd-hero__media { position: relative; }
.nbd-hero__pause { position: absolute; right: var(--nbd-gut); bottom: 16px; z-index: 40; border: 2px solid var(--nbd-k) !important; background: var(--nbd-w) !important; padding: 8px 14px !important; font-size: 14px !important; font-weight: 800 !important; }
.nbd-hero__body { padding: 28px 16px 32px; display: flex; flex-direction: column; gap: 20px; }
.nbd-hero__logo { margin: 0; line-height: 0; }
.nbd-hero__logo img { height: min(34vw, 170px); width: auto; }
.nbd-hero__side { display: flex; flex-direction: column; gap: 20px; }
.nbd-hero__big { margin: 0; font-size: 28px; font-weight: 800; line-height: 1.05; }
.nbd .nbd-btn--hero { padding: 17px; font-size: 16px; display: block; }
@media (min-width: 900px) {
	.nbd-hero__media { height: clamp(360px, calc(100vh - 320px), 760px); }
	.nbd-hero__body { display: grid; grid-template-columns: 1fr auto; gap: 48px; padding: 48px var(--nbd-gut) 56px; }
	.nbd-hero__logo img { height: clamp(188px, 22.8vw, 328px); }
	.nbd-hero__side { justify-content: space-between; align-items: flex-end; text-align: right; gap: 24px; }
	.nbd-hero__big { font-size: clamp(28px, 3vw, 44px); line-height: 0.75; white-space: nowrap; padding: 0.12em 0; }
	.nbd .nbd-btn--hero { order: 2; display: inline-block; padding: 17px 32px; font-size: 17px; }
	.nbd-hero__side .nbd-countdown { order: 3; }
}

/* Sections ---------------------------------------------------------------- */
.nbd-main { display: block; padding-bottom: var(--nbd-sec); }
.nbd-section { padding: var(--nbd-sec) var(--nbd-gut) 0; }
.nbd-h2 { margin: 0 0 clamp(24px, 3.4vw, 48px); font-size: clamp(45px, 5.8vw, 84px); font-weight: 800; letter-spacing: -0.015em; line-height: 1; }
.nbd-lead { margin: 0; font-size: clamp(18px, 1.6vw, 22px); }

/* Events */
.nbd-events__list { display: flex; flex-direction: column; gap: 12px; }
.nbd-ev { border: 2px solid var(--nbd-k); }
.nbd-ev[hidden] { display: none; }
.nbd-ev.is-open { background: var(--nbd-y); }
.nbd-ev__closed, .nbd-ev__open { display: flex; flex-wrap: wrap; gap: clamp(16px, 2.4vw, 40px); padding: clamp(8px, 1vw, 12px); }
.nbd-ev__open { gap: clamp(20px, 2.4vw, 40px); }
.nbd-ev__closed[hidden], .nbd-ev__open[hidden] { display: none; }
.nbd-ev__photo { flex: 0 1 440px; max-width: 100%; aspect-ratio: 4 / 3; background: #ccc; cursor: pointer; overflow: hidden; }
.nbd-ev__img { display: block; width: 100%; height: 100% !important; object-fit: cover; }
.nbd-ev__text { flex: 1 1 320px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; padding: clamp(4px, 1vw, 16px) clamp(4px, 0.8vw, 12px); }
.nbd-ev__head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; }
.nbd-ev__lines { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.nbd-ev__open .nbd-ev__lines { gap: 8px; }
.nbd-ev__lines p, .nbd-ev__lines h3 { margin: 0; }
.nbd-ev__when { font-size: clamp(18px, 1.6vw, 22px); font-weight: 800; line-height: 1.3; }
.nbd-ev__title { font-size: clamp(28px, 2.8vw, 40px); font-weight: 800; line-height: 1.05; letter-spacing: -0.01em; }
.nbd-ev__by { font-size: 17px; }
.nbd-ev__meta { font-size: 15px; line-height: 1.4; }
.nbd-ev__status { background: var(--nbd-k); color: var(--nbd-w); font-size: 13px; font-weight: 800; padding: 5px 9px; line-height: 1.3; }
.nbd-ev__toggle { flex-shrink: 0; padding: 12px 16px; margin: -12px -8px 0 0; font-size: 16px; font-weight: 800; white-space: nowrap; line-height: 1.25; }
.nbd-ev__slider { position: relative; flex: 1.4 1 480px; max-width: 100%; aspect-ratio: 4 / 3; align-self: flex-start; touch-action: pan-y; }
.nbd-ev__slide.is-active { z-index: 20; }
.nbd-ev__slide { position: absolute; inset: 0; background: #222; box-shadow: 2px 0 0 var(--nbd-w), -2px 0 0 var(--nbd-w); overflow: hidden; }
.nbd-ev__arrow { position: absolute; z-index: 30; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; background: var(--nbd-w) !important; font-size: 22px !important; font-weight: 800; line-height: 1; }
.nbd-ev__detail { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 20px; padding: clamp(4px, 1vw, 16px) clamp(4px, 0.8vw, 12px) 0; }
.nbd-ev__desc { margin: 0; font-size: 17px; line-height: 1.5; max-width: 620px; }
.nbd-ev__full { align-self: flex-start; font-size: 16px; font-weight: 800; text-decoration: underline !important; text-decoration-thickness: 2px !important; text-underline-offset: 5px; }
.nbd-ev__facts { display: flex; flex-wrap: wrap; gap: 6px 28px; font-size: 15px; margin: 0; }
.nbd-ev__facts div { display: flex; gap: 6px; }
.nbd-ev__facts dt { font-weight: 400; }
.nbd-ev__facts dd { margin: 0; font-weight: 800; }
.nbd-ev__sessions-title { margin: 0; font-size: 15px; font-weight: 800; padding-bottom: 10px; }
.nbd-ev__sessions ul { list-style: none; margin: 0; padding: 0; }
.nbd-ev__sessions li { border-top: 2px solid var(--nbd-k); padding: 12px 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; font-size: 15px; }
.nbd-ev__sessions li > span { flex: 1 1 180px; }
.nbd-ev__sessions strong { font-size: 17px; }
@media (max-width: 899px) {
	.nbd-ev__arrow { display: none; }
	.nbd-ev__when .nbd-when__part { display: block; }
	.nbd-ev__when .nbd-when__sep { display: none; }
}

.nbd-event-page__content { margin-top: clamp(32px, 4vw, 56px); }
.nbd-event-page__content > p:first-child { margin-top: 0; }

/* Support */
.nbd-support { position: relative; margin-top: var(--nbd-sec); min-height: clamp(460px, 43vw, 620px); background: #222; display: flex; align-items: flex-end; padding: clamp(12px, 2.8vw, 40px) clamp(12px, 2.4vw, 32px); overflow: hidden; }
.nbd-support__img { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; }
.nbd-support__box { position: relative; background: var(--nbd-y); padding: clamp(20px, 2.8vw, 40px); max-width: 820px; display: flex; flex-direction: column; gap: clamp(16px, 2vw, 28px); }
.nbd-support__title { margin: 0; font-size: clamp(36px, 5.4vw, 78px); font-weight: 800; letter-spacing: -0.02em; line-height: 1; }
.nbd-support__actions { display: flex; flex-wrap: wrap; gap: 8px; }

/* News */
.nbd-news__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 24px; }
.nbd-news__item { display: flex; flex-direction: column; gap: 12px; padding: 8px; margin: -8px; }
.nbd-news__photo { display: block; aspect-ratio: 4 / 3; background: #ccc; overflow: hidden; }
.nbd-news__img { display: block; width: 100%; height: 100% !important; object-fit: cover; }
.nbd-news__date { font-size: 14px; }
.nbd-news__title { font-size: clamp(18px, 1.5vw, 21px); font-weight: 800; line-height: 1.2; }
.nbd-news .nbd-actions { padding-top: 32px; }

/* FAQ */
.nbd-faq { display: flex; flex-wrap: wrap; gap: 24px 48px; }
.nbd-faq__title { flex: 1 1 260px; margin: 0; }
.nbd-faq__list { flex: 2 1 520px; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.nbd-faq__item { border: 2px solid var(--nbd-k); padding: 0 clamp(16px, 2vw, 28px); }
.nbd-faq__item.is-open { background: var(--nbd-y); }
.nbd-faq__q { margin: 0; font: inherit; }
.nbd-faq__q button { width: 100%; padding: clamp(16px, 1.7vw, 24px) 0; display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; text-align: left; font-size: clamp(16px, 1.4vw, 20px) !important; font-weight: 600; line-height: normal !important; }
.nbd-faq__q .nbd-sign { font-size: 28px; line-height: 1; }
.nbd-faq__a { padding-bottom: 24px; font-size: clamp(15px, 1.2vw, 17px); line-height: 1.5; max-width: 720px; }
.nbd-faq__a p { margin: 0 0 0.75em; }
.nbd-faq__a p:last-child { margin-bottom: 0; }

/* Testimonials */
.nbd-quotes { display: flex; flex-wrap: wrap; gap: 24px 48px; }
.nbd-quotes__title { flex: 1 1 260px; margin: 0; }
.nbd-quotes__body { flex: 2 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.nbd-quotes__track { display: flex; flex-direction: column; gap: 40px; }
.nbd-quote { margin: 0; border-left: 2px solid var(--nbd-k); padding-left: clamp(16px, 2vw, 28px); }
.nbd-quote__text { margin: 0; font-size: clamp(20px, 2.2vw, 30px); font-weight: 600; line-height: 1.3; text-wrap: pretty; }
.nbd-quote__text p { margin: 0 0 0.6em; }
.nbd-quote__text p:last-child { margin-bottom: 0; }
.nbd-quote__text p:first-child::before { content: "„"; }
.nbd-quote__text p:last-child::after { content: "“"; }
.nbd-quote__by { margin-top: 16px; color: var(--nbd-k); display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: 15px; }
.nbd-quote__name { font-weight: 800; }
.nbd-quotes__nav { display: flex; align-items: center; gap: 16px; }
.nbd-quotes__nav[hidden] { display: none; }
.nbd-quotes__btn { min-width: 48px; justify-content: center; }
.nbd-quotes__count { margin: 0; font-weight: 800; font-variant-numeric: tabular-nums; }

/* Season about */
.nbd-about { display: flex; flex-wrap: wrap; gap: 24px 48px; }
.nbd-about__label { flex: 1 1 200px; margin: 0; font-size: 15px; font-weight: 800; padding-top: 10px; line-height: 1.4; }
.nbd-about__body { flex: 3 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.nbd-about__text { font-size: clamp(17px, 1.4vw, 20px); line-height: 1.5; max-width: 980px; }
.nbd-about__text p { margin: 0 0 1em; }
.nbd-about__text > :last-child { margin-bottom: 0; }
.nbd-about__text > p:first-child { font-size: clamp(24px, 3.2vw, 46px); font-weight: 600; line-height: 1.18; letter-spacing: -0.01em; text-wrap: pretty; margin-bottom: 0.7em; }
.nbd-about__text > p:first-child:last-child { margin-bottom: 0; }

/* Inner pages (theme templates) ------------------------------------------ */
body.nbd:not(.nbd-landing) .site-main { max-width: none; margin: 0; padding: clamp(32px, 5vw, 72px) var(--nbd-gut) var(--nbd-sec); }
/* Page title (prototype 10-28): one full-width line above the text, never hyphenated. */
body.nbd .page-header .entry-title, body.nbd .site-main > .page-header h1 { margin: 0 0 32px; font-size: clamp(44px, 7.6vw, 114px); font-weight: 800; letter-spacing: -0.025em; line-height: 0.95; max-width: none; -webkit-hyphens: manual; hyphens: manual; }
/* Lead: the first paragraph of a page, marked with the block class nbd-lead. */
body.nbd .page-content .nbd-lead, body.nbd .entry-content .nbd-lead { font-size: clamp(22px, 2.4vw, 34px); line-height: 1.25; font-weight: 600; letter-spacing: -0.01em; margin: 0 0 24px; }
body.nbd .page-content, body.nbd .entry-content { max-width: 820px; font-size: clamp(17px, 1.3vw, 19px); line-height: 1.6; }
/* Pages follow the prototype's 17px body; news articles keep the larger reading size. */
body.nbd .page-content { font-size: 17px; }
body.nbd .page-content a, body.nbd .entry-content a { overflow-wrap: anywhere; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.nbd .page-content h2, body.nbd .entry-content h2 { font-size: clamp(28px, 2.8vw, 40px); line-height: 1.1; letter-spacing: -0.01em; margin: 1.6em 0 0.6em; }
body.nbd .page-content h3, body.nbd .entry-content h3 { font-size: clamp(20px, 1.8vw, 26px); line-height: 1.2; margin: 1.4em 0 0.5em; }
body.nbd .page-content .wp-block-image, body.nbd .page-content figure { margin: 1.5em 0; }
/* Text pages: full-width title, then the text in a column from 25% + 76px (prototype 10-28). List pages (programme, archive, team, query loops) stay full width. */
@media (min-width: 900px) {
	body.nbd.page:not(.nbd-landing) .site-main:not(:has(.nbd-programa, .wp-block-query)) > .page-header .entry-title { margin-bottom: 32px; }
	body.nbd.page:not(.nbd-landing) .site-main:not(:has(.nbd-programa, .wp-block-query)) > .page-content { max-width: none; }
	body.nbd.page:not(.nbd-landing) .site-main:not(:has(.nbd-programa, .wp-block-query)) > .page-content > :not(.nbd-sec, .nbd-full, .nbd-jumps, .nbd-thanks, .nbd-archive, .nbd-box-dashed) { margin-left: calc(25% + 76px); max-width: 720px; }
	body.nbd.page:not(.nbd-landing) .site-main:not(:has(.nbd-programa, .wp-block-query)) > .page-content > .nbd-lead, body.nbd.page:not(.nbd-landing) .site-main:not(:has(.nbd-programa, .wp-block-query)) > .page-content > .nbd-intro-wide { max-width: 920px; }
	body.nbd.page:not(.nbd-landing) .site-main:not(:has(.nbd-programa, .wp-block-query)) > .page-content > :first-child { margin-top: 0; }
}
/* Partner logos: each group is its own grid of identical cells (heading on top, a rule between groups).
   Classic themes render the group's children inside .wp-block-group__inner-container: the grid sits there. */
body.nbd .page-content .nbd-partner-group { margin: 0; padding: 20px 0 32px; border-top: 2px solid var(--nbd-k); }
body.nbd .page-content .nbd-partner-group:first-child { border-top: 0; padding-top: 0; }
body.nbd .page-content .nbd-partner-group > .wp-block-group__inner-container { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
body.nbd .page-content .nbd-partner-group > .wp-block-group__inner-container > * { margin: 0; }
body.nbd .page-content .nbd-partner-group h3 { grid-column: 1 / -1; font-size: 17px; font-weight: 800; line-height: 1.3; margin: 0 0 8px; }
body.nbd .page-content .nbd-partner-group figure.wp-block-image { height: 120px; padding: 16px; display: flex; align-items: center; justify-content: center; }
body.nbd .page-content .nbd-partner-group figure img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; filter: grayscale(1); }
body.nbd .page-content .nbd-partner-group figure.nbd-keep-colour img { filter: none; }
@media (max-width: 599px) { body.nbd .page-content .nbd-partner-group > .wp-block-group__inner-container { grid-template-columns: repeat(2, minmax(0, 1fr)); } body.nbd .page-content .nbd-partner-group figure.wp-block-image { height: 100px; } }
body.nbd .wp-block-query .wp-block-post-template { gap: 24px; }
body.nbd .wp-block-query .wp-block-post-title { font-size: clamp(18px, 1.5vw, 21px); font-weight: 800; line-height: 1.2; margin: 12px 0 6px; }
body.nbd .wp-block-query .wp-block-post { padding: 8px; margin: -8px; }
body.nbd .wp-block-query .wp-block-post-title a { text-decoration: none; }
body.nbd .wp-block-query .wp-block-post-featured-image img { aspect-ratio: 4 / 3; object-fit: cover; }
body.nbd .wp-block-query-pagination { margin-top: 40px; gap: 8px; font-weight: 800; }
body.nbd .wp-block-query-pagination a, body.nbd .wp-block-query-pagination .current { border: 2px solid var(--nbd-k); padding: 8px 14px; text-decoration: none; }
body.nbd .wp-block-query-pagination .current { background: var(--nbd-y); }
body.nbd .wp-element-button, body.nbd .wp-block-button__link { border-radius: 0; border: 2px solid var(--nbd-k); background: transparent; color: var(--nbd-k); font-weight: 800; }
body.nbd .page-content .wp-block-button__link { padding: 15px 26px; font-size: 16px; line-height: 1.2; text-decoration: none; }
body.nbd .page-content .wp-block-buttons { gap: 8px; margin: 0 0 32px; }

/* Footer ----------------------------------------------------------------- */
.nbd-footer { background: var(--nbd-y); padding: clamp(40px, 4vw, 56px) var(--nbd-gut); display: flex; flex-direction: column; gap: clamp(32px, 4vw, 56px); }
.nbd-newsletter { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin: 0; }
.nbd-newsletter__title { font-size: 22px; font-weight: 800; }
.nbd-newsletter__row { display: flex; gap: 8px; flex: 0 1 600px; min-width: 0; width: 100%; }
.nbd-newsletter input { flex: 1; min-width: 0; background: transparent; border: 2px solid var(--nbd-k); border-radius: 0; padding: 0 20px; font: 16px var(--nbd-font); color: var(--nbd-k); height: 54px; }
.nbd-newsletter input::placeholder { color: var(--nbd-k); opacity: 1; }
.nbd .nbd-newsletter .nbd-btn { padding: 0 22px; font-size: 15px; }
.nbd-footer__menu { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 24px; border-top: 2px solid var(--nbd-k); border-bottom: 2px solid var(--nbd-k); padding: 16px 0; }
@media (min-width: 720px) { .nbd-footer__menu { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.nbd-footer__link { font-size: 16px; padding: 8px 12px; margin-left: -12px; justify-self: start; white-space: nowrap; }
.nbd-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 32px; }
.nbd-footer__logo { width: clamp(180px, 21vw, 300px); height: auto; display: block; }
.nbd-footer__info { display: flex; flex-direction: column; gap: 6px; font-size: 14px; line-height: 1.45; flex: 1 1 280px; }
.nbd-footer__info p { margin: 0; }
.nbd-footer__info a { text-decoration: underline !important; text-underline-offset: 3px; }
.nbd-footer__legal { display: flex; flex-wrap: wrap; gap: 6px 16px; }
/* Contact block right-aligned at every width, as in the prototype. */
.nbd-footer__info { text-align: right; }
.nbd-footer__legal { justify-content: flex-end; }

/* Hover: fine pointers on wide screens only (as the prototype) ------------ */
@media (hover: hover) and (pointer: fine) and (min-width: 900px) {
	.nbd .nbd-btn:hover, .nbd-header .nbd-lang a:hover { background: var(--nbd-w); }
	.nbd-main .nbd-btn:hover, .nbd-programa .nbd-btn:hover, .nbd-ev__toggle:hover, .nbd-news__item:hover, body.nbd .wp-block-query .wp-block-post:hover, .nbd-faq__item:hover, .nbd-sub__link:hover, .nbd-more-btn:hover { background: var(--nbd-y); color: var(--nbd-k); }
	.nbd-ev.is-open .nbd-btn:hover, .nbd-ev.is-open .nbd-ev__toggle:hover, .nbd-support .nbd-btn:hover, .nbd-hero .nbd-btn:hover, .nbd-footer .nbd-btn:hover, .nbd-footer__link:hover, .nbd-ev__arrow:hover { background: var(--nbd-w); }
	.nbd-ev__arrow:hover { background: var(--nbd-y) !important; }
}

/* Programa page: the [nbd_programa] list needs the full width, not the 820px text column */
body.nbd .page-content:has(.nbd-programa) { max-width: none; }
body.nbd .page-content:has(.wp-block-query) { max-width: none; }

/* Team (tobalt-staff-directory cards) in the NBD style: remap the plugin's design tokens,
   2px black frame, square corners, no lift/shadow; hover = yellow background like other cards. */
body.nbd .tbt-staff-wrap {
	--tbt-white: #fff; --tbt-radius: 0; --tbt-radius-sm: 0; --tbt-radius-lg: 0;
	--tbt-border: #0b0b0b; --tbt-border-light: #0b0b0b; --tbt-heading: #0b0b0b; --tbt-body: #0b0b0b;
	--tbt-body-dark: #0b0b0b; --tbt-primary: #0b0b0b; --tbt-shadow-md: none; --tbt-shadow: none;
	font-family: var(--nbd-font);
}
body.nbd .tbt-staff-grid { gap: 12px; }
body.nbd .tbt-staff-card { border: 2px solid var(--nbd-k); border-radius: 0; box-shadow: none; transition: background-color .15s ease; }
body.nbd .tbt-staff-card:hover { transform: none; box-shadow: none; border-color: var(--nbd-k); }
body.nbd .tbt-staff-info { padding: clamp(16px, 1.6vw, 22px); }
/* Team (prototype): compact cards — a rule, an 80px photo, name, role, e-mail; three per row. */
body.nbd .tbt-staff-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 32px; }
/* In a section the grid only gets the body column (from 25% + 76px): three cards fit from 1200px. */
/* Prototype: as many 230px cards as fit (four at 1920, three at 1440, two at 900, one on phones). */
body.nbd .tbt-staff-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); }
body.nbd .tbt-staff-card { display: flex; align-items: flex-start; gap: 14px; padding: 14px 0 0; border: 0; border-top: 2px solid var(--nbd-k); background: none; overflow: visible; }
body.nbd .tbt-staff-photo { flex: 0 0 80px; width: 80px; height: 80px; margin: 0; padding: 0; overflow: hidden; border-radius: 0; background: #e6e6e2; border: 0; }
body.nbd .tbt-staff-image { display: block; width: 100%; height: 100% !important; object-fit: cover; object-position: center 20%; border-radius: 0; margin: 0; filter: grayscale(1); }
body.nbd .tbt-staff-info { padding: 0; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
body.nbd .tbt-staff-name { font-size: 18px; line-height: 1.2; margin: 0; }
body.nbd .tbt-staff-position { font-size: 15px; margin: 0; overflow-wrap: break-word; }
body.nbd .tbt-staff-contact { border-top: 0; padding: 0; margin: 0; }
body.nbd .tbt-staff-contact a, body.nbd .tbt-staff-card-contact { font-size: 15px; font-weight: 800; }
body.nbd .tbt-staff-card-icon { display: none; }
body.nbd .tbt-staff-name { font-size: 18px; font-weight: 800; letter-spacing: 0; line-height: 1.2; margin: 0 0 6px; }
body.nbd .tbt-staff-name a { background-image: none; }
body.nbd .tbt-staff-position { font-size: 15px; font-weight: 400; letter-spacing: 0; text-transform: none; }
body.nbd .tbt-staff-contact a, body.nbd .tbt-staff-card-contact { font-size: 15px; }
body.nbd .tbt-staff-contact a span:last-child { text-decoration: underline; text-underline-offset: 3px; }
body.nbd .page-content:has(.tbt-staff-wrap) { max-width: none; }
@media (hover: hover) and (pointer: fine) and (min-width: 900px) {
	body.nbd .tbt-staff-name a:hover { color: var(--nbd-k); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
}

/* Cards inside theme page content (Programa, Komanda): keep card typography, not the text-column rules */
body.nbd .page-content .nbd-programa a, body.nbd .page-content .tbt-staff-name a { text-decoration: none; }
body.nbd .page-content .nbd-programa .nbd-ev__full { text-decoration: underline; }
body.nbd .page-content .nbd-programa p { margin: 0; }
body.nbd .page-content .nbd-programa .nbd-ev__title { font-size: clamp(28px, 2.8vw, 40px); line-height: 1.05; letter-spacing: -0.01em; margin: 0; }
body.nbd .page-content .nbd-programa { font-size: 17px; line-height: 1.5; }


/* Stage 2 sections (prototype: Sezonas calendar, Mokykla, Well, Seansas, „31 sezonas“) ---------- */
.nbd-tag { display: inline-block; border: 2px solid var(--nbd-k); padding: 4px 10px; font-size: 14px; font-weight: 800; line-height: 1.2; }
.nbd-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 8px; margin: 0; }
.nbd-facts__item { border: 2px solid var(--nbd-k); padding: 18px 20px; display: flex; flex-direction: column; gap: 6px; }
.nbd-facts__item dt { font-size: 14px; font-weight: 400; }
.nbd-facts__item dd { margin: 0; font-size: 20px; font-weight: 800; line-height: 1.2; }

.nbd-calendar__groups { display: flex; flex-direction: column; gap: clamp(32px, 4vw, 56px); }
.nbd-calendar__group { display: flex; flex-wrap: wrap; gap: 12px 48px; }
.nbd-calendar__period { flex: 1 1 200px; margin: 0; font-size: clamp(22px, 2.2vw, 32px); font-weight: 800; padding-top: 14px; line-height: 1.2; }
.nbd-calendar__list { flex: 3 1 520px; list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.nbd-calendar__item { border: 2px solid var(--nbd-k); padding: 16px 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 28px; }
.nbd-calendar__date { flex: 0 0 100px; font-size: 18px; font-weight: 800; }
.nbd-calendar__title { flex: 1 1 240px; font-size: clamp(17px, 1.6vw, 22px); font-weight: 600; line-height: 1.2; }
.nbd-calendar__arrow { font-size: 24px; line-height: 1; }

.nbd-rows__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.nbd-row { border: 2px solid var(--nbd-k); padding: 20px; display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 32px; }
.nbd-row__time { flex: 0 0 140px; font-size: 18px; font-weight: 800; }
.nbd-row__main { flex: 2 1 280px; display: flex; flex-direction: column; gap: 6px; }
.nbd-row__title { font-size: clamp(20px, 2vw, 28px); font-weight: 800; line-height: 1.1; }
.nbd-row__desc { font-size: 16px; line-height: 1.45; }
.nbd-row__who { flex: 1 1 180px; font-size: 16px; font-weight: 600; }
.nbd-row--schedule .nbd-row__day { flex: 1 1 180px; font-size: clamp(20px, 2vw, 28px); font-weight: 800; }
.nbd-row--schedule .nbd-row__time--big { flex: 0 0 140px; }
.nbd-row--schedule .nbd-row__main { gap: 4px; }
.nbd-row--schedule .nbd-row__desc { font-size: 15px; line-height: normal; }
.nbd-row__place { font-size: 18px; font-weight: 600; }

.nbd-people__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr)); gap: 12px; }
.nbd-people__item { display: flex; flex-direction: column; gap: 12px; padding: 8px; margin: -8px; }
.nbd-people__photo { display: block; aspect-ratio: 3 / 4; background: #ccc; overflow: hidden; }
.nbd-people__img { display: block; width: 100%; height: 100% !important; object-fit: cover; }
.nbd-people__name { font-size: 20px; font-weight: 800; }
.nbd-people__meta { font-size: 14px; margin-top: -10px; }

.nbd-cards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 12px; }
.nbd-card { border: 2px solid var(--nbd-k); padding: 28px; display: flex; flex-direction: column; gap: 20px; background: var(--nbd-w); }
.nbd-forwhom .nbd-card { gap: 14px; }
.nbd-card--yellow { background: var(--nbd-y); }
.nbd-card__title { font-size: 22px; font-weight: 800; }
.nbd-card__title--big { font-size: clamp(22px, 2vw, 28px); line-height: 1.1; }
.nbd-card__price { font-size: clamp(45px, 5vw, 72px); font-weight: 800; letter-spacing: -0.02em; line-height: 1; }
.nbd-card__desc { font-size: 16px; line-height: 1.5; flex: 1; }
.nbd-card .nbd-btn { align-self: flex-start; }

.nbd-feature { margin-top: var(--nbd-sec); display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); }
.nbd-feature__photo { min-height: clamp(320px, 38vw, 560px); background: #222; position: relative; overflow: hidden; }
.nbd-feature__img { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; }
.nbd-feature--photo-right .nbd-feature__photo { order: 2; }
.nbd-feature__box { background: var(--nbd-y); padding: clamp(24px, 3.4vw, 48px); display: flex; flex-direction: column; gap: 24px; }
.nbd-feature__title { margin: 0; }
.nbd-feature__text { margin: 0; font-size: 18px; line-height: 1.5; max-width: 560px; }
.nbd-feature__btn { align-self: flex-start; margin-top: auto; }
.nbd-steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 28px; }
.nbd-steps li { display: flex; gap: 20px; align-items: baseline; font-size: 18px; line-height: 1.45; }
.nbd-steps__n { font-size: 22px; font-weight: 800; flex: 0 0 44px; }

.nbd-films__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 24px; }
.nbd-films__item { display: flex; flex-direction: column; gap: 12px; }
.nbd-films__photo { display: block; aspect-ratio: 16 / 9; background: #ccc; overflow: hidden; }
.nbd-films__img { display: block; width: 100%; height: 100% !important; object-fit: cover; }
.nbd-films__title { font-size: clamp(20px, 2vw, 26px); font-weight: 800; line-height: 1.1; }
.nbd-films__meta { font-size: 15px; }
.nbd-films__desc { font-size: 16px; line-height: 1.45; }

.nbd-parts__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px 48px; margin-bottom: clamp(24px, 3.4vw, 48px); }
.nbd-parts__head .nbd-h2 { margin: 0; }
.nbd-parts__lead { margin: 0; font-size: clamp(16px, 1.3vw, 19px); line-height: 1.45; max-width: 560px; }
.nbd-parts__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr)); gap: 8px; }
.nbd-parts__card { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: clamp(220px, 34vw, 520px); background: #222; padding: clamp(8px, 0.9vw, 12px); overflow: hidden; }
.nbd-parts__img { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; }
.nbd-parts__label { position: relative; width: 100%; background: var(--nbd-w); border: 2px solid var(--nbd-k); padding: clamp(10px, 1.3vw, 18px) clamp(12px, 1.4vw, 20px); display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.nbd-parts__label > span:first-child { display: flex; flex-direction: column; gap: 4px; }
.nbd-parts__name { font-size: clamp(16px, 1.7vw, 24px); font-weight: 800; }
.nbd-parts__when { font-size: 14px; }
.nbd-parts__arrow { font-size: clamp(22px, 2vw, 30px); line-height: 1; }

@media (hover: hover) and (pointer: fine) and (min-width: 900px) {
	.nbd-calendar__item:hover, .nbd-people__item[href]:hover, .nbd-parts__card:hover .nbd-parts__label { background: var(--nbd-y); }
	.nbd-card--yellow .nbd-btn:hover, .nbd-feature .nbd-btn:hover { background: var(--nbd-w); }
	.nbd-card:not(.nbd-card--yellow) .nbd-btn:hover { background: var(--nbd-y); }
}

/* Designers via Aistė 2026-10-21: headings at weight 800. */
.nbd-h2, .nbd-ev__title, .nbd-support__title, .nbd-calendar__period { font-weight: 800; }

/* Archyvas [nbd_archyvas] ------------------------------------------------- */
body.nbd .page-content:has(.nbd-archive) { max-width: none; }
.nbd-archive { display: flex; flex-direction: column; }
.nbd-archive__year { display: block; }
.nbd-archive__year[hidden] { display: none; }

.nbd-archive__title { margin: 0 0 24px; font-size: clamp(40px, 4.4vw, 64px); font-weight: 800; line-height: 1; letter-spacing: -0.02em; }
body.nbd .page-content .nbd-archive a { text-decoration: none; }
.nbd-archive__post { display: flex; flex-direction: column; gap: 12px; padding: 8px; margin: -8px; font-weight: 800; }
.nbd-archive__img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
body.nbd .page-content .nbd-archive .nbd-archive__sub { margin: 0; font-size: clamp(24px, 2.3vw, 34px); line-height: 1.15; font-weight: 800; }
/* One entry, four levels: date · rubric · show · artist and country. */
.nbd-archive__list { list-style: none; margin: 0; padding: 0; border-bottom: 2px solid var(--nbd-k); }
.nbd-archive__list li { margin: 0; }
.nbd-archive__list a { display: flex; flex-wrap: wrap; gap: 6px 24px; align-items: baseline; padding: 16px 8px; margin: 0 -8px; border-top: 2px solid var(--nbd-k); }
.nbd-archive__list .nbd-archive__date { flex: 0 0 170px; }
.nbd-archive__main { flex: 1 1 300px; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.nbd-archive__go { font-size: 22px; line-height: 1; }
.nbd-archive__date { font-size: 15px; font-weight: 800; }
.nbd-archive__rubric { border: 2px solid var(--nbd-k); padding: 1px 6px; font-size: 12px; font-weight: 800; line-height: 1.4; letter-spacing: 0.02em; }
.nbd-archive__name { font-size: clamp(18px, 1.6vw, 22px); font-weight: 800; line-height: 1.15; overflow-wrap: anywhere; }
.nbd-archive__note { border: 2px solid var(--nbd-k); padding: 3px 8px; font-size: 13px; font-weight: 800; }
.nbd-archive__who { font-size: 15px; line-height: 1.4; }
.nbd-archive__country { font-size: 14px; font-weight: 600; }
@media (hover: hover) { .nbd-archive__post:hover, .nbd-archive__list a:hover { background: var(--nbd-y); } }

/* Two-click video ---------------------------------------------------------- */
.nbd-video-figure { margin: 0 0 1.5em; }
.nbd-video { position: relative; aspect-ratio: 16 / 9; background: var(--nbd-k); color: var(--nbd-w); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 16px; text-align: center; }
.nbd-video__btn { border: 2px solid var(--nbd-w) !important; background: transparent; color: var(--nbd-w) !important; padding: 15px 26px !important; font: inherit; font-size: 16px !important; font-weight: 800; cursor: pointer; border-radius: 0 !important; }
.nbd-video__btn:is(:hover, :focus-visible) { background: var(--nbd-y) !important; color: var(--nbd-k) !important; border-color: var(--nbd-y) !important; }
.nbd-video__note { margin: 10px 0 0; font-size: 15px; line-height: 1.5; max-width: 720px; color: var(--nbd-k); }
body.nbd .nbd-video__note a { color: inherit; text-decoration: underline; }
.nbd-video.is-loaded { padding: 0; background: #000; }
.nbd-video__frame { width: 100%; height: 100%; border: 0; display: block; }

/* Newsletter status + honeypot */
.nbd-newsletter__hp { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.nbd-newsletter__msg { margin: 12px 0 0; font-weight: 800; }


/* Image dialog (galleries in page text) */
.nbd-lb { width: 100vw; height: 100vh; max-width: none; max-height: none; margin: 0; padding: 56px 16px; border: 0; background: rgba(11, 11, 11, 0.94); color: var(--nbd-w); }
.nbd-lb[open] { display: flex; align-items: center; justify-content: center; }
.nbd-lb::backdrop { background: rgba(11, 11, 11, 0.6); }
.nbd-lb__img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.nbd .nbd-lb__btn { position: absolute; width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; background: var(--nbd-w); color: var(--nbd-k); font-size: 26px; font-weight: 800; line-height: 1; }
.nbd .nbd-lb__btn:is(:hover, :focus-visible) { background: var(--nbd-y); color: var(--nbd-k); }
.nbd-lb :focus-visible { outline: 3px solid var(--nbd-y); outline-offset: 2px; }
.nbd-lb__close { top: 8px; right: 8px; }
.nbd-lb__prev { left: 8px; top: 50%; transform: translateY(-50%); }
.nbd-lb__next { right: 8px; top: 50%; transform: translateY(-50%); }
.nbd-lb.is-single .nbd-lb__prev, .nbd-lb.is-single .nbd-lb__next, .nbd-lb.is-single .nbd-lb__count { display: none; }
.nbd-lb__count { position: absolute; left: 0; right: 0; bottom: 16px; margin: 0; text-align: center; font-weight: 800; }
/* Video placeholder with a local poster frame */
.nbd-video { overflow: hidden; }
.nbd-video__poster { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; }
.nbd-video.has-poster::after { content: ""; position: absolute; inset: auto 0 0; height: 45%; background: linear-gradient(rgba(11, 11, 11, 0), rgba(11, 11, 11, 0.85)); }
.nbd-video__btn { position: relative; z-index: 1; }
.nbd-video__btn { display: inline-flex; align-items: center; gap: 12px; }
.nbd-video.has-poster .nbd-video__btn { background: var(--nbd-k) !important; border-color: var(--nbd-k) !important; }
.nbd-video__play { width: 0; height: 0; border-style: solid; border-width: 9px 0 9px 15px; border-color: transparent transparent transparent currentColor; }
/* Hero photos: the event-card photo stack, filling the hero band */
.nbd-hero__slider { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; max-width: none; }
.nbd-hero__slider .nbd-ev__slide { transition: left .4s ease, right .4s ease; }
@media (prefers-reduced-motion: reduce) { .nbd-hero__slider .nbd-ev__slide { transition: none; } }
/* Programa filters */
/* Programa header and filters (prototype 10-28): dates line, a rule, selects without labels, count on the right */
body.nbd .page-content .nbd-programa .nbd-programa__dates { margin: -16px 0 32px; font-size: clamp(17px, 1.4vw, 20px); }
.nbd-filter { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 8px; padding: 20px 0 24px; border-top: 2px solid var(--nbd-k); }
.nbd-filter[hidden] { display: none; }
.nbd-filter__field { display: flex; flex-direction: column; flex: 1 1 240px; max-width: 340px; min-width: 0; }
.nbd-filter__box { position: relative; display: block; }
.nbd-filter__box::after { content: "↓"; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); font-size: 18px; line-height: 1; pointer-events: none; }
.nbd-filter select { -webkit-appearance: none; appearance: none; width: 100%; border: 2px solid var(--nbd-k); border-radius: 0; background: var(--nbd-w); color: var(--nbd-k); font: 800 16px var(--nbd-font); padding: 13px 44px 13px 14px; cursor: pointer; }
body.nbd .page-content .nbd-programa .nbd-filter__count, .nbd-filter__count { margin: 0 0 0 auto; font-size: 16px; }
@media (max-width: 599px) { body.nbd .page-content .nbd-programa .nbd-filter__count, .nbd-filter__count { flex: 1 1 100%; margin: 0; } }
/* Big numbers in page text (e.g. Apie: 250 / 35 / 470+): bordered boxes like the parts' facts, equal columns */
body.nbd .page-content .nbd-bignums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 2em 0; }
.nbd-bignums > div { border: 2px solid var(--nbd-k); padding: 20px 20px 18px; display: flex; flex-direction: column; gap: 8px; }
.nbd-bignums dt { font-size: clamp(56px, 6.4vw, 96px); font-weight: 800; line-height: 0.95; letter-spacing: -0.03em; }
.nbd-bignums dd { margin: 0; font-size: 17px; font-weight: 400; }
@media (max-width: 599px) { body.nbd .page-content .nbd-bignums { grid-template-columns: minmax(0, 1fr); } }
/* People cards in page text (festival directors; the team page uses the same card): photo on top, bordered */
body.nbd .page-content .nbd-people-cards { list-style: none; margin: 0 0 2em; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.nbd-person { border: 2px solid var(--nbd-k); display: flex; flex-direction: column; }
.nbd-person__photo { display: block; aspect-ratio: 1 / 1; overflow: hidden; background: #ccc; }
.nbd-person__img { display: block; width: 100%; height: 100% !important; object-fit: cover; object-position: center 20%; filter: grayscale(1); }
.nbd-person__text { display: flex; flex-direction: column; gap: 4px; padding: clamp(14px, 1.4vw, 20px); border-top: 2px solid var(--nbd-k); }
.nbd-person__name { font-size: clamp(18px, 1.5vw, 21px); font-weight: 800; line-height: 1.2; }
.nbd-person__role { font-size: 15px; }
.nbd-person__credit { font-size: 13px; margin-top: 4px; }
@media (max-width: 449px) { body.nbd .page-content .nbd-people-cards { grid-template-columns: minmax(0, 1fr); } }
body.nbd .wp-element-caption { color: var(--nbd-k); font-size: 14px; margin-top: 8px; }

/* Prototype sections: a rule, the heading on the left, the text from 25% + 76px ------------------- */
body.nbd :is(.page-content, .nbd-about) .nbd-sec { margin: 0; padding: 40px 0; border-top: 2px solid var(--nbd-k); max-width: none; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec:has(+ .nbd-sec), body.nbd :is(.page-content, .nbd-about) .nbd-sec + .nbd-sec { margin-top: 0; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec > .wp-block-group__inner-container { display: flex; flex-direction: column; gap: 20px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec h2 { margin: 0; font-size: clamp(24px, 2.3vw, 34px); line-height: 1.15; letter-spacing: -0.005em; font-weight: 800; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body { margin: 0; min-width: 0; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body > .wp-block-group__inner-container { display: flex; flex-direction: column; gap: 22px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body > .wp-block-group__inner-container > * { margin: 0; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body p, body.nbd :is(.page-content, .nbd-about) .nbd-sec__body li { font-size: 17px; line-height: 1.55; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body > .wp-block-group__inner-container > p, body.nbd :is(.page-content, .nbd-about) .nbd-sec__body > .wp-block-group__inner-container > ul, body.nbd :is(.page-content, .nbd-about) .nbd-sec__body > .wp-block-group__inner-container > ol { max-width: 720px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec h3 { margin: 0 0 12px; font-size: 20px; line-height: 1.2; font-weight: 800; }
@media (min-width: 900px) {
	body.nbd :is(.page-content, .nbd-about) .nbd-sec { padding: 72px 0; }
	body.nbd :is(.page-content, .nbd-about) .nbd-sec > .wp-block-group__inner-container { display: grid; grid-template-columns: calc(25% + 28px) minmax(0, 1fr); gap: 20px 48px; align-items: start; }
}
/* Lists in sections: an em dash instead of a bullet; numbered steps between rules */
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body ul:not(.nbd-people-cards):not(.wp-block-gallery):not(.nbd-whom):not(.nbd-archive__list) { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 10px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body ul:not(.nbd-people-cards):not(.wp-block-gallery):not(.nbd-whom):not(.nbd-archive__list) > li { position: relative; padding-left: 31px; margin: 0; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body ul:not(.nbd-people-cards):not(.wp-block-gallery):not(.nbd-whom):not(.nbd-archive__list) > li::before { content: "—"; position: absolute; left: 0; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body ol { list-style: none; padding: 0; counter-reset: nbd-step; border-bottom: 2px solid var(--nbd-k); }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body ol > li { counter-increment: nbd-step; display: flex; gap: 20px; align-items: baseline; padding: 14px 0; margin: 0; border-top: 2px solid var(--nbd-k); }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body ol > li::before { content: counter(nbd-step); flex: 0 0 28px; font-weight: 800; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec .wp-block-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 40px; margin: 0; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec .wp-block-column { margin: 0; }
@media (max-width: 599px) { body.nbd :is(.page-content, .nbd-about) .nbd-sec .wp-block-columns { grid-template-columns: minmax(0, 1fr); } }
/* Bilietai: discount boxes and the voucher amount picker */
.nbd-discounts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 8px; }
.nbd-discounts > div { border: 2px solid var(--nbd-k); padding: 22px; display: flex; flex-direction: column; gap: 10px; }
.nbd-discounts__big { font-size: clamp(36px, 3.6vw, 52px); font-weight: 800; line-height: 1; letter-spacing: -0.02em; }
.nbd-discounts__txt { font-size: 16px; line-height: 1.45; }
.nbd-coupon { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.nbd-coupon__amounts { display: flex; flex-wrap: wrap; gap: 6px; }
.nbd-amount { min-width: 76px; border: 2px solid var(--nbd-k); background: var(--nbd-w); color: var(--nbd-k); padding: 14px 16px; font: 800 17px var(--nbd-font); cursor: pointer; border-radius: 0; }
.nbd-amount[aria-pressed="true"] { background: var(--nbd-k); color: var(--nbd-w); }
/* Savanorystė key facts, Apie opening/closing pair */
.nbd-keyfacts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 8px; margin-bottom: 22px; }
.nbd-keyfacts > div { border: 2px solid var(--nbd-k); padding: 18px 20px; display: flex; flex-direction: column; gap: 6px; }
.nbd-keyfacts__label { font-size: 14px; }
.nbd-keyfacts__value { font-size: 20px; font-weight: 800; line-height: 1.2; }
.nbd-pair { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 32px 40px; }
.nbd-pair figure { margin: 0 0 12px; }
.nbd-pair img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; height: auto; }
.nbd-pair figcaption { margin-top: 10px; font-size: 14px; color: var(--nbd-k); }
.nbd-pair__label { margin: 0 0 6px; font-size: 15px; font-weight: 800; }
body.nbd .page-content .nbd-sec h3.nbd-pair__title { margin: 0 0 12px; font-size: clamp(24px, 2.5vw, 35px); line-height: 1.1; font-weight: 800; letter-spacing: -0.01em; }
/* Palaikyk: jump cards, copyable bank details, accordions */
.nbd-jumps { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 8px; margin: 0 0 clamp(40px, 5vw, 72px); }
body.nbd .page-content .nbd-jumps a { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 20px; border: 2px solid var(--nbd-k); text-decoration: none; color: var(--nbd-k); }
.nbd-jumps__t { display: block; font-size: 18px; font-weight: 800; line-height: 1.2; }
.nbd-jumps__s { display: block; margin-top: 6px; font-size: 15px; line-height: normal; }
.nbd-jumps__a { font-size: 24px; line-height: 1; }
.nbd-copy { margin: 0; max-width: 720px; border-bottom: 2px solid var(--nbd-k); }
.nbd-copy > div { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 24px; min-height: 64px; padding: 8px 0; border-top: 2px solid var(--nbd-k); }
.nbd-copy dt { flex: 0 0 170px; font-size: 15px; }
.nbd-copy dd { flex: 1 1 200px; margin: 0; font-size: 17px; font-weight: 800; overflow-wrap: anywhere; }
.nbd-copy__btn, .nbd-step-copy { border: 0; background: none; padding: 10px 14px; font: 800 15px var(--nbd-font); color: var(--nbd-k); cursor: pointer; margin-left: auto; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details { border: 2px solid var(--nbd-k); padding: 0 clamp(16px, 2vw, 24px); max-width: 820px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details + details { margin-top: 8px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details > summary { display: flex; justify-content: space-between; gap: 24px; padding: 18px 0; font-size: clamp(16px, 1.4vw, 20px); font-weight: 600; cursor: pointer; list-style: none; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details > summary::-webkit-details-marker { display: none; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details > summary::after { content: "+"; font-weight: 400; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details[open] > summary::after { content: "−"; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details > :not(summary) { margin: 0 0 18px; }
/* Kontaktai: who to write to */
body.nbd .page-content .nbd-whom { list-style: none; margin: 0; padding: 0; max-width: 820px; border-bottom: 2px solid var(--nbd-k); }
body.nbd .page-content .nbd-whom li { margin: 0; }
body.nbd .page-content .nbd-whom a { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 24px; padding: 14px 0; border-top: 2px solid var(--nbd-k); text-decoration: none; color: var(--nbd-k); }
.nbd-whom__what { font-size: 17px; }
.nbd-whom__mail { font-size: 18px; text-decoration: underline; text-underline-offset: 3px; }
/* Archyvas: one year at a time */
.nbd-years { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 24px; }
.nbd-years[hidden] { display: none; }
.nbd-year-btn { border: 2px solid var(--nbd-k); background: var(--nbd-w); color: var(--nbd-k); padding: 12px 18px; font: 800 18px var(--nbd-font); cursor: pointer; border-radius: 0; }
.nbd-year-btn[aria-pressed="true"] { background: var(--nbd-k); color: var(--nbd-w); }
@media (hover: hover) and (pointer: fine) and (min-width: 900px) {
	.nbd-amount:not([aria-pressed="true"]):hover, .nbd-year-btn:not([aria-pressed="true"]):hover, body.nbd .page-content .nbd-jumps a:hover, body.nbd .page-content .nbd-whom a:hover { background: var(--nbd-y); }
}
.nbd-about--sec { display: block; }
.nbd-about__lead p { margin: 0 0 48px; font-size: clamp(24px, 3.2vw, 46px); font-weight: 600; line-height: 1.18; letter-spacing: -0.01em; }
@media (min-width: 900px) { .nbd-about__lead { margin-left: calc(25% + 76px); } }
.nbd-feature__label { margin: 0 0 -12px; font-size: 15px; font-weight: 800; }
/* Sections: partner logos stay a grid of equal cells inside the text column */
body.nbd .page-content .nbd-sec .nbd-sec__body.nbd-partner-group { margin: 0; padding: 0; border: 0; }
body.nbd .page-content .nbd-sec .nbd-sec__body.nbd-partner-group > .wp-block-group__inner-container { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
@media (max-width: 599px) { body.nbd .page-content .nbd-sec .nbd-sec__body.nbd-partner-group > .wp-block-group__inner-container { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Sections: directors as large portraits (prototype), no frame */
body.nbd .page-content .nbd-sec .nbd-people-cards { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 32px 40px; margin: 0; max-width: none; }
body.nbd .page-content .nbd-sec .nbd-people-cards > li { max-width: 360px; }
body.nbd .page-content .nbd-sec .nbd-person { border: 0; }
body.nbd .page-content .nbd-sec .nbd-person__photo { aspect-ratio: 4 / 5; max-width: 360px; }
body.nbd .page-content .nbd-sec .nbd-person__text { border-top: 0; padding: 16px 0 0; gap: 8px; }
body.nbd .page-content .nbd-sec .nbd-person__name { font-size: 22px; }
body.nbd .page-content .nbd-sec .nbd-person__role { font-size: 17px; }
body.nbd .page-content .nbd-sec .nbd-person__credit { font-size: 14px; }
/* Kontaktai: the organiser on the left, the contacts large on the right */
body.nbd .page-content .nbd-sec--plain { border-top: 0; padding-top: 0; }
body.nbd .page-content .nbd-sec__label { margin: 0; font-size: 17px; }
body.nbd .page-content .nbd-sec__body p.nbd-contact-big { margin: 0; font-size: clamp(24px, 2.8vw, 40px); font-weight: 800; line-height: 1.2; letter-spacing: -0.01em; }
body.nbd .page-content .nbd-contact-big a { text-decoration: none; }
.nbd-whom__mail { font-weight: 800; text-decoration: none; }
/* Sections: big numbers under a rule, no boxes (prototype) */
body.nbd .page-content .nbd-sec .nbd-bignums { margin: 8px 0; grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr)); gap: 16px 24px; }
body.nbd .page-content .nbd-sec .nbd-bignums > div { border: 0; border-top: 2px solid var(--nbd-k); padding: 12px 0 0; }
/* Prototype details: accordion boxes 8px apart (the column gap is 22px); full-width photo and banners; three cards; the call-to-action box */
body.nbd .page-content .nbd-sec__body > .wp-block-group__inner-container > details + details { margin-top: -14px; }
body.nbd .page-content > .nbd-full { margin: 0 0 48px; }
body.nbd .page-content > .nbd-full img { display: block; width: 100%; aspect-ratio: 23 / 10; object-fit: cover; height: auto; }
body.nbd .page-content > .nbd-jumps { margin-top: 32px; }
body.nbd .page-content .nbd-thanks { margin: 0; padding: clamp(24px, 3.4vw, 48px); background: var(--nbd-y); font-size: clamp(22px, 2.4vw, 34px); font-weight: 600; line-height: 1.2; max-width: none; }
body.nbd .page-content .nbd-sec .wp-block-columns.nbd-cards3 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); }
body.nbd .page-content .nbd-sec .nbd-cards3 > .wp-block-column { border-top: 2px solid var(--nbd-k); padding-top: 16px; }
body.nbd .page-content .nbd-sec.nbd-sec--cta { margin-top: 24px; padding: clamp(24px, 3.4vw, 48px); border-top: 0; background: var(--nbd-y); }
body.nbd .page-content .nbd-sec.nbd-sec--cta > .wp-block-group__inner-container { display: flex; flex-direction: column; gap: 16px; }
body.nbd .page-content .nbd-sec.nbd-sec--cta h2 { font-size: clamp(31px, 3.8vw, 56px); letter-spacing: -0.015em; line-height: 1; }
body.nbd .page-content .nbd-sec .nbd-sec__body.nbd-partner-group figure.wp-block-image { height: 96px; }
/* Sezonas: the main event card inside the page margins, title like a section heading */
.nbd-feature--event { margin: 0 var(--nbd-gut); }
.nbd-feature--event .nbd-feature__photo { min-height: clamp(280px, 33vw, 480px); }
.nbd-feature--event .nbd-feature__title { font-size: clamp(28px, 2.8vw, 40px); line-height: 1.1; }
/* Archyvas: lead, the year's photo on top, text with a link */
.nbd-archive__top { margin: 0; } /* the photo sits on the next section's rule, as the prototype */
.nbd-archive__top img { display: block; width: 100%; aspect-ratio: 21 / 9; object-fit: cover; height: auto; }
.nbd-archive__excerpt { margin: 0; max-width: 720px; font-size: 17px; line-height: 1.55; }
@media (min-width: 900px) { body.nbd .page-content > .nbd-archive { margin-left: 0; max-width: none; } }

/* Prototype type weights: links inside running text are bold; a card's role stays 15px inside a section body. */
body.nbd .page-content :is(p, li) a:not(.wp-block-button__link, .nbd-whom a, .nbd-archive__list a), body.nbd .page-content .nbd-sec__label a, .nbd-footer__org { font-weight: 800; }
body.nbd .page-content .nbd-sec__body .tbt-staff-position { font-size: 15px; line-height: normal; }
body.nbd .page-content .nbd-sec .tbt-staff-name { margin: 0; font-size: 18px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body p.nbd-small { font-size: 14px; line-height: 1.5; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body .nbd-video__note { font-size: 15px; line-height: 1.5; }
/* Prototype details: no theme padding on titles; „Kam rašyti?“ label takes the line, the address follows or wraps;
   the thank-you text keeps the prototype's 920px measure inside the full-width box; the merchandise note sits in a dashed box. */
body.nbd .page-header .entry-title { padding-inline: 0; }
body.nbd .page-content .nbd-whom a { justify-content: flex-start; }
.nbd-whom__what { flex: 1 1 260px; }
body.nbd .page-content .nbd-thanks { padding-right: max(clamp(24px, 3.4vw, 48px), calc(100% - 920px - clamp(24px, 3.4vw, 48px))); }
body.nbd .page-content .nbd-box-dashed { border: 2px dashed var(--nbd-k); padding: clamp(24px, 4vw, 56px); display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
body.nbd .page-content .nbd-box-dashed > .wp-block-group__inner-container { display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
body.nbd .page-content .nbd-box-dashed p { margin: 0; font-size: 17px; line-height: 1.55; max-width: 720px; }
/* Prototype measures: only running text stops at 720px (and wraps evenly); lists, grids and chips use the whole column. */
body.nbd :is(.page-content, .nbd-about) p:not(.nbd-video__note, .nbd-contact-big) { text-wrap: pretty; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body > .wp-block-group__inner-container > ul.nbd-whom { max-width: 820px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body > .wp-block-group__inner-container > :is(ul.nbd-people-cards, p.nbd-chips) { max-width: none; }
@media (min-width: 900px) {
	body.nbd.page:not(.nbd-landing) .site-main:not(:has(.nbd-programa, .wp-block-query)) > .page-content > :is(.nbd-jumps, .nbd-keyfacts) { max-width: none; }
}
/* Prototype: two-column blocks inside a section stack below 2 × 300px; support amounts are wider chips than coupon amounts. */
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body .wp-block-columns { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 32px 40px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec__body .wp-block-columns > .wp-block-column { flex-basis: auto; margin: 0; }
.nbd-chips .nbd-amount { min-width: 96px; text-align: center; }
.nbd-copy__btn { margin-right: -14px; }
/* Archyvas year as the prototype: big year beside the intro and figures; text items; „show more“. */
body.nbd .page-content .nbd-sec.nbd-archive__head { padding: clamp(32px, 4vw, 56px) 0; }
body.nbd .page-content .nbd-sec.nbd-archive__head h2.nbd-archive__title { margin: 0; font-size: clamp(49px, 5.6vw, 84px); font-weight: 800; line-height: 0.9; letter-spacing: -0.03em; }
body.nbd .page-content .nbd-sec__body p.nbd-archive__intro { margin: 0; max-width: 920px; font-size: clamp(20px, 2vw, 28px); font-weight: 600; line-height: 1.3; letter-spacing: -0.01em; }
.nbd-archive__stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: 16px 24px; margin: 24px 0 0; }
.nbd-archive__stat { border-top: 2px solid var(--nbd-k); padding-top: 12px; display: flex; flex-direction: column; gap: 4px; }
.nbd-archive__stat dt { font-size: clamp(40px, 4.4vw, 64px); font-weight: 800; letter-spacing: -0.03em; line-height: 0.95; }
.nbd-archive__stat dd { margin: 0; font-size: 16px; }
.nbd-archive__about-item[hidden] { display: none; }
.nbd-archive__about-item > :is(p, h4) { margin: 0; max-width: 720px; }
body.nbd .page-content .nbd-archive__about-h { margin: 8px 0 0; font-size: 20px; font-weight: 800; line-height: 1.25; }
.nbd-archive__more { align-self: flex-start; border: 2px solid var(--nbd-k); background: transparent; color: var(--nbd-k); padding: 13px 22px; font: 800 16px var(--nbd-font); cursor: pointer; border-radius: 0; }
.nbd-archive__more[hidden] { display: none; }
@media (hover: hover) { .nbd-archive__more:hover { background: var(--nbd-y); } }
/* Prototype 2026-10-28 21:05Z: every bold is 800 (Nunito Sans), headings and strong text included. */
body.nbd :is(b, strong, h1, h2, h3, h4, h5, h6) { font-weight: 800; }
/* Partneriai as the prototype (Aistė 2026-10-29 p. 4): logos in a row from the left edge, each at its own width. */
body.nbd .page-content .nbd-sec .nbd-sec__body.nbd-partner-group > .wp-block-group__inner-container { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: clamp(32px, 3.6vw, 52px); }
body.nbd .page-content .nbd-sec .nbd-sec__body.nbd-partner-group figure.wp-block-image { flex: none; height: auto; padding: 0; margin: 0; display: block; max-width: 100%; }
body.nbd .page-content .nbd-partner-group figure img { display: block; width: 130px; max-width: 100%; height: auto; max-height: none; }
body.nbd .page-content .nbd-partner-group img[alt="Lietuvos šokio centras"] { width: 112px; }
body.nbd .page-content .nbd-partner-group img[alt="Lithuanian Dance Centre"] { width: 137px; }
body.nbd .page-content .nbd-partner-group img[alt="Lietuvos kultūros taryba"] { width: 149px; }
body.nbd .page-content .nbd-partner-group img[alt="Vilniaus miesto savivaldybė"] { width: 82px; }
body.nbd .page-content .nbd-partner-group img[alt="Lietuvos kultūros institutas"] { width: 132px; }
body.nbd .page-content .nbd-partner-group img[alt="Co-funded by the European Union"] { width: 156px; }
body.nbd .page-content .nbd-partner-group img[alt="Reefo"] { width: 122px; }
body.nbd .page-content .nbd-partner-group img[alt="LRT"] { width: 106px; }
body.nbd .page-content .nbd-partner-group img[alt="Žmonės"] { width: 116px; }
body.nbd .page-content .nbd-partner-group img[alt="M-1 Plius"] { width: 71px; }
body.nbd .page-content .nbd-partner-group img[alt="370"] { width: 100px; }
body.nbd .page-content .nbd-partner-group img[alt="Tobalt"] { width: 157px; }
body.nbd .page-content .nbd-partner-group img[alt="Bilietai.lt"] { width: 136px; }
body.nbd .page-content .nbd-partner-group img[alt="Institut français de Lituanie"] { width: 102px; }
body.nbd .page-content .nbd-partner-group img[alt="JCDecaux"] { width: 167px; }
body.nbd .page-content .nbd-partner-group img[alt="Menų spaustuvė"] { width: 146px; }
body.nbd .page-content .nbd-partner-group img[alt="Dūmų fabrikas"] { width: 53px; }
body.nbd .page-content .nbd-partner-group img[alt="Nacionalinė dailės galerija"] { width: 143px; }
body.nbd .page-content .nbd-partner-group img[alt="Go Vilnius"] { width: 204px; }
body.nbd .page-content .nbd-partner-group img[alt="Onassis Stegi"] { width: 133px; }
body.nbd .page-content .nbd-partner-group img[alt="Aerowaves"] { width: 170px; }
body.nbd .page-content .nbd-partner-group img[alt="Vaga"] { width: 116px; }
body.nbd .page-content .nbd-partner-group img[alt="Akvilė"] { width: 122px; }
body.nbd .page-content .nbd-partner-group img[alt="Courtyard by Marriott Vilnius City Center"] { width: 170px; }
body.nbd .page-content .nbd-partner-group img[alt="Nationales Performance Netz"] { width: 150px; }
body.nbd .page-content .nbd-partner-group img[alt="Der Beauftragte der Bundesregierung für Kultur und Medien"] { width: 170px; }
/* Aistė 2026-10-29: buttons hover as the prototype (yellow on white, white on yellow); copy buttons too. */
@media (hover: hover) and (pointer: fine) and (min-width: 900px) {
	body.nbd .page-content .wp-block-button__link:hover, body.nbd .page-content .nbd-copy__btn:hover { background: var(--nbd-y); color: var(--nbd-k); }
	body.nbd .page-content :is(.nbd-sec--cta, .nbd-thanks) .wp-block-button__link:hover { background: var(--nbd-w); }
	.nbd-header .nbd-lang:hover { background: var(--nbd-w); }
}
/* Dokumentai ir formalumai as the prototype: separate boxes, the open one yellow, a large sign, 16px answers. */
body.nbd :is(.page-content, .nbd-about) .nbd-sec details { margin: 0 0 8px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details[open] { background: var(--nbd-y); }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details > summary { line-height: normal; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details > summary::after { font-size: 26px; line-height: 1; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details > p { font-size: 16px; line-height: 1.55; max-width: 720px; }
body.nbd :is(.page-content, .nbd-about) .nbd-sec details > p:last-child { margin-bottom: 0; padding-bottom: 22px; }
/* Team: only the e-mail is a link; the card does not react to the pointer. */
body.nbd .tbt-staff-card, body.nbd .tbt-staff-card:hover { background: none; transform: none; box-shadow: none; transition: none; }
body.nbd .tbt-staff-card .tbt-staff-image { transition: none; transform: none !important; }
/* Event page as the prototype's „Pilnas aprašymas“ (Aistė 2026-10-29 p. 2). */
.nbd-event-page { padding-top: 0; padding-bottom: clamp(56px, 8vw, 120px); }
.nbd-event__back { padding: clamp(24px, 3vw, 40px) 0; display: flex; flex-wrap: wrap; gap: 8px; }
.nbd-event__head { display: flex; flex-direction: column; gap: 14px; padding-bottom: clamp(32px, 4vw, 56px); }
.nbd-event__head > * { margin: 0; }
.nbd-event__when { font-size: clamp(18px, 1.6vw, 22px); font-weight: 800; }
.nbd-event__title { font-size: clamp(38px, 6.4vw, 96px); font-weight: 800; letter-spacing: -0.025em; line-height: 0.95; overflow-wrap: anywhere; }
.nbd-event__by { font-size: clamp(18px, 1.6vw, 22px); }
.nbd-event__tag { align-self: flex-start; border: 2px solid var(--nbd-k); padding: 3px 8px; font-size: 13px; font-weight: 800; }
.nbd-event__main { display: flex; flex-wrap: wrap; gap: 32px clamp(32px, 4vw, 64px); align-items: flex-start; margin-bottom: clamp(40px, 5vw, 72px); }
.nbd-event__main .nbd-event__photos { flex: 1.6 1 520px; }
.nbd-event__side { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.nbd-event__facts, .nbd-event__credits dl { margin: 0; border-bottom: 2px solid var(--nbd-k); }
.nbd-event__facts > div { border-top: 2px solid var(--nbd-k); padding: 12px 0; display: flex; gap: 16px; }
.nbd-event__facts dt { flex: 0 0 96px; font-size: 15px; }
.nbd-event__facts dd { flex: 1; margin: 0; font-size: 17px; font-weight: 800; }
.nbd-event__sessions-title { margin: 0; padding-bottom: 10px; font-size: 15px; font-weight: 800; }
.nbd-event__sessions ul { list-style: none; margin: 0; padding: 0; }
.nbd-event__sessions li { border-top: 2px solid var(--nbd-k); padding: 12px 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; }
.nbd-event__sessions li > span { flex: 1 1 160px; display: flex; flex-direction: column; gap: 2px; font-size: 15px; }
.nbd-event__sessions strong { font-size: 17px; font-weight: 800; }
.nbd-event__sessions .nbd-btn { padding: 11px 20px; font-size: 15px; }
body.nbd .nbd-event__more.page-content { max-width: none; }
.nbd-event__credits dl { max-width: 720px; }
.nbd-event__credits dl > div { border-top: 2px solid var(--nbd-k); padding: 12px 0; display: flex; flex-wrap: wrap; gap: 4px 24px; }
.nbd-event__credits dt { flex: 0 0 200px; font-size: 15px; }
.nbd-event__credits dd { flex: 1 1 220px; margin: 0; font-size: 17px; }
@media (hover: hover) and (pointer: fine) and (min-width: 900px) { .nbd-event-page .nbd-btn:hover { background: var(--nbd-y); } }
body.nbd .nbd-event__about .nbd-sec__body > p { max-width: 720px; margin: 0 0 22px; }
body.nbd .nbd-event__about .nbd-sec__body > p:last-child { margin-bottom: 0; }
.nbd-event__facts dd, .nbd-event__credits dd { line-height: normal; }
