:root{--ink:#17222b;--cream:#f5f0e6;--paper:#fffdf8;--orange:#c76536;--teal:#2d7775;--muted:#69757b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.03;margin:.15em 0 .45em}h1{font-size:clamp(3.4rem,8vw,7.3rem);letter-spacing:-.055em}h2{font-size:clamp(2.5rem,5vw,4.6rem);letter-spacing:-.035em}h3{font-size:1.7rem}em{color:var(--orange);font-weight:400}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);border-bottom:1px solid #e4dfd6;background:rgba(255,253,248,.95);position:sticky;top:0;z-index:20}.brand{font-weight:900;letter-spacing:.08em;text-decoration:none;color:var(--ink)}.brand span{color:var(--orange)}nav{display:flex;gap:28px}nav a,.footer-links a{color:inherit;text-decoration:none;font-size:.9rem}.hero{min-height:760px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:7vw;padding:70px max(7vw,28px);background:var(--cream);overflow:hidden}.hero-copy{max-width:760px}.lead{font-size:1.25rem;margin:1.5rem 0}.eyebrow{font-size:.76rem;font-weight:900;letter-spacing:.18em;color:var(--teal);margin-bottom:1rem}.eyebrow.light{color:#8fc0bb}.button{display:inline-block;background:var(--orange);color:white;text-decoration:none;font-weight:800;padding:15px 23px;border-radius:3px;margin-top:14px}.hero-art{text-align:center;position:relative}.hero-art img,.book-image img{width:min(100%,380px);box-shadow:0 22px 50px #0003;transform:rotate(1.5deg)}.dark,.closing{background:var(--ink);color:#f7f3ea;padding:110px 24px}.narrow{max-width:900px;margin:auto}.thoughts{border-left:3px solid var(--orange);padding-left:25px;margin:40px 0}.thoughts p{font:italic 1.5rem Georgia,serif;color:#cfd6d7}.big{font-size:1.5rem}.accent{font:italic 1.75rem Georgia,serif;color:#e88b5d}.section{padding:110px max(7vw,28px)}.section .narrow{text-align:center}.intro{max-width:760px;margin:0 auto 45px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;text-align:left}.cards article{padding:30px;border:1px solid #ddd5c8;background:#fff}.cards b{color:var(--orange);font-size:.8rem;letter-spacing:.12em}blockquote{font:italic 2rem/1.35 Georgia,serif;margin:65px auto 0}.stream{padding:110px max(7vw,28px);background:var(--teal);color:white}.stream>div{max-width:1000px;margin:auto}.cycle{font-weight:900;letter-spacing:.05em;padding:25px 0;border-block:1px solid #ffffff55}.cycle span{color:#f3b48e}.book{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center;max-width:1250px;margin:auto}.subtitle{font:italic 1.35rem Georgia,serif}.book li{margin:.65em 0}.availability{font-weight:800}.quote{text-align:center;padding:100px 24px;background:var(--cream)}.quote p{font-size:1.1rem}.quote h2{font-size:clamp(2rem,4vw,3.7rem)}.about{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:center;max-width:1100px;margin:auto}.portrait img{width:min(100%,340px);border-radius:4px}.text-link{font-weight:800;color:var(--teal)}.closing{text-align:center}.light-button{background:#f4efe5;color:var(--ink)}footer{padding:50px max(7vw,28px);background:#10181e;color:#dfe4e4}.footer-links{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0}.fine{font-size:.78rem;color:#aeb8ba;max-width:900px}.fine a{color:inherit}@media(max-width:760px){nav{display:none}.hero,.book,.about{grid-template-columns:1fr}.hero{padding-top:45px}.hero-art{order:-1}.hero-art img{width:210px}.cards{grid-template-columns:1fr}.book-image{text-align:center}.portrait{text-align:center}.portrait img{width:220px}.section,.dark,.stream,.closing{padding-top:75px;padding-bottom:75px}}

/* Contact form */
.contact-page .narrow{max-width:760px}.contact-form{display:grid;gap:.65rem;margin-top:2rem}.contact-form label{font-weight:700;margin-top:.5rem}.contact-form input,.contact-form textarea{width:100%;box-sizing:border-box;border:1px solid #c9c5ba;border-radius:8px;padding:.9rem 1rem;font:inherit;background:#fff;color:var(--ink)}.contact-form textarea{resize:vertical;min-height:180px}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--orange);outline-offset:2px}.contact-form button{border:0;cursor:pointer;justify-self:start;margin-top:.75rem}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-notice{margin:1.5rem 0;padding:1rem 1.15rem;border-radius:8px}.form-notice.success{background:#eef5ed;border:1px solid #a9c6a4}.form-notice.error{background:#fff0ed;border:1px solid #d8a096}
