html {
    height: 100%; /* Ensure html takes full height */
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.7;
    margin: 0;
    color: #f4f4f4; /* Lighter text color for body to contrast with potentially darker background */

    background-image: url('Cyber-background.png'); /* CORRECTED: Your image file */
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-position: center center;
    background-color: #333; /* Fallback background color if image doesn't load */
                               /* Note: If the .container background is white, this will only be seen outside the container */

    /* NEW STICKY FOOTER PROPERTIES */
    min-height: 100vh; /* Make body at least full viewport height */
    display: flex; /* Use flexbox for layout */
    flex-direction: column; /* Stack children vertically */
}

/* Create a container for the main content */
.container {
    max-width: 800px;
    margin: 40px auto;
    padding: 30px;
    background-color: #ffffff; /* Solid white background for content area */
    border-radius: 10px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
    color: #333; /* Ensure text inside container is dark for readability */

    /* NEW STICKY FOOTER PROPERTY */
    flex-grow: 1; /* Allows container to take up available space */
}

/* Headings Styling */
h1 {
    text-align: center; /* Center the main heading */
    color: #0056b3; /* A nice blue color */
    margin-bottom: 25px;
    font-size: 2.5em; /* Larger main heading */
}

h2 {
    color: #007bff; /* A slightly different blue for subheadings */
    border-bottom: 2px solid #007bff; /* Underline effect */
    padding-bottom: 5px;
    margin-top: 30px;
    margin-bottom: 15px;
}

h3 {
    color: #0056b3; /* Match main heading color or choose a new one */
    margin-top: 25px;
    margin-bottom: 10px;
    text-align: center; /* Center the service headings */
    font-size: 1.8em;
}

/* Paragraphs */
p {
    font-size: 1.1em; /* Slightly larger text for paragraphs */
    margin-bottom: 1em; /* Ensure consistent bottom margin */
    /* Note: Text color for paragraphs inside .container is inherited from .container, which is #333 */
    /* Text color for paragraphs outside .container (like affiliate disclosure directly in body) is inherited from body, which is #f4f4f4 */
}

/* Links */
a {
    color: #007bff; /* Primary link color */
    text-decoration: none;
    transition: color 0.3s ease; /* Smooth transition on hover */
}

a:hover {
    color: #0056b3; /* Darker blue on hover */
    text-decoration: underline;
}

/* Image Styling */
img {
    max-width: 100%; /* Ensures image scales down on small screens */
    height: auto; /* Maintains aspect ratio */
    display: block; /* Makes it a block element for margin auto to work */
    margin: 20px auto; /* Adds vertical space and centers the image */
    border-radius: 8px; /* Slightly rounded corners for the image */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow */
}

/* Style for service images */
.service-image {
    max-width: 70%; /* Make them slightly smaller than the main image */
    height: auto;
    display: block;
    margin: 15px auto; /* Add vertical space and center them */
    border-radius: 5px; /* Slightly less rounded corners */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Lighter shadow */
}

/* Footer Styling */
footer {
    background-color: #2c3e50; /* Dark background color */
    color: #ecf0f1; /* Light text color */
    padding: 20px 0; /* Vertical padding */
    margin-top: 50px; /* Space above the footer */
    font-size: 0.9em; /* Slightly smaller text */
    width: 100%; /* Ensure it spans full width */
    box-sizing: border-box; /* Includes padding in width calculation */
    flex-shrink: 0; /* Prevents footer from shrinking if content is too long */
    align-self: stretch; /* Ensures the footer stretches horizontally if parent is flex-column */
}

footer p {
    margin: 5px 0; /* Reduce spacing between footer paragraphs */
    color: #ecf0f1; /* Ensure paragraphs within footer are light color */
}

footer a {
    color: #3498db; /* Link color for footer */
    text-decoration: none;
    transition: color 0.3s ease;
}

footer a:hover {
    color: #5dade2; /* Lighter blue on hover */
    text-decoration: underline;
}

/* Footer Content Wrapper for Centering */
.footer-content {
    max-width: 800px; /* Set same max-width as your main .container */
    margin: 0 auto;    /* This centers the block-level content horizontally */
    padding: 0 20px;   /* Optional: Add horizontal padding for smaller screens if needed */
    box-sizing: border-box; /* Include padding in width calculation */
}

/* Social Media Icon Styling */
.social-icon {
    width: 30px;  /* Adjust size as needed */
    height: auto; /* Maintain aspect ratio */
    vertical-align: middle; /* Aligns with text if present */
    margin: 0 5px; /* Adds a small space around the icon */
    border: none; /* Ensure no unwanted borders from image defaults */
}

/* Optional: Style for the social links container (the spans) */
footer p span {
    display: inline-block; /* Allows margins and makes them behave nicely */
    margin: 0 5px; /* Adjust spacing between social links/icons */
}

/* Main Logo Styling (if you have one specifically styled for main page header) */
.main-logo {
    display: block; /* Make it a block element */
    max-width: 200px; /* Adjust size as needed */
    height: auto;
    margin: 20px auto; /* Center it */
}