.ggc-editorial-shell,.ggc-editorial-extra {
  --ggc-editorial-rule: rgba(193,214,230,.28);
}
.ggc-editorial-shell {
  width: min(calc(100% - 2rem), 73rem);
  margin-inline: auto;
  padding-block: clamp(1.5rem, 5vw, 4.5rem) clamp(3.5rem, 8vw, 6rem);
  color: #cad9e3;
}
.ggc-editorial-shell :is(h1,h2,a,p,dt,dd) { overflow-wrap:anywhere; }
.ggc-editorial-title {
  color:#fff;
  font-size:clamp(2.125rem,5.6vw,4rem);
  line-height:1.06;
  letter-spacing:-.035em;
  font-weight:600;
  margin:0;
}
.ggc-editorial-centered { text-align:center; margin-bottom:clamp(1.5rem,4vw,3.5rem); }
.ggc-editorial-centered .ggc-editorial-title::after {
  content:"";
  display:block;
  width:5rem;
  height:3px;
  margin:1rem auto 0;
  border-radius:2px;
  background:var(--ggc-brand);
}
.ggc-editorial-heading {
  color:#fff;
  font-size:clamp(1.45rem,2.7vw,2rem);
  line-height:1.18;
  font-weight:600;
  margin:0 0 .8rem;
}
.ggc-editorial-eyebrow {
  margin:0 0 .8rem;
  color:#b6d4ea;
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.ggc-editorial-photo {
  display:block;
  width:100%;
  height:clamp(12rem,32vw,29rem);
  object-fit:cover;
  border-radius:var(--ggc-radius);
}
.ggc-editorial-photo--contain { height:auto; object-fit:contain; }
.ggc-restaurant > .ggc-editorial-photo,
.ggc-restaurant-intro { margin-bottom:clamp(1.5rem,4vw,3.5rem); }
.ggc-restaurant-logo {
  display:block;
  width:auto;
  max-width:min(100%,13rem);
  height:auto;
  max-height:5rem;
  object-fit:contain;
  margin-bottom:1rem;
}
.ggc-restaurant-copy { max-width:48rem; margin-top:1rem; font-size:clamp(1rem,1.5vw,1.125rem); }
.ggc-restaurant-actions {
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1.25rem;
}
.ggc-restaurant-action {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  max-width:100%;
  padding:.65rem 1rem;
  border:1px solid var(--ggc-border);
  border-radius:.75rem;
  text-align:center;
  color:#f4f8fc;
  font-weight:600;
  text-decoration:none;
  scroll-margin-top:7rem;
}
.ggc-restaurant-action--primary { background:var(--ggc-brand); }
.ggc-restaurant-action:hover { background:var(--ggc-brand-deep); border-color:var(--ggc-border-active); color:#fff; }
.ggc-restaurant-action:focus-visible { outline:2px solid #b6d4ea; outline-offset:3px; }
.ggc-restaurant-details {
  display:grid;
  gap:clamp(1.5rem,5vw,4rem);
  padding-block:clamp(1.5rem,4vw,2.75rem);
  border-top:1px solid var(--ggc-editorial-rule);
}
.ggc-restaurant-details > section { min-width:0; scroll-margin-top:7rem; }
.ggc-restaurant-hours { margin:0; }
.ggc-restaurant-hours > div,.ggc-restaurant-hours-labels {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:.75rem;
  align-items:start;
}
.ggc-restaurant-hours > div { padding:.7rem 0; border-bottom:1px solid var(--ggc-editorial-rule); }
.ggc-restaurant-hours dd { margin:0; color:#f3f7fa; text-align:right; font-weight:600; }
.ggc-restaurant-hours-labels { margin-top:1rem; font-size:.85rem; color:#b6d4ea; }
.ggc-restaurant-hours-labels span:last-child { text-align:right; }
.ggc-restaurant-note { font-size:.9375rem; margin-top:1rem; }
.ggc-editorial-section { padding-block:clamp(1.5rem,4vw,2.75rem); border-top:1px solid var(--ggc-editorial-rule); scroll-margin-top:7rem; }
.ggc-editorial-section .ggc-editorial-photo:not(:first-child) { margin-top:1.25rem; }
.ggc-editorial-extra:empty { display:none; }
.ggc-editorial-extra .gppk-content-card {
  background:transparent !important;
  border:0 !important;
  border-top:1px solid var(--ggc-editorial-rule) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.ggc-editorial-extra .gppk-content-card__body { padding-inline:0; }
.ggc-certificate-entry {
  display:grid;
  align-items:start;
  gap:clamp(1rem,4vw,3rem);
  padding-block:clamp(1.5rem,4vw,2.75rem);
  border-top:1px solid var(--ggc-editorial-rule);
}
.ggc-certificate-image {
  display:block;
  width:auto;
  max-width:100%;
  max-height:29rem;
  object-fit:contain;
  border-radius:.6rem;
}
.ggc-certificate-copy { min-width:0; max-width:46rem; }
@media (min-width: 48rem) {
  .ggc-restaurant-details--pair { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .ggc-certificate-entry--with-image:has(.ggc-certificate-copy) { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
}

.ggc-certificate-media { display:block; width:fit-content; max-width:100%; }
.ggc-certificate-image--cover { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }

.ggc-marketing-reference header h1 { overflow-wrap:anywhere; hyphens:auto; }
#main-content .ggc-marketing-reference .space-y-6 > .gppk-content-card--split > .gppk-content-card__body {
  padding:clamp(1.35rem,3vw,2rem);
}
