/* =========================================================
   SAHF — PRIVACY POLICY
   ========================================================= */


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

.privacy-hero{
    padding:
        clamp(64px,10vw,108px)
        0
        clamp(40px,6vw,56px);

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


.privacy-hero-inner{
    width:100%;

    max-width:760px;

    margin-left:auto;
    margin-right:auto;
}


.privacy-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;
}


.privacy-eyebrow::before{
    content:'';

    width:24px;

    height:1px;

    background:var(--gold);
}


.privacy-heading{
    font-size:
        clamp(2rem,4.4vw,3.05rem);

    line-height:1.18;

    letter-spacing:-0.01em;
}


.privacy-hero-sub{
    margin-top:26px;

    display:flex;

    flex-direction:column;

    gap:14px;
}


.privacy-hero-sub p{
    font-size:
        clamp(1rem,1.5vw,1.06rem);

    line-height:1.75;

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

    max-width:68ch;
}


.privacy-updated{
    margin-top:
        clamp(32px,5vw,44px);

    padding-top:20px;

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

    display:flex;

    flex-direction:column;

    gap:4px;
}


.privacy-updated-label{
    font-size:0.72rem;

    letter-spacing:0.1em;

    text-transform:uppercase;

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


.privacy-updated time{
    font-size:0.92rem;

    color:var(--on-navy);

    font-weight:500;
}


/* =========================================================
   INTRO — OUR COMMITMENT
   ========================================================= */

.privacy-intro{
    background:var(--cream);

    color:var(--on-cream);

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


.privacy-intro-inner{
    width:100%;

    max-width:760px;

    margin-left:auto;
    margin-right:auto;
}


.privacy-intro-heading{
    font-size:
        clamp(1.4rem,2.8vw,1.8rem);

    line-height:1.3;

    margin-bottom:20px;
}


.privacy-intro-inner p{
    font-size:1.02rem;

    line-height:1.8;

    color:var(--on-cream);

    max-width:70ch;

    margin-bottom:14px;
}


.privacy-intro-inner p:last-child{
    margin-bottom:0;
}


/* =========================================================
   PRIVACY LAYOUT
   ========================================================= */

.privacy-layout-section{
    background:var(--neutral);

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


.privacy-layout{
    width:100%;

    display:grid;

    grid-template-columns:1fr;

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

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

    align-items:start;
}


/* =========================================================
   TABLE OF CONTENTS
   ========================================================= */

.privacy-toc-wrap{
    order:-1;

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

    background:#fff;
}


.privacy-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;
}


.privacy-toc-chevron{
    transition:
        transform .25s ease;

    color:var(--gold-dark);

    flex:none;
}


.privacy-toc-toggle[aria-expanded="true"]
.privacy-toc-chevron{
    transform:rotate(180deg);
}


.privacy-toc{
    padding:4px 20px 20px;
}


.privacy-toc[hidden]{
    display:none;
}


.privacy-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;
}


.privacy-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;
}


.privacy-toc-link:hover{
    color:var(--on-cream);
}


.privacy-toc-link[aria-current="location"]{
    color:var(--navy);

    font-weight:500;

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


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

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


.privacy-section{
    padding:
        clamp(32px,5vw,44px)
        0;

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

    scroll-margin-top:96px;
}


.privacy-section:first-child{
    padding-top:0;
}


.privacy-section:last-child{
    border-bottom:none;

    padding-bottom:0;
}


.privacy-section-num{
    display:block;

    font-size:0.74rem;

    letter-spacing:0.12em;

    text-transform:uppercase;

    color:var(--gold-dark);

    margin-bottom:14px;
}


.privacy-section-heading{
    font-size:
        clamp(1.2rem,2.4vw,1.5rem);

    line-height:1.32;

    margin-bottom:16px;
}


.privacy-section-subheading{
    font-size:1rem;

    font-family:'Inter',sans-serif;

    font-weight:600;

    margin:
        26px 0
        12px;
}


.privacy-section p{
    font-size:0.98rem;

    line-height:1.8;

    color:var(--on-cream);

    max-width:72ch;

    margin-bottom:14px;
}


.privacy-section p:last-child{
    margin-bottom:0;
}


.privacy-list{
    margin:16px 0 0;

    padding-left:20px;

    max-width:72ch;
}


.privacy-list li{
    font-size:0.96rem;

    line-height:1.8;

    color:var(--on-cream);

    margin-bottom:8px;
}


.privacy-list li:last-child{
    margin-bottom:0;
}


/* =========================================================
   PRIVACY TABLE
   ========================================================= */

.privacy-table-wrap{
    margin-top:20px;

    overflow-x:auto;
}


.privacy-table{
    width:100%;

    border-collapse:collapse;

    max-width:72ch;
}


.privacy-table caption{
    text-align:left;

    font-size:0.78rem;

    letter-spacing:0.06em;

    text-transform:uppercase;

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

    margin-bottom:10px;
}


.privacy-table th,
.privacy-table td{
    text-align:left;

    padding:
        12px 16px
        12px 0;

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

    font-size:0.92rem;

    line-height:1.6;
}


.privacy-table th{
    font-family:'Inter',sans-serif;

    font-weight:600;

    color:var(--on-cream);

    font-size:0.8rem;

    letter-spacing:0.04em;

    text-transform:uppercase;
}


.privacy-table td{
    color:var(--on-cream-mute);
}


/* =========================================================
   PRIVACY CONTACT
   ========================================================= */

.privacy-contact{
    background:var(--navy);

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

    scroll-margin-top:64px;

    text-align:left;
}


.privacy-contact-inner{

    width:100%;

    max-width:640px;

    margin-left:0;
    margin-right:0;

    text-align:left;

}


/* Eyebrow */

.privacy-contact .privacy-eyebrow{

    margin-bottom:20px;

}


/* Heading */

.privacy-contact-heading{

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

    line-height:1.3;

    margin-bottom:18px;

    text-align:left;

}


/* Body */

.privacy-contact p{

    font-size:1rem;

    line-height:1.75;

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

    max-width:60ch;

    margin-bottom:24px;

    text-align:left;

}


/* Address */

.privacy-address{

    font-style:normal;

    display:flex;

    flex-direction:column;

    gap:8px;

    margin-bottom:28px;

    text-align:left;

}


.privacy-address-line{

    font-size:0.96rem;

    line-height:1.6;

    color:var(--on-navy);

    text-align:left;

}


.privacy-address-line span{

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

}


.privacy-address-line a{

    color:var(--gold);

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

    padding-bottom:1px;

}


.privacy-address-line a:hover{

    border-color:var(--gold);

}


/* CTA */

.privacy-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;

}


.privacy-contact-cta:hover{

    border-color:var(--gold);

}


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

    transform:translateX(3px);

}


.privacy-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){

    .privacy-toc-toggle{
        display:none;
    }

    .privacy-toc{
        display:block !important;

        padding-top:20px;
    }

}


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

@media (min-width:1024px){

    .privacy-layout{
        grid-template-columns:
            minmax(0,1fr)
            260px;
    }

    .privacy-toc-wrap{
        order:0;

        position:sticky;

        top:96px;
    }

}


/* =========================================================
   MOBILE CONTAINER SAFETY
   ========================================================= */

@media (max-width:640px){

    .privacy-hero-inner,
    .privacy-intro-inner,
    .privacy-contact-inner{

        width:
            min(
                100%,
                calc(100% - (var(--gutter) * 2))
            );

    }

}