@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#193e36;--muted:#667268;--paper:#faf8f1;--line:#dedfd3;--sage:#e8ecdf;--rust:#aa654a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--rust);outline-offset:4px}.wrap{width:min(1200px,calc(100% - 88px));margin:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:25px;letter-spacing:-1.1px;font-weight:600}.brandmark{font-size:42px;font-weight:400}.brand-sub{display:block;font-size:8px;letter-spacing:3.4px;margin-top:5px;font-weight:500}.header nav{display:flex;gap:30px;align-items:center;font-size:13px}.button{display:inline-flex;gap:24px;align-items:center;justify-content:center;border:1px solid var(--ink);padding:17px 23px;background:var(--ink);color:white;border-radius:5px;font-size:13px;font-weight:600;transition:background .15s,transform .15s}.button:hover{background:#2d5749;transform:translateY(-1px)}.button span{font-size:19px;font-weight:400}.button.small{padding:12px 17px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;padding-top:62px;padding-bottom:64px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;line-height:1.7;display:flex;align-items:center;gap:9px;margin:0 0 20px}.dot{display:inline-block;background:var(--rust);width:7px;height:7px;border-radius:50%;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400}h1{font-size:clamp(48px,5.8vw,77px);line-height:1.03;letter-spacing:-2px;margin-bottom:25px}h1 em,h2 em{font-weight:400;color:#64816a}h2{font-size:46px;line-height:1.08;letter-spacing:-1px;margin-bottom:18px}.intro{font-size:15px;line-height:1.85;max-width:420px;color:var(--muted);margin-bottom:28px}.hero-note{font-size:11px;color:var(--muted);margin:15px 0 0}.hero-art{position:relative;padding-bottom:27px}.hero-art svg{width:100%;display:block;border-radius:45% 45% 12px 12px}.art-label{position:absolute;bottom:0;left:22px;right:22px;background:#fffdf5;border:1px solid var(--line);box-shadow:0 8px 24px #203d3610;border-radius:7px;padding:20px;display:flex;align-items:center;gap:15px;font-family:Georgia,serif;font-size:18px}.label-icon{font-size:29px;color:var(--rust)}.art-label small{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:1.8px;margin-top:7px;color:var(--muted)}.values-strip{background:var(--sage);border-block:1px solid #dce2d2;padding:20px 0}.values-strip .wrap{display:flex;align-items:center;justify-content:space-around;gap:20px;font-size:11px;letter-spacing:.5px}.values-strip span:nth-child(even){color:#7c9376}.directory{padding:72px 0 64px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:12px}.section-heading>p{color:var(--muted);font-size:12px;line-height:1.8;margin-bottom:5px}.demo-notice{display:flex;align-items:center;gap:9px;color:#6b614d;font-size:11px;margin-bottom:18px;line-height:1.6}.search-panel{display:grid;grid-template-columns:1.25fr 1fr auto;padding:13px;background:white;border:1px solid var(--line);border-radius:7px;box-shadow:0 4px 20px #263e3505;gap:12px}.search-field{padding:8px 18px}.search-field:first-child{border-right:1px solid var(--line)}.search-field span{display:block;font-size:9px;font-weight:700;letter-spacing:1.4px;margin-bottom:9px}.search-field input{border:0;width:100%;color:var(--ink);background:transparent;padding:3px 0;font-size:14px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 25px}.chip{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:30px;padding:9px 16px;font-size:11px}.chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}.chip:hover{border-color:var(--ink)}.results-header{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-bottom:17px}.results-header p{margin:0;color:var(--muted)}.text-button{border:0;padding:5px 0;background:transparent;color:var(--ink);font-size:12px;text-decoration:underline;text-underline-offset:4px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);border-radius:7px;background:#fffef9;overflow:hidden;display:flex;flex-direction:column}.card-top{height:138px;position:relative;display:flex;align-items:center;justify-content:center;background:var(--card-bg);color:var(--card-ink)}.card-monogram{font-family:Georgia,serif;font-size:49px;letter-spacing:-3px;border:1px solid currentColor;border-radius:50%;width:83px;height:83px;display:grid;place-items:center;opacity:.8}.card-pattern{position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent,transparent 20px,#ffffff24 20px,#ffffff24 21px)}.example-tag{position:absolute;top:12px;right:12px;font-size:8px;background:#fffdf0dd;color:#485248;border-radius:3px;padding:5px 7px;letter-spacing:.8px}.card-body{padding:22px;display:flex;flex-direction:column;flex:1}.card-category{color:var(--rust);font-size:9px;letter-spacing:1.1px;font-weight:700;text-transform:uppercase;margin-bottom:11px}.card h3{font-family:Georgia,serif;font-size:21px;font-weight:400;margin-bottom:9px;letter-spacing:-.4px}.card-location{font-size:11px;color:var(--muted);margin-bottom:16px}.card-desc{font-size:12px;line-height:1.8;color:var(--muted);flex:1;margin-bottom:22px}.profile-button{padding:14px 0 0;display:flex;justify-content:space-between;width:100%;border:0;border-top:1px solid var(--line);background:none;color:var(--ink);font-size:12px;text-align:left}.profile-button:hover{color:var(--rust)}.empty{text-align:center;padding:60px 20px;border:1px dashed var(--line);border-radius:8px}.empty h3{font-family:Georgia,serif;font-weight:400;font-size:25px}.empty p{color:var(--muted)}.mission{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:55px 0 65px;border-top:1px solid var(--line)}.mission p:not(.eyebrow){line-height:1.9;color:var(--muted);font-size:14px}.text-link{font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:5px;display:inline-flex;gap:28px;margin-top:5px}.owner-section{padding-bottom:65px}.owner-inner{background:var(--ink);color:var(--paper);border-radius:8px;padding:47px 48px;display:flex;align-items:center;justify-content:space-between;gap:35px}.owner-inner .eyebrow{color:#c2d1bb;margin-bottom:12px}.owner-inner h2{font-size:40px}.owner-inner p:not(.eyebrow){color:#c4d1c7;line-height:1.8;font-size:13px;max-width:500px;margin:0}.button.light{background:var(--paper);color:var(--ink);flex-shrink:0}.button.light:hover{background:#e7ecdc}footer{padding:30px 0 40px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:22px}footer .brand{font-size:19px}footer .brandmark{font-size:28px}footer p,footer small{font-size:10px;color:var(--muted);margin:0}dialog{width:min(580px,calc(100% - 30px));max-height:90vh;padding:36px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--paper);overflow:auto}dialog::backdrop{background:#102d27aa;backdrop-filter:blur(3px)}dialog h2{font-size:38px}dialog .eyebrow{margin-right:25px}.close{position:absolute;top:12px;right:14px;background:transparent;border:0;font-size:28px;color:var(--ink);padding:2px 8px}.form-note,.local-note{font-size:12px;color:var(--muted);line-height:1.8}.local-note{font-size:10px;margin:14px 0 0}#listing-form label{display:block;font-size:12px;margin-bottom:16px}#listing-form input:not([type=checkbox]),select,textarea{display:block;width:100%;padding:12px;border:1px solid #cfd5c9;border-radius:4px;background:white;color:var(--ink);margin-top:7px;min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.checkbox{display:flex!important;gap:9px;align-items:flex-start;line-height:1.6}.checkbox input{margin:4px 0 0;accent-color:var(--ink)}#draft-success p{line-height:1.8;color:var(--muted);font-size:13px}#edit-draft{margin-left:18px}.profile-meta{background:var(--sage);padding:20px;border-radius:5px;margin:22px 0;font-size:13px;line-height:1.8}.profile-copy{color:var(--muted);line-height:1.85}.profile-disclaimer{font-size:12px;color:#80644d;border-left:3px solid var(--rust);padding-left:15px;line-height:1.8}[hidden]{display:none!important}@media(min-width:1500px){.hero{gap:90px}}@media(max-width:900px){.wrap{width:calc(100% - 44px)}.header nav{gap:18px}.header nav>a:nth-child(2){display:none}.hero{gap:30px;padding-top:45px}h1{font-size:55px}.cards{grid-template-columns:repeat(2,1fr)}.search-panel{grid-template-columns:1fr 1fr}.search-panel .button{grid-column:span 2}.mission{gap:35px}.owner-inner{padding:35px}.owner-inner h2{font-size:34px}footer{flex-wrap:wrap}.art-label{left:5px;right:5px;font-size:14px;padding:16px}.values-strip .wrap{font-size:10px;gap:10px}}@media(max-width:600px){.wrap{width:calc(100% - 36px)}.header{height:88px}.brand{font-size:20px;gap:7px}.brandmark{font-size:33px}.brand-sub{font-size:6px;letter-spacing:2.7px}.header nav>a{display:none}.header .button{font-size:10px;padding:10px;gap:8px}.hero{grid-template-columns:1fr;padding:35px 0 35px;gap:27px}.hero h1{font-size:60px;letter-spacing:-1.6px}.intro{font-size:14px}.hero-art{max-width:410px;width:100%;margin:auto}.hero-art svg{height:330px}.art-label{left:18px;right:18px}.values-strip .wrap{justify-content:center}.values-strip span:nth-child(n+4){display:none}.directory{padding:42px 0}.section-heading{align-items:start;flex-direction:column;gap:8px}.section-heading>p{display:none}h2{font-size:38px}.search-panel{grid-template-columns:1fr;gap:5px;padding:12px}.search-field:first-child{border-right:0;border-bottom:1px solid var(--line);padding-bottom:16px}.search-field{padding:10px}.search-panel .button{grid-column:auto;margin-top:8px}.filters{gap:7px}.chip{padding:9px 12px;font-size:10px}.cards{grid-template-columns:1fr;gap:18px}.card-top{height:125px}.card-body{padding:21px}.mission{grid-template-columns:1fr;gap:12px;padding:38px 0}.owner-section{padding-bottom:35px}.owner-inner{flex-direction:column;align-items:flex-start;padding:28px;gap:24px}.owner-inner h2{font-size:35px}footer{align-items:flex-start;flex-direction:column;gap:14px;padding:25px 0 35px}.form-row{grid-template-columns:1fr;gap:0}dialog{padding:30px 23px}dialog h2{font-size:33px}.demo-notice{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.form-error{padding:13px;border:1px solid #c89077;background:#fbede6;color:#833f2a;font-size:12px;line-height:1.7}.button:disabled{opacity:.55;cursor:wait;transform:none}.admin-wrap{padding-top:45px;padding-bottom:65px}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-counts{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.admin-counts span{background:var(--sage);padding:12px 18px;border-radius:5px;font-size:12px}.admin-list{display:grid;gap:18px}.admin-card{border:1px solid var(--line);border-radius:8px;padding:25px;background:#fffef9}.admin-card h3{font-family:Georgia,serif;font-size:25px;font-weight:400;margin-bottom:8px}.admin-card .details{font-size:12px;line-height:1.8;color:var(--muted)}.admin-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.status-tag{font-size:10px;padding:5px 9px;border-radius:20px;background:var(--sage);display:inline-block;text-transform:uppercase;letter-spacing:.5px}.admin-card label{display:block;font-size:12px;margin:15px 0}.admin-card input,.admin-card textarea,.admin-card select{display:block;width:100%;padding:10px;margin-top:6px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink)}.admin-card input[type=checkbox]{display:inline;width:auto;margin-right:9px}.admin-add{border:1px solid var(--line);padding:25px;border-radius:8px;margin:20px 0}.admin-add label{display:block;font-size:12px;margin:12px 0}.admin-add input,.admin-add textarea,.admin-add select{display:block;width:100%;padding:10px;margin-top:6px;border:1px solid var(--line);border-radius:4px}.admin-add input[type=checkbox]{display:inline;width:auto;margin-right:9px}.profile-contact{display:flex;gap:12px;flex-wrap:wrap}.public-policy{max-width:800px;line-height:1.9;padding-block:50px}.public-policy h3{font-family:Georgia,serif;font-weight:400;font-size:27px;margin-top:35px}.owner-gate{max-width:650px;margin:80px auto;padding:30px;line-height:1.8}.directory-contact{font-size:12px;color:var(--muted)}

/* Nationwide location search */
@media(min-width:901px){.search-panel{grid-template-columns:1.2fr 1fr 1fr auto}}.search-field select{border:0;background:transparent;padding:3px 0;margin:0;font-size:14px}.search-field{min-width:0}@media(min-width:601px) and (max-width:900px){.search-panel .button{grid-column:auto}}

/* Common Kingdom: a community broadside, inspired by early American craft. */
:root{--ink:#293e32;--muted:#706b59;--paper:#f3eddc;--line:#cfc3a5;--sage:#e3dfc8;--rust:#773b34}
body{background-color:var(--paper);background-image:radial-gradient(#735b3110 .55px,transparent .55px);background-size:5px 5px}
.header{height:118px;border-bottom:3px double var(--line)}.brand{font-family:Georgia,serif;font-variant:small-caps;font-size:27px;letter-spacing:.1px;gap:13px}.brandmark{display:block;color:var(--ink);flex-shrink:0}.brand-sub{font-family:'DM Sans',Arial,sans-serif;font-variant:normal;font-size:8px;letter-spacing:2.2px}.header nav{font-size:12px}
.button{background:var(--rust);border-color:var(--rust);border-radius:2px;box-shadow:inset 0 0 0 3px #ffffff0b}.button:hover{background:#62312b}.button.light{background:var(--paper);border-color:var(--paper)}.hero{grid-template-columns:1.06fr 1fr;gap:42px;padding-top:52px;padding-bottom:56px}.hero h1{font-size:clamp(51px,5.55vw,74px);line-height:1.05;letter-spacing:-1.7px}.hero h1 em{color:var(--rust)}.hero .eyebrow{letter-spacing:1.55px;font-size:9px}.hero .intro{max-width:455px;font-size:14px;line-height:1.95}.hero-note{font-family:Georgia,serif;font-style:italic;font-size:12px}.hero-art{padding-bottom:0;align-self:center}.engraving-frame img{width:100%;height:auto;display:block;mix-blend-mode:multiply}.art-label{position:static;background:transparent;border:0;box-shadow:none;border-radius:0;justify-content:center;text-align:center;padding:20px 4px 0;font-size:18px;gap:12px}.art-label small{font-size:8px;letter-spacing:2px;margin-top:8px}.label-icon{font-size:22px}.values-strip{background:#e4dfca;border-block:3px double var(--line)}.values-strip .wrap{font-family:Georgia,serif;font-size:13px;letter-spacing:.1px}.values-strip span:nth-child(even){color:var(--rust)}
.section-heading h2{font-size:48px}.directory{padding-top:62px}.search-panel{background:#faf6e9;border-radius:2px;box-shadow:0 3px 0 #b7a78222}.search-field input{background:transparent}.chip{border-radius:3px}.chip.active{background:var(--ink)}.demo-notice{color:#6e614b}.card{border-radius:2px;background:#fbf7ec}.card-top{background:#dedac2!important;color:#47573f!important;border-bottom:1px solid var(--line)}.card-pattern{background:repeating-linear-gradient(135deg,transparent,transparent 8px,#53644512 8px,#53644512 9px)}.card-monogram{border-radius:0;border:3px double currentColor;font-variant:small-caps;font-size:42px}.card h3{font-size:22px}.card-category{color:var(--rust)}.empty{background:#faf6e955;border-radius:2px}.mission{border-top:3px double var(--line);gap:70px;padding-top:57px}.mission h2 em{color:var(--rust)}.mission p:not(.eyebrow){line-height:1.95}.owner-inner{border-radius:2px;border:1px solid var(--ink);outline:1px solid #293e3280;outline-offset:5px;background:#293e32;padding:43px 46px}.owner-inner h2{font-size:40px}.owner-inner .eyebrow{letter-spacing:1.8px}.owner-inner p:not(.eyebrow){color:#e0ddc8}.owner-inner .button{color:var(--ink)}footer{border-top:3px double var(--line)}footer .brand{font-size:22px}dialog{background:#f5efde;border-radius:3px}dialog h2{color:var(--ink)}input,select,textarea{border-radius:2px!important}#listing-form input:not([type=checkbox]),select,textarea{background:#fffcf3;border-color:#cfc3a5}.profile-meta{border-radius:2px}.status-tag{border-radius:2px}
@media(max-width:900px){.hero{gap:28px}.hero h1{font-size:55px}.brand{font-size:24px}.hero .eyebrow{font-size:8px}.mission{gap:35px}.values-strip .wrap{font-size:11px}}
@media(max-width:600px){.header{height:94px}.header .brand{font-size:20px;gap:8px}.header .brandmark{width:32px;height:36px}.brand-sub{font-size:6px;letter-spacing:1.45px}.hero{grid-template-columns:1fr;padding:36px 0 38px;gap:28px}.hero h1{font-size:clamp(44px,11.6vw,61px);letter-spacing:-1.3px}.hero .eyebrow{font-size:8px;letter-spacing:1.25px}.hero .intro{font-size:14px}.hero-art{max-width:430px}.art-label{font-size:16px;padding-top:14px}.art-label small{font-size:7px}.values-strip .wrap{font-size:11px;flex-wrap:wrap;gap:9px 17px}.values-strip span:nth-child(n+4){display:inline}.values-strip span:nth-child(even){font-size:10px}.directory{padding-top:42px}.section-heading h2{font-size:39px}.mission{grid-template-columns:1fr;gap:12px;padding:38px 0}.owner-inner{padding:28px}.owner-inner h2{font-size:35px}footer .brand{font-size:21px}}

.directory-map{margin:0 0 32px;border:1px solid var(--line);background:#faf6e9;padding:24px}.map-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.map-heading .eyebrow{margin-bottom:8px;font-size:9px}.map-heading h3{font-family:Georgia,serif;font-weight:400;font-size:25px;margin-bottom:10px}.map-summary{color:var(--muted);font-size:12px;margin:0 0 16px}#business-map{height:420px;width:100%;background:#e2dfce;z-index:0;border:1px solid var(--line);font-family:'DM Sans',Arial,sans-serif}.map-note{font-size:11px;line-height:1.7;color:var(--muted);margin:12px 0 0}.business-pin{background:transparent;border:0}.business-pin span{display:grid;place-items:center;width:30px;height:30px;border:2px solid #f6eedb;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#773b34;color:#fff;box-shadow:0 2px 5px #0004;font-size:18px}.map-popup h3{font-family:Georgia,serif;font-size:19px;margin:6px 0}.map-popup p{font-size:12px;line-height:1.65;margin:8px 0 14px}.map-popup .card-category{font-size:9px}.map-popup .button{color:white}.leaflet-popup-content-wrapper{border-radius:3px;background:#faf6e9;color:var(--ink)}.leaflet-popup-tip{background:#faf6e9}.leaflet-control-attribution a{text-decoration:underline}.coordinate-tools{padding:16px;border:1px solid var(--line);margin-bottom:18px}.coordinate-tools p{font-size:12px;line-height:1.7}.coordinate-tools summary{cursor:pointer;font-size:13px}@media(max-width:600px){.directory-map{padding:16px}.map-heading{align-items:flex-start;flex-direction:column;gap:4px;margin-bottom:12px}.map-heading h3{font-size:23px}#business-map{height:330px}}

/* Parchment map palette; preserve pin colors and readable controls. */
#business-map{background:#e5dcc6}#business-map .leaflet-tile-pane{filter:grayscale(1) sepia(.38) saturate(.78) brightness(1.025)}#business-map .leaflet-bar{border:1px solid #a99c7d;box-shadow:0 2px 6px #493d2522}#business-map .leaflet-bar a{background:#faf4e5;color:#293e32;border-bottom-color:#cfc3a5}#business-map .leaflet-bar a:hover{background:#e8dfc9}#business-map .leaflet-control-attribution{background:#faf4e5e8;color:#635b48}#business-map .leaflet-control-attribution a{color:#293e32}

.view-count{font-size:11px;color:var(--muted);margin:0 0 12px;font-variant-numeric:tabular-nums}.profile-contact+.directory-contact+.view-count{margin:14px 0}dialog .view-count{margin:15px 0}
