/* =====================================
   ATP Widgets
===================================== */

.atp-widget{
    margin:25px 0;
}

/* ===== ATP Section Titles ===== */

.atp-section-title{

    font-size:30px;
    font-weight:800;
    color:#1B5A84;

    text-align:center;

    margin-bottom:22px;

    position:relative;

    letter-spacing:.3px;

}

.atp-section-title::after{

    content:"";

    display:block;

    width:90px;

    height:5px;

    background:#1B5A84;

    border-radius:50px;

    margin:10px auto 0;

}

/* ==========================
   Popular Posts
========================== */

.atp-widget-box{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.atp-post{

    display:flex;
    flex-direction:row-reverse;

    align-items:center;

    gap:15px;

    padding:14px;

    background:#fff;

    border:1px solid #1B5A84;

    border-radius:16px;

    transition:.25s ease;

}

.atp-post:hover{

    transform:translateY(-2px);

    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.atp-post-image{

    flex:0 0 140px;

}

.atp-post-image img{

    width:140px;

    height:100px;

    border-radius:12px;

    object-fit:cover;

    display:block;

}

.atp-post-content{

    flex:1;

}

.atp-post-title{

    color:#222;

    font-size:16px;

    font-weight:700;

    line-height:1.6;

    text-decoration:none;

    display:-webkit-box;

    -webkit-line-clamp:3;

    -webkit-box-orient:vertical;

    overflow:hidden;

}

.atp-post-title:hover{

    color:#1B5A84;

}

/* ==========================
   Hero Slider
========================== */

.atp-hero-slider{

    width:100%;
    border-radius:20px;
    overflow:hidden;
    position:relative;

}

.atp-slide{

    position:relative;

}

.atp-slide a{

    display:block;
    text-decoration:none;

}

.atp-slide img{

    width:100%;
    height:600px;
    object-fit:cover;
    display:block;

}

.atp-slide-overlay{

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    padding:50px 35px;

    background: linear-gradient(
    to top,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,.98) 20%,
    rgba(0,0,0,.95) 40%,
    rgba(0,0,0,.85) 55%,
    rgba(0,0,0,.65) 70%,
    rgba(0,0,0,.35) 85%,
    rgba(0,0,0,0) 100%
);

}

.atp-slide-overlay h2{

    color:#fff;

    font-size:36px;

    font-weight:800;

    line-height:1.4;

    margin:0;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

}

/* ==========================
   Swiper
========================== */

.atp-hero-slider .swiper-button-next,
.atp-hero-slider .swiper-button-prev{

    color:#fff;

    width:48px;
    height:48px;

    background:rgba(0,0,0,.35);

    border-radius:50%;

    transition:.25s;

}

.atp-hero-slider .swiper-button-next:hover,
.atp-hero-slider .swiper-button-prev:hover{

    background:#1B5A84;

}

.atp-hero-slider .swiper-button-next::after,
.atp-hero-slider .swiper-button-prev::after{

    font-size:30px;
    font-weight:bold;

}

.atp-hero-slider .swiper-pagination-bullet{

    width:11px;
    height:11px;

    background:#fff;

    opacity:.3;

}

.atp-hero-slider .swiper-pagination-bullet-active{

    opacity:1;

    background:#1B5A84;

}

.atp-hero-slider{

    max-width:1200px;

    margin:15px auto;

    border-radius:15px;

    overflow:hidden;

}

.atp-slide::before{

    content:"";

    position:absolute;

    inset:0;

    background:rgba(80,80,80,.35);

    z-index:1;

}

.atp-slide-overlay{

    z-index:2;

}