/* HAPAD_RECIPELIEBE_EDITORIAL_V1
   Style-only alignment with RezeptLiebe; leave posts, ads, analytics and existing brand untouched.
   Main page backgrounds remain white.
*/
:root {
  --paper: #fff;
  --ink: #302630;
  --muted: #706470;
  --line: #ebdfe5;
  --accent: #a13d63;
  --accent-dark: #4b2038;
  --accent-soft: #dca2b5;
  --emily-dark: #4b2038;
  --emily-line: #ebdfe5;
  --emily-soft: #fff8fa;
}
html, body, main, .ovenami-home, .recipe-page-shell,
.archive-shell, .recipes-directory, .page-article, .search-page {
  background: #fff !important;
}
.container { width: min(1120px, calc(100% - 36px)); }
.site-header {
  border-bottom: 1px solid var(--line);
  box-shadow: 0 3px 18px rgba(75,32,56,.045);
  background: #fff !important;
}
.header-inner { min-height: 78px; }
.site-title { gap: 12px; }
.emily-food-mark { background: #a13d63 !important; }
.brand-wordmark {
  color: #4b2038 !important;
  font-size: clamp(23px,2.45vw,30px) !important;
  font-weight: 600;
  letter-spacing: -.045em;
  line-height: 1.08;
}
.brand-wordmark > span { color: #a13d63 !important; }
.brand-category {
  color: #8b526b !important;
  font-size: 9px !important;
  letter-spacing: .18em;
}
.main-navigation a { color: #51464e; }
.main-navigation a:hover, .main-navigation a:focus-visible,
.nav-search-link { color: #a13d63 !important; }
.eyebrow, .article-kicker, .recipe-label {
  color: #9e385d !important;
  letter-spacing: .12em;
}
.ovenami-home { padding-bottom: 2.5rem; }
.ovenami-home-hero {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(380px,515px) !important;
  gap: clamp(3rem,5.4vw,5.5rem) !important;
  min-height: 0 !important;
  padding: 4.1rem 0 3.45rem !important;
  align-items: center !important;
  border-bottom: 1px solid var(--line);
}
.ovenami-home-copy { max-width: 530px; }
.ovenami-home-copy h1 {
  max-width: 545px;
  margin: .5rem 0 1rem !important;
  color: #302630;
  font-size: clamp(3.05rem,5vw,4.65rem) !important;
  font-weight: 600;
  line-height: 1.02 !important;
  letter-spacing: -.045em !important;
}
.ovenami-home-copy > p {
  margin: 0 0 1.35rem !important;
  max-width: 535px;
  color: var(--muted);
  font-size: 1.01rem !important;
  line-height: 1.65 !important;
}
.home-primary-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 45px;
  padding: .75rem 1.35rem;
  border-radius: 999px;
  color: #fff !important;
  background: #4b2038;
  box-shadow: 0 5px 14px rgba(75,32,56,.12);
  line-height: 1.2;
  text-decoration: none;
  transition: background-color .18s ease, transform .18s ease;
}
.home-primary-link:hover {
  background: #87304e;
  color: #fff !important;
  text-decoration: none;
  transform: translateY(-1px);
}
.home-featured-image {
  width: 100% !important;
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  border-radius: 15px;
  overflow: hidden !important;
  background: #fcf5f8 !important;
}
.home-featured-image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 50% 0% !important;
}
.home-featured-copy { padding-top: .95rem !important; }
.home-featured-copy h2 {
  margin: .22rem 0 0 !important;
  color: #392937;
  font-size: clamp(1.4rem,2.25vw,1.95rem) !important;
  font-weight: 600;
  line-height: 1.14 !important;
}
.home-featured-copy p {
  margin: .5rem 0 0 !important;
  color: var(--muted);
  font-size: .88rem !important;
  line-height: 1.6 !important;
}
.emily-home-layout {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(260px,290px) !important;
  gap: 1.2rem clamp(2rem,3.6vw,3.4rem) !important;
  align-items: start;
  padding-top: 0;
}
.emily-home-main { display: contents; }
.emily-home-main .home-category-section {
  grid-column: 1 / -1;
  grid-row: 1;
  padding-top: 3rem;
  margin: 0 !important;
}
.emily-home-main .home-latest-section {
  grid-column: 1;
  grid-row: 2;
  padding-top: 3rem;
}
.emily-home-sidebar {
  grid-column: 2;
  grid-row: 2;
  position: sticky;
  top: 100px;
  padding-top: 3rem;
}
.home-section-heading {
  align-items: flex-end;
  gap: 1.5rem;
  margin-bottom: 1.15rem;
}
.home-section-heading h2 {
  color: #382736;
  font-size: clamp(2rem,3vw,2.65rem);
  line-height: 1.1;
}
.home-section-heading > a { color: #a13d63 !important; }
.home-category-grid {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 11px !important;
}
.home-category-card {
  min-height: 86px;
  padding: 1.02rem 1.15rem;
  justify-content: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff !important;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.home-category-card:hover {
  border-color: #dca2b5 !important;
  box-shadow: 0 7px 22px rgba(75,32,56,.055);
}
.home-category-card span {
  color: #352633;
  font-size: 1.12rem;
  line-height: 1.25;
}
.home-category-card small { color: #a13d63 !important; font-size: .71rem; }
.home-post-grid {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 1.6rem 1.25rem;
}
.card {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 13px;
  overflow: hidden;
  background: #fff;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.card:hover {
  border-color: #dca2b5;
  box-shadow: 0 9px 24px rgba(75,32,56,.065);
}
.card-copy, .home-post-grid .card-copy {
  padding: .85rem 1rem 1.05rem;
}
.card-copy h2, .home-post-grid .card-copy h2 {
  color: #382736;
  line-height: 1.25;
}
/* All public listing thumbnails are landscape, showing the top of each original photo. */
.card-image,
.home-post-grid .card-image,
.archive-grid .card-image,
.search-result-card .card-image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden;
  background: #fcf5f8 !important;
}
.card-image img,
.home-post-grid .card-image img,
.archive-grid .card-image img,
.search-result-card .card-image img,
.emily-sidebar-thumb img,
.sidebar-recipe-image img {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: 50% 0% !important;
}
.emily-sidebar-thumb, .sidebar-recipe-image {
  aspect-ratio: 16 / 9 !important;
  overflow: hidden;
  border-radius: 8px;
}
.emily-sidebar-block { border-top-color: #4b2038; }
.emily-sidebar-heading span { color: #a13d63; }
.emily-sidebar-recipe { border-bottom-color: var(--line); }
.emily-sidebar-recipe:hover strong { color: #a13d63; }
/* Archives and recipes index inherit the same RezeptLiebe card design. */
.archive-shell, .recipes-directory {
  width: min(1120px,calc(100% - 36px));
}
.archive-hero { padding: 3.1rem 0 1.8rem; border-bottom: 1px solid var(--line); }
.archive-hero h1 { color: #382736; }
.archive-grid { gap: 1.7rem 1.3rem; }
.recipe-category-card {
  border-color: var(--line) !important;
  border-radius: 12px;
  min-height: 98px;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.recipe-category-card:hover {
  border-color: #dca2b5 !important;
  box-shadow: 0 7px 22px rgba(75,32,56,.055);
}
.recipe-category-card small { color: #a13d63; }
/* Article image: NEVER crop in single recipe pages. */
.recipe-main .article-featured-frame,
.recipe-page-shell .article-featured-frame {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  background: #fff !important;
}
.recipe-main .article-featured-frame .article-featured,
.recipe-page-shell .article-featured-frame .article-featured {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center !important;
}
.recipe-main .article-content img,
.page-article .article-content img { max-width: 100%; height: auto !important; object-fit: contain; }
.site-footer { background: #4b2038 !important; }
.footer-brand-name span { color: #f0b2c4 !important; }
.footer-logo small, .footer-column h2 { color: #f0b2c4 !important; }
.footer-brand p, .footer-bottom { color: #f4e5ec !important; }
@media (max-width: 950px) {
  .ovenami-home-hero {
    grid-template-columns: minmax(0,1fr) minmax(310px,44%) !important;
    gap: 2rem !important;
  }
  .emily-home-layout {
    grid-template-columns: minmax(0,1fr) 255px !important;
    column-gap: 1.6rem !important;
  }
}
@media (max-width: 800px) {
  .ovenami-home-hero {
    grid-template-columns: 1fr !important;
    padding: 2.5rem 0 2.6rem !important;
    gap: 2.1rem !important;
  }
  .ovenami-home-copy h1 { font-size: clamp(2.65rem,8vw,3.8rem) !important; }
  .emily-home-layout { grid-template-columns: 1fr !important; row-gap: 0 !important; }
  .emily-home-main .home-category-section { grid-column: 1; grid-row: 1; padding-top: 2.55rem; }
  .emily-home-main .home-latest-section { grid-column: 1; grid-row: 2; padding-top: 2.75rem; }
  .emily-home-sidebar { grid-column: 1; grid-row: 3; position: static; padding-top: 2rem; }
  .home-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 560px) {
  .header-inner { min-height: 0; }
  .brand-wordmark { font-size: 1.36rem !important; }
  .ovenami-home-hero { padding-top: 2rem !important; }
  .ovenami-home-copy h1 { font-size: clamp(2.45rem,12vw,3.25rem) !important; }
  .home-category-grid { grid-template-columns: 1fr !important; }
  .home-section-heading { align-items: flex-start; gap: .55rem; }
  .home-post-grid { grid-template-columns: 1fr !important; }
  .archive-grid { grid-template-columns: 1fr !important; }
}
@media (prefers-reduced-motion:reduce) {
  .card, .home-category-card, .recipe-category-card, .home-primary-link { transition:none; }
  .home-primary-link:hover { transform: none; }
}
@media print {
  .article-featured-frame .article-featured { max-height: none !important; }
}
