:root{--color-primary: #1a1a1a;--color-secondary: #333;--color-tertiary: #666;--color-background: #f9f9f7;--color-background-secondary: #efefef;--color-text: #1a1a1a;--color-text-secondary: #666;--color-overlay: rgba(0, 0, 0, .5);--color-shadow: rgba(0, 0, 0, .2);color-scheme:light dark;color:var(--color-text);background-color:var(--color-background);font-family:Merriweather,serif;line-height:1.5;font-weight:600;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-xxl: 4rem;min-width:320px}html,body{margin:0;min-width:320px;overflow-x:hidden}h1{font-size:2.2rem;line-height:1.1;margin:0;margin-bottom:var(--spacing-md)}h2{font-size:1.5rem;margin:0;margin-bottom:var(--spacing-md);font-weight:500}h3{font-weight:bolder;margin:0;margin-bottom:var(--spacing-sm)}p{margin:0;margin-bottom:var(--spacing-xl);line-height:2.5;text-align:justify}.bold{font-weight:bolder}.italic{font-style:italic;font-weight:400}.light{font-weight:400;margin-bottom:0}.caption{font-style:italic;font-weight:400;line-height:2;margin-bottom:var(--spacing-xl);margin-left:var(--spacing-xs)}hr{border:none;height:1px;background-color:var(--color-tertiary);margin:1rem auto;width:50%}.content-container{padding:5rem;text-align:start}.content-container h1,.content-container h2,.content-container h3,.content-container p:not(.caption),.content-container .references{padding-left:var(--spacing-xl);padding-right:var(--spacing-xl)}.header-container,.header-container p{text-align:center}.narrow{max-width:100ch;margin-left:auto;margin-right:auto}.references{background-color:var(--color-background-secondary);padding:var(--spacing-xl);border-radius:1rem;margin-top:var(--spacing-xxl)}.references h3{margin-left:-2rem}.reference{margin-bottom:var(--spacing-md);text-align:left;text-indent:-2rem;padding-left:var(--spacing-lg);line-height:3;word-wrap:break-word;overflow-wrap:break-word}.reference a{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-tertiary);transition:text-decoration-color .2s ease}.reference a:hover{text-decoration-color:var(--color-primary)}.image-container-two-left{display:grid;grid-template-columns:.45fr 1fr;gap:var(--spacing-sm);align-items:stretch}.image-container-two-right{display:grid;grid-template-columns:1fr .45fr;gap:var(--spacing-sm);align-items:stretch}.image-container-four{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm)}.image-container-three{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);align-items:stretch}.video-container{display:flex;gap:var(--spacing-xl);align-items:center;margin:var(--spacing-xl) 0;justify-content:center}.video-container .poem-text{margin:0}.portfolio-image{width:100%;height:auto;cursor:pointer;transition:transform .3s ease;margin-bottom:var(--spacing-xs);display:block}.portfolio-image.fullwidth{width:100%;height:auto;display:block;cursor:default}.portfolio-video{width:100%;max-width:400px;height:auto;margin-bottom:var(--spacing-xs);filter:brightness(.8)}.poem-text{max-width:max-content;margin:var(--spacing-xl) auto}.poem-text p{margin-bottom:0}.poem-text .quote-open{width:50px;height:auto;vertical-align:top;position:relative;left:-10px}.poem-text .quote-close{width:50px;height:auto;position:relative;right:-10px;margin-left:90%}.poem-text-wide .quote-open{left:-30px}.poem-text-wide .quote-close{right:-30px}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:var(--color-overlay);justify-content:center;align-items:center}.image-modal{display:none;position:fixed;z-index:1001;left:0;top:0;width:100%;height:100vh;background-color:#000000e6;justify-content:center;align-items:center}.image-modal img{max-width:95%;max-height:95%;object-fit:contain}.image-close{position:absolute;top:10px;right:10px;background:none;border:none;color:#fff;cursor:pointer;font-size:2rem;z-index:1002}.modal-content{background-color:var(--color-background);opacity:.9;position:relative;margin:0;padding:var(--spacing-lg);border-radius:1rem;width:24rem;animation:modalSlideIn .4s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:.8;transform:translateY(0) scale(1)}}.close{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;position:absolute;right:.5rem;top:.5rem;transition:color .3s ease;margin:0;padding:0;display:flex;align-items:center;justify-content:center}.close:hover{color:var(--color-text)}#modal-text{font-size:.9rem;color:var(--color-text);text-align:justify}.audio-player{background-color:var(--color-background);border:1px solid var(--color-tertiary);border-radius:8px;padding:var(--spacing-lg);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-xs);box-shadow:0 2px 8px var(--color-shadow)}.audio-controls{display:flex;align-items:center;gap:var(--spacing-md)}.play-btn{background:var(--color-primary);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-background);transition:all .2s ease;flex-shrink:0;-webkit-tap-highlight-color:transparent}.play-btn:hover{background:var(--color-secondary);transform:scale(1.05)}.progress-container{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.progress-bar{width:100%;height:6px;background:var(--color-tertiary);border-radius:3px;cursor:pointer;position:relative}.progress-fill{height:100%;background:var(--color-primary);border-radius:3px;width:0%}.time-display{display:flex;justify-content:space-between;font-size:.8rem;color:var(--color-text-secondary)}@media (max-width: 768px){.modal-content{width:15rem;padding:var(--spacing-md)}#modal-text{font-size:.8rem}p{line-height:2}.portfolio-image.fullwidth{height:90vh;object-fit:cover}.modal{background-color:transparent}.image-container-four{grid-template-columns:repeat(2,1fr)}.video-container{flex-direction:column;gap:var(--spacing-md)}.portfolio-video,hr{width:80%}.content-container{padding:var(--spacing-lg)}.video-container .poem-text{margin:var(--spacing-sm) 0}.content-container h1,.content-container h2,.content-container h3,.content-container p:not(.caption){padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.reference{line-height:2.5}}
