Files
Email-Message-Template/new-wishing.html
2026-01-01 16:50:52 +05:45

353 lines
8.9 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Bibhuti Solutions Newsletter</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
background: #f4f4f4;
font-family: "Georgia", serif;
overflow-x: hidden;
}
.newsletter {
max-width: 1100px;
margin: 30px auto;
background: #ffffff;
box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}
/* HEADER */
.header {
text-align: center;
padding: 40px 20px;
}
.header h1 {
font-size: 60px;
color: #A01515;
letter-spacing: 4px;
margin: 20px 0;
}
.meta {
display: flex;
justify-content: center;
gap: 40px;
font-weight: bold;
color: #444;
}
/* HERO */
.hero {
padding: 50px;
}
.hero-container {
display: flex;
align-items: center;
gap: 40px;
flex-wrap: wrap;
}
.hero-image {
flex: 1;
}
.hero-image img {
width: 100%;
height: auto;
border-radius: 12px;
object-fit: cover;
transition: transform 0.6s ease, filter 0.6s ease;
}
.hero-image img:hover {
transform: scale(1.05) rotate(-1deg);
filter: brightness(1.2) saturate(1.3);
cursor: pointer;
}
.hero-text {
flex: 1;
font-size: 18px;
color: #333;
}
.hero-text h2 {
font-size: 36px;
color: #A01515;
margin-bottom: 20px;
}
.hero-text p {
margin-bottom: 15px;
line-height: 1.6;
}
/* GRID */
.content-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 30px;
padding: 50px;
}
.card {
padding: 30px;
border: 2px solid #E4A241;
transition: all 0.4s ease;
}
.card h2 {
color: #bd2727;
margin-bottom: 15px;
}
.card:hover {
transform: translateY(-10px) scale(1.02);
box-shadow: 0 15px 30px rgba(0,0,0,0.2);
}
.highlight {
background: #A01515;
color: #fff;
}
.highlight h2 {
color: #E4A241;
}
/* FEATURE */
.feature {
display: grid;
grid-template-columns: 1fr 1fr;
padding: 50px;
gap: 30px;
}
.feature-image {
position: relative;
overflow: hidden;
border-radius: 12px;
}
.feature-image img {
width: 100%;
height: 260px;
object-fit: cover;
transition: transform 0.6s ease;
}
.feature-image:hover img {
transform: scale(1.1) rotate(-1deg);
}
.overlay {
position: absolute;
inset: 0;
background: rgba(160, 21, 21, 0.75);
color: #fff;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
opacity: 0;
transition: opacity 0.4s ease;
}
.feature-image:hover .overlay {
opacity: 1;
}
.overlay h3 {
font-size: 26px;
}
.feature-text {
display: flex;
align-items: center;
font-size: 18px;
}
/* FOOTER */
.footer {
background: #bd2727;
color: #fff;
text-align: center;
padding: 20px;
border-top-right-radius:20px;
border-top-left-radius:20px;
}
/* RESPONSIVE */
@media (max-width: 768px) {
.hero-container {
flex-direction: column;
}
.hero-text h2 {
font-size: 28px;
}
.hero-text {
text-align: center;
}
.content-grid,
.feature {
grid-template-columns: 1fr;
padding: 30px;
}
}
/* SCROLL ANIMATIONS */
.animate-on-scroll {
opacity: 0;
transform: translateY(30px);
transition: all 0.8s ease-out;
}
.animate-left {
opacity: 0;
transform: translateX(-50px);
transition: all 0.8s ease-out;
}
.animate-right {
opacity: 0;
transform: translateX(50px);
transition: all 0.8s ease-out;
}
.animate-on-scroll.animate,
.animate-left.animate,
.animate-right.animate {
opacity: 1;
transform: translateX(0) translateY(0);
}
</style>
</head>
<body>
<div class="newsletter">
<!-- HEADER -->
<header class="header animate-on-scroll">
<div class="logo">
<img src="logo.png" alt="Bibhuti Solutions">
</div>
<h1>NEW YEAR GREETINGS</h1>
<div class="meta">
<span>01.01.2026 | Thursday</span>
<span>Bibhuti Solutions</span>
</div>
</header>
<!-- HERO SECTION -->
<section class="hero">
<div class="hero-container">
<!-- LEFT IMAGE -->
<div class="hero-image animate-left">
<img src="./image.png" alt="Happy New Year">
</div>
<!-- RIGHT TEXT -->
<div class="hero-text animate-right">
<h2>Building a Brighter Future Together</h2>
<p>
As we step into 2026, let's embrace new opportunities, growth, and
collaboration. At <strong>Bibhuti Solutions</strong>, we are committed
to supporting your journey with innovation and excellence.
</p>
<p>
Wishing you a successful and prosperous New Year filled with achievements
and joy.
</p>
</div>
</div>
</section>
<!-- CONTENT GRID -->
<section class="content-grid">
<div class="card animate-on-scroll">
<h2>A Year of Gratitude</h2>
<p>
As we welcome the New Year, we would like to express our sincere
appreciation for your trust and continued support. Your partnership
has been a key part of our journey and success.
</p>
<p>
We are grateful for the opportunity to work with you and look
forward to achieving new milestones together.
</p>
</div>
<div class="card highlight animate-on-scroll">
<h2>Wishing You Success in 2026</h2>
<p>
May this New Year bring new opportunities, growth, and prosperity
to you and your organization. We remain committed to delivering
innovative and reliable solutions that support your goals.
</p>
<p>
Heres to a year filled with progress, collaboration, and success.
</p>
</div>
</section>
<!-- FEATURE SECTION -->
<section class="feature">
<div class="feature-image animate-left">
<img src="./23.png" alt="Future Growth">
<div class="overlay">
<h3>Building a Brighter Future<br>Together</h3>
</div>
</div>
<div class="feature-text animate-right">
<p>
The New Year represents fresh beginnings and exciting possibilities.
At <strong>Bibhuti Solutions</strong>, we are excited to continue
supporting your journey with dedication, innovation, and excellence.
</p>
</div>
</section>
<!-- FOOTER -->
<footer class="footer animate-on-scroll">
<p>
Warm Regards,<br>
<strong>Team Bibhuti Solutions</strong><br>
Wishing you a Happy, Healthy, and Prosperous New Year! 🎉
</p>
</footer>
</div>
<!-- SCROLL ANIMATION SCRIPT -->
<script>
document.addEventListener("DOMContentLoaded", function() {
const elements = document.querySelectorAll('.animate-on-scroll, .animate-left, .animate-right');
const observer = new IntersectionObserver(entries => {
entries.forEach(entry => {
if(entry.isIntersecting) {
entry.target.classList.add('animate');
observer.unobserve(entry.target); // animate once
}
});
}, { threshold: 0.2 });
elements.forEach(el => observer.observe(el));
});
</script>
</body>
</html>