#navbar.lemare-navigation .lemare-menu-toggle[hidden],
#navbar.lemare-navigation .offcanvasNavbar[hidden] { display: none !important; }
@media (min-width: 1025px) {
 #navbar.lemare-navigation .container-fluid { grid-template-columns: minmax(0,1fr) 200px minmax(0,1fr); }
 #navbar.lemare-navigation .offcanvasNavbar { min-width: 0; }
 #navbar.lemare-navigation .navbar-nav { flex-wrap: wrap; justify-content: flex-start; column-gap: 16px; row-gap: 8px; }
 #navbar.lemare-navigation .navbar-nav > div > a { font-size: 18px; padding: 6px; white-space: nowrap; }
}
@media (max-width: 1024px) {
 #navbar.lemare-navigation { padding-block: 6px; }
 #navbar.lemare-navigation .container-fluid { position: relative; display: block; min-height: 141px; padding-inline: 12px; }
 #navbar.lemare-navigation .logo { position: absolute; top: 25px; left: 0; right: 0; width: 100%; text-align: center; }
 #navbar.lemare-navigation .logo > a { display: inline-block; padding: 0; }
 #navbar.lemare-navigation .logo img { width: 120px; }
 #navbar.lemare-navigation .nav-btns { position: absolute; top: 7px; right: 4px; }
 #navbar.lemare-navigation .lemare-composer-resume-link { top: 55px; right: 6px; bottom: auto; width: 128px; }
 #navbar.lemare-navigation .lemare-menu-toggle { position: absolute; left: 12px; bottom: 0; min-width: 94px; min-height: 44px; padding: 8px 12px; border: 1px solid rgba(141,140,96,.45); border-radius: 6px; background: #fff; color: #5e6e58; font: 17px GaramondPro-Regular,serif; cursor: pointer; }
 #navbar.lemare-navigation .offcanvasNavbar { position: absolute; top: calc(100% + 6px); left: 0; right: 0; width: 100%; max-height: calc(100dvh - 153px); overflow-y: auto; padding: 12px 16px 18px; background: #fff; border-top: 1px solid rgba(141,140,96,.25); box-shadow: 0 12px 18px rgb(0 0 0 / .12); }
 #navbar.lemare-navigation .navbar-nav { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 6px; width: 100%; }
 #navbar.lemare-navigation .navbar-nav > div > a { display: flex; width: 100%; min-height: 44px; align-items: center; padding: 10px 16px; font-size: 20px; white-space: nowrap; border-radius: 4px; }
 #navbar.lemare-navigation .lemare-menu-toggle:focus-visible { outline: 2px solid #8d8c60; outline-offset: 2px; }
}
/* Balanced desktop wrapping avoids leaving the final link on its own. */
@media (min-width: 1025px) and (max-width: 1599px) {
 #navbar.lemare-navigation .navbar-nav { max-width: 440px; }
}
