/* Marco Turini — Social links module (v7). Loaded only on links.html. */
.social-links-section { background: #111313; border-top: 1px solid #363b40; }
.social-links-heading { margin: 30px 0 22px; }
.social-links-intro { max-width: 810px; margin: 0; }
.social-links-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-top: 46px; }
.social-link-card { display: flex; flex-direction: column; min-width: 0; min-height: 255px; padding: 28px 30px 26px; position: relative; background: linear-gradient(155deg,#1c2024,#151719 88%); border: 1px solid #394047; text-decoration: none; transition: border-color .2s, background .2s, transform .2s; }
.social-link-card:hover, .social-link-card:focus-visible { border-color: var(--accent); background: linear-gradient(155deg,#252d37,#15191e 88%); transform: translateY(-2px); }
.social-link-card:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.social-index { color: var(--accent); letter-spacing: .16em; font-size: .62rem; font-weight: 800; }
.social-name { font-size: clamp(1.7rem,2.4vw,2.5rem); line-height: 1; font-weight: 900; letter-spacing: -.045em; margin-top: 26px; color: #efeee8; }
.social-handle { overflow-wrap: anywhere; font-size: .73rem; color: #9bb1d4; margin-top: 6px; }
.social-description { color: #babfbe; line-height: 1.6; font-size: .83rem; max-width: 310px; margin-top: 20px; padding-right: 24px; }
.social-arrow { position: absolute; right: 25px; bottom: 22px; font-size: 1.25rem; color: var(--accent); }
@media(max-width: 1000px) { .social-links-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 650px) { .social-links-grid { grid-template-columns: 1fr; margin-top: 30px; } .social-link-card { min-height: 210px; padding: 24px; } .social-name { margin-top: 18px; } }
