:root{--ink:#252521;--gold:#967c4e;--border:#ded8ca;--cream:#f4f0e7}
.section-inner{width:min(100% - 40px,1160px);margin:0 auto}
.targets,.factory{padding:clamp(64px,7vw,100px) 0}
.targets{background:#eee9df}
.factory{background:#fffefa}
.section-heading{margin-bottom:38px}
.section-kicker{font-weight:800;letter-spacing:.12em;color:var(--gold);font-size:.8rem;margin:0 0 10px}
.section-heading h2{font-size:clamp(2rem,3.8vw,3rem);line-height:1.3;margin:0 0 14px}
.section-heading>p:last-child{margin:0;color:#625d52;line-height:1.7}
.target-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0}
.target-card{display:flex;flex-direction:column;min-width:0;padding:26px;border:1px solid var(--border);border-radius:18px;background:#fffefa}
.target-number{font-size:.8rem;font-weight:800;color:var(--gold);letter-spacing:.08em}
.target-card h3{font-size:clamp(1.2rem,1.7vw,1.55rem);line-height:1.45;margin:14px 0 12px}
.target-card img{width:100%;height:auto;aspect-ratio:1.34;object-fit:cover;border-radius:10px}
.target-card p{font-size:.92rem;line-height:1.75;color:#5e5b53;margin:16px 0 0}
.line-callout{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:34px;padding:30px 38px;border-radius:28px;background:#fffefa;border:1px solid var(--border)}
.line-callout p{margin:0 0 8px;color:var(--gold);font-size:.85rem;font-weight:800}
.line-callout strong{font-size:clamp(1.35rem,2.2vw,1.8rem);line-height:1.45}
.line-callout .contact-message{max-width:260px;font-weight:400;color:#343b34}
.factory-overview{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:stretch}
.factory-profile{margin:0}.factory-profile div{display:grid;grid-template-columns:7em 1fr;gap:12px;padding:15px 0;border-bottom:1px solid var(--border)}
.factory-profile dt{font-weight:800;color:var(--gold)}.factory-profile dd{margin:0;line-height:1.6}.factory-profile small{color:#625d52;white-space:normal}
.factory-exterior{display:grid;place-content:center;text-align:center;gap:8px;min-height:300px;border:1px dashed #bdb19a;background:#eeeae1;color:#635b4f;border-radius:16px}
.factory-exterior span{font-size:1.2rem;font-weight:750}.factory-note{font-size:.85rem;color:#6a6257}
.gallery-title{font-size:1.35rem;margin:46px 0 18px}.gallery-frames{position:relative;overflow:hidden;border-radius:16px;background:#e5e1d9}
.gallery-frames figure{margin:0;position:relative}.gallery-frames figure[hidden]{display:none}
.gallery-frames img{display:block;width:100%;height:clamp(260px,45vw,520px);object-fit:cover}
.gallery-frames figcaption{position:absolute;bottom:16px;left:16px;padding:9px 15px;border-radius:8px;background:rgba(32,32,29,.85);color:#fff;font-weight:700}
.gallery-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin:16px 0}
.gallery-controls[hidden],.gallery-thumbnails[hidden]{display:none}
.gallery-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.gallery-controls button{min-width:44px;min-height:44px;border:1px solid #b7ab94;border-radius:999px;background:#fffefa;color:var(--ink);font:inherit;padding:8px 14px;cursor:pointer}
.gallery-controls button:focus-visible,.gallery-thumbnails button:focus-visible{outline:3px solid #1266a3;outline-offset:3px}
.gallery-thumbnails{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.gallery-thumbnails button{padding:0;overflow:hidden;border:3px solid transparent;border-radius:8px;background:#ded8cc;cursor:pointer}
.gallery-thumbnails button[aria-current="true"]{border-color:#8d7445}
.gallery-thumbnails img{display:block;width:100%;height:clamp(64px,8vw,100px);object-fit:cover}
.gallery-static{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.gallery-static figure{margin:0}.gallery-static img{display:block;width:100%;height:180px;object-fit:cover;border-radius:8px}
.gallery-static figcaption{font-size:.85rem;margin-top:4px}
.site-footer{text-align:center;padding:28px 16px;background:#24241f;color:#fff;font-size:.8rem}
@media(max-width:700px){.section-inner{width:min(100% - 28px,1160px)}.target-grid{grid-template-columns:1fr}.target-card{padding:22px}.target-card img{max-height:220px;object-fit:contain;background:#f5f1e8}.line-callout{align-items:flex-start;flex-direction:column;padding:26px}.factory-overview{grid-template-columns:1fr;gap:20px}.factory-exterior{min-height:220px}.factory-profile div{grid-template-columns:6em 1fr}.gallery-frames img{height:300px}.gallery-thumbnails{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-controls{flex-wrap:wrap}}
