
:root{--iv:#f8f5ee;--iv2:#f0eadd;--gr:#1f3a33;--gr2:#2c4d44;--gd:#b08d57;--tx:#2a2622;--mu:#6f675c;--ln:#ddd3c1}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--iv);color:var(--tx);font:18px/1.75 "Libre Caslon Text",Georgia,serif}
a{color:inherit}.wrap{max-width:1160px;margin:0 auto;padding:0 28px}
h1,h2,h3,.logo-o,blockquote{font-family:"Libre Caslon Display",Georgia,serif;font-weight:400}
.sc,.nav,.topline,.crumbs,.btn,.link,.col-m,.foot h5,th,dt{font-family:Jost,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.sc{font-size:12px;font-weight:500;color:var(--gd);margin:0 0 10px}
.orn{color:var(--gd);font-size:14px}.orn.big{display:block;font-size:20px;margin:18px 0}
.topline{background:var(--gr);color:#d9d2c2;font-size:11px}.tl{display:flex;justify-content:space-between;padding-top:9px;padding-bottom:9px}.tl a{margin-left:22px;text-decoration:none}.tl a:hover{color:var(--gd)}
.mast{background:var(--iv);border-bottom:1px solid var(--ln);text-align:center;padding-top:30px}
.logo{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none}.logo-o{font-size:clamp(46px,6vw,68px);line-height:1;color:var(--gr)}.logo-t{font:400 11px Jost;letter-spacing:.3em;text-transform:uppercase;color:var(--gd);margin-top:8px}
.nav{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 40px;font-size:13px;margin-top:24px;border-top:1px solid var(--ln);padding:16px 0}.nav a{text-decoration:none;padding-bottom:3px;border-bottom:1px solid transparent}.nav a:hover,.nav a.cur{border-color:var(--gd);color:var(--gr)}
.hero{padding:64px 0}.frame{border:1px solid var(--gd);outline:1px solid var(--gd);outline-offset:8px;text-align:center;padding:64px 40px;background:var(--iv)}
.hero h1{font-size:clamp(36px,5vw,62px);line-height:1.12;color:var(--gr);margin:6px 0 0}.hero h1 em{font-style:italic;color:var(--gr2)}
.hero-p{max-width:720px;margin:0 auto 30px;color:var(--mu);font-size:19px}
.btn{display:inline-block;font-size:12px;background:var(--gr);color:var(--iv);text-decoration:none;padding:15px 30px;border:1px solid var(--gr)}.btn:hover{background:transparent;color:var(--gr)}
.sec{padding:70px 0}.sec.tint{background:var(--iv2)}.title{text-align:center;margin-bottom:44px}.title h2{font-size:clamp(32px,4vw,46px);color:var(--gr);margin:0}
.cols{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--gr);border-bottom:1px solid var(--gr)}
.col{padding:34px 26px;text-decoration:none;text-align:center;border-right:1px solid var(--ln);display:flex;flex-direction:column;align-items:center;transition:background .2s}.col:last-child{border-right:0}.col:hover{background:var(--iv2)}
.col-r{font:400 15px "Libre Caslon Display";color:var(--gd)}.col h3{font-size:28px;color:var(--gr);margin:8px 0 0}.rule{width:40px;height:1px;background:var(--gd);margin:16px 0}.col p{font-size:16px;color:var(--mu);margin:0 0 18px}.col-m{margin-top:auto;font-size:11px;color:var(--gr)}
.feature{background:var(--gr);color:#e9e3d6;padding:76px 0}.feat-g{display:grid;grid-template-columns:1.6fr 1fr;gap:60px}.feature h2{font-size:clamp(38px,5vw,58px);color:var(--iv);margin:0;line-height:1.05}.feat-pl{font-style:italic;color:var(--gd);margin:6px 0 24px}
.dropcap:first-letter{float:left;font:400 74px/.8 "Libre Caslon Display";color:var(--gd);margin:8px 12px 0 0}
.feature .link{color:var(--gd)}.link{font-size:12px;text-decoration:none;border-bottom:1px solid var(--gd);padding-bottom:3px}
.feat-r{border-left:1px solid rgba(176,141,87,.5);padding-left:36px;align-self:center}.feat-r dt{font-size:11px;color:var(--gd)}.feat-r dd{margin:4px 0 20px;font-size:16px}
.rvs{display:grid;grid-template-columns:repeat(3,1fr);gap:46px 40px}.rv{border-top:1px solid var(--gr);padding-top:20px}.rv h3{font-size:26px;line-height:1.15;margin:0;color:var(--gr)}.rv h3 a{text-decoration:none}.rv h3 a:hover{color:var(--gd)}
.rv-pl{font-style:italic;color:var(--mu);margin:4px 0 12px;font-size:16px}.rv p{font-size:16px}.rv-w{border-top:1px solid var(--ln);padding-top:10px;font-size:15px!important}.rv-w em{color:var(--gd)}
.quote{background:var(--iv2);text-align:center;padding:76px 0;border-top:1px solid var(--ln);border-bottom:1px solid var(--ln)}blockquote{font-size:clamp(26px,3.4vw,40px);line-height:1.3;color:var(--gr);max-width:880px;margin:0 auto 18px;font-style:italic}
.tw{overflow-x:auto}.reg{width:100%;border-collapse:collapse;font-size:16px}.reg th{font-size:11px;font-weight:500;color:var(--gd);text-align:left;padding:12px 14px;border-bottom:1px solid var(--gr)}.reg td{padding:15px 14px;border-bottom:1px solid var(--ln)}.reg td a{text-decoration:none;color:var(--gr);font-weight:700}.reg td a:hover{color:var(--gd)}.reg tr:hover td{background:var(--iv2)}
.ed{display:grid;grid-template-columns:1fr 2.2fr;gap:50px}.ed h2{font-size:40px;color:var(--gr);margin:0;line-height:1.1}.ed-g{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.ed h4{font:400 21px "Libre Caslon Display";color:var(--gr);margin:0 0 8px}.ed-g p{font-size:16px;color:var(--mu);margin:0}
.ph{text-align:center;padding:60px 0 50px;border-bottom:1px solid var(--ln)}.crumbs{font-size:11px;color:var(--mu);margin:0 0 26px}.crumbs a{text-decoration:none}.crumbs span{color:var(--gd);margin:0 8px}
.ph h1{font-size:clamp(46px,7vw,84px);line-height:1;color:var(--gr);margin:0}.ph-p{max-width:680px;margin:0 auto;font-size:20px;font-style:italic;color:var(--mu)}
.essay{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;padding-top:56px;padding-bottom:30px}.essay>p{font-size:21px;line-height:1.65;margin:0}
.toc{list-style:none;margin:0;padding:0;border-top:1px solid var(--gr)}.toc a{display:flex;gap:16px;padding:13px 0;border-bottom:1px solid var(--ln);text-decoration:none}.toc a:hover{color:var(--gd)}.toc span{font-family:"Libre Caslon Display";color:var(--gd);min-width:40px}
.notice{border:1px solid var(--gd);padding:22px 28px;margin:30px 0 0;background:var(--iv2)}.notice p:last-child{margin:0;font-size:16px}
.review{padding:64px 0;border-bottom:1px solid var(--ln);scroll-margin-top:20px}.rh{text-align:center;margin-bottom:36px}.rh-n{font:400 16px "Libre Caslon Display";color:var(--gd)}.rh h2{font-size:clamp(34px,4.6vw,54px);line-height:1.08;color:var(--gr);margin:6px 0 4px}.rh-pl{font-style:italic;color:var(--mu);margin:0 0 6px}
.rg{display:grid;grid-template-columns:1fr 340px;gap:56px}.rb h3{font-size:24px;color:var(--gr);margin:28px 0 6px}.rb p{margin:0 0 14px}
.card{background:var(--iv2);border-top:2px solid var(--gd);padding:28px;align-self:start;position:sticky;top:24px}.card dt{font-size:11px;font-weight:500;color:var(--gr)}.card dd{margin:4px 0 18px;font-size:16px}.card ul{margin:0;padding-left:18px}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-top:50px;padding-bottom:70px}.pn a{border:1px solid var(--ln);padding:24px;text-decoration:none;font:400 28px "Libre Caslon Display";color:var(--gr)}.pn a:last-child{text-align:right}.pn a:hover{border-color:var(--gd)}.pn .sc{display:block}
.prose{max-width:760px;margin:0 auto;padding:50px 0 90px}.prose h2{font-size:32px;color:var(--gr);margin:40px 0 8px}
.cc{display:grid;grid-template-columns:1fr 1fr;gap:20px}.cc div{background:var(--iv2);border-top:2px solid var(--gd);padding:22px 26px}.cc p{margin:0}
.foot{background:var(--gr);color:#d4cdbd;padding:64px 0 28px;font-size:15px;line-height:1.7}.foot-logo{text-align:center;border-bottom:1px solid rgba(176,141,87,.4);padding-bottom:30px;margin-bottom:40px}.foot .logo-o{color:var(--iv);font-size:52px;display:block}
.foot-g{display:grid;grid-template-columns:1fr 1fr 1.3fr 1.3fr;gap:36px}.foot h5{font-size:11px;font-weight:500;color:var(--gd);margin:0 0 14px}.foot-g a{display:block;text-decoration:none;padding:2px 0}.foot-g a:hover{color:var(--gd)}.foot-g p{margin:0}
.foot-c{text-align:center;font:400 11px Jost;letter-spacing:.16em;text-transform:uppercase;margin:44px 0 0;color:#a49c8b}
@media(max-width:980px){.cols{grid-template-columns:1fr 1fr}.col:nth-child(2){border-right:0}.col{border-bottom:1px solid var(--ln)}.feat-g,.ed,.essay,.rg{grid-template-columns:1fr}.feat-r{border:0;padding:0}.rvs,.ed-g{grid-template-columns:1fr 1fr}.foot-g{grid-template-columns:1fr 1fr}.card{position:static}}
@media(max-width:620px){.cols,.rvs,.ed-g,.foot-g,.cc,.pn{grid-template-columns:1fr}.col{border-right:0}.frame{padding:40px 20px}.nav{gap:4px 20px}.tl span:first-child{display:none}.pn a:last-child{text-align:left}}
