156 lines
6.0 KiB
Plaintext
156 lines
6.0 KiB
Plaintext
---
|
|
import { NAVIGATION } from '../site.config';
|
|
import { getLangFromUrl, useTranslations } from '../utils/i18n';
|
|
|
|
const lang = getLangFromUrl(Astro.url);
|
|
const t = await useTranslations(lang);
|
|
---
|
|
|
|
<footer class="bg-secondary-900 text-secondary-100 pt-16 pb-8">
|
|
<div class="container-custom">
|
|
<!-- Main footer content -->
|
|
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8 mb-8">
|
|
<!-- Company info -->
|
|
<div class="lg:col-span-2">
|
|
<!-- Logo -->
|
|
<div class="flex items-center space-x-2 mb-4">
|
|
<div class="h-8 w-8 flex items-center justify-center">
|
|
<img
|
|
src="/images/TIBER365.png"
|
|
alt="Tiber365 Logo"
|
|
class="h-6 w-6 object-contain"
|
|
/>
|
|
</div>
|
|
<span class="font-display font-bold text-xl text-white">Tiber365</span>
|
|
</div>
|
|
|
|
<!-- Description -->
|
|
<p class="text-secondary-300 mb-6 max-w-md leading-relaxed">
|
|
{t('footer.description')}
|
|
</p>
|
|
|
|
<!-- Contact info -->
|
|
<div class="space-y-2">
|
|
<div class="flex items-center text-secondary-300">
|
|
<svg class="h-5 w-5 mr-3 text-primary" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 8l7.89 4.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"/>
|
|
</svg>
|
|
{t('contact.info.email')}
|
|
</div>
|
|
<div class="flex items-center text-secondary-300">
|
|
<svg class="h-5 w-5 mr-3 text-primary" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z"/>
|
|
</svg>
|
|
{t('contact.info.phone')}
|
|
</div>
|
|
<div class="flex items-center text-secondary-300">
|
|
<svg class="h-5 w-5 mr-3 text-primary" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z"/>
|
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 11a3 3 0 11-6 0 3 3 0 016 0z"/>
|
|
</svg>
|
|
{t('contact.info.address')}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Quick Links -->
|
|
<div>
|
|
<h3 class="font-semibold text-white mb-4">Quick Links</h3>
|
|
<ul class="space-y-2">
|
|
{NAVIGATION.filter(item => item.type === 'internal').map((item) => (
|
|
<li>
|
|
<a
|
|
href={item.href}
|
|
class="text-secondary-300 hover:text-primary transition-colors"
|
|
>
|
|
{t(item.label)}
|
|
</a>
|
|
</li>
|
|
))}
|
|
<li>
|
|
<a
|
|
href="/contact"
|
|
class="text-secondary-300 hover:text-primary transition-colors"
|
|
>
|
|
{t('footer.links.contact')}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<!-- External Links -->
|
|
<div>
|
|
<h3 class="font-semibold text-white mb-4">Resources</h3>
|
|
<ul class="space-y-2">
|
|
{NAVIGATION.filter(item => item.type === 'external').map((item) => (
|
|
<li>
|
|
<a
|
|
href={item.href}
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
class="text-secondary-300 hover:text-primary transition-colors inline-flex items-center"
|
|
>
|
|
{t(item.label)}
|
|
<svg class="h-3 w-3 ml-1" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"/>
|
|
</svg>
|
|
</a>
|
|
</li>
|
|
))}
|
|
<li>
|
|
<a
|
|
href="/privacy"
|
|
class="text-secondary-300 hover:text-primary transition-colors"
|
|
>
|
|
{t('footer.links.privacy')}
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a
|
|
href="/terms"
|
|
class="text-secondary-300 hover:text-primary transition-colors"
|
|
>
|
|
{t('footer.links.terms')}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Footer bottom -->
|
|
<div class="border-t border-secondary-800 pt-8">
|
|
<div class="flex flex-col md:flex-row justify-between items-center">
|
|
<!-- Copyright -->
|
|
<p class="text-secondary-400 text-sm">
|
|
{t('footer.copyright')}
|
|
</p>
|
|
|
|
<!-- Social links placeholder -->
|
|
<div class="flex items-center space-x-4 mt-4 md:mt-0">
|
|
<a
|
|
href="https://blog.tiber365.it"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
class="text-secondary-400 hover:text-primary transition-colors"
|
|
aria-label="Blog"
|
|
>
|
|
<svg class="h-5 w-5" fill="currentColor" viewBox="0 0 24 24">
|
|
<path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"/>
|
|
</svg>
|
|
</a>
|
|
<a
|
|
href="https://support.tiber365.it"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
class="text-secondary-400 hover:text-primary transition-colors"
|
|
aria-label="Support Portal"
|
|
>
|
|
<svg class="h-5 w-5" fill="currentColor" viewBox="0 0 24 24">
|
|
<path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/>
|
|
</svg>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</footer> |