[hidden]{display:none!important}
.portfolio-intro{padding-top:34px;padding-bottom:58px}
.portfolio-back{display:inline-block;font-size:11px;color:var(--muted);margin-bottom:44px}
.portfolio-intro h1{font-size:clamp(40px,4.6vw,65px);margin:21px 0 24px}
.portfolio-intro h1 em{color:#647661}
.portfolio-lead{font-size:13px;line-height:1.9;max-width:470px;color:var(--muted);margin:0}
.portfolio-catalog{padding-bottom:70px}
.catalog-heading{border-top:1px solid var(--line);padding-top:28px;margin-bottom:29px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.catalog-heading h2{font-size:35px;letter-spacing:-1px}.catalog-hint{font-size:10px;color:var(--muted)}
.portfolio-empty{border:1px solid #d9ddd0;background:#eeeee4;min-height:300px;padding:48px 55px;border-radius:8px;display:grid;grid-template-columns:1fr 1.5fr;align-items:center;gap:60px}
.empty-monogram{font-family:'Playfair Display',Georgia,serif;font-size:110px;line-height:1;border:1px solid #acb8a1;border-radius:50%;width:150px;height:185px;display:grid;place-items:center;margin:auto;color:#7a8d70}
.portfolio-empty h3{font-size:35px;letter-spacing:-1px;line-height:1.15;margin:15px 0}.portfolio-empty>div>p:not(.eyebrow){font-size:12px;line-height:1.9;color:var(--muted);max-width:410px;margin:0 0 20px}
.portfolio-contact{background:var(--green);color:var(--cream)}
.portfolio-contact-inner{padding-block:55px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.portfolio-contact h2{font-size:39px;line-height:1.2;letter-spacing:-1px;margin-top:18px}.portfolio-contact h2 em{color:#b7c9b0}.portfolio-contact .eyebrow{font-size:8px;color:#b7c9b0}
.portfolio-contact-button{display:flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid #82967e;border-radius:4px;padding:18px 21px;font-size:11px;white-space:nowrap;transition:background .2s}
.portfolio-contact-button:hover{background:#ffffff0d}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 26px}
.portfolio-project{display:block;min-width:0;width:100%;border:0;padding:0;background:transparent;text-align:left;color:var(--green)}
.project-thumbnail{display:block;overflow:hidden;border-radius:7px;background:#e8e8de;aspect-ratio:4/3;border:1px solid #dce0d3}
.project-thumbnail img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .4s}
.portfolio-project:hover .project-thumbnail img{transform:scale(1.025)}
.project-info{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 2px 17px}.project-info .eyebrow{display:block;font-size:8px;letter-spacing:1.5px;color:var(--muted)}
.project-title{display:block;font-family:'Playfair Display',Georgia,serif;font-size:30px;margin:0 0 7px;line-height:1.15;letter-spacing:-.6px}
.project-arrow{border:1px solid #aab6a0;border-radius:50%;height:32px;width:32px;display:grid;place-items:center;flex-shrink:0}
.project-viewer{width:min(1050px,calc(100% - 32px));padding:25px;max-height:92vh;overflow:auto}
.viewer-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}
.viewer-bar h2{font-size:30px;margin:9px 0 0;letter-spacing:-1px}
.viewer-bar .eyebrow{font-size:8px}.viewer-close{font-size:27px;background:transparent;border:1px solid #c4cdb9;color:var(--green);width:34px;height:34px;border-radius:50%;flex-shrink:0}
.viewer-image-area{background:#e9e8de;border-radius:4px;overflow:hidden;text-align:center}.viewer-image-area img{max-width:100%;max-height:65vh;display:block;object-fit:contain;margin:auto}
.viewer-description{font-size:12px;line-height:1.8;color:var(--muted)}
.viewer-controls{display:flex;align-items:center;justify-content:space-between;margin-top:18px;gap:12px;font-size:10px;color:var(--muted)}
.viewer-controls button{border:0;background:transparent;padding:9px 0;color:var(--green);font-size:11px}.viewer-controls button:disabled{opacity:.3;cursor:default}
.project-viewer .dialog-cta{margin-top:16px}
@media(max-width:720px){.portfolio-page .header nav .portfolio-home{display:none}.portfolio-intro{padding-top:24px;padding-bottom:36px}.portfolio-back{margin-bottom:31px;font-size:10px}.portfolio-intro h1{font-size:clamp(33px,8.4vw,49px);line-height:1.16;letter-spacing:-1.2px;margin:19px 0}.portfolio-lead{font-size:12px}.catalog-heading{padding-top:24px;margin-bottom:22px;align-items:flex-start;flex-direction:column;gap:14px}.catalog-heading h2{font-size:31px}.portfolio-empty{padding:29px 25px;grid-template-columns:1fr;gap:25px}.empty-monogram{font-size:43px;width:58px;height:73px;margin:0}.portfolio-empty h3{font-size:29px}.portfolio-empty .eyebrow{font-size:8px;letter-spacing:1.3px}.portfolio-catalog{padding-bottom:40px}.portfolio-contact-inner{padding-block:38px;align-items:flex-start;flex-direction:column;gap:26px}.portfolio-contact h2{font-size:31px}.portfolio-contact-button{width:100%;white-space:normal;font-size:10px;padding:17px}.portfolio-grid{grid-template-columns:1fr;gap:30px}.project-title{font-size:27px}.project-info{padding:0 2px 14px}.project-viewer{padding:18px}.viewer-bar h2{font-size:25px}.viewer-image-area img{max-height:60vh}}

