/* Dataproof Theme - Component Styles */

/* Mega Menu */
.mega-menu { position: relative; }
.nav-menu .menu-item-has-children > .sub-menu { display: none; position: absolute; top: 100%; left: 0; min-width: 220px; z-index: 1000; }
.nav-menu .menu-item-has-children:hover > .sub-menu { display: block; }

/* Mobile Menu Toggle */
.menu-toggle { display: none; cursor: pointer; background: none; border: none; font-size: 24px; color: #fff; }
@media (max-width: 768px) { .menu-toggle { display: block; } .nav-menu ul { display: none; } .nav-menu.toggled ul { display: block; } }

/* Service Tables */
.service-table { width: 100%; border-collapse: collapse; margin: 20px 0; }
.service-table th, .service-table td { padding: 12px 15px; text-align: left; border-bottom: 1px solid #e0e0e0; }
.service-table th { background: #0a1f44; color: #fff; font-weight: 600; }
.service-table tr:hover { background: #f5f5f5; }
.service-table tr:nth-child(even) { background: #fafafa; }

/* Feature Boxes */
.feature-boxes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 25px 0; }
.feature-box { background: #f8f9fa; border-radius: 8px; padding: 25px; text-align: center; border: 1px solid #e9ecef; }
.feature-box .icon { font-size: 2em; margin-bottom: 10px; }
.feature-box h3 { color: #0a1f44; margin: 10px 0; }
@media (max-width: 768px) { .feature-boxes { grid-template-columns: 1fr; } }

/* Contact Form */
.dp-contact-form input[type="text"],
.dp-contact-form input[type="email"],
.dp-contact-form input[type="tel"],
.dp-contact-form textarea { width: 100%; box-sizing: border-box; }
.dp-contact-form input:focus,
.dp-contact-form textarea:focus { border-color: #0a1f44; outline: none; box-shadow: 0 0 0 2px rgba(10,31,68,0.15); }
.submit-btn:hover { background: #1a3568 !important; }
