










:root{--paper:#f2efea;--ink:#2b3632;--blue:#8198aa;--gold:#cda161;--line:#d5d4c9;color-scheme:light}
*{box-sizing:border-box}
html{scroll-padding-top:30px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.8 Inter,Arial,sans-serif;-webkit-text-size-adjust:100%}
a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px;overflow-wrap:anywhere}
a:hover{text-decoration-thickness:2px}
a:focus-visible{outline:2px solid #506c83;outline-offset:5px}
.shell{max-width:1120px;margin:auto;padding:0 44px}
.topbar{padding:27px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}
.brand{font:25px/1.5 'Playfair Display',Georgia,serif;text-decoration:none}
.back{font-size:12px;max-width:260px;line-height:1.55}
.hero{position:relative;padding:28px 32px 29px;margin:41px 0 42px;max-width:980px;min-height:251px}
.hero:before,.hero:after{content:'';position:absolute;width:35px;height:35px;pointer-events:none;border-color:var(--gold);border-style:solid;opacity:.85}
.hero:before{left:0;top:0;border-width:1px 0 0 1px}
.hero:after{right:0;bottom:0;border-width:0 1px 1px 0}
.eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#536d80;font-weight:500}
h1{position:relative;z-index:1;font:500 47px/1.18 'Playfair Display',Georgia,serif;letter-spacing:-.025em;max-width:770px;margin:21px 0 30px;text-wrap:balance}
.line-art{display:block;position:absolute;right:23px;top:43px;width:130px;height:110px;stroke:#a18454;stroke-width:.85;opacity:.42;pointer-events:none}
.rule{width:126px;height:1px;background:var(--gold)}
.reading-layout{max-width:864px;margin:0 auto}
article{counter-reset:chapter}
article section{position:relative;counter-increment:chapter;border-bottom:1px solid var(--line);padding:37px 0 37px 74px;scroll-margin-top:28px}
article section:first-of-type{padding-top:0}
article section:last-child{border-bottom:0}
article section:before{content:counter(chapter,decimal-leading-zero);position:absolute;left:0;top:33px;font:400 37px/1 'Playfair Display',Georgia,serif;color:#81938d}
article section:first-of-type:before{top:1px}
article section:after{content:'';position:absolute;left:1px;top:84px;width:27px;height:1px;background:var(--gold)}
article section:first-of-type:after{top:52px}
h2{font:500 27px/1.38 'Playfair Display',Georgia,serif;margin:0 0 20px;text-wrap:pretty}
h3{font:500 16px/1.6 Inter,Arial,sans-serif;margin:29px 0 13px}
p{margin:0 0 17px;hyphens:auto;text-wrap:pretty}
p:last-child{margin-bottom:0}
article p{text-align:justify}
.opening{padding-left:74px;margin-bottom:38px}
.person{hyphens:none}
footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:25px 0 33px;margin-top:40px;font-size:12px}
footer p{margin:0}
.footer-contacts{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:10px}
.skip{position:absolute;top:-100px;left:20px;background:var(--paper);padding:10px;z-index:2}
.skip:focus{top:5px}
::selection{background:#dfcda9}
@media(max-width:900px) and (min-width:601px){.line-art{display:none}}
@media(max-width:600px){
 .shell{padding:0 22px}.topbar{padding:22px 0;align-items:flex-start;gap:14px;flex-wrap:wrap}.brand{font-size:23px}.back{max-width:167px;font-size:11px}
 .hero{padding:22px 17px 24px;margin:30px 0 32px;min-height:0}.hero:before,.hero:after{width:22px;height:22px}.line-art{display:none}
 .eyebrow{font-size:9px;letter-spacing:.15em}h1{font-size:33px;line-height:1.23;margin:18px 0 24px;text-wrap:pretty}.desktop-break{display:none}
 h2{font-size:25px;line-height:1.35}article p{text-align:left;hyphens:none}article section{padding:30px 0 28px}
 article section:before{position:static;display:block;font-size:25px;margin:0 0 12px}article section:after{display:none}.opening{padding-left:0;margin-bottom:32px}
 footer{display:block;font-size:11px;padding:22px 0;margin-top:24px}footer p{margin-bottom:12px}
}
@media(max-width:370px){.topbar{display:block}.back{display:block;max-width:none;margin-top:12px}.shell{padding:0 20px}h1{font-size:29px}.hero{padding:20px 13px}body{font-size:15px}}
@media print{
 body{background:white;color:#111;font-size:11pt}.topbar,footer,.line-art,.skip,.eyebrow,.rule{display:none}.shell{padding:0;max-width:none}.reading-layout{max-width:none}
 .hero{border:0;padding:0;margin:0 0 28px;min-height:0}.hero:before,.hero:after{display:none}h1{font-size:25pt}h2{font-size:16pt}h2,h3{break-after:avoid}
 article section{padding-left:45px}article section:before{font-size:22pt}article section:after{display:none}.opening{padding-left:45px}a{text-decoration:none}
}
