:root{--gold:#967745;--gold-light:#cdb88f;--cream:#faf8f3;--paper:#fff;--ink:#201b18;--muted:#655e57;--line:#ddd1bd;--purple:#76549c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}.site-header{height:92px;padding:12px clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.brand img{width:65px;height:65px;object-fit:contain}.brand span{display:flex;flex-direction:column}.brand strong{font-family:"Playfair Display",serif;font-size:22px}.brand small{color:var(--gold);font-size:14px;font-weight:700;letter-spacing:.04em}.site-header nav{display:flex;gap:26px}.site-header nav a{color:var(--ink);font-size:14px;font-weight:600;text-decoration:none}.site-header nav a:hover{color:var(--gold)}main{max-width:1450px;margin:auto}.intro{padding:46px clamp(22px,7vw,100px) 54px;background:radial-gradient(circle at 92% 10%,#efe5d2 0,transparent 28%),linear-gradient(135deg,#fff 0,#faf7f0 72%)}.breadcrumb{display:flex;gap:9px;font-size:13px;color:var(--muted);margin-bottom:34px}.breadcrumb a{color:var(--gold);font-weight:700}.eyebrow{color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.16em;margin:0 0 10px}.intro h1{font:600 clamp(50px,7vw,88px)/.93 "Playfair Display",serif;margin:0;max-width:850px}.intro-copy{font-size:19px;line-height:1.65;max-width:760px;color:var(--muted);margin:24px 0 0}.library{padding:58px clamp(18px,4vw,62px) 80px}.library-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:24px}.library-heading h2{font:600 clamp(30px,4vw,46px)/1.1 "Playfair Display",serif;margin:0}.library-heading>p{max-width:510px;color:var(--muted);line-height:1.55}.stage-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stage{border:1px solid var(--line);background:#fff;padding:17px;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer}.stage span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.stage.active{background:var(--gold);color:#fff;border-color:var(--gold)}.stage.active span{color:#fff}.focus-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:14px 0 28px}.focus-panel>p{font-size:13px;font-weight:800;margin:0 0 12px}.focus-tabs{display:flex;gap:8px;flex-wrap:wrap}.focus-tabs button{border:1px solid var(--line);background:var(--cream);padding:10px 13px;border-radius:999px;font-weight:600;cursor:pointer}.focus-tabs button.active{background:#2d2825;color:#fff;border-color:#2d2825}.selection-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 18px}.selection-head h3{font:600 clamp(27px,3.3vw,42px)/1.15 "Playfair Display",serif;margin:0}.free{background:#efe6d4;color:#664c22;padding:9px 14px;border-radius:999px;font-size:13px;font-weight:800;white-space:nowrap}.resource-layout{display:grid;grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:22px;align-items:start}.alignment{background:#28231f;color:#fff;border-radius:18px;padding:26px;position:sticky;top:112px}.alignment h4{font:600 27px "Playfair Display",serif;margin:0 0 22px}.alignment section{border-top:1px solid #5b5148;padding:19px 0}.alignment section span{display:block;color:var(--gold-light);font-size:12px;font-weight:800;letter-spacing:.08em;margin-bottom:10px}.alignment section strong{display:block;font-size:16px;margin-top:12px}.alignment section p,.details p{font-size:13px;line-height:1.5;color:#dfd9d2;margin:4px 0}.details{background:#3a332e;border-radius:12px;padding:15px}.viewer-card{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 18px 55px rgba(67,50,28,.1)}.viewer-toolbar,.viewer-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff}.viewer-toolbar strong{display:block;font-size:17px}.viewer-toolbar div>span{display:block;color:var(--muted);font-size:13px;margin-top:2px}.page-count{display:flex;gap:5px;align-items:baseline}.page-count b{font-size:25px;color:var(--gold)}.document-viewer{height:min(77vh,940px);overflow-y:auto;background:#e8e1d6;padding:22px;scroll-snap-type:y proximity}.document-viewer figure{margin:0 auto 25px;max-width:820px;scroll-snap-align:start}.document-viewer img{display:block;width:100%;height:auto;background:#fff;box-shadow:0 8px 26px rgba(37,29,21,.16)}.document-viewer figcaption{background:#302a25;color:#fff;padding:10px 14px;font-size:13px;font-weight:700}.viewer-footer{border-top:1px solid var(--line)}.viewer-footer span{color:var(--muted);font-size:13px}.viewer-footer a{background:var(--gold);color:#fff;text-decoration:none;font-weight:800;padding:12px 18px;border-radius:9px}.empty-note{text-align:center;padding:60px;border:1px dashed var(--line);border-radius:16px;color:var(--muted)}footer{border-top:1px solid var(--line);background:#fff;padding:25px clamp(22px,5vw,70px);display:flex;justify-content:space-between;align-items:center}footer div{display:flex;align-items:center;gap:12px}footer img{width:54px;height:54px;object-fit:contain}footer p{font-size:13px;font-weight:700;color:var(--muted)}@media(max-width:850px){.site-header{height:auto;position:static}.site-header nav a:first-child{display:none}.site-header nav{gap:12px}.brand span{display:none}.intro{padding-top:30px}.library-heading{display:block}.stage-tabs{grid-template-columns:repeat(2,1fr)}.resource-layout{grid-template-columns:1fr}.alignment{position:static}.document-viewer{height:70vh;padding:10px}.selection-head{align-items:flex-start;gap:15px}.free{display:none}}@media(max-width:560px){.site-header nav{font-size:12px}.site-header nav a{font-size:12px}.intro h1{font-size:46px}.stage-tabs{grid-template-columns:1fr 1fr}.stage{font-size:14px;padding:12px 8px}.library{padding-left:12px;padding-right:12px}.focus-tabs button{font-size:13px}.viewer-toolbar{padding:12px}.viewer-footer{align-items:stretch;gap:12px;flex-direction:column}.viewer-footer a{text-align:center}footer{flex-direction:column;align-items:flex-start}}

.locked-message{min-height:420px;display:grid;place-content:center;text-align:center;background:linear-gradient(145deg,#f7f0e3,#fff);padding:40px;color:#655e57}.locked-message strong{font:600 32px 'Playfair Display',serif;color:#967745}.locked-message p{font-size:17px}
