/* PA Brewery search-first homepage */
.pb-header{padding:16px 3.5%;min-height:78px;background:#fff}.pb-header nav{gap:25px}.pb-header .pb-logo{font-size:27px}
.pb-landing-hero{height:360px;background:#25372a url('homepage-hero.jpg') center 55%/cover no-repeat;margin:0 auto;max-width:1800px}.pb-hero-shade{height:100%;background:linear-gradient(90deg,#0a190b42,#06120b5c 50%,#07140c2e);display:flex;align-items:center;justify-content:center}.pb-hero-content{text-align:center;width:min(100% - 36px,920px);padding:20px 0}.pb-hero-content h1{font:700 clamp(28px,3.3vw,47px)/1.12 'Playfair Display',Georgia,serif;letter-spacing:-1px;color:#fff;margin:0 0 10px;text-shadow:0 2px 12px #0007}.pb-hero-content>p{color:white;font-size:15px;margin:0 0 20px;text-shadow:0 1px 4px #0008}.pb-home-search{background:#fff;padding:12px 16px 6px;border-radius:10px;max-width:720px;margin:auto;position:relative;box-shadow:0 5px 30px #0003}.pb-home-tabs{display:flex;gap:7px;margin-bottom:10px}.pb-home-tabs button{min-height:33px;padding:6px 15px;font-size:12px;border:0;flex:1;border-radius:6px;white-space:nowrap}.pb-home-tabs button[aria-pressed=true]{background:var(--red);color:white}.pb-home-search-row{display:flex;gap:9px}.pb-home-search-row input{min-width:0;flex:1;font-size:15px;padding:12px 16px;background:#fafbfc}.pb-home-search-row>button{min-width:112px;font-size:14px}.pb-home-search #home-gps{border:0;min-height:28px;padding:5px 10px;font-size:13px;text-decoration:underline;color:var(--green);background:transparent}.pb-home-search #home-search-status{font-size:12px;margin:0;color:#98323a}.pb-home-location-results{text-align:left;position:absolute;top:calc(100% - 25px);left:16px;right:16px;z-index:900;background:white;box-shadow:0 10px 30px #0003;border:1px solid #d9e1da;border-radius:8px;overflow:hidden}.pb-home-location-results button{display:block;width:100%;border:0;border-bottom:1px solid #e4e7e5;text-align:left;border-radius:0;font-size:13px;padding:12px 15px}.pb-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pb-home .pb-section{max-width:1600px;padding:28px 3.5% 12px}.pb-home .pb-section-head h2{font-size:30px;margin-bottom:5px}.pb-home .pb-section-head{margin-bottom:17px}.pb-home .pb-text-link{border:0;background:transparent;color:var(--red);text-decoration:underline;font-size:12px;padding:6px 0;white-space:nowrap;min-height:35px}.pb-home #beer .pb-beer-track,.pb-brewery-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.pb-home #beer .pb-beer-card>a:first-child{aspect-ratio:1.35;background:#f4f3ef}.pb-home #beer .pb-beer-card img{object-fit:contain}.pb-home #beer .pb-beer-copy{padding:11px 12px 13px}.pb-home #beer .pb-beer-copy h3{font-size:15px;line-height:1.3;margin:0 0 5px}.pb-home #beer .pb-beer-copy p{font-size:12px;margin:2px 0;color:#59625d}.pb-home #beer .pb-beer-copy .pb-red,.pb-home #beer .pb-beer-copy .pb-outline{display:inline-block;padding:5px 0 0;min-height:24px;font-size:12px;background:none;border:0;color:var(--red);border-radius:0}.pb-home #beer #beer-controls{display:none!important}.pb-brewery-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;transition:box-shadow .2s}.pb-brewery-card:hover{box-shadow:0 5px 16px #0001}.pb-home button.pb-brewery-open{display:block;border:0;border-radius:0;background:transparent;padding:0;width:100%;text-align:left;min-height:100%;color:var(--ink)}.pb-brewery-open img{width:100%;aspect-ratio:1.8;object-fit:cover;display:block;background:#e9ebe6}.pb-brewery-open>span{display:block;padding:11px 12px 13px}.pb-brewery-open strong{font:600 15px/1.3 'DM Sans',Arial,sans-serif;display:block;margin-bottom:5px}.pb-brewery-open small{font-size:11px;color:#68716b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:30px}.pb-brewery-open em{display:block;font:500 12px 'DM Sans',Arial,sans-serif;color:var(--red);margin-top:7px}
.pb-region-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.pb-home .pb-region-card{padding:0;border:0;position:relative;overflow:hidden;border-radius:8px;background:#203b30;aspect-ratio:1.9;color:white;display:block}.pb-region-card img{width:100%;height:100%;object-fit:cover;display:block;opacity:.85}.pb-region-card span{position:absolute;inset:auto 0 0;padding:25px 15px 15px;text-align:left;font:600 21px Georgia,serif;background:linear-gradient(transparent,#0009)}
.pb-searching #home-hero,.pb-searching #home-regions{display:none}.pb-back-home{margin:12px 20px;border:0!important;background:transparent!important;color:var(--red)!important;font-size:12px!important}.pb-searching .pb-explore{margin-top:0}.pb-searching .pb-search-panel{padding-top:8px}
@media(min-width:1000px){.pb-searching .pb-header{position:sticky;top:0;z-index:1100}.pb-searching .pb-map-layout{height:min(660px,calc(100vh - 220px));min-height:450px;grid-template-columns:58% 42%}}
@media(max-width:1050px){.pb-header nav{gap:14px}.pb-home #beer .pb-beer-track,.pb-brewery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pb-home .pb-section-head h2{font-size:27px}}
@media(max-width:760px){.pb-landing-hero{height:330px}.pb-hero-content h1{font-size:30px;letter-spacing:-.5px}.pb-hero-content>p{font-size:13px;max-width:310px;margin:0 auto 18px}.pb-home-search{padding:10px 11px 5px}.pb-home-tabs{gap:2px}.pb-home-tabs button{font-size:10px;padding:6px 5px}.pb-home-search-row input{padding:10px;font-size:13px}.pb-home-search-row>button{min-width:80px;padding:10px;font-size:12px}.pb-home #beer .pb-beer-track,.pb-brewery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pb-home .pb-section{padding:24px 17px 8px}.pb-home .pb-section-head h2{font-size:24px}.pb-home .pb-section-head p{font-size:12px;max-width:260px}.pb-home .pb-section-head{align-items:flex-start;gap:10px}.pb-home .pb-section-head>a,.pb-home .pb-text-link{font-size:11px}.pb-home .pb-section-head>div{min-width:0}.pb-region-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pb-region-card span{font-size:18px}.pb-brewery-open strong{font-size:13px}.pb-home #beer .pb-beer-copy h3{font-size:14px}.pb-home #beer .pb-beer-copy{padding:9px}.pb-hero-content{width:calc(100% - 28px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pb-brewery-card{transition:none}}
@media(min-width:761px) and (max-width:1050px){#brewery-grid:not([data-expanded=true])>.pb-brewery-card:nth-child(n+9){display:none}}
@media(max-width:760px){#brewery-grid:not([data-expanded=true])>.pb-brewery-card:nth-child(n+5){display:none}}

#beer .pb-beer-copy .pb-red{background:transparent!important;color:var(--red)!important}

/* City loop: four visible cards, same 81px/s motion as reference sites. */
.pb-region-grid{display:flex;position:relative;overflow-x:auto;gap:17px;scrollbar-width:none;scroll-behavior:auto;touch-action:pan-y}
.pb-region-grid::-webkit-scrollbar{display:none}
.pb-home .pb-region-card{flex:0 0 calc((100% - 51px)/4);min-width:0}
.pb-home .pb-region-pause{border:1px solid #d9ddd8;background:#fff;color:#314237;border-radius:20px;padding:7px 15px;font-size:12px}
.pb-beer-heading{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px}
.pb-beer-heading h2{white-space:nowrap;margin-bottom:0}
.pb-beer-facets{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.pb-home .pb-beer-facets button,.pb-home .pb-beer-facets select{font:500 12px Arial,sans-serif;min-height:33px;padding:6px 10px;border:1px solid #d8ddd8;border-radius:18px;background:#fff;color:#314237;cursor:pointer}
.pb-home .pb-beer-facets select{border-radius:6px;margin-right:4px;max-width:150px}
.pb-home .pb-beer-facets button[aria-pressed=true]{background:#203b30;border-color:#203b30;color:#fff}
#beer .pb-section-head>div{flex:1}
#beer .pb-section-head>a{white-space:nowrap}
@media(max-width:760px){.pb-region-grid{gap:12px}.pb-home .pb-region-card{flex-basis:calc((100% - 12px)/2)}.pb-beer-heading{gap:10px}.pb-home .pb-beer-facets button,.pb-home .pb-beer-facets select{font-size:11px;padding:6px 9px}#beer .pb-section-head{flex-wrap:wrap}}

/* Prominent green beer filters and mobile selects. */
.pb-home .pb-beer-facets button,.pb-home .pb-beer-facets select{font-size:18px;min-height:50px;padding:9px 15px;border:2px solid #238044;background:#e1f3e5;color:#155c2d;font-weight:600}
.pb-home .pb-beer-facets select{max-width:225px}
.pb-home .pb-beer-facets button[aria-pressed=true]{background:#19723b;border-color:#19723b;color:#fff}
.pb-home .pb-beer-facets button:hover,.pb-home .pb-beer-facets select:hover{background:#c6e8cf}
.pb-home .pb-beer-facets button[aria-pressed=true]:hover{background:#125b2e}
.pb-home .pb-beer-facets button:focus-visible,.pb-home .pb-beer-facets select:focus-visible{outline:3px solid #144b2a;outline-offset:3px}
.pb-home #beer-type-mobile{display:none}
@media(max-width:760px){
 .pb-home .pb-beer-facets{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;gap:10px}
 .pb-home .pb-beer-heading{width:100%}
 .pb-home .pb-beer-facets button[data-beer-type]{display:none}
 .pb-home #beer-type-mobile{display:block}
 .pb-home .pb-beer-facets select{font-size:15px;min-height:48px;padding:9px 10px;width:100%;max-width:none;margin:0}
}

.pb-home #destination-guide{scroll-margin-top:20px;padding-bottom:30px}
.pb-home #destination-close{margin:0 0 20px;padding:8px 0}
.pb-destination-intro{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;margin-bottom:32px}
.pb-destination-intro>img{width:100%;height:300px;object-fit:cover;border-radius:10px}
.pb-destination-intro h2{font:600 32px Georgia,serif;margin:5px 0 14px}
.pb-destination-intro p{line-height:1.7;color:#526055}
.pb-destination-intro h3{font-size:15px;margin:14px 0 6px}
.pb-destination-intro ul{padding-left:20px;line-height:1.8;color:#526055}
.pb-destination-intro a{font-size:12px;color:#266341}
.pb-destination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:30px}
.pb-home .pb-region-card span{font-size:19px}
.pb-searching #destination-guide{display:none}
@media(max-width:760px){.pb-destination-intro{grid-template-columns:1fr;gap:16px}.pb-destination-intro>img{height:220px}.pb-destination-intro h2{font-size:26px}.pb-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pb-home .pb-region-card span{font-size:16px}}

.pb-home .pb-fixed-view{position:fixed;top:88px;right:16px;z-index:1200;display:flex;gap:3px;padding:4px;border:1px solid #10243f;border-radius:8px;background:#142d4e;box-shadow:0 3px 12px #10243f33}
.pb-home .pb-fixed-view button{min-width:70px;min-height:44px;border:0;border-radius:5px;background:#142d4e;color:#fff;font:700 13px/1 Arial,sans-serif;letter-spacing:.6px;padding:12px}
.pb-home .pb-fixed-view button[aria-pressed=true]{background:#365e8a;color:#fff}
.pb-home .pb-fixed-view button:hover{background:#294c73;color:#fff}
.pb-home .pb-fixed-view button:focus-visible{outline:3px solid #a8d6ff;outline-offset:1px}
.pb-map-layout,.pb-results-toolbar{scroll-margin-top:150px}
@media(max-width:760px){.pb-home .pb-fixed-view{top:88px;right:16px}.pb-home .pb-fixed-view button{min-width:70px;min-height:44px;font-size:13px;padding:12px}}

.pb-selected-beer-track{display:flex;overflow-x:auto;gap:16px;scrollbar-width:thin;scroll-snap-type:x mandatory}
.pb-selected-beer-track>.pb-beer-card{flex:0 0 calc((100% - 64px)/5);min-width:0;scroll-snap-align:start}
.pb-selected-beer-track .pb-beer-card>a>img{height:190px;width:100%;object-fit:contain;background:#f6f5f1}
#map-brewery-beer-controls{display:flex;gap:6px}#map-brewery-beer-controls button{font-size:12px}
#map-brewery-beer-page{font-size:12px;color:#526055}
@media(max-width:1050px) and (min-width:761px){.pb-selected-beer-track>.pb-beer-card{flex-basis:calc((100% - 48px)/4)}}
@media(max-width:760px){.pb-selected-beer-track>.pb-beer-card{flex-basis:calc((100% - 16px)/2)}#map-brewery-beers .pb-section-head{flex-wrap:wrap}.pb-selected-beer-track .pb-beer-card>a>img{height:150px}}

.pb-selected-beer-track.pb-selected-two-rows{display:grid;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:calc((100% - 64px)/5)}
@media(max-width:1050px) and (min-width:761px){.pb-selected-beer-track.pb-selected-two-rows{grid-auto-columns:calc((100% - 48px)/4)}}
@media(max-width:760px){.pb-selected-beer-track.pb-selected-two-rows{grid-auto-columns:calc((100% - 16px)/2)}}

.pb-home .pb-amish-filter{display:inline-flex;align-items:center;gap:10px;padding:5px 12px;margin:0 20px 10px;font-weight:600;border-color:#72845d}
.pb-amish-filter img{width:58px;height:38px;object-fit:cover;border-radius:4px}
.pb-home .pb-amish-filter[aria-pressed=true]{background:#314c35;color:#fff}
.pb-home .pb-amish-feature{display:flex;align-items:center;gap:18px;padding:0;margin:20px 0 0;width:100%;text-align:left;overflow:hidden;background:#edf1e8}
.pb-amish-feature>img{width:180px;height:105px;object-fit:cover}.pb-amish-feature strong{font:600 21px Georgia,serif}.pb-amish-feature small{display:block;color:#526055;margin-top:5px}
.pb-amish-marker{background:white;border:2px solid #fff;border-radius:8px;box-shadow:0 2px 8px #0006;overflow:hidden}
.pb-amish-marker img{width:100%;height:43px;object-fit:cover;display:block}.pb-amish-marker span{display:block;text-align:center;background:#314c35;color:white;font:600 11px/17px Arial,sans-serif}
.pb-place-description{max-width:850px;line-height:1.7}
@media(max-width:760px){.pb-amish-feature>img{width:100px;height:110px}.pb-amish-feature strong{font-size:17px}.pb-amish-feature small{font-size:11px;padding-right:8px}}

#place-detail,#map-brewery-beers{scroll-margin-top:150px}

#all-destinations-page{display:none}
.pb-all-destinations #all-destinations-page{display:block}
.pb-all-destinations main>section:not(#all-destinations-page):not(#destination-guide){display:none!important}
.pb-all-destinations.pb-destination-open #all-destinations-page{display:none}
.pb-all-destinations #all-destinations-page h1{font:600 38px Georgia,serif;margin:24px 0 8px}
.pb-all-destination-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:22px 0 40px}
.pb-all-destination-card{border:1px solid #e1e5de;border-radius:10px;overflow:hidden;background:white}
.pb-home .pb-all-destination-card>button{display:block;padding:0;width:100%;height:100%;text-align:left;border:0;background:white;border-radius:0}
.pb-all-destination-card img{width:100%;height:165px;object-fit:cover;display:block}
.pb-all-destination-card span{display:block;padding:16px}
.pb-all-destination-card strong{display:block;font:600 20px Georgia,serif}
.pb-all-destination-card small{display:block;color:#526055;line-height:1.6;margin:9px 0 13px}
.pb-all-destination-card em{font-size:12px;color:#a3232b;font-style:normal}
.pb-region-heading-link{flex:1}
.pb-region-heading-link:hover h2{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1050px){.pb-all-destination-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.pb-all-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pb-all-destination-card img{height:125px}.pb-all-destination-card strong{font-size:16px}.pb-all-destination-card span{padding:11px}.pb-all-destination-card small{font-size:11px}.pb-all-destinations #all-destinations-page h1{font-size:30px}.pb-region-heading-link{min-width:0}#view-all-destinations{white-space:nowrap}}

#amish-communities-page{display:none}
.pb-amish-directory #amish-communities-page{display:block}
.pb-amish-directory main>section:not(#amish-communities-page){display:none!important}
#amish-communities-page h1{font:600 36px Georgia,serif;margin:24px 0 8px}
.pb-amish-directory-filters{display:flex;gap:16px;padding:18px;background:#edf1e9;border-radius:9px;margin:22px 0}
.pb-amish-directory-filters label{display:flex;flex-direction:column;gap:7px;flex:1;font-size:12px;font-weight:600}
.pb-visitor-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0 25px}
.pb-home .pb-visitor-resource-grid a{display:block;padding:17px;border:1px solid #dce4d8;border-radius:8px;background:#f7faf4}
.pb-visitor-resource-grid strong,.pb-visitor-resource-grid small,.pb-visitor-resource-grid span{display:block}
.pb-visitor-resource-grid small{color:#526055;margin:8px 0}
.pb-visitor-resource-grid span{font-size:12px;color:#a3232b}
.pb-home #detail-nearby{display:block}
@media(max-width:760px){#amish-communities-page h1{font-size:28px}.pb-amish-directory-filters{flex-direction:column}.pb-visitor-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Amish destination category and location search */
a.pb-region-card{display:block;text-decoration:none;color:inherit;position:relative}
.pb-amish-area-form{display:flex;align-items:end;gap:14px;flex-wrap:wrap;padding:20px;background:#edf4ed;border-radius:12px;margin:22px 0 12px}
.pb-amish-area-form label{display:grid;gap:7px;font-weight:700}
.pb-amish-area-form input,.pb-amish-area-form select{min-height:48px;padding:10px 14px;border:1px solid #84958b;border-radius:7px;background:white;font:inherit}
.pb-amish-area-form input{width:300px;max-width:100%}
.pb-amish-area-form button{min-height:48px}
#amish-area-choices{display:grid;gap:8px;margin:10px 0}
.pb-community-distance{display:block;font-weight:700;color:#245b3d;margin-top:8px}
#amish-community-grid [hidden]{display:none!important}
@media(max-width:600px){.pb-amish-area-form{display:grid;grid-template-columns:1fr 1fr;padding:14px}.pb-amish-area-form label:first-child{grid-column:1/-1}.pb-amish-area-form input{width:100%;box-sizing:border-box}.pb-amish-area-form button{padding:10px}}

/* Visitor experiences */
.pb-ticket-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:20px 0 30px}
.pb-ticket-card{border:1px solid #d8e1da;border-radius:14px;overflow:hidden;background:#fff}
.pb-ticket-card>button{display:block;width:100%;padding:0;text-align:left;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;height:100%}
.pb-ticket-card img{display:block;width:100%;height:200px;object-fit:cover}
.pb-ticket-copy{display:grid;gap:10px;padding:18px}
.pb-ticket-copy>strong{font:700 24px/1.2 Georgia,serif}
.pb-ticket-copy small{font-size:14px;line-height:1.5;color:#52605a}
.pb-ticket-copy em{font-size:14px;font-style:normal;font-weight:700;color:#173d57}
.pb-ticket-price{font-size:19px;font-weight:800;color:#24583e}
.pb-visitor-stars{color:#ad7511;letter-spacing:2px;white-space:nowrap}
.pb-visitor-rating{margin:6px 0}
.pb-visitor-dialog{width:min(1040px,calc(100vw - 32px));max-width:1040px;max-height:88dvh;border:0;border-radius:16px;padding:0;color:#24352c;box-shadow:0 20px 70px #0005}
.pb-visitor-dialog::backdrop,.pb-visitor-lightbox::backdrop{background:#061528b8}
.pb-visitor-dialog-bar{position:sticky;top:0;background:#142e49;z-index:5;text-align:right;padding:10px 18px;margin:0}
.pb-visitor-dialog-bar button{background:#fff;color:#142e49;border:0;border-radius:6px;padding:9px 16px;font-size:15px;font-weight:700;cursor:pointer}
.pb-visitor-dialog-content{padding:26px 30px;min-width:0;overflow-wrap:anywhere}
.pb-visitor-heading h2{font:700 clamp(28px,4vw,40px)/1.15 Georgia,serif;margin:10px 0}
.pb-visitor-heading p{line-height:1.65}
.pb-visitor-gallery{display:flex;gap:12px;overflow-x:auto;padding:4px 0 16px;margin:16px 0 24px;scroll-snap-type:x proximity}
.pb-visitor-gallery button{padding:0;border:0;background:#eee;border-radius:10px;overflow:hidden;flex:0 0 290px;height:195px;cursor:zoom-in;scroll-snap-align:start}
.pb-visitor-gallery img{width:100%;height:100%;object-fit:cover;display:block}
.pb-ticket-options details{border:1px solid #c9d7cc;border-radius:10px;margin:12px 0;overflow:hidden}
.pb-ticket-options summary{display:flex;justify-content:space-between;gap:16px;cursor:pointer;padding:18px 20px;background:#edf4ed;font-size:18px;font-weight:700}
.pb-ticket-options summary::before{content:'+';color:#1b5539}
.pb-ticket-options details[open] summary::before{content:'-'}
.pb-ticket-options summary span{flex:1}
.pb-ticket-option-body{padding:18px 22px}
.pb-ticket-option-body p{line-height:1.6}
.pb-ticket-table-wrap{overflow-x:auto}
.pb-ticket-options table{border-collapse:collapse;width:100%;max-width:580px;font-size:16px}
.pb-ticket-options caption{text-align:left;font-size:13px;color:#58685c;margin-bottom:8px}
.pb-ticket-options th,.pb-ticket-options td{padding:10px 12px;border-bottom:1px solid #dde4dd;text-align:left}
.pb-ticket-options td{font-weight:700;white-space:nowrap}
.pb-visitor-book{display:inline-block;background:#24583e;color:white!important;text-decoration:none;padding:12px 17px;border-radius:7px;margin:8px 0;font-weight:700}
.pb-visitor-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin:28px 0}
.pb-visitor-facts>div{border-top:1px solid #dce3dc;padding:14px 0}
.pb-visitor-facts dt{font-weight:800;font-size:14px;margin-bottom:7px;color:#173d57}
.pb-visitor-facts dd{margin:0;font-size:15px;line-height:1.65}
.pb-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:15px 0}
.pb-review-grid article{background:#f5f6f2;padding:18px;border-radius:10px}
.pb-review-grid p{font:18px/1.6 Georgia,serif}
.pb-review-grid small{font-size:12px;color:#687169}
.pb-visitor-links{display:flex;gap:20px;flex-wrap:wrap;padding:15px 0}
.pb-visitor-lightbox{max-width:92vw;max-height:92dvh;border:0;border-radius:10px;padding:15px;background:#fff}
.pb-visitor-lightbox img{display:block;max-width:85vw;max-height:70dvh;object-fit:contain}
.pb-visitor-lightbox form{text-align:right}
.pb-visitor-lightbox button{padding:9px 14px;cursor:pointer}
.pb-community-intro{padding:22px 0;border-top:1px solid #dce3dc}
.pb-community-photo-strip{display:flex;gap:12px;overflow-x:auto}
.pb-community-photo-strip img{width:250px;height:170px;object-fit:cover;border-radius:9px}
.pb-amish-category-nav{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.pb-amish-category-nav button{padding:14px 22px;min-height:50px;border:1px solid #183853;border-radius:8px;font-weight:700;font-size:16px;color:#183853;background:#fff;cursor:pointer}
.pb-amish-category-nav button[aria-pressed=true]{background:#183853;color:#fff}
#amish-attractions-content[hidden],#amish-community-content[hidden]{display:none!important}
#destination-paid-facilities:empty{display:none}
.pb-visitor-resource-grid>button{padding:18px;text-align:left;border:1px solid #dce3dc;border-radius:10px;background:white;color:#203b2d;font:inherit;cursor:pointer}
.pb-visitor-resource-grid>button strong,.pb-visitor-resource-grid>button small,.pb-visitor-resource-grid>button span{display:block;margin:5px 0}
#attraction-visitor-guide{margin-top:28px}
@media(max-width:850px){.pb-ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pb-visitor-facts{grid-template-columns:1fr}}
@media(max-width:560px){.pb-ticket-grid{grid-template-columns:1fr}.pb-visitor-dialog-content{padding:18px}.pb-visitor-gallery button{flex-basis:240px;height:165px}.pb-ticket-options summary{padding:15px 12px;font-size:16px}.pb-ticket-option-body{padding:14px}.pb-review-grid{grid-template-columns:1fr}.pb-amish-category-nav{display:grid;grid-template-columns:1fr 1fr}.pb-amish-category-nav button{padding:12px 9px;font-size:14px}.pb-visitor-dialog{width:calc(100vw - 16px);max-height:94dvh}.pb-ticket-card img{height:210px}}

body:not(.pb-main-page) #home-amish,
body:not(.pb-main-page) #home-amish-all,
body:not(.pb-main-page) #amish-filter,
body:not(.pb-main-page) .pb-region-grid [data-amish-directory]{display:none!important}

#visitor-facility-directory{margin-top:40px;border-top:1px solid #dce3dc;padding-top:28px}
#visitor-facility-directory>label{display:grid;gap:8px;font-weight:700;max-width:460px}
#visitor-facility-search{padding:13px 15px;min-height:48px;border:1px solid #9aab9e;border-radius:7px;font:inherit}

.pb-all-destination-card>a{display:block;width:100%;height:100%;text-align:left;text-decoration:none;color:inherit;background:white}

#home-regions{scroll-margin-top:100px}

/* Mobile destination header layout fix 2026-10-21 */
@media(max-width:760px){
.pb-home #home-regions .pb-section-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;column-gap:12px!important;row-gap:10px!important;align-items:start!important}
.pb-home #home-regions .pb-region-heading-link{grid-column:1!important;grid-row:1!important;min-width:0!important;display:block!important;flex:none!important;max-width:100%!important;text-decoration:none!important}
.pb-home #home-regions .pb-region-heading-link h2{font-size:clamp(25px,6.4vw,36px)!important;line-height:1.15!important;margin:0 0 8px!important}
.pb-home #home-regions .pb-region-heading-link p{font-size:14px!important;line-height:1.45!important;margin:0!important}
.pb-home #home-regions .pb-region-pause{grid-column:2!important;grid-row:1!important;position:static!important;align-self:start!important;margin:0!important;white-space:nowrap!important}
.pb-home #home-regions #view-all-destinations{grid-column:1/-1!important;grid-row:2!important;justify-self:start!important;position:static!important;white-space:normal!important;margin:0!important;font-size:14px!important}
}

/* Compact mobile Amish directory, 2026-10-21 */
@media(max-width:760px){
.pb-home #amish-communities-page{padding-top:14px!important}
.pb-home #amish-communities-page>.pb-text-link{font-size:13px!important;line-height:1.35!important}
.pb-home #amish-communities-page h1{font-size:clamp(27px,7vw,34px)!important;line-height:1.14!important;letter-spacing:-.025em!important;margin:16px 0 9px!important}
.pb-home #amish-communities-page>p:not(.pb-data-note){font-size:14px!important;line-height:1.5!important;margin:0 0 8px!important}
.pb-home #amish-communities-page>.pb-data-note{font-size:11px!important;line-height:1.45!important;margin:8px 0 12px!important}
.pb-home #amish-area-form{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;padding:13px!important;margin:12px 0!important;border-radius:12px!important;align-items:end!important}
.pb-home #amish-area-form label{font-size:12px!important;line-height:1.3!important;gap:5px!important;min-width:0!important}
.pb-home #amish-area-form label:first-child{grid-column:1/-1!important}
.pb-home #amish-area-form input,.pb-home #amish-area-form select{font-size:14px!important;min-height:42px!important;height:42px!important;padding:8px 10px!important;box-sizing:border-box!important;width:100%!important}
.pb-home #amish-area-form button{font-size:13px!important;min-height:42px!important;padding:8px 9px!important;line-height:1.2!important;white-space:normal!important}
.pb-home #amish-area-form button[type=submit]{grid-column:2!important;grid-row:2!important}
.pb-home #amish-area-form label:nth-child(2){grid-column:1!important;grid-row:2!important}
.pb-home #amish-area-reset{grid-column:1/-1!important;min-height:36px!important;justify-self:start!important;padding:7px 12px!important}
.pb-home #amish-communities-page .pb-amish-category-nav{margin:16px 0 12px!important;gap:8px!important}
.pb-home #amish-communities-page .pb-amish-category-nav button{font-size:13px!important;line-height:1.3!important;padding:10px 8px!important;min-height:48px!important}
.pb-home #amish-attractions-content h2{font-size:24px!important;line-height:1.2!important}
.pb-home #amish-attractions-content>p{font-size:13px!important;line-height:1.5!important}
}

/* Mobile map: selected business details directly below map */
@media(max-width:760px){
.pb-home #explore .pb-map-layout{margin-bottom:0!important}
.pb-home #explore #place-detail:not([hidden]){display:block!important;position:relative!important;clear:both!important;width:100%!important;max-width:none!important;margin:0 0 16px!important;padding:14px 3.5%!important;box-sizing:border-box!important;scroll-margin-top:90px!important}
.pb-home #explore #place-detail .pb-detail-top{gap:12px!important}
.pb-home #explore #place-detail h2{font-size:clamp(23px,6vw,29px)!important;line-height:1.2!important;margin:8px 0!important}
.pb-home #explore #place-detail p{font-size:13px!important;line-height:1.45!important;margin:7px 0!important}
.pb-home #explore #place-detail .pb-detail-actions{display:flex!important;flex-wrap:wrap!important;gap:7px!important}
.pb-home #explore #place-detail .pb-detail-actions button,.pb-home #explore #place-detail .pb-detail-actions a{font-size:13px!important;min-height:38px!important;padding:8px 11px!important}
.pb-home #explore #map-brewery-beers,.pb-home #explore #map-brewery-nearby{clear:both!important}
}

/* Compact selected brewery beer notice 2026-10-21 */
.pb-home #map-brewery-beers{padding-top:0!important;padding-bottom:0!important;margin-top:0!important;margin-bottom:8px!important;min-height:0!important}
.pb-home #map-brewery-beers .pb-section-head{margin:0!important;padding:0!important;gap:0!important;align-items:center!important}
.pb-home #map-brewery-beers #map-brewery-beers-title{font-family:'DM Sans',Arial,sans-serif!important;font-size:25px!important;font-weight:700!important;line-height:1.2!important;color:#173653!important;margin:0!important;padding:0!important}
.pb-home #map-brewery-beers #map-brewery-beers-note{font-size:12px!important;line-height:1.35!important;margin:3px 0!important;padding:0!important}
.pb-home #map-brewery-beers #map-brewery-beer-track{margin:0!important;padding:0!important;min-height:0!important}
.pb-home #map-brewery-beers #map-brewery-beer-page{margin:0!important;padding:0!important}
.pb-home #map-brewery-beers a,.pb-home #map-brewery-beers button{font-size:12px!important;min-height:0!important;padding:5px 9px!important}
@media(max-width:760px){.pb-home #map-brewery-beers #map-brewery-beers-title{font-size:25px!important}.pb-home #map-brewery-beers{margin-bottom:8px!important}}

/* Nearby visitor attractions heading */
.pb-home .pb-nearby-ticketed > h3{color:#1979bf!important;}

/* Homepage banner rotation, 22 October 2026. Full desktop artwork; fixed search below. */
.pb-banner-home{height:auto!important;max-width:1800px;background:#f7f6f0!important}
.pb-hero-carousel{position:relative;overflow:hidden;background:#0c2b1c}
.pb-hero-slide{display:block;width:100%;aspect-ratio:3/1}
.pb-hero-slide[hidden]{display:none!important}
.pb-hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:left center}
.pb-hero-controls{display:flex;justify-content:center;align-items:center;gap:14px;background:#103b2b;padding:6px 12px}
.pb-home .pb-hero-controls button{background:transparent;border:1px solid #ffffff70;color:white;min-height:32px;min-width:34px;padding:4px 9px;border-radius:20px;font-size:12px}
.pb-hero-dots{display:flex;gap:9px;align-items:center}
.pb-home .pb-hero-dots button{min-width:11px;width:11px;min-height:11px;height:11px;padding:0;border:1px solid #fff}
.pb-home .pb-hero-dots button[aria-pressed=true]{background:#ffc85b;border-color:#ffc85b}
.pb-hero-controls button:focus-visible,.pb-hero-slide:focus-visible{outline:3px solid #ffce65;outline-offset:-3px}
.pb-hero-search-fixed{padding:18px 20px 20px;position:relative;z-index:20}
.pb-hero-search-fixed .pb-home-search{max-width:920px;box-shadow:0 3px 18px #143a2615;border:1px solid #e0e5dd}
@media(max-width:760px){
.pb-banner-home .pb-hero-slide{aspect-ratio:2/1}
.pb-banner-home .pb-hero-slide img{object-fit:cover;object-position:left center}
.pb-hero-search-fixed{padding:14px}
.pb-hero-controls{gap:12px;padding:5px 10px}
}

@media(max-width:760px){.pb-home.pb-main-page .pb-fixed-view{position:absolute;top:calc(78px + 50vw - 70px);right:8px}.pb-home.pb-main-page .pb-fixed-view button{min-width:54px;min-height:36px;padding:8px;font-size:11px}}

/* Search sits inside the bottom of the hero and stays fixed across slides. */
.pb-banner-home .pb-hero-carousel{overflow:visible}
.pb-banner-home .pb-hero-search-fixed{position:absolute;bottom:60px;right:8%;width:min(920px,62%);padding:0;z-index:25}
.pb-banner-home .pb-hero-search-fixed .pb-home-search{width:100%;box-sizing:border-box;margin:0;background:#fffffff5;box-shadow:0 5px 24px #0003}
.pb-banner-home .pb-hero-controls{position:relative}
@media(max-width:1000px){
 .pb-banner-home .pb-hero-carousel{padding-bottom:170px;background:#103b2b}
 .pb-banner-home .pb-hero-search-fixed{bottom:58px;right:14px;width:calc(100% - 28px)}
 .pb-banner-home .pb-hero-controls{position:absolute;bottom:0;left:0;right:0}
}

/* Center the search horizontally at the bottom of the hero. */
.pb-banner-home .pb-hero-search-fixed{left:50%;right:auto;transform:translateX(-50%)}

/* Result thumbnails keep their own landscape frame instead of stretching to card height. */
.pb-home #place-list .pb-place-photo{position:relative;flex:0 0 clamp(112px,28%,180px);width:clamp(112px,28%,180px);height:auto;min-height:0;aspect-ratio:4/3;align-self:flex-start;margin:12px 0 12px 12px;border-radius:6px;background:#f1f3f2;overflow:hidden}
.pb-home #place-list .pb-place-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:700px){.pb-home #place-list .pb-place-photo{flex-basis:100px;width:100px;margin:10px 0 10px 10px}}

/* Compact location and radius controls above the map, reusing existing search handlers. */
.pb-home .pb-search-panel{display:grid;grid-template-columns:minmax(320px,1fr) minmax(440px,auto);gap:14px 24px;padding-top:14px;padding-bottom:14px;background:#f3f6fa;border-bottom:1px solid #cad5e4}
.pb-home .pb-search-panel>.pb-modes{grid-column:1/-1;margin:0;background:#e2e9f3;width:min(650px,100%);border:1px solid #c7d3e3}
.pb-home .pb-search-panel .pb-modes button{color:#142d4e;font-weight:700;font-size:14px}
.pb-home .pb-search-panel .pb-modes button[aria-selected=true]{background:#142d4e;color:white}
.pb-home .pb-search-panel>.pb-search-row{grid-column:1;gap:10px;align-items:flex-end}
.pb-home .pb-search-panel .pb-field label{font-size:12px;font-weight:700;color:#142d4e;text-transform:none;letter-spacing:0;margin-bottom:6px}
.pb-home .pb-search-panel .pb-field>div:not(.pb-suggestions){border-color:#a4b7d0}
.pb-home .pb-search-panel #origin{font-size:15px}
.pb-home .pb-search-panel #gps{color:#142d4e;border-color:#a4b7d0;white-space:nowrap}
.pb-home .pb-search-panel>.pb-radius{grid-column:2;margin:0;align-content:end;align-items:center;gap:8px 12px}
.pb-home .pb-search-panel .pb-radius>strong{color:#142d4e;font-size:13px}
.pb-home .pb-search-panel .pb-radius-buttons{gap:5px}
.pb-home .pb-search-panel .pb-radius button{font-size:13px;color:#142d4e;border-color:#a4b7d0;padding:7px 11px;min-height:42px}
.pb-home .pb-search-panel .pb-radius button[aria-pressed=true]{background:#142d4e;color:white;border-color:#142d4e}
.pb-home .pb-search-panel .pb-custom-radius input{min-height:42px;height:42px;font-size:13px;width:86px;border-color:#a4b7d0}
.pb-home .pb-search-panel .pb-radius small{flex-basis:100%;font-size:11px}
.pb-home .pb-search-panel>.pb-categories,.pb-home .pb-search-panel>.pb-statusline,.pb-home .pb-search-panel>#restaurant-filter{grid-column:1/-1}
.pb-home .pb-search-panel .pb-categories{gap:9px}
.pb-home .pb-search-panel .pb-category{font-size:13px;padding:9px 13px}
.pb-home .pb-search-panel>.pb-statusline{margin:0;min-height:0;color:#334c6c;font-size:12px}
.pb-home .pb-search-panel:has([data-mode="route"][aria-selected="true"])>.pb-search-row{grid-column:1/-1}
.pb-home .pb-search-panel:has([data-mode="route"][aria-selected="true"])>.pb-radius{grid-column:1/-1}
@media(max-width:1100px){
.pb-home .pb-search-panel{grid-template-columns:minmax(0,1fr);gap:12px;padding-left:16px;padding-right:16px}
.pb-home .pb-search-panel>.pb-radius,.pb-home .pb-search-panel>.pb-search-row{grid-column:1/-1}
}
@media(max-width:700px){
.pb-home .pb-search-panel .pb-modes button{font-size:11px;padding:8px 4px}
.pb-home .pb-search-panel #origin{font-size:14px}
.pb-home .pb-search-panel .pb-radius>strong{display:block}
.pb-home .pb-search-panel .pb-radius-buttons{width:auto;flex:1;flex-wrap:wrap}
.pb-home .pb-search-panel .pb-radius button{font-size:12px;min-height:38px;padding:7px}
.pb-home .pb-search-panel .pb-custom-radius input{width:70px;min-height:38px;height:38px}
.pb-home .pb-search-panel .pb-category{font-size:12px;padding:7px 10px}
}

/* Keep the MAP/LIST control with the selected destination or place. */
.pb-context-view-slot{display:flex;justify-content:flex-start;align-items:center;width:100%;margin:0 0 14px;clear:both}
#place-view-switch.pb-context-view{position:static!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;display:flex;z-index:auto;flex:0 0 auto}
#explore>.pb-context-view-slot{padding:10px 3.5% 0;margin-bottom:10px}
#destination-guide>.pb-context-view-slot{margin-top:0}
@media(max-width:760px){#explore>.pb-context-view-slot{padding-left:16px;padding-right:16px}.pb-context-view-slot{margin-bottom:12px}}

/* Admission filters travel with the attraction map/list controls. */
#place-view-switch:has(.pb-admission-buttons:not([hidden])){flex-wrap:wrap;gap:5px}
.pb-admission-buttons{display:flex;gap:5px;margin-right:8px;padding-right:10px;border-right:1px solid #ffffff70}
.pb-admission-buttons[hidden],.pb-admission-note[hidden]{display:none!important}
.pb-home #place-view-switch .pb-admission-buttons button{background:#e9eff6;color:#142d4e;border:1px solid #d0dceb;font-weight:700}
.pb-home #place-view-switch .pb-admission-buttons button[aria-pressed=true]{background:#fff;color:#142d4e;box-shadow:inset 0 -3px #e8b34d}
#place-view-switch .pb-admission-note{flex-basis:100%;font-size:11px;line-height:1.4;color:white;padding:2px 8px 5px;max-width:360px}
@media(max-width:760px){.pb-admission-buttons{margin-right:2px;padding-right:6px}.pb-home #place-view-switch.pb-context-view button{min-width:54px;padding:10px;font-size:12px}}

/* Compact admission dropdown before MAP and LIST. */
.pb-home #place-view-switch #pb-admission-select{background:#fff;color:#142d4e;border:1px solid #c7d4e4;border-radius:5px;font:700 14px/1.3 Arial,sans-serif;min-height:44px;padding:9px 32px 9px 12px;max-width:220px;cursor:pointer}
@media(max-width:760px){.pb-home #place-view-switch #pb-admission-select{font-size:12px;min-height:40px;padding:8px 24px 8px 9px;max-width:185px}}

/* Plain controls: admission, MAP, LIST and destination selector. */
.pb-home #place-view-switch{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0;gap:8px}
.pb-home #place-view-switch>button{background:#fff;color:#142d4e;border:1px solid #9baec7;min-height:44px}
.pb-home #place-view-switch>button[aria-pressed=true]{background:#142d4e;color:#fff;border-color:#142d4e}
#place-view-switch .pb-admission-buttons{border:0;margin:0;padding:0}
.pb-home #place-view-switch #pb-destination-select{background:#fff;color:#142d4e;border:1px solid #a4b7d0;border-radius:5px;min-height:44px;padding:9px 30px 9px 12px;font-size:14px;max-width:300px;cursor:pointer}
#place-view-switch .pb-admission-note{color:#40536c;padding:0;max-width:none;flex-basis:auto}
#place-view-switch #pb-destination-select[hidden]{display:none!important}
#destination-guide.pb-results-first>.pb-destination-intro{display:none!important}
#destination-guide.pb-results-first #destination-paid-facilities>.pb-attraction-overview{display:none!important}
#destination-guide.pb-results-first #destination-paid-facilities .pb-nearby-ticketed>h3,
#destination-guide.pb-results-first #destination-paid-facilities .pb-nearby-ticketed>p:not(.pb-ticket-filter-status){display:none!important}
#destination-guide.pb-results-first #destination-paid-facilities .pb-ticket-filter-status{margin:0 0 12px}
#destination-guide.pb-results-first>.pb-context-view-slot{margin-bottom:14px}
@media(max-width:760px){
.pb-home #place-view-switch{max-width:100%;flex-wrap:wrap}
.pb-home #place-view-switch #pb-destination-select{max-width:100%;font-size:13px;min-height:40px}
#place-view-switch .pb-admission-note{flex-basis:100%}
}

#explore>.pb-context-view-slot{scroll-margin-top:94px;min-height:54px;background:var(--cream);padding-bottom:8px}
