/* Latest social section (homepage) */
.soc .sec-head{margin-bottom:28px}
.soc-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;list-style:none;margin:0;padding:0}
.soc-tile{aspect-ratio:1/1;border-radius:14px;display:flex;flex-direction:column;justify-content:space-between;padding:16px;text-decoration:none;color:var(--paper);background:var(--anchor);transition:transform .2s var(--ease)}
.soc-tile:hover{transform:translateY(-3px)}
.soc-grid li:nth-child(3n+2) .soc-tile{background:var(--rust)}
.soc-grid li:nth-child(3n) .soc-tile{background:var(--tint);color:var(--anchor)}
.soc-tile svg{width:28px;height:28px}
.soc-tile b{font:700 15px/1.2 var(--f);letter-spacing:.01em}
.soc-tile span{font:600 22px/1 var(--hand)}
.soc-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
@media(max-width:900px){.soc-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.soc-grid{grid-template-columns:repeat(2,1fr);gap:10px}.soc-tile{padding:14px}.soc-acts .btn{flex:1 1 100%}}
.soc-h{display:block;overflow-wrap:anywhere}
@media(max-width:480px){.soc h2 .soc-h{font-size:.74em}}
@media(max-width:480px){.soc .d2{font-size:clamp(28px,8.4vw,40px)}}
/* 390 polish: label lines and heading/handle spacing */
.soc-tile b{display:block;line-height:1.2}
.soc-tile span{display:block;margin-bottom:6px}
.soc-tile br{display:none}
@media(max-width:480px){.soc h2 .soc-h{margin-top:.18em;line-height:1.05}.soc .sec-head{margin-bottom:24px}}
/* live Instagram tiles (js/social-feed.js) */
.soc-post{position:relative;padding:0;overflow:hidden;background:var(--anchor);color:var(--paper)!important}
.soc-post img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s var(--ease),transform .5s var(--ease)}
.soc-post.in img{opacity:1}
.soc-post.err img{display:none}
.soc-post:hover img{transform:scale(1.04)}
.soc-post::after{content:"";position:absolute;inset:auto 0 0 0;height:46%;background:linear-gradient(to top,rgba(29,35,38,.72),rgba(29,35,38,0));pointer-events:none}
.soc-post .soc-kind{position:absolute;top:10px;right:10px;z-index:1;width:22px;height:22px;padding:4px;border-radius:50%;background:rgba(29,35,38,.6);color:var(--paper)}
.soc-post .soc-date{position:absolute;left:12px;bottom:10px;z-index:1;display:block;margin:0;font:600 12px/1 var(--f);letter-spacing:.08em;text-transform:uppercase;color:var(--paper)}
.soc-post:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
@media(max-width:480px){.soc-post{padding:0}}
/* keep the handle on one line wherever it fits (was breaking "@thefrancoprest / on" on desktop) */
@media(min-width:600px){.soc .sec-head{max-width:none}.soc .soc-h{overflow-wrap:normal;white-space:nowrap}}
