/* =========================================================
   SAHF — DISCLAIMER PAGE
   ========================================================= */


/* =========================================================
   DISCLAIMER HERO
   ========================================================= */

.disclaimer-hero{

    padding:
        clamp(64px,10vw,108px)
        0
        clamp(40px,6vw,56px);

    border-bottom:
        1px solid
        rgba(201,162,77,0.18);

}


.disclaimer-hero-inner{

    width:100%;

    max-width:760px;

    margin-inline:auto;

}


.disclaimer-eyebrow{

    display:inline-flex;

    align-items:center;

    gap:10px;

    font-size:0.74rem;

    letter-spacing:0.16em;

    text-transform:uppercase;

    color:var(--gold);

    margin-bottom:22px;

}


.disclaimer-eyebrow::before{

    content:'';

    width:24px;

    height:1px;

    background:var(--gold);

}


.disclaimer-heading{

    font-size:
        clamp(2rem,4.4vw,3.05rem);

    line-height:1.18;

    letter-spacing:-0.01em;

}


.disclaimer-hero-sub{

    margin-top:26px;

}


.disclaimer-hero-sub p{

    font-size:
        clamp(1rem,1.5vw,1.06rem);

    line-height:1.75;

    color:var(--on-navy-mute);

    max-width:68ch;

}


.disclaimer-meta{

    margin-top:
        clamp(32px,5vw,44px);

    padding-top:20px;

    border-top:
        1px dashed
        rgba(201,162,77,0.3);

    display:flex;

    flex-wrap:wrap;

    gap:
        clamp(24px,4vw,56px);

}


.disclaimer-meta-item{

    display:flex;

    flex-direction:column;

    gap:4px;

}


.disclaimer-meta-label{

    font-size:0.72rem;

    letter-spacing:0.1em;

    text-transform:uppercase;

    color:var(--on-navy-mute);

}


.disclaimer-meta-item time,
.disclaimer-meta-item span.disclaimer-meta-value{

    font-size:0.92rem;

    color:var(--on-navy);

    font-weight:500;

}


.disclaimer-config{

    border-bottom:
        1px dashed
        var(--gold);

    padding:0 2px;

    font-style:italic;

}

/* =========================================================
   DISCLAIMER INTRO
   ========================================================= */

.disclaimer-intro{

    background:var(--cream);

    color:var(--on-cream);

    padding:
        clamp(56px,8vw,88px)
        0;

}


.disclaimer-intro-inner{

    width:100%;

    max-width:760px;

    margin-left:0;

    margin-right:auto;

}


.disclaimer-intro-heading{

    font-size:
        clamp(1.4rem,2.8vw,1.8rem);

    line-height:1.3;

    margin-bottom:20px;

}


.disclaimer-intro-inner p{

    font-size:1.02rem;

    line-height:1.8;

    color:var(--on-cream);

    max-width:70ch;

    margin-bottom:14px;

}


.disclaimer-intro-inner p:last-child{

    margin-bottom:0;

}

/* =========================================================
   DISCLAIMER LAYOUT
   ========================================================= */

.disclaimer-layout-section{

    background:var(--neutral);

    color:var(--on-cream);

}


.disclaimer-layout{

    display:grid;

    grid-template-columns:1fr;

    gap:
        clamp(32px,5vw,56px);

    padding:
        clamp(56px,8vw,88px)
        0;

    align-items:start;

}


/* =========================================================
   DISCLAIMER TOC
   ========================================================= */

.disclaimer-toc-wrap{

    order:-1;

    border:
        1px solid
        rgba(11,31,51,0.12);

    background:#fff;

}


.disclaimer-toc-toggle{

    width:100%;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:12px;

    background:none;

    border:none;

    font-family:inherit;

    font-size:0.92rem;

    font-weight:500;

    color:var(--on-cream);

    padding:16px 20px;

    cursor:pointer;

    text-align:left;

}


.disclaimer-toc-chevron{

    transition:
        transform .25s ease;

    color:var(--gold-dark);

    flex:none;

}


.disclaimer-toc-toggle[aria-expanded="true"]
.disclaimer-toc-chevron{

    transform:rotate(180deg);

}


.disclaimer-toc{

    padding:
        4px
        20px
        20px;

}


.disclaimer-toc[hidden]{

    display:none;

}


.disclaimer-toc-list{

    list-style:none;

    margin:0;

    padding:0;

    border-left:
        1px solid
        rgba(11,31,51,0.12);

    display:flex;

    flex-direction:column;

    gap:2px;

}


.disclaimer-toc-link{

    display:block;

    padding:
        8px
        0
        8px
        16px;

    font-size:0.86rem;

    line-height:1.45;

    color:var(--on-cream-mute);

    border-left:
        2px solid
        transparent;

    margin-left:-1px;

    transition:
        color .2s ease,
        border-color .2s ease;

}


.disclaimer-toc-link:hover{

    color:var(--on-cream);

}


.disclaimer-toc-link[aria-current="location"]{

    color:var(--navy);

    font-weight:500;

    border-left-color:var(--gold);

}


/* =========================================================
   DISCLAIMER CONTENT
   ========================================================= */

.disclaimer-content{

    min-width:0;

}


.disclaimer-section{

    padding:
        clamp(32px,5vw,44px)
        0;

    border-bottom:
        1px solid
        rgba(11,31,51,0.12);

    scroll-margin-top:96px;

}


.disclaimer-section:first-child{

    padding-top:0;

}


.disclaimer-section:last-child{

    border-bottom:none;

    padding-bottom:0;

}


.disclaimer-section-num{

    display:block;

    font-size:0.74rem;

    letter-spacing:0.12em;

    text-transform:uppercase;

    color:var(--gold-dark);

    margin-bottom:14px;

}


.disclaimer-section-heading{

    font-size:
        clamp(1.2rem,2.4vw,1.5rem);

    line-height:1.32;

    margin-bottom:16px;

}


.disclaimer-section p{

    font-size:0.98rem;

    line-height:1.8;

    color:var(--on-cream);

    max-width:72ch;

    margin-bottom:14px;

}


.disclaimer-section p:last-child{

    margin-bottom:0;

}


/* =========================================================
   DISCLAIMER CONTACT
   Full-width dark section.
   Content remains left-aligned inside the global .wrap.
   ========================================================= */

.disclaimer-contact{

    background:var(--navy);

    padding:
        clamp(56px,8vw,88px)
        0;

    scroll-margin-top:64px;

    text-align:left;

}


.disclaimer-contact-inner{

    width:100%;

    max-width:640px;

    margin-left:0;

    margin-right:0;

    text-align:left;

}


.disclaimer-contact
.disclaimer-eyebrow{

    margin-bottom:20px;

}


.disclaimer-contact-heading{

    font-size:
        clamp(1.4rem,2.8vw,1.8rem);

    line-height:1.3;

    margin-bottom:18px;

    text-align:left;

}


.disclaimer-contact p{

    font-size:1rem;

    line-height:1.75;

    color:var(--on-navy-mute);

    max-width:60ch;

    margin-bottom:24px;

    text-align:left;

}


.disclaimer-address{

    font-style:normal;

    display:flex;

    flex-direction:column;

    gap:8px;

    margin-bottom:28px;

    text-align:left;

}


.disclaimer-address-line{

    font-size:0.96rem;

    line-height:1.6;

    color:var(--on-navy);

    text-align:left;

}


.disclaimer-address-line span{

    color:var(--on-navy-mute);

}


.disclaimer-address-line a{

    color:var(--gold);

    border-bottom:
        1px solid
        var(--gold-dim);

    padding-bottom:1px;

}


.disclaimer-address-line a:hover{

    border-color:var(--gold);

}


.disclaimer-contact-cta{

    display:inline-flex;

    align-items:center;

    gap:10px;

    font-size:0.86rem;

    letter-spacing:0.02em;

    color:var(--gold);

    border-bottom:
        1px solid
        var(--gold-dim);

    padding-bottom:3px;

}


.disclaimer-contact-cta:hover{

    border-color:var(--gold);

}


.disclaimer-contact-cta:hover
.disclaimer-arrow{

    transform:translateX(3px);

}


.disclaimer-arrow{

    transition:
        transform .25s ease;

    display:inline-block;

}


/* =========================================================
   RESPONSIVE NAVIGATION
   ========================================================= */

@media (max-width:860px){

    .nav-links{

        display:none;

    }

    .nav-burger{

        display:flex;

    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media (min-width:641px){

    .disclaimer-toc-toggle{

        display:none;

    }

    .disclaimer-toc{

        display:block !important;

        padding-top:20px;

    }

}


/* =========================================================
   DESKTOP
   ========================================================= */

@media (min-width:1024px){

    .disclaimer-layout{

        grid-template-columns:
            minmax(0,1fr)
            260px;

    }

    .disclaimer-toc-wrap{

        order:0;

        position:sticky;

        top:96px;

    }

}