/*
 * SOLE — 02 Astra Overrides
 * Astraテーマのデフォルト挙動を上書き
 * WordPress: 追加CSS [2] Astra Overrides に対応
 */

/* ── Header: 透過 + スクロール時に白背景 ── */
#masthead,
.ast-header-break-point #masthead {
  background-color: transparent !important;
  transition: background-color 0.4s ease;
}

#masthead.scrolled {
  background-color: var(--bg) !important;
  box-shadow: 0 1px 0 rgba(45, 35, 30, 0.06);
}

/* ── Header: ロゴフォント ── */
.site-title,
.site-title a {
  font-family: var(--font-latin);
  font-weight: 300;
  letter-spacing: 0.55em;
  text-transform: uppercase;
  color: var(--text) !important;
}

/* ── Mobile nav: 右スライドパネル ── */
@media (max-width: 921px) {

  /* パネル本体（DevToolsで確認: .ast-mobile-header-content） */
  .ast-mobile-header-content {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    width: min(300px, 85vw) !important;
    height: 100dvh !important;
    background-color: var(--bg) !important;
    z-index: 99999 !important;
    overflow-y: auto !important;
    padding: 5rem 2rem 3rem !important;
    box-shadow: -6px 0 32px rgba(45, 35, 30, 0.12) !important;
    animation: sole-slide-in 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }

  /* display:none→block切替なので@keyframesでスライドイン */
  @keyframes sole-slide-in {
    from { transform: translateX(100%); }
    to   { transform: translateX(0); }
  }

  /* 背景オーバーレイ */
  body.ast-main-header-nav-open::after {
    content: '';
    position: fixed;
    inset: 0;
    background: rgba(45, 35, 30, 0.35);
    z-index: 99998;
    pointer-events: none;
  }

  /* メニューリンク */
  .ast-mobile-header-content .main-navigation ul li a {
    font-family: var(--font-serif) !important;
    font-weight: 300 !important;
    font-size: 1rem !important;
    letter-spacing: 0.12em !important;
    color: var(--text) !important;
    padding: 0.85rem 0 !important;
    border-bottom: 1px solid var(--sage-light) !important;
    display: block !important;
  }

  .ast-mobile-header-content .main-navigation ul li:last-child > a {
    border-bottom: none !important;
  }
}

/* ── Coverブロック: 全幅表示修正 ── */
.wp-block-cover.alignfull,
.wp-block-cover-image.alignfull {
  margin-left: calc(-1 * var(--wp--style--root--padding-left, 0px));
  margin-right: calc(-1 * var(--wp--style--root--padding-right, 0px));
  width: 100vw;
  max-width: 100vw;
}
