/* Gallery and project-story refinements. Preserve the approved palette and photography. */
.gallery-overview .project-jump-navigation{display:block;height:auto;min-height:0;padding:10px 0 22px;margin-bottom:26px}
.gallery-overview .project-jump-navigation>h2{margin:0 0 15px;font:25px/1.25 Georgia,serif}
.gallery-overview .project-jump-links{gap:14px}
.gallery-overview .project-index-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center;min-height:134px;padding:12px;background:#f1f3ed;border:1px solid #9aa590;text-decoration:none}
.gallery-overview .project-index-card img{width:76px;height:108px;object-fit:cover;object-position:center;display:block}
.gallery-overview .project-index-card strong{display:block;font:600 17px/1.35 Arial,sans-serif;color:#2e443a}
.gallery-overview .project-index-card span{display:block;font:14px/1.5 Arial,sans-serif;color:#425448;margin-top:6px}
.gallery-overview .project-index-card b{display:block;font:600 15px/1.4 Arial,sans-serif;margin-top:8px;color:#2e443a}
.gallery-overview .project-index-card:hover{background:#e6ebde;border-color:#2e443a}
.gallery-overview .project-index-card:focus-visible{outline:3px solid #2e443a;outline-offset:4px}
.gallery-overview .featured-project,.gallery-overview .dwg-portfolio-project,.gallery-overview .bathroom-portfolio-project,.gallery-overview .kitchen-portfolio-project{margin-top:34px;padding-top:28px;border-top:1px solid #cbd4c5}
.gallery-overview .featured-project{margin-top:0;padding-top:0;border-top:0}
.gallery-overview .project-name-row{align-items:center;gap:18px 28px}
.gallery-overview .project-name-row h2{max-width:760px}
.gallery-overview .overview-stages,.gallery-overview .kitchen-overview-stages{align-items:start;grid-template-columns:1fr 1.5fr 1fr}
.gallery-overview .overview-stage-heading{min-height:118px}
.gallery-overview .overview-stage-heading h3{font-size:25px}
.gallery-overview .overview-stage-grid{gap:21px 14px}
.gallery-overview .overview-stage-grid .project-photo img{height:220px;object-fit:contain;object-position:center}
.gallery-overview .overview-stages>.overview-stage:first-child .project-photo img{object-fit:cover;object-position:center 65%}
.gallery-overview .overview-completion .project-photo img,.gallery-overview .kitchen-overview-single .project-photo img{height:310px}
.gallery-overview .overview-stage-grid .project-frame figcaption{padding-top:11px}
.gallery-overview .project-overview-footer{margin-top:24px;padding-top:20px;gap:18px}
.gallery-overview .project-overview-footer>p{max-width:620px}
.gallery-overview .project-overview-footer .project-detail-link{flex-shrink:0}

/* Full stories have a readable chapter rhythm, with process photographs grouped by the work. */
.closet-gallery:not(.gallery-overview) .case-heading{padding-top:20px;padding-bottom:30px}
.closet-gallery:not(.gallery-overview) .case-heading h1{max-width:940px;font-size:clamp(32px,3.4vw,44px);line-height:1.14}
.closet-gallery:not(.gallery-overview) .case-heading>p{max-width:960px;font-size:17px;line-height:1.7}
.closet-gallery:not(.gallery-overview) .case-heading>.story-photo-note{margin:15px 0 0;font:600 14px/1.6 Arial,sans-serif;color:#52634c}
.closet-gallery .case-chapter-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}
.closet-gallery .case-chapter-nav a{display:flex;align-items:center;min-height:54px;padding:12px 16px;background:#f1f3ed;border:1px solid #bec9b6;font:600 16px/1.5 Arial,sans-serif;text-decoration:none;box-sizing:border-box}
.closet-gallery .case-chapter-nav a:hover{background:#e6ebde;border-color:#2e443a}
.closet-gallery .case-chapter{margin-bottom:40px;padding-top:26px}
.closet-gallery .case-chapter-heading{align-items:start;margin-bottom:24px;gap:32px;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr)}
.closet-gallery .case-chapter-heading h2{font-size:29px;line-height:1.2}
.closet-gallery .case-chapter-heading>p{font-size:16px;line-height:1.7}
.closet-gallery .story-work-group{margin-top:28px;padding-top:22px;border-top:1px solid #dce3d7}
.closet-gallery .story-work-heading{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}
.closet-gallery .story-step{display:flex;flex:none;align-items:center;justify-content:center;width:48px;height:48px;background:#e8eddf;color:#2e443a;font:600 17px/1 Arial,sans-serif}
.closet-gallery .story-work-heading h3{font:26px/1.2 Georgia,serif;color:#2e443a;letter-spacing:-.3px;margin:0 0 8px}
.closet-gallery .story-work-heading p{font-size:16px;line-height:1.65;color:#425747;margin:0;max-width:850px}
.closet-gallery .story-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 20px;align-items:start}
.closet-gallery .story-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.closet-gallery .story-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:780px}
.closet-gallery .story-work-grid .project-photo img{height:300px;width:100%;object-fit:contain;object-position:center}
.closet-gallery .story-work-grid .frame-stage{display:none}
.closet-gallery .story-work-grid figcaption{padding-top:12px;align-items:baseline}
.closet-gallery .story-work-grid h4{font:600 16px/1.4 Arial,sans-serif;margin:0 0 6px;color:#2e443a}
.closet-gallery .story-work-grid figcaption p{font-size:15px;line-height:1.6;margin:0;color:#425747}
.closet-gallery .case-photo-grid .project-photo img{height:280px;object-fit:contain;object-position:center}
.closet-gallery .kitchen-story-pair{grid-template-columns:minmax(0,430px) minmax(0,1fr);gap:36px}
.closet-gallery .kitchen-story-pair .project-photo img{height:360px}
.closet-gallery .completion-layout{grid-template-columns:minmax(0,370px) minmax(0,1fr);gap:30px;padding:24px;background:#f1f3ed}
.closet-gallery .completion-layout .project-photo img{height:360px;object-fit:contain}
.closet-gallery .completion-layout .project-frame{max-width:none}
.closet-gallery .project-return-bottom{margin-top:28px}
.closet-gallery .next-project{margin:30px 0;border:1px solid #cad4c2;background:#f1f3ed}
.closet-gallery .next-project>a{display:grid;grid-template-columns:150px minmax(0,1fr);gap:28px;align-items:center;padding:20px;text-decoration:none;color:#2e443a}
.closet-gallery .next-project img{display:block;width:150px;height:160px;object-fit:cover;object-position:center}
.closet-gallery .next-project h2{font:28px/1.2 Georgia,serif;margin:9px 0;letter-spacing:-.3px}
.closet-gallery .next-project p{font:16px/1.6 Arial,sans-serif;margin:0 0 12px;color:#425747}
.closet-gallery .next-project-action{font:600 17px/1.5 Arial,sans-serif;text-decoration:underline;text-underline-offset:4px}
.closet-gallery .next-project>a:hover{background:#e8eddf}
.closet-gallery .next-project>a:focus-visible{outline:3px solid #2e443a;outline-offset:4px}
.dwg-service-gallery .dwg-photo-grid{gap:26px 20px}
.dwg-service-gallery .dwg-photo-image img{height:290px;object-fit:contain;object-position:center}
.dwg-story-continue{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;margin:28px 0;background:#f1f3ed;border:1px solid #cad4c2}
.dwg-story-continue h3{font:26px/1.25 Georgia,serif;margin:0 0 10px;color:#2e443a}
.dwg-story-continue p{font:16px/1.65 Arial,sans-serif;color:#425747;margin:0;max-width:660px}
.dwg-story-continue .project-detail-link{flex-shrink:0}

@media(max-width:1100px){
  .gallery-overview .project-jump-links{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-overview .project-index-card{grid-template-columns:80px minmax(0,1fr)}
  .closet-gallery .story-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .gallery-overview .overview-stages,.gallery-overview .kitchen-overview-stages{grid-template-columns:1fr}
  .gallery-overview .overview-stage-heading{min-height:0}
  .gallery-overview .overview-stages>.overview-completion{grid-column:auto;grid-row:auto}
  .gallery-overview .closet-overview-process-grid,.gallery-overview .kitchen-overview-process{grid-template-columns:repeat(3,minmax(0,1fr))}
  .closet-gallery .story-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .closet-gallery .story-grid-2{max-width:none}
  .closet-gallery .case-chapter-heading{grid-template-columns:1fr;gap:14px}
  .closet-gallery .kitchen-story-pair{grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:24px}
  .dwg-story-continue{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
  .gallery-overview .project-jump-navigation{padding-top:10px;padding-bottom:20px}
  .gallery-overview .project-jump-links{grid-template-columns:1fr;gap:10px}
  .gallery-overview .project-index-card{min-height:108px;grid-template-columns:66px minmax(0,1fr);gap:16px;padding:10px 14px}
  .gallery-overview .project-index-card img{width:66px;height:88px}
  .gallery-overview .project-index-card b{margin-top:4px}
  .gallery-overview .overview-stage-grid,.gallery-overview .closet-overview-process-grid,.gallery-overview .kitchen-overview-process{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}
  .gallery-overview .overview-stage-grid .project-photo img{height:230px}
  .gallery-overview .overview-completion .overview-stage-grid,.gallery-overview .kitchen-overview-single{grid-template-columns:1fr;max-width:370px;width:100%}
  .gallery-overview .overview-completion .project-photo img,.gallery-overview .kitchen-overview-single .project-photo img{height:320px}
  .gallery-overview .project-overview-footer .project-detail-link{width:100%;flex-shrink:1}
  .closet-gallery:not(.gallery-overview) .case-heading>p{font-size:16px}
  .closet-gallery .case-chapter-nav{grid-template-columns:1fr;gap:8px}
  .closet-gallery .case-chapter-nav a{min-height:48px;padding:10px 14px}
  .closet-gallery .case-chapter-heading h2{font-size:27px}
  .closet-gallery .story-work-grid{grid-template-columns:1fr;gap:25px}
  .closet-gallery .story-work-grid .project-photo img{height:330px}
  .closet-gallery .story-work-heading{gap:12px}
  .closet-gallery .story-work-heading h3{font-size:24px}
  .closet-gallery .story-step{width:42px;height:42px;font-size:16px}
  .closet-gallery .case-photo-grid .project-photo img{height:245px}
  .closet-gallery .kitchen-story-pair,.closet-gallery .completion-layout{grid-template-columns:1fr;gap:24px}
  .closet-gallery .kitchen-story-pair>.project-frame{max-width:none}
  .closet-gallery .kitchen-story-pair .project-photo img,.closet-gallery .completion-layout .project-photo img{height:340px}
  .closet-gallery .next-project>a{grid-template-columns:82px minmax(0,1fr);gap:16px;padding:16px;align-items:start}
  .closet-gallery .next-project img{width:82px;height:110px}
  .closet-gallery .next-project h2{font-size:24px}
  .dwg-service-gallery .dwg-photo-image img{height:250px}
  .dwg-story-continue{padding:20px}
  .dwg-story-continue .project-detail-link{width:100%;flex-shrink:1}
}
@media(prefers-reduced-motion:no-preference){
  .project-index-card,.next-project>a{transition:background-color .15s ease,border-color .15s ease}
}
