:root{
    --support-blue:#0b5cff;
    --support-blue-dark:#0849c6;
    --support-navy:#0b2b5c;
    --support-text:#233d5f;
    --support-muted:#667a94;
    --support-border:#dce6f1;
    --support-soft:#f6f9fd;
    --support-white:#ffffff;
    --support-radius:18px;
    --support-shadow:0 16px 38px rgba(20,55,105,.09);
}

.support-banner{
    width:100%;
    margin-top:12px;
    background:#0b5cff;
    overflow:hidden;
}
.support-banner img{
    display:block;
    width:100%;
    height:auto;
    max-height:none;
    object-fit:contain;
}

.support-page,
.support-doc-page{
    background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%);
    color:var(--support-text);
    padding:46px 0 76px;
}
.support-container{
    width:min(1180px,calc(100% - 40px));
    margin:0 auto;
}
.support-intro{
    max-width:760px;
    margin:0 auto 32px;
    text-align:center;
}
.support-eyebrow,
.support-section-kicker{
    display:block;
    color:var(--support-blue);
    font-size:12px;
    line-height:1.2;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.support-intro h1,
.support-doc-header h1{
    margin:8px 0 10px;
    color:var(--support-navy);
    font-size:clamp(34px,4vw,50px);
    line-height:1.08;
    letter-spacing:-.035em;
}
.support-intro p,
.support-doc-header p{
    margin:0;
    color:var(--support-muted);
    font-size:17px;
    line-height:1.65;
}
.support-search{
    padding:26px;
    margin-bottom:24px;
    background:var(--support-white);
    border:1px solid var(--support-border);
    border-radius:var(--support-radius);
    box-shadow:var(--support-shadow);
}
.support-search h2,
.support-path-card h2,
.support-principle h2,
.support-faq h2,
.support-secondary-card h2,
.support-doc-card h2,
.support-doc-note h2{
    margin:6px 0 8px;
    color:var(--support-navy);
    font-size:21px;
    line-height:1.25;
}
.support-search p,
.support-path-card p,
.support-principle p,
.support-secondary-card p,
.support-doc-card p,
.support-doc-note p{
    margin:0;
    color:var(--support-muted);
    line-height:1.6;
}
.support-search-form{
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
    margin-top:18px;
}
.support-search-form input{
    width:100%;
    min-height:46px;
    padding:0 15px;
    border:1px solid #cdd9e8;
    border-radius:10px;
    background:#fff;
    color:var(--support-text);
    font:inherit;
    outline:none;
}
.support-search-form input:focus{
    border-color:var(--support-blue);
    box-shadow:0 0 0 3px rgba(11,92,255,.12);
}
.support-search-form button{
    min-height:46px;
    padding:0 20px;
    border:0;
    border-radius:10px;
    background:var(--support-blue);
    color:#fff;
    font:inherit;
    font-weight:800;
    cursor:pointer;
}
.support-search-results{
    margin-top:20px;
    padding-top:20px;
    border-top:1px solid var(--support-border);
}
.support-results-heading{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:14px;
}
.support-results-heading a,
.support-result a,
.support-empty a,
.support-secondary-card a,
.support-link-list a,
.support-card-link{
    color:var(--support-blue);
    text-decoration:none;
    font-weight:800;
}
.support-result-list{
    display:grid;
    gap:10px;
}
.support-result{
    padding:16px;
    background:var(--support-soft);
    border:1px solid var(--support-border);
    border-radius:12px;
}
.support-result h3{
    margin:0 0 6px;
    color:var(--support-navy);
    font-size:16px;
}
.support-result p{
    margin:0;
    color:var(--support-muted);
}
.support-paths{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-bottom:24px;
}
.support-path-card,
.support-secondary-card,
.support-doc-card{
    background:#fff;
    border:1px solid var(--support-border);
    border-radius:var(--support-radius);
    box-shadow:var(--support-shadow);
}
.support-path-card{
    padding:24px;
}
.support-path-card--accent{
    border-top:4px solid var(--support-blue);
    padding-top:21px;
}
.support-path-icon{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    margin-bottom:18px;
    border-radius:12px;
    background:#eef4ff;
    color:var(--support-blue);
    font-size:19px;
    font-weight:900;
}
.support-link-list{
    display:grid;
    margin-top:18px;
    border-top:1px solid var(--support-border);
}
.support-link-list a{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:12px 0;
    border-bottom:1px solid #edf2f7;
    font-size:14px;
}
.support-link-list a:last-child{border-bottom:0}
.support-principle,
.support-doc-note{
    display:grid;
    grid-template-columns:1fr auto;
    gap:28px;
    align-items:center;
    margin:26px 0 46px;
    padding:26px 28px;
    border-radius:var(--support-radius);
    background:#eef4ff;
    border:1px solid #cfdef7;
}
.support-outline-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 17px;
    border:1px solid var(--support-blue);
    border-radius:10px;
    color:var(--support-blue);
    background:#fff;
    text-decoration:none;
    font-weight:800;
    white-space:nowrap;
}
.support-section-heading{
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:40px;
    margin-bottom:20px;
}
.support-section-heading p{
    margin:0;
    max-width:480px;
    color:var(--support-muted);
}
.support-faq{
    scroll-margin-top:90px;
    margin-bottom:42px;
}
.support-faq-list{
    display:grid;
    gap:10px;
}
.support-faq-item{
    background:#fff;
    border:1px solid var(--support-border);
    border-radius:12px;
    overflow:hidden;
}
.support-faq-item summary{
    list-style:none;
    cursor:pointer;
    position:relative;
    padding:18px 48px 18px 20px;
    color:var(--support-navy);
    font-weight:750;
}
.support-faq-item summary::-webkit-details-marker{display:none}
.support-faq-item summary::after{
    content:"+";
    position:absolute;
    right:20px;
    top:50%;
    transform:translateY(-50%);
    color:var(--support-blue);
    font-size:22px;
    font-weight:400;
}
.support-faq-item[open] summary::after{content:"–"}
.support-faq-answer{
    padding:0 20px 18px;
}
.support-faq-answer p{
    margin:0;
    color:var(--support-muted);
    line-height:1.7;
}
.support-empty{
    display:grid;
    gap:5px;
    padding:18px;
    background:var(--support-soft);
    border:1px solid var(--support-border);
    border-radius:12px;
    color:var(--support-muted);
}
.support-bottom-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}
.support-secondary-card{
    padding:24px;
}
.support-secondary-card a{
    display:inline-block;
    margin-top:16px;
}
.support-muted{
    color:var(--support-muted);
}
.sr-only{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}

/* Documentation */
.support-doc-header{
    max-width:780px;
    margin-bottom:30px;
}
.support-back-link{
    display:inline-block;
    margin-bottom:22px;
    color:var(--support-blue);
    font-weight:800;
    text-decoration:none;
}
.support-doc-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}
.support-doc-card{
    display:block;
    padding:24px;
    color:inherit;
    text-decoration:none;
    transition:transform .18s ease,border-color .18s ease;
}
.support-doc-card:hover{
    transform:translateY(-2px);
    border-color:#b7cdf3;
}
.support-doc-icon{
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    margin-bottom:18px;
    border-radius:14px;
    background:#f5f8fc;
}
.support-doc-icon img{
    display:block;
    max-width:34px;
    max-height:34px;
}
.support-card-link{
    display:block;
    margin-top:18px;
    font-size:14px;
}

@media(max-width:900px){
    .support-paths,
    .support-doc-grid{
        grid-template-columns:1fr;
    }
    .support-bottom-grid{
        grid-template-columns:1fr;
    }
    .support-principle,
    .support-doc-note{
        grid-template-columns:1fr;
    }
    .support-section-heading{
        display:block;
    }
    .support-section-heading p{
        margin-top:6px;
    }
}
@media(max-width:640px){
    .support-container{
        width:min(100% - 24px,1180px);
    }
    .support-page,
    .support-doc-page{
        padding:34px 0 54px;
    }
    .support-search{
        padding:20px;
    }
    .support-search-form{
        grid-template-columns:1fr;
    }
    .support-principle,
    .support-doc-note{
        padding:22px;
    }
    .support-results-heading{
        align-items:flex-start;
        flex-direction:column;
        gap:6px;
    }
}
