:root{--paper:#f8f5ed;--ink:#292b24;--muted:#727366;--wine:#713b40;--line:#dcdccf;--green:#444e3e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--wine);outline-offset:4px}header,main,footer{max-width:1380px;margin:auto}header{padding:28px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:15px;font-size:14px;letter-spacing:2px}.brand small{display:block;font-size:9px;letter-spacing:1.6px;color:var(--muted);margin-top:3px}.monogram{font-family:Georgia,serif;font-size:38px;line-height:1;color:var(--wine);position:relative;padding-right:13px}.monogram span{font-size:23px;position:absolute;bottom:0;left:21px}nav{display:flex;gap:34px;font-size:13px}nav a:hover{color:var(--wine)}nav span{margin-left:10px}.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;padding:72px 8% 58px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:700;color:var(--wine);margin:0 0 22px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;margin:0}h1{font-size:clamp(44px,5.3vw,76px);letter-spacing:-2.8px}h1 em{color:var(--wine);font-weight:400}.byline{font-family:Georgia,serif;font-size:25px;margin:22px 0 20px}.intro{color:var(--muted);font-size:15px;line-height:1.8}.primary{display:inline-flex;gap:42px;align-items:center;background:var(--wine);color:#fff;padding:14px 22px;margin-top:16px;font-size:13px}.primary:hover{background:#542b30}.hero-facts{display:flex;gap:28px;margin-top:34px;color:var(--muted);font-size:11px}.hero-facts b{font-family:Georgia,serif;font-size:22px;color:var(--ink);font-weight:400;margin-right:5px}figure{margin:0;position:relative;max-width:340px;justify-self:center;width:100%}.portrait-frame{padding:13px;border:1px solid #c7c5b7;position:relative;background:#efecdf}.portrait-frame:after{content:'';position:absolute;inset:20px -18px -20px 18px;border:1px solid #d5d2c3;z-index:-1}figure img{width:100%;height:360px;display:block;object-fit:cover;object-position:center 20%;filter:sepia(.2)}figcaption{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.7px;margin-top:27px;color:var(--muted)}.portrait-note{display:block;text-align:center;font-family:Georgia,serif;font-style:italic;color:#8a887b;font-size:15px;margin-top:16px}.catalogue{border-top:1px solid var(--line);padding:52px 8% 66px;background:#fffefa}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.section-head .eyebrow{margin-bottom:11px}h2{font-size:36px}.section-head>p{font-size:12px;color:var(--muted);margin-bottom:4px}.searchbar{display:flex;align-items:center;border:1px solid var(--line);background:var(--paper);padding:10px 18px;gap:14px}.searchbar>span{font-size:32px;color:var(--wine);line-height:1}.searchbar input{border:0;background:transparent;flex:1;min-width:0;padding:8px 0;font-size:14px}.searchbar select{border:0;border-left:1px solid var(--line);background:transparent;padding:8px 12px;font-size:12px;color:var(--green)}.alphabet{display:flex;flex-wrap:wrap;gap:5px;padding:23px 0 15px;border-bottom:1px solid var(--line)}.alphabet button{border:0;background:transparent;min-width:32px;height:32px;color:var(--muted);font-size:12px;cursor:pointer}.alphabet button:first-child{padding:0 13px}.alphabet button.active,.alphabet button:hover{background:var(--green);color:white}.results-info{display:flex;justify-content:space-between;padding:18px 0;font-size:11px;color:var(--muted)}.text-button{border:0;background:none;color:var(--wine);font-size:11px;cursor:pointer}.remedies{display:grid;grid-template-columns:1fr 1fr;column-gap:32px}.remedy{display:flex;align-items:center;gap:14px;border-bottom:1px solid #e7e6dd;min-height:60px;padding:11px 3px;transition:background .2s}.remedy:hover{background:#f2efe6}.remedy>span:nth-child(2){font-family:Georgia,serif;font-size:19px;flex:1}.ordinal{font-size:10px;color:#97988d;font-variant-numeric:tabular-nums}.remedy small{font-size:9px;color:var(--muted);white-space:nowrap}.arrow{color:var(--wine);font-size:17px}.empty{text-align:center;padding:45px;color:var(--muted)}[hidden]{display:none!important}.editions{padding:60px 8%;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:40px;border-top:1px solid var(--line)}.editions h2{font-size:32px}.editions p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:250px}.edition{border-left:1px solid var(--line);padding-left:30px}.edition h3{font-size:25px;margin:17px 0 22px;line-height:1.3}.edition a{font-size:12px;color:var(--wine);display:block;margin-top:9px}footer{display:flex;justify-content:space-between;gap:20px;padding:25px 5%;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}footer small{font-size:10px}.reading{padding:30px 7% 70px}.breadcrumb{font-size:11px;color:var(--muted);margin-bottom:44px}.reading-layout{display:grid;grid-template-columns:200px minmax(0,760px);gap:55px;justify-content:center}aside{align-self:start;position:sticky;top:25px;font-size:13px}aside h2{font-size:25px}aside p{color:var(--muted)}aside .eyebrow{font-size:9px}aside>a{display:block;margin:18px 0;color:var(--wine);font-size:12px}.reader-tools{display:flex;gap:6px;border-top:1px solid var(--line);padding-top:20px;margin-top:28px}.reader-tools button{background:transparent;border:1px solid var(--line);padding:7px 9px;font-size:12px;cursor:pointer}.reader-tools button:hover{background:#e9e5d9}article h1{font-size:49px;letter-spacing:-1.4px;padding-bottom:30px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.article-text{font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.55;margin-top:30px}.article-text p{margin:0 0 10px}.article-nav{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:25px;margin-top:45px;gap:25px}.article-nav a{font-family:Georgia,serif;color:var(--wine);font-size:20px}.article-nav small{font-family:Arial,sans-serif;display:block;font-size:9px;letter-spacing:1.5px;margin-bottom:9px;color:var(--muted)}.back-top{display:inline-block;margin-top:30px;color:var(--muted);font-size:12px}.about{max-width:950px;padding:55px 40px 80px}.about h1{font-size:54px;margin-bottom:35px}.about h2{font-size:27px;margin:30px 0 15px}.about p,.about li{font-family:Georgia,serif;font-size:18px;line-height:1.8}.about-portrait{width:220px;float:right;margin:0 0 25px 35px}.facts{padding:20px;list-style:none;background:#eeece1}.facts b{margin-right:10px}.year{float:right;color:var(--muted)}.quote{border-left:3px solid var(--wine);padding-left:20px;font-style:italic}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip:focus{display:block;padding:15px;background:white} @media(min-width:1500px){header,main,footer{border-left:1px solid var(--line);border-right:1px solid var(--line)}}@media(max-width:850px){.hero{gap:30px;padding:48px 5%}.hero h1{font-size:52px}figure img{height:300px}.catalogue,.editions{padding:40px 5%}.editions{gap:20px}.edition{padding-left:18px}.reading-layout{grid-template-columns:160px minmax(0,1fr);gap:28px}.reading{padding:25px 5%}.reading h1{font-size:40px}}@media(max-width:600px){header{padding:18px 5%;gap:15px;flex-wrap:wrap}.brand{font-size:12px}nav{gap:22px;font-size:12px}.hero{grid-template-columns:1fr;padding:36px 6%;gap:35px}.hero h1{font-size:55px}.hero .eyebrow{font-size:9px}.intro br{display:none}figure{max-width:250px}figure img{height:265px}.hero-facts{gap:18px}.section-head{display:block}.section-head>p{margin-top:14px}.searchbar{gap:9px;padding:8px}.searchbar input{font-size:12px}.searchbar select{max-width:104px;padding:6px;font-size:11px}.remedies{grid-template-columns:1fr}.remedy>span:nth-child(2){font-size:19px}.editions{grid-template-columns:1fr;gap:28px}.edition{padding:22px 0 0;border-left:0;border-top:1px solid var(--line)}.edition h3 br{display:none}footer{flex-direction:column;gap:6px}.reading-layout{display:block}aside{position:static;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:25px}aside .eyebrow,aside h2,aside p{display:none}aside>a{display:inline-block;margin:4px 18px 10px 0}.reader-tools{margin-top:8px;padding-top:12px}.breadcrumb{margin-bottom:20px}.reading h1{font-size:38px}.article-nav a{font-size:17px}.about{padding:35px 6%}.about h1{font-size:42px}.about-portrait{width:145px;margin-left:20px}.article-text{font-size:18px}}@media print{header,footer,aside,.breadcrumb,.article-nav,.back-top,.skip{display:none!important}body{background:white;color:black}.reading,.reading-layout{display:block;padding:0}.article-text{font-size:12pt!important;line-height:1.5}article h1{font-size:28pt}a{color:black}p{orphans:3;widows:3}}

/* Header brand: increase lettering by 4 points (5.333px). */
.brand{font-size:calc(14px + 4pt)}.brand small{font-size:calc(9px + 4pt)}.monogram{font-size:calc(38px + 4pt)}.monogram span{font-size:calc(23px + 4pt)}@media(max-width:600px){.brand{font-size:calc(12px + 4pt)}}

/* Expanded book title and compact opening section. */
header{flex-wrap:wrap;gap:18px 30px;padding-top:20px;padding-bottom:20px}
.brand{min-width:0;max-width:100%;letter-spacing:0}
.brand>span:last-child{min-width:0}
.brand-title{display:block;font-size:calc(14px + 8pt);line-height:1.25;overflow-wrap:anywhere}
.brand small{margin-top:5px}
.hero{padding-top:32px;padding-bottom:30px;gap:40px}
.hero .eyebrow{font-size:16pt;font-weight:700;line-height:1.35;letter-spacing:1px;margin-bottom:14px}
.hero h1{font-size:clamp(42px,4.3vw,62px);line-height:1.05;letter-spacing:-2px}
.hero .byline{font-size:23px;margin:14px 0 10px}
.hero .intro{margin:10px 0;line-height:1.55}
.hero .primary{margin-top:8px;padding:11px 20px}
.hero-facts{margin-top:18px}
.hero figure{max-width:270px}
.hero figure img{height:275px}
.hero figcaption{margin-top:18px}
.portrait-note{margin-top:8px}
@media(max-width:600px){
 .brand-title{font-size:calc(12px + 8pt)}
 header{padding-top:15px;padding-bottom:15px;gap:15px}
 .hero{padding-top:25px;padding-bottom:25px;gap:24px}
 .hero .eyebrow{font-size:16pt;letter-spacing:.4px}
 .hero h1{font-size:46px}
 .hero figure{max-width:205px}
 .hero figure img{height:210px}
}

/* Author page title letter spacing. */
.about h1{letter-spacing:2px}

/* Navigation and guide text: 12 points on the catalogue and remedy pages. */
:is(.home-page,.remedy-page) :is(header nav,header .brand small,footer,footer small){font-size:12pt;line-height:1.5}
.reading :is(.breadcrumb,aside,aside p,aside>a,aside .eyebrow,.reader-tools button,.article-nav a,.article-nav small,.back-top,article>.eyebrow){font-size:12pt;line-height:1.5}
.home-page :is(.section-head>p,.catalogue .eyebrow,.searchbar input,.searchbar select,.alphabet button,.results-info,.text-button,.remedy>span:nth-child(2),.remedy .ordinal,.remedy small,.empty,.editions .eyebrow,.editions p:not(.eyebrow),.edition a,.hero .intro,.hero .primary,.hero-facts,figcaption,.portrait-note){font-size:12pt;line-height:1.5}
.alphabet button{height:auto;min-height:36px;min-width:36px;padding:4px 7px}
.home-page .hero-facts{flex-wrap:wrap;gap:10px 24px}
.home-page .remedy>span:nth-child(2){min-width:0;overflow-wrap:anywhere}
.home-page figcaption{flex-wrap:wrap;gap:5px 15px;letter-spacing:.5px}
.home-page .edition .eyebrow{display:block;letter-spacing:.6px}
@media(max-width:600px){
 :is(.home-page,.remedy-page) header .brand small{letter-spacing:.5px}
 .home-page .searchbar{flex-wrap:wrap;padding:10px 12px}
 .home-page .searchbar input{width:calc(100% - 45px);flex:1 1 calc(100% - 45px)}
 .home-page .searchbar select{max-width:100%;border-left:0;border-top:1px solid var(--line);width:100%}
 .home-page .remedy{gap:8px}
 .reading .article-nav{flex-wrap:wrap}
}

/* Book title on one line. */
.hero h1{white-space:nowrap;font-size:clamp(25px,3.5vw,50px);letter-spacing:-1.5px}@media(max-width:600px){.hero h1{font-size:clamp(21px,6.2vw,37px);letter-spacing:-.8px)}}

/* Introductory label size. */
.home-page .hero .eyebrow{font-size:12pt;font-weight:700}

/* Author emphasis in header. */
.brand-author{font-weight:700;color:#75452d}
