:root{--sp-4:4px;--sp-8:8px;--sp-12:12px;--sp-16:16px;--sp-24:24px;--sp-40:40px;--sp-64:64px;--c-bg:#f4f0ea;--c-surface:#ffffff;--c-ink:#121212;--c-border:#121212;--c-accent:#ffe600;--c-accent-cyan:#00e5ff;--c-accent-pink:#ff2a85;--c-accent-lime:#26e600;--c-muted:#555555;--c-muted-dark:#c2c2c2;--shadow:4px 4px 0px var(--c-border);--shadow-lg:6px 6px 0px var(--c-border);--shadow-sm:2px 2px 0px var(--c-border);--border-thick:3px solid var(--c-border);--border-thin:2px solid var(--c-border);--font-sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-mono:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}
*{box-sizing:border-box;margin:0;padding:0}
body{background-color:var(--c-bg);color:var(--c-ink);font-family:var(--font-sans);font-size:1rem;line-height:1.6;min-width:320px}
a{color:var(--c-ink);text-decoration:underline;text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--c-ink);outline-offset:2px}
.skip-link{position:absolute;top:-100px;left:var(--sp-16);background:var(--c-accent);color:var(--c-ink);padding:var(--sp-8) var(--sp-16);border:var(--border-thin);font-weight:700;z-index:999;text-decoration:none}
.skip-link:focus{top:var(--sp-16)}
.site-header{height:64px;background-color:var(--c-surface);border-bottom:var(--border-thick);padding:0 var(--sp-24);display:flex;align-items:center;justify-content:space-between;position:relative}
.brand{display:inline-flex;align-items:center;gap:var(--sp-8);font-weight:900;font-size:1.15rem;text-transform:uppercase;letter-spacing:-0.5px;text-decoration:none;color:var(--c-ink);flex-shrink:0;white-space:nowrap}
.brand-mark{width:28px;height:28px;background:var(--c-accent);border:var(--border-thin);box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center}
.desktop-nav{display:none}
.nav-list{display:flex;list-style:none;gap:var(--sp-16);align-items:center}
.nav-link{font-weight:700;font-size:0.875rem;text-decoration:none;text-transform:uppercase;white-space:nowrap;padding:var(--sp-4) var(--sp-8);border:2px solid transparent}
.nav-link:hover,.nav-link[aria-current="page"]{background-color:var(--c-accent);border-color:var(--c-border);box-shadow:var(--shadow-sm)}
.header-cta{display:none;background-color:var(--c-accent-pink);color:#ffffff;font-weight:800;font-size:0.875rem;text-transform:uppercase;padding:var(--sp-8) var(--sp-16);border:var(--border-thin);box-shadow:var(--shadow-sm);text-decoration:none;white-space:nowrap;flex-shrink:0}
.header-cta:hover{background-color:var(--c-ink);color:#ffffff}
.burger-btn{display:flex;flex-direction:column;justify-content:space-around;width:40px;height:40px;background:var(--c-accent);border:var(--border-thin);box-shadow:var(--shadow-sm);padding:var(--sp-8);cursor:pointer}
.burger-line{width:100%;height:3px;background-color:var(--c-ink);transition:transform 0.2s,opacity 0.2s}
.burger-btn.is-open .burger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger-btn.is-open .burger-line:nth-child(2){opacity:0}
.burger-btn.is-open .burger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav-drawer{position:fixed;top:64px;left:0;right:0;bottom:0;background-color:var(--c-surface);border-top:var(--border-thick);z-index:900;display:none;flex-direction:column;padding:var(--sp-24);overflow-y:auto}
.mobile-nav-drawer.is-open{display:flex}
.mobile-nav-list{list-style:none;display:flex;flex-direction:column;gap:var(--sp-16);margin-block:auto;width:100%}
.mobile-nav-list .nav-link{font-size:1.15rem;padding:var(--sp-12);display:block;border:var(--border-thin);background:var(--c-bg);box-shadow:var(--shadow-sm);overflow-wrap:anywhere}
.mobile-nav-list .header-cta{display:block;text-align:center;font-size:1.1rem;padding:var(--sp-12);margin-top:var(--sp-16)}
.layout-container{max-width:1120px;margin:0 auto;padding:0 var(--sp-16)}
.hero{padding:var(--sp-64) 0 var(--sp-40);border-bottom:var(--border-thick);background-color:var(--c-surface)}
.hero-tag{display:inline-block;background:var(--c-accent-cyan);border:var(--border-thin);box-shadow:var(--shadow-sm);font-weight:900;font-size:0.75rem;text-transform:uppercase;padding:var(--sp-4) var(--sp-8);margin-bottom:var(--sp-16)}
.hero-title{font-size:clamp(2rem,5vw,3.25rem);line-height:1.1;font-weight:900;text-transform:uppercase;letter-spacing:-1px;margin-bottom:var(--sp-16);overflow-wrap:anywhere}
.hero-subtitle{font-size:1.15rem;max-width:720px;margin-bottom:var(--sp-24);color:var(--c-ink);font-weight:500}
.hero-img-wrap{margin-top:var(--sp-24);border:var(--border-thick);box-shadow:var(--shadow);background-color:var(--c-ink)}
.hero-img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.section-title{font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:900;text-transform:uppercase;margin-bottom:var(--sp-24);letter-spacing:-0.5px;overflow-wrap:anywhere}
.section-intro{font-size:1.05rem;max-width:780px;margin-bottom:var(--sp-40)}
.guide-list{display:flex;flex-direction:column;gap:var(--sp-40);margin-bottom:var(--sp-64)}
.accent-entry{border-left:8px solid var(--c-ink);padding-left:var(--sp-24);padding-block:var(--sp-8);position:relative;background:transparent}
.accent-entry.theme-cyan{border-left-color:var(--c-accent-cyan)}
.accent-entry.theme-pink{border-left-color:var(--c-accent-pink)}
.accent-entry.theme-yellow{border-left-color:var(--c-accent)}
.accent-entry.theme-lime{border-left-color:var(--c-accent-lime)}
.accent-entry.theme-dark{border-left-color:var(--c-ink)}
.entry-num{font-family:var(--font-mono);font-size:0.875rem;font-weight:900;color:var(--c-muted);text-transform:uppercase;margin-bottom:var(--sp-4)}
.entry-title{font-size:1.4rem;font-weight:900;margin-bottom:var(--sp-12);overflow-wrap:anywhere}
.entry-title a{color:var(--c-ink);text-decoration:none}
.entry-title a:hover{text-decoration:underline}
.entry-desc{font-size:1rem;color:var(--c-ink);margin-bottom:var(--sp-16);max-width:850px}
.entry-link{display:inline-flex;align-items:center;gap:var(--sp-8);font-weight:800;font-size:0.875rem;text-transform:uppercase;color:var(--c-ink);padding:var(--sp-8) var(--sp-16);background:var(--c-surface);border:var(--border-thin);box-shadow:var(--shadow-sm);text-decoration:none}
.entry-link:hover{background:var(--c-accent);box-shadow:var(--shadow)}
.spec-box{background:var(--c-surface);border:var(--border-thick);box-shadow:var(--shadow);padding:var(--sp-24);margin:var(--sp-40) 0}
.spec-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-16)}
.spec-item{border:var(--border-thin);padding:var(--sp-16);background:var(--c-bg)}
.spec-val{font-size:1.75rem;font-weight:900;line-height:1;margin-bottom:var(--sp-12);font-family:var(--font-mono)}
.spec-lbl{font-size:0.875rem;font-weight:700;text-transform:uppercase;color:var(--c-muted)}
.content-body{padding:var(--sp-40) 0 var(--sp-64)}
.content-body h2{font-size:1.6rem;font-weight:900;text-transform:uppercase;margin:var(--sp-40) 0 var(--sp-16);padding-bottom:var(--sp-8);border-bottom:var(--border-thin);overflow-wrap:anywhere}
.content-body h3{font-size:1.25rem;font-weight:800;margin:var(--sp-24) 0 var(--sp-8);overflow-wrap:anywhere}
.content-body p{margin-bottom:var(--sp-16);max-width:760px}
.content-body ul,.content-body ol{margin-bottom:var(--sp-24);padding-left:var(--sp-24);max-width:760px}
.content-body li{margin-bottom:var(--sp-8)}
.callout{background:var(--c-surface);border-left:8px solid var(--c-accent-pink);border-top:var(--border-thin);border-right:var(--border-thin);border-bottom:var(--border-thin);padding:var(--sp-24);box-shadow:var(--shadow);margin:var(--sp-24) 0;max-width:800px}
.callout-title{font-weight:900;text-transform:uppercase;margin-bottom:var(--sp-8);font-size:1.1rem}
.table-wrap{width:100%;overflow-x:auto;margin:var(--sp-24) 0;border:var(--border-thick);box-shadow:var(--shadow)}
.spec-table{width:100%;border-collapse:collapse;text-align:left;background:var(--c-surface);font-size:0.925rem}
.spec-table th,.spec-table td{padding:var(--sp-12) var(--sp-16);border:1px solid var(--c-border);min-width:140px}
.spec-table th{background:var(--c-accent);font-weight:900;text-transform:uppercase}
.spec-table tr:nth-child(even){background:var(--c-bg)}
.form-group{margin-bottom:var(--sp-24)}
.form-label{display:block;font-weight:800;font-size:0.9rem;text-transform:uppercase;margin-bottom:var(--sp-8)}
.form-input,.form-textarea{width:100%;max-width:640px;padding:var(--sp-12);border:var(--border-thick);background:var(--c-surface);font-family:inherit;font-size:1rem;box-shadow:var(--shadow-sm)}
.form-textarea{min-height:140px;resize:vertical}
.form-input:focus,.form-textarea:focus{background:#fff;border-color:#000;box-shadow:var(--shadow)}
.field-error{color:#b00020;font-size:0.875rem;font-weight:800;margin-top:var(--sp-4);display:none}
.is-invalid .form-input,.is-invalid .form-textarea{border-color:#b00020}
.is-invalid .field-error{display:block}
.btn-submit{background:var(--c-accent-lime);color:var(--c-ink);font-weight:900;font-size:1rem;text-transform:uppercase;padding:var(--sp-12) var(--sp-24);border:var(--border-thick);box-shadow:var(--shadow);cursor:pointer}
.btn-submit:hover{background:var(--c-accent);box-shadow:var(--shadow-lg)}
.form-feedback{margin-top:var(--sp-24);padding:var(--sp-16);border:var(--border-thick);display:none;max-width:640px;font-weight:700}
.form-feedback.success{display:block;background:var(--c-accent-lime);color:var(--c-ink)}
.site-footer{background-color:var(--c-ink);color:#ffffff;border-top:var(--border-thick);padding:var(--sp-64) 0 var(--sp-40)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-40);margin-bottom:var(--sp-40)}
.footer-title{font-size:1.1rem;font-weight:900;text-transform:uppercase;color:var(--c-accent);margin-bottom:var(--sp-16);letter-spacing:0.5px}
.footer-text{color:var(--c-muted-dark);font-size:0.9rem;margin-bottom:var(--sp-12)}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:var(--sp-8)}
.footer-link{color:#ffffff;text-decoration:none;font-weight:600;font-size:0.9rem}
.footer-link:hover{color:var(--c-accent-cyan);text-decoration:underline}
.footer-link:focus-visible{outline:3px solid var(--c-accent);outline-offset:2px}
.independence-badge{border-top:1px solid #333333;padding-top:var(--sp-24);margin-top:var(--sp-24);font-size:0.85rem;color:var(--c-muted-dark);line-height:1.5}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background-color:var(--c-surface);border-top:var(--border-thick);padding:var(--sp-16) var(--sp-24);z-index:999;box-shadow:0 -4px 0 rgba(0,0,0,0.1)}
.cookie-banner[hidden]{display:none}
.cookie-content{max-width:1120px;margin:0 auto;display:flex;flex-direction:column;gap:var(--sp-16)}
.cookie-text{font-size:0.9rem;color:var(--c-ink);line-height:1.4}
.cookie-actions{display:flex;flex-direction:column;gap:var(--sp-8)}
.cookie-btn{font-weight:800;font-size:0.875rem;padding:var(--sp-8) var(--sp-16);border:var(--border-thin);box-shadow:var(--shadow-sm);cursor:pointer;text-transform:uppercase;background:var(--c-bg);color:var(--c-ink)}
.cookie-btn[data-cookie-choice="accept"]{background:var(--c-accent-lime)}
.cookie-btn[data-cookie-choice="reject"]{background:var(--c-accent-pink);color:#ffffff}
.cookie-pref-panel{background:var(--c-bg);border:var(--border-thin);padding:var(--sp-16);margin-top:var(--sp-8)}
.cookie-pref-panel[hidden]{display:none}
.pref-row{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-8) 0;border-bottom:1px solid var(--c-border)}
@media (min-width:480px){.cookie-actions{flex-direction:row;flex-wrap:wrap}.cookie-btn{flex:1 1 auto}}
@media (min-width:768px){.spec-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:2fr 1fr 1fr}.cookie-content{flex-direction:row;align-items:center;justify-content:space-between}.cookie-actions{flex:0 0 auto;flex-wrap:nowrap;justify-content:flex-end}.cookie-btn{flex:0 0 auto}}
@media (min-width:1024px){.desktop-nav{display:block}.header-cta{display:inline-block}.burger-btn{display:none}}
@media (prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important}}