.portfolio-hero{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.35fr);gap:6%;align-items:center;padding-block:74px 82px}.portfolio-hero .eyebrow{color:var(--muted)}.portfolio-hero h1{font-size:clamp(3.2rem,4.5vw,4.5rem);margin:24px 0 28px;line-height:1.08;letter-spacing:-.055em}.portfolio-hero .hero-description{max-width:440px;font-size:1.125rem;color:var(--muted);line-height:1.7}.portfolio-actions{display:flex;gap:14px 24px;align-items:center;flex-wrap:wrap;margin-top:30px}.portfolio-hero-image{margin:0;position:relative}.portfolio-hero-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:52% center}.portfolio-hero-image figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:13px;font-size:.8125rem;color:var(--muted)}.portfolio-index{display:flex;gap:20px;flex-wrap:wrap;margin-top:42px;padding-top:22px;border-top:1px solid var(--line);font-size:.875rem;color:var(--muted)}.portfolio-index a{text-decoration:none}.portfolio-index a:hover{text-decoration:underline}.portfolio-section{padding-block:86px;scroll-margin-top:calc(var(--header-height) + 24px)}.portfolio-section .section-heading h2{font-size:clamp(2.6rem,4vw,4rem)}.renderings-section{border-top:1px solid var(--line)}.rendering-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 28px}.rendering-card{margin:0;min-width:0}.rendering-image,.ridgefield-image{display:block;width:100%;border:0;padding:0;background:#e9e7e3;position:relative;overflow:hidden}.rendering-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .5s ease}.rendering-image:hover img,.ridgefield-image:hover img{transform:scale(1.02)}.image-open-label{position:absolute;right:16px;bottom:16px;background:#f7f8faed;color:var(--ink);padding:7px 12px;font-size:.8125rem;line-height:1.4}.rendering-card figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding-top:16px}.rendering-card h3{font:400 1.25rem/1.4 Arial,Helvetica,sans-serif;margin:0}.rendering-card figcaption p{margin:0;font-size:.875rem;color:var(--muted)}.portfolio-note{font-size:.8125rem;color:var(--muted);margin:28px 0 0}.ridgefield-section{background:#ebeef0;border-block:1px solid var(--line)}.ridgefield-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr);gap:6%;align-items:start}.ridgefield-lead{margin:0}.ridgefield-lead img{aspect-ratio:4/3;width:100%;height:auto;object-fit:cover;transition:transform .5s}.ridgefield-lead figcaption{font-size:.8125rem;color:var(--muted);margin-top:12px}.ridgefield-details{padding-top:4px}.ridgefield-details h3{font-family:Georgia,'Times New Roman',serif;font-size:2rem;line-height:1.18;letter-spacing:-.025em;margin:0 0 22px}.ridgefield-details>p{font-size:1rem;color:var(--muted);line-height:1.7}.ridgefield-specs{margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;border-block:1px solid #cdd2d5;padding-block:18px;gap:20px}.ridgefield-specs div{display:flex;flex-direction:column;gap:3px}.ridgefield-specs dt{font-size:.8125rem;color:var(--muted)}.ridgefield-specs dd{font-size:1.125rem;margin:0}.ridgefield-details .portfolio-actions{gap:10px 20px}.ridgefield-details .button{background:var(--ink)}.ridgefield-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:38px}.ridgefield-gallery figure{margin:0;min-width:0}.ridgefield-gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .5s}.ridgefield-gallery figure:last-child img{object-fit:contain;background:#ebe8e3}.ridgefield-gallery figcaption{font-size:.9375rem;margin-top:12px}.study-intro{padding-block:76px 40px;border-bottom:1px solid var(--line);scroll-margin-top:var(--header-height)}.study-intro .section-heading{margin-bottom:28px}.study-links{display:flex;gap:28px;flex-wrap:wrap;font-size:.9375rem}.study-links a{text-decoration:none;border-bottom:1px solid #a98659;padding-bottom:6px}.contact-section{scroll-margin-top:var(--header-height);background:var(--ink);color:#f7f8fa;padding-block:88px}.contact-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:12%;align-items:center}.contact-section .eyebrow{color:var(--accent)}.contact-section h2{font-size:clamp(2.7rem,4.2vw,4.1rem);margin:22px 0 24px}.contact-section p:not(.eyebrow){font-size:1.0625rem;color:#bfc4cb;max-width:540px;margin-bottom:0}.contact-actions{border-left:1px solid #40464d;padding-left:42px}.contact-actions .button{background:#f7f8fa;color:var(--ink);min-height:52px}.contact-actions>a:last-of-type{display:block;font-size:1rem;margin-top:22px;color:#f7f8fa;overflow-wrap:anywhere}.contact-actions .contact-detail{font-size:.875rem!important;margin-top:24px;line-height:1.7}.site-footer{border-top:0}.image-dialog{border:0;padding:0;width:min(1340px,94vw);max-width:94vw;max-height:94dvh;color:var(--ink);background:var(--paper);overflow:auto}.image-dialog::backdrop{background:#080c10e8;backdrop-filter:blur(6px)}.image-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 22px}.image-dialog h2{font:400 1.125rem/1.4 Arial,Helvetica,sans-serif;margin:0;letter-spacing:0}.image-dialog img{display:block;width:100%;height:auto;max-height:calc(94dvh - 80px);object-fit:contain;background:#101916}.image-dialog button{border:1px solid #babfc5;border-radius:50%;background:transparent;width:40px;height:40px;font-size:1.6rem;line-height:1;flex:none}.image-dialog button:hover{background:#e2e5e8}.portfolio-hero .text-button,.ridgefield-details .text-button{text-decoration:underline}.project-body ul{margin-bottom:0}
@media(min-width:1600px){.portfolio-hero{gap:7%}.portfolio-hero h1{font-size:4.75rem}}
@media(max-width:1100px){.portfolio-hero{gap:4%;padding-block:52px 60px}.portfolio-hero h1{font-size:3.4rem}.portfolio-hero .hero-description{font-size:1rem}.portfolio-hero-image img{aspect-ratio:4/3}.rendering-card figcaption{display:block}.rendering-card figcaption p{margin-top:4px}.ridgefield-layout{gap:4%}.ridgefield-details h3{font-size:1.75rem}.ridgefield-specs{margin-top:18px}.ridgefield-details .portfolio-actions{margin-top:22px}.ridgefield-gallery{gap:18px}.contact-layout{gap:7%}.contact-actions{padding-left:28px}}
@media(max-width:800px){.portfolio-hero{grid-template-columns:1fr;gap:34px;padding-block:38px 52px}.portfolio-hero h1{font-size:clamp(2.75rem,7.5vw,4.3rem);max-width:560px;margin-block:20px}.portfolio-hero .hero-description{max-width:590px;font-size:1.0625rem}.portfolio-hero-image img{aspect-ratio:4/3;object-fit:contain}.portfolio-index{margin-top:28px;padding-top:18px}.portfolio-section{padding-block:58px}.rendering-grid{gap:30px 20px}.rendering-card h3{font-size:1.125rem}.ridgefield-layout{grid-template-columns:1fr;gap:28px}.ridgefield-details h3{font-size:2rem}.ridgefield-specs{max-width:520px}.ridgefield-gallery{gap:14px}.ridgefield-gallery figcaption{font-size:.875rem}.ridgefield-gallery .image-open-label{display:none}.study-intro{padding-block:54px 30px}.study-links{gap:18px}.contact-section{padding-block:60px}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-actions{padding:28px 0 0;border-left:0;border-top:1px solid #40464d}.image-dialog{width:96vw;max-width:96vw}.image-dialog-head{padding:12px 15px}.image-dialog h2{font-size:1rem}}
@media(max-width:560px){.rendering-grid{grid-template-columns:1fr;gap:28px}.portfolio-hero .portfolio-actions{gap:12px 20px;margin-top:24px}.portfolio-hero-image figcaption{font-size:.75rem}.portfolio-index{gap:16px;font-size:.8125rem}.portfolio-section .section-heading h2{font-size:2.7rem}.ridgefield-gallery{grid-template-columns:1fr 1fr;gap:24px 16px}.ridgefield-gallery figure:last-child{grid-column:1/-1}.ridgefield-gallery figure:last-child .ridgefield-image{width:100%;max-width:420px;margin-inline:auto}.ridgefield-gallery figure:last-child img{aspect-ratio:4/3}.ridgefield-gallery figure:last-child figcaption{text-align:center}.image-open-label{right:12px;bottom:12px;padding:6px 10px}.study-links{font-size:.875rem;gap:16px}.contact-section h2{font-size:2.9rem}.contact-section p:not(.eyebrow){font-size:1rem}.contact-actions .button{width:100%}.contact-actions>a:last-of-type{text-align:center}}
@media(prefers-reduced-motion:reduce){.rendering-image img,.ridgefield-image img{transition:none}}
