/* Header rules derived from styles.css and languages.css. Form styles are isolated. */
:root{
 color-scheme:dark;
 --ap-button-ink:#172B22;
 --ap-mystic:#5A7B74;
 --ap-night:#15281F;
 --ap-ink:#EEF4EF;
 --ap-muted:#B4C4BA;
 --ap-label:#A5C4B3;
 --ap-link:#C1DBC9;
 --ap-focus:#D4E5DA;
 --ap-canvas:#101815;
 --ap-paper:#17221E;
 --ap-surface:#1D2C26;
 --ap-border:#40584C;
 --ap-accent:#B5CCBC;
 --ap-accent-light:#C8DACE;
 --ap-accent-hover:#D4E2D7;
 --ap-on-dark:#F2F6EF;
 --ap-on-dark-muted:#D0DED4;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--ap-canvas);color:var(--ap-ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}
:where(.header) a{color:inherit;text-decoration:none}
:where(.header) button{font:inherit}
:where(.header) a:focus-visible,:where(.header) button:focus-visible{outline:3px solid var(--ap-focus);outline-offset:6px}
.header{height:112px;padding:12px 6%;display:flex;align-items:center;gap:44px;background:var(--ap-paper);border-bottom:1px solid var(--ap-border)}
.brand img{display:block;width:126px;height:auto}
.header nav{display:flex;gap:28px;margin-left:auto;font-size:14px}
.header nav a:hover{color:var(--ap-link)}
.login{font-size:14px;padding:12px 18px;border:1px solid var(--ap-border);border-radius:4px}
.login span{margin-left:14px}
.menu{display:none}
@media (min-width:1500px){.header{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}}
@media (max-width:1000px){.header{gap:20px}
.header nav{gap:16px}}
@media (max-width:760px){.header{height:88px;padding:10px 5%;flex-wrap:wrap;position:relative;gap:14px}
.brand img{width:95px}
.login{margin-left:auto;font-size:12px;padding:9px 11px}
.login span{margin-left:4px}
.menu{display:block;border:0;background:transparent;color:var(--ap-ink);font-size:25px;padding:4px}
.header nav{display:none;position:absolute;top:88px;left:0;width:100%;background:var(--ap-paper);padding:20px 6%;z-index:10;box-shadow:0 10px 15px #1E3A3012}
.header nav.open{display:flex;flex-direction:column;gap:15px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}}
.header{position:sticky;top:0;z-index:100;box-shadow:0 3px 16px #1E3A300A}
html{scroll-padding-top:104px}
.header{height:88px;padding-top:8px;padding-bottom:8px;gap:26px}
.brand img{width:104px}
.header nav{gap:20px}
.header nav a[aria-current="page"]{color:var(--ap-link)}
@media (max-width:1100px){.header nav{gap:14px;font-size:13px}}
@media (max-width:900px){.header{height:76px;padding:8px 5%;flex-wrap:wrap;gap:14px}
.brand img{width:84px}
.login{margin-left:auto;font-size:12px;padding:9px 11px}
.login span{margin-left:4px}
.menu{display:block;border:0;background:transparent;color:var(--ap-ink);font-size:25px;padding:4px}
.header nav{display:none;position:absolute;top:76px;left:0;width:100%;background:var(--ap-paper);padding:20px 6%;z-index:10;box-shadow:0 10px 15px #1E3A3012}
.header nav.open{display:flex;flex-direction:column;gap:15px}}
@media (max-width:760px){html{scroll-padding-top:92px}}
.header{background:linear-gradient(115deg,#131F19,#1C2E24);border-color:var(--ap-border);box-shadow:0 4px 18px #00000024}
.header nav.open{background:var(--ap-paper)}
.login{background:#233B2D;border-color:#597866;color:var(--ap-ink)}
.login:hover{background:#304C3C}
html{ scroll-padding-top: var(--header-offset, 104px); }
.header{ gap: 18px; }
.header #navigation{ gap: clamp(10px, 1.3vw, 20px); font-size: 13px; }
.language-switch{ display: inline-flex; flex: 0 0 auto; align-items: center; gap: 2px; padding: 3px; border: 1px solid var(--ap-border); border-radius: 7px; }
.language-switch a{ display: inline-flex; align-items: center; justify-content: center; min-width: 30px; min-height: 30px; padding: 4px; border-radius: 4px; font: 600 11px/1.2 Arial, sans-serif; color: var(--ap-on-dark-muted); }
.language-switch a[aria-current]{ background: #365541; color: #e1f0e5; }
.language-switch a:hover{ color: #fff; background: #294633; }
.language-switch a:focus-visible{ outline: 2px solid var(--ap-link); outline-offset: 2px; }
@media  (min-width: 761px) {.header .menu{ display: none; }
.header #navigation{ display: flex; position: static; flex-direction: row; background: transparent; box-shadow: none; }}
@media  (min-width: 761px) and (max-width: 1200px) {html{ scroll-padding-top: var(--header-offset, 140px); }
.header{ height: auto; min-height: 88px; flex-wrap: wrap; gap: 10px 18px; }
.header #navigation{ order: 5; width: 100%; margin: 0; justify-content: center; padding: 4px 0; flex-wrap: wrap; }
.header .login{ margin-left: auto; }}
@media  (max-width: 760px) {html{ scroll-padding-top: var(--header-offset, 124px); }
.header{ display: grid; grid-template-columns: auto 1fr auto; height: auto; min-height: 108px; gap: 6px 10px; padding-top: 8px; padding-bottom: 8px; }
.header .brand{ grid-column: 1; grid-row: 1 / 3; }
.header .brand img{ width: 84px; }
.header .language-switch{ grid-column: 2; grid-row: 1; justify-self: end; }
.header .language-switch a{ min-width: 32px; min-height: 32px; }
.header .login{ grid-column: 2; grid-row: 2; justify-self: end; margin: 0; font-size: 11px; padding: 5px 9px; }
.header .menu{ grid-column: 3; grid-row: 1 / 3; }
.header #navigation{ top: 100%; font-size: 14px; }}
