:root{--bg: #f4f2ef;--bg-elevated: #eae7e2;--text: #1a1a1a;--text-muted: #7c7c7c;--accent: #2a6b5a;--accent-dim: rgba(42, 107, 90, .2);--accent-glow: rgba(42, 107, 90, .06);--font-display: "Cinzel", serif;--font-body: "Crimson Pro", serif;--font-mono: "Space Mono", monospace;--max-width: 1000px;--section-pad: clamp(4rem, 10vh, 8rem);--side-pad: clamp(1.5rem, 5vw, 3rem)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:clamp(1.1rem,1.9vw,1.3rem);font-weight:300;line-height:1.7;color:var(--text);background-color:var(--bg);overflow-x:hidden}::selection{background:#2a6b5a33;color:#1a1a1a}a{color:inherit;text-decoration:none}.grain{position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.04;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px}.page-border{position:fixed;inset:10px;border:1px solid var(--accent-dim);pointer-events:none;z-index:99;animation:borderReveal 1.5s ease both;animation-delay:1.2s}nav{position:relative;z-index:50;padding:1.5rem var(--side-pad)}.nav-inner{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between}.nav-brand{font-family:var(--font-display);font-size:.85rem;font-weight:600;letter-spacing:.2em;color:var(--accent);transition:opacity .3s ease}.nav-brand:hover{opacity:.7}.nav-links{display:flex;gap:2rem}.nav-links a{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);transition:color .3s ease;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--accent);transition:width .3s ease}.nav-links a:hover{color:var(--accent)}.nav-links a:hover:after{width:100%}.ornament{display:flex;align-items:center;gap:.75rem;width:100%;max-width:280px;margin:0 auto}.orn-line{flex:1;height:1px;background:var(--accent-dim)}.orn-diamond{width:6px;height:6px;background:var(--accent);transform:rotate(45deg);flex-shrink:0;animation:diamondPulse 4s ease-in-out infinite}.hero{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(4rem,12vh,8rem) var(--side-pad);text-align:center}.hero-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:clamp(300px,60vw,700px);height:clamp(250px,40vh,500px);background:radial-gradient(ellipse,var(--accent-glow) 0%,transparent 70%);pointer-events:none}.hero .orn-top{margin-bottom:1.5rem;animation:fadeDown .8s ease both;animation-delay:.1s}.hero .orn-bottom{margin-top:1.5rem;animation:fadeUp .8s ease both;animation-delay:1s}.hero-title{font-family:var(--font-display);font-weight:700;line-height:.95;letter-spacing:.08em;text-transform:uppercase;position:relative}.title-line{display:block}.title-first{font-size:clamp(3rem,11vw,8rem);animation:fadeUp .8s ease both;animation-delay:.35s}.title-second{font-size:clamp(3.5rem,13vw,10rem);animation:fadeUp .8s ease both;animation-delay:.55s}.hero-genre{font-family:var(--font-body);font-size:clamp(1.1rem,2.4vw,1.5rem);font-weight:300;font-style:italic;color:var(--text-muted);margin-top:.75rem;animation:fadeUp .8s ease both;animation-delay:.8s}.hero-pitch{max-width:34rem;margin-top:1.5rem;color:var(--text-muted);animation:fadeUp .8s ease both;animation-delay:.95s}.hero-cta{display:inline-block;margin-top:2rem;padding:.85rem 2.25rem;background:var(--accent);color:#fff;font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:background .3s ease,transform .15s ease;animation:fadeUp .8s ease both;animation-delay:1.1s}.hero-cta:hover{background:#337d68}.hero-cta:active{transform:scale(.97)}.section-inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--side-pad)}.section-title{font-family:var(--font-display);font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:500;letter-spacing:.08em;text-transform:uppercase;line-height:1.2}section{scroll-margin-top:2rem}.prose-section{padding:var(--section-pad) 0;border-top:1px solid rgba(42,107,90,.12)}.prose-grid{display:grid;grid-template-columns:1fr 2fr;gap:clamp(2rem,6vw,5rem);align-items:start}.prose-heading .section-title{color:var(--accent);position:sticky;top:3rem}.prose-body p{margin-bottom:1.25em}.prose-body p:last-child{margin-bottom:0}.drop-cap p:first-child{font-size:clamp(1.15rem,2vw,1.35rem);font-weight:400;color:var(--text)}.drop-cap p:first-child:first-letter{font-family:var(--font-display);font-size:3.2em;float:left;line-height:.78;margin-right:.08em;margin-top:.05em;color:var(--accent);font-weight:700}.drop-cap p:not(:first-child){color:#1a1a1a99}.progress{margin:2rem 0 1.5rem}.progress-track{height:8px;background:var(--accent-dim);overflow:hidden}.progress-fill{height:100%;background:var(--accent);background-image:repeating-linear-gradient(-45deg,rgba(255,255,255,.18) 0 6px,transparent 6px 12px)}.progress-stages{display:flex;flex-wrap:wrap;gap:.35rem 0;list-style:none;margin-top:.85rem;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.progress-stages li:not(:first-child):before{content:"→";margin:0 .6em;color:var(--accent-dim)}.progress-stages li.current{color:var(--accent);font-weight:700}.progress-stages li.done{color:var(--accent)}.book-note{font-style:italic;color:var(--text-muted)}.bio-heading .section-title{position:static}.bio-photo{width:min(100%,300px);margin-top:1.75rem}.bio-photo img,.bio-placeholder{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border:1px solid var(--accent-dim)}.bio-placeholder{display:flex;align-items:center;justify-content:center;background:var(--bg-elevated)}.bio-placeholder span{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:.15em;color:var(--accent-dim)}.bio-body{font-size:.98em;color:#1a1a1abf}.subscribe{padding:var(--section-pad) 0}.subscribe-card{max-width:580px;margin:0 auto;padding:clamp(2rem,5vw,3.5rem);border:1px solid var(--accent-dim);text-align:center;background:var(--bg-elevated)}.subscribe-title{margin-bottom:1rem}.subscribe-copy{margin-bottom:2rem;text-align:left}.subscribe-copy p{color:var(--text-muted);font-size:1.1rem;line-height:1.7}.subscribe-copy p+p{margin-top:.85em}.form-row{display:flex;gap:.75rem;max-width:420px;margin:0 auto}.subscribe-form input[type=email]{flex:1;padding:.75rem 1rem;background:#fff;border:1px solid rgba(42,107,90,.2);color:var(--text);font-family:var(--font-body);font-size:1.05rem;outline:none;transition:border-color .3s ease,box-shadow .3s ease}.subscribe-form input[type=email]::placeholder{color:var(--text-muted);opacity:.6}.subscribe-form input[type=email]:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-dim)}.subscribe-form button{padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;font-family:var(--font-mono);font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .3s ease,transform .15s ease;white-space:nowrap}.subscribe-form button:hover{background:#337d68}.subscribe-form button:active{transform:scale(.97)}.subscribe-thanks{font-style:italic;color:var(--accent);margin-top:1rem;min-height:1.5em}footer{padding:3rem var(--side-pad) 2rem;text-align:center;border-top:1px solid rgba(42,107,90,.12)}.footer-inner{max-width:var(--max-width);margin:0 auto}footer .ornament{margin-bottom:1.5rem}.footer-name{font-family:var(--font-display);font-size:.85rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem}.footer-copy{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.05em;color:#1a1a1a4d}.footer-copy a{color:#1a1a1a73;transition:color .3s ease}.footer-copy a:hover{color:var(--accent)}html.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}html.js .reveal.revealed{opacity:1;transform:translateY(0)}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes borderReveal{0%{opacity:0}to{opacity:1}}@keyframes diamondPulse{0%,to{box-shadow:0 0 #2a6b5a00}50%{box-shadow:0 0 8px 2px #2a6b5a33}}@media(max-width:768px){.prose-grid{grid-template-columns:1fr;gap:2rem}.prose-heading .section-title{position:static}.bio-photo{width:min(240px,60vw)}.form-row{flex-direction:column}.subscribe-form button{padding:.85rem 1.5rem}.page-border{inset:6px}}@media(max-width:480px){.page-border{display:none}.ornament{max-width:200px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}html{scroll-behavior:auto}}
