
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;
 --cream: #F5F0EB;
 --sand: #E8DFD5;
 --charcoal: #2C2C2C;
 --dark: #1A1A1A;
 --off-white: #FAFAF8;
 --white: #FFFFFF;
 --gold-ink: var(--c-8a6d20);
 --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;
}





.pg-easter-hero h1 {
 font-family: var(--font-heading);
 font-size: var(--display-xl);
 font-weight: var(--fw-bold);
 line-height: 1.15;
 margin-bottom: 20px;
 letter-spacing: -1px;
 opacity: 0;
 animation: fadeSlideUp 0.35s ease 0.17s forwards;
 color: var(--c-ffffff);
}

.pg-easter-hero-subtitle {
 font-size: var(--fs-1_15rem);
 font-weight: 400;
 margin-bottom: 32px;
 opacity: 0;
 animation: fadeSlideUp 0.35s ease 0.25s forwards;
 color: var(--c-ffffff-a92);
}

.pg-easter-hero-subtitle a {
 color: var(--c-ffffff);
 text-decoration: underline;
 text-underline-offset: 3px;
}

.pg-easter-hero-cta {
 display: inline-block;
 background: var(--terracotta);
 color: var(--white);
 padding: 14px 40px;
 border-radius:999px;
 font-size: var(--fs-1rem);
 font-weight: var(--fw-semibold);
 text-decoration: none;
 transition: all var(--dur-default) ease;
 border: 2px solid var(--terracotta);
 opacity: 0;
 animation: fadeSlideUp 0.35s ease 0.35s forwards;
}

@media (hover: hover) and (pointer: fine){.pg-easter-hero-cta:hover {
 background: var(--terracotta-dark);
 transform: translateY(-2px);
 box-shadow: 0 6px 20px var(--c-ab5332-a25);
}}


.pg-easter-hero-badge-stars {
 display: inline-flex;
 gap: 2px;
 font-size: var(--fs-16px);
}

.pg-easter-hero-badge-text {
 font-size: var(--fs-small);
 line-height: 1.5;
 font-weight: var(--fw-bold);
 color: var(--charcoal);
}

.pg-easter-hero-badge-sub {
 font-size: var(--fs-small);
 color: var(--fg-muted);
}

.pg-easter-hero-badge {
 display: inline-flex;
 align-items: center;
 gap: 10px;
 margin-top: 32px;
 background: var(--white);
 border-radius: var(--r-md);
 padding: 14px 18px;
 box-shadow: 0 4px 12px var(--c-000000-a08);
 opacity: 0;
 animation: fadeSlideUp 0.35s ease 0.42s forwards;
}

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

.pg-reveal.pg-visible {
 opacity: 1;
 transform: translateY(0);
}

.pg-section {
 padding: var(--sec-pad-y) var(--pg-axis-inset);
}

.pg-container {
 max-width: none;
 margin: 0;
 padding: 0;
}

.pg-section-title {
 font-family: var(--font-heading);
 font-size: var(--fs-fluid-62);
 font-weight: var(--fw-bold);
 line-height: 1.1;
 letter-spacing: -0.3px;
 color: var(--charcoal);
 margin-bottom: var(--space-16);
}

.pg-section-desc {
 font-size: var(--fs-18px);
 line-height: 1.6;
 color: var(--fg-muted);
 max-width: 65ch;
}

.pg-gift-section .pg-section-desc {
 color: inherit;
}

.pg-nowrap {
 white-space: nowrap;
}

.pg-intro-section {
 background: var(--off-white);
}

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

.pg-intro-text {}

.pg-intro-text p {
 margin-bottom: 20px;
}

.pg-intro-images {
 position: relative;
}

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

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

.pg-intro-img-1 {
 position: static;
 width: 100%;
 max-width: 420px;
 aspect-ratio: 920 / 1120;
}

.pg-menu-section {
 background: var(--cream);
}

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

.pg-menu-card {
 background: var(--white);
 border-radius: var(--r-lg);
 overflow: hidden;
 box-shadow: 0 4px 12px var(--c-000000-a06);
 display: flex;
 flex-direction: column;
}

.pg-menu-card-img {
 width: 100%;
 aspect-ratio: 16/10;
 overflow: hidden;
 position: relative;
}

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

.pg-menu-card-body {
 padding: 24px;
 flex: 1;
 display: flex;
 flex-direction: column;
 align-items: flex-start;
}

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

.pg-menu-card-price {
 margin-top: auto;
 font-size: var(--fs-16px);
 font-weight: var(--fw-bold);
 color: var(--terracotta);
 background: var(--cream);
 display: inline-block;
 padding: 6px 12px;
 border-radius: 6px;
}

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

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

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

.pg-cta-card .pg-promo-highlight {
 color: var(--white);
 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-16px);
 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-atmosphere-section {
 background: var(--off-white);
}

.pg-atmosphere-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 40px;
 margin-top: 48px;
}

.pg-atmosphere-item {
 text-align: left;
}

.pg-atmosphere-item h3 {
 font-family: var(--font-heading);
 font-size: var(--fs-20px);
 font-weight: var(--fw-semibold);
 color: var(--dark);
 margin-bottom: 12px;
}.pg-atmosphere-item p{
 font-size: var(--fs-16px);
 color: var(--fg-muted);
 line-height: 1.6;
}

.pg-reservations-section {
 background: var(--cream);
}

.pg-reservation-box {
 background: linear-gradient(135deg, var(--white) 0%, var(--c-ab5332-a08) 100%);
 border: 2px solid var(--gold);
 padding: 48px;
 border-radius: var(--r-lg);
 text-align: left;
 margin: var(--space-32) 0;
 max-width: 600px;
}

.pg-reservation-box h3 {
 font-family: var(--font-heading);
 font-size: var(--fs-24px);
 font-weight: var(--fw-semibold);
 color: var(--dark);
 margin-bottom: 16px;
}

.pg-reservation-box p {
 font-size: var(--fs-16px);
 color: var(--fg-muted);
 margin-bottom: 24px;
 line-height: 1.7;
}

.pg-phone-link {
 display: inline-block;
 font-family: var(--font-heading);
 font-size: var(--fs-24px);
 font-weight: var(--fw-semibold);
 color: var(--terracotta-dark);
 text-decoration: none;
 border-bottom: 2px solid var(--terracotta-dark);
 transition: all var(--dur-default) ease;
 padding-bottom: 2px;
}

@media (hover: hover) and (pointer: fine){.pg-phone-link:hover {
 color: var(--dark);
 border-bottom-color: var(--dark);
}}

.pg-details-text {
 margin-top: 40px;
 font-size: var(--fs-16px);
 color: var(--fg-muted);
 line-height: 1.7;
}

.pg-details-text strong {
 color: var(--dark);
}

.pg-details-text a {
 color: var(--terracotta);
 text-decoration: none;
 border-bottom: 2px solid var(--terracotta);
 transition: all var(--dur-default) ease;
}

@media (hover: hover) and (pointer: fine){.pg-details-text a:hover {
 color: var(--dark);
 border-bottom-color: var(--dark);
}}

.pg-gift-section {
 background: var(--dark);
 color: var(--white);
 padding: 60px var(--pg-axis-inset);
}

.pg-gift-cta {
 display: inline-block;
 background: var(--gold);
 color: var(--dark);
 padding: 14px 36px;
 border-radius:999px;
 font-weight: 600;
 font-size: var(--fs-16px);
 text-decoration: none;
 transition: all 0.3s;
 margin-top: 20px;
}

@media (hover: hover) and (pointer: fine){.pg-gift-cta:hover {
 background: var(--gold-light);
 transform: translateY(-2px);
 box-shadow: 0 8px 24px var(--c-c9a96e-a30);
}}

.pg-faq-section {
 background: var(--off-white);
}

.pg-social-proof-section {
 background: var(--cream);
 padding: 80px var(--pg-axis-inset);
 text-align: center;
}

.pg-social-proof-inner {
 max-width: 900px;
 margin: 0 auto;
}

.pg-rating-display {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 20px;
 margin-bottom: 40px;
}

.pg-rating-stars {
 display: inline-flex;
 gap: var(--space-4);
 flex-wrap: nowrap;
 font-size: var(--fs-28px);
 color: var(--gold-ink);
}

.pg-rating-basis {
 font-size: var(--fs-16px);
 color: var(--fg-muted);
}

.pg-rating-count {
 font-family: var(--font-heading);
 font-size: var(--fs-20px);
 font-weight: var(--fw-semibold);
 color: var(--dark);
}

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

.pg-testimonial {
 background: var(--white);
 padding: 24px;
 border-radius: 12px;
 box-shadow: 0 4px 12px var(--c-000000-a06);
}

.pg-testimonial-quote {
 font-size: var(--fs-16px);
 color: var(--fg-muted);
 line-height: 1.6;
 margin-bottom: 12px;
}

.pg-testimonial-author {
 font-size: var(--fs-small);
 font-weight: var(--fw-semibold);
 color: var(--terracotta);
}

.pg-static-links {
 background: var(--off-white);
 color: var(--charcoal);
 padding: 60px var(--pg-axis-inset);
}

.pg-static-links h2 {
 font-family: var(--font-heading);
 font-size: var(--fs-28px);
 font-weight: var(--fw-semibold);
 letter-spacing: -0.01em;
 margin-bottom: 40px;
 text-align: center;
}

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

.pg-link-item a {
 display: block;
 padding: 20px;
 background: var(--white);
 color: var(--terracotta-dark);
 text-decoration: none;
 border-radius: var(--r-md);
 font-weight: var(--fw-semibold);
 font-size: var(--fs-16px);
 transition: all var(--dur-default) ease;
 border: 1px solid var(--sand);
 text-align: center;
}

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

@media (max-width: 1024px) {


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

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

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

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

@media (max-width: 768px) {

 .pg-easter-hero h1 {
 font-size: var(--display-md);
 }


 .pg-easter-hero-cta {
 white-space: nowrap;
 }

 .pg-easter-hero-subtitle {
 font-size: var(--fs-1_05rem);
 }

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

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

 .pg-rating-display {
 flex-direction: column;
 gap: var(--space-8);
 }

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

 .pg-cta-band {
 padding-block: 40px;
 }

 .pg-cta-card {
 padding: 32px 24px;
 max-width: 100%;
 }

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

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

 .pg-phone-link {
 font-size: var(--fs-20px);
 }

 .pg-reservation-box {
 padding: 32px 24px;
 }

 .pg-gift-section {
 padding-block: 40px;
 }

 .pg-static-links {
 padding-block: 40px;
 }

 .pg-static-links h2 {
 font-size: var(--fs-22px);
 }

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

 .pg-link-item a {
 padding: 16px;
 }

 .pg-social-proof-section { padding-block: 40px; }
}

@media (max-width: 480px) {

 .pg-easter-hero-subtitle {
 margin-bottom: 24px;
 }

 .pg-easter-hero-cta {
 padding: 12px 32px;
 }

 .pg-phone-link {
 font-size: var(--fs-18px);
 }

 .pg-reservation-box {
 padding: 24px 16px;
 }

 .pg-cta-band {
 padding-block: 30px;
 }

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

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

 .pg-gift-section {
 padding-block: 30px;
 }

 .pg-static-links {
 padding-block: 30px;
 }

 .pg-link-item a {
 padding: 14px;
 }
}

a:focus-visible { outline: 2px solid var(--terracotta); outline-offset: 2px; }

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

@media print {
 #site-footer { display: none; }
 .pg-faq-section, .pg-menu-section { break-inside: avoid; }
 body { font-size: var(--fs-12pt); color: var(--c-000000); background: var(--c-ffffff); }
}

.pg-gift-section .pg-section-title{color:inherit}
.pg-allergen-line { display: block; margin-top: 8px; }
.pg-experience-note { font-size: var(--fs-small); color: var(--fg-muted); margin: 16px 0 0; text-align: center; }
