Help
RSS
API
Feed
Maltego
Contact
Domain > ddhoster.com
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2018-08-27
43.255.154.38
(
ClassC
)
2026-02-09
103.174.50.208
(
ClassC
)
Port 80
HTTP/1.1 200 OKConnection: Keep-AliveKeep-Alive: timeout5, max100x-powered-by: PHP/8.3.26content-type: text/html; charsetUTF-8transfer-encoding: chunkeddate: Mon, 09 Feb 2026 05:31:44 GMTserver: LiteSpeed !DOCTYPE html>html langen data-themelight>head> meta charsetUTF-8> meta nameviewport contentwidthdevice-width, initial-scale1.0> title>DDHOSTER - Professional Web Hosting Solutions/title> link relicon typeimage/png sizes32x32 hreffavicon-32.png> link relicon typeimage/png sizes64x64 hreffavicon-64.png> link relicon typeimage/png sizes128x128 hreffavicon-128.png> link relapple-touch-icon sizes180x180 hrefapple-touch-icon.png> link relshortcut icon hreffavicon.ico> link hrefhttps://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css relstylesheet> link relstylesheet hrefhttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css> link hrefhttps://fonts.googleapis.com/css2?familyPoppins:wght@300;600&displayswap relstylesheet> !-- Swiper CSS for neon testimonials slider --> link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css /> style> :root { /* Light Theme Colors - Updated to match DDialer aesthetic */ --primary: #0ef; --primary-dark: #00b3b3; --primary-light: #66ffff; --secondary: #1a1a1a; --accent: #00cc99; --text-primary: #ffffff; --text-secondary: #cccccc; --text-light: #a0aec0; --bg-primary: #0a0a23; --bg-secondary: #0f0f2d; --bg-tertiary: #1a1a3e; --border: rgba(0, 238, 255, 0.3); --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3); --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.3); --transition: all 0.3s ease; } data-themelight { --primary: #0066cc; --primary-dark: #004d99; --primary-light: #3399ff; --secondary: #1a1a1a; --accent: #00a67e; --text-primary: #1a1a1a; --text-secondary: #4a5568; --text-light: #718096; --bg-primary: #ffffff; --bg-secondary: #f7fafc; --bg-tertiary: #edf2f7; --border: #e2e8f0; --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1); } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: Poppins, sans-serif; background-color: var(--bg-primary); color: var(--text-primary); line-height: 1.6; transition: var(--transition); overflow-x: hidden; }/* ------------------ *//* Animated DDhoster Logo for Navbar - FIXED FOR ALL DEVICES */.navbar-logo-container { display: flex; align-items: center; gap: 6px; text-decoration: none; position: relative; height: 40px; /* Fixed height to match original navbar */ margin-right: 50px;}.navbar-dd-letters { display: flex; position: relative; height: 35px; /* Control the height */}.navbar-dd-letter { width: 28px; /* Reduced width */ height: 35px; /* Reduced height to fit navbar */ background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); border-radius: 6px; margin: 0 2px; display: flex; justify-content: center; align-items: center; font-size: 1.4rem; /* Smaller font */ font-weight: 900; color: white; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); box-shadow: 0 3px 8px rgba(14, 165, 233, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.2); position: relative; overflow: hidden; transition: all 0.3s ease;}.navbar-dd-letter::before { content: ; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(135deg, transparent 30%, rgba(255, 255, 255, 0.15) 50%, transparent 70%); animation: navbarShine 4s infinite linear; z-index: 1;}.navbar-dd-letter span { position: relative; z-index: 2; line-height: 1; margin-top: -2px; /* Fine tuning */}.navbar-dd-letter:first-child { transform: rotate(-2deg); animation: navbarFloatLeft 5s ease-in-out infinite;}.navbar-dd-letter:last-child { transform: rotate(2deg); animation: navbarFloatRight 5s ease-in-out infinite 0.5s;}.navbar-hoster-text { font-size: 1.4rem; /* Match the DD letters height */ font-weight: 800; background: linear-gradient(90deg, #22d3ee, #06b6d4); -webkit-background-clip: text; background-clip: text; color: transparent; text-shadow: 0 1px 3px rgba(34, 211, 238, 0.3); letter-spacing: 0.5px; height: 35px; display: flex; align-items: center; position: relative; animation: navbarTextGlow 3s infinite ease-in-out;}.navbar-hoster-text::after { content: ; position: absolute; bottom: 0; left: 0; width: 100%; height: 1.5px; background: linear-gradient(90deg, #22d3ee, #06b6d4); border-radius: 1px; animation: navbarUnderlinePulse 3s infinite ease-in-out;}/* Navbar server icon - smaller */.navbar-server-icon { position: relative; width: 24px; height: 32px; margin-left: 5px; margin-top: -2px; /* Fine tuning */ display: block !important; /* FORCE SHOW ON ALL DEVICES */}.navbar-server-body { position: absolute; width: 100%; height: 100%; background: linear-gradient(135deg, #475569 0%, #334155 100%); border-radius: 4px; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.08); overflow: hidden; transition: all 0.3s ease;}.navbar-server-body::before { content: ; position: absolute; top: 0; left: 0; right: 0; height: 8px; background: rgba(0, 0, 0, 0.15); border-radius: 4px 4px 0 0;}.navbar-server-slots { position: absolute; top: 10px; left: 4px; right: 4px; bottom: 6px; display: flex; flex-direction: column; gap: 2px;}.navbar-server-slot { height: 3px; background: rgba(0, 0, 0, 0.25); border-radius: 1px; position: relative; overflow: hidden;}.navbar-server-slot::after { content: ; position: absolute; top: 0; left: 0; height: 100%; width: 40%; background: linear-gradient(90deg, #0ea5e9, #22d3ee); animation: navbarSlotLoad 2.5s infinite ease-in-out;}.navbar-server-leds { position: absolute; bottom: 6px; right: 4px; display: flex; gap: 1.5px;}.navbar-server-led { width: 2.5px; height: 2.5px; border-radius: 50%; background: #0ea5e9; box-shadow: 0 0 3px #0ea5e9; animation: navbarLedBlink 1.5s infinite;}.navbar-server-led:nth-child(2) { animation-delay: 0.5s; background: #22d3ee; box-shadow: 0 0 3px #22d3ee;}.navbar-server-led:nth-child(3) { animation-delay: 1s; background: #3b82f6; box-shadow: 0 0 3px #3b82f6;}/* Navbar data connections */.navbar-data-connections { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 1; pointer-events: none;}/* Animations for navbar logo - SUBTLE for navbar */@keyframes navbarShine { 0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); } 100% { transform: translateX(100%) translateY(100%) rotate(45deg); }}@keyframes navbarFloatLeft { 0%, 100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(-2px) rotate(-3deg); }}@keyframes navbarFloatRight { 0%, 100% { transform: translateY(0) rotate(2deg); } 50% { transform: translateY(-2px) rotate(3deg); }}@keyframes navbarTextGlow { 0%, 100% { filter: drop-shadow(0 1px 2px rgba(34, 211, 238, 0.2)); } 50% { filter: drop-shadow(0 1px 3px rgba(34, 211, 238, 0.4)); }}@keyframes navbarUnderlinePulse { 0%, 100% { opacity: 0.6; width: 100%; } 50% { opacity: 0.9; width: 102%; }}@keyframes navbarSlotLoad { 0% { left: -40%; } 100% { left: 140%; }}@keyframes navbarLedBlink { 0%, 100% { opacity: 0.2; } 50% { opacity: 0.8; }}/* Color change animations for navbar - subtle */@keyframes navbarColorChangeDD { 0% { background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); box-shadow: 0 3px 8px rgba(14, 165, 233, 0.3); } 50% { background: linear-gradient(135deg, #22d3ee 0%, #06b6d4 100%); box-shadow: 0 3px 8px rgba(34, 211, 238, 0.4); } 100% { background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); box-shadow: 0 3px 8px rgba(14, 165, 233, 0.3); }}@keyframes navbarColorChangeServer { 0% { background: linear-gradient(135deg, #475569 0%, #334155 100%); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); } 50% { background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); box-shadow: 0 2px 6px rgba(14, 165, 233, 0.25); } 100% { background: linear-gradient(135deg, #475569 0%, #334155 100%); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); }}/* Responsive adjustments for navbar logo - FIXED FOR MOBILE */@media (max-width: 992px) { .navbar-logo-container { height: 38px; } .navbar-dd-letter { width: 26px; height: 32px; font-size: 1.3rem; } .navbar-hoster-text { font-size: 1.3rem; height: 32px; } .navbar-server-icon { width: 22px; height: 30px; margin-left: 4px; }}@media (max-width: 768px) { .navbar-logo-container { height: 36px; gap: 5px; } .navbar-dd-letter { width: 24px; height: 30px; font-size: 1.2rem; } .navbar-hoster-text { font-size: 1.2rem; height: 30px; } .navbar-server-icon { width: 20px; height: 28px; margin-left: 4px; }}/* Tablet portrait and large phones */@media (max-width: 576px) { .navbar-logo-container { height: 34px; gap: 4px; } .navbar-dd-letter { width: 22px; height: 28px; font-size: 1.1rem; margin: 0 1px; } .navbar-hoster-text { font-size: 1.1rem; height: 28px; letter-spacing: 0.3px; /* KEEP VISIBLE on mobile */ } .navbar-server-icon { width: 18px; height: 26px; margin-left: 3px; /* KEEP VISIBLE on mobile */ } .navbar-server-slots { top: 8px; left: 3px; right: 3px; bottom: 5px; gap: 1.5px; } .navbar-server-slot { height: 2.5px; } .navbar-server-leds { bottom: 5px; right: 3px; gap: 1px; } .navbar-server-led { width: 2px; height: 2px; }}/* Small phones */@media (max-width: 480px) { .navbar-logo-container { height: 32px; gap: 3px; } .navbar-dd-letter { width: 20px; height: 26px; font-size: 1rem; margin: 0 1px; } .navbar-hoster-text { font-size: 1rem; height: 26px; /* STILL VISIBLE on very small screens */ } .navbar-server-icon { width: 16px; height: 24px; margin-left: 2px; /* STILL VISIBLE on very small screens */ } .navbar-server-slots { top: 7px; left: 2px; right: 2px; bottom: 4px; gap: 1px; } .navbar-server-slot { height: 2px; } .navbar-server-leds { bottom: 4px; right: 2px; } .navbar-server-led { width: 1.5px; height: 1.5px; }}/* Extra small phones */@media (max-width: 375px) { .navbar-logo-container { height: 30px; gap: 2px; } .navbar-dd-letter { width: 18px; height: 24px; font-size: 0.9rem; } .navbar-hoster-text { font-size: 0.9rem; height: 24px; /* REDUCED BUT STILL VISIBLE */ } .navbar-server-icon { width: 14px; height: 22px; margin-left: 2px; /* REDUCED BUT STILL VISIBLE */ } /* Hide underline on very small screens to save space */ .navbar-hoster-text::after { height: 1px; }}/* Ensure navbar height doesnt change */.navbar { min-height: 56px; /* Match your original navbar height */}.navbar-brand { padding: 0; margin: 0; line-height: 1; display: flex; align-items: center; height: 40px; /* Match the logo container height */}/* Navbar toggler button adjustment for better alignment */.navbar-toggler { padding: 4px 8px; font-size: 1.1rem;}/* ----------------------------------- */ .navbar { background-color: rgba(10, 10, 35, 0.9); box-shadow: var(--shadow); padding: 1rem 0; transition: var(--transition); backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); } .navbar-scrolled { padding: 0.75rem 0; background-color: rgba(10, 10, 35, 0.95) !important; } data-themelight .navbar { background-color: rgba(255, 255, 255, 0.9); } data-themelight .navbar-scrolled { background-color: rgba(255, 255, 255, 0.95) !important; } .navbar-brand { font-weight: 700; font-size: 1.5rem; color: var(--primary) !important; display: flex; align-items: center; text-shadow: 0 0 10px var(--primary); transition: var(--transition); } /* Cyan hamburger for mobile */ .navbar-toggler { border-color: #00e5ff; box-shadow: none; } .navbar-toggler:focus { box-shadow: 0 0 0 0.15rem rgba(0, 229, 255, 0.35); } .navbar-toggler-icon { background-image: url(data:image/svg+xml;charsetUTF-8,%3Csvg xmlnshttp://www.w3.org/2000/svg viewBox0 0 32 32%3E%3Cpath stroke%2300e5ff stroke-width3 stroke-linecapround dM5 8h22M5 16h22M5 24h22/%3E%3C/svg%3E); } .navbar-brand:hover { text-shadow: 0 0 15px var(--primary); } .navbar-brand i { margin-right: 0.5rem; color: var(--primary); transition: var(--transition); animation: spin 8s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .nav-link { color: var(--text-secondary) !important; font-weight: 500; padding: 0.5rem 1rem !important; transition: var(--transition); border-radius: 6px; position: relative; } .nav-link:not(.dropdown-toggle)::after { content: ; position: absolute; bottom: 0; left: 50%; width: 0; height: 2px; background-color: var(--primary); transition: var(--transition); transform: translateX(-50%); box-shadow: 0 0 5px var(--primary); } .nav-link.dropdown-toggle::before { content: ; position: absolute; bottom: 0; left: 50%; width: 0; height: 2px; background-color: var(--primary); transition: var(--transition); transform: translateX(-50%); box-shadow: 0 0 5px var(--primary); } .nav-link:hover, .nav-link.active { color: var(--primary) !important; text-shadow: 0 0 5px var(--primary); } .nav-link:not(.dropdown-toggle):hover::after, .nav-link:not(.dropdown-toggle).active::after { width: 80%; } .nav-link.dropdown-toggle:hover::before, .nav-link.dropdown-toggle.show::before, .nav-link.dropdown-toggle.active::before { width: 80%; } .navbar .dropdown-menu { background-color: var(--bg-primary); border: 1px solid var(--border); box-shadow: var(--shadow); border-radius: 12px; padding: 0.35rem; } data-themelight .navbar .dropdown-menu { background-color: #ffffff; } .navbar .dropdown-item { color: var(--text-secondary); border-radius: 8px; padding: 0.45rem 0.85rem; transition: var(--transition); } .navbar .dropdown-item:hover, .navbar .dropdown-item:focus { color: var(--primary); background-color: rgba(0, 102, 204, 0.08); } @media (min-width: 992px) { .navbar .dropdown:hover .dropdown-menu { display: block; margin-top: 0; } } .theme-toggle { background: none; border: none; color: var(--text-secondary); font-size: 1.2rem; cursor: pointer; transition: var(--transition); padding: 0.5rem; border-radius: 50%; } .theme-toggle:hover { color: var(--primary); background-color: rgba(0, 238, 255, 0.1); text-shadow: 0 0 5px var(--primary); } /* Hero Section - Updated to match DDialer */ .hero-section { background: linear-gradient(135deg, var(--bg-primary) 0%, var(--bg-secondary) 100%); padding: 6rem 0; position: relative; overflow: hidden; } .hero-section::before { content: ; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient(circle at 20% 80%, rgba(0, 238, 255, 0.1) 0%, transparent 50%), radial-gradient(circle at 80% 20%, rgba(0, 166, 126, 0.1) 0%, transparent 50%); z-index: 0; animation: subtleFloat 20s ease-in-out infinite; } @keyframes subtleFloat { 0%, 100% { transform: translate(0, 0) scale(1); } 33% { transform: translate(1%, 1%) scale(1.02); } 66% { transform: translate(-1%, -1%) scale(0.98); } } .hero-content { position: relative; z-index: 1; } .hero-title { font-size: 3rem; font-weight: 800; margin-bottom: 1.5rem; color: var(--text-primary); opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease forwards; text-shadow: 0 0 10px rgba(255, 255, 255, 0.5); } .hero-subtitle { font-size: 1.25rem; color: var(--text-secondary); margin-bottom: 2rem; max-width: 600px; opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease 0.2s forwards; } .hero-badge { display: inline-block; background-color: var(--accent); color: white; padding: 0.5rem 1rem; border-radius: 50px; font-size: 0.875rem; font-weight: 600; margin-bottom: 1.5rem; opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease 0.1s forwards; box-shadow: 0 0 10px var(--accent); } .hero-cta { opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease 0.3s forwards; } .server-visualization { position: relative; height: 300px; display: flex; align-items: center; justify-content: center; opacity: 0; transform: translateX(50px); animation: slideInRight 1s ease 0.5s forwards; } .server-rack { display: flex; gap: 15px; } .server-blade { width: 60px; height: 200px; background: rgba(255, 255, 255, 0.05); border: 1px solid var(--border); border-radius: 8px; position: relative; overflow: hidden; box-shadow: var(--shadow); animation: serverPulse 3s ease-in-out infinite; } .server-blade:nth-child(1) { animation-delay: 0s; } .server-blade:nth-child(2) { animation-delay: 0.5s; } .server-blade:nth-child(3) { animation-delay: 1s; } .server-blade:nth-child(4) { animation-delay: 1.5s; } @keyframes serverPulse { 0%, 100% { transform: translateY(0); box-shadow: 0 0 5px rgba(0, 238, 255, 0.3); } 50% { transform: translateY(-10px); box-shadow: 0 0 20px rgba(0, 238, 255, 0.6); } } .server-blade::before { content: ; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--primary); animation: loadingBar 3s ease-in-out infinite; box-shadow: 0 0 5px var(--primary); } @keyframes loadingBar { 0%, 100% { transform: translateX(-100%); } 50% { transform: translateX(100%); } } .server-light { position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); width: 8px; height: 8px; background: var(--accent); border-radius: 50%; box-shadow: 0 0 8px var(--accent); animation: statusPulse 2s ease-in-out infinite; } @keyframes statusPulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.7; } } /* Animations */ @keyframes fadeInUp { to { opacity: 1; transform: translateY(0); } } @keyframes slideInRight { to { opacity: 1; transform: translateX(0); } } @keyframes slideInLeft { to { opacity: 1; transform: translateX(0); } } /* Domain Search */ .domain-search-section { background-color: var(--bg-secondary); padding: 4rem 0; margin-top: 70px; } .domain-search-card { background: rgba(255, 255, 255, 0.05); border: 1.5px solid var(--border); border-radius: 16px; box-shadow: 0 0 20px rgba(0, 238, 255, 0.2); padding: 2rem; opacity: 0; transform: translateY(30px); transition: var(--transition); backdrop-filter: blur(10px); } .domain-search-card.animate { animation: fadeInUp 0.8s ease forwards; } .domain-search-card:hover { box-shadow: 0 0 30px rgba(0, 238, 255, 0.4); } /* Pricing Section - Updated to match DDialer */ .pricing-section { padding: 5rem 0; background-color: var(--bg-primary); } .pricing-section .row { align-items: stretch; } .pricing-section .row > div { display: flex; } .pricing-card { width: 100%; } .pricing-toggle { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-bottom: 3rem; } .toggle-label { font-weight: 600; color: var(--text-secondary); transition: var(--transition); } .toggle-label.active { color: var(--primary); text-shadow: 0 0 5px var(--primary); } .toggle-switch { position: relative; width: 60px; height: 30px; background-color: var(--bg-tertiary); border-radius: 50px; cursor: pointer; transition: var(--transition); border: 1px solid var(--border); } .toggle-switch::before { content: ; position: absolute; top: 3px; left: 3px; width: 24px; height: 24px; background-color: var(--bg-primary); border-radius: 50%; transition: var(--transition); box-shadow: var(--shadow); } .toggle-switch.active { background-color: var(--primary); box-shadow: 0 0 10px var(--primary); } .toggle-switch.active::before { transform: translateX(30px); } .pricing-card { background: rgba(255, 255, 255, 0.05); border: 1.5px solid var(--border); border-radius: 16px; box-shadow: 0 0 10px rgba(0, 238, 255, 0.1); transition: var(--transition); overflow: hidden; height: 100%; opacity: 0; transform: translateY(30px); position: relative; backdrop-filter: blur(10px); } .pricing-card::before { content: ; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: linear-gradient(90deg, var(--primary), var(--primary-light)); } .pricing-card.animate { animation: fadeInUp 0.8s ease forwards; } .pricing-card:nth-child(1) { animation-delay: 0.1s; } .pricing-card:nth-child(2) { animation-delay: 0.2s; } .pricing-card:nth-child(3) { animation-delay: 0.3s; } .pricing-card:nth-child(4) { animation-delay: 0.4s; } .pricing-card:hover { transform: translateY(-10px); box-shadow: 0 0 20px rgba(0, 238, 255, 0.4); } .pricing-card.featured { border: 2px solid var(--primary); position: relative; z-index: 2; background: radial-gradient(circle at 50% 0%, rgba(0, 238, 255, 0.2) 0%, rgba(255, 255, 255, 0.03) 55%), rgba(255, 255, 255, 0.06); box-shadow: 0 0 25px rgba(0, 238, 255, 0.35), 0 0 60px rgba(0, 238, 255, 0.15); } .pricing-card.featured::after { content: MOST POPULAR; position: absolute; top: 0; right: 0; background-color: var(--primary); color: var(--bg-primary); padding: 0.5rem 1rem; font-size: 0.75rem; font-weight: 600; border-bottom-left-radius: 8px; text-shadow: none; } .pricing-card.featured.animate { animation: fadeInUpFeatured 0.8s ease forwards; } .pricing-card.featured:hover { transform: translateY(-10px) scale(1.04); box-shadow: 0 0 30px rgba(0, 238, 255, 0.45), 0 0 70px rgba(0, 238, 255, 0.2); } @keyframes fadeInUpFeatured { from { opacity: 0; transform: translateY(30px) scale(1); } to { opacity: 1; transform: translateY(0) scale(1.04); } } .pricing-header { padding: 2rem 1.5rem 1.5rem; text-align: center; border-bottom: 1px solid var(--border); } .pricing-title { font-size: 1.25rem; font-weight: 700; margin-bottom: 1rem; color: var(--primary); text-shadow: 0 0 5px var(--primary); } .pricing-price { font-size: 2.5rem; font-weight: 800; color: var(--primary); line-height: 1; text-shadow: 0 0 5px var(--primary); } .pricing-period { color: var(--text-light); font-size: 0.875rem; } .pricing-features { padding: 1.5rem; } .pricing-features ul { list-style: none; padding: 0; } .pricing-features li { padding: 0.5rem 0; color: var(--text-secondary); display: flex; align-items: center; } .pricing-features li i { color: var(--accent); margin-right: 0.75rem; font-size: 0.875rem; } .pricing-footer { padding: 1.5rem; text-align: center; } .btn-featured { background: linear-gradient(90deg, var(--primary-light), var(--primary)); border-color: var(--primary-light); color: #ffffff; box-shadow: 0 8px 20px rgba(0, 238, 255, 0.25); } .btn-featured:hover { background: linear-gradient(90deg, #7ffcff, var(--primary-light)); border-color: #7ffcff; color: #ffffff; box-shadow: 0 10px 26px rgba(0, 238, 255, 0.35); } .pricing-taglines { margin: -0.5rem 0 0.75rem; } .pricing-taglines span { display: block; font-size: 0.9rem; font-weight: 600; color: var(--text-secondary); } /* Features Section - Updated to match DDialer */ .features-section { padding: 5rem 0; background-color: var(--bg-secondary); } .feature-card { background: rgba(255, 255, 255, 0.05); border: 1.5px solid var(--border); border-radius: 16px; padding: 2rem; box-shadow: 0 0 10px rgba(0, 238, 255, 0.1); transition: var(--transition); height: 100%; text-align: center; opacity: 0; transform: translateY(30px); backdrop-filter: blur(10px); } .feature-card.animate { animation: fadeInUp 0.8s ease forwards; } .feature-card:nth-child(1) { animation-delay: 0.1s; } .feature-card:nth-child(2) { animation-delay: 0.2s; } .feature-card:nth-child(3) { animation-delay: 0.3s; } .feature-card:nth-child(4) { animation-delay: 0.4s; } .feature-card:nth-child(5) { animation-delay: 0.5s; } .feature-card:nth-child(6) { animation-delay: 0.6s; } .feature-card:hover { transform: translateY(-10px); box-shadow: 0 0 20px rgba(0, 238, 255, 0.4); } .feature-icon { width: 70px; height: 70px; margin: 0 auto 1.5rem; background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%); border-radius: 12px; display: flex; align-items: center; justify-content: center; color: var(--bg-primary); font-size: 1.75rem; transition: var(--transition); box-shadow: 0 0 10px var(--primary); } .feature-card:hover .feature-icon { transform: scale(1.1) rotate(5deg); box-shadow: 0 0 15px var(--primary); } .feature-title { font-size: 1.25rem; font-weight: 700; margin-bottom: 1rem; color: var(--primary); text-shadow: 0 0 5px var(--primary); } .feature-description { color: var(--text-secondary); } /* Neon Testimonials (DDialer-style balanced slider) */ .neon-testimonials { padding: 5rem 0; background: radial-gradient(circle at 10% 20%, rgba(0, 204, 153, 0.10), transparent 30%), radial-gradient(circle at 90% 80%, rgba(0, 204, 153, 0.08), transparent 30%), var(--bg-primary); position: relative; overflow: hidden; } .neon-testimonials .section-title { margin-bottom: 1.5rem; color: var(--accent); text-shadow: 0 0 12px var(--accent); } .neon-testimonials .swiper-container { width: 100%; max-width: 1400px; margin: 0 auto; padding: 2rem 0 5rem 0; position: relative; } .neon-testimonials .swiper-wrapper { align-items: center; transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); } .neon-testimonials .swiper-slide { display: flex; justify-content: center; align-items: center; width: auto; transition: all 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .neon-testimonials .testimonial-box { background: rgba(255, 255, 255, 0.05); border: 1.5px solid var(--accent); border-radius: 18px; padding: 2rem 1.75rem; box-shadow: 0 0 25px rgba(0, 204, 153, 0.6); text-align: center; width: 320px; height: 320px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; backdrop-filter: blur(14px); transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .neon-testimonials .swiper-slide-active .testimonial-box { transform: scale(1.08); box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3), 0 0 0 3px var(--accent); border-color: var(--accent); z-index: 20; } .neon-testimonials .swiper-slide-prev .testimonial-box, .neon-testimonials .swiper-slide-next .testimonial-box { transform: scale(0.95); opacity: 0.85; z-index: 10; } .neon-testimonials .swiper-slide:not(.swiper-slide-active):not(.swiper-slide-prev):not(.swiper-slide-next) .testimonial-box { transform: scale(0.85); opacity: 0.6; z-index: 1; } .neon-testimonials .testimonial-box img { width: 80px; height: 80px; border-radius: 50%; border: 2px solid var(--accent); object-fit: cover; margin-bottom: 1rem; box-shadow: 0 0 15px rgba(0, 204, 153, 0.9); } .neon-testimonials .testimonial-box p { color: var(--text-secondary); font-style: italic; margin-bottom: 0.75rem; } .neon-testimonials .testimonial-box h4 { color: var(--text-primary); margin: 0; font-weight: 600; } .neon-testimonials .swiper-pagination { bottom: 10px !important; } .neon-testimonials .swiper-pagination-bullet { background: var(--accent); opacity: 0.4; } .neon-testimonials .swiper-pagination-bullet-active { opacity: 1; box-shadow: 0 0 10px var(--accent); } /* Footer - Updated to match DDialer */ footer { background-color: #0a0a1a; color: white; padding: 4rem 0 2rem; position: relative; border-top: 1px solid var(--border); } footer::before { content: ; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%); } .footer-logo { display: inline-flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; color: var(--primary); text-decoration: none; } .footer-logo-img { height: 48px; width: auto; object-fit: contain; filter: drop-shadow(0 0 10px rgba(0, 238, 255, 0.4)); } .footer-logo-text { font-size: 1.5rem; font-weight: 700; color: var(--primary); text-shadow: 0 0 10px var(--primary); } .footer-description { color: #94a3b8; margin-bottom: 1.5rem; } .footer-heading { color: var(--primary); font-size: 1.125rem; font-weight: 600; margin-bottom: 1.5rem; position: relative; display: inline-block; text-shadow: 0 0 5px var(--primary); } .footer-heading::after { content: ; position: absolute; bottom: -8px; left: 0; width: 40px; height: 2px; background-color: var(--primary); box-shadow: 0 0 5px var(--primary); } .footer-links { list-style: none; padding: 0; } .footer-links li { margin-bottom: 0.75rem; } .footer-links a { color: #94a3b8; text-decoration: none; transition: var(--transition); position: relative; display: inline-block; } .footer-links a::after { content: ; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background-color: var(--primary); transition: var(--transition); box-shadow: 0 0 5px var(--primary); } .footer-links a:hover { color: var(--primary); transform: translateX(5px); text-shadow: 0 0 5px var(--primary); } .footer-links a:hover::after { width: 100%; } .footer-contact { list-style: none; padding: 0; margin: 0; } .footer-contact li { display: flex; gap: 0.75rem; color: #94a3b8; margin-bottom: 1rem; } .footer-contact i { color: var(--primary); font-size: 1.1rem; padding-top: 0.2rem; } .footer-contact a { color: #94a3b8; text-decoration: none; line-height: 1.5; } .footer-contact-link { display: flex; align-items: flex-start; gap: 0.75rem; color: #94a3b8; text-decoration: none; line-height: 1.5; } .footer-contact a:hover { color: var(--primary); text-shadow: 0 0 5px var(--primary); } .social-links { display: flex; gap: 1rem; margin-top: 1.5rem; } .social-links a { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; background-color: rgba(255, 255, 255, 0.1); border-radius: 8px; color: white; transition: var(--transition); position: relative; overflow: hidden; border: 1px solid var(--border); } .social-links a::before { content: ; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: left 0.5s; } .social-links a:hover::before { left: 100%; } .social-links a:hover { background-color: var(--primary); transform: translateY(-3px); box-shadow: 0 0 10px var(--primary); } .footer-bottom { border-top: 1px solid #334155; padding-top: 2rem; margin-top: 3rem; color: #94a3b8; font-size: 0.875rem; } /* Buttons - Updated to match DDialer */ .btn-primary { background: rgba(0, 238, 255, 0.1); border: 1.5px solid var(--primary); color: var(--primary); padding: 0.75rem 1.5rem; border-radius: 25px; font-weight: 600; transition: var(--transition); backdrop-filter: blur(10px); box-shadow: 0 0 15px rgba(0, 238, 255, 0.3); } .btn-primary:hover { background: rgba(0, 238, 255, 0.2); box-shadow: 0 0 20px rgba(0, 238, 255, 0.5); transform: translateY(-2px); color: var(--primary); } .btn-outline-primary { background: transparent; border: 1.5px solid var(--primary); color: var(--primary); padding: 0.75rem 1.5rem; border-radius: 25px; font-weight: 600; transition: var(--transition); backdrop-filter: blur(10px); } .btn-outline-primary:hover { background: rgba(0, 238, 255, 0.1); box-shadow: 0 0 15px rgba(0, 238, 255, 0.3); transform: translateY(-2px); color: var(--primary); } .btn-signup { padding: 0.85rem 1.8rem; font-size: 1.02rem; } /* Form Elements - Updated to match DDialer */ .form-control, .form-select { background: rgba(255, 255, 255, 0.05); border: 1px solid var(--border); color: var(--text-primary); border-radius: 8px; padding: 0.75rem 1rem; transition: var(--transition); backdrop-filter: blur(10px); } .form-control:focus, .form-select:focus { background: rgba(255, 255, 255, 0.08); border-color: var(--primary); box-shadow: 0 0 0 0.25rem rgba(0, 238, 255, 0.25); color: white; } .form-control::placeholder { color: var(--text-light); } /* FAQ Section */ .faq-section { padding: 5rem 0; background: radial-gradient(circle at 10% 20%, rgba(0, 238, 255, 0.04), transparent 25%), radial-gradient(circle at 90% 10%, rgba(255, 255, 255, 0.03), transparent 20%), rgba(8, 10, 26, 0.9); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); } .faq-header { max-width: 720px; margin: 0 auto 2.5rem; text-align: center; } .faq-kicker { display: inline-block; padding: 0.25rem 0.75rem; border-radius: 999px; background: rgba(0, 238, 255, 0.08); border: 1px solid var(--primary); color: var(--primary); font-size: 0.85rem; letter-spacing: 0.5px; text-transform: uppercase; margin-bottom: 0.75rem; } .faq-wrapper { max-width: 900px; margin: 0 auto; } .faq-item { border: 1px solid var(--border); background: rgba(255, 255, 255, 0.02); border-radius: 12px; padding: 1rem 1.25rem; margin-bottom: 1rem; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25); } .faq-question { display: flex; align-items: center; justify-content: space-between; cursor: pointer; font-weight: 600; font-size: 1rem; color: var(--text-primary); outline: none; } .faq-question-text { margin-right: 10px; } .faq-question i { transition: transform 0.3s ease, color 0.3s ease; color: var(--primary); } .faq-questionaria-expandedtrue i { transform: rotate(45deg); color: var(--accent); } .faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.35s ease; font-size: 0.95rem; color: #cbd5e1; } .faq-answer p { margin-top: 10px; line-height: 1.5; } .faq-answer.show { /* height set via JS */ } .faq-more { display: none; } .faq-more.is-open { display: block; } .faq-toggle-wrap { text-align: center; margin-top: 1rem; } .faq-show-more { min-width: 160px; } .faq-cta { margin-top: 2.5rem; text-align: center; padding: 1.75rem 1.5rem; border: 1px solid var(--border); border-radius: 16px; background: rgba(255, 255, 255, 0.03); box-shadow: 0 12px 34px rgba(0, 0, 0, 0.25); backdrop-filter: blur(10px); } .faq-cta-title { font-size: 1.4rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--text-primary); } .faq-cta-text { color: var(--text-secondary); margin-bottom: 1.25rem; } data-themelight .faq-cta { background: #ffffff; box-shadow: var(--shadow-lg); } /* Chat Support Widget */ .chat-widget { position: fixed; inset: 0; z-index: 9999; pointer-events: none; } .chat-widget.is-open { pointer-events: auto; } .chat-overlay { position: absolute; inset: 0; background: rgba(5, 8, 20, 0.55); opacity: 0; transition: var(--transition); } .chat-widget.is-open .chat-overlay { opacity: 1; } .chat-popup { position: absolute; right: 24px; bottom: 90px; width: 360px; max-width: calc(100vw - 32px); background: var(--bg-primary); border: 1px solid var(--border); border-radius: 18px; overflow: hidden; box-shadow: 0 25px 60px rgba(0, 0, 0, 0.35); opacity: 0; transform: translateY(18px) scale(0.98); transition: var(--transition); } .chat-widget.is-open .chat-popup { opacity: 1; transform: translateY(0) scale(1); } .chat-header { display: flex; align-items: center; justify-content: space-between; padding: 1rem 1.25rem; background: linear-gradient(135deg, rgba(0, 102, 204, 0.25), rgba(0, 166, 126, 0.2)); border-bottom: 1px solid var(--border); } .chat-header h4 { margin: 0; font-size: 1.05rem; font-weight: 700; color: var(--text-primary); } .chat-status { display: inline-flex; align-items: center; gap: 6px; font-size: 0.85rem; color: var(--text-secondary); } .chat-status::before { content: ; width: 8px; height: 8px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 6px rgba(34, 197, 94, 0.6); } .chat-close { background: transparent; border: none; color: var(--text-primary); font-size: 1rem; padding: 0.25rem; line-height: 1; } .chat-body { padding: 1rem 1.25rem 1.25rem; background: var(--bg-secondary); } .chat-preform { display: flex; flex-direction: column; gap: 0.9rem; } .chat-preform-title { font-size: 1rem; font-weight: 600; color: var(--text-primary); } .chat-preform-note { font-size: 0.85rem; color: var(--text-light); } .chat-inputs { display: flex; flex-direction: column; gap: 0.75rem; } .chat-session { display: none; } .chat-widget.is-ready .chat-preform { display: none; } .chat-widget.is-ready .chat-session { display: block; } .chat-messages { display: flex; flex-direction: column; gap: 0.75rem; max-height: 220px; overflow-y: auto; padding-right: 4px; margin-bottom: 1rem; } .chat-message { padding: 0.75rem 0.9rem; border-radius: 12px; font-size: 0.95rem; line-height: 1.4; } .chat-message--bot { background: rgba(0, 166, 126, 0.12); border: 1px solid rgba(0, 166, 126, 0.35); color: var(--text-secondary); } .chat-message--user { align-self: flex-end; background: rgba(0, 102, 204, 0.18); border: 1px solid rgba(0, 102, 204, 0.35); color: var(--text-primary); } .chat-form .form-control { margin-bottom: 0.75rem; } .chat-form textarea { resize: none; } .chat-input-row { display: flex; align-items: flex-start; gap: 0.6rem; margin-bottom: 0.75rem; } .chat-attach-btn { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; border: 1px solid rgba(34, 211, 238, 0.5); background: rgba(14, 165, 233, 0.12); color: #22d3ee; transition: var(--transition); flex-shrink: 0; } .chat-attach-btn:hover { background: rgba(14, 165, 233, 0.2); color: #e9fdff; transform: translateY(-1px); } .chat-attach-preview { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 0.75rem; } .chat-attach-chip { display: inline-flex; align-items: center; gap: 6px; padding: 0.35rem 0.6rem; border-radius: 999px; background: rgba(0, 102, 204, 0.18); border: 1px solid rgba(0, 102, 204, 0.35); color: var(--text-secondary); font-size: 0.8rem; } .chat-attach-chip i { font-size: 0.75rem; } .chat-message-files { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.5rem; font-size: 0.8rem; color: var(--text-secondary); } .chat-message-files span { padding: 0.25rem 0.45rem; border-radius: 8px; border: 1px solid rgba(0, 166, 126, 0.35); background: rgba(0, 166, 126, 0.12); } .chat-attachments { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.6rem; } .chat-attachment-thumb { width: 76px; height: 76px; border-radius: 10px; object-fit: cover; cursor: pointer; border: 1px solid var(--border); box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18); transition: transform 0.2s ease, border-color 0.2s ease; } .chat-attachment-thumb:hover { transform: scale(1.04); border-color: var(--primary); } .chat-file-link { display: inline-flex; align-items: center; gap: 6px; padding: 0.35rem 0.6rem; border-radius: 10px; border: 1px solid rgba(0, 102, 204, 0.35); background: rgba(0, 102, 204, 0.15); color: var(--text-secondary); text-decoration: none; font-size: 0.8rem; } .chat-file-link:hover { color: var(--text-primary); border-color: var(--primary); } .chat-attach-preview img { width: 52px; height: 52px; object-fit: cover; border-radius: 8px; border: 1px solid var(--border); } .chat-image-modal { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; background: rgba(5, 8, 20, 0.85); z-index: 10001; padding: 1.5rem; } .chat-image-modal.is-open { display: flex; } .chat-image-modal img { max-width: 92vw; max-height: 86vh; border-radius: 16px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5); } .chat-image-close { position: absolute; top: 20px; right: 20px; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(34, 211, 238, 0.5); background: rgba(14, 165, 233, 0.2); color: #e9fdff; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; } .chat-fab { position: fixed; right: 24px; bottom: 24px; z-index: 10000; display: inline-flex; align-items: center; gap: 10px; padding: 0.7rem 1.6rem; border-radius: 999px; border: 1.5px solid #22d3ee; background: rgba(6, 18, 36, 0.92); color: #64f0ff; font-weight: 600; letter-spacing: 0.2px; box-shadow: 0 8px 20px rgba(14, 165, 233, 0.35), 0 0 18px rgba(34, 211, 238, 0.25); transition: var(--transition); backdrop-filter: blur(6px); } .chat-fab:hover { transform: translateY(-2px); box-shadow: 0 14px 28px rgba(14, 165, 233, 0.45), 0 0 26px rgba(34, 211, 238, 0.35); color: #e9fdff; border-color: #7df7ff; } .chat-fab i { font-size: 1rem; } .chat-widget.is-open + .chat-fab { opacity: 0; pointer-events: none; transform: translateY(10px); } @media (max-width: 576px) { .chat-popup { right: 16px; left: 16px; bottom: 90px; width: auto; } .chat-fab { right: 16px; bottom: 16px; padding: 0.65rem 1.2rem; } } data-themelight .chat-popup { background: #ffffff; } data-themelight .chat-body { background: #f7fafc; } /* Terms & Conditions Section */ .terms-section { padding: 5rem 0; background: radial-gradient(circle at 10% 20%, rgba(0, 238, 255, 0.04), transparent 25%), radial-gradient(circle at 90% 10%, rgba(255, 255, 255, 0.03), transparent 20%), rgba(8, 10, 26, 0.9); border-bottom: 1px solid var(--border); } .policy-toggle { display: flex; align-items: center; justify-content: center; gap: 0.9rem; margin: 1.75rem 0 2.5rem; flex-wrap: wrap; } .policy-panels { max-width: 1100px; margin: 0 auto; } .policy-panel { animation: fadeInUp 0.45s ease both; } .policy-card { border: 1px solid var(--border); background: rgba(255, 255, 255, 0.02); border-radius: 14px; padding: 1.5rem 1.5rem 1.25rem; box-shadow: 0 12px 34px rgba(0, 0, 0, 0.25); backdrop-filter: blur(10px); height: 100%; } .policy-card-head { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.4rem; } .policy-card-head i { color: var(--primary); font-size: 1.25rem; text-shadow: 0 0 10px rgba(0, 238, 255, 0.35); } .policy-card h3 { margin: 0; font-size: 1.15rem; font-weight: 700; letter-spacing: 0.2px; color: var(--text-primary); } .policy-meta { margin: 0 0 1rem; color: var(--text-light); font-size: 0.9rem; } .policy-content { color: var(--text-secondary); font-size: 0.96rem; line-height: 1.65; } .policy-content p { margin-bottom: 0.75rem; } .policy-content ol { padding-left: 1.15rem; margin: 0; } .policy-content li { margin-bottom: 0.8rem; } .policy-content li:last-child { margin-bottom: 0; } .policy-content strong { color: var(--text-primary); } .policy-callout { margin-top: 1rem; padding: 0.85rem 1rem; border-radius: 12px; border: 1px dashed rgba(0, 238, 255, 0.35); background: rgba(0, 238, 255, 0.06); color: var(--text-secondary); } @media (max-width: 576px) { .policy-card { padding: 1.25rem 1.1rem 1rem; } .policy-card h3 { font-size: 1.05rem; } } /* Light theme tweaks for FAQ and Terms to match other sections */ data-themelight .faq-section { background: var(--bg-secondary); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); } data-themelight .faq-item { background: #ffffff; border-color: var(--border); box-shadow: var(--shadow); } data-themelight .faq-answer { color: var(--text-secondary); } data-themelight .terms-section { background: var(--bg-secondary); } data-themelight .policy-card { background: #ffffff; border-color: var(--border); box-shadow: var(--shadow-lg); } data-themelight .policy-card-head i { text-shadow: none; } data-themelight .policy-content { color: var(--text-secondary); } data-themelight .policy-callout { border-color: var(--primary-light); background: rgba(0, 102, 204, 0.06); } /* Make Terms/Policy Show more/less buttons visible in light mode */ data-themelight .policy-show-more { border-color: var(--primary); color: var(--primary); background: #ffffff; font-weight: 500; } data-themelight .policy-show-more:hover { background: var(--primary); color: #ffffff; box-shadow: var(--shadow); } /* Section Titles */ .section-title { color: var(--primary); text-shadow: 0 0 10px var(--primary); margin-bottom: 3rem; text-align: center; font-weight: 700; } /* */ /* NEW YEAR 2026 POPUP STYLES */ /* */ .newyear-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.85); backdrop-filter: blur(10px); z-index: 9999; display: flex; align-items: center; justify-content: center; opacity: 0; animation: fadeIn 0.5s ease forwards; } @keyframes fadeIn { to { opacity: 1; } } .newyear-popup { position: relative; max-width: 600px; width: 90%; background: linear-gradient(135deg, #0a0a23 0%, #1a1a3e 50%, #0a0a23 100%); border: 2px solid #0ea5e9; border-radius: 24px; padding: 3rem 2rem; text-align: center; box-shadow: 0 0 60px rgba(14, 165, 233, 0.6), 0 0 100px rgba(59, 130, 246, 0.4), inset 0 0 60px rgba(14, 165, 233, 0.1); transform: scale(0.8); animation: popupScale 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55) 0.3s forwards; overflow: hidden; } @keyframes popupScale { to { transform: scale(1); } } /* Animated Circuit Background */ .popup-circuit-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0.15; z-index: 0; } .circuit-line { position: absolute; background: linear-gradient(90deg, transparent, #0ea5e9, transparent); animation: circuitFlow 3s linear infinite; } .circuit-line.horizontal { height: 1px; width: 100%; } .circuit-line.vertical { width: 1px; height: 100%; } .circuit-line:nth-child(1) { top: 20%; animation-delay: 0s; } .circuit-line:nth-child(2) { top: 40%; animation-delay: 0.5s; } .circuit-line:nth-child(3) { top: 60%; animation-delay: 1s; } .circuit-line:nth-child(4) { top: 80%; animation-delay: 1.5s; } .circuit-line:nth-child(5) { left: 20%; animation-delay: 0.3s; } .circuit-line:nth-child(6) { left: 50%; animation-delay: 0.8s; } .circuit-line:nth-child(7) { left: 80%; animation-delay: 1.3s; } @keyframes circuitFlow { 0% { opacity: 0; transform: translateX(-100%); } 50% { opacity: 1; } 100% { opacity: 0; transform: translateX(100%); } } .popup-content { position: relative; z-index: 1; } /* Close Button */ .popup-close { position: absolute; top: 1rem; right: 1rem; background: rgba(14, 165, 233, 0.2); border: 1px solid #0ea5e9; border-radius: 50%; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; z-index: 2; } .popup-close:hover { background: rgba(14, 165, 233, 0.4); transform: rotate(90deg) scale(1.1); box-shadow: 0 0 20px rgba(14, 165, 233, 0.6); } .popup-close i { color: #0ea5e9; font-size: 1.2rem; } /* Server Icon Animation */ .popup-server-icon { position: relative; width: 100px; height: 120px; margin: 0 auto 2rem; animation: floatServer 3s ease-in-out infinite; } @keyframes floatServer { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-15px) rotate(2deg); } } .popup-server-body { position: absolute; width: 100%; height: 100%; background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); border-radius: 12px; box-shadow: 0 10px 40px rgba(14, 165, 233, 0.6), inset 0 2px 0 rgba(255, 255, 255, 0.3); overflow: hidden; } .popup-server-body::before { content: ; position: absolute; top: 0; left: 0; right: 0; height: 15px; background: rgba(0, 0, 0, 0.2); border-radius: 12px 12px 0 0; } .popup-server-slots { position: absolute; top: 20px; left: 10px; right: 10px; bottom: 20px; display: flex; flex-direction: column; gap: 6px; } .popup-server-slot { height: 8px; background: rgba(0, 0, 0, 0.3); border-radius: 4px; position: relative; overflow: hidden; } .popup-server-slot::after { content: ; position: absolute; top: 0; left: 0; height: 100%; width: 60%; background: linear-gradient(90deg, #22d3ee, #06b6d4); animation: serverDataFlow 2s ease-in-out infinite; box-shadow: 0 0 10px #22d3ee; } .popup-server-slot:nth-child(1)::after { animation-delay: 0s; } .popup-server-slot:nth-child(2)::after { animation-delay: 0.3s; } .popup-server-slot:nth-child(3)::after { animation-delay: 0.6s; } .popup-server-slot:nth-child(4)::after { animation-delay: 0.9s; } @keyframes serverDataFlow { 0% { transform: translateX(-100%); } 100% { transform: translateX(200%); } } .popup-server-leds { position: absolute; bottom: 15px; right: 12px; display: flex; gap: 6px; } .popup-server-led { width: 8px; height: 8px; border-radius: 50%; background: #22d3ee; box-shadow: 0 0 15px #22d3ee; animation: ledPulse 1.5s ease-in-out infinite; } .popup-server-led:nth-child(1) { animation-delay: 0s; } .popup-server-led:nth-child(2) { animation-delay: 0.5s; background: #06b6d4; box-shadow: 0 0 15px #06b6d4; } .popup-server-led:nth-child(3) { animation-delay: 1s; background: #0ea5e9; box-shadow: 0 0 15px #0ea5e9; } @keyframes ledPulse { 0%, 100% { opacity: 0.3; transform: scale(1); } 50% { opacity: 1; transform: scale(1.2); } } /* Floating Data Particles around Server */ .data-particle { position: absolute; width: 4px; height: 4px; background: #22d3ee; border-radius: 50%; box-shadow: 0 0 10px #22d3ee; animation: dataFloat 3s ease-in-out infinite; } .data-particle:nth-child(1) { left: -20px; top: 20%; animation-delay: 0s; } .data-particle:nth-child(2) { right: -20px; top: 40%; animation-delay: 0.5s; } .data-particle:nth-child(3) { left: -15px; top: 60%; animation-delay: 1s; } .data-particle:nth-child(4) { right: -15px; top: 80%; animation-delay: 1.5s; } @keyframes dataFloat { 0%, 100% { transform: translateY(0) translateX(0); opacity: 0; } 25% { opacity: 1; } 50% { transform: translateY(-30px) translateX(10px); } 75% { opacity: 1; } 100% { transform: translateY(-60px) translateX(0); opacity: 0; } } /* Year Text with Glitch Effect */ .popup-year { font-size: 5rem; font-weight: 900; background: linear-gradient(135deg, #0ea5e9, #22d3ee, #3b82f6); -webkit-background-clip: text; background-clip: text; color: transparent; text-shadow: 0 0 30px rgba(14, 165, 233, 0.8); margin: 1rem 0; position: relative; animation: yearGlow 2s ease-in-out infinite; } @keyframes yearGlow { 0%, 100% { filter: drop-shadow(0 0 20px rgba(14, 165, 233, 0.8)); } 50% { filter: drop-shadow(0 0 40px rgba(59, 130, 246, 1)); } } /* Title */ .popup-title { font-size: 2.5rem; font-weight: 800; color: #ffffff; margin-bottom: 1rem; text-shadow: 0 0 20px rgba(14, 165, 233, 0.6); animation: titlePulse 2s ease-in-out infinite; } @keyframes titlePulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } /* Message */ .popup-message { font-size: 1.1rem; color: #94a3b8; line-height: 1.6; margin-bottom: 2rem; } .popup-message strong { color: #22d3ee; text-shadow: 0 0 10px rgba(34, 211, 238, 0.5); } /* CTA Button */ .popup-cta { display: inline-block; padding: 1rem 2.5rem; background: linear-gradient(135deg, #0ea5e9, #3b82f6); border: 2px solid #22d3ee; border-radius: 50px; color: #ffffff; font-weight: 700; font-size: 1.1rem; text-decoration: none; transition: all 0.3s ease; box-shadow: 0 0 30px rgba(14, 165, 233, 0.5); animation: ctaGlow 2s ease-in-out infinite; } @keyframes ctaGlow { 0%, 100% { box-shadow: 0 0 30px rgba(14, 165, 233, 0.5); } 50% { box-shadow: 0 0 50px rgba(59, 130, 246, 0.8); } } .popup-cta:hover { transform: translateY(-5px) scale(1.05); box-shadow: 0 10px 50px rgba(14, 165, 233, 0.8); color: #ffffff; } /* Fireworks/Crackers Background */ .fireworks-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; z-index: 0; pointer-events: none; } .firework { position: absolute; width: 4px; height: 4px; border-radius: 50%; animation: fireworkLaunch 2s ease-out infinite; } @keyframes fireworkLaunch { 0% { transform: translateY(100vh) scale(1); opacity: 1; } 50% { opacity: 1; } 100% { transform: translateY(0) scale(0); opacity: 0; } } .firework-explosion { position: absolute; width: 5px; height: 5px; border-radius: 50%; animation: explode 1.5s ease-out forwards; } @keyframes explode { 0% { transform: translate(0, 0) scale(1); opacity: 1; } 100% { opacity: 0; } } /* Confetti/Sparkles */ .sparkle { position: absolute; width: 8px; height: 8px; background: #22d3ee; border-radius: 50%; opacity: 0; animation: sparkleFloat 3s ease-in-out infinite; } .sparkle::before, .sparkle::after { content: ; position: absolute; width: 100%; height: 100%; background: inherit; border-radius: 50%; } .sparkle::before { transform: scale(0.6) translate(-10px, 0); } .sparkle::after { transform: scale(0.6) translate(10px, 0); } @keyframes sparkleFloat { 0% { transform: translateY(0) rotate(0deg); opacity: 0; } 25% { opacity: 1; } 100% { transform: translateY(-100px) rotate(360deg); opacity: 0; } } .sparkle:nth-child(1) { left: 10%; top: 80%; animation-delay: 0s; background: #0ea5e9; } .sparkle:nth-child(2) { left: 20%; top: 70%; animation-delay: 0.5s; background: #22d3ee; } .sparkle:nth-child(3) { left: 80%; top: 75%; animation-delay: 1s; background: #3b82f6; } .sparkle:nth-child(4) { left: 90%; top: 85%; animation-delay: 1.5s; background: #06b6d4; } .sparkle:nth-child(5) { left: 50%; top: 90%; animation-delay: 2s; background: #0ea5e9; } /* Confetti pieces falling */ .confetti { position: absolute; width: 10px; height: 10px; background: #0ea5e9; animation: confettiFall 3s linear infinite; } @keyframes confettiFall { 0% { transform: translateY(-100px) rotate(0deg); opacity: 1; } 100% { transform: translateY(100vh) rotate(720deg); opacity: 0; } } /* Responsive */ @media (max-width: 768px) { .newyear-popup { padding: 2rem 1.5rem; } .popup-year { font-size: 3.5rem; } .popup-title { font-size: 1.8rem; } .popup-message { font-size: 1rem; } .popup-server-icon { width: 80px; height: 100px; } } @media (max-width: 480px) { .popup-year { font-size: 2.5rem; } .popup-title { font-size: 1.5rem; } .popup-cta { padding: 0.8rem 2rem; font-size: 1rem; } } /* Responsive Adjustments */ @media (max-width: 991px) { .hero-title { font-size: 2.5rem; } .server-visualization { height: 250px; margin-top: 2rem; } } @media (max-width: 767px) { .hero-title { font-size: 2rem; } .pricing-toggle { flex-direction: column; gap: 0.5rem; } .neon-testimonials .swiper-container { max-width: 98vw; padding: 1.5rem 0 3rem 0; } .neon-testimonials .testimonial-box { width: 280px; height: 280px; padding: 1.5rem 1.25rem; } .neon-testimonials .testimonial-box img { width: 70px; height: 70px; } } @media (max-width: 480px) { .neon-testimonials .testimonial-box { width: 250px; height: 250px; padding: 1.2rem 1rem; } .neon-testimonials .testimonial-box img { width: 60px; height: 60px; } } /style>/head>body> !-- Header --> nav classnavbar navbar-expand-lg navbar-light fixed-top> div classcontainer> a classnavbar-brand href#home> div classnavbar-logo-container> !-- DD Letters (Blue) --> div classnavbar-dd-letters> div classnavbar-dd-letter>span>D/span>/div> div classnavbar-dd-letter>span>D/span>/div> /div> !-- HOSTER Text (Cyan) --> div classnavbar-hoster-text>hoster/div> !-- Hosting Server Icon --> div classnavbar-server-icon> div classnavbar-server-body> div classnavbar-server-slots> div classnavbar-server-slot>/div> div classnavbar-server-slot>/div> div classnavbar-server-slot>/div> /div> div classnavbar-server-leds> div classnavbar-server-led>/div> div classnavbar-server-led>/div> div classnavbar-server-led>/div> /div> /div> /div> !-- Data connections (will be added by JavaScript) --> div classnavbar-data-connections idnavbarConnections>/div> /div>/a>!-- ------------------------- --> button classnavbar-toggler typebutton data-bs-togglecollapse data-bs-target#navbarNav> span classnavbar-toggler-icon>/span> /button> div classcollapse navbar-collapse idnavbarNav> ul classnavbar-nav me-auto> li classnav-item> a classnav-link active href#home>Home/a> /li> li classnav-item> a classnav-link href#pricing>Hosting/a> /li> li classnav-item> a classnav-link href#domain-search>Domains/a> /li> li classnav-item> a classnav-link href#features>Services/a> /li> li classnav-item> a classnav-link href#testimonials>Support/a> /li> li classnav-item dropdown> a classnav-link dropdown-toggle hrefterms.php idpolicyDropdown rolebutton data-bs-toggledropdown aria-expandedfalse> Policy /a> ul classdropdown-menu aria-labelledbypolicyDropdown> li>a classdropdown-item hrefterms.php>Terms & Conditions/a>/li> li>a classdropdown-item hrefprivacy.php>Privacy Policy/a>/li> li>a classdropdown-item hrefrefund.php>Refund Policy/a>/li> /ul> /li> /ul> div classd-flex align-items-center> button classtheme-toggle me-3 idthemeToggle> i classfas fa-moon>/i> /button> a hrefpublic/login.php classbtn btn-primary me-2>Login/a> a hrefpublic/register.php classbtn btn-primary btn-signup>Sign Up/a> /div> /div> /div> /nav> !-- Hero Section --> section classhero-section idhome> div classcontainer> div classrow align-items-center> div classcol-lg-6 hero-content> span classhero-badge>Opening Offer: Get 20% OFF on Yearly Plans/span> h1 classhero-title>Fast & Reliable Web Hosting in Bangladesh/h1> p classhero-subtitle>Launch your website with high-speed NVMe hosting, free SSL, and 24/7 expert support — powered by DDHOSTER, a sister concern of Dial Dynamic Ltd./p> div classd-flex gap-3 hero-cta> a href#pricing classbtn btn-primary btn-lg>View Plans/a> a href#features classbtn btn-outline-primary btn-lg>Learn More/a> /div> /div> div classcol-lg-6> div classserver-visualization> div classserver-rack> div classserver-blade> div classserver-light>/div> /div> div classserver-blade> div classserver-light>/div> /div> div classserver-blade> div classserver-light>/div> /div> div classserver-blade> div classserver-light>/div> /div> /div> /div> /div> /div> /div> /section> !-- Domain Search Section --> section classdomain-search-section iddomain-search> div classcontainer> div classrow justify-content-center> div classcol-lg-8> h2 classsection-title>Find Your Perfect Domain/h2> div classdomain-search-card iddomainCard> form classinput-group input-group-lg> input typetext classform-control placeholderEnter your domain name...> button classbtn btn-primary typesubmit>Search/button> /form> /div> /div> /div> /div> /section> !-- Pricing Section --> section classpricing-section idpricing> div classcontainer> div classtext-center mb-5> h2 classsection-title>Choose Your DDHOSTER Hosting Plan/h2> p classlead>Scalable solutions optimized for Bangladesh with DDHOSTER speed/p> !-- Pricing Toggle --> div classpricing-toggle> span classtoggle-label active idmonthlyLabel>Monthly/span> div classtoggle-switch idpricingToggle>/div> span classtoggle-label idyearlyLabel>Yearly small stylecolor: var(--accent);>(Save 20%)/small>/span> /div> /div> div classrow> !-- Basic Plan --> div classcol-lg-3 col-md-6 mb-4> div classpricing-card idpricingCard1> div classpricing-header> h3 classpricing-title>Basic Plan/h3> div classpricing-price> span classmonthly-price>৳ 99/span> span classyearly-price styledisplay: none;>৳ 950/span> /div> div classpricing-period> span classmonthly-price>/month/span> span classyearly-price styledisplay: none;>/year (Save ৳ 238)/span> /div> /div> div classpricing-features> ul> li>i classfas fa-check>/i> 1 GB NVMe Storage/li> li>i classfas fa-check>/i> 50 GB Bandwidth/li> li>i classfas fa-check>/i> 1 Website/li> li>i classfas fa-check>/i> 5 Subdomains/li> li>i classfas fa-check>/i> 5 Email Accounts/li> li>i classfas fa-check>/i> 2 Databases/li> li>i classfas fa-check>/i> Free SSL Certificate/li> li>i classfas fa-check>/i> LiteSpeed Server/li> li>i classfas fa-check>/i> cPanel Control Panel/li> li>i classfas fa-check>/i> DDHOSTER Optimized Speed/li> li>i classfas fa-check>/i> 24/7 Support/li> /ul> /div> div classpricing-footer> a hrefpublic/login.php classbtn btn-outline-primary w-100>Get Started/a> /div> /div> /div> !-- Standard Plan --> div classcol-lg-3 col-md-6 mb-4> div classpricing-card featured idpricingCard2> div classpricing-header> h3 classpricing-title>Standard Plan/h3> div classpricing-price> span classmonthly-price>৳ 199/span> span classyearly-price styledisplay: none;>৳ 1,900/span> /div> div classpricing-period> span classmonthly-price>/month/span> span classyearly-price styledisplay: none;>/year (Save ৳ 488)/span> /div> /div> div classpricing-features> ul> li>i classfas fa-check>/i> 3 GB NVMe Storage/li> li>i classfas fa-check>/i> 150 GB Bandwidth/li> li>i classfas fa-check>/i> 2 Websites/li> li>i classfas fa-check>/i> 10 Subdomains/li> li>i classfas fa-check>/i> 10 Email Accounts/li> li>i classfas fa-check>/i> 5 Databases/li> li>i classfas fa-check>/i> Free SSL Certificate/li> li>i classfas fa-check>/i> LiteSpeed Server/li> li>i classfas fa-check>/i> cPanel Control Panel/li> li>i classfas fa-check>/i> DDHOSTER Optimized Speed/li> li>i classfas fa-check>/i> 24/7 Support/li> /ul> /div> div classpricing-footer> a hrefpublic/login.php classbtn btn-primary btn-featured w-100>Get Started/a> /div> /div> /div> !-- Advanced Plan --> div classcol-lg-3 col-md-6 mb-4> div classpricing-card idpricingCard3> div classpricing-header> h3 classpricing-title>Advanced Plan/h3> div classpricing-price> span classmonthly-price>৳ 299/span> span classyearly-price styledisplay: none;>৳ 2,900/span> /div> div classpricing-period> span classmonthly-price>/month/span> span classyearly-price styledisplay: none;>/year (Save ৳ 688)/span> /div> /div> div classpricing-features> ul> li>i classfas fa-check>/i> 5 GB NVMe Storage/li> li>i classfas fa-check>/i> 300 GB Bandwidth/li> li>i classfas fa-check>/i> 5 Websites/li> li>i classfas fa-check>/i> Unlimited Subdomains/li> li>i classfas fa-check>/i> 25 Email Accounts/li> li>i classfas fa-check>/i> Unlimited Databases/li> li>i classfas fa-check>/i> Free SSL Certificate/li> li>i classfas fa-check>/i> LiteSpeed Server/li> li>i classfas fa-check>/i> cPanel Control Panel/li> li>i classfas fa-check>/i> DDHOSTER Optimized Speed/li> li>i classfas fa-check>/i> 24/7 Support/li> /ul> /div> div classpricing-footer> a hrefpublic/login.php classbtn btn-outline-primary w-100>Get Started/a> /div> /div> /div> !-- Premium Plan --> div classcol-lg-3 col-md-6 mb-4> div classpricing-card idpricingCard4> div classpricing-header> h3 classpricing-title>Premium Plan/h3> div classpricing-taglines> span>Best for Business/span> span>Recommended for agencies/span> /div> div classpricing-price> span classmonthly-price>৳ 499/span> span classyearly-price styledisplay: none;>৳ 4,800/span> /div> div classpricing-period> span classmonthly-price>/month/span> span classyearly-price styledisplay: none;>/year (Save ৳ 1,188)/span> /div> /div> div classpricing-features> ul> li>i classfas fa-check>/i> 10 GB NVMe Storage/li> li>i classfas fa-check>/i> 600 GB Bandwidth/li> li>i classfas fa-check>/i> 10 Websites/li> li>i classfas fa-check>/i> Unlimited Subdomains/li> li>i classfas fa-check>/i> Unlimited Email Accounts/li> li>i classfas fa-check>/i> Unlimited Databases/li> li>i classfas fa-check>/i> Free SSL Certificate/li> li>i classfas fa-check>/i> LiteSpeed Server/li> li>i classfas fa-check>/i> Weekly Backup/li> li>i classfas fa-check>/i> DDHOSTER Optimized Speed/li> li>i classfas fa-check>/i> 99.9% Uptime Guarantee/li> li>i classfas fa-check>/i> 24/7 Priority Support/li> /ul> /div> div classpricing-footer> a hrefpublic/login.php classbtn btn-outline-primary w-100>Get Started/a> /div> /div> /div> /div> /div> /section> !-- Features Section --> section classfeatures-section idfeatures> div classcontainer> div classtext-center mb-5> h2 classsection-title>Why Choose DDHOSTER?/h2> p classlead>Enterprise-grade features that set us apart/p> /div> div classrow> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard1> div classfeature-icon> i classfas fa-flag>/i> /div> h3 classfeature-title>Bangladesh-Optimized Servers/h3> p classfeature-description>Low-latency routing and local peering tuned for fast load times across Bangladesh./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard2> div classfeature-icon> i classfas fa-exchange-alt>/i> /div> h3 classfeature-title>Free Migration Support/h3> p classfeature-description>We move your website, database, and email at no extra cost with minimal downtime./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard3> div classfeature-icon> i classfas fa-credit-card>/i> /div> h3 classfeature-title>Local Payment Methods/h3> p classfeature-description>Pay easily via popular Bangladeshi gateways and mobile wallets./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard4> div classfeature-icon> i classfas fa-bolt>/i> /div> h3 classfeature-title>Instant Account Setup/h3> p classfeature-description>Get your hosting activated in minutes so you can launch right away./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard5> div classfeature-icon> i classfas fa-expand>/i> /div> h3 classfeature-title>Easy Scalability/h3> p classfeature-description>Grow your hosting resources seamlessly as your business expands./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard6> div classfeature-icon> i classfas fa-code>/i> /div> h3 classfeature-title>Developer Friendly/h3> p classfeature-description>Full SSH access, Git integration, and support for all major frameworks./p> /div> /div> /div> /div> /section> !-- Neon Testimonials Section (DDialer-style with accent glow) --> section idtestimonials classneon-testimonials> h2 classsection-title>Our Clients Love Us/h2> div classswiper-container> div classswiper-wrapper> div classswiper-slide> div classtestimonial-box> img srcimages/sayeb1.jpeg altClient 1 /> p> After moving our site to DDHOSTER, the loading speed improved immediately. Visitors from Dhaka and abroad are getting a much smoother experience now. /p> h4>Ubaida/h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/sayeb2.jpeg altClient 2 /> p> Their cPanel hosting is very easy to manage. One-click SSL, email setup, and backups are all handled in a few minutes even for non-technical users. /p> h4>Sayeb/h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/rafi1.jpeg altClient 3 /> p> DDHOSTER migrated my WordPress site from another provider without downtime. Files, database, and emails were all moved perfectly. /p> h4>Rafael R./h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/fharhana.jpeg altClient 4 /> p> Their support team is super responsive. I raised a ticket late at night about a DNS issue and they fixed it faster than I expected. /p> h4>Fharhana Eti/h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/rafi2.jpeg altClient 5 /> p> As a developer, I love the performance and flexibility. PHP versions, staging, and database access are all smooth on DDHOSTER. /p> h4>Imran H./h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/feedback.jpeg altClient 6 /> p> Domain registration, hosting, and professional email – everything in one place. Plus, paying via local gateways is very convenient for our team. /p> h4>Kaniz Tasnim/h4> /div> /div> /div> !-- Pagination --> div classswiper-pagination>/div> /div> /section> !-- FAQ --> section classfaq-section idfaq aria-labelFrequently Asked Questions> div classcontainer> div classfaq-header> span classfaq-kicker>Support/span> h2 classsection-title>Frequently Asked Questions/h2> p classtext-light>Answers to common questions about DDHOSTER hosting, domains, security, and support./p> /div> div classfaq-wrapper> !-- FAQ 1 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq1> span classfaq-question-text>What services does DDHOSTER provide?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq1 roleregion aria-hiddentrue> p>DDHOSTER provides fast and reliable web hosting with cPanel, domain registration, email hosting, and DNS/nameserver management. You can host websites, manage domains, and control everything from a simple client area and cPanel dashboard./p> /div> /div> !-- FAQ 2 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq2> span classfaq-question-text>Which hosting plan should I choose?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq2 roleregion aria-hiddentrue> p>For a single small website, our basic shared hosting plan is usually enough. If you run multiple sites, handle higher traffic, or need more resources, choose a higher tier plan. You can always start small and upgrade instantly from your client area when your project grows./p> /div> /div> !-- FAQ 3 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq3> span classfaq-question-text>Can you migrate my website from another hosting provider?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq3 roleregion aria-hiddentrue> p>Yes. If you already have a website hosted elsewhere, our team can help migrate your files, databases, and email accounts to DDHOSTER. Just open a support ticket after your order and share your old hosting details — well handle the move with minimal downtime./p> /div> /div> !-- FAQ 4 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq4> span classfaq-question-text>Is my website and data secure with DDHOSTER?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq4 roleregion aria-hiddentrue> p>We use secure servers, regular security patches, and isolation between accounts to keep your data safe. You can enable SSL for your domains, manage secure FTP and strong passwords from cPanel, and use our backup options to protect your website content./p> /div> /div> !-- FAQ 5 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq5> span classfaq-question-text>How do I manage my domain and nameservers?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq5 roleregion aria-hiddentrue> p>You can manage domains directly from the DDHOSTER client area. Update nameservers, renew domains, and connect them to your hosting package in a few clicks. DNS changes may take some time to fully propagate across the internet./p> /div> /div> div classfaq-more idfaqMore> !-- FAQ 6 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq6> span classfaq-question-text>What kind of support do you offer?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq6 roleregion aria-hiddentrue> p>We provide friendly technical support for hosting, domains, and cPanel-related issues. You can contact us from your client area via ticket or other available channels. We also maintain guides and documentation to help you get started quickly./p> /div> /div> !-- FAQ 7 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq7> span classfaq-question-text>Where are your servers located?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq7 roleregion aria-hiddentrue> p>Our hosting servers are optimized for fast performance and reliable uptime for Bangladesh-based websites./p> /div> /div> !-- FAQ 8 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq8> span classfaq-question-text>Do you provide free website migration?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq8 roleregion aria-hiddentrue> p>Yes. We provide free migration support for your website, database, and email accounts with minimal downtime./p> /div> /div> !-- FAQ 9 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq9> span classfaq-question-text>Which payment methods do you accept?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq9 roleregion aria-hiddentrue> p>We accept bKash, Nagad, card payments, and bank transfer for customers in Bangladesh./p> /div> /div> !-- FAQ 10 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq10> span classfaq-question-text>How long does it take to activate hosting?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq10 roleregion aria-hiddentrue> p>Instant activation after payment./p> /div> /div> !-- FAQ 11 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq11> span classfaq-question-text>Do you offer a money-back guarantee?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq11 roleregion aria-hiddentrue> p>Yes. We offer a money-back guarantee under our refund policy. See our Refund Policy page for details./p> /div> /div> /div> div classfaq-toggle-wrap> button classbtn btn-outline-primary faq-show-more typebutton idfaqToggle aria-expandedfalse aria-controlsfaqMore>Show More/button> /div> /div> div classfaq-cta> h3 classfaq-cta-title>Still have questions?/h3> p classfaq-cta-text>Contact our support team for quick help./p> button typebutton classbtn btn-primary idcontactSupportBtn>Contact Support/button> /div> /div> /section> !-- Footer --> footer> div classcontainer> div classrow> div classcol-lg-3 col-md-6 mb-4> a href#home classfooter-logo> span classfooter-logo-text>DDHOSTER/span> /a> p classfooter-description>DDHOSTER provides reliable web hosting, domain registration, and website infrastructure solutions for businesses and individuals in Bangladesh./p> /div> div classcol-lg-3 col-md-6 mb-4> h4 classfooter-heading>Useful Links/h4> ul classfooter-links> li>a href#features>Features/a>/li> li>a href#pricing>Pricing/a>/li> li>a href#testimonials>Testimonials/a>/li> li>a href#faq>FAQ/a>/li> li>a hrefpublic/login.php>Login/a>/li> li>a hrefpublic/register.php>Register/a>/li> /ul> /div> div classcol-lg-3 col-md-6 mb-4> h4 classfooter-heading>Legal/h4> ul classfooter-links> li>a hrefterms.php>Terms & Conditions/a>/li> li>a hrefprivacy.php>Privacy Policy/a>/li> li>a hrefrefund.php>Refund Policy/a>/li> /ul> /div> div classcol-lg-3 col-md-6 mb-4> h4 classfooter-heading>Contact Us/h4> ul classfooter-contact> li> i classfas fa-headset>/i> div> a hreftel: +8809617626262>24/7 Support: +88 09617 62 62 62/a> /div> /li> li> a classfooter-contact-link idfooterEmailLink data-emailsupport@ddialer.xyz hrefmailto:support@ddialer.xyz> i classfas fa-envelope>/i> span>support@ddialer.xyz/span> /a> /li> li> i classfas fa-map-marker-alt>/i> div> a hrefhttps://maps.google.com/?q124/48, Block-A, Road-9 West Dhanmondi, Bosila, Mohammadpur, Dhaka-1207 target_blank relnoopener>124/48, Block-A, Road-9br>West Dhanmondi, Bosila,br>Mohammadpur, Dhaka-1207/a> /div> /li> /ul> /div> /div> div classfooter-bottom text-center> p>© 2026 DDialer. All rights reserved. A product of Dial Dynamic Ltd./p> /div> /div> /footer> !-- Chat Support Widget --> div classchat-widget idchatWidget aria-hiddentrue> div classchat-overlay idchatOverlay>/div> div classchat-popup roledialog aria-modaltrue aria-labelledbychatTitle> div classchat-header> div> h4 idchatTitle>Chat Support/h4> span classchat-status>Online/span> /div> button classchat-close typebutton idchatClose aria-labelClose chat> i classfas fa-times>/i> /button> /div> div classchat-body> form classchat-preform idchatPreform> div> div classchat-preform-title>Start a quick chat/div> div classchat-preform-note>Share your details so we can assist you faster./div> /div> div classchat-inputs> input classform-control typetext idchatName placeholderYour name required> input classform-control typeemail idchatEmail placeholderEmail address required> input classform-control typetel idchatPhone placeholderPhone number required> /div> button classbtn btn-primary w-100 typesubmit>Start Chat/button> /form> div classchat-session idchatSession> div classchat-messages idchatMessages> div classchat-message chat-message--bot> Hi! Need help with hosting, domains, or billing? Send us a message and our team will respond shortly. /div> /div> form classchat-form idchatForm> div classchat-input-row> button classchat-attach-btn typebutton idchatAttachBtn aria-labelAttach files> i classfas fa-paperclip>/i> /button> textarea classform-control rows2 placeholderType your message...>/textarea> /div> div classchat-attach-preview idchatAttachPreview>/div> input typefile idchatFileInput multiple styledisplay: none;> button classbtn btn-primary w-100 typesubmit>Send Message/button> /form> /div> /div> /div> /div> button classchat-fab idchatFab typebutton aria-haspopupdialog aria-controlschatWidget> i classfas fa-comments>/i> Chat Support /button> div classchat-image-modal idchatImageModal aria-hiddentrue> button typebutton classchat-image-close idchatImageClose aria-labelClose image preview> i classfas fa-times>/i> /button> img src altPreview idchatModalImage> /div> script srchttps://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js>/script> !-- Swiper JS for testimonials slider --> script srchttps://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js>/script> script> // Footer email: mailto with Gmail fallback function openEmailWithFallback(email) { const safeEmail (email || ).trim(); if (!safeEmail) return; const mailtoUrl `mailto:${encodeURIComponent(safeEmail)}`; const gmailUrl `https://mail.google.com/mail/?viewcm&fs1&to${encodeURIComponent(safeEmail)}`; window.location.href mailtoUrl; setTimeout(() > { if (document.visibilityState visible && document.hasFocus()) { window.open(gmailUrl, _blank, noopener); } }, 700); } document.addEventListener(DOMContentLoaded, function () { const footerEmailLink document.getElementById(footerEmailLink); if (footerEmailLink) { footerEmailLink.addEventListener(click, function (e) { e.preventDefault(); const email footerEmailLink.getAttribute(data-email) || footerEmailLink.textContent; openEmailWithFallback(email); }); } }); // Theme Toggle const themeToggle document.getElementById(themeToggle); const themeIcon themeToggle.querySelector(i); themeToggle.addEventListener(click, () > { const currentTheme document.documentElement.getAttribute(data-theme); const newTheme currentTheme light ? dark : light; document.documentElement.setAttribute(data-theme, newTheme); if (newTheme dark) { themeIcon.classList.remove(fa-moon); themeIcon.classList.add(fa-sun); } else { themeIcon.classList.remove(fa-sun); themeIcon.classList.add(fa-moon); } // Save theme preference localStorage.setItem(theme, newTheme); }); // Check for saved theme preference const savedTheme localStorage.getItem(theme); if (savedTheme) { document.documentElement.setAttribute(data-theme, savedTheme); if (savedTheme dark) { themeIcon.classList.remove(fa-moon); themeIcon.classList.add(fa-sun); } } // Pricing Toggle const pricingToggle document.getElementById(pricingToggle); const monthlyLabel document.getElementById(monthlyLabel); const yearlyLabel document.getElementById(yearlyLabel); const monthlyPrices document.querySelectorAll(.monthly-price); const yearlyPrices document.querySelectorAll(.yearly-price); if (pricingToggle && monthlyLabel && yearlyLabel) { pricingToggle.addEventListener(click, () > { pricingToggle.classList.toggle(active); if (pricingToggle.classList.contains(active)) { monthlyLabel.classList.remove(active); yearlyLabel.classList.add(active); monthlyPrices.forEach(price > price.style.display none); yearlyPrices.forEach(price > price.style.display inline); } else { monthlyLabel.classList.add(active); yearlyLabel.classList.remove(active); monthlyPrices.forEach(price > price.style.display inline); yearlyPrices.forEach(price > price.style.display none); } }); } // Smooth scrolling for anchor links document.querySelectorAll(ahref^#).forEach(anchor > { anchor.addEventListener(click, function (e) { const target document.querySelector(this.getAttribute(href)); if (target) { e.preventDefault(); target.scrollIntoView({ behavior: smooth, block: start }); } }); }); // Navbar scroll effect window.addEventListener(scroll, function() { const navbar document.querySelector(.navbar); if (window.scrollY > 50) { navbar.classList.add(navbar-scrolled); } else { navbar.classList.remove(navbar-scrolled); } }); // Intersection Observer for animations const observerOptions { threshold: 0.1, rootMargin: 0px 0px -50px 0px }; const observer new IntersectionObserver(function(entries) { entries.forEach(entry > { if (entry.isIntersecting) { entry.target.classList.add(animate); } }); }, observerOptions); // Observe elements for animation const elementsToAnimate document.getElementById(domainCard), document.getElementById(pricingCard1), document.getElementById(pricingCard2), document.getElementById(pricingCard3), document.getElementById(pricingCard4), document.getElementById(featureCard1), document.getElementById(featureCard2), document.getElementById(featureCard3), document.getElementById(featureCard4), document.getElementById(featureCard5), document.getElementById(featureCard6) ; elementsToAnimate.forEach(element > { if (element) observer.observe(element); }); // FAQ accordion document.addEventListener(DOMContentLoaded, function () { const faqQuestions document.querySelectorAll(.faq-question); faqQuestions.forEach(question > { const answerId question.getAttribute(aria-controls); const answer document.getElementById(answerId); if (!answer) return; const icon question.querySelector(i); const setState expanded > { question.setAttribute(aria-expanded, expanded ? true : false); answer.setAttribute(aria-hidden, expanded ? false : true); if (expanded) { answer.classList.add(show); answer.style.maxHeight answer.scrollHeight + px; if (icon) { icon.classList.remove(fa-plus); icon.classList.add(fa-minus); } } else { answer.classList.remove(show); answer.style.maxHeight 0px; if (icon) { icon.classList.remove(fa-minus); icon.classList.add(fa-plus); } } }; setState(false); const toggleFAQ () > { const expanded question.getAttribute(aria-expanded) true; setState(!expanded); }; question.addEventListener(click, toggleFAQ); question.addEventListener(keydown, function(e) { if (e.key Enter || e.key ) { e.preventDefault(); toggleFAQ(); } }); }); }); // FAQ show more/less document.addEventListener(DOMContentLoaded, function () { const faqMore document.getElementById(faqMore); const faqToggle document.getElementById(faqToggle); if (!faqMore || !faqToggle) return; const setMoreState isOpen > { faqMore.classList.toggle(is-open, isOpen); faqToggle.setAttribute(aria-expanded, isOpen ? true : false); faqToggle.textContent isOpen ? Show Less : Show More; }; setMoreState(false); faqToggle.addEventListener(click, () > { const isOpen faqMore.classList.contains(is-open); setMoreState(!isOpen); }); }); // Chat support widget document.addEventListener(DOMContentLoaded, function () { const chatWidget document.getElementById(chatWidget); const chatFab document.getElementById(chatFab); const chatClose document.getElementById(chatClose); const chatOverlay document.getElementById(chatOverlay); const contactSupportBtn document.getElementById(contactSupportBtn); const chatForm document.getElementById(chatForm); const chatMessages document.getElementById(chatMessages); const chatPreform document.getElementById(chatPreform); const chatSession document.getElementById(chatSession); const chatName document.getElementById(chatName); const chatEmail document.getElementById(chatEmail); const chatPhone document.getElementById(chatPhone); const chatAttachBtn document.getElementById(chatAttachBtn); const chatFileInput document.getElementById(chatFileInput); const chatAttachPreview document.getElementById(chatAttachPreview); const chatImageModal document.getElementById(chatImageModal); const chatModalImage document.getElementById(chatModalImage); const chatImageClose document.getElementById(chatImageClose); if (!chatWidget || !chatFab) return; let chatReady false; let supportUserId null; let supportUserEmail ; let supportUserName ; let supportUserPhone ; const storedId localStorage.getItem(ddhoster_support_user_id); const storedEmail localStorage.getItem(ddhoster_support_email); const storedName localStorage.getItem(ddhoster_support_name); const storedPhone localStorage.getItem(ddhoster_support_phone); if (chatName && storedName) chatName.value storedName; if (chatEmail && storedEmail) chatEmail.value storedEmail; if (chatPhone && storedPhone) chatPhone.value storedPhone; if (storedId) { const parsedId parseInt(storedId, 10); if (!Number.isNaN(parsedId)) { supportUserId parsedId; } } if (storedEmail) supportUserEmail storedEmail; if (storedName) supportUserName storedName; if (storedPhone) supportUserPhone storedPhone; const setChatReady ready > { chatReady ready; chatWidget.classList.toggle(is-ready, ready); }; const renderAttachments (attachments, target) > { if (!attachments || attachments.length 0) return; const attachmentsWrap document.createElement(div); attachmentsWrap.className chat-attachments; attachments.forEach(att > { if (att.type && att.type.startsWith(image/) && att.data) { const img document.createElement(img); img.className chat-attachment-thumb; img.src att.data; img.alt att.name || Attachment; img.addEventListener(click, () > openChatImageModal(att.data)); attachmentsWrap.appendChild(img); } else { const link document.createElement(a); link.className chat-file-link; link.href att.data || #; link.download att.name || attachment; link.target _blank; link.rel noopener noreferrer; link.innerHTML `i classfas fa-file>/i>span>${att.name || Download file}/span>`; attachmentsWrap.appendChild(link); } }); target.appendChild(attachmentsWrap); }; const renderHistory messages > { if (!chatMessages) return; chatMessages.innerHTML ; if (!messages || messages.length 0) { const botBubble document.createElement(div); botBubble.className chat-message chat-message--bot; botBubble.textContent Hi! Need help with hosting, domains, or billing? Send us a message and our team will respond shortly.; chatMessages.appendChild(botBubble); return; } messages.forEach(msg > { const isUser msg.sender user; const bubble document.createElement(div); bubble.className `chat-message ${isUser ? chat-message--user : chat-message--bot}`; if (msg.message) { const text document.createElement(div); text.textContent msg.message; bubble.appendChild(text); } if (msg.attachments) { try { const attachments JSON.parse(msg.attachments); renderAttachments(attachments, bubble); } catch (e) { // ignore parse issues } } chatMessages.appendChild(bubble); }); chatMessages.scrollTop chatMessages.scrollHeight; }; const loadHistory async () > { if (!supportUserEmail) return; try { const payload new URLSearchParams({ action: history, user_id: supportUserId ? String(supportUserId) : , email: supportUserEmail }); const response await fetch(public/support_chat.php, { method: POST, headers: { Content-Type: application/x-www-form-urlencoded }, body: payload.toString() }); const data await response.json(); if (data.success) { if (!supportUserId && data.user_id) { supportUserId data.user_id; } renderHistory(data.messages || ); } } catch (error) { // ignore history failures } }; const openChatImageModal src > { if (!chatImageModal || !chatModalImage) return; chatModalImage.src src; chatImageModal.classList.add(is-open); chatImageModal.setAttribute(aria-hidden, false); }; const closeChatImageModal () > { if (!chatImageModal || !chatModalImage) return; chatImageModal.classList.remove(is-open); chatImageModal.setAttribute(aria-hidden, true); chatModalImage.src ; }; const openChat () > { setChatReady(chatReady); chatWidget.classList.add(is-open); chatWidget.setAttribute(aria-hidden, false); }; const closeChat () > { chatWidget.classList.remove(is-open); chatWidget.setAttribute(aria-hidden, true); }; chatFab, contactSupportBtn.forEach(btn > { if (btn) btn.addEventListener(click, openChat); }); chatClose, chatOverlay.forEach(el > { if (el) el.addEventListener(click, closeChat); }); document.addEventListener(keydown, function (e) { if (e.key Escape) { closeChat(); } }); if (chatImageClose) { chatImageClose.addEventListener(click, closeChatImageModal); } if (chatImageModal) { chatImageModal.addEventListener(click, (e) > { if (e.target chatImageModal) { closeChatImageModal(); } }); } if (chatPreform) { const preformNote chatPreform.querySelector(.chat-preform-note); const setPreformNote (msg, isError false) > { if (!preformNote) return; preformNote.textContent msg; preformNote.style.color isError ? #f87171 : ; }; if (chatName && !chatName.value) { chatName.value localStorage.getItem(ddhoster_support_name) || ; } if (chatEmail && !chatEmail.value) { chatEmail.value localStorage.getItem(ddhoster_support_email) || ; } if (chatPhone && !chatPhone.value) { chatPhone.value localStorage.getItem(ddhoster_support_phone) || ; } chatPreform.addEventListener(submit, async function (e) { e.preventDefault(); if (!chatPreform.checkValidity()) { chatPreform.reportValidity(); return; } const nameValue chatName ? chatName.value.trim() : ; const emailValue chatEmail ? chatEmail.value.trim() : ; const phoneValue chatPhone ? chatPhone.value.trim() : ; if (!nameValue || !emailValue || !phoneValue) return; try { const payload new URLSearchParams({ action: start, name: nameValue, email: emailValue, phone: phoneValue }); const response await fetch(public/support_chat.php, { method: POST, headers: { Content-Type: application/x-www-form-urlencoded }, body: payload.toString() }); const data await response.json(); if (!data.success || !data.user_id) { setPreformNote(data.error || Unable to start chat. Please try again., true); return; } supportUserId data.user_id; supportUserEmail emailValue; supportUserName nameValue; supportUserPhone phoneValue; localStorage.setItem(ddhoster_support_user_id, String(supportUserId)); localStorage.setItem(ddhoster_support_email, supportUserEmail); localStorage.setItem(ddhoster_support_name, supportUserName); localStorage.setItem(ddhoster_support_phone, supportUserPhone); setPreformNote(Share your details so we can assist you faster., false); setChatReady(true); await loadHistory(); if (chatMessages && chatMessages.children.length 0) { const botBubble document.createElement(div); botBubble.className chat-message chat-message--bot; botBubble.textContent `Thanks ${nameValue}! How can we help you today?`; chatMessages.appendChild(botBubble); } if (chatSession) { const textarea chatSession.querySelector(textarea); if (textarea) textarea.focus(); } } catch (error) { setPreformNote(Network error. Please try again., true); } }); } const renderAttachPreview files > { if (!chatAttachPreview) return; chatAttachPreview.innerHTML ; files.forEach(file > { if (file.type && file.type.startsWith(image/)) { const img document.createElement(img); img.alt file.name; const objectUrl URL.createObjectURL(file); img.src objectUrl; img.addEventListener(load, () > { URL.revokeObjectURL(objectUrl); }); chatAttachPreview.appendChild(img); } else { const chip document.createElement(div); chip.className chat-attach-chip; chip.innerHTML `i classfas fa-file>/i>span>${file.name}/span>`; chatAttachPreview.appendChild(chip); } }); }; if (chatAttachBtn && chatFileInput) { chatAttachBtn.addEventListener(click, () > { chatFileInput.click(); }); chatFileInput.addEventListener(change, () > { const files Array.from(chatFileInput.files || ); renderAttachPreview(files); }); } if (chatForm && chatMessages) { chatForm.addEventListener(submit, async function (e) { e.preventDefault(); const textarea chatForm.querySelector(textarea); const message textarea ? textarea.value.trim() : ; const files chatFileInput ? Array.from(chatFileInput.files || ) : ; if (!message && files.length 0) return; if (!supportUserId || !supportUserEmail) { const errorBubble document.createElement(div); errorBubble.className chat-message chat-message--bot; errorBubble.textContent Please start the chat by sharing your contact details first.; chatMessages.appendChild(errorBubble); chatMessages.scrollTop chatMessages.scrollHeight; return; } try { let response; if (files.length > 0) { const formData new FormData(); formData.append(action, send); formData.append(user_id, String(supportUserId)); formData.append(email, supportUserEmail); formData.append(message, message); files.forEach(file > formData.append(attachments, file)); response await fetch(public/support_chat.php, { method: POST, body: formData }); } else { const payload new URLSearchParams({ action: send, user_id: supportUserId, email: supportUserEmail, message: message }); response await fetch(public/support_chat.php, { method: POST, headers: { Content-Type: application/x-www-form-urlencoded }, body: payload.toString() }); } const data await response.json(); if (!data.success) { const errorBubble document.createElement(div); errorBubble.className chat-message chat-message--bot; errorBubble.textContent data.error || Unable to send message. Please try again.; chatMessages.appendChild(errorBubble); chatMessages.scrollTop chatMessages.scrollHeight; return; } const userBubble document.createElement(div); userBubble.className chat-message chat-message--user; if (message) { const userText document.createElement(div); userText.textContent message; userBubble.appendChild(userText); } if (files.length > 0) { const attachmentsWrap document.createElement(div); attachmentsWrap.className chat-attachments; files.forEach(file > { if (file.type && file.type.startsWith(image/)) { const img document.createElement(img); img.className chat-attachment-thumb; const objectUrl URL.createObjectURL(file); img.src objectUrl; img.alt file.name; img.addEventListener(click, () > openChatImageModal(objectUrl)); attachmentsWrap.appendChild(img); } else { const link document.createElement(a); link.className chat-file-link; const objectUrl URL.createObjectURL(file); link.href objectUrl; link.download file.name; link.innerHTML `i classfas fa-file>/i>span>${file.name}/span>`; attachmentsWrap.appendChild(link); } }); userBubble.appendChild(attachmentsWrap); } chatMessages.appendChild(userBubble); const botBubble document.createElement(div); botBubble.className chat-message chat-message--bot; botBubble.textContent Thanks! Our support team will reply shortly.; chatMessages.appendChild(botBubble); if (textarea) textarea.value ; if (chatFileInput) chatFileInput.value ; if (chatAttachPreview) chatAttachPreview.innerHTML ; chatMessages.scrollTop chatMessages.scrollHeight; } catch (error) { const errorBubble document.createElement(div); errorBubble.className chat-message chat-message--bot; errorBubble.textContent Network error. Please try again.; chatMessages.appendChild(errorBubble); chatMessages.scrollTop chatMessages.scrollHeight; } }); } }); // Domain search functionality let lastSuggestions ; document.addEventListener(DOMContentLoaded, function() { const domainSearchForm document.querySelector(.domain-search-card form); if (domainSearchForm) { domainSearchForm.addEventListener(submit, function(e) { e.preventDefault(); const domainInput this.querySelector(inputtypetext); const domain domainInput.value.trim(); if (!domain) { showDomainResult(error, Please enter a domain name); return; } checkDomainAvailability(domain); }); } }); function checkDomainAvailability(domain) { showDomainResult(loading, domain); fetch(public/domain-checker.php, { method: POST, headers: { Content-Type: application/x-www-form-urlencoded }, body: domain + encodeURIComponent(domain) }) .then(response > response.json()) .then(data > { if (!data) { showDomainResult(error, Domain check failed. Please try again.); return; } if (data.success false) { showDomainResult(error, data.error || Domain check failed. Please try again.); return; } const status (data.status || ).toLowerCase(); const apiDomain data.domain || domain; const suggestions Array.isArray(data.suggestions) ? data.suggestions : ; lastSuggestions suggestions; if (status available) { const price data.price ?? data.registration_price ?? null; showDomainResult(available, apiDomain, price, suggestions); } else if (status taken) { showDomainResult(taken, apiDomain, null, suggestions); } else if (status unsupported) { showDomainResult(unsupported, apiDomain, null, suggestions); } else { showDomainResult(error, `We could not confirm availability for ${apiDomain}. Please try again or contact support.`); } }) .catch(error > { console.error(Error:, error); showDomainResult(error, Domain check service unavailable); }); } function showDomainResult(type, domain, price null, suggestions ) { const existingResult document.querySelector(.domain-result); if (existingResult) existingResult.remove(); const domainCard document.querySelector(.domain-search-card); const resultDiv document.createElement(div); resultDiv.className domain-result; switch (type) { case loading: resultDiv.innerHTML ` div classalert alert-info> i classfas fa-spinner fa-spin>/i> Checking availability for strong>${domain}/strong>... /div> `; break; case available: const priceText price ? `${formatBDT(price)}/year` : Available for registration; resultDiv.innerHTML ` div classalert alert-success> i classfas fa-check-circle>/i> strong>${domain}/strong> is available! div classmt-2> strong>${priceText}/strong> /div> ${renderSuggestions(suggestions, More options)} /div> `; break; case taken: resultDiv.innerHTML ` div classalert alert-warning stylebackground-color: white;> i classfas fa-times-circle>/i> strong>${domain}/strong> is already taken. button classbtn btn-outline-secondary btn-sm ms-2 onclicksuggestAlternatives(${domain})> Suggest Alternatives /button> strong>${renderSuggestions(suggestions, Available alternatives)}/strong> /div> `; break; case unsupported: resultDiv.innerHTML ` div classalert alert-warning> i classfas fa-ban>/i> We dont support registering strong>${domain}/strong>, but you can still host it here if you already own it. ${renderSuggestions(suggestions, Available alternatives)} /div> `; break; case error: resultDiv.innerHTML ` div classalert alert-danger> i classfas fa-exclamation-triangle>/i> ${domain} /div> `; break; } domainCard.appendChild(resultDiv); } function renderSuggestions(suggestions, title Suggestions) { if (!Array.isArray(suggestions) || suggestions.length 0) return ; let html `div classmt-3>strong>${title}:/strong>div classd-flex flex-wrap gap-2 mt-2>`; suggestions.forEach(sug > { const label sug.domain || (sug.sld && sug.tld ? `${sug.sld}.${sug.tld}` : ); if (!label) return; const priceValue sug.price ?? sug.registration_price ?? sug.cost ?? null; const priceText priceValue ? formatBDT(priceValue) : ; const badge priceText ? `span classbadge bg-light text-dark ms-1>${priceText}/span>` : ; html + ` button stylecolor: navy; classbtn btn-outline-primary btn-sm onclickcheckDomainAvailability(${label})> ${label} ${badge} /button> `; }); html + /div>/div>; return html; } function formatBDT(value) { const num Number(value); if (!isFinite(num)) return ; return `BDT ${num.toLocaleString(en-US, { minimumFractionDigits: 2, maximumFractionDigits: 2 })}`; } function suggestAlternatives(domain) { let suggestionsHtml ; if (lastSuggestions && lastSuggestions.length > 0) { suggestionsHtml renderSuggestions(lastSuggestions, Suggestions); } else { const parts domain.split(.); const name parts0; const tld parts1 || com; const alternatives `${name}online.${tld}`, `${name}site.${tld}`, `${name}web.${tld}`, `${name}app.${tld}`, `get${name}.${tld}`, `the${name}.${tld}` ; suggestionsHtml div classmt-3>strong>Suggestions:/strong>div classd-flex flex-wrap gap-2 mt-2>; alternatives.forEach(alt > { suggestionsHtml + ` button classbtn btn-outline-primary btn-sm onclickcheckDomainAvailability(${alt})> ${alt} /button> `; }); suggestionsHtml + /div>/div>; } const resultDiv document.querySelector(.domain-result); if (resultDiv && resultDiv.querySelector(.alert)) { resultDiv.querySelector(.alert).innerHTML + suggestionsHtml; } } function registerDomain(domain) { const appRoot ; const target `${window.location.origin}${appRoot}/public/cart/domain_config.php?domain${encodeURIComponent(domain)}`; window.location.href target; } // Add some CSS for the domain results const domainResultStyles ` .domain-result { margin-top: 1rem; animation: fadeIn 0.3s ease-in; } @keyframes fadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } `; const styleSheet document.createElement(style); styleSheet.textContent domainResultStyles; document.head.appendChild(styleSheet); // Swiper initialization for neon testimonials document.addEventListener(DOMContentLoaded, function () { const swiperContainer document.querySelector(.swiper-container); if (!swiperContainer) return; const swiper new Swiper(.swiper-container, { effect: coverflow, grabCursor: false, centeredSlides: true, centeredSlidesBounds: true, slidesPerView: auto, coverflowEffect: { rotate: 0, stretch: -40, depth: 200, modifier: 1.8, slideShadows: true, }, loop: true, autoplay: { delay: 500, disableOnInteraction: false, pauseOnMouseEnter: false, waitForTransition: true, }, navigation: false, pagination: { el: .swiper-pagination, clickable: true, dynamicBullets: true, }, breakpoints: { 320: { slidesPerView: 1, spaceBetween: 15, coverflowEffect: { stretch: 0, depth: 100, modifier: 1, }, }, 480: { slidesPerView: 1, spaceBetween: 20, coverflowEffect: { stretch: -20, depth: 120, modifier: 1.2, }, }, 768: { slidesPerView: 2, spaceBetween: 25, coverflowEffect: { stretch: -30, depth: 150, modifier: 1.5, }, }, 1024: { slidesPerView: 3, spaceBetween: 30, coverflowEffect: { stretch: -40, depth: 200, modifier: 1.8, }, }, 1440: { slidesPerView: 3, spaceBetween: 40, coverflowEffect: { stretch: -50, depth: 250, modifier: 2, }, }, }, speed: 800, followFinger: false, resistanceRatio: 0, touchRatio: 0, simulateTouch: false, shortSwipes: false, longSwipes: false, threshold: 0, watchSlidesProgress: false, slideToClickedSlide: false, allowTouchMove: false, }); console.log(Swiper initialized with automatic sliding only); }); // Navbar logo animations document.addEventListener(DOMContentLoaded, function() { const navbarConnections document.getElementById(navbarConnections); const navbarDDLetters document.querySelectorAll(.navbar-dd-letter); const navbarServerBody document.querySelector(.navbar-server-body); const navbarLogoContainer document.querySelector(.navbar-logo-container); if (navbarDDLetters.length > 0 && navbarServerBody) { // Start color animations navbarDDLetters.forEach(letter > { letter.style.animation + , navbarColorChangeDD 6s infinite ease-in-out; }); // Create data flow for navbar logo function createNavbarDataFlow() { // Clear existing connections if (navbarConnections) { navbarConnections.innerHTML ; } // Create a connection between DD letters and server const line document.createElement(div); line.style.position absolute; line.style.height 1px; line.style.background linear-gradient(90deg, #0ea5e9, #22d3ee); line.style.transformOrigin left; line.style.opacity 0; line.style.zIndex 1; line.style.boxShadow 0 0 3px #0ea5e9; // Position line from last DD to server const startX 75; // Right side of DD letters const startY 22; // Middle of DD letters const endX 110; // Left side of server const endY 22; // Middle of server const dx endX - startX; const dy endY - startY; const distance Math.sqrt(dx * dx + dy * dy); const angle Math.atan2(dy, dx) * 180 / Math.PI; line.style.width `${distance}px`; line.style.left `${startX}px`; line.style.top `${startY}px`; line.style.transform `rotate(${angle}deg)`; if (navbarConnections) { navbarConnections.appendChild(line); } // Animate line appearance setTimeout(() > { line.style.opacity 0.8; line.style.transition opacity 0.3s ease; }, 100); // Create data dot const dot document.createElement(div); dot.style.position absolute; dot.style.width 4px; dot.style.height 4px; dot.style.borderRadius 50%; dot.style.background #22d3ee; dot.style.boxShadow 0 0 4px #22d3ee; dot.style.opacity 0; dot.style.zIndex 2; dot.style.left `${startX}px`; dot.style.top `${startY}px`; if (navbarConnections) { navbarConnections.appendChild(dot); } // Animate dot along the line const duration 1500; const animation dot.animate( { transform: translate(0, 0) scale(1), opacity: 1 }, { transform: `translate(${dx}px, ${dy}px) scale(0.5)`, opacity: 0 } , { duration: duration, easing: linear }); // When dot reaches destination, trigger color changes setTimeout(() > { // Trigger color change on DD letters navbarDDLetters.forEach(letter > { letter.style.animation none; void letter.offsetWidth; letter.style.animation navbarColorChangeDD 0.5s ease-out, navbarFloatLeft 5s ease-in-out infinite; }); // Trigger color change on server navbarServerBody.style.animation none; void navbarServerBody.offsetWidth; navbarServerBody.style.animation navbarColorChangeServer 0.5s ease-out; // Reset after animation setTimeout(() > { navbarDDLetters.forEach(letter > { letter.style.animation navbarFloatLeft 5s ease-in-out infinite, navbarColorChangeDD 6s infinite ease-in-out; }); navbarServerBody.style.animation ; }, 500); }, duration - 100); // Remove dot and line after animation setTimeout(() > { line.style.opacity 0; if (dot.parentNode) { dot.parentNode.removeChild(dot); } setTimeout(() > { if (line.parentNode) { line.parentNode.removeChild(line); } }, 500); }, duration + 200); // Repeat the flow setTimeout(createNavbarDataFlow, 3000); } // Start data flow after a delay setTimeout(createNavbarDataFlow, 1000); // Add hover effect if (navbarLogoContainer) { navbarLogoContainer.addEventListener(mouseenter, function() { navbarDDLetters.forEach(letter > { letter.style.transform + scale(1.1); }); navbarServerBody.style.transform scale(1.1); }); navbarLogoContainer.addEventListener(mouseleave, function() { navbarDDLetters.forEach((letter, index) > { if (index 0) { letter.style.transform rotate(-3deg); } else { letter.style.transform rotate(3deg); } }); navbarServerBody.style.transform scale(1); }); } } }); /script>/body>/html>
Port 443
HTTP/1.1 200 OKConnection: Keep-AliveKeep-Alive: timeout5, max100x-powered-by: PHP/8.3.26content-type: text/html; charsetUTF-8transfer-encoding: chunkeddate: Mon, 09 Feb 2026 05:31:46 GMTserver: LiteSpeed !DOCTYPE html>html langen data-themelight>head> meta charsetUTF-8> meta nameviewport contentwidthdevice-width, initial-scale1.0> title>DDHOSTER - Professional Web Hosting Solutions/title> link relicon typeimage/png sizes32x32 hreffavicon-32.png> link relicon typeimage/png sizes64x64 hreffavicon-64.png> link relicon typeimage/png sizes128x128 hreffavicon-128.png> link relapple-touch-icon sizes180x180 hrefapple-touch-icon.png> link relshortcut icon hreffavicon.ico> link hrefhttps://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css relstylesheet> link relstylesheet hrefhttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css> link hrefhttps://fonts.googleapis.com/css2?familyPoppins:wght@300;600&displayswap relstylesheet> !-- Swiper CSS for neon testimonials slider --> link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css /> style> :root { /* Light Theme Colors - Updated to match DDialer aesthetic */ --primary: #0ef; --primary-dark: #00b3b3; --primary-light: #66ffff; --secondary: #1a1a1a; --accent: #00cc99; --text-primary: #ffffff; --text-secondary: #cccccc; --text-light: #a0aec0; --bg-primary: #0a0a23; --bg-secondary: #0f0f2d; --bg-tertiary: #1a1a3e; --border: rgba(0, 238, 255, 0.3); --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3); --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.3); --transition: all 0.3s ease; } data-themelight { --primary: #0066cc; --primary-dark: #004d99; --primary-light: #3399ff; --secondary: #1a1a1a; --accent: #00a67e; --text-primary: #1a1a1a; --text-secondary: #4a5568; --text-light: #718096; --bg-primary: #ffffff; --bg-secondary: #f7fafc; --bg-tertiary: #edf2f7; --border: #e2e8f0; --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1); } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: Poppins, sans-serif; background-color: var(--bg-primary); color: var(--text-primary); line-height: 1.6; transition: var(--transition); overflow-x: hidden; }/* ------------------ *//* Animated DDhoster Logo for Navbar - FIXED FOR ALL DEVICES */.navbar-logo-container { display: flex; align-items: center; gap: 6px; text-decoration: none; position: relative; height: 40px; /* Fixed height to match original navbar */ margin-right: 50px;}.navbar-dd-letters { display: flex; position: relative; height: 35px; /* Control the height */}.navbar-dd-letter { width: 28px; /* Reduced width */ height: 35px; /* Reduced height to fit navbar */ background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); border-radius: 6px; margin: 0 2px; display: flex; justify-content: center; align-items: center; font-size: 1.4rem; /* Smaller font */ font-weight: 900; color: white; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); box-shadow: 0 3px 8px rgba(14, 165, 233, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.2); position: relative; overflow: hidden; transition: all 0.3s ease;}.navbar-dd-letter::before { content: ; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(135deg, transparent 30%, rgba(255, 255, 255, 0.15) 50%, transparent 70%); animation: navbarShine 4s infinite linear; z-index: 1;}.navbar-dd-letter span { position: relative; z-index: 2; line-height: 1; margin-top: -2px; /* Fine tuning */}.navbar-dd-letter:first-child { transform: rotate(-2deg); animation: navbarFloatLeft 5s ease-in-out infinite;}.navbar-dd-letter:last-child { transform: rotate(2deg); animation: navbarFloatRight 5s ease-in-out infinite 0.5s;}.navbar-hoster-text { font-size: 1.4rem; /* Match the DD letters height */ font-weight: 800; background: linear-gradient(90deg, #22d3ee, #06b6d4); -webkit-background-clip: text; background-clip: text; color: transparent; text-shadow: 0 1px 3px rgba(34, 211, 238, 0.3); letter-spacing: 0.5px; height: 35px; display: flex; align-items: center; position: relative; animation: navbarTextGlow 3s infinite ease-in-out;}.navbar-hoster-text::after { content: ; position: absolute; bottom: 0; left: 0; width: 100%; height: 1.5px; background: linear-gradient(90deg, #22d3ee, #06b6d4); border-radius: 1px; animation: navbarUnderlinePulse 3s infinite ease-in-out;}/* Navbar server icon - smaller */.navbar-server-icon { position: relative; width: 24px; height: 32px; margin-left: 5px; margin-top: -2px; /* Fine tuning */ display: block !important; /* FORCE SHOW ON ALL DEVICES */}.navbar-server-body { position: absolute; width: 100%; height: 100%; background: linear-gradient(135deg, #475569 0%, #334155 100%); border-radius: 4px; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.08); overflow: hidden; transition: all 0.3s ease;}.navbar-server-body::before { content: ; position: absolute; top: 0; left: 0; right: 0; height: 8px; background: rgba(0, 0, 0, 0.15); border-radius: 4px 4px 0 0;}.navbar-server-slots { position: absolute; top: 10px; left: 4px; right: 4px; bottom: 6px; display: flex; flex-direction: column; gap: 2px;}.navbar-server-slot { height: 3px; background: rgba(0, 0, 0, 0.25); border-radius: 1px; position: relative; overflow: hidden;}.navbar-server-slot::after { content: ; position: absolute; top: 0; left: 0; height: 100%; width: 40%; background: linear-gradient(90deg, #0ea5e9, #22d3ee); animation: navbarSlotLoad 2.5s infinite ease-in-out;}.navbar-server-leds { position: absolute; bottom: 6px; right: 4px; display: flex; gap: 1.5px;}.navbar-server-led { width: 2.5px; height: 2.5px; border-radius: 50%; background: #0ea5e9; box-shadow: 0 0 3px #0ea5e9; animation: navbarLedBlink 1.5s infinite;}.navbar-server-led:nth-child(2) { animation-delay: 0.5s; background: #22d3ee; box-shadow: 0 0 3px #22d3ee;}.navbar-server-led:nth-child(3) { animation-delay: 1s; background: #3b82f6; box-shadow: 0 0 3px #3b82f6;}/* Navbar data connections */.navbar-data-connections { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 1; pointer-events: none;}/* Animations for navbar logo - SUBTLE for navbar */@keyframes navbarShine { 0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); } 100% { transform: translateX(100%) translateY(100%) rotate(45deg); }}@keyframes navbarFloatLeft { 0%, 100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(-2px) rotate(-3deg); }}@keyframes navbarFloatRight { 0%, 100% { transform: translateY(0) rotate(2deg); } 50% { transform: translateY(-2px) rotate(3deg); }}@keyframes navbarTextGlow { 0%, 100% { filter: drop-shadow(0 1px 2px rgba(34, 211, 238, 0.2)); } 50% { filter: drop-shadow(0 1px 3px rgba(34, 211, 238, 0.4)); }}@keyframes navbarUnderlinePulse { 0%, 100% { opacity: 0.6; width: 100%; } 50% { opacity: 0.9; width: 102%; }}@keyframes navbarSlotLoad { 0% { left: -40%; } 100% { left: 140%; }}@keyframes navbarLedBlink { 0%, 100% { opacity: 0.2; } 50% { opacity: 0.8; }}/* Color change animations for navbar - subtle */@keyframes navbarColorChangeDD { 0% { background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); box-shadow: 0 3px 8px rgba(14, 165, 233, 0.3); } 50% { background: linear-gradient(135deg, #22d3ee 0%, #06b6d4 100%); box-shadow: 0 3px 8px rgba(34, 211, 238, 0.4); } 100% { background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); box-shadow: 0 3px 8px rgba(14, 165, 233, 0.3); }}@keyframes navbarColorChangeServer { 0% { background: linear-gradient(135deg, #475569 0%, #334155 100%); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); } 50% { background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); box-shadow: 0 2px 6px rgba(14, 165, 233, 0.25); } 100% { background: linear-gradient(135deg, #475569 0%, #334155 100%); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); }}/* Responsive adjustments for navbar logo - FIXED FOR MOBILE */@media (max-width: 992px) { .navbar-logo-container { height: 38px; } .navbar-dd-letter { width: 26px; height: 32px; font-size: 1.3rem; } .navbar-hoster-text { font-size: 1.3rem; height: 32px; } .navbar-server-icon { width: 22px; height: 30px; margin-left: 4px; }}@media (max-width: 768px) { .navbar-logo-container { height: 36px; gap: 5px; } .navbar-dd-letter { width: 24px; height: 30px; font-size: 1.2rem; } .navbar-hoster-text { font-size: 1.2rem; height: 30px; } .navbar-server-icon { width: 20px; height: 28px; margin-left: 4px; }}/* Tablet portrait and large phones */@media (max-width: 576px) { .navbar-logo-container { height: 34px; gap: 4px; } .navbar-dd-letter { width: 22px; height: 28px; font-size: 1.1rem; margin: 0 1px; } .navbar-hoster-text { font-size: 1.1rem; height: 28px; letter-spacing: 0.3px; /* KEEP VISIBLE on mobile */ } .navbar-server-icon { width: 18px; height: 26px; margin-left: 3px; /* KEEP VISIBLE on mobile */ } .navbar-server-slots { top: 8px; left: 3px; right: 3px; bottom: 5px; gap: 1.5px; } .navbar-server-slot { height: 2.5px; } .navbar-server-leds { bottom: 5px; right: 3px; gap: 1px; } .navbar-server-led { width: 2px; height: 2px; }}/* Small phones */@media (max-width: 480px) { .navbar-logo-container { height: 32px; gap: 3px; } .navbar-dd-letter { width: 20px; height: 26px; font-size: 1rem; margin: 0 1px; } .navbar-hoster-text { font-size: 1rem; height: 26px; /* STILL VISIBLE on very small screens */ } .navbar-server-icon { width: 16px; height: 24px; margin-left: 2px; /* STILL VISIBLE on very small screens */ } .navbar-server-slots { top: 7px; left: 2px; right: 2px; bottom: 4px; gap: 1px; } .navbar-server-slot { height: 2px; } .navbar-server-leds { bottom: 4px; right: 2px; } .navbar-server-led { width: 1.5px; height: 1.5px; }}/* Extra small phones */@media (max-width: 375px) { .navbar-logo-container { height: 30px; gap: 2px; } .navbar-dd-letter { width: 18px; height: 24px; font-size: 0.9rem; } .navbar-hoster-text { font-size: 0.9rem; height: 24px; /* REDUCED BUT STILL VISIBLE */ } .navbar-server-icon { width: 14px; height: 22px; margin-left: 2px; /* REDUCED BUT STILL VISIBLE */ } /* Hide underline on very small screens to save space */ .navbar-hoster-text::after { height: 1px; }}/* Ensure navbar height doesnt change */.navbar { min-height: 56px; /* Match your original navbar height */}.navbar-brand { padding: 0; margin: 0; line-height: 1; display: flex; align-items: center; height: 40px; /* Match the logo container height */}/* Navbar toggler button adjustment for better alignment */.navbar-toggler { padding: 4px 8px; font-size: 1.1rem;}/* ----------------------------------- */ .navbar { background-color: rgba(10, 10, 35, 0.9); box-shadow: var(--shadow); padding: 1rem 0; transition: var(--transition); backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); } .navbar-scrolled { padding: 0.75rem 0; background-color: rgba(10, 10, 35, 0.95) !important; } data-themelight .navbar { background-color: rgba(255, 255, 255, 0.9); } data-themelight .navbar-scrolled { background-color: rgba(255, 255, 255, 0.95) !important; } .navbar-brand { font-weight: 700; font-size: 1.5rem; color: var(--primary) !important; display: flex; align-items: center; text-shadow: 0 0 10px var(--primary); transition: var(--transition); } /* Cyan hamburger for mobile */ .navbar-toggler { border-color: #00e5ff; box-shadow: none; } .navbar-toggler:focus { box-shadow: 0 0 0 0.15rem rgba(0, 229, 255, 0.35); } .navbar-toggler-icon { background-image: url(data:image/svg+xml;charsetUTF-8,%3Csvg xmlnshttp://www.w3.org/2000/svg viewBox0 0 32 32%3E%3Cpath stroke%2300e5ff stroke-width3 stroke-linecapround dM5 8h22M5 16h22M5 24h22/%3E%3C/svg%3E); } .navbar-brand:hover { text-shadow: 0 0 15px var(--primary); } .navbar-brand i { margin-right: 0.5rem; color: var(--primary); transition: var(--transition); animation: spin 8s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .nav-link { color: var(--text-secondary) !important; font-weight: 500; padding: 0.5rem 1rem !important; transition: var(--transition); border-radius: 6px; position: relative; } .nav-link:not(.dropdown-toggle)::after { content: ; position: absolute; bottom: 0; left: 50%; width: 0; height: 2px; background-color: var(--primary); transition: var(--transition); transform: translateX(-50%); box-shadow: 0 0 5px var(--primary); } .nav-link.dropdown-toggle::before { content: ; position: absolute; bottom: 0; left: 50%; width: 0; height: 2px; background-color: var(--primary); transition: var(--transition); transform: translateX(-50%); box-shadow: 0 0 5px var(--primary); } .nav-link:hover, .nav-link.active { color: var(--primary) !important; text-shadow: 0 0 5px var(--primary); } .nav-link:not(.dropdown-toggle):hover::after, .nav-link:not(.dropdown-toggle).active::after { width: 80%; } .nav-link.dropdown-toggle:hover::before, .nav-link.dropdown-toggle.show::before, .nav-link.dropdown-toggle.active::before { width: 80%; } .navbar .dropdown-menu { background-color: var(--bg-primary); border: 1px solid var(--border); box-shadow: var(--shadow); border-radius: 12px; padding: 0.35rem; } data-themelight .navbar .dropdown-menu { background-color: #ffffff; } .navbar .dropdown-item { color: var(--text-secondary); border-radius: 8px; padding: 0.45rem 0.85rem; transition: var(--transition); } .navbar .dropdown-item:hover, .navbar .dropdown-item:focus { color: var(--primary); background-color: rgba(0, 102, 204, 0.08); } @media (min-width: 992px) { .navbar .dropdown:hover .dropdown-menu { display: block; margin-top: 0; } } .theme-toggle { background: none; border: none; color: var(--text-secondary); font-size: 1.2rem; cursor: pointer; transition: var(--transition); padding: 0.5rem; border-radius: 50%; } .theme-toggle:hover { color: var(--primary); background-color: rgba(0, 238, 255, 0.1); text-shadow: 0 0 5px var(--primary); } /* Hero Section - Updated to match DDialer */ .hero-section { background: linear-gradient(135deg, var(--bg-primary) 0%, var(--bg-secondary) 100%); padding: 6rem 0; position: relative; overflow: hidden; } .hero-section::before { content: ; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient(circle at 20% 80%, rgba(0, 238, 255, 0.1) 0%, transparent 50%), radial-gradient(circle at 80% 20%, rgba(0, 166, 126, 0.1) 0%, transparent 50%); z-index: 0; animation: subtleFloat 20s ease-in-out infinite; } @keyframes subtleFloat { 0%, 100% { transform: translate(0, 0) scale(1); } 33% { transform: translate(1%, 1%) scale(1.02); } 66% { transform: translate(-1%, -1%) scale(0.98); } } .hero-content { position: relative; z-index: 1; } .hero-title { font-size: 3rem; font-weight: 800; margin-bottom: 1.5rem; color: var(--text-primary); opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease forwards; text-shadow: 0 0 10px rgba(255, 255, 255, 0.5); } .hero-subtitle { font-size: 1.25rem; color: var(--text-secondary); margin-bottom: 2rem; max-width: 600px; opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease 0.2s forwards; } .hero-badge { display: inline-block; background-color: var(--accent); color: white; padding: 0.5rem 1rem; border-radius: 50px; font-size: 0.875rem; font-weight: 600; margin-bottom: 1.5rem; opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease 0.1s forwards; box-shadow: 0 0 10px var(--accent); } .hero-cta { opacity: 0; transform: translateY(30px); animation: fadeInUp 0.8s ease 0.3s forwards; } .server-visualization { position: relative; height: 300px; display: flex; align-items: center; justify-content: center; opacity: 0; transform: translateX(50px); animation: slideInRight 1s ease 0.5s forwards; } .server-rack { display: flex; gap: 15px; } .server-blade { width: 60px; height: 200px; background: rgba(255, 255, 255, 0.05); border: 1px solid var(--border); border-radius: 8px; position: relative; overflow: hidden; box-shadow: var(--shadow); animation: serverPulse 3s ease-in-out infinite; } .server-blade:nth-child(1) { animation-delay: 0s; } .server-blade:nth-child(2) { animation-delay: 0.5s; } .server-blade:nth-child(3) { animation-delay: 1s; } .server-blade:nth-child(4) { animation-delay: 1.5s; } @keyframes serverPulse { 0%, 100% { transform: translateY(0); box-shadow: 0 0 5px rgba(0, 238, 255, 0.3); } 50% { transform: translateY(-10px); box-shadow: 0 0 20px rgba(0, 238, 255, 0.6); } } .server-blade::before { content: ; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--primary); animation: loadingBar 3s ease-in-out infinite; box-shadow: 0 0 5px var(--primary); } @keyframes loadingBar { 0%, 100% { transform: translateX(-100%); } 50% { transform: translateX(100%); } } .server-light { position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); width: 8px; height: 8px; background: var(--accent); border-radius: 50%; box-shadow: 0 0 8px var(--accent); animation: statusPulse 2s ease-in-out infinite; } @keyframes statusPulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.7; } } /* Animations */ @keyframes fadeInUp { to { opacity: 1; transform: translateY(0); } } @keyframes slideInRight { to { opacity: 1; transform: translateX(0); } } @keyframes slideInLeft { to { opacity: 1; transform: translateX(0); } } /* Domain Search */ .domain-search-section { background-color: var(--bg-secondary); padding: 4rem 0; margin-top: 70px; } .domain-search-card { background: rgba(255, 255, 255, 0.05); border: 1.5px solid var(--border); border-radius: 16px; box-shadow: 0 0 20px rgba(0, 238, 255, 0.2); padding: 2rem; opacity: 0; transform: translateY(30px); transition: var(--transition); backdrop-filter: blur(10px); } .domain-search-card.animate { animation: fadeInUp 0.8s ease forwards; } .domain-search-card:hover { box-shadow: 0 0 30px rgba(0, 238, 255, 0.4); } /* Pricing Section - Updated to match DDialer */ .pricing-section { padding: 5rem 0; background-color: var(--bg-primary); } .pricing-section .row { align-items: stretch; } .pricing-section .row > div { display: flex; } .pricing-card { width: 100%; } .pricing-toggle { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-bottom: 3rem; } .toggle-label { font-weight: 600; color: var(--text-secondary); transition: var(--transition); } .toggle-label.active { color: var(--primary); text-shadow: 0 0 5px var(--primary); } .toggle-switch { position: relative; width: 60px; height: 30px; background-color: var(--bg-tertiary); border-radius: 50px; cursor: pointer; transition: var(--transition); border: 1px solid var(--border); } .toggle-switch::before { content: ; position: absolute; top: 3px; left: 3px; width: 24px; height: 24px; background-color: var(--bg-primary); border-radius: 50%; transition: var(--transition); box-shadow: var(--shadow); } .toggle-switch.active { background-color: var(--primary); box-shadow: 0 0 10px var(--primary); } .toggle-switch.active::before { transform: translateX(30px); } .pricing-card { background: rgba(255, 255, 255, 0.05); border: 1.5px solid var(--border); border-radius: 16px; box-shadow: 0 0 10px rgba(0, 238, 255, 0.1); transition: var(--transition); overflow: hidden; height: 100%; opacity: 0; transform: translateY(30px); position: relative; backdrop-filter: blur(10px); } .pricing-card::before { content: ; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: linear-gradient(90deg, var(--primary), var(--primary-light)); } .pricing-card.animate { animation: fadeInUp 0.8s ease forwards; } .pricing-card:nth-child(1) { animation-delay: 0.1s; } .pricing-card:nth-child(2) { animation-delay: 0.2s; } .pricing-card:nth-child(3) { animation-delay: 0.3s; } .pricing-card:nth-child(4) { animation-delay: 0.4s; } .pricing-card:hover { transform: translateY(-10px); box-shadow: 0 0 20px rgba(0, 238, 255, 0.4); } .pricing-card.featured { border: 2px solid var(--primary); position: relative; z-index: 2; background: radial-gradient(circle at 50% 0%, rgba(0, 238, 255, 0.2) 0%, rgba(255, 255, 255, 0.03) 55%), rgba(255, 255, 255, 0.06); box-shadow: 0 0 25px rgba(0, 238, 255, 0.35), 0 0 60px rgba(0, 238, 255, 0.15); } .pricing-card.featured::after { content: MOST POPULAR; position: absolute; top: 0; right: 0; background-color: var(--primary); color: var(--bg-primary); padding: 0.5rem 1rem; font-size: 0.75rem; font-weight: 600; border-bottom-left-radius: 8px; text-shadow: none; } .pricing-card.featured.animate { animation: fadeInUpFeatured 0.8s ease forwards; } .pricing-card.featured:hover { transform: translateY(-10px) scale(1.04); box-shadow: 0 0 30px rgba(0, 238, 255, 0.45), 0 0 70px rgba(0, 238, 255, 0.2); } @keyframes fadeInUpFeatured { from { opacity: 0; transform: translateY(30px) scale(1); } to { opacity: 1; transform: translateY(0) scale(1.04); } } .pricing-header { padding: 2rem 1.5rem 1.5rem; text-align: center; border-bottom: 1px solid var(--border); } .pricing-title { font-size: 1.25rem; font-weight: 700; margin-bottom: 1rem; color: var(--primary); text-shadow: 0 0 5px var(--primary); } .pricing-price { font-size: 2.5rem; font-weight: 800; color: var(--primary); line-height: 1; text-shadow: 0 0 5px var(--primary); } .pricing-period { color: var(--text-light); font-size: 0.875rem; } .pricing-features { padding: 1.5rem; } .pricing-features ul { list-style: none; padding: 0; } .pricing-features li { padding: 0.5rem 0; color: var(--text-secondary); display: flex; align-items: center; } .pricing-features li i { color: var(--accent); margin-right: 0.75rem; font-size: 0.875rem; } .pricing-footer { padding: 1.5rem; text-align: center; } .btn-featured { background: linear-gradient(90deg, var(--primary-light), var(--primary)); border-color: var(--primary-light); color: #ffffff; box-shadow: 0 8px 20px rgba(0, 238, 255, 0.25); } .btn-featured:hover { background: linear-gradient(90deg, #7ffcff, var(--primary-light)); border-color: #7ffcff; color: #ffffff; box-shadow: 0 10px 26px rgba(0, 238, 255, 0.35); } .pricing-taglines { margin: -0.5rem 0 0.75rem; } .pricing-taglines span { display: block; font-size: 0.9rem; font-weight: 600; color: var(--text-secondary); } /* Features Section - Updated to match DDialer */ .features-section { padding: 5rem 0; background-color: var(--bg-secondary); } .feature-card { background: rgba(255, 255, 255, 0.05); border: 1.5px solid var(--border); border-radius: 16px; padding: 2rem; box-shadow: 0 0 10px rgba(0, 238, 255, 0.1); transition: var(--transition); height: 100%; text-align: center; opacity: 0; transform: translateY(30px); backdrop-filter: blur(10px); } .feature-card.animate { animation: fadeInUp 0.8s ease forwards; } .feature-card:nth-child(1) { animation-delay: 0.1s; } .feature-card:nth-child(2) { animation-delay: 0.2s; } .feature-card:nth-child(3) { animation-delay: 0.3s; } .feature-card:nth-child(4) { animation-delay: 0.4s; } .feature-card:nth-child(5) { animation-delay: 0.5s; } .feature-card:nth-child(6) { animation-delay: 0.6s; } .feature-card:hover { transform: translateY(-10px); box-shadow: 0 0 20px rgba(0, 238, 255, 0.4); } .feature-icon { width: 70px; height: 70px; margin: 0 auto 1.5rem; background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%); border-radius: 12px; display: flex; align-items: center; justify-content: center; color: var(--bg-primary); font-size: 1.75rem; transition: var(--transition); box-shadow: 0 0 10px var(--primary); } .feature-card:hover .feature-icon { transform: scale(1.1) rotate(5deg); box-shadow: 0 0 15px var(--primary); } .feature-title { font-size: 1.25rem; font-weight: 700; margin-bottom: 1rem; color: var(--primary); text-shadow: 0 0 5px var(--primary); } .feature-description { color: var(--text-secondary); } /* Neon Testimonials (DDialer-style balanced slider) */ .neon-testimonials { padding: 5rem 0; background: radial-gradient(circle at 10% 20%, rgba(0, 204, 153, 0.10), transparent 30%), radial-gradient(circle at 90% 80%, rgba(0, 204, 153, 0.08), transparent 30%), var(--bg-primary); position: relative; overflow: hidden; } .neon-testimonials .section-title { margin-bottom: 1.5rem; color: var(--accent); text-shadow: 0 0 12px var(--accent); } .neon-testimonials .swiper-container { width: 100%; max-width: 1400px; margin: 0 auto; padding: 2rem 0 5rem 0; position: relative; } .neon-testimonials .swiper-wrapper { align-items: center; transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); } .neon-testimonials .swiper-slide { display: flex; justify-content: center; align-items: center; width: auto; transition: all 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .neon-testimonials .testimonial-box { background: rgba(255, 255, 255, 0.05); border: 1.5px solid var(--accent); border-radius: 18px; padding: 2rem 1.75rem; box-shadow: 0 0 25px rgba(0, 204, 153, 0.6); text-align: center; width: 320px; height: 320px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; backdrop-filter: blur(14px); transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .neon-testimonials .swiper-slide-active .testimonial-box { transform: scale(1.08); box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3), 0 0 0 3px var(--accent); border-color: var(--accent); z-index: 20; } .neon-testimonials .swiper-slide-prev .testimonial-box, .neon-testimonials .swiper-slide-next .testimonial-box { transform: scale(0.95); opacity: 0.85; z-index: 10; } .neon-testimonials .swiper-slide:not(.swiper-slide-active):not(.swiper-slide-prev):not(.swiper-slide-next) .testimonial-box { transform: scale(0.85); opacity: 0.6; z-index: 1; } .neon-testimonials .testimonial-box img { width: 80px; height: 80px; border-radius: 50%; border: 2px solid var(--accent); object-fit: cover; margin-bottom: 1rem; box-shadow: 0 0 15px rgba(0, 204, 153, 0.9); } .neon-testimonials .testimonial-box p { color: var(--text-secondary); font-style: italic; margin-bottom: 0.75rem; } .neon-testimonials .testimonial-box h4 { color: var(--text-primary); margin: 0; font-weight: 600; } .neon-testimonials .swiper-pagination { bottom: 10px !important; } .neon-testimonials .swiper-pagination-bullet { background: var(--accent); opacity: 0.4; } .neon-testimonials .swiper-pagination-bullet-active { opacity: 1; box-shadow: 0 0 10px var(--accent); } /* Footer - Updated to match DDialer */ footer { background-color: #0a0a1a; color: white; padding: 4rem 0 2rem; position: relative; border-top: 1px solid var(--border); } footer::before { content: ; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%); } .footer-logo { display: inline-flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; color: var(--primary); text-decoration: none; } .footer-logo-img { height: 48px; width: auto; object-fit: contain; filter: drop-shadow(0 0 10px rgba(0, 238, 255, 0.4)); } .footer-logo-text { font-size: 1.5rem; font-weight: 700; color: var(--primary); text-shadow: 0 0 10px var(--primary); } .footer-description { color: #94a3b8; margin-bottom: 1.5rem; } .footer-heading { color: var(--primary); font-size: 1.125rem; font-weight: 600; margin-bottom: 1.5rem; position: relative; display: inline-block; text-shadow: 0 0 5px var(--primary); } .footer-heading::after { content: ; position: absolute; bottom: -8px; left: 0; width: 40px; height: 2px; background-color: var(--primary); box-shadow: 0 0 5px var(--primary); } .footer-links { list-style: none; padding: 0; } .footer-links li { margin-bottom: 0.75rem; } .footer-links a { color: #94a3b8; text-decoration: none; transition: var(--transition); position: relative; display: inline-block; } .footer-links a::after { content: ; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background-color: var(--primary); transition: var(--transition); box-shadow: 0 0 5px var(--primary); } .footer-links a:hover { color: var(--primary); transform: translateX(5px); text-shadow: 0 0 5px var(--primary); } .footer-links a:hover::after { width: 100%; } .footer-contact { list-style: none; padding: 0; margin: 0; } .footer-contact li { display: flex; gap: 0.75rem; color: #94a3b8; margin-bottom: 1rem; } .footer-contact i { color: var(--primary); font-size: 1.1rem; padding-top: 0.2rem; } .footer-contact a { color: #94a3b8; text-decoration: none; line-height: 1.5; } .footer-contact-link { display: flex; align-items: flex-start; gap: 0.75rem; color: #94a3b8; text-decoration: none; line-height: 1.5; } .footer-contact a:hover { color: var(--primary); text-shadow: 0 0 5px var(--primary); } .social-links { display: flex; gap: 1rem; margin-top: 1.5rem; } .social-links a { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; background-color: rgba(255, 255, 255, 0.1); border-radius: 8px; color: white; transition: var(--transition); position: relative; overflow: hidden; border: 1px solid var(--border); } .social-links a::before { content: ; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: left 0.5s; } .social-links a:hover::before { left: 100%; } .social-links a:hover { background-color: var(--primary); transform: translateY(-3px); box-shadow: 0 0 10px var(--primary); } .footer-bottom { border-top: 1px solid #334155; padding-top: 2rem; margin-top: 3rem; color: #94a3b8; font-size: 0.875rem; } /* Buttons - Updated to match DDialer */ .btn-primary { background: rgba(0, 238, 255, 0.1); border: 1.5px solid var(--primary); color: var(--primary); padding: 0.75rem 1.5rem; border-radius: 25px; font-weight: 600; transition: var(--transition); backdrop-filter: blur(10px); box-shadow: 0 0 15px rgba(0, 238, 255, 0.3); } .btn-primary:hover { background: rgba(0, 238, 255, 0.2); box-shadow: 0 0 20px rgba(0, 238, 255, 0.5); transform: translateY(-2px); color: var(--primary); } .btn-outline-primary { background: transparent; border: 1.5px solid var(--primary); color: var(--primary); padding: 0.75rem 1.5rem; border-radius: 25px; font-weight: 600; transition: var(--transition); backdrop-filter: blur(10px); } .btn-outline-primary:hover { background: rgba(0, 238, 255, 0.1); box-shadow: 0 0 15px rgba(0, 238, 255, 0.3); transform: translateY(-2px); color: var(--primary); } .btn-signup { padding: 0.85rem 1.8rem; font-size: 1.02rem; } /* Form Elements - Updated to match DDialer */ .form-control, .form-select { background: rgba(255, 255, 255, 0.05); border: 1px solid var(--border); color: var(--text-primary); border-radius: 8px; padding: 0.75rem 1rem; transition: var(--transition); backdrop-filter: blur(10px); } .form-control:focus, .form-select:focus { background: rgba(255, 255, 255, 0.08); border-color: var(--primary); box-shadow: 0 0 0 0.25rem rgba(0, 238, 255, 0.25); color: white; } .form-control::placeholder { color: var(--text-light); } /* FAQ Section */ .faq-section { padding: 5rem 0; background: radial-gradient(circle at 10% 20%, rgba(0, 238, 255, 0.04), transparent 25%), radial-gradient(circle at 90% 10%, rgba(255, 255, 255, 0.03), transparent 20%), rgba(8, 10, 26, 0.9); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); } .faq-header { max-width: 720px; margin: 0 auto 2.5rem; text-align: center; } .faq-kicker { display: inline-block; padding: 0.25rem 0.75rem; border-radius: 999px; background: rgba(0, 238, 255, 0.08); border: 1px solid var(--primary); color: var(--primary); font-size: 0.85rem; letter-spacing: 0.5px; text-transform: uppercase; margin-bottom: 0.75rem; } .faq-wrapper { max-width: 900px; margin: 0 auto; } .faq-item { border: 1px solid var(--border); background: rgba(255, 255, 255, 0.02); border-radius: 12px; padding: 1rem 1.25rem; margin-bottom: 1rem; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25); } .faq-question { display: flex; align-items: center; justify-content: space-between; cursor: pointer; font-weight: 600; font-size: 1rem; color: var(--text-primary); outline: none; } .faq-question-text { margin-right: 10px; } .faq-question i { transition: transform 0.3s ease, color 0.3s ease; color: var(--primary); } .faq-questionaria-expandedtrue i { transform: rotate(45deg); color: var(--accent); } .faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.35s ease; font-size: 0.95rem; color: #cbd5e1; } .faq-answer p { margin-top: 10px; line-height: 1.5; } .faq-answer.show { /* height set via JS */ } .faq-more { display: none; } .faq-more.is-open { display: block; } .faq-toggle-wrap { text-align: center; margin-top: 1rem; } .faq-show-more { min-width: 160px; } .faq-cta { margin-top: 2.5rem; text-align: center; padding: 1.75rem 1.5rem; border: 1px solid var(--border); border-radius: 16px; background: rgba(255, 255, 255, 0.03); box-shadow: 0 12px 34px rgba(0, 0, 0, 0.25); backdrop-filter: blur(10px); } .faq-cta-title { font-size: 1.4rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--text-primary); } .faq-cta-text { color: var(--text-secondary); margin-bottom: 1.25rem; } data-themelight .faq-cta { background: #ffffff; box-shadow: var(--shadow-lg); } /* Chat Support Widget */ .chat-widget { position: fixed; inset: 0; z-index: 9999; pointer-events: none; } .chat-widget.is-open { pointer-events: auto; } .chat-overlay { position: absolute; inset: 0; background: rgba(5, 8, 20, 0.55); opacity: 0; transition: var(--transition); } .chat-widget.is-open .chat-overlay { opacity: 1; } .chat-popup { position: absolute; right: 24px; bottom: 90px; width: 360px; max-width: calc(100vw - 32px); background: var(--bg-primary); border: 1px solid var(--border); border-radius: 18px; overflow: hidden; box-shadow: 0 25px 60px rgba(0, 0, 0, 0.35); opacity: 0; transform: translateY(18px) scale(0.98); transition: var(--transition); } .chat-widget.is-open .chat-popup { opacity: 1; transform: translateY(0) scale(1); } .chat-header { display: flex; align-items: center; justify-content: space-between; padding: 1rem 1.25rem; background: linear-gradient(135deg, rgba(0, 102, 204, 0.25), rgba(0, 166, 126, 0.2)); border-bottom: 1px solid var(--border); } .chat-header h4 { margin: 0; font-size: 1.05rem; font-weight: 700; color: var(--text-primary); } .chat-status { display: inline-flex; align-items: center; gap: 6px; font-size: 0.85rem; color: var(--text-secondary); } .chat-status::before { content: ; width: 8px; height: 8px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 6px rgba(34, 197, 94, 0.6); } .chat-close { background: transparent; border: none; color: var(--text-primary); font-size: 1rem; padding: 0.25rem; line-height: 1; } .chat-body { padding: 1rem 1.25rem 1.25rem; background: var(--bg-secondary); } .chat-preform { display: flex; flex-direction: column; gap: 0.9rem; } .chat-preform-title { font-size: 1rem; font-weight: 600; color: var(--text-primary); } .chat-preform-note { font-size: 0.85rem; color: var(--text-light); } .chat-inputs { display: flex; flex-direction: column; gap: 0.75rem; } .chat-session { display: none; } .chat-widget.is-ready .chat-preform { display: none; } .chat-widget.is-ready .chat-session { display: block; } .chat-messages { display: flex; flex-direction: column; gap: 0.75rem; max-height: 220px; overflow-y: auto; padding-right: 4px; margin-bottom: 1rem; } .chat-message { padding: 0.75rem 0.9rem; border-radius: 12px; font-size: 0.95rem; line-height: 1.4; } .chat-message--bot { background: rgba(0, 166, 126, 0.12); border: 1px solid rgba(0, 166, 126, 0.35); color: var(--text-secondary); } .chat-message--user { align-self: flex-end; background: rgba(0, 102, 204, 0.18); border: 1px solid rgba(0, 102, 204, 0.35); color: var(--text-primary); } .chat-form .form-control { margin-bottom: 0.75rem; } .chat-form textarea { resize: none; } .chat-input-row { display: flex; align-items: flex-start; gap: 0.6rem; margin-bottom: 0.75rem; } .chat-attach-btn { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; border: 1px solid rgba(34, 211, 238, 0.5); background: rgba(14, 165, 233, 0.12); color: #22d3ee; transition: var(--transition); flex-shrink: 0; } .chat-attach-btn:hover { background: rgba(14, 165, 233, 0.2); color: #e9fdff; transform: translateY(-1px); } .chat-attach-preview { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 0.75rem; } .chat-attach-chip { display: inline-flex; align-items: center; gap: 6px; padding: 0.35rem 0.6rem; border-radius: 999px; background: rgba(0, 102, 204, 0.18); border: 1px solid rgba(0, 102, 204, 0.35); color: var(--text-secondary); font-size: 0.8rem; } .chat-attach-chip i { font-size: 0.75rem; } .chat-message-files { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.5rem; font-size: 0.8rem; color: var(--text-secondary); } .chat-message-files span { padding: 0.25rem 0.45rem; border-radius: 8px; border: 1px solid rgba(0, 166, 126, 0.35); background: rgba(0, 166, 126, 0.12); } .chat-attachments { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.6rem; } .chat-attachment-thumb { width: 76px; height: 76px; border-radius: 10px; object-fit: cover; cursor: pointer; border: 1px solid var(--border); box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18); transition: transform 0.2s ease, border-color 0.2s ease; } .chat-attachment-thumb:hover { transform: scale(1.04); border-color: var(--primary); } .chat-file-link { display: inline-flex; align-items: center; gap: 6px; padding: 0.35rem 0.6rem; border-radius: 10px; border: 1px solid rgba(0, 102, 204, 0.35); background: rgba(0, 102, 204, 0.15); color: var(--text-secondary); text-decoration: none; font-size: 0.8rem; } .chat-file-link:hover { color: var(--text-primary); border-color: var(--primary); } .chat-attach-preview img { width: 52px; height: 52px; object-fit: cover; border-radius: 8px; border: 1px solid var(--border); } .chat-image-modal { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; background: rgba(5, 8, 20, 0.85); z-index: 10001; padding: 1.5rem; } .chat-image-modal.is-open { display: flex; } .chat-image-modal img { max-width: 92vw; max-height: 86vh; border-radius: 16px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5); } .chat-image-close { position: absolute; top: 20px; right: 20px; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(34, 211, 238, 0.5); background: rgba(14, 165, 233, 0.2); color: #e9fdff; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; } .chat-fab { position: fixed; right: 24px; bottom: 24px; z-index: 10000; display: inline-flex; align-items: center; gap: 10px; padding: 0.7rem 1.6rem; border-radius: 999px; border: 1.5px solid #22d3ee; background: rgba(6, 18, 36, 0.92); color: #64f0ff; font-weight: 600; letter-spacing: 0.2px; box-shadow: 0 8px 20px rgba(14, 165, 233, 0.35), 0 0 18px rgba(34, 211, 238, 0.25); transition: var(--transition); backdrop-filter: blur(6px); } .chat-fab:hover { transform: translateY(-2px); box-shadow: 0 14px 28px rgba(14, 165, 233, 0.45), 0 0 26px rgba(34, 211, 238, 0.35); color: #e9fdff; border-color: #7df7ff; } .chat-fab i { font-size: 1rem; } .chat-widget.is-open + .chat-fab { opacity: 0; pointer-events: none; transform: translateY(10px); } @media (max-width: 576px) { .chat-popup { right: 16px; left: 16px; bottom: 90px; width: auto; } .chat-fab { right: 16px; bottom: 16px; padding: 0.65rem 1.2rem; } } data-themelight .chat-popup { background: #ffffff; } data-themelight .chat-body { background: #f7fafc; } /* Terms & Conditions Section */ .terms-section { padding: 5rem 0; background: radial-gradient(circle at 10% 20%, rgba(0, 238, 255, 0.04), transparent 25%), radial-gradient(circle at 90% 10%, rgba(255, 255, 255, 0.03), transparent 20%), rgba(8, 10, 26, 0.9); border-bottom: 1px solid var(--border); } .policy-toggle { display: flex; align-items: center; justify-content: center; gap: 0.9rem; margin: 1.75rem 0 2.5rem; flex-wrap: wrap; } .policy-panels { max-width: 1100px; margin: 0 auto; } .policy-panel { animation: fadeInUp 0.45s ease both; } .policy-card { border: 1px solid var(--border); background: rgba(255, 255, 255, 0.02); border-radius: 14px; padding: 1.5rem 1.5rem 1.25rem; box-shadow: 0 12px 34px rgba(0, 0, 0, 0.25); backdrop-filter: blur(10px); height: 100%; } .policy-card-head { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.4rem; } .policy-card-head i { color: var(--primary); font-size: 1.25rem; text-shadow: 0 0 10px rgba(0, 238, 255, 0.35); } .policy-card h3 { margin: 0; font-size: 1.15rem; font-weight: 700; letter-spacing: 0.2px; color: var(--text-primary); } .policy-meta { margin: 0 0 1rem; color: var(--text-light); font-size: 0.9rem; } .policy-content { color: var(--text-secondary); font-size: 0.96rem; line-height: 1.65; } .policy-content p { margin-bottom: 0.75rem; } .policy-content ol { padding-left: 1.15rem; margin: 0; } .policy-content li { margin-bottom: 0.8rem; } .policy-content li:last-child { margin-bottom: 0; } .policy-content strong { color: var(--text-primary); } .policy-callout { margin-top: 1rem; padding: 0.85rem 1rem; border-radius: 12px; border: 1px dashed rgba(0, 238, 255, 0.35); background: rgba(0, 238, 255, 0.06); color: var(--text-secondary); } @media (max-width: 576px) { .policy-card { padding: 1.25rem 1.1rem 1rem; } .policy-card h3 { font-size: 1.05rem; } } /* Light theme tweaks for FAQ and Terms to match other sections */ data-themelight .faq-section { background: var(--bg-secondary); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); } data-themelight .faq-item { background: #ffffff; border-color: var(--border); box-shadow: var(--shadow); } data-themelight .faq-answer { color: var(--text-secondary); } data-themelight .terms-section { background: var(--bg-secondary); } data-themelight .policy-card { background: #ffffff; border-color: var(--border); box-shadow: var(--shadow-lg); } data-themelight .policy-card-head i { text-shadow: none; } data-themelight .policy-content { color: var(--text-secondary); } data-themelight .policy-callout { border-color: var(--primary-light); background: rgba(0, 102, 204, 0.06); } /* Make Terms/Policy Show more/less buttons visible in light mode */ data-themelight .policy-show-more { border-color: var(--primary); color: var(--primary); background: #ffffff; font-weight: 500; } data-themelight .policy-show-more:hover { background: var(--primary); color: #ffffff; box-shadow: var(--shadow); } /* Section Titles */ .section-title { color: var(--primary); text-shadow: 0 0 10px var(--primary); margin-bottom: 3rem; text-align: center; font-weight: 700; } /* */ /* NEW YEAR 2026 POPUP STYLES */ /* */ .newyear-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.85); backdrop-filter: blur(10px); z-index: 9999; display: flex; align-items: center; justify-content: center; opacity: 0; animation: fadeIn 0.5s ease forwards; } @keyframes fadeIn { to { opacity: 1; } } .newyear-popup { position: relative; max-width: 600px; width: 90%; background: linear-gradient(135deg, #0a0a23 0%, #1a1a3e 50%, #0a0a23 100%); border: 2px solid #0ea5e9; border-radius: 24px; padding: 3rem 2rem; text-align: center; box-shadow: 0 0 60px rgba(14, 165, 233, 0.6), 0 0 100px rgba(59, 130, 246, 0.4), inset 0 0 60px rgba(14, 165, 233, 0.1); transform: scale(0.8); animation: popupScale 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55) 0.3s forwards; overflow: hidden; } @keyframes popupScale { to { transform: scale(1); } } /* Animated Circuit Background */ .popup-circuit-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0.15; z-index: 0; } .circuit-line { position: absolute; background: linear-gradient(90deg, transparent, #0ea5e9, transparent); animation: circuitFlow 3s linear infinite; } .circuit-line.horizontal { height: 1px; width: 100%; } .circuit-line.vertical { width: 1px; height: 100%; } .circuit-line:nth-child(1) { top: 20%; animation-delay: 0s; } .circuit-line:nth-child(2) { top: 40%; animation-delay: 0.5s; } .circuit-line:nth-child(3) { top: 60%; animation-delay: 1s; } .circuit-line:nth-child(4) { top: 80%; animation-delay: 1.5s; } .circuit-line:nth-child(5) { left: 20%; animation-delay: 0.3s; } .circuit-line:nth-child(6) { left: 50%; animation-delay: 0.8s; } .circuit-line:nth-child(7) { left: 80%; animation-delay: 1.3s; } @keyframes circuitFlow { 0% { opacity: 0; transform: translateX(-100%); } 50% { opacity: 1; } 100% { opacity: 0; transform: translateX(100%); } } .popup-content { position: relative; z-index: 1; } /* Close Button */ .popup-close { position: absolute; top: 1rem; right: 1rem; background: rgba(14, 165, 233, 0.2); border: 1px solid #0ea5e9; border-radius: 50%; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; z-index: 2; } .popup-close:hover { background: rgba(14, 165, 233, 0.4); transform: rotate(90deg) scale(1.1); box-shadow: 0 0 20px rgba(14, 165, 233, 0.6); } .popup-close i { color: #0ea5e9; font-size: 1.2rem; } /* Server Icon Animation */ .popup-server-icon { position: relative; width: 100px; height: 120px; margin: 0 auto 2rem; animation: floatServer 3s ease-in-out infinite; } @keyframes floatServer { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-15px) rotate(2deg); } } .popup-server-body { position: absolute; width: 100%; height: 100%; background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 100%); border-radius: 12px; box-shadow: 0 10px 40px rgba(14, 165, 233, 0.6), inset 0 2px 0 rgba(255, 255, 255, 0.3); overflow: hidden; } .popup-server-body::before { content: ; position: absolute; top: 0; left: 0; right: 0; height: 15px; background: rgba(0, 0, 0, 0.2); border-radius: 12px 12px 0 0; } .popup-server-slots { position: absolute; top: 20px; left: 10px; right: 10px; bottom: 20px; display: flex; flex-direction: column; gap: 6px; } .popup-server-slot { height: 8px; background: rgba(0, 0, 0, 0.3); border-radius: 4px; position: relative; overflow: hidden; } .popup-server-slot::after { content: ; position: absolute; top: 0; left: 0; height: 100%; width: 60%; background: linear-gradient(90deg, #22d3ee, #06b6d4); animation: serverDataFlow 2s ease-in-out infinite; box-shadow: 0 0 10px #22d3ee; } .popup-server-slot:nth-child(1)::after { animation-delay: 0s; } .popup-server-slot:nth-child(2)::after { animation-delay: 0.3s; } .popup-server-slot:nth-child(3)::after { animation-delay: 0.6s; } .popup-server-slot:nth-child(4)::after { animation-delay: 0.9s; } @keyframes serverDataFlow { 0% { transform: translateX(-100%); } 100% { transform: translateX(200%); } } .popup-server-leds { position: absolute; bottom: 15px; right: 12px; display: flex; gap: 6px; } .popup-server-led { width: 8px; height: 8px; border-radius: 50%; background: #22d3ee; box-shadow: 0 0 15px #22d3ee; animation: ledPulse 1.5s ease-in-out infinite; } .popup-server-led:nth-child(1) { animation-delay: 0s; } .popup-server-led:nth-child(2) { animation-delay: 0.5s; background: #06b6d4; box-shadow: 0 0 15px #06b6d4; } .popup-server-led:nth-child(3) { animation-delay: 1s; background: #0ea5e9; box-shadow: 0 0 15px #0ea5e9; } @keyframes ledPulse { 0%, 100% { opacity: 0.3; transform: scale(1); } 50% { opacity: 1; transform: scale(1.2); } } /* Floating Data Particles around Server */ .data-particle { position: absolute; width: 4px; height: 4px; background: #22d3ee; border-radius: 50%; box-shadow: 0 0 10px #22d3ee; animation: dataFloat 3s ease-in-out infinite; } .data-particle:nth-child(1) { left: -20px; top: 20%; animation-delay: 0s; } .data-particle:nth-child(2) { right: -20px; top: 40%; animation-delay: 0.5s; } .data-particle:nth-child(3) { left: -15px; top: 60%; animation-delay: 1s; } .data-particle:nth-child(4) { right: -15px; top: 80%; animation-delay: 1.5s; } @keyframes dataFloat { 0%, 100% { transform: translateY(0) translateX(0); opacity: 0; } 25% { opacity: 1; } 50% { transform: translateY(-30px) translateX(10px); } 75% { opacity: 1; } 100% { transform: translateY(-60px) translateX(0); opacity: 0; } } /* Year Text with Glitch Effect */ .popup-year { font-size: 5rem; font-weight: 900; background: linear-gradient(135deg, #0ea5e9, #22d3ee, #3b82f6); -webkit-background-clip: text; background-clip: text; color: transparent; text-shadow: 0 0 30px rgba(14, 165, 233, 0.8); margin: 1rem 0; position: relative; animation: yearGlow 2s ease-in-out infinite; } @keyframes yearGlow { 0%, 100% { filter: drop-shadow(0 0 20px rgba(14, 165, 233, 0.8)); } 50% { filter: drop-shadow(0 0 40px rgba(59, 130, 246, 1)); } } /* Title */ .popup-title { font-size: 2.5rem; font-weight: 800; color: #ffffff; margin-bottom: 1rem; text-shadow: 0 0 20px rgba(14, 165, 233, 0.6); animation: titlePulse 2s ease-in-out infinite; } @keyframes titlePulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } /* Message */ .popup-message { font-size: 1.1rem; color: #94a3b8; line-height: 1.6; margin-bottom: 2rem; } .popup-message strong { color: #22d3ee; text-shadow: 0 0 10px rgba(34, 211, 238, 0.5); } /* CTA Button */ .popup-cta { display: inline-block; padding: 1rem 2.5rem; background: linear-gradient(135deg, #0ea5e9, #3b82f6); border: 2px solid #22d3ee; border-radius: 50px; color: #ffffff; font-weight: 700; font-size: 1.1rem; text-decoration: none; transition: all 0.3s ease; box-shadow: 0 0 30px rgba(14, 165, 233, 0.5); animation: ctaGlow 2s ease-in-out infinite; } @keyframes ctaGlow { 0%, 100% { box-shadow: 0 0 30px rgba(14, 165, 233, 0.5); } 50% { box-shadow: 0 0 50px rgba(59, 130, 246, 0.8); } } .popup-cta:hover { transform: translateY(-5px) scale(1.05); box-shadow: 0 10px 50px rgba(14, 165, 233, 0.8); color: #ffffff; } /* Fireworks/Crackers Background */ .fireworks-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; z-index: 0; pointer-events: none; } .firework { position: absolute; width: 4px; height: 4px; border-radius: 50%; animation: fireworkLaunch 2s ease-out infinite; } @keyframes fireworkLaunch { 0% { transform: translateY(100vh) scale(1); opacity: 1; } 50% { opacity: 1; } 100% { transform: translateY(0) scale(0); opacity: 0; } } .firework-explosion { position: absolute; width: 5px; height: 5px; border-radius: 50%; animation: explode 1.5s ease-out forwards; } @keyframes explode { 0% { transform: translate(0, 0) scale(1); opacity: 1; } 100% { opacity: 0; } } /* Confetti/Sparkles */ .sparkle { position: absolute; width: 8px; height: 8px; background: #22d3ee; border-radius: 50%; opacity: 0; animation: sparkleFloat 3s ease-in-out infinite; } .sparkle::before, .sparkle::after { content: ; position: absolute; width: 100%; height: 100%; background: inherit; border-radius: 50%; } .sparkle::before { transform: scale(0.6) translate(-10px, 0); } .sparkle::after { transform: scale(0.6) translate(10px, 0); } @keyframes sparkleFloat { 0% { transform: translateY(0) rotate(0deg); opacity: 0; } 25% { opacity: 1; } 100% { transform: translateY(-100px) rotate(360deg); opacity: 0; } } .sparkle:nth-child(1) { left: 10%; top: 80%; animation-delay: 0s; background: #0ea5e9; } .sparkle:nth-child(2) { left: 20%; top: 70%; animation-delay: 0.5s; background: #22d3ee; } .sparkle:nth-child(3) { left: 80%; top: 75%; animation-delay: 1s; background: #3b82f6; } .sparkle:nth-child(4) { left: 90%; top: 85%; animation-delay: 1.5s; background: #06b6d4; } .sparkle:nth-child(5) { left: 50%; top: 90%; animation-delay: 2s; background: #0ea5e9; } /* Confetti pieces falling */ .confetti { position: absolute; width: 10px; height: 10px; background: #0ea5e9; animation: confettiFall 3s linear infinite; } @keyframes confettiFall { 0% { transform: translateY(-100px) rotate(0deg); opacity: 1; } 100% { transform: translateY(100vh) rotate(720deg); opacity: 0; } } /* Responsive */ @media (max-width: 768px) { .newyear-popup { padding: 2rem 1.5rem; } .popup-year { font-size: 3.5rem; } .popup-title { font-size: 1.8rem; } .popup-message { font-size: 1rem; } .popup-server-icon { width: 80px; height: 100px; } } @media (max-width: 480px) { .popup-year { font-size: 2.5rem; } .popup-title { font-size: 1.5rem; } .popup-cta { padding: 0.8rem 2rem; font-size: 1rem; } } /* Responsive Adjustments */ @media (max-width: 991px) { .hero-title { font-size: 2.5rem; } .server-visualization { height: 250px; margin-top: 2rem; } } @media (max-width: 767px) { .hero-title { font-size: 2rem; } .pricing-toggle { flex-direction: column; gap: 0.5rem; } .neon-testimonials .swiper-container { max-width: 98vw; padding: 1.5rem 0 3rem 0; } .neon-testimonials .testimonial-box { width: 280px; height: 280px; padding: 1.5rem 1.25rem; } .neon-testimonials .testimonial-box img { width: 70px; height: 70px; } } @media (max-width: 480px) { .neon-testimonials .testimonial-box { width: 250px; height: 250px; padding: 1.2rem 1rem; } .neon-testimonials .testimonial-box img { width: 60px; height: 60px; } } /style>/head>body> !-- Header --> nav classnavbar navbar-expand-lg navbar-light fixed-top> div classcontainer> a classnavbar-brand href#home> div classnavbar-logo-container> !-- DD Letters (Blue) --> div classnavbar-dd-letters> div classnavbar-dd-letter>span>D/span>/div> div classnavbar-dd-letter>span>D/span>/div> /div> !-- HOSTER Text (Cyan) --> div classnavbar-hoster-text>hoster/div> !-- Hosting Server Icon --> div classnavbar-server-icon> div classnavbar-server-body> div classnavbar-server-slots> div classnavbar-server-slot>/div> div classnavbar-server-slot>/div> div classnavbar-server-slot>/div> /div> div classnavbar-server-leds> div classnavbar-server-led>/div> div classnavbar-server-led>/div> div classnavbar-server-led>/div> /div> /div> /div> !-- Data connections (will be added by JavaScript) --> div classnavbar-data-connections idnavbarConnections>/div> /div>/a>!-- ------------------------- --> button classnavbar-toggler typebutton data-bs-togglecollapse data-bs-target#navbarNav> span classnavbar-toggler-icon>/span> /button> div classcollapse navbar-collapse idnavbarNav> ul classnavbar-nav me-auto> li classnav-item> a classnav-link active href#home>Home/a> /li> li classnav-item> a classnav-link href#pricing>Hosting/a> /li> li classnav-item> a classnav-link href#domain-search>Domains/a> /li> li classnav-item> a classnav-link href#features>Services/a> /li> li classnav-item> a classnav-link href#testimonials>Support/a> /li> li classnav-item dropdown> a classnav-link dropdown-toggle hrefterms.php idpolicyDropdown rolebutton data-bs-toggledropdown aria-expandedfalse> Policy /a> ul classdropdown-menu aria-labelledbypolicyDropdown> li>a classdropdown-item hrefterms.php>Terms & Conditions/a>/li> li>a classdropdown-item hrefprivacy.php>Privacy Policy/a>/li> li>a classdropdown-item hrefrefund.php>Refund Policy/a>/li> /ul> /li> /ul> div classd-flex align-items-center> button classtheme-toggle me-3 idthemeToggle> i classfas fa-moon>/i> /button> a hrefpublic/login.php classbtn btn-primary me-2>Login/a> a hrefpublic/register.php classbtn btn-primary btn-signup>Sign Up/a> /div> /div> /div> /nav> !-- Hero Section --> section classhero-section idhome> div classcontainer> div classrow align-items-center> div classcol-lg-6 hero-content> span classhero-badge>Opening Offer: Get 20% OFF on Yearly Plans/span> h1 classhero-title>Fast & Reliable Web Hosting in Bangladesh/h1> p classhero-subtitle>Launch your website with high-speed NVMe hosting, free SSL, and 24/7 expert support — powered by DDHOSTER, a sister concern of Dial Dynamic Ltd./p> div classd-flex gap-3 hero-cta> a href#pricing classbtn btn-primary btn-lg>View Plans/a> a href#features classbtn btn-outline-primary btn-lg>Learn More/a> /div> /div> div classcol-lg-6> div classserver-visualization> div classserver-rack> div classserver-blade> div classserver-light>/div> /div> div classserver-blade> div classserver-light>/div> /div> div classserver-blade> div classserver-light>/div> /div> div classserver-blade> div classserver-light>/div> /div> /div> /div> /div> /div> /div> /section> !-- Domain Search Section --> section classdomain-search-section iddomain-search> div classcontainer> div classrow justify-content-center> div classcol-lg-8> h2 classsection-title>Find Your Perfect Domain/h2> div classdomain-search-card iddomainCard> form classinput-group input-group-lg> input typetext classform-control placeholderEnter your domain name...> button classbtn btn-primary typesubmit>Search/button> /form> /div> /div> /div> /div> /section> !-- Pricing Section --> section classpricing-section idpricing> div classcontainer> div classtext-center mb-5> h2 classsection-title>Choose Your DDHOSTER Hosting Plan/h2> p classlead>Scalable solutions optimized for Bangladesh with DDHOSTER speed/p> !-- Pricing Toggle --> div classpricing-toggle> span classtoggle-label active idmonthlyLabel>Monthly/span> div classtoggle-switch idpricingToggle>/div> span classtoggle-label idyearlyLabel>Yearly small stylecolor: var(--accent);>(Save 20%)/small>/span> /div> /div> div classrow> !-- Basic Plan --> div classcol-lg-3 col-md-6 mb-4> div classpricing-card idpricingCard1> div classpricing-header> h3 classpricing-title>Basic Plan/h3> div classpricing-price> span classmonthly-price>৳ 99/span> span classyearly-price styledisplay: none;>৳ 950/span> /div> div classpricing-period> span classmonthly-price>/month/span> span classyearly-price styledisplay: none;>/year (Save ৳ 238)/span> /div> /div> div classpricing-features> ul> li>i classfas fa-check>/i> 1 GB NVMe Storage/li> li>i classfas fa-check>/i> 50 GB Bandwidth/li> li>i classfas fa-check>/i> 1 Website/li> li>i classfas fa-check>/i> 5 Subdomains/li> li>i classfas fa-check>/i> 5 Email Accounts/li> li>i classfas fa-check>/i> 2 Databases/li> li>i classfas fa-check>/i> Free SSL Certificate/li> li>i classfas fa-check>/i> LiteSpeed Server/li> li>i classfas fa-check>/i> cPanel Control Panel/li> li>i classfas fa-check>/i> DDHOSTER Optimized Speed/li> li>i classfas fa-check>/i> 24/7 Support/li> /ul> /div> div classpricing-footer> a hrefpublic/login.php classbtn btn-outline-primary w-100>Get Started/a> /div> /div> /div> !-- Standard Plan --> div classcol-lg-3 col-md-6 mb-4> div classpricing-card featured idpricingCard2> div classpricing-header> h3 classpricing-title>Standard Plan/h3> div classpricing-price> span classmonthly-price>৳ 199/span> span classyearly-price styledisplay: none;>৳ 1,900/span> /div> div classpricing-period> span classmonthly-price>/month/span> span classyearly-price styledisplay: none;>/year (Save ৳ 488)/span> /div> /div> div classpricing-features> ul> li>i classfas fa-check>/i> 3 GB NVMe Storage/li> li>i classfas fa-check>/i> 150 GB Bandwidth/li> li>i classfas fa-check>/i> 2 Websites/li> li>i classfas fa-check>/i> 10 Subdomains/li> li>i classfas fa-check>/i> 10 Email Accounts/li> li>i classfas fa-check>/i> 5 Databases/li> li>i classfas fa-check>/i> Free SSL Certificate/li> li>i classfas fa-check>/i> LiteSpeed Server/li> li>i classfas fa-check>/i> cPanel Control Panel/li> li>i classfas fa-check>/i> DDHOSTER Optimized Speed/li> li>i classfas fa-check>/i> 24/7 Support/li> /ul> /div> div classpricing-footer> a hrefpublic/login.php classbtn btn-primary btn-featured w-100>Get Started/a> /div> /div> /div> !-- Advanced Plan --> div classcol-lg-3 col-md-6 mb-4> div classpricing-card idpricingCard3> div classpricing-header> h3 classpricing-title>Advanced Plan/h3> div classpricing-price> span classmonthly-price>৳ 299/span> span classyearly-price styledisplay: none;>৳ 2,900/span> /div> div classpricing-period> span classmonthly-price>/month/span> span classyearly-price styledisplay: none;>/year (Save ৳ 688)/span> /div> /div> div classpricing-features> ul> li>i classfas fa-check>/i> 5 GB NVMe Storage/li> li>i classfas fa-check>/i> 300 GB Bandwidth/li> li>i classfas fa-check>/i> 5 Websites/li> li>i classfas fa-check>/i> Unlimited Subdomains/li> li>i classfas fa-check>/i> 25 Email Accounts/li> li>i classfas fa-check>/i> Unlimited Databases/li> li>i classfas fa-check>/i> Free SSL Certificate/li> li>i classfas fa-check>/i> LiteSpeed Server/li> li>i classfas fa-check>/i> cPanel Control Panel/li> li>i classfas fa-check>/i> DDHOSTER Optimized Speed/li> li>i classfas fa-check>/i> 24/7 Support/li> /ul> /div> div classpricing-footer> a hrefpublic/login.php classbtn btn-outline-primary w-100>Get Started/a> /div> /div> /div> !-- Premium Plan --> div classcol-lg-3 col-md-6 mb-4> div classpricing-card idpricingCard4> div classpricing-header> h3 classpricing-title>Premium Plan/h3> div classpricing-taglines> span>Best for Business/span> span>Recommended for agencies/span> /div> div classpricing-price> span classmonthly-price>৳ 499/span> span classyearly-price styledisplay: none;>৳ 4,800/span> /div> div classpricing-period> span classmonthly-price>/month/span> span classyearly-price styledisplay: none;>/year (Save ৳ 1,188)/span> /div> /div> div classpricing-features> ul> li>i classfas fa-check>/i> 10 GB NVMe Storage/li> li>i classfas fa-check>/i> 600 GB Bandwidth/li> li>i classfas fa-check>/i> 10 Websites/li> li>i classfas fa-check>/i> Unlimited Subdomains/li> li>i classfas fa-check>/i> Unlimited Email Accounts/li> li>i classfas fa-check>/i> Unlimited Databases/li> li>i classfas fa-check>/i> Free SSL Certificate/li> li>i classfas fa-check>/i> LiteSpeed Server/li> li>i classfas fa-check>/i> Weekly Backup/li> li>i classfas fa-check>/i> DDHOSTER Optimized Speed/li> li>i classfas fa-check>/i> 99.9% Uptime Guarantee/li> li>i classfas fa-check>/i> 24/7 Priority Support/li> /ul> /div> div classpricing-footer> a hrefpublic/login.php classbtn btn-outline-primary w-100>Get Started/a> /div> /div> /div> /div> /div> /section> !-- Features Section --> section classfeatures-section idfeatures> div classcontainer> div classtext-center mb-5> h2 classsection-title>Why Choose DDHOSTER?/h2> p classlead>Enterprise-grade features that set us apart/p> /div> div classrow> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard1> div classfeature-icon> i classfas fa-flag>/i> /div> h3 classfeature-title>Bangladesh-Optimized Servers/h3> p classfeature-description>Low-latency routing and local peering tuned for fast load times across Bangladesh./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard2> div classfeature-icon> i classfas fa-exchange-alt>/i> /div> h3 classfeature-title>Free Migration Support/h3> p classfeature-description>We move your website, database, and email at no extra cost with minimal downtime./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard3> div classfeature-icon> i classfas fa-credit-card>/i> /div> h3 classfeature-title>Local Payment Methods/h3> p classfeature-description>Pay easily via popular Bangladeshi gateways and mobile wallets./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard4> div classfeature-icon> i classfas fa-bolt>/i> /div> h3 classfeature-title>Instant Account Setup/h3> p classfeature-description>Get your hosting activated in minutes so you can launch right away./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard5> div classfeature-icon> i classfas fa-expand>/i> /div> h3 classfeature-title>Easy Scalability/h3> p classfeature-description>Grow your hosting resources seamlessly as your business expands./p> /div> /div> div classcol-lg-4 col-md-6 mb-4> div classfeature-card idfeatureCard6> div classfeature-icon> i classfas fa-code>/i> /div> h3 classfeature-title>Developer Friendly/h3> p classfeature-description>Full SSH access, Git integration, and support for all major frameworks./p> /div> /div> /div> /div> /section> !-- Neon Testimonials Section (DDialer-style with accent glow) --> section idtestimonials classneon-testimonials> h2 classsection-title>Our Clients Love Us/h2> div classswiper-container> div classswiper-wrapper> div classswiper-slide> div classtestimonial-box> img srcimages/sayeb1.jpeg altClient 1 /> p> After moving our site to DDHOSTER, the loading speed improved immediately. Visitors from Dhaka and abroad are getting a much smoother experience now. /p> h4>Ubaida/h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/sayeb2.jpeg altClient 2 /> p> Their cPanel hosting is very easy to manage. One-click SSL, email setup, and backups are all handled in a few minutes even for non-technical users. /p> h4>Sayeb/h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/rafi1.jpeg altClient 3 /> p> DDHOSTER migrated my WordPress site from another provider without downtime. Files, database, and emails were all moved perfectly. /p> h4>Rafael R./h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/fharhana.jpeg altClient 4 /> p> Their support team is super responsive. I raised a ticket late at night about a DNS issue and they fixed it faster than I expected. /p> h4>Fharhana Eti/h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/rafi2.jpeg altClient 5 /> p> As a developer, I love the performance and flexibility. PHP versions, staging, and database access are all smooth on DDHOSTER. /p> h4>Imran H./h4> /div> /div> div classswiper-slide> div classtestimonial-box> img srcimages/feedback.jpeg altClient 6 /> p> Domain registration, hosting, and professional email – everything in one place. Plus, paying via local gateways is very convenient for our team. /p> h4>Kaniz Tasnim/h4> /div> /div> /div> !-- Pagination --> div classswiper-pagination>/div> /div> /section> !-- FAQ --> section classfaq-section idfaq aria-labelFrequently Asked Questions> div classcontainer> div classfaq-header> span classfaq-kicker>Support/span> h2 classsection-title>Frequently Asked Questions/h2> p classtext-light>Answers to common questions about DDHOSTER hosting, domains, security, and support./p> /div> div classfaq-wrapper> !-- FAQ 1 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq1> span classfaq-question-text>What services does DDHOSTER provide?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq1 roleregion aria-hiddentrue> p>DDHOSTER provides fast and reliable web hosting with cPanel, domain registration, email hosting, and DNS/nameserver management. You can host websites, manage domains, and control everything from a simple client area and cPanel dashboard./p> /div> /div> !-- FAQ 2 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq2> span classfaq-question-text>Which hosting plan should I choose?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq2 roleregion aria-hiddentrue> p>For a single small website, our basic shared hosting plan is usually enough. If you run multiple sites, handle higher traffic, or need more resources, choose a higher tier plan. You can always start small and upgrade instantly from your client area when your project grows./p> /div> /div> !-- FAQ 3 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq3> span classfaq-question-text>Can you migrate my website from another hosting provider?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq3 roleregion aria-hiddentrue> p>Yes. If you already have a website hosted elsewhere, our team can help migrate your files, databases, and email accounts to DDHOSTER. Just open a support ticket after your order and share your old hosting details — well handle the move with minimal downtime./p> /div> /div> !-- FAQ 4 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq4> span classfaq-question-text>Is my website and data secure with DDHOSTER?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq4 roleregion aria-hiddentrue> p>We use secure servers, regular security patches, and isolation between accounts to keep your data safe. You can enable SSL for your domains, manage secure FTP and strong passwords from cPanel, and use our backup options to protect your website content./p> /div> /div> !-- FAQ 5 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq5> span classfaq-question-text>How do I manage my domain and nameservers?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq5 roleregion aria-hiddentrue> p>You can manage domains directly from the DDHOSTER client area. Update nameservers, renew domains, and connect them to your hosting package in a few clicks. DNS changes may take some time to fully propagate across the internet./p> /div> /div> div classfaq-more idfaqMore> !-- FAQ 6 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq6> span classfaq-question-text>What kind of support do you offer?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq6 roleregion aria-hiddentrue> p>We provide friendly technical support for hosting, domains, and cPanel-related issues. You can contact us from your client area via ticket or other available channels. We also maintain guides and documentation to help you get started quickly./p> /div> /div> !-- FAQ 7 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq7> span classfaq-question-text>Where are your servers located?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq7 roleregion aria-hiddentrue> p>Our hosting servers are optimized for fast performance and reliable uptime for Bangladesh-based websites./p> /div> /div> !-- FAQ 8 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq8> span classfaq-question-text>Do you provide free website migration?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq8 roleregion aria-hiddentrue> p>Yes. We provide free migration support for your website, database, and email accounts with minimal downtime./p> /div> /div> !-- FAQ 9 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq9> span classfaq-question-text>Which payment methods do you accept?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq9 roleregion aria-hiddentrue> p>We accept bKash, Nagad, card payments, and bank transfer for customers in Bangladesh./p> /div> /div> !-- FAQ 10 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq10> span classfaq-question-text>How long does it take to activate hosting?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq10 roleregion aria-hiddentrue> p>Instant activation after payment./p> /div> /div> !-- FAQ 11 --> div classfaq-item> div classfaq-question tabindex0 rolebutton aria-expandedfalse aria-controlsfaq11> span classfaq-question-text>Do you offer a money-back guarantee?/span> i classfas fa-plus aria-hiddentrue>/i> /div> div classfaq-answer idfaq11 roleregion aria-hiddentrue> p>Yes. We offer a money-back guarantee under our refund policy. See our Refund Policy page for details./p> /div> /div> /div> div classfaq-toggle-wrap> button classbtn btn-outline-primary faq-show-more typebutton idfaqToggle aria-expandedfalse aria-controlsfaqMore>Show More/button> /div> /div> div classfaq-cta> h3 classfaq-cta-title>Still have questions?/h3> p classfaq-cta-text>Contact our support team for quick help./p> button typebutton classbtn btn-primary idcontactSupportBtn>Contact Support/button> /div> /div> /section> !-- Footer --> footer> div classcontainer> div classrow> div classcol-lg-3 col-md-6 mb-4> a href#home classfooter-logo> span classfooter-logo-text>DDHOSTER/span> /a> p classfooter-description>DDHOSTER provides reliable web hosting, domain registration, and website infrastructure solutions for businesses and individuals in Bangladesh./p> /div> div classcol-lg-3 col-md-6 mb-4> h4 classfooter-heading>Useful Links/h4> ul classfooter-links> li>a href#features>Features/a>/li> li>a href#pricing>Pricing/a>/li> li>a href#testimonials>Testimonials/a>/li> li>a href#faq>FAQ/a>/li> li>a hrefpublic/login.php>Login/a>/li> li>a hrefpublic/register.php>Register/a>/li> /ul> /div> div classcol-lg-3 col-md-6 mb-4> h4 classfooter-heading>Legal/h4> ul classfooter-links> li>a hrefterms.php>Terms & Conditions/a>/li> li>a hrefprivacy.php>Privacy Policy/a>/li> li>a hrefrefund.php>Refund Policy/a>/li> /ul> /div> div classcol-lg-3 col-md-6 mb-4> h4 classfooter-heading>Contact Us/h4> ul classfooter-contact> li> i classfas fa-headset>/i> div> a hreftel: +8809617626262>24/7 Support: +88 09617 62 62 62/a> /div> /li> li> a classfooter-contact-link idfooterEmailLink data-emailsupport@ddialer.xyz hrefmailto:support@ddialer.xyz> i classfas fa-envelope>/i> span>support@ddialer.xyz/span> /a> /li> li> i classfas fa-map-marker-alt>/i> div> a hrefhttps://maps.google.com/?q124/48, Block-A, Road-9 West Dhanmondi, Bosila, Mohammadpur, Dhaka-1207 target_blank relnoopener>124/48, Block-A, Road-9br>West Dhanmondi, Bosila,br>Mohammadpur, Dhaka-1207/a> /div> /li> /ul> /div> /div> div classfooter-bottom text-center> p>© 2026 DDialer. All rights reserved. A product of Dial Dynamic Ltd./p> /div> /div> /footer> !-- Chat Support Widget --> div classchat-widget idchatWidget aria-hiddentrue> div classchat-overlay idchatOverlay>/div> div classchat-popup roledialog aria-modaltrue aria-labelledbychatTitle> div classchat-header> div> h4 idchatTitle>Chat Support/h4> span classchat-status>Online/span> /div> button classchat-close typebutton idchatClose aria-labelClose chat> i classfas fa-times>/i> /button> /div> div classchat-body> form classchat-preform idchatPreform> div> div classchat-preform-title>Start a quick chat/div> div classchat-preform-note>Share your details so we can assist you faster./div> /div> div classchat-inputs> input classform-control typetext idchatName placeholderYour name required> input classform-control typeemail idchatEmail placeholderEmail address required> input classform-control typetel idchatPhone placeholderPhone number required> /div> button classbtn btn-primary w-100 typesubmit>Start Chat/button> /form> div classchat-session idchatSession> div classchat-messages idchatMessages> div classchat-message chat-message--bot> Hi! Need help with hosting, domains, or billing? Send us a message and our team will respond shortly. /div> /div> form classchat-form idchatForm> div classchat-input-row> button classchat-attach-btn typebutton idchatAttachBtn aria-labelAttach files> i classfas fa-paperclip>/i> /button> textarea classform-control rows2 placeholderType your message...>/textarea> /div> div classchat-attach-preview idchatAttachPreview>/div> input typefile idchatFileInput multiple styledisplay: none;> button classbtn btn-primary w-100 typesubmit>Send Message/button> /form> /div> /div> /div> /div> button classchat-fab idchatFab typebutton aria-haspopupdialog aria-controlschatWidget> i classfas fa-comments>/i> Chat Support /button> div classchat-image-modal idchatImageModal aria-hiddentrue> button typebutton classchat-image-close idchatImageClose aria-labelClose image preview> i classfas fa-times>/i> /button> img src altPreview idchatModalImage> /div> script srchttps://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js>/script> !-- Swiper JS for testimonials slider --> script srchttps://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js>/script> script> // Footer email: mailto with Gmail fallback function openEmailWithFallback(email) { const safeEmail (email || ).trim(); if (!safeEmail) return; const mailtoUrl `mailto:${encodeURIComponent(safeEmail)}`; const gmailUrl `https://mail.google.com/mail/?viewcm&fs1&to${encodeURIComponent(safeEmail)}`; window.location.href mailtoUrl; setTimeout(() > { if (document.visibilityState visible && document.hasFocus()) { window.open(gmailUrl, _blank, noopener); } }, 700); } document.addEventListener(DOMContentLoaded, function () { const footerEmailLink document.getElementById(footerEmailLink); if (footerEmailLink) { footerEmailLink.addEventListener(click, function (e) { e.preventDefault(); const email footerEmailLink.getAttribute(data-email) || footerEmailLink.textContent; openEmailWithFallback(email); }); } }); // Theme Toggle const themeToggle document.getElementById(themeToggle); const themeIcon themeToggle.querySelector(i); themeToggle.addEventListener(click, () > { const currentTheme document.documentElement.getAttribute(data-theme); const newTheme currentTheme light ? dark : light; document.documentElement.setAttribute(data-theme, newTheme); if (newTheme dark) { themeIcon.classList.remove(fa-moon); themeIcon.classList.add(fa-sun); } else { themeIcon.classList.remove(fa-sun); themeIcon.classList.add(fa-moon); } // Save theme preference localStorage.setItem(theme, newTheme); }); // Check for saved theme preference const savedTheme localStorage.getItem(theme); if (savedTheme) { document.documentElement.setAttribute(data-theme, savedTheme); if (savedTheme dark) { themeIcon.classList.remove(fa-moon); themeIcon.classList.add(fa-sun); } } // Pricing Toggle const pricingToggle document.getElementById(pricingToggle); const monthlyLabel document.getElementById(monthlyLabel); const yearlyLabel document.getElementById(yearlyLabel); const monthlyPrices document.querySelectorAll(.monthly-price); const yearlyPrices document.querySelectorAll(.yearly-price); if (pricingToggle && monthlyLabel && yearlyLabel) { pricingToggle.addEventListener(click, () > { pricingToggle.classList.toggle(active); if (pricingToggle.classList.contains(active)) { monthlyLabel.classList.remove(active); yearlyLabel.classList.add(active); monthlyPrices.forEach(price > price.style.display none); yearlyPrices.forEach(price > price.style.display inline); } else { monthlyLabel.classList.add(active); yearlyLabel.classList.remove(active); monthlyPrices.forEach(price > price.style.display inline); yearlyPrices.forEach(price > price.style.display none); } }); } // Smooth scrolling for anchor links document.querySelectorAll(ahref^#).forEach(anchor > { anchor.addEventListener(click, function (e) { const target document.querySelector(this.getAttribute(href)); if (target) { e.preventDefault(); target.scrollIntoView({ behavior: smooth, block: start }); } }); }); // Navbar scroll effect window.addEventListener(scroll, function() { const navbar document.querySelector(.navbar); if (window.scrollY > 50) { navbar.classList.add(navbar-scrolled); } else { navbar.classList.remove(navbar-scrolled); } }); // Intersection Observer for animations const observerOptions { threshold: 0.1, rootMargin: 0px 0px -50px 0px }; const observer new IntersectionObserver(function(entries) { entries.forEach(entry > { if (entry.isIntersecting) { entry.target.classList.add(animate); } }); }, observerOptions); // Observe elements for animation const elementsToAnimate document.getElementById(domainCard), document.getElementById(pricingCard1), document.getElementById(pricingCard2), document.getElementById(pricingCard3), document.getElementById(pricingCard4), document.getElementById(featureCard1), document.getElementById(featureCard2), document.getElementById(featureCard3), document.getElementById(featureCard4), document.getElementById(featureCard5), document.getElementById(featureCard6) ; elementsToAnimate.forEach(element > { if (element) observer.observe(element); }); // FAQ accordion document.addEventListener(DOMContentLoaded, function () { const faqQuestions document.querySelectorAll(.faq-question); faqQuestions.forEach(question > { const answerId question.getAttribute(aria-controls); const answer document.getElementById(answerId); if (!answer) return; const icon question.querySelector(i); const setState expanded > { question.setAttribute(aria-expanded, expanded ? true : false); answer.setAttribute(aria-hidden, expanded ? false : true); if (expanded) { answer.classList.add(show); answer.style.maxHeight answer.scrollHeight + px; if (icon) { icon.classList.remove(fa-plus); icon.classList.add(fa-minus); } } else { answer.classList.remove(show); answer.style.maxHeight 0px; if (icon) { icon.classList.remove(fa-minus); icon.classList.add(fa-plus); } } }; setState(false); const toggleFAQ () > { const expanded question.getAttribute(aria-expanded) true; setState(!expanded); }; question.addEventListener(click, toggleFAQ); question.addEventListener(keydown, function(e) { if (e.key Enter || e.key ) { e.preventDefault(); toggleFAQ(); } }); }); }); // FAQ show more/less document.addEventListener(DOMContentLoaded, function () { const faqMore document.getElementById(faqMore); const faqToggle document.getElementById(faqToggle); if (!faqMore || !faqToggle) return; const setMoreState isOpen > { faqMore.classList.toggle(is-open, isOpen); faqToggle.setAttribute(aria-expanded, isOpen ? true : false); faqToggle.textContent isOpen ? Show Less : Show More; }; setMoreState(false); faqToggle.addEventListener(click, () > { const isOpen faqMore.classList.contains(is-open); setMoreState(!isOpen); }); }); // Chat support widget document.addEventListener(DOMContentLoaded, function () { const chatWidget document.getElementById(chatWidget); const chatFab document.getElementById(chatFab); const chatClose document.getElementById(chatClose); const chatOverlay document.getElementById(chatOverlay); const contactSupportBtn document.getElementById(contactSupportBtn); const chatForm document.getElementById(chatForm); const chatMessages document.getElementById(chatMessages); const chatPreform document.getElementById(chatPreform); const chatSession document.getElementById(chatSession); const chatName document.getElementById(chatName); const chatEmail document.getElementById(chatEmail); const chatPhone document.getElementById(chatPhone); const chatAttachBtn document.getElementById(chatAttachBtn); const chatFileInput document.getElementById(chatFileInput); const chatAttachPreview document.getElementById(chatAttachPreview); const chatImageModal document.getElementById(chatImageModal); const chatModalImage document.getElementById(chatModalImage); const chatImageClose document.getElementById(chatImageClose); if (!chatWidget || !chatFab) return; let chatReady false; let supportUserId null; let supportUserEmail ; let supportUserName ; let supportUserPhone ; const storedId localStorage.getItem(ddhoster_support_user_id); const storedEmail localStorage.getItem(ddhoster_support_email); const storedName localStorage.getItem(ddhoster_support_name); const storedPhone localStorage.getItem(ddhoster_support_phone); if (chatName && storedName) chatName.value storedName; if (chatEmail && storedEmail) chatEmail.value storedEmail; if (chatPhone && storedPhone) chatPhone.value storedPhone; if (storedId) { const parsedId parseInt(storedId, 10); if (!Number.isNaN(parsedId)) { supportUserId parsedId; } } if (storedEmail) supportUserEmail storedEmail; if (storedName) supportUserName storedName; if (storedPhone) supportUserPhone storedPhone; const setChatReady ready > { chatReady ready; chatWidget.classList.toggle(is-ready, ready); }; const renderAttachments (attachments, target) > { if (!attachments || attachments.length 0) return; const attachmentsWrap document.createElement(div); attachmentsWrap.className chat-attachments; attachments.forEach(att > { if (att.type && att.type.startsWith(image/) && att.data) { const img document.createElement(img); img.className chat-attachment-thumb; img.src att.data; img.alt att.name || Attachment; img.addEventListener(click, () > openChatImageModal(att.data)); attachmentsWrap.appendChild(img); } else { const link document.createElement(a); link.className chat-file-link; link.href att.data || #; link.download att.name || attachment; link.target _blank; link.rel noopener noreferrer; link.innerHTML `i classfas fa-file>/i>span>${att.name || Download file}/span>`; attachmentsWrap.appendChild(link); } }); target.appendChild(attachmentsWrap); }; const renderHistory messages > { if (!chatMessages) return; chatMessages.innerHTML ; if (!messages || messages.length 0) { const botBubble document.createElement(div); botBubble.className chat-message chat-message--bot; botBubble.textContent Hi! Need help with hosting, domains, or billing? Send us a message and our team will respond shortly.; chatMessages.appendChild(botBubble); return; } messages.forEach(msg > { const isUser msg.sender user; const bubble document.createElement(div); bubble.className `chat-message ${isUser ? chat-message--user : chat-message--bot}`; if (msg.message) { const text document.createElement(div); text.textContent msg.message; bubble.appendChild(text); } if (msg.attachments) { try { const attachments JSON.parse(msg.attachments); renderAttachments(attachments, bubble); } catch (e) { // ignore parse issues } } chatMessages.appendChild(bubble); }); chatMessages.scrollTop chatMessages.scrollHeight; }; const loadHistory async () > { if (!supportUserEmail) return; try { const payload new URLSearchParams({ action: history, user_id: supportUserId ? String(supportUserId) : , email: supportUserEmail }); const response await fetch(public/support_chat.php, { method: POST, headers: { Content-Type: application/x-www-form-urlencoded }, body: payload.toString() }); const data await response.json(); if (data.success) { if (!supportUserId && data.user_id) { supportUserId data.user_id; } renderHistory(data.messages || ); } } catch (error) { // ignore history failures } }; const openChatImageModal src > { if (!chatImageModal || !chatModalImage) return; chatModalImage.src src; chatImageModal.classList.add(is-open); chatImageModal.setAttribute(aria-hidden, false); }; const closeChatImageModal () > { if (!chatImageModal || !chatModalImage) return; chatImageModal.classList.remove(is-open); chatImageModal.setAttribute(aria-hidden, true); chatModalImage.src ; }; const openChat () > { setChatReady(chatReady); chatWidget.classList.add(is-open); chatWidget.setAttribute(aria-hidden, false); }; const closeChat () > { chatWidget.classList.remove(is-open); chatWidget.setAttribute(aria-hidden, true); }; chatFab, contactSupportBtn.forEach(btn > { if (btn) btn.addEventListener(click, openChat); }); chatClose, chatOverlay.forEach(el > { if (el) el.addEventListener(click, closeChat); }); document.addEventListener(keydown, function (e) { if (e.key Escape) { closeChat(); } }); if (chatImageClose) { chatImageClose.addEventListener(click, closeChatImageModal); } if (chatImageModal) { chatImageModal.addEventListener(click, (e) > { if (e.target chatImageModal) { closeChatImageModal(); } }); } if (chatPreform) { const preformNote chatPreform.querySelector(.chat-preform-note); const setPreformNote (msg, isError false) > { if (!preformNote) return; preformNote.textContent msg; preformNote.style.color isError ? #f87171 : ; }; if (chatName && !chatName.value) { chatName.value localStorage.getItem(ddhoster_support_name) || ; } if (chatEmail && !chatEmail.value) { chatEmail.value localStorage.getItem(ddhoster_support_email) || ; } if (chatPhone && !chatPhone.value) { chatPhone.value localStorage.getItem(ddhoster_support_phone) || ; } chatPreform.addEventListener(submit, async function (e) { e.preventDefault(); if (!chatPreform.checkValidity()) { chatPreform.reportValidity(); return; } const nameValue chatName ? chatName.value.trim() : ; const emailValue chatEmail ? chatEmail.value.trim() : ; const phoneValue chatPhone ? chatPhone.value.trim() : ; if (!nameValue || !emailValue || !phoneValue) return; try { const payload new URLSearchParams({ action: start, name: nameValue, email: emailValue, phone: phoneValue }); const response await fetch(public/support_chat.php, { method: POST, headers: { Content-Type: application/x-www-form-urlencoded }, body: payload.toString() }); const data await response.json(); if (!data.success || !data.user_id) { setPreformNote(data.error || Unable to start chat. Please try again., true); return; } supportUserId data.user_id; supportUserEmail emailValue; supportUserName nameValue; supportUserPhone phoneValue; localStorage.setItem(ddhoster_support_user_id, String(supportUserId)); localStorage.setItem(ddhoster_support_email, supportUserEmail); localStorage.setItem(ddhoster_support_name, supportUserName); localStorage.setItem(ddhoster_support_phone, supportUserPhone); setPreformNote(Share your details so we can assist you faster., false); setChatReady(true); await loadHistory(); if (chatMessages && chatMessages.children.length 0) { const botBubble document.createElement(div); botBubble.className chat-message chat-message--bot; botBubble.textContent `Thanks ${nameValue}! How can we help you today?`; chatMessages.appendChild(botBubble); } if (chatSession) { const textarea chatSession.querySelector(textarea); if (textarea) textarea.focus(); } } catch (error) { setPreformNote(Network error. Please try again., true); } }); } const renderAttachPreview files > { if (!chatAttachPreview) return; chatAttachPreview.innerHTML ; files.forEach(file > { if (file.type && file.type.startsWith(image/)) { const img document.createElement(img); img.alt file.name; const objectUrl URL.createObjectURL(file); img.src objectUrl; img.addEventListener(load, () > { URL.revokeObjectURL(objectUrl); }); chatAttachPreview.appendChild(img); } else { const chip document.createElement(div); chip.className chat-attach-chip; chip.innerHTML `i classfas fa-file>/i>span>${file.name}/span>`; chatAttachPreview.appendChild(chip); } }); }; if (chatAttachBtn && chatFileInput) { chatAttachBtn.addEventListener(click, () > { chatFileInput.click(); }); chatFileInput.addEventListener(change, () > { const files Array.from(chatFileInput.files || ); renderAttachPreview(files); }); } if (chatForm && chatMessages) { chatForm.addEventListener(submit, async function (e) { e.preventDefault(); const textarea chatForm.querySelector(textarea); const message textarea ? textarea.value.trim() : ; const files chatFileInput ? Array.from(chatFileInput.files || ) : ; if (!message && files.length 0) return; if (!supportUserId || !supportUserEmail) { const errorBubble document.createElement(div); errorBubble.className chat-message chat-message--bot; errorBubble.textContent Please start the chat by sharing your contact details first.; chatMessages.appendChild(errorBubble); chatMessages.scrollTop chatMessages.scrollHeight; return; } try { let response; if (files.length > 0) { const formData new FormData(); formData.append(action, send); formData.append(user_id, String(supportUserId)); formData.append(email, supportUserEmail); formData.append(message, message); files.forEach(file > formData.append(attachments, file)); response await fetch(public/support_chat.php, { method: POST, body: formData }); } else { const payload new URLSearchParams({ action: send, user_id: supportUserId, email: supportUserEmail, message: message }); response await fetch(public/support_chat.php, { method: POST, headers: { Content-Type: application/x-www-form-urlencoded }, body: payload.toString() }); } const data await response.json(); if (!data.success) { const errorBubble document.createElement(div); errorBubble.className chat-message chat-message--bot; errorBubble.textContent data.error || Unable to send message. Please try again.; chatMessages.appendChild(errorBubble); chatMessages.scrollTop chatMessages.scrollHeight; return; } const userBubble document.createElement(div); userBubble.className chat-message chat-message--user; if (message) { const userText document.createElement(div); userText.textContent message; userBubble.appendChild(userText); } if (files.length > 0) { const attachmentsWrap document.createElement(div); attachmentsWrap.className chat-attachments; files.forEach(file > { if (file.type && file.type.startsWith(image/)) { const img document.createElement(img); img.className chat-attachment-thumb; const objectUrl URL.createObjectURL(file); img.src objectUrl; img.alt file.name; img.addEventListener(click, () > openChatImageModal(objectUrl)); attachmentsWrap.appendChild(img); } else { const link document.createElement(a); link.className chat-file-link; const objectUrl URL.createObjectURL(file); link.href objectUrl; link.download file.name; link.innerHTML `i classfas fa-file>/i>span>${file.name}/span>`; attachmentsWrap.appendChild(link); } }); userBubble.appendChild(attachmentsWrap); } chatMessages.appendChild(userBubble); const botBubble document.createElement(div); botBubble.className chat-message chat-message--bot; botBubble.textContent Thanks! Our support team will reply shortly.; chatMessages.appendChild(botBubble); if (textarea) textarea.value ; if (chatFileInput) chatFileInput.value ; if (chatAttachPreview) chatAttachPreview.innerHTML ; chatMessages.scrollTop chatMessages.scrollHeight; } catch (error) { const errorBubble document.createElement(div); errorBubble.className chat-message chat-message--bot; errorBubble.textContent Network error. Please try again.; chatMessages.appendChild(errorBubble); chatMessages.scrollTop chatMessages.scrollHeight; } }); } }); // Domain search functionality let lastSuggestions ; document.addEventListener(DOMContentLoaded, function() { const domainSearchForm document.querySelector(.domain-search-card form); if (domainSearchForm) { domainSearchForm.addEventListener(submit, function(e) { e.preventDefault(); const domainInput this.querySelector(inputtypetext); const domain domainInput.value.trim(); if (!domain) { showDomainResult(error, Please enter a domain name); return; } checkDomainAvailability(domain); }); } }); function checkDomainAvailability(domain) { showDomainResult(loading, domain); fetch(public/domain-checker.php, { method: POST, headers: { Content-Type: application/x-www-form-urlencoded }, body: domain + encodeURIComponent(domain) }) .then(response > response.json()) .then(data > { if (!data) { showDomainResult(error, Domain check failed. Please try again.); return; } if (data.success false) { showDomainResult(error, data.error || Domain check failed. Please try again.); return; } const status (data.status || ).toLowerCase(); const apiDomain data.domain || domain; const suggestions Array.isArray(data.suggestions) ? data.suggestions : ; lastSuggestions suggestions; if (status available) { const price data.price ?? data.registration_price ?? null; showDomainResult(available, apiDomain, price, suggestions); } else if (status taken) { showDomainResult(taken, apiDomain, null, suggestions); } else if (status unsupported) { showDomainResult(unsupported, apiDomain, null, suggestions); } else { showDomainResult(error, `We could not confirm availability for ${apiDomain}. Please try again or contact support.`); } }) .catch(error > { console.error(Error:, error); showDomainResult(error, Domain check service unavailable); }); } function showDomainResult(type, domain, price null, suggestions ) { const existingResult document.querySelector(.domain-result); if (existingResult) existingResult.remove(); const domainCard document.querySelector(.domain-search-card); const resultDiv document.createElement(div); resultDiv.className domain-result; switch (type) { case loading: resultDiv.innerHTML ` div classalert alert-info> i classfas fa-spinner fa-spin>/i> Checking availability for strong>${domain}/strong>... /div> `; break; case available: const priceText price ? `${formatBDT(price)}/year` : Available for registration; resultDiv.innerHTML ` div classalert alert-success> i classfas fa-check-circle>/i> strong>${domain}/strong> is available! div classmt-2> strong>${priceText}/strong> /div> ${renderSuggestions(suggestions, More options)} /div> `; break; case taken: resultDiv.innerHTML ` div classalert alert-warning stylebackground-color: white;> i classfas fa-times-circle>/i> strong>${domain}/strong> is already taken. button classbtn btn-outline-secondary btn-sm ms-2 onclicksuggestAlternatives(${domain})> Suggest Alternatives /button> strong>${renderSuggestions(suggestions, Available alternatives)}/strong> /div> `; break; case unsupported: resultDiv.innerHTML ` div classalert alert-warning> i classfas fa-ban>/i> We dont support registering strong>${domain}/strong>, but you can still host it here if you already own it. ${renderSuggestions(suggestions, Available alternatives)} /div> `; break; case error: resultDiv.innerHTML ` div classalert alert-danger> i classfas fa-exclamation-triangle>/i> ${domain} /div> `; break; } domainCard.appendChild(resultDiv); } function renderSuggestions(suggestions, title Suggestions) { if (!Array.isArray(suggestions) || suggestions.length 0) return ; let html `div classmt-3>strong>${title}:/strong>div classd-flex flex-wrap gap-2 mt-2>`; suggestions.forEach(sug > { const label sug.domain || (sug.sld && sug.tld ? `${sug.sld}.${sug.tld}` : ); if (!label) return; const priceValue sug.price ?? sug.registration_price ?? sug.cost ?? null; const priceText priceValue ? formatBDT(priceValue) : ; const badge priceText ? `span classbadge bg-light text-dark ms-1>${priceText}/span>` : ; html + ` button stylecolor: navy; classbtn btn-outline-primary btn-sm onclickcheckDomainAvailability(${label})> ${label} ${badge} /button> `; }); html + /div>/div>; return html; } function formatBDT(value) { const num Number(value); if (!isFinite(num)) return ; return `BDT ${num.toLocaleString(en-US, { minimumFractionDigits: 2, maximumFractionDigits: 2 })}`; } function suggestAlternatives(domain) { let suggestionsHtml ; if (lastSuggestions && lastSuggestions.length > 0) { suggestionsHtml renderSuggestions(lastSuggestions, Suggestions); } else { const parts domain.split(.); const name parts0; const tld parts1 || com; const alternatives `${name}online.${tld}`, `${name}site.${tld}`, `${name}web.${tld}`, `${name}app.${tld}`, `get${name}.${tld}`, `the${name}.${tld}` ; suggestionsHtml div classmt-3>strong>Suggestions:/strong>div classd-flex flex-wrap gap-2 mt-2>; alternatives.forEach(alt > { suggestionsHtml + ` button classbtn btn-outline-primary btn-sm onclickcheckDomainAvailability(${alt})> ${alt} /button> `; }); suggestionsHtml + /div>/div>; } const resultDiv document.querySelector(.domain-result); if (resultDiv && resultDiv.querySelector(.alert)) { resultDiv.querySelector(.alert).innerHTML + suggestionsHtml; } } function registerDomain(domain) { const appRoot ; const target `${window.location.origin}${appRoot}/public/cart/domain_config.php?domain${encodeURIComponent(domain)}`; window.location.href target; } // Add some CSS for the domain results const domainResultStyles ` .domain-result { margin-top: 1rem; animation: fadeIn 0.3s ease-in; } @keyframes fadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } `; const styleSheet document.createElement(style); styleSheet.textContent domainResultStyles; document.head.appendChild(styleSheet); // Swiper initialization for neon testimonials document.addEventListener(DOMContentLoaded, function () { const swiperContainer document.querySelector(.swiper-container); if (!swiperContainer) return; const swiper new Swiper(.swiper-container, { effect: coverflow, grabCursor: false, centeredSlides: true, centeredSlidesBounds: true, slidesPerView: auto, coverflowEffect: { rotate: 0, stretch: -40, depth: 200, modifier: 1.8, slideShadows: true, }, loop: true, autoplay: { delay: 500, disableOnInteraction: false, pauseOnMouseEnter: false, waitForTransition: true, }, navigation: false, pagination: { el: .swiper-pagination, clickable: true, dynamicBullets: true, }, breakpoints: { 320: { slidesPerView: 1, spaceBetween: 15, coverflowEffect: { stretch: 0, depth: 100, modifier: 1, }, }, 480: { slidesPerView: 1, spaceBetween: 20, coverflowEffect: { stretch: -20, depth: 120, modifier: 1.2, }, }, 768: { slidesPerView: 2, spaceBetween: 25, coverflowEffect: { stretch: -30, depth: 150, modifier: 1.5, }, }, 1024: { slidesPerView: 3, spaceBetween: 30, coverflowEffect: { stretch: -40, depth: 200, modifier: 1.8, }, }, 1440: { slidesPerView: 3, spaceBetween: 40, coverflowEffect: { stretch: -50, depth: 250, modifier: 2, }, }, }, speed: 800, followFinger: false, resistanceRatio: 0, touchRatio: 0, simulateTouch: false, shortSwipes: false, longSwipes: false, threshold: 0, watchSlidesProgress: false, slideToClickedSlide: false, allowTouchMove: false, }); console.log(Swiper initialized with automatic sliding only); }); // Navbar logo animations document.addEventListener(DOMContentLoaded, function() { const navbarConnections document.getElementById(navbarConnections); const navbarDDLetters document.querySelectorAll(.navbar-dd-letter); const navbarServerBody document.querySelector(.navbar-server-body); const navbarLogoContainer document.querySelector(.navbar-logo-container); if (navbarDDLetters.length > 0 && navbarServerBody) { // Start color animations navbarDDLetters.forEach(letter > { letter.style.animation + , navbarColorChangeDD 6s infinite ease-in-out; }); // Create data flow for navbar logo function createNavbarDataFlow() { // Clear existing connections if (navbarConnections) { navbarConnections.innerHTML ; } // Create a connection between DD letters and server const line document.createElement(div); line.style.position absolute; line.style.height 1px; line.style.background linear-gradient(90deg, #0ea5e9, #22d3ee); line.style.transformOrigin left; line.style.opacity 0; line.style.zIndex 1; line.style.boxShadow 0 0 3px #0ea5e9; // Position line from last DD to server const startX 75; // Right side of DD letters const startY 22; // Middle of DD letters const endX 110; // Left side of server const endY 22; // Middle of server const dx endX - startX; const dy endY - startY; const distance Math.sqrt(dx * dx + dy * dy); const angle Math.atan2(dy, dx) * 180 / Math.PI; line.style.width `${distance}px`; line.style.left `${startX}px`; line.style.top `${startY}px`; line.style.transform `rotate(${angle}deg)`; if (navbarConnections) { navbarConnections.appendChild(line); } // Animate line appearance setTimeout(() > { line.style.opacity 0.8; line.style.transition opacity 0.3s ease; }, 100); // Create data dot const dot document.createElement(div); dot.style.position absolute; dot.style.width 4px; dot.style.height 4px; dot.style.borderRadius 50%; dot.style.background #22d3ee; dot.style.boxShadow 0 0 4px #22d3ee; dot.style.opacity 0; dot.style.zIndex 2; dot.style.left `${startX}px`; dot.style.top `${startY}px`; if (navbarConnections) { navbarConnections.appendChild(dot); } // Animate dot along the line const duration 1500; const animation dot.animate( { transform: translate(0, 0) scale(1), opacity: 1 }, { transform: `translate(${dx}px, ${dy}px) scale(0.5)`, opacity: 0 } , { duration: duration, easing: linear }); // When dot reaches destination, trigger color changes setTimeout(() > { // Trigger color change on DD letters navbarDDLetters.forEach(letter > { letter.style.animation none; void letter.offsetWidth; letter.style.animation navbarColorChangeDD 0.5s ease-out, navbarFloatLeft 5s ease-in-out infinite; }); // Trigger color change on server navbarServerBody.style.animation none; void navbarServerBody.offsetWidth; navbarServerBody.style.animation navbarColorChangeServer 0.5s ease-out; // Reset after animation setTimeout(() > { navbarDDLetters.forEach(letter > { letter.style.animation navbarFloatLeft 5s ease-in-out infinite, navbarColorChangeDD 6s infinite ease-in-out; }); navbarServerBody.style.animation ; }, 500); }, duration - 100); // Remove dot and line after animation setTimeout(() > { line.style.opacity 0; if (dot.parentNode) { dot.parentNode.removeChild(dot); } setTimeout(() > { if (line.parentNode) { line.parentNode.removeChild(line); } }, 500); }, duration + 200); // Repeat the flow setTimeout(createNavbarDataFlow, 3000); } // Start data flow after a delay setTimeout(createNavbarDataFlow, 1000); // Add hover effect if (navbarLogoContainer) { navbarLogoContainer.addEventListener(mouseenter, function() { navbarDDLetters.forEach(letter > { letter.style.transform + scale(1.1); }); navbarServerBody.style.transform scale(1.1); }); navbarLogoContainer.addEventListener(mouseleave, function() { navbarDDLetters.forEach((letter, index) > { if (index 0) { letter.style.transform rotate(-3deg); } else { letter.style.transform rotate(3deg); } }); navbarServerBody.style.transform scale(1); }); } } }); /script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]