/* editorial.css */
/* Pinch of Taste's editorial theme. No external fonts or reference-site assets. */
.editorial-site {
  --ink: #173544;
  --accent: #af432d;
  --paper: #fff;
  --line: #dce3e5;
  --contrast: #173544;
  --contrast-2: #af432d;
  --contrast-3: #dce3e5;
  --base: #f2f6f6;
  --base-2: #fff;
  --base-3: #fff;
  --gb-container-width: 1180px;
  background: var(--paper);
  color: var(--ink);
  font: 17px/1.7 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.editorial-site a { color: var(--accent); text-underline-offset: 4px; }
.editorial-site a:hover { text-decoration-thickness: 2px; }
.editorial-site a:focus-visible,
.editorial-site button:focus-visible,
.editorial-site input:focus-visible,
.editorial-site textarea:focus-visible,
.editorial-site select:focus-visible,
.editorial-site summary:focus-visible {
  outline: 3px solid #af432d;
  outline-offset: 4px;
}
.editorial-site h1,
.editorial-site h2,
.editorial-site h3 {
  color: var(--ink);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  letter-spacing: -.025em;
}
.editorial-site .site-header {
  display: block;
  padding: 0;
  border-top: 6px solid var(--ink);
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.editorial-site .site-masthead {
  display: grid;
  grid-template-columns: auto minmax(250px, 440px) auto;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
  max-width: 1180px;
  margin: 0 auto;
  padding: 30px 24px 27px;
}
.editorial-site .brand {
  display: inline-block;
  color: var(--ink);
  font: 700 44px/.95 Georgia, "Times New Roman", serif;
  letter-spacing: -.07em;
  text-decoration: none;
  white-space: nowrap;
  min-width: 0;
}
.editorial-site .brand-logo { display: block; width: 330px; max-width: 100%; height: auto; }
.editorial-site .site-footer .brand-logo { width: 310px; }
.editorial-site .brand > span {
  display: inline-block;
  margin: 0 .12em;
  color: var(--accent);
  font-style: italic;
  font-size: .66em;
  letter-spacing: -.08em;
}
.editorial-site .brand-tagline {
  display: block;
  margin-top: 13px;
  color: #536774;
  font: 600 11px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.editorial-site .site-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  gap: 0;
  width: 100%;
  margin: 0;
}
.editorial-site .site-search label {
  grid-column: 1 / -1;
  margin-bottom: 7px;
  color: #536774;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.editorial-site .site-search input {
  min-width: 0;
  width: 100%;
  border: 1px solid #aebdc3;
  border-right: 0;
  border-radius: 0;
  padding: 10px 12px;
  background: #fff;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.5;
}
.editorial-site .site-search input::placeholder { color: #61717b; opacity: 1; }
.editorial-site .site-search button {
  min-height: 44px;
  border: 1px solid var(--ink);
  border-radius: 0;
  padding: 10px 18px;
  background: var(--ink);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}
.editorial-site .site-search button:hover { background: #294b5d; }
.editorial-site .site-social { display: flex; align-items: center; gap: 8px; }
.editorial-site .site-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  min-width: 44px;
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 50%;
  color: var(--ink);
  font: 700 24px/1 Georgia, "Times New Roman", serif;
  text-decoration: none;
}
.editorial-site .site-social a:hover { border-color: var(--accent); color: var(--accent); }
.editorial-site .site-navigation {
  display: flex;
  align-items: center;
  gap: 20px;
  max-width: 1132px;
  margin: 0 auto;
  padding: 0 0 9px;
  border-top: 1px solid var(--line);
}
.editorial-site .site-primary { display: block; flex: 1; }
.editorial-site .site-primary > .nav-list { justify-content: center; gap: 12px; }
.editorial-site .site-primary a,
.editorial-site .site-menu a {
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .025em;
  text-decoration: none;
}
.editorial-site .site-primary > .nav-list > .nav-item > a { padding: 15px 8px 9px; }
.editorial-site .site-primary a:hover,
.editorial-site .site-menu a:hover { color: var(--accent); text-decoration: underline; }
.editorial-site .nav-branch > summary { color: var(--accent); border-radius: 0; }
.editorial-site .nav-branch[open] > summary { background: #eef3f4; }
.editorial-site .site-primary .nav-children {
  border-top: 3px solid var(--accent);
  border-radius: 0;
  box-shadow: 0 10px 24px #1735441a;
}
.editorial-site .site-menu { margin-left: auto; }
.editorial-site .site-menu > summary {
  border: 0;
  border-radius: 0;
  padding: 13px 14px 7px;
  color: var(--ink);
  font-size: 13px;
  letter-spacing: .04em;
}
.editorial-site .site-menu-panel {
  border-top: 3px solid var(--accent);
  border-radius: 0;
  box-shadow: 0 10px 24px #1735441a;
}
.editorial-site main {
  max-width: 1180px;
  margin: 48px auto 72px;
  padding: 0 24px;
}
.editorial-site main.home-page { margin-top: 34px; }
.editorial-site main > article.editorial-home { max-width: none; }
.editorial-site .home-feature {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  align-items: stretch;
  background: #173544;
}
.editorial-site .home-feature-photo { min-width: 0; }
.editorial-site .home-feature-photo > a,
.editorial-site .home-feature-photo .pin-image,
.editorial-site .home-feature-photo .pin-image > a:not(.pin-save) { display: block; width: 100%; height: 100%; }
.editorial-site .home-feature-photo img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 340px;
  aspect-ratio: 6 / 5;
  object-fit: cover;
}
.editorial-site .home-feature-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: clamp(28px, 4vw, 56px);
}
.editorial-site .eyebrow {
  margin: 0 0 17px;
  color: var(--accent);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  line-height: 1.6;
  text-transform: uppercase;
}
.editorial-site .home-feature-copy h1 {
  margin: 0;
  padding: 0;
  color: #fff;
  font-size: clamp(31px, 3.4vw, 46px);
  line-height: 1.13;
  text-align: left;
}
.editorial-site .home-feature-title {
  margin: 19px 0 24px;
  color: #d8e6e9;
  font-size: 17px;
  line-height: 1.6;
}
.editorial-site .home-feature-copy .eyebrow { color: #ffc1ac; }
.editorial-site .theme-button,
.editorial-site .home-about .gb-text-2b2adae5 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  padding: 12px 22px;
  border: 1px solid var(--accent);
  border-radius: 0;
  background: var(--accent);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.6;
  text-decoration: none;
}
.editorial-site .theme-button:hover,
.editorial-site .home-about .gb-text-2b2adae5:hover { background: #88321f; color: #fff; }
.editorial-site .home-sections .home-section {
  margin: 0;
  padding: 42px 0 46px;
  border-bottom: 1px solid var(--line);
}
.editorial-site .home-section h2 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 0 0 28px;
  padding: 0;
  color: var(--ink);
  font-size: clamp(27px, 3vw, 34px);
  line-height: 1.25;
  text-align: center;
}
.editorial-site .home-section h2 .gb-shape { color: var(--accent); font-size: 17px; }
.editorial-site .home-section h2 strong { font-weight: inherit; }
.editorial-site .home-section .gb-element-c57be6f3,
.editorial-site .home-section .gb-element-b915f293,
.editorial-site .home-section .gb-element-85216323,
.editorial-site .home-section .gb-element-4d39d673,
.editorial-site .home-section .gb-element-d90846dd,
.editorial-site .home-section .gb-element-f302c2fb,
.editorial-site .home-section .gb-element-f1b18556,
.editorial-site .home-section .gb-query-b6f31ab4,
.editorial-site .home-section .gb-element-5cc3537f,
.editorial-site .home-section .gb-element-ce096f10 {
  width: 100%;
  max-width: none;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.editorial-site .editorial-home [class*="gb-looper-"] {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  justify-items: stretch;
  gap: 30px 22px;
  width: 100%;
  margin: 0;
  padding: 0;
}
.editorial-site .editorial-home .gb-loop-item {
  display: block;
  align-self: start;
  justify-self: stretch;
  min-width: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: left;
}
.editorial-site .editorial-home .gb-loop-item > .pin-image { display: block; width: 100%; }
.editorial-site .editorial-home .gb-loop-item img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  border: 0;
  border-radius: 0;
  object-fit: cover;
}
.editorial-site .editorial-home .gb-loop-item > h3,
.editorial-site .editorial-home .gb-loop-item > p {
  margin: 13px 0 0;
  padding: 0;
  color: var(--ink);
  font: 700 19px/1.35 Georgia, "Times New Roman", serif;
  letter-spacing: -.015em;
  text-align: left;
  overflow-wrap: normal;
}
.editorial-site .editorial-home .gb-loop-item > h3 a,
.editorial-site .editorial-home .gb-loop-item > p a { color: var(--ink); text-decoration: none; }
.editorial-site .editorial-home .gb-loop-item > h3 a:hover,
.editorial-site .editorial-home .gb-loop-item > p a:hover { color: var(--accent); text-decoration: underline; }
.editorial-site .home-categories .gb-element-08239cc4 {
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: visible;
}
.editorial-site .home-categories .gb-element-e93c66df {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 24px;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: visible;
}
.editorial-site .home-categories .gb-element-e93c66df > .pin-image { display: block; min-width: 0; }
.editorial-site .home-categories .gb-element-e93c66df > .pin-image > a:first-child {
  display: block;
  color: var(--ink);
  font-size: 15px;
  text-align: center;
  text-decoration: none;
}
.editorial-site .home-categories img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  height: auto;
  border: 1px solid #e0e7e8;
  border-radius: 50%;
  object-fit: cover;
}
.editorial-site .home-categories p { margin: 12px 0 0; }
.editorial-site .home-categories a:hover p { text-decoration: underline; }
.editorial-site .home-sections .home-about {
  margin: 44px 0 0;
  padding: 0;
  border: 0;
  background: #eff4f4;
}
.editorial-site .home-about .gb-element-8aaebf2a { margin: 0; padding: 0; }
.editorial-site .home-about .gb-element-73dcec03 {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  align-items: center;
  gap: 44px;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 38px;
}
.editorial-site .home-about .gb-element-b1037f52 { margin: 0; padding: 0; }
.editorial-site .home-about figure { margin: 0; }
.editorial-site .home-about img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  height: auto;
  border-radius: 0;
  object-fit: cover;
}
.editorial-site .home-about .gb-element-dd3d2334 { min-width: 0; padding: 0; }
.editorial-site .home-about h2 { justify-content: flex-start; margin-bottom: 20px; text-align: left; }
.editorial-site .home-about h2 em { font-style: normal; }
.editorial-site .home-about .gb-text-52fc93cc { font-size: 16px; line-height: 1.7; }
.editorial-site .home-about .gb-element-4b6699d0 { margin-top: 24px; text-align: left; }
.editorial-site .recipe-page > article,
.editorial-site .content-page > article { max-width: 760px; }
.editorial-site .recipe-page h1,
.editorial-site .content-page h1 {
  margin: 20px 0;
  font-size: clamp(32px, 4.4vw, 48px);
  line-height: 1.13;
}
.editorial-site .recipe-page h2,
.editorial-site .content-page h2 { margin-top: 42px; font-size: clamp(27px, 3vw, 33px); }
.editorial-site .recipe-page h3,
.editorial-site .content-page h3 { margin-top: 32px; font-size: 25px; }
.editorial-site .recipe-page .byline {
  margin: 18px 0 28px;
  padding: 14px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  color: #536774;
  font-size: 14px;
}
.editorial-site .breadcrumbs { color: #536774; font-size: 12px; }
.editorial-site .breadcrumbs a { color: #536774; }
.editorial-site .recipe-page figure,
.editorial-site .content-page figure { margin: 32px 0; }
.editorial-site .recipe-page figcaption,
.editorial-site .content-page figcaption { margin-top: 9px; color: #536774; font-size: 13px; }
.editorial-site .share-links { gap: 10px 22px; font-size: 13px; }
.editorial-site .recipe-page .recipe {
  margin: 48px 0;
  padding: 32px;
  border: 1px solid #adc0c7;
  border-top: 6px solid var(--ink);
  border-radius: 0;
  background: #f4f7f7;
  scroll-margin-top: 24px;
}
.editorial-site .recipe h2 { margin-top: 0; }
.editorial-site .recipe h3 { margin-top: 28px; }
.editorial-site .recipe .recipe-print-link { display: inline-block; margin-bottom: 20px; font-size: 14px; font-weight: 700; }
.editorial-site .recipe dl { gap: 8px 20px; font-size: 15px; }
.editorial-site .recipe li { margin-bottom: 10px; }
.editorial-site .recipe-nutrition { margin-top: 28px; padding-top: 14px; border-top: 1px solid #cbd8dc; }
.editorial-site #comments { margin-top: 54px; padding-top: 4px; border-top: 1px solid var(--line); }
.editorial-site #comments > article { margin: 24px 0; padding: 22px; border: 1px solid var(--line); background: #f7f9f9; }
.editorial-site #comments > article h3 { margin: 0 0 9px; font-size: 21px; }
.editorial-site #comments > article p { margin: 10px 0; font-size: 15px; }
.editorial-site .contact-form input,
.editorial-site .contact-form textarea,
.editorial-site .recipe-index-search input { border-color: #aebdc3; border-radius: 0; }
.editorial-site .contact-form button,
.editorial-site .recipe-index-search button { min-height: 44px; border-color: var(--ink); border-radius: 0; background: var(--ink); }
.editorial-site .archive-page > h1 { margin-top: 0; font-size: clamp(34px, 4vw, 46px); }
.editorial-site .archive-page .cards { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 34px 24px; }
.editorial-site .archive-page .cards > article { min-width: 0; padding: 0; border: 0; border-radius: 0; overflow: visible; }
.editorial-site .archive-page .cards > article > .pin-image,
.editorial-site .archive-page .cards > article > a:first-child { display: block; margin: 0 0 15px; }
.editorial-site .archive-page .cards .card-image { aspect-ratio: 4 / 5; border-radius: 0; }
.editorial-site .archive-page .cards h2 { margin: 0 0 10px; font-size: 21px; line-height: 1.3; }
.editorial-site .archive-page .cards h2 a { color: var(--ink); text-decoration: none; }
.editorial-site .archive-page .cards h2 a:hover { color: var(--accent); text-decoration: underline; }
.editorial-site .archive-page .cards p { margin: 10px 0; font-size: 14px; line-height: 1.6; }
.editorial-site .site-footer { padding: 46px 24px 22px; border: 0; background: var(--ink); color: #fff; }
.editorial-site .footer-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr;
  gap: 50px;
  max-width: 1132px;
  margin: 0 auto;
}
.editorial-site .site-footer .brand { color: #fff; font-size: 38px; }
.editorial-site .site-footer .brand > span { color: #ffc1ac; }
.editorial-site .site-footer p { color: #dce6ea; font-size: 14px; }
.editorial-site .site-footer h2 { margin: 0 0 12px; color: #fff; font: 700 13px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.editorial-site .footer-grid > div > a:not(.brand) { display: block; width: fit-content; min-height: 38px; color: #eef3f5; font-size: 14px; text-decoration: none; }
.editorial-site .footer-grid > div > a:not(.brand):hover { text-decoration: underline; }
.editorial-site .footer-copyright { max-width: 1132px; margin: 32px auto 0; padding-top: 20px; border-top: 1px solid #ffffff38; font-size: 12px; }
.editorial-site .site-footer a:focus-visible { outline-color: #ffc1ac; }
@media (max-width: 1100px) {
  .editorial-site .site-masthead { grid-template-columns: auto minmax(220px, 1fr) auto; gap: 24px; }
  .editorial-site .site-navigation { margin: 0 24px; }
  .editorial-site .site-primary { display: block; }
  .editorial-site .site-primary > .nav-list { justify-content: flex-start; gap: 3px; }
  .editorial-site .site-primary > .nav-list > .nav-item > a { padding-right: 5px; padding-left: 5px; }
  .editorial-site .site-social { gap: 3px; }
  .editorial-site .site-social a { width: 38px; }
}
@media (max-width: 900px) {
  .editorial-site .site-masthead { grid-template-columns: 1fr auto; padding: 24px; }
  .editorial-site .site-social { grid-column: 2; grid-row: 1; justify-self: end; }
  .editorial-site .site-search { grid-column: 1 / -1; grid-row: 2; }
  .editorial-site .brand { font-size: 39px; }
  .editorial-site .site-navigation { padding-top: 4px; }
  .editorial-site .site-primary > .nav-list { gap: 0; }
  .editorial-site .site-primary a { font-size: 12px; }
  .editorial-site .home-feature-copy { padding: 28px; }
  .editorial-site .home-feature-copy h1 { font-size: 33px; }
  .editorial-site .home-categories .gb-element-e93c66df { gap: 16px; }
  .editorial-site .home-about .gb-element-73dcec03 { grid-template-columns: .85fr 1.15fr; gap: 28px; padding: 28px; }
  .editorial-site .home-about .gb-text-52fc93cc { font-size: 15px; }
  .editorial-site .archive-page .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .editorial-site { font-size: 16px; }
  .editorial-site .site-header { border-top-width: 4px; }
  .editorial-site .site-masthead { grid-template-columns: 1fr auto; gap: 20px 14px; padding: 23px 18px 20px; }
  .editorial-site .brand { font-size: 38px; }
  .editorial-site .site-masthead .brand-logo { width: 248px; }
  .editorial-site .brand-tagline { margin-top: 10px; font-size: 9px; letter-spacing: .13em; }
  .editorial-site .site-social { grid-column: 2; grid-row: 1; gap: 2px; }
  .editorial-site .site-social a { width: 34px; min-height: 44px; border: 0; font-size: 23px; }
  .editorial-site .site-search { grid-column: 1 / -1; grid-row: 2; }
  .editorial-site .site-search label { font-size: 10px; }
  .editorial-site .site-search input { font-size: 16px; }
  .editorial-site .site-search button { padding-right: 17px; padding-left: 17px; }
  .editorial-site .site-navigation { justify-content: flex-end; margin: 0 18px; padding: 0; }
  .editorial-site .site-primary { display: none; }
  .editorial-site .site-menu { margin-left: 0; width: 100%; }
  .editorial-site .site-menu > summary { padding: 10px 0; font-size: 13px; }
  .editorial-site .site-menu-panel { top: 100%; left: 0; right: auto; width: 100%; max-width: 100%; max-height: 65vh; }
  .editorial-site main { margin-top: 28px; margin-bottom: 44px; padding: 0 18px; }
  .editorial-site main.home-page { margin-top: 20px; }
  .editorial-site .home-feature { grid-template-columns: 1fr; }
  .editorial-site .home-feature-photo img { aspect-ratio: 6 / 5; min-height: 0; height: auto; }
  .editorial-site .home-feature-copy { padding: 28px 24px 30px; }
  .editorial-site .home-feature-copy h1 { font-size: clamp(32px, 8.3vw, 43px); }
  .editorial-site .eyebrow { margin-bottom: 14px; font-size: 10px; }
  .editorial-site .home-feature-title { margin-top: 16px; font-size: 16px; }
  .editorial-site .home-sections .home-section { padding: 32px 0 36px; }
  .editorial-site .home-section h2 { gap: 8px; margin-bottom: 23px; font-size: 28px; }
  .editorial-site .home-section h2 .gb-shape { font-size: 15px; }
  .editorial-site .editorial-home [class*="gb-looper-"] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 15px; }
  .editorial-site .editorial-home .gb-loop-item > h3,
  .editorial-site .editorial-home .gb-loop-item > p { margin-top: 11px; font-size: 17px; line-height: 1.35; }
  .editorial-site .home-categories .gb-element-e93c66df { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 17px; }
  .editorial-site .home-categories .gb-element-e93c66df > .pin-image > a:first-child { font-size: 13px; }
  .editorial-site .home-categories p { margin-top: 8px; }
  .editorial-site .home-sections .home-about { margin-top: 30px; padding: 0; }
  .editorial-site .home-about .gb-element-73dcec03 { grid-template-columns: 1fr; gap: 25px; padding: 26px; }
  .editorial-site .home-about .gb-element-b1037f52 { max-width: 340px; width: 100%; margin: 0 auto; }
  .editorial-site .home-about h2 { font-size: 29px; }
  .editorial-site .home-about .gb-text-52fc93cc { font-size: 16px; }
  .editorial-site .recipe-page h1,
  .editorial-site .content-page h1 { font-size: 34px; }
  .editorial-site .recipe-page .recipe { padding: 22px 18px; }
  .editorial-site .recipe dl { gap: 8px 13px; font-size: 14px; }
  .editorial-site .archive-page .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; }
  .editorial-site .archive-page .cards h2 { font-size: 18px; }
  .editorial-site .archive-page .cards p { font-size: 13px; }
  .editorial-site .site-footer { padding: 36px 24px 22px; }
  .editorial-site .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px 22px; }
  .editorial-site .footer-grid > div:first-child { grid-column: 1 / -1; }
  .editorial-site .footer-copyright { margin-top: 28px; }
}
@media (max-width: 360px) {
  .editorial-site .brand { font-size: 33px; }
  .editorial-site .site-social a { width: 30px; }
  .editorial-site .home-feature-copy { padding: 26px 20px; }
  .editorial-site .editorial-home .gb-loop-item > h3,
  .editorial-site .editorial-home .gb-loop-item > p { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .editorial-site { scroll-behavior: auto; }
  .editorial-site .theme-button,
  .editorial-site .site-search button { transition: none; }
}

/* article-editorial.css */
/* Original Pinch of Taste article layout. Keep content and image controls intact. */
.editorial-site main.article-page {
  margin-top: 35px;
  margin-bottom: 76px;
}
.editorial-site .article-page .breadcrumbs {
  margin: 0 0 22px;
  font-size: 12px;
  line-height: 1.6;
}
.editorial-site .article-page .article-layout {
  display: grid;
  grid-template-columns: minmax(0, 760px) minmax(230px, 280px);
  align-items: start;
  justify-content: space-between;
  gap: 56px;
}
.editorial-site .article-page .article-main,
.editorial-site .article-page .article-main > article,
.editorial-site .article-page .article-sidebar { min-width: 0; }
.editorial-site .article-page .article-main > article {
  max-width: none;
  margin: 0;
}
.editorial-site .article-page .article-heading {
  display: block;
  margin: 0 0 25px;
  padding: 0;
  border: 0;
}
.editorial-site .article-page .article-heading h1 {
  margin: 0 0 19px;
  font-size: clamp(34px, 3.8vw, 46px);
  line-height: 1.12;
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
}
.editorial-site .article-page .article-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 20px;
  margin: 0;
  padding: 12px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  color: #536774;
  font-size: 12px;
  line-height: 1.7;
}
.editorial-site .article-page .article-meta a { color: var(--ink); }
.editorial-site .article-page .article-author-avatar { flex: 0 0 52px; width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.editorial-site .article-page .article-author { font-weight: 600; }
.editorial-site .article-page .article-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 23px 0 0;
}
.editorial-site .article-page .article-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 17px;
  border: 1px solid var(--ink);
  background: var(--ink);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
}
.editorial-site .article-page .article-actions a:hover {
  border-color: #294b5d;
  background: #294b5d;
}
.editorial-site .article-page .article-actions .action-recipe { background: var(--accent); border-color: var(--accent); color: #fff; }
.editorial-site .article-page .article-actions .action-recipe:hover { background: #88321f; border-color: #88321f; }
.editorial-site .article-page .article-actions a:last-child {
  border-color: #aebdc3;
  background: #fff;
  color: var(--ink);
}
.editorial-site .article-page .article-actions a:last-child:hover { background: #f0f5f6; }
.editorial-site .article-page .article-body { color: #263d49; }
.editorial-site .article-page .article-body > p {
  margin: 0 0 24px;
  font-size: 17px;
  line-height: 1.85;
}
.editorial-site .article-page .article-body > p:first-child {
  font-size: 18px;
  line-height: 1.8;
}
.editorial-site .article-page .article-body h2 {
  margin: 43px 0 18px;
  font-size: clamp(28px, 3vw, 34px);
  line-height: 1.22;
  scroll-margin-top: 24px;
}
.editorial-site .article-page .article-body h3 {
  margin: 31px 0 14px;
  font-size: 25px;
  line-height: 1.3;
  scroll-margin-top: 24px;
}
.editorial-site .article-page .article-body ul,
.editorial-site .article-page .article-body ol {
  margin: 18px 0 26px;
  padding-left: 25px;
}
.editorial-site .article-page .article-body li {
  margin-bottom: 10px;
  padding-left: 3px;
  line-height: 1.8;
}
.editorial-site .article-page .article-body li::marker { color: var(--accent); }
.editorial-site .article-page .article-body figure {
  max-width: 100%;
  margin: 31px 0;
}
.editorial-site .article-page .article-body figure img {
  max-width: 100%;
  height: auto;
}
.editorial-site .article-page .article-body figure .pin-image { max-width: 100%; }
.editorial-site .article-page .article-body figcaption {
  margin-top: 9px;
  color: #536774;
  font-size: 13px;
  line-height: 1.6;
}
.editorial-site .article-page .article-body blockquote {
  margin: 28px 0;
  padding: 17px 24px;
  border-left: 4px solid var(--accent);
  background: #f3f6f6;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  line-height: 1.65;
}
.editorial-site .article-page .article-body blockquote > :first-child { margin-top: 0; }
.editorial-site .article-page .article-body blockquote > :last-child { margin-bottom: 0; }
.editorial-site .article-page .article-toc {
  display: block;
  margin: 27px 0;
  padding: 17px 21px;
  border: 1px solid var(--line);
  background: #f5f8f8;
  font-size: 14px;
  line-height: 1.6;
}
.editorial-site .article-page .article-toc summary {
  cursor: pointer;
  color: var(--ink);
  font-weight: 700;
}
.editorial-site .article-page .article-toc ol,
.editorial-site .article-page .article-toc ul { margin: 16px 0 0; padding-left: 21px; }
.editorial-site .article-page .article-toc li { margin: 7px 0; }
.editorial-site .article-page .article-toc a { color: var(--ink); }
.editorial-site .article-page .article-sidebar { padding-top: 2px; }
.editorial-site .article-page .author-box {
  padding: 24px 23px 27px;
  border-top: 4px solid var(--ink);
  background: #f0f5f5;
  text-align: center;
}
.editorial-site .article-page .sidebar-portrait {
  width: 170px;
  max-width: 100%;
  margin: 0 auto 23px;
}
.editorial-site .article-page .sidebar-portrait img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  border: 5px solid #fff;
  border-radius: 50%;
}
.editorial-site .article-page .author-box .eyebrow { margin-bottom: 9px; font-size: 10px; }
.editorial-site .article-page .sidebar-author-name {
  margin: 0 0 15px;
  font-size: 28px;
  line-height: 1.18;
}
.editorial-site .article-page .author-box p:not(.eyebrow) {
  margin: 0 0 20px;
  color: #445b67;
  font-size: 14px;
  line-height: 1.85;
}
.editorial-site .article-page .author-box .theme-button {
  min-height: 44px;
  padding: 10px 17px;
  font-size: 12px;
}
.editorial-site .article-page .sidebar-social {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 17px;
  margin-top: 22px;
  padding-top: 15px;
  border-top: 1px solid #d0dcdf;
}
.editorial-site .article-page .sidebar-social a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-size: 12px;
  font-weight: 700;
}
.editorial-site .article-page .sidebar-discover {
  margin-top: 31px;
  padding: 21px 0 0;
  border-top: 1px solid var(--line);
}
.editorial-site .article-page .sidebar-discover h2 {
  margin: 0 0 14px;
  font-size: 25px;
}
.editorial-site .article-page .sidebar-discover nav { display: grid; gap: 0; }
.editorial-site .article-page .sidebar-discover a {
  display: block;
  padding: 13px 3px;
  border-bottom: 1px solid var(--line);
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.6;
  text-decoration: none;
}
.editorial-site .article-page .sidebar-discover a:hover { color: var(--accent); text-decoration: underline; }
.editorial-site .article-page .recipe {
  clear: both;
  margin: 48px 0;
  padding: 30px;
  border: 1px solid #b8c9cf;
  border-top: 6px solid var(--ink);
  border-radius: 0;
  background: #f4f7f7;
  scroll-margin-top: 24px;
}
.editorial-site .article-page .recipe::after { display: table; clear: both; content: ""; }
/* Imported plain-text ingredients/notes retain their authored line breaks. */
.editorial-site .article-page .recipe { white-space: pre-line; }
.editorial-site .article-page .recipe > * { white-space: normal; }
.editorial-site .article-page .recipe > h2,
.editorial-site .article-page .recipe-card-header h2 {
  margin: 0 0 17px;
  font-size: clamp(27px, 3vw, 34px);
  line-height: 1.2;
}
.editorial-site .article-page .recipe > img {
  display: block;
  width: 160px;
  max-width: 100%;
  height: auto;
  margin: 4px 0 20px;
}
.editorial-site .article-page .recipe > .pin-image { float: right; display: block; width: 150px; max-width: 40%; margin: 3px 0 20px 22px; }
.editorial-site .article-page .recipe > .pin-image img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: 50%; }
.editorial-site .article-page .recipe > dl { clear: both; }
.editorial-site .article-page .recipe-card-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 15px 23px;
  align-items: start;
  padding: 0;
  border: 0;
}
.editorial-site .article-page .recipe-card-header img {
  display: block;
  width: 136px;
  max-width: 100%;
  height: auto;
}
.editorial-site .article-page .recipe-card-header p { margin: 12px 0 0; }
.editorial-site .article-page .recipe .recipe-print-link,
.editorial-site .article-page .recipe-card-actions > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin: 0 0 22px;
  padding: 10px 18px;
  border: 1px solid var(--ink);
  background: var(--ink);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.6;
  text-decoration: none;
}
.editorial-site .article-page .recipe .recipe-print-link:hover { background: #294b5d; }
.editorial-site .article-page .recipe > p,
.editorial-site .article-page .recipe-card-header p { font-size: 15px; line-height: 1.8; }
.editorial-site .article-page .recipe dl {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 9px 20px;
  margin: 25px 0 30px;
  padding: 19px 0;
  border-top: 1px solid #cbd8dc;
  border-bottom: 1px solid #cbd8dc;
  font-size: 14px;
  line-height: 1.7;
}
.editorial-site .article-page .recipe dt { margin: 0; color: var(--ink); font-weight: 700; }
.editorial-site .article-page .recipe dd { min-width: 0; margin: 0; overflow-wrap: anywhere; }
.editorial-site .article-page .recipe h3 {
  margin: 29px 0 14px;
  font-size: 24px;
  line-height: 1.3;
}
.editorial-site .article-page .recipe ul,
.editorial-site .article-page .recipe ol { margin: 15px 0 25px; padding-left: 23px; }
.editorial-site .article-page .recipe li { margin-bottom: 14px; padding-left: 4px; font-size: 15px; line-height: 1.85; }
.editorial-site .article-page .recipe ol > li::marker { color: var(--accent); font-weight: 700; }
.editorial-site .article-page .recipe-nutrition {
  margin-top: 30px;
  padding-top: 4px;
  border-top: 1px solid #cbd8dc;
  font-size: 13px;
  line-height: 1.75;
}
.editorial-site .article-page .recipe-nutrition dl { margin-bottom: 0; border-bottom: 0; }
.editorial-site .article-page .share-links { margin: 30px 0; padding: 18px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.editorial-site .article-page .share-links a { display: inline-flex; align-items: center; min-height: 44px; }
.editorial-site .article-page #comments { margin-top: 46px; scroll-margin-top: 24px; }
.editorial-site .article-page #comments > h2 { margin: 31px 0 23px; font-size: 32px; }
.editorial-site .article-page #comments > article { padding: 23px; background: #f5f8f8; }
.editorial-site .article-page #comments > article h3 { margin: 0 0 8px; font-size: 22px; }
.editorial-site .article-page #comments > article p { margin: 12px 0; line-height: 1.8; }
.editorial-site .article-page #comments nav { flex-wrap: wrap; align-items: center; gap: 10px 22px; font-size: 14px; }
.editorial-site .article-page #comments nav a { display: inline-flex; align-items: center; min-height: 44px; }
.editorial-site .article-page #comment-form { margin-top: 29px; padding-top: 10px; scroll-margin-top: 24px; }
.editorial-site .article-page .contact-form input,
.editorial-site .article-page .contact-form textarea { max-width: 100%; border-color: #aebdc3; }
.editorial-site .article-page .contact-form button { min-height: 46px; padding: 11px 24px; }
.editorial-site .article-page .hb-ad-inpage { clear: both; max-width: 100%; }
@media (max-width: 1050px) {
  .editorial-site .article-page .article-layout { grid-template-columns: minmax(0, 1fr) 250px; gap: 35px; }
  .editorial-site .article-page .author-box { padding: 23px 19px; }
  .editorial-site .article-page .recipe { padding: 25px; }
}
@media (max-width: 850px) {
  .editorial-site main.article-page { margin-top: 27px; }
  .editorial-site .article-page .article-layout { display: block; }
  .editorial-site .article-page .article-main { max-width: 740px; margin: 0 auto; }
  .editorial-site .article-page .article-sidebar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 30px;
    max-width: 740px;
    margin: 48px auto 0;
    padding-top: 0;
  }
  .editorial-site .article-page .sidebar-discover { margin-top: 0; padding-top: 23px; }
  .editorial-site .article-page .article-heading h1 { font-size: 41px; }
}
@media (max-width: 540px) {
  .editorial-site main.article-page { padding-right: 20px; padding-left: 20px; }
  .editorial-site .article-page .breadcrumbs { margin-bottom: 18px; font-size: 11px; }
  .editorial-site .article-page .article-heading h1 { margin-bottom: 17px; font-size: 36px; line-height: 1.14; }
  .editorial-site .article-page .article-meta { gap: 5px 14px; font-size: 11px; }
  .editorial-site .article-page .article-actions { gap: 7px; margin-top: 20px; }
  .editorial-site .article-page .article-actions a { flex: 1 1 auto; min-height: 44px; padding: 9px 10px; font-size: 11px; }
  .editorial-site .article-page .article-body > p { font-size: 16px; line-height: 1.85; }
  .editorial-site .article-page .article-body > p:first-child { font-size: 17px; }
  .editorial-site .article-page .article-body h2 { margin-top: 34px; font-size: 29px; }
  .editorial-site .article-page .article-body h3 { font-size: 24px; }
  .editorial-site .article-page .article-body figure { margin: 25px 0; }
  .editorial-site .article-page .article-body blockquote { padding: 16px 20px; font-size: 19px; }
  .editorial-site .article-page .article-toc { padding: 15px 17px; }
  .editorial-site .article-page .recipe { margin: 36px 0; padding: 23px 18px; }
  .editorial-site .article-page .recipe > .pin-image { width: 130px; margin-left: 15px; }
  .editorial-site .article-page .recipe > h2,
  .editorial-site .article-page .recipe-card-header h2 { font-size: 29px; }
  .editorial-site .article-page .recipe-card-header { display: block; }
  .editorial-site .article-page .recipe-card-header img { width: 145px; margin: 20px 0; }
  .editorial-site .article-page .recipe dl { gap: 9px 14px; font-size: 13px; }
  .editorial-site .article-page .recipe li { padding-left: 2px; font-size: 14px; }
  .editorial-site .article-page .article-sidebar { display: block; margin-top: 36px; }
  .editorial-site .article-page .author-box { padding: 27px 27px 25px; }
  .editorial-site .article-page .sidebar-portrait { width: 158px; }
  .editorial-site .article-page .sidebar-discover { margin-top: 31px; }
  .editorial-site .article-page #comments > article { padding: 19px; }
}
@media print {
  .editorial-site .article-page .article-layout { display: block; }
  .editorial-site .article-page .article-sidebar,
  .editorial-site .article-page .article-actions,
  .editorial-site .article-page .article-toc,
  .editorial-site .article-page .share-links { display: none; }
  .editorial-site .article-page .recipe { break-inside: auto; background: #fff; }
}

/* cookbook-promo.css */
/* Original, lightweight cookbook promotion. Existing recipes stay untouched. */
.editorial-site section.cookbook-promo,
.editorial-site section.cookbook-promo * { box-sizing: border-box; }
.editorial-site section.cookbook-promo {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  align-items: center;
  gap: 42px;
  max-width: 100%;
  margin: 34px 0 8px;
  padding: 34px 42px;
  border: 1px solid #e0dfd7;
  border-top: 4px solid var(--accent, #af432d);
  background: #f7f6f0;
  color: var(--ink, #173544);
}
.editorial-site .cookbook-promo .cookbook-promo-image {
  display: block;
  width: 180px;
  max-width: 100%;
  margin: 0;
  padding: 0;
  line-height: 0;
  text-decoration: none;
}
.editorial-site .cookbook-promo .cookbook-promo-image img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  aspect-ratio: 2 / 3;
  object-fit: contain;
  border: 0;
  box-shadow: 0 8px 19px #17354424;
}
.editorial-site .cookbook-promo .cookbook-promo-copy {
  min-width: 0;
  max-width: 720px;
}
.editorial-site .cookbook-promo .eyebrow {
  margin: 0 0 10px;
  color: var(--accent, #af432d);
  font-size: 11px;
  line-height: 1.6;
}
.editorial-site .cookbook-promo h2 {
  display: block;
  margin: 0 0 13px;
  padding: 0;
  color: var(--ink, #173544);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 3.1vw, 39px);
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.15;
  text-align: left;
  overflow-wrap: break-word;
}
.editorial-site .cookbook-promo .cookbook-promo-name {
  margin: 0 0 11px;
  color: var(--ink, #173544);
  font-size: 19px;
  line-height: 1.45;
}
.editorial-site .cookbook-promo .cookbook-promo-description {
  margin: 0 0 19px;
  color: #445b67;
  font-size: 15px;
  line-height: 1.75;
}
.editorial-site .cookbook-promo .theme-button {
  min-height: 46px;
  max-width: 100%;
  padding: 11px 22px;
  font-size: 13px;
  line-height: 1.6;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}
.editorial-site .cookbook-promo .cookbook-promo-disclosure {
  margin: 12px 0 0;
  color: #53636d;
  font-size: 12px;
  line-height: 1.65;
}
.editorial-site .article-sidebar section.cookbook-promo-sidebar {
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  gap: 23px;
  margin: 29px 0 0;
  padding: 25px 21px 23px;
}
.editorial-site .cookbook-promo-sidebar .cookbook-promo-image { width: 142px; }
.editorial-site .cookbook-promo-sidebar .cookbook-promo-copy {
  max-width: 100%;
  text-align: center;
}
.editorial-site .cookbook-promo-sidebar .eyebrow {
  margin-bottom: 10px;
  font-size: 10px;
  letter-spacing: .12em;
}
.editorial-site .cookbook-promo-sidebar h2 {
  margin-bottom: 13px;
  font-size: 25px;
  line-height: 1.2;
  text-align: center;
}
.editorial-site .cookbook-promo-sidebar .cookbook-promo-name {
  margin-bottom: 11px;
  font-size: 17px;
}
.editorial-site .cookbook-promo-sidebar .cookbook-promo-description {
  margin-bottom: 18px;
  font-size: 14px;
}
.editorial-site .cookbook-promo-sidebar .theme-button {
  width: 100%;
  padding-right: 12px;
  padding-left: 12px;
  font-size: 12px;
}
.editorial-site .cookbook-promo-sidebar .cookbook-promo-disclosure { font-size: 11px; }
@media (max-width: 900px) {
  .editorial-site section.cookbook-promo {
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 28px;
    padding: 28px;
  }
  .editorial-site .cookbook-promo .cookbook-promo-image { width: 150px; }
  .editorial-site .article-sidebar section.cookbook-promo-sidebar {
    grid-template-columns: minmax(0, 1fr);
    gap: 23px;
    padding: 25px 21px 23px;
  }
  .editorial-site .cookbook-promo-sidebar .cookbook-promo-image { width: 142px; }
}
@media (max-width: 600px) {
  .editorial-site section.cookbook-promo {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 24px;
    margin-top: 25px;
    padding: 27px 22px;
  }
  .editorial-site .cookbook-promo .cookbook-promo-image { width: 132px; }
  .editorial-site .cookbook-promo .cookbook-promo-copy { text-align: center; }
  .editorial-site .cookbook-promo h2 {
    font-size: 29px;
    line-height: 1.18;
    text-align: center;
  }
  .editorial-site .cookbook-promo .cookbook-promo-name { font-size: 18px; }
  .editorial-site .cookbook-promo .cookbook-promo-description { font-size: 15px; }
  .editorial-site .cookbook-promo .theme-button { width: 100%; }
  .editorial-site .cookbook-promo-sidebar h2 { font-size: 27px; }
}
@media print {
  .editorial-site section.cookbook-promo { display: none !important; }
}

