/* ========== Font Face ========== */

@font-face {
    font-family: 'Ndot-55';
    src: url('../fonts/Ndot-55.woff2') format('woff2'),
        url('../fonts/Ndot-55.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: fallback;
}

@font-face {
    font-family: 'Ndot-57-Aligned';
    src: url('../fonts/Ndot-57-Aligned.woff2') format('woff2'),
        url('../fonts/Ndot-57-Aligned.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: fallback;
}

@font-face {
    font-family: 'NType82-Headline';
    src: url('../fonts/NType82-Headline.woff2') format('woff2'),
        url('../fonts/NType82-Headline.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: fallback;
}

@font-face {
    font-family: 'NType82-Regular';
    src: url('../fonts/NType82-Regular.woff2') format('woff2'),
        url('../fonts/NType82-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: fallback;
}

@font-face {
    font-family: 'NType82Mono-Regular';
    src: url('../fonts/NType82Mono-Regular.woff2') format('woff2'),
        url('../fonts/NType82Mono-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: fallback;
}



/* ========== Font ========== */

[data-font="1"] {
    --font-ndot55: 'Ndot-55', sans-serif;
    --font-ndot57: 'Ndot-57-Aligned', sans-serif;
    --font-ntype82headline: 'NType82-Headline', sans-serif;
    --font-ntype82mono: 'NType82Mono-Regular', sans-serif;
    --font-ntype82regular: 'NType82-Regular', sans-serif;
}

[data-font="2"] {
    --font-ndot55: 'NType82-Headline', sans-serif;
    --font-ndot57: 'NType82-Headline', sans-serif;
    --font-ntype82headline: 'NType82-Headline', sans-serif;
    --font-ntype82mono: 'NType82Mono-Regular', sans-serif;
    --font-ntype82regular: 'NType82-Regular', sans-serif;
}



/* ========== Color Palette ========== */

:root {
    --black:     rgba(0, 0, 0, 1);
    --black-100: rgba(10, 10, 10, 1);
    --black-50:  rgba(10, 10, 10, 0.6);
    --black-25:  rgba(10, 10, 10, 0.3);
    --black-10:  rgba(10, 10, 10, 0.1);

    --white:     rgba(255, 255, 255, 1);
    --white-100: rgba(245, 245, 245, 1);
    --white-50:  rgba(245, 245, 245, 0.6);
    --white-25:  rgba(245, 245, 245, 0.3);
    --white-10:  rgba(245, 245, 245, 0.1);

    --red-100: rgba(229, 9, 20, 1);
    --red-50:  rgba(229, 9, 20, 0.6);
    --red-25:  rgba(229, 9, 20, 0.3);
    --red-10:  rgba(229, 9, 20, 0.1);

    --blue-100: rgba(0, 47, 108, 1);
    --blue-50:  rgba(0, 47, 108, 0.6);
    --blue-25:  rgba(0, 47, 108, 0.3);
    --blue-10:  rgba(0, 47, 108, 0.1);

    --yellow-100: rgba(255, 199, 0, 1);
    --yellow-50:  rgba(255, 199, 0, 0.6);
    --yellow-25:  rgba(255, 199, 0, 0.3);
    --yellow-10:  rgba(255, 199, 0, 0.1);
 
    --green-100: rgb(11, 148, 6);
    --green-50:  rgb(11, 148, 6, 0.6);
    --green-25:  rgb(11, 148, 6, 0.3);
    --green-10:  rgb(11, 148, 6, 0.1);
}



/* ========== Theme ========== */

[data-theme="light"] {
    --color-background-hard:  var(--white);
    --color-background:       var(--white-100);
    --color-background-soft:  var(--white-50);
    --color-background-muted: var(--white-25);
    --color-background-faint: var(--white-10);

    --color-text:       var(--black-100);
    --color-text-soft:  var(--black-50);
    --color-text-muted: var(--black-25);
    --color-text-faint: var(--black-10);

    --color-accent:       var(--red-100);
    --color-accent-soft:  var(--red-50);
    --color-accent-muted: var(--red-25);
    --color-accent-faint: var(--red-10);
}

[data-theme="light-contrast"] {
    --color-background-hard:  var(--white);
    --color-background:       var(--white-100);
    --color-background-soft:  var(--white-100);
    --color-background-muted: var(--white-100);
    --color-background-faint: var(--white-50);

    --color-text:       var(--black-100);
    --color-text-soft:  var(--black-100);
    --color-text-muted: var(--black-100);
    --color-text-faint: var(--black-50);

    --color-accent:       var(--red-100);
    --color-accent-soft:  var(--red-100);
    --color-accent-muted: var(--red-100);
    --color-accent-faint: var(--red-50);
}

[data-theme="dark"] {
    --color-background-hard:  var(--black);
    --color-background:       var(--black-100);
    --color-background-soft:  var(--black-50);
    --color-background-muted: var(--black-25);
    --color-background-faint: var(--black-10);

    --color-text:       var(--white-100);
    --color-text-soft:  var(--white-50);
    --color-text-muted: var(--white-25);
    --color-text-faint: var(--white-10);

    --color-accent:       var(--red-100);
    --color-accent-soft:  var(--red-50);
    --color-accent-muted: var(--red-25);
    --color-accent-faint: var(--red-10);
}

[data-theme="dark-contrast"] {
    --color-background-hard:  var(--black);
    --color-background:       var(--black-100);
    --color-background-soft:  var(--black-100);
    --color-background-muted: var(--black-100);
    --color-background-faint: var(--black-50);

    --color-text:       var(--white-100);
    --color-text-soft:  var(--white-100);
    --color-text-muted: var(--white-100);
    --color-text-faint: var(--white-50);

    --color-accent:       var(--red-100);
    --color-accent-soft:  var(--red-100);
    --color-accent-muted: var(--red-100);
    --color-accent-faint: var(--red-50);
}

[data-theme="rainbow"] {
    --color-background-hard:  var(--black);
    --color-background:       var(--black-100);
    --color-background-soft:  var(--black-50);
    --color-background-muted: var(--black-25);
    --color-background-faint: var(--black-10);

    --color-text:       var(--white-100);
    --color-text-soft:  var(--white-50);
    --color-text-muted: var(--white-25);
    --color-text-faint: var(--white-10);

    --color-accent:       var(--rainbow-100);
    --color-accent-soft:  var(--rainbow-50);
    --color-accent-muted: var(--rainbow-25);
    --color-accent-faint: var(--rainbow-10);
}

[data-theme="nothing"] {
    --color-background-hard:  rgba(50, 0, 0, 1);
    --color-background:       rgba(0, 0, 25, 1);
    --color-background-soft:  transparent;
    --color-background-muted: transparent;
    --color-background-faint: transparent;

    --color-text:       var(--white-100);
    --color-text-soft:  var(--white-50);
    --color-text-muted: var(--white-25);
    --color-text-faint: var(--white-10);

    --color-accent:       rgba(255, 255, 0, 1);
    --color-accent-soft:  rgba(255, 255, 0, 0.6);
    --color-accent-muted: rgba(255, 255, 0, 0.3);
    --color-accent-faint: rgba(255, 255, 0, 0.1);
}

[data-theme="sticky"] {
    --color-background-hard:  rgba(50, 0, 0, 1);
    --color-background:       rgba(0, 0, 0, 0.5);
    --color-background-soft:  transparent;
    --color-background-muted: transparent;
    --color-background-faint: transparent;

    --color-text:       var(--white-100);
    --color-text-soft:  var(--white-50);
    --color-text-muted: var(--white-25);
    --color-text-faint: var(--white-10);

    --color-accent:       rgba(255, 0, 0, 1);
    --color-accent-soft:  rgba(255, 0, 0, 0.6);
    --color-accent-muted: rgba(255, 0, 0, 0.3);
    --color-accent-faint: rgba(255, 0, 0, 0.1);
}



/* ========== Font Size ========== */

[data-fontsize="1"] {
    --font-size-xs: 0.75rem;
    --font-size-sm: 1rem;
    --font-size-md: 1.25rem;
    --font-size-lg: 1.5rem;
    --font-size-xl: 2rem;
}

[data-fontsize="2"] {
    --font-size-xs: 1rem;
    --font-size-sm: 1.25rem;
    --font-size-md: 1.5rem;
    --font-size-lg: 2rem;
    --font-size-xl: 2.5rem;
}

[data-fontsize="3"] {
    --font-size-xs: 1.25rem;
    --font-size-sm: 1.5rem;
    --font-size-md: 2rem;
    --font-size-lg: 2.5rem;
    --font-size-xl: 3rem;
}



/* ========== Line Height ========== */

[data-lineheight="1"] {
    --line-height-sm: 1rem;
    --line-height-mds: 1.25rem;
    --line-height-md: 1.5rem;
    --line-height-lg: 2rem;
    --line-height-xl: 3rem;
}

[data-lineheight="2"] {
    --line-height-sm: 1.25rem;
    --line-height-mds: 1.5rem;
    --line-height-md: 1.75rem;
    --line-height-lg: 2.5rem;
    --line-height-xl: 3.5rem;
}



/* ========== Letter Spacing ========== */

[data-letterspacing="1"] {
    --letter-spacing-sm: 0.1em;
    --letter-spacing-md: 0.2em;
    --letter-spacing-lg: 0.3em;
}

[data-letterspacing="2"] {
    --letter-spacing-sm: 0.2em;
    --letter-spacing-md: 0.3em;
    --letter-spacing-lg: 0.4em;
}



/* ========== Motion ========== */

[data-transition="1"] {
  --transition-fast: 150ms;
  --transition-normal: 300ms;
  --transition-slow: 500ms;
}

[data-transition="2"] {
    --transition-fast: 0ms;
    --transition-normal: 0ms;
    --transition-slow: 0ms;
}

@media (prefers-reduced-motion: reduce) {
  [data-transition="1"] {
    --transition-fast: 0ms;
    --transition-normal: 0ms;
    --transition-slow: 0ms;
  }
}



/* ========== Radius ========== */

:root {
  --radius-none: 0;
  --radius-sm: 0.125rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-full: 9999px;
}



/* ========== Shadow ========== */

:root {
  --shadow-none: none;;
  --shadow-sm: 0 1px 2px var(--color-text-faint);
  --shadow-md: 0 1px 3px var(--color-text-faint);
  --shadow-lg: 0 4px 6px -1px var(--color-text-faint);
}/* ========== Resets ========== */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html:focus-within {
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;
    font-family: var(--font-ntype82regular);
    color: var(--color-text);
    line-height: var(--line-height-md);
    letter-spacing: var(--letter-spacing-md);
    text-rendering: optimizeSpeed;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow: hidden;
}

img, picture, svg, video, canvas, iframe, audio {
    max-width: 100%;
    display: block;
}

ul, ol {
    list-style: none;
}

input, button, textarea, select {
    font: inherit;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: inherit;
}

a {
    text-decoration: none;
    color: inherit;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

button {
    color: var(--color-text);
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-ndot55);
}

b, strong {
    font-family: var(--font-ntype82headline);
}

/* ========== Focus Styles ========== */
:focus-visible {
    outline: 2px solid var(--color-accent);
    outline-offset: 3px;
    z-index: 9998;
}

/* ========== Scrollbar ========== */
* {
    scrollbar-width: thin;
    scrollbar-color: var(--color-text-faint) transparent;
}

/* ========== Selection ========== */
::selection {
    background-color: var(--color-accent-faint);
    color: var(--color-text);
}

::-moz-selection {
    background-color: var(--color-accent-faint);
    color: var(--color-text);
}.progress-bar[data-astro-cid-7fefjqpo]{position:absolute;height:2px;background:var(--color-accent-soft);width:0;transition:width 0.1s ease;z-index:9999}.cookie-banner[data-astro-cid-frpht7e2]{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(200%);background:var(--color-background-hard);border:1px solid var(--color-accent-muted);border-radius:var(--radius-lg);z-index:99999;transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);max-width:1500px;width:calc(100% - 3rem)}.cookie-banner[data-astro-cid-frpht7e2].show{transform:translateX(-50%) translateY(0)}.cookie-banner-container[data-astro-cid-frpht7e2]{max-width:1500px;margin:0 auto;padding:1.5rem}.cookie-content[data-astro-cid-frpht7e2]{display:flex;align-items:center;gap:1.5rem}.cookie-text[data-astro-cid-frpht7e2]{flex:1}.cookie-title[data-astro-cid-frpht7e2]{margin:0 0 0.5rem 0;font-size:var(--font-size-md);font-weight:600;color:var(--color-text);font-family:var(--font-ndot55)}.cookie-description[data-astro-cid-frpht7e2]{margin:0;font-size:var(--font-size-sm);color:var(--color-text-soft);line-height:1.5;max-width:1000px}.cookie-actions[data-astro-cid-frpht7e2]{display:flex;gap:0.75rem;flex-shrink:0}.cookie-btn[data-astro-cid-frpht7e2]{padding:0.625rem 1.25rem;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}.cookie-btn-primary[data-astro-cid-frpht7e2]{background:var(--color-accent-soft);color:var(--color-text)}.cookie-btn-primary[data-astro-cid-frpht7e2]:hover{background:var(--color-accent);transform:translateY(-2px)}.cookie-btn-secondary[data-astro-cid-frpht7e2]{background:var(--color-background-muted);color:var(--color-text);border:1px solid var(--color-background-muted)}.cookie-btn-secondary[data-astro-cid-frpht7e2]:hover{background:var(--color-accent-muted);border-color:var(--color-accent-soft);transform:translateY(-2px)}@media (max-width: 768px){.cookie-content[data-astro-cid-frpht7e2]{flex-direction:column;gap:1rem;text-align:center}.cookie-actions[data-astro-cid-frpht7e2]{justify-content:center;flex-wrap:wrap}.cookie-btn[data-astro-cid-frpht7e2]{padding:0.625rem 1.25rem;font-size:0.875rem}}@media (max-width: 480px){.cookie-banner-container[data-astro-cid-frpht7e2]{padding:1rem}.cookie-actions[data-astro-cid-frpht7e2]{flex-direction:column;width:100%}.cookie-btn[data-astro-cid-frpht7e2]{width:100%}}@media (prefers-reduced-motion: reduce){.cookie-banner[data-astro-cid-frpht7e2]{transition:none}.cookie-btn[data-astro-cid-frpht7e2]:hover{transform:none}}.popup-content[data-astro-cid-jq5n6tfn]{padding:1rem;overflow-y:auto}.settings-container[data-astro-cid-jq5n6tfn]{display:flex;gap:var(--font-size-lg);flex-direction:row;width:100%;max-width:1500px;margin:0 auto;flex-wrap:wrap;padding:var(--font-size-xs)}.settings-section[data-astro-cid-jq5n6tfn]{background-color:var(--color-background-soft);border-radius:var(--radius-md);padding:var(--font-size-md);transition:all var(--transition-normal) ease;width:100%;max-width:400px;box-shadow:var(--shadow-sm)}.settings-section[data-astro-cid-jq5n6tfn]:hover{background-color:var(--color-background-muted);box-shadow:var(--shadow-md)}.settings-section[data-astro-cid-jq5n6tfn] h3[data-astro-cid-jq5n6tfn]{margin-bottom:var(--font-size-sm);color:var(--color-text);font-size:var(--font-size-md);font-family:var(--font-ndot55);border-bottom:1px solid var(--color-text-soft);padding-bottom:var(--font-size-xs);line-height:var(--line-height-md);letter-spacing:var(--letter-spacing-sm)}.option-grid[data-astro-cid-jq5n6tfn]{display:grid;grid-template-columns:repeat(1fr);gap:var(--font-size-xs)}.option-button[data-astro-cid-jq5n6tfn]{position:relative;display:flex;align-items:center;border-radius:var(--radius-md);padding:var(--font-size-sm);cursor:pointer;transition:all var(--transition-normal) ease;outline:none}.option-button[data-astro-cid-jq5n6tfn]:focus-within{background-color:var(--color-accent-faint);box-shadow:var(--shadow-sm)}.option-button[data-astro-cid-jq5n6tfn] input[data-astro-cid-jq5n6tfn][type=radio]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.option-button[data-astro-cid-jq5n6tfn] span[data-astro-cid-jq5n6tfn]::before{content:"";display:inline-block;width:var(--font-size-sm);height:var(--font-size-sm);margin-right:var(--font-size-xs);border:2px solid var(--color-text-soft);border-radius:50%;transition:all var(--transition-normal) ease}.option-button[data-astro-cid-jq5n6tfn] input[data-astro-cid-jq5n6tfn][type=radio]:checked+span[data-astro-cid-jq5n6tfn]::before{border-color:var(--color-accent);background-color:var(--color-accent);box-shadow:inset 0 0 0 3px var(--color-background)}.option-button[data-astro-cid-jq5n6tfn]:focus-within span[data-astro-cid-jq5n6tfn]::before{border-color:var(--color-accent)}.option-button[data-astro-cid-jq5n6tfn] span[data-astro-cid-jq5n6tfn]{flex-grow:1;color:var(--color-text-soft);transition:color var(--transition-normal) ease;display:flex;align-items:center;font-family:var(--font-ntype82regular);font-size:var(--font-size-sm);line-height:var(--line-height-sm);letter-spacing:var(--letter-spacing-sm)}.option-button[data-astro-cid-jq5n6tfn]:hover{background-color:var(--color-accent-faint);box-shadow:var(--shadow-sm)}.hidden[data-astro-cid-jq5n6tfn]{display:none!important}.option-button[data-astro-cid-jq5n6tfn] input[data-astro-cid-jq5n6tfn]:checked+span[data-astro-cid-jq5n6tfn]{color:var(--color-accent);font-family:var(--font-ndot55)}.breadcrumbs[data-astro-cid-ctbf6y3q]{display:flex;align-items:center;gap:0.25rem;font-size:var(--font-size-sm);margin-bottom:1rem}.separator[data-astro-cid-ctbf6y3q]{margin:0 0.5rem;color:var(--color-text-muted);opacity:0.5;pointer-events:none}.breadcrumb-button[data-astro-cid-ctbf6y3q]{display:inline-flex;align-items:center;background-color:transparent;color:var(--color-text-soft);border:none;border-radius:var(--radius-md);padding:0.25rem 0.5rem;cursor:pointer;transition:all var(--transition-normal) ease;font-size:var(--font-size-sm);text-align:left}.breadcrumb-button[data-astro-cid-ctbf6y3q]:not([disabled]):hover{background-color:var(--color-accent-faint);color:var(--color-text)}.breadcrumb-button[data-astro-cid-ctbf6y3q][disabled]{color:var(--color-accent);font-weight:bold;cursor:default;background-color:var(--color-background-muted)}.breadcrumb-button[data-astro-cid-ctbf6y3q]:focus-visible{outline:var(--outline-sm);outline-offset:2px}.breadcrumb-button[data-astro-cid-ctbf6y3q]:not([disabled]):active{transform:scale(0.98);background-color:var(--color-background-muted)}.outer-main-container[data-astro-cid-bwa3g44z]{display:flex;flex-direction:column;width:100vw;height:100vh;height:100dvh;background-color:var(--color-background-hard);overflow-y:auto;padding:8px;gap:8px}.inner-main-container[data-astro-cid-hfqcyc3z]{flex:1;width:100%;max-width:100%;height:100%;background-color:var(--color-background);border-radius:var(--radius-md);overflow-y:auto;overflow-x:hidden;gap:8px;z-index:1000}.content-container[data-astro-cid-imrmw6qg]{flex:1;width:100%;min-height:100%;display:flex;flex-direction:column;align-items:center;margin:0 auto;max-width:2000px;padding:8px;box-sizing:border-box;max-width:1500px}.navbar[data-astro-cid-unp74pzb]{position:sticky;top:0;width:100%;max-width:100%;min-width:100%;z-index:900000;background:var(--color-background);font-family:var(--font-ndot55);margin:0 auto;border-radius:var(--radius-lg)}.navbar-container[data-astro-cid-unp74pzb]{max-width:1500px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:4.5rem;position:relative}.navbar-brand[data-astro-cid-unp74pzb]{flex-shrink:0;z-index:1001;display:flex;font-family:"Ndot-55",var(--font-ndot55)}.brand-link[data-astro-cid-unp74pzb]{display:flex;align-items:center;gap:0.25rem;text-decoration:none;font-size:var(--font-size-lg);transition:all 0.3s cubic-bezier(0.4,0,0.2,1);padding:0.5rem;border-radius:var(--radius-md, 12px)}.brand-text[data-astro-cid-unp74pzb]{color:var(--color-text);transition:all 0.3s ease}.brand-accent[data-astro-cid-unp74pzb]{color:var(--color-accent);bottom:-20px;opacity:0.75;transition:all 0.3s ease;position:relative;top:-0.8em;font-size:0.8em}.brand-logo[data-astro-cid-unp74pzb]{width:35px;height:35px;border-radius:50%;margin-right:0.5rem}.brand-link[data-astro-cid-unp74pzb]:hover{transform:scale(1.05)}.brand-link[data-astro-cid-unp74pzb]:hover .brand-text[data-astro-cid-unp74pzb]{color:var(--color-accent)}.brand-link[data-astro-cid-unp74pzb]:hover .brand-accent[data-astro-cid-unp74pzb]{opacity:1;transform:rotate(15deg)}.desktop-menu[data-astro-cid-unp74pzb]{display:flex;align-items:center;gap:2.5rem}.navbar-nav[data-astro-cid-unp74pzb]{display:flex;flex-direction:row;align-items:center;gap:0.25rem}.nav-link[data-astro-cid-unp74pzb]{position:relative;display:flex;align-items:center;gap:0.5rem;padding:1rem;color:var(--color-text);text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);overflow:hidden}.nav-link[data-astro-cid-unp74pzb]:hover{color:var(--color-accent)}.nav-link[data-astro-cid-unp74pzb].active{color:var(--color-accent)}.nav-button[data-astro-cid-unp74pzb]{position:relative;display:flex;align-items:center;gap:0.5rem;padding:1rem;color:var(--color-text);background:none;border:none;border-radius:var(--radius-md);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);overflow:hidden}.nav-button[data-astro-cid-unp74pzb]:hover{color:var(--color-accent)}.settings-icon[data-astro-cid-unp74pzb]{color:var(--color-text);transition:all 0.3s ease}.nav-button[data-astro-cid-unp74pzb]:hover .settings-icon[data-astro-cid-unp74pzb]{color:var(--color-accent);transform:rotate(30deg)}.mobile-toggle[data-astro-cid-unp74pzb]{display:block;background:none;border:none;cursor:pointer;padding:0.75rem;border-radius:var(--radius-sm, 8px);transition:all 0.3s ease;z-index:1001;position:relative}.mobile-toggle[data-astro-cid-unp74pzb]:hover{transform:scale(1.05)}.hamburger-box[data-astro-cid-unp74pzb]{width:24px;height:24px;display:inline-block;position:relative}.hamburger-inner[data-astro-cid-unp74pzb]{display:block;top:50%;margin-top:-1px}.hamburger-inner[data-astro-cid-unp74pzb],.hamburger-inner[data-astro-cid-unp74pzb]::before,.hamburger-inner[data-astro-cid-unp74pzb]::after{width:24px;height:2px;background-color:var(--color-text);border-radius:2px;position:absolute;transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1)}.mobile-toggle[data-astro-cid-unp74pzb]:hover .hamburger-inner[data-astro-cid-unp74pzb],.mobile-toggle[data-astro-cid-unp74pzb]:hover .hamburger-inner[data-astro-cid-unp74pzb]::before,.mobile-toggle[data-astro-cid-unp74pzb]:hover .hamburger-inner[data-astro-cid-unp74pzb]::after{background-color:var(--color-accent)}.hamburger-inner[data-astro-cid-unp74pzb]::before,.hamburger-inner[data-astro-cid-unp74pzb]::after{content:"";display:block}.hamburger-inner[data-astro-cid-unp74pzb]::before{top:-8px}.hamburger-inner[data-astro-cid-unp74pzb]::after{bottom:-8px}.mobile-toggle[data-astro-cid-unp74pzb].active .hamburger-inner[data-astro-cid-unp74pzb]{transform:rotate(45deg);background-color:var(--color-accent)}.mobile-toggle[data-astro-cid-unp74pzb].active .hamburger-inner[data-astro-cid-unp74pzb]::before{top:0;transform:rotate(90deg);background-color:var(--color-accent)}.mobile-toggle[data-astro-cid-unp74pzb].active .hamburger-inner[data-astro-cid-unp74pzb]::after{bottom:0;transform:rotate(90deg);opacity:0}.mobile-sidebar[data-astro-cid-unp74pzb]{position:fixed;top:4.5rem;left:0;width:100%;height:calc(100vh - 4.5rem);height:calc(100dvh - 4.5rem);background:var(--color-background-hard);padding-bottom:8px;padding-left:8px;padding-right:8px;z-index:9999;transform:translateY(100%);transition:transform 0.4s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;overflow:hidden}.mobile-sidebar[data-astro-cid-unp74pzb].active{transform:translateY(0)}.mobile-sidebar-content[data-astro-cid-unp74pzb]{flex:1;padding:1.5rem 1.5rem;overflow-y:auto;display:flex;border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);background-color:var(--color-background);flex-direction:column;justify-content:flex-start}.border[data-astro-cid-unp74pzb]{border-top:2px solid var(--color-text-faint);width:80%;margin:0 auto;margin-bottom:2rem}.mobile-nav[data-astro-cid-unp74pzb]{display:flex;flex-direction:column;gap:1rem;max-width:500px;margin:0 auto;width:100%}.mobile-nav-link[data-astro-cid-unp74pzb]{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;padding:1.5rem 2rem;color:var(--color-text);text-decoration:none;border-radius:var(--radius-md);font-size:1.25rem;font-weight:500;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);overflow:hidden;border:1px solid var(--color-text-faint);text-align:left}.mobile-nav-link[data-astro-cid-unp74pzb]:hover{background:var(--color-accent-faint)}.mobile-nav-link[data-astro-cid-unp74pzb].active{background:var(--color-accent-faint);color:var(--color-accent);border-color:var(--color-accent-soft)}.mobile-nav-link[data-astro-cid-unp74pzb].active:hover{background:var(--color-accent-muted);color:var(--color-accent);border-color:var(--color-accent-soft)}.mobile-nav-button[data-astro-cid-unp74pzb]{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;padding:1.5rem 2rem;color:var(--color-text);border:none;border-radius:var(--radius-md);font-size:1.25rem;font-weight:500;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);overflow:hidden;border:1px solid var(--color-text-faint);text-align:left}.mobile-nav-button[data-astro-cid-unp74pzb]:hover{background:var(--color-accent-faint)}.mobile-nav-button[data-astro-cid-unp74pzb].active{background:var(--color-accent-faint);color:var(--color-accent);border-color:var(--color-accent-soft)}.mobile-nav-button[data-astro-cid-unp74pzb].active:hover{background:var(--color-accent-muted);color:var(--color-accent);border-color:var(--color-accent-soft)}.mobile-nav-indicator[data-astro-cid-unp74pzb]{width:10px;height:10px;background:var(--color-accent);border-radius:50%;opacity:0;transition:all 0.3s ease;flex-shrink:0}.mobile-nav-button[data-astro-cid-unp74pzb].active .mobile-nav-indicator[data-astro-cid-unp74pzb]{opacity:1}.mobile-menu[data-astro-cid-unp74pzb]{display:none}@media (max-width: 768px){.navbar[data-astro-cid-unp74pzb]{max-width:100%;min-width:100%}.desktop-menu[data-astro-cid-unp74pzb]{display:none}.mobile-menu[data-astro-cid-unp74pzb]{display:flex;flex-direction:row}.navbar-container[data-astro-cid-unp74pzb]{padding:0 1rem}}@media (min-width: 769px){.mobile-sidebar[data-astro-cid-unp74pzb],.mobile-sidebar-backdrop[data-astro-cid-unp74pzb]{display:none}}@media (prefers-reduced-motion: reduce){[data-astro-cid-unp74pzb]{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}.footer[data-astro-cid-r6dvspah]{border-top:2px solid var(--color-background-hard);max-width:1500px;margin:0 auto;margin-top:3rem;padding:2rem 1.5rem;border-radius:var(--radius-md)}.footer-container[data-astro-cid-r6dvspah]{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;align-items:start}.footer-brand[data-astro-cid-r6dvspah]{display:flex;flex-direction:column;gap:1rem}.brand-link[data-astro-cid-r6dvspah]{display:flex;align-items:center;gap:0.25rem;font-size:var(--font-size-xl);font-family:var(--font-ndot55);font-weight:700;transition:transform var(--transition-normal);padding:0.5rem;border-radius:var(--radius-md);background:none;border:var(--border-none);cursor:pointer;color:var(--color-text);width:fit-content}.brand-text[data-astro-cid-r6dvspah]{color:var(--color-text);transition:color var(--transition-slow) ease-in-out;will-change:color}.brand-accent[data-astro-cid-r6dvspah]{color:var(--color-accent);opacity:0.75;transition:color var(--transition-slow) ease-in-out,opacity var(--transition-normal) ease-in-out,transform var(--transition-normal) cubic-bezier(0.34,1.56,0.64,1);position:relative;top:-0.8em;font-size:0.8em;will-change:transform,opacity,color}.brand-link[data-astro-cid-r6dvspah]:hover{transform:scale(1.05)}.brand-link[data-astro-cid-r6dvspah]:hover .brand-text[data-astro-cid-r6dvspah]{color:var(--color-accent)}.brand-link[data-astro-cid-r6dvspah]:hover .brand-accent[data-astro-cid-r6dvspah]{opacity:1;transform:rotate(15deg)}.brand-description[data-astro-cid-r6dvspah]{color:var(--color-text-soft);font-size:var(--font-size-sm);font-family:var(--font-ndot55);line-height:var(--line-height-md);margin:0}.footer-section-title[data-astro-cid-r6dvspah]{color:var(--color-text);font-size:var(--font-size-md);font-weight:600;margin:0 0 1rem 0;font-family:var(--font-ndot55)}.footer-links[data-astro-cid-r6dvspah]{display:flex;flex-direction:column;gap:0.5rem}.footer-link[data-astro-cid-r6dvspah]{color:var(--color-text-soft);text-decoration:none;font-size:var(--font-size-sm);padding:0.5rem 0;text-align:left;transition:color var(--transition-slow) ease-in-out,transform var(--transition-normal) cubic-bezier(0.34,1.56,0.64,1);border-radius:var(--radius-sm);will-change:transform,color;display:block}.footer-link[data-astro-cid-r6dvspah]:hover{color:var(--color-accent);transform:translateX(0.25rem)}.social-links[data-astro-cid-r6dvspah]{display:flex;gap:0.75rem}.social-link[data-astro-cid-r6dvspah]{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);color:var(--color-text);text-decoration:none;transition:color var(--transition-slow) ease-in-out,transform var(--transition-normal) cubic-bezier(0.34,1.56,0.64,1);padding:0.5rem;will-change:transform,color}.social-link[data-astro-cid-r6dvspah]:hover{color:var(--color-accent);transform:scale(1.1)}.social-icon[data-astro-cid-r6dvspah]{width:1.5rem;height:1.5rem}.cookie-settings-button[data-astro-cid-r6dvspah]{color:var(--color-text);border-radius:var(--radius-md);padding:0.75rem 1.25rem;font-size:var(--font-size-sm);font-family:var(--font-ndot55);cursor:pointer;transition:color var(--transition-slow) ease-in-out;width:fit-content;margin-top:1rem;border:var(--border-none);background:none;will-change:color}.cookie-settings-button[data-astro-cid-r6dvspah]:hover{color:var(--color-accent)}.footer-bottom[data-astro-cid-r6dvspah]{max-width:1200px;margin:0 auto;font-family:var(--font-ndot55);margin-top:3rem}.footer-bottom-container[data-astro-cid-r6dvspah]{margin:0 auto;display:flex;justify-content:space-around;align-items:center;gap:1rem}.copyright[data-astro-cid-r6dvspah],.version[data-astro-cid-r6dvspah]{color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;margin:0}@media (max-width: 1024px){.footer-container[data-astro-cid-r6dvspah]{grid-template-columns:1fr 1fr;gap:2rem}.footer-brand[data-astro-cid-r6dvspah]{grid-column:1 / -1}.footer-bottom-container[data-astro-cid-r6dvspah]{flex-direction:column}}@media (max-width: 768px){.footer-container[data-astro-cid-r6dvspah]{grid-template-columns:1fr;gap:2rem;padding:2rem 1rem}.footer-brand[data-astro-cid-r6dvspah],.footer-nav[data-astro-cid-r6dvspah],.footer-legal[data-astro-cid-r6dvspah],.footer-social[data-astro-cid-r6dvspah],.footer-links[data-astro-cid-r6dvspah],.social-links[data-astro-cid-r6dvspah]{text-align:center;align-items:center;justify-content:center}.footer-bottom-container[data-astro-cid-r6dvspah]{padding:0 1rem;flex-direction:column}}