.portfolio-intro{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:end}.portfolio-intro>p{font-size:17px;color:var(--muted);max-width:540px;margin:0}.portfolio-note{font-size:14px;line-height:1.8;color:var(--muted);max-width:950px;margin:28px 0 0}.portfolio-grid{align-items:start}.portfolio-card{margin:0;min-width:0}.portfolio-card[hidden]{display:none}.portfolio-card .project-image{height:auto;aspect-ratio:4/3;background:#eef0ed;overflow:hidden}.portfolio-card .project-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}.portfolio-card .project-image:hover img{transform:scale(1.035)}.portfolio-card .project-image>span{position:absolute;left:16px;bottom:16px;right:auto;max-width:calc(100% - 32px);background:#142932e8;color:white;padding:7px 11px;font-size:10px;letter-spacing:1px}.portfolio-board .project-image{aspect-ratio:auto;background:#faf8f3;padding:0}.portfolio-board .project-image img{height:auto;object-fit:contain}.portfolio-board .project-image>span{left:12px;top:12px;bottom:auto;background:var(--navy);font-size:9px}.portfolio-card figcaption{gap:16px}.portfolio-card figcaption h3{font-size:24px}.portfolio-card figcaption p{font-size:13px}.portfolio-link{margin-top:32px}.gallery-dialog{width:min(1200px,96vw);max-width:96vw;max-height:94dvh;padding:38px 30px 24px}.gallery-dialog #dialog-title{font-size:28px;padding-right:25px}.gallery-dialog .dialog-image{max-height:72dvh;object-fit:contain;background:#f5f5f2}.gallery-dialog .gallery-type{font-size:11px;letter-spacing:1px;color:#87613f;text-transform:uppercase;margin:15px 0 0}.gallery-dialog #dialog-content>div>p{font-size:14px;line-height:1.7}.gallery-dialog .gallery-full{display:inline-block;color:var(--navy);font-size:14px;border-bottom:1px solid var(--copper);margin-top:8px}.gallery-dialog .gallery-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;border-top:1px solid var(--border);padding-top:16px}.gallery-navigation button{border:1px solid var(--border);background:white;color:var(--navy);min-height:44px;padding:8px 15px}.gallery-navigation span{font-size:13px;color:var(--muted)}
@media(max-width:700px){.portfolio-intro{grid-template-columns:1fr;gap:20px}.portfolio-intro>p{font-size:16px}.portfolio-card figcaption h3{font-size:22px}.gallery-dialog{padding:35px 16px 20px}.gallery-dialog #dialog-title{font-size:23px}.gallery-dialog .dialog-image{max-height:65dvh}.portfolio-card .project-image>span{font-size:9px;padding:5px 8px;left:10px;bottom:10px}.portfolio-board .project-image>span{top:8px;bottom:auto;font-size:8px}.gallery-navigation button{font-size:13px;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.portfolio-card .project-image img{transition:none}.portfolio-card .project-image:hover img{transform:none}}
.header-quote{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 16px;background:var(--copper);color:var(--navy-deep);font-size:13px;font-weight:600;white-space:nowrap;transition:background .2s}.header-quote:hover{background:#dbb08a}.header{padding-left:26px;padding-right:26px;gap:20px}.header nav{gap:16px}.header-actions{gap:12px}
.breadcrumbs{padding-top:18px;padding-bottom:18px;font-size:12px;color:var(--muted)}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px 12px;list-style:none;margin:0;padding:0}.breadcrumbs li+li::before{content:' / ';margin-right:12px;color:var(--copper)}.breadcrumbs a:hover{text-decoration:underline}.seo-overview>p:not(.eyebrow){max-width:900px;color:var(--muted)}.seo-overview .info-grid{margin:32px 0}.seo-overview h3 a:hover{text-decoration:underline}
.footer-signature{padding:0 0 24px;text-align:right;font-size:12px;color:#b9c3c7}.footer-signature a{color:var(--copper);font-weight:600}.footer-signature a:hover{text-decoration:underline}@media(max-width:700px){.footer-signature{text-align:left;font-size:11px}}
@media(max-width:1200px){.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 32px;box-shadow:0 12px 15px #0001;white-space:normal}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.header nav a{font-size:16px;padding:13px 0}.menu-toggle{display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:12px;order:3}.menu-toggle span{height:1px;width:22px;background:var(--navy)}.header-actions{margin-left:auto}}
@media(max-width:700px){.header{display:grid;grid-template-columns:1fr auto;height:auto;min-height:116px;padding:12px 16px;gap:9px 12px}.header .brand{grid-column:1;grid-row:1}.header .menu-toggle{grid-column:2;grid-row:1}.header .header-actions{grid-column:1/-1;grid-row:2;margin:0;display:flex;justify-content:space-between;gap:8px}.header .client{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;font-size:11px}.header .header-quote{font-size:12px;padding:10px 12px}.header .language{min-width:44px}.header nav{top:100%}html{scroll-padding-top:140px}}
