
body { overflow-wrap: break-word; word-wrap: break-word; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}

--fs-*/--pgv-* set this redesign
   needs. pg-ui-kit.css is the canonical :root; don't re-declare here. */

* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
 font-family: var(--font-body);
 color: var(--charcoal);
 background: var(--off-white);
 line-height: 1.6;
  overflow-wrap: break-word;
}

@keyframes fadeSlideUp {
 from {
 opacity: 0;
 transform: translateY(40px);
 }
 to {
 opacity: 1;
 transform: translateY(0);
 }
}

#awards-hero .awards-hero-inner { max-width: 940px; }
.pgv-awards-hero-row > div { flex: 1 1 420px; min-width: 0; }
#awards-hero h1 {
 font-family: var(--font-heading);
 font-size: var(--fs-fluid-47);
 line-height: .98; letter-spacing: -0.02em; font-weight: 700; color: var(--c-ffffff);
 text-wrap: balance;
}
#awards-hero .pgv-hero-sub { color: var(--c-ffffff); }
.pgv-awards-hero-row {
 display: flex;
 align-items: center;
 gap: 48px;
 flex-wrap: wrap;
}
.pgv-awards-seal {
 width: clamp(150px, 16vw, 220px);
 height: auto;
 flex-shrink: 0;
}
.awards-stats { background: var(--c-14100c); padding: 0 var(--section-pad-x); }
.awards-stats .pgv-hero-strip { position: static; margin: 0 auto; max-width: var(--v2-max); }
@media (max-width: 720px) {
 .pgv-awards-hero-row { flex-direction: column-reverse; text-align: center; gap: 28px; }
 .pgv-awards-seal { width: 140px; }
 #awards-hero .pgv-hero-actions { justify-content: center; }
}


.pg-awards-showcase {
 background: var(--white);
 padding: var(--section-pad-y, 100px) var(--section-pad-x, 48px);
}
.pg-awards-showcase-inner {
 max-width: var(--v2-max, 1280px);
 margin: 0 auto;
}
.pg-highlight-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
 gap: 0;
 margin-top: 8px;
 border-top: 1px solid var(--sand);
}
.pg-highlight {
 padding: 32px 28px 32px 0;
 border-bottom: 1px solid var(--sand);
}
.pg-highlight-grid .pg-highlight:not(:last-child) { border-right: 1px solid var(--sand); }
@media (min-width: 769px) and (max-width: 1060px) {
 .pg-highlight-grid { grid-template-columns: repeat(2, 1fr); }
 .pg-highlight-grid .pg-highlight:nth-child(2n) { border-right: none; }
}
@media (max-width: 900px) {
 .pg-highlight-grid .pg-highlight:not(:last-child) { border-right: none; }
 .pg-highlight { padding-right: 0; }
}
.pg-highlight h3 .pg-highlight-badge { display: inline-block; vertical-align: -2px; margin-right: 8px; }
.pg-highlight h3 {
 font-family: var(--font-heading);
 font-size: var(--fs-21px);
 font-weight: var(--fw-bold);
 margin-bottom: 8px;
 color: var(--dark);
}.pg-highlight p{
 font-size: var(--fs-16px);
 line-height: 1.6;
 color: var(--fg-muted);
 margin: 0;
}
.pg-highlight-badge {
 width: 16px;
 height: 16px;
 display: block;
 flex-shrink: 0;
}

.pg-record-band {
 background: var(--dark);
 color: var(--white);
 padding: 56px var(--section-pad-x, 48px);
}
.pg-record-band-in {
 max-width: var(--v2-max, 1280px);
 margin: 0 auto;
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
 gap: 40px;
}
.pg-record-stat .n {
 font-family: var(--font-heading);
 font-size: var(--fs-46px);
 font-weight: var(--fw-bold);
 color: var(--gold);
 line-height: 1;
 margin-bottom: 14px;
}.pg-record-stat p{
 font-size: var(--fs-16px);
 line-height: 1.6;
 color: var(--c-ffffff-a78);
 margin: 0;
}

.pg-ledger-section {
 background: var(--off-white);
 padding: var(--section-pad-y, 100px) var(--section-pad-x, 48px);
}
.pg-ledger-inner {
 max-width: var(--v2-max, 1280px);
 margin: 0 auto;
}
.pg-ledger-head {
 display: flex;
 justify-content: space-between;
 align-items: flex-end;
 gap: 24px;
 flex-wrap: wrap;
 margin-bottom: 8px;
}
.pg-ledger-head .pg-section-desc {
 font-size: var(--fs-16px);
 color: var(--fg-muted);
 max-width: 560px;
 line-height: 1.6;
}
.pg-ledger-ed {
 font-size: var(--fs-12px);
 letter-spacing: 1.4px;
 text-transform: uppercase;
 color: var(--fg-muted);
 white-space: nowrap;
 padding-bottom: 4px;
}
.pg-ledger-table-wrap {
 overflow-x: auto;
 margin-top: 32px;
 -webkit-overflow-scrolling: touch;
}
.pg-ledger-table-wrap:focus-visible {
 outline: 2px solid var(--terracotta);
 outline-offset: 3px;
}
.pg-ledger-table {
 width: 100%;
 min-width: 640px;
 border-collapse: collapse;
 font-size: var(--fs-15px);
}
.pg-ledger-table thead th {
 text-align: left;
 font-size: var(--fs-12px);
 letter-spacing: 1.2px;
 text-transform: uppercase;
 color: var(--fg-muted);
 font-weight: var(--fw-semibold);
 padding: 0 16px 12px;
 border-bottom: 2px solid var(--charcoal);
}
.pg-ledger-table thead th:last-child,
.pg-ledger-table tbody td:last-child { text-align: right; }
.pg-ledger-table tbody tr {
 border-bottom: 1px solid var(--sand);
}
.pg-ledger-table tbody tr:nth-child(even) { background: var(--c-e8dfd5-a28); }
.pg-ledger-table td {
 padding: 16px;
 vertical-align: middle;
}
.pg-ledger-year {
 font-family: var(--font-heading);
 font-weight: var(--fw-bold);
 color: var(--charcoal);
 white-space: nowrap;
}
.pg-ledger-award {
 font-weight: var(--fw-semibold);
 color: var(--dark);
}
.pg-ledger-issuer {
 color: var(--fg-muted);
 font-size: var(--fs-14px);
}
.pg-ledger-pill {
 display: inline-block;
 font-size: var(--fs-11px);
 font-weight: var(--fw-semibold);
 letter-spacing: 0.8px;
 text-transform: uppercase;
 padding: 5px 12px;
 border-radius: 100px;
 border: 1.5px solid currentColor;
 white-space: nowrap;
}
.pg-ledger-pill--winner { color: var(--terracotta); }
.pg-ledger-pill--silver { color: var(--gold-on-light, var(--c-8a6d20)); }
.pg-ledger-pill--listed { color: var(--gold-on-light, var(--c-8a6d20)); }
.pg-ledger-pill--placement { color: var(--fg-muted); }
@media (max-width: 640px) {
 .pg-ledger-table { font-size: var(--fs-14px); }
 .pg-ledger-issuer { display: block; margin-top: 2px; }
}

.pg-special-section {
 background: var(--off-white);
 padding: 100px 48px;
}

.pg-special-inner {
 max-width: 1280px;
 margin: 0 auto;
}

.pg-special-grid {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 80px;
 align-items: center;
}

.pg-special-text p {
 max-width: 65ch;
 font-size: var(--fs-17px);
 color: var(--fg-muted);
 line-height: 1.8;
 margin-bottom: 20px;
}

.pg-special-highlight {
 font-style: italic;
 color: var(--terracotta);
 font-weight: var(--fw-medium);
}

.pg-special-images {
 position: relative;
 height: 480px;
}

.pg-special-img {
 position: absolute;
 border-radius: var(--r-lg);
 overflow: hidden;
 box-shadow: 0 16px 48px var(--c-000000-a12);
}

.pg-special-img img {
 width: 100%;
 height: 100%;
 object-fit: cover;
}

.pg-special-img-1 {
 width: 280px;
 height: 340px;
 top: 0;
 left: 0;
 transform: rotate(-3deg);
 z-index: 2;
}

.pg-special-img-2 {
 width: 240px;
 height: 300px;
 top: 60px;
 right: 0;
 transform: rotate(2deg);
 z-index: 1;
}

.pg-cta-band {
 background: var(--dark);
 padding: 60px 48px;
}

.pg-cta-band-inner {
 max-width: 1280px;
 margin: 0 auto;
 display: flex;
 justify-content: center;
}

.pg-cta-card {
 display: block;
 background: linear-gradient(135deg, var(--terracotta), var(--terracotta-dark));
 border-radius: var(--r-lg);
 padding: 48px var(--pg-axis-inset);
 text-decoration: none;
 transition: all var(--dur-default) ease;
 max-width: 560px;
 position: relative;
}

@media (hover: hover) and (pointer: fine){.pg-cta-card:hover {
 transform: translateY(-6px);
 box-shadow: 0 20px 60px var(--c-ab5332-a35);
}}

.pg-cta-card h3 {
 font-family: var(--font-heading);
 font-size: var(--fs-28px);
 color: var(--white);
 margin-bottom: 8px;
 letter-spacing: -0.01em;
}

.pg-cta-card p {
 font-size: var(--fs-16px);
 color: var(--c-ffffff-a90);
 margin-bottom: 16px;
 line-height: 1.5;
}

.pg-cta-card .pg-promo-highlight {
 color: var(--c-fff3d0);
 font-weight: var(--fw-bold);
}

.pg-cta-card-arrow {
 display: inline-block;
 background: var(--white);
 color: var(--terracotta);
 padding: 12px 28px;
 border-radius: var(--r-md);
 font-weight: var(--fw-bold);
 font-size: var(--fs-15px);
 transition: all 0.3s;
}

@media (hover: hover) and (pointer: fine){.pg-cta-card:hover .pg-cta-card-arrow {
 transform: translateY(-2px);
 box-shadow: 0 8px 24px var(--c-000000-a20);
}}

.pg-promo-tooltip-cta {
 position: absolute;
 top: calc(100% + 10px);
 left: 0;
 min-width: 260px;
 background: var(--dark);
 color: var(--white);
 padding: 16px 20px;
 border-radius: 12px;
 font-size: var(--fs-13px);
 line-height: 1.5;
 opacity: 0;
 visibility: hidden;
 transform: translateY(-8px);
 transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
 pointer-events: none;
 z-index: 1000;
 box-shadow: 0 12px 40px var(--c-000000-a20);
}

.pg-promo-tooltip-cta::before {
 content: '';
 position: absolute;
 top: -6px;
 left: 24px;
 width: 12px;
 height: 12px;
 background: var(--dark);
 transform: rotate(45deg);
}

.pg-promo-tooltip-cta strong {
 color: var(--terracotta);
 font-size: var(--fs-15px);
}

.pg-cta-card-wrap:hover .pg-promo-tooltip-cta,
.pg-cta-card-wrap:focus-within .pg-promo-tooltip-cta {
 opacity: 1;
 visibility: visible;
 transform: translateY(0);
 pointer-events: auto;
}

.pg-community-section {
 background: var(--white);
 padding: 100px 48px;
}

.pg-community-inner {
 max-width: 1280px;
 margin: 0 auto;
}

.pg-community-rating {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 10px;
 margin: 4px 0 48px;
}
.pg-community-rating .pg-rating-stars { font-size: var(--fs-22px); color: var(--terracotta); }
.pg-community-rating p { font-size: var(--fs-16px); font-weight: var(--fw-semibold); color: var(--charcoal); margin: 0; }
.pg-community-disclosure {
 max-width: 760px;
 margin: 40px auto 0;
 font-size: var(--fs-13px);
 line-height: 1.6;
 color: var(--c-666666);
 text-align: center;
}

.pg-visit-section {
 background: var(--off-white);
 padding: 100px 48px;
}

.pg-visit-inner {
 max-width: 1280px;
 margin: 0 auto;
}

.pg-visit-content {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 48px;
 align-items: start;
}

.pg-visit-info {
 background: var(--white);
 padding: 40px;
 border-radius: var(--r-lg);
 box-shadow: 0 4px 12px var(--c-000000-a06);
}

.pg-visit-info h3 {
 font-family: var(--font-heading);
 font-size: var(--fs-22px);
 font-weight: var(--fw-semibold);
 color: var(--dark);
 margin-bottom: 20px;
}.pg-visit-info p{
 font-size: var(--fs-16px);
 line-height: 1.8;
 color: var(--c-555555);
 margin-bottom: 12px;
}

.pg-visit-info a {
 color: var(--terracotta);
 text-decoration: none;
 font-weight: var(--fw-medium);
 transition: color 0.2s;
}

@media (hover: hover) and (pointer: fine){.pg-visit-info a:hover {
 color: var(--terracotta-dark);
}}

.pg-visit-map-container {
 border-radius: var(--r-lg);
 overflow: hidden;
 box-shadow: 0 4px 12px var(--c-000000-a06);
 min-height: 400px;
 display: flex;
 flex-direction: column;
}

.pg-visit-map-container iframe {
 flex: 1 1 auto;
 width: 100%;
 min-height: inherit;
 border: none;
}

.pg-quote-grid {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 32px;
}

.pg-quote-card {
 background: var(--white);
 padding: 32px;
 border-radius: 12px;
 box-shadow: 0 4px 12px var(--c-000000-a06);
}.pg-quote-text{
 font-size: var(--fs-16px);
 color: var(--fg-muted);
 line-height: 1.7;
 font-style: italic;
 margin-bottom: 16px;
}

.pg-quote-author {
 font-weight: var(--fw-semibold);
 color: var(--charcoal);
 font-size: var(--fs-14px);
}

.pg-static-links {
 background: var(--dark);
 color: var(--white);
 padding: 60px 48px;
}

.pg-static-links-inner {
 max-width: 1280px;
 margin: 0 auto;
}

.pg-static-links h3 {
 font-family: var(--font-heading);
 font-size: var(--fs-28px);
 font-weight: var(--fw-semibold);
 margin-bottom: 48px;
 text-align: center;
}

.pg-link-grid {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 24px;
}

.pg-link-item a {
 display: block;
 padding: 24px;
 background: var(--c-ab5332-a15);
 color: var(--white);
 text-decoration: none;
 border-radius: var(--r-md);
 font-weight: var(--fw-semibold);
 font-size: var(--fs-15px);
 transition: all var(--dur-default) ease;
 border: 1px solid var(--c-ab5332-a25);
 text-align: center;
}

@media (hover: hover) and (pointer: fine){.pg-link-item a:hover {
 background: var(--terracotta);
 border-color: var(--terracotta);
 transform: translateY(-2px);
}}

@media (max-width: 1024px) {
 .pg-special-grid {
 gap: 60px;
 }

 .pg-visit-content {
 grid-template-columns: 1fr;
 }

 .pg-link-grid {
 grid-template-columns: repeat(2, 1fr);
 gap: 16px;
 }

 .pg-awards-showcase,
 .pg-special-section,
 .pg-community-section,
 .pg-visit-section {
 padding: 80px 36px;
 }
}

@media (max-width: 768px) {
 .pg-awards-showcase,
 .pg-special-section,
 .pg-community-section,
 .pg-visit-section {
 padding: 60px 24px;
 }

 .pg-special-grid {
 grid-template-columns: 1fr;
 gap: 40px;
 }

 .pg-quote-grid {
 grid-template-columns: 1fr;
 }

 .pg-special-images {
 height: 350px;
 }

 .pg-special-img-1 {
 width: 220px;
 height: 280px;
 }

 .pg-special-img-2 {
 width: 180px;
 height: 230px;
 }

 .pg-link-grid {
 grid-template-columns: 1fr;
 gap: 12px;
 }

 .pg-visit-map-container {
 min-height: 300px;
 }

 .pg-cta-card {
 padding: 32px 24px;
 }

 .pg-cta-card h3 {
 font-size: var(--fs-22px);
 }
 .pg-link-block-grid { grid-template-columns: 1fr; gap: 24px; }

  .pg-cta-band { padding: 32px 24px; }
  .pg-static-links { padding: 32px 24px; }
}

@media (max-width: 480px) {
 .pg-awards-showcase,
 .pg-special-section,
 .pg-community-section,
 .pg-visit-section,
 .pg-static-links {
 padding: 40px 20px;
 }

 .pg-special-grid {
 gap: 24px;
 }

 .pg-special-images {
 height: 280px;
 }

 .pg-special-img-1 {
 width: 180px;
 height: 220px;
 }

 .pg-special-img-2 {
 width: 140px;
 height: 180px;
 }

 .pg-visit-info {
 padding: 24px;
 }

 .pg-visit-map-container {
 min-height: 250px;
 }

 .pg-link-grid {
 gap: 12px;
 }

 .pg-link-item a {
 padding: 18px;
 font-size: var(--fs-14px);
 }

 .pg-quote-grid {
 gap: 20px;
 }

 .pg-quote-card {
 padding: 24px;
 }

 .pg-cta-card {
 padding: 28px 20px;
 }

 .pg-cta-card h3 {
 font-size: var(--fs-20px);
 }.pg-cta-card p{
 font-size: var(--fs-16px);
 }
}

a:focus-visible { outline: 2px solid var(--terracotta); outline-offset: 2px; }
.pg-btn-order-primary:focus-visible { outline: 2px solid var(--white); outline-offset: 2px; }
.pg-btn-order-secondary:focus-visible { outline: 2px solid var(--terracotta); outline-offset: 2px; }

.pg-link-block { max-width: 900px; margin: 0 auto; padding: 40px 24px; }
.pg-link-block h3 { font-family: var(--ff-spectral); font-size: var(--fs-1_4rem); text-align: center; color: var(--charcoal); margin-bottom: 24px; }
.pg-link-block-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.pg-link-block-col h4 { font-family: var(--ff-inter); font-size: var(--fs-0_85rem); font-weight: var(--fw-semibold); text-transform: uppercase; letter-spacing: 1px; color: var(--terracotta); margin-bottom: 12px; }
.pg-link-block-col a { display: block; font-size: var(--fs-0_95rem); color: var(--charcoal); text-decoration: none; padding: 4px 0; transition: color 0.2s; }
@media (hover: hover) and (pointer: fine){.pg-link-block-col a:hover { color: var(--terracotta); }}

h1, h2, h3, .pg-food-hero-sub, .pg-cta-text, 
p { orphans: 2; widows: 2; }

@media print {
 .pg-food-hero, .pg-trust-strip, .pg-link-block, .pg-related-section, #site-nav, #site-footer, .pg-cta-strip, .pg-btn-order-primary, .pg-btn-order-secondary { display: none; }
 .pg-food-story, .pg-faq-section, .pg-menu-section { break-inside: avoid; }
 body { font-size: var(--fs-12pt); color: var(--c-000000); background: var(--c-ffffff); }
}

.pg-breadcrumb { max-width: 900px; margin: 0 auto; padding: 12px 24px; font-size: var(--fs-0_85rem); color: var(--c-666666); }
.pg-breadcrumb a { color: var(--terracotta); text-decoration: none; }
@media (hover: hover) and (pointer: fine){.pg-breadcrumb a:hover { text-decoration: underline; }}
.pg-breadcrumb .pg-sep { margin: 0 8px; color: var(--c-cccccc); }
.pg-breadcrumb .pg-current { color: var(--charcoal); }

.pg-ledger-pill--silver,.pg-ledger-pill--listed{color:var(--c-7a6019)}
.pg-special-text p a{text-decoration:underline;text-underline-offset:2px}


.pg-map-facade {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 6px;
  width: 100%;
  flex: 1 1 auto;
  padding: 24px;
  background:
    repeating-linear-gradient(0deg, transparent 0 46px, var(--c-ab5332-a10) 46px 47px),
    repeating-linear-gradient(90deg, transparent 0 46px, var(--c-ab5332-a10) 46px 47px),
    var(--sand, var(--c-e8dfd5));
}
.pg-map-facade .pg-map-facade__pin { width: 26px; height: 26px; color: var(--terracotta, var(--c-ab5332)); flex: 0 0 auto; }
.pg-map-facade .pg-map-facade__name { margin: 0; font-family: var(--font-heading, Georgia, 'Times New Roman', serif); font-size: var(--fs-18px); font-weight: 700; line-height: 1.25; color: var(--charcoal, var(--c-2c2c2c)); }
.pg-map-facade .pg-map-facade__addr { margin: 0 0 8px; font-family: var(--font-body, 'Inter', sans-serif); font-size: var(--fs-14px); line-height: 1.4; color: var(--charcoal, var(--c-2c2c2c)); }
.pg-map-facade .pg-map-facade__load { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; min-width: 44px; margin: 0; padding: 12px 24px; border: 0; border-radius: 999px; background: var(--terracotta, var(--c-ab5332)); color: var(--c-ffffff); font-family: var(--font-body, 'Inter', sans-serif); font-size: var(--fs-14px); font-weight: 600; letter-spacing: 0.3px; cursor: pointer; transition: background 150ms ease; }
@media (hover: hover) and (pointer: fine){.pg-map-facade .pg-map-facade__load:hover { background: var(--terracotta-dark, var(--c-8e4220)); }}
.pg-map-facade .pg-map-facade__load:focus-visible { outline: 2px solid var(--charcoal, var(--c-2c2c2c)); outline-offset: 3px; }
.pg-map-facade .pg-map-facade__link { margin: 0; font-family: var(--font-body, 'Inter', sans-serif); font-size: var(--fs-14px); line-height: 1.4; color: var(--charcoal, var(--c-2c2c2c)); text-decoration: underline; text-underline-offset: 3px; }
@media (hover: hover) and (pointer: fine){.pg-map-facade .pg-map-facade__link:hover { color: var(--terracotta-dark, var(--c-8e4220)); }}
.pg-map-facade .pg-map-facade__note { margin: 8px 0 0; max-width: 46ch; font-family: var(--font-body, 'Inter', sans-serif); font-size: var(--fs-12_5px); line-height: 1.5; color: var(--c-5a5a5a); }
@media (prefers-reduced-motion: reduce) { .pg-map-facade .pg-map-facade__load { transition: none; } }
.pg-visit-map-container .pg-map-facade { width: 100%; }
