.dfs-page{
    background:#fff;
    color:#142033;
}

.dfs-hero{
    padding:76px 0 70px;
    background:
        radial-gradient(circle at top right, rgba(0,120,191,.14), transparent 34%),
        linear-gradient(180deg,#f5faff 0%,#ffffff 100%);
    border-bottom:1px solid #dbe8f2;
}

.dfs-kicker,
.dfs-label{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    color:#0078bf;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:.78rem;
    margin-bottom:1rem;
}

.dfs-hero h1{
    font-size:clamp(2.4rem,5vw,4.6rem);
    line-height:1.02;
    letter-spacing:-.045em;
    font-weight:900;
    max-width:820px;
    margin-bottom:1.2rem;
}

.dfs-lead{
    color:#526173;
    font-size:1.18rem;
    line-height:1.75;
    max-width:760px;
    margin-bottom:1.8rem;
}

.dfs-actions{
    display:flex;
    flex-wrap:wrap;
    gap:.8rem;
}

.dfs-actions .btn,
.dfs-dark-card .btn{
    border-radius:0;
    font-weight:900;
    padding:.85rem 1.25rem;
    line-height:1.5;
    text-decoration:none;
}

.dfs-actions .btn-primary,
.dfs-dark-card .btn-primary{
    background:#0078bf;
    border-color:#0078bf;
    color:#fff;
}

.dfs-actions .btn-primary:hover,
.dfs-dark-card .btn-primary:hover{
    background:#005f99;
    border-color:#005f99;
    color:#fff;
}

.dfs-actions .btn-outline-primary{
    background:#fff;
    border-color:#0078bf;
    color:#0078bf;
}

.dfs-actions .btn-outline-primary:hover{
    background:#0078bf;
    border-color:#0078bf;
    color:#fff;
}

.dfs-hero-card{
    background:#fff;
    border:1px solid #d8e6f1;
    box-shadow:0 20px 55px rgba(20,32,51,.09);
    padding:30px;
}

.dfs-hero-card h2{
    font-size:1.35rem;
    font-weight:900;
    margin-bottom:1rem;
}

.dfs-hero-card ul{
    list-style:none;
    padding:0;
    margin:0;
}

.dfs-hero-card li{
    position:relative;
    padding:.68rem 0 .68rem 2rem;
    border-bottom:1px solid #edf3f8;
    color:#354457;
    font-weight:750;
}

.dfs-hero-card li:last-child{
    border-bottom:0;
}

.dfs-hero-card li::before{
    content:"✓";
    position:absolute;
    left:0;
    top:.68rem;
    width:1.25rem;
    height:1.25rem;
    border-radius:50%;
    background:#e5f4fd;
    color:#0078bf;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    font-size:.82rem;
}

.dfs-section{
    padding:76px 0;
}

.dfs-section h2{
    font-size:clamp(2rem,3.5vw,3.2rem);
    line-height:1.08;
    letter-spacing:-.035em;
    font-weight:900;
    margin-bottom:1.2rem;
}

.dfs-section p{
    color:#566477;
    font-size:1.05rem;
    line-height:1.78;
    margin-bottom:1rem;
}

.dfs-soft{
    background:#f5f9fd;
    border-top:1px solid #e1edf6;
    border-bottom:1px solid #e1edf6;
}

.dfs-section-head{
    max-width:760px;
    margin-bottom:2.2rem;
}

.dfs-card,
.dfs-info-box,
.dfs-text-card{
    background:#fff;
    border:1px solid #dbe8f2;
    padding:30px;
    height:100%;
    box-shadow:0 14px 36px rgba(20,32,51,.06);
}

.dfs-number{
    width:44px;
    height:44px;
    background:#0078bf;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:950;
    margin-bottom:1.2rem;
}

.dfs-card h3,
.dfs-info-box h3{
    font-size:1.25rem;
    font-weight:900;
    margin-bottom:.75rem;
}

.dfs-card p{
    font-size:.98rem;
    margin:0;
}

.dfs-tags{
    display:flex;
    flex-wrap:wrap;
    gap:.65rem;
    margin-top:1.2rem;
}

.dfs-tags span{
    background:#eef8ff;
    border:1px solid #d4e8f6;
    color:#142033;
    padding:.65rem .85rem;
    font-weight:850;
}

.dfs-dark-card{
    background:#142033;
    color:#fff;
    padding:34px;
    height:100%;
    box-shadow:0 22px 50px rgba(20,32,51,.18);
}

.dfs-dark-card h2{
    color:#fff;
}

.dfs-dark-card p{
    color:rgba(255,255,255,.82);
    margin-bottom:1.4rem;
}

.dfs-faq{
    border-top:1px solid #dbe8f2;
}

.dfs-faq-item{
    padding:24px 0;
    border-bottom:1px solid #dbe8f2;
}

.dfs-faq-item h3{
    font-size:1.18rem;
    font-weight:900;
    margin-bottom:.55rem;
}

.dfs-faq-item p{
    margin:0;
    color:#5d6a7a;
}

@media (max-width:991.98px){
    .dfs-hero{
        padding:58px 0 54px;
    }

    .dfs-section{
        padding:58px 0;
    }
}

@media (max-width:575.98px){
    .dfs-hero h1{
        font-size:2.35rem;
    }

    .dfs-lead{
        font-size:1.04rem;
    }

    .dfs-hero-card,
    .dfs-card,
    .dfs-info-box,
    .dfs-text-card,
    .dfs-dark-card{
        padding:24px;
    }

    .dfs-actions .btn{
        width:100%;
    }
}
