/* SOS Landing Page Styles */
         
         h1, h2, h3, h4, h5, h6, p, li, a, span, div {
         font-family: var(--primary-font);
         }
         main {
         flex: 1 0 auto;
         }
         /* Hero Section */
         .hero-section {
         position: relative;
         overflow: hidden;
         height: 550px;
         background: url("https://nekinsan-admin.s3.ap-south-1.amazonaws.com/web_images/sos_banner_oct_31.webp");
         background-size: cover;
         background-position: center;
         background-repeat: no-repeat;
         display: flex;
         align-items: center;
         color: white;
         }
         .hero-content {
         text-align: center;
         max-width: 800px;
         margin: 0 auto;
         padding: 0 20px;
         }
         .hero-title {
         font-size: 60px;
         font-weight: 400;
         line-height: 1.1;
         }
         .hero-subtitle {
         font-size: 2rem;
         font-weight: 600;
         color: var(--secondary-red);
         margin-bottom: 1.5rem;
         }
         .hero-description {
         font-size: 1.2rem;
         line-height: 1.6;
         margin-bottom: 2rem;
         color: rgba(255, 255, 255, 0.9);
         }
         .try-sos-btn {
         background: var(--primary-red);
         color: white !important;
         border: none;
         padding: 8px 20px;          
         font-size: 1rem;  
         font-weight: 600;
         border-radius: 20px;
         transition: all 0.3s ease;
         text-transform: uppercase;
         letter-spacing: 1px;
         text-decoration: none;
         width: fit-content;
         }
         .try-sos-btn:hover {
         background: var(--primary-red);
         transform: translateY(-2px);
         box-shadow: 0 8px 25px rgba(220, 53, 69, 0.4);
         color: white !important;
         }
         /* SOS Feature Section */
         .section-header {
         text-align: center;
         margin-bottom: 20px;
         }
         .section-title {
         font-size: 3rem;
         font-weight: 700;
         color: #333;
         margin-bottom: 15px;
         line-height: 1.2;
         }
         .section-subtitle {
         font-size: 1.5rem;
         font-weight: 600;
         color: var(--primary-red);
         margin-bottom: 0;
         line-height: 1.3;
         }
         .section-description {
         font-size: 1.1rem;
         color: #666;
         line-height: 1.6;
         margin-bottom: 2.5rem;
         }
         .feature-list {
         display: flex;
         flex-direction: column;
         gap: 1.5rem;
         }
         .feature-item {
         display: flex;
         align-items: center;
         gap: 1rem;
         }
         .feature-icon {
         width: 50px;
         height: 50px;
         background-color: rgba(255, 208, 209, 1);
         border-radius: 50%;
         display: flex;
         align-items: center;
         justify-content: center;
         flex-shrink: 0;
         }
         .feature-text {
         font-size: 1.1rem;
         color: #333;
         font-weight: 500;
         }
         .main-image {
         width: 100%;
         height: auto;
         border-radius: 15px;
         }
         /* How to Use Steps Section */
         .steps-container {
         max-width: 1200px;
         margin: 0 auto;
         padding: 0 20px;
         }
         .steps-header {
         text-align: center;
         margin-bottom: 50px;
         }
         .steps-title {
         font-size: 2.5rem;
         font-weight: 700;
         color: #333;
         margin-bottom: 15px;
         line-height: 1.2;
         }
         .steps-subtitle {
         font-size: 1.2rem;
         color: #dc3545;
         font-weight: 600;
         margin-bottom: 0;
         }
         .steps-row {
         position: relative;
         }
         .steps-images {
         display: flex;
         justify-content: space-between;
         align-items: flex-end;
         gap: 20px;
         margin-bottom: 60px;
         }
         .step-image-container {
         flex: 1;
         text-align: center;
         }
         .step-image {
         width: 100%;
         max-width: 180px;
         height: 300px;
         object-fit: contain;
         border-radius: 12px;
         transition: all 0.3s ease;
         }
         .step-image:hover {
         transform: translateY(-5px);
         box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
         }
         .connecting-line {
         position: relative;
         height: 4px;
         background: linear-gradient(90deg, #dc3545, #bf023f);
         border-radius: 2px;
         }
         .steps-info {
         display: flex;
         justify-content: space-between;
         align-items: flex-start;
         gap: 20px;
         }
         .step-info {
         flex: 1;
         text-align: center;
         position: relative;
         padding-top: 25px;
         }
         .step-number {
         width: 50px;
         height: 50px;
         background: linear-gradient(135deg, #dc3545, #bf023f);
         color: white;
         border-radius: 50%;
         display: flex;
         align-items: center;
         justify-content: center;
         font-weight: 700;
         font-size: 1.4rem;
         box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);
         margin: 0 auto 15px auto;
         position: absolute;
         top: -25px;
         left: 50%;
         transform: translateX(-50%);
         z-index: 2;
         }
         .step-title {
         font-size: 1rem;
         font-weight: 600;
         color: #333;
         margin-bottom: 10px;
         line-height: 1.4;
         }
         .step-description {
         font-size: 0.9rem;
         color: #666;
         line-height: 1.5;
         margin: 0;
         }
         .vertical-steps {
         display: none;
         }
         /* CTA Button Section */
         .cta-section {
         text-align: center;
         background: linear-gradient(89.76deg, #6886FF -4.67%, #55129D 21.48%, #8B1789 47.63%, #FF053C 99.93%);
         }
         .cta-container {
         padding: 20px 40px;
         display: flex;
         align-items: center;
         justify-content: center;
         gap: 30px;
         width: 100%;
         position: relative;
         }
         .qr-image {
         border-radius: 10px;
         padding: 10px;
         width: 120px;
         height: 120px;
         display: flex;
         justify-content: center;
         align-items: center;
         }
         .qr-code {
         width: 150px;
         height: auto;
         }
         .cta-button {
         background: white;
         color: black;
         border: none;
         width: 192px;
         height: 50px;
         font-size: 1.1rem;
         font-weight: 600;
         border-radius: 15px;
         box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
         transition: all 0.3s ease;
         text-transform: none;
         letter-spacing: normal;
         opacity: 1;
         padding: 0;
         display: inline-flex;
         align-items: center;
         justify-content: center;
         outline: 3px solid white;
         outline-offset: 4px;
         }
         .cta-button:hover {
         transform: translateY(-2px);
         box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.3);
         color: black;
         background: white;
         outline: 3px solid white;
         outline-offset: 4px;
         }
         /* Modal Styles */
         .modal-header {
         background-color: #bf023f;
         color: white;
         border-bottom: none;
         border-radius: 0.5rem 0.5rem 0 0;
         }
         .modal-header .btn-close {
         filter: invert(1);
         }
         .modal-title {
         font-weight: 700;
         font-size: 1.4rem;
         }
         .modal-body {
         padding: 2rem;
         }
         .form-label {
         font-weight: 600;
         color: #333;
         margin-bottom: 6px;
         font-size: 0.95rem;
         }
         .required {
         color: #dc3545;
         margin-left: 2px;
         }
         .form-control {
         border: 2px solid #e9ecef;
         border-radius: 8px;
         padding: 10px 12px;
         font-size: 0.95rem;
         transition: border-color 0.3s ease;
         height: auto;
         }
         .form-control:focus {
         border-color: var(--primary-red);
         box-shadow: 0 0 0 0.2rem rgba(191, 2, 63, 0.15);
         }
         .form-control::placeholder {
         color: #adb5bd;
         font-size: 0.9rem;
         }
         textarea.form-control {
         resize: vertical;
         min-height: 80px;
         }
         .submit-btn {
         background-color: var(--primary-red);
         border: none;
         padding: 12px 35px;
         font-weight: 600;
         border-radius: 8px;
         transition: all 0.3s ease;
         font-size: 1rem;
         }
         .submit-btn:hover {
         background-color: var(--secondary-red);
         transform: translateY(-2px);
         box-shadow: 0 4px 12px rgba(191, 2, 63, 0.3);
         }
         .form-group {
         margin-bottom: 1.2rem;
         }
         /* Emergency Section */
         .emergency-section {
         background: white;
         border-radius: 20px;
         padding: 60px 40px;
         }
         .content-container {
         display: grid;
         grid-template-columns: 1fr 1fr;
         align-items: center;
         }
         .image-section {
         position: relative;
         height: 700px;
         }
         .image-container {
         position: absolute;
         border-radius: 20px;
         overflow: hidden;
         transition: transform 0.3s ease;
         }
         .image-container:hover {
         transform: scale(1.02);
         }
         .top-image {
         width: 440px;
         height: 440px;
         top: 0;
         left: 0;
         z-index: 1;
         }
         .bottom-image {
         width: 440px;
         height: 440px;
         bottom: 0;
         right: 0;
         z-index: 2;
         }
         .image-container img {
         width: 100%;
         height: 100%;
         object-fit: cover;
         }
         .steps-section {
         padding-left: 20px;
         }
         .step-item {
         background: white;
         border-radius: 15px;
         padding: 25px;
         margin-bottom: 20px;
         box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
         border-left: 4px solid #e74c3c;
         transition: transform 0.3s ease, box-shadow 0.3s ease;
         position: relative;
         }
         .step-item:hover {
         transform: translateY(-3px);
         box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12);
         }
         .step-header {
         display: flex;
         align-items: center;
         gap: 12px;
         }
         .step-icon {
         width: 40px;
         height: 40px;
         background-color: var(--light-red);
         border-radius: 50%;
         display: flex;
         align-items: center;
         justify-content: center;
         flex-shrink: 0;
         }
         .step-icon svg {
         width: 20px;
         height: 20px;
         stroke: var(--primary-red);
         fill: none;
         }
         .step-title {
         font-size: 1rem;
         font-weight: 600;
         color: #333;
         margin: 0;
         }
         .step-description {
         color: #666;
         line-height: 1.6;
         font-size: 0.95rem;
         margin-top: 12px;
         margin-bottom: 0;
         }
         /* Bottom Image Styles */
         .safety-bottom-image {
         text-align: center;
         margin-top: 20px;
         }
         .download-image {
         width: 100%;
         height: auto;
         border-radius: 12px;
         transition: all 0.3s ease;
         }
         .download-image:hover {
         transform: translateY(-5px);
         }
         
         /* Mobile responsive adjustments */
         @media (max-width: 991px) {
        
         .main-header .mx-5 {
         margin-left: 0 !important;
         margin-right: 0 !important;
         }
         .section-title {
         font-size: 2rem;
         line-height: 1.1;
         }
         .section-subtitle {
         font-size: 1.1rem;
         line-height: 1.2;
         }
         .steps-images,
         .connecting-line,
         .steps-info {
         display: none !important;
         }
         .vertical-steps {
         display: block !important;
         }
         .vertical-step {
         display: flex;
         align-items: flex-start;
         gap: 20px;
         margin-bottom: 40px;
         position: relative;
         background: white;
         border-radius: 15px;
         padding: 20px;
         box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
         transition: all 0.3s ease;
         margin-left: 40px;
         }
         .vertical-step:hover {
         transform: translateY(-3px);
         box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
         }
         .vertical-step:not(:last-child)::after {
         content: '';
         position: absolute;
         left: -40px;
         top: 25px;
         width: 3px;
         height: calc(100% + 40px);
         background: linear-gradient(180deg, #dc3545, #bf023f);
         z-index: 1;
         }
         .vertical-number {
         position: absolute;
         left: -65px;
         top: 0;
         width: 50px;
         height: 50px;
         background: linear-gradient(135deg, #dc3545, #bf023f);
         color: white;
         border-radius: 50%;
         display: flex;
         align-items: center;
         justify-content: center;
         font-weight: 700;
         font-size: 1.4rem;
         box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);
         z-index: 2;
         }
         .vertical-image {
         width: 120px;
         height: 200px;
         object-fit: contain;
         border-radius: 8px;
         flex-shrink: 0;
         order: 2;
         align-self: center;
         }
         .vertical-content {
         flex: 1;
         order: 1;
         }
         .vertical-title {
         font-size: 1.1rem;
         font-weight: 600;
         color: #333;
         margin-bottom: 8px;
         line-height: 1.3;
         }
         .vertical-description {
         font-size: 0.95rem;
         color: #666;
         line-height: 1.5;
         margin: 0;
         }
         /* Emergency Section Mobile Updates */
         .content-container {
         grid-template-columns: 1fr;
         gap: 40px;
         }
         .image-section {
         order: 2;
         height: 300px;
         display: flex;
         justify-content: center;
         align-items: center;
         }
         .top-image {
         display: none !important;
         }
         .bottom-image {
         position: relative;
         width: 100%;
         max-width: 400px;
         height: 250px;
         top: auto;
         bottom: auto;
         right: auto;
         left: auto;
         margin: 0 auto;
         }
         .steps-section {
         order: 1;
         padding-left: 0;
         }
         .step-item {
         padding: 30px 25px;
         margin-bottom: 25px;
         border-radius: 20px;
         }
         .step-icon {
         width: 45px;
         height: 45px;
         }
         .step-icon svg {
         width: 22px;
         height: 22px;
         }
         .step-title {
         font-size: 1.1rem;
         }
         .step-description {
         font-size: 1rem;
         margin-top: 15px;
         }
         }
         @media (max-width: 768px) {
         .hero-section {
         height: 500px;
         background-image: url("https://nekinsan-admin.s3.ap-south-1.amazonaws.com/web_images/sos_mobile_oct_31.webp");
         }
         .hero-title {
         font-size: 1.8rem;
         line-height: 1.1;
         }
         .hero-subtitle {
         font-size: 1.2rem;
         line-height: 1.2;
         }
         .hero-description {
         font-size: 1rem;
         }
         .section-title {
         font-size: 1.6rem;
         line-height: 1.1;
         }
         .section-subtitle {
         font-size: 1rem;
         line-height: 1.2;
         }
         .section-description {
         font-size: 1rem;
         }
         .feature-icon {
         width: 45px;
         height: 45px;
         }
         .feature-text {
         font-size: 1rem;
         }
         .vertical-step {
         gap: 20px;
         padding: 15px;
         }
         .vertical-number {
         width: 45px;
         height: 45px;
         font-size: 1.3rem;
         }
         .vertical-image {
         width: 100px;
         height: 180px;
         }
         .vertical-title {
         font-size: 1rem;
         }
         .vertical-description {
         font-size: 0.9rem;
         }
         .steps-title {
         font-size: 1.6rem;
         line-height: 1.1;
         }
         .steps-subtitle {
         font-size: 1rem;
         line-height: 1.2;
         }
         .cta-container {
         flex-direction: row;
         flex-wrap: nowrap;
         padding: 10px;
         gap: 10px;
         }
         .qr-image {
         margin: 0;
         padding: 5px;
         width: 80px;
         height: 80px;
         }
         .qr-code {
         width: 70px;
         height: auto;
         }
         /* Emergency Section Mobile Specific */
         .bottom-image {
         max-width: 350px;
         height: 220px;
         }
         }
         @media (max-width: 576px) {
         .hero-section {
         height: 220px;
         }
         .hero-title {
         font-size: 1.5rem;
         line-height: 1.1;
         }
         .hero-subtitle {
         font-size: 1rem;
         line-height: 1.2;
         }
         .hero-description {
         font-size: 0.9rem;
         }
         .section-title {
         font-size: 1.2rem;
         line-height: 1.1;
         }
         .section-subtitle {
         font-size: 0.9rem;
         line-height: 1.2;
         }
         .feature-list {
         gap: 1rem;
         }
         .feature-icon {
         width: 40px;
         height: 40px;
         }
         .vertical-step {
         flex-direction: column;
         text-align: center;
         gap: 15px;
         margin-left: 50px;
         }
         .vertical-number {
         left: -60px;
         }
         .vertical-step:not(:last-child)::after {
         left: -38px;
         }
         .vertical-image {
         width: 140px;
         height: 200px;
         }
         .steps-title {
         font-size: 1.4rem;
         line-height: 1.1;
         }
         .steps-subtitle {
         font-size: 0.9rem;
         line-height: 1.2;
         }
         /* Emergency Section Mobile Adjustments */
         .emergency-section {
         padding: 40px 20px;
         }
         .step-item {
         padding: 25px 20px;
         margin-bottom: 20px;
         }
         .step-icon {
         width: 40px;
         height: 40px;
         }
         .step-icon svg {
         width: 18px;
         height: 18px;
         }
         .step-title {
         font-size: 1rem;
         }
         .step-description {
         font-size: 0.9rem;
         margin-top: 10px;
         }
         .image-section {
         height: 250px;
         }
         .bottom-image {
         max-width: 300px;
         height: 200px;
         }
         }

         /* Animation Keyframes */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(40px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-40px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-40px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(40px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes scaleIn {
    from {
        opacity: 0;
        transform: scale(0.8);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Hero Section Animations */
.hero-title {
    animation: fadeInDown 0.8s ease-out 0.2s both;
}

.hero-subtitle {
    animation: fadeInDown 0.8s ease-out 0.4s both;
}

.hero-description {
    animation: fadeInUp 0.8s ease-out 0.6s both;
}

.try-sos-btn {
    animation: scaleIn 0.6s ease-out 0.8s both;
}

/* Feature Items */
.feature-item {
    animation: fadeInLeft 0.6s ease-out both;
}

.feature-item:nth-child(1) { animation-delay: 0.1s; }
.feature-item:nth-child(2) { animation-delay: 0.2s; }
.feature-item:nth-child(3) { animation-delay: 0.3s; }
.feature-item:nth-child(4) { animation-delay: 0.4s; }

/* Main Image */
.main-image {
    animation: fadeInRight 0.8s ease-out 0.3s both;
}

/* Emergency Steps */
.step-item {
    animation: fadeInUp 0.6s ease-out both;
}

.step-item:nth-child(1) { animation-delay: 0.1s; }
.step-item:nth-child(2) { animation-delay: 0.2s; }
.step-item:nth-child(3) { animation-delay: 0.3s; }
.step-item:nth-child(4) { animation-delay: 0.4s; }

/* Step Images */
.step-image-container {
    animation: fadeInUp 0.6s ease-out both;
}

.step-image-container:nth-child(1) { animation-delay: 0.1s; }
.step-image-container:nth-child(2) { animation-delay: 0.2s; }
.step-image-container:nth-child(3) { animation-delay: 0.3s; }
.step-image-container:nth-child(4) { animation-delay: 0.4s; }
.step-image-container:nth-child(5) { animation-delay: 0.5s; }

/* Vertical Steps */
.vertical-step {
    animation: fadeInLeft 0.6s ease-out both;
}

.vertical-step:nth-child(1) { animation-delay: 0.1s; }
.vertical-step:nth-child(2) { animation-delay: 0.2s; }
.vertical-step:nth-child(3) { animation-delay: 0.3s; }
.vertical-step:nth-child(4) { animation-delay: 0.4s; }
.vertical-step:nth-child(5) { animation-delay: 0.5s; }

/* Image Containers */
.top-image {
    animation: fadeInLeft 0.8s ease-out 0.2s both;
}

.bottom-image {
    animation: fadeInRight 0.8s ease-out 0.4s both;
}

/* Scroll Animation Classes */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.8s ease-out;
}

.animate-on-scroll.animated {
    opacity: 1;
    transform: translateY(0);
}

