/* V61: shared reading rhythm and LINE contact across TH / EN templates. */
.v61-site{--v61-ink:#28332d;--v61-muted:#62665f;--v61-line:#d2d2c7}
.v61-site main :where(h1,h2,h3){overflow-wrap:break-word;text-wrap:pretty}
.v61-site:lang(th) main :where(h1,h2,h3){line-height:1.45;letter-spacing:0}
.v61-site .site-footer h2{font-size:clamp(1.8rem,3.4vw,3.5rem);line-height:1.45;letter-spacing:-.025em}
.v61-site .footer-intro{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr) minmax(240px,1fr);gap:clamp(24px,4vw,64px);align-items:center;padding-bottom:48px}
.v61-footer-actions{display:grid;gap:12px;min-width:0}
.v61-site a.v61-contact-button{display:flex;justify-content:center;align-items:center;min-height:56px;padding:14px 22px;box-sizing:border-box;border:1px solid #f5f2e999;background:transparent;color:#faf8f0;font-size:1rem;font-weight:500;line-height:1.6;text-decoration:none;text-align:center;transition:background .2s,color .2s,box-shadow .2s}
.v61-site a.v61-contact-button:first-child{background:#f4f1e7;color:#26352b;border-color:#f4f1e7}
.v61-site .footer-grid a{font-size:.9375rem;line-height:1.7;overflow-wrap:anywhere}
.v61-site .footer-title{font-size:.8125rem;letter-spacing:.1em}
.v61-site .footer-grid{gap:32px;padding-block:40px}
.v61-site .context-rail{gap:16px;padding-block:20px}
.v61-site .context-links{display:flex;flex-wrap:wrap;gap:8px 20px}
.v61-site .context-links a,.v61-site .context-trail{font-size:.875rem;line-height:1.65}
.v61-site .context-links a{padding-block:6px;text-underline-offset:5px}
.v61-site .button{min-height:48px;font-size:.9375rem;line-height:1.6;white-space:normal}
.v61-site :where(a,button,summary):focus-visible{outline:3px solid #a47a42;outline-offset:5px}
/* Editorial guides: clear chapters, moderate title sizes and one visual pause. */
.v61-site .article-hero{min-height:0;align-items:stretch}
.v61-site .article-hero-copy{padding:clamp(32px,5vw,80px)}
.v61-site .article-hero h1{font-size:clamp(2rem,3.5vw,3.75rem);line-height:1.4;letter-spacing:-.025em}
.v61-site .article-hero-copy>div{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.875rem;line-height:1.6}
.v61-site .article-hero figure{min-height:320px}
.v61-site .article-hero figure img{object-fit:contain;background:#e9e6df;width:100%;height:100%}
.v61-site .article-layout{grid-template-columns:minmax(190px,.7fr) minmax(0,2fr);gap:clamp(28px,5vw,80px);width:calc(100% - 64px);max-width:1280px;padding-block:56px}
.v61-site .article-layout aside{padding:20px;border-top:1px solid var(--v61-line);border-bottom:1px solid var(--v61-line);gap:14px;min-width:0}
.v61-site .article-layout aside a{font-size:.9375rem;line-height:1.7}
.v61-site .article-body{min-width:0;max-width:780px}
.v61-site .article-lead{font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.85;margin-bottom:32px}
.v61-site .article-body>section{padding:32px 0}
.v61-site .article-body>section>span{position:static;display:block;font-size:.875rem;letter-spacing:.08em;margin-bottom:12px}
.v61-site .article-body h2{font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.5;margin-bottom:16px}
.v61-site .article-body :where(p,li){font-size:1rem;line-height:1.9}
.v61-guide-visual{margin:16px 0 36px;background:#e9e6df}
.v61-guide-visual img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain}
.v61-guide-visual figcaption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:18px 22px;background:#efede6;font-size:.875rem;line-height:1.8;color:var(--v61-muted)}
.v61-guide-visual figcaption a{font-size:1rem;color:var(--v61-ink);text-underline-offset:6px}
/* Album hierarchy keeps the original product and completed-work photography. */
.v61-site .portfolio-detail-title{margin-top:28px;gap:32px}
.v61-site .portfolio-detail-title h1{font-size:clamp(2rem,3.8vw,4rem);line-height:1.4}
.v61-site .portfolio-detail-title div>p:last-child{font-size:1rem;line-height:1.85;max-width:65ch}
.v61-site .portfolio-back-link{font-size:.9375rem;line-height:1.7;min-height:44px;align-items:center}
.v61-site .portfolio-detail-ledger{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:.875rem;line-height:1.7}
.v61-site .portfolio-category-image img{object-fit:contain;background:#e8e5dd}
.v61-site .portfolio-category-card,.v61-site .catalog-album-card,.v61-site .article-index-card{min-width:0}
.v61-site .catalog-album-copy strong{font-size:1.125rem;line-height:1.6}
.v61-site .catalog-album-copy small{font-size:.875rem;line-height:1.6}
.v61-site .filter-row button,.v61-site .portfolio-group-tabs button{min-height:48px;font-size:.9375rem}
.v61-site .article-index-card h2{font-size:clamp(1.5rem,2.5vw,2.15rem);line-height:1.5}
.v61-site .article-index-card p{font-size:1rem;line-height:1.85}
.v61-site .legal-page article{max-width:760px;margin-inline:auto;font-size:1rem;line-height:1.9}
@media(hover:hover){.v61-site a.v61-contact-button:hover{background:#d9dfd1;color:#26352b;box-shadow:0 8px 24px #0002}.v61-site .context-links a:hover{text-decoration:underline}}
@media(max-width:1000px){.v61-site .footer-intro{grid-template-columns:1fr 1fr}.v61-footer-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.v61-site .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.v61-site .article-hero{grid-template-columns:1fr}.v61-site .article-hero-copy{padding:32px 24px}.v61-site .article-hero figure{min-height:0;aspect-ratio:16/10}.v61-site .article-layout{width:calc(100% - 40px);grid-template-columns:1fr;gap:32px;padding-block:32px}.v61-site .article-layout aside{position:static;display:grid;grid-template-columns:1fr;padding:18px}.v61-site .article-layout aside a{padding-block:4px}.v61-site .article-body>section{padding-block:28px}.v61-site .footer-intro{grid-template-columns:1fr;gap:24px;padding-bottom:32px}.v61-footer-actions{grid-template-columns:1fr}.v61-site .footer-grid{gap:28px 20px}.v61-site .site-footer{padding-inline:24px}.v61-site .portfolio-detail-title{grid-template-columns:minmax(0,1fr);gap:16px}.v61-site .portfolio-detail-ledger{gap:8px 16px}.v61-site .catalog-head{grid-template-columns:1fr;gap:24px}.v61-site .catalog-head h1{font-size:2rem}.v61-site .context-rail{align-items:flex-start}.v61-guide-visual figcaption{padding:16px}}
@media(max-width:380px){.v61-site .footer-grid{grid-template-columns:1fr}.v61-site .site-footer{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){.v61-site a.v61-contact-button{transition:none}}
