.page{min-height:100vh;max-width:600px;margin:0 auto;padding:0 2rem}.content{padding:2.5rem 0}.intro-name{font-family:IBM Plex Mono,monospace;font-size:.85rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#1c1917;margin-bottom:1rem}.intro-headline{font-family:Lora,serif;font-size:var(--dk-h1-size, 2.4rem);font-weight:500;color:#1c1917;line-height:1.2;letter-spacing:-.025em;margin-bottom:1.5rem}.intro-prose{font-size:var(--dk-body-size, .95rem);color:#44403c;line-height:1.8;margin-bottom:1rem}.intro-cta{font-size:var(--dk-body-size, .95rem);color:#44403c;line-height:1.8}.intro-socials{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.25rem}.social-link{font-family:Inter,sans-serif;font-size:.75rem;font-weight:500;color:#78716c;text-decoration:none;transition:color .15s ease-out}.social-link:hover{color:#1c1917}.social-sep{color:#d6d3d1;font-size:.6rem;user-select:none}.section-divider{height:1px;background:linear-gradient(to right,transparent,#d6d3d1,transparent);margin:2.5rem 0}.section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem}.section-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.section-label{font-family:Lora,serif;font-size:var(--dk-h2-size, 1.5rem);font-weight:500;letter-spacing:-.01em;text-transform:none;color:#1c1917}.section-intro-text{font-size:var(--dk-body-size, .95rem);color:#44403c;line-height:1.8;margin-bottom:1.5rem}.section-intro-text p{margin-bottom:1rem}.section-intro-text p:last-child{margin-bottom:0}.section-intro-text a{text-decoration:underline;text-underline-offset:3px}.songs-heading{font-family:Lora,serif;font-size:1.1rem;font-weight:500;color:#1c1917;margin-bottom:1rem}.card-list{display:flex;flex-direction:column;gap:1rem}.card{display:flex;align-items:flex-start;gap:.875rem;background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 1px 4px #0000000f;cursor:pointer;text-align:left;width:100%;transition:box-shadow .15s ease-out,transform .15s ease-out}.card:hover{box-shadow:0 2px 12px #0000001a;transform:translateY(-1px)}.card-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0;object-fit:cover}.card-text{flex:1;min-width:0}.card-title{font-family:Lora,serif;font-size:var(--dk-card-title-size, 1rem);font-weight:500;color:#1c1917;margin-bottom:.2rem}.card-meta{font-size:.75rem;color:#78716c;margin-bottom:.4rem}.card-desc{font-size:var(--dk-card-desc-size, .85rem);color:#57534e;line-height:1.6}.dock-clearance{height:16rem}.dock{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;justify-content:center;align-items:flex-end;padding:0 1.5rem .75rem;height:285px;background:linear-gradient(transparent 0%,#faf9f7f2 35%);pointer-events:none}.dock-scene{position:relative;width:480px;height:240px;pointer-events:auto;transform:translateY(54px)}.dock-book{position:absolute;width:150px;height:222px;border-radius:2px 8px 8px 2px;cursor:pointer;overflow:hidden;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1);transform-origin:center bottom}.dock-book-spine{position:absolute;left:0;top:0;bottom:0;width:9px;border-radius:2px 0 0 2px;z-index:2;box-shadow:1px 0 2px #0000001a}.dock-book-inner{position:relative;padding:2.4rem 1rem .6rem;display:flex;flex-direction:column;align-items:center;height:100%;text-align:center}.dock-book-role{font-family:Inria Sans,sans-serif;font-size:.28rem;font-weight:400;letter-spacing:.02em;margin-bottom:.2rem}.dock-book-rule{height:1px;width:75%;margin-bottom:.2rem}.dock-book-title{font-family:"Inria Serif",serif;font-size:1.5rem;font-weight:700;line-height:1.1;padding:.15rem 0;margin-bottom:.2rem}.dock-book-rule2{height:1px;width:75%;margin-bottom:.15rem}.dock-book-subtitle{font-family:Inria Sans,sans-serif;font-size:.28rem;font-weight:700;font-style:italic;line-height:1.4;max-width:80%}.dock-book-image{position:absolute;width:70%;bottom:1.5rem;left:50%;transform:translate(-50%);pointer-events:none}.dock-book-image img{width:100%;height:auto;display:block}.dock-book-music{background:#ecbb59}.dock-book-music .dock-book-spine{background:#b38322}.dock-book-music .dock-book-role{color:#212121}.dock-book-music .dock-book-title{color:#2e2729}.dock-book-music .dock-book-rule,.dock-book-music .dock-book-rule2{background:#21212126}.dock-book-music .dock-book-subtitle{color:#000}.dock-book-music .dock-book-image{mix-blend-mode:darken;width:60%;bottom:2rem}.dock-book-law{background:#224e8c}.dock-book-law .dock-book-spine{background:#6d798a}.dock-book-law .dock-book-role,.dock-book-law .dock-book-title{color:#d7e2f0}.dock-book-law .dock-book-rule,.dock-book-law .dock-book-rule2{background:#d7e2f033}.dock-book-law .dock-book-subtitle{color:#d7e2f0}.dock-book-law .dock-book-image{mix-blend-mode:screen;opacity:.9;width:100%;left:0;transform:none;bottom:0}.dock-book-tech{background:#8c4b22}.dock-book-tech .dock-book-spine{background:#a1826f}.dock-book-tech .dock-book-role,.dock-book-tech .dock-book-title{color:#f6ede7}.dock-book-tech .dock-book-rule,.dock-book-tech .dock-book-rule2{background:#f6ede733}.dock-book-tech .dock-book-subtitle{color:#f6ede7}.dock-book-tech .dock-book-image{mix-blend-mode:hard-light;bottom:1rem}@media(max-width:768px){.page{padding:0 1.25rem}.content{padding:2rem 0}.intro-headline{font-size:1.8rem}.dock{height:180px}.dock-scene{transform:translateY(54px) scale(.65);transform-origin:center bottom}}.drawer-backdrop{position:fixed;inset:0;background:#0000004d;z-index:90;opacity:0;pointer-events:none;transition:opacity .25s ease-out}.drawer-backdrop.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;bottom:0;width:55%;max-width:600px;background:#fff;z-index:100;transform:translate(100%);transition:transform .3s cubic-bezier(.22,1,.36,1);box-shadow:-4px 0 24px #00000014;display:flex;flex-direction:column}.drawer.open{transform:translate(0)}.drawer-close{position:absolute;top:1.25rem;right:1.25rem;width:32px;height:32px;border-radius:50%;background:#f5f5f4;display:flex;align-items:center;justify-content:center;color:#78716c;z-index:2;transition:background .15s ease-out}.drawer-close:hover{background:#e7e5e4}.drawer-handle{display:none}.drawer-scroll{flex:1;overflow-y:auto;padding:2rem 2rem 3rem;-webkit-overflow-scrolling:touch}.drawer-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.4rem}.drawer-icon{width:40px;height:40px;border-radius:10px;object-fit:cover}.drawer-title{font-family:Lora,serif;font-size:1.3rem;font-weight:500;color:#1c1917}.drawer-meta{font-size:.75rem;color:#78716c;margin-bottom:1.5rem}.drawer-desc p{font-size:.9rem;color:#44403c;line-height:1.8;margin-bottom:1rem}.drawer-desc p:last-child{margin-bottom:0}.drawer-media{border-radius:10px;overflow:hidden;margin:1.25rem 0;background:#f5f5f4}.drawer-media img{width:100%;display:block}.drawer-media iframe{width:100%;aspect-ratio:16 / 9;border:none;display:block}.drawer-placeholder{padding:3rem;text-align:center;font-size:.8rem;color:#a8a29e;background:#f5f5f4;border-radius:10px;margin:1.25rem 0}.drawer-caption{font-size:.8rem;color:#78716c;line-height:1.6;font-style:italic;margin-bottom:1.25rem}.drawer-link{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;font-weight:500;color:#1c1917;margin-top:1rem;text-decoration:underline;text-underline-offset:3px}.drawer-audio{margin-top:1.5rem;padding:1rem;background:#f5f5f4;border-radius:10px}.drawer-audio-controls{display:flex;align-items:center;gap:.75rem}.drawer-play-btn{width:36px;height:36px;border-radius:50%;background:#1c1917;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.drawer-play-btn svg{width:14px;height:14px;fill:currentColor}.drawer-audio-track{flex:1}.drawer-progress-bg{width:100%;height:4px;background:#d6d3d1;border-radius:2px;cursor:pointer;position:relative}.drawer-progress-fill{height:100%;background:#1c1917;border-radius:2px;width:0%;transition:width .1s linear}.drawer-audio-timestamps{display:flex;justify-content:space-between;font-size:.65rem;color:#78716c;margin-top:.3rem}.drawer-cover-art{width:100%;max-width:200px;border-radius:10px;margin-bottom:1rem}@media(max-width:768px){.drawer{inset:auto 0 0;width:100%;max-width:100%;height:75vh;border-radius:16px 16px 0 0;transform:translateY(100%)}.drawer.open{transform:translateY(0)}.drawer-close{display:none}.drawer-handle{display:flex;justify-content:center;padding:.75rem 0 .5rem;cursor:grab}.drawer-handle-bar{width:36px;height:4px;border-radius:2px;background:#d6d3d1}.drawer-scroll{padding:.5rem 1.25rem 2rem}}
