/* ============================================================
   ヨガ本文（標準ブロック）→ 現行デザインへ寄せる橋渡しCSS（強化版）
   既存 liko-yoga.css の値を踏襲し、コアブロックの構造に合わせて当てる。
   ============================================================ */

/* セクション：全幅の背景＋中央コンテナ（コアの constrained を上書き） */
.liko-yoga .section{ padding: 64px 0; }
.liko-yoga .section.bg-white{ background: #fff; }
.liko-yoga .section.bg-warm{ background: var(--paper-2); }
/* コアの constrained レイアウトによる中央寄せ（幅制限＋margin auto）を liko 本文全体で解除＝左揃え・全幅に */
.liko-yoga .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull):not(.alignwide)){ max-width: none; margin-left: 0; margin-right: 0; }
/* ただし中央コンテナ(.container)は 1080px 中央寄せを維持（上のルールより後に置いて勝たせる） */
.liko-yoga .container{ max-width: 1080px !important; margin-inline: auto !important; padding: 0 24px; }
/* コアの既定ブロック余白をリセットして、下で意図的に付ける */
.liko-yoga .container > *{ margin-block: 0; }

/* ── 見出し周り（eyebrow ＋ sec-title ＋ rule-line） ── */
.liko-yoga .eyebrow{ font-family: var(--mono); font-size: .6rem; letter-spacing: .3em; color: var(--olive); text-transform: uppercase; margin: 0 0 10px; }
.liko-yoga .sec-title{ font-family: var(--serif); font-size: clamp(1.3rem,3vw,1.7rem); font-weight: 500; line-height: 1.7; letter-spacing: .04em; margin: 0; }
/* 見出し下の緑線は「ブロック本文の見出し」だけに付ける（固定部の見出しは元から .rule-line を持つため二重線を防ぐ） */
.liko-yoga .wp-block-heading.sec-title::after{ content: ''; display: block; width: 28px; height: 1px; background: var(--olive); margin-top: 8px; }
.liko-yoga .sec-lead{ font-size: .9rem; line-height: 2; color: var(--ink-soft); margin: 22px 0 30px; }

/* ── ヒーロー（元の .page-hero 構造を標準ブロックで再現） ──
   .page-hero系のスタイルは liko-yoga.css がそのまま担当。ここではブロック化に伴う
   coreの余白・画像figureのズレだけ補正し、現行FV（min-height950/右寄せ480/3行キャッチ）に一致させる。 */
.liko-yoga .page-hero > *{ margin-block-start: 0 !important; }
/* position は元CSSに委ねる（PC=absolute背景 / SP=relativeで写真を下に積む）。ここでは余白と画像フィットのみ補正 */
.liko-yoga .page-hero-bg{ margin: 0; }
.liko-yoga .page-hero-bg img{ width: 100%; height: 100%; object-fit: cover; }
.liko-yoga .page-hero-content > *{ margin-block-start: 0 !important; }

/* ── こんな方に（元の .for-you-grid / .fy-item を標準ブロックで再現） ──
   見た目は liko-yoga.css の .for-you-grid(flex-wrapの小さめピル)/.fy-item/.fy-dot が担当。
   ここはブロック化のblock-gap（縦の自動余白）を打ち消すだけ。 */
.liko-yoga .for-you-grid > *,
.liko-yoga .fy-item > * { margin-block-start: 0 !important; }

/* ── 選ばれる理由（元の .why-layout / .why-list / .why-item を標準ブロックで再現） ──
   見た目は liko-yoga.css の .why-* が担当。ここはブロックのblock-gap打ち消しと画像figure補正のみ。 */
.liko-yoga .why-layout > *,
.liko-yoga .why-list > *,
.liko-yoga .why-item > *,
.liko-yoga .secthead > * { margin-block-start: 0 !important; }
.liko-yoga .why-item > .wp-block-group > * { margin-block-start: 0 !important; }
.liko-yoga .wp-block-image.why-photo { margin: 0; }
.liko-yoga .wp-block-image.why-photo img { width: 100%; height: 100%; min-height: 320px; object-fit: cover; border-radius: 8px; }

/* ── レッスン（カードグリッド：枠・上線・バッジ） ── */
.liko-yoga .liko-blk-lessongrid{ display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; margin-top: 6px; }
.liko-yoga .liko-blk-lessongrid .class-card{ margin: 0; background: var(--paper); border: 1px solid var(--line); border-top: 3px solid var(--olive); border-radius: 6px; padding: 20px; display: flex; flex-direction: column; gap: 10px; }
.liko-yoga .liko-blk-lessongrid .class-card.maternity-card{ border-top-color: var(--bs-deep); }
/* class-card は左揃え（constrained→default化）。ブロックのblock-gapを打ち消し、flexのgapで管理 */
.liko-yoga .class-card > *{ margin-block-start: 0 !important; }
.liko-yoga .class-name-row{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin: 0; }
.liko-yoga .class-name{ font-family: var(--serif); font-size: .98rem; font-weight: 500; line-height: 1.4; margin: 0; }
.liko-yoga .kids-badge{ font-family: var(--mono); font-size: .55rem; letter-spacing: .06em; padding: 3px 8px; border-radius: 4px; margin: 0; display: inline-block; line-height: 1.5; }
.liko-yoga .kids-badge.ng{ background: var(--olive-soft); color: var(--olive-dark); }
.liko-yoga .kids-badge.ok{ background: var(--bs-soft); color: var(--bs-deep); }
.liko-yoga .class-target{ font-size: .8rem; color: var(--olive-dark); margin: 0; }
.liko-yoga .class-desc{ font-size: .82rem; line-height: 1.8; color: var(--ink-soft); margin: 0; }
.liko-yoga .liko-blk-lessongrid .class-card:nth-child(5){ grid-column: 1 / -1; max-width: calc(50% - 7px); justify-self: center; }

/* ── 料金：見た目は元の liko-yoga.css の .pr-* が担当。
   ここは標準ブロック化に伴うblock-gap（縦の自動余白）の打ち消しのみ。 ── */
.liko-yoga .pr-trial > *,
.liko-yoga .pr-trial-body > *,
.liko-yoga .pr-trial-body > div > *,
.liko-yoga .pr-enroll > *,
.liko-yoga .pr-enroll-left > *,
.liko-yoga .pr-section > *,
.liko-yoga .pr-section-head > *,
.liko-yoga .pr-plan-stack > *,
.liko-yoga .pr-plan-wide > *,
.liko-yoga .pr-plan-wide-top > *,
.liko-yoga .pr-ticket-list > *,
.liko-yoga .pr-ticket-row > *,
.liko-yoga .pr-ticket-row > div > *,
.liko-yoga .pr-others-grid > *,
.liko-yoga .pr-other-card > *,
.liko-yoga .pr-other-price-list > *,
.liko-yoga .pr-other-price-row > *,
.liko-yoga .pr-mat > * { margin-block-start: 0 !important; }

/* ── スマホ ── */
@media (max-width: 768px){
  .liko-yoga .section{ padding: 48px 0; }
  .liko-yoga .liko-blk-lessongrid{ grid-template-columns: 1fr; }
  .liko-yoga .liko-blk-lessongrid .class-card:nth-child(5){ max-width: none; }
}

/* ── 料金：コンテナ(is-layout-constrained)が直下の子のmargin-blockを0にリセットするため、
   料金カード間の縦余白(元 .pr-* の margin-bottom)を明示的に復元する ── */
.liko-yoga .container > .pr-trial,
.liko-yoga .container > .pr-enroll,
.liko-yoga .container > .pr-section { margin-bottom: 28px !important; }
.liko-yoga .container > .pr-section:last-child { margin-bottom: 0 !important; }
.liko-yoga .container > .pr-mat { margin-top: 22px !important; }
/* FAQ/体験の流れ：secthead(見出し)が .container 直下だと block-gap 打ち消しで margin-bottom が消え、
   下線が最初の項目にくっつく。原CSS .secthead{margin-bottom:28px} を復元。 */
.liko-yoga .container > .secthead { margin-bottom: 28px !important; }
.liko-yoga .pr-final-note { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--line); }

/* 固定末尾(スケジュール/ステップ/FAQ)のsecthead飾り線は現行どおり margin-top:4px。
   .secthead > * のblock-gap打ち消しで0になっていたのを復元（ブロック側見出しは::after方式でrule-line無し） */
.liko-yoga .secthead .rule-line { margin-top: 4px !important; }

/* ── FAQ：coreのDetailsブロックを現行アコーディオンの見た目に寄せる ──
   .faq-accordion / .faq-acc-item / .faq-acc-a は liko-yoga.css が担当。
   coreのsummaryには Q ラベルと ＋ アイコンが無いので、ここで擬似要素で付与する。 */
.liko-yoga .faq-accordion > * { margin-block-start: 0 !important; }
.liko-yoga .faq-acc-item summary {
  display: flex; align-items: center; gap: 12px; padding: 18px 20px;
  cursor: pointer; list-style: none; font-size: .88rem; color: var(--ink); line-height: 1.6;
}
.liko-yoga .faq-acc-item summary::-webkit-details-marker { display: none; }
.liko-yoga .faq-acc-item summary::before {
  content: 'Q'; font-family: var(--italic); font-style: italic; font-size: 1rem;
  color: var(--olive); flex-shrink: 0; line-height: 1;
}
.liko-yoga .faq-acc-item summary::after {
  content: '+'; font-size: 1.1rem; color: var(--ink-mute); flex-shrink: 0;
  transition: transform .25s; font-weight: 300; margin-left: auto;
}
.liko-yoga .faq-acc-item[open] summary::after { transform: rotate(45deg); }
.liko-yoga .faq-acc-item .faq-acc-a { margin: 0; }
@media (max-width: 768px){
  .liko-yoga .faq-acc-item summary { padding: 18px 16px; font-size: .94rem; line-height: 1.65; }
}

/* ── ヨガマットレンタル（HTML→編集可ブロック化。色はここで付与） ── */
.liko-yoga .pr-mat > * { margin-block-start: 0 !important; }
.liko-yoga .pr-mat-name { font-family: var(--serif); font-size: .95rem; font-weight: 600; color: var(--olive-dark); margin: 0 0 1px; }
.liko-yoga .pr-mat-price { font-family: var(--serif); font-size: 1.15rem; font-weight: 500; color: var(--olive-dark); margin: 0 0 4px; }
.liko-yoga .pr-mat-price .pr-mat-sep { font-family: var(--sans); font-size: .78rem; font-weight: 400; color: var(--ink-mute); margin: 0 3px; }
.liko-yoga .pr-mat .pr-small-note { margin-top: 4px; }
