/* Shared Internal Pages: the Featured page owns its layout, other pages stay intact. */
#main:has(>.project-detail)>.product-hero,#main:has(>.project-detail)>.capabilities{display:none}
.project-detail{--pd-ink:#212121;--pd-blue:#0099ce;--pd-lime:#e4ff00;color:var(--pd-ink);background:#fff;padding-top:0;font-family:"obviously-narrow",sans-serif;font-weight:500}
.pd-wrap{width:100%;max-width:1440px;margin-inline:auto;padding-inline:30px;box-sizing:border-box}
.pd-header{position:relative;text-align:center;padding-top:96px;padding-bottom:56px}
.project-detail .pd-back{display:inline-flex;gap:12px;align-items:center;font:700 12px/1.4 "obviously",sans-serif;text-decoration:none;color:var(--pd-ink);margin-bottom:60px}
.pd-back svg{width:22px;height:22px}.project-detail svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.project-detail .pd-label{font:700 clamp(11px,.9vw,16px)/1.6 "obviously",sans-serif;letter-spacing:.035em;text-transform:uppercase;margin:0 0 18px}
.project-detail h1{font:900 clamp(32px,var(--pd-title-vw,10vw),var(--pd-title-max,170px))/.95 "obviously-wide",sans-serif;text-transform:uppercase;letter-spacing:0;margin:0 0 34px;overflow-wrap:anywhere}
.project-detail .pd-deck{font:500 clamp(24px,2.3vw,40px)/1.25 "obviously-narrow",sans-serif;max-width:850px;margin:0 auto 60px;text-wrap:balance}
.pd-facts{display:flex;justify-content:center;align-items:center;gap:clamp(36px,6vw,120px);text-align:left}.pd-facts .pd-label{color:var(--pd-blue);font-size:11px;margin:0}.pd-facts p{font-size:clamp(18px,1.5vw,26px);margin:8px 0 0}
.pd-visit{display:inline-flex;align-items:center;gap:22px;font:700 12px/1.5 "obviously",sans-serif;color:var(--pd-ink);text-decoration:none;border-bottom:2px solid var(--pd-ink);padding:12px 0}.pd-visit svg{width:24px;height:24px}
.project-detail figure{margin-block:0}.pd-image{display:block;overflow:hidden;background:#f4f4f4;cursor:zoom-in}.pd-image img{display:block;width:100%;height:auto}.pd-image:focus-visible,.pd-back:focus-visible,.pd-next a:focus-visible{outline:3px solid var(--pd-blue);outline-offset:6px}
.pd-story{display:grid;grid-template-columns:1fr 1.3fr;gap:9%;padding-block:clamp(64px,8vw,150px)}.project-detail h2{font:900 clamp(30px,3.2vw,64px)/1.05 "obviously-wide",sans-serif;margin:0;text-transform:uppercase;letter-spacing:0}.project-detail h2 em{font-style:normal;color:var(--pd-blue)}.pd-prose p{font-size:clamp(22px,1.9vw,36px);line-height:1.4;margin:0 0 1em}.pd-prose p:last-child{margin:0}
.pd-gallery{display:grid;gap:clamp(24px,4vw,72px);padding-top:clamp(32px,4vw,72px);padding-bottom:clamp(64px,8vw,140px)}.pd-gallery figcaption{font:500 16px/1.4 "obviously-narrow",sans-serif;margin-top:12px;color:#555}
.pd-next{background:#212121;color:#fff;padding-block:clamp(64px,7vw,140px);margin-top:80px}.pd-next>.pd-wrap>.pd-label{color:var(--pd-lime)}.pd-next a{color:inherit;text-decoration:none}.pd-next a:not(.pd-all){display:flex;align-items:center;justify-content:space-between;gap:30px;font:900 clamp(32px,5.5vw,100px)/1.1 "obviously-wide",sans-serif;text-transform:uppercase;overflow-wrap:anywhere;letter-spacing:0}.pd-next svg{width:clamp(40px,6vw,100px);flex:none}.pd-next .pd-all{display:inline-block;font:700 11px/1.5 "obviously",sans-serif;margin-top:42px;border-bottom:1px solid #777;padding-bottom:6px}
.pd-empty{padding:90px 30px;max-width:1440px;margin:auto}.pd-empty h1{font-size:clamp(44px,7vw,120px)}.pd-empty>p:not(.pd-label){font-size:28px}.pd-projects{display:grid;gap:0;max-width:800px}.pd-projects a{display:flex;justify-content:space-between;padding:24px 0;border-top:1px solid #ccc;color:inherit;font:700 26px/1.3 "obviously",sans-serif;text-decoration:none}
.pd-lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:50px 24px;border:0;background:rgba(12,12,12,.97);box-sizing:border-box}.pd-lightbox::backdrop{background:#111}.pd-lightbox[open]{display:grid;place-items:center}.pd-lightbox img{max-width:100%;max-height:calc(100dvh - 100px);object-fit:contain}.pd-close{position:fixed;top:16px;right:20px;width:44px;height:44px;border:1px solid #777;background:#212121;color:#fff;cursor:pointer;display:grid;place-items:center}.pd-close svg{width:24px;height:24px}
@media(min-width:2000px){.pd-wrap,.pd-empty{max-width:2000px}.pd-header{padding-top:120px;padding-bottom:80px}.project-detail h1{font-size:clamp(32px,var(--pd-title-vw,10vw),var(--pd-title-uw,240px))}.project-detail .pd-deck{font-size:clamp(40px,2vw,56px);max-width:1150px}.pd-facts p{font-size:clamp(26px,1.4vw,36px)}}
@media(max-width:767px){.pd-wrap{padding-inline:22px}.pd-header{padding-top:36px;padding-bottom:32px}.project-detail .pd-back{margin-bottom:40px}.project-detail h1{font-size:clamp(28px,var(--pd-title-vw,10vw),76px);letter-spacing:0;margin-bottom:24px}.project-detail .pd-label{font-size:10px}.project-detail .pd-deck{font-size:25px;margin-bottom:34px}.pd-facts{flex-wrap:wrap;gap:24px;justify-content:flex-start}.pd-facts>div:first-child{flex:1;min-width:55%}.pd-facts p{font-size:20px}.pd-visit{width:100%;justify-content:space-between}.pd-story{grid-template-columns:1fr;gap:30px}.pd-prose p{font-size:23px}.pd-next{margin-top:30px}.pd-next a:not(.pd-all){font-size:clamp(24px,6.5vw,44px);gap:12px}.pd-next svg{width:34px}}
@media(prefers-reduced-motion:no-preference){.pd-ready [data-pd-reveal]{opacity:0;transform:translateY(30px);transition:opacity .65s ease,transform .65s ease}.pd-ready [data-pd-reveal].pd-in{opacity:1;transform:none}.pd-next a svg{transition:transform .2s}.pd-next a:hover svg{transform:translateX(8px)}}

/* Same blue patterned header strip as the Forge product page. */
.pd-banner{position:relative;height:94px;background:#0095d7;overflow:hidden;isolation:isolate}
.pd-banner-art{position:absolute;inset:0;pointer-events:none}
.pd-banner-art img{position:absolute;top:-210px;width:1065.21px;height:913.026px;opacity:.18;max-width:none}
.pd-banner-art img:first-child{left:calc(50% + 84.62px)}
.pd-banner-art img:last-child{left:calc(50% - 980px)}
@media(min-width:2200px){.pd-banner-art img{width:calc(50vw + 2px);height:auto}.pd-banner-art img:first-child{left:50%}.pd-banner-art img:last-child{left:0}}
@media(max-width:1199px){.pd-banner{height:74px}}
@media(max-width:767px){.pd-banner{height:64px}.pd-facts>div:first-child{min-width:0;flex:1 1 100%}}

.project-detail .pd-visit{display:inline-flex;width:auto;justify-content:flex-start;gap:12px;border:0;padding:0;color:var(--pd-blue);font:500 22px/1.4 "obviously-narrow",sans-serif;text-decoration:underline;text-underline-offset:5px;text-transform:none}

.project-detail .pd-story h2,.project-detail .pd-story h2 em{color:var(--pd-blue)}



/* Collection image navigation, shown only when the overlay has multiple images. */
.pd-lightbox:has(.pd-image-nav){padding-inline:84px}
.pd-image-nav{position:fixed;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #777;background:#212121;color:#fff;cursor:pointer;z-index:1}
.pd-image-nav--previous{left:20px}.pd-image-nav--next{right:20px}
.pd-image-nav svg{width:26px;height:26px}.pd-image-nav:hover{background:#fff;color:#212121}.pd-image-nav:focus-visible,.pd-close:focus-visible{outline:3px solid #e4ff00;outline-offset:4px}
.pd-image-count{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);margin:0;color:#fff;font:700 13px/1.5 "obviously",sans-serif;letter-spacing:.05em}
@media(max-width:767px){.pd-lightbox:has(.pd-image-nav){padding:64px 12px 100px}.pd-lightbox:has(.pd-image-nav) img{max-height:calc(100dvh - 164px)}.pd-image-nav{top:auto;bottom:20px;transform:none}.pd-image-nav--previous{left:calc(50% - 110px)}.pd-image-nav--next{right:calc(50% - 110px)}.pd-image-count{bottom:34px}}

.project-detail .pd-facts{text-align:center;justify-content:center}
.project-detail .pd-visit{justify-content:center}

.project-detail .pd-header>.pd-back{display:flex;width:max-content;margin-right:auto}

.project-detail .pd-header>.pd-label{color:var(--pd-blue)}

/* Keep project services and the visit link on their own centered rows. */
.project-detail .pd-facts{flex-direction:column;align-items:center;gap:24px}
.project-detail .pd-facts>div:first-child{flex:none;width:100%;min-width:0}

/* Project visit CTA: outlined in blue with a centered arrow. */
.project-detail .pd-visit{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:10px 20px;border:1px solid var(--pd-blue);text-decoration:none;box-sizing:border-box}
.project-detail .pd-visit svg{display:block;align-self:center;flex:none}

/* The inline SVG's bottom edge participates in the text's baseline alignment. */
.project-detail .pd-visit{align-items:baseline}
.project-detail .pd-visit svg{align-self:baseline}

/* The inline SVG's bottom edge participates in the text's baseline alignment. */
.project-detail .pd-visit{align-items:baseline}
.project-detail .pd-visit svg{align-self:baseline;transform:translateY(4px)}

/* Shared grid cell keeps both modal images registered during crossfades. */
.pd-lightbox>img{grid-area:1 / 1;min-width:0;min-height:0}
.pd-lightbox>.pd-image-outgoing{pointer-events:none}
