*{box-sizing:border-box}body{margin:0;background:#f8f5ee;color:#392e29;font:17px/1.6 system-ui,sans-serif}a{color:inherit}button,summary,label,input{cursor:pointer}.wrap{width:min(1100px,90%);margin:auto}.mast .wrap,footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px}.mast{background:#fffdf8;border-bottom:1px solid #ddcfbb}.mast .wrap{min-height:78px}.brand{text-decoration:none;font:28px Georgia,serif;letter-spacing:-.05em}.brand small{display:block;font:9px system-ui;letter-spacing:.38em;text-align:center;margin-top:3px}nav{display:flex;gap:clamp(12px,4vw,38px)}nav a{text-decoration:none;font-size:15px;padding:8px 0}nav a[aria-current]{box-shadow:0 2px #996f40;color:#704a28}
.hero{background:radial-gradient(ellipse at 77% 45%,#705342,#3b2d28 57%,#322621);color:#fcf6ea;overflow:hidden}.spread{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;min-height:470px;gap:30px}.copy{padding:54px 0}.eyebrow,.cover span{font:600 11px/1.4 system-ui;text-transform:uppercase;letter-spacing:.18em;color:#886340}.hero .eyebrow{color:#e2c49b}h1,h2,h3,.book i{font-family:Georgia,serif;font-weight:400;line-height:1.08}h1{font-size:clamp(44px,6vw,80px);margin:16px 0;letter-spacing:-.045em}.hero h1 em{display:block;color:#e4c698}.copy>p:not(.eyebrow){max-width:470px;color:#e5dacf}.gold,.secondary,button{display:inline-block;padding:12px 17px;margin:7px 5px 0 0;border-radius:5px;font:600 15px/1.5 system-ui;text-decoration:none}.gold{background:#e9cca1;color:#362b23}.gold b{padding-left:12px}.secondary{color:#fff4e1;border:1px solid #a68c76}.still{display:grid;place-items:center;padding:42px 0;perspective:750px}.book{width:min(240px,82%);aspect-ratio:.72;background:#554337;border:1px solid #aa8967;border-radius:3px 7px 7px 3px;padding:14px 12px 14px 22px;transform:rotateY(-14deg) rotateZ(8deg);box-shadow:4px 3px #c1b39b,7px 5px #f3e8cd,9px 7px #958676,20px 25px 38px #21181399,inset 8px 0 7px #30251f}.cover{border:1px solid #ab9069;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:#f8e8ce}.seal{width:88%;aspect-ratio:1;overflow:hidden;position:relative;border-radius:50%}.seal img{position:absolute;width:152%;left:-26%;top:-15%}.book i{font-size:22px}.cover span{font-size:8px;color:#dfc599}.library,.inside{padding-block:44px 68px}h2{font-size:42px;margin:0 0 24px}h3{font-size:29px;margin:14px 0}.cards,.reading{display:grid;grid-template-columns:1fr 1fr;gap:22px}.cards a,aside,details,fieldset{background:#fffdf8;border:1px solid #ddd1c0;border-radius:8px;padding:24px}.cards a{text-decoration:none;border-top:3px solid #a88350;transition:transform .2s,box-shadow .2s}.cards a:hover{transform:translateY(-3px);box-shadow:0 8px 26px #49371e17}.glyph{font:30px Georgia;color:#916b40}.cards strong{font-size:14px;color:#795530}.inside h1{font-size:clamp(40px,5vw,64px)}.inside>p{max-width:78ch}.reading{grid-template-columns:2fr 1fr;align-items:start;margin-top:28px}aside{background:#46362e;color:#f9efdf}details{margin:0 0 12px;padding:16px 20px}summary{font-weight:600}details[open]{border-color:#a28058}.exam{max-width:840px}fieldset{margin:18px 0;padding:16px 20px;min-width:0}legend{font-weight:600;padding:0 6px}fieldset label{display:inline-flex;gap:7px;align-items:center;padding:8px 12px;border:1px solid #d8cbbb;border-radius:5px;margin:3px}label:has(:checked){background:#ede0cc}input,progress{accent-color:#815b37}.tracker{padding:16px;background:#eee7db;border-radius:6px}.tracker span{float:right}progress{display:block;width:100%;height:8px;margin-top:8px}button{background:#48372e;color:white;border:0}button[type=reset]{background:#e7dac8;color:#47372c}output{display:block;margin-top:15px;font-weight:700}footer{background:#322722;color:#e8dece;padding:25px 0;font-size:14px}footer span{font-family:Georgia,serif;font-size:20px}:focus-visible{outline:3px solid #aa7841;outline-offset:3px}
@media(max-width:700px){.spread{grid-template-columns:1fr;gap:0}.still{padding:0 0 36px}.book{width:142px}.cover{gap:4px}.book i{font-size:14px}.cover span{font-size:6px}.copy{padding:34px 0 25px}.cards,.reading{grid-template-columns:1fr}.brand{font-size:23px}nav a{font-size:14px}.mast .wrap{min-height:65px}.library,.inside{padding-block:32px 46px}footer .wrap{flex-wrap:wrap}}
.portal-banner{position:relative;isolation:isolate;overflow:hidden;background:#2e241e;color:#fff7ec;border-bottom:2px solid #b99662}
.portal-banner::after{content:"";position:absolute;z-index:-1;inset:0 0 0 auto;width:40%;background:linear-gradient(90deg,#2e241e,transparent 55%),url("capa-portal.png") right 20% / 390% auto no-repeat;opacity:.8}
.portal-banner .wrap{padding-block:clamp(24px,3vw,40px)}
.portal-banner h1{font-size:clamp(31px,4vw,52px);margin:0;line-height:1.08}
.portal-banner p{font-size:clamp(13px,1.4vw,16px);color:#e2c9aa;margin:6px 0 0}
@media(max-width:600px){.portal-banner::after{width:28%;opacity:.55}.portal-banner .wrap{padding-block:20px}}
.player{margin:24px 0 44px}.player img{display:block;width:100%;height:auto;border:1px solid #d8cbbb;border-radius:8px}.controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:12px}.controls button{margin:0}.controls button:disabled{opacity:.45;cursor:default}.controls a{margin-left:auto;font-weight:600}@media(max-width:520px){.controls{gap:8px}.controls a{flex-basis:100%;margin-top:6px}}
.slide-tip{font-size:.9rem}.slide-mode{overflow:hidden}.player.expanded{position:fixed;inset:0;z-index:10000;margin:0;width:100%;height:100%;height:100dvh;box-sizing:border-box;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);display:grid;grid-template-rows:minmax(0,1fr) auto;background:#171513;color:#fff}.player.expanded img{height:100%;width:100%;object-fit:contain;border:0;border-radius:0}.player.expanded .controls{justify-content:center;gap:8px;margin:0;padding:6px;background:#362b24}.player.expanded .controls a{flex-basis:auto;margin:0;color:#f3d6a9;font-size:14px}.player.expanded button{min-height:44px;padding:6px 12px;border:1px solid #a68c76}.player.expanded button:disabled{opacity:.55}
#lessonSlide{touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}
@media(orientation:landscape) and (max-height:550px){.player.expanded .controls{flex-wrap:nowrap;gap:clamp(4px,1.1vw,12px);padding-block:3px}.player.expanded .controls button{margin:0}.player.expanded .controls a{margin:0;flex-basis:auto}}
.lesson-card{background:#fffdf8;border:1px solid #ddd1c0;border-top:3px solid #a88350;border-radius:8px;padding:24px}
.lesson-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.cards .lesson-actions a{border:0;border-radius:5px;background:#e9cca1;margin:0;padding:10px 16px}.lesson-actions button{margin:0;background:transparent;color:#654727;padding:10px;text-decoration:underline}.lesson-actions [hidden]{display:none}
.results-panel{margin-top:32px;border-top:1px solid #cbbba5;padding-top:28px}.results-panel h2{font-size:32px;margin-bottom:10px}.results-panel ol{list-style:none;padding:0;max-height:320px;overflow:auto}.results-panel li{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;border-top:1px solid #ddd1c0;padding:10px 0}.results-panel li span,.results-panel small{color:#68584d;font-size:14px}#lastGrade{font-size:20px}
.mast{background:#241208;color:#fff5e2;border-bottom:1px solid #90683c}.mast .wrap{padding-block:8px}.mast .brand{display:block;width:min(330px,47%)}.mast .brand img{width:100%;height:auto;display:block}.mast nav a[aria-current]{color:#f0d09a;box-shadow:0 2px #c39a55}.cards .lesson-card{overflow:hidden;padding:0 0 22px;display:flex;flex-direction:column;border:1px solid #d8c9b5;box-shadow:0 5px 18px #3929190b}.cards .path-preview{height:clamp(140px,15vw,180px);display:grid;place-items:center;padding:0;border:0;border-radius:0;overflow:hidden;background:#30261e}.cards .path-preview img{width:100%;height:100%;object-fit:cover;display:block;min-height:0}.cards .deck-preview{background:linear-gradient(120deg,#524336,#302720);padding:12px}.cards .deck-preview img{width:auto;max-width:94%;object-fit:contain;box-shadow:0 4px 14px #0005}.cards .lesson-card h3,.cards .lesson-card>p,.cards .lesson-actions{margin-inline:22px}.cards .lesson-card h3{margin-top:22px;margin-bottom:0}.cards .lesson-actions{margin-top:auto;padding-top:6px}.cards .lesson-actions a.gold{background:#49362b;color:#fff4e4}.cards .path-preview:hover{transform:none}.cards .lesson-actions a:after{content:"  →"}@media(max-width:550px){.mast .wrap{flex-direction:column;gap:3px;padding-bottom:6px}.mast .brand{width:min(290px,90%)}.mast nav{gap:30px}}
.mast{background:#241208}.mast .wrap{padding-block:16px}.mast .brand{width:min(480px,55%)}.mast nav a{font-weight:550}@media(max-width:550px){.mast .brand{width:min(355px,100%)}.mast .wrap{padding-block:12px 6px}}
.portal-banner h1,.library h2,.cards h3,.inside h1,.inside h2,.exam form h3{font-family:Baskerville,"Palatino Linotype",Palatino,"Times New Roman",serif;text-transform:uppercase;font-weight:400;letter-spacing:.045em;line-height:1.16;text-wrap:balance}
.portal-banner h1{font-size:clamp(26px,3.5vw,47px)}.library h2,.inside h2{font-size:clamp(24px,3vw,34px)}.cards h3,.exam form h3{font-size:clamp(20px,2.1vw,27px)}.inside h1{font-size:clamp(30px,4vw,49px)}
.mast nav a{font-family:Baskerville,"Palatino Linotype",Palatino,"Times New Roman",serif;font-weight:400;text-transform:uppercase;letter-spacing:.045em}.mast nav a[aria-current="page"]{color:#f4d298;box-shadow:inset 0 -2px #d7aa5c}footer .oab{display:block;font:14px/1.6 system-ui,sans-serif;color:#e6d6bf;margin-top:4px}
footer{padding:12px 0}footer span,footer .oab,footer a{font:12px/1.65 system-ui,sans-serif}footer .oab{margin:0}footer a{text-underline-offset:3px}
