/* IG Design portfolio, scoped to preserve the existing site. */
.portfolio-section{background:var(--paper);color:var(--ink);padding:90px 6% 80px}.portfolio-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;align-items:end;margin-bottom:45px}.portfolio-heading h2{font-size:clamp(38px,3.9vw,62px);margin:20px 0 0}.portfolio-heading em{color:#796444}.portfolio-heading .section-label{color:#606a60}.portfolio-heading>p{color:#515e55;max-width:420px;margin:0 0 5px}.project-card{margin:0;min-width:0}.project-open{display:block;position:relative;width:100%;padding:0;border:0;background:#e5e5e5;cursor:zoom-in;overflow:hidden;color:var(--ink)}.project-open img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.project-open:hover img{transform:scale(1.025)}.project-open:focus-visible{outline:3px solid #796444;outline-offset:5px}.project-zoom{position:absolute;right:14px;bottom:14px;background:#f2f0e9ed;color:#172018;border:1px solid #17201830;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-size:23px;line-height:1}.project-card figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:17px 0 28px}.project-card h3{font-size:26px;line-height:1.2;margin:0}.project-card figcaption>span{font-size:11px;letter-spacing:1px;color:#586157;flex-shrink:0}.project-feature .project-open{aspect-ratio:1.9}.project-feature img{object-fit:cover;background:#25231e}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:8px 0 30px}.project-grid .project-open{aspect-ratio:1}.project-grid figcaption{display:block}.project-grid h3{font-size:23px;margin-bottom:8px}.project-panorama .project-open{aspect-ratio:2.58}.project-panorama img{object-fit:contain}.portfolio-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #17201830;padding-top:24px}.portfolio-footer p{color:#515e55;margin:0;font-size:14px}.portfolio-footer a{flex-shrink:0}.project-dialog{border:1px solid #ffffff30;padding:64px 22px 18px;background:#111818;color:#f2f0e9;width:min(1400px,96vw);max-width:96vw;max-height:94dvh;overflow:auto}.project-dialog::backdrop{background:#050a0aed}.project-close{position:absolute;right:20px;top:15px;min-height:40px;background:transparent;border:1px solid #b9bcb6;color:#f2f0e9;padding:6px 16px;cursor:pointer}.project-expanded{display:block;max-width:100%;width:auto;max-height:72dvh;height:auto;object-fit:contain;margin:auto}.project-dialog p{text-align:center;margin:14px 0 0;font-size:14px}body.project-view-open{overflow:hidden}
@media(min-width:901px) and (max-width:1250px){header{padding:0 4%}header nav{gap:13px}header nav a{font-size:12px}header .official-logo{width:165px}}
@media(max-width:1050px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-heading{gap:30px;grid-template-columns:1.4fr 1fr}}
@media(max-width:900px){header .menu{display:block;color:var(--paper);background:none;border:1px solid #ffffff55;padding:9px 14px;min-height:44px}header nav{display:none;position:absolute;top:85px;left:0;right:0;background:#111818;padding:25px 7%;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}header nav.open{display:flex}header nav a{font-size:16px;padding:4px 0}.portfolio-section{padding:65px 7%}.portfolio-heading{grid-template-columns:1fr;gap:20px}.portfolio-heading>p{max-width:650px}.portfolio-footer{align-items:flex-start;flex-direction:column}.project-feature .project-open{aspect-ratio:1.52}}
@media(max-width:620px){header nav{top:78px}.project-grid{grid-template-columns:1fr;gap:10px}.project-card figcaption{display:block}.project-card h3{font-size:25px;margin-bottom:7px}.project-panorama .project-open{aspect-ratio:2.58;background:#ddd}.project-panorama img{object-fit:contain}.project-dialog{padding:62px 10px 16px}.project-expanded{max-height:70dvh}.project-close{right:10px}.portfolio-heading h2{font-size:39px}.portfolio-heading h2 br{display:none}.portfolio-heading h2 em{display:block}}
@media(prefers-reduced-motion:reduce){.project-open img{transition:none}.project-open:hover img{transform:none}}

/* Rendering examples */
.rendering-gallery{padding:0 6% 65px;background:var(--paper);color:var(--ink)}.rendering-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.rendering-gallery .project-open{aspect-ratio:1.5;background:white}.rendering-gallery .project-open img{object-fit:contain;background:white}.rendering-gallery .project-card figcaption{display:block}.rendering-gallery .project-card h3{margin-bottom:7px}.rendering-gallery .project-card figcaption>span{font-size:14px}.rendering-heading{border-top:1px solid #17201830;padding:36px 0 28px}.rendering-heading h2{font-size:clamp(36px,4vw,58px);margin:12px 0}.rendering-heading p{max-width:690px;color:#515e55}.rendering-teaser{margin:28px 0}.rendering-teaser img{width:100%;height:auto;display:block;background:white}.rendering-teaser figcaption{padding-top:12px;font-size:14px}.rendering-teaser a{text-decoration:underline;text-underline-offset:4px}.service-page .service-opening{padding-bottom:55px}
@media(max-width:620px){.rendering-gallery{padding:0 7% 40px}.rendering-grid{grid-template-columns:1fr;gap:12px}.rendering-gallery .project-open{aspect-ratio:1.3}.rendering-gallery .project-card h3{font-size:28px}}
