/*
 * Newbuild programme — overview and vessel pages.
 * Builds on the theme's main.css (Montserrat, brand greens, .btn, .bggray, .bggradient).
 * Loaded only on the module's pages.
 */

.nb {
	--nb-deep: #025c44;
	--nb-green: #008861;
	--nb-ink: #053427;
	--nb-mist: #f3f8f5;
	--nb-line: #d3e3db;
	--nb-muted: #4f6f65;
	--nb-radius: 20px;
	--nb-gap: clamp(24px, 3vw, 40px);
	font-variant-numeric: tabular-nums;
}

/* Theme adds a wave under every h3; the module's small headings don't use it. */
.nb h3.none::after { content: none; }
.nb h2 { font-size: clamp(1.6rem, 2.4vw, 2.25rem); line-height: 1.15; }
.nb .entry-content img,
.nb .entry-content video,
.nb .entry-content iframe { max-width: 100%; height: auto; border-radius: 10px; }
.nb :focus-visible { outline: 3px solid var(--nb-green); outline-offset: 3px; }

/* ---------- Section rhythm ---------- */
.nb-section { padding: clamp(56px, 7vw, 100px) 0; }
.nb-section__head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 12px 40px;
	margin-bottom: clamp(28px, 4vw, 48px);
}
.nb-section__head h2 { margin: 0; }
.nb-section__head .btn { margin: 0; }
.nb-section__sub { grid-column: 1 / -1; max-width: 62ch; margin: 0; color: var(--nb-muted); }

/* ---------- Hero ---------- */
.nb-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: max(560px, 85vh);
	padding: 150px 0 clamp(40px, 6vw, 80px);
	color: #fff;
	background: var(--nb-deep) linear-gradient(to right, #02664b 10%, #008861 60%);
	overflow: hidden;
}
.nb-hero--plain { min-height: 420px; }
.nb-hero__media { position: absolute; inset: 0; margin: 0; }
.nb-hero__img { width: 100%; height: 100%; object-fit: cover; object-position: center 60%; }
.nb-hero__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(to top, rgba(2, 40, 30, .82) 0%, rgba(2, 40, 30, .45) 38%, rgba(2, 40, 30, 0) 65%),
		linear-gradient(to bottom, rgba(2, 40, 30, .35), rgba(2, 40, 30, 0) 30%);
}
.nb-hero__caption {
	position: absolute;
	z-index: 1;
	right: 16px;
	bottom: 14px;
	padding: 3px 10px;
	font-size: 12px;
	color: rgba(255, 255, 255, .92);
	background: rgba(2, 40, 30, .55);
	border-radius: 10px;
}
.nb-hero__inner { position: relative; z-index: 1; width: 100%; }
.nb-hero__text { max-width: 980px; }
.nb-hero__title {
	margin: 0 0 18px;
	font-size: clamp(2.4rem, 6vw, 5.4rem);
	font-weight: 900;
	line-height: 1.02;
	letter-spacing: -.01em;
	color: #fff;
	text-shadow: 0 0 18px rgba(1, 39, 30, .25);
}
.nb-hero__lead { max-width: 46ch; margin: 0; font-size: clamp(1.05rem, 1.5vw, 1.35rem); font-weight: 500; line-height: 1.45; }
.nb-hero__facts { display: flex; flex-wrap: wrap; gap: 14px 44px; margin: 28px 0 0; }
.nb-hero__facts div { padding-left: 14px; border-left: 2px solid rgba(255, 255, 255, .5); }
.nb-hero__facts dt { font-size: 13px; font-weight: 500; opacity: .85; }
.nb-hero__facts dd { margin: 0; font-size: 1.15rem; font-weight: 800; }
.nb-hero .nb-status { margin-bottom: 18px; }

/* ---------- Status ---------- */
.nb-status {
	display: inline-flex;
	align-items: center;
	gap: .55em;
	margin: 0 0 12px;
	padding: .3em .95em;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	border-radius: 20px;
}
.nb-status::before { content: ""; width: .6em; height: .6em; border-radius: 50%; background: currentColor; }
.nb-status--construction { color: var(--nb-deep); background: #dcefe6; }
.nb-status--planned { color: var(--nb-muted); background: transparent; border: 1px dashed #9fbab0; }
.nb-status--planned::before { background: transparent; border: 1.5px solid currentColor; }
.nb-status--delivered { color: #fff; background: var(--nb-deep); }
.nb-status--on-dark.nb-status--construction { background: #fff; }

/* ---------- Drawing (general arrangement from the spec sheet) ---------- */
.nb-visual { margin: 0; }
.nb-visual--photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.nb-drawing {
	display: block;
	width: 100%;
	aspect-ratio: 2400 / 637;
	color: var(--nb-deep);
	background-color: currentColor;
	-webkit-mask: var(--nb-drawing) center / contain no-repeat;
	mask: var(--nb-drawing) center / contain no-repeat;
}

/* ---------- Intro + data plate ---------- */
.nb-intro__text h2 { margin-bottom: 24px; }
.nb-intro__text .nb-lead,
.nb-lead { font-size: 1.25rem; font-weight: 500; line-height: 1.55; color: var(--nb-ink); }
.nb-intro__text p { max-width: 68ch; }

.nb-plate { margin: 0; }
.nb-plate__label { font-weight: 500; }
.nb-plate__value { margin: 0; font-weight: 800; line-height: 1.1; }

.nb-plate--stack {
	padding: 10px 32px;
	color: #fff;
	background: var(--nb-deep) linear-gradient(160deg, #02664b 10%, #008861 90%);
	border-radius: var(--nb-radius);
}
.nb-plate--stack .nb-plate__item {
	display: flex;
	flex-direction: column-reverse;
	justify-content: flex-end;
	padding: 20px 0;
	border-bottom: 1px solid rgba(255, 255, 255, .22);
}
.nb-plate--stack .nb-plate__item:last-child { border-bottom: 0; }
.nb-plate--stack .nb-plate__value { font-size: clamp(1.9rem, 2.6vw, 2.5rem); }
.nb-plate--stack .nb-plate__label { font-size: 15px; opacity: .88; }

.nb-plate--row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	margin-top: clamp(28px, 4vw, 48px);
	border-top: 1px solid var(--nb-line);
}
.nb-plate--row .nb-plate__item {
	display: flex;
	flex-direction: column-reverse;
	justify-content: flex-end;
	padding: 20px 24px 4px 0;
}
.nb-plate--row .nb-plate__item + .nb-plate__item { padding-left: 24px; border-left: 1px solid var(--nb-line); }
.nb-plate--row .nb-plate__value { font-size: clamp(1.6rem, 2.2vw, 2.1rem); color: var(--nb-deep); }
.nb-plate--row .nb-plate__label { font-size: 15px; color: var(--nb-muted); }

/* ---------- Line-up of the four vessels ---------- */
.nb-lineup__list { display: grid; gap: 28px; margin: 0; padding: 0; list-style: none; }
.nb-vessel { scroll-margin-top: 140px; }
.nb-vessel__card {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
	overflow: hidden;
	background: #fff;
	border-radius: var(--nb-radius);
	box-shadow: 0 0 10px rgba(0, 0, 0, .08);
}
.nb-vessel__visual {
	display: flex;
	align-items: center;
	padding: clamp(24px, 3.5vw, 48px);
}
.nb-vessel__visual .nb-visual { width: 100%; }
.nb-vessel__body { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(24px, 3vw, 40px); }
.nb-vessel__name { margin: 4px 0 10px; font-size: clamp(1.45rem, 2vw, 1.85rem); color: var(--nb-deep); }
.nb-vessel__name a { color: inherit; }
.nb-vessel__intro { margin-bottom: 18px; }
.nb-vessel__note { margin: auto 0 0; padding-top: 6px; font-size: 15px; color: var(--nb-muted); }
.nb-vessel__cta { margin: auto 0 0; }

/* Under construction: the vessel is "real" — drawn in white on the brand gradient. */
.nb-vessel--construction .nb-vessel__visual,
.nb-vessel--delivered .nb-vessel__visual { background: var(--nb-deep) linear-gradient(to right, #02664b 10%, #008861 90%); }
.nb-vessel--construction .nb-drawing,
.nb-vessel--delivered .nb-drawing { color: #fff; }
.nb-vessel--linked .nb-vessel__card { transition: box-shadow .3s ease, transform .3s ease; }
.nb-vessel--linked .nb-vessel__card:hover { box-shadow: 0 10px 30px rgba(2, 60, 44, .18); transform: translateY(-2px); }
.nb-vessel--linked .nb-vessel__card:focus-within { outline: 3px solid var(--nb-green); outline-offset: 4px; }
.nb-vessel--linked .nb-vessel__card:hover .btn { background: var(--nb-green); }

/* Not yet started: still on the drawing board. */
.nb-vessel--planned .nb-vessel__card,
.nb-sister--planned {
	background: rgba(255, 255, 255, .55);
	border: 1px dashed #a9c3b9;
	box-shadow: none;
}
.nb-vessel--planned .nb-vessel__visual,
.nb-sister--planned .nb-visual--drawing {
	background-color: #fff;
	background-image:
		linear-gradient(rgba(0, 136, 97, .07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(0, 136, 97, .07) 1px, transparent 1px);
	background-size: 22px 22px;
}
.nb-vessel--planned .nb-drawing,
.nb-sister--planned .nb-drawing { color: #6d8f84; opacity: .55; }
.nb-vessel--planned .nb-vessel__name { color: var(--nb-ink); }

/* Stretched link: the whole card is the link target. */
.nb-stretched::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.nb-stretched:focus-visible { outline: none; }

/* Facts list (overview cards) */
.nb-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 24px;
	width: 100%;
	max-width: 420px;
	margin: 0 0 24px;
}
.nb-facts dt { font-size: 14px; font-weight: 500; color: var(--nb-muted); }
.nb-facts dd { margin: 0; font-weight: 800; color: var(--nb-ink); }

/* ---------- Capabilities + quote ---------- */
.nb-caps__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 32px 40px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.nb-caps__list li { padding-top: 16px; border-top: 1px solid var(--nb-line); }
.nb-caps__title { margin: 0 0 8px; font-size: 1.15rem; color: var(--nb-deep); }
.nb-caps__list p { margin: 0; }
.nb-quote { margin: 48px 0 0; }
.nb-quote blockquote { margin: 0 0 20px; padding-left: 28px; border-left: 4px solid var(--nb-green); }
.nb-quote blockquote p { margin: 0; font-size: clamp(1.15rem, 1.6vw, 1.4rem); font-weight: 600; line-height: 1.5; color: var(--nb-deep); }
.nb-quote figcaption { padding-left: 32px; }
.nb-quote figcaption strong,
.nb-quote figcaption span { display: block; }
.nb-quote figcaption span { font-size: 15px; color: var(--nb-muted); }

/* ---------- Partners ---------- */
.nb-partners { padding-top: 0; }
.nb-partners__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	gap: 32px 40px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.nb-partners__item { padding-top: 18px; border-top: 1px solid var(--nb-line); }
.nb-partners__logo { display: flex; align-items: center; height: 100px; margin-bottom: 16px; }
.nb-partners__logo img { width: auto; max-width: 180px; height: auto; max-height: 100px; object-fit: contain; }
.nb-partners__name { margin: 0 0 6px; font-size: 1.15rem; color: var(--nb-deep); }
.nb-partners__name a { color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.nb-partners__name a:hover { color: var(--nb-green); }
.nb-partners__role { margin: 0; font-size: 16px; }

/* ---------- Closing call to action ---------- */
.nb-cta { padding: clamp(56px, 7vw, 90px) 0; }
.nb-cta h2 { margin-bottom: 16px; }
.nb-cta p { max-width: 60ch; margin-bottom: 0; }
.nb-cta__actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-start; }
.nb-cta .btn { margin: 0; }
.nb .btn.btn-white { color: var(--nb-deep); background: #fff; }
.nb .btn.btn-white:hover { color: #fff; background: var(--nb-deep); }
.nb .btn.nb-btn-light { color: #fff; background: transparent; border: 1px solid #fff; }
.nb .btn.nb-btn-light:hover { color: var(--nb-deep) !important; background: #fff !important; border-color: #fff; }
.nb-filetype { font-size: .85em; opacity: .8; }

/* ---------- Detail page: at a glance ---------- */
.nb-glance__visual { max-width: 1400px; margin: 0 auto; }
.nb-glance .nb-drawing { color: var(--nb-deep); }

/* One orchestrated moment: the vessel in build is drawn in once. */
@media (prefers-reduced-motion: no-preference) {
	.nb-glance .nb-visual--construction .nb-drawing,
	.nb-lineup__list > .nb-vessel--construction:first-child .nb-drawing {
		animation: nb-draw 1.8s cubic-bezier(.3, .6, .2, 1) .25s both;
	}
}
@keyframes nb-draw {
	from { clip-path: inset(0 100% 0 0); }
	to { clip-path: inset(0 0 0 0); }
}

/* ---------- Build tracker ---------- */
.nb-track {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 0;
	margin: 0 0 clamp(40px, 5vw, 64px);
	padding: 0;
	list-style: none;
	counter-reset: none;
}
.nb-track__step { position: relative; display: flex; flex-direction: column; padding: 0 18px 0 0; }
.nb-track__step::before {
	content: "";
	position: absolute;
	top: 14px;
	left: 30px;
	right: 0;
	height: 2px;
	background: var(--nb-line);
}
.nb-track__step:last-child::before { display: none; }
.nb-track__step--done::before { background: var(--nb-green); }
.nb-track__marker {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	margin-bottom: 16px;
	font-size: 13px;
	color: #fff;
	background: #fff;
	border: 2px solid #b5cdc3;
	border-radius: 50%;
}
.nb-track__step--done .nb-track__marker { background: var(--nb-green); border-color: var(--nb-green); }
.nb-track__step--current .nb-track__marker { border: 8px solid var(--nb-green); box-shadow: 0 0 0 6px rgba(0, 136, 97, .18); }
.nb-track__label { font-weight: 800; line-height: 1.25; color: var(--nb-ink); }
.nb-track__step--upcoming .nb-track__label { color: var(--nb-muted); }
.nb-track__meta { margin-top: 4px; font-size: 15px; font-weight: 600; color: var(--nb-deep); }
.nb-track__step--upcoming .nb-track__meta { font-weight: 500; color: var(--nb-muted); }
.nb-track__desc { margin-top: 6px; font-size: 14px; line-height: 1.45; color: var(--nb-muted); }

/* ---------- Build diary ---------- */
.nb-build__diary-title { margin: 0 0 24px; font-size: 1.5rem; color: var(--nb-deep); }
.nb-diary { position: relative; margin: 0; padding: 0; list-style: none; }
.nb-diary__item { position: relative; padding-bottom: 28px; }
/* rail */
.nb-diary__item::before {
	content: "";
	position: absolute;
	top: 8px;
	bottom: -8px;
	left: 209px;
	width: 2px;
	background: var(--nb-line);
}
.nb-diary__item:last-child::before { bottom: 28px; }
.nb-diary__item::after {
	content: "";
	position: absolute;
	top: 30px;
	left: 203px;
	width: 14px;
	height: 14px;
	background: #fff;
	border: 2px solid var(--nb-green);
	border-radius: 50%;
}
.nb-diary__item--milestone::after { background: var(--nb-green); box-shadow: 0 0 0 5px rgba(0, 136, 97, .18); }
.nb-diary__entry { display: grid; grid-template-columns: 190px minmax(0, 1fr); column-gap: 40px; align-content: start; }
.nb-diary__entry > .nb-diary__head { grid-row: 1; }
.nb-diary__entry > .nb-diary__body { grid-row: 2; }
.nb-diary__entry > .nb-diary__date { grid-row: 1 / span 2; }
.nb-diary__date { grid-column: 1; padding-top: 22px; font-weight: 800; color: var(--nb-deep); text-align: right; }
.nb-diary__head,
.nb-diary__body { grid-column: 2; margin-left: 40px; }
.nb-diary__head { display: flex; flex-direction: column; align-items: flex-start; }
.nb-diary__tag {
	margin-top: 20px;
	padding: 2px 12px;
	font-size: 13px;
	font-weight: 700;
	color: var(--nb-deep);
	background: #dcefe6;
	border-radius: 20px;
}
.nb-diary__title { margin-top: 18px; margin-bottom: 8px; font-size: 1.3rem; color: var(--nb-ink); }
.nb-diary__tag + .nb-diary__title { margin-top: 8px; }
.nb-diary__body { max-width: 72ch; }
.nb-diary__body > :last-child { margin-bottom: 0; }
.nb-diary__body .wp-block-quote { margin: 0 0 20px; padding-left: 20px; border-left: 3px solid var(--nb-green); }
.nb-diary__body .wp-block-quote p { margin-bottom: 6px; font-weight: 600; color: var(--nb-deep); }
.nb-diary__body .wp-block-quote cite { font-size: 15px; font-style: normal; color: var(--nb-muted); }
.nb-diary__empty { color: var(--nb-muted); }

.nb-diary__more,
.nb-specs__more { margin-top: 8px; }
.nb-diary__more > summary,
.nb-specs__more > summary {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 26px;
	font-weight: 600;
	color: var(--nb-deep);
	list-style: none;
	cursor: pointer;
	border: 1px solid var(--nb-deep);
	border-radius: 28px;
}
.nb-diary__more > summary::-webkit-details-marker,
.nb-specs__more > summary::-webkit-details-marker { display: none; }
.nb-diary__more > summary::after,
.nb-specs__more > summary::after {
	content: "";
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform .2s ease;
}
.nb-diary__more[open] > summary::after,
.nb-specs__more[open] > summary::after { margin-top: 4px; transform: rotate(-135deg); }
.nb-diary__more[open] > summary { margin-bottom: 28px; }
.nb-specs__more[open] > summary { margin-bottom: 40px; }
.nb-diary__more > summary:hover,
.nb-specs__more > summary:hover { color: #fff; background: var(--nb-green); border-color: var(--nb-green); }

/* ---------- Story (vessel post content) ---------- */
.nb-story .entry-content > * { max-width: 72ch; }
.nb-story .entry-content > .alignwide,
.nb-story .entry-content > .alignfull,
.nb-story .entry-content > .wp-block-gallery,
.nb-story .entry-content > .wp-block-image,
.nb-story .entry-content > .wp-block-embed,
.nb-story .entry-content > .wp-block-video { max-width: none; }

/* ---------- Specifications ---------- */
.nb-specs { padding-top: 0; }
.nb-specs__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px 64px;
	margin-bottom: 40px;
}
.nb-spec__title { margin: 0 0 4px; padding-bottom: 10px; font-size: 1.1rem; color: var(--nb-deep); border-bottom: 2px solid var(--nb-green); }
.nb-spec__list { margin: 0; }
.nb-spec__row {
	display: flex;
	justify-content: space-between;
	gap: 24px;
	padding: 10px 0;
	font-size: 16px;
	border-bottom: 1px solid #e3ece7;
}
.nb-spec__row dt { font-weight: 400; color: var(--nb-muted); }
.nb-spec__row dd { margin: 0; font-weight: 700; text-align: right; color: var(--nb-ink); }
.nb-spec__row--tba dd { font-weight: 500; color: var(--nb-muted); }
.nb-specs__note { max-width: 90ch; margin: 8px 0 0; font-size: 14px; color: var(--nb-muted); }

/* ---------- Sister vessels ---------- */
.nb-sisters__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.nb-sister {
	position: relative;
	padding: 24px;
	background: #fff;
	border-radius: var(--nb-radius);
	box-shadow: 0 0 10px rgba(0, 0, 0, .08);
}
.nb-sister .nb-visual { margin: -24px -24px 20px; padding: 20px 24px; border-radius: var(--nb-radius) var(--nb-radius) 0 0; }
.nb-sister--construction .nb-visual,
.nb-sister--delivered .nb-visual { background: linear-gradient(to right, #02664b 10%, #008861 90%); }
.nb-sister--construction .nb-drawing,
.nb-sister--delivered .nb-drawing { color: #fff; }
.nb-sister__name { margin: 0 0 4px; font-size: 1.25rem; color: var(--nb-ink); }
.nb-sister__name a { color: inherit; }
.nb-sister--linked:hover { box-shadow: 0 10px 30px rgba(2, 60, 44, .18); }
.nb-sister__meta { margin: 0; font-size: 15px; color: var(--nb-muted); }
.nb-link { font-weight: 700; color: var(--nb-deep); }
.nb-link:hover { color: var(--nb-green); }
.nb-link .fa-solid { margin-right: 6px; }

/* ---------- Responsive ---------- */
@media (max-width: 1199px) {
	.nb-track { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 36px; }
	.nb-track__step:nth-child(3n)::before { display: none; }
}
@media (max-width: 991px) {
	.nb-specs__grid { grid-template-columns: 1fr; }
	.nb-vessel__card { grid-template-columns: 1fr; }
	.nb-plate--stack { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; margin-top: 32px; }
	.nb-plate--stack .nb-plate__item:nth-last-child(2):nth-child(odd) { border-bottom: 0; }
	.nb-quote { margin-top: 40px; }
}
@media (max-width: 575px) {
	.nb-plate--stack { grid-template-columns: 1fr; }
	.nb-plate--stack .nb-plate__item:nth-last-child(2):nth-child(odd) { border-bottom: 1px solid rgba(255, 255, 255, .22); }
}
@media (max-width: 767px) {
	.nb-hero { min-height: max(520px, 80vh); padding-top: 120px; }
	.nb-hero__media::after {
		background:
			linear-gradient(to top, rgba(2, 40, 30, .92) 0%, rgba(2, 40, 30, .75) 45%, rgba(2, 40, 30, .1) 75%),
			linear-gradient(to bottom, rgba(2, 40, 30, .35), rgba(2, 40, 30, 0) 30%);
	}
	.nb-hero__img { object-position: 70% 30%; }
	.nb-hero__caption { right: 8px; bottom: 6px; }
	.nb-hero__facts { gap: 12px 28px; }
	.nb-track { grid-template-columns: 1fr; row-gap: 0; }
	.nb-track__step {
		display: grid;
		grid-template-columns: 30px 1fr;
		column-gap: 18px;
		padding: 0 0 26px;
	}
	.nb-track__step::before,
	.nb-track__step:nth-child(3n)::before { display: block; top: 30px; bottom: 0; left: 14px; right: auto; width: 2px; height: auto; }
	.nb-track__step:last-child::before { display: none; }
	.nb-track__marker { grid-row: 1 / span 4; margin: 0; }
	.nb-track__label,
	.nb-track__meta,
	.nb-track__desc { grid-column: 2; }
	.nb-track__label { padding-top: 3px; }
	.nb-diary__item { padding-left: 34px; }
	.nb-diary__item::before { left: 6px; }
	.nb-diary__item::after { top: 6px; left: 0; }
	.nb-diary__entry { grid-template-columns: 1fr; }
	.nb-diary__entry > .nb-diary__date,
	.nb-diary__entry > .nb-diary__head,
	.nb-diary__entry > .nb-diary__body { grid-column: 1; grid-row: auto; margin-left: 0; }
	.nb-diary__date { padding-top: 0; text-align: left; }
	.nb-diary__tag { margin-top: 8px; }
	.nb-diary__title { margin-top: 8px; }
	.nb-plate--row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nb-plate--row .nb-plate__item,
	.nb-plate--row .nb-plate__item + .nb-plate__item { padding: 16px 12px 12px 0; border-left: 0; border-bottom: 1px solid var(--nb-line); }
	.nb-spec__row { flex-direction: column; gap: 2px; }
	.nb-spec__row dd { text-align: left; }
	.nb-section__head { grid-template-columns: 1fr; }
	.nb-section__head .btn { justify-self: start; margin-top: 8px; }
	.nb .btn { max-width: 100%; white-space: normal; text-align: left; }
}
