/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* GeneratePress Site CSS */
#site-navigation {
  border-top: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid rgba(0,0,0,0.1);
}

button, html input[type="button"], input[type="reset"], input[type="submit"], a.button, a.button:visited {
  border-width: 1px;
  border-style: solid;
  border-color: inherit;
}

.mc4wp-form-fields input[type="email"] {
  margin-bottom: 10px;
  width: 100%;
}

.entry-meta {
  font-weight: 300;
  font-size: 13px;
}

.main-navigation:not(.toggled) li.menu-social > a,
.main-navigation:not(.toggled) li.search-item > a {
  padding: 0 10px;
}

.post-image img { transition: opacity 500ms; }
.post-image img:hover { opacity: 0.9; }

.no-sidebar .entry-content {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.page.no-sidebar .entry-title { text-align: center; }

.top-bar .lsi-social-icons a,
.top-bar .lsi-social-icons a:focus,
.top-bar .lsi-social-icons a:active,
.top-bar .lsi-social-icons a:hover {
  background: transparent !important;
}

.top-bar .lsi-social-icons li { margin-bottom: 0 !important; }
/* End GeneratePress Site CSS */


/* Tasty buttons */
.tasty-recipes-jump-link,
.tasty-recipes-print-link {
  display: inline-block;
  padding: 10px 20px;
  font-weight: bold;
  text-decoration: none;
  background-color: #BC4D5E;
  color: #fff;
  border: none;
  border-radius: 5px;
  font-size: 16px;
  margin: 10px 5px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.tasty-recipes-jump-link:hover,
.tasty-recipes-print-link:hover { background-color: #651320; }


/* Fallback TOC */
.fallback-toc {
  margin-bottom: 2rem;
  background: #f9f9f9;
  padding: 15px 20px;
  border: 1px solid #ddd;
  border-radius: 5px;
}
.fallback-toc h2 {
  margin: 0;
  font-size: 1.3rem;
  font-weight: 600;
  cursor: pointer;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.fallback-toc h2 .arrow { font-size: 0.9em; margin-left: 10px; }
.fallback-toc ul { list-style: none; padding-left: 0; }
.fallback-toc li { margin: 6px 0; }
.fallback-toc li.h3 { margin-left: 20px; }
.fallback-toc .toc-link { text-decoration: none; color: #0073aa; }
.fallback-toc .toc-link:hover { text-decoration: underline; }
.fallback-toc #fallback-toc-list { display: none; margin-top: 10px; }


/* =========================
   0) SIDEBAR BASE TWEAKS
   ========================= */
.inside-right-sidebar .widget.inner-padding { padding: 18px !important; }
.inside-right-sidebar .widget { box-sizing: border-box; }

/* =========================
   1) NEWSLETTER — FULL WIDTH
   (Sidebar block id is block-16)
   ========================= */
#block-16 { padding: 0 !important; background: transparent !important; border: 0; }

/* MailerLite container full width + brand styles */
#block-16 .ml-form-embedContainer,
#block-16 .ml-subscribe-form {
  max-width: none !important;
  width: 100% !important;
  background: #EBB888 !important;
  border: 2px solid #603D4F !important;
  border-radius: 16px !important;
  padding: 24px 20px !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
}

/* Title + text */
#block-16 .ml-form-title { 
  color: #603D4F !important;
  font-weight: 800 !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  text-align: center !important;
  margin: 0 0 8px !important;
}
#block-16 .ml-form-description {
  color: #495159 !important;
  font-size: 15px !important;
  text-align: center !important;
  margin-bottom: 18px !important;
}

/* Inputs */
#block-16 input[type="email"],
#block-16 input[type="text"] {
  width: 100% !important;
  border: 1.5px solid #603D4F !important;
  border-radius: 10px !important;
  padding: 11px 12px !important;
  font-size: 15px !important;
  margin: 0 0 14px !important;
}

/* Button */
#block-16 button,
#block-16 input[type="submit"] {
  width: 100% !important;
  background: #BC4D5E !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background .2s ease;
}
#block-16 button:hover,
#block-16 input[type="submit"]:hover { background: #E98973 !important; }

/* Success message */
#block-16 .ml-form-successContent {
  color: #603D4F !important;
  text-align: center !important;
}


/* =========================
   2) RECENT POSTS — MODERN LIST
   (Plugin: Recent Posts Widget With Thumbnails) — widget id recent-posts-widget-with-thumbnails-1
   ========================= */
#recent-posts-widget-with-thumbnails-1 {
  background: #fff;
  border: 1px solid #EBB888;
  border-radius: 16px;
  padding: 20px 18px;
  box-shadow: 0 3px 12px rgba(0,0,0,.05);
}

/* Title */
#recent-posts-widget-with-thumbnails-1 .widget-title,
#recent-posts-widget-with-thumbnails-1 h2 {
  color: #603D4F;
  font-size: 20px;
  font-weight: 800;
  margin: 0 0 14px;
  padding-left: 10px;
  border-left: 6px solid #BC4D5E;
}

/* List layout */
#recent-posts-widget-with-thumbnails-1 .rpwwt-posts { margin: 0; padding: 0; }
#recent-posts-widget-with-thumbnails-1 .rpwwt-posts li {
  list-style: none;
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 12px;
  align-items: center;
  padding: 10px 6px;
  border-bottom: 1px solid #F1E5D3;
}
#recent-posts-widget-with-thumbnails-1 .rpwwt-posts li:last-child { border-bottom: 0; }

/* Thumbnail */
#recent-posts-widget-with-thumbnails-1 .rpwwt-posts img {
  width: 64px; height: 64px; object-fit: cover;
  border-radius: 10px;
  border: 1px solid #EAD1B2;
}

/* Title link */
#recent-posts-widget-with-thumbnails-1 .rpwwt-post-title,
#recent-posts-widget-with-thumbnails-1 .rpwwt-posts a {
  color: #495159;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.25;
  transition: color .2s ease, transform .2s ease;
}
#recent-posts-widget-with-thumbnails-1 .rpwwt-posts a:hover { color: #BC4D5E; }

/* Date/meta (if enabled) */
#recent-posts-widget-with-thumbnails-1 .rpwwt-post-date {
  display: block;
  color: #8a9096;
  font-size: 12px;
  margin-top: 3px;
}

/* Compact mode on very narrow sidebars */
@media (max-width: 400px) {
  #recent-posts-widget-with-thumbnails-1 .rpwwt-posts li {
    grid-template-columns: 56px 1fr;
    gap: 10px;
  }
  #block-16 .ml-form-title { font-size: 22px !important; }
}


/* ===== Force a text widget full-width (id text-2) ===== */
#text-2.widget_text {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  width: 100% !important;
}
#text-2 .textwidget { width: 100% !important; padding: 0 !important; }

/* ===== ABOUT ME CARD ===== */
.about-card {
  background: #ffffff;
  border: 1px solid #EBB888;
  border-radius: 18px;
  padding: 30px 24px;
  text-align: center;
  box-shadow: 0 all0px 14px rgba(0,0,0,.06);
  width: 100% !important;
  max-width: 100% !important;
  display: block;
  margin: 0 auto;
}

/* ===== IMAGE — BIGGER ===== */
.about-card .about-avatar {
  width: 170px;
  height: 170px;
  object-fit: cover;
  border-radius: 100%;
  display: block;
  margin: 0 auto 18px auto;
  border: 3px solid #EBB888;
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
}

/* ===== TEXT ===== */
.about-card .about-text {
  color: #495159;
  font-size: 17px;
  line-height: 1.7;
  margin: 0 0 20px;
}

/* ===== CTA BUTTON ===== */
.about-card .about-btn {
  display: inline-block;
  background: #BC4D5E;
  color: #ffffff;
  text-decoration: none;
  padding: 16px 22px;
  border-radius: 12px;
  font-weight: 700;
  font-size: 17px;
  transition: background .2s ease, transform .2s ease;
}
.about-card .about-btn:hover {
  background: #E98973;
  transform: translateY(-1px);
}

/* ===== TABLET ===== */
@media (max-width: 1024px) {
  .about-card { padding: 26px 20px; }
  .about-card .about-avatar { width: 150px; height: 150px; }
}

/* ===== MOBILE ===== */
@media (max-width: 768px) {
  .about-card { padding: 22px 18px; }
  .about-card .about-avatar { width: 130px; height: 130px; }
  .about-card .about-text { font-size: 16px; }
}


/* ================================
   FOOTER WIDGET HEADINGS
================================ */
.footer-widgets .widget-title {
  font-size: 24px;
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 16px;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  padding-left: 0;
  border-left: none;
}

/* ================================
   FOOTER LINKS
================================ */
.footer-widgets a {
  color: #F9F6F6;
  text-decoration: none;
  font-size: 18px;
  font-weight: 500;
  transition: color .2s ease;
}
.footer-widgets a:hover { color: #D1CC6F; }

/* ================================
   FOOTER TEXT CENTER
================================ */
.footer-widgets,
.footer-widgets .inside-footer-widgets { text-align: center; }

.footer-widgets ul { padding: 0; margin: 0; list-style: none; }
.footer-widgets ul li { margin-bottom: 8px; }

/* ================================
   TABLET
================================ */
@media (max-width: 1024px) {
  .footer-widgets .widget-title { font-size: 22px; }
  .footer-widgets a { font-size: 17px; }
}

/* ================================
   MOBILE
================================ */
@media (max-width: 768px) {
  .footer-widgets .widget-title { font-size: 20px; }
  .footer-widgets a { font-size: 16px; }
}


/* ==== BLOG / ARCHIVE / HOME: CARD STYLE ==== */
.blog .site-main article,
.archive .site-main article,
.home.blog .site-main article {
  background: #ffffff;
  border: 1px solid #EBB888;           /* brand border */
  border-radius: 16px;                  /* same rounding as sidebar cards */
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
  overflow: hidden;                     /* keeps image inside rounded corners */
  margin-bottom: 34px;                  /* space between cards */
}

/* Inner padding matches your sidebar cards */
.blog .site-main article .inside-article,
.archive .site-main article .inside-article,
.home.blog .site-main article .inside-article {
  padding: 22px 24px;
}

/* Featured image sits INSIDE the card (no outside margins) */
.blog .site-main article .post-image,
.archive .site-main article .post-image,
.home.blog .site-main article .post-image {
  margin: 0;                            /* remove outside gap */
  line-height: 0;                       /* kills tiny gaps from inline images */
}

/* Make image fill card width and respect the rounded container */
.blog .site-main article .post-image img,
.archive .site-main article .post-image img,
.home.blog .site-main article .post-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0;                      /* corners handled by article overflow */
}

/* Title + meta polish for readability */
.blog .site-main article .entry-title,
.archive .site-main article .entry-title,
.home.blog .site-main article .entry-title {
  margin-top: 12px;
  margin-bottom: 6px;
  font-weight: 800;
  color: #603D4F;
}

.blog .site-main article .entry-meta,
.archive .site-main article .entry-meta,
.home.blog .site-main article .entry-meta {
  color: #8a9096;
  font-size: 13px;
}

/* “Read more” link as subtle button (optional) */
.blog .site-main article .read-more a,
.archive .site-main article .read-more a,
.home.blog .site-main article .read-more a {
  display: inline-block;
  background: #BC4D5E;
  color: #fff;
  text-decoration: none;
  padding: 10px 14px;
  border-radius: 10px;
  font-weight: 700;
  transition: background .2s ease, transform .2s ease;
}
.blog .site-main article .read-more a:hover,
.archive .site-main article .read-more a:hover,
.home.blog .site-main article .read-more a:hover {
  background: #E98973;
  transform: translateY(-1px);
}

/* If GeneratePress adds extra spacing above/below featured images */
.blog .site-main article .inside-article > .featured-image,
.archive .site-main article .inside-article > .featured-image,
.home.blog .site-main article .inside-article > .featured-image {
  margin: 0;
}

/* Compact excerpt spacing */
.blog .site-main article .entry-summary,
.archive .site-main article .entry-summary,
.home.blog .site-main article .entry-summary {
  margin-top: 8px;
}

/* Sticky post badge (if used) */
.blog .site-main article.sticky,
.archive .site-main article.sticky {
  border-color: #BC4D5E;
  box-shadow: 0 6px 18px rgba(188,77,94,.18);
}
/* === SINGLE POST: CARD CONTAINER === */
.single .site-main article {
  background: #ffffff;
  border: 1px solid #EBB888;      /* brand border */
  border-radius: 16px;
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
  overflow: hidden;               /* keeps top image inside rounded corners */
}

/* Inner padding matches your sidebar/about card */
.single .site-main article .inside-article {
  padding: 22px 24px;
}

/* Featured image sits flush inside the card */
.single .site-main article .post-image { 
  margin: 0; 
  line-height: 0;                 /* remove tiny inline gap */
}
.single .site-main article .post-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0;               /* article’s overflow handles corners */
}

/* Title + meta to match list style */
.single .site-main article .entry-title {
  margin-top: 12px;
  margin-bottom: 6px;
  font-weight: 800;
  color: #603D4F;
}
.single .site-main article .entry-meta {
  color: #8a9096;
  font-size: 13px;
}

/* Buttons under title (Jump/Print) harmonized */
.single .tasty-recipes-jump-link,
.single .tasty-recipes-print-link {
  background: #BC4D5E;
  color: #fff;
  border-radius: 10px;
  padding: 10px 14px;
  font-weight: 700;
}
.single .tasty-recipes-jump-link:hover,
.single .tasty-recipes-print-link:hover { background:#E98973; }

/* TOC block spacing so it feels part of the card */
.single .entry-content .ez-toc-title-container,
.single .entry-content .wp-block-ub-table-of-contents,
.single .entry-content .toc_container {
  margin-top: 10px;
}

/* Optional: max width for readability on very wide screens */
@media (min-width: 1200px){
  .single .no-sidebar .site-main { max-width: 860px; margin: 0 auto; }
}
html, body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue",
               Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji",
               "Segoe UI Symbol", sans-serif;
}
/* MailerLite embed: use system fonts so their fonts.mailerlite.com isn't needed */
.ml-form-embed, .ml-form-embed * {
  font-family: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
}
