/* =========================================================
   SA HEDGE FUND — CONTACT PAGE
   ========================================================= */


/* =========================================================
   PAGE CONTAINER
   ========================================================= */

.contact-wrap{

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

    max-width:var(--layout-container);

    margin-inline:auto;

    padding-inline:0;

}


/* =========================================================
   BUTTONS
   ========================================================= */

.contact-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    min-height:48px;

    padding:0 26px;

    font-size:0.86rem;

    letter-spacing:0.02em;

    transition:all .25s ease;

    border:1px solid transparent;

    cursor:pointer;

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

}

.contact-btn-primary{

    background:var(--gold);

    color:var(--navy-deep);

    font-weight:500;

}

.contact-btn-primary:hover{

    background:#dcb769;

}

.contact-btn:hover .contact-btn-arrow{

    transform:translateX(3px);

}

.contact-btn-arrow{

    transition:transform .25s ease;

}


/* =========================================================
   SHARED EDITORIAL ATOMS
   ========================================================= */

.contact-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:24px;

}

.contact-eyebrow::before{

    content:'';

    width:24px;

    height:1px;

    background:var(--gold);

}

.contact-section-head{

    max-width:620px;

    margin:
        0
        0
        clamp(36px,5vw,52px);

}

.contact-section-head h2{

    font-size:clamp(1.5rem,3vw,2rem);

    line-height:1.3;

}

.contact-section-head p{

    margin-top:16px;

    font-size:1rem;

    line-height:1.75;

    max-width:56ch;

}


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

.contact-hero{

    padding:
        clamp(72px,12vw,128px)
        0
        0;

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

    text-align:center;

}

.contact-hero-inner{

    max-width:660px;

    margin:0 auto;

}

.contact-hero h1{

    font-size:clamp(1.95rem,4.4vw,2.9rem);

    line-height:1.26;

    letter-spacing:-0.01em;

}

.contact-hero-sub{

    margin-top:26px;

    display:flex;

    flex-direction:column;

    gap:16px;

}

.contact-hero-sub p{

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

    line-height:1.8;

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

    max-width:50ch;

    margin:0 auto;

}

.contact-hero-rule{

    margin:
        clamp(44px,7vw,64px)
        0
        0;

    height:1px;

    background:
        repeating-linear-gradient(
            90deg,
            var(--gold) 0 6px,
            transparent 6px 14px
        );

    opacity:0.55;

}

.contact-hero-caption{

    padding:
        14px 0
        clamp(44px,7vw,72px);

    font-size:0.74rem;

    letter-spacing:0.08em;

    text-transform:uppercase;

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

}


/* =========================================================
   BEFORE YOU REACH OUT
   ========================================================= */

.contact-prelude{

    background:var(--cream);

    color:var(--on-cream);

    padding:
        clamp(64px,10vw,110px)
        0;

}

.contact-prelude .contact-wrap{

    max-width:700px;

}

.contact-prelude .contact-eyebrow{

    color:var(--gold-dark);

}

.contact-prelude .contact-eyebrow::before{

    background:var(--gold-dark);

}

.contact-prelude .contact-section-head p{

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

}

.contact-prelude-body p{

    font-size:1.02rem;

    line-height:1.85;

    color:var(--on-cream);

    max-width:60ch;

    margin-bottom:12px;

}

.contact-prelude-body p:last-child{

    margin-bottom:0;

}

.contact-prelude-close{

    margin-top:
        clamp(26px,4vw,34px);

    padding-left:22px;

    border-left:1px solid var(--gold);

}

.contact-prelude-close p{

    font-family:'Playfair Display',serif;

    font-style:italic;

    font-weight:500;

    font-size:clamp(1.02rem,1.9vw,1.18rem);

    line-height:1.6;

    color:var(--navy);

    max-width:46ch;

}


/* =========================================================
   CONTACT INFORMATION
   ========================================================= */

.contact-info{

    background:var(--neutral);

    color:var(--on-cream);

    padding:
        clamp(64px,10vw,110px)
        0;

    border-top:
        1px solid rgba(11,31,51,0.08);

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

}

.contact-info .contact-eyebrow{

    color:var(--gold-dark);

}

.contact-info .contact-eyebrow::before{

    background:var(--gold-dark);

}

.contact-info-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(220px,1fr));

    gap:clamp(28px,4vw,40px);

}

.contact-info-item{

    padding-top:20px;

    border-top:
        1px solid rgba(11,31,51,0.22);

}

.contact-info-item .contact-info-label{

    font-size:0.76rem;

    letter-spacing:0.1em;

    text-transform:uppercase;

    color:var(--gold-dark);

    margin-bottom:12px;

    display:block;

}

.contact-info-item p{

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

    font-size:0.94rem;

    line-height:1.65;

    margin-bottom:10px;

}

.contact-info-item .contact-info-value{

    font-family:'Playfair Display',serif;

    font-size:1.1rem;

    color:var(--navy);

    font-style:italic;

}

.contact-info-item a.contact-info-value:hover{

    color:var(--gold-dark);

}


/* =========================================================
   WHAT YOU CAN CONTACT US ABOUT
   ========================================================= */

.contact-topics{

    background:var(--navy);

    padding:
        clamp(64px,10vw,120px)
        0;

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

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

}

.contact-topics .contact-section-head p{

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

}

.contact-topics-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(230px,1fr));

    gap:clamp(28px,4vw,40px);

}

.contact-topics-item{

    padding-top:20px;

    border-top:
        1px solid rgba(201,162,77,0.28);

}

.contact-topics-item .contact-topics-label{

    font-size:0.78rem;

    letter-spacing:0.08em;

    text-transform:uppercase;

    color:var(--gold);

    margin-bottom:10px;

    display:block;

}

.contact-topics-item p{

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

    font-size:0.94rem;

    line-height:1.65;

}


/* =========================================================
   OUR COMMITMENT
   ========================================================= */

.contact-commitment{

    background:var(--cream);

    color:var(--on-cream);

    padding:
        clamp(64px,10vw,110px)
        0;

}

.contact-commitment .contact-wrap{

    max-width:640px;

    text-align:center;

}

.contact-commitment .contact-eyebrow{

    color:var(--gold-dark);

    justify-content:center;

}

.contact-commitment .contact-eyebrow::before{

    background:var(--gold-dark);

}

.contact-commitment h2{

    font-size:clamp(1.5rem,3vw,2rem);

    line-height:1.32;

    margin-bottom:
        clamp(24px,4vw,30px);

}

.contact-commitment-body p{

    font-size:1.02rem;

    line-height:1.85;

    color:var(--on-cream);

    margin-bottom:12px;

}

.contact-commitment-body p:last-child{

    margin-bottom:0;

}


/* =========================================================
   CLOSING
   ========================================================= */

.contact-closing{

    padding:
        clamp(76px,11vw,140px)
        0;

    text-align:center;

}

.contact-closing-rule{

    width:44px;

    height:2px;

    background:var(--gold);

    margin:0 auto 36px;

}

.contact-closing h2{

    font-size:clamp(1.7rem,3.8vw,2.5rem);

    max-width:22ch;

    margin:0 auto 20px;

    line-height:1.3;

}

.contact-closing p{

    max-width:50ch;

    margin:0 auto 40px;

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

    font-size:1.02rem;

    line-height:1.75;

}


/* =========================================================
   DISABLED BUTTON
   ========================================================= */

.contact-btn:disabled{

    opacity:.65;

    cursor:not-allowed;

}


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

@media (max-width:860px){

    .nav-links{

        display:none;

    }

    .nav-burger{

        display:flex;

    }

}