/* Localized portfolio detail pages (/<lang>/portfolio/*.html) */
.pi-main{color:#2f3833}
.pi-wrap{width:min(1180px,100% - 40px);margin-inline:auto}
.pi-hero{padding:48px 0 56px}
.pi-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.pi-back{display:inline-block;margin-bottom:22px;color:#192922;font-size:14px;text-decoration:none}
.pi-back:hover{text-decoration:underline}
.pi-eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#192922;margin-bottom:12px}
.pi-hero h1{margin:0;font-size:clamp(32px,4.4vw,56px);line-height:1.05;letter-spacing:-.02em;color:#192922}
.pi-lead{font-size:18px;line-height:1.6;margin:18px 0 26px;color:#4d554f}
.pi-actions{display:flex;flex-wrap:wrap;gap:12px}
.pi-btn{display:inline-flex;align-items:center;min-height:48px;padding:12px 22px;border-radius:4px;background:#192922;color:#fff;font-weight:700;text-decoration:none;border:1px solid #192922}
.pi-btn:hover{background:#2d4339}
.pi-ghost{background:transparent;color:#192922}
.pi-ghost:hover{background:#192922;color:#fff}
.pi-hero figure{margin:0}
.pi-hero figure img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:8px;background:#ebe5d9}
.pi-body{padding:24px 0 56px}
.pi-article{max-width:820px;font-size:17px;line-height:1.7}
.pi-article h2{font-size:clamp(24px,3vw,34px);line-height:1.2;color:#192922;margin:32px 0 14px}
.pi-article p{margin:0 0 16px}
.pi-article ul{margin:0 0 20px;padding-inline-start:22px}
.pi-article li{margin:6px 0}
.pi-faq details{border-bottom:1px solid #d8d5cb}
.pi-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:16px 0;font-weight:700;color:#192922}
.pi-faq summary::-webkit-details-marker{display:none}
.pi-faq summary::after{content:"+";font-size:22px;line-height:1}
.pi-faq details[open] summary::after{content:"–"}
.pi-faq details p{margin:0 0 16px}
.pi-band{background:#192922;color:#e9ece6;padding:48px 0}
.pi-band h2{color:#fff;margin:0 0 10px;font-size:clamp(24px,3vw,34px)}
.pi-band p{margin:0 0 22px;max-width:640px}
.pi-light{background:#fff;color:#192922;border-color:#fff}
.pi-light:hover{background:#e9ece6}
.pi-more{padding:56px 0 64px}
.pi-more h2{font-size:clamp(24px,3vw,34px);color:#192922;margin:0 0 24px}
.pi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.pi-card{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:#192922;font-weight:700;font-size:15px;line-height:1.35}
.pi-card img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:6px;background:#ebe5d9;transition:transform .25s}
.pi-card:hover img{transform:translateY(-3px)}
@media(max-width:960px){.pi-split{grid-template-columns:1fr;gap:28px}.pi-hero figure{order:-1}.pi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.pi-hero{padding:28px 0 40px}.pi-lead{font-size:16px}.pi-article{font-size:16px}}
.pi-video{margin:0}
.pi-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:8px;background:#111;object-fit:contain}
.pi-index-hero .pi-wrap{max-width:900px;margin-inline:auto}
.pi-group{padding:24px 0 40px}
.pi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.pi-grid-anim .pi-card img,.pi-anim img{aspect-ratio:16/9}
.pi-anim{position:relative}
.pi-anim::before{content:"▶";position:absolute;top:10px;inset-inline-start:10px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(25,41,34,.85);color:#fff;font-size:13px;z-index:1}
.pi-all{display:inline-block;margin-top:24px;color:#192922;font-weight:700}
@media(max-width:960px){.pi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
