.nt-post-header{
	position:relative; overflow:visible; margin-bottom:clamp(28px,3.4vw,56px);
	--box:#042935; --line-outer:#0cab9b; --line-inner:#ffe2a1; --grey:#f0f0ee; --title:#042935;
	--boxh:clamp(340px,46vw,600px); --bl:0.12em;
	--pad-x:clamp(28px,9%,180px);   /* left indent for the title + date */
	--line-ease:cubic-bezier(.45,.02,.2,1); --line-dur:2.1s;
}
.nt-post-header__inner{display:flex;align-items:flex-start;gap:0;padding:48px clamp(20px,5%,80px) 0 0}
.nt-post-header__band{position:relative;flex:1 1 auto;height:var(--boxh);background:var(--grey)}
.nt-post-header__title{
	position:absolute;left:var(--pad-x);right:18px;bottom:0;margin:0;
	font-weight:800;line-height:.98;color:var(--title);
	font-size:clamp(36px,4.6vw,82px);letter-spacing:-.015em;
	transform:translateY(var(--bl));
}
.nt-post-header__frame{position:relative;flex:0 0 var(--boxh);width:var(--boxh);height:var(--boxh);background:var(--box)}
.nt-post-header__box{position:absolute;inset:0;background:var(--box);z-index:-1}
.nt-post-header__photo{position:absolute;inset:20%;overflow:hidden;background:var(--box)}
.nt-post-header__photo img{width:100%;height:100%;object-fit:cover;display:block}
.nt-post-header__lines{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:visible}
.nt-post-header__lines .nt-line{fill:none;stroke-width:20;stroke-linecap:butt;stroke-linejoin:miter}
.nt-line--outer{stroke:var(--line-outer)}
.nt-line--inner{stroke:var(--line-inner)}
.nt-post-header__mark{position:absolute;left:1.09%;bottom:.99%;width:29%;z-index:3}
.nt-post-header__mark svg{display:block;width:100%;height:auto}
.nt-post-header__date{margin:0;padding:20px clamp(20px,5%,80px) 0 var(--pad-x);font-size:16px;font-weight:600;letter-spacing:.01em;color:#475c64}

/* Responsive collapse: image on top (right-aligned, square), title below, no grey band. */
@media (max-width:880px){
	.nt-post-header__inner{flex-direction:column;align-items:flex-start;gap:20px;padding:26px 26px 34px}
	.nt-post-header__band{height:auto;width:100%;background:transparent}
	.nt-post-header__frame{order:-1;flex:none;align-self:flex-end;width:min(72%,300px);height:auto;aspect-ratio:1/1}
	.nt-post-header__title{position:static;transform:none;text-align:left;font-size:clamp(28px,8vw,48px)}
	.nt-post-header__date{padding:18px 26px 0}
}

/* Entrance animation only when motion is welcome. */
@media (prefers-reduced-motion:no-preference){
	.nt-post-header__band{transform:translateX(60px);opacity:0;animation:nt-bandIn .9s cubic-bezier(.42,0,.58,1) forwards}
	.nt-post-header__title{opacity:0;transform:translateY(calc(var(--bl) + 22px));animation:nt-titleUp 1s cubic-bezier(.2,.7,.2,1) .4s forwards}
	.nt-post-header__box{opacity:0;transform:scale(.95);animation:nt-boxIn .8s cubic-bezier(.42,0,.58,1) forwards}
	.nt-post-header__photo img{opacity:0;animation:nt-fade 2.4s cubic-bezier(.42,0,.58,1) 1s forwards}
	.nt-post-header__mark{opacity:0;animation:nt-fade 1s ease 2.5s forwards}
	.nt-line{stroke-dasharray:100;stroke-dashoffset:100;animation:nt-draw var(--line-dur) var(--line-ease) forwards}
	.nt-line--inner{animation-delay:.5s}
	.nt-line--outer{animation-delay:.68s}
	.nt-post-header__date{opacity:0;transform:translateY(14px);animation:nt-fadeUp .8s cubic-bezier(.2,.7,.2,1) .7s forwards}

	@media (max-width:880px){
		.nt-post-header__band{transform:none;opacity:1;animation:none}
		.nt-post-header__title{transform:none;animation:nt-titleUpM 1s cubic-bezier(.2,.7,.2,1) .35s forwards}
	}
}
@keyframes nt-bandIn{to{transform:translateX(0);opacity:1}}
@keyframes nt-titleUp{to{transform:translateY(var(--bl));opacity:1}}
@keyframes nt-titleUpM{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes nt-boxIn{to{transform:scale(1);opacity:1}}
@keyframes nt-fade{to{opacity:1}}
@keyframes nt-fadeUp{to{opacity:1;transform:none}}
@keyframes nt-draw{to{stroke-dashoffset:0}}
