/*
 * DAISEN CONNECTIONS ― グローバルナビへの導線追加に伴う調整（追加専用。既存CSSは変更していません）
 *
 * ■ 目的
 *   ヘッダーに「CONNECTIONS」を1項目足すと、PCメニュー1行に必要な幅が約110px増えます。
 *   実測（Chrome・1pxごとに走査）で、この調整CSSが無い場合に崩れる画面幅は次のとおりです。
 *     general/index/story 系 … 901〜1167px（折り返し／はみ出し）
 *     トップ                … 901〜1106px
 *     つながる窓口          … 1025〜1113px
 *     特設サイト            … 崩れはしないが、901px時に右端の余白が約9pxしか残らない（実フォント差で崩れる恐れ）
 *   そこで、既存の「スマホ用ハンバーガーメニュー」を中間の画面幅でも使います。
 *     general/index/story・トップ・つながる窓口 … 1239px以下（紹介ページ自身のヘッダーと同じ境目）
 *     特設サイト（dedicated）                   … 1023px以下
 *   900px以下の動作は、各ページの既存CSSのまま変わりません。
 *
 * ■ 見た目の方針
 *   ハンバーガー展開時の見た目は、各ページの900px以下の既存定義と同じ値にそろえています。
 *   戻したい場合：inc/front.php の daisen_connections_enqueue_nav_assets() 内にある wp_enqueue_style の行を削除すれば元に戻ります
 *   （ただしその場合、ヘッダーのCONNECTIONS項目も同時に外さないと、狭い幅で崩れます）。
 */

/* ---------- CONNECTIONS リンクの強調（ヘッダー内のみ。フッターには付きません） ---------- */
body a.dcn-navlink.dcn-navlink{color:var(--blue,#00c8e6)!important}
body a.dcn-navlink.dcn-navlink:hover{color:#fff!important}

/* ---------- general / index / story（.dg-header） ---------- */
@media (min-width:901px) and (max-width:1239px){
  body .dg-header__nav{display:none}
  body .dg-header__toggle{display:flex}
  body .dg-header__nav.is-open{
    display:flex;flex-direction:column;
    position:fixed;top:64px;left:0;right:0;
    max-height:calc(100vh - 64px);overflow-y:auto;
    background:rgba(8,8,15,.98);
    border-bottom:1px solid var(--border,#252540);
    padding:20px 24px;gap:4px;z-index:999;
  }
  body .dg-header__nav.is-open a{padding:12px 16px;font-size:.9rem;color:var(--off-w,#e4e4f2)}
  body .dg-header__nav.is-open .dg-header__cta{
    margin:8px 16px 4px!important;padding:12px 20px!important;
    justify-content:center!important;font-size:.85rem!important;border-radius:12px!important;
    width:calc(100% - 32px)!important;box-shadow:0 4px 16px rgba(0,180,216,.35)!important;
  }
  /* index は区切り線つき（既存の900px以下の定義にそろえる） */
  body.daisen-index .dg-header__nav.is-open{z-index:9999}
  body.daisen-index .dg-header__nav.is-open a{display:block;border-bottom:1px solid rgba(255,255,255,.06)}
  body.daisen-index .dg-header__nav.is-open a:last-child{border-bottom:none}
  body.daisen-index .dg-header__nav.is-open .dg-header__cta{display:flex}
}

/* ---------- トップ（.dt-header） ---------- */
@media (min-width:901px) and (max-width:1239px){
  body .dt-nav{display:none}
  body .dt-menu-toggle{display:flex}
  body .dt-nav.is-open{
    display:flex;flex-direction:column;
    position:fixed;top:68px;left:0;right:0;
    max-height:calc(100vh - 68px);overflow-y:auto;-webkit-overflow-scrolling:touch;
    background:rgba(7,7,16,.98);
    border-bottom:1px solid var(--border,#252540);
    padding:20px 24px;gap:4px;z-index:9999;
  }
  body .dt-nav.is-open .dt-nav__item--cta{
    background:linear-gradient(135deg,var(--blue,#00c8e6),#0078ff);
    color:var(--black,#070710)!important;border-radius:10px;
  }
}

/* ---------- つながる窓口（.dc-header） ---------- */
@media (min-width:901px) and (max-width:1239px){
  body .dc-header__nav{display:none}
  body .dc-header__toggle{display:flex}
  body .dc-header__nav.is-open{
    display:flex!important;flex-direction:column;
    position:fixed;top:66px;left:0;right:0;
    max-height:calc(100vh - 66px);overflow-y:auto;
    background:rgba(7,7,15,.98);
    -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
    border-bottom:1px solid var(--border,#252540);
    padding:16px 24px 24px;gap:4px;z-index:8500;
  }
  body .dc-header__nav.is-open .dc-header__nav-item{padding:12px 16px;border-radius:8px;font-size:.82rem}
  body .dc-header__nav.is-open .dc-header__nav-cta{margin-left:0!important;border-radius:8px!important;text-align:center}
}

/* ---------- 特設サイト（.dd-header）：必要幅が小さいため 1023px 以下で切替 ---------- */
@media (min-width:901px) and (max-width:1023px){
  body .dd-header__nav{display:none}
  body .dd-header__toggle{display:flex}
  body .dd-header__nav.is-open{
    display:flex;flex-direction:column;
    position:fixed;top:64px;left:0;right:0;
    max-height:calc(100vh - 64px);overflow-y:auto;
    background:rgba(8,8,15,.94);
    padding:24px;gap:4px;
    border-bottom:1px solid var(--glow-sm,var(--border,#252540));
    box-shadow:0 18px 40px rgba(8,8,15,.25);
  }
  body .dd-header__nav.is-open a{padding:12px 16px;font-size:.9rem;text-decoration:none!important}
}
