/* Four-phase development presentation, using the site's existing palette and type. */
.phases-section{background:var(--ink);color:var(--ivory);scroll-margin-top:30px}
.phase-section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:end;margin-bottom:55px}
.phase-section-heading .eyebrow{color:var(--gold);margin-bottom:28px}
.phase-section-heading h2{font-size:clamp(3.3rem,5.4vw,6rem)}
.phase-section-heading>p{max-width:470px;color:#c3c2b8;font-size:16px}
.phase-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #f3f0e933;border-bottom:1px solid #f3f0e933}
.phase-tab{position:relative;display:flex;flex-direction:column;gap:9px;padding:23px 25px 24px 0;min-width:0;transition:color .2s ease,background .2s ease}
.phase-tab:not(:first-child){padding-left:22px;border-left:1px solid #f3f0e925}
.phase-tab>span:first-child{font-size:10px;letter-spacing:.15em;color:#aaa99e}
.phase-tab strong{font:400 clamp(1.1rem,1.7vw,1.6rem)/1.15 var(--serif);padding-right:12px}
.phase-tab-arrow{position:absolute;right:12px;top:23px;color:var(--gold);font-size:16px}
.phase-tab:hover,.phase-tab[aria-selected=true]{color:var(--gold)}
.phase-tab[aria-selected=true]{box-shadow:inset 0 -2px var(--gold)}
.phase-tab[aria-selected=true]>span:first-child{color:var(--gold)}
.phase-tab:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.phase-panel{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center;margin-top:45px;min-width:0}
.phase-panel[hidden]{display:none}
.phase-panel figure{min-width:0;margin:0;align-self:start}
.phase-panel figure>a{display:block}
.phase-panel img{display:block;width:100%;height:auto;aspect-ratio:1.25;object-fit:cover}
.phase-panel figcaption{font-size:11px;color:#a9a99e;line-height:1.6;margin-top:12px}
.phase-panel-copy{min-width:0;padding:10px 0}
.phase-panel-copy>.eyebrow{color:var(--gold);font-size:10px}
.phase-panel-copy h3{font:400 clamp(2.2rem,3.3vw,3.6rem)/1.04 var(--serif);letter-spacing:-.025em;margin:22px 0}
.phase-panel-copy h3 em{font-weight:400;color:var(--gold)}
.phase-panel-copy>p:not(.eyebrow){color:#c3c2b8;font-size:15px;line-height:1.75}
.phase-panel-copy>.text-link{color:var(--ivory);margin-top:26px;gap:35px}
.phase-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:27px 0 0;padding-top:22px;border-top:1px solid #f3f0e92e}
.phase-metrics>div{display:flex;flex-direction:column;min-width:0}
.phase-metrics dt{order:2;font-size:10px;line-height:1.5;letter-spacing:.025em;margin-top:6px;color:#b6b5aa}
.phase-metrics dd{order:1;margin:0;font:400 clamp(1.1rem,1.9vw,1.8rem)/1.2 var(--serif);overflow-wrap:anywhere}
.phase-overview-note{border-top:1px solid #f3f0e925;padding-top:24px;margin-top:40px;max-width:850px;font-size:12px;color:#aaa99e;line-height:1.7}
.phase-opening{padding-top:55px;padding-bottom:55px}
.phase-back{display:inline-flex;font-size:12px;gap:15px;margin-bottom:48px;border-bottom:1px solid var(--line);padding-bottom:9px}
.phase-opening>.eyebrow{color:#837057}
.phase-opening h1{font-size:clamp(3.6rem,7vw,8rem);line-height:1;letter-spacing:-.045em;margin:30px 0}
.phase-opening-summary{font-size:17px;color:#66665e;max-width:780px}
.phase-detail-nav{margin:0 7% 40px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.phase-detail-nav a{padding:17px 15px 17px 0;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.phase-detail-nav a:not(:first-child){padding-left:20px;border-left:1px solid var(--line)}
.phase-detail-nav a span{display:block;font-size:11px;letter-spacing:0;text-transform:none;color:#75756a;margin-top:5px}
.phase-detail-nav a[aria-current]{box-shadow:inset 0 -2px var(--ink)}
.phase-detail-image{margin:0 7%}
.phase-detail-image img{display:block;width:100%;height:clamp(320px,42vw,650px);object-fit:cover}
.phase-detail-image figcaption,.phase-secondary figcaption{font-size:11px;color:#77776e;margin-top:12px}
.page-phase-3 .phase-detail-image img{object-fit:contain;background:#182520}
.phase-overview{display:grid;grid-template-columns:1fr 1fr;gap:10%}
.phase-overview h2{font-size:clamp(3rem,4.4vw,5rem);margin:28px 0}
.phase-overview .phase-metrics{border-color:var(--line)}
.phase-overview .phase-metrics dt{color:#77776e}
.phase-overview .phase-metrics dd{font-size:clamp(1.4rem,2vw,2rem)}
.phase-overview-copy{padding-top:40px;color:#66665e}
.phase-overview-copy p+p{margin-top:24px}
.phase-program{background:#e6e1d7}
.phase-program>h2,.phase-capital>h2{font-size:clamp(3rem,4.5vw,5rem);margin-top:30px}
.phase-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:55px}
.phase-program-grid article{border-top:1px solid #c9c2b6;padding-top:22px;min-width:0}
.phase-program-grid article>span{font-size:10px;color:#837057;letter-spacing:.08em}
.phase-program-grid h3{font:400 32px/1.12 var(--serif);margin:22px 0}
.phase-program-grid p{font-size:14px;color:#62635a;line-height:1.8}
.phase-capital{background:var(--ink);color:var(--ivory)}
.phase-capital .eyebrow,.phase-capital article>span{color:var(--gold)}
.phase-capital article{border-color:#f3f0e933}
.phase-capital article p{color:#c3c2b8}
.phase-secondary{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center}
.phase-secondary figure{margin:0;min-width:0}
.phase-secondary img{aspect-ratio:1.2;object-fit:cover}
.phase-secondary h2{font-size:clamp(3rem,4.5vw,5rem);margin:30px 0}
.phase-secondary p:not(.eyebrow){color:#66665e}
.phase-secondary .small-note{font-size:12px;margin-top:25px}
.phase-delivery{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#eae6dd}
.phase-delivery h2{font-size:clamp(3rem,4.5vw,5rem);margin:30px 0}
.phase-delivery>div>p:last-child{color:#66665e;max-width:470px}
.phase-delivery ol{margin:0;padding:0;list-style:none;counter-reset:decision}
.phase-delivery li{counter-increment:decision;position:relative;border-top:1px solid #c9c2b6;padding:22px 0 22px 42px;font-size:15px;color:#56584f}
.phase-delivery li:before{content:counter(decision,decimal-leading-zero);position:absolute;left:0;top:23px;font-size:11px;color:#827055}
.phase-context{padding-top:45px;padding-bottom:45px;border-bottom:1px solid var(--line)}
.phase-context>p:not(.eyebrow){font-size:12px;color:#77776e;max-width:1000px;margin-top:17px}
.phase-next{display:flex;align-items:end;justify-content:space-between;gap:40px}
.phase-next h2{font-size:clamp(3.5rem,5vw,5.5rem);margin-top:25px}
.phase-next>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
@media(min-width:1700px){.phase-detail-nav,.phase-detail-image{margin-left:auto;margin-right:auto;max-width:1450px;width:86%}}
@media(max-width:1000px){.phase-section-heading{gap:6%}.phase-panel{gap:5%}.phase-panel-copy h3{font-size:2.45rem}.phase-tab{padding-right:18px}.phase-tab:not(:first-child){padding-left:15px}.phase-tab-arrow{right:6px}.phase-metrics{gap:10px}.phase-program-grid{gap:25px}.phase-program-grid h3{font-size:28px}}
@media(max-width:800px){
 .phase-section-heading{grid-template-columns:1fr;gap:28px;margin-bottom:35px}
 .phase-section-heading h2{font-size:clamp(3.1rem,9vw,4.5rem)}
 .phase-section-heading>p{max-width:none;font-size:15px}
 .phase-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .phase-tab{padding:20px 25px 20px 0;gap:8px}
 .phase-tab:nth-child(3){padding-left:0;border-left:0}
 .phase-tab:nth-child(n+3){border-top:1px solid #f3f0e925}
 .phase-tab strong{font-size:21px}
 .phase-panel{grid-template-columns:1fr;gap:30px;margin-top:30px}
 .phase-panel img{aspect-ratio:1.4}
 .phase-panel-copy{padding:0}
 .phase-panel-copy h3{font-size:clamp(2.6rem,8vw,3.7rem)}
 .phase-panel-copy>p:not(.eyebrow){font-size:15px}
 .phase-metrics{margin-top:25px}
 .phase-metrics dd{font-size:23px}
 .phase-metrics dt{font-size:10px}
 .phase-overview-note{margin-top:35px;font-size:11px}
 .phase-opening{padding-top:35px;padding-bottom:40px}
 .phase-back{margin-bottom:35px}
 .phase-opening h1{font-size:clamp(3rem,9vw,4.5rem)}
 .phase-opening-summary{font-size:16px}
 .phase-detail-nav{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:30px}
 .phase-detail-nav a:nth-child(3){padding-left:0;border-left:0}
 .phase-detail-nav a:nth-child(n+3){border-top:1px solid var(--line)}
 .phase-detail-image img{height:330px}
 .phase-overview,.phase-secondary,.phase-delivery{grid-template-columns:1fr;gap:35px}
 .phase-overview-copy{padding-top:0}
 .phase-program-grid{grid-template-columns:1fr;gap:35px;margin-top:40px}
 .phase-program-grid h3{font-size:32px}
 .phase-secondary h2{margin:25px 0}
 .phase-context{padding-top:35px;padding-bottom:35px}
 .phase-next{display:block}
 .phase-next>div:last-child{margin-top:35px}
}
@media(prefers-reduced-motion:reduce){.phase-tab{transition:none}}

/* Client-supplied project images stay uncropped so their full views and labels remain visible. */
.phase-panel[data-phase-panel="2"] img{aspect-ratio:755/459;object-fit:contain}
.page-phase-2 .phase-detail-image img{height:auto;object-fit:contain}
.phase-project-highlights[hidden]{display:none}
.phase-project-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:55px;padding-top:40px;border-top:1px solid #f3f0e925;align-items:stretch}
.phase-project-highlight{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#22251f;border:1px solid #d0b58d30;transition:border-color .2s ease,background .2s ease}
.phase-highlight-media{display:block;position:relative;aspect-ratio:3/2;width:100%;flex:none;overflow:hidden;background:#17231f;border-bottom:1px solid #d0b58d25}
.phase-highlight-media img{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;aspect-ratio:auto;object-fit:cover;transition:transform .35s ease}
.phase-project-highlight[href="phase-3.html"] .phase-highlight-media img{object-fit:contain;padding:10px}
.phase-highlight-copy{display:flex;flex-direction:column;flex:1;padding:25px 24px 20px;min-width:0}
.phase-highlight-copy>.eyebrow{color:var(--gold);font-size:10px;letter-spacing:.18em}
.phase-project-highlight h3{font-size:clamp(1.8rem,2.55vw,2.7rem);line-height:1.12;margin:16px 0 26px;min-height:2.24em}
.phase-highlight-link{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;font-size:11px;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #d0b58d40;padding-top:17px;margin-top:auto}
.phase-highlight-link>span{display:grid;place-items:center;flex:none;width:32px;height:32px;border:1px solid #d0b58d65;border-radius:50%;font-size:18px;color:var(--gold)}
.phase-project-highlight:hover{border-color:#d0b58d90;background:#292c24}
.phase-project-highlight:hover .phase-highlight-media img{transform:scale(1.025)}
.phase-project-highlight:focus-visible{outline:2px solid var(--gold);outline-offset:8px}
.phase-project-gallery{background:var(--paper)}
.phase-project-gallery>h2{font-size:clamp(3rem,4.5vw,5rem);margin:28px 0}
.phase-gallery-intro{max-width:680px;color:#66665e}
.phase-project-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 30px;margin-top:45px}
.phase-project-gallery-grid figure{margin:0;min-width:0}
.phase-project-gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.phase-project-gallery-grid figcaption{margin-top:20px}
.phase-project-gallery-grid h3{font:400 clamp(1.6rem,2.3vw,2.4rem)/1.15 var(--serif);letter-spacing:-.02em}
.phase-project-gallery-grid figcaption p{font-size:11px;color:#77776e;margin-top:10px}
@media(max-width:800px){
 .phase-project-highlights{grid-template-columns:1fr;gap:24px;margin-top:40px;padding-top:30px}
 .phase-project-highlight h3{font-size:32px}
 .phase-highlight-copy{padding:23px 22px 20px}
 .phase-project-highlight h3{min-height:0;margin-bottom:25px}
 .phase-project-gallery-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}
}
@media(prefers-reduced-motion:reduce){.phase-project-highlight,.phase-highlight-media img{transition:none}.phase-project-highlight:hover .phase-highlight-media img{transform:none}}
