/* Public navigation only; existing site design. */
.public-navigation{
    height:76px;
    background:#ffffff;
    border-bottom:1px solid #e7e7e2;
    position:sticky;
    top:0;
    z-index:1000;
}

.public-navigation .nav{
    height:76px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}


/* LOGO */

.public-navigation .brand{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:240px;
}

.public-navigation .brand-parrot{
    font-size:43px;
    line-height:1;
}

.public-navigation .brand-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.public-navigation .brand-name{
    font-family:Georgia,"Times New Roman",serif;
    color:var(--green);
    font-size:24px;
    font-weight:700;
    line-height:1;
}

.public-navigation .brand-sub{
    color:#56a331;
    font-size:8px;
    font-weight:800;
    letter-spacing:1px;
    margin-top:5px;
}


/* MENU */

.public-navigation .main-menu{
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:29px;
}

.public-navigation .main-menu a{
    height:100%;
    display:flex;
    align-items:center;
    position:relative;
    font-size:13px;
    font-weight:700;
    white-space:nowrap;
}

.public-navigation .main-menu a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:9px;
    width:0;
    height:2px;
    background:#53a736;
    transition:.2s;
}

.public-navigation .main-menu a:hover::after,
.public-navigation .main-menu a.active::after{
    width:100%;
}


.public-navigation{--green:#064b33;--text:#15251d;display:block;padding:0;margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.55;text-align:left}
.public-navigation *{box-sizing:border-box}
.public-navigation a{text-decoration:none}
.public-navigation .nav{position:relative;width:min(1160px,92%);margin:auto;gap:16px}
.public-navigation .main-menu{gap:14px}
.public-navigation .main-menu a{font-size:12px;margin:0;color:var(--text);padding:0;background:transparent}
.public-navigation .menu-toggle{display:none;width:44px;height:44px;flex-shrink:0;padding:0;border:1px solid #dce4de;border-radius:9px;background:#fff;color:var(--green);cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.public-navigation .menu-toggle span{width:21px;height:2px;background:currentColor;border-radius:2px;transition:.2s}
.public-navigation .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}
.public-navigation .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.public-navigation .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1200px){
.public-navigation .menu-toggle{display:flex;margin-left:auto}
.public-navigation .main-menu{display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;height:auto;max-height:calc(100dvh - 90px);overflow-y:auto;padding:10px;background:#fff;border:1px solid #e1e7e2;border-radius:0 0 14px 14px;box-shadow:0 18px 35px rgba(5,58,40,.14);flex-direction:column;align-items:stretch;gap:2px;z-index:20}
.public-navigation .main-menu.open{display:flex}
.public-navigation .main-menu a{height:auto;min-height:44px;padding:11px 13px;border-radius:8px;font-size:14px}
.public-navigation .main-menu a::after{display:none}
.public-navigation .main-menu a.active{background:#edf5ec;color:var(--green)}
}
@media(max-width:850px){
.public-navigation{height:68px}
.public-navigation .nav{height:68px;min-height:68px}
.public-navigation .brand{min-width:0;gap:8px}
.public-navigation .brand-name{font-size:20px}
.public-navigation .brand-sub{font-size:6px}
.public-navigation .brand-parrot{font-size:35px}
}
