
/* ==========================
   DEVSPROG Niches Showcase
   ========================== */
.devsprog-niches-section{
    position: relative;
    background:
        radial-gradient(circle at top center, rgba(13,110,253,.40), transparent 32%),
        linear-gradient(180deg, #08111f 0%, #091626 75%, var(--bs-dark) 100%);
    overflow: hidden;
}
.devsprog-niches-section::before,
.devsprog-niches-section::after{
    content:"";
    position:absolute;
    border-radius:50%;
    filter: blur(80px);
    opacity:.25;
    pointer-events:none;
}
.devsprog-niches-section::before{
    width:260px;height:260px;left:-80px;top:60px;background:rgba(13,110,253,.45);
}
.devsprog-niches-section::after{
    width:300px;height:300px;right:-90px;bottom:40px;background:rgba(255,193,7,.25);
}
.devsprog-kicker{
    letter-spacing:.22em;
    font-size:.85rem;
    text-transform:uppercase;
    color:rgba(255,255,255,.75);
    font-weight:700;
}
.devsprog-section-light .display-3,
.devsprog-section-light p,
.devsprog-section-light h1,
.devsprog-section-light h2,
.devsprog-section-light h3,
.devsprog-section-light h4,
.devsprog-section-light h5,
.devsprog-section-light h6,
.devsprog-section-light .lead{
    color:#fff;
}
.devsprog-niches-lead{
    max-width: 860px;
    margin: 0 auto;
    color: rgba(255,255,255,.74);
}
.devsprog-carousel-wrap{
    position:relative;
    min-height: 700px;
    display:flex;
    align-items:center;
    justify-content:center;
    perspective:1600px;
}
.devsprog-carousel-stage{
    position:relative;
    width:min(1180px, 100%);
    height:560px;
    margin:0 auto;
}
.devsprog-niche-card{
    position:absolute;
    top:50%;left:50%;
    width:min(450px, 68vw);
    aspect-ratio: 0.73;
    transform-style:preserve-3d;
    border-radius:30px;
    overflow:hidden;
    box-shadow:0 28px 60px rgba(0,0,0,.45);
    transition:transform .65s ease, opacity .65s ease, box-shadow .65s ease, filter .65s ease;
    cursor:pointer;
    user-select:none;
    background:#132338;
}
.devsprog-niche-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(3,10,23,.12) 0%, rgba(3,10,23,.32) 30%, rgba(3,10,23,.88) 100%);
    z-index:1;
}
.devsprog-card-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    transform:scale(1.02);
}
.devsprog-card-content{
    position:absolute;
    inset:auto 0 0 0;
    z-index:2;
    padding:28px 26px 24px;
    color:#fff;
}
.devsprog-card-tag{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:.78rem;
    font-weight:700;
    letter-spacing:.15em;
    text-transform:uppercase;
    color:#ffc107;
    margin-bottom:12px;
}
.devsprog-card-title{
    font-size:2rem;
    line-height:1.1;
    font-weight:800;
    margin-bottom:10px;
    color:#fff;
}
.devsprog-card-copy{
    color:rgba(255,255,255,.82);
    font-size:.95rem;
    margin-bottom:0;
}
.devsprog-card-hover{
    position:absolute;
    inset:0;
    z-index:3;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:26px;
    background:linear-gradient(180deg, rgba(4,12,22,.16) 0%, rgba(4,12,22,.60) 35%, rgba(4,12,22,.95) 100%);
    opacity:0;
    transition:opacity .35s ease;
}
.devsprog-niche-card.is-active:hover .devsprog-card-hover,
.devsprog-niche-card.is-active:focus-visible .devsprog-card-hover{
    opacity:1;
}
.devsprog-card-hover h5{
    color:#fff;
    font-size:1rem;
    margin-bottom:10px;
}
.devsprog-card-list{
    list-style:none;
    padding:0;
    margin:0 0 18px;
    display:grid;
    gap:8px;
}
.devsprog-card-list li{
    color:rgba(255,255,255,.88);
    font-size:.94rem;
    padding-left:18px;
    position:relative;
}
.devsprog-card-list li::before{
    content:"•";
    color:#ffc107;
    position:absolute;
    left:0;top:0;
}
.devsprog-price-chip{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;
    margin-bottom:18px;
    padding:14px 16px;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.08);
    border-radius:18px;
}
.devsprog-price-chip small{display:block;color:rgba(255,255,255,.72);font-size:.78rem;}
.devsprog-price-chip strong{font-size:1.2rem;color:#fff;}
.devsprog-price-chip del{display:block;color:rgba(255,255,255,.5);font-size:.88rem;}
.devsprog-niche-card[data-pos="0"]{
    opacity:1;
    filter:none;
    z-index:9;
    transform:translate3d(-50%, -50%, 0) scale(1);
}
.devsprog-niche-card[data-pos="1"]{
    opacity:.8;
    z-index:7;
    transform:translate3d(16%, -48%, -180px) rotateY(-22deg) scale(.88);
    filter:saturate(.8);
}
.devsprog-niche-card[data-pos="2"]{
    opacity:.5;
    z-index:6;
    transform:translate3d(62%, -46%, -340px) rotateY(-32deg) scale(.76);
    filter:blur(.2px) saturate(.65);
}
.devsprog-niche-card[data-pos="-1"]{
    opacity:.8;
    z-index:7;
    transform:translate3d(-116%, -48%, -180px) rotateY(22deg) scale(.88);
    filter:saturate(.8);
}
.devsprog-niche-card[data-pos="-2"]{
    opacity:.5;
    z-index:6;
    transform:translate3d(-162%, -46%, -340px) rotateY(32deg) scale(.76);
    filter:blur(.2px) saturate(.65);
}
.devsprog-niche-card[data-pos="3"],
.devsprog-niche-card[data-pos="-3"],
.devsprog-niche-card[data-pos="4"],
.devsprog-niche-card[data-pos="-4"]{
    opacity:.16;
    z-index:1;
    transform:translate3d(-50%, -50%, -520px) scale(.6);
    pointer-events:none;
}
.devsprog-carousel-controls{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    margin-top:-22px;
}
.devsprog-carousel-btn{
    width:54px;height:54px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.05);
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:all .25s ease;
}
.devsprog-carousel-btn:hover{background:#0d6efd;border-color:#0d6efd;color:#fff;transform:translateY(-2px);}
.devsprog-carousel-dots{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    margin-top:20px;
    flex-wrap:wrap;
}
.devsprog-carousel-dot{
    width:11px;height:11px;border-radius:50%;border:0;
    background:rgba(255,255,255,.24);
    transition:all .25s ease;
}
.devsprog-carousel-dot.is-active{width:34px;border-radius:999px;background:#ffc107;}
.devsprog-product-trust{
    margin-top:46px;
}
.devsprog-product-trust .trust-card,
.devsprog-offer-card,
.devsprog-flow-card,
.devsprog-niche-page .devsprog-detail-card,
.devsprog-overview-card{
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
    box-shadow:0 24px 50px rgba(0,0,0,.22);
    border-radius:24px;
    color:#fff;
}
.devsprog-product-trust .trust-card{height:100%;padding:26px;}
.devsprog-product-trust .trust-card i{font-size:2rem;color:#ffc107;margin-bottom:14px;}
.devsprog-product-trust .trust-card p{color:rgba(255,255,255,.74);margin-bottom:0;}
.devsprog-product-trust .trust-card h5{color:#fff;}
.devsprog-niche-page,
.devsprog-overview-page{
    background:
      radial-gradient(circle at top left, rgba(13,110,253,.30), transparent 25%),
      linear-gradient(180deg, #08111f 50%, #091626 97%, var(--bs-dark) 100%);
}
.devsprog-page-hero{
    padding:120px 0 70px;
    position:relative;
    overflow:hidden;
}
.devsprog-page-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(120deg, rgba(255,255,255,.04), transparent 25%);
    pointer-events:none;
}
.devsprog-page-hero .hero-panel{
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
    box-shadow:0 28px 60px rgba(0,0,0,.26);
    border-radius:32px;
    padding:42px;
    position:relative;
}
.devsprog-page-hero p,
.devsprog-page-hero li,
.devsprog-page-hero .lead,
.devsprog-offer-card p,
.devsprog-flow-card p,
.devsprog-detail-card p,
.devsprog-overview-card p,
.devsprog-select-label,
.devsprog-meta,
.devsprog-price-note{
    color:rgba(255,255,255,.78);
}
.devsprog-highlight-badges{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0;}
.devsprog-highlight-badges span{
    display:inline-flex;align-items:center;gap:8px;
    padding:10px 16px;border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.08);
    color:#fff;font-size:.92rem;font-weight:600;
}
.devsprog-select-box{
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.04);
    padding:28px;
    border-radius:24px;
}
.devsprog-select-box .form-select{
    background-color:rgba(255,255,255,.09);
    border-color:rgba(255,255,255,.12);
    color:#fff;
    min-height:58px;
}
.devsprog-select-box .form-select option{color:#111;background:#fff;}
.devsprog-offer-card,
.devsprog-flow-card,
.devsprog-detail-card,
.devsprog-overview-card{padding:28px;height:100%;}
.devsprog-offer-price{
    display:flex;align-items:end;gap:18px;flex-wrap:wrap;
}
.devsprog-offer-price .old{color:rgba(255,255,255,.44);text-decoration:line-through;font-size:1.08rem;}
.devsprog-offer-price .new{font-size:2.5rem;color:#ffc107;font-weight:800;line-height:1;}
.devsprog-offer-price .sub{font-size:1rem;color:#fff;font-weight:700;}
.devsprog-stack-list,
.devsprog-feature-list,
.devsprog-flow-list,
.devsprog-overview-list{
    list-style:none;padding:0;margin:0;display:grid;gap:12px;
}
/* Mensalidade efeito */
.devsprog-offer-price .sub {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.devsprog-offer-price .monthly-old {
    text-decoration: line-through;
    opacity: 0.65;
}

.devsprog-offer-price .monthly-arrow {
    opacity: 0.85;
}

.devsprog-offer-price .monthly-new {
    font-weight: 700;
}
/* Fim do efeito */
.devsprog-stack-list li,
.devsprog-feature-list li,
.devsprog-flow-list li,
.devsprog-overview-list li{
    position:relative;padding-left:22px;color:rgba(255,255,255,.82);
}
.devsprog-stack-list li::before,
.devsprog-feature-list li::before,
.devsprog-flow-list li::before,
.devsprog-overview-list li::before{
    content:"•";position:absolute;left:0;top:0;color:#ffc107;font-weight:700;
}
.devsprog-cta-bar{
    border:1px solid rgba(255,193,7,.24);
    background:linear-gradient(180deg, rgba(255,193,7,.10), rgba(255,193,7,.03));
    border-radius:24px;
    padding:26px 28px;
}
.devsprog-cta-bar p{margin-bottom:0;color:rgba(255,255,255,.80);}
.devsprog-overview-grid .devsprog-overview-card{min-height:100%;}
.devsprog-overview-card .top-line{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:18px;}
.devsprog-overview-card .top-line span{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(13,110,253,.18);font-size:.82rem;color:#9ec1ff;letter-spacing:.08em;text-transform:uppercase;font-weight:700;}
.devsprog-overview-card .price{color:#ffc107;font-size:1.6rem;font-weight:800;}
.devsprog-overview-card .btn{margin-top:20px;}
@media (max-width: 1199.98px){
    .devsprog-carousel-wrap{min-height:640px;}
    .devsprog-carousel-stage{height:520px;}
    .devsprog-niche-card{width:min(320px, 72vw);}
}
@media (max-width: 991.98px){
    .devsprog-carousel-wrap{min-height:unset;}
    .devsprog-carousel-stage{height:auto;min-height:560px;}
    .devsprog-niche-card{
        width:min(420px, 86vw);
        top:32px;left:50%;transform-origin:center top;
    }
    .devsprog-niche-card[data-pos="0"]{transform:translate3d(-50%, 0, 0) scale(1);}
    .devsprog-niche-card[data-pos="1"]{transform:translate3d(-8%, 34px, -160px) rotateY(-18deg) scale(.82);}
    .devsprog-niche-card[data-pos="-1"]{transform:translate3d(-92%, 34px, -160px) rotateY(18deg) scale(.82);}
    .devsprog-niche-card[data-pos="2"],
    .devsprog-niche-card[data-pos="-2"]{opacity:0;pointer-events:none;}
    .devsprog-page-hero .hero-panel{padding:30px;}
}
@media (max-width: 767.98px){
    .devsprog-carousel-stage{min-height:520px;}
    .devsprog-niche-card{width:min(340px, 88vw);border-radius:24px;}
    .devsprog-card-content{padding:22px 20px;}
    .devsprog-card-title{font-size:1.6rem;}
    .devsprog-carousel-controls{margin-top:6px;}
    .devsprog-page-hero{padding:100px 0 54px;}
    .devsprog-page-hero .hero-panel{padding:24px; border-radius:24px;}
    .devsprog-offer-price .new{font-size:2rem;}
    .devsprog-highlight-badges span{width:100%;justify-content:center;}
}

/* Transição suave entre páginas de nicho e footer */

.devsprog-niche-page > section:last-of-type{
    position: relative;
    background:
        linear-gradient(
            180deg,
            rgba(8, 17, 31, 0) 0%,
            rgba(9, 22, 38, 0.35) 45%,
            rgba(9, 22, 38, 0.75) 75%,
            var(--bs-dark) 100%
        );
}
/* Fim da Transição  */
