/* ==========================================================
   DimosTV Legal Experience
   ========================================================== */

.dtv-legal-page{
    --dtv-legal-bg:#070b14;
    --dtv-legal-panel:#0d1423;
    --dtv-legal-panel-2:#111a2d;
    --dtv-legal-border:rgba(255,255,255,.10);
    --dtv-legal-muted:rgba(255,255,255,.68);
    --dtv-legal-soft:rgba(255,255,255,.08);
    --dtv-legal-red:#E30613;
    --dtv-legal-red-2:#ff2b36;
    background:
        radial-gradient(circle at 15% 0%, rgba(227,6,19,.16), transparent 34%),
        radial-gradient(circle at 80% 20%, rgba(75,117,255,.10), transparent 35%),
        var(--dtv-legal-bg);
    color:#fff;
    min-height:100vh;
}

.dtv-legal-container{
    width:min(1180px, calc(100% - 40px));
    margin:0 auto;
}

.dtv-legal-hero{
    position:relative;
    overflow:hidden;
    padding:92px 0 74px;
    background:
        linear-gradient(135deg, rgba(7,11,20,.92), rgba(10,18,33,.78)),
        radial-gradient(circle at 85% 15%, rgba(227,6,19,.24), transparent 34%);
    border-bottom:1px solid rgba(255,255,255,.08);
}

.dtv-legal-hero::before{
    content:"";
    position:absolute;
    inset:auto -10% -50% 20%;
    height:260px;
    background:linear-gradient(90deg, transparent, rgba(227,6,19,.14), transparent);
    filter:blur(28px);
    transform:rotate(-8deg);
    pointer-events:none;
}

.dtv-legal-hero__inner{
    position:relative;
    z-index:1;
    max-width:850px;
}

.dtv-legal-kicker,
.dtv-legal-sidebar__badge,
.dtv-legal-content__header > div > span{
    display:inline-flex;
    align-items:center;
    width:max-content;
    min-height:28px;
    padding:7px 12px;
    border-radius:999px;
    background:rgba(227,6,19,.16);
    border:1px solid rgba(227,6,19,.34);
    color:#fff;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    line-height:1;
}

.dtv-legal-hero h1{
    margin:20px 0 16px;
    font-size:clamp(40px, 6vw, 76px);
    line-height:.96;
    letter-spacing:-.055em;
    font-weight:900;
}

.dtv-legal-hero p{
    margin:0;
    max-width:720px;
    color:rgba(255,255,255,.78);
    font-size:clamp(17px, 2vw, 22px);
    line-height:1.55;
}

.dtv-legal-hero__meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:26px;
}

.dtv-legal-hero__meta span{
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.10);
    color:rgba(255,255,255,.78);
    font-size:12px;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.dtv-legal-layout{
    display:grid;
    grid-template-columns:320px minmax(0,1fr);
    gap:28px;
    padding:56px 0 88px;
}

.dtv-legal-sidebar__card,
.dtv-legal-content{
    border:1px solid var(--dtv-legal-border);
    border-radius:28px;
    background:linear-gradient(180deg, rgba(17,26,45,.94), rgba(9,14,26,.96));
    box-shadow:0 24px 80px rgba(0,0,0,.35);
}

.dtv-legal-sidebar__card{
    position:sticky;
    top:96px;
    padding:24px;
}

.dtv-legal-sidebar__card h2{
    margin:18px 0 10px;
    font-size:25px;
    line-height:1.08;
    letter-spacing:-.025em;
}

.dtv-legal-sidebar__card p{
    margin:0 0 22px;
    color:var(--dtv-legal-muted);
    font-size:14px;
    line-height:1.65;
}

.dtv-legal-nav{
    display:grid;
    gap:10px;
}

.dtv-legal-nav a{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:54px;
    padding:12px 14px;
    border-radius:18px;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.075);
    color:#fff;
    text-decoration:none !important;
    transition:transform .2s ease, background .2s ease, border-color .2s ease;
}

.dtv-legal-nav a:hover,
.dtv-legal-nav a.is-active{
    background:rgba(227,6,19,.13);
    border-color:rgba(227,6,19,.40);
    transform:translateY(-1px);
}

.dtv-legal-nav a span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:30px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    color:#fff;
    font-weight:900;
}

.dtv-legal-nav a.is-active span{
    background:linear-gradient(135deg, var(--dtv-legal-red), var(--dtv-legal-red-2));
}

.dtv-legal-nav a b{
    font-size:13px;
    letter-spacing:.05em;
    text-transform:uppercase;
}

.dtv-legal-content{
    padding:34px;
}

.dtv-legal-content__header{
    display:flex;
    align-items:center;
    gap:18px;
    padding-bottom:28px;
    margin-bottom:28px;
    border-bottom:1px solid rgba(255,255,255,.10);
}

.dtv-legal-content__icon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 64px;
    width:64px;
    height:64px;
    border-radius:22px;
    background:linear-gradient(135deg, rgba(227,6,19,.95), rgba(255,43,54,.84));
    color:#fff;
    font-size:28px;
    font-weight:900;
    box-shadow:0 18px 40px rgba(227,6,19,.22);
}

.dtv-legal-content__header h2{
    margin:12px 0 0;
    font-size:clamp(28px, 3vw, 44px);
    letter-spacing:-.04em;
    line-height:1;
}

.dtv-legal-block{
    padding:0 0 26px;
    margin:0 0 26px;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.dtv-legal-block:last-child{
    border-bottom:0;
    margin-bottom:0;
    padding-bottom:0;
}

.dtv-legal-block h3{
    margin:0 0 12px;
    font-size:22px;
    line-height:1.15;
    letter-spacing:-.025em;
}

.dtv-legal-block p{
    margin:0 0 12px;
    color:rgba(255,255,255,.76);
    font-size:16px;
    line-height:1.78;
}

.dtv-legal-cookie-box{
    padding:24px;
    border-radius:24px;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.10);
}

.dtv-legal-cookie-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    margin-top:10px;
    padding:13px 20px;
    border:0;
    border-radius:999px;
    background:linear-gradient(135deg, var(--dtv-legal-red), var(--dtv-legal-red-2));
    color:#fff;
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    cursor:pointer;
    box-shadow:0 16px 34px rgba(227,6,19,.28);
    transition:transform .2s ease, box-shadow .2s ease;
}

.dtv-legal-cookie-button:hover{
    transform:translateY(-1px);
    box-shadow:0 20px 42px rgba(227,6,19,.36);
}

@media (max-width:980px){
    .dtv-legal-layout{
        grid-template-columns:1fr;
    }

    .dtv-legal-sidebar__card{
        position:relative;
        top:auto;
    }

    .dtv-legal-nav{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:640px){
    .dtv-legal-container{
        width:min(100% - 28px, 1180px);
    }

    .dtv-legal-hero{
        padding:64px 0 50px;
    }

    .dtv-legal-layout{
        padding:34px 0 64px;
        gap:18px;
    }

    .dtv-legal-content,
    .dtv-legal-sidebar__card{
        padding:20px;
        border-radius:22px;
    }

    .dtv-legal-nav{
        grid-template-columns:1fr;
    }

    .dtv-legal-content__header{
        align-items:flex-start;
        gap:14px;
    }

    .dtv-legal-content__icon{
        flex-basis:50px;
        width:50px;
        height:50px;
        border-radius:17px;
        font-size:22px;
    }

    .dtv-legal-block h3{
        font-size:20px;
    }

    .dtv-legal-block p{
        font-size:15px;
    }
}
