feat(footer): restyle site footer contact and social sections
- replace plain contact text with icon-backed contact rows - swap social glyphs for SVG social icons with external links - tighten footer spacing and hover states to match the live design
This commit is contained in:
@@ -28,13 +28,34 @@ const labels = lang === 'es'
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<h2>{labels.contact}</h2>
|
<h2>{labels.contact}</h2>
|
||||||
<p><a href={`tel:${site.phone.replace(/\D/g, '')}`}>{site.phone}</a><br /><a href={`mailto:${site.email}`}>{site.email}</a><br />{site.address}</p>
|
<div class="footer-contact">
|
||||||
<p class="social-links">
|
<div class="footer-contact-item">
|
||||||
<a href={site.social.facebook} aria-label="Facebook">f</a>
|
<img src="/assets/images/phone-blue.svg" alt="" aria-hidden="true" width="24" height="24" />
|
||||||
<a href={site.social.instagram} aria-label="Instagram">◎</a>
|
<a href={`tel:${site.phone.replace(/\D/g, '')}`}>{site.phone}</a>
|
||||||
<a href={site.social.linkedin} aria-label="LinkedIn">in</a>
|
</div>
|
||||||
<a href={site.social.youtube} aria-label="YouTube">▶</a>
|
<div class="footer-contact-item">
|
||||||
</p>
|
<img src="/assets/images/envelope-blue.svg" alt="" aria-hidden="true" width="24" height="24" />
|
||||||
|
<a href={`mailto:${site.email}`}>{site.email}</a>
|
||||||
|
</div>
|
||||||
|
<div class="footer-contact-item">
|
||||||
|
<img src="/assets/images/location-blue.svg" alt="" aria-hidden="true" width="24" height="24" />
|
||||||
|
<address>{site.address}</address>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="social-links">
|
||||||
|
<a href={site.social.facebook} target="_blank" rel="noopener" aria-label="Facebook">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="30" height="30" fill="var(--color-accent)" aria-hidden="true"><path d="M448 56.7v398.5c0 13.7-11.1 24.7-24.7 24.7H309.1V306.5h58.2l8.7-67.6h-67v-43.2c0-19.6 5.4-32.9 33.5-32.9h35.8v-60.5c-6.2-.8-27.4-2.7-52.2-2.7-51.6 0-87 31.5-87 89.4v49.9h-58.4v67.6h58.4V480H24.7C11.1 480 0 468.9 0 455.3V56.7C0 43.1 11.1 32 24.7 32h398.5c13.7 0 24.8 11.1 24.8 24.7z"/></svg>
|
||||||
|
</a>
|
||||||
|
<a href={site.social.instagram} target="_blank" rel="noopener" aria-label="Instagram">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="30" height="30" fill="var(--color-accent)" aria-hidden="true"><path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"/></svg>
|
||||||
|
</a>
|
||||||
|
<a href={site.social.linkedin} target="_blank" rel="noopener" aria-label="LinkedIn">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" width="30" height="30" fill="var(--color-accent)" aria-hidden="true"><path d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"/></svg>
|
||||||
|
</a>
|
||||||
|
<a href={site.social.youtube} target="_blank" rel="noopener" aria-label="YouTube">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" width="30" height="30" fill="var(--color-accent)" aria-hidden="true"><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="container footer-bottom">
|
<div class="container footer-bottom">
|
||||||
|
|||||||
@@ -43,12 +43,19 @@
|
|||||||
.cta-band h2, .cta-band .eyebrow { color: white; margin: 0; }
|
.cta-band h2, .cta-band .eyebrow { color: white; margin: 0; }
|
||||||
.site-footer { background: var(--color-primary-dark); color: white; padding-block: var(--space-xl) var(--space-md); }
|
.site-footer { background: var(--color-primary-dark); color: white; padding-block: var(--space-xl) var(--space-md); }
|
||||||
.footer-grid { display: grid; gap: var(--space-xl); grid-template-columns: 1fr 1fr 1.5fr; }
|
.footer-grid { display: grid; gap: var(--space-xl); grid-template-columns: 1fr 1fr 1.5fr; }
|
||||||
.site-footer h2, .site-footer a { color: white; }
|
.site-footer h2, .site-footer a { color: white; text-decoration: none; }
|
||||||
.site-footer h2 { font-size: 1.25rem; }
|
.site-footer h2 { font-size: 1.25rem; letter-spacing: .3px; margin-bottom: 1.2rem; }
|
||||||
|
.site-footer a:hover { color: var(--color-accent); }
|
||||||
.site-footer ul { list-style: none; padding: 0; }
|
.site-footer ul { list-style: none; padding: 0; }
|
||||||
.site-footer li { margin-bottom: .35rem; }
|
.site-footer li { line-height: 2.6; margin-bottom: 0; }
|
||||||
.social-links { display: flex; gap: .75rem; }
|
.site-footer p { line-height: 2.6; }
|
||||||
.social-links a { color: var(--color-accent); font-weight: 700; }
|
.footer-contact { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 2rem; margin-top: 2rem; }
|
||||||
|
.footer-contact-item { align-items: flex-start; display: flex; gap: .6rem; line-height: 1.5; }
|
||||||
|
.footer-contact-item img { flex-shrink: 0; }
|
||||||
|
.footer-contact-item address { font-style: normal; }
|
||||||
|
.social-links { display: flex; gap: .85rem; margin-left: 1.6rem; margin-top: .25rem; }
|
||||||
|
.social-links a { align-items: center; color: white; display: flex; opacity: .85; }
|
||||||
|
.social-links a:hover { color: var(--color-accent); opacity: 1; }
|
||||||
.footer-bottom { border-top: 1px solid rgb(255 255 255 / 20%); display: flex; justify-content: space-between; margin-top: var(--space-lg); padding-top: var(--space-md); }
|
.footer-bottom { border-top: 1px solid rgb(255 255 255 / 20%); display: flex; justify-content: space-between; margin-top: var(--space-lg); padding-top: var(--space-md); }
|
||||||
.article-header { padding-block: var(--space-xl) var(--space-lg); text-align: center; }
|
.article-header { padding-block: var(--space-xl) var(--space-lg); text-align: center; }
|
||||||
.article-header h1 { font-size: clamp(2.3rem, 6vw, 4.6rem); }
|
.article-header h1 { font-size: clamp(2.3rem, 6vw, 4.6rem); }
|
||||||
|
|||||||
Reference in New Issue
Block a user