body.projects-page{background:var(--cream);color:var(--charcoal)}.projects-page main:focus{outline:none}.projects-container{width:min(1440px,90%);margin-inline:auto}.projects-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px}.projects-wordmark{font-family:var(--display);font-size:25px;letter-spacing:-.04em;color:var(--red);text-decoration:none;min-height:44px;display:flex;align-items:center}.projects-nav{display:flex;flex-wrap:wrap;gap:24px}.projects-nav a,.project-index a{color:var(--red);display:inline-flex;align-items:center;min-height:44px;text-underline-offset:5px;text-decoration-thickness:1px}.projects-nav a[aria-current]{font-weight:600;text-decoration-thickness:2px}.projects-page a:hover{color:var(--red-hover)}.projects-page a:active{color:var(--red-active)}.projects-page a:focus-visible{outline:3px solid var(--red);outline-offset:3px}.projects-page h1,.projects-page h2{color:var(--red);font-family:var(--display);letter-spacing:-.045em;line-height:1.05;margin:0}.projects-page h1{font-size:clamp(54px,5.6vw,80px);max-width:14ch;margin-bottom:22px}.projects-page h2{font-size:clamp(38px,4vw,52px);max-width:19ch}.projects-page p{font-size:18px;line-height:1.65;margin:22px 0 0;max-width:60ch}.project-opening{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;padding-block:40px 46px;align-items:center}.project-opening h2{font-size:34px;margin-top:38px}.project-opening .projects-intro{font-size:18px;line-height:1.55;margin-top:0;max-width:34ch}.project-opening-copy>p:last-child{font-size:17px;line-height:1.6;margin-top:18px}.project-figure{margin:0;min-width:0}.project-figure img{display:block;width:100%;height:auto;border:1px solid var(--rule)}.portal-image{overflow:hidden;border:1px solid var(--rule);background:white}.portal-image img{border:0;width:100%;height:auto}.project-figure figcaption{font-size:16px;line-height:1.5;margin-top:14px;color:inherit}.project-index{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding-block:14px}.project-index ul{display:flex;flex-wrap:wrap;gap:4px 26px;list-style:none;padding:0;margin:0}.project-index a{font-size:16px}.project-story{padding-block:88px}.project-text-band{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;margin-bottom:36px;align-items:start}.project-text-band p{margin:0}.schedule-captures{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:24px;align-items:start}.project-dark{background:var(--charcoal);color:var(--cream);padding-block:88px}.project-dark h2{color:var(--cream)}.project-dark a{color:var(--cream)}.project-dark a:focus-visible{outline-color:var(--cream)}.project-split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:center}.project-reverse{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.project-reverse>div{grid-column:2;grid-row:1}.project-reverse>figure{grid-column:1;grid-row:1}.grant-output{min-width:0}.grant-table-scroll{max-width:100%;overflow-x:auto}.grant-table-scroll:focus-visible{outline:3px solid var(--red);outline-offset:3px}.grant-output table{width:100%;border-collapse:collapse;text-align:left;font-size:16px;line-height:1.5}.grant-output caption{text-align:left;font-size:16px;line-height:1.5;margin-bottom:24px}.grant-output th,.grant-output td{padding:20px 12px;border-bottom:1px solid var(--rule);vertical-align:top;overflow-wrap:normal}.grant-output thead{color:var(--red)}.grant-output th:first-child,.grant-output td:first-child{padding-left:0}.grant-output tbody th{font-weight:500}.grant-output .output-note{font-size:16px}.editor-story{align-items:start}.editor-story figure{max-width:380px;justify-self:center}.projects-invitation{padding-block:80px 96px;background:var(--cream)}.projects-invitation .projects-container{border-top:1px solid var(--rule);padding-top:60px}.projects-invitation h2{max-width:22ch}.project-contact{margin-top:28px}.projects-page .button-red:hover,.projects-page .button-red:active{color:var(--white)}.projects-page footer a{color:var(--red);min-height:44px;display:inline-flex;align-items:center}.projects-page footer a:hover{color:var(--red-hover)}.projects-page footer a:active{color:var(--red-active)}.projects-page footer a:focus-visible{outline-color:var(--red)}@media(max-width:959px){.project-opening{gap:28px}.project-opening h1{font-size:56px}.project-opening h2{font-size:30px}.project-split{gap:32px}.project-text-band{gap:30px}.projects-nav{gap:16px}}@media(max-width:759px){.projects-container{width:auto;margin-inline:24px}.projects-header{align-items:flex-start;flex-direction:column;gap:8px;padding-block:16px}.projects-wordmark{font-size:24px}.projects-nav{gap:22px}.project-opening,.project-text-band,.project-split{display:block}.project-opening{padding-block:28px 36px}.project-opening h1{font-size:clamp(40px,8.4vw,48px);max-width:17ch}.project-opening h2{font-size:30px;margin-top:30px}.project-opening figure{margin-top:28px}.projects-page h2{font-size:clamp(30px,7vw,36px)}.projects-page p{font-size:17px;line-height:1.65}.project-index ul{gap:0 22px}.project-story,.project-dark{padding-block:48px}.project-text-band{margin-bottom:24px}.project-text-band p,.project-split>div>p{margin-top:20px}.schedule-captures{display:flex;flex-direction:column;gap:24px}.schedule-me{order:-1;max-width:390px;width:100%;align-self:center}.schedule-week{width:100%}.project-split>figure,.grant-output{margin-top:28px}.grant-output table{font-size:16px;min-width:500px;table-layout:auto}.grant-output th,.grant-output td{padding:12px 6px}.project-reverse>figure{margin-top:28px}.projects-invitation{padding-block:0 64px}.projects-invitation .projects-container{padding-top:44px}.project-contact{margin-top:24px}.projects-page footer{padding:24px;gap:16px}}
.projects-introduction{padding-block:64px 32px}.projects-introduction h1{max-width:21ch}.projects-introduction .projects-intro{margin:0;max-width:54ch}.project-opening h2{margin-top:0;font-size:clamp(38px,4vw,52px)}@media(max-width:759px){.projects-introduction{padding-block:32px 12px}.projects-introduction h1{font-size:clamp(40px,8.4vw,48px);max-width:17ch}.project-opening h2{font-size:clamp(30px,7vw,36px)}}

/* Illustrative photographs dissolve into unchanged interfaces; static content is the baseline. */
.project-reveal{position:relative;min-width:0;max-width:100%;overflow:hidden;isolation:isolate;perspective:1400px}.project-reveal:focus-within{outline:3px solid var(--red);outline-offset:3px}.project-answer{min-width:0}.project-before,.project-transition-label{display:none}.projects-photo-ready .project-reveal.is-ready .project-answer{opacity:var(--answer-opacity,1)}.projects-photo-ready .project-reveal.is-ready .project-before{display:block;position:absolute;inset:0;pointer-events:none;opacity:var(--before-opacity,0);transform-origin:50% 50%;transform:rotateY(var(--scene-yaw,0deg)) rotateX(var(--scene-tilt,0deg)) scale(var(--scene-scale,1));backface-visibility:hidden}.project-before img{width:100%;height:100%;display:block;object-fit:cover;border:1px solid var(--rule)}.projects-photo-ready .has-photo-scene .project-transition-label{display:block;font-size:16px;line-height:1.5;color:inherit;margin-bottom:4px}.project-before{box-shadow:0 3px 8px rgba(40,25,14,.12)}.schedule-me .project-before img{object-position:65% center}.projects-photo-ready .portal-image{background:transparent;border-color:transparent}.projects-photo-ready .portal-image .project-answer img{border:1px solid var(--rule)}.projects-photo-ready .is-revealed .project-before{display:none}.projects-photo-ready .is-revealed .project-answer{opacity:1}@media(prefers-reduced-motion:reduce){.projects-photo-ready .project-reveal.is-ready .project-answer{opacity:1}.projects-photo-ready .project-reveal.is-ready .project-before,.projects-photo-ready .has-photo-scene .project-transition-label{display:none}}

/* The shared compact menu retains the Projects palette and normal document flow. */
@media(max-width:639px){.projects-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 16px;margin-inline:0;padding:12px 16px}.projects-wordmark{font-size:22px;white-space:nowrap}.projects-header .header-menu{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;min-width:44px;padding:0 0 0 12px;border:0;background:transparent;color:var(--red);font-size:16px;line-height:1.5}.projects-header .header-menu:hover{color:var(--red-hover)}.projects-header .header-menu:active{color:var(--red-active)}.projects-header .header-menu:focus-visible{outline:3px solid var(--red);outline-offset:3px}.projects-header .projects-nav{grid-column:1/-1;flex-direction:column;align-items:stretch;gap:0;padding-top:8px}.projects-header .projects-nav a{min-height:48px;justify-content:flex-start;padding:12px 0;font-size:16px}}
