/* ==========================================
    SNAP SECURE - SUPPORT PAGE
========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:Arial, Helvetica, sans-serif;
    background:#0d0d0d;
    color:#fff;
    line-height:1.6;
}

a{
    text-decoration:none;
    color:inherit;
}

.container{
    width:96%;
    max-width:1600px;
    margin:auto;
}

/* ================= HERO ================= */

.support-hero{
    padding:100px 20px 25px; /* Reduced top from 120px, bottom from 35px */
    text-align:center;
    background:linear-gradient(180deg,#151515,#0d0d0d);
}

.hero-tag{
    display:inline-block;
    padding:8px 18px;
    border-radius:30px;
    background:#ff7a00;
    font-size:13px;
    font-weight:600;
    margin-bottom:12px;
}

.support-hero h1{
    font-size:50px;
    font-weight:700;
    margin-bottom:8px;
}

.support-hero p{
    max-width:600px;
    margin:0 auto;
    color:#bdbdbd;
    line-height:1.8;
}

/* ================= SUPPORT SECTION ================= */

.support-section{
    padding: 30px 0px 40px; /* Reduced padding to make layout compact */
}

.support-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap: 30px;
}

/* ================= CARD ================= */

.support-card{
    background:#181818;
    border:1px solid #2a2a2a;
    border-radius:18px;
    padding: 32px;
    min-height:230px;
    display:flex;
    flex-direction:column;
    
    /* Animation Base State */
    opacity:0;
    transform:translateY(40px);
    transition:.35s;
}

.support-card.show{
    opacity:1;
    transform:translateY(0);
    transition:.6s ease;
}

.support-card:hover{
    transform:translateY(-8px);
    border-color:#ff7a00;
    box-shadow:0 15px 40px rgba(255,122,0,.15);
}

.support-card i{
    width:58px;
    height:58px;
    background:#ff7a00;
    border-radius:15px;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:24px;
    margin-bottom:20px;
}

.support-card h3{
    font-size:21px;
    margin-bottom:12px;
}

.support-card p{
    color:#bdbdbd;
    font-size:14px;
    margin-top:auto;
}

/* ================= BUTTONS ================= */

.support-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 24px;
    background:#ff7a00;
    color:#fff;
    border-radius:8px;
    font-size:14px;
    font-weight:600;
    margin-top:20px;
    transition:.3s;
}

.support-btn:hover{
    background:#ff9433;
    transform:translateY(-2px);
}

/* ==========================================
   THE SNAP SECURE DIFFERENCE SECTION
========================================== */

.difference-section {
    padding: 30px 0 60px; /* Reduced top from 60px to 30px to clear the issue */
    background: #0d0d0d;
}

.difference-heading {
    text-align: center;
    margin-bottom: 45px;
}

.difference-heading h2 {
    font-size: 38px;
    font-weight: 700;
    margin-bottom: 12px;
}

.difference-heading p {
    max-width: 750px;
    margin: 0 auto;
    color: #bdbdbd;
    font-size: 16px;
    line-height: 1.7;
}

/* 3-Column Card Adjustment */
.difference-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 60px;
}

/* Contact Form Configuration */
.contact-form-container {
    max-width: 850px;
    margin: 0 auto;
    background: #181818;
    border: 1px solid #2a2a2a;
    border-radius: 18px;
    padding: 45px;
}

.secure-contact-form {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.form-row {
    display: flex;
    gap: 24px;
}

.form-group {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.secure-contact-form label {
    font-size: 14px;
    font-weight: 600;
    color: #ff7a00;
}

.secure-contact-form input,
.secure-contact-form select,
.secure-contact-form textarea {
    width: 100%;
    background: #101010;
    border: 1px solid #2a2a2a;
    border-radius: 8px;
    padding: 14px 16px;
    color: #fff;
    font-family: inherit;
    font-size: 14px;
    outline: none;
    transition: border-color 0.3s, box-shadow 0.3s;
}

.secure-contact-form input:focus,
.secure-contact-form select:focus,
.secure-contact-form textarea:focus {
    border-color: #ff7a00;
    box-shadow: 0 0 10px rgba(255,122,0, 0.15);
}

.secure-contact-form input::placeholder,
.secure-contact-form textarea::placeholder {
    color: #555555;
}

.secure-contact-form select {
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff7a00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 16px;
    cursor: pointer;
}

.form-submit-wrapper {
    text-align: center;
    margin-top: 10px;
}

.secure-contact-form .submit-btn {
    border: none;
    cursor: pointer;
    padding: 14px 40px;
    font-size: 15px;
    margin-top: 0;
}

/* ==========================================
   RESPONSIVE DESIGN CORRECTIONS
========================================== */

@media(max-width: 991px) {
    .difference-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media(max-width: 768px) {
    .difference-section {
        padding: 20px 0 50px; /* Reduced mobile spacing to remain consistent */
    }

    .difference-heading h2 {
        font-size: 28px;
    }

    .difference-heading p {
        font-size: 14px;
    }

    .difference-grid {
        grid-template-columns: 1fr;
        gap: 18px;
        margin-bottom: 40px;
    }
    
    .difference-grid .support-card {
        margin: 0 25px;
    }

    .contact-form-container {
        padding: 25px 20px;
        margin: 0 25px;
    }

    .form-row {
        flex-direction: column;
        gap: 24px;
    }

    .support-hero{
        padding:80px 20px 15px; /* Reduced top on mobile from 100px */
    }

    .hero-tag{
        margin-bottom:10px;
    }

    .support-hero h1{
        font-size:30px;
        margin-bottom:8px;
    }

    .support-hero p{
        font-size:15px;
    }

    .support-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .support-card{
        padding:20px;
        min-height:180px;
        margin:0 25px;
    }

    .support-card i{
        width:48px;
        height:48px;
        font-size:20px;
        margin-bottom:15px;
    }

    .support-card h3{
        font-size:16px;
    }

    .support-card p{
        font-size:12px;
    }

    .support-contact{
        padding:40px 20px; /* Reduced padding from 60px */
    }

    .support-contact h2{
        font-size:28px;
    }

    .support-contact p{
        font-size:15px;
    }

    .contact-buttons{
        flex-direction:column;
    }

    .btn{
        width:100%;
    }
}

@media(max-width: 480px) {
    .difference-grid .support-card,
    .contact-form-container {
        margin: 0 15px;
    }

    .support-card{
        padding:15px;
        min-height:160px;
    }

    .support-card h3{
        font-size:15px;
    }

    .support-card p{
        font-size:11px;
    }
}