*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#f3f0e8;color:#232d2a;font:16px/1.65 Arial,sans-serif}a{color:inherit}header{max-width:1440px;margin:auto;padding:24px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #c9cec4}.brand{font-size:24px;font-weight:bold;letter-spacing:-1px;text-decoration:none}.brand span{color:#6a7b61}nav{display:flex;gap:28px;font-size:13px}nav a{text-decoration:none}main{max-width:1440px;margin:auto}section{padding:80px 6%;border-bottom:1px solid #c9cec4}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:bold;color:#5b6c60;margin:0 0 26px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.08}h1{font-size:clamp(43px,5.3vw,76px);letter-spacing:-2.8px;margin-bottom:28px}h1 em,h2 em{color:#60745d;font-weight:400}h2{font-size:clamp(36px,4vw,52px);letter-spacing:-1.8px;margin-bottom:0}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:55px;align-items:center;min-height:610px}.intro{font-size:19px;line-height:1.65;max-width:610px}.subintro{font-size:14px;color:#647268;max-width:580px}.textlink{font-size:14px;text-underline-offset:7px;display:inline-block;padding:12px 0}.textlink span{margin-left:35px}.shelf{position:relative;height:340px;background:#e5e9de;border-radius:48% 48% 0 0;display:flex;align-items:center;justify-content:center;gap:0;padding:30px 16px 55px}.shelf img{object-fit:contain;width:33%;max-height:230px;filter:drop-shadow(7px 12px 7px #24322d30);transform:rotate(-9deg);z-index:1}.shelf img:nth-child(2){transform:translateY(-20px) rotate(3deg);z-index:2}.shelf img:nth-child(3){transform:rotate(10deg)}.shelf p{position:absolute;bottom:12px;font-size:9px;letter-spacing:2px}.sectionhead{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:end;margin-bottom:38px}.sectionhead>p{color:#647268;margin-bottom:5px;max-width:430px}.filters{display:flex;gap:10px;flex-wrap:wrap;padding-top:10px}.filters button{border:1px solid #b7c0b0;border-radius:30px;background:transparent;padding:10px 17px;color:#465448;font:12px Arial;cursor:pointer}.filters button[aria-pressed=true]{background:#23483d;color:white;border-color:#23483d}.count{font-size:11px;color:#647268;margin:20px 0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 30px}.book{min-width:0}.cover{height:270px;background:#e8ecdf;display:flex;justify-content:center;align-items:center;position:relative;padding:30px}.book:nth-child(3n+2) .cover{background:#eee4d7}.book:nth-child(3n) .cover{background:#e4e7e2}.cover img{max-height:210px;max-width:80%;object-fit:contain;filter:drop-shadow(6px 9px 5px #28342a20);transition:transform .25s}.book:hover .cover img{transform:translateY(-5px)}.index{position:absolute;left:16px;top:12px;font-size:10px;color:#647268}.topic{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:#5b6c60;margin:20px 0 12px}.book h3{font-size:27px;letter-spacing:-.5px;line-height:1.15;margin-bottom:8px}.author{font-size:12px;color:#647268;margin-bottom:18px}.about{font-size:14px;line-height:1.6}.perspective{border-top:1px solid #c9cec4;padding-top:15px;font-size:14px;line-height:1.65;color:#47594c}.perspective strong{display:block;font-size:9px;letter-spacing:1.3px;margin-bottom:8px;color:#506348}.others{background:#e8ecdf}.reference-list{display:grid;grid-template-columns:1fr 1fr;column-gap:45px}.reference-list details{border-top:1px solid #bdc6b6;padding:17px 0}.reference-list summary{display:flex;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;font:21px/1.3 Georgia,serif}.reference-list summary::-webkit-details-marker{display:none}.reference-list small{display:block;font:12px Arial;margin-top:8px;color:#647268}.reference-list p{font-size:14px;margin:15px 24px 0 0}.plus{color:#60745d}.reference-list details[open] .plus{transform:rotate(45deg)}.cultural{background:#233c33;color:#f3f0e8}.cultural .eyebrow,.cultural h2 em{color:#becdb4}.cultural .sectionhead{margin-bottom:0}.cultural h2{font-size:64px}.cultural p{font-size:15px}.soon{display:block;font-size:9px;letter-spacing:1.5px;color:#bdcdb9;margin-top:8px}footer{max-width:1440px;margin:auto;padding:32px 6%;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b57842;outline-offset:5px}@media(max-width:900px){.hero{gap:25px}.shelf{height:280px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sectionhead{gap:30px}.cover{height:250px}}@media(max-width:600px){header{padding:20px 6%;gap:15px}nav{gap:15px}nav a:last-child{display:none}section{padding:50px 6%}.hero,.sectionhead{grid-template-columns:1fr;gap:25px}.hero{padding-top:45px}.hero h1{letter-spacing:-1.5px}.shelf{max-width:380px;width:100%;margin:10px auto 0;height:280px}.grid{grid-template-columns:1fr;gap:38px}.cover{height:285px}.cover img{max-height:235px}.reference-list{grid-template-columns:1fr}.cultural h2{font-size:52px}footer{flex-wrap:wrap}.intro{font-size:17px}.sectionhead{margin-bottom:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.readings-brand{display:flex;align-items:center;gap:18px}.readings-page-label{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#647268;border-left:1px solid #c9cec4;padding-left:18px}@media(max-width:600px){header{align-items:flex-start;flex-direction:column}}

/* Header matches the home and engineering pages at every breakpoint. */
header{max-width:none;margin:0;padding:22px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #c9cec4;background:#f3f0e8;gap:20px;font:17px/1.65 Arial,sans-serif;flex-direction:row}
header .brand{font-weight:700;text-decoration:none;font-size:21px;letter-spacing:-1px}header .brand span{color:#84947a}
header nav{display:flex;gap:24px;flex-wrap:wrap;font-size:17px}header nav a{display:inline;text-decoration:none;font-size:13px;border-bottom:0}header nav a:last-child{display:inline}
@media(max-width:760px){header{align-items:flex-start;flex-direction:column}header nav{gap:14px}}

.btn{display:inline-block;padding:13px 21px;background:#23483d;color:white;border:1px solid #23483d;text-decoration:none;font-size:14px;cursor:pointer;border-radius:2px;font-family:inherit}
