/*
Theme Name: Chef Julia Preview
Theme URI: https://preview.chef-julia.com
Author: Chef Julia project
Description: Editorial WooCommerce and EventON theme for Julia's review site.
Version: 1.1.0
Text Domain: chef-julia-preview
*/

:root {
  --cj-cream: #f5f1e8;
  --cj-paper: #fffdf8;
  --cj-ink: #173328;
  --cj-plum: #842177;
  --cj-green: #36864a;
  --cj-sage: #dfe8d8;
  --cj-line: #ddd8ce;
  --cj-muted: #6a716d;
  --cj-max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--cj-ink);
  background: var(--cj-paper);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 17px;
  line-height: 1.65;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
h1, h2, h3, h4, .cj-serif {
  margin: 0 0 .5em;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  line-height: 1.04;
  letter-spacing: -.035em;
}
h1 { font-size: clamp(3.1rem, 7vw, 6.8rem); }
h2 { font-size: clamp(2.5rem, 5vw, 5rem); }
h3 { font-size: clamp(1.65rem, 3vw, 2.5rem); }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.cj-wrap { width: min(calc(100% - 40px), var(--cj-max)); margin-inline: auto; }
.cj-eyebrow {
  margin: 0 0 20px;
  color: var(--cj-plum);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.cj-button, button, input[type="submit"], .button, .woocommerce a.button, .woocommerce button.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 13px 24px;
  border: 0;
  border-radius: 0;
  background: var(--cj-plum);
  color: #fff;
  font-weight: 750;
  line-height: 1.2;
  transition: transform .18s ease, background .18s ease;
}
.cj-button:hover, button:hover, input[type="submit"]:hover, .button:hover { background: #68185e; transform: translateY(-1px); color: #fff; }
.cj-button--green { background: var(--cj-green); border-radius: 999px; }
.cj-link { display: inline-block; padding-bottom: 4px; border-bottom: 1px solid currentColor; color: var(--cj-green); font-weight: 650; }

.cj-topbar { padding: 8px 20px; background: var(--cj-plum); color: #fff; text-align: center; font-size: .82rem; font-weight: 700; }
.cj-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid var(--cj-line); background: rgba(255,253,248,.96); backdrop-filter: blur(10px); }
.admin-bar .cj-header { top: 32px; }
.cj-header__inner { min-height: 94px; display: grid; grid-template-columns: 160px 1fr auto; align-items: center; gap: 28px; }
.cj-logo img { width: 88px; max-height: 76px; object-fit: contain; }
.cj-nav { display: flex; justify-content: center; gap: clamp(18px, 3vw, 40px); font-size: .9rem; font-weight: 750; }
.cj-nav a:hover { color: var(--cj-plum); }
.cj-menu-toggle { display: none; }

.cj-hero { background: var(--cj-cream); }
.cj-hero__grid { display: grid; grid-template-columns: .98fr 1.02fr; min-height: 650px; }
.cj-hero__copy { display: flex; flex-direction: column; justify-content: center; padding: 72px clamp(36px, 6vw, 84px) 72px max(20px, calc((100vw - var(--cj-max))/2)); }
.cj-hero__copy h1 em { display: block; color: var(--cj-plum); font-weight: 500; }
.cj-hero__copy > p:not(.cj-eyebrow) { max-width: 560px; color: #4d5c54; font-size: 1.22rem; }
.cj-hero__actions { display: flex; align-items: center; gap: 28px; margin-top: 22px; }
.cj-hero__image { min-height: 650px; background-position: center; background-size: cover; }
.cj-promise { display: flex; gap: 18px; align-items: center; margin-top: 42px; font-size: .85rem; color: var(--cj-muted); }
.cj-seal { width: 64px; height: 64px; flex: 0 0 64px; display: grid; place-items: center; border: 2px solid var(--cj-green); border-radius: 50%; color: var(--cj-green); text-align: center; font-size: .63rem; font-weight: 900; line-height: 1.05; }
.cj-stats { border-block: 1px solid var(--cj-line); background: #fff; }
.cj-stats__grid { display: grid; grid-template-columns: repeat(3, 1fr); padding: 24px 0; }
.cj-stat { padding: 0 38px; border-right: 1px solid var(--cj-line); text-align: center; color: var(--cj-muted); font-size: .82rem; }
.cj-stat:last-child { border-right: 0; }
.cj-stat strong { margin-right: 8px; color: var(--cj-plum); font-family: Georgia,serif; font-size: 1.35rem; }

.cj-section { padding: 96px 0; }
.cj-section--cream { background: var(--cj-cream); }
.cj-section--sage { background: var(--cj-sage); }
.cj-section__head { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 42px; }
.cj-section__head p { max-width: 430px; color: var(--cj-muted); }
.cj-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.cj-card { display: flex; flex-direction: column; background: #fff; box-shadow: 0 8px 30px rgba(30,47,37,.06); }
.cj-card img { width: 100%; aspect-ratio: 1.15; object-fit: cover; }
.cj-card__body { padding: 28px; }
.cj-card__body p { color: var(--cj-muted); }
.cj-split { display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
.cj-split__image { min-height: 580px; background-position: center; background-size: cover; }
.cj-split__copy { padding: clamp(48px, 7vw, 100px); }
.cj-split__copy p { color: #536159; }
.cj-preview-note { padding: 14px 20px; background: #fff4cf; border-bottom: 1px solid #e8d58d; color: #5c4c12; text-align: center; font-size: .86rem; font-weight: 650; }

.cj-shop-hero { padding: 88px 20px 76px; background: var(--cj-cream); text-align: center; }
.cj-shop-hero h1 { font-size: clamp(3rem, 6vw, 5.5rem); }
.cj-shop-hero > p { max-width: 680px; margin: 22px auto 0; color: var(--cj-muted); font-size: 1.18rem; }
.cj-category-pills { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 34px auto 0; }
.cj-category-pills a { padding: 8px 18px; border: 1px solid #cfd8cf; border-radius: 999px; color: var(--cj-green); font-size: .85rem; font-weight: 700; }
.cj-content { padding: 72px 0 96px; }
.cj-page { width: min(calc(100% - 40px), 900px); margin: 0 auto; padding: 80px 0 110px; }
.cj-page__title { margin-bottom: 42px; }

/* WooCommerce */
.woocommerce .woocommerce-breadcrumb { margin: 0 0 26px; color: var(--cj-muted); font-size: .82rem; }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 34px; color: var(--cj-muted); }
.woocommerce .woocommerce-ordering select { padding: 10px 34px 10px 12px; border: 1px solid var(--cj-line); background: #fff; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 34px 22px; margin: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; padding: 0 0 24px; background: #fff; box-shadow: 0 8px 28px rgba(30,47,37,.07); }
.woocommerce ul.products li.product a img { width: 100%; margin: 0 0 22px; aspect-ratio: 1; object-fit: cover; background: var(--cj-cream); }
.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product .price, .woocommerce ul.products li.product .button { margin-inline: 22px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; color: var(--cj-ink); font-family: Georgia,serif; font-size: 1.5rem; line-height: 1.12; }
.woocommerce ul.products li.product .price { display: block; margin-top: 12px; color: var(--cj-plum); font-weight: 800; }
.woocommerce ul.products li.product .button { margin-top: 16px; }
.woocommerce div.product { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(38px,6vw,86px); }
.woocommerce div.product div.images, .woocommerce div.product div.summary { width: auto; float: none; }
.woocommerce div.product .product_title { font-size: clamp(2.5rem,5vw,4.8rem); }
.woocommerce div.product p.price { color: var(--cj-plum); font-size: 1.45rem; font-weight: 800; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1; }
.woocommerce span.onsale { min-width: auto; min-height: auto; padding: 8px 12px; border-radius: 0; background: var(--cj-green); line-height: 1; }
.woocommerce-message, .woocommerce-info { border-top-color: var(--cj-green); background: var(--cj-cream); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--cj-green); }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; margin: 4px; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 42px; padding: 12px; background: var(--cj-cream); }

/* EventON */
.ajde_evcal_calendar { font-family: inherit !important; }
.ajde_evcal_calendar .calendar_header p, .eventon_events_list .eventon_list_event .evcal_desc span.evcal_desc2 { color: var(--cj-ink) !important; font-family: Georgia,serif !important; }
.eventon_events_list .eventon_list_event .evcal_list_a { border-color: var(--cj-plum) !important; }

.cj-footer { padding: 76px 0 34px; background: var(--cj-ink); color: #e9eee9; }
.cj-footer__grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 60px; }
.cj-footer img { width: 105px; margin-bottom: 20px; filter: brightness(0) invert(1); }
.cj-footer h3 { font-size: 1.4rem; color: #fff; }
.cj-footer a { display: block; margin: 7px 0; color: #dce7dd; }
.cj-footer__bottom { margin-top: 48px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.16); font-size: .78rem; color: #b8c2ba; }

@media (max-width: 900px) {
  .admin-bar .cj-header { top: 46px; }
  .cj-header__inner { grid-template-columns: 100px 1fr auto; min-height: 78px; }
  .cj-nav { display: none; }
  .cj-hero__grid, .cj-split, .woocommerce div.product { grid-template-columns: 1fr; }
  .cj-hero__copy { padding: 58px 24px; }
  .cj-hero__image { min-height: 520px; }
  .cj-cards, .woocommerce ul.products { grid-template-columns: repeat(2,1fr); }
  .cj-stats__grid { grid-template-columns: 1fr; }
  .cj-stat { padding: 10px; border-right: 0; }
}

@media (max-width: 600px) {
  body { font-size: 16px; }
  .cj-wrap { width: min(calc(100% - 28px), var(--cj-max)); }
  .cj-topbar { font-size: .7rem; }
  .cj-logo img { width: 72px; }
  .cj-header__inner { gap: 10px; }
  .cj-button { padding-inline: 18px; }
  .cj-header .cj-button { min-height: 42px; font-size: .8rem; }
  .cj-hero__grid { min-height: auto; }
  .cj-hero__image { min-height: 400px; }
  .cj-hero__actions { align-items: stretch; flex-direction: column; gap: 16px; }
  .cj-section { padding: 68px 0; }
  .cj-section__head { align-items: start; flex-direction: column; }
  .cj-cards, .woocommerce ul.products { grid-template-columns: 1fr; }
  .cj-split__image { min-height: 420px; }
  .cj-split__copy { padding: 52px 24px; }
  .cj-footer__grid { grid-template-columns: 1fr; gap: 34px; }
}

/* ---- Recipe listings (added for WP Recipe Maker rollout) ---- */
.cj-page__content .wp-block-latest-posts.is-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:44px 32px;list-style:none;margin:28px 0 0;padding:0;}
.cj-page__content .wp-block-latest-posts.is-grid li{margin:0;}
.cj-page__content .wp-block-latest-posts__featured-image{margin:0 0 12px;}
.cj-page__content .wp-block-latest-posts__featured-image img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;border-radius:10px;display:block;}
.cj-page__content .wp-block-latest-posts__post-title{font-size:1.45rem;line-height:1.2;display:block;margin:14px 0 0;color:var(--cj-ink);text-decoration:none;font-weight:400;}
.cj-page__content .wp-block-latest-posts__post-title:hover{color:var(--cj-green);}
.cj-page__content .wp-block-latest-posts__post-excerpt{font-size:.92rem;color:var(--cj-muted);margin:0;}
.cj-page__content .wp-block-buttons{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px;}
@media(max-width:900px){.cj-page__content .wp-block-latest-posts.is-grid{grid-template-columns:repeat(2,1fr);gap:28px 20px;}}
@media(max-width:600px){.cj-page__content .wp-block-latest-posts.is-grid{grid-template-columns:1fr;}}

/* category pills — small, outlined, brand colours */
body .cj-page__content .cj-cat-btn .wp-block-button__link.wp-element-button{background-color:transparent !important;background:transparent !important;color:var(--cj-green) !important;border:1px solid var(--cj-line) !important;border-radius:999px !important;padding:5px 13px !important;font-size:.82rem !important;line-height:1.45 !important;font-weight:500 !important;box-shadow:none !important;}
body .cj-page__content .cj-cat-btn .wp-block-button__link.wp-element-button:hover{background-color:var(--cj-green) !important;background:var(--cj-green) !important;border-color:var(--cj-green) !important;color:#fff !important;}
body .cj-page__content .wp-block-buttons{gap:6px !important;margin:10px 0 4px !important;}

/* recipe grid v2 — image-led cards, two up */
body .cj-page__content ul.wp-block-latest-posts.is-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:48px 36px !important;list-style:none !important;margin:28px 0 0 !important;padding:0 !important;}
body .cj-page__content ul.wp-block-latest-posts.is-grid li{margin:0 !important;width:auto !important;max-width:none !important;}
body .cj-page__content .wp-block-latest-posts__featured-image{margin:0 !important;}
body .cj-page__content .wp-block-latest-posts__featured-image img{width:100% !important;aspect-ratio:4/3 !important;height:auto !important;object-fit:cover !important;border-radius:10px !important;display:block !important;max-width:none !important;}
body .cj-page__content .wp-block-latest-posts__post-title{font-size:1.35rem !important;line-height:1.25 !important;display:block !important;margin:14px 0 0 !important;color:var(--cj-ink) !important;text-decoration:none !important;font-weight:400 !important;}
body .cj-page__content .wp-block-latest-posts__post-title:hover{color:var(--cj-green) !important;}
@media(max-width:640px){body .cj-page__content ul.wp-block-latest-posts.is-grid{grid-template-columns:1fr !important;gap:32px !important;}}

/* recipe index v3 — 5 across, tighter, smaller headings, plum accents */
/* let recipe listing pages use the full brand width */
body.page .cj-page:has(ul.wp-block-latest-posts){width:min(calc(100% - 40px), var(--cj-max));}
/* interior page headings — far smaller than the hero h1 */
body .cj-page__title h1{font-size:clamp(2rem,3.4vw,2.9rem) !important;line-height:1.08 !important;}
body .cj-page__content h2{font-size:1.5rem !important;line-height:1.15 !important;color:var(--cj-plum) !important;margin:44px 0 4px !important;letter-spacing:-.02em !important;}
body .cj-page__content h2:first-of-type{margin-top:24px !important;}
/* five across, tight */
body .cj-page__content ul.wp-block-latest-posts.is-grid{display:grid !important;grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:26px 18px !important;margin:20px 0 0 !important;}
body .cj-page__content .wp-block-latest-posts__featured-image img{aspect-ratio:1/1 !important;border-radius:8px !important;}
body .cj-page__content .wp-block-latest-posts__post-title{font-size:.95rem !important;line-height:1.3 !important;margin:10px 0 0 !important;font-weight:500 !important;letter-spacing:0 !important;}
body .cj-page__content .wp-block-latest-posts__post-title:hover{color:var(--cj-plum) !important;}
@media(max-width:1100px){body .cj-page__content ul.wp-block-latest-posts.is-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}}
@media(max-width:700px){body .cj-page__content ul.wp-block-latest-posts.is-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:20px 14px !important;}}

/* Substack membership cards */
.cj-substack-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;margin-top:36px;align-items:stretch;}
.cj-substack-card{background:var(--cj-paper);border:1px solid var(--cj-line);border-radius:14px;padding:32px 30px;display:flex;flex-direction:column;}
.cj-substack-card h3{font-size:1.6rem;margin:0 0 10px;}
.cj-substack-card p{color:#4d5c54;margin:0 0 22px;font-size:1.02rem;}
.cj-substack-card .cj-button{margin-top:auto;align-self:flex-start;}
.cj-substack-card--feature{background:#fff;border:2px solid var(--cj-green);box-shadow:0 14px 34px rgba(23,51,40,.09);position:relative;}
.cj-substack-card--feature .cj-eyebrow{color:var(--cj-plum);margin:0 0 8px;}
.cj-button--ghost{background:transparent !important;color:var(--cj-green) !important;border:1.5px solid var(--cj-green) !important;}
.cj-button--ghost:hover{background:var(--cj-green) !important;color:#fff !important;}
@media(max-width:820px){.cj-substack-grid{grid-template-columns:1fr;}}

/* story teaser + story page */
.cj-split__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
.cj-creds-inline{font-size:.82rem !important;letter-spacing:.04em;text-transform:uppercase;color:var(--cj-muted) !important;border-top:1px solid var(--cj-line);padding-top:16px;margin-top:22px !important;line-height:1.9;}
.cj-page__content .cj-lede{font-size:1.3rem;line-height:1.5;color:var(--cj-ink);margin-bottom:8px;}
.cj-page__content ul.cj-creds{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:10px;}
.cj-page__content ul.cj-creds li{padding:12px 16px;background:var(--cj-cream);border-left:3px solid var(--cj-plum);border-radius:0 6px 6px 0;}

/* shop search — deliberately large and high contrast for older readers */
.cj-shop-search{max-width:640px;margin:30px auto 8px;text-align:left;}
.cj-shop-search label{display:block;font-size:1.02rem;color:var(--cj-ink);margin:0 0 10px;font-weight:600;}
.cj-shop-search__row{display:flex;gap:10px;}
.cj-shop-search input[type="search"]{flex:1;min-width:0;font-size:1.15rem;padding:15px 18px;border:2px solid var(--cj-line);border-radius:10px;background:#fff;color:var(--cj-ink);font-family:inherit;}
.cj-shop-search input[type="search"]:focus{outline:none;border-color:var(--cj-green);box-shadow:0 0 0 4px rgba(54,134,74,.16);}
.cj-shop-search input[type="search"]::placeholder{color:#93a08f;}
.cj-shop-search button{font-size:1.05rem;font-weight:600;padding:15px 28px;border:0;border-radius:10px;background:var(--cj-green);color:#fff;cursor:pointer;font-family:inherit;white-space:nowrap;}
.cj-shop-search button:hover{background:var(--cj-plum);}
@media(max-width:560px){.cj-shop-search__row{flex-direction:column;}.cj-shop-search button{width:100%;}}

/* YouTube feed */
.cj-youtube{display:grid;grid-template-columns:1.6fr 1fr;gap:30px;margin-top:34px;align-items:start;}
.cj-youtube__frame{position:relative;padding-top:56.25%;border-radius:12px;overflow:hidden;background:#000;}
.cj-youtube__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.cj-youtube__main h3{font-size:1.3rem;margin:14px 0 0;line-height:1.25;}
.cj-youtube__list{list-style:none;margin:0;padding:0;display:grid;gap:14px;}
.cj-youtube__list a{display:grid;grid-template-columns:132px 1fr;gap:12px;align-items:start;text-decoration:none;color:var(--cj-ink);}
.cj-youtube__list img{width:132px;height:74px;object-fit:cover;border-radius:7px;display:block;}
.cj-youtube__list span{font-size:.9rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.cj-youtube__list a:hover span{color:var(--cj-green);}
.cj-youtube__cta{margin-top:30px;text-align:center;}
@media(max-width:900px){.cj-youtube{grid-template-columns:1fr;}.cj-youtube__list{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.cj-youtube__list{grid-template-columns:1fr;}}

/* uniform product cards — shop, categories and related products */
.woocommerce ul.products li.product{display:flex;flex-direction:column;text-align:left;}
.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1/1;object-fit:cover;height:auto;border-radius:9px;margin:0 0 12px;display:block;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1rem !important;line-height:1.3;font-weight:500;margin:0 0 6px !important;padding:0 !important;min-height:2.6em;}
.woocommerce ul.products li.product .price{font-size:1rem !important;color:var(--cj-ink) !important;margin:0 0 12px;font-weight:600;}
.woocommerce ul.products li.product .price del{opacity:.5;font-weight:400;}
.woocommerce ul.products li.product .button{margin-top:auto !important;align-self:flex-start !important;display:inline !important;background:none !important;border:0 !important;padding:0 !important;border-radius:0 !important;font-size:.86rem !important;font-weight:500 !important;color:var(--cj-green) !important;text-decoration:underline !important;text-underline-offset:3px !important;}
.woocommerce ul.products li.product .button:hover{color:var(--cj-plum) !important;background:none !important;}
.woocommerce ul.products li.product .button.add_to_cart_button{display:inline-block !important;background:var(--cj-green) !important;color:#fff !important;border:0 !important;padding:7px 16px !important;border-radius:999px !important;text-decoration:none !important;font-size:.84rem !important;}
.woocommerce ul.products li.product .button.add_to_cart_button:hover{background:var(--cj-plum) !important;border-color:var(--cj-plum) !important;}

.woocommerce .related.products > h2, .woocommerce .upsells.products > h2{font-size:1.5rem;color:var(--cj-plum);margin-bottom:6px;}

/* product grid v2 — replace WooCommerce float layout with a real grid */
.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:34px 26px !important;margin:0 !important;padding:0 !important;list-style:none !important;float:none !important;}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none !important;display:none !important;}
.woocommerce ul.products li.product{width:auto !important;max-width:none !important;margin:0 !important;float:none !important;clear:none !important;}
.woocommerce ul.products li.product .onsale{top:10px;right:10px;left:auto;margin:0;}
/* related products: one tidy row of three, never an orphan on the next line */
.woocommerce .related.products li.product:nth-child(n+4){display:none !important;}
@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media(max-width:560px){.woocommerce ul.products{grid-template-columns:1fr !important;}}

/* related full width — WooCommerce floats these into a narrow column by default */
.woocommerce .related.products,.woocommerce .upsells.products,.woocommerce .up-sells.products{width:100% !important;max-width:none !important;float:none !important;clear:both !important;margin-top:56px !important;}
.woocommerce .related.products::after,.woocommerce .upsells.products::after{content:"";display:block;clear:both;}

/* the single-product layout is a two-column grid; related must span the full row */
.woocommerce div.product .related.products,.woocommerce div.product .upsells.products{grid-column:1 / -1 !important;width:100% !important;}
