BODY#landing {
    width: 100vw;
    height: 100vh;
}

HTML {
    overflow-y: scroll;
}

HTML:has(BODY#landing) {
    overflow-y: hidden !important;
}

/* For WebKit browsers */
::-webkit-scrollbar {
    width: 8px;
    /* Adjust width to your preference */
}

BODY::-webkit-scrollbar-track {
    background: #FFFFFF;
    /* Track background */
}

BODY.landing::-webkit-scrollbar-track {
    background: #000000;
    /* Track background */
}

BODY::-webkit-scrollbar-thumb {
    background: #000000;
    /* Scrollbar color */
}

BODY.dark::-webkit-scrollbar-thumb {
    background: #FFFFFF;
    /* Scrollbar color */
}

::-webkit-scrollbar-thumb:hover {
    background: #555;
    /* Scrollbar hover effect */
}

BODY {
    padding-right: 0 !important;
}

.offcanvas {
    --bs-offcanvas-padding-x: 0;
}

/*@media (max-width: 768px)
{
	BODY#landing
	{
		background: none !important;
	}
}*/
BODY {
    cursor: default;
}

BODY#landing IMG#landing-logo {
    transition: filter 0.15s ease-in-out;
}

BODY#landing IMG#landing-logo:hover {
    filter: invert(100%);
}

@media (max-width: 768px) {
    BODY#landing IMG#landing-logo {
        margin-left: 7px !important;
        margin-top: -40px;
    }
}

BODY.dark {
    margin: 0;
    font-family:var(--bs-body-font-family);
    font-size:var(--bs-body-font-size);
    font-weight:var(--bs-body-font-weight);
    line-height:var(--bs-body-line-height);
    color: #FFFFFF;
    text-align:var(--bs-body-text-align);
    background-color: #000000;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}

BODY.dark .h1, BODY.dark .h2, BODY.dark .h3, BODY.dark .h4, BODY.dark .h5, BODY.dark .h6, BODY.dark H1, BODY.dark H2, BODY.dark H3, BODY.dark H4, BODY.dark H5, BODY.dark H6 {
    margin-top: 0;
    margin-bottom: 0.8125rem;
    font-weight: 700;
    line-height: 1.3;
    color: #FFFFFF;
}

BODY.dark.home H1 {
    font-size: 4.6rem;
}

BODY.dark.home H3 {
    font-weight: 500;
}

BODY.dark P {
    color: #FFFFFF;
}

@media (max-width: 768px) {
    BODY.dark.home H1 {
        font-size: 3rem;
    }
    
    BODY.dark.home H3 {
        font-weight: 500;
    }
    
    BODY.dark P {
        color: #FFFFFF;
    }
}

@media (max-width: 370px) {
    BODY.dark.home H1 {
        font-size: 2.5rem;
    }
    
    BODY.dark.home H3 {
        font-weight: 500;
        font-size: 1.4rem;
    }
    
    BODY.dark P {
        color: #FFFFFF;
    }
}

BODY.dark A {
    color: #FFFFFF;
}

BODY.dark A:hover {
    color: #FFFFFF;
    text-decoration: none;
}

BODY.dark IMG.navbar-brand-logo {
    filter: invert(100%);
}

BODY.dark HEADER {
    margin-bottom: 0 !important;
}

BODY.dark HEADER.navbar UL.navbar-nav LI.nav-item A.nav-link {
    color: #FFFFFF;
}

BODY.dark .navbar-text A, BODY.dark .navbar-text A:focus, BODY.dark .navbar-text A:hover {
    color: #FFFFFF;
}

BODY.dark .navbar-toggler {
    color: #FFFFFF;
}

IMG {
    max-width: 100%;
    height: auto;
}

IMG.navbar-brand-logo {
    height: auto;
    min-width: 220px;
}

DIV.navbar-nav-wrap {
    padding-left: 15px;
    padding-right: 15px;
}

NAV {
    background-color: #000000;
    color: #FFFFFF;
    text-align: right;
    max-width: 200px;
    position: absolute;
    display: block;
    right: 0px;
    top: 35vh;
    font-size: 1.5rem;
    font-weight: bold;
}

NAV UL.navbar-nav {
    color: #FFFFFF;
    padding: 20px;
}

NAV UL.navbar-nav LI.nav-item A.nav-link {
    color: #FFFFFF;
}

BODY.dark NAV {
    background-color: #FFFFFF;
    color: #000000;
}

BODY.dark NAV UL.navbar-nav LI.nav-item A.nav-link {
    color: #000000 !important;
}

A {
    color: #000000;
    font-weight: bold;
}

A.ap-link::after {
    content: "";
    /* Empty content */
    display: inline-block;
    width: 16px;
    /* Set to the width of your image */
    height: 16px;
    /* Set to the height of your image */
    margin-left: 15px;
    /* Optional spacing between text and image */
    background-image: url('../ap/ap-link-a.png');
    background-size: contain;
    /* Adjust as needed */
    background-repeat: no-repeat;
    vertical-align: middle;
    /* Aligns the image with the text */
}

BODY.dark A.ap-link::after {
    filter: invert();
}

A.navbar-toggler:hover, A.navbar-toggler:focus, A.navbar-toggler:visited, A.navbar-toggler:active {
    background-color: rgba(255, 255, 255, 0) !important;
    color: #000000 !important;
    text-decoration: none;
}

BODY.dark A.navbar-toggler:hover, BODY.dark A.navbar-toggler:focus, BODY.dark A.navbar-toggler:visited, BODY.dark A.navbar-toggler:active {
    background-color: rgba(255, 255, 255, 0) !important;
    color: #FFFFFF !important;
    text-decoration: none;
}

MAIN OL, MAIN UL {
    margin-left: 40px !important;
}

#apmenu {
    height: auto;
    max-height: 80vh;
    top: 0;
    bottom: auto;
    overflow-y: auto;
    height: auto;
    overflow-y: auto;
    background-color: #000000;
    color: #FFFFFF;
    text-align: right;
    max-width: 200px;
    right: 0px;
    top: 35vh;
    font-size: 1.7rem;
    font-weight: bold;
}

#apmenu .offcanvas-header {
    padding: 10px 0px 0px;
    text-align: right;
}

#apmenu DIV.offcanvas-header BUTTON.btn-close {
    font-size: 1rem;
    color: #FFFFFF !important;
    opacity: 1 !important;
}

#apmenu .offcanvas-body {
    padding: 5px 15px 0px 0px;
    text-align: right;
}

#apmenu UL {
    list-style: none;
    margin: 10px 0 15px;
}

#apmenu UL LI {
    list-style: none;
    margin: 10px 0;
}

#apmenu A {
    color: #FFFFFF;
    text-decoration: none;
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0% 100%;
    background-repeat: no-repeat;
    background-size: 0% 2px;
    transition: background-size 0.1s;
}

#apmenu A:hover {
    background-size: 100% 2px;
}

BODY.dark #apmenu {
    background-color: #FFFFFF;
    color: #000000;
}

BODY.dark #apmenu A {
    color: #000000 !important;
}

BODY.dark #apmenu DIV.offcanvas-header BUTTON.btn-close {
    color: #000000 !important;
}

@media (max-width: 768px) {
    #apmenu {
        font-size: 1.4rem;
    }
}

.offcanvas-backdrop {
    background-color: rgba(36, 36, 36, 0.362);
    z-index: 100;
}

/* Initial state: Page is transparent */
BODY {
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}

/* Fade-in effect when the page loads */
BODY.fade-in {
    opacity: 1;
}

/* Fade-out effect when navigating away */
BODY.fade-out {
    opacity: 0;
}

HEADER {
    position: fixed !important;
    top: 0px;
    width: 100%;
    z-index: 100;
    background-color: #FFFFFF !important;
}

BODY.dark HEADER {
    background-color: #000000 !important;
}

DIV.header-spacer {
    height: 100px;
    position: relative;
}

DIV.footer-spacer {
    height: 170px;
    position: relative;
}

MAIN {
    position: relative;
    padding-left: 30px;
}

@media (max-width: 575px) {
    MAIN {
        padding-left: 10px;
    }
}

BODY#landing MAIN {
    padding-left: 0px !important;
}

FOOTER {
    position: fixed;
    bottom: 0px;
    width: 100%;
    z-index: 95;
    background-color: #FFFFFF;
    font-size: 0.8rem;
}

@media (max-width: 767px) {
    FOOTER {
        position: relative;
        bottom: 0px;
        width: 100%;
        z-index: 100;
        background-color: #FFFFFF;
        font-size: 0.8rem;
    }
}

IMG.footer-partner {
    max-width: 70px;
    margin-right: 5px;
}

FOOTER UL {
}

FOOTER UL.icon-list LI {
    display: inline-block;
}

FOOTER DIV.footer-contacts A {
    line-height: 2.5;
    text-align: right;
}

::selection {
    background-color: rgba(184, 184, 184, 0.457);
    color: #191919;
}

/*DIV[class^="accordion-item-"]
{
	border: 1px solid black;
}*/
DIV[class^="accordion-item-"] {
    border: 1px solid #FFFFFF;
}

DIV[class^="accordion-item-"]:has(> DIV.accordion-collapse.collapse.show) {
    border: 1px solid black;
}

.accordion-button::before {
    background-image: url('../ap/ap-link-a.png') !important;
}

.accordion-collapse {
    background-color: #FFFFFF;
}

.accordion-button:not(.collapsed) {
    color: #000000;
    background-color: #FFFFFF;
    box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}

DIV.card {
    /*+border-radius: 0;*/
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -khtml-border-radius: 0;
    border-radius: 0;
    border: 1px solid black;
}

DIV#contacts DIV.contact-item {
    display: block;
    font-size: 1.5rem;
    margin-bottom: 11px;
}

DIV#contacts DIV.contact-item I {
    margin-right: 20px;
}

@media (max-width: 500px) {
    DIV#contacts DIV.contact-item {
        display: block;
        font-size: 1.2rem;
        margin-bottom: 11px;
    }
}

.ap-black-border {
    border: 1px solid black;
}
