/* Additions only: original v3.1 style.css and motion files remain byte-identical. */
.portfolio-more{display:inline-block;margin-top:42px;border-bottom:1px solid;padding-bottom:12px;font-size:12px;letter-spacing:.08em}
.portfolio-page .nav{position:relative;background:#242625}
.portfolio-page .projects-head h1{font-size:clamp(48px,7.1vw,112px);line-height:1.02;letter-spacing:-.075em;font-weight:600;margin:18px 0 50px}
.portfolio-page h1 i{font-style:normal;font-weight:400}
.project-intro{padding:90px 5% 65px;max-width:1200px}
.project-intro>a{display:inline-block;font-size:12px;margin-bottom:45px}
.project-intro h1{font:600 clamp(27px,3.4vw,54px)/1.5 Manrope,'Noto Sans Thai',sans-serif;margin:18px 0 24px;overflow-wrap:anywhere}
.project-intro p{font:500 15px/1.9 Manrope,'Noto Sans Thai',sans-serif}
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 24px;padding:0 5% 75px;align-items:start}
.project-gallery figure{margin:0;min-width:0}.project-gallery img{display:block;width:100%;height:auto;background:#d0d0cc}
.project-gallery figcaption{font-size:11px;color:#565b58;margin-top:12px;line-height:1.8;overflow-wrap:anywhere}
.project-bottom{display:flex;justify-content:space-between;gap:24px;padding:25px 5% 80px;font-size:13px}
#dialog-content p{font:500 14px/1.8 Manrope,'Noto Sans Thai',sans-serif}
#dialog-content .project-detail-link{display:inline-block;border-bottom:1px solid;margin:16px 0 28px;padding:8px 0}
#dialog-content .gallery img{cursor:zoom-in}
#dialog-content .lightbox-image{width:100%;height:auto;max-height:72vh;object-fit:contain}
.project:focus-visible,.portfolio-more:focus-visible,.project-gallery a:focus-visible{outline:2px solid #303030;outline-offset:4px}
@media(max-width:650px){.project-intro{padding:60px 6% 40px}.project-gallery{grid-template-columns:1fr;padding:0 6% 55px;gap:30px}.project-bottom{padding:20px 6% 55px;flex-direction:column}.portfolio-page .projects-head h1{font-size:clamp(34px,9vw,48px)}}
.factory-section{background:#d9d8d3}.factory-cover{display:block;position:relative;overflow:hidden;margin-top:30px}.factory-cover img{width:100%;height:auto;display:block;transition:transform .7s}.factory-cover:hover img{transform:scale(1.035)}.factory-cover span{position:absolute;bottom:0;left:0;right:0;padding:25px;color:white;background:linear-gradient(transparent,#000c);font:600 16px 'Noto Sans Thai',sans-serif}.factory-cover:focus-visible{outline:2px solid #303030;outline-offset:5px}
@media(min-width:651px) and (max-width:1100px){.nav nav{gap:12px}.nav nav a{font-size:9px}}
