@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');

.public-topbar{
    --fox-ink:#16202b;
    --fox-copy:#5e6d7a;
    --fox-line:rgba(22,32,43,.08);
    --fox-line-strong:rgba(22,32,43,.14);
    --fox-orange:#ff7a2f;
    --fox-cyan:#59d8ff;
    --fox-peach:#ffc68c;
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:1200;
    padding:.45rem 0 0;
    background:linear-gradient(180deg,rgba(247,241,232,.82),rgba(247,241,232,0));
    backdrop-filter:blur(18px);
}

.public-topbar .navbar{
    padding:0;
    overflow:visible;
}

.public-topbar .container{
    width:min(1380px,calc(100% - 32px));
    max-width:none;
    padding:.46rem .8rem;
    overflow:visible;
    border-radius:24px;
    border:1px solid rgba(255,255,255,.82);
    background:
        radial-gradient(18rem 12rem at 12% 0%,rgba(255,122,47,.14),transparent 70%),
        radial-gradient(16rem 11rem at 88% 0%,rgba(89,216,255,.16),transparent 72%),
        linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.58));
    box-shadow:0 26px 52px -38px rgba(79,56,22,.22);
    backdrop-filter:blur(22px) saturate(1.08);
}

.public-topbar .brand{
    display:flex;
    align-items:center;
    gap:.72rem;
    color:var(--fox-ink);
    text-decoration:none;
    font-family:'Syne',sans-serif;
}

.public-topbar .brand-logo,
.public-topbar .brand-fallback{
    width:72px;
    height:72px;
    border-radius:22px;
    flex:0 0 72px;
}

.public-topbar .brand-logo{
    padding:4px;
    object-fit:contain;
    border:1px solid rgba(22,32,43,.06);
    background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(248,239,226,.74));
    box-shadow:0 22px 38px -24px rgba(255,122,47,.34);
}

.public-topbar .brand-fallback{
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,#fff3e4,#ffe0bb 45%,#aeeeff 100%);
    color:var(--fox-ink);
    font-size:1.25rem;
    border:1px solid rgba(22,32,43,.06);
    box-shadow:0 18px 34px -26px rgba(255,122,47,.28);
}

.public-topbar .brand-title{
    display:block;
    max-width:16ch;
    line-height:.92;
    font-size:clamp(.96rem,1.16vw,1.22rem);
    font-weight:800;
    letter-spacing:-.06em;
    text-wrap:pretty;
    transition:filter .22s ease, transform .22s ease, background .22s ease;
}

.public-topbar .brand-title span{
    background:linear-gradient(94deg,#16202b 0%,#ef7a2d 36%,#43cffa 74%,#16202b 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}

.public-topbar .brand:hover .brand-title span{
    background:linear-gradient(94deg,#16202b 0%,#de6422 28%,#19aee6 62%,#16202b 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    filter:drop-shadow(0 10px 18px rgba(67,207,250,.18));
}

.public-topbar .nav-link{
    font-family:'Plus Jakarta Sans',sans-serif;
    color:#4d5c68 !important;
    font-weight:700;
    padding:.46rem .72rem !important;
    border-radius:999px;
    transition:transform .22s ease, background .22s ease, color .22s ease;
}

.public-topbar .nav-link:hover,
.public-topbar .nav-link:focus{
    color:var(--fox-ink) !important;
    background:rgba(255,255,255,.72);
    transform:translateY(-1px);
}

.public-topbar .public-client-greeting{
    color:#102033 !important;
    background:rgba(255,122,47,.12);
    border:1px solid rgba(255,122,47,.2);
    cursor:default;
}

.public-topbar .nav-link.public-account-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.42rem;
    padding:.46rem .72rem !important;
    border-radius:999px;
    border:1px solid rgba(14,165,233,.24);
    background:rgba(14,165,233,.12);
    color:#0f5f82 !important;
    box-shadow:none;
    font-weight:800;
    white-space:nowrap;
}

.public-topbar .nav-link.public-account-link:hover,
.public-topbar .nav-link.public-account-link:focus{
    color:#0b4f6d !important;
    background:rgba(14,165,233,.18);
    border-color:rgba(14,165,233,.34);
    transform:translateY(-1px);
}

.public-topbar .nav-link.public-account-link i{
    color:#0ea5e9;
    font-size:.98rem;
    line-height:1;
}

.public-topbar .navbar-collapse{
    gap:.7rem;
    overflow:visible;
}

.public-topbar .public-nav-toggle{
    color:var(--fox-ink);
    border-radius:14px;
    padding:.34rem .54rem;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(22,32,43,.14);
    box-shadow:0 14px 28px -20px rgba(79,56,22,.26);
}

.public-topbar .dropdown-menu{
    margin-top:.65rem;
    padding:.6rem;
    border-radius:22px;
    border:1px solid rgba(255,255,255,.82);
    background:
        radial-gradient(14rem 10rem at 100% 0%,rgba(89,216,255,.12),transparent 70%),
        linear-gradient(180deg,rgba(255,255,255,.94),rgba(249,245,239,.92));
    box-shadow:0 24px 44px -28px rgba(61,44,18,.22);
    backdrop-filter:blur(18px);
    z-index:2000;
}

.public-topbar .dropdown-item{
    font-family:'Plus Jakarta Sans',sans-serif;
    color:#4f5e6b;
    font-weight:700;
    border-radius:16px;
    padding:.72rem .88rem;
}

.public-topbar .dropdown-item:hover,
.public-topbar .dropdown-item:focus{
    color:var(--fox-ink);
    background:rgba(255,255,255,.86);
}

.public-topbar .public-nav-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    padding:.62rem 1rem;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.78);
    background:linear-gradient(135deg,#20c55a,#179c49);
    color:#ffffff;
    font-family:'Plus Jakarta Sans',sans-serif;
    font-weight:800;
    text-decoration:none;
    box-shadow:0 22px 42px -28px rgba(23,156,73,.42);
    transition:transform .22s ease, box-shadow .22s ease, filter .22s ease;
    white-space:nowrap;
}

.public-topbar .public-nav-cta:hover{
    color:#ffffff;
    transform:translateY(-2px);
    box-shadow:0 24px 48px -28px rgba(23,156,73,.5);
    filter:saturate(1.05);
}

.public-topbar .public-nav-cta.is-account{
    border-color:rgba(255,255,255,.86);
    background:linear-gradient(135deg,#ff7a2f 0%,#f05f8d 46%,#0ea5e9 100%);
    box-shadow:0 24px 46px -28px rgba(240,95,141,.46);
}

.public-topbar .public-nav-cta.is-account:hover{
    box-shadow:0 26px 50px -28px rgba(14,165,233,.5);
}

.public-topbar-alert-wrap{
    width:min(1380px,calc(100% - 32px));
    margin:.9rem auto 0;
}

.public-topbar-alert{
    display:flex;
    align-items:center;
    gap:.75rem;
    padding:.92rem 1rem;
    border-radius:24px;
    border:1px solid rgba(255,159,96,.28);
    background:
        radial-gradient(14rem 8rem at 0% 50%,rgba(255,122,47,.12),transparent 72%),
        linear-gradient(180deg,rgba(255,250,244,.92),rgba(255,246,236,.88));
    color:#8b4c20;
    box-shadow:0 18px 36px -30px rgba(168,103,40,.22);
    font-weight:700;
    line-height:1.6;
}

.public-topbar-alert i{
    color:#ef7a2d;
    font-size:1rem;
    flex:0 0 auto;
}

.public-topbar-alert span{
    display:block;
}

.public-floating-whatsapp{
    display:none;
}

body.has-public-topbar:not(.orbital-home){
    padding-top:6.35rem;
}

body.has-public-topbar main.col-md-9{
    width:100%;
    max-width:100%;
    flex:0 0 100%;
}

body.has-public-topbar:not(.orbital-home) .container-fluid{
    padding-top:.95rem;
}

body.has-public-topbar .row{
    margin-left:0;
    margin-right:0;
}

@media (max-width:991px){
    .public-topbar .container,
    .public-topbar-alert-wrap{
        width:calc(100% - 24px);
    }

    .public-topbar .navbar-collapse{
        margin-top:.95rem;
        padding-top:.95rem;
        border-top:1px solid rgba(22,32,43,.08);
        align-items:stretch;
    }

    .public-topbar .nav-link{
        width:100%;
    }

    .public-topbar .dropdown-menu{
        margin-top:.4rem;
        background:rgba(255,255,255,.62);
        box-shadow:none;
    }

    .public-topbar .public-nav-cta{
        width:100%;
    }

    .public-floating-whatsapp{
        position:fixed;
        left:16px;
        bottom:18px;
        z-index:1190;
        display:grid;
        place-items:center;
        width:54px;
        height:54px;
        border-radius:18px;
        border:1px solid rgba(255,255,255,.78);
        background:linear-gradient(135deg,#20c55a,#179c49);
        color:#ffffff;
        text-decoration:none;
        box-shadow:0 22px 46px -24px rgba(23,156,73,.62);
    }

    .public-floating-whatsapp:hover,
    .public-floating-whatsapp:focus{
        color:#ffffff;
        transform:translateY(-1px);
    }

    .public-floating-whatsapp i{
        font-size:1.28rem;
    }
}

@media (max-width:767px){
    body.has-public-topbar:not(.orbital-home){
        padding-top:5.85rem;
    }

    .public-topbar{
        padding:.42rem 0 0;
    }

    .public-topbar .container,
    .public-topbar-alert-wrap{
        width:calc(100% - 16px);
    }

    .public-topbar .container{
        display:flex;
        align-items:center;
        flex-wrap:wrap;
        gap:.55rem;
    }

    .public-topbar .brand{
        flex:1 1 auto;
        min-width:0;
        max-width:calc(100% - 72px);
        gap:.82rem;
    }

    .public-topbar .brand-logo,
    .public-topbar .brand-fallback{
        width:64px;
        height:64px;
        border-radius:19px;
        flex-basis:64px;
    }

    .public-topbar .brand-title{
        min-width:0;
        max-width:13ch;
        font-size:clamp(.92rem,4vw,1.06rem);
    }

    .public-topbar .public-nav-toggle{
        margin-left:auto;
        flex:0 0 auto;
    }

    .public-topbar .navbar-collapse{
        flex-basis:100%;
    }

    .public-topbar-alert{
        align-items:flex-start;
        padding:.84rem .92rem;
        border-radius:20px;
        font-size:.95rem;
    }
}
