/* ==========================================================================
   FitUI V2 — Signature Listing Hero
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero{
    --fit-signature-gold: var(--fit-gold, #ffd22e);
    --fit-signature-gold-rgb: var(--fit-gold-rgb, 255, 210, 46);

    position:relative;
    isolation:isolate;

    display:flex;
    align-items:center;

    width:100%;
    min-height:clamp(760px, 90vh, 980px);

    padding:
        clamp(150px, 12vw, 205px)
        0
        clamp(105px, 9vw, 145px);

    overflow:hidden;

    color:#fff;
    background:#050608;
}

/* ==========================================================================
   Cinematic background
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__media{
    position:absolute;
    z-index:-6;
    inset:0;

    background-image:
        var(
            --fit-hero-cover,
            linear-gradient(
                135deg,
                #15171d 0%,
                #08090c 52%,
                #030405 100%
            )
        );

    background-repeat:no-repeat;
    background-position:
        center
        var(--fit-cover-focus, 50%);

    background-size:cover;

    transform:scale(1.035);
    filter:
        saturate(.92)
        contrast(1.04);

    animation:
        fitSignatureCoverReveal
        1.4s
        cubic-bezier(.2,.75,.25,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__shade{
    position:absolute;
    z-index:-5;
    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(3,4,6,.97) 0%,
            rgba(3,4,6,.90) 23%,
            rgba(3,4,6,.64) 52%,
            rgba(3,4,6,.70) 72%,
            rgba(3,4,6,.90) 100%
        ),
        linear-gradient(
            180deg,
            rgba(3,4,6,.64) 0%,
            rgba(3,4,6,.06) 30%,
            rgba(3,4,6,.24) 62%,
            rgba(3,4,6,.98) 100%
        ),
        radial-gradient(
            circle at 68% 42%,
            rgba(0,0,0,.04) 0%,
            rgba(0,0,0,.18) 48%,
            rgba(0,0,0,.72) 100%
        );

    pointer-events:none;
}

body.fitui-v2-listing .fit-v2-signature-hero__atmosphere{
    position:absolute;
    z-index:-4;
    inset:0;
    overflow:hidden;
    pointer-events:none;
}

body.fitui-v2-listing .fit-v2-signature-hero__glow{
    position:absolute;
    display:block;
    border-radius:999px;
    filter:blur(110px);
    opacity:.58;
}

body.fitui-v2-listing .fit-v2-signature-hero__glow--one{
    top:14%;
    left:-13%;

    width:620px;
    height:620px;

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .14
        );

    animation:
        fitSignatureGlowOne
        11s
        ease-in-out
        infinite alternate;
}

body.fitui-v2-listing .fit-v2-signature-hero__glow--two{
    right:-7%;
    bottom:-20%;

    width:550px;
    height:550px;

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .09
        );

    animation:
        fitSignatureGlowTwo
        13s
        ease-in-out
        infinite alternate;
}

body.fitui-v2-listing .fit-v2-signature-hero__grain{
    position:absolute;
    inset:-50%;

    opacity:.045;

    background-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.55'/%3E%3C/svg%3E");

    animation:
        fitSignatureGrain
        .8s
        steps(2)
        infinite;

    pointer-events:none;
}

/* ==========================================================================
   Main shell and layout
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__shell{
    position:relative;

    width:min(
        calc(100% - (var(--fit-gutter, 32px) * 2)),
        var(--fit-container, 1380px)
    );

    margin-inline:auto;
}

body.fitui-v2-listing .fit-v2-signature-hero__layout{
    display:grid;
    grid-template-columns:
        minmax(0, 1.42fr)
        minmax(330px, .72fr);

    align-items:center;
    gap:clamp(50px, 7vw, 110px);
}

body.fitui-v2-listing .fit-v2-signature-hero__identity{
    position:relative;
    z-index:2;

    min-width:0;
    max-width:850px;
}

/* ==========================================================================
   Brand row
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__brand-row{
    display:flex;
    align-items:flex-end;
    gap:clamp(22px, 3vw, 34px);

    margin-bottom:clamp(28px, 3vw, 42px);
}

body.fitui-v2-listing .fit-v2-signature-hero__logo{
    position:relative;
    isolation:isolate;

    flex:0 0 auto;

    display:grid;
    place-items:center;

    width:clamp(112px, 10vw, 146px);
    aspect-ratio:1;

    padding:12px;

    border:
        1px solid
        rgba(255,255,255,.19);

    border-radius:clamp(28px, 3vw, 38px);

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.17),
            rgba(255,255,255,.055)
        );

    box-shadow:
        0 30px 80px rgba(0,0,0,.46),
        0 8px 24px rgba(0,0,0,.35),
        inset 0 1px 0 rgba(255,255,255,.18),
        0 0 0 1px rgba(
            var(--fit-signature-gold-rgb),
            .04
        );

    backdrop-filter:
        blur(24px)
        saturate(135%);

    -webkit-backdrop-filter:
        blur(24px)
        saturate(135%);

    animation:
        fitSignatureLogoReveal
        .9s
        .08s
        cubic-bezier(.18,.78,.24,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__logo::before{
    content:"";

    position:absolute;
    z-index:-1;
    inset:-1px;

    border-radius:inherit;

    padding:1px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.28),
            rgba(
                var(--fit-signature-gold-rgb),
                .26
            ),
            rgba(255,255,255,.03)
        );

    -webkit-mask:
        linear-gradient(#fff 0 0)
        content-box,
        linear-gradient(#fff 0 0);

    -webkit-mask-composite:xor;
    mask-composite:exclude;

    pointer-events:none;
}

body.fitui-v2-listing .fit-v2-signature-hero__logo-glow{
    position:absolute;
    z-index:-2;

    inset:14%;

    border-radius:inherit;

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .22
        );

    filter:blur(32px);
    opacity:.62;
}

body.fitui-v2-listing .fit-v2-signature-hero__logo img{
    display:block;

    width:100%;
    height:100%;

    border-radius:calc(clamp(28px, 3vw, 38px) - 10px);

    object-fit:cover;
    background:#fff;
}

body.fitui-v2-listing .fit-v2-signature-hero__verified-seal{
    position:absolute;
    right:-8px;
    bottom:-8px;

    display:grid;
    place-items:center;

    width:38px;
    height:38px;

    color:#070809;

    border:
        4px solid
        rgba(5,6,8,.94);

    border-radius:999px;

    background:
        var(--fit-signature-gold);

    box-shadow:
        0 10px 24px rgba(0,0,0,.42),
        0 0 25px rgba(
            var(--fit-signature-gold-rgb),
            .28
        );
}

body.fitui-v2-listing .fit-v2-signature-hero__badges{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;

    padding-bottom:8px;

    animation:
        fitSignatureRevealUp
        .75s
        .17s
        cubic-bezier(.2,.75,.25,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__badges .fit-badge{
    display:inline-flex;
    align-items:center;
    gap:7px;

    min-height:34px;
    padding:7px 13px;

    color:rgba(255,255,255,.88);

    border:
        1px solid
        rgba(255,255,255,.15);

    border-radius:999px;

    background:
        rgba(8,10,14,.48);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08);

    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);

    font-size:11px;
    font-weight:800;
    line-height:1;
    letter-spacing:.12em;
    text-transform:uppercase;
}

body.fitui-v2-listing
.fit-v2-signature-hero__badges
.fit-badge--community{
    color:rgba(255,255,255,.86);
}

body.fitui-v2-listing
.fit-v2-signature-hero__badges
.fit-badge--pro{
    color:var(--fit-signature-gold);

    border-color:
        rgba(
            var(--fit-signature-gold-rgb),
            .28
        );

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .09
        );
}

body.fitui-v2-listing
.fit-v2-signature-hero__badges
.fit-badge--elite{
    color:#090a0d;

    border-color:
        rgba(
            var(--fit-signature-gold-rgb),
            .72
        );

    background:
        linear-gradient(
            135deg,
            #ffe36b,
            var(--fit-signature-gold)
        );

    box-shadow:
        0 10px 30px
        rgba(
            var(--fit-signature-gold-rgb),
            .16
        );
}

body.fitui-v2-listing
.fit-v2-signature-hero__badges
.fit-badge--verified{
    color:#fff;
}

/* ==========================================================================
   Business copy
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__copy{
    max-width:820px;
}

body.fitui-v2-listing .fit-v2-signature-hero__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;

    margin:0 0 14px;

    color:
        rgba(
            var(--fit-signature-gold-rgb),
            .95
        );

    font-size:clamp(11px, .9vw, 13px);
    font-weight:800;
    line-height:1.2;
    letter-spacing:.2em;
    text-transform:uppercase;

    animation:
        fitSignatureRevealUp
        .75s
        .23s
        cubic-bezier(.2,.75,.25,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__eyebrow::before{
    content:"";

    display:block;

    width:32px;
    height:1px;

    background:
        var(--fit-signature-gold);

    box-shadow:
        0 0 12px
        rgba(
            var(--fit-signature-gold-rgb),
            .45
        );
}

body.fitui-v2-listing .fit-v2-signature-hero__title{
    max-width:900px;

    margin:0;

    color:#fff;

    font-family:inherit;
    font-size:clamp(54px, 6.6vw, 108px);
    font-weight:800;
    line-height:.91;
    letter-spacing:-.055em;
    text-wrap:balance;

    text-shadow:
        0 8px 35px rgba(0,0,0,.35);

    animation:
        fitSignatureTitleReveal
        .95s
        .27s
        cubic-bezier(.16,.8,.22,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__tagline{
    max-width:720px;

    margin:
        clamp(20px, 2.3vw, 30px)
        0
        0;

    color:rgba(255,255,255,.70);

    font-size:clamp(18px, 1.65vw, 25px);
    font-weight:420;
    line-height:1.5;
    letter-spacing:-.015em;
    text-wrap:balance;

    animation:
        fitSignatureRevealUp
        .8s
        .36s
        cubic-bezier(.2,.75,.25,1)
        both;
}

/* ==========================================================================
   Meta information
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__meta{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px 20px;

    margin-top:clamp(24px, 2.8vw, 36px);

    animation:
        fitSignatureRevealUp
        .8s
        .44s
        cubic-bezier(.2,.75,.25,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__meta-item,
body.fitui-v2-listing .fit-v2-signature-hero__status{
    display:inline-flex;
    align-items:center;
    gap:8px;

    min-height:34px;

    color:rgba(255,255,255,.72);

    font-size:14px;
    line-height:1.25;
}

body.fitui-v2-listing .fit-v2-signature-hero__meta-item svg{
    flex:0 0 auto;

    color:var(--fit-signature-gold);
}

body.fitui-v2-listing .fit-v2-signature-hero__meta-item strong{
    color:#fff;
    font-weight:750;
}

body.fitui-v2-listing .fit-v2-signature-hero__meta-item + .fit-v2-signature-hero__meta-item,
body.fitui-v2-listing .fit-v2-signature-hero__status + .fit-v2-signature-hero__meta-item{
    position:relative;
    padding-left:20px;
}

body.fitui-v2-listing .fit-v2-signature-hero__meta-item + .fit-v2-signature-hero__meta-item::before,
body.fitui-v2-listing .fit-v2-signature-hero__status + .fit-v2-signature-hero__meta-item::before{
    content:"";

    position:absolute;
    left:0;

    width:1px;
    height:18px;

    background:rgba(255,255,255,.16);
}

body.fitui-v2-listing .fit-v2-signature-hero__status{
    gap:9px;

    color:rgba(255,255,255,.82);
    font-weight:650;
}

body.fitui-v2-listing .fit-v2-signature-hero__status small{
    color:rgba(255,255,255,.48);
    font-size:12px;
    font-weight:500;
}

body.fitui-v2-listing .fit-v2-signature-hero__status-dot{
    flex:0 0 auto;

    display:block;

    width:8px;
    height:8px;

    border-radius:999px;

    background:#8e949e;
    box-shadow:0 0 0 5px rgba(142,148,158,.10);
}

body.fitui-v2-listing .fit-v2-signature-hero__status.is-open .fit-v2-signature-hero__status-dot,
body.fitui-v2-listing .fit-v2-signature-hero__status-dot.is-open{
    background:#62da8b;

    box-shadow:
        0 0 0 5px rgba(98,218,139,.10),
        0 0 18px rgba(98,218,139,.42);

    animation:
        fitSignatureStatusPulse
        2.4s
        ease-in-out
        infinite;
}

body.fitui-v2-listing .fit-v2-signature-hero__status.is-closed .fit-v2-signature-hero__status-dot,
body.fitui-v2-listing .fit-v2-signature-hero__status-dot.is-closed{
    background:#fa7777;

    box-shadow:
        0 0 0 5px rgba(250,119,119,.10);
}

/* ==========================================================================
   CTA actions
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;

    margin-top:clamp(28px, 3.2vw, 42px);

    animation:
        fitSignatureRevealUp
        .8s
        .52s
        cubic-bezier(.2,.75,.25,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__action{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    min-height:54px;
    padding:14px 20px;

    color:#fff;

    border:
        1px solid
        rgba(255,255,255,.17);

    border-radius:16px;

    background:
        rgba(255,255,255,.075);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10),
        0 15px 35px rgba(0,0,0,.18);

    backdrop-filter:
        blur(16px)
        saturate(130%);

    -webkit-backdrop-filter:
        blur(16px)
        saturate(130%);

    font-size:14px;
    font-weight:750;
    line-height:1;
    text-decoration:none;

    cursor:pointer;

    transition:
        transform .25s ease,
        border-color .25s ease,
        background-color .25s ease,
        box-shadow .25s ease,
        color .25s ease;
}

body.fitui-v2-listing .fit-v2-signature-hero__action::before{
    content:"";

    position:absolute;
    z-index:-1;

    top:-100%;
    left:-40%;

    width:35%;
    height:300%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.23),
            transparent
        );

    transform:
        rotate(24deg)
        translateX(-240%);

    transition:
        transform .65s
        cubic-bezier(.2,.7,.2,1);
}

body.fitui-v2-listing .fit-v2-signature-hero__action:hover{
    color:#fff;

    border-color:
        rgba(
            var(--fit-signature-gold-rgb),
            .38
        );

    background:
        rgba(255,255,255,.11);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.14),
        0 20px 45px rgba(0,0,0,.28),
        0 0 24px
        rgba(
            var(--fit-signature-gold-rgb),
            .08
        );

    transform:translateY(-3px);
}

body.fitui-v2-listing .fit-v2-signature-hero__action:hover::before{
    transform:
        rotate(24deg)
        translateX(520%);
}

body.fitui-v2-listing .fit-v2-signature-hero__action:focus-visible{
    outline:
        2px solid
        var(--fit-signature-gold);

    outline-offset:4px;
}

body.fitui-v2-listing .fit-v2-signature-hero__action--primary{
    min-width:170px;

    color:#08090b;

    border-color:
        rgba(
            var(--fit-signature-gold-rgb),
            .72
        );

    background:
        linear-gradient(
            135deg,
            #ffe66f 0%,
            var(--fit-signature-gold) 52%,
            #eebd12 100%
        );

    box-shadow:
        0 18px 42px
        rgba(
            var(--fit-signature-gold-rgb),
            .18
        ),
        inset 0 1px 0 rgba(255,255,255,.46);
}

body.fitui-v2-listing .fit-v2-signature-hero__action--primary:hover{
    color:#08090b;

    border-color:#ffe97c;

    background:
        linear-gradient(
            135deg,
            #ffeb89,
            #ffd940
        );

    box-shadow:
        0 22px 52px
        rgba(
            var(--fit-signature-gold-rgb),
            .27
        ),
        inset 0 1px 0 rgba(255,255,255,.55);
}

/* ==========================================================================
   Social hub
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__social{
    display:flex;
    align-items:center;
    gap:18px;

    margin-top:clamp(24px, 2.6vw, 34px);

    animation:
        fitSignatureRevealUp
        .8s
        .60s
        cubic-bezier(.2,.75,.25,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__social-label{
    flex:0 0 auto;

    color:rgba(255,255,255,.42);

    font-size:10px;
    font-weight:850;
    line-height:1;
    letter-spacing:.2em;
    text-transform:uppercase;
}

body.fitui-v2-listing .fit-v2-signature-hero__social-links{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}

body.fitui-v2-listing .fit-v2-signature-social{
    display:inline-flex;
    align-items:center;
    gap:9px;

    min-height:42px;
    padding:9px 13px;

    color:rgba(255,255,255,.72);

    border:
        1px solid
        rgba(255,255,255,.12);

    border-radius:13px;

    background:
        rgba(255,255,255,.045);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06);

    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);

    font-size:12px;
    font-weight:650;
    line-height:1;
    text-decoration:none;

    transition:
        color .24s ease,
        transform .24s ease,
        border-color .24s ease,
        background-color .24s ease,
        box-shadow .24s ease;
}

body.fitui-v2-listing .fit-v2-signature-social svg{
    flex:0 0 auto;

    width:17px;
    height:17px;
}

body.fitui-v2-listing .fit-v2-signature-social:hover{
    color:#fff;

    border-color:
        rgba(
            var(--fit-signature-gold-rgb),
            .34
        );

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .08
        );

    box-shadow:
        0 12px 30px rgba(0,0,0,.24),
        0 0 20px
        rgba(
            var(--fit-signature-gold-rgb),
            .07
        );

    transform:translateY(-3px);
}

body.fitui-v2-listing .fit-v2-signature-social:focus-visible{
    outline:
        2px solid
        var(--fit-signature-gold);

    outline-offset:3px;
}

/* ==========================================================================
   Business Snapshot
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__snapshot{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    width:100%;
    max-width:430px;

    justify-self:end;

    padding:clamp(25px, 2.5vw, 34px);

    border:
        1px solid
        rgba(255,255,255,.16);

    border-radius:clamp(26px, 3vw, 38px);

    background:
        linear-gradient(
            145deg,
            rgba(20,22,28,.75),
            rgba(8,10,14,.57)
        );

    box-shadow:
        0 40px 100px rgba(0,0,0,.44),
        0 12px 35px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.13),
        inset 0 -1px 0 rgba(255,255,255,.035);

    backdrop-filter:
        blur(30px)
        saturate(145%);

    -webkit-backdrop-filter:
        blur(30px)
        saturate(145%);

    animation:
        fitSignatureSnapshotReveal
        1s
        .34s
        cubic-bezier(.17,.79,.25,1)
        both;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot::before{
    content:"";

    position:absolute;
    z-index:-1;
    inset:-1px;

    border-radius:inherit;

    padding:1px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.26),
            rgba(
                var(--fit-signature-gold-rgb),
                .20
            ) 42%,
            rgba(255,255,255,.025) 76%
        );

    -webkit-mask:
        linear-gradient(#fff 0 0)
        content-box,
        linear-gradient(#fff 0 0);

    -webkit-mask-composite:xor;
    mask-composite:exclude;

    pointer-events:none;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-glow{
    position:absolute;
    z-index:-2;

    top:-130px;
    right:-110px;

    width:320px;
    height:320px;

    border-radius:999px;

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .13
        );

    filter:blur(75px);
    pointer-events:none;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;

    padding-bottom:24px;

    border-bottom:
        1px solid
        rgba(255,255,255,.09);
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-head > div{
    min-width:0;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-head span{
    display:block;

    margin-bottom:8px;

    color:
        rgba(
            var(--fit-signature-gold-rgb),
            .86
        );

    font-size:10px;
    font-weight:850;
    line-height:1;
    letter-spacing:.18em;
    text-transform:uppercase;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-head strong{
    display:block;
    overflow:hidden;

    color:#fff;

    font-size:clamp(17px, 1.5vw, 21px);
    font-weight:760;
    line-height:1.2;
    letter-spacing:-.025em;

    text-overflow:ellipsis;
    white-space:nowrap;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-verified{
    flex:0 0 auto;

    display:grid;
    place-items:center;

    width:38px;
    height:38px;

    color:#08090b;

    border-radius:999px;

    background:
        var(--fit-signature-gold);

    box-shadow:
        0 10px 25px
        rgba(
            var(--fit-signature-gold-rgb),
            .20
        );
}

/* ==========================================================================
   Fit Score
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__score{
    display:flex;
    align-items:center;
    gap:20px;

    padding:26px 0;

    border-bottom:
        1px solid
        rgba(255,255,255,.09);
}

body.fitui-v2-listing .fit-v2-signature-hero__score-ring{
    position:relative;

    flex:0 0 auto;

    display:flex;
    align-items:baseline;
    justify-content:center;
    gap:2px;

    width:98px;
    height:98px;

    border-radius:999px;

    background:
        radial-gradient(
            circle,
            rgba(8,10,14,.97) 59%,
            transparent 61%
        ),
        conic-gradient(
            var(--fit-signature-gold)
            calc(var(--fit-score, 0) * 1%),
            rgba(255,255,255,.10)
            0
        );

    box-shadow:
        0 0 40px
        rgba(
            var(--fit-signature-gold-rgb),
            .10
        ),
        inset 0 0 25px rgba(0,0,0,.22);
}

body.fitui-v2-listing .fit-v2-signature-hero__score-ring::after{
    content:"";

    position:absolute;
    inset:7px;

    border:
        1px solid
        rgba(255,255,255,.08);

    border-radius:inherit;
}

body.fitui-v2-listing .fit-v2-signature-hero__score-ring span{
    color:#fff;

    font-size:30px;
    font-weight:820;
    line-height:1;
    letter-spacing:-.05em;
}

body.fitui-v2-listing .fit-v2-signature-hero__score-ring small{
    color:rgba(255,255,255,.42);

    font-size:10px;
    font-weight:700;
}

body.fitui-v2-listing .fit-v2-signature-hero__score-copy span{
    display:block;

    margin-bottom:7px;

    color:
        var(--fit-signature-gold);

    font-size:10px;
    font-weight:850;
    line-height:1;
    letter-spacing:.18em;
    text-transform:uppercase;
}

body.fitui-v2-listing .fit-v2-signature-hero__score-copy strong{
    display:block;

    color:#fff;

    font-size:18px;
    font-weight:740;
    line-height:1.25;
}

/* ==========================================================================
   Snapshot status
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-status{
    display:flex;
    align-items:center;
    gap:14px;

    padding:23px 0;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-status .fit-v2-signature-hero__status-dot{
    width:10px;
    height:10px;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-status div{
    min-width:0;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-status small{
    display:block;

    margin-bottom:5px;

    color:rgba(255,255,255,.42);

    font-size:10px;
    font-weight:700;
    line-height:1;
    letter-spacing:.12em;
    text-transform:uppercase;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-status strong{
    display:block;

    color:#fff;

    font-size:15px;
    font-weight:720;
    line-height:1.25;
}

/* ==========================================================================
   Snapshot statistics
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid a{
    position:relative;
    overflow:hidden;

    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:6px;

    min-height:92px;
    padding:17px;

    color:#fff;

    border:
        1px solid
        rgba(255,255,255,.09);

    border-radius:18px;

    background:
        rgba(255,255,255,.045);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.05);

    text-decoration:none;

    transition:
        transform .24s ease,
        border-color .24s ease,
        background-color .24s ease,
        box-shadow .24s ease;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid a::after{
    content:"";

    position:absolute;
    right:-25px;
    bottom:-32px;

    width:78px;
    height:78px;

    border-radius:999px;

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .08
        );

    filter:blur(18px);
    opacity:0;

    transition:opacity .24s ease;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid a:hover{
    border-color:
        rgba(
            var(--fit-signature-gold-rgb),
            .26
        );

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .065
        );

    box-shadow:
        0 14px 30px rgba(0,0,0,.20);

    transform:translateY(-3px);
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid a:hover::after{
    opacity:1;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid strong{
    color:#fff;

    font-size:26px;
    font-weight:790;
    line-height:1;
    letter-spacing:-.04em;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid span{
    color:rgba(255,255,255,.46);

    font-size:11px;
    font-weight:720;
    line-height:1;
    letter-spacing:.08em;
    text-transform:uppercase;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;

    margin-top:24px;
    padding-top:22px;

    border-top:
        1px solid
        rgba(255,255,255,.09);
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-footer .fit-badge{
    display:inline-flex;
    align-items:center;

    min-height:31px;
    padding:7px 11px;

    color:
        var(--fit-signature-gold);

    border:
        1px solid
        rgba(
            var(--fit-signature-gold-rgb),
            .22
        );

    border-radius:999px;

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .07
        );

    font-size:9px;
    font-weight:850;
    line-height:1;
    letter-spacing:.12em;
    text-transform:uppercase;
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-footer .fit-badge--elite{
    color:#08090b;
    background:var(--fit-signature-gold);
}

body.fitui-v2-listing .fit-v2-signature-hero__snapshot-footer > span:last-child{
    overflow:hidden;

    color:rgba(255,255,255,.42);

    font-size:11px;
    font-weight:650;

    text-align:right;
    text-overflow:ellipsis;
    white-space:nowrap;
}

/* ==========================================================================
   Explore cue
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero__explore{
    position:absolute;
    left:0;
    bottom:clamp(-82px, -6vw, -58px);

    display:inline-flex;
    align-items:center;
    gap:12px;

    color:rgba(255,255,255,.48);

    font-size:11px;
    font-weight:780;
    line-height:1;
    letter-spacing:.14em;
    text-decoration:none;
    text-transform:uppercase;

    animation:
        fitSignatureRevealUp
        .8s
        .72s
        cubic-bezier(.2,.75,.25,1)
        both;

    transition:color .24s ease;
}

body.fitui-v2-listing .fit-v2-signature-hero__explore:hover{
    color:#fff;
}

body.fitui-v2-listing .fit-v2-signature-hero__explore-icon{
    display:grid;
    place-items:center;

    width:38px;
    height:38px;

    color:
        var(--fit-signature-gold);

    border:
        1px solid
        rgba(
            var(--fit-signature-gold-rgb),
            .24
        );

    border-radius:999px;

    background:
        rgba(
            var(--fit-signature-gold-rgb),
            .06
        );

    animation:
        fitSignatureExplore
        2.1s
        ease-in-out
        infinite;
}

/* ==========================================================================
   Elite variation
   ========================================================================== */

body.fitui-v2-listing .fit-v2-signature-hero--elite .fit-v2-signature-hero__snapshot{
    border-color:
        rgba(
            var(--fit-signature-gold-rgb),
            .22
        );

    box-shadow:
        0 42px 110px rgba(0,0,0,.47),
        0 0 65px
        rgba(
            var(--fit-signature-gold-rgb),
            .07
        ),
        inset 0 1px 0 rgba(255,255,255,.15);
}

/* ==========================================================================
   Tablet
   ========================================================================== */

@media (max-width:1180px){

    body.fitui-v2-listing .fit-v2-signature-hero{
        min-height:auto;

        padding-top:155px;
        padding-bottom:125px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__layout{
        grid-template-columns:
            minmax(0, 1.3fr)
            minmax(300px, .7fr);

        gap:45px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__title{
        font-size:clamp(50px, 6.8vw, 78px);
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot{
        padding:25px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__social{
        align-items:flex-start;
    }

    body.fitui-v2-listing .fit-v2-signature-social span{
        display:none;
    }

    body.fitui-v2-listing .fit-v2-signature-social{
        justify-content:center;

        width:42px;
        padding-inline:0;
    }

}

/* ==========================================================================
   Stacked layout
   ========================================================================== */

@media (max-width:940px){

    body.fitui-v2-listing .fit-v2-signature-hero{
        padding:
            145px
            0
            115px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__shade{
        background:
            linear-gradient(
                180deg,
                rgba(3,4,6,.84) 0%,
                rgba(3,4,6,.52) 25%,
                rgba(3,4,6,.84) 62%,
                rgba(3,4,6,.99) 100%
            ),
            linear-gradient(
                90deg,
                rgba(3,4,6,.80),
                rgba(3,4,6,.48),
                rgba(3,4,6,.80)
            );
    }

    body.fitui-v2-listing .fit-v2-signature-hero__layout{
        grid-template-columns:1fr;
        gap:54px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__identity{
        max-width:760px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot{
        max-width:760px;
        justify-self:start;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid{
        grid-template-columns:repeat(4, minmax(0, 1fr));
    }

    body.fitui-v2-listing .fit-v2-signature-hero__explore{
        display:none;
    }

}

/* ==========================================================================
   Mobile
   ========================================================================== */

@media (max-width:680px){

    body.fitui-v2-listing .fit-v2-signature-hero{
        min-height:auto;

        padding:
            118px
            0
            78px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__shell{
        width:min(
            calc(100% - 36px),
            var(--fit-container, 1380px)
        );
    }

    body.fitui-v2-listing .fit-v2-signature-hero__media{
        transform:scale(1.02);
    }

    body.fitui-v2-listing .fit-v2-signature-hero__shade{
        background:
            linear-gradient(
                180deg,
                rgba(3,4,6,.66) 0%,
                rgba(3,4,6,.62) 22%,
                rgba(3,4,6,.88) 52%,
                rgba(3,4,6,1) 100%
            ),
            linear-gradient(
                90deg,
                rgba(3,4,6,.70),
                rgba(3,4,6,.38),
                rgba(3,4,6,.70)
            );
    }

    body.fitui-v2-listing .fit-v2-signature-hero__layout{
        gap:38px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__brand-row{
        align-items:center;
        gap:18px;

        margin-bottom:27px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__logo{
        width:94px;
        padding:9px;

        border-radius:25px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__logo img{
        border-radius:18px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__verified-seal{
        right:-7px;
        bottom:-7px;

        width:34px;
        height:34px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__badges{
        align-content:center;
        padding-bottom:0;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__badges .fit-badge{
        min-height:30px;
        padding:6px 10px;

        font-size:9px;
        letter-spacing:.1em;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__eyebrow{
        margin-bottom:12px;

        font-size:10px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__eyebrow::before{
        width:24px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__title{
        font-size:clamp(44px, 14vw, 66px);
        line-height:.94;
        letter-spacing:-.052em;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__tagline{
        margin-top:18px;

        font-size:17px;
        line-height:1.48;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__meta{
        align-items:flex-start;
        flex-direction:column;
        gap:10px;

        margin-top:24px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__meta-item + .fit-v2-signature-hero__meta-item,
    body.fitui-v2-listing .fit-v2-signature-hero__status + .fit-v2-signature-hero__meta-item{
        padding-left:0;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__meta-item + .fit-v2-signature-hero__meta-item::before,
    body.fitui-v2-listing .fit-v2-signature-hero__status + .fit-v2-signature-hero__meta-item::before{
        display:none;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__actions{
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:10px;

        margin-top:30px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__action{
        width:100%;
        min-width:0;
        min-height:52px;
        padding:13px 14px;

        border-radius:15px;

        font-size:13px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__action--primary{
        grid-column:1 / -1;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__social{
        align-items:flex-start;
        flex-direction:column;
        gap:12px;

        margin-top:25px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__social-links{
        gap:8px;
    }

    body.fitui-v2-listing .fit-v2-signature-social{
        width:42px;
        height:42px;
        min-height:42px;
        padding:0;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot{
        padding:22px;

        border-radius:27px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot-head{
        padding-bottom:20px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot-head strong{
        max-width:230px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__score{
        gap:17px;
        padding:22px 0;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__score-ring{
        width:86px;
        height:86px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__score-ring span{
        font-size:27px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot-grid a{
        min-height:84px;
        padding:15px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot-footer{
        align-items:flex-start;
        flex-direction:column;
        gap:12px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot-footer > span:last-child{
        max-width:100%;
        text-align:left;
    }

}

/* ==========================================================================
   Small phones
   ========================================================================== */

@media (max-width:420px){

    body.fitui-v2-listing .fit-v2-signature-hero{
        padding-top:105px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__brand-row{
        align-items:flex-start;
        flex-direction:column;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__logo{
        width:88px;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__actions{
        grid-template-columns:1fr;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__action--primary{
        grid-column:auto;
    }

    body.fitui-v2-listing .fit-v2-signature-hero__snapshot{
        padding:19px;
    }

}

/* ==========================================================================
   Motion
   ========================================================================== */

@keyframes fitSignatureCoverReveal{

    from{
        opacity:0;
        transform:scale(1.09);
    }

    to{
        opacity:1;
        transform:scale(1.035);
    }

}

@keyframes fitSignatureLogoReveal{

    from{
        opacity:0;
        transform:
            translateY(24px)
            scale(.88)
            rotate(-3deg);
    }

    to{
        opacity:1;
        transform:
            translateY(0)
            scale(1)
            rotate(0);
    }

}

@keyframes fitSignatureTitleReveal{

    from{
        opacity:0;
        transform:
            translateY(34px)
            scale(.985);

        filter:blur(8px);
    }

    to{
        opacity:1;
        transform:
            translateY(0)
            scale(1);

        filter:blur(0);
    }

}

@keyframes fitSignatureRevealUp{

    from{
        opacity:0;
        transform:translateY(22px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

@keyframes fitSignatureSnapshotReveal{

    from{
        opacity:0;
        transform:
            translateX(34px)
            translateY(20px)
            scale(.97);

        filter:blur(6px);
    }

    to{
        opacity:1;
        transform:
            translateX(0)
            translateY(0)
            scale(1);

        filter:blur(0);
    }

}

@keyframes fitSignatureGlowOne{

    from{
        transform:
            translate3d(-4%, -3%, 0)
            scale(.96);
    }

    to{
        transform:
            translate3d(10%, 7%, 0)
            scale(1.08);
    }

}

@keyframes fitSignatureGlowTwo{

    from{
        transform:
            translate3d(5%, 2%, 0)
            scale(.94);
    }

    to{
        transform:
            translate3d(-9%, -8%, 0)
            scale(1.1);
    }

}

@keyframes fitSignatureGrain{

    0%{
        transform:translate3d(0,0,0);
    }

    25%{
        transform:translate3d(2%,-1%,0);
    }

    50%{
        transform:translate3d(-1%,2%,0);
    }

    75%{
        transform:translate3d(1%,1%,0);
    }

    100%{
        transform:translate3d(-2%,-1%,0);
    }

}

@keyframes fitSignatureStatusPulse{

    0%,
    100%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.16);
    }

}

@keyframes fitSignatureExplore{

    0%,
    100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(5px);
    }

}

/* ==========================================================================
   Reduced motion
   ========================================================================== */

@media (prefers-reduced-motion:reduce){

    body.fitui-v2-listing .fit-v2-signature-hero *,
    body.fitui-v2-listing .fit-v2-signature-hero *::before,
    body.fitui-v2-listing .fit-v2-signature-hero *::after{
        scroll-behavior:auto !important;
        animation-duration:.01ms !important;
        animation-iteration-count:1 !important;
        transition-duration:.01ms !important;
    }

}