:root {
      --primary-color: #0d1b2a;
      --accent-color: #00bfa6;
      --light-bg: #f8f9fa;
    }
    body {
      scroll-behavior: smooth;
      background-color: var(--light-bg);
    }
    .hero {
      background: linear-gradient(rgba(13,27,42,0.85), rgba(13,27,42,0.85)), url('sigap-cover-image.jpg') center/cover;
      color: white;
      padding: 120px 20px;
      text-align: center;
    }
    .hero h1 {
      font-size: 2.5rem;
      font-weight: bold;
    }
    .hero p {
      font-size: 1.2rem;
      margin-bottom: 30px;
    }
    section {
      padding: 80px 0;
    }
    h2.section-title {
      color: var(--primary-color);
      text-align: center;
      margin-bottom: 50px;
      font-weight: bold;
    }
    .feature-icon {
      font-size: 2.5rem;
      color: var(--accent-color);
      margin-bottom: 15px;
    }
    footer {
      background-color: var(--primary-color);
      color: #fff;
      text-align: center;
      padding: 20px 10px;
    }
  
    /* --- Styles for the new Mockup Section --- */
    .mockup-section {
        background-image: url('sigap-responsive-mockup-section.jpg');
        background-size: cover;
        background-attachment: fixed; /* Creates the scrolling "delay" or parallax effect */
        background-position: center;
        color: white; /* Ensure text is visible over the background */
        padding: 80px 0; /* Add vertical padding */
        margin-top: 50px; /* Separator from content above */
        text-align: center;
    }
    .mockup-section h2 {
        font-size: 2.5rem;
        font-weight: 700;
        margin-bottom: 30px;
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Text readability improvement */
    }
    .mockup-section img {
        max-width: 90%;
        height: auto;
        border-radius: 12px;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4);
        transition: transform 0.3s ease-in-out;
    }
    /* Make image slightly interactive */
    .mockup-section img:hover {
        transform: scale(1.02);
    }

    /* New CSS for label with increased padding */
    .form-floating > label {
        /* FIX: Increased horizontal padding from 0.75rem to 1.25rem */
        padding: 1rem 1.25rem;
    }

    /* --- CSS for Spinner --- */
    /* Spinner Keyframe Animation (with vendor prefix for compatibility) */
    @-webkit-keyframes spin {
        0% { -webkit-transform: rotate(0deg); }
        100% { -webkit-transform: rotate(360deg); }
    }
    @keyframes spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
    }

    /* Spinner Style */
    .spinner {
        /* Customization based on user request: 12px radius, color #00a28e */
        border: 3px solid rgba(0, 162, 142, 0.3); /* Base color (#00a28e) with transparency */
        border-top: 3px solid #00a28e; /* Active color */
        border-radius: 50%;
        width: 40px; /* 12px radius = 24px diameter */
        height: 40px; /* 12px radius = 24px diameter */
        -webkit-animation: spin 1s linear infinite; /* Add prefix */
        animation: spin 1s linear infinite;
    }
    /* --- END Spinner CSS --- */