Worexj's picture
https://orbitpremium.com/
e47a16a verified
class CustomFooter extends HTMLElement {
connectedCallback() {
this.attachShadow({ mode: 'open' });
this.shadowRoot.innerHTML = `
<style>
:host {
display: block;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
footer {
background-color: #1f2937;
border-top: 1px solid #374151;
padding: 4rem 0 2rem;
}
.container {
max-width: 1280px;
margin: 0 auto;
padding: 0 1rem;
}
.footer-content {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 2rem;
margin-bottom: 3rem;
}
.footer-column h3 {
color: #f9fafb;
margin-bottom: 1.5rem;
font-size: 1.125rem;
font-weight: 600;
}
.footer-links {
list-style: none;
}
.footer-links li {
margin-bottom: 0.75rem;
}
.footer-links a {
color: #9ca3af;
text-decoration: none;
transition: color 0.3s ease;
}
.footer-links a:hover {
color: #e5e7eb;
}
.social-links {
display: flex;
gap: 1rem;
margin-top: 1rem;
}
.social-link {
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border-radius: 50%;
background-color: #374151;
color: #9ca3af;
transition: all 0.3s ease;
}
.social-link:hover {
background-color: #4f46e5;
color: white;
transform: translateY(-2px);
}
.copyright {
border-top: 1px solid #374151;
padding-top: 2rem;
text-align: center;
color: #6b7280;
font-size: 0.875rem;
}
@media (max-width: 640px) {
.footer-content {
grid-template-columns: 1fr;
}
}
</style>
<footer>
<div class="container">
<div class="footer-content">
<div class="footer-column">
<h3>OrbitPremium</h3>
<p style="color: #9ca3af; margin-bottom: 1rem;">Premium digital solutions for modern businesses.</p>
<div class="social-links">
<a href="#" class="social-link">
<i data-feather="twitter" class="w-4 h-4"></i>
</a>
<a href="#" class="social-link">
<i data-feather="facebook" class="w-4 h-4"></i>
</a>
<a href="#" class="social-link">
<i data-feather="instagram" class="w-4 h-4"></i>
</a>
<a href="#" class="social-link">
<i data-feather="linkedin" class="w-4 h-4"></i>
</a>
</div>
</div>
<div class="footer-column">
<h3>Product</h3>
<ul class="footer-links">
<li><a href="#">Features</a></li>
<li><a href="#">Pricing</a></li>
<li><a href="#">Templates</a></li>
<li><a href="#">Roadmap</a></li>
<li><a href="#">Changelog</a></li>
</ul>
</div>
<div class="footer-column">
<h3>Resources</h3>
<ul class="footer-links">
<li><a href="#">Documentation</a></li>
<li><a href="#">Tutorials</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">Support</a></li>
<li><a href="#">API Status</a></li>
</ul>
</div>
<div class="footer-column">
<h3>Company</h3>
<ul class="footer-links">
<li><a href="#">About</a></li>
<li><a href="#">Careers</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">Partners</a></li>
<li><a href="#">Press</a></li>
</ul>
</div>
</div>
<div class="copyright">
<p>&copy; 2023 OrbitPremium. All rights reserved.</p>
</div>
</div>
</footer>
`;
// Initialize feather icons in shadow DOM
const featherScript = document.createElement('script');
featherScript.src = 'https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js';
featherScript.onload = () => {
feather.replace();
};
this.shadowRoot.appendChild(featherScript);
}
}
customElements.define('custom-footer', CustomFooter);