/* Original family-shop layer. No external fonts, animation libraries or checkout logic. */
body.jovan-studio.jovan-family {
  --studio-ink: #423e32; --studio-muted: #686052; --studio-paper: #fffdf8;
  --studio-cream: #f7f0e4; --studio-line: #e2d8c8; --studio-sage: #e2e8d7;
  --family-rust: #954b37; --family-peach: #f3ded0; --family-sage: #e5eadc;
  --family-honey: #f1dfb5; --family-heading: 'Iowan Old Style', 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
  --family-body: ui-rounded, 'Avenir Next', 'Segoe UI', system-ui, sans-serif;
  --jovan-dark: #423e32; --jovan-pink: #954b37; --jovan-blue: #e2e8d7; --jovan-cream: #f7f0e4;
  --global-palette1: #954b37; --global-palette2: #783d2d; --global-palette3: #423e32;
  --global-palette4: #514b3f; --global-palette5: #686052; --global-palette7: #f7f0e4;
  --global-body-font-family: var(--family-body);
  color: var(--studio-ink); font: 16px/1.75 var(--family-body);
}
.jovan-family .studio-wrap { width: calc(100% - 80px); }
/* Kadence's negative mobile article margin must not cancel our section gutters. */
body.jovan-family.home .entry { margin-inline: 0; }
body.jovan-family :focus-visible { outline: 3px solid #954b37; outline-offset: 4px; }
body.jovan-family .jovan-announce-bar {
  background: #e5eadc; color: #423e32; font: 600 12px/1.5 var(--family-body);
  letter-spacing: .015em; padding: 11px 16px; text-transform: none;
}
.jovan-family .studio-header { background: var(--studio-paper); border-color: var(--studio-line); }
.jovan-family .studio-header-main { min-height: 92px; gap: 24px; }
body.jovan-family .studio-brand { font-family: var(--family-heading); font-size: 54px; font-weight: 700; letter-spacing: -.06em; color: #6a5541; }
.jovan-family .studio-brand span { font: 600 9px/1.2 var(--family-body); letter-spacing: .2em; }
.jovan-family .studio-desktop-nav { gap: 28px; }
.jovan-family .studio-desktop-nav a { font: 500 14px/1.6 var(--family-body); }
.jovan-family .studio-tools { gap: 14px; }
.jovan-family #studio-currency-slot { width: 78px; min-width: 78px; height: 44px; }
.jovan-family .studio-tools #jovan-currency-select { font-family: var(--family-body); color: var(--studio-ink); }
.jovan-family .studio-search form { border-radius: 20px; box-shadow: 0 12px 30px #423e3210; }
.jovan-family .studio-search button, .jovan-family .studio-mobile-search button { background: var(--family-rust); border-radius: 0 12px 12px 0; }
.jovan-family .studio-search input, .jovan-family .studio-mobile-search input { border-radius: 12px 0 0 12px; }
.jovan-family .studio-mobile-nav a { border-bottom: 1px solid var(--studio-line); font-size: 16px; }
.jovan-family .studio-mobile-nav a:last-child { color: var(--family-rust); }
/* A shorter homepage opening with the original arched photo treatment. */
.jovan-family .studio-hero {
  width: calc(100% - 48px); margin: 18px auto 0; min-height: 480px;
  grid-template-columns: 1.03fr 1fr; border-radius: 28px 28px 72px 28px;
  background: #f6eddf; overflow: hidden;
}
.jovan-family .studio-hero-copy { padding: 36px clamp(28px, 4vw, 70px); position: relative; z-index: 1; }
body.jovan-family .studio-eyebrow {
  font: 600 12px/1.6 var(--family-body); letter-spacing: .045em; text-transform: none;
  color: #78553d; margin-bottom: 16px;
}
body.jovan-family .studio-hero .family-hello { display: inline-flex; gap: 10px; align-items: center; letter-spacing: .01em; }
.jovan-family .family-hello::before { content: '♡'; font-size: 24px; color: var(--family-rust); }
body.jovan-family .studio-hero h1 {
  font: 500 clamp(44px, 4.2vw, 62px)/1.1 var(--family-heading); letter-spacing: -.045em;
  margin-bottom: 24px; color: var(--studio-ink);
}
.jovan-family .studio-hero h1 em, .jovan-family .studio-story h2 em { color: var(--family-rust); font-weight: 500; }
.jovan-family .studio-hero-description { font: 16px/1.85 var(--family-body); max-width: 415px; margin-bottom: 30px; }
body.jovan-family .studio-button {
  font: 600 14px/1.55 var(--family-body); text-transform: none; letter-spacing: 0;
  min-height: 50px; padding: 15px 24px; gap: 18px; border-radius: 999px;
  background: var(--family-rust); border-color: var(--family-rust); color: #fffdf8;
  box-shadow: none; transition: background-color .15s ease;
}
body.jovan-family .studio-button:hover { background: #783d2d; border-color: #783d2d; }
.jovan-family .studio-hero-caption { font: 12px/1.6 var(--family-body); margin-top: 16px; max-width: 100%; }
.jovan-family .studio-hero-image {
  min-height: 380px; margin: 32px 32px 32px 0; overflow: visible;
  border-radius: 45% 45% 32px 32px; background: #e7dcc8; align-self: stretch;
}
.jovan-family .studio-hero-image picture { display: block; position: absolute; inset: 0; overflow: hidden; border-radius: inherit; }
.jovan-family .studio-hero-image picture img { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 64% center; }
.jovan-family .studio-hero-image > .family-art {
  position: absolute; z-index: 2; width: 112px; height: 112px; top: -28px; right: -19px; color: #765337;
  transform: rotate(10deg); filter: none;
}
.jovan-family .studio-hero-image > span {
  bottom: 22px; right: 20px; left: 20px; text-align: center; padding: 11px 16px;
  font: italic 19px/1.5 var(--family-heading); color: #423e32; background: #fffaf0f2; border-radius: 12px;
}
.jovan-family .family-hero-note {
  position: absolute; left: -24px; top: 65%; z-index: 2; background: #fff8e7;
  border: 1px solid #e2cfaa; color: #635139; transform: rotate(-6deg); border-radius: 8px;
  padding: 14px 20px; font: italic 17px/1.4 var(--family-heading); box-shadow: 0 4px 0 #423e320a;
}
.jovan-family .studio-service-line { border: 0; gap: 16px 54px; font: 500 13px/1.6 var(--family-body); padding: 26px 20px; }
.jovan-family .studio-service-line > *::before { content: '♡'; margin-right: 9px; color: #954b37; font-size: 16px; }
/* Browse by a real category, with small original illustrations rather than stock photos. */
.jovan-family .studio-collections { padding-block: 44px 28px; }
.jovan-family .studio-section-top { margin-bottom: 30px; }
body.jovan-family .studio-section-top h2, body.jovan-family .studio-journal h2 {
  font: 500 clamp(30px, 2.8vw, 38px)/1.2 var(--family-heading); letter-spacing: -.025em;
}
.jovan-family .studio-section-top > p { font: 14px/1.85 var(--family-body); max-width: 350px; }
body.jovan-family .studio-text-link, body.jovan-family .editorial-read { font: 600 13px/1.7 var(--family-body); color: #844532; border-color: #b1836a; min-height: 36px; }
.jovan-family .studio-collection-list { border: 0; gap: 16px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.jovan-family .studio-collection-list > a, .jovan-family .studio-collection-list > a:first-child {
  border: 0; padding: 20px 14px; border-radius: 48px 48px 16px 16px;
  background: #f7ecdc; text-align: center; display: flex; flex-direction: column; align-items: center;
}
.jovan-family .studio-collection-list > a:nth-child(2) { background: #f5e3dc; }
.jovan-family .studio-collection-list > a:nth-child(3) { background: #f4ebd3; }
.jovan-family .studio-collection-list > a:nth-child(4) { background: #e8eddf; }
.jovan-family .studio-collection-list > a:nth-child(5) { background: #ede6da; }
.jovan-family .studio-collection-list > a:hover { box-shadow: inset 0 0 0 2px #b79171; }
.jovan-family .studio-collection-list .family-art { width: 76px; height: 76px; margin: 0 auto 8px; color: #796149; }
body.jovan-family .studio-collection-list h3 { font: 500 21px/1.3 var(--family-heading); margin: 5px 0 14px; }
.jovan-family .family-collection-cta { font: 500 12px/1.6 var(--family-body); display: flex; align-items: center; gap: 8px; margin-top: auto; }
.jovan-family .family-collection-cta svg { width: 16px; height: 16px; }
/* Familiar WooCommerce cards, with softer surfaces and more readable controls. */
.jovan-family .studio-products { padding-block: 32px 64px; }
body.jovan-family ul.products { gap: 24px !important; }
body.jovan-family ul.products li.product { border-radius: 0; background: transparent; border: 0; padding: 0; overflow: visible; }
body.jovan-family ul.products li.product:hover { border-color: #cbb79e; box-shadow: none; }
body.jovan-family ul.products li.product img { border-radius: 12px !important; aspect-ratio: 1; margin-bottom: 16px; }
body.jovan-family .studio-photo-placeholder { border-radius: 12px; background: #f3eadf; aspect-ratio: 1; color: #71614e; }
body.jovan-family li.product:nth-child(2n) .studio-photo-placeholder { background: #f5e7de; }
body.jovan-family li.product:nth-child(3n) .studio-photo-placeholder { background: #e9edde; }
.jovan-family .studio-photo-placeholder > span { font: 12px/1.5 var(--family-body); letter-spacing: 0; padding: 0 8px; text-align: center; }
body.jovan-family ul.products li.product .woocommerce-loop-product__title { font: 600 15px/1.55 var(--family-body); margin: 0 0 8px; }
body.jovan-family ul.products .product-details { padding: 0 2px 4px !important; }
body.jovan-family ul.products li.product .price { font: 600 16px/1.5 var(--family-body); color: #6b5139; }
body.jovan-family ul.products li.product .button, body.jovan-family .single_add_to_cart_button {
  font: 600 13px/1.6 var(--family-body); text-transform: none !important; letter-spacing: 0;
  background: var(--family-rust) !important; border-radius: 999px !important; padding: 13px 16px; min-height: 46px;
}
body.jovan-family ul.products li.product .button:hover { background: #783d2d !important; }
/* Override Kadence's hover-only action panel: buying must work on the first tap. */
body.jovan-family ul.products li.product .product-details {
  display: flex; flex-direction: column; flex: 1; margin: 0 !important;
  background: transparent; transform: none !important;
}
body.jovan-family ul.products li.product .product-action-wrap {
  position: static !important; opacity: 1 !important; visibility: visible !important;
  transform: none !important; width: 100%; padding: 0 !important; margin-top: auto;
}
body.jovan-family ul.products li.product .product-action-wrap .button {
  display: flex; align-items: center; justify-content: center; width: 100%;
  min-height: 46px; padding: 12px 10px; margin: 0; text-decoration: none;
  transform: none !important;
}
body.jovan-family ul.products li.product .woocommerce-loop-product__title { min-height: 3.1em; }
body.jovan-family ul.products li.product .price { margin-bottom: 12px; }
body.jovan-family ul.products li.product .product-action-wrap .kadence-svg-iconset:has(.kadence-arrow-right-alt-svg) { display: none; }
body.jovan-family .studio-button-outline { color: var(--family-rust); background: transparent; }
.jovan-family .onsale { font-family: var(--family-body); border-radius: 999px !important; }
/* A story from real parents. No fabricated testimonial, badge or family photograph. */
.jovan-family .studio-story {
  display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(30px, 6vw, 90px); align-items: center;
  background: #e8ecdf; border-radius: 24px 48px 24px 24px; text-align: left; padding: 44px 56px;
  position: relative; border: 1px solid #dbe2cf;
}
.jovan-family .family-story-art {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  background: #fff9ed; border: 1px solid #e1d5bf; border-radius: 48% 48% 18px 18px;
  padding: 28px 22px 32px; transform: rotate(-3deg); color: #796149;
}
.jovan-family .family-story-art .family-art { width: min(100%, 250px); height: auto; }
.jovan-family .family-story-art > span { font: italic 24px/1.35 var(--family-heading); margin-top: 8px; }
body.jovan-family .studio-story h2 { font: 500 clamp(32px, 3.2vw, 42px)/1.15 var(--family-heading); letter-spacing: -.03em; margin: 0 0 20px; }
.jovan-family .family-story-copy > p:not(.studio-eyebrow) { font: 15px/1.85 var(--family-body); color: var(--studio-muted); margin: 0 0 18px; max-width: 540px; }
body.jovan-family .family-story-copy .family-signature, body.jovan-family .family-signature { font: italic 25px/1.5 var(--family-heading); color: #80503a; }
.jovan-family .family-signature span { color: var(--family-rust); }
/* Journals, FAQs and product detail pages belong to the same warm shop. */
.jovan-family .editorial-home { padding-block: 64px; }
.jovan-family .editorial-grid { gap: 24px; }
.jovan-family .editorial-card { padding: 0; border: 0; border-radius: 0; background: transparent; }
.jovan-family .editorial-card-art, .jovan-family .editorial-article-art img { border-radius: 16px; }
.jovan-family .editorial-card-art img { transition: none; }
.jovan-family .editorial-card:hover .editorial-card-art img { transform: none; }
.jovan-family .editorial-card-copy { padding: 20px 0 0; }
body.jovan-family .editorial-kicker { font: 600 11px/1.6 var(--family-body); letter-spacing: .04em; }
body.jovan-family .editorial-card h2, body.jovan-family .editorial-card h3 { font: 500 clamp(24px, 2.1vw, 28px)/1.22 var(--family-heading); }
.jovan-family .editorial-card-copy > p:not(.editorial-kicker) { font-size: 14px; }
body.jovan-family .entry-hero { background: #f5ecdd !important; border-radius: 0 0 36px 36px; }
body.jovan-family .entry-hero h1, body.jovan-family .entry-hero .page-title,
body.jovan-family .summary .product_title, body.jovan-family.single-post .entry-title,
body.jovan-family .editorial-journal-hero h1 { font-family: var(--family-heading); font-weight: 500; letter-spacing: -.03em; }
.jovan-family .editorial-journal-hero h1 em { color: var(--family-rust); }
.jovan-family .editorial-collection-nav { gap: 10px; }
.jovan-family .editorial-collection-nav a { border-radius: 999px; font: 500 13px/1.5 var(--family-body); padding: 10px 16px; }
.jovan-family .editorial-collection-nav a[aria-current] { background: #71664f; border-color: #71664f; }
.jovan-family .woocommerce-ordering select { border-radius: 12px; font: 14px var(--family-body); }
.jovan-family .woocommerce-product-gallery img { border-radius: 24px; }
.jovan-family .editorial-product-help { border: 1px solid var(--studio-line); background: #fbf6ec; border-radius: 16px; padding: 0 20px; }
.jovan-family .editorial-product-help details:last-child { border: 0; }
.jovan-family .editorial-product-help summary { font: 600 14px/1.6 var(--family-body); }
.jovan-family .editorial-product-help p { font: 14px/1.8 var(--family-body); }
.jovan-family .editorial-toc, .jovan-family .editorial-help { background: #f5f0e3; border: 1px solid var(--studio-line); padding: 22px; border-radius: 18px; }
.jovan-family .editorial-prose { font: 16px/1.9 var(--family-body); }
body.jovan-family .editorial-prose h2 { font-family: var(--family-heading); }
.jovan-family .jovan-shopping-answers { background: #faf4e8; border: 0; border-radius: 20px; padding: 36px; margin-bottom: 64px; gap: 40px; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
body.jovan-family .jovan-shopping-answers h2, body.jovan-family .jovan-answer-list h3 { font-family: var(--family-heading); color: var(--studio-ink); }
.jovan-family .jovan-shopping-answers p { font: 14px/1.85 var(--family-body); color: var(--studio-muted); }
.jovan-family .jovan-answer-list a, .jovan-family .jovan-product-guide a { color: #844532; }
/* Only surrounding surfaces change at checkout; Stripe iframes remain untouched. */
body.jovan-family .wp-block-woocommerce-checkout-totals-block,
body.jovan-family .wp-block-woocommerce-cart-totals-block { border-radius: 20px; background: #faf4e8 !important; }
body.jovan-family .wc-block-components-text-input input,
body.jovan-family .wc-block-components-combobox-control input { border-radius: 10px !important; }
body.jovan-family .wc-block-cart__submit-button,
body.jovan-family .wc-block-components-checkout-place-order-button { border-radius: 999px !important; background: var(--family-rust) !important; }
body.jovan-family .jovan-delivery-progress { border-radius: 16px; background: #eef1e6; }
.jovan-family .jovan-delivery-progress-message { font-family: var(--family-body); }
.jovan-family #jovan-cart-drawer { border-radius: 24px 0 0 24px; }
.jovan-family .jovan-cart-drawer-header { font-family: var(--family-heading); background: #faf4e8; }
body.jovan-family #jovan-cart-drawer .woocommerce-mini-cart__buttons a { border-radius: 999px; font-family: var(--family-body); }
body.jovan-family #jovan-cart-drawer .woocommerce-mini-cart__buttons a.checkout { background: var(--family-rust) !important; }
/* Footer and About Us. */
body.jovan-family #colophon { background: #eee5d6; border-top: 1px solid #e2d8c8; }
.jovan-family .studio-footer { padding-block: 48px 24px; }
body.jovan-family .studio-footer h2 { font: 600 16px/1.5 var(--family-body); letter-spacing: 0; }
.jovan-family .studio-footer-top > div:not(.studio-footer-brand) a, .jovan-family .studio-footer-top p { font: 14px/1.8 var(--family-body); }
.jovan-family .studio-footer-bottom { font: 12px/1.7 var(--family-body); border-color: #d7c9b5; }
.jovan-family .studio-footer-brand > p { font: italic 23px/1.4 var(--family-heading); color: #6a5541; }
.jovan-family.jovan-about-page .entry { background: transparent; box-shadow: none; }
.jovan-family.jovan-about-page .entry-content-wrap { padding: 0; }
.jovan-family .family-about-intro { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 60px; padding-block: 25px 55px; }
.jovan-family .family-about-intro h2 { font: 500 clamp(30px, 3vw, 42px)/1.2 var(--family-heading); margin: 0 0 22px; letter-spacing: -.03em; }
.jovan-family .family-about-intro p { max-width: 620px; }
.jovan-family .family-photo { width: min(100%, 360px); margin: 0; border-radius: 45% 45% 24px 24px; overflow: hidden; aspect-ratio: 4/5; background: #eee5d6; }
.jovan-family .family-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.jovan-family .family-photo-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 32px; border: 1px dashed #a59275; color: #71614e; }
.jovan-family .family-photo-placeholder .family-art { width: min(100%, 240px); height: auto; }
.jovan-family .family-photo-placeholder p { font: italic 24px/1.5 var(--family-heading); margin: 16px 0 0; }
.jovan-family .family-photo-placeholder span { font: 13px/1.6 var(--family-body); }
.jovan-family .family-about-note { background: #e9edde; border-radius: 24px; padding: 34px 40px; margin-bottom: 45px; }
.jovan-family .family-about-note h2, .jovan-family .family-about-values h2 { font: 500 34px/1.2 var(--family-heading); margin: 0 0 18px; }
.jovan-family .family-about-values { max-width: 760px; margin: 0 auto 60px; }
.jovan-family .family-about-values p { font: 16px/1.9 var(--family-body); }
/* Related reading now has two cards: stack each card's art above copy on tablets. */
@media (min-width: 768px) and (max-width: 1100px) {
  .jovan-family .editorial-next .editorial-grid { max-width: none; }
  .jovan-family .editorial-next .editorial-card { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .jovan-family .editorial-next .editorial-card-copy { min-width: 0; }
}
/* Let desktop sections use the screen, without stretching long-form reading. */
@media (min-width: 1101px) {
  body.jovan-studio.jovan-family:not(.home) .content-container.site-container {
    width: calc(100% - 80px); max-width: none !important; padding-inline: 0;
  }
  .jovan-family .studio-hero-copy { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
  .jovan-family .studio-hero-description { max-width: 480px; }
  .jovan-family .family-story-art { width: 100%; max-width: 440px; justify-self: center; }
  .jovan-family .family-story-copy { width: 100%; max-width: 680px; justify-self: center; }
  .jovan-family .family-about-intro { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(40px, 5vw, 100px); }
  .jovan-family .family-about-intro > div:first-child { max-width: 680px; justify-self: center; }
  .jovan-family .family-photo { width: min(100%, 360px); justify-self: center; }
  .jovan-family .family-about-note { padding-inline: max(40px, calc((100% - 760px) / 2)); }
  .jovan-family .editorial-reading { grid-template-columns: 250px minmax(0, 720px); gap: 64px; }
  .jovan-family .editorial-next .editorial-grid { max-width: none; }
  .jovan-family .editorial-journal-hero { background: #f6eddf; border-radius: 28px 28px 64px 28px; padding: 48px; margin-top: 24px; }
  .jovan-family .editorial-journal-hero > div:first-child { max-width: 640px; }
  .jovan-family .editorial-journal-hero > div > p:not(.studio-eyebrow) { max-width: 480px; font-size: 16px; }
  .jovan-family .editorial-journal-photo { border-radius: 24px; }
}
/* Compact archive introduction: image height must not grow with screen width. */
body.jovan-family .editorial-journal-hero {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 34%); gap: 32px;
  padding: 24px 32px; margin-top: 18px; background: #f6eddf;
  border-radius: 24px 24px 40px 24px;
}
body.jovan-family .editorial-journal-hero h1 { font-size: clamp(32px, 3vw, 44px); line-height: 1.12; margin-bottom: 12px; }
body.jovan-family .editorial-journal-hero .studio-eyebrow { margin-bottom: 8px; }
body.jovan-family .editorial-journal-hero > div > p:not(.studio-eyebrow) { max-width: 560px; font-size: 14px; line-height: 1.7; }
body.jovan-family .editorial-journal-photo { height: 190px; min-height: 0; aspect-ratio: auto; border-radius: 16px; }
body.jovan-family .editorial-journal-photo img { display: block; }
body.jovan-family .editorial-journal-photo > span { bottom: 12px; left: 12px; padding: 6px 10px; font-size: 14px; }
body.jovan-family .editorial-journal-list { padding-top: 20px; }
body.jovan-family .editorial-journal-label { padding-top: 20px; margin-bottom: 20px; }
@media (max-width: 767px) {
  body.jovan-family .editorial-journal-hero { grid-template-columns: minmax(0, 1fr); padding: 24px 20px; gap: 0; margin-top: 12px; }
  body.jovan-family .editorial-journal-photo { display: none; }
}
/* Equal-weight guide cards; illustration height is independent of monitor width. */
.jovan-family .editorial-home .editorial-card,
.jovan-family .editorial-journal-list .editorial-card { display: flex; flex-direction: column; }
.jovan-family .editorial-home .editorial-card-art img,
.jovan-family .editorial-journal-list .editorial-card-art img { height: 210px; object-fit: contain; }
.jovan-family .editorial-home .editorial-card-copy,
.jovan-family .editorial-journal-list .editorial-card-copy { display: flex; flex-direction: column; align-items: flex-start; flex: 1; min-width: 0; }
.jovan-family .editorial-card-copy .editorial-read { margin-top: auto; }
@media (min-width: 1101px) {
  .jovan-family .editorial-home .editorial-grid:has(> :nth-child(3):last-child),
  .jovan-family .editorial-journal-list .editorial-grid:has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 768px) and (max-width: 1100px) {
  .jovan-family .editorial-home .editorial-grid > :nth-child(3):last-child,
  .jovan-family .editorial-journal-list .editorial-grid > :nth-child(3):last-child { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: center; }
  .jovan-family .editorial-grid > :nth-child(3):last-child .editorial-card-copy { padding-top: 0; }
}
@media (max-width: 1100px) {
  .jovan-family .studio-wrap { width: calc(100% - 48px); }
  .jovan-family .studio-desktop-nav { gap: 16px; }
  .jovan-family .studio-tools { gap: 8px; }
  .jovan-family .studio-hero-copy { padding: 32px 28px; }
  .jovan-family .studio-hero-image { margin-right: 26px; }
  .jovan-family .studio-collection-list { gap: 12px; }
  body.jovan-family .studio-collection-list h3 { font-size: 19px; }
  .jovan-family .studio-story { padding: 42px; gap: 35px; }
}
@media (min-width: 768px) and (max-width: 920px) {
  .jovan-family .studio-desktop-nav { gap: 12px; }
  .jovan-family .studio-desktop-nav a { font-size: 12px; }
  .jovan-family .studio-header-main { gap: 12px; }
  .jovan-family .studio-search { display: none; }
}
@media (max-width: 767px) {
  .jovan-family .studio-wrap { width: calc(100% - 32px); }
  .jovan-family .studio-header-main { min-height: 76px; gap: 8px; }
  body.jovan-family .studio-brand { font-size: 44px; }
  .jovan-family .studio-tools { gap: 6px; }
  .jovan-family .studio-hero { width: calc(100% - 24px); margin-top: 12px; grid-template-columns: minmax(0, 1fr); border-radius: 22px 22px 42px 22px; min-height: 0; }
  .jovan-family .studio-hero .studio-button { max-width: 100%; white-space: normal; }
  .jovan-family .studio-hero-copy { padding: 24px 22px 20px; }
  body.jovan-family .studio-hero h1 { font-size: clamp(40px, 11vw, 61px) !important; margin-bottom: 18px; }
  body.jovan-family .studio-hero .studio-eyebrow { font-size: 12px; margin-bottom: 15px; }
  .jovan-family .studio-hero-description { font-size: 15px; line-height: 1.8; margin-bottom: 22px; }
  body.jovan-family .studio-button { font-size: 13px; padding: 14px 18px; gap: 12px; }
  .jovan-family .studio-hero-caption { font-size: 11px; }
  .jovan-family .studio-hero-image { min-height: 250px; margin: 10px 22px 24px; border-radius: 100px 100px 20px 20px; }
  .jovan-family .studio-hero-image > .family-art { width: 76px; height: 76px; right: -10px; top: -24px; }
  .jovan-family .studio-hero-image > span { font-size: 17px; bottom: 14px; left: 12px; right: 12px; padding: 8px; }
  .jovan-family .family-hero-note { top: 50%; left: -10px; font-size: 14px; padding: 10px 14px; }
  .jovan-family .studio-service-line { padding: 21px 16px; gap: 8px 20px; font-size: 11px; }
  .jovan-family .studio-collections { padding-block: 32px 24px; }
  .jovan-family .studio-section-top { gap: 18px; margin-bottom: 24px; }
  body.jovan-family .studio-section-top h2 { font-size: 30px; }
  .jovan-family .studio-section-top > p { font-size: 14px; }
  .jovan-family .studio-collection-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
  .jovan-family .studio-collection-list > a, .jovan-family .studio-collection-list > a:first-child { padding: 16px 12px; gap: 0; border-radius: 44px 44px 14px 14px; }
  .jovan-family .studio-collection-list > a:last-child { grid-column: 1 / -1; flex-direction: row; justify-content: center; gap: 16px; border-radius: 20px; padding: 12px 16px; }
  .jovan-family .studio-collection-list > a:last-child .family-art { width: 64px; height: 64px; margin: 0; flex-shrink: 0; }
  .jovan-family .studio-collection-list > a:last-child h3 { flex: 0 1 auto; }
  .jovan-family .studio-collection-list > a:last-child .family-collection-cta { display: none; }
  body.jovan-family .studio-collection-list h3 { font-size: 19px !important; flex: none; margin: 8px 0 12px !important; }
  .jovan-family .studio-collection-list .family-art { width: 64px; height: 64px; }
  .jovan-family .studio-products { padding-block: 28px 50px; }
  body.jovan-family ul.products { gap: 20px 12px !important; }
  body.jovan-family ul.products li.product { padding: 0; border-radius: 0; }
  body.jovan-family ul.products li.product .woocommerce-loop-product__title { font-size: 13px; line-height: 1.55; min-height: 40px; }
  body.jovan-family ul.products .product-details { padding: 0 3px 4px !important; }
  body.jovan-family ul.products li.product .button { font-size: 12px; padding: 12px 8px; }
  .jovan-family .studio-photo-placeholder > span { font-size: 10px; }
  .jovan-family .studio-story { grid-template-columns: 1fr; padding: 28px 24px 34px; border-radius: 24px 50px 24px 24px; gap: 32px; }
  .jovan-family .family-story-art { width: min(100%, 260px); justify-self: center; padding: 20px; }
  .jovan-family .family-story-art .family-art { width: 160px; }
  .jovan-family .family-story-art > span { font-size: 22px; }
  body.jovan-family .studio-story h2 { font-size: 32px; }
  .jovan-family .editorial-home { padding-block: 50px; }
  .jovan-family .editorial-card { padding: 0; border-radius: 0; }
  .jovan-family .editorial-card-copy { padding: 18px 0 0; }
  .jovan-family .jovan-shopping-answers { grid-template-columns: minmax(0, 1fr); padding: 28px 22px; gap: 20px; margin-bottom: 42px; }
  .jovan-family .studio-footer { padding-top: 40px; }
  .jovan-family .studio-footer-top { gap: 30px 20px; }
  .jovan-family .studio-footer-top > div:not(.studio-footer-brand) a { font-size: 13px; padding-block: 8px; }
  .jovan-family .studio-footer-top p { font-size: 13px; }
  .jovan-family .family-about-intro { grid-template-columns: 1fr; gap: 30px; padding-block: 15px 35px; }
  .jovan-family .family-photo { width: min(100%, 280px); margin-inline: auto; }
  .jovan-family .family-about-note { padding: 28px 24px; }
  .jovan-family .family-about-values { margin-bottom: 40px; }
  .jovan-family #jovan-cart-drawer { border-radius: 0; }
}
/* The supplied portrait keeps its original 3:4 composition inside the arch. */
.jovan-family .family-story-art.family-story-photo {
  width: min(100%, 320px); max-width: 320px; margin: 0; padding: 8px;
  border-radius: 48% 48% 16px 16px; transform: rotate(-1.5deg); justify-self: center;
}
.jovan-family .family-story-photo img {
  display: block; width: 100%; height: auto; aspect-ratio: 3 / 4;
  object-fit: cover; border-radius: 48% 48% 10px 10px;
}
.jovan-family .family-story-photo figcaption { font: italic 16px/1.5 var(--family-heading); padding: 12px 6px 6px; }
/* Native details keep all answers available without a wall of text or extra JS. */
body.jovan-family .jovan-shopping-answers h2 { font-size: clamp(30px, 2.8vw, 38px); }
.jovan-family .jovan-answer-list details { border-bottom: 1px solid var(--studio-line); }
.jovan-family .jovan-answer-list summary { cursor: pointer; position: relative; padding: 18px 28px 18px 0; list-style: none; min-height: 48px; }
.jovan-family .jovan-answer-list summary::-webkit-details-marker { display: none; }
.jovan-family .jovan-answer-list summary::after { content: '+'; position: absolute; right: 2px; top: 16px; font-size: 20px; }
.jovan-family .jovan-answer-list details[open] summary::after { content: '−'; }
body.jovan-family .jovan-answer-list summary h3 { font: 600 15px/1.55 var(--family-body); margin: 0; }
.jovan-family .jovan-answer-list details p { padding: 0 0 20px; border: 0; }
.jovan-family .jovan-answer-list a { overflow-wrap: anywhere; }
.jovan-family .studio-section-top .studio-text-link { flex-shrink: 0; }
body.jovan-family .studio-section-top .studio-eyebrow { margin-bottom: 10px; }
.jovan-family .studio-footer-top { padding-bottom: 32px; }
/* Reading remains narrow even while surrounding pages retain their wide layout. */
body.jovan-family.single-post .editorial-article-art { max-width: 1000px; margin-inline: auto; }
body.jovan-family.single-post .editorial-article-art img { max-height: 300px; object-fit: contain; }
body.jovan-family.single-post .entry-title { font-size: clamp(32px, 3.4vw, 48px); }
.jovan-family .editorial-next .editorial-card-copy { padding: 0; }
body.jovan-family .entry-hero h1, body.jovan-family .entry-hero .page-title { font-size: clamp(30px, 3vw, 38px); }
body.jovan-family .entry-hero .entry-hero-container-inner { min-height: 0 !important; }
body.jovan-family .entry-hero .hero-container { min-height: 156px; grid-template-rows: auto; padding-block: 24px; }
body.jovan-family .entry-hero .entry-header { min-height: 0; padding-block: 0; margin-block: 0; }
body.jovan-family:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout) .content-area:not(.editorial-journal-page) { margin-top: 40px; }
.jovan-family .family-about-note { max-width: 1100px; margin-inline: auto; padding: 30px 40px; }
.jovan-family .family-shop-description { max-width: 760px; margin: 40px auto 0; padding-top: 24px; border-top: 1px solid var(--studio-line); font: 14px/1.85 var(--family-body); color: var(--studio-muted); }
.jovan-family .family-shop-description p:last-child { margin-bottom: 0; }
@media (min-width: 768px) and (max-width: 1000px) {
  body.jovan-family ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.jovan-family .studio-collection-list h3 { font-size: 17px; }
  body.jovan-family .studio-hero h1 { font-size: 42px !important; }
}
@media (max-width: 767px) {
  body.jovan-family:not(.home):not(.woocommerce-cart):not(.woocommerce-checkout) .content-area:not(.editorial-journal-page) { margin-top: 24px; }
  body.jovan-family:not(.home) .entry { margin-inline: 0; }
  body.jovan-family .entry-hero .hero-container { min-height: 136px; }
  .jovan-family .family-story-art.family-story-photo { width: min(100%, 260px); }
  .jovan-family .editorial-home .editorial-card-art img,
  .jovan-family .editorial-journal-list .editorial-card-art img { height: 180px; }
  .jovan-family .editorial-grid { gap: 36px; }
  body.jovan-family.single-post .editorial-article-art img { max-height: 200px; }
  body.jovan-family .summary .product_title { font-size: 30px; }
}
@media (prefers-reduced-motion: reduce) {
  .jovan-family *, .jovan-family *::before, .jovan-family *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}