/* system-theme-v3 */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Poetsen+One:wght@400&display=swap');

.pb-node-menu_backdrop { width: 100%; min-height: 100%; background-color: rgba(17,24,39,0.46); padding: 16px; display: flex; justify-content: flex-end; align-items: stretch; font-family: "DM Sans" }

.pb-node-menu_box { border-radius: 22px; width: 100%; max-width: 420px; max-height: calc(100vh - 32px); overflow: auto; background-color: theme:surface; border-width: 1px; border-style: solid; border-color: theme:border; padding: 24px; box-shadow: 0 30px 70px rgba(17,24,39,0.24); display: flex; flex-direction: column; gap: 24px; font-family: "DM Sans" }

.pb-node-menu_head { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-family: "DM Sans" }

.pb-node-menu_title { font-family: "DM Sans"; font-size: 26px; font-weight: 700; line-height: 1.15em; letter-spacing: -0.025em; color: theme:text; margin: 0px }

.pb-node-menu_close { border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 14px; background-color: theme:surface_muted; border-width: 1px; border-style: solid; border-color: theme:border; font-family: "Arial"; font-size: 14px; font-weight: 700; line-height: 1.4em; color: theme:text; cursor: pointer }

.pb-node-menu_intro { font-family: "Arial"; font-size: 14px; font-weight: 400; line-height: 1.55em; color: theme:text_muted; margin: 0px }

.pb-node-menu_nav { display: flex; flex-direction: column; gap: 8px; font-family: "DM Sans" }

.pb-node-menu_home { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }

.pb-node-menu_about { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }

.pb-node-menu_options { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }

.pb-node-menu_footer { border-radius: 18px; display: flex; flex-direction: column; gap: 8px; padding: 18px; background-color: theme:primary_soft; border-width: 1px; border-style: solid; border-color: theme:border; font-family: "DM Sans" }

.pb-node-menu_footer_title { font-family: "Arial"; font-size: 16px; font-weight: 700; line-height: 1.3em; color: theme:text; margin: 0px }

.pb-node-menu_footer_text { font-family: "Arial"; font-size: 14px; font-weight: 400; line-height: 1.55em; color: theme:text_muted; margin: 0px }

@media (max-width: 1024px) {
.pb-node-menu_backdrop { width: 100%; min-height: 100%; background-color: rgba(17,24,39,0.46); padding: 16px; display: flex; justify-content: flex-end; align-items: stretch; font-family: "DM Sans" }
.pb-node-menu_box { border-radius: 22px; width: 100%; max-width: 420px; max-height: calc(100vh - 32px); overflow: auto; background-color: theme:surface; border-width: 1px; border-style: solid; border-color: theme:border; padding: 24px; box-shadow: 0 30px 70px rgba(17,24,39,0.24); display: flex; flex-direction: column; gap: 24px; font-family: "DM Sans" }
.pb-node-menu_head { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-family: "DM Sans" }
.pb-node-menu_title { font-family: "DM Sans"; font-size: 26px; font-weight: 700; line-height: 1.15em; letter-spacing: -0.025em; color: theme:text; margin: 0px }
.pb-node-menu_close { border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 14px; background-color: theme:surface_muted; border-width: 1px; border-style: solid; border-color: theme:border; font-family: "Arial"; font-size: 14px; font-weight: 700; line-height: 1.4em; color: theme:text; cursor: pointer }
.pb-node-menu_intro { font-family: "Arial"; font-size: 14px; font-weight: 400; line-height: 1.55em; color: theme:text_muted; margin: 0px }
.pb-node-menu_nav { display: flex; flex-direction: column; gap: 8px; font-family: "DM Sans" }
.pb-node-menu_home { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }
.pb-node-menu_about { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }
.pb-node-menu_options { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }
.pb-node-menu_footer { border-radius: 18px; display: flex; flex-direction: column; gap: 8px; padding: 18px; background-color: theme:primary_soft; border-width: 1px; border-style: solid; border-color: theme:border; font-family: "DM Sans" }
.pb-node-menu_footer_title { font-family: "Arial"; font-size: 16px; font-weight: 700; line-height: 1.3em; color: theme:text; margin: 0px }
.pb-node-menu_footer_text { font-family: "Arial"; font-size: 14px; font-weight: 400; line-height: 1.55em; color: theme:text_muted; margin: 0px }
}

@media (max-width: 768px) {
.pb-node-menu_backdrop { width: 100%; min-height: 100%; background-color: rgba(17,24,39,0.46); padding: 10px; display: flex; justify-content: flex-end; align-items: stretch; font-family: "DM Sans" }
.pb-node-menu_box { border-radius: 18px; width: 100%; max-width: 420px; max-height: calc(100vh - 20px); overflow: auto; background-color: theme:surface; border-width: 1px; border-style: solid; border-color: theme:border; padding: 20px; box-shadow: 0 30px 70px rgba(17,24,39,0.24); display: flex; flex-direction: column; gap: 24px; font-family: "DM Sans" }
.pb-node-menu_head { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-family: "DM Sans" }
.pb-node-menu_title { font-family: "DM Sans"; font-size: 24px; font-weight: 700; line-height: 1.15em; letter-spacing: -0.025em; color: theme:text; margin: 0px }
.pb-node-menu_close { border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 14px; background-color: theme:surface_muted; border-width: 1px; border-style: solid; border-color: theme:border; font-family: "Arial"; font-size: 14px; font-weight: 700; line-height: 1.4em; color: theme:text; cursor: pointer }
.pb-node-menu_intro { font-family: "Arial"; font-size: 14px; font-weight: 400; line-height: 1.55em; color: theme:text_muted; margin: 0px }
.pb-node-menu_nav { display: flex; flex-direction: column; gap: 8px; font-family: "DM Sans" }
.pb-node-menu_home { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }
.pb-node-menu_about { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }
.pb-node-menu_options { border-radius: 12px; display: flex; align-items: center; min-height: 52px; padding: 12px 14px; font-family: "Arial"; font-size: 18px; font-weight: 600; line-height: 1.35em; color: theme:text; text-decoration: none; border-width: 1px; border-style: solid; border-color: transparent; transition-property: background-color, border-color, color; transition-duration: 180ms }
.pb-node-menu_footer { border-radius: 18px; display: flex; flex-direction: column; gap: 8px; padding: 18px; background-color: theme:primary_soft; border-width: 1px; border-style: solid; border-color: theme:border; font-family: "DM Sans" }
.pb-node-menu_footer_title { font-family: "Arial"; font-size: 16px; font-weight: 700; line-height: 1.3em; color: theme:text; margin: 0px }
.pb-node-menu_footer_text { font-family: "Arial"; font-size: 14px; font-weight: 400; line-height: 1.55em; color: theme:text_muted; margin: 0px }
}

.pb-node-menu_close:hover { background-color: theme:primary_soft; border-color: #348ef7 }

.pb-node-menu_close:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px }

@media (max-width: 1024px) { .pb-node-menu_close:hover { background-color: theme:primary_soft; border-color: #348ef7 } }

@media (max-width: 1024px) { .pb-node-menu_close:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px } }

@media (max-width: 768px) { .pb-node-menu_close:hover { background-color: theme:primary_soft; border-color: #348ef7 } }

@media (max-width: 768px) { .pb-node-menu_close:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px } }

.pb-node-menu_home:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 }

.pb-node-menu_home:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px }

@media (max-width: 1024px) { .pb-node-menu_home:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 } }

@media (max-width: 1024px) { .pb-node-menu_home:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px } }

@media (max-width: 768px) { .pb-node-menu_home:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 } }

@media (max-width: 768px) { .pb-node-menu_home:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px } }

.pb-node-menu_about:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 }

.pb-node-menu_about:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px }

@media (max-width: 1024px) { .pb-node-menu_about:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 } }

@media (max-width: 1024px) { .pb-node-menu_about:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px } }

@media (max-width: 768px) { .pb-node-menu_about:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 } }

@media (max-width: 768px) { .pb-node-menu_about:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px } }

.pb-node-menu_options:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 }

.pb-node-menu_options:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px }

@media (max-width: 1024px) { .pb-node-menu_options:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 } }

@media (max-width: 1024px) { .pb-node-menu_options:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px } }

@media (max-width: 768px) { .pb-node-menu_options:hover { background-color: theme:primary_soft; border-color: theme:border; color: #348ef7 } }

@media (max-width: 768px) { .pb-node-menu_options:focus { outline-width: 3px; outline-style: solid; outline-color: #348ef7; outline-offset: 2px } }
