
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; }
}

:root {
 --terracotta: #AB5332;
 --terracotta-dark: #8E4220;
 --olive: #6B7C4E;
 --gold: #C9A96E;
 --gold-light: #D4B97E;
 --gold-on-light: #9A7A2E;
 --cream: #F5F0EB;
 --sand: #E8DFD5;
 --charcoal: #2C2C2C;
 --dark: #1A1A1A;
 --off-white: #FAFAF8;
 --white: #FFFFFF;
 --font-heading: 'Spectral', Georgia, serif;
 --font-body: 'Inter', -apple-system, sans-serif;
}

* { 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);
 }
}

.pg-reviews-hero h1 {
 font-family: var(--font-heading);
 font-size: var(--fs-fluid-109);
 font-weight: var(--fw-bold);
 line-height: 1.1;
 margin-bottom: 24px;
 letter-spacing: -1px;
 animation: fadeSlideUp 0.5s ease both;
}

@media (min-width: 801px) {
 .pg-reviews-hero.pg-hero-split > .pg-reviews-hero-inner { margin-left: max(var(--pg-axis-inset, 56px), calc((100% - 1280px) / 2)); }
}
.pg-rating-stat-label { text-wrap: balance; overflow-wrap: anywhere; }
@media (max-width: 600px) { .pg-reviews-hero h1 { font-size: var(--fs-fluid-110); } }

.pg-reviews-hero-subtitle {
 font-size: var(--fs-1_25rem);
 font-weight: 400;
 margin-bottom: 0;
 animation: fadeSlideUp 0.5s ease 0.1s both;
}

.pg-rating-overview {
 background: var(--cream);
 border-radius: var(--r-xl);
 padding: 56px 48px;
 margin: var(--space-64) auto 56px;
 text-align: center;
 width: min(1280px, calc(100% - 2 * var(--space-48)));
}

.pg-rating-stats {
 display: grid;
 grid-template-columns: repeat(3, minmax(0, 1fr));
 gap: 40px;
}

.pg-rating-stat {
 text-align: center;
}

.pg-rating-stat-number {
 font-family: var(--font-heading);
 font-size: var(--fs-48px);
 font-weight: var(--fw-bold);
 color: var(--dark);
 margin-bottom: 8px;
 font-variant-numeric: lining-nums tabular-nums;
}

.pg-rating-stat-label {
 font-size: var(--fs-15px);
 color: var(--fg-muted);
 font-weight: var(--fw-medium);
}

.pg-tabbed-reviews {
 padding: 80px 48px;
 background: var(--off-white);
}

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

.pg-section-title {
 font-family: var(--font-heading);
 font-size: var(--fs-40px);
 font-weight: var(--fw-bold);
 line-height: 1.15;
 letter-spacing: -0.01em;
 color: var(--dark);
 text-align: center;
 margin-bottom: 24px;
}

.pg-reviews-grid {
 columns: 3 320px;
 column-gap: var(--space-24);
}

.pg-review-card {
 background: var(--white);
 border-radius: var(--r-lg);
 padding: 32px;
 border: 1px solid var(--c-000000-a06);
 box-shadow: 0 4px 12px var(--c-000000-a06);
 break-inside: avoid;
 margin-bottom: var(--space-24);
}

.pg-review-stars {
 display: flex;
 gap: 6px;
 margin-bottom: 16px;
}

.pg-review-star-svg {
 width: 20px;
 height: 20px;
 fill: var(--gold-on-light);
}.pg-review-body{
 font-size: var(--fs-16px);
 color: var(--charcoal);
 line-height: 1.7;
 margin-bottom: 16px;
}

.pg-review-footer {
 display: flex;
 justify-content: space-between;
 align-items: center;
 gap: var(--space-12);
 padding-top: 16px;
 border-top: 1px solid var(--c-000000-a08);
}

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

.pg-review-badge {
 display: inline-block;
 background: var(--cream);
 color: var(--terracotta);
 padding: 4px 10px;
 border-radius: var(--r-pill);
 font-size: var(--fs-12px);
 font-weight: var(--fw-semibold);
}

.pg-reviews-note {
 max-width: 760px;
 margin: var(--space-24) auto 0;
 font-size: var(--fs-13px);
 line-height: 1.6;
 color: var(--fg-muted);
 text-align: center;
}

.pg-cta-band {
 background: var(--dark);
 padding: 80px 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: 56px var(--pg-axis-inset);
 text-decoration: none;
 transition: transform var(--dur-default) ease, box-shadow var(--dur-default) ease;
 max-width: 600px;
}

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

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

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

.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: transform var(--dur-default) ease, box-shadow var(--dur-default) ease;
}

@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-leave-review {
 padding: 80px 48px;
 background: var(--cream);
}

.pg-leave-review-inner {
 max-width: 1000px;
 margin: 0 auto;
 text-align: center;
}

.pg-leave-review h2 {
 font-family: var(--font-heading);
 font-size: var(--fs-40px);
 font-weight: var(--fw-bold);
 line-height: 1.15;
 letter-spacing: -0.01em;
 color: var(--dark);
 margin-bottom: 20px;
}

.pg-leave-review p {
 font-size: var(--fs-17px);
 color: var(--fg-muted);
 margin-bottom: 32px;
 line-height: 1.8;
 max-width: 680px;
 margin-left: auto;
 margin-right: auto;
}

.pg-leave-review p a { color: var(--terracotta); }

.pg-review-platforms-cta {
 display: flex;
 justify-content: center;
 gap: 16px;
 flex-wrap: wrap;
}

.pg-review-platform-link {
 display: inline-block;
 background: var(--terracotta);
 color: var(--white);
 padding: 16px 40px;
 border-radius: var(--r-md);
 font-weight: var(--fw-semibold);
 font-size: var(--fs-15px);
 text-decoration: none;
 transition: background-color var(--dur-default) ease, color var(--dur-default) ease;
 border: 2px solid var(--terracotta);
}

@media (hover: hover) and (pointer: fine){.pg-review-platform-link:hover {
 background: transparent;
 color: var(--terracotta);
}}

.pg-food-cards {
 padding: 80px 48px;
 background: var(--off-white);
}

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

.pg-food-cards-title {
 font-family: var(--font-heading);
 font-size: var(--fs-40px);
 font-weight: var(--fw-bold);
 line-height: 1.15;
 letter-spacing: -0.01em;
 color: var(--dark);
 text-align: center;
 margin-bottom: 24px;
}

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

.pg-food-card {
 background: var(--white);
 border-radius: var(--r-lg);
 overflow: hidden;
 box-shadow: 0 4px 12px var(--c-000000-a06);
 transition: transform var(--dur-default) ease, box-shadow var(--dur-default) ease;
 text-decoration: none;
 color: inherit;
}

@media (hover: hover) and (pointer: fine){.pg-food-card:hover {
 transform: translateY(-4px);
 box-shadow: 0 16px 48px var(--c-000000-a12);
}}

.pg-food-card-img {
 width: 100%;
 aspect-ratio: 4/3;
 overflow: hidden;
 position: relative;
}

.pg-food-card-img img {
 width: 100%;
 height: 100%;
 object-fit: cover;
 transition: transform 0.6s ease;
}

@media (hover: hover) and (pointer: fine){.pg-food-card:hover .pg-food-card-img img {
 transform: scale(1.05);
}}

.pg-food-card-body {
 padding: 28px;
 text-align: center;
}

.pg-food-card-name {
 font-family: var(--font-heading);
 font-size: var(--fs-22px);
 font-weight: var(--fw-semibold);
 color: var(--dark);
 margin-bottom: 8px;
}.pg-food-card-desc{
 font-size: var(--fs-16px);
 color: var(--fg-muted);
 line-height: 1.6;
}

@media (max-width: 1024px) {
 .pg-rating-stats {
 gap: 32px;
 }

 .pg-rating-stat-number {
 font-size: var(--fs-40px);
  font-variant-numeric: lining-nums tabular-nums;
}

 .pg-food-cards-grid {
 grid-template-columns: repeat(2, 1fr);
 }

 .pg-food-card:last-child:nth-child(odd) {
 grid-column: 1 / -1;
 }

 .pg-food-card:last-child:nth-child(odd) .pg-food-card-img {
 aspect-ratio: 16/9;
 }

 .pg-cta-card {
 padding: 48px 56px;
 }
}

@media (max-width: 768px) {
 .pg-reviews-hero-subtitle {
 font-size: var(--fs-16px);
 }

 .pg-tabbed-reviews {
 padding: 60px 24px;
 }

 .pg-section-title {
 font-size: var(--fs-28px);
 margin-bottom: 32px;
 }

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

 .pg-rating-overview {
 padding: 40px 24px;
 margin-top: var(--space-48);
 width: calc(100% - 2 * var(--space-24));
 }

 .pg-rating-stats {
 gap: var(--space-24);
 }

 .pg-rating-stat-number {
 font-size: var(--fs-36px);
  font-variant-numeric: lining-nums tabular-nums;
}

 .pg-cta-band {
 padding: 60px 24px;
 }

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

 .pg-cta-card h2 {
 font-size: var(--fs-24px);
 }

 .pg-leave-review {
 padding: 60px 24px;
 }

 .pg-leave-review h2 {
 font-size: var(--fs-28px);
 margin-bottom: 16px;
 }

 .pg-food-cards {
 padding: 60px 24px;
 }

 .pg-food-cards-title {
 font-size: var(--fs-28px);
 margin-bottom: 32px;
 }

 .pg-food-cards-grid {
 grid-template-columns: 1fr;
 gap: 24px;
 }

 .pg-food-card-img {
 aspect-ratio: 16/9;
 }

}

@media (max-width: 480px) {
 .pg-reviews-hero h1 {
 margin-bottom: 16px;
 }

 .pg-reviews-hero-subtitle {
 font-size: var(--fs-body);
 }

 .pg-tabbed-reviews {
 padding: 48px 16px;
 }

 .pg-section-title {
 font-size: var(--fs-22px);
 margin-bottom: 24px;
 }

 .pg-review-card {
 padding: 16px;
 }.pg-review-body{
 font-size: var(--fs-16px);
 }

 .pg-rating-overview {
 padding: 24px 16px;
 margin-bottom: 40px;
 width: calc(100% - 2 * var(--space-16));
 }

 .pg-rating-stat-number {
 font-size: var(--fs-fluid-111);
  font-variant-numeric: lining-nums tabular-nums;
}

 .pg-rating-stat-label {
 font-size: var(--fs-small);
 }

 .pg-review-star-svg {
 width: 16px;
 height: 16px;
 }

 .pg-cta-band {
 padding: 48px 16px;
 }

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

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

 .pg-cta-card-arrow {
 padding: 10px 20px;
 font-size: var(--fs-13px);
 }

 .pg-leave-review {
 padding: 48px 16px;
 }

 .pg-leave-review h2 {
 font-size: var(--fs-22px);
 margin-bottom: 12px;
 }.pg-leave-review p{
 font-size: var(--fs-16px);
 margin-bottom: 20px;
 }

 .pg-review-platforms-cta {
 gap: 12px;
 }

 .pg-review-platform-link {
 padding: 12px 24px;
 font-size: var(--fs-13px);
 }

 .pg-food-cards {
 padding: 48px 16px;
 }

 .pg-food-cards-title {
 font-size: var(--fs-22px);
 margin-bottom: 24px;
 }

 .pg-food-card-name {
 font-size: var(--fs-18px);
 }.pg-food-card-desc{
 font-size: var(--fs-16px);
 }

}

h1, h2, h3,
p { orphans: 2; widows: 2; }

@media print {
 #site-nav, #site-footer { display: none; }
 body { font-size: var(--fs-12pt); color: var(--c-000000); background: var(--c-ffffff); }
}

a:focus-visible { outline: 2px solid var(--terracotta); outline-offset: 2px; }
.pg-cta-band a:focus-visible { outline-color: var(--white); }
