/* Compact, editable project stories. Layout only; original widgets and media retained. */
.nt-wordpress.nt-wordpress .nt-project-compact{padding-top:40px;padding-bottom:56px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-project-intro{display:grid!important;grid-template-columns:minmax(0,0.88fr) minmax(0,1.12fr);gap:clamp(32px,4vw,64px)!important;align-items:start;margin:0 0 44px!important;padding:0!important;width:100%;max-width:none}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-project-intro-copy{display:block!important;width:100%;max-width:none;min-width:0}
.nt-wordpress.nt-wordpress .nt-project-compact .project-location{display:flex;justify-content:space-between;gap:20px;margin:0 0 24px;padding:0;max-width:100%;font-size:13px}
.nt-wordpress.nt-wordpress .nt-project-compact .project-title-group{display:block;margin:0 0 24px;padding:0;max-width:none}
.nt-wordpress.nt-wordpress .nt-project-compact h1{font-size:clamp(32px,3.3vw,50px);line-height:1.08;letter-spacing:-.035em;margin:0 0 16px;max-width:100%;overflow-wrap:normal}
.nt-wordpress.nt-wordpress .nt-project-compact .project-category{font-size:15px;line-height:1.45;margin:0;max-width:100%}
.nt-wordpress.nt-wordpress .nt-project-compact .project-hero-copy{display:block;width:100%;max-width:none;margin:0;padding:0}
.nt-wordpress.nt-wordpress .nt-project-compact p{font-size:17px;line-height:1.55;margin:0 0 16px;max-width:68ch}
.nt-wordpress.nt-wordpress .nt-project-compact .project-lead{font-size:20px;line-height:1.45;letter-spacing:-.015em;margin:0 0 18px;max-width:48ch}
.nt-wordpress.nt-wordpress .nt-project-compact h2{font-size:clamp(25px,2.1vw,32px);line-height:1.15;letter-spacing:-.025em;margin:0 0 18px;max-width:24ch}
.nt-wordpress.nt-wordpress .nt-project-compact h3{font-size:20px;line-height:1.25;margin:0 0 14px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-figure{display:block!important;width:100%;min-width:0;max-width:100%;margin:0;padding:0;align-self:start;height:auto;min-height:0;aspect-ratio:auto;overflow:visible}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-figure img{display:block;width:100%;height:auto;max-height:500px;object-fit:contain;object-position:center;margin:0;border-radius:0}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-project-intro-media img{max-height:520px}
.nt-wordpress.nt-wordpress .nt-project-compact figcaption{font-size:12px;line-height:1.4;margin:10px 0 0;padding:0;max-width:100%}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-project-section{margin:0 0 40px!important;padding:0!important;width:100%;max-width:none;min-height:0}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-media-row{display:grid!important;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(32px,4vw,64px)!important;align-items:start}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only{display:grid!important;grid-template-columns:var(--nt-gallery-columns,repeat(2,minmax(0,1fr)));gap:24px!important;align-items:start}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only:has(> :nth-child(3)){grid-template-columns:var(--nt-gallery-columns,repeat(3,minmax(0,1fr)))}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only img{max-height:380px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-inner-gallery{display:grid!important;grid-template-columns:var(--nt-gallery-columns,repeat(2,minmax(0,1fr)));gap:20px!important;align-items:start}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-text-row{display:grid!important;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(32px,4vw,64px)!important;align-items:start}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-copy-only{display:block!important;max-width:80ch;margin-left:0!important}
.nt-wordpress.nt-wordpress .nt-project-compact .project-story-copy,.nt-wordpress.nt-wordpress .nt-project-compact .oxo-copy,.nt-wordpress.nt-wordpress .nt-project-compact .nature-cups-copy,.nt-wordpress.nt-wordpress .nt-project-compact .treecup-intro-copy{width:100%;max-width:none;margin:0;padding:0}
.nt-wordpress.nt-wordpress .nt-project-compact .project-references{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px!important;border-top:1px solid var(--line,#d7d7d2);padding-top:24px!important;margin-top:12px!important}
.nt-wordpress.nt-wordpress .nt-project-compact .project-references p,.nt-wordpress.nt-wordpress .nt-project-compact .project-references li{font-size:14px;line-height:1.5}
.nt-wordpress.nt-wordpress .nt-project-compact .project-references h2{font-size:14px;line-height:1.4;letter-spacing:0;margin-bottom:12px}
.nt-wordpress.nt-wordpress .nt-project-compact .case-expertise-link{display:grid!important;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(32px,4vw,64px)!important;border-top:1px solid var(--line,#d7d7d2);padding-top:24px!important}
.nt-wordpress.nt-wordpress .nt-project-compact .case-expertise-link h2{font-size:20px}
.nt-wordpress.nt-wordpress .nt-project-compact .project-navigation{padding-top:24px!important;border-top:1px solid var(--line,#d7d7d2);margin-bottom:0!important;gap:24px!important}
@media(max-width:899px){
.nt-wordpress.nt-wordpress .nt-project-compact{padding-top:28px;padding-bottom:36px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-project-intro{grid-template-columns:1fr;gap:24px!important;margin-bottom:32px!important}
.nt-wordpress.nt-wordpress .nt-project-compact h1{font-size:clamp(32px,5vw,44px)}
.nt-wordpress.nt-wordpress .nt-project-compact .project-location{margin-bottom:20px}
.nt-wordpress.nt-wordpress .nt-project-compact .project-title-group{margin-bottom:20px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-project-intro-media img{max-height:520px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-project-section{margin-bottom:32px!important}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-text-row,.nt-wordpress.nt-wordpress .nt-project-compact .case-expertise-link{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:28px!important}
}
@media(max-width:599px){
.nt-wordpress.nt-wordpress .nt-project-compact p{font-size:16px;line-height:1.55}
.nt-wordpress.nt-wordpress .nt-project-compact .project-lead{font-size:18px;line-height:1.45}
.nt-wordpress.nt-wordpress .nt-project-compact h2{font-size:25px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-text-row,.nt-wordpress.nt-wordpress .nt-project-compact .nt-media-row,.nt-wordpress.nt-wordpress .nt-project-compact .case-expertise-link,.nt-wordpress.nt-wordpress .nt-project-compact .project-references{grid-template-columns:1fr;gap:20px!important}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only,.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only:has(> :nth-child(3)){grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only:has(> :last-child:nth-child(odd)) > :last-child{grid-column:1/-1}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only img{max-height:340px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-inner-gallery{gap:14px!important}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-copy-only{max-width:none}
.nt-wordpress.nt-wordpress .nt-project-compact .project-navigation{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}.nt-wordpress.nt-wordpress .nt-project-compact .project-navigation a{font-size:15px;line-height:1.4;max-width:none;min-width:0;overflow-wrap:normal}
}

.nt-wordpress.nt-wordpress .nt-project-compact figcaption,.nt-wordpress.nt-wordpress .nt-project-compact figcaption span{white-space:normal!important;overflow-wrap:anywhere;text-align:left}

/* Editorial roles: opening image, text/image spread, then a deliberate image-pair spread. */
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row{display:block!important}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row > .project-story-copy{max-width:68ch;margin-bottom:24px}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row > .nt-inner-gallery{display:grid!important;grid-template-columns:var(--nt-gallery-columns,repeat(2,minmax(0,1fr)));gap:clamp(24px,4vw,64px)!important;width:100%}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-inner-gallery > .nt-figure:only-child{grid-column:1/-1}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-inner-gallery:has(> .nt-figure:only-child){grid-template-columns:1fr}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row .nt-figure img{max-height:none}
/* UNO's two use views share a landscape presentation; their complete photographs stay visible. */
@media(max-width:599px){
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row > .nt-inner-gallery{grid-template-columns:1fr;gap:24px!important}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row > .project-story-copy{margin-bottom:20px}
}

/* Paired views share a caption baseline within their group, not one size across the site. */
.nt-wordpress.nt-wordpress .nt-project-compact .nt-inner-gallery:has(> :nth-child(2)) > .nt-figure,
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only > .nt-figure{display:grid!important;grid-template-rows:minmax(0,1fr) auto;align-self:stretch}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-inner-gallery:has(> :nth-child(2)) > .nt-figure img{height:100%;max-height:600px;min-height:0;object-fit:contain}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-only > .nt-figure img{height:100%;min-height:0;object-fit:contain}
@media(max-width:599px){
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row .nt-figure{display:block!important}
.nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row .nt-figure img{height:auto;max-height:none}
}
/* Gallery tracks follow each source image's ratio; shared rows align photo edges and captions. */
@supports(grid-template-rows:subgrid){
 .nt-wordpress.nt-wordpress .nt-project-compact :is(.nt-inner-gallery,.nt-gallery-only):has(> :nth-child(2)){grid-template-rows:auto auto;grid-auto-flow:column;row-gap:10px!important}
 .nt-wordpress.nt-wordpress .nt-project-compact :is(.nt-inner-gallery,.nt-gallery-only):has(> :nth-child(2)) > .nt-figure{display:grid!important;grid-template-rows:subgrid;grid-row:span 2;row-gap:10px!important}
 .nt-wordpress.nt-wordpress .nt-project-compact :is(.nt-inner-gallery,.nt-gallery-only):has(> :nth-child(2)) > .nt-figure img{height:auto;max-height:none;min-height:0}
 .nt-wordpress.nt-wordpress .nt-project-compact :is(.nt-inner-gallery,.nt-gallery-only):has(> :nth-child(2)) figcaption{margin-top:0}
}
@media(max-width:599px){
 .nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row > .nt-inner-gallery{grid-template-columns:1fr!important;grid-template-rows:none;grid-auto-flow:row;row-gap:24px!important}
 .nt-wordpress.nt-wordpress .nt-project-compact .nt-gallery-row > .nt-inner-gallery > .nt-figure{display:block!important;grid-row:auto}
}
