/* Compact contact footer with the requested social platforms. */
.contact-footer{padding:36px 0 20px;background:var(--surface);border-top:1px solid var(--line);scroll-margin-top:96px}
.footer-main{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:800px;margin-inline:auto}
.contact-footer h2{font-size:36px;font-weight:500;line-height:1.2;letter-spacing:-1.2px;margin:0 0 9px}
.footer-invitation{font-size:12px;line-height:1.8;color:var(--muted);margin:0;max-width:430px}
.contact-email-row{display:grid;grid-template-columns:minmax(0,1fr) max-content minmax(0,1fr);align-items:center;gap:10px;width:100%;margin-top:18px;max-width:100%}
.contact-email-row #contact-email{grid-column:2;grid-row:1}
.contact-email-row .footer-copy{grid-column:3;grid-row:1;justify-self:start}
.contact-footer #contact-email{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:10px 22px;border-radius:30px;border:1px solid var(--accent);background:var(--accent);color:var(--white);font-size:18px;font-weight:500;letter-spacing:-.35px;white-space:nowrap;transition:background .2s,border-color .2s;min-width:0}
.contact-footer #contact-email::after{content:"↗";font-size:19px;font-weight:400;line-height:1}
.contact-footer #contact-email:hover{background:var(--accent-strong);border-color:var(--accent-strong)}
.footer-copy{display:grid;place-items:center;position:relative;flex:none;width:48px;height:48px;padding:0;border:1px solid #becbe3;border-radius:50%;background:transparent;color:var(--ink);transition:background .2s,border-color .2s,color .2s}
.footer-copy svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.footer-copy:hover,.footer-copy.is-copied{background:var(--paper);border-color:var(--accent);color:var(--accent)}
.footer-copy .copied-symbol{display:none}
.footer-copy.is-copied .copy-symbol{display:none}
.footer-copy.is-copied .copied-symbol{display:block}
.contact-feedback{font-size:9px;color:var(--muted);min-height:16px;line-height:1.8;margin:8px 0 0}
.contact-footer #social-links{justify-content:center;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;font-size:11px}
.footer-socials .social-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:1px solid #becbe3;border-radius:50%;color:var(--ink);background:transparent;transition:background .2s,color .2s,border-color .2s}
.footer-socials a.social-icon:hover{background:var(--paper);color:var(--accent);border-color:var(--accent)}
.footer-socials .social-icon svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.footer-socials .social-icon svg .social-fill{fill:currentColor;stroke:none}
.footer-socials .social-icon.is-text{display:inline-flex;justify-content:center;width:auto;padding-inline:12px;border-radius:24px}
.footer-meta{border-top:1px solid var(--line);margin-top:26px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;line-height:1.7}
.footer-meta p{margin:0}
.contact-footer .footer-domain{display:block;margin:0;letter-spacing:.3px}
.footer-back-top{display:inline-flex;align-items:center;gap:11px;color:var(--ink)}
.footer-back-top>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid #becbe3;border-radius:50%;font-size:16px;transition:background .2s,border-color .2s}
.footer-back-top:hover>span{background:var(--paper);border-color:var(--accent)}
@media(max-width:760px){.contact-footer{padding-top:30px;padding-bottom:18px;scroll-margin-top:78px}.contact-footer h2{font-size:28px;letter-spacing:-.8px;margin-bottom:8px}.footer-invitation{font-size:11px;max-width:310px}.contact-email-row{gap:9px;margin-top:17px}.contact-footer #contact-email{font-size:15px;gap:12px;min-height:46px;padding:10px 18px}.contact-footer #contact-email::after{font-size:17px}.footer-copy{width:46px;height:46px}.contact-feedback{font-size:9px}.contact-footer #social-links{margin-top:16px;gap:10px}.footer-meta{margin-top:23px;padding-top:17px;display:grid;grid-template-columns:1fr auto;gap:4px 20px;font-size:9px}.footer-meta>p{grid-column:1}.contact-footer .footer-domain{grid-column:1;grid-row:2}.footer-back-top{grid-column:2;grid-row:1 / 3;gap:9px}.footer-back-top>span{width:32px;height:32px}}
@media(max-width:360px){.contact-footer h2{font-size:25px;letter-spacing:-.7px}.contact-footer #contact-email{font-size:14px;gap:10px;padding-inline:15px}.footer-invitation{max-width:270px}}
