/* Mobile home: one reading rhythm across Elementor and custom HTML.
 * Keep the opening, photographs, colors and desktop layout intact.
 */
@media (max-width:767px) {
  .home #content {
    --erika-reading-font:"Noto Serif JP",serif;
    --erika-label-font:"Noto Sans JP",sans-serif;
    --erika-body-size:16px;
    --erika-heading-size:18px;
    --erika-line-height:1.8;
    --erika-letter-spacing:1.8px;
  }

  /* The two original opening widgets already use the requested rhythm. */
  .home #content .elementor-widget-html :is(p,h1,h2,h3,summary),
  .home #content :is(.elementor-element-2a4feec,.elementor-element-8e02fd8,.elementor-element-a41701e) p {
    font-family:var(--erika-reading-font);
    font-size:var(--erika-body-size);
    line-height:var(--erika-line-height);
    letter-spacing:var(--erika-letter-spacing);
    overflow-wrap:break-word;
  }
  .home #content .elementor-widget-html :is(h1,h2,h3),
  .home #content .elementor-widget-heading .elementor-heading-title {
    font-family:var(--erika-reading-font);
    font-size:var(--erika-heading-size);
    font-weight:500;
    line-height:var(--erika-line-height);
    letter-spacing:var(--erika-letter-spacing);
    text-align:center;
    text-wrap:balance;
  }
  .home #content .elementor-widget-html :is(p,h1,h2,h3) :is(span,strong,em),
  .home #content :is(.elementor-element-2a4feec,.elementor-element-8e02fd8,.elementor-element-a41701e) :is(span,strong,em) {
    font-family:inherit;
    font-size:inherit;
    line-height:inherit;
    letter-spacing:inherit;
  }
  .home #content .elementor-widget-html :is(
    .wagaya-eyebrow,.wagaya-small,.wagaya-recommend-story__label,
    .wagaya-life-after__label,.wagaya-life-after__target,.wagaya-life-after__swipe,
    .wagaya-course-choice__label,.wagaya-course-choice__scene,
    .wagaya-course-info__label,.wagaya-course-info__location-label,.wagaya-course-info__cta-label,
    .wagaya-final-message__label,.wagaya-trial__label,.wagaya-contact-final__label
  ) {
    font-family:var(--erika-label-font);
    font-size:13px;
    line-height:var(--erika-line-height);
    letter-spacing:var(--erika-letter-spacing);
    text-align:center;
    text-wrap:balance;
  }
  .home #content .elementor-widget-html :is(
    .wagaya-life-after__swipe,.wagaya-course-info__location-note,
    .wagaya-course-info__cta-sub,.wagaya-final-message__last,.wagaya-trial__note,
    .wagaya-contact-final__note,.erika-voice-author
  ) { font-size:14px; }
  .home #content .elementor-widget-html :is(
    .wagaya-lead,.wagaya-small,.wagaya-scene p,.wagaya-emotion,
    .wagaya-recommend-story__lead,.wagaya-recommend-story__photo-copy,
    .wagaya-recommend-story__item p,.wagaya-recommend-story__bottom,
    .wagaya-life-after__content,.wagaya-life-after__content p,
    .wagaya-course-choice__content,.wagaya-course-choice__lead,.wagaya-course-choice__text,
    .wagaya-course-choice__bottom,.wagaya-course-info__lead,.wagaya-course-info__location,
    .wagaya-course-info__location p,.wagaya-course-info__cta-message,
    .wagaya-final-message__text p,.wagaya-final-message__pause p,
    .wagaya-final-message__voice,.wagaya-final-message__meaning p,
    .wagaya-trial__lead,.wagaya-trial__message p,.wagaya-trial__note,
    .wagaya-contact-final__lead,.wagaya-contact-final__text,.wagaya-contact-final__note
  ) { text-align:center; text-wrap:balance; }
  .home #content .erika-mobile-phrase { display:inline-block; max-width:100%; text-wrap:balance; }
  .home #content :is(.wagaya-recommend-story__lead,.wagaya-recommend-story__bottom) br.pc-only { display:initial; }
  .home #content :is(.elementor-element-2a4feec,.elementor-element-8e02fd8,.elementor-element-a41701e) p,
  .home #content .erika-faq :is(summary,p),
  .home #content .erika-voices-text__body :is(h3,p) {
    text-align:left;
    text-wrap:pretty;
  }
  .home #content .erika-voices-text__body .erika-voice-author { text-align:right; }
  .home #content .elementor-element-13f16e6 p {
    font-family:var(--erika-reading-font);
    font-size:15px;
    line-height:var(--erika-line-height);
    letter-spacing:var(--erika-letter-spacing);
  }

  /* Remove 15px from generous gaps, without flattening the section rhythm. */
  .home #content :is(.elementor-element-fa0a36e,.elementor-element-f67dbc1,.elementor-element-76b95d3) { margin-top:55px; }
  .home #content .elementor-element-675e515 { margin-top:40px; }
  .home #content .elementor-element-0769170 { margin-top:50px; }
  .home #content .elementor-element-36e9d6d { min-height:0; padding-bottom:45px; }
  .home #content .wagaya-therapist-section { padding-top:43px; padding-bottom:53px; }
  .home #content .wagaya-message-box { margin-top:33px; padding:19px 12px 21px; }
  .home #content .wagaya-scene { padding:18px 8px; }
  .home #content .wagaya-full-photo { margin-top:40px; }
  .home #content .wagaya-recommend-story__label { padding-top:45px; }
  .home #content .wagaya-recommend-story__bottom { padding-bottom:45px; }
  .home #content .wagaya-recommend-story__item { padding-top:16px; padding-bottom:16px; }
  .home #content .wagaya-life-after { padding-top:47px; }
  .home #content .wagaya-life-after__closing { margin-top:55px; }
  .home #content .wagaya-life-after__content { padding:18px 16px 20px; }

  /* Nested wrappers made the card copy unnecessarily narrow.
   * Recover 15px at each side, keeping the original photo and card widths.
   */
  .home #content .wagaya-course-choice__inner,
  .home #content .wagaya-course-info__inner { width:calc(100% - 18px); }
  .home #content .wagaya-course-choice__grid,
  .home #content .wagaya-course-info__grid { margin-left:15px; margin-right:15px; }
  .home #content .wagaya-course-choice__content { padding:18px 16px 20px; }
  .home #content .wagaya-course-info__card { padding:20px 16px; }
  .home #content .wagaya-course-info__meta { margin-top:20px; }
  .home #content .wagaya-course-info__meta-row { grid-template-columns:68px minmax(0,1fr); gap:12px; }
  .home #content .wagaya-course-info__meta-row :is(span,strong) {
    font-family:var(--erika-label-font);
    font-size:14px;
    line-height:var(--erika-line-height);
    letter-spacing:var(--erika-letter-spacing);
    font-weight:400;
  }
  .home #content .wagaya-course-info__price { line-height:var(--erika-line-height); letter-spacing:var(--erika-letter-spacing); }
  .home #content .erika-schedule-note { padding:16px 12px; font-size:15px; text-wrap:balance; }
  .home #content .wagaya-course-info__location { padding:18px 12px; }
  .home #content .wagaya-course-info__location p { font-size:14px; }
  .home #content .wagaya-course-info { padding-bottom:50px; }
  .home #content :is(.wagaya-course-choice__more,.wagaya-course-info__button,.wagaya-contact-final__button) {
    font-family:var(--erika-label-font);
    font-size:15px;
    line-height:var(--erika-line-height);
    letter-spacing:var(--erika-letter-spacing);
  }
  .home #content .wagaya-course-choice__more { min-height:44px; margin-top:12px; padding-top:10px; }

  /* Give the long-form profile a common inset; keep its reading edge stable. */
  .home #content :is(.elementor-element-2a4feec,.elementor-element-8e02fd8) > .elementor-widget-container { padding-left:4px; padding-right:4px; }
  .home #content .elementor-element-a41701e > .elementor-widget-container { padding-left:24px; padding-right:24px; }

  /* This message was inset three times. Widen only the text, not its photo. */
  .home #content .wagaya-final-message__inner { width:calc(100% - 10px); }
  .home #content .wagaya-final-message { padding-top:45px; padding-bottom:53px; }
  .home #content .wagaya-final-message__pause { margin-top:33px; padding:20px 12px; }
  .home #content .wagaya-final-message__photo { margin-top:37px; }
  .home #content .wagaya-final-message__voices { margin-top:37px; }
  .home #content .wagaya-final-message__meaning { margin-top:40px; }
  .home #content .wagaya-final-message__brand { margin-top:50px; }
  .home #content .wagaya-final-message__last { margin-top:40px; }
  .home #content .wagaya-trial { padding-top:45px; padding-bottom:53px; }
  .home #content .erika-faq { padding-top:21px; padding-bottom:21px; }
  .home #content .erika-faq details { padding:12px 0; }
  .home #content .erika-faq summary { min-height:44px; font-weight:500; }
  .home #content .erika-faq summary { text-wrap:balance; }
  .home #content .wagaya-contact-final { padding-top:45px; padding-bottom:45px; }
  .home #content .elementor-widget-html .wagaya-contact-final__title { font-size:20px; }
  .home #content .wagaya-contact-final__lead { font-size:16px; }

  /* Long course names retain a clean two-line name / 1Day hierarchy. */
  .home #content :is(.wagaya-course-choice__content h3,.wagaya-course-info__course-title) { font-size:clamp(16px,4.6vw,18px); }
  .home #content :is(.wagaya-course-choice__content h3,.wagaya-course-info__course-title) .erika-course-name { white-space:normal; text-wrap:balance; }
}
@media (max-width:390px) {
  .home #content .wagaya-course-choice__inner,
  .home #content .wagaya-course-info__inner { width:calc(100% - 10px); }
}
