:root{--black:#000;--white:#fff;--charcoal:#1a1a1a;--gray-dark:#3a3a3a;--surface:#f3f3f3;--ink:#000;--ink-soft:#333;--muted:#6b6b6b;--line:#dedede;--line-dark:#ffffff38;--on-dark-soft:#ffffffc7;--on-dark-muted:#ffffff8c;--radius:4px;--display:"Oswald", "Arial Narrow", Impact, sans-serif;--sans:"Inter", system-ui, -apple-system, sans-serif;--wrap:1120px;--measure:68ch}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html.gated{overflow:hidden}body{background:var(--white);color:var(--ink);font-family:var(--sans);text-align:center;margin:0;font-size:1.0625rem;line-height:1.5}img,svg{max-width:100%;display:block}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline-offset:3px;outline:2px solid}h1,h2,h3{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;text-wrap:balance;margin:0 0 .5em;font-weight:600;line-height:1.1}h1{font-size:clamp(2.4rem,6.5vw,4.4rem)}h2{font-size:clamp(1.6rem,3.4vw,2.3rem)}h3{letter-spacing:.05em;font-size:1.35rem;font-weight:500}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}.skip{position:absolute;left:-9999px}.skip:focus{background:var(--white);z-index:100;padding:8px 12px;top:16px;left:16px}.eyebrow{font-family:var(--display);letter-spacing:.3em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-size:.85rem;font-weight:400}.lede{color:var(--ink-soft);max-width:60ch;margin-inline:auto;font-size:1.2rem}.small{color:var(--muted);font-size:.85rem}.btn{text-align:center;border-radius:var(--radius);min-height:48px;font:500 .95rem var(--display);letter-spacing:.12em;text-transform:uppercase;border:2px solid var(--black);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 26px;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--black);color:var(--white)}.btn-primary:hover{background:var(--white);color:var(--black)}.btn-dark{background:var(--black);color:var(--white)}.btn-dark:hover{background:var(--white);color:var(--black)}.btn-ghost{color:var(--black);background:0 0}.btn-ghost:hover{background:var(--black);color:var(--white)}.on-dark .btn-primary,.on-dark .btn-dark{background:var(--white);color:var(--black);border-color:var(--white)}.on-dark .btn-primary:hover,.on-dark .btn-dark:hover{color:var(--white);background:0 0}.on-dark .btn-ghost{color:var(--white);border-color:var(--white)}.on-dark .btn-ghost:hover{background:var(--white);color:var(--black)}.btn:disabled{opacity:.4;cursor:not-allowed}.site-header{background:var(--black);color:var(--white);z-index:10;position:sticky;top:0}.header-inner{flex-direction:column;align-items:center;gap:10px;padding-top:16px;padding-bottom:14px;display:flex}.brand{display:block}.brand img{width:auto;height:22px}.site-header nav ul{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 24px;margin:0;padding:0;list-style:none;display:flex}.site-header nav a{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-soft);font-size:.95rem;text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--white);text-underline-offset:6px;text-decoration:underline}.site-header nav a.lang-switch{border:1px solid var(--line-dark);border-radius:var(--radius);padding:4px 10px;text-decoration:none}.site-header nav a.lang-switch:hover{border-color:var(--white)}@media (width<=860px){.site-header{position:static}}@media (width<=640px){.site-header nav ul{gap:6px 16px}}.site-footer{background:var(--black);color:var(--white);margin-top:96px;padding:56px 0 40px}.footer-inner{justify-items:center;gap:28px;display:grid}.footer-tag{font-family:var(--display);letter-spacing:.3em;text-transform:uppercase;color:var(--on-dark-soft);margin:0 0 12px;font-size:.85rem}.disclaimer{max-width:70ch;color:var(--on-dark-soft);margin-inline:auto;font-size:.9rem}.site-footer .small{color:var(--on-dark-muted)}.hero{background:var(--black);color:var(--white);border-top:1px solid var(--line-dark);padding:72px 0 88px}.hero-inner{justify-items:center;gap:36px;display:grid}.hero .eyebrow{color:var(--on-dark-muted)}.hero .lede{color:var(--on-dark-soft)}.hero-mark{order:-1;width:min(180px,34vw);height:auto}@media (width<=640px){.hero{padding:40px 0 56px}.hero-inner{gap:24px}}.actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.section{padding:72px 0 0}.section-head{border-bottom:2px solid var(--black);flex-direction:column;align-items:center;gap:8px;margin-bottom:24px;padding-bottom:14px;display:flex}.section-head h2{margin:0}.section-head a{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;font-size:.9rem}.grid{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.grid>*{flex:280px;max-width:360px}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;align-items:center;gap:10px;padding:26px;text-decoration:none;transition:border-color .15s;display:flex}a.card:hover{border-color:var(--black)}.card h3{margin:0}.card p{color:var(--ink-soft);margin:0}.card .meta{margin-top:auto;padding-top:8px}.tag{font-family:var(--display);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-size:.78rem;display:inline-block}.feature{grid-template-columns:1fr 1fr;gap:20px;display:grid}.feature .card{background:var(--surface);border-color:var(--surface);padding:36px}.feature a.card:hover{border-color:var(--black)}.feature .card.dark{background:var(--charcoal);color:var(--white);border-color:var(--charcoal)}.feature .card.dark:hover{border-color:var(--white)}.feature .card.dark p,.feature .card.dark .tag{color:var(--on-dark-soft)}@media (width<=760px){.feature{grid-template-columns:1fr}}.steps{flex-wrap:wrap;justify-content:center;gap:20px;margin:0;padding:0;list-style:none;display:flex}.step{background:var(--surface);border-radius:var(--radius);flex:210px;justify-items:center;gap:8px;max-width:340px;padding:32px 26px;display:grid}.step h3,.step p{margin:0}.step p{color:var(--ink-soft)}.step-n{font-family:var(--display);letter-spacing:.04em;font-size:2.6rem;font-weight:600;line-height:1}.steps.standard{margin-top:28px}.standard .step{background:var(--black);color:var(--white)}.standard .step p{color:var(--on-dark-soft)}.motto{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;max-width:40ch;margin:32px auto 0;font-size:1.1rem}.diploma-frame{border:1px solid var(--line);max-width:900px;margin:28px auto 0}.diploma-frame img{aspect-ratio:2000/1414;background:var(--white);width:100%;height:auto}.notes-section h2{font-size:clamp(1.3rem,2.6vw,1.7rem)}.notes-section .section-head{border-bottom-width:1px}.notes-lede{max-width:60ch;margin:0 auto 24px}.page-head{border-bottom:2px solid var(--black);margin-bottom:40px;padding:64px 0 32px}.prose{max-width:var(--measure);margin-inline:auto;line-height:1.65}.prose ul,.prose ol{padding:0;list-style-position:inside}.prose h2{margin-top:1.8em}.prose h3{margin-top:1.5em}.prose p,.prose ul,.prose ol{margin:0 0 1.1em}.prose li{margin-bottom:.4em}.prose strong{font-weight:600}.article-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;margin-bottom:8px;display:flex}.article-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:12px;margin-top:56px;padding-top:24px;display:flex}.age-gate{z-index:50;background:#000000f0;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.age-gate[hidden]{display:none}.age-card{background:var(--white);border-radius:var(--radius);text-align:center;justify-items:center;gap:8px;max-width:440px;padding:40px 28px;display:grid}.age-card img{margin-bottom:12px}.age-card p{color:var(--ink-soft);margin:0 0 12px}.age-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.course{max-width:var(--measure);gap:48px;margin-inline:auto;display:grid}.course>*{min-width:0}.toc{background:var(--surface);border-radius:var(--radius);padding:22px}.toc strong{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;font-weight:500}.toc ol{counter-reset:lesson;margin:10px 0 18px;padding:0;list-style:none}.toc li:before{counter-increment:lesson;content:counter(lesson) ". "}.toc li{margin-bottom:6px;font-size:.92rem}.lesson{border-bottom:1px solid var(--line);margin-bottom:32px;padding-bottom:32px;scroll-margin-top:100px}.quiz{scroll-margin-top:100px}.question{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);margin:0 0 16px;padding:20px 22px}.question legend{margin:0 auto 10px;padding:0;font-weight:600}.question label{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:10px;margin-top:8px;padding:10px 14px;display:flex}.question label:hover{border-color:var(--black)}.question label:has(input:checked){border-color:var(--black);font-weight:600}.question input{accent-color:var(--black);flex:none;margin:0}.question.right{border:2px solid var(--black)}.question.wrong{border:2px dashed var(--muted)}.question.right legend:after{content:"  ✓"}.question.wrong legend:after{content:"  ✗"}.result{background:var(--surface);border-radius:var(--radius);margin-top:24px;padding:28px}.result[hidden]{display:none}.field{gap:6px;max-width:420px;margin:16px auto;display:grid}.field label{font-weight:600}.field input{font:inherit;border:1px solid var(--ink-soft);border-radius:var(--radius);background:var(--white);padding:12px 14px}.diploma-form{gap:4px;max-width:460px;margin:16px auto 0;display:grid}.diploma-form .field{width:100%;margin:8px 0}.check{cursor:pointer;justify-content:center;align-items:flex-start;gap:10px;margin:10px 0;display:flex}.check input{accent-color:var(--black);flex:none;margin-top:4px}.consent{margin:6px 0 14px}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.confirmed-note{border:2px solid var(--black);border-radius:var(--radius);max-width:60ch;margin:20px auto 0;padding:14px 18px;font-weight:600}.verify-form{margin:0 auto 8px}.verify-result{max-width:900px;margin:24px auto 0}.verify-status{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;font-size:1.2rem}.verify-details{flex-wrap:wrap;justify-content:center;gap:12px 40px;margin:16px 0 0;display:flex}.verify-details dt{font-family:var(--display);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-size:.78rem}.verify-details dd{margin:2px 0 0;font-weight:600}.cert-preview{border:1px solid var(--line);width:100%;height:auto;margin-top:20px}.error{color:var(--black);font-weight:600}.error:before{content:"✗ "}
