/* ShopTownly town page visual refresh: scoped to town sections only. */
.st-town-section{padding:56px 0}.st-town-section .wrap{max-width:1200px}.st-town-section h2{font-size:clamp(26px,3vw,36px);line-height:1.16;margin:5px 0 8px;color:#142e40}.st-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.st-section-heading p{margin:0;color:#657581}.st-text-link{font-weight:750;white-space:nowrap}.st-town-featured{background:#f6f8f8}.st-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.st-featured-card{display:block;overflow:hidden;border-radius:14px;background:#fff;border:1px solid #e3e9ec;box-shadow:0 7px 20px rgba(12,38,52,.06);text-decoration:none;color:#152f41;transition:transform .2s,box-shadow .2s}.st-featured-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(12,38,52,.12)}.st-featured-art{height:138px;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(135deg,#173d51,#31928b);color:#fff}.st-featured-art>span{font-size:68px;font-weight:850;opacity:.25}.st-featured-art small{position:absolute;bottom:12px;left:16px;letter-spacing:2px;font-size:10px;font-weight:800;color:#fff}.st-art-2{background:linear-gradient(135deg,#674b36,#c49162)}.st-art-3{background:linear-gradient(135deg,#233e59,#527e9c)}.st-art-4{background:linear-gradient(135deg,#66453e,#c47e61)}.st-art-5{background:linear-gradient(135deg,#365c52,#7fae89)}.st-featured-body{padding:19px}.st-featured-tag{color:#ae752f;font-size:10px;font-weight:850;letter-spacing:1.5px}.st-featured-body h3{font-size:18px;margin:9px 0}.st-featured-body p{font-size:13px;color:#62717c;line-height:1.5;min-height:39px;margin:0 0 14px}.st-featured-action{font-size:13px;font-weight:800;color:#147c80}.st-town-community{background:white}.st-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.st-category-card{display:flex;flex-direction:column;gap:13px;min-height:155px;padding:20px;border-radius:12px;border:1px solid #e3e9ec;background:#fff;text-decoration:none;color:#173244;box-shadow:0 3px 11px rgba(12,38,52,.035)}.st-category-card:hover{background:#f2faf9;border-color:#b4ded8}.st-category-icon{display:flex;align-items:center;justify-content:center;background:#edf7f5;width:42px;height:42px;border-radius:10px;font-size:22px}.st-category-card strong{font-size:15px;line-height:1.25}.st-category-card>span:last-child{font-size:12px;color:#167b7d;margin-top:auto}.st-events-strip{display:flex;align-items:center;gap:18px;margin-top:24px;padding:20px 24px;background:#eaf3f2;border-radius:12px;color:#16394a;text-decoration:none}.st-events-icon{font-size:28px;color:#178d88}.st-events-strip>span:nth-child(2){display:flex;flex-direction:column;gap:5px;flex:1}.st-events-strip small{color:#60747b}.st-events-strip b{font-size:13px}.st-town-directory{background:#f7f9fa}.st-directory-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;background:#fff;border:1px solid #e4eaed;border-radius:12px;padding:10px 22px}.st-directory-list a{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 4px;border-bottom:1px solid #eef1f2;text-decoration:none;color:#1b3747;font-size:14px;font-weight:650}.st-directory-list a:hover{color:#087f80}.st-directory-arrow{color:#238e8c}.st-directory-footer{margin-top:24px;text-align:center}.st-directory-footer a{display:inline-block;background:#17364a;color:#fff;padding:13px 24px;border-radius:8px;text-decoration:none;font-weight:750}.st-directory-footer a:hover{background:#23536a}@media(max-width:850px){.st-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.st-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.st-town-section{padding:36px 0}.st-section-heading{align-items:start;flex-direction:column}.st-featured-grid,.st-directory-list{grid-template-columns:1fr}.st-featured-art{height:120px}.st-category-grid{gap:10px}.st-category-card{padding:14px;min-height:140px}.st-events-strip{padding:16px;flex-wrap:wrap}.st-events-strip b{width:100%;padding-left:45px}}

/* Town-only update: categories before featured, compact category tiles, expandable featured list. */
.st-town-community{padding-top:34px;padding-bottom:36px;background:#fff}
.st-town-community .st-section-heading{margin-bottom:18px}
.st-town-community .st-section-heading p{font-size:13px}
.st-town-community .st-category-grid{gap:10px}
.st-town-community .st-category-card{min-height:92px;padding:13px 14px;gap:7px;background:#f7fafb;box-shadow:none}
.st-town-community .st-category-icon{width:34px;height:34px;font-size:18px}
.st-town-community .st-category-card strong{font-size:13px}
.st-town-community .st-category-card>span:last-child{font-size:11px}
.st-town-featured{padding-top:42px}
.st-featured-card[hidden]{display:none!important}
.st-featured-toggle{display:block;width:100%;margin-top:22px;padding:13px 18px;border:1px solid #cbdde0;border-radius:9px;background:#fff;color:#163a4c;font:inherit;font-weight:750;cursor:pointer}
.st-featured-toggle:hover,.st-featured-toggle:focus-visible{background:#eaf5f4;border-color:#72b7b0}
.st-town-events{padding:0 0 32px;background:#f6f8f8}
.st-town-events .st-events-strip{margin:0}
@media(max-width:560px){.st-town-community{padding-top:26px;padding-bottom:26px}.st-town-community .st-category-card{min-height:94px;padding:11px}.st-town-featured{padding-top:32px}}
