:root{--paper:#faf8f1;--ink:#17392e;--body:#233a32;--muted:#58665b;--line:#d6d8cb;--linen:#eeeee1;--pine:#153c30;--rust:#a03b21;--accent:#af452a;--white:#fffef9;--serif:"Baskervville",Baskerville,"Iowan Old Style",Georgia,serif;--sans:"DM Sans","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;--gutter:clamp(1.15rem,4vw,4.5rem)}
*{box-sizing:border-box}html{background:var(--paper);color:var(--body);font-family:var(--sans);line-height:1.55;scroll-padding-top:1rem}body{margin:0}a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:.23em;overflow-wrap:anywhere}a:hover{color:var(--rust)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #c45232;outline-offset:3px}img{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}button,summary,select{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button{border-radius:0}h1,h2,h3,h4,p,ul{margin:0}h1,h2,h3,h4{color:var(--ink);font-family:var(--serif);font-weight:500;line-height:1.06;letter-spacing:-.045em}p+p{margin-top:1em}h1{font-size:clamp(3rem,6.3vw,6.5rem)}h2{font-size:clamp(2.15rem,3.6vw,3.9rem)}h3{font-size:1.6rem}.shell{width:min(100% - var(--gutter)*2,78rem);margin-inline:auto}.visually-hidden,.trap,.skip:not(:focus){position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip:focus{position:absolute;top:.4rem;left:.4rem;z-index:5;padding:.6rem 1rem;background:var(--white)}[hidden]{display:none!important}
header{border-top:4px solid var(--pine);border-bottom:1px solid var(--line)}.nav-wrap{min-height:5.4rem;display:flex;gap:2rem;justify-content:space-between;align-items:center}.brand,.wordmark{display:inline-flex;align-items:center;text-decoration:none}.wordmark{gap:.52rem;white-space:nowrap;font:600 clamp(1.35rem,2.1vw,2rem)/1 var(--serif);letter-spacing:-.065em;color:inherit}.wordmark i{font-weight:400}.brand-mark{width:2.55rem;height:2.55rem;flex:none}.nav-wrap ul{list-style:none;display:flex;align-items:center;gap:clamp(1.1rem,3vw,2.6rem);padding:0}.nav-wrap nav a{display:block;padding:.55rem 0;font-size:.92rem;font-weight:550;text-decoration:none}.nav-wrap nav a[aria-current],.nav-wrap nav a:hover{color:var(--rust);text-decoration:underline;text-underline-offset:.45rem}.eyebrow,.count,.list-meta,.review-score{font:600 .71rem/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.eyebrow{margin:0 0 .7rem}.icon{width:1.4rem;height:1.4rem;flex:none}.hero{display:grid;grid-template-columns:1fr .94fr;gap:clamp(2rem,5vw,5rem);align-items:center;padding:clamp(2.75rem,5vw,5.6rem) 0;border-bottom:1px solid var(--ink)}.stamp{display:flex;gap:.75rem;align-items:center;color:var(--ink)}.stamp span{width:1.7rem;height:2px;background:var(--accent)}.hero h1{font-size:clamp(4.1rem,7.3vw,7.4rem);line-height:.93;letter-spacing:-.072em;margin:1.2rem 0 1.5rem}.hero h1 em{color:var(--rust);font-weight:400}.hero-lead{font:400 clamp(1.06rem,1.6vw,1.35rem)/1.5 var(--sans);max-width:32rem;color:#43564a}.hero-photo{position:relative;min-width:0;height:clamp(22rem,31vw,29.5rem);background:var(--linen)}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero .search{margin-top:1.8rem}.search{display:flex;align-items:center;gap:.7rem;padding:5px 5px 5px 1rem;border:1px solid #7b8a79;background:var(--white);width:100%;min-width:0}.search:focus-within{outline:2px solid var(--pine);outline-offset:1px}.search .icon{width:1.2rem;color:var(--ink)}.search input{border:0;min-width:0;flex:1;padding:.52rem 0;background:transparent;font-size:1rem;appearance:none}.search input:focus{outline:none}.search button,.solid,.entry button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;padding:.7rem 1.15rem;min-height:2.7rem;background:var(--pine);border:1px solid var(--pine);color:white;font-weight:600;text-decoration:none;line-height:1.3}.search button:hover,.solid:hover{background:#245340;color:white}.hero-browse{display:inline-block;margin-top:1rem;font-size:.86rem}.home-section{padding-top:clamp(2.5rem,4vw,4rem)}.section-title{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:1.5rem}.section-title .eyebrow{margin-bottom:.45rem}.section-title>a,.count{font-size:.8rem}.count{font-weight:500}.category-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:2.2rem;border-bottom:1px solid var(--line)}.category-row{display:flex;align-items:center;gap:1.05rem;border-top:1px solid var(--line);padding:1.25rem .2rem;text-decoration:none}.category-icon{height:2.7rem;width:2.7rem;display:grid;place-items:center;flex:none;background:var(--linen);color:var(--pine);border-radius:50%}.category-row:hover .category-icon{background:#e6e4d3;color:var(--rust)}.category-row strong,.company-row strong{display:block;font:500 clamp(1.2rem,1.7vw,1.55rem)/1.13 var(--serif);letter-spacing:-.03em}.category-row small,.company-row small{display:block;margin-top:.35rem;font-size:.78rem;line-height:1.35;color:var(--muted)}.picks,.catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:2rem}.picks{grid-template-columns:repeat(4,minmax(0,1fr))}.company-row{display:flex;align-items:center;gap:1rem;border-top:1px solid var(--line);padding:1.05rem 0;text-decoration:none}.company-row:hover strong,.category-row:hover strong{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.13em}.logo{display:grid;place-items:center;width:3.15rem;height:3.15rem;border:1px solid var(--line);flex:none;color:var(--ink);background:#fff;font:600 1.1rem var(--serif);overflow:hidden}.logo img{width:74%;height:74%;object-fit:contain}.editor-note{display:flex;align-items:flex-start;gap:1.5rem;padding:2rem;background:var(--linen);margin:2.5rem 0 4rem;border-left:3px solid var(--pine)}.editor-note>div{flex:1}.editor-note h2{font-size:1.8rem;margin-bottom:.4rem}.editor-note p{max-width:48rem}.editor-note>a{white-space:nowrap;font-size:.88rem}.editor-note>.icon{width:2rem;height:2rem}
footer{background:var(--pine);color:#e5e9d9;margin-top:1.5rem}footer a,footer .wordmark{color:#f5f2e6}footer a:hover{color:#edd3ad}footer .brand-mark rect{fill:#e8ead8}footer .brand-mark path[stroke]{stroke:var(--pine)}.foot-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:2.5rem;padding-block:3rem}.foot-grid p{color:#d1d7c9;font-size:.88rem;max-width:22rem;margin-top:.8rem}.foot-grid nav>a{display:block;width:fit-content;font-size:.88rem;margin-top:.45rem;text-decoration:none}.foot-grid nav>b{display:block;color:#c2cfc0;font:500 .69rem var(--mono);text-transform:uppercase;letter-spacing:.12em;margin-bottom:1rem}.foot-legal{display:flex;justify-content:space-between;border-top:1px solid #62776a;padding-block:1.1rem;font-size:.78rem;color:#d1d7c9}.foot-legal a{color:#e5e9d9}
.interior,.company{padding-top:clamp(2rem,4vw,4rem);padding-bottom:4rem}.heading{max-width:58rem;margin-bottom:2.5rem}.heading h1{max-width:56rem;margin:.55rem 0 1rem}.lead{font-size:clamp(1.05rem,1.65vw,1.35rem);max-width:52rem;color:#4c5f50}.search-tools{display:flex;align-items:flex-end;gap:1rem;margin:1.8rem 0}.search-tools .search{max-width:35rem}.select-filter,.field{display:flex;flex-direction:column;gap:.4rem;font-weight:600;font-size:.88rem}.select-filter select,.field input,.field select,.field textarea{background:var(--white);border:1px solid #8b9588;padding:.68rem .75rem;min-width:0;max-width:100%;border-radius:0;font-size:1rem;font-weight:400}.select-filter select{height:3.42rem}.list-meta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--ink);padding-block:1rem}.list-meta button,.admin-actions button,.moderation button{font:500 .88rem var(--sans);background:var(--white);border:1px solid var(--line);color:var(--ink);padding:.5rem .7rem;margin:.25rem .4rem .25rem 0}.crumb{display:flex;flex-wrap:wrap;gap:.7rem;color:var(--muted);align-items:center;font-size:.86rem;margin-bottom:1.8rem}.company-title{display:flex;gap:1.4rem;align-items:center;margin-bottom:1.8rem}.company-title h1{font-size:clamp(2.8rem,5vw,5.5rem)}.large.logo{width:clamp(4.3rem,7vw,6.5rem);height:clamp(4.3rem,7vw,6.5rem);font-size:1.9rem}.company-title .eyebrow{margin:0 0 .3rem}.domain-line,.number-meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;align-items:center;font-size:.88rem;color:var(--muted)}.domain-line{margin-top:.5rem}.domain-line span{padding-left:1rem;border-left:1px solid var(--line)}.ticket{display:grid;grid-template-columns:1.5fr 1fr;background:#fffdf6;color:var(--ink);border:1px solid #bdc6b5;border-top:3px solid var(--pine)}.ticket-main,.ticket-stub{padding:clamp(1.4rem,3vw,3rem)}.ticket-main h2,.ticket-stub h3{color:inherit;letter-spacing:-.025em}.ticket-main .eyebrow{color:var(--rust);font:600 clamp(.94rem,1.25vw,1.1rem)/1.45 var(--sans);letter-spacing:.02em;text-transform:none;margin-bottom:.65rem}.ticket .fine,.ticket-stub .source-note{color:var(--muted)}.ticket-main h2{font-size:clamp(1.5rem,2.1vw,2.15rem);margin:.3rem 0}.ticket-main>p:not(.eyebrow){margin:.8rem 0}.ticket .number{display:block;width:fit-content;font:500 clamp(2.3rem,4.5vw,4.9rem)/1.16 var(--serif);color:var(--ink);letter-spacing:-.045em;text-decoration:none;font-variant-numeric:lining-nums}.ticket .number:hover{text-decoration:underline;text-decoration-thickness:1px}.number-meta{color:#425548;margin:.45rem 0}.number-meta>span+span{border-left:1px solid #aebaaa;padding-left:1rem}.ticket .solid{background:var(--pine);border-color:var(--pine);color:white;margin-top:1rem}.ticket .solid:hover{background:#245340}.ticket-stub{background:#efefe3;border-left:1px dashed #a5af9c;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.ticket-stub h3{font-size:1.5rem;margin:0 0 .65rem}.ticket-stub p{font-size:.96rem;color:#3e5345}.ticket-stub .fine{font-size:.77rem}.ticket-stub a{color:var(--ink)}.source-note{display:flex;flex-wrap:wrap;gap:.4rem 1rem;color:var(--muted);font-size:.78rem;line-height:1.4;margin:.8rem 0 0}.ticket-stub .source-note{flex-direction:column;margin-bottom:.5rem}.company-body,.article-layout{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(13rem,1fr);gap:clamp(2rem,6vw,6.5rem);align-items:start}.company-body{margin-top:2.75rem}.chapter,.prose section{margin-bottom:2.4rem}.chapter>h2,.article-layout section>h2,.prose section h2,.paper-side h2{font-size:clamp(1.8rem,2.7vw,2.9rem);margin:0 0 1rem}.chapter>p,.prose p,.article-layout section>p,.write-review>p,.paper-side p{max-width:70ch;margin-bottom:.9rem}.chapter ul{padding-left:1.4rem;margin:1rem 0}.chapter li+li{margin-top:.45rem}.channel{display:grid;grid-template-columns:minmax(0,1fr) minmax(6rem,auto);align-items:center;gap:1rem;padding:1.1rem 0;border-top:1px solid var(--line)}.channel .eyebrow,.specialists .eyebrow{font-size:.66rem;margin:0 0 .25rem}.channel h3,.specialists h3,.side-index h3,.paper-side h3{font-size:1.35rem;line-height:1.2;margin:0 0 .4rem}.channel .fine,.fine,.quiet{color:var(--muted);font-size:.88rem}.small-number{font:600 1.05rem var(--sans);font-variant-numeric:tabular-nums}.channel-link,.route-link{font-size:.88rem}.side-index,.paper-side{padding:1.45rem 1.4rem;border-top:3px solid var(--pine);background:var(--linen)}.side-index nav a,.paper-side>a{display:block;padding:.45rem 0;font-size:.94rem}.side-index>div{border-top:1px solid #c3c9b8;padding-top:1rem;margin-top:1rem}.side-index p:not(.eyebrow),.side-index>div>a{font-size:.88rem}.side-index>div>a{display:inline-block;margin-top:.6rem}.route-list{display:flex;gap:.6rem;flex-wrap:wrap;margin:.75rem 0}.route-link{display:block;padding:.48rem .75rem;border:1px solid #a7b4a2;text-decoration:none}.specialists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.specialists article{border:1px solid var(--line);padding:1rem}.specialists p{font-size:.92rem;margin:.4rem 0}.sources a{word-break:break-word;font-size:.87rem}
.write-review{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:.8rem 0;margin-top:1rem}.write-review summary{font-weight:600}.write-review[open] summary{margin-bottom:.8rem}.field{margin-bottom:1rem}.field textarea{resize:vertical}.check{display:flex;align-items:flex-start;gap:.55rem;font-size:.88rem;margin:1.05rem 0}.check input{width:1.1rem;height:1.1rem;flex:none;accent-color:var(--pine)}.form-status:not(:empty){margin:.8rem 0;font-weight:550}.error{color:#8a291b}.two-fields,.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.entry,.write-review form{max-width:49rem}.entry .fine{margin:.65rem 0}.office-contact a{display:block}.paper-side h2{font-size:1.8rem}.paper-side h3{margin-top:1.4rem}.review,.moderation{padding:1rem;border:1px solid var(--line);margin:.6rem 0}.review>h3{margin:.5rem 0}.review>a{font-size:.86rem}.review .fine{margin:.6rem 0}.login{max-width:26rem}.admin-grid{margin:2rem 0}.article-layout{border-top:1px solid var(--ink);padding-top:2rem}.prose p{line-height:1.7}.article-layout .paper-side p{font-size:.93rem}.ticket-main,.company-title>div,.company-body>article,.article-layout>section,.entry,.article-layout>.prose,.category-row>span,.channel>div{min-width:0}
@media(max-width:920px){.hero{gap:2rem;grid-template-columns:1fr .9fr}.hero h1{font-size:clamp(3.8rem,8vw,5.2rem)}.hero-photo{height:clamp(21rem,38vw,25rem)}.picks,.catalog,.category-list{grid-template-columns:repeat(2,minmax(0,1fr))}.category-list,.catalog{column-gap:1.5rem}.company-body,.article-layout{gap:2rem}.channel{display:block}.channel>div+div{margin-top:.65rem}.company-row{gap:.75rem}.ticket{grid-template-columns:1.35fr 1fr}.foot-grid{grid-template-columns:1.5fr repeat(3,1fr);gap:1.5rem}}
@media(max-width:680px){.nav-wrap{flex-wrap:wrap;gap:0;align-items:center;min-height:auto;padding:.8rem 0 .45rem}.nav-wrap .brand{width:100%;margin-bottom:.4rem}.brand-mark{width:2rem;height:2rem}.nav-wrap nav{width:100%}.nav-wrap nav ul{justify-content:space-between;gap:.55rem}.nav-wrap nav a{font-size:.85rem}.hero{display:flex;flex-direction:column;align-items:stretch;gap:1.5rem;padding:2.3rem 0 1.65rem}.hero h1{font-size:clamp(3.65rem,12.1vw,5.2rem);margin:.9rem 0 1rem}.hero-lead{font-size:1.05rem}.hero .search{margin-top:1rem}.hero-photo{height:clamp(11rem,50vw,17.5rem)}.hero-photo img{object-position:52% 50%}.category-list,.catalog,.picks{column-gap:1rem}.category-row{padding:1rem 0;gap:.55rem}.category-icon{height:2.1rem;width:2.1rem}.category-icon .icon{width:1.13rem}.category-row strong,.company-row strong{font-size:1.17rem}.category-row small,.company-row small{font-size:.73rem}.count{font-size:.63rem}.section-title{margin-bottom:1rem}.picks .company-row{gap:.6rem}.picks .logo{width:2.45rem;height:2.45rem}.editor-note{display:block;padding:1.2rem;margin:1.5rem 0 2.5rem}.editor-note>.icon{display:none}.editor-note>a{display:inline-block;margin-top:.7rem}.foot-grid{grid-template-columns:1fr 1fr;row-gap:1.4rem}.foot-grid>div{grid-column:1/-1}.foot-grid p{max-width:none}.foot-legal{gap:1rem}.search-tools{display:block}.select-filter{margin-top:.8rem}.select-filter select{height:auto}.catalog{grid-template-columns:1fr}.company-body,.article-layout,.ticket,.specialists{display:block}.ticket-stub{border-left:0;border-top:1px dashed #819486}.ticket-stub .source-note{flex-direction:row}.ticket .number{font-size:clamp(2.04rem,10.9vw,4rem)}.company-title{gap:.8rem}.company-title h1{font-size:clamp(2.1rem,8vw,3.4rem)}.company-title .eyebrow{font-size:.62rem}.domain-line{font-size:.8rem}.side-index{margin-top:1.5rem}.paper-side{margin-top:1.8rem}.two-fields,.admin-grid{display:block}.specialists article+article{margin-top:.75rem}.article-layout{padding-top:1.5rem}.heading{margin-bottom:1.5rem}.hero-browse{margin-top:.7rem}.number-meta{font-size:.82rem}}
@media(max-width:420px){.nav-wrap nav ul{gap:.35rem}.nav-wrap nav a{white-space:nowrap;letter-spacing:-.025em;font-size:.8rem}.category-list{grid-template-columns:1fr}.category-row{gap:.9rem}.picks{grid-template-columns:1fr}.search{gap:.45rem;padding-left:.65rem}.search button{padding:.65rem .8rem}.section-title h2{font-size:2rem}.wordmark{font-size:1.55rem}.search input{font-size:1rem}.domain-line{row-gap:.2rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}
