@import"https://fonts.googleapis.com/css2?family=Bitter:wght@500;600;700;800&family=IBM+Plex+Mono:wght@400;500&family=Karla:wght@400;500;600;700&display=swap";:root{font-family:Karla,sans-serif;color:#302a24;background:#f6efdf;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}.shell{width:min(1120px,calc(100% - 48px));margin:0 auto}.hero{position:relative;min-height:480px;overflow:hidden;color:#fff9ed;background:#6c8e9d}.hero__texture{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(135deg,transparent 46%,#f8d875 47%,#f8d875 49%,transparent 50%),linear-gradient(25deg,transparent 55%,#d4e3df 56%,transparent 57%);background-size:78px 78px,120px 120px}.hero:after{content:"";position:absolute;inset:auto 0 0;height:110px;background:linear-gradient(transparent 30%,#2f261e40),repeating-linear-gradient(90deg,#3e4a47 0 20px,transparent 20px 34px);clip-path:polygon(0 58%,4% 58%,7% 45%,10% 55%,14% 20%,17% 55%,22% 55%,25% 32%,28% 56%,34% 56%,36% 10%,40% 57%,44% 57%,48% 42%,51% 57%,58% 57%,61% 25%,64% 57%,70% 57%,74% 40%,79% 57%,84% 57%,88% 30%,92% 57%,100% 57%,100% 100%,0 100%)}.nav{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding-top:26px}.wordmark{color:inherit;text-decoration:none;font:700 19px Bitter,serif;letter-spacing:.02em}.wordmark span{color:#f8d875}.outline-button,.solid-button{border:1px solid currentColor;padding:11px 16px;color:inherit;background:transparent;font-weight:700}.outline-button:hover{background:#ffffff1f}a.outline-button,a.solid-button{display:inline-block;text-decoration:none}.hero__content{position:relative;z-index:1;padding-top:94px}.eyebrow,.category{font:500 11px IBM Plex Mono,monospace;letter-spacing:.11em;text-transform:uppercase}.hero h1,h2,h3{font-family:Bitter,serif}.hero h1{max-width:680px;margin:8px 0 2px;font-size:clamp(58px,11vw,122px);line-height:.94;letter-spacing:-.04em}.tagline{margin:24px 0;font-size:22px}.awning{position:absolute;z-index:2;bottom:-1px;width:100%;height:42px;background:#f6efdf;clip-path:polygon(0 0,5% 0,10% 100%,15% 0,20% 100%,25% 0,30% 100%,35% 0,40% 100%,45% 0,50% 100%,55% 0,60% 100%,65% 0,70% 100%,75% 0,80% 100%,85% 0,90% 100%,95% 0,100% 0,100% 100%,0 100%)}.directory{padding:82px 0 106px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.section-heading h2,.submit-band h2{margin:7px 0 0;font-size:clamp(32px,5vw,55px);line-height:1.02;letter-spacing:-.035em}.section-heading .eyebrow{color:#b84f3d}.view-toggle{display:flex;border:1px solid #cfc2ac;padding:3px}.view-toggle button{border:0;padding:8px 15px;color:#766b5e;background:transparent}.view-toggle button.active{color:#fff9ed;background:#302a24}.directory__disclaimer{margin:24px 0 0;max-width:62ch;padding-left:13px;border-left:2px solid #e0c68a;color:#766b5e;font-size:13.5px;line-height:1.55}.controls{display:grid;gap:18px;margin:32px 0 42px}.search-field{display:flex;align-items:center;gap:12px;border-bottom:2px solid #302a24;padding:10px 0;font-size:27px}.search-field input{width:100%;border:0;outline:0;color:#302a24;background:transparent;font-size:18px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid #cfc2ac;border-radius:999px;padding:8px 14px;color:#766b5e;background:transparent}.chip.active{border-color:#b84f3d;color:#fff9ed;background:#b84f3d}.empty-state{display:grid;justify-items:center;border-top:1px solid #d7cbb9;border-bottom:1px solid #d7cbb9;padding:75px 20px;text-align:center}.empty-state__mark{display:grid;place-items:center;width:58px;height:58px;color:#b84f3d;border:2px solid #b84f3d;border-radius:50%;font:500 13px IBM Plex Mono,monospace}.empty-state h3{margin:20px 0 8px;font-size:28px}.empty-state p,.submit-band p{max-width:410px;margin:0 0 24px;color:#766b5e;font-size:17px;line-height:1.5}.solid-button{border:0;color:#fff9ed;background:#b84f3d}.solid-button:hover{background:#963c2e}.business-map{display:grid;gap:14px}.business-map__canvas{height:460px;border:1px solid #302a24}.business-map__legend{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none}.business-map__legend li{display:flex;align-items:center;gap:7px;color:#766b5e;font:500 12px IBM Plex Mono,monospace}.business-map__swatch{width:11px;height:11px;border:1px solid rgba(48,42,36,.25);border-radius:50%}.map-marker{width:18px;height:18px;padding:0;border:2px solid #fff9ed;border-radius:50% 50% 50% 0;background:var(--marker-color, #b84f3d);box-shadow:0 2px 6px #302a2466;transform:rotate(-45deg);cursor:pointer}.map-marker:focus-visible{outline:2px solid #302a24;outline-offset:2px}.map-hovercard{position:fixed;z-index:90;width:240px;pointer-events:none;filter:drop-shadow(0 8px 22px rgba(48,42,36,.3))}.map-hovercard--above{transform:translate(-50%,-100%)}.map-hovercard--below{transform:translate(-50%)}.map-placeholder{display:grid;justify-items:center;min-height:390px;place-content:center;border:1px solid #d7cbb9;background:repeating-linear-gradient(125deg,#e9dec9 0 2px,#f1e7d6 2px 42px);text-align:center}.map-pin{display:grid;place-items:center;width:42px;height:42px;margin-bottom:13px;border-radius:50% 50% 50% 0;color:#fff9ed;background:#b84f3d;transform:rotate(-45deg)}.map-pin+strong,.map-placeholder p{transform:none}.map-placeholder p{margin:8px 0 0;color:#766b5e}.results-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;margin-bottom:20px}.results-bar__count{margin:0;color:#766b5e;font:500 12px IBM Plex Mono,monospace;letter-spacing:.03em}.results-bar__count a,.modal__correction a{color:#b84f3d}.results-bar__per-page{display:flex;align-items:center;gap:8px;color:#766b5e;font:500 11px IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase}.results-bar__per-page select{border:1px solid #cfc2ac;padding:5px 8px;color:#302a24;background:#fff9ed;font:500 12px IBM Plex Mono,monospace}.pager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:34px;font:500 12px IBM Plex Mono,monospace;color:#766b5e}.pager button{border:1px solid #302a24;padding:9px 16px;color:#302a24;background:transparent;font:inherit}.pager button:hover:not(:disabled){color:#fff9ed;background:#302a24}.pager button:disabled{border-color:#cfc2ac;color:#b3a68c;cursor:not-allowed}.modal__correction{margin:16px 0 0;padding-top:14px;border-top:1px solid #d7cbb9;font:12px IBM Plex Mono,monospace;color:#9a8d78}.directory.shell{display:grid;grid-template-columns:216px minmax(0,1fr);gap:46px;align-items:start}.directory__aside{position:sticky;top:24px}.coming-soon{border:1px solid #d7cbb9;background:#fbf4e6;padding:20px}.coming-soon .eyebrow{margin:0 0 15px;color:#b84f3d}.coming-soon ul{list-style:none;margin:0;padding:0;display:grid;gap:15px}.coming-soon li{display:grid;gap:3px;padding-bottom:14px;border-bottom:1px dashed #d7cbb9}.coming-soon li:last-child{padding-bottom:0;border-bottom:0}.coming-soon__name{font:600 15px Bitter,serif;letter-spacing:-.01em;color:#302a24}.coming-soon__hint{font-size:12.5px;line-height:1.45;color:#766b5e}.coming-soon__link{color:#b84f3d;text-decoration:none}.coming-soon__link:hover{text-decoration:underline}.directory.shell.makers-directory{display:block}@media(max-width:900px){.directory.shell{grid-template-columns:1fr;gap:0}.directory__aside{position:static;order:2;margin-top:60px}.coming-soon ul{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px 22px}.coming-soon li{border-bottom:0;padding-bottom:0}}.business-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}.business-card{display:flex;flex-direction:column;border:1px solid #d7cbb9;background:#fff9ed}.business-card__photo{display:grid;place-items:center;aspect-ratio:3 / 2;border-bottom:1px solid #d7cbb9;overflow:hidden}img.business-logo{width:100%;height:100%;object-fit:cover}span.business-logo{display:grid;place-items:center;width:100%;height:100%;background:color-mix(in srgb,var(--logo-color, #b84f3d) 15%,#fff9ed);color:var(--logo-color, #b84f3d);font-family:Bitter,Georgia,serif;font-weight:700;letter-spacing:.04em;-webkit-user-select:none;user-select:none}.business-card--grid .business-logo{font-size:40px}.business-card--map .business-logo{font-size:26px}.business-card__body{display:flex;flex-direction:column;gap:6px;padding:18px}.business-card__body .category{display:flex;align-items:center;gap:7px;color:#302a24}.business-card__body .category:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--category-color, #b84f3d)}.business-card__body h3{margin:2px 0 0;font-size:20px;letter-spacing:-.02em}.business-card__body p{margin:0;color:#766b5e;font-size:14px;line-height:1.45}.business-card__body a{color:#302a24;font:500 13px IBM Plex Mono,monospace}.business-card__body>a:first-of-type{margin-top:4px}.business-card__muted{margin-top:4px;color:#9a8d78;font:500 13px IBM Plex Mono,monospace}.business-card__when{color:#b84f3d!important;font:500 13px IBM Plex Mono,monospace}.business-card__website{display:inline-flex;align-items:center;gap:5px;color:#b84f3d!important;text-decoration:none}.business-card__website:hover{text-decoration:underline}.business-card--map{width:240px;border-color:#302a24;background:#fff9ed}.business-card--map .business-card__photo{aspect-ratio:16 / 9}.business-card--map .business-card__body{gap:5px;padding:14px}.business-card--map h3{font-size:17px}.business-card{position:relative}.business-card__hit{position:absolute;inset:0;z-index:1;width:100%;height:100%;border:0;background:transparent;cursor:pointer}.business-card__hit:focus-visible{outline:2px solid #b84f3d;outline-offset:-2px}.business-card__body a{position:relative;z-index:2}.business-card:hover{box-shadow:4px 4px #302a241f}.business-card--featured{border-color:#b98a12;box-shadow:4px 4px #b98a122e}.business-card__ribbon{position:absolute;top:0;right:0;z-index:2;padding:4px 10px;font:600 10px IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;background:#b98a12;color:#fff9ed}.featured-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}.featured-list li{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #d7cbb9;background:#fff9ed;padding:12px 14px}.featured-list__label{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.featured-list__label strong{font-family:Bitter,serif;font-size:15px}.error-screen{display:grid;place-items:center;min-height:100vh;padding:24px;text-align:center;background:#f6efdf}.error-screen h1{font-family:Bitter,Georgia,serif;font-size:clamp(26px,5vw,38px);letter-spacing:-.03em;margin:10px 0 8px}.error-screen p{color:#766b5e;margin:0 0 20px}.error-screen .solid-button{padding:11px 20px}.page-shell{width:min(620px,calc(100% - 48px));margin:56px auto 96px}.page-shell--wide{width:min(820px,calc(100% - 48px))}.page-shell h1{font-family:Bitter,serif;font-size:clamp(30px,5vw,44px);letter-spacing:-.03em;margin:12px 0 6px}.page-note{color:#766b5e;font-size:15px;line-height:1.5}.back-link,.link-button{color:#b84f3d;background:none;border:0;padding:0;font:500 13px IBM Plex Mono,monospace;text-decoration:none;cursor:pointer}.back-link:hover,.link-button:hover{text-decoration:underline}.manage-head{display:flex;justify-content:space-between;align-items:center}.stack-form{display:grid;gap:14px;margin-top:20px}.stack-form label{display:grid;gap:6px;font:500 12px IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase;color:#766b5e}.stack-form input,.stack-form textarea{border:1px solid #cfc2ac;padding:12px;font-family:Karla,sans-serif;font-size:15px;color:#302a24;background:#fff9ed;outline:0}.stack-form input:focus,.stack-form textarea:focus{border-color:#b84f3d}.stack-form textarea{min-height:88px;resize:vertical}.form-error{color:#963c2e;font-size:14px;margin:4px 0 0}.field-hint{font:400 12px Karla,sans-serif;letter-spacing:0;text-transform:none;color:#9a8d78}.form-notice{margin:14px 0 0;padding:12px 14px;border-left:3px solid #e0c68a;background:color-mix(in srgb,#e0c68a 12%,#fff9ed);font-size:14px;line-height:1.5;color:#6b5f49}.form-notice strong{color:#302a24}.stack-form__legend{display:block;margin-bottom:6px;font:500 12px IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase;color:#766b5e}.location-picker__canvas{height:300px;border:1px solid #cfc2ac}.location-picker .field-hint{margin:6px 0 0}.panel{border:1px solid #d7cbb9;background:#fbf4e6;padding:24px;margin-top:22px}.panel h2{font-family:Bitter,serif;font-size:24px;margin:0 0 4px}.panel h3{font-family:Bitter,serif;font-size:18px;margin:0 0 4px}.editor{display:grid;gap:4px}.status-list,.review-list,.pick-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}.status-list li{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed #d7cbb9;padding-bottom:8px}.pill{font:500 10px IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:999px}.pill--pending{background:#f8d875;color:#5b4a12}.pill--approved{background:#6b7a4f;color:#fff9ed}.pill--rejected{background:#b84f3d;color:#fff9ed}.pick-list button{display:grid;gap:3px;width:100%;text-align:left;border:1px solid #cfc2ac;background:#fff9ed;padding:12px 14px;cursor:pointer}.pick-list button.is-picked{border-color:#b84f3d;box-shadow:inset 0 0 0 1px #b84f3d}.pick-list strong{font-family:Bitter,serif}.pick-list span{color:#766b5e;font:12px IBM Plex Mono,monospace}.review-list li{display:flex;justify-content:space-between;gap:20px;border:1px solid #d7cbb9;background:#fff9ed;padding:16px}.review-list strong{font-family:Bitter,serif;font-size:17px;display:block}.review-list span{color:#766b5e;font:12px IBM Plex Mono,monospace}.review-list p{margin:6px 0 0;font-size:14px;color:#302a24}.review-list__actions{display:flex;flex-direction:column;gap:8px;align-items:flex-end;flex-shrink:0}.review-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.review-thumbs figure{margin:0;width:76px}.review-thumbs img{width:76px;height:76px;object-fit:cover;border:1px solid #d7cbb9}.review-thumbs figcaption{font:10px IBM Plex Mono,monospace;color:#766b5e;text-align:center}.uploader{margin-top:20px}.uploader__head{display:flex;justify-content:space-between;align-items:baseline}.uploader__count{font:500 11px IBM Plex Mono,monospace;color:#766b5e}.uploader__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin-top:10px}.uploader__item{position:relative;margin:0;border:1px solid #d7cbb9}.uploader__item img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.uploader__item.is-removed img{opacity:.35}.uploader__item.is-new{border-color:#6b7a4f}.uploader__item button{position:absolute;left:0;right:0;bottom:0;border:0;padding:5px;font:500 10px IBM Plex Mono,monospace;text-transform:uppercase;color:#fff9ed;background:#302a24b8;cursor:pointer}.uploader__add{aspect-ratio:1;border:1px dashed #b3a58c;background:#fff9ed;color:#766b5e;font:500 12px IBM Plex Mono,monospace;cursor:pointer}.uploader__hint{margin:8px 0 0;font:11px IBM Plex Mono,monospace;color:#9a8d78}.logo-uploader{display:flex;gap:16px;align-items:center;margin-top:10px}.logo-uploader__preview{width:92px;height:92px;display:grid;place-items:center;border:1px solid #d7cbb9;background:#fff9ed;overflow:hidden}.logo-uploader__preview img{width:100%;height:100%;object-fit:cover}.logo-uploader__preview span{font:10px IBM Plex Mono,monospace;color:#9a8d78}.logo-uploader__actions{display:grid;gap:8px}.outline-button--dark{border:1px solid #302a24;background:transparent;color:#302a24;padding:10px 14px;font:700 13px Karla,sans-serif;cursor:pointer}.nav__links{display:flex;align-items:center;gap:18px}.nav__link{color:inherit;text-decoration:none;font:500 13px IBM Plex Mono,monospace}.nav__link:hover{text-decoration:underline}.modal-overlay{position:fixed;inset:0;z-index:60;display:flex;justify-content:center;align-items:flex-start;padding:40px 16px;overflow-y:auto;background:#302a248c}.modal{position:relative;width:min(640px,100%);border:1px solid #302a24;background:#f6efdf}.modal__close{position:absolute;top:12px;right:12px;z-index:2;width:32px;height:32px;border:0;border-radius:50%;color:#f6efdf;background:#302a24;cursor:pointer}.modal__hero{display:grid;place-items:center;aspect-ratio:16 / 9;border-bottom:1px solid #302a24;overflow:hidden}.modal__hero .business-logo{font-size:62px}.modal__body{display:grid;gap:10px;padding:24px}.modal__categories{display:flex;flex-wrap:wrap;gap:8px 14px}.modal__categories .category{display:flex;align-items:center;gap:7px;color:#302a24}.modal__categories .category:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--category-color, #b84f3d)}.modal__body h2{font-family:Bitter,serif;font-size:30px;letter-spacing:-.03em;margin:2px 0 0}.modal__address{margin:0;color:#766b5e;font:13px IBM Plex Mono,monospace}.modal__when{margin:4px 0 0;font:500 13px IBM Plex Mono,monospace;color:#b84f3d}.modal__description{margin:6px 0 0;line-height:1.55}.modal__meta{display:flex;flex-wrap:wrap;gap:16px;margin-top:4px;font:500 13px IBM Plex Mono,monospace}.modal__meta a{color:#302a24}.modal__hours{margin-top:8px}.modal__hours h3,.modal__gallery h3{font-family:Bitter,serif;font-size:16px;margin:0 0 6px}.modal__hours dl{margin:0;display:grid;gap:2px}.modal__hours dl>div{display:flex;justify-content:space-between;font:13px IBM Plex Mono,monospace;border-bottom:1px dashed #d7cbb9;padding:4px 0}.modal__hours dt{color:#766b5e}.modal__thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}.modal__thumbs button{padding:0;border:1px solid #d7cbb9;background:none;cursor:pointer}.modal__thumbs img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.lightbox{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:32px;background:#181410d9}.lightbox img{max-width:100%;max-height:100%;border:1px solid #302a24}.submit-band{padding:76px 0;color:#f6efdf;background:#302a24}.submit-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.submit-band .eyebrow{color:#f8d875}.submit-band h2{color:#fff9ed}.submit-band p{color:#cfc2ac}.submit-form{display:grid;gap:12px}.submit-form input,.submit-form textarea{border:1px solid #766b5e;padding:14px;color:#fff9ed;background:transparent;outline:0;font:inherit}.submit-form textarea{resize:vertical;min-height:62px;font-family:Karla,sans-serif}.submit-form input:focus,.submit-form textarea:focus{border-color:#f8d875}.submit-form .solid-button{justify-self:start;margin-top:8px;color:#302a24;background:#f8d875}.submit-form .form-error{margin:0;color:#f0a58f;font-size:14px}.submit-band a.solid-button{display:inline-block;justify-self:start;align-self:center;text-decoration:none;color:#302a24;background:#f8d875}.submit-band a.solid-button:hover{background:#f0c948}.submit-fallback{margin:0;color:#cfc2ac;font-size:15px;line-height:1.6}.submit-fallback a{color:#f8d875}.submit-sent{border-left:2px solid #f8d875;padding-left:16px}.submit-sent .eyebrow{color:#f8d875;margin:0 0 6px}.submit-sent p:last-child{margin:0;color:#e7ddc8;font-size:15px;line-height:1.6}.footer{display:flex;justify-content:space-between;gap:20px;padding:27px 0;color:#766b5e;font:12px IBM Plex Mono,monospace}.footer .wordmark{color:#302a24;font-size:16px}@media(max-width:700px){.shell{width:min(100% - 32px,1120px)}.hero{min-height:430px}.hero__content{padding-top:84px}.outline-button{padding:9px;font-size:12px}.submit-layout{grid-template-columns:1fr;gap:30px}.footer{display:grid}.section-heading{align-items:start;flex-direction:column}.view-toggle{align-self:stretch}.view-toggle button{flex:1}}
