/* Shared town-explorer homepage. Scoped components leave interior pages and form configuration unchanged. */
.buzz-home { --buzz-home-primary:var(--wp--preset--color--home-primary); --buzz-home-deep:var(--wp--preset--color--home-deep); --buzz-home-accent:var(--wp--preset--color--home-accent); --buzz-home-ink:var(--wp--preset--color--home-ink); --buzz-home-paper:var(--wp--preset--color--home-canvas); --buzz-home-line:var(--wp--preset--color--home-border); box-sizing:border-box; margin:32px auto 48px; color:var(--buzz-home-ink); font-family:var(--wp--preset--font-family--sans); font-size:16px; line-height:1.55; }
.buzz-home *, .buzz-home *::before, .buzz-home *::after { box-sizing:inherit; }
.buzz-home h1,.buzz-home h2,.buzz-home h3 { margin:0; font-family:inherit; font-weight:400; line-height:1.14; letter-spacing:-.028em; color:inherit; }
.buzz-home h1 { font-size:clamp(28px,3vw,38px); }
.buzz-home h2 { font-size:clamp(23px,2.25vw,30px); }
.buzz-home h3 { font-size:23px; }
.buzz-home p { margin:0; }
.buzz-home a { color:var(--buzz-home-primary); text-decoration:none; }
.buzz-home a:hover { text-decoration:underline; }
.buzz-home a:focus-visible,.buzz-home button:focus-visible,.buzz-home input:focus-visible { outline:3px solid var(--buzz-home-accent); outline-offset:4px; box-shadow:0 0 0 2px var(--wp--preset--color--card); }
.buzz-home .buzz-home-eyebrow { font-size:11px; font-weight:800; line-height:1.4; text-transform:uppercase; letter-spacing:.055em; }
.buzz-home .buzz-home-fine { color:var(--wp--preset--color--home-muted); font-size:12px; line-height:1.5; }
.buzz-home-hero { display:grid; grid-template-columns:40% 60%; overflow:hidden; border-radius:11px; background:var(--buzz-home-primary); color:var(--wp--preset--color--on-primary); }
.buzz-home-hero-copy { display:flex; flex-direction:column; justify-content:center; padding:32px 28px; min-height:350px; gap:22px; }
.buzz-home-hero-copy .buzz-home-eyebrow { color:var(--wp--preset--color--card); }
.buzz-home-hero-copy>p:not(.buzz-home-eyebrow) { color:var(--wp--preset--color--home-canvas); font-size:15px; }
.buzz-home-hero-photo { min-height:350px; position:relative; }
.buzz-home .buzz-home-image { display:block; width:100%; max-width:100%; height:100%; object-fit:cover; }
.buzz-home-hero-photo>.buzz-home-image { position:absolute; inset:0; object-position:50% 45%; }
.buzz-home-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:stretch; }
.buzz-home .buzz-home-button { display:inline-flex; justify-content:center; align-items:center; gap:10px; min-height:46px; padding:12px 18px; border:1px solid transparent; border-radius:6px; font:700 13px/1.35 var(--wp--preset--font-family--sans); text-align:center; text-decoration:none; transition:background-color .15s ease; }
.buzz-home .buzz-home-button:hover { text-decoration:underline; text-underline-offset:3px; }
.buzz-home .buzz-home-accent { background:var(--buzz-home-accent); color:var(--wp--preset--color--on-accent); }
.buzz-home .buzz-home-accent:hover { background:var(--wp--preset--color--accent-hover); }
.buzz-home .buzz-home-white { background:var(--wp--preset--color--card); color:var(--buzz-home-deep); border-color:var(--wp--preset--color--home-border); }
.buzz-home .buzz-home-primary { background:var(--buzz-home-primary); color:var(--wp--preset--color--on-primary); }
.buzz-home-signup { display:grid; grid-template-columns:1.75fr 1fr; gap:30px; margin-top:26px; padding:26px; background:var(--wp--preset--color--card); border:1px solid var(--wp--preset--color--strong-border); border-radius:10px; scroll-margin-top:100px; }
.buzz-home-signup h2 { color:var(--buzz-home-primary); font-size:25px; }
.buzz-home-signup p { margin-top:10px; font-size:14px; color:var(--wp--preset--color--home-muted); }
.buzz-home-signup .buzz-home-email-label { display:block; margin-top:18px; margin-bottom:6px; font-weight:700; font-size:12px; }
.buzz-home-signup-side { padding-left:30px; border-left:1px solid var(--buzz-home-line); display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.buzz-home-signup-side .buzz-home-eyebrow { color:var(--buzz-home-primary); margin:0 0 8px; }
.buzz-home-signup-side .buzz-home-text-link { margin-top:16px; }
.buzz-home-signup .fluentform { margin:0; }
.buzz-home-signup .fluentform fieldset { border:0; padding:0; margin:0; min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:start; }
.buzz-home-signup .fluentform fieldset>p { display:none; }
.buzz-home-signup .fluentform .ff-el-group { margin:0; }
.buzz-home-signup .fluentform .ff_submit_btn_wrapper { position:static; width:auto; margin:0; }
.buzz-home-signup .fluentform .ff-el-form-control { width:100%; max-width:100%; min-height:46px; background:var(--wp--preset--color--home-canvas); border:1px solid var(--buzz-home-line); padding:11px 13px; border-radius:5px; color:var(--buzz-home-ink); font:inherit; font-size:14px; }
.buzz-home .buzz-home-signup .fluentform .ff-btn-submit { min-height:46px; padding:11px 24px; border:1px solid transparent; border-radius:5px; background:var(--buzz-home-primary); color:var(--wp--preset--color--on-primary); font:700 13px/1.4 var(--wp--preset--font-family--sans); cursor:pointer; }
.buzz-home .buzz-home-signup .fluentform .ff-btn-submit:hover { background:var(--buzz-home-deep); }
.buzz-home-signup .fluentform .error,.buzz-home-signup .fluentform .text-danger { color:var(--wp--preset--color--error); }
.buzz-home-signup .buzz-home-fine { margin-top:10px; font-size:11px; }
.buzz-home-heading { display:flex; gap:24px; justify-content:space-between; align-items:baseline; margin-bottom:22px; }
.buzz-home-heading>p { font-size:13px; color:var(--wp--preset--color--home-muted); }
.buzz-home .buzz-home-text-link { font-size:12px; line-height:1.5; font-weight:800; }
.buzz-home-discover,.buzz-home-guides,.buzz-home-planner { margin-top:36px; }
.buzz-home-badges { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; }
.buzz-home .buzz-home-badge { display:flex; flex-direction:column; align-items:center; justify-content:space-between; min-height:168px; padding:13px 14px 18px; border-radius:9px; background:var(--wp--preset--color--tile); color:var(--buzz-home-ink); transition:background-color .15s ease; }
.buzz-home .buzz-home-badge:hover { background:var(--wp--preset--color--tile-hover); }
.buzz-home .buzz-home-badge>.buzz-home-image { width:100px; height:100px; object-fit:contain; }
.buzz-home-badge>span { display:flex; justify-content:space-between; align-items:center; width:100%; gap:8px; font-size:15px; font-weight:800; line-height:1.25; }
.buzz-home-badge>span>span { color:var(--buzz-home-primary); font-size:21px; }
.buzz-home-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.buzz-home-card { border:1px solid var(--buzz-home-line); border-radius:9px; overflow:hidden; background:var(--wp--preset--color--card); min-width:0; display:flex; flex-direction:column; }
.buzz-home-card-photo { display:block; height:185px; }
.buzz-home-card-photo .buzz-home-image-outdoors { object-position:50% 58%; }
.buzz-home-card-photo .buzz-home-image-downtown { object-position:50% 52%; }
.buzz-home-card-photo .buzz-home-image-family { object-position:52% 45%; }
.buzz-home-card-copy { flex:1; padding:20px; display:flex; flex-direction:column; gap:12px; }
.buzz-home-card-copy .buzz-home-eyebrow { color:var(--buzz-home-primary); font-size:10px; }
.buzz-home-card-copy h3>a { color:var(--buzz-home-ink); }
.buzz-home-card-copy>p:not(.buzz-home-eyebrow) { font-size:14px; color:var(--wp--preset--color--home-muted); }
.buzz-home-card-copy>.buzz-home-text-link { margin-top:auto; padding-top:16px; }
.buzz-home-business { margin-top:36px; display:grid; grid-template-columns:32% 68%; border-radius:10px; overflow:hidden; background:var(--buzz-home-primary); color:var(--wp--preset--color--on-primary); }
.buzz-home-business-art { background:var(--wp--preset--color--tile-soft); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; padding:22px; color:var(--buzz-home-ink); font-size:22px; font-weight:800; }
.buzz-home-business-art>.buzz-home-image { width:190px; height:190px; object-fit:contain; }
.buzz-home-business-copy { padding:32px; display:flex; flex-direction:column; gap:18px; align-items:flex-start; }
.buzz-home-business-copy h2 { font-size:34px; }
.buzz-home-business-copy .buzz-home-eyebrow { color:var(--wp--preset--color--card); }
.buzz-home-business-copy>p:not(.buzz-home-eyebrow) { color:var(--wp--preset--color--home-canvas); }
.buzz-home .buzz-home-business-contact { color:var(--wp--preset--color--card); margin-top:4px; font-size:12px; font-weight:700; }
.buzz-home-planner-bar { display:flex; justify-content:space-between; align-items:center; gap:18px; background:var(--wp--preset--color--tile); padding:10px 16px; border-radius:7px; margin-bottom:24px; font-size:12px; }
.buzz-home-planner-bar>strong, .buzz-home-planner-bar>p { color:var(--wp--preset--color--primary); }
.buzz-home-planner-bar>div { display:flex; gap:10px; }
.buzz-home-planner-bar a { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:10px 24px; border-radius:5px; background:var(--wp--preset--color--paper); color:var(--wp--preset--color--primary); font-weight:700; }
.buzz-home-planner-bar > div > a:first-child, .buzz-home-planner-links > p:first-child a { background:var(--wp--preset--color--primary); color:var(--wp--preset--color--on-primary); }
.buzz-home-plan-cards>article { padding:20px; background:var(--wp--preset--color--card); border:1px solid var(--buzz-home-line); border-radius:8px; display:flex; flex-direction:column; gap:14px; }
.buzz-home-plan-cards .buzz-home-eyebrow { color:var(--buzz-home-primary); background:var(--wp--preset--color--tile); width:fit-content; border-radius:5px; padding:7px 10px; font-size:10px; }
.buzz-home-plan-cards h3 { font-size:21px; }
.buzz-home-plan-cards h3 a { color:var(--buzz-home-ink); }
.buzz-home-plan-cards article>p:not(.buzz-home-eyebrow) { color:var(--wp--preset--color--home-muted); font-size:13px; }
.buzz-home-plan-cards article>.buzz-home-text-link { margin-top:auto; }
.buzz-home-planner>.buzz-home-fine { margin-top:16px; }
.buzz-home-last-call { margin-top:26px; padding:30px; border-radius:10px; background:var(--wp--preset--color--tile); display:flex; align-items:center; justify-content:space-between; gap:30px; }
.buzz-home-last-call .buzz-home-eyebrow { color:var(--buzz-home-primary); margin-bottom:12px; }
.buzz-home-last-call h2 { margin-bottom:12px; }
.buzz-home-last-call p { color:var(--wp--preset--color--home-muted); font-size:14px; }
.buzz-home-last-call>.buzz-home-button { min-width:215px; }
@media(min-width:1000px){ .buzz-home-hero .buzz-home-button { flex:1; padding-inline:12px; } }
@media(max-width:1000px){ .buzz-home-hero { grid-template-columns:45% 55%; } .buzz-home-hero-copy { padding:26px; } .buzz-home-hero .buzz-home-actions { flex-direction:column; } .buzz-home-badges { grid-template-columns:repeat(3,minmax(0,1fr)); } .buzz-home-card-grid { gap:16px; } .buzz-home-card-copy { padding:16px; } .buzz-home h3 { font-size:21px; } .buzz-home-signup { gap:22px; padding:24px; } .buzz-home-signup-side { padding-left:22px; } .buzz-home-signup .fluentform fieldset { grid-template-columns:minmax(0,1fr); } .buzz-home-signup .fluentform .ff-btn-submit { width:100%; } }
@media(max-width:760px){ .buzz-home { margin-top:20px; } .buzz-home-hero { grid-template-columns:1fr; } .buzz-home-hero-copy { min-height:0; padding:27px 24px; gap:20px; } .buzz-home-hero h1 { font-size:32px; } .buzz-home-hero .buzz-home-actions { flex-direction:row; } .buzz-home-hero-photo { min-height:240px; } .buzz-home-hero-photo>.buzz-home-image { object-position:50% 45%; } .buzz-home-signup { grid-template-columns:1fr; padding:23px; gap:24px; margin-top:20px; } .buzz-home-signup-side { border-left:0; border-top:1px solid var(--buzz-home-line); padding:23px 0 0; } .buzz-home-signup .fluentform fieldset { grid-template-columns:minmax(0,1fr) auto; } .buzz-home-heading { flex-direction:column; gap:10px; margin-bottom:18px; } .buzz-home-card-grid { grid-template-columns:1fr; gap:20px; } .buzz-home-card-photo { height:auto; aspect-ratio:16/9; } .buzz-home-card-copy { padding:21px; } .buzz-home-card-copy h3 { font-size:25px; } .buzz-home-card-copy>p:not(.buzz-home-eyebrow) { font-size:15px; } .buzz-home-card-photo .buzz-home-image-downtown { object-position:62% 50%; } .buzz-home-card-photo .buzz-home-image-family { object-position:52% 45%; } .buzz-home-business { grid-template-columns:1fr; } .buzz-home-business-art { padding:18px; flex-direction:row; gap:20px; } .buzz-home-business-art>.buzz-home-image { width:115px; height:115px; } .buzz-home-business-copy { padding:26px; } .buzz-home-business-copy h2 { font-size:31px; } .buzz-home-business .buzz-home-actions { flex-direction:column; width:100%; } .buzz-home-planner-bar { flex-direction:column; align-items:stretch; padding:16px; } .buzz-home-planner-bar>div { flex-wrap:wrap; } .buzz-home-planner-bar a { flex:1; padding-inline:16px; white-space:nowrap; } .buzz-home-last-call { flex-direction:column; align-items:stretch; gap:22px; padding:25px; } .buzz-home-discover,.buzz-home-guides,.buzz-home-business,.buzz-home-planner { margin-top:30px; } }
@media(max-width:520px){ .buzz-home-badges { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .buzz-home .buzz-home-badge { min-height:154px; padding:11px 14px 16px; } .buzz-home .buzz-home-badge>.buzz-home-image { width:92px; height:92px; } .buzz-home-signup .fluentform fieldset { grid-template-columns:minmax(0,1fr); } .buzz-home-signup .fluentform .ff-btn-submit { width:100%; } .buzz-home-hero .buzz-home-actions { flex-direction:column; } .buzz-home-hero h1 { font-size:30px; } .buzz-home-hero-photo { min-height:218px; } }
@media(prefers-reduced-motion:reduce){ .buzz-home a,.buzz-home button { transition:none !important; } }

/* Keep homepage discovery destinations visible below the existing sticky header. */
:where(.wp-block-post-content) :is(#outdoors,#family,#arts,#shopping,#music,#festivals) { scroll-margin-top:96px; }

/* Override Fluent Forms' merged-button positioning without changing the form configuration. */
.buzz-home-signup-main { min-width:0; }
.buzz-home .buzz-home-signup form fieldset { min-inline-size:0 !important; width:100%; }
.buzz-home .buzz-home-signup form legend { position:absolute; }
.buzz-home .buzz-home-signup form .ff_submit_btn_wrapper { position:static !important; inset:auto !important; width:auto; margin:0; }
.buzz-home .buzz-home-signup form .ff-el-form-control { min-width:0; padding:11px 13px; }
@media(max-width:520px){ .buzz-home .buzz-home-signup form .ff_submit_btn_wrapper, .buzz-home .buzz-home-signup form .ff-btn-submit { width:100%; } }

/* Native block wrappers: adapt existing visual hooks to native block wrappers. */
.buzz-home-fse :where(.wp-block-group:not(section), .wp-block-image, .wp-block-buttons) { margin-block:0; }
.buzz-home-fse .wp-block-image { margin-inline:0; }
.buzz-home-fse figure.buzz-home-image { width:100%; height:100%; }
.buzz-home-fse figure.buzz-home-image img { display:block; width:100%; height:100%; object-fit:cover; }
.buzz-home-fse .buzz-home-hero-photo > figure { position:absolute; inset:0; }
.buzz-home-fse .buzz-home-hero-photo img { object-position:50% 45%; }
.buzz-home-fse .buzz-home-card-photo > a { display:block; height:100%; }
.buzz-home-fse .buzz-home-card-photo { height:185px; }
.buzz-home-fse .buzz-home-image-outdoors img { object-position:50% 58%; }
.buzz-home-fse .buzz-home-image-downtown img { object-position:50% 52%; }
.buzz-home-fse .buzz-home-image-family img { object-position:52% 45%; }
.buzz-home-fse .buzz-home-badge { position:relative; }
.buzz-home-fse .buzz-home-badge > figure { flex:none; width:100px; height:100px; }
.buzz-home-fse .buzz-home-badge > figure img { object-fit:contain; }
.buzz-home-fse .buzz-home-badge-label { width:100%; font-size:15px; font-weight:800; line-height:1.25; }
.buzz-home-fse .buzz-home-badge-label a { display:flex; justify-content:space-between; align-items:center; gap:8px; color:var(--buzz-home-ink); }
.buzz-home-fse .buzz-home-badge-label a::after { content:""; position:absolute; inset:0; border-radius:9px; }
.buzz-home-fse .buzz-home-badge-label a:focus-visible { outline:none; box-shadow:none; }
.buzz-home-fse .buzz-home-badge-label a:focus-visible::after { outline:3px solid var(--buzz-home-accent); outline-offset:4px; box-shadow:0 0 0 2px var(--wp--preset--color--card); }
.buzz-home-fse .buzz-home-badge-label span { color:var(--buzz-home-primary); font-size:21px; }
.buzz-home-fse .buzz-home-icon-pending { display:flex; align-items:center; justify-content:center; width:100px; height:100px; font-size:64px; line-height:1; color:var(--buzz-home-primary); }
.buzz-home-fse .buzz-home-business-art > figure { width:190px; height:190px; }
.buzz-home-fse .buzz-home-business-art img { object-fit:contain; }
.buzz-home-fse .wp-block-button.buzz-home-button { display:flex; padding:0; min-height:0; border:0; border-radius:0; background:none; }
.buzz-home-fse .buzz-home-button > .wp-block-button__link { display:inline-flex; width:100%; justify-content:center; align-items:center; gap:10px; min-height:46px; padding:12px 18px; border:1px solid transparent; border-radius:6px; font:700 13px/1.35 var(--wp--preset--font-family--sans); text-align:center; text-decoration:none; }
.buzz-home-fse .buzz-home-button > .wp-block-button__link:hover { text-decoration:underline; text-underline-offset:3px; }
.buzz-home-fse .buzz-home-accent > .wp-block-button__link { background:var(--buzz-home-accent); color:var(--wp--preset--color--on-accent); }
.buzz-home-fse .buzz-home-accent > .wp-block-button__link:hover { background:var(--wp--preset--color--accent-hover); }
.buzz-home-fse .buzz-home-white > .wp-block-button__link { background:var(--wp--preset--color--card); color:var(--buzz-home-deep); border-color:var(--wp--preset--color--home-border); }
.buzz-home-fse .buzz-home-primary > .wp-block-button__link { background:var(--buzz-home-primary); color:var(--wp--preset--color--on-primary); }

.buzz-home-planner-links > p { display:flex; }


.buzz-home-fse .buzz-home-last-call > .wp-block-buttons { min-width:215px; }
@media(min-width:1000px){ .buzz-home-fse .buzz-home-hero .buzz-home-button { padding-inline:0; } .buzz-home-fse .buzz-home-hero .buzz-home-button > a { padding-inline:12px; } }
@media(max-width:760px){ .buzz-home-fse .buzz-home-card-photo { height:auto; aspect-ratio:16/9; } .buzz-home-fse .buzz-home-image-downtown img { object-position:62% 50%; } .buzz-home-fse .buzz-home-business-art > figure { width:115px; height:115px; } .buzz-home-fse .buzz-home-planner-links > p { flex:1; } .buzz-home-fse .buzz-home-last-call > .wp-block-buttons, .buzz-home-fse .buzz-home-last-call .wp-block-button { width:100%; } }
@media(max-width:520px){ .buzz-home-fse .buzz-home-badge > figure, .buzz-home-fse .buzz-home-icon-pending { width:92px; height:92px; } }

/* Shared wrapper geometry; content-specific crop position is supplied in site Global Styles. */
.buzz-home-fse .buzz-home-hero-photo img{object-position:50% 45%}
.buzz-home-fse .buzz-home-image-history img{object-position:50% 52%}
.buzz-home-fse .buzz-home-card-photo img{width:100%;height:100%;object-fit:cover}
.buzz-home-fse .buzz-home-card-photo a{display:block;height:100%}
.buzz-home-shell{margin-block:0}

/* Shared publication context: these links sit on the primary brand surface. */
.wb-r6-local-copy .buzz-home-business-contact a { color:var(--wp--preset--color--on-primary); text-decoration:underline; text-underline-offset:.15em; }
.wb-r6-local-copy .buzz-home-business-contact a:hover { color:var(--wp--preset--color--on-primary); text-decoration-thickness:2px; }
.wb-r6-local-copy .buzz-home-business-contact a:focus-visible { outline:3px solid var(--wp--preset--color--on-primary); outline-offset:4px; }
.buzz-home-planner-bar a:hover { text-decoration:underline; text-underline-offset:.15em; }
.buzz-home-planner-bar a:focus-visible { outline:3px solid var(--wp--preset--color--ink); outline-offset:3px; }
