:root{--paper:#f5f2eb;--ink:#202e37;--muted:#566570;--accent:#365e70;--line:#cbd0cc;--panel:#e7ece9;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--width:1160px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:3px solid #b47639;outline-offset:5px}.wrap{max-width:var(--width);margin:auto;padding:0 36px}.skip{position:absolute;top:-80px}.skip:focus{top:0;background:white;padding:12px;z-index:5}.masthead{display:flex;justify-content:space-between;align-items:center;padding:27px 0;border-bottom:1px solid var(--line);gap:20px}.wordmark{text-decoration:none;font-family:var(--serif);font-size:27px;line-height:1.2}.wordmark small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:3px;text-transform:uppercase;margin-top:9px}nav{display:flex;gap:25px;font-size:13px}nav a{text-decoration:none}nav a[aria-current=page]{border-bottom:1px solid var(--ink)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.7px;font-weight:bold}.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;padding:80px 0 70px;align-items:center}h1,h2,h3{font-family:var(--serif);font-weight:normal;line-height:1.08}h1{font-size:clamp(42px,5.8vw,75px);letter-spacing:-2.5px;margin:23px 0}h2{font-size:39px;letter-spacing:-1px}h3{font-size:27px;margin:0 0 16px}.lead{font-size:18px;color:var(--muted);max-width:620px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-block;text-decoration:none;border:1px solid var(--ink);padding:12px 20px;font-size:13px}.button.solid{background:var(--ink);color:var(--paper)}.button:hover{background:var(--panel);color:var(--ink)}.art{position:relative;background:var(--ink);color:var(--paper);min-height:400px;padding:32px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.art:before{content:'';position:absolute;width:340px;height:340px;border:1px solid #869a9e;border-radius:50%;left:100px;top:20px;box-shadow:0 0 0 35px #ffffff08,0 0 0 70px #ffffff08,0 0 0 105px #ffffff08}.art:after{content:'';position:absolute;width:600px;height:1px;background:#afbeb2;transform:rotate(-42deg);top:190px;left:-100px}.art span{position:relative;z-index:1}.art .quote{font-family:var(--serif);font-size:42px;line-height:1.12;max-width:260px}.art .caption{font-size:10px;letter-spacing:2px;text-transform:uppercase}.section{border-top:1px solid var(--line);padding:46px 0}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.section-head h2{margin:0 0 28px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px}.split>div+div{border-left:1px solid var(--line);padding-left:60px}.text-link{font-size:13px;font-weight:bold}.quiet{color:var(--muted)}.tag{font-size:10px;letter-spacing:1.4px;text-transform:uppercase}.empty{padding:28px;background:var(--panel);margin:25px 0}.empty h3{font-size:23px}.empty p{margin-bottom:0}.service-row{display:grid;grid-template-columns:50px 1fr 1.35fr;gap:25px;padding:28px 0;border-top:1px solid var(--line)}.service-row h3{font-size:27px;margin:0}.service-row p{margin:0;color:var(--muted)}.number{font-size:11px;padding-top:7px}.page-intro{padding:65px 0 40px;max-width:850px}.page-intro h1{font-size:60px}.prose{max-width:740px;font-size:19px}.note{font-size:13px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:28px 0;margin-top:45px;display:flex;justify-content:space-between;gap:20px;font-size:11px}.contact-panel{background:var(--ink);color:var(--paper);padding:36px;margin:25px 0}.contact-panel h2{margin-top:0}.contact-panel .quiet{color:#c3d0d3}ul{padding-left:22px}.book-list{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.book-list article{border-top:1px solid var(--line);padding:22px 0}.book-list img{max-width:100%;max-height:320px}article .body{white-space:pre-line}
@media(max-width:760px){.wrap{padding:0 22px}.masthead{align-items:flex-start;flex-direction:column}nav{gap:18px;flex-wrap:wrap}.hero{grid-template-columns:1fr;gap:30px;padding:42px 0}.art{min-height:270px}.art .quote{font-size:35px;max-width:300px}h1{letter-spacing:-1.5px}.split{grid-template-columns:1fr;gap:30px}.split>div+div{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.service-row{grid-template-columns:25px 1fr;gap:15px}.service-row p{grid-column:2}.page-intro h1{font-size:44px}.section-head{display:block}.book-list{grid-template-columns:1fr}footer{flex-direction:column}}
