/* =========================================================
   AIC FESTIVAL — DISCLAIMER
   ========================================================= */

.disclaimer-hero{
    position:relative;
    overflow:hidden;
    padding:150px 0 85px;
    background:
        radial-gradient(circle at 82% 20%, rgba(196,145,48,.18), transparent 32%),
        linear-gradient(135deg, var(--black) 0%, #171717 62%, var(--primary-dark) 100%);
    color:var(--white);
}

.disclaimer-hero::after{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    right:-150px;
    bottom:-210px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;
}

.disclaimer-hero-content{
    position:relative;
    z-index:1;
    max-width:780px;
}

.disclaimer-kicker{
    display:inline-block;
    margin-bottom:16px;
    color:var(--accent);
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.disclaimer-hero h1{
    margin:0 0 16px;
    color:var(--white);
    font-size:clamp(3rem,6vw,5.6rem);
    line-height:.98;
    letter-spacing:-.045em;
}

.disclaimer-hero p{
    max-width:650px;
    margin:0;
    color:#D9D9D9;
    font-size:1.08rem;
    line-height:1.7;
}

.disclaimer-breadcrumb{
    padding:16px 0;
    background:var(--off-white);
    border-bottom:1px solid rgba(0,0,0,.07);
}

.disclaimer-breadcrumb .container{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:.86rem;
}

.disclaimer-breadcrumb a{
    color:var(--muted);
}

.disclaimer-breadcrumb strong{
    color:var(--primary-dark);
}

.disclaimer-section{
    padding:90px 0 110px;
    background:var(--off-white);
}

.disclaimer-layout{
    display:grid;
    grid-template-columns:230px minmax(0,820px);
    justify-content:center;
    gap:70px;
    align-items:start;
}

.disclaimer-sidebar{
    position:sticky;
    top:105px;
}

.disclaimer-sidebar-card{
    display:flex;
    flex-direction:column;
    padding:24px 0;
    border-top:3px solid var(--primary);
}

.disclaimer-sidebar-card span{
    margin-bottom:14px;
    color:var(--primary-dark);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.disclaimer-sidebar-card a{
    padding:9px 0;
    color:var(--muted);
    font-size:.9rem;
    font-weight:700;
    transition:color .2s ease, transform .2s ease;
}

.disclaimer-sidebar-card a:hover{
    color:var(--primary-dark);
    transform:translateX(3px);
}

.disclaimer-content{
    min-width:0;
}

.disclaimer-meta{
    display:flex;
    justify-content:space-between;
    gap:20px;
    margin-bottom:50px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(0,0,0,.1);
    color:var(--muted);
    font-size:.82rem;
}

.disclaimer-meta strong{
    color:var(--primary-dark);
}

.disclaimer-block{
    display:grid;
    grid-template-columns:48px minmax(0,1fr);
    gap:20px;
    padding-bottom:44px;
    margin-bottom:44px;
    border-bottom:1px solid rgba(0,0,0,.08);
}

.disclaimer-number{
    display:flex;
    justify-content:center;
    padding-top:5px;
    color:var(--primary);
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.08em;
}

.disclaimer-content h2{
    margin:0 0 15px;
    color:var(--black);
    font-size:clamp(1.55rem,2.5vw,2.2rem);
    line-height:1.15;
}

.disclaimer-content p{
    margin:0 0 16px;
    color:var(--muted);
    font-size:1rem;
    line-height:1.8;
}

.disclaimer-content p:last-child{
    margin-bottom:0;
}

.disclaimer-callout{
    margin:4px 0 50px;
    padding:28px 32px;
    background:var(--black);
    border-left:4px solid var(--accent);
    border-radius:var(--radius-md);
    box-shadow:var(--shadow-sm);
}

.disclaimer-callout span{
    display:block;
    margin-bottom:8px;
    color:var(--accent);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.disclaimer-callout strong{
    display:block;
    color:var(--white);
    font-size:1.05rem;
    line-height:1.6;
}

.disclaimer-contact{
    padding:42px;
    background:var(--white);
    border:1px solid rgba(0,0,0,.08);
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow-sm);
}

.disclaimer-contact > span{
    color:var(--primary-dark);
    font-size:.75rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.disclaimer-contact h2{
    margin:10px 0 12px;
}

.disclaimer-contact p{
    margin-bottom:24px;
}

.disclaimer-button{
    display:inline-flex;
    align-items:center;
    gap:12px;
    padding:13px 18px;
    background:var(--black);
    color:var(--white) !important;
    border-radius:999px;
    font-size:.88rem;
    font-weight:900;
}

.disclaimer-button:hover{
    background:var(--primary-dark);
}

.disclaimer-button span{
    color:var(--accent);
    font-size:1.1rem;
}

@media (max-width:900px){

    .disclaimer-hero{
        padding:125px 0 65px;
    }

    .disclaimer-layout{
        display:block;
    }

    .disclaimer-sidebar{
        display:none;
    }

    .disclaimer-section{
        padding:65px 0 80px;
    }

    .disclaimer-meta{
        margin-bottom:35px;
    }
}

@media (max-width:600px){

    .disclaimer-hero{
        padding:112px 0 55px;
    }

    .disclaimer-hero h1{
        font-size:clamp(2.7rem,13vw,4rem);
    }

    .disclaimer-hero p{
        font-size:.98rem;
    }

    .disclaimer-section{
        padding:55px 0 70px;
    }

    .disclaimer-meta{
        display:block;
        line-height:1.7;
    }

    .disclaimer-meta strong{
        display:block;
    }

    .disclaimer-block{
        grid-template-columns:34px minmax(0,1fr);
        gap:13px;
        padding-bottom:34px;
        margin-bottom:34px;
    }

    .disclaimer-number{
        font-size:.7rem;
    }

    .disclaimer-content p{
        font-size:.95rem;
        line-height:1.75;
    }

    .disclaimer-callout{
        margin-bottom:38px;
        padding:23px;
    }

    .disclaimer-contact{
        padding:28px 23px;
    }
}
