* {
    font-family: "Didact Gothic", sans-serif;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    user-select: none;
}

@media screen and (min-width: 769px) {
    .navbar {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 1000;
        background-color: white;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        padding: 0 3rem .5rem 3rem;
        border-bottom: 1.5px solid rgba(0, 0, 0, 0.1);
    }
    .navbar.fixo {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 1000; 
    }

    .logo {
        padding-top: 0.5rem;
    }

    .opcoes {
        display: flex;
        align-items: flex-start;
    }

    .navbar a:not(.logo a) {
        display: block;
        color: #878484;
        font-size: 1rem;
        line-height: 1rem;
        text-align: left;
        padding: 1rem 1rem;
        text-decoration: none;
        font-weight: normal;
    }

    .navbar a:hover, .dropdown:hover .dropbtn {
        color: #f29400;
    }
    .navbar a:hover {
        border-top: 3px solid #f29400; 
        color: #f29400 !important;
    }
    .navbar a.active {
        color: #f29400 !important;
        border-top: 3px solid #f29400;
        padding: calc(1rem - 3px) 1rem !important;
    }

    .dropdown {
        overflow: hidden;
    }

    .dropdown .dropbtn {
        font-size: 1rem;    
        border: none;
        outline: none;
        color: #878484;
        padding: 0.8rem 1rem;
        background-color: rgb(235, 235, 235);
        font-family: inherit;
        margin: 0;
    }

    .dropdown-content {
        display: none;
        position: absolute;
        background-color: rgb(235, 235, 235);
        min-width: 10rem;
        box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
        z-index: 1;
    }

    .dropdown-content a {
        color: #878484;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
        text-align: left;
    }

    .dropdown-content a:hover {
        color: #fff;
        background: #f8f8f8;
    }

    .dropdown:hover .dropdown-content {
        display: block;
    }

    .sub-dropdown {
        position: relative;
        display: block;
    }

    .sub-dropdown-content {
        display: none;
        position: absolute;
        background-color: rgb(235, 235, 235);
        min-width: 8rem;
        box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
        z-index: 1;
        top: 0;
        right: 100%;
    }

    .sub-dropdown-content a {
        color: #878484;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
        text-align: left;
    }

    .sub-dropdown-content a:hover {
        color: #fff;
        background-color: #f9f9f9;
    }

    .sub-dropdown:hover .sub-dropdown-content {
        display: block;
    }

    .opcoes a.active, .dropdown-content a.active {
        color: #f29400;
    }
    .sidebar{
    display: none;
    }
    .btn {
        display: none;
    }
}

@media screen and (max-width: 835px) { 
    .navbar a:not(.logo a) { 
        font-size: calc(1rem - 2px);
        padding: .9rem .9rem;
    }
}

@media screen and (max-width: 768px) {
    body {
        padding-top: 0px;
        position: relative;
    }
    .logo {
        padding: 0.5rem 1.5rem;
    }
    .logo img {
        max-width: 170px;
    }

    .opcoes {
        display: none;
    }

    .btn {
        position: absolute;
        top: 15px;
        right: 20px;
        height: 45px;
        width: 45px;
        text-align: center;
        background: #f29400;
        border-radius: 3px;
        cursor: pointer;
        transition: left 0.4s ease;
    }

    .btn.click {
        left: 85%;
        z-index: 1000;
    }

    .btn span {
        color: white;
        font-size: 20px;
        line-height: 45px;
    }

    .btn.click span:before {
        content: '\f00d';
    }

    .sidebar {
        position: fixed;
        width: 300px;
        height: 100%;
        right: -350px;
        background: #a45656;
        transition: left 0.4s ease;
        z-index: 1000; 
    }

    .sidebar.show {
        left: 0px;
        top: 0;
    }

    .sidebar ul {
        background: #f9f9f9;
        height: 100%;
        width: 100%;
        list-style: none;
    }

    .sidebar ul li {
        line-height: 60px;
        border-bottom: 2px solid rgba(109, 61, 61, 0.1);
    }

    .sidebar ul li:last-child {
        border-bottom: 2px solid rgba(116, 86, 86, 0.05);
    }

    .sidebar ul li a {
        position: relative;
        color: black;
        text-decoration: none;
        font-size: 16px;
        padding-left: 40px;
        font-weight: 500;
        display: block;
        width: 100%;
        border-left: 3px solid transparent;
    }

    .sidebar ul li.active a {
        color: #f29400;
        background: #f9f9f9;
        border-left-color: #f29400;
    }

    .sidebar ul ul {
        position: static;
        display: none;
    }

    .sidebar ul .prod-show.show {
        display: block;
    }

    .sidebar ul .sobre-show.show1 {
        display: block;
    }

    .sidebar ul ul li {
        font-size: 14px;
        color: black;
    }

    .sidebar ul ul li a {
        font-size: 14px;
        color: black;
        padding-left: 50px;
    }

    .sidebar ul ul ul li a {
        font-size: 14px;
        color: black;
        padding-left: 80px;
    }

    .sidebar ul li.active ul li a {
        color: black;
        background: #f9f9f9;
        border-left-color: transparent;
    }

    .sidebar ul li a:hover {
        color: #f29400 !important;
        background: #f0efef;
        border-left-color: #f29400 !important;
    }

    .sidebar ul .prod-show li a:hover,
    .sidebar ul .sobre-show li a:hover {
        color: #f29400 !important;
        background: #f0efef;
        border-left-color: #f29400 !important;
    }

    .sidebar ul ul ul li a:hover {
        color: #f29400 !important;
        background: #f0efef;
        border-left-color: #f29400 !important;
    }

    .sidebar ul li a span {
        position: absolute;
        color: black;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        font-size: 22px;
        transition: transform 0.4s;
        padding: 20px;
    }

    .sidebar ul li a:hover span.rotate {
        transform: translateY(-50%) rotate(-180deg);
    }


    .sidebar ul ul ul {
        position: static;
        display: none;
    }

    .sidebar ul ul .hist-show.show2 {
        display: block;
    }

    body.sidebar-open {
        overflow: hidden; 
    }

    .overlay {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-color: rgba(0, 0, 0, 0.5); 
        backdrop-filter: blur(10px); 
        pointer-events: none;
        transition: opacity 0.3s ease;
        opacity: 0; 
        z-index: 999; 
    }
    
    .sidebar.show + .overlay {
        opacity: 1;
    }
}
@media screen and (max-width: 400px) { 
    .sidebar {
        width: 250px;
    }
    .sidebar ul li { 
        line-height: 3rem;
    }
    .btn.click {
        left: 80%;
    }
}
@media screen and (min-width: 1500px) {
    .navbar .opcoes {
        display: flex;
        align-items: center;
        padding-right: 20px;
        font-size: 16px;
    }
    nav .navbar {
        padding-left: 200px;
        padding-right: 200px;
    }
}