/* =========================================================
   INNER REFLECTIONS
   PREMIUM LIGHT FOOTER
========================================================= */

.ir-footer{

    position:relative;
    overflow:hidden;

    /* Light premium background */
    background:
        radial-gradient(
            circle at 8% 18%,
            rgba(231,196,106,.20),
            transparent 24%
        ),
        radial-gradient(
            circle at 88% 25%,
            rgba(216,166,212,.28),
            transparent 30%
        ),
        radial-gradient(
            circle at 55% 100%,
            rgba(198,165,211,.14),
            transparent 33%
        ),
        linear-gradient(
            135deg,
            #f8edf7 0%,
            #fbf5f8 45%,
            #f4eaf5 100%
        );

    color:#3d3041;

    padding:
        56px 20px 19px;

    border-top:
        1px solid
        rgba(120,18,127,.08);
}


/* =========================================================
   CONTAINER
========================================================= */

.ir-footer-container{

    position:relative;
    z-index:4;

    width:min(1160px,92%);

    margin-inline:auto;
}


/* =========================================================
   MAIN FOOTER
========================================================= */

.ir-footer-main{

    display:grid;

    grid-template-columns:
        1.4fr
        .8fr
        .8fr
        1fr;

    gap:
        clamp(28px,5vw,62px);

    padding-bottom:40px;

    border-bottom:
        1px solid
        rgba(120,18,127,.10);
}


/* =========================================================
   BRAND
========================================================= */

.ir-footer-brand{
    max-width:380px;
}


/* =========================================================
   FOOTER LOGO
========================================================= */

.ir-footer-logo{

    display:inline-flex;

    align-items:center;

    gap:12px;

    color:#78127F;

    text-decoration:none;
}


/*
   Circular logo holder
*/
.ir-footer-logo-circle{

    width:48px;
    height:48px;

    flex-shrink:0;

    display:grid;
    place-items:center;

    border-radius:50%;

    background:
        rgba(255,255,255,.82);

    border:
        1px solid
        rgba(201,154,46,.62);

    box-shadow:
        0 8px 22px
        rgba(84,17,95,.08);

    overflow:hidden;
}


/*
   Actual logo
*/
.ir-footer-logo-circle img{

    display:block;

    width:78%;
    height:78%;

    object-fit:contain;
}


/*
   Brand name
*/
.ir-footer-brand-name{

    color:#78127F;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:1.28rem;

    font-weight:600;

    letter-spacing:1.5px;

    line-height:1;
}


/* =========================================================
   BRAND DESCRIPTION
========================================================= */

.ir-footer-brand > p{

    max-width:345px;

    margin:
        19px 0 18px;

    color:#706371;

    font-size:.70rem;

    line-height:1.8;
}


/* =========================================================
   CONSULTATION LINK
========================================================= */

.ir-footer-consultation{

    display:inline-flex;

    align-items:center;

    gap:8px;

    color:#78127F;

    font-size:.69rem;

    font-weight:600;

    text-decoration:none;

    transition:
        color .25s ease;
}

.ir-footer-consultation i{

    color:#C99A2E;

    font-size:.60rem;

    transition:
        transform .3s ease;
}

.ir-footer-consultation:hover{

    color:#54115F;
}

.ir-footer-consultation:hover i{

    transform:translateX(4px);
}


/* =========================================================
   FOOTER COLUMNS
========================================================= */

.ir-footer-column{

    display:flex;

    flex-direction:column;

    align-items:flex-start;
}


/* heading */

.ir-footer-title{

    display:block;

    margin-bottom:15px;

    color:#C08F22;

    font-size:.60rem;

    font-weight:700;

    letter-spacing:2.3px;
}


/* links */

.ir-footer-links{

    display:flex;

    flex-direction:column;

    gap:8px;
}

.ir-footer-links a{

    position:relative;

    width:max-content;

    color:#67596a;

    font-size:.67rem;

    line-height:1.5;

    text-decoration:none;

    transition:
        color .25s ease,
        transform .25s ease;
}

.ir-footer-links a::after{

    content:"";

    position:absolute;

    left:0;
    bottom:-2px;

    width:0;
    height:1px;

    background:#C99A2E;

    transition:
        width .28s ease;
}

.ir-footer-links a:hover{

    color:#78127F;

    transform:translateX(3px);
}

.ir-footer-links a:hover::after{

    width:100%;
}


/* =========================================================
   CONNECT
========================================================= */

.ir-footer-connect > p{

    max-width:220px;

    margin:
        0 0 12px;

    color:#706371;

    font-size:.66rem;

    line-height:1.7;
}


/* contact link */

.ir-footer-contact-link{

    display:inline-flex;

    align-items:center;

    gap:8px;

    margin-bottom:17px;

    color:#78127F;

    font-size:.69rem;

    font-weight:600;

    text-decoration:none;
}

.ir-footer-contact-link i{

    color:#C99A2E;

    font-size:.58rem;

    transition:
        transform .3s ease;
}

.ir-footer-contact-link:hover i{

    transform:translateX(4px);
}


/* =========================================================
   SOCIAL
========================================================= */

.ir-footer-social{

    display:flex;

    align-items:center;

    gap:8px;
}

.ir-footer-social a{

    width:33px;
    height:33px;

    display:grid;

    place-items:center;

    border-radius:50%;

    background:
        rgba(255,255,255,.72);

    border:
        1px solid
        rgba(201,154,46,.28);

    color:#78127F;

    text-decoration:none;

    font-size:.68rem;

    box-shadow:
        0 6px 18px
        rgba(84,17,95,.05);

    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease,
        border-color .3s ease;
}

.ir-footer-social a:hover{

    transform:translateY(-4px);

    background:#78127F;

    border-color:#78127F;

    color:white;
}


/* =========================================================
   CENTER MESSAGE
========================================================= */

.ir-footer-message{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:14px;

    padding:
        25px 10px;
}

.ir-footer-message span{

    width:35px;
    height:1px;

    background:
        rgba(201,154,46,.52);
}

.ir-footer-message p{

    max-width:690px;

    margin:0;

    color:#776878;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:
        clamp(.98rem,2vw,1.16rem);

    font-style:italic;

    line-height:1.4;

    text-align:center;
}


/* =========================================================
   BOTTOM BAR
========================================================= */

.ir-footer-bottom{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:20px;

    padding-top:17px;

    border-top:
        1px solid
        rgba(120,18,127,.08);
}

.ir-footer-bottom p{

    margin:0;

    color:#8B7E8C;

    font-size:.58rem;

    line-height:1.5;
}

.ir-footer-credit{

    color:#B08A37 !important;
}


/* =========================================================
   DECORATIVE ORBITS
========================================================= */

.ir-footer-orbit{

    position:absolute;

    border-radius:50%;

    pointer-events:none;

    border:
        1px solid
        rgba(201,154,46,.13);
}

.ir-footer-orbit-one{

    width:420px;
    aspect-ratio:1;

    right:-225px;
    top:-275px;
}

.ir-footer-orbit-two{

    width:285px;
    aspect-ratio:1;

    right:-150px;
    top:-205px;

    border-style:dashed;

    border-color:
        rgba(120,18,127,.10);
}


/* =========================================================
   SOFT GLOWS
========================================================= */

.ir-footer-glow{

    position:absolute;

    border-radius:50%;

    pointer-events:none;

    filter:blur(30px);
}

.ir-footer-glow-one{

    width:180px;
    aspect-ratio:1;

    left:-75px;
    bottom:-85px;

    background:
        rgba(201,154,46,.08);
}

.ir-footer-glow-two{

    width:190px;
    aspect-ratio:1;

    right:18%;
    bottom:-125px;

    background:
        rgba(120,18,127,.06);
}


/* =========================================================
   RESPONSIVE — TABLET
========================================================= */

@media (max-width:950px){

    .ir-footer-main{

        grid-template-columns:
            1.2fr
            1fr
            1fr;

    }

    .ir-footer-connect{

        grid-column:1 / -1;

        display:flex;

        flex-direction:row;

        align-items:center;

        flex-wrap:wrap;

        gap:14px;
    }

    .ir-footer-connect > p{

        max-width:340px;

        margin:0;
    }

    .ir-footer-contact-link{

        margin-bottom:0;
    }

}


/* =========================================================
   RESPONSIVE — MOBILE
========================================================= */

@media (max-width:650px){

    .ir-footer{

        padding:
            48px 18px 17px;
    }

    .ir-footer-container{

        width:min(100%,94%);
    }

    .ir-footer-main{

        grid-template-columns:
            1fr 1fr;

        gap:
            32px 22px;

        padding-bottom:32px;
    }

    .ir-footer-brand{

        grid-column:1 / -1;

        max-width:500px;
    }

    .ir-footer-brand-name{

        font-size:1.15rem;
    }

    .ir-footer-connect{

        grid-column:1 / -1;

        display:block;
    }

    .ir-footer-connect > p{

        margin-bottom:11px;
    }

    .ir-footer-contact-link{

        margin-bottom:16px;
    }

    .ir-footer-message{

        gap:8px;

        padding-block:22px;
    }

    .ir-footer-message span{

        width:18px;
    }

    .ir-footer-message p{

        font-size:.88rem;
    }

    .ir-footer-bottom{

        flex-direction:column;

        justify-content:center;

        text-align:center;

        gap:5px;
    }

}