:root{--ink:#17342f;--green:#205b4f;--dark:#123e35;--sage:#dce9dd;--cream:#f8f4ec;--gold:#c99153;--white:#fffefa;--red:#9f2f2f}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}
a{color:inherit}.topbar{padding:18px clamp(20px,5vw,70px);display:flex;align-items:center;justify-content:space-between;background:var(--white);border-bottom:1px solid #dbe2dd}
.brand{display:flex;gap:10px;align-items:center;text-decoration:none}.brand-mark{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white;font-size:24px}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-text strong{font:500 21px Georgia,serif}.brand-text small{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#60726d;margin-top:4px}.nav{display:flex;gap:18px;align-items:center}.nav a{text-decoration:none;font-size:14px;font-weight:700}
.shell{max-width:1120px;margin:auto;padding:54px 24px 90px}.narrow{max-width:560px}.card{background:var(--white);border:1px solid #dbe2dd;padding:30px;margin-bottom:20px}.card h1,.card h2,.card h3{font-family:Georgia,serif;font-weight:500}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--green)}
h1{font:400 clamp(38px,5vw,62px)/1.05 Georgia,serif;margin:10px 0 24px}h2{font:500 31px Georgia,serif}.muted{color:#64756f}
.button,button{display:inline-flex;align-items:center;justify-content:center;border:0;padding:13px 20px;background:var(--green);color:white;font-weight:800;text-decoration:none;cursor:pointer}.button.secondary{background:var(--sage);color:var(--ink)}
label{display:block;font-weight:700;margin:15px 0 6px}input,select{width:100%;padding:13px;border:1px solid #bfcac5;background:white;font:inherit}input[type=radio]{width:auto}.notice{padding:15px 18px;margin:15px 0;background:var(--sage);border-left:3px solid var(--green)}.notice.error{background:#f8dddd;border-color:var(--red)}
.module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.module-card{display:flex;flex-direction:column;min-height:260px}.module-card .number{color:var(--gold);font:22px Georgia,serif}.module-card .button{margin-top:auto}.progress{height:10px;background:#dbe2dd;overflow:hidden;margin:18px 0}.progress span{display:block;height:100%;background:var(--green)}
.lesson{padding:28px 0;border-top:1px solid #dbe2dd}.lesson h2{margin-bottom:12px}.lesson p{font-size:17px}.timer{position:sticky;top:0;padding:12px 18px;background:var(--dark);color:white;display:flex;justify-content:space-between;z-index:2}.quiz-item{padding:22px 0;border-top:1px solid #dbe2dd}.quiz-item label{font-weight:400}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:13px;border-bottom:1px solid #dbe2dd;vertical-align:top}th{background:var(--sage);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.certificate{max-width:980px;margin:30px auto;padding:70px;border:8px double var(--green);background:#fff;text-align:center}.certificate h1{font-size:56px}.certificate .name{font:44px Georgia,serif;border-bottom:1px solid var(--gold);display:inline-block;padding:0 35px 8px}.certificate-code{font-family:monospace}.signatures{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:60px}.signature-line{border-top:1px solid var(--ink);padding-top:8px}.footer{padding:30px;text-align:center;color:#64756f;font-size:12px}
@media(max-width:760px){.nav{gap:10px}.module-grid{grid-template-columns:1fr}.certificate{padding:35px 20px}.certificate h1{font-size:38px}.certificate .name{font-size:30px}.signatures{grid-template-columns:1fr;gap:35px}}
@media print{.topbar,.footer,.no-print{display:none!important}body{background:#fff}.certificate{margin:0;max-width:none;min-height:720px;page-break-inside:avoid}}
