:root{--paper:#f7f5f0;--ink:#26382f;--muted:#5e665e;--line:#dcded4;--sand:#e7ddcb;--accent:#a57354}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #9b673c;outline-offset:4px}.wrap{max-width:1240px;margin:auto;padding-left:40px;padding-right:40px}.site-header{border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:106px}.brand{font-family:Georgia,serif;font-size:29px;text-decoration:none;line-height:1.1;letter-spacing:-1px;white-space:nowrap}.brand span{display:block;font:10px/2.5 Arial,sans-serif;letter-spacing:4px}.header-inner nav{display:flex;gap:23px;flex-wrap:wrap}.header-inner nav a{font-size:13px;text-decoration:none}.header-inner nav a:hover,.read-more:hover{text-decoration:underline}.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;background:white;z-index:10}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;padding-top:70px;padding-bottom:80px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.7px;font-weight:700;margin:0 0 20px}.hero h1{font:normal clamp(48px,6.1vw,80px)/1.05 Georgia,serif;letter-spacing:-3px;margin:24px 0}.hero h1 em{color:#82664e}.lead{font-size:18px;line-height:1.75;color:var(--muted);max-width:760px}.hero .lead{max-width:480px;margin-bottom:28px}.button,button{display:inline-flex;align-items:center;gap:30px;background:var(--ink);border:1px solid var(--ink);color:white;padding:13px 24px;text-decoration:none;font-size:13px;cursor:pointer}.button.light{background:var(--paper);color:var(--ink)}.hero-note{background:var(--sand);position:relative;min-height:465px;padding:30px 40px;overflow:hidden}.edition{font-size:9px;letter-spacing:2px}.arch{width:190px;height:225px;border-radius:120px 120px 0 0;background:#b8a28a;margin:25px auto 0;position:relative;box-shadow:25px 20px 0 #d6c6ad}.arch div{position:absolute;width:130px;height:160px;border:1px solid #eedfcb;border-radius:80px 80px 0 0;left:30px;bottom:0}.hero-note p{font:27px/1.3 Georgia,serif;position:relative;margin:30px 0 15px}.hero-note a{font-size:12px}.section{padding-top:65px;padding-bottom:70px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.section-head h2,h2{font:normal 36px/1.2 Georgia,serif;margin:0 0 15px}.section-head a{font-size:13px;white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.card-cover{display:block;aspect-ratio:1.52;overflow:hidden;background:#dfd9ce;text-decoration:none}.card-cover img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.card-cover:hover img{transform:scale(1.025)}.type-cover{padding:28px;display:flex;align-items:end;background:linear-gradient(120deg,#ddd2c0,#eee7dc)}.card:nth-child(2n) .type-cover{background:linear-gradient(130deg,#c8d0c0,#e1e5da)}.card:nth-child(3n) .type-cover{background:linear-gradient(130deg,#d5bca8,#e9d9c9)}.type-cover span{font:37px/1 Georgia,serif}.type-cover em{display:block;font-size:25px;margin-top:10px}.card-text{padding:24px 0}.card-text .eyebrow{margin-bottom:12px;font-size:9px}.card h3{font:normal 25px/1.27 Georgia,serif;margin:0 0 15px}.card h3 a{text-decoration:none}.card p:not(.eyebrow){font-size:14px;color:var(--muted)}.read-more{font-size:12px;text-decoration:none}.directory-band{background:#26382f;color:#f7f5f0;padding:65px 0}.directory-band h2{font-size:48px}.directory-band p:not(.eyebrow){max-width:560px;color:#d3d8cc}.site-footer{border-top:1px solid var(--line);padding:45px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer-inner p,.footer-inner nav,.footer-inner small{font-size:12px}.footer-inner nav{display:flex;gap:20px}.breadcrumbs{font-size:11px;padding-top:28px;display:flex;flex-wrap:wrap;gap:9px}.intro h1,.article h1{font:normal clamp(38px,4.7vw,60px)/1.12 Georgia,serif;margin:0 0 25px;max-width:950px;letter-spacing:-1px}.intro{padding-top:38px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.chips a{border:1px solid var(--line);border-radius:30px;padding:6px 15px;text-decoration:none;font-size:12px}.search{margin:30px 0 40px;max-width:550px}.search label{font-size:12px;display:block;margin-bottom:6px}.search div{display:flex}.search input{width:100%;min-width:0;padding:11px;border:1px solid var(--line);background:white}.empty{padding:40px 0;border-top:1px solid var(--line)}.empty p{max-width:650px}.pagination{display:flex;justify-content:center;gap:25px;margin-top:35px;font-size:13px}.article{padding-top:35px;padding-bottom:70px}.article-header{max-width:960px;margin-bottom:35px}.byline{font-size:12px;color:var(--muted)}.cover{margin:30px 0}.cover img{width:100%;max-height:600px;object-fit:cover}.article-layout{display:flex;gap:60px;align-items:start}.prose{max-width:760px;flex:1;min-width:0;font-size:17px;line-height:1.85}.prose h2{margin:40px 0 18px;font-size:31px}.prose h3{font:normal 24px Georgia,serif;margin-top:30px}.prose p{margin:0 0 22px}.company-details{background:#e9eade;padding:25px;width:320px;font-size:14px;overflow-wrap:anywhere}.company-details h2{font-size:25px}.company-details a{display:block;margin:15px 0}.company-details dt{font-weight:bold;margin-top:12px}.company-details dd{margin:0}.notice{background:#efe3b5;padding-top:12px;padding-bottom:12px}.admin-main{padding-top:35px;padding-bottom:70px}.admin-nav{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:30px}.admin-form label{display:block;font-size:13px;font-weight:bold;margin:15px 0 5px}.admin-form input:not([type=checkbox]),.admin-form textarea,.admin-form select{display:block;width:100%;padding:10px;border:1px solid #aaa;background:white}.admin-form textarea{min-height:110px}.admin-form textarea.body-editor{min-height:400px}.admin-cols{display:grid;grid-template-columns:2fr 1fr;gap:35px}.admin-form fieldset{border:1px solid var(--line);padding:18px;margin-bottom:20px}.admin-form .check{font-weight:normal}.admin-form .check input{margin-right:8px}.admin-form small{color:var(--muted)}.admin-actions{position:sticky;bottom:0;padding:15px;background:var(--paper);border-top:1px solid var(--line);display:flex;gap:15px;align-items:center;flex-wrap:wrap}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:15px 10px}.errors{background:#f4dcd1;padding:20px;color:#6d291d}.success{background:#dce8d7;padding:15px}.toolbar{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.toolbar button{font-size:12px;padding:7px 13px}.term-form{padding:25px;background:#eeeee6;margin:20px 0}details.term-form summary{cursor:pointer;font-weight:bold}.help{font-size:12px;color:var(--muted)}@media(max-width:850px){.wrap{padding-left:24px;padding-right:24px}.header-inner{padding-top:22px;padding-bottom:22px;align-items:start;flex-direction:column;gap:18px}.header-inner nav{gap:13px 20px}.hero{gap:30px;padding-top:40px;padding-bottom:40px}.hero-note{padding:22px;min-height:410px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{display:block}.company-details{width:100%;margin-top:30px}.admin-cols{grid-template-columns:1fr}}@media(max-width:560px){.wrap{padding-left:20px;padding-right:20px}.hero{grid-template-columns:1fr}.hero h1{font-size:57px;letter-spacing:-2px}.hero-note{min-height:330px}.arch{position:absolute;right:35px;top:35px;width:130px;height:190px;opacity:.7}.arch div{width:90px;height:145px;left:20px}.hero-note p{margin-top:130px;z-index:1}.hero-note a{position:relative;z-index:1}.grid{grid-template-columns:1fr}.section{padding-top:42px;padding-bottom:42px}.section-head{display:block}.section-head a{display:inline-block;margin-bottom:10px}.directory-band h2{font-size:39px}.lead{font-size:17px}.footer-inner{align-items:start;flex-direction:column;gap:14px}.intro h1,.article h1{font-size:39px}.card-cover{aspect-ratio:1.7}.pagination{gap:15px}}

.company-logo{max-width:160px;max-height:120px;object-fit:contain;margin-bottom:20px}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px}.gallery figure{margin:0}.gallery img{width:100%;height:250px;object-fit:cover}.gallery figcaption{font-size:12px;margin-top:8px}.gallery-thumb{max-height:100px;margin-top:15px}
