/* Project galleries adapt to the available genuine photographs. */
.entry-project .gallery{aspect-ratio:.94;grid-template-rows:minmax(0,2.45fr) minmax(0,1fr)}
.entry-project .gallery figure{min-height:0;aspect-ratio:auto!important}
.entry-project .gallery--two figure:last-child{grid-column:1/-1}
.entry-project .gallery--one{grid-template-rows:minmax(0,1fr)}
.entry-project .gallery--one figure{grid-column:1/-1}
@media(max-width:760px){
 .entry-project .gallery{aspect-ratio:1.08;grid-template-rows:minmax(0,2.65fr) minmax(0,1fr)}
 .entry-project .gallery--one{aspect-ratio:1.25;grid-template-rows:minmax(0,1fr)}
}

/* Compact area-page version of the homepage's illustrated process. */
.entry-process.ns-area-process{background:#24392e;color:#faf6ed}
.ns-area-process .entry-section-head>p{color:#cdd8cb}
.ns-area-process .entry-steps.ns-area-process-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:36px;padding:0}
.ns-area-process-steps>li{display:flex;flex-direction:column;min-width:0;padding:0;border:1px solid #ffffff21;background:#ffffff03;overflow:hidden}
.ns-area-process-art{aspect-ratio:1.37;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 48%,#3d5544 0,#2d4335 75%);border-bottom:1px solid #ffffff16}
.ns-area-process-art svg{display:block;width:100%;height:100%;overflow:visible}
.ns-area-process-copy{padding:19px 17px 23px}
.ns-area-process-copy .entry-step-number{display:block;font-size:1.2rem;line-height:1;color:#d8b678}
.ns-area-process-copy h3{font-size:clamp(1.2rem,1.6vw,1.5rem);margin:13px 0 10px;color:#fff9ec}
.ns-area-process-copy p{font-size:.82rem;line-height:1.65;color:#d2dccf}
.ns-process-room{stroke:#b7c6b5;stroke-width:1.2;stroke-dasharray:4 7;opacity:.2}
.ns-process-cabinets{display:none;stroke:#8a9b87;stroke-width:1.2;stroke-linejoin:round}
.ns-process-edges{fill:#c1baa4;stroke:#bdb69f;stroke-width:1}
.ns-process-surfaces{fill:#f1ecdd;stroke:#f7f1df;stroke-width:1.6;stroke-linejoin:round}
.ns-process-veins{fill:none;stroke:#b3afa0;stroke-width:1.65;opacity:.7}
.ns-process-plan,.ns-process-measures,.ns-process-finish{display:none;fill:none;stroke:#d8b678;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ns-process-draw{stroke-dasharray:1;stroke-dashoffset:0}
.ns-process-measures circle{fill:#d8b678;stroke:none}
.ns-area-process-steps>[data-ns-process-stage="0"] .ns-process-stone{display:none}
.ns-area-process-steps>[data-ns-process-stage="0"] .ns-process-plan{display:block;stroke:#f0e8d4;stroke-width:2.2}
.ns-area-process-steps>[data-ns-process-stage="2"] .ns-process-measures{display:block;stroke-width:2.4}
.ns-area-process-steps>[data-ns-process-stage="2"] .ns-process-stone{opacity:.55}
.ns-area-process-steps>[data-ns-process-stage="3"] .ns-process-finish{display:block;stroke-width:4}
.ns-area-process-steps>[data-ns-process-stage="4"] .ns-process-cabinets{display:block}
@media(min-width:761px) and (max-width:1100px){
 .ns-area-process .entry-steps.ns-area-process-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
 .ns-area-process-copy{padding:20px}
 .ns-area-process-copy h3{font-size:1.45rem}
 .ns-area-process-copy p{font-size:.86rem}
}
@media(max-width:760px){
 .ns-area-process .entry-steps.ns-area-process-steps{grid-template-columns:1fr;gap:15px;margin-top:28px}
 .ns-area-process-steps>li{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);align-items:stretch;gap:0;padding:0}
 .ns-area-process-art{aspect-ratio:auto;min-height:165px;border-bottom:0;border-right:1px solid #ffffff16}
 .ns-area-process-copy{padding:22px 18px}
 .ns-area-process-copy .entry-step-number{font-size:1.1rem}
 .ns-area-process-copy h3{font-size:1.4rem;margin:11px 0 8px}
 .ns-area-process-copy p{font-size:.83rem;line-height:1.6}
}
@media(max-width:380px){
 .ns-area-process-steps>li{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
 .ns-area-process-copy{padding:20px 13px}
 .ns-area-process-copy h3{font-size:1.25rem}
}
@media(prefers-reduced-motion:no-preference){
 .ns-area-process-steps>.ns-process-played .ns-process-draw{animation:ns-area-process-draw 1.6s cubic-bezier(.22,.61,.36,1) both}
 .ns-area-process-steps>.ns-process-played .ns-process-second{animation-delay:.14s}
 .ns-area-process-steps>.ns-process-played[data-ns-process-stage="1"] .ns-process-stone{animation:ns-area-process-surface 1.4s ease-out both}
 .ns-area-process-steps>.ns-process-played[data-ns-process-stage="4"] .ns-process-cabinets{animation:ns-area-process-surface 1.4s ease-out both}
 .ns-area-process-steps>.ns-process-played[data-ns-process-stage="4"] .ns-process-stone{animation:ns-area-process-surface 1.4s ease-out .14s both}
}
@keyframes ns-area-process-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes ns-area-process-surface{from{opacity:.25}to{opacity:1}}
@media(prefers-reduced-motion:reduce){
 .ns-area-process-art *{animation:none!important;transition:none!important}
 .ns-area-process-art .ns-process-draw{stroke-dashoffset:0!important}
}
@media print{
 .ns-area-process-steps>li{break-inside:avoid}
 .ns-area-process-art *{animation:none!important;transition:none!important}
 .ns-area-process-art .ns-process-draw{stroke-dashoffset:0!important}
}
