/* Typography only: preserve the established layout, imagery and shop behaviour. */
body {
  --maruji-readable-font: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif;
  font-family: var(--maruji-readable-font);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.85;
}

/* Additional orchard snapshots live below the two-video gallery. */
.mjr-gallery__more { margin: 20px 0 0; }
.mjr-gallery__feature--local { background: #332b24; }
.mjr-gallery__feature--local:after { display: none; }
.mjr-gallery__feature--local video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.mjr-gallery__feature--local .mjr-gallery__feature-caption { top: 12px; bottom: auto; left: 12px; max-width: calc(100% - 24px); padding: 6px 10px; border-radius: 8px; background: rgba(40, 25, 18, .76); font: 13px/1.45 Arial, 'Yu Gothic', sans-serif; pointer-events: none; }
.mjr-gallery__feature--local .mjr-gallery__feature-caption small { font-size: 10px; }
.mjr-gallery__video video { object-fit: contain; background: #332b24; }
.mjr-gallery__more > summary { display: flex; align-items: center; justify-content: center; gap: 14px; width: fit-content; margin: 0 auto; padding: 10px 22px; border: 1px solid #b92f34; border-radius: 999px; background: #fffaf5; color: #9d282d; font-weight: 700; cursor: pointer; list-style: none; }
.mjr-gallery__more > summary::-webkit-details-marker { display: none; }
.mjr-gallery__more > summary span { font-size: 20px; line-height: 1; }
.mjr-gallery__more[open] > summary span { transform: rotate(45deg); }
.mjr-gallery__more-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.mjr-gallery__more-grid .mjr-gallery__item { aspect-ratio: 1; }
.mjr-gallery__more-grid img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 800px) { .mjr-gallery__more-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; } }
@media (max-width: 480px) { .mjr-gallery__more-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; } }
body :is(button,input,select,textarea) { font-family: var(--maruji-readable-font); }
body :is(.mjr-home,#mjx-restored,.woocommerce,main,.site-footer) { font-family: var(--maruji-readable-font); }
body :is(h1,h2,h3,h4,h5,h6,p,li,summary,figcaption) { font-family: var(--maruji-readable-font) !important; }

/* Paragraph text, including the restored storytelling and FAQ sections. */
.mjr-home p:not(.mjr-en):not(.mjr-caption):not(.mjr-gallery__note):not(.mjx-en):not(.mjx-draft-note):not(.mjx-place__source):not(.mjx-features__draft),
.entry-content p:not(.price),
.entry-content li:not(.product),
.woocommerce p:not(.price),
.woocommerce li:not(.product),
main :is(.mju-concept__copy p,.mju-taste__grid p,.mju-taste__honey p) {
  font-size: 17px !important;
  line-height: 1.9;
}
.mjr-home :is(.mjr-purpose p small,.mjr-product a,.mjr-guide__grid a,.mjr-tips__details summary,.mjr-faq summary),
#mjx-restored .mjx-faq summary,
.woocommerce :is(.mju-use small,.mju-choice-help,.mju-photo-notice,.mju-size-links a) {
  font-family: var(--maruji-readable-font);
  font-size: 15px;
  line-height: 1.75;
}
.mjr-home :is(.mjr-caption,.mjr-gallery__note,.mjx-draft-note,.mjx-place__source,.mjx-features__draft),
.woocommerce :is(.mju-image-note,.mju-disclaimer),
main figcaption {
  font-family: var(--maruji-readable-font) !important;
  font-size: 13px !important;
  line-height: 1.7;
}
/* Font shorthands in the original captions reset their weight to normal. */
.mjr-home :is(.mjr-caption,.mjr-gallery__note,.mjr-farm__note,.mjr-farm__photo-grid figcaption),
.mjr-home .mjr-product a { font-weight: 500 !important; }
/* Extra space for longer labels as text wraps on compact screens. */
@media (max-width: 480px) {
  .mjr-home :is(.mjr-variety__card p,.mjr-tips p) { font-size: 16px !important; line-height: 1.8; }
  .mjr-home .mjr-purpose>div { align-items: flex-start; }
}

/* Flyer-based variety overview and producer message. */
.mjr-variety-new__intro{max-width:700px;margin-bottom:32px}
.mjr-variety-new__intro h2{font-size:clamp(30px,3.2vw,42px);line-height:1.45;margin:12px 0}
.mjr-variety-new__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.mjr-variety-new__grid article{background:#fff;border-radius:14px;padding:25px 22px;border-top:3px solid #bd3036}
.mjr-variety-new__grid article:nth-child(even){border-color:#bda06e}
.mjr-variety-new__grid article span{font-size:13px;color:#a32d30;font-weight:700}
.mjr-variety-new__grid article h3{font-size:22px;margin:12px 0}
.mjr-variety-new__grid article p{margin:0;line-height:1.85}
.mjr-variety-new__grid article a{display:inline-block;color:#a0272d;font-weight:700;margin-top:16px}
.mjr-variety-new__grid article .mjr-variety-season-ended{display:inline-block;margin-top:16px;color:#655950;font-size:15px;font-weight:700}
.mjr-variety-new__note{margin:20px 0;font-size:14px}
.mjx-owner{display:grid;grid-template-columns:minmax(220px,0.8fr) 1.2fr;gap:clamp(26px,5vw,65px);align-items:start;margin:0 0 100px;padding:clamp(24px,4vw,45px);background:#f1ebe0}
.mjx-owner__photo img{width:100%;height:auto;display:block;border-radius:8px}
.mjx-owner h3{font-size:clamp(26px,3vw,38px);line-height:1.5;margin:10px 0 20px}
.mjx-owner__copy p{line-height:1.9}.mjx-owner__signature{font-weight:700;margin-top:20px}
.mjx-life{padding:32px 36px;background:#f2eee5;margin:0 0 70px;border-left:3px solid #a29273}
.mjx-life h3{margin:8px 0 14px;font-size:23px}.mjx-life p{max-width:850px}
.mjx-farm-details .mjr-farm__photo-grid{padding:0 24px 24px}
@media(max-width:850px){.mjr-variety-new__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.mjr-variety-new__grid{grid-template-columns:1fr}.mjx-owner{grid-template-columns:1fr;margin-bottom:65px}.mjx-life{padding:24px}}

.mjr-variety-new__grid article img{display:block;width:100%;height:150px;object-fit:contain;background:#fff;border-radius:10px;margin:0 auto 17px}
.mjx-honey-illustration{display:block;width:92px;height:84px;margin:8px 0 12px}
.mjx-storage-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:12px 0 16px;text-align:center}
.mjx-storage-steps div{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;color:#986258}
.mjx-storage-steps svg{width:42px;height:42px}.mjx-storage-steps span{font-size:11px;font-weight:700;white-space:nowrap}
@media(max-width:480px){.mjr-variety-new__grid article img{height:175px}.mjx-storage-steps span{font-size:10px}}

/* Real orchard photographs supplied for the staging site. */
.mjr-home .mjr-hero{background:#f5eee3}
.mjr-home .mjr-hero__image{left:43%;width:57%;object-position:center center}
.mjr-home .mjr-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f5eee3 0%,#f5eee3 39%,rgba(245,238,227,.78) 47%,rgba(245,238,227,0) 63%);pointer-events:none}
.mjr-home .mjr-hero__inner{z-index:1}
.mjx-honey-illustration{display:inline-block;vertical-align:middle}
.mjx-honey-photo{display:inline-block!important;vertical-align:middle;width:90px!important;height:84px;object-fit:cover;object-position:center 67%;border-radius:12px;margin:8px 0 12px 12px}
@media(max-width:800px){.mjr-home .mjr-hero__image{left:0;width:100%;object-position:center center}.mjr-home .mjr-hero::after{background:linear-gradient(90deg,rgba(245,238,227,.7),rgba(245,238,227,.15))}}

/* Consistent photograph size across journal cards. */
.mjr-home #mjx-restored .mjx-note__photo{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center;border-radius:10px;margin:14px 0 16px}
.mjr-home #mjx-restored .mjx-note__photo--honey{object-position:center 65%}
.mjr-home #mjx-restored .mjx-place-photo img{object-position:center 73%}

/* Full-bleed landscape hero; retain existing curved border and readable copy. */
.mjr-home .mjr-hero__image{left:0;width:100%;object-position:center}
.mjr-home .mjr-hero::after{background:linear-gradient(90deg,rgba(255,251,244,.50) 0%,rgba(255,251,244,.12) 45%,transparent 65%)}
@media(max-width:800px){.mjr-home .mjr-hero__image{object-position:70% center}.mjr-home .mjr-hero::after{background:linear-gradient(90deg,rgba(255,251,244,.55),rgba(255,251,244,.05))}}

/* Stories: consistent landscape photographs, cropped around the subjects. */
.mjr-home .mjx-features .mjx-feature__photo img{width:100%;height:auto;aspect-ratio:16/9;min-height:0;max-height:none;object-fit:cover}
.mjr-home .mjx-story-photo--orchard{object-position:50% 58%}
.mjr-home .mjx-story-photo--leaves{object-position:50% 50%}
.mjr-home .mjx-story-photo--fruit{object-position:50% 55%}
.mjr-home .mjx-story-photo--seasons{object-position:50% 60%}
.mjr-home .mjr-products-heading{text-align:left;margin-bottom:26px}
.mjr-home .mjr-products-heading h2{margin:4px 0 9px}
.mjr-home .mjr-products-heading p{color:#4e342c}
.mjr-home .mjr-taste-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px}
.mjr-home .mjr-taste-comparison__card{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:18px;align-items:center;min-width:0;min-height:128px;padding:20px 24px;background:#fffdf9;border-left:3px solid #b92f34}
.mjr-home .mjr-taste-comparison__card:nth-child(2){border-color:#b99b60}
.mjr-home .mjr-taste-comparison__card span,.mjr-home .mjr-product__purpose{display:block;color:#b92f34;font-size:12px;font-weight:700;line-height:1.5;margin-bottom:7px}
.mjr-home .mjr-taste-comparison__card h3{font-size:21px;margin:0 0 6px}
.mjr-home .mjr-taste-comparison__card p{font-size:15px;line-height:1.6;margin:0}
.mjr-home .mjr-taste-comparison__card img,.mjr-home .mjr-product__intro img{display:block;width:88px;height:88px;object-fit:contain}
.mjr-home .mjr-product-group{margin-top:42px}
.mjr-home .mjr-product-group__heading{display:flex;align-items:end;justify-content:space-between;gap:18px;border-bottom:1px solid #d9cdbf;padding-bottom:12px;margin-bottom:16px}
.mjr-home .mjr-product-group__heading .mjr-en{margin-bottom:3px}
.mjr-home .mjr-product-group__heading h3{font-size:24px;margin:0}
.mjr-home .mjr-product-group__heading p{font-size:14px;margin:0}
.mjr-home .mjr-product{border-radius:0;border:1px solid #e2d7cc;background:#fff;padding:20px 24px}
.mjr-home .mjr-product__intro{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:18px;align-items:center;min-height:100px;margin-bottom:8px}
.mjr-home .mjr-product__intro h4{color:#4e342c;font-size:22px;margin:0 0 5px}
.mjr-home .mjr-product__intro p{font-size:14px;line-height:1.6;margin:0}
.mjr-home .mjr-product>a{font-size:14px;line-height:1.5;min-height:42px;padding:9px 0}
.mjr-home .mjr-product>a span{min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){
 .mjr-home .mjr-taste-comparison{grid-template-columns:1fr}
 .mjr-home .mjr-taste-comparison__card{grid-template-columns:minmax(0,1fr) 70px;gap:12px;padding:17px;min-height:112px}
 .mjr-home .mjr-taste-comparison__card img,.mjr-home .mjr-product__intro img{width:70px;height:70px}
 .mjr-home .mjr-product__intro{grid-template-columns:minmax(0,1fr) 70px;gap:12px;min-height:85px}
 .mjr-home .mjr-product{padding:17px}
 .mjr-home .mjr-product-group__heading{display:block}
 .mjr-home .mjr-product-group__heading p{margin-top:5px}
}

.mjx-life{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(24px,4vw,54px);align-items:center}
.mjx-life__copy{min-width:0}.mjx-life__graphic img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:700px){.mjx-life{grid-template-columns:1fr;gap:24px}}


.mjx-life__graphic a{display:block;width:min(100%,180px);margin-inline:auto}.mjx-life__graphic a:focus-visible{outline:3px solid #9a2525;outline-offset:4px}.mjx-life__graphic img{display:block;width:100%;height:auto}
/* Keep the journal heading's second line together on compact screens. */
@media(max-width:480px){
  #main.mjr-home #mjx-restored .mjx-journal__head h2{font-size:clamp(21px,6.7vw,26px)!important;letter-spacing:0}
}

/* Clear, readable treatment for varieties whose season has ended. */
.mjr-home .mjr-variety-new__grid article.mjr-season-ended { background:#e9e5df; border-top-color:#827a73; }
.mjr-home .mjr-variety-new__grid article.mjr-season-ended img { filter:none; background:#dedad4; }
.mjr-home .mjr-variety-new__grid article.mjr-season-ended > span:not(.mjr-variety-season-ended) { color:#554c46; }
.mjr-home .mjr-variety-new__grid article.mjr-season-ended .mjr-variety-season-ended,
.mjr-home .mjr-taste-comparison__card.mjr-season-ended .mjr-variety-season-ended { display:inline-block; width:auto; margin:14px 0 0; padding:5px 11px; border-radius:999px; background:#4f4a45; color:#fff; font:700 13px/1.4 Arial,'Yu Gothic',sans-serif; }
.mjr-home .mjr-taste-comparison__card.mjr-season-ended { background:#e9e5df; border-left-color:#827a73; }
.mjr-home .mjr-taste-comparison__card.mjr-season-ended img { filter:none; }
.mjr-home .mjr-taste-comparison__card.mjr-season-ended span:not(.mjr-variety-season-ended) { color:#554c46; }
.mjx-honey-image-note { display:block; margin:5px 0 0; color:#665b53; font:12px/1.5 Arial,'Yu Gothic',sans-serif; }
.mjr-home .mjr-product a.mjr-product-link--ended { background:#e9e5df; color:#4f4a45; padding-left:8px; padding-right:8px; }

/* Home and gift cards lead directly to the available Sun Fuji sizes. */
.mjr-home .mjr-purpose { display:flex; flex-direction:column; }
.mjr-home .mjr-purpose__products { display:block; padding:0 22px 18px; margin-top:auto; }
.mjr-home .mjr-purpose__products a { display:flex; align-items:center; gap:8px; min-height:44px; padding:9px 0; border-top:1px solid #eee3d9; font:700 14px/1.5 Arial,'Yu Gothic',sans-serif; }
.mjr-home .mjr-purpose__products a span { flex:1; }
.mjr-home .mjr-purpose__products a strong { white-space:nowrap; }
.mjr-home .mjr-purpose__products a b { color:#b92f34; font-size:20px; }
.mjr-home .mjr-choose .mjr-notice { margin-top:18px; }
@media(max-width:800px){.mjr-home .mjr-purpose__products{padding:0 13px 13px}.mjr-home .mjr-purpose__products a{font-size:12px;flex-wrap:wrap}.mjr-home .mjr-purpose__products a strong{margin-left:auto}}

/* Keep the two photographed apples at a comparable visual scale. */
.mjr-home .mjr-purpose__photo { overflow:hidden; margin:0; }
.mjr-home .mjr-purpose__promise { display:block; margin:4px 0; color:#a32d30; font-size:15px; font-weight:700; line-height:1.6; }
.mjr-home .mjr-purpose__photo img { display:block; width:100%; height:clamp(190px,24vw,310px); object-fit:cover; }
.mjr-home #mjx-gift-use .mjr-purpose__photo img { transform:scale(1.2); }
@media(max-width:800px){.mjr-home .mjr-purpose__photo img{height:180px}}
@media(max-width:480px){.mjr-home .mjr-purpose__photo img{height:130px}}

/* Bright fruit photos remain visible; show the season status on each image. */
.mjr-home .mjr-variety-new__grid article.mjr-season-ended { background:#fff; border-top-color:#bd3036; }
.mjr-home .mjr-variety-new__grid article.mjr-season-ended:nth-child(even) { border-top-color:#bda06e; }
.mjr-home .mjr-variety-new__grid article.mjr-season-ended img { filter:none; background:#fff; }
.mjr-home .mjr-variety-new__grid article.mjr-season-ended > span:not(.mjr-variety-season-ended) { color:#a32d30; }
.mjr-home .mjr-variety-photo { position:relative; margin:0 auto 17px; }
.mjr-home .mjr-variety-new__grid article .mjr-variety-photo img { margin:0; }
.mjr-home .mjr-variety-new__grid article.mjr-season-ended .mjr-variety-photo .mjr-variety-season-ended { position:absolute; left:50%; bottom:8px; transform:translateX(-50%); margin:0; white-space:nowrap; background:rgba(58,48,43,.88); color:#fff; }

/* Size links keep the product name, price and arrow in separate columns. */
.mjr-home #mjx-choose .mjr-purpose__products a { display:grid; grid-template-columns:minmax(0,1fr) max-content 26px; align-items:center; gap:8px; }
.mjr-home #mjx-choose .mjr-purpose__products a > span { min-width:0; overflow-wrap:anywhere; }
.mjr-home #mjx-choose .mjr-purpose__products a > strong { position:static; inset:auto; width:auto; height:auto; margin:0; border:0; border-radius:0; line-height:1.4; text-align:right; white-space:nowrap; color:inherit; }
.mjr-home #mjx-choose .mjr-purpose__products a > b { position:static; display:grid; place-items:center; width:26px; height:26px; border:1px solid #d9494a; border-radius:50%; color:#b92f34; font-size:18px; line-height:1; }
