.street-scene{padding:44px max(18px,4vw);background:linear-gradient(#edf0dfab,#fff0d9e8),url('cottage-garden-frame.png') center top/cover fixed}.street-paper{max-width:1240px;margin:0 auto 28px;padding:32px;background:#fff5dfef;border:4px double #a47d3c;border-radius:22px 7px;box-shadow:0 7px 22px #253c2a24}.street-paper>h1,.street-paper>.eyebrow{text-align:center}.street-paper>p{max-width:800px;margin:18px auto}.street-signs{gap:10px;margin:26px 0 0}.street-signs a{padding:11px 16px;border:1px solid #997639;border-radius:18px 4px;background:#e8ead7;color:#173f31;font-size:15px;line-height:1.4}.street-signs [aria-current]{background:#214c3b;color:#fff3d5;box-shadow:inset 0 0 0 3px #a38b54}.street-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1240px;margin:auto}.street-card{width:100%;padding:22px;position:relative}.street-sign{padding:18px 8px;background:linear-gradient(105deg,#eadab2,#fff5dc,#dfc38b);border:4px double #987438;border-radius:38% 6px / 14px 6px;text-align:center;box-shadow:0 3px 0 #654d2870}.street-sign h2{font-size:25px;margin:0;line-height:1.25}.street-sign a{text-decoration:none}.street-count{font-size:14px;color:#66542d}.street-note{border-top:3px double #b28c4a;padding-top:16px;font-size:14px}.street-shop{margin:20px 0;padding-top:15px;border-top:1px solid #c8b484}.town-plaque{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:156px;padding:8px 24px;color:#392710;background:linear-gradient(120deg,#826024,#dec78e 25%,#fff1bf 49%,#c49a4f 75%,#805e27);border:5px double #715021;border-radius:48% 48% 42% 42% / 24% 24% 20% 20%;box-shadow:0 3px 6px #30251450,inset 0 0 0 2px #ead49d;text-align:center;text-decoration:none;margin:12px 0}.town-plaque strong{font-size:32px;letter-spacing:3px;line-height:1.15}.town-plaque span{font-size:13px;line-height:1.3}.town-plaque span[aria-hidden]{font-size:19px}.cottage-workspace{display:grid;grid-template-columns:minmax(260px,370px) minmax(0,1fr);gap:28px;align-items:start}.cottage-preview{padding:24px;background:#fff3dc;border:4px double #ad884d;border-radius:15px;min-width:0}.cottage-preview img{width:100%;height:auto;border-radius:12px}.cottage-preview h2{overflow-wrap:anywhere}.store-with-categories{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px}.store-categories{display:block;background:#edf0df;border:3px double #ac894c;padding:20px;align-self:start}.store-categories a{display:block;border-bottom:1px solid #c4b184;padding:12px 0}.inbox-message{margin:18px 0;overflow-wrap:anywhere}.inbox-message time{font-size:13px}.town-rules{max-width:800px}.town-skip{position:absolute;top:-100px;left:12px;background:#fff3d8;padding:12px;z-index:10}.town-skip:focus{top:10px}.cottage-location select:disabled{color:#18392c;opacity:1}.street-paper a:focus-visible{outline-offset:4px}@media(max-width:1000px){.street-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.street-grid,.cottage-workspace,.store-with-categories{grid-template-columns:1fr}.street-paper{padding:22px 18px}.street-scene{background-attachment:scroll;padding:22px 14px}.street-signs{display:grid;grid-template-columns:1fr 1fr;font-size:13px;gap:8px}.street-signs a{padding:10px;font-size:14px}.street-signs a:first-child{grid-column:1/-1}.store-categories{display:flex;flex-wrap:wrap;gap:10px}.store-categories h2{width:100%}.store-categories a{padding:8px}.cottage-preview{padding:15px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Reference artwork supplies the lanterns, roses, scenery and ornamental frames.
   Every street label and description is real HTML from the approved registry. */
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.illustrated-directory{max-width:1536px;margin:auto;padding:0 1.8% 24px;background:#f8ebce}
.directory-welcome{aspect-ratio:1024/318;margin:0 -1.87%;background:url('street-directory-reference.png') center top/100% auto no-repeat}
.directory-navigation{max-width:1240px;margin:5px auto 14px;padding:8px 14px;text-align:center;color:#173f31;border-block:3px double #b18a46;background:#fff5de}
.directory-navigation summary{cursor:pointer;font-size:15px;min-height:28px;align-content:center}
.illustrated-directory .street-grid{gap:9px 10px;max-width:none;align-items:start}
.illustrated-directory .street-card{border:0;border-radius:0;box-shadow:none;padding:0;margin:0;background:transparent;overflow:hidden}
.illustrated-street-face{position:relative;display:block;aspect-ratio:324/184;background-image:url('street-directory-reference.png');background-size:316.049383% 834.782609%;background-position:var(--art-x) var(--art-y);text-decoration:none;color:#23180e;isolation:isolate}
.illustrated-street-face .street-sign{position:absolute;inset:4.5% 5% auto 15%;height:19%;border:3px double #d4ad5e;border-radius:22px 4px 18px 4px;box-shadow:inset 0 0 7px #050e0a;display:flex;align-items:center;padding:0 2% 0 13%;background:linear-gradient(95deg,#102f26,#244839,#102d23);color:#fff7da;text-shadow:0 1px 1px #000}
.illustrated-street-face.wine-sign .street-sign{background:linear-gradient(95deg,#5f1420,#853333,#52161c)}
.illustrated-street-face .street-sign h2{font-size:clamp(14px,1.65vw,25px);font-weight:normal;line-height:1.05;margin:0;text-align:center;width:100%;white-space:nowrap}
.street-medallion{position:absolute;left:-3%;top:-10%;height:120%;aspect-ratio:1;border:4px double #ddbf75;border-radius:50%;display:grid;place-items:center;font-size:clamp(18px,2.2vw,31px);background:#15372a;box-shadow:0 1px 3px #372814;color:#fff1c8}
.wine-sign .street-medallion{background:#6f232b}
.illustrated-street-face .street-description{position:absolute;left:5.1%;right:5.1%;top:65.8%;bottom:4%;margin:0;padding:1.3% 1.4% 0;background:linear-gradient(100deg,#fae9c9,#fff2da 50%,#f5e3c1);font-size:clamp(12px,1.2vw,18px);line-height:1.15;text-align:center;display:flex;align-items:center;justify-content:center;overflow:hidden}
.illustrated-street-face:hover{filter:brightness(1.04)}
.illustrated-street-face:focus-visible{outline:4px solid #702b36;outline-offset:-5px}
.street-detail{background:#fff4dc;border:3px double #b38e4f;padding:18px;margin:6px 4px 15px}
.directory-ribbon{text-align:center;padding:17px 12px;margin:10px auto;font-style:italic;font-size:clamp(17px,2.4vw,32px);border:4px double #b48c45;color:#652b2c;background:#fff0d0;border-radius:30px 5px}.directory-ribbon span{color:#a57729;padding:0 9px}
.directory-addresses{text-align:center;margin:18px auto 0}
@media(min-width:1500px){.illustrated-street-face .street-sign h2{font-size:25px}}
@media(max-width:1000px) and (min-width:701px){.illustrated-directory .street-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.illustrated-street-face .street-sign h2{font-size:1.65vw}.illustrated-street-face .street-description{font-size:1.22vw}}
@media(max-width:700px){.illustrated-directory{padding:0 10px 20px}.directory-welcome{margin:0 -10px;min-height:160px;background-size:auto 100%;background-position:center top;aspect-ratio:1024/318}.illustrated-directory .street-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.illustrated-street-face .street-sign h2{font-size:2.45vw}.illustrated-street-face .street-description{font-size:1.85vw}.street-medallion{border-width:3px;font-size:3vw}.illustrated-street-face .street-sign{border-width:2px}.directory-ribbon{font-size:18px}}
@media(max-width:480px){.illustrated-directory .street-grid{grid-template-columns:1fr;max-width:430px;margin:auto}.illustrated-street-face .street-sign h2{font-size:4.6vw}.illustrated-street-face .street-description{font-size:3.55vw}.street-medallion{font-size:6vw}.directory-welcome{min-height:145px}.directory-ribbon span{padding:0 3px}.directory-ribbon{font-size:16px}}
@media(max-width:700px){.directory-welcome{background-size:auto 483%;min-height:160px}}@media(max-width:480px){.directory-welcome{min-height:145px}}
@media(max-width:700px){.directory-welcome{width:calc(100% + 20px);height:clamp(145px,31vw,218px);aspect-ratio:auto;min-height:0}}
body:has(.reference-directory)>header,body:has(.reference-directory)>.topline,body:has(.reference-blessing)>header,body:has(.reference-blessing)>.topline{display:none}.reference-directory,.reference-blessing{background:#fff0d0}.reference-directory-art{position:relative}.reference-directory-art>img{display:block;width:100%;height:auto}.reference-page-nav{position:absolute;left:17%;right:3%;top:0;height:9.6%;display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:0}.reference-page-nav a{min-width:0;padding:0}.reference-street-hits{position:absolute;top:37.3%;bottom:10.8%;left:1%;right:1%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:1%}.reference-street-hits a{padding:0}.reference-phone-streets,.reference-mobile-main{display:none}.blessing-hero{position:relative;aspect-ratio:1536/460;background:url('approved-blessing-reference.png') center top/100% auto no-repeat}.blessing-hero .reference-page-nav{height:22%}.blessing-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:18px;padding:8px 14px 30px}.blessing-categories{border:4px double #ac8137;border-radius:15px;background:#fff1d5 url('registration-garden.svg') center bottom/cover no-repeat;padding:16px}.blessing-categories h2{font-size:25px}.blessing-categories nav{display:block;min-width:0}.blessing-categories nav a{display:block;padding:13px 10px;border-bottom:1px solid #cfb57f;text-decoration:none}.blessing-categories [aria-current]{background:#153b2c;color:#fff2cf;border-radius:5px}.blessing-categories>p{font-style:italic;text-align:center;padding:30px 0;font-size:20px}.blessing-toolbar{display:flex;gap:18px;justify-content:space-between;align-items:center;border:3px double #c9a660;border-radius:12px;padding:8px 12px;background:#fff7e8}.blessing-toolbar nav{justify-content:flex-start;flex:1;min-width:0;gap:8px;font-size:13px}.blessing-toolbar form{display:flex;gap:8px;align-items:end}.blessing-toolbar label{margin:0;font-size:13px}.blessing-toolbar select{padding:7px;font-size:14px}.blessing-toolbar button{padding:8px 10px}.blessing-intro{padding:8px 12px}.blessing-shop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.blessing-shop-card,.blessing-empty{background:linear-gradient(110deg,#fff7e8,#f9e5bd);border:5px double #aa7c31;border-radius:15px;padding:18px;text-align:center}.blessing-shop-card img{width:100%;height:180px;object-fit:cover}.blessing-shop-card h2{font-size:24px}.blessing-planning{margin:22px 0;padding:15px;border:2px solid #b08a49}.blessing-planning summary{cursor:pointer}.blessing-empty{padding:40px 25px}.blessing-empty p{max-width:680px;margin:15px auto}.reference-directory a:focus-visible,.reference-blessing a:focus-visible{outline:3px solid #9f3850;outline-offset:1px}@media(max-width:1050px){.blessing-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blessing-layout{grid-template-columns:220px minmax(0,1fr)}.blessing-toolbar{flex-wrap:wrap}}
@media(max-width:700px){.reference-street-hits,.reference-page-nav{display:none}.reference-phone-streets{display:grid;grid-template-columns:1fr 1fr;padding:12px;gap:12px}.reference-phone-streets>a{display:block;border:4px double #b58c40;background:#fff3dc;border-radius:10px;overflow:hidden;text-align:center;text-decoration:none}.reference-street-thumb{display:block;aspect-ratio:244/168;background:url('approved-streets-reference.png');background-size:629.5082% 609.5238%;background-position:var(--tile-x) var(--tile-y)}.reference-phone-streets strong{display:block;padding:7px;font-size:16px}.reference-phone-streets>a>span:last-child{display:block;padding:0 8px 8px;font-size:14px}.blessing-layout{grid-template-columns:1fr;padding:10px}.blessing-categories{padding:12px}.blessing-categories nav{display:flex;gap:6px;flex-wrap:wrap}.blessing-categories nav a{padding:9px}.blessing-categories>p{display:none}.blessing-hero{min-height:150px;aspect-ratio:auto;background-size:auto 334%;height:30vw}.reference-mobile-main{display:flex;background:#183d2c;padding:14px;gap:10px}.reference-mobile-main a{color:#fff0ca;padding:10px;border:1px solid #b99a5d}.blessing-toolbar form{flex-wrap:wrap}.blessing-shop-grid{grid-template-columns:1fr 1fr}.blessing-shop-card{padding:10px}.blessing-shop-card h2{font-size:20px}}@media(max-width:420px){.reference-phone-streets{grid-template-columns:1fr}.blessing-shop-grid{grid-template-columns:1fr}}
