﻿@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon蟆ら畑縺ｮ蟄舌ユ繝ｼ繝・Template: cocoon-master
Version: 1.1.3
*/

/* =========================================================
   00. Mei Archive Design Tokens
   - Site-wide primitives for the warm, quiet archive surface.
   ========================================================= */

:root{
  --mei-color-canvas:#f8f7f3;
  --mei-color-surface:#fffefa;
  --mei-color-surface-clean:#ffffff;
  --mei-color-surface-soft:#f3f6f6;
  --mei-color-text:#263238;
  --mei-color-text-muted:#6f7e82;
  --mei-color-heading:#24343b;
  --mei-color-muted:#6f7e82;
  --mei-color-subtle:#8a989b;
  --mei-color-primary:#365f73;
  --mei-color-primary-dark:#2f5368;
  --mei-color-primary-hover:#243f50;
  --mei-color-primary-soft:#e6eff2;
  --mei-color-accent:#b8895b;
  --mei-color-accent-hover:#9f754c;
  --mei-color-accent-soft:#e3d2bd;
  --mei-color-border:#d9e1e3;
  --mei-color-border-soft:#e8eeee;
  --mei-color-focus:rgba(184,137,91,.42);
  --mei-color-saturday:#386d91;
  --mei-color-holiday:#a94d50;

  --mei-font-base:"Noto Sans JP", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
  --mei-font-ui:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans JP", sans-serif;

  --mei-text-xs:11px;
  --mei-text-sm:12px;
  --mei-text-meta:13px;
  --mei-text-body-sm:14px;
  --mei-text-body:16px;
  --mei-text-body-lg:18px;
  --mei-heading-sm:20px;
  --mei-heading-md:24px;
  --mei-heading-lg:30px;
  --mei-heading-xl:36px;

  --mei-leading-tight:1.25;
  --mei-leading-snug:1.4;
  --mei-leading-base:1.65;
  --mei-leading-reading:1.8;

  --mei-space-1:4px;
  --mei-space-2:8px;
  --mei-space-3:12px;
  --mei-space-4:16px;
  --mei-space-5:20px;
  --mei-space-6:24px;
  --mei-space-8:32px;
  --mei-space-10:40px;
  --mei-space-12:48px;
  --mei-space-section:clamp(32px, 6vw, 64px);
  --mei-space-xs:var(--mei-space-1);
  --mei-space-sm:var(--mei-space-2);
  --mei-space-md:var(--mei-space-4);
  --mei-space-lg:var(--mei-space-6);
  --mei-space-xl:var(--mei-space-8);

  --mei-width-reading:760px;
  --mei-width-content:980px;
  --mei-width-wide:1120px;
  --mei-width-archive:1180px;

  --mei-radius-xs:4px;
  --mei-radius-sm:6px;
  --mei-radius-md:8px;
  --mei-radius-lg:12px;
  --mei-radius-card:14px;
  --mei-radius-photo:14px;
  --mei-radius-section:16px;
  --mei-radius-pill:999px;

  --mei-border-width:1px;
  --mei-border-default:var(--mei-border-width) solid var(--mei-color-border);
  --mei-border-soft-line:var(--mei-border-width) solid var(--mei-color-border-soft);

  --mei-shadow-none:none;
  --mei-shadow-soft:0 8px 24px rgba(38,50,56,.04);
  --mei-shadow-card:0 10px 30px rgba(38,50,56,.05);
  --mei-shadow-hover:0 10px 26px rgba(38,50,56,.08);
  --mei-shadow-float:0 14px 34px rgba(38,50,56,.10);
  --mei-transition-fast:.16s ease;

  --mei-paper-bg:var(--mei-color-canvas);
  --mei-paper-surface:var(--mei-color-surface);
  --mei-paper-soft:var(--mei-color-surface-soft);
  --mei-ink:var(--mei-color-text);
  --mei-heading:var(--mei-color-heading);
  --mei-muted:var(--mei-color-muted);
  --mei-subtle:var(--mei-color-subtle);
  --mei-border:var(--mei-color-border);
  --mei-border-soft:var(--mei-color-border-soft);
  --mei-primary:var(--mei-color-primary);
  --mei-primary-dark:var(--mei-color-primary-dark);
  --mei-primary-soft:var(--mei-color-primary-soft);
  --mei-accent:var(--mei-color-accent);
  --mei-accent-soft:var(--mei-color-accent-soft);
}

/* =========================================================
   00. Base / Typography
   - 縺ｾ縺壹・蜈ｨ菴薙・譁・ｭ苓ｨｭ險医ゅ％縺薙ｒ螟峨∴繧九→蜊ｰ雎｡縺御ｸ豌励↓螟峨ｏ繧翫∪縺吶・   ========================================================= */

body{
  font-family:var(--mei-font-base);
}

h1,h2,h3,h4{
  font-family:var(--mei-font-base);
  letter-spacing: .01em;
}

button,
input,
select,
textarea{
  font-family:var(--mei-font-ui);
}


/* =========================================================
   01. Global Link Color・医し繧､繝亥・菴薙・繝ｪ繝ｳ繧ｯ・・   - 窶懊・繧ｿ縺縺代←髱偵′縺・＞窶晄婿驥昴ゅ≧繧九＆縺上↑縺・搨縺ｫ蟇・○縺ｾ縺吶・   ========================================================= */

a{
  color:#1e6bd6;
}

a:hover{
  color:#144fa8;
}






/* =========================================================
   Shared live action primitives
   - Common button/status pieces. Final phone tuning lives near the file end.
   ========================================================= */

.mei-next-live__quick{
  display:grid;
  gap:12px;
  padding:14px 0 0;
}

.mei-next-live__quick-main{
  display:grid;
  gap:5px;
  color:#253746;
}

.mei-next-live__quick-main time{
  color:#24567f;
  font-size:18px;
  font-weight:900;
  line-height:1.25;
}

.mei-next-live__quick-main strong{
  color:#1f3447;
  font-size:19px;
  font-weight:900;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.mei-next-live__quick-main span{
  color:#315f87;
  font-size:14px;
  font-weight:850;
  letter-spacing:.02em;
}

.mei-next-live__actions,
.live-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.mei-next-live__action,
.live-card-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:auto;
  min-height:40px;
  padding:8px 12px;
  border:1px solid #b9cedd;
  border-radius:6px;
  background:#f7fbfd;
  color:#294f70;
  font-size:13px;
  font-weight:900;
  line-height:1.2;
  text-decoration:none;
}

.mei-next-live__action--primary,
.live-card-action--primary{
  border-color:#294f70;
  background:#294f70;
  color:#fff;
}

.mei-next-live__action--sub{
  color:#5a6d7a;
}

.live-archive{
  grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
}

.live-archive-month{
  grid-column:1 / -1;
  margin:8px 0 0;
  padding:0 0 10px 12px;
  border-bottom:1px solid #dce6ee;
  color:#263947;
  font-size:22px;
  font-weight:900;
  line-height:1.45;
  letter-spacing:.03em;
}

.live-card-actions{
  padding:0 14px 15px;
}

.live-card-actions .live-card-action{
  flex:1 1 118px;
}

.live-card-actions .live-card-action:only-child{
  flex-grow:0;
}

.live-item .live-link + .live-card-actions{
  margin-top:-3px;
}



/* =========================================================
   Header Layout Control
   ---------------------------------------------------------
   繝倥ャ繝繝ｼ蜈ｨ菴薙・縲碁ｫ倥＆繝ｻ菴咏區繝ｻ繝ｬ繧ｹ繝昴Φ繧ｷ繝匁嫌蜍輔阪ｒ邂｡逅・   蝗ｺ螳嗔x繧帝∩縺代∫判髱｢蟷・↓蠢懊§縺ｦ閾ｪ辟ｶ縺ｫ莨ｸ邵ｮ縺輔○繧・   ========================================================= */

/* 繝倥ャ繝繝ｼ蜈ｨ菴薙・繝ｩ繝・ヱ繝ｼ */
#header-container{
  height: auto;                 /* 蝗ｺ螳夐ｫ倥＆繧偵ｄ繧√ｋ */
  min-height: 320px;            /* 譛菴朱剞縺ｮ隕九○縺溘＞鬮倥＆ */
  max-height: 560px;            /* 逕ｻ髱｢縺悟ｺ・￥縺ｦ繧ゅョ繧ｫ縺上↑繧翫☆縺弱↑縺・*/
  margin-bottom: 48px;          /* 繝倥ャ繝繝ｼ縺ｨ譛ｬ譁・・蜻ｼ蜷ｸ・医ａ繧願ｾｼ縺ｿ髦ｲ豁｢・・*/
}

/* 螳滄圀縺ｫ閭梧勹逕ｻ蜒上ｒ謖√▽繝倥ャ繝繝ｼ譛ｬ菴・*/
#header{
  height: clamp(320px, 38vw, 520px);
  /* 竊・     320px・壽怙蟆擾ｼ医ヮ繝ｼ繝医・迢ｭ繝悶Λ繧ｦ繧ｶ・・     38vw ・壼庄螟峨だ繝ｼ繝ｳ・育判髱｢蟷・ｾ晏ｭ假ｼ・     520px・壽怙螟ｧ・医ヵ繝ｫHD莉･荳奇ｼ・  */

  background-size: cover;            /* 繝医Μ繝溘Φ繧ｰ蜑肴署 */
  background-position: center center;/* 讒句峙縺ｮ闃ｯ繧貞ｮ医ｋ */
}



/* =========================================================
   Header Inner Alignment
   ---------------------------------------------------------
   繧ｵ繧､繝医ち繧､繝医Ν・九ョ繧｣繧ｹ繧ｯ繝ｪ繝励す繝ｧ繝ｳ繧・   縲御ｸ翫↓蠑ｵ繧贋ｻ倥°縺帙★縲∽ｸｭ螟ｮ縺ｫ縺ｾ縺ｨ繧√ｋ縲・   ========================================================= */

#header-in{
  display: flex;
  flex-direction: column;
  justify-content: center;   /* 邵ｦ譁ｹ蜷代・荳ｭ螟ｮ蟇・○ */
  min-height: 100%;
}



/* =========================================================
   Site Title (繧ｵ繧､繝亥錐)
   ---------------------------------------------------------
   隕也ｷ壹・荳ｻ蠖ｹ縲る㍾蠢・ｒ荳九￡縲√ョ繧｣繧ｹ繧ｯ繝ｪ繝励す繝ｧ繝ｳ縺ｨ荳菴灘喧縺輔○繧・   ========================================================= */

.site-name-text{
  display: block;
  margin-bottom: -0.2em;     /* 陦碁俣繧堤黄逅・噪縺ｫ隧ｰ繧√ｋ・域э蝗ｳ逧・ｼ・*/
  line-height: 1.25;         /* 譁・ｭ励・邵ｦ蟇・ｺｦ繧剃ｸ翫￡繧・*/
  letter-spacing: .04em;

  color: rgba(255,255,255,.92);

  text-shadow:
    0 1px 2px rgba(0,0,0,.35),
    0 4px 12px rgba(0,0,0,.45);
}



/* =========================================================
   Tagline / Description・郁ｪｬ譏取枚・・   ---------------------------------------------------------
   荳ｻ蠑ｵ縺励☆縺弱★縲√ち繧､繝医Ν縺ｮ荳九↓縲碁撕縺九↓蟇・ｊ豺ｻ縺・・   ========================================================= */

.tagline{
  margin-top: 0;             /* 菴呵ｨ医↑霍晞屬縺ｯ謖√◆縺帙↑縺・*/
  line-height: 1.45;         /* 髢灘ｻｶ縺ｳ髦ｲ豁｢・磯㍾隕・ｼ・*/
  font-size: .85em;
  letter-spacing: .06em;

  opacity: 0.9;
  color: rgba(255,255,255,.85);

  text-shadow:
    0 1px 2px rgba(0,0,0,.35),
    0 3px 10px rgba(0,0,0,.40);
}










/* =========================================================
   Header Navigation
   - 逋ｽ蝓ｺ隱ｿ縺ｮ縺ｾ縺ｾ縲∬埋縺・ぎ繝ｩ繧ｹ諢溘→邊ｾ蟇・↑謫堺ｽ懈─繧貞刈縺医ｋ
   ========================================================= */
/* Header visual refinement */
#header-container{
  position:relative;
  overflow:hidden;
  margin-bottom:40px;
  background:#0f1418;
}

#header{
  position:relative;
  isolation:isolate;
}

#header::before,
#header::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}

#header::before{
  z-index:0;
  background:
    linear-gradient(90deg, rgba(6,10,13,.72) 0%, rgba(10,15,19,.56) 34%, rgba(10,15,19,.22) 63%, rgba(6,10,13,.58) 100%),
    linear-gradient(180deg, rgba(0,0,0,.16) 0%, rgba(0,0,0,.08) 42%, rgba(0,0,0,.30) 100%);
}

#header::after{
  z-index:1;
  inset:auto 0 0;
  height:34%;
  background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(15,20,24,.42) 100%);
}

#header-in{
  position:relative;
  z-index:2;
  align-items:flex-start;
  max-width:1180px;
  margin:0 auto;
  padding:clamp(42px, 7vw, 86px) clamp(22px, 6vw, 72px);
  text-align:left;
}

#header-in::before{
  content:"MEI ARCHIVE";
  display:inline-flex;
  margin:0 0 14px;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.82);
  font-size:11px;
  font-weight:700;
  letter-spacing:.18em;
  line-height:1;
}

.site-name-text{
  max-width:min(760px, 82vw);
  margin-bottom:14px;
  padding-left:18px;
  border-left:3px solid rgba(186,211,232,.72);
  color:rgba(255,255,255,.96);
  font-weight:800;
  line-height:1.22;
  letter-spacing:.03em;
  text-shadow:
    0 1px 2px rgba(0,0,0,.42),
    0 12px 30px rgba(0,0,0,.45);
}

.tagline{
  max-width:min(680px, 78vw);
  margin:0;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:4px;
  background:rgba(8,13,18,.28);
  color:rgba(255,255,255,.88);
  opacity:1;
  font-size:.9em;
  line-height:1.65;
  letter-spacing:.05em;
}

@supports ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){
  .tagline{
    -webkit-backdrop-filter:blur(8px) saturate(1.05);
    backdrop-filter:blur(8px) saturate(1.05);
  }
}

@media (max-width:782px){
  #header-container{
    min-height:270px;
    margin-bottom:28px;
  }

  #header{
    height:clamp(270px, 62vw, 390px);
    background-position:center center;
  }

  #header::before{
    background:
      linear-gradient(90deg, rgba(6,10,13,.74) 0%, rgba(10,15,19,.42) 62%, rgba(6,10,13,.55) 100%),
      linear-gradient(180deg, rgba(0,0,0,.14) 0%, rgba(0,0,0,.30) 100%);
  }

  #header-in{
    justify-content:flex-end;
    padding:34px 22px 42px;
  }

  #header-in::before{
    margin-bottom:10px;
    font-size:10px;
  }

  .site-name-text{
    max-width:100%;
    margin-bottom:10px;
    padding-left:13px;
    line-height:1.28;
  }

  .tagline{
    max-width:100%;
    padding:8px 10px;
    font-size:.78em;
    line-height:1.55;
  }
}

/* Header visual correction: keep it clean and keep navigation usable */
#header-container{
  overflow:visible;
  margin-bottom:48px;
  background:transparent;
}

#header::before{
  background:
    linear-gradient(90deg, rgba(5,8,10,.38) 0%, rgba(5,8,10,.24) 42%, rgba(5,8,10,.38) 100%),
    linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.24) 100%);
}

#header::after{
  content:none;
}

#header-in{
  align-items:center;
  justify-content:center;
  max-width:1180px;
  padding:clamp(42px, 7vw, 82px) 22px;
  text-align:center;
}

#header-in::before{
  content:none;
}

.site-name-text{
  max-width:min(900px, 88vw);
  margin:0 auto 22px;
  padding:0;
  border:0;
  color:rgba(255,255,255,.96);
  font-weight:800;
  line-height:1.32;
  letter-spacing:.035em;
  text-shadow:
    0 1px 2px rgba(0,0,0,.38),
    0 10px 28px rgba(0,0,0,.48);
}

.tagline{
  max-width:min(760px, 86vw);
  margin:0 auto;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:rgba(255,255,255,.86);
  font-size:.88em;
  font-weight:600;
  line-height:1.75;
  letter-spacing:.055em;
  text-shadow:
    0 1px 2px rgba(0,0,0,.38),
    0 6px 18px rgba(0,0,0,.46);
}

@supports ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){
  .tagline{
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
}

@media (max-width:782px){
  #header-container{
    overflow:visible;
    margin-bottom:32px;
  }

  #header{
    height:clamp(270px, 62vw, 390px);
  }

  #header-in{
    justify-content:center;
    padding:34px 18px;
  }

  .site-name-text{
    max-width:100%;
    margin-bottom:14px;
    padding:0;
    line-height:1.36;
  }

  .tagline{
    max-width:100%;
    padding:0;
    font-size:.78em;
    line-height:1.65;
  }
}

/* Header spacing refinement */
#header-in{
  gap:clamp(14px, 1.4vw, 22px);
}

#header .logo-header{
  width:100%;
  margin:0;
  line-height:1;
}

#header .site-name-text-link{
  display:inline-block;
  color:inherit;
  text-decoration:none;
}

#header .site-name-text{
  max-width:min(1120px, 94vw);
  margin-bottom:0;
  font-size:clamp(24px, 1.75vw, 32px);
  line-height:1.35;
  letter-spacing:.025em;
}

#header .tagline{
  margin-top:0;
  max-width:min(760px, 86vw);
  font-size:clamp(13px, .95vw, 16px);
  line-height:1.75;
  letter-spacing:.035em;
}

@media (min-width:1024px){
  #header .site-name-text{
    white-space:nowrap;
  }
}

@media (max-width:782px){
  #header-in{
    gap:14px;
  }

  #header .site-name-text{
    font-size:23px;
    line-height:1.5;
  }

  #header .tagline{
    font-size:14px;
    line-height:1.8;
  }
}

#navi{
  position:relative;
  z-index:100;
  overflow:visible;
  background:var(--mei-color-surface-clean) !important;
  border-top:0;
  border-bottom:var(--mei-border-soft-line);
  box-shadow:0 8px 22px rgba(38,50,56,.045);
}

@supports ((-webkit-backdrop-filter:blur(12px)) or (backdrop-filter:blur(12px))){
  #navi{
    -webkit-backdrop-filter:blur(14px) saturate(1.2);
    backdrop-filter:blur(14px) saturate(1.2);
  }
}

#navi-in{
  overflow:visible;
  max-width:var(--mei-width-archive);
  margin:0 auto;
  padding:8px clamp(12px, 3vw, 22px);
}

#navi .menu-header.menu-pc{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  background:transparent !important;
  border:none !important;
}

#navi .menu-header.menu-pc > li{
  flex:0 1 auto;
  width:auto;
  position:relative;
}

#navi .menu-header.menu-pc > li > a{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:8px 17px;
  border:1px solid transparent;
  border-radius:var(--mei-radius-pill);
  background:transparent;
  color:var(--mei-color-text) !important;
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  letter-spacing:0;
  line-height:var(--mei-leading-snug);
  transition:
    transform var(--mei-transition-fast),
    color var(--mei-transition-fast),
    background-color var(--mei-transition-fast),
    border-color var(--mei-transition-fast),
    box-shadow var(--mei-transition-fast);
}

#navi .menu-header.menu-pc > li > a::before{
  content:"";
  position:absolute;
  right:50%;
  bottom:6px;
  left:50%;
  height:2px;
  border-radius:999px;
  background:var(--mei-color-accent);
  opacity:.72;
  transition:right var(--mei-transition-fast), left var(--mei-transition-fast), opacity var(--mei-transition-fast);
}

#navi .menu-header.menu-pc > li > a:hover,
#navi .menu-header.menu-pc > li:focus-within > a{
  transform:translateY(-1px);
  border-color:var(--mei-color-border);
  background:var(--mei-color-surface-soft);
  color:var(--mei-color-primary-dark) !important;
  box-shadow:var(--mei-shadow-soft);
}

#navi .menu-header.menu-pc > li > a:hover::before,
#navi .menu-header.menu-pc > li:focus-within > a::before,
#navi .menu-header.menu-pc > .current-menu-item > a::before,
#navi .menu-header.menu-pc > .current-menu-ancestor > a::before,
#navi .menu-header.menu-pc > .current_page_item > a::before,
#navi .menu-header.menu-pc > .current_page_parent > a::before{
  right:calc(50% - 12px);
  left:calc(50% - 12px);
  opacity:1;
}

#navi .menu-header.menu-pc > .current-menu-item > a,
#navi .menu-header.menu-pc > .current-menu-ancestor > a,
#navi .menu-header.menu-pc > .current_page_item > a,
#navi .menu-header.menu-pc > .current_page_parent > a{
  border-color:var(--mei-color-border);
  background:var(--mei-color-primary-soft);
  color:var(--mei-color-primary-dark) !important;
  box-shadow:inset 0 1px 2px rgba(38,50,56,.035);
}

#navi .menu-header.menu-pc > li > a:focus-visible{
  outline:3px solid var(--mei-color-focus);
  outline-offset:2px;
}

#navi .sub-menu{
  min-width:218px;
  padding:8px;
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-card);
  background:var(--mei-color-surface-clean) !important;
  box-shadow:var(--mei-shadow-hover);
}

#navi .menu-header.menu-pc .sub-menu li{
  width:auto;
  height:auto;
  min-height:0;
  background:transparent;
}

#navi .sub-menu a{
  display:flex;
  min-height:44px;
  height:auto;
  padding:10px 12px;
  border-radius:var(--mei-radius-md);
  color:var(--mei-color-text) !important;
  font-size:13px;
  font-weight:600;
  letter-spacing:0;
  line-height:var(--mei-leading-snug);
  transition:background-color var(--mei-transition-fast), color var(--mei-transition-fast), transform var(--mei-transition-fast);
}

#navi .sub-menu .caption-wrap{
  justify-content:flex-start;
  text-align:left;
  color:var(--mei-color-text) !important;
}

#navi .sub-menu .item-label,
#navi .sub-menu .item-description,
#navi .sub-menu .has-icon,
#navi .sub-menu .fa{
  color:var(--mei-color-text) !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
}

#navi .sub-menu .item-label{
  font:inherit;
}

#navi .sub-menu .item-description{
  margin-top:2px;
  color:var(--mei-color-text-muted) !important;
  font-size:11px;
  line-height:1.4;
}

#navi .sub-menu a:hover{
  transform:translateX(1px);
  background:var(--mei-color-surface-soft);
  color:var(--mei-color-primary-dark) !important;
}

#navi .sub-menu a:hover .item-label,
#navi .sub-menu a:hover .has-icon,
#navi .sub-menu a:hover .fa{
  color:var(--mei-color-primary-dark) !important;
}

#navi .sub-menu a:focus-visible{
  outline:2px solid var(--mei-color-focus);
  outline-offset:-2px;
}

@media (hover:hover){
  #navi .menu-header.menu-pc > li > a:active{
    transform:translateY(0) scale(.985);
    box-shadow:0 3px 9px rgba(39,58,75,.08);
    transition-duration:.07s;
  }
}

@media (prefers-reduced-motion:reduce){
  #navi .menu-header.menu-pc a,
  #navi .menu-header.menu-pc > li > a::before{
    transition:none;
  }

  #navi .menu-header.menu-pc a:hover,
  #navi .menu-header.menu-pc > li:focus-within > a,
  #navi .menu-header.menu-pc > li > a:active{
    transform:none;
  }
}

/* =========================================================
   Single Live Footer: Past Venue Lives
   - 蜷後§莨壼ｴ縺ｧ縺ｮ驕主悉繝ｩ繧､繝悶ｒ縲∝ｰ上＆縺ｪ險倬鹸譽壹→縺励※陦ｨ遉ｺ縺吶ｋ
   ========================================================= */
.single-live .mei-past-venue-lives{
  margin:46px 0 10px;
  padding:0;
  border:0;
  background:transparent;
}

.single-live .mei-past-venue-lives__head{
  margin:0 0 16px;
}

.single-live .mei-past-venue-lives__kicker{
  margin:0 0 5px;
  color:#8394a1;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.16em;
  line-height:1.4;
}

.single-live .mei-past-venue-lives__title{
  position:relative;
  margin:0;
  padding:0 0 12px 17px;
  border-bottom:1px solid #dce4ea;
  color:#263947;
  font-size:19px;
  font-weight:800;
  letter-spacing:.03em;
  line-height:1.5;
}

.single-live .mei-past-venue-lives__title::before{
  content:"";
  position:absolute;
  top:.2em;
  bottom:calc(.2em + 12px);
  left:0;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg, #668daf, #adc3d5);
}

.single-live .mei-past-venue-lives__lead{
  margin:9px 0 0;
  color:#748390;
  font-size:12.5px;
  font-weight:600;
  line-height:1.75;
}

.single-live .mei-past-venue-lives__list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px 14px;
  list-style:none;
  margin:0;
  padding:0;
}

.single-live .mei-past-venue-lives__item{
  margin:0;
}

.single-live .mei-past-venue-lives__link{
  display:grid;
  grid-template-columns:84px minmax(0, 1fr);
  gap:12px;
  align-items:center;
  min-height:78px;
  padding:8px 0;
  border-bottom:1px solid #e6edf2;
  color:#29475f;
  text-decoration:none;
  transition:color .16s ease, transform .16s ease;
}

.single-live .mei-past-venue-lives__link:hover{
  transform:translateX(3px);
  color:#173f62;
}

.single-live .mei-past-venue-lives__thumb{
  display:block;
  overflow:hidden;
  width:84px;
  aspect-ratio:4/3;
  border:1px solid #dce7ef;
  border-radius:7px;
  background:#f5f8fa;
}

.single-live .mei-past-venue-lives__thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease;
}

.single-live .mei-past-venue-lives__link:hover img{
  transform:scale(1.035);
}

.single-live .mei-past-venue-lives__no-image{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  color:#9aa8b2;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}

.single-live .mei-past-venue-lives__body{
  display:grid;
  gap:4px;
  min-width:0;
}

.single-live .mei-past-venue-lives__body time{
  color:#8796a1;
  font-size:11px;
  font-weight:800;
  line-height:1.4;
}

.single-live .mei-past-venue-lives__body strong{
  overflow:hidden;
  color:inherit;
  font-size:13.5px;
  font-weight:800;
  line-height:1.6;
  text-overflow:ellipsis;
}

.single-live .mei-past-venue-lives__more{
  margin:14px 0 0;
  text-align:right;
}

.single-live .mei-past-venue-lives__more a{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:5px 11px;
  border:1px solid #c8d9e6;
  border-radius:999px;
  color:#315f87;
  font-size:12.5px;
  font-weight:800;
  text-decoration:none;
  transition:background .16s ease, color .16s ease, border-color .16s ease;
}

.single-live .mei-past-venue-lives__more a:hover{
  border-color:#8fb0c9;
  background:#edf5fb;
  color:#173f62;
}

@media (max-width:700px){
  .single-live .mei-past-venue-lives__list{
    grid-template-columns:1fr;
  }
}

@media (max-width:480px){
  .single-live .mei-past-venue-lives{
    margin-top:38px;
  }

  .single-live .mei-past-venue-lives__link{
    grid-template-columns:72px minmax(0, 1fr);
    gap:10px;
  }

  .single-live .mei-past-venue-lives__thumb{
    width:72px;
  }

  .single-live .mei-past-venue-lives__more{
    text-align:left;
  }
}

@media (prefers-reduced-motion:reduce){
  .single-live .mei-past-venue-lives__link,
  .single-live .mei-past-venue-lives__thumb img,
  .single-live .mei-past-venue-lives__more a{
    transition:none;
  }

  .single-live .mei-past-venue-lives__link:hover,
  .single-live .mei-past-venue-lives__link:hover img{
    transform:none;
  }
}

/* =========================================================
   Single Live Footer: Future Schedule
   - 隧ｳ邏ｰ繝壹・繧ｸ縺ｧ縺ｯ繝輔Λ繧､繝､繝ｼ繧堤ｹｰ繧願ｿ斐＆縺壹∝屓驕翫＠繧・☆縺・ｸ隕ｧ縺ｫ縺吶ｋ
   ========================================================= */
.single-live .live-future-list{
  margin:58px 0 20px;
  padding:26px 30px 28px;
  border:1px solid var(--mei-color-border-soft, #e8eeee);
  border-radius:12px;
  background:var(--mei-color-surface, #fffefa);
}

.single-live .live-future-list .live-nextlist-title{
  position:relative;
  margin:0 0 10px;
  padding:0 0 15px 17px;
  border-bottom:1px solid #dce4ea;
  color:#263947;
  font-size:21px;
  font-weight:900;
  letter-spacing:.04em;
  line-height:1.5;
}

.single-live .live-future-list .live-nextlist-title::before{
  content:"";
  position:absolute;
  top:.2em;
  bottom:calc(.2em + 15px);
  left:0;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg, #668daf, #adc3d5);
}

.single-live .live-future-list .mei-upcoming-list{
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.single-live .live-future-list .mei-upcoming-list__items{
  margin:0;
  padding:0;
}

.single-live .live-future-list .mei-upcoming-list__item{
  margin:0;
  padding:12px 0;
  border-bottom:1px solid var(--mei-color-border-soft, #e8eeee);
  border-radius:0;
  font-size:15.5px;
  line-height:1.7;
}

.single-live .live-future-list .mei-upcoming-list__item:first-child{
  margin:0;
  padding:12px 0;
  border-bottom:1px solid var(--mei-color-border-soft, #e8eeee);
  background:transparent;
}

.single-live .live-future-list .mei-upcoming-list__link{
  display:block;
  padding:2px 0;
  border:0;
  border-radius:0;
  color:var(--mei-color-text, #263238);
  font-weight:650;
  text-decoration:none;
  text-underline-offset:.22em;
  transition:color .16s ease, text-decoration-color .16s ease;
}

.single-live .live-future-list .mei-upcoming-list__item:has(.mei-upcoming-list__link:hover),
.single-live .live-future-list .mei-upcoming-list__item:has(.mei-upcoming-list__link:focus-visible){
  background:transparent;
}

.single-live .live-future-list .mei-upcoming-list__link:hover,
.single-live .live-future-list .mei-upcoming-list__link:focus-visible{
  background:transparent;
  color:var(--mei-color-primary-hover, #243f50);
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(47,83,104,.45);
}

.single-live .live-future-list .mei-live-schedule-line{
  grid-template-columns:112px minmax(0,1fr) 72px;
  column-gap:16px;
  align-items:baseline;
}

.single-live .live-future-list .mei-live-schedule-line__date{
  color:var(--mei-color-text, #263238);
  font-size:1.05em;
  font-weight:700;
}

.single-live .live-future-list .mei-live-schedule-line__details{
  display:contents;
}

.single-live .live-future-list .mei-live-schedule-line__details > span + span::before{
  content:none;
}

.single-live .live-future-list .mei-live-schedule-line__venue{
  color:var(--mei-color-text, #263238);
  min-width:0;
  overflow-wrap:anywhere;
}

.single-live .live-future-list .mei-live-schedule-line__time{
  justify-self:start;
  min-width:0;
  color:var(--mei-color-text-muted, #6f7e82);
  font-weight:700;
}

.single-live .live-future-list .mei-live-schedule-line__time.is-empty{
  min-height:1em;
}

.single-live .live-future-list .mei-live-schedule-line__clock{
  display:none;
}

.single-live .live-future-list .mei-upcoming-list__item:first-child .mei-live-schedule-line__venue,
.single-live .live-future-list .mei-upcoming-list__item:first-child .mei-live-schedule-line__time{
  font-weight:900;
  color:var(--mei-color-heading, #24343b);
}

.single-live .live-future-list .mei-upcoming-list__item:first-child .mei-live-schedule-line__date{
  justify-self:start;
  display:inline;
  min-height:0;
  padding:0;
  border-radius:0;
  background:transparent;
  color:var(--mei-color-text, #263238);
}

@media (max-width:480px){
  .single-live .live-future-list{
    margin-top:42px;
    padding:20px 12px 22px;
  }

  .single-live .live-future-list .mei-upcoming-list__item{
    padding:10px 0;
    font-size:14.5px;
    line-height:1.55;
  }

  .single-live .live-future-list .mei-upcoming-list__item:first-child{
    margin:0 0 3px;
    padding:11px 0;
  }

  .single-live .live-future-list .mei-live-schedule-line{
    width:100%;
    grid-template-columns:74px minmax(0,1fr) 58px;
    align-items:start;
    column-gap:10px;
    row-gap:0;
  }

  .single-live .live-future-list .mei-live-schedule-line__date{
    font-size:1.12em;
    line-height:1.25;
  }

  .single-live .live-future-list .mei-live-schedule-line__details{
    display:contents;
  }

  .single-live .live-future-list .mei-live-schedule-line__venue{
    overflow-wrap:break-word;
    word-break:normal;
  }

  .single-live .live-future-list .mei-live-schedule-line__time{
    line-height:1.35;
  }
}

@media (prefers-reduced-motion:reduce){
  .single-live .live-future-list .mei-upcoming-list__link{
    transition:none;
  }

  .single-live .live-future-list .mei-upcoming-list__link:hover{
    transition:none;
  }
}


















/* =========================================================
   03. Front Page Tweaks・医ヵ繝ｭ繝ｳ繝医・繝ｼ繧ｸ縺ｮ荳崎ｦ√ち繧､繝医Ν・・   - 繝輔Ο繝ｳ繝医〒h1/繧ｿ繧､繝医Ν縺悟・繧九こ繝ｼ繧ｹ縺ｮ謚第ｭ｢
   ========================================================= */

.home .entry-title,
.front-page .entry-title{
  display:none !important;
}

.home .entry-content > h1,
.front-page .entry-content > h1{
  display:none !important;
}


/* =========================================================
   04. Sidebar Spacing Fix・医し繧､繝峨ヰ繝ｼ荳翫・隰惹ｽ咏區・・   - 菴咏區縺ｮ荳谺｡蟇ｾ蜃ｦ縲ょｿ・ｦ√↓縺ｪ縺｣縺溘ｉ縺薙％縺縺題ｪｿ謨ｴ縲・   ========================================================= */

#sidebar,
.sidebar{
  margin-top:0 !important;
  padding-top:0 !important;
}

#sidebar .widget:first-child,
.sidebar .widget:first-child{
  margin-top:0 !important;
}

#sidebar .widget-title,
.sidebar .widget-title{
  margin-top:0 !important;
}

/* Sidebar visual refinement */
#sidebar,
.sidebar{
  color:#263947;
}

#sidebar .widget,
.sidebar .widget{
  margin:0 0 30px;
  padding:22px 20px;
  border:1px solid #e2e9ef;
  border-radius:14px;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  box-shadow:0 14px 32px rgba(39,57,71,.06);
}

#sidebar .widget-title,
.sidebar .widget-title{
  position:relative;
  margin:0 0 18px !important;
  padding:0 0 12px;
  border:0;
  background:transparent;
  color:#263947;
  font-size:19px;
  font-weight:800;
  letter-spacing:.03em;
  line-height:1.45;
}

#sidebar .widget-title::after,
.sidebar .widget-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:42px;
  height:2px;
  border-radius:999px;
  background:#8eb1cf;
}

#sidebar .search-box,
#sidebar .search-form,
#sidebar .wp-block-search__inside-wrapper,
.sidebar .search-box,
.sidebar .search-form,
.sidebar .wp-block-search__inside-wrapper{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:stretch;
}

#sidebar input[type="search"],
#sidebar .search-edit,
#sidebar .wp-block-search__input,
.sidebar input[type="search"],
.sidebar .search-edit,
.sidebar .wp-block-search__input{
  min-height:42px;
  width:100%;
  border:1px solid #d7e2ea;
  border-radius:8px;
  background:#fff;
  color:#263947;
  font-size:15px;
  box-shadow:inset 0 1px 2px rgba(39,57,71,.04);
}

#sidebar input[type="search"]:focus,
#sidebar .search-edit:focus,
#sidebar .wp-block-search__input:focus,
.sidebar input[type="search"]:focus,
.sidebar .search-edit:focus,
.sidebar .wp-block-search__input:focus{
  border-color:#8eb1cf;
  outline:0;
  box-shadow:0 0 0 3px rgba(142,177,207,.18);
}

#sidebar .search-submit,
#sidebar .wp-block-search__button,
.sidebar .search-submit,
.sidebar .wp-block-search__button{
  min-height:42px;
  margin:0;
  padding:0 18px;
  border:1px solid #263947;
  border-radius:8px;
  background:#263947;
  color:#fff;
  font-weight:800;
  letter-spacing:.03em;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}

#sidebar .search-submit:hover,
#sidebar .wp-block-search__button:hover,
.sidebar .search-submit:hover,
.sidebar .wp-block-search__button:hover{
  transform:translateY(-1px);
  border-color:#315f87;
  background:#315f87;
}

#sidebar .widget ul,
.sidebar .widget ul{
  margin:0;
  padding:0;
  list-style:none;
}

#sidebar .widget li,
.sidebar .widget li{
  margin:0;
}

#sidebar .widget_categories li a,
#sidebar .cat-item a,
.sidebar .widget_categories li a,
.sidebar .cat-item a{
  display:flex;
  align-items:center;
  min-height:38px;
  padding:8px 0;
  border-bottom:1px solid #edf2f6;
  color:#315f87;
  font-weight:700;
  text-decoration:none;
}

#sidebar .widget_categories li a::before,
#sidebar .cat-item a::before,
.sidebar .widget_categories li a::before,
.sidebar .cat-item a::before{
  content:"";
  width:6px;
  height:6px;
  margin-right:10px;
  border-radius:50%;
  background:#9fbdd5;
}

#sidebar .widget_categories li a:hover,
#sidebar .cat-item a:hover,
.sidebar .widget_categories li a:hover,
.sidebar .cat-item a:hover{
  color:#173f62;
}

#sidebar .widget-entry-card-link,
#sidebar .new-entry-card-link,
#sidebar .popular-entry-card-link,
#sidebar .ranking-entry-card-link,
.sidebar .widget-entry-card-link,
.sidebar .new-entry-card-link,
.sidebar .popular-entry-card-link,
.sidebar .ranking-entry-card-link{
  display:block;
  margin:0;
  padding:14px 0;
  border-bottom:1px solid #edf2f6;
  color:#263947;
  text-decoration:none;
  transition:color .16s ease,transform .16s ease;
}

#sidebar .widget-entry-card-link:hover,
#sidebar .new-entry-card-link:hover,
#sidebar .popular-entry-card-link:hover,
#sidebar .ranking-entry-card-link:hover,
.sidebar .widget-entry-card-link:hover,
.sidebar .new-entry-card-link:hover,
.sidebar .popular-entry-card-link:hover,
.sidebar .ranking-entry-card-link:hover{
  transform:translateX(3px);
  color:#315f87;
}

#sidebar .widget-entry-card,
#sidebar .new-entry-card,
#sidebar .popular-entry-card,
#sidebar .ranking-entry-card,
.sidebar .widget-entry-card,
.sidebar .new-entry-card,
.sidebar .popular-entry-card,
.sidebar .ranking-entry-card{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:13px;
  align-items:center;
  min-width:0;
  font-size:1rem;
}

#sidebar .widget-entry-card-content,
#sidebar .new-entry-card-content,
#sidebar .popular-entry-card-content,
#sidebar .ranking-entry-card-content,
.sidebar .widget-entry-card-content,
.sidebar .new-entry-card-content,
.sidebar .popular-entry-card-content,
.sidebar .ranking-entry-card-content{
  position:static !important;
  inset:auto !important;
  display:block;
  min-width:0;
  padding:0 !important;
  background:transparent !important;
  color:inherit !important;
  opacity:1 !important;
  transform:none !important;
  margin:0 !important;
}

#sidebar .widget-entry-card-thumb,
#sidebar .new-entry-card-thumb,
#sidebar .popular-entry-card-thumb,
#sidebar .ranking-entry-card-thumb,
.sidebar .widget-entry-card-thumb,
.sidebar .new-entry-card-thumb,
.sidebar .popular-entry-card-thumb,
.sidebar .ranking-entry-card-thumb{
  overflow:hidden;
  float:none !important;
  width:92px !important;
  max-width:92px !important;
  height:auto !important;
  aspect-ratio:4/3;
  margin:0 !important;
  border:1px solid #dbe6ee;
  border-radius:6px;
  background:#f3f7fa;
}

#sidebar .widget-entry-card-thumb img,
#sidebar .new-entry-card-thumb img,
#sidebar .popular-entry-card-thumb img,
#sidebar .ranking-entry-card-thumb img,
.sidebar .widget-entry-card-thumb img,
.sidebar .new-entry-card-thumb img,
.sidebar .popular-entry-card-thumb img,
.sidebar .ranking-entry-card-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

#sidebar .widget-entry-card-title,
#sidebar .new-entry-card-title,
#sidebar .popular-entry-card-title,
#sidebar .ranking-entry-card-title,
.sidebar .widget-entry-card-title,
.sidebar .new-entry-card-title,
.sidebar .popular-entry-card-title,
.sidebar .ranking-entry-card-title{
  display:-webkit-box !important;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  color:inherit;
  font-size:14.5px;
  font-weight:800;
  line-height:1.55;
}

#sidebar .widget-entry-card-meta,
#sidebar .new-entry-card-meta,
#sidebar .popular-entry-card-meta,
#sidebar .ranking-entry-card-meta,
#sidebar .widget-entry-card-info,
#sidebar .new-entry-card-info,
#sidebar .popular-entry-card-info,
#sidebar .ranking-entry-card-info,
.sidebar .widget-entry-card-meta,
.sidebar .new-entry-card-meta,
.sidebar .popular-entry-card-meta,
.sidebar .ranking-entry-card-meta,
.sidebar .widget-entry-card-info,
.sidebar .new-entry-card-info,
.sidebar .popular-entry-card-info,
.sidebar .ranking-entry-card-info{
  display:block !important;
  margin:5px 0 0;
}

#sidebar .widget-entry-card-date,
#sidebar .new-entry-card-date,
#sidebar .popular-entry-card-date,
#sidebar .ranking-entry-card-date,
#sidebar .widget-entry-card-snippet,
#sidebar .new-entry-card-snippet,
#sidebar .popular-entry-card-snippet,
#sidebar .ranking-entry-card-snippet,
.sidebar .widget-entry-card-date,
.sidebar .new-entry-card-date,
.sidebar .popular-entry-card-date,
.sidebar .ranking-entry-card-date,
.sidebar .widget-entry-card-snippet,
.sidebar .new-entry-card-snippet,
.sidebar .popular-entry-card-snippet,
.sidebar .ranking-entry-card-snippet{
  display:block;
  margin-top:5px;
  color:#7b8b98;
  font-size:12px;
  font-weight:600;
  line-height:1.45;
}

#sidebar .widget-entry-card-date .post-date,
#sidebar .new-entry-card-date .post-date,
#sidebar .popular-entry-card-date .post-date,
#sidebar .ranking-entry-card-date .post-date,
.sidebar .widget-entry-card-date .post-date,
.sidebar .new-entry-card-date .post-date,
.sidebar .popular-entry-card-date .post-date,
.sidebar .ranking-entry-card-date .post-date{
  display:inline-flex;
  align-items:center;
  gap:4px;
}

#sidebar .widget-entry-card-date .post-update,
#sidebar .new-entry-card-date .post-update,
#sidebar .popular-entry-card-date .post-update,
#sidebar .ranking-entry-card-date .post-update,
.sidebar .widget-entry-card-date .post-update,
.sidebar .new-entry-card-date .post-update,
.sidebar .popular-entry-card-date .post-update,
.sidebar .ranking-entry-card-date .post-update{
  display:none !important;
}

/* 縲瑚ｪｭ縺ｾ繧後※縺・ｋ險倅ｺ九阪・鬆・ｽ阪・PV繧定ｦ九○縺壹∬ｨ倅ｺ句ｰ守ｷ壹→縺励※髱吶°縺ｫ謇ｱ縺・・*/
.widget .popular-entry-card-pv,
.widget .ranking-entry-card-pv,
.widget .widget-entry-card-pv,
.widget .popular-entry-cards.ranking-visible .card-thumb::before,
.widget .ranking-entry-cards.ranking-visible .card-thumb::before,
#sidebar .popular-entry-card-pv,
#sidebar .ranking-entry-card-pv,
#sidebar .widget-entry-card-pv,
#sidebar .popular-entry-cards.ranking-visible .card-thumb::before,
#sidebar .ranking-entry-cards.ranking-visible .card-thumb::before,
.sidebar .popular-entry-card-pv,
.sidebar .ranking-entry-card-pv,
.sidebar .widget-entry-card-pv,
.sidebar .popular-entry-cards.ranking-visible .card-thumb::before,
.sidebar .ranking-entry-cards.ranking-visible .card-thumb::before{
  display:none !important;
  content:none !important;
}

#sidebar .widget-entry-cards.card-large-image .widget-entry-card-link,
#sidebar .widget-entry-cards.large-thumb .widget-entry-card-link,
#sidebar .widget-entry-cards.large-thumb-on .widget-entry-card-link,
#sidebar .new-entry-cards.card-large-image .new-entry-card-link,
#sidebar .new-entry-cards.large-thumb .new-entry-card-link,
#sidebar .new-entry-cards.large-thumb-on .new-entry-card-link,
#sidebar .popular-entry-cards.card-large-image .popular-entry-card-link,
#sidebar .popular-entry-cards.large-thumb .popular-entry-card-link,
#sidebar .popular-entry-cards.large-thumb-on .popular-entry-card-link,
.sidebar .widget-entry-cards.card-large-image .widget-entry-card-link,
.sidebar .widget-entry-cards.large-thumb .widget-entry-card-link,
.sidebar .widget-entry-cards.large-thumb-on .widget-entry-card-link,
.sidebar .new-entry-cards.card-large-image .new-entry-card-link,
.sidebar .new-entry-cards.large-thumb .new-entry-card-link,
.sidebar .new-entry-cards.large-thumb-on .new-entry-card-link,
.sidebar .popular-entry-cards.card-large-image .popular-entry-card-link,
.sidebar .popular-entry-cards.large-thumb .popular-entry-card-link,
.sidebar .popular-entry-cards.large-thumb-on .popular-entry-card-link{
  display:block !important;
}

#sidebar .widget-entry-cards.card-large-image .widget-entry-card,
#sidebar .widget-entry-cards.large-thumb .widget-entry-card,
#sidebar .widget-entry-cards.large-thumb-on .widget-entry-card,
#sidebar .new-entry-cards.card-large-image .new-entry-card,
#sidebar .new-entry-cards.large-thumb .new-entry-card,
#sidebar .new-entry-cards.large-thumb-on .new-entry-card,
#sidebar .popular-entry-cards.card-large-image .popular-entry-card,
#sidebar .popular-entry-cards.large-thumb .popular-entry-card,
#sidebar .popular-entry-cards.large-thumb-on .popular-entry-card,
.sidebar .widget-entry-cards.card-large-image .widget-entry-card,
.sidebar .widget-entry-cards.large-thumb .widget-entry-card,
.sidebar .widget-entry-cards.large-thumb-on .widget-entry-card,
.sidebar .new-entry-cards.card-large-image .new-entry-card,
.sidebar .new-entry-cards.large-thumb .new-entry-card,
.sidebar .new-entry-cards.large-thumb-on .new-entry-card,
.sidebar .popular-entry-cards.card-large-image .popular-entry-card,
.sidebar .popular-entry-cards.large-thumb .popular-entry-card,
.sidebar .popular-entry-cards.large-thumb-on .popular-entry-card{
  grid-template-columns:92px minmax(0,1fr) !important;
}

#sidebar .widget-entry-cards.card-large-image .card-thumb,
#sidebar .widget-entry-cards.large-thumb .card-thumb,
#sidebar .widget-entry-cards.large-thumb-on .card-thumb,
#sidebar .new-entry-cards.card-large-image .card-thumb,
#sidebar .new-entry-cards.large-thumb .card-thumb,
#sidebar .new-entry-cards.large-thumb-on .card-thumb,
#sidebar .popular-entry-cards.card-large-image .card-thumb,
#sidebar .popular-entry-cards.large-thumb .card-thumb,
#sidebar .popular-entry-cards.large-thumb-on .card-thumb,
.sidebar .widget-entry-cards.card-large-image .card-thumb,
.sidebar .widget-entry-cards.large-thumb .card-thumb,
.sidebar .widget-entry-cards.large-thumb-on .card-thumb,
.sidebar .new-entry-cards.card-large-image .card-thumb,
.sidebar .new-entry-cards.large-thumb .card-thumb,
.sidebar .new-entry-cards.large-thumb-on .card-thumb,
.sidebar .popular-entry-cards.card-large-image .card-thumb,
.sidebar .popular-entry-cards.large-thumb .card-thumb,
.sidebar .popular-entry-cards.large-thumb-on .card-thumb{
  margin:0 !important;
  width:92px !important;
  max-width:92px !important;
}

#sidebar .widget-entry-cards.card-large-image .card-content,
#sidebar .widget-entry-cards.large-thumb .card-content,
#sidebar .widget-entry-cards.large-thumb-on .card-content,
#sidebar .new-entry-cards.card-large-image .card-content,
#sidebar .new-entry-cards.large-thumb .card-content,
#sidebar .new-entry-cards.large-thumb-on .card-content,
#sidebar .popular-entry-cards.card-large-image .card-content,
#sidebar .popular-entry-cards.large-thumb .card-content,
#sidebar .popular-entry-cards.large-thumb-on .card-content,
.sidebar .widget-entry-cards.card-large-image .card-content,
.sidebar .widget-entry-cards.large-thumb .card-content,
.sidebar .widget-entry-cards.large-thumb-on .card-content,
.sidebar .new-entry-cards.card-large-image .card-content,
.sidebar .new-entry-cards.large-thumb .card-content,
.sidebar .new-entry-cards.large-thumb-on .card-content,
.sidebar .popular-entry-cards.card-large-image .card-content,
.sidebar .popular-entry-cards.large-thumb .card-content,
.sidebar .popular-entry-cards.large-thumb-on .card-content{
  margin:0 !important;
}

#sidebar .widget-entry-cards.card-large-image .card-title,
#sidebar .widget-entry-cards.large-thumb .card-title,
#sidebar .widget-entry-cards.large-thumb-on .card-title,
#sidebar .new-entry-cards.card-large-image .card-title,
#sidebar .new-entry-cards.large-thumb .card-title,
#sidebar .new-entry-cards.large-thumb-on .card-title,
#sidebar .popular-entry-cards.card-large-image .card-title,
#sidebar .popular-entry-cards.large-thumb .card-title,
#sidebar .popular-entry-cards.large-thumb-on .card-title,
.sidebar .widget-entry-cards.card-large-image .card-title,
.sidebar .widget-entry-cards.large-thumb .card-title,
.sidebar .widget-entry-cards.large-thumb-on .card-title,
.sidebar .new-entry-cards.card-large-image .card-title,
.sidebar .new-entry-cards.large-thumb .card-title,
.sidebar .new-entry-cards.large-thumb-on .card-title,
.sidebar .popular-entry-cards.card-large-image .card-title,
.sidebar .popular-entry-cards.large-thumb .card-title,
.sidebar .popular-entry-cards.large-thumb-on .card-title{
  color:inherit !important;
}

@media (max-width:1023px){
  #sidebar .widget,
  .sidebar .widget{
    padding:18px;
  }
}

@media (max-width:480px){
  #sidebar .search-box,
  #sidebar .search-form,
  #sidebar .wp-block-search__inside-wrapper,
  .sidebar .search-box,
  .sidebar .search-form,
  .sidebar .wp-block-search__inside-wrapper{
    grid-template-columns:1fr;
  }

  #sidebar .search-submit,
  #sidebar .wp-block-search__button,
  .sidebar .search-submit,
  .sidebar .wp-block-search__button{
    width:100%;
  }
}


/* =========================================================
   05. Live Archive (archive-live)
   - 荳隕ｧ繧偵き繝ｼ繝峨げ繝ｪ繝・ラ縺ｧ邨ｱ荳
   ========================================================= */

.live-archive{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  align-items:start;
  gap:18px;
}

.live-item{
  position:relative;
  align-self:start;
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.06);
  transition:transform .2s cubic-bezier(.2,.7,.3,1),
             box-shadow .2s ease,
             border-color .2s ease;
}

.live-item::before{
  content:"";
  position:absolute;
  z-index:2;
  top:0;
  right:0;
  left:0;
  height:3px;
  background:linear-gradient(90deg, #7898b8, #a8bfd3);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .24s cubic-bezier(.2,.7,.3,1);
}

.live-item:hover{
  transform:translateY(-4px);
  border-color:rgba(82,111,140,.38);
  box-shadow:0 16px 38px rgba(31,48,64,.12),
             0 0 0 2px rgba(120,152,184,.24);
}

.live-item:hover::before,
.live-item:focus-within::before{
  transform:scaleX(1);
}

.live-item--exception{
  border-color:rgba(113,132,150,.22);
  background:#fbfcfd;
}

.live-item--exception::before{
  background:linear-gradient(90deg, #9aaaba, #c5d0da);
  transform:scaleX(.22);
}

.live-item:focus-within{
  transform:translateY(-4px);
  border-color:rgba(82,111,140,.42);
  box-shadow:0 16px 38px rgba(31,48,64,.12),
             0 0 0 2px rgba(120,152,184,.28);
}

.live-link{
  display:block;
  text-decoration:none;
  color:inherit;
}

.live-link:focus-visible{
  outline:3px solid rgba(66,116,168,.38);
  outline-offset:-3px;
}

.live-thumb{
  background:transparent;
  line-height:0;
  overflow:hidden;
}

.live-thumb img{
  width:100%;
  height:auto;
  display:block;
  transform:scale(1);
  transition:transform .28s cubic-bezier(.2,.7,.3,1), filter .22s ease;
}

.live-item--exception .live-thumb img{
  filter:saturate(.72) contrast(.97) brightness(.99);
}

.live-item:hover .live-thumb img,
.live-item:focus-within .live-thumb img{
  transform:scale(1.018);
  filter:saturate(1.025) contrast(1.015);
}

.live-item--exception:hover .live-thumb img,
.live-item--exception:focus-within .live-thumb img{
  filter:saturate(.82) contrast(.99) brightness(1);
}

.live-archive .live-title{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:5px 8px;
  min-height:86px;
  margin:0;
  padding:15px 14px 13px;
  border-bottom:1px solid #edf0f3;
  background:linear-gradient(180deg, #fff 0%, #fbfcfd 100%);
  font-feature-settings:"palt" 1;
  line-height:1.4;
}

.live-card-title__date{
  flex:0 0 100%;
  color:#1f3854;
  font-variant-numeric:tabular-nums;
}

.live-card-title__date:not(.live-card-date){
  padding-left:9px;
  border-left:3px solid #7898b8;
  color:#29445f;
  font-size:14px;
  font-weight:800;
  letter-spacing:.035em;
  line-height:1.45;
}

.live-card-date{
  display:inline-flex;
  width:100%;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
  margin:-1px 0 3px;
  padding:4px 0 5px;
  text-decoration:none;
  line-height:1;
}

.live-card-date__year{
  display:block;
  color:#48627d;
  font-size:15px;
  font-weight:800;
  letter-spacing:.04em;
}

.live-card-date__main{
  display:flex;
  align-items:flex-end;
  gap:8px;
}

.live-card-date__monthday{
  color:#17324f;
  font-size:44px;
  font-weight:850;
  letter-spacing:0;
  line-height:.95;
}

.live-card-date__weekday{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:30px;
  min-height:30px;
  margin-bottom:3px;
  padding:3px 5px;
  border:2px solid #2e567b;
  border-radius:8px;
  background:#f7fbff;
  color:#254a70;
  font-size:16px;
  font-weight:850;
  letter-spacing:0;
  line-height:1;
}

.live-card-title__venue{
  color:#202830;
  font-size:18px;
  font-weight:800;
  letter-spacing:.015em;
  overflow-wrap:anywhere;
  transition:color .18s ease;
}

.live-card-title__time{
  margin-left:auto;
  padding:3px 8px;
  border:1px solid #dce4eb;
  border-radius:999px;
  background:#f4f7fa;
  color:#687786;
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}

.live-archive .live-meta{
  margin:0;
  padding:13px 14px 16px;
  color:#414951;
  font-size:12.5px;
  line-height:1.65;
  font-feature-settings:"palt" 1;
}

.live-archive .live-meta-row{
  display:grid;
  grid-template-columns:46px minmax(0, 1fr);
  gap:9px;
  align-items:start;
  margin:0;
  padding:4px 0;
}

.live-card-meta__label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:3px 5px;
  border:1px solid #dfe7ee;
  border-radius:6px;
  background:#f1f5f8;
  color:#536b82;
  font-size:10.5px;
  font-weight:700;
  letter-spacing:.06em;
  line-height:1;
  white-space:nowrap;
}

.live-card-meta__value{
  min-width:0;
  padding-top:2px;
  color:#343b42;
  font-weight:500;
  overflow-wrap:anywhere;
}

.live-card-meta__performers{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden;
  color:#4a5159;
  line-height:1.75;
}

.live-item:hover .live-card-title__venue{
  color:#1e5ca8;
}

@media (hover:hover){
  .live-item:active{
    transform:translateY(-1px) scale(.997);
    box-shadow:0 9px 22px rgba(31,48,64,.10);
    transition-duration:.08s;
  }
}

@media (prefers-reduced-motion:reduce){
  .live-item,
  .live-item::before,
  .live-thumb img,
  .live-card-title__venue{
    transition:none;
  }

  .live-item:hover,
  .live-item:focus-within,
  .live-item:active{
    transform:none;
  }

  .live-item:hover .live-thumb img,
  .live-item:focus-within .live-thumb img{
    transform:none;
  }

}

@media (max-width:480px){
  .live-archive .live-title{
    min-height:0;
  }

  .live-card-date__monthday{
    font-size:39px;
  }

  .live-card-date__weekday{
    min-width:28px;
    min-height:28px;
    font-size:14px;
  }
}

/* 荳隕ｧ荳矩Κ・夐℃蜴ｻ蟆守ｷ・*/
.live-archive-past-link{
  margin:48px 0 16px;
  text-align:center;
}

.live-archive-past-link a{
  padding:10px 18px;
  text-decoration:none;
  border-bottom:1px solid rgba(0,0,0,.3);
  opacity:.85;
}

.live-archive-past-link a:hover{
  opacity:1;
}


/* =========================================================
   06. Single Live (single-live)
   - 隧ｳ邏ｰ繝壹・繧ｸ縺ｮ窶懈ュ蝣ｱ繧ｫ繝ｼ繝俄昴ｒ繝励Ο縺｣縺ｽ縺乗紛縺医ｋ
   ========================================================= */

/* Cocoon讓呎ｺ悶ち繧､繝医Ν繝ｻ繧｢繧､繧ｭ繝｣繝・メ縺ｯ菴ｿ繧上↑縺・ｼ郁・蜑崎｡ｨ遉ｺ縺ｫ邨ｱ荳・・*/
.single-live .entry-title,
.single-live .eye-catch{
  display:none;
}

/* 閾ｪ蜑崎ｦ句・縺暦ｼ井ｸ翫・荳陦後ち繧､繝医Ν・・*/
.single-live .live-headline{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:18px;
  align-items:center;
  margin:4px 0 20px;
  padding:18px 18px 17px;
  border:1px solid #dfe8f1;
  border-radius:14px;
  background:linear-gradient(135deg, #f7fbff 0%, #fff 58%, #f4f8fb 100%);
  box-shadow:0 10px 28px rgba(31,56,84,.08);
  font-size:24px;
  font-weight:800;
  line-height:1.35;
}

.live-headline__primary{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:.3em .55em;
}

.live-headline__date{
  color:#29445f;
  letter-spacing:.015em;
}

.live-detail-date{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
  min-width:118px;
  padding:2px 2px 4px;
  color:#17324f;
  font-variant-numeric:tabular-nums;
  line-height:1;
}

.live-detail-date__year{
  display:block;
  color:#48627d;
  font-size:16px;
  font-weight:800;
  letter-spacing:.04em;
}

.live-detail-date__main{
  display:flex;
  align-items:flex-end;
  gap:9px;
}

.live-detail-date__monthday{
  color:#17324f;
  font-size:54px;
  font-weight:850;
  letter-spacing:0;
  line-height:.95;
}

.live-detail-date__weekday{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  min-height:34px;
  margin-bottom:4px;
  padding:3px 6px;
  border:2px solid #2e567b;
  border-radius:9px;
  background:#f7fbff;
  color:#254a70;
  font-size:17px;
  font-weight:850;
  letter-spacing:0;
  line-height:1;
}

.live-headline__body{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
}

.live-headline__venue{
  display:block;
  color:#20262d;
  font-size:28px;
  font-weight:850;
  letter-spacing:.01em;
  overflow-wrap:anywhere;
}

.live-headline__event{
  display:block;
  margin-top:8px;
  padding-left:13px;
  border-left:3px solid #8da9c4;
  color:#35485b;
  font-size:18px;
  font-weight:700;
  line-height:1.5;
  overflow-wrap:anywhere;
}

.live-headline__time{
  display:inline-block;
  margin-top:12px;
  padding:4px 10px;
  border:1px solid #d7e0e9;
  border-radius:999px;
  background:#f5f8fb;
  color:#627080;
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  line-height:1.4;
  vertical-align:top;
}

.live-countdown{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:10px;
  padding:7px 10px;
  border:1px solid #dce7f0;
  border-radius:9px;
  background:#f8fbfd;
  color:#284a68;
  font-size:13px;
  font-weight:800;
  letter-spacing:.02em;
  line-height:1.25;
  font-variant-numeric:tabular-nums;
}

.live-countdown__label{
  color:#6f8191;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
}

.live-countdown__value{
  color:#17324f;
}

.live-countdown.is-starting{
  border-color:#d9e6d6;
  background:#f7fbf5;
  color:#31542f;
}

.live-countdown.is-starting .live-countdown__value{
  color:#31542f;
}

.live-today-badge{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  margin-top:10px;
  padding:7px 11px;
  border:1px solid #d9e6d6;
  border-radius:999px;
  background:#f7fbf5;
  color:#31542f;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  line-height:1.25;
}

.live-exception-badges{
  display:inline-flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}

.live-exception-badges--headline{
  margin-top:10px;
}

.live-exception-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:5px 9px;
  border:1px solid #d9e2ea;
  border-radius:999px;
  background:#f7f9fb;
  color:#536679;
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  line-height:1.25;
}

.live-list-exception{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:7px;
}

@media (max-width:480px){
  .single-live .live-headline{
    grid-template-columns:1fr;
    gap:10px;
    margin-top:2px;
    padding:15px 14px 16px;
    font-size:21px;
  }

  .live-detail-date{
    min-width:0;
  }

  .live-detail-date__monthday{
    font-size:46px;
  }

  .live-detail-date__weekday{
    min-width:30px;
    min-height:30px;
    font-size:15px;
  }

  .live-headline__venue{
    font-size:23px;
  }

  .live-headline__event{
    font-size:16px;
  }

  .live-countdown{
    width:100%;
    justify-content:space-between;
    gap:10px;
    font-size:12.5px;
  }

  .live-today-badge{
    width:100%;
    justify-content:center;
  }
}

/* ---------- 06-1. 繝｡繧ｿ諠・ｱ・医ヵ繝ｩ繧､繝､繝ｼ逶ｴ荳九・諠・ｱ繝悶Ο繝・け・・---------- */

.live-detail-meta{
  margin:26px 0 18px;
  padding:16px 16px 12px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.05);
  max-width:860px; /* Cocoon縺ｮ蟷・↓鬥ｴ譟薙∪縺帙ｋ */
}

/* 繝輔Λ繧､繝､繝ｼ縺ｮ繧ｫ繝ｼ繝画─・亥ｽｱ縺ｯ謗ｧ縺医ａ・・*/
.live-detail-flyer{
  margin:14px 0 18px !important;
}

.live-detail-flyer img{
  width:100%;
  height:auto;
  display:block;
  border-radius:14px;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
}

/* 2譫夂岼・医ち繧､繝繝・・繝悶Ν遲会ｼ峨・窶懆ｳ・侭窶昴→縺励※霆ｽ縺・*/
.live-detail-flyer--secondary img{
  box-shadow:none;
  border:1px solid rgba(0,0,0,.10);
}

/* 繝ｩ繧､繝匁ュ蝣ｱ縺ｯ縲∽ｸ譫壹・繧ｫ繝ｼ繝牙・縺ｧ髱吶°縺ｫ蛹ｺ蛻・ｋ */
.live-detail-meta > .live-meta-row{
  display:grid;
  grid-template-columns:72px minmax(0, 1fr);
  gap:14px;
  align-items:start;
  margin:0;
  padding:14px 10px;
  border-top:1px solid #e8ebef;
  background:#fff;
  line-height:1.75;
  font-size:0.98rem;
  letter-spacing:.01em;
}

.live-detail-meta > .live-meta-row:last-of-type{
  border-bottom:1px solid #e8ebef;
}

.live-meta-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:4px 8px;
  border-radius:7px;
  background:#eef3f9;
  color:#465a72;
  font-size:0.86rem;
  font-weight:700;
  letter-spacing:.08em;
  white-space:nowrap;
}

.live-meta-content{
  min-width:0;
  padding-top:2px;
  color:#262a2f;
}

.live-meta-row--date .live-meta-content,
.live-meta-row--time .live-meta-content{
  font-weight:600;
}

.live-venue-name{
  font-weight:700;
}

.live-venue-address{
  margin-top:3px;
  color:#4f555d;
}

.live-venue-links{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:7px;
}

.live-detail-meta .live-venue-links a{
  display:inline-block;
  margin-top:0;
  padding:6px 12px;
  border:1px solid #dbe6ff;
  border-radius:999px;
  background:#f7f9ff;
  color:#1e6bd6;
  font-size:0.92rem;
  line-height:1;
  text-decoration:none;
}

.live-detail-meta .live-venue-links a:hover{
  background:#eef3ff;
  color:#144fa8;
}

.live-map-embed{
  margin:14px 0 4px 86px;
  border:1px solid #dfe7ee;
  border-radius:12px;
  overflow:hidden;
  background:#f6f8fa;
  box-shadow:0 8px 22px rgba(31,48,64,.06);
}

.live-map-embed iframe{
  display:block;
  width:100%;
  height:260px;
  border:0;
}

.live-access-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:12px 0 18px 86px;
  padding:10px 12px;
  border:1px solid #e1e9ef;
  border-radius:10px;
  background:#fbfdff;
}

.live-access-label{
  margin-right:2px;
  color:#607084;
  font-size:0.86rem;
  font-weight:800;
  line-height:1.4;
}

.live-access-links a,
.live-copy-address{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  margin:0;
  padding:5px 11px;
  border:1px solid #d5e2ee;
  border-radius:999px;
  background:#fff;
  color:#315f87;
  font:inherit;
  font-size:0.9rem;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  cursor:pointer;
}

.live-access-links a,
.live-detail-meta .live-access-links a[href*="google.com/maps"],
.live-detail-meta .live-access-links a[href*="goo.gl/maps"],
.live-detail-meta .live-access-links a[href*="maps.app.goo.gl"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:0;
  padding:5px 11px;
  border:1px solid #d5e2ee;
  border-radius:8px;
  background:#fff;
  line-height:1;
}

.live-access-links a:hover,
.live-copy-address:hover{
  border-color:#9ebfd9;
  background:#f4f9fd;
  color:#174f78;
}

.live-copy-address__status{
  color:#637481;
  font-size:0.84rem;
  line-height:1.5;
}

.live-detail-updated{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  margin:14px 0 26px;
  color:#6f7f88;
  font-size:12px;
  line-height:1.5;
}

.live-detail-updated__label{
  font-weight:800;
}

.live-detail-updated time{
  font-variant-numeric:tabular-nums;
}

.live-performers__list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  line-height:1.5;
}

.live-detail-meta > .live-meta-row.live-performers{
  display:flex;
  flex-flow:row nowrap;
  align-items:flex-start;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #dfe7ee;
  background:linear-gradient(180deg,#fbfdff 0%,#fff 72%);
}

.live-performers .live-meta-label{
  flex:0 0 72px;
}

.live-performers__list{
  flex:1 1 auto;
  font-size:1.08rem;
  font-weight:600;
}

.live-performer{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:5px 11px;
  border:1px solid #cfe0ef;
  border-radius:999px;
  background:linear-gradient(180deg,#fff,#f7fbff);
  box-shadow:0 4px 10px rgba(45,91,128,.05);
  color:#1d5f9f;
  font-weight:700;
  line-height:1.35;
}

.live-performer--main{
  border-color:#b9d2e8;
  background:linear-gradient(180deg,#eef7ff,#fff);
  color:#263947;
  font-weight:800;
}

.live-detail-meta a.live-performer{
  color:#1d5f9f;
  border-bottom:1px solid #cfe0ef;
}

.live-detail-meta a.live-performer:hover{
  border-color:#9ebfd9;
  border-bottom-color:#9ebfd9;
  background:#f0f7fd;
  color:#174f78;
  text-decoration:none;
}

.live-performer__sep{
  display:none;
}

/* 繝｡繧ｿ蜀・Μ繝ｳ繧ｯ・壻ｸ狗ｷ壹ｒ窶懃ｷ壺昴〒荳雁刀縺ｫ */
.live-detail-meta a{
  color:#1e6bd6;
  text-decoration:none;
  border-bottom:1px solid rgba(30,107,214,.35);
}

.live-detail-meta a:hover{
  color:#144fa8;
  border-bottom-color:rgba(20,79,168,.55);
}

/* Google繝槭ャ繝励Μ繝ｳ繧ｯ縺縺鯛懊・繧ｿ繝ｳ縺｣縺ｽ縺鞘・*/
.live-detail-meta a[href*="google.com/maps"],
.live-detail-meta a[href*="goo.gl/maps"],
.live-detail-meta a[href*="maps.app.goo.gl"]{
  display:inline-block;
  margin-top:6px;
  padding:6px 12px;
  border-radius:999px;
  background:#f7f9ff;
  border:1px solid #dbe6ff;
  color:#1e6bd6;
  font-size:0.92rem;
  line-height:1;
}

.live-detail-meta a[href*="google.com/maps"]:hover,
.live-detail-meta a[href*="goo.gl/maps"]:hover,
.live-detail-meta a[href*="maps.app.goo.gl"]:hover{
  background:#eef3ff;
}

.live-detail-meta .live-venue-links a,
.live-detail-meta .live-venue-links a[href*="google.com/maps"],
.live-detail-meta .live-venue-links a[href*="goo.gl/maps"],
.live-detail-meta .live-venue-links a[href*="maps.app.goo.gl"]{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  margin-top:0;
  padding:6px 12px;
  line-height:1;
}

.live-detail-meta .live-venue-links a:hover,
.live-detail-meta .live-venue-links a[href*="google.com/maps"]:hover,
.live-detail-meta .live-venue-links a[href*="goo.gl/maps"]:hover,
.live-detail-meta .live-venue-links a[href*="maps.app.goo.gl"]:hover{
  background:#eef3ff;
  color:#144fa8;
}

@media (max-width:480px){
  .live-detail-meta{
    padding:12px;
  }

  .live-detail-meta > .live-meta-row{
    grid-template-columns:1fr;
    gap:7px;
    padding:12px 0;
  }

  .live-map-embed{
    margin-left:0;
  }

  .live-access-links{
    margin-left:0;
  }

  .live-map-embed iframe{
    height:220px;
  }

  .live-meta-label{
    justify-content:flex-start;
    width:max-content;
    max-width:100%;
    min-height:28px;
    padding:3px 8px;
    font-size:0.82rem;
  }

  .live-meta-content{
    padding-top:0;
  }

  .live-detail-meta > .live-meta-row.live-performers{
    flex-direction:column;
    gap:9px;
    padding-right:0;
    padding-left:0;
  }

  .live-performers .live-meta-label{
    flex-basis:auto;
  }

  .live-performers__list{
    width:100%;
  }
}

/* 繝輔Λ繧､繝､繝ｼ縺ｨ縺ｮ窶懈磁霑代＠縺吶℃窶昴ｒ蝗樣∩・郁ｦ九◆逶ｮ縺ｮ蜻ｼ蜷ｸ・・*/
.live-detail-meta + .live-section,
.live-detail-meta + .entry-content{
  margin-top:24px;
}


/* ---------- 06-2. 蜈ｱ騾壹そ繧ｯ繧ｷ繝ｧ繝ｳ・医・縺ｨ縺薙→ / Photos / Videos・・---------- */

.live-section{
  margin:22px 0;
  padding:16px 14px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
}

.live-section__title{
  margin:0 0 12px;
  font-size:16px;
  font-weight:700;
  line-height:1.4;
}

/* 縺ｲ縺ｨ縺薙→ */
.live-note__label{
  font-size:12px;
  opacity:.7;
  margin-bottom:8px;
  letter-spacing:.02em;
}

.live-note__text{
  font-size:15px;
  line-height:1.85;
  padding:2px 0;
}

/* Photos・育┌譁僊CF・嗟ive_photo_1縲懈Φ螳夲ｼ・*/
.live-photos__grid{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:10px;
}

.live-photos__item{
  display:block;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.08);
  background:#f6f6f6;
}

.live-photos__item img{
  width:100%;
  height:auto;
  display:block;
}

/* 窶懊け繝ｪ繝・け縺ｧ諡｡螟ｧ窶昴・豌鈴・・・ightbox諠ｳ螳夲ｼ・*/
.live-photos__item{
  cursor:zoom-in;
}

@media (min-width:768px){
  .live-photos__grid{
    grid-template-columns:repeat(3, 1fr);
    gap:12px;
  }
}

/* Videos・・Embed・・*/
.live-videos__list{
  display:grid;
  gap:14px;
}

.live-videos__item iframe,
.live-videos__item video,
.live-videos__item embed,
.live-videos__item object{
  width:100% !important;
  max-width:100%;
  border:0;
  border-radius:14px;
}

.live-videos__item > *{
  margin:0;
}

.live-videos__item a{
  word-break:break-all;
  text-decoration:underline;
}

/* 髢｢騾｣縺吶ｋ繝ｩ繧､繝厄ｼ亥・貍碑・挨縺ｮ驕主悉蜈ｱ貍費ｼ・*/
.mei-related-lives{
  margin-top:36px;
  padding:20px 18px;
  border-color:#dde7ef;
  background:linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.mei-related-lives__groups{
  display:grid;
  gap:18px;
}

.mei-related-lives__group{
  position:relative;
  overflow:hidden;
  padding:17px 16px;
  border:1px solid #e3ebf1;
  border-radius:10px;
  background:#fff;
}

.mei-related-lives__group--repeat{
  padding-left:20px;
  border-color:#bfd7e8;
  background:linear-gradient(180deg, #fbfdff 0%, #f6fbff 100%);
  box-shadow:0 6px 18px rgba(62, 108, 143, .07);
}

.mei-related-lives__group--repeat::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  width:5px;
  background:#66a8d6;
}

.mei-related-lives__group--many{
  border-color:#b5cfe3;
  background:linear-gradient(180deg, #fbfdff 0%, #eef8ff 100%);
}

.mei-related-lives__group--many::before{
  background:#407fae;
}

.mei-related-lives__group:last-child{
  border-bottom-width:1px;
}

.mei-related-lives__group-head{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:8px;
  margin-bottom:12px;
}

.mei-related-lives__performer-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.mei-related-lives__performer{
  min-width:0;
  margin:0;
  color:#263947;
  font-size:16px;
  font-weight:800;
  line-height:1.5;
}

.mei-related-lives__performer a{
  color:inherit;
  text-decoration:none;
}

.mei-related-lives__performer a:hover{
  color:#315f87;
  text-decoration:underline;
}

.mei-related-lives__count{
  flex:0 0 auto;
  min-width:48px;
  padding:3px 8px;
  border:1px solid #bdd5e7;
  border-radius:999px;
  background:#fff;
  color:#2e5f86;
  font-size:12px;
  font-weight:800;
  line-height:1.4;
  text-align:center;
}

.mei-related-lives__badges{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.mei-related-lives__badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 9px;
  border:1px solid transparent;
  border-radius:999px;
  font-size:11.5px;
  font-weight:700;
  line-height:1.4;
  cursor:default;
}

.mei-related-lives__badge--moment{
  border-color:#c7d9e8;
  background:#edf5fb;
  color:#2e5f86;
}

.mei-related-lives__group--repeat .mei-related-lives__badge--moment{
  border-color:#8fbfdd;
  background:#dff0fb;
  color:#1f5d87;
}

.mei-related-lives__group--many .mei-related-lives__badge--moment{
  border-color:#6fa6c9;
  background:#cfe8f8;
  color:#174f77;
}

.mei-related-lives__badge--interval{
  border-color:#d8e0cc;
  background:#f4f8ee;
  color:#667646;
}

.mei-related-lives__badge--total{
  border-color:#e1e6ea;
  background:#f7f9fa;
  color:#65727c;
}

.mei-related-lives__history{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(192, 211, 225, .68);
}

.mei-related-lives__history-title{
  margin:0 0 6px;
  color:#667888;
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1.5;
}

.mei-related-lives__list{
  list-style:none;
  margin:0;
  padding:0 0 0 12px;
  border-left:2px solid #d7e6f1;
}

.mei-related-lives__item{
  position:relative;
  margin:0;
  padding:5px 0 5px 12px;
  border-radius:6px;
  font-size:13.5px;
  line-height:1.65;
  transition:background-color .16s ease;
}

.mei-related-lives__item::before{
  content:"";
  position:absolute;
  top:1.1em;
  left:-17px;
  width:7px;
  height:7px;
  border:2px solid #a9c8de;
  border-radius:50%;
  background:#fff;
  transition:background-color .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.mei-related-lives__link{
  display:inline-block;
  padding:2px 4px;
  border-radius:4px;
  color:#315f87;
  font-weight:500;
  text-decoration:none;
  text-underline-offset:.22em;
  transition:background-color .16s ease, color .16s ease, text-decoration-color .16s ease, transform .16s ease;
}

.mei-related-lives__item:has(.mei-related-lives__link:hover),
.mei-related-lives__item:has(.mei-related-lives__link:focus-visible){
  background:rgba(184,137,91,.12);
}

.mei-related-lives__item:has(.mei-related-lives__link:hover)::before,
.mei-related-lives__item:has(.mei-related-lives__link:focus-visible)::before{
  border-color:#b8895b;
  background:#fff7ec;
  box-shadow:0 0 0 3px rgba(184,137,91,.16);
}

.mei-related-lives__link:hover,
.mei-related-lives__link:focus-visible{
  background:rgba(184,137,91,.12);
  transform:translateX(3px);
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
}

.mei-related-lives__note{
  margin:20px 0 0;
  padding:13px 14px;
  border:1px solid #e5eaee;
  border-radius:8px;
  background:#fbfcfd;
  color:#7d8993;
  font-size:11.5px;
  line-height:1.8;
}

@media (max-width:480px){
  .mei-related-lives{
    padding:17px 14px;
  }

  .mei-related-lives__group{
    padding:15px 13px;
  }

  .mei-related-lives__group--repeat{
    padding-left:17px;
  }

  .mei-related-lives__performer-row{
    gap:8px;
  }

  .mei-related-lives__count{
    min-width:44px;
    padding-right:7px;
    padding-left:7px;
  }
}

@media (prefers-reduced-motion:reduce){
  .mei-related-lives__link{
    transition:none;
  }

  .mei-related-lives__link:hover{
    transform:none;
  }
}


/* =========================================================
   07. Upcoming List・医す繝ｧ繝ｼ繝医さ繝ｼ繝・ [mei_upcoming_live_list]・・   - 窶懃ｴ莠ｺ縺｣縺ｽ縺・ｮ・擅譖ｸ縺坂昴°繧峨∵而縺医ａ縺ｫ謨ｴ縺｣縺溘Μ繧ｹ繝医∈
   - 蜃ｺ蜉姨TML: .mei-upcoming-list / .mei-upcoming-list__items / li / a
   ========================================================= */

.mei-upcoming-list{
  margin:34px 0 0;
  padding:18px 16px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
}

/* 繧ｿ繧､繝医Ν・医≠縺ｪ縺溘′h2縺ｧ蜃ｺ縺励※縺・ｋ .live-nextlist-title 繧呈ｴｻ縺九☆・・*/
.live-nextlist-title{
  margin:0 0 12px;
  padding:0 0 10px;
  font-size:1.05rem;
  font-weight:800;
  letter-spacing:.04em;
  border-bottom:1px solid rgba(0,0,0,.10);
}

/* 繝ｪ繧ｹ繝・*/
.mei-upcoming-list__items{
  list-style:none;
  margin:0;
  padding:0;
}

/* 蜷・｡・*/
.mei-upcoming-list__item{
  margin:0;
  padding:10px 0;
  border-bottom:1px dotted rgba(0,0,0,.12);
  font-size:0.95rem;     /* 窶懈ｵｮ縺・※繧銀晏撫鬘後・縺薙％縺ｧ邨ｱ荳 */
  line-height:1.6;
}

.mei-upcoming-list__item:last-child{
  border-bottom:none;
}

/* 繝ｪ繝ｳ繧ｯ・磯搨縺ｯ邯ｭ謖√√〒繧や懊・繧ｿ髱停昴〒鬨偵′縺ｪ縺・ｼ・*/
.mei-upcoming-list__item a{
  color:#1e6bd6;
  text-decoration:none;
  border-bottom:1px solid rgba(30,107,214,.30);
}

.mei-upcoming-list__item a:hover{
  color:#144fa8;
  border-bottom-color:rgba(20,79,168,.55);
}

.mei-live-schedule-line{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  align-items:center;
  column-gap:.72em;
  row-gap:.22em;
}

.mei-live-schedule-line > span{
  position:relative;
  min-width:0;
}

.mei-live-schedule-line__details{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  column-gap:.7em;
  row-gap:.22em;
  min-width:0;
}

.mei-live-schedule-line__details > span + span::before{
  content:"";
  display:inline-block;
  width:4px;
  height:4px;
  margin:0 .7em .16em 0;
  border-radius:50%;
  background:rgba(83,123,157,.45);
  vertical-align:middle;
}

.mei-live-schedule-line__date{
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}

.mei-live-schedule-line__time{
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
}

.mei-live-schedule-line__clock{
  display:inline-block;
  width:.86em;
  height:.86em;
  margin-right:.35em;
  border:1.5px solid currentColor;
  border-radius:50%;
  opacity:.68;
  background:
    linear-gradient(currentColor,currentColor) 50% 24% / 1px 34% no-repeat,
    linear-gradient(currentColor,currentColor) 50% 50% / 30% 1px no-repeat;
}

.mei-screen-reader-text{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(1px,1px,1px,1px);
  white-space:nowrap;
}

/* =========================================================
   Upcoming Live List : 譯亥・譁・ｼ域ｳｨ驥茨ｼ・   ========================================================= */

.mei-upcoming-list__note{
  margin: 0 0 1.2em;
  font-size: 0.9rem;        /* 譛ｬ譁・ｈ繧雁ｰ代＠蟆上＆縺・*/
  line-height: 1.7;
  color: #666;              /* 荳ｻ蠑ｵ縺励☆縺弱↑縺・げ繝ｬ繝ｼ */
}

/* 繝ｪ繝ｳ繧ｯ縺ｯ譛ｬ譁・ｈ繧雁ｰ代＠縺縺大ｼｷ隱ｿ */
.mei-upcoming-list__note a{
/*  color: inherit; */
  text-decoration: underline;
}
.mei-upcoming-list__note a:hover{
  opacity: 0.75;
}










/* ===== /live-list 繝ｪ繧ｹ繝郁｡ｨ遉ｺ ===== */

.live-list-wrap{
  max-width: 1100px;
  margin: 0 auto;
}

.live-list{
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  overflow: hidden;
}

.live-list-head,
.live-list-row{
  display: grid;
  grid-template-columns: 160px 1fr 260px; /* 譌･莉・/ 莨壼ｴ / 繧ｿ繧､繝医Ν / 蜃ｺ貍・*/
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
}

.live-list-head{
  background: #f6f6f6;
  font-weight: 700;
}

.live-list-row{
  border-top: 1px solid #eee;
  text-decoration: none;
}

.live-list-row:hover{
  background: #fafafa;
}

/* 髟ｷ縺・枚蟄怜ｯｾ遲・*/
.col-venue,
.col-title,
.col-performers{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}



/* 繧ｹ繝槭・・・蛻励↓縺励※諠・ｱ縺ｮ鬆・分繧呈紛縺医ｋ */
@media (max-width: 768px){
  .live-list-head{ display: none; }

  .live-list-row{
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .col-date{
    font-weight: 700;
  }

  .col-venue,
  .col-title,
  .col-performers{
    white-space: normal;
  }
}


.live-list-head,
.live-list-row{
display:grid;
grid-template-columns:160px 1fr 260px;
gap:12px;
align-items:center;
padding:12px 14px;
}

.venue-name{
font-weight:600;
}

.venue-title{
font-size:0.9em;
opacity:0.8;
margin-top:3px;
}
























/* ===== /live-list Controls ===== */
.live-list-controls{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  justify-content:space-between;
  align-items:center;
  margin:14px 0 18px;
}

.live-year-nav,
.live-pp-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}

.live-year-nav a,
.live-pp-nav a{
  display:inline-block;
  padding:4px 10px;
  border:1px solid #ddd;
  border-radius:999px;
  text-decoration:none;
  line-height:1.2;
}

.live-year-nav a.is-current,
.live-pp-nav a.is-current{
  font-weight:700;
}

.live-year-nav .cnt{
  opacity:.75;
  font-size:.9em;
}

/* ===== /live-list table layout (3 cols) ===== */
.live-list{
  border:1px solid #e6e6e6;
  border-radius:10px;
  overflow:hidden;
}

.live-list-head,
.live-list-row{
  display:grid;
  grid-template-columns:160px 1fr 260px;
  gap:12px;
  align-items:center;
  padding:12px 14px;
}

.live-list-head{
  background:#f6f6f6;
  font-weight:700;
}

.live-list-row{
  border-top:1px solid #eee;
  text-decoration:none;
}

.live-list-row:hover{
  background:#fafafa;
}

.venue-name{ font-weight:600; }
.venue-title{ font-size:.9em; opacity:.8; margin-top:3px; }



/* ===== mobile ===== */
@media (max-width: 768px){
  .live-list-head{ display:none; }
  .live-list-row{
    grid-template-columns:1fr;
    gap:6px;
  }
  .col-date{ font-weight:700; }
}


.live-list-wrap .pagination { border: 0; background: transparent; }

/* ===== /live-list 繝ｩ繧､繝門ｱ･豁ｴ讀懃ｴ｢ ===== */
.live-search-intro{
  margin: -4px 0 20px;
  color: #555;
  line-height: 1.8;
}

.live-history-search{
  display: grid;
  grid-template-columns: minmax(240px, 2fr) repeat(3, minmax(120px, .7fr));
  gap: 14px;
  align-items: end;
  margin: 0 0 18px;
  padding: 20px;
  border: 1px solid rgba(0,0,0,.09);
  border-radius: 14px;
  background: #f8f9fb;
  box-shadow: 0 8px 24px rgba(0,0,0,.04);
}

.live-history-search label{
  display: block;
  margin-bottom: 7px;
  font-size: .9rem;
  font-weight: 700;
}

.live-history-search input[type="search"],
.live-history-search select{
  width: 100%;
  min-height: 46px;
  padding: 9px 12px;
  border: 1px solid #ccd1d8;
  border-radius: 8px;
  background: #fff;
  color: #222;
}

.live-history-search input[type="search"]:focus,
.live-history-search select:focus{
  border-color: #1e6bd6;
  outline: 3px solid rgba(30,107,214,.14);
}

.live-history-search__actions{
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.live-history-search__actions button{
  min-height: 44px;
  padding: 10px 20px;
  border: 0;
  border-radius: 8px;
  background: #1e6bd6;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.live-history-search__actions button:hover{
  background: #144fa8;
}

.live-history-search__actions a{
  color: #555;
  font-size: .92rem;
}

.mei-live-history-link{
  margin: 18px 0 0;
  text-align: center;
}

.mei-live-history-link a{
  display: inline-block;
  padding: 10px 18px;
  border: 1px solid #1e6bd6;
  border-radius: 999px;
  color: #1e6bd6;
  font-weight: 700;
  text-decoration: none;
}

.mei-live-history-link a:hover{
  background: #1e6bd6;
  color: #fff;
}

.live-search-summary{
  margin: 14px 0 12px;
  color: #555;
}

.live-search-summary strong{
  color: #222;
  font-size: 1.08em;
}

.live-search-empty{
  padding: 24px;
  border: 1px solid #e3e5e8;
  border-radius: 12px;
  background: #fafafa;
}

.live-search-empty p{
  margin: 0;
}

.live-search-empty p + p{
  margin-top: 8px;
  color: #666;
  font-size: .92rem;
}

@media (max-width: 768px){
  .live-history-search{
    grid-template-columns: 1fr 1fr;
    padding: 16px;
  }

  .live-history-search__keyword{
    grid-column: 1 / -1;
  }
}

@media (max-width: 480px){
  .live-history-search{
    grid-template-columns: 1fr;
  }

  .live-history-search__keyword,
  .live-history-search__actions{
    grid-column: auto;
  }

  .live-history-search__actions button{
    width: 100%;
  }
}





/* archive header */
.mei-archive-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px;
}

/* 縲悟・繝ｩ繧､繝悶Μ繧ｹ繝郁｡ｨ遉ｺ縲阪Μ繝ｳ繧ｯ */
.mei-archive-head-link{
  font-size:16px;
  font-weight:600;
  color:#2563eb;
  text-decoration:none;
}

.mei-archive-head-link:hover{
  text-decoration:underline;
}

.live-list-link{
    font-size:16px;
    font-weight:600;
    padding:6px 12px;
    border:1px solid #ddd;
    border-radius:6px;
    background:#f8f8f8;
    text-decoration:none;
}

.live-list-link:hover{
    background:#eee;
}

/* =========================================================
   Front Page Editorial Design
   ========================================================= */
.home #main{
  --home-ink:#23313d;
  --home-muted:#6d7a86;
  --home-accent:#557b9d;
  --home-line:#e2e8ed;
  background:transparent;
}

.home .article{
  padding:clamp(24px, 4vw, 54px);
  border:1px solid rgba(45,66,83,.08);
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 48px rgba(30,47,62,.06);
}

.home .article-header{display:none;}
.home .entry-content{color:var(--home-ink);}
.home .entry-content > .wp-block-spacer{display:none;}

/* 繧｢繝ｼ繧ｫ繧､繝匁､懃ｴ｢ */
.home .entry-content > .wp-block-search{
  position:relative;
  margin:0 0 34px;
  padding:22px 24px 24px;
  border:1px solid var(--home-line);
  border-radius:18px;
  background:linear-gradient(135deg, #f7f9fb 0%, #fff 72%);
  box-shadow:0 10px 28px rgba(38,57,73,.055);
}

.home .wp-block-search__label{
  display:block;
  margin-bottom:10px;
  color:#3b5266;
  font-size:13px;
  font-weight:700;
  letter-spacing:.06em;
}

.home .wp-block-search__inside-wrapper{width:100% !important;gap:10px;}

.home .wp-block-search__input{
  min-height:52px;
  padding:12px 16px;
  border:1px solid #cfd8df;
  border-radius:10px;
  background:#fff;
  color:var(--home-ink);
  box-shadow:inset 0 1px 2px rgba(37,55,69,.035);
  transition:border-color .18s ease, box-shadow .18s ease;
}

.home .wp-block-search__input:focus{
  border-color:#7194b2;
  outline:none;
  box-shadow:0 0 0 4px rgba(85,123,157,.12);
}

.home .wp-block-search__button{
  min-width:92px;
  min-height:52px;
  margin:0;
  padding:11px 20px;
  border:1px solid #2d465b;
  border-radius:10px;
  background:#2d465b;
  color:#fff;
  font-weight:700;
  letter-spacing:.06em;
  box-shadow:0 8px 18px rgba(34,57,75,.16);
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.home .wp-block-search__button:hover{
  transform:translateY(-1px);
  background:#20384c;
  box-shadow:0 11px 22px rgba(34,57,75,.2);
}

/* 繧ｵ繧､繝育ｴｹ莉具ｼ区怙霑代・險倬鹸 */
.home .entry-content > .column-wrap:has(.info-list-box){
  display:grid !important;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  gap:22px;
  margin:0 0 58px;
}

.home .entry-content > .column-wrap:has(.info-list-box) > .column-left,
.home .entry-content > .column-wrap:has(.info-list-box) > .column-right{
  width:auto;
  margin:0;
  border-radius:19px;
}

.home .entry-content > .column-wrap:has(.info-list-box) > .column-left{
  position:relative;
  overflow:hidden;
  padding:34px 32px;
  background:linear-gradient(145deg, #263e52 0%, #35546d 100%);
  color:#fff;
  box-shadow:0 16px 34px rgba(32,57,76,.16);
}

.home .entry-content > .column-wrap:has(.info-list-box) > .column-left::before{
  content:"縺薙・繧ｵ繧､繝医↓縺､縺・※";
  display:block;
  margin-bottom:24px;
  color:#c9dae8;
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
}

.home .entry-content > .column-wrap:has(.info-list-box) > .column-left::after{
  content:"";
  position:absolute;
  right:-45px;
  bottom:-60px;
  width:180px;
  height:180px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:50%;
}

.home .next-live-head{
  position:relative;
  z-index:1;
  margin:0;
  color:rgba(255,255,255,.92);
  font-size:15px;
  line-height:2;
  letter-spacing:.025em;
}

.home .next-live-head + .next-live-head{
  margin-top:19px;
  padding-top:19px;
  border-top:1px solid rgba(255,255,255,.16);
}

.home .entry-content > .column-wrap:has(.info-list-box) > .column-right{
  position:relative;
  padding:27px 28px 20px;
  border:1px solid var(--home-line);
  background:#fff;
  box-shadow:0 12px 30px rgba(39,57,72,.055);
}

.home .entry-content > .column-wrap:has(.info-list-box) > .column-right::before{
  content:"譛霑代・險倬鹸";
  display:block;
  margin-bottom:14px;
  color:#2b4052;
  font-size:17px;
  font-weight:800;
  letter-spacing:.04em;
}

.home .info-list-box,.home .info-list{margin:0;border:0 !important;background:transparent;}

.home .info-list-item{
  padding:14px 2px;
  border-bottom:1px solid #e6ebef !important;
  transition:transform .18s ease;
}

.home .info-list-item:last-child{border-bottom:0 !important;}
.home .info-list-item:hover{transform:translateX(3px);}

.home .info-list-item-content-link{
  color:#2a343d;
  font-size:14.5px;
  font-weight:700;
  line-height:1.55;
  text-decoration:none;
}

.home .info-list-item-content-link:hover{color:#315f87;}

.home .info-list-item-date{
  color:#89939c;
  font-size:11px;
  font-variant-numeric:tabular-nums;
}

.home .info-list-item .cat-label{
  margin-left:10px;
  padding:2px 8px;
  border:1px solid #d9e1e7;
  border-radius:999px;
  background:#f7f9fa;
  color:#72808b;
  font-size:9.5px;
}

/* 谺｡縺ｮ繝ｩ繧､繝厄ｼ夂ｫ隕句・縺・*/
.home .entry-content > p.wp-block-paragraph:not(.next-live-head){
  position:relative;
  margin:0 0 19px;
  padding-left:17px;
  color:#263947;
  font-size:20px;
  font-weight:800;
  letter-spacing:.04em;
}

.home .entry-content > p.wp-block-paragraph:not(.next-live-head)::before{
  content:"";
  position:absolute;
  top:.2em;
  bottom:.2em;
  left:0;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg, #668daf, #adc3d5);
}

/* 谺｡蝗槭Λ繧､繝厄ｼ倶ｻ雁ｾ後・莠亥ｮ・*/
.home .entry-content > .column-wrap:has(.mei-next-live){
  display:grid !important;
  grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);
  gap:24px;
  align-items:start;
  margin:0;
}

.home .entry-content > .column-wrap:has(.mei-next-live) > .column-left,
.home .entry-content > .column-wrap:has(.mei-next-live) > .column-right{width:auto;margin:0;}

.home .mei-next-live{
  overflow:visible;
  margin:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.home .mei-next-live__feature{
  position:relative;
  display:block;
  overflow:hidden;
  border:0;
  border-radius:18px;
  background:#eef2f4;
  box-shadow:0 17px 38px rgba(29,48,63,.14);
  line-height:0;
  text-decoration:none;
  transition:transform .22s cubic-bezier(.2,.7,.3,1), box-shadow .22s ease;
}

.home .mei-next-live__feature::after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(255,255,255,.4);
  border-radius:inherit;
  pointer-events:none;
}

.home .mei-next-live__feature:hover{
  transform:translateY(-4px);
  box-shadow:0 23px 46px rgba(29,48,63,.19);
}

.home .mei-next-live__feature:focus-visible{
  outline:4px solid rgba(85,123,157,.26);
  outline-offset:3px;
}

.home .mei-next-live__feature img{
  display:block;
  width:100%;
  height:auto;
  transition:transform .38s cubic-bezier(.2,.7,.3,1);
}

.home .mei-next-live__feature:hover img{
  transform:scale(1.018);
}

.home .mei-next-live__overlay{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:80px 22px 20px;
  background:linear-gradient(180deg, transparent 0%, rgba(18,32,43,.78) 62%, rgba(18,32,43,.94) 100%);
  color:#fff;
  line-height:1.55;
}

.home .mei-next-live__overlay-title{
  max-width:78%;
  font-size:17px;
  font-weight:700;
  letter-spacing:.025em;
  text-shadow:0 2px 9px rgba(0,0,0,.38);
}

.home .mei-next-live__overlay-link{
  flex:0 0 auto;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:999px;
  color:rgba(255,255,255,.92);
  font-size:10px;
  font-weight:700;
  letter-spacing:.05em;
  white-space:nowrap;
}

.home .mei-next-live__body{
  background:linear-gradient(135deg, #263f54, #365b77) !important;
}
.home .mei-next-live__title{margin:0;font-size:19px;line-height:1.55;}

.home .mei-next-live__btn{
  display:block;
  padding:20px 22px;
  border:0;
  background:linear-gradient(135deg, #263f54, #365b77) !important;
  color:#fff !important;
  font-weight:700;
  letter-spacing:.025em;
  text-decoration:none;
  text-shadow:0 1px 1px rgba(0,0,0,.18);
  opacity:1 !important;
}

.home .mei-next-live__btn:hover,
.home .mei-next-live__btn:focus{
  background:linear-gradient(135deg, #203648, #2f526c) !important;
  color:#fff !important;
  opacity:1 !important;
}

.home .mei-next-live__flyer{display:block;overflow:hidden;border:0;line-height:0;}

.home .mei-next-live__flyer img{
  display:block;
  width:100%;
  height:auto;
  transition:transform .35s cubic-bezier(.2,.7,.3,1);
}

.home .mei-next-live:hover .mei-next-live__flyer img{transform:scale(1.018);}

.home .mei-upcoming-list{
  margin:0;
  padding:4px 4px 0 8px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.home .mei-upcoming-list::before{
  content:"縺薙ｌ縺九ｉ縺ｮ莠亥ｮ・;
  display:block;
  margin-bottom:10px;
  color:#2b4052;
  font-size:17px;
  font-weight:800;
  letter-spacing:.04em;
}

.home .mei-upcoming-list__items{margin:0;padding:0;}

.home ul .mei-upcoming-list__item{
  padding:11px 0;
  border-bottom:1px solid #e8edf0;
  font-size:15px;
  line-height:1.7;
}

.home ul .mei-upcoming-list__item:first-child{
  position:relative;
  margin:2px 0 5px;
  padding:13px 12px 13px 0;
  border-bottom:1px solid rgba(83,123,157,.22);
  border-radius:0 10px 10px 0;
  background:linear-gradient(90deg, rgba(83,123,157,.12), rgba(255,255,255,.58) 72%, rgba(255,255,255,0));
}

.home .mei-upcoming-list__item a{
  display:block;
  border:0;
  color:#315f87;
  font-weight:700;
  text-decoration:none;
}

.home .mei-upcoming-list__item a:hover{color:#173f62;border:0;}

.home .mei-live-schedule-line{
  grid-template-columns:103px minmax(0,1fr);
  column-gap:.68em;
}

.home .mei-live-schedule-line__date{
  color:#24567f;
  font-size:1.04em;
  font-weight:800;
}

.home .mei-live-schedule-line__venue{
  color:#265b86;
  min-width:0;
  overflow-wrap:anywhere;
}

.home .mei-live-schedule-line__time{
  color:#24567f;
  font-weight:800;
}

.home ul .mei-upcoming-list__item:first-child .mei-live-schedule-line__date{
  justify-self:start;
  display:inline;
  min-height:0;
  padding:0;
  border-radius:0;
  background:transparent;
  color:#24567f;
}

.home .mei-live-archive-actions{
  margin-top:20px;
  padding-top:17px;
  border-top:1px solid #dfe6eb;
}

.home .mei-live-archive-actions__browse{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:13px 4px;
  border:0;
  color:#294e6d;
  text-decoration:none;
}

.home .mei-live-archive-actions__browse strong{
  display:block;
  font-size:16px;
  font-weight:800;
  letter-spacing:.03em;
}

.home .mei-live-archive-actions__browse small{
  display:block;
  margin-top:5px;
  color:#7c8994;
  font-size:13px;
  font-weight:600;
  letter-spacing:.02em;
}

.home .mei-live-archive-actions__arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border:1px solid #b9cbd9;
  border-radius:50%;
  color:#537b9d;
  font-size:15px;
  transition:transform .18s ease, background .18s ease, color .18s ease;
}

.home .mei-live-archive-actions__browse:hover{
  color:#173f62;
}

.home .mei-live-archive-actions__browse:hover .mei-live-archive-actions__arrow{
  transform:translateX(3px);
  background:#537b9d;
  color:#fff;
}

.home .mei-live-archive-actions__search{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:11px 4px 0;
  border-top:1px dotted #dfe5e9;
  color:#8a959e;
  font-size:13px;
  line-height:1.65;
}

.home .mei-live-archive-actions__search a{
  flex:0 0 auto;
  border-bottom:1px solid rgba(49,95,135,.32);
  color:#315f87;
  font-size:13.5px;
  font-weight:800;
  text-decoration:none;
}

.home .mei-live-archive-actions__search a:hover{
  border-bottom-color:#173f62;
  color:#173f62;
}

@media (max-width:768px){
  .home .article{padding:22px 18px 30px;border-radius:18px;}

  .home .entry-content > .column-wrap:has(.info-list-box),
  .home .entry-content > .column-wrap:has(.mei-next-live){grid-template-columns:1fr;}

  .home .entry-content > .column-wrap:has(.info-list-box){margin-bottom:44px;}

  .home .entry-content > .column-wrap:has(.info-list-box) > .column-left,
  .home .entry-content > .column-wrap:has(.info-list-box) > .column-right{padding:26px 22px;}
}

@media (max-width:480px){
  .home .entry-content > .wp-block-search{padding:18px;}
  .home .wp-block-search__inside-wrapper{flex-wrap:wrap;}
  .home .wp-block-search__button{width:100%;}
  .home .mei-upcoming-list{padding:22px 18px 18px;}

  .home .mei-next-live__overlay{
    display:block;
    padding:70px 16px 16px;
  }

  .home .mei-next-live__overlay-title{
    display:block;
    max-width:none;
    font-size:15px;
  }

  .home .mei-next-live__overlay-link{
    display:inline-block;
    margin-top:8px;
  }

  .home .mei-live-archive-actions__search{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
}

@media (prefers-reduced-motion:reduce){
  .home .wp-block-search__button,
  .home .info-list-item,
  .home .mei-next-live,
  .home .mei-next-live__feature,
  .home .mei-next-live__feature img,
  .home .mei-live-archive-actions__arrow,
  .home .mei-next-live__flyer img{transition:none;}

  .home .wp-block-search__button:hover,
  .home .info-list-item:hover,
  .home .mei-next-live:hover,
  .home .mei-next-live__feature:hover,
  .home .mei-next-live__feature:hover img,
  .home .mei-next-live:hover .mei-next-live__flyer img{transform:none;}
}



/* =========================================================
   Mei Home Entrance
   - 繝医ャ繝励・繝ｼ繧ｸ隨ｬ荳谿ｵ髫・ 蟆主・ / 闢・ｩ・/ 縺溘←繧句ｰ守ｷ・/ 讀懃ｴ｢
   ========================================================= */

.mei-home{
  --mei-home-ink:#243441;
  --mei-home-muted:#6f7d88;
  --mei-home-soft:#f5f8fa;
  --mei-home-line:#dfe8ee;
  --mei-home-blue:#527b9d;
  --mei-home-navy:#29475f;
  --mei-home-warm:#c99854;
  display:grid;
  gap:clamp(28px, 4vw, 48px);
  color:var(--mei-home-ink);
}

.mei-home--auto{
  margin-bottom:clamp(30px, 5vw, 56px);
}

.home .entry-content:has(.mei-home--auto) > .column-wrap:has(.info-list-box){
  display:none !important;
}

.home .entry-content:has(.mei-home--auto) > .wp-block-search{
  display:none !important;
}

.mei-home a{
  text-decoration:none;
}

.mei-home-kicker{
  margin:0 0 9px;
  color:var(--mei-home-blue);
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  line-height:1.4;
  text-transform:uppercase;
}

.mei-home-section-head{
  max-width:760px;
  margin:0 0 20px;
}

.mei-home-section-head h2,
.mei-home-intro h2{
  margin:0;
  color:var(--mei-home-ink);
  font-size:clamp(22px, 2.5vw, 31px);
  line-height:1.45;
  letter-spacing:.03em;
}

.mei-home-section-head p,
.mei-home-intro p{
  margin:12px 0 0;
  color:var(--mei-home-muted);
  font-size:14px;
  font-weight:500;
  line-height:1.9;
  letter-spacing:.02em;
}

.mei-home-intro{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(250px, 340px);
  gap:clamp(22px, 4vw, 44px);
  align-items:end;
  padding:clamp(28px, 5vw, 52px);
  border:1px solid rgba(82,123,157,.16);
  border-radius:22px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.98) 0%, rgba(246,250,252,.94) 62%, rgba(234,243,249,.9) 100%);
  box-shadow:0 18px 42px rgba(37,57,72,.06);
}

.mei-home-intro::after{
  content:"";
  position:absolute;
  right:clamp(18px, 5vw, 56px);
  bottom:-42px;
  width:160px;
  height:160px;
  border:1px solid rgba(82,123,157,.15);
  border-radius:50%;
  pointer-events:none;
}

.mei-home-intro__body{
  position:relative;
  z-index:1;
}

.mei-home-intro h2{
  max-width:720px;
}

.mei-home-intro p:not(.mei-home-kicker){
  max-width:760px;
  color:#4e6170;
  font-size:15px;
}

.mei-home-intro__coverage{
  position:relative;
  z-index:1;
  padding:16px;
  border:1px solid rgba(82,123,157,.16);
  border-radius:16px;
  background:rgba(255,255,255,.62);
}

.mei-home-intro__coverage-title{
  margin:0 0 11px;
  color:#6f7d88;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  line-height:1.5;
}

.mei-home-intro__coverage-list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px 12px;
  margin:0;
}

.mei-home-intro__coverage-list div{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:8px;
  padding:7px 0;
  border-bottom:1px solid rgba(82,123,157,.12);
}

.mei-home-intro__coverage-list dt{
  color:#647582;
  font-size:11px;
  font-weight:800;
  line-height:1.4;
}

.mei-home-intro__coverage-list dd{
  display:flex;
  align-items:baseline;
  gap:3px;
  margin:0;
  color:#344f65;
}

.mei-home-intro__coverage-list strong{
  font-size:18px;
  font-weight:800;
  line-height:1;
}

.mei-home-intro__coverage-list span{
  color:#7b8892;
  font-size:10px;
  font-weight:800;
}

.mei-home-intro__coverage-note{
  margin:11px 0 0;
  color:#7c8a94;
  font-size:10.5px;
  font-weight:600;
  line-height:1.75;
}

.mei-home-stats,
.mei-home-trace,
.mei-home-recent,
.mei-home-fragments,
.mei-home-search{
  padding:clamp(24px, 4vw, 38px);
  border:1px solid rgba(43,67,86,.09);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 34px rgba(37,57,72,.045);
}

.mei-home-stats__grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
}

.mei-home-stat{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:74px;
  padding:13px 15px;
  border:1px solid var(--mei-home-line);
  border-radius:13px;
  background:#fbfdfe;
  color:var(--mei-home-ink);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.mei-home-stat:hover{
  transform:translateY(-2px);
  border-color:#bdd1e0;
  box-shadow:0 12px 24px rgba(43,67,86,.075);
}

.mei-home-stat__label{
  color:#607282;
  font-size:11.5px;
  font-weight:800;
  line-height:1.55;
}

.mei-home-stat__count{
  display:flex;
  flex:0 0 auto;
  align-items:baseline;
  gap:4px;
}

.mei-home-stat__value{
  color:var(--mei-home-navy);
  font-size:clamp(20px, 2.2vw, 28px);
  font-weight:800;
  line-height:1;
  letter-spacing:.01em;
}

.mei-home-stat__unit{
  color:#7c8a94;
  font-size:11px;
  font-weight:800;
}

.mei-home-stats__note{
  margin:16px 0 0;
  padding:12px 14px;
  border:1px solid #e7edf2;
  border-radius:12px;
  background:#f8fafc;
  color:#71808b;
  font-size:12px;
  line-height:1.8;
}

.mei-home-trace__grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}

.mei-home-trace-card{
  position:relative;
  display:grid;
  align-content:start;
  min-height:172px;
  padding:20px 18px;
  border:1px solid var(--mei-home-line);
  border-radius:17px;
  background:
    linear-gradient(160deg, rgba(255,255,255,.98) 0%, rgba(247,250,252,.96) 100%);
  color:var(--mei-home-ink);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.mei-home-trace-card::after{
  content:"竊・;
  position:absolute;
  right:16px;
  bottom:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border:1px solid #c7d9e6;
  border-radius:50%;
  color:var(--mei-home-blue);
  font-weight:800;
}

.mei-home-trace-card:hover{
  transform:translateY(-3px);
  border-color:#b9d0e1;
  box-shadow:0 13px 28px rgba(43,67,86,.075);
}

.mei-home-trace-card__kicker{
  margin:0 0 13px;
  color:var(--mei-home-warm);
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
}

.mei-home-trace-card strong{
  margin:0 0 9px;
  color:#294154;
  font-size:16px;
  font-weight:800;
  line-height:1.55;
}

.mei-home-trace-card span:last-child{
  padding-right:24px;
  color:#6b7984;
  font-size:12.5px;
  font-weight:500;
  line-height:1.85;
}

.mei-home-recent__list{
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid #dce5eb;
}

.mei-home-recent__item{
  margin:0;
  border-bottom:1px solid #e7edf2;
}

.mei-home-recent__link{
  display:grid;
  grid-template-columns:190px minmax(0, 1fr);
  gap:18px;
  align-items:baseline;
  padding:14px 2px;
  color:var(--mei-home-ink);
  text-decoration:none;
  transition:color .16s ease, background .16s ease;
}

.mei-home-recent__link:hover{
  color:#244f75;
  background:linear-gradient(90deg, rgba(83,123,157,.06), rgba(83,123,157,0));
}

.mei-home-recent__meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  align-items:center;
  min-width:0;
  color:#788895;
  font-size:12px;
  font-weight:800;
  line-height:1.5;
}

.mei-home-recent__meta em,
.mei-home-recent__meta span{
  display:inline-flex;
  align-items:center;
  color:#718391;
  font-style:normal;
  line-height:1;
}

.mei-home-recent__meta em{
  min-height:19px;
  padding:1px 7px;
  border:1px solid #e4d1b4;
  border-radius:999px;
  background:#fff;
  border-color:#e4d1b4;
  color:#a36f2e;
  font-size:10px;
}

.mei-home-recent__meta span{
  font-size:11.5px;
}

.mei-home-recent__meta span::before{
  content:"/";
  margin-right:7px;
  color:#b5c1ca;
}

.mei-home-recent__link strong{
  min-width:0;
  color:#2a3d4d;
  font-size:15px;
  font-weight:800;
  line-height:1.65;
}

.mei-home-fragments{
  overflow:hidden;
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(247,250,252,.96));
}

.mei-home-fragments__grid{
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr 1fr;
  grid-auto-rows:132px;
  gap:12px;
}

.mei-home-fragment{
  overflow:hidden;
  margin:0;
  border:1px solid rgba(223,232,238,.9);
  border-radius:16px;
  background:#eef4f8;
  box-shadow:0 10px 22px rgba(43,67,86,.045);
}

.mei-home-fragment:first-child{
  grid-row:span 2;
}

.mei-home-fragment:nth-child(4){
  grid-column:span 2;
}

.mei-home-fragment img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s cubic-bezier(.2,.7,.3,1);
}

.mei-home-fragment:hover img{
  transform:scale(1.035);
}

.mei-home-search{
  background:
    linear-gradient(135deg, #f8fbfd 0%, #fff 70%);
}

.mei-home-search__form{
  display:flex;
  gap:10px;
  margin:0;
}

.mei-home-search__form input{
  flex:1 1 auto;
  min-width:0;
  min-height:54px;
  padding:12px 16px;
  border:1px solid #cddae3;
  border-radius:12px;
  background:#fff;
  color:var(--mei-home-ink);
  font-size:15px;
  box-shadow:inset 0 1px 2px rgba(37,55,69,.035);
}

.mei-home-search__form input:focus{
  border-color:#7194b2;
  outline:none;
  box-shadow:0 0 0 4px rgba(85,123,157,.12);
}

.mei-home-search__form button{
  flex:0 0 auto;
  min-width:96px;
  min-height:54px;
  padding:12px 22px;
  border:1px solid #2d465b;
  border-radius:12px;
  background:#2d465b;
  color:#fff;
  font-weight:800;
  letter-spacing:.06em;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(34,57,75,.14);
}

.mei-home-search__form button:hover{
  background:#20384c;
}

.mei-home-search__link{
  margin:13px 0 0;
  text-align:right;
}

.mei-home-search__link a{
  border-bottom:1px solid rgba(49,95,135,.32);
  color:#315f87;
  font-size:12px;
  font-weight:800;
}

.mei-home-search__link a:hover{
  border-bottom-color:#173f62;
  color:#173f62;
}

.mei-home-notice{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 20px;
  border:1px solid #e4ebf0;
  border-radius:16px;
  background:#fbfdfe;
  color:#667784;
}

.mei-home-notice .mei-home-kicker{
  margin-bottom:4px;
}

.mei-home-notice p{
  margin:0;
  font-size:12.5px;
  font-weight:600;
  line-height:1.8;
}

.mei-home-notice__links{
  display:flex;
  flex:0 0 auto;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
}

.mei-home-notice__links a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 12px;
  border:1px solid #d2e0ea;
  border-radius:999px;
  background:#fff;
  color:#315f87;
  font-size:12px;
  font-weight:800;
}

.mei-home-notice__links a:hover{
  border-color:#b5ccdd;
  background:#f3f8fb;
}

@media (max-width:900px){
  .mei-home-intro{
    grid-template-columns:1fr;
  }

  .mei-home-stats__grid,
  .mei-home-trace__grid,
  .mei-home-recent__list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .mei-home-fragments__grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    grid-auto-rows:150px;
  }

  .mei-home-fragment:first-child,
  .mei-home-fragment:nth-child(4){
    grid-column:auto;
    grid-row:auto;
  }

  .mei-home-notice{
    align-items:flex-start;
    flex-direction:column;
  }

  .mei-home-notice__links{
    justify-content:flex-start;
  }
}

@media (max-width:560px){
  .mei-home{
    gap:28px;
  }

  .mei-home-intro,
  .mei-home-stats,
  .mei-home-trace,
  .mei-home-recent,
  .mei-home-fragments,
  .mei-home-search{
    padding:22px 18px;
    border-radius:18px;
  }

  .mei-home-intro__coverage{
    padding:14px;
  }

  .mei-home-stats__grid,
  .mei-home-trace__grid,
  .mei-home-recent__list{
    grid-template-columns:1fr;
  }

  .mei-home-fragments__grid{
    grid-auto-rows:128px;
  }

  .mei-home-stat{
    min-height:0;
  }

  .mei-home-search__form{
    display:grid;
  }

  .mei-home-search__form button{
    width:100%;
  }
}

@media (prefers-reduced-motion:reduce){
  .mei-home-stat,
  .mei-home-trace-card,
  .mei-home-recent-card,
  .mei-home-fragment img{
    transition:none;
  }

  .mei-home-stat:hover,
  .mei-home-trace-card:hover,
  .mei-home-recent-card:hover,
  .mei-home-fragment:hover img{
    transform:none;
  }
}

/* Home redesign refinements */
.home .entry-content:has(.mei-home--auto) > p.wp-block-paragraph:has(+ .column-wrap .mei-next-live),
.home .entry-content:has(.mei-home--auto) > .column-wrap:has(.mei-next-live){
  display:none !important;
}

.mei-home-live-focus{
  padding:clamp(24px, 4vw, 38px);
  border:1px solid rgba(43,67,86,.09);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 34px rgba(37,57,72,.045);
}

.mei-home-live-focus__head{
  margin:0 0 20px;
}

.mei-home-live-focus__head h2{
  margin:0;
  color:var(--mei-home-ink);
  font-size:clamp(22px, 2.5vw, 31px);
  line-height:1.45;
  letter-spacing:.03em;
}

.mei-home-live-focus__grid{
  display:grid;
  grid-template-columns:minmax(0, 1.03fr) minmax(0, .97fr);
  gap:24px;
  align-items:start;
}

.mei-home-live-focus__main{
  display:grid;
  gap:76px;
}

.mei-home-live-focus .mei-next-live{
  margin:0;
}

.mei-home-live-focus .mei-upcoming-list{
  padding-top:0;
}

.mei-home-social-prompt{
  display:grid;
  gap:12px;
  padding:clamp(20px, 3vw, 30px);
  border:1px solid var(--mei-home-line);
  border-radius:16px;
  background:linear-gradient(135deg, rgba(255,254,250,.98), rgba(246,250,252,.92));
  box-shadow:0 12px 32px rgba(38,50,56,.055);
}

.mei-home-social-prompt__head{
  display:grid;
  gap:4px;
}

.mei-home-social-prompt__title{
  margin:0;
  color:#263947;
  font-size:clamp(20px, 2.3vw, 28px);
  font-weight:900;
  line-height:1.28;
}

.mei-home-social-prompt__lead{
  margin:0;
  color:#6b7a86;
  font-size:14px;
  font-weight:600;
  line-height:1.7;
}

.mei-home-social-prompt__links{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
}

.mei-home-social-card{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:center;
  gap:13px;
  min-height:128px;
  padding:18px 18px 17px;
  border:1px solid rgba(190,205,216,.96);
  border-radius:12px;
  background:#fff;
  color:#263947;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(38,50,56,.065);
  transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
}

.mei-home-social-card--x{
  --social-accent:#4c6576;
  --social-tint:rgba(76,101,118,.08);
}

.mei-home-social-card--instagram{
  --social-accent:#9a678c;
  --social-tint:rgba(154,103,140,.08);
}

.mei-home-social-card--tiktok{
  --social-accent:#497c85;
  --social-tint:rgba(73,124,133,.08);
}

.mei-home-social-card--other{
  --social-accent:#6f7f8c;
  --social-tint:rgba(111,127,140,.08);
}

.mei-home-social-card__mark{
  position:relative;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid #d7e0e8;
  border-color:color-mix(in srgb, var(--social-accent) 34%, white);
  border-radius:12px;
  background:#f3f7f8;
  background:color-mix(in srgb, var(--social-accent) 10%, white);
  color:var(--social-accent);
  font-size:21px;
  font-weight:900;
  line-height:1;
}

.mei-home-social-card--x .mei-home-social-card__mark{
  color:transparent;
}

.mei-home-social-card--x .mei-home-social-card__mark::before{
  content:"X";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--social-accent);
  font-family:Arial, Helvetica, sans-serif;
  font-size:20px;
  font-weight:800;
  line-height:1;
}

.mei-home-social-card__body{
  display:grid;
  min-width:0;
  gap:4px;
}

.mei-home-social-card__name{
  color:#243744;
  font-size:18px;
  font-weight:900;
  line-height:1.25;
}

.mei-home-social-card__description{
  color:#71808b;
  font-size:13px;
  font-weight:700;
  line-height:1.45;
}

.mei-home-social-card__cta{
  margin-top:5px;
  color:var(--social-accent);
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  line-height:1.3;
}

.mei-home-social-card__arrow{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:var(--social-accent);
  font-size:17px;
  font-weight:900;
  transition:transform .18s ease, background .18s ease;
}

.mei-home-social-card:hover,
.mei-home-social-card:focus-visible{
  transform:translateY(-3px);
  border-color:#b9cad7;
  border-color:color-mix(in srgb, var(--social-accent) 34%, #d7e0e8);
  background:#fff;
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,255,255,.92)),
    color-mix(in srgb, var(--social-accent) 8%, white);
  color:#173f62;
  box-shadow:0 14px 32px rgba(38,50,56,.09);
  outline:none;
}

.mei-home-social-card:hover .mei-home-social-card__arrow,
.mei-home-social-card:focus-visible .mei-home-social-card__arrow{
  transform:translateX(3px);
  background:#f1f6f8;
  background:color-mix(in srgb, var(--social-accent) 12%, white);
}

.mei-home-intro{
  align-items:start;
}

.mei-home-intro__body,
.mei-home-intro__coverage-wrap{
  padding-top:clamp(20px, 3.1vw, 42px);
}

.mei-home-intro__coverage-wrap{
  position:relative;
  z-index:1;
}

.mei-home-intro__coverage-date{
  margin:8px 2px 0 !important;
  color:#7c8a94 !important;
  font-size:10.5px !important;
  font-weight:700 !important;
  line-height:1.6 !important;
  text-align:right;
}

.mei-home-trace{
  padding-top:clamp(18px, 3vw, 28px);
}

.mei-home-intro + .mei-home-trace{
  margin-top:-18px;
}

.mei-home-search{
  padding-top:clamp(20px, 3vw, 30px);
}

@media (max-width:900px){
  .mei-home-live-focus__grid{
    grid-template-columns:1fr;
  }

  .mei-home-intro__body,
  .mei-home-intro__coverage-wrap{
    padding-top:0;
  }

  .mei-home-intro + .mei-home-trace{
    margin-top:0;
  }
}

@media (max-width:560px){
  .mei-home-social-prompt__links{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  .mei-home-live-focus{
    padding:18px 12px;
    border-radius:18px;
  }

  .home .mei-home-live-focus .mei-upcoming-list,
  .home .entry-content > .column-wrap:has(.mei-next-live) .mei-upcoming-list{
    width:100%;
    max-width:100%;
    padding-inline:0;
  }

  .home ul .mei-upcoming-list__item{
    padding:10px 0;
    font-size:14.5px;
    line-height:1.55;
  }

  .home ul .mei-upcoming-list__item:first-child{
    margin:0 0 3px;
    padding:11px 0;
  }

  .home .mei-live-schedule-line{
    width:100%;
    grid-template-columns:1fr;
    align-items:start;
    row-gap:3px;
  }

  .home .mei-live-schedule-line__date{
    font-size:1.12em;
    line-height:1.25;
  }

  .home .mei-live-schedule-line__details{
    row-gap:2px;
  }

  .home .mei-live-schedule-line__venue{
    overflow-wrap:break-word;
    word-break:normal;
  }

  .home .mei-live-schedule-line__time{
    line-height:1.35;
  }
}

/* Editorial heading treatment for the home entrance */
.mei-home :where(h2){
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.mei-home-section-head,
.mei-home-live-focus__head{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0, auto) minmax(72px, 1fr);
  gap:8px 18px;
  align-items:end;
  max-width:none;
  margin:0 0 clamp(18px, 3vw, 28px);
}

.mei-home-section-head::after,
.mei-home-live-focus__head::after{
  content:"";
  display:block;
  height:1px;
  margin-bottom:.72em;
  background:linear-gradient(90deg, rgba(89,128,160,.34), rgba(89,128,160,0));
}

.mei-home-section-head .mei-home-kicker,
.mei-home-live-focus__head .mei-home-kicker{
  grid-column:1 / -1;
  margin:0 0 -2px;
  color:#7d909e;
  font-size:10px;
  letter-spacing:.18em;
}

.mei-home-section-head h2,
.mei-home-live-focus__head h2{
  position:relative;
  width:max-content;
  max-width:100%;
  margin:0 !important;
  color:#223849;
  font-size:clamp(21px, 2.35vw, 30px);
  line-height:1.35;
  letter-spacing:.025em;
}

.mei-home-section-head h2::after,
.mei-home-live-focus__head h2::after{
  content:"";
  position:absolute;
  right:-10px;
  bottom:.14em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#9bb8cd;
}

.mei-home-section-head > p:not(.mei-home-kicker){
  grid-column:1 / -1;
  max-width:720px;
  margin:2px 0 0;
  color:#607281;
  font-size:13.5px;
  line-height:1.9;
}

.mei-home-live-focus{
  position:relative;
  overflow:hidden;
  padding:clamp(28px, 4.6vw, 46px);
  border-color:rgba(82,123,157,.16);
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(247,251,253,.96) 58%, rgba(236,246,251,.88));
}

.mei-home-live-focus::before{
  content:"";
  position:absolute;
  top:0;
  left:clamp(24px, 4vw, 46px);
  width:86px;
  height:3px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg, #5b86a8, #d5b17b);
}

.mei-home-live-focus__grid{
  position:relative;
  z-index:1;
}

.mei-home-live-focus .mei-upcoming-list::before{
  color:#293f51;
  font-size:16px;
  letter-spacing:.06em;
}

.mei-home-recent{
  width:min(74%, 860px);
  margin-inline:auto;
  padding:clamp(16px, 3vw, 28px) 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.mei-home-recent .mei-home-section-head{
  margin-bottom:18px;
}

@media (max-width:560px){
  .mei-home-section-head,
  .mei-home-live-focus__head{
    grid-template-columns:1fr;
    gap:6px;
  }

  .mei-home-section-head::after,
  .mei-home-live-focus__head::after{
    width:72px;
    margin:4px 0 0;
  }

  .mei-home-live-focus{
    padding:16px 8px;
    border-radius:18px;
  }

  .home .mei-home-live-focus .mei-upcoming-list,
  .home .entry-content > .column-wrap:has(.mei-next-live) .mei-upcoming-list{
    padding-right:0;
    padding-left:0;
  }

  .home .mei-home-live-focus .mei-upcoming-list__item,
  .home .entry-content > .column-wrap:has(.mei-next-live) .mei-upcoming-list__item{
    padding-right:0;
    padding-left:0;
  }

  .home .mei-home-recent__link{
    grid-template-columns:1fr;
    gap:7px;
    padding:13px 0;
  }

  .home .mei-home-recent__meta{
    gap:6px;
  }

  .home .mei-home-recent__link strong{
    font-size:15.5px;
    line-height:1.55;
  }

  .body .timeline-box .timeline{
    padding-left:0;
  }

  .body .timeline > li.timeline-item{
    overflow:visible;
    border-left:0;
    padding-bottom:24px;
  }

  .body .timeline-item-label{
    display:block;
    float:none;
    width:auto;
    padding:0 0 8px;
    text-align:left;
    white-space:normal;
  }

  .body .timeline-item-content{
    float:none;
    width:auto;
    padding:0;
    border-left:0;
  }

  .body .timeline-item::before{
    display:none;
  }
}

@media (max-width:900px){
  .mei-home-recent{
    width:100%;
  }
}

/* Keep upcoming live lists copy-friendly and visually consistent. */
.single-live .live-future-list .mei-upcoming-list__item::before,
.home .mei-upcoming-list__item::before{
  content:none !important;
  display:none !important;
}

.home .mei-home-live-focus .mei-upcoming-list{
  position:relative;
  margin:0;
  padding:28px 30px 30px;
  border:1px solid rgba(83,123,157,.16);
  border-radius:12px;
  background:linear-gradient(135deg, rgba(255,255,255,.98), rgba(247,251,253,.96) 62%, rgba(236,246,251,.82));
  box-shadow:none;
}

.home .mei-home-live-focus .mei-upcoming-list::before{
  position:relative;
  display:block;
  margin:0 0 10px;
  padding:0 0 15px 17px;
  border-bottom:1px solid #dce4ea;
  color:#263947;
  font-size:21px;
  font-weight:900;
  letter-spacing:.04em;
  line-height:1.5;
}

.home .mei-home-live-focus .mei-upcoming-list::after{
  content:none;
  display:none;
}

.home .mei-home-live-focus .mei-upcoming-list__item{
  margin:0;
  padding:13px 12px 13px 0;
  border-bottom:1px solid #e3ebf1;
  font-size:15.5px;
  line-height:1.7;
}

.home .mei-home-live-focus .mei-upcoming-list__item:first-child{
  position:relative;
  margin:2px 0 6px;
  padding:14px 12px 14px 0;
  border-bottom:1px solid rgba(83,123,157,.22);
  border-radius:0 10px 10px 0;
  background:linear-gradient(90deg, rgba(83,123,157,.12), rgba(255,255,255,.62) 72%, rgba(255,255,255,0));
}

.home .mei-home-live-focus .mei-upcoming-list__link{
  display:block;
  font-weight:800;
}

.home .mei-home-live-focus .mei-live-schedule-line{
  grid-template-columns:112px minmax(0,1fr);
  column-gap:.78em;
}

.home .mei-home-live-focus .mei-live-schedule-line__date{
  font-size:1.05em;
  font-weight:900;
}

.home .mei-home-live-focus .mei-live-schedule-line__venue,
.home .mei-home-live-focus .mei-live-schedule-line__time{
  font-weight:900;
}

@media (max-width:560px){
  .home .mei-home-live-focus .mei-upcoming-list{
    padding:20px 12px 22px;
  }

  .home .mei-home-live-focus .mei-upcoming-list::before{
    margin-bottom:8px;
    padding:0 0 13px 15px;
    font-size:19px;
  }

  .home .mei-home-live-focus .mei-upcoming-list::after{
    top:calc(20px + .2em);
    left:12px;
    height:calc(1.5em + 13px - .4em);
  }

  .home .mei-home-live-focus .mei-live-schedule-line{
    grid-template-columns:1fr;
    row-gap:3px;
  }
}

/* Blog reading layout: narrow text, generous media, and a next-step footer. */
.single-post .article{
  padding:clamp(34px, 5vw, 70px) clamp(20px, 5vw, 58px) clamp(48px, 7vw, 86px);
  background:#fff;
}

.single-post .article-header{
  max-width:760px;
  margin:0 auto clamp(36px, 5vw, 62px);
}

.single-post .entry-title{
  color:#2a3035;
  font-size:clamp(28px, 3.2vw, 42px);
  line-height:1.55;
  letter-spacing:.035em;
}

.single-post .date-tags{
  margin-top:18px;
  color:#6d757c;
  font-size:14px;
  font-weight:500;
}

.single-post .entry-content{
  max-width:1080px;
  margin-inline:auto;
  color:#2f3438;
  font-size:18.5px;
  font-weight:500;
  line-height:2.12;
  letter-spacing:.018em;
}

.single-post .entry-content > :where(p, ul, ol, blockquote, h2, h3, h4, h5, h6, table, .wp-block-table, .blogcard-wrap){
  max-width:760px;
  margin-left:auto;
  margin-right:auto;
}

.single-post .entry-content > p{
  margin-top:0;
  margin-bottom:1.85em;
}

.single-post .entry-content > p + p{
  margin-top:.2em;
}

.single-post .entry-content :where(h2, h3, h4){
  color:#263947;
  line-height:1.65;
  letter-spacing:.035em;
}

.single-post .entry-content > h2{
  margin-top:3.1em;
  margin-bottom:1.1em;
  padding:0 0 .5em;
  border:0;
  border-bottom:1px solid #dce6ed;
  background:transparent;
  font-size:1.45em;
}

.single-post .entry-content > h3{
  margin-top:2.6em;
  margin-bottom:1em;
  font-size:1.22em;
}

.single-post .entry-content > :where(ul, ol){
  margin-top:0;
  margin-bottom:2em;
  padding-left:1.6em;
}

.single-post .entry-content > blockquote{
  margin-top:2.4em;
  margin-bottom:2.6em;
  padding:1.2em 1.4em;
  border-left:3px solid #9db9cf;
  background:#f7fafc;
  color:#46525c;
}

.single-post .entry-content > :where(figure, .wp-block-image, .wp-block-video, .wp-block-embed, .video-container, .instagram-media, .twitter-tweet),
.single-post .entry-content > .wp-block-group:has(figure),
.single-post .entry-content > .wp-block-columns{
  max-width:min(100%, 1040px);
  margin:clamp(42px, 6vw, 74px) auto;
}

.single-post .entry-content :where(.wp-block-image img, .wp-block-video video, figure img){
  display:block;
  max-width:100%;
  height:auto;
  margin-inline:auto;
  border-radius:2px;
}

.single-post .entry-content :where(.wp-block-embed__wrapper, .video-container){
  max-width:1040px;
  margin-inline:auto;
}

.single-post .entry-content iframe{
  display:block;
  max-width:100%;
  margin-inline:auto;
}

.single-post .entry-content .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper{
  position:relative;
  aspect-ratio:16/9;
}

.single-post .entry-content .wp-block-embed.wp-embed-aspect-16-9 iframe{
  width:100%;
  height:100%;
}

.single-post .entry-content > :where(.wp-block-spacer){
  max-width:760px;
}

.single-post .article-footer{
  max-width:760px;
  margin:52px auto 0;
}

.mei-blog-after{
  max-width:1040px;
  margin:clamp(86px, 11vw, 128px) auto 0;
  padding-top:clamp(30px, 4vw, 42px);
  border-top:1px solid #dce6ed;
}

.mei-blog-after__head{
  display:grid;
  grid-template-columns:auto minmax(72px, 1fr);
  gap:8px 18px;
  align-items:end;
  margin-bottom:22px;
}

.mei-blog-after__head::after{
  content:"";
  height:1px;
  margin-bottom:.72em;
  background:linear-gradient(90deg, rgba(89,128,160,.34), rgba(89,128,160,0));
}

.mei-blog-after__kicker{
  grid-column:1 / -1;
  margin:0 0 -2px;
  color:#7d909e;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
  line-height:1.4;
}

.mei-blog-after h2{
  margin:0;
  color:#223849;
  font-size:clamp(22px, 2.3vw, 30px);
  line-height:1.35;
  letter-spacing:.03em;
}

.mei-blog-after__grid{
  display:grid;
  grid-template-columns:minmax(0, 1.08fr) minmax(290px, .92fr);
  gap:clamp(22px, 4vw, 42px);
  align-items:start;
}

.mei-blog-after__panel h3{
  margin:0 0 14px;
  color:#263947;
  font-size:17px;
  font-weight:900;
  line-height:1.5;
}

.mei-blog-after-posts{
  list-style:none;
  margin:0;
  padding:0;
  border-top:1px solid #dfe8ee;
}

.mei-blog-after-posts__item{
  margin:0;
  border-bottom:1px solid #e8eef3;
}

.mei-blog-after-posts__item a{
  display:grid;
  grid-template-columns:138px minmax(0, 1fr);
  gap:14px;
  align-items:baseline;
  padding:13px 0;
  color:#263947;
  text-decoration:none;
}

.mei-blog-after-posts__item a:hover{
  color:#24567f;
}

.mei-blog-after-posts__meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  color:#7b8b98;
  font-size:11.5px;
  font-weight:800;
  line-height:1.5;
}

.mei-blog-after-posts__meta span::before{
  content:"/";
  margin-right:6px;
  color:#b6c2cb;
}

.mei-blog-after-posts__item strong{
  font-size:14.5px;
  font-weight:900;
  line-height:1.65;
}

.mei-blog-after-live{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  gap:16px;
  align-items:center;
  min-height:132px;
  padding:14px;
  border:1px solid #dce6ed;
  border-radius:8px;
  background:#f8fbfd;
  color:#263947;
  text-decoration:none;
}

.mei-blog-after-live:hover{
  border-color:#b7ccdc;
  background:#f3f8fb;
  color:#24567f;
}

.mei-blog-after-live__thumb{
  overflow:hidden;
  display:block;
  aspect-ratio:4/3;
  border-radius:4px;
  background:#edf4f8;
}

.mei-blog-after-live__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.mei-blog-after-live__body{
  display:grid;
  gap:7px;
  min-width:0;
}

.mei-blog-after-live__date,
.mei-blog-after-live__time{
  color:#6f7f8b;
  font-size:12px;
  font-weight:800;
  line-height:1.45;
}

.mei-blog-after-live strong{
  color:#24567f;
  font-size:16px;
  font-weight:900;
  line-height:1.55;
}

@media (max-width:900px){
  .single-post .article{
    padding-inline:20px;
  }

  .single-post .entry-content{
    font-size:17px;
    line-height:2;
  }

  .mei-blog-after__grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  .single-post .article{
    padding-inline:16px;
  }

  .single-post .entry-content > :where(figure, .wp-block-image, .wp-block-video, .wp-block-embed, .video-container, .instagram-media, .twitter-tweet){
    margin-block:34px;
  }

  .mei-blog-after__head{
    grid-template-columns:1fr;
    gap:6px;
  }

  .mei-blog-after__head::after{
    width:72px;
    margin:4px 0 0;
  }

  .mei-blog-after-posts__item a,
  .mei-blog-after-live{
    grid-template-columns:1fr;
  }
}

/* Blog footer: keep the reading afterglow quiet and guide visitors onward. */
.single-post .entry-categories-tags{
  display:none;
}

.mei-blog-after{
  max-width:820px;
  margin:clamp(94px, 12vw, 146px) auto 0;
  padding-top:0;
  border-top:0;
}

.mei-blog-after__terms{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  max-width:760px;
  margin:0 auto clamp(56px, 8vw, 88px);
  padding-bottom:clamp(42px, 6vw, 66px);
  border-bottom:1px solid #dce6ed;
}

.mei-blog-after__term{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:5px 12px;
  border:1px solid #cfdce6;
  border-radius:4px;
  background:#fff;
  color:#526575;
  font-size:13px;
  font-weight:800;
  line-height:1.35;
  text-decoration:none;
}

.mei-blog-after__term:hover{
  border-color:#9ebbd2;
  color:#24567f;
  background:#f7fbfd;
  text-decoration:none;
}

.mei-blog-after__term--category{
  border-color:#2f3f4b;
  background:#2f3f4b;
  color:#fff;
}

.mei-blog-after__term--category:hover{
  border-color:#24567f;
  background:#24567f;
  color:#fff;
}

.mei-blog-after__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(50px, 6vw, 74px);
  align-items:start;
}

.mei-blog-after__title{
  display:grid;
  grid-template-columns:auto minmax(54px, 1fr);
  gap:12px;
  align-items:end;
  margin:0 0 18px;
  color:#223849;
  font-size:clamp(20px, 2vw, 25px);
  font-weight:900;
  line-height:1.45;
  letter-spacing:.03em;
}

.mei-blog-after__title::after{
  content:"";
  height:1px;
  margin-bottom:.68em;
  background:linear-gradient(90deg, rgba(89,128,160,.34), rgba(89,128,160,0));
}

.mei-blog-after-posts{
  border-top:1px solid #dfe8ee;
}

.mei-blog-after-posts__item a{
  grid-template-columns:174px minmax(0, 1fr);
  gap:24px;
  padding:18px 2px;
}

.mei-blog-after-posts__meta{
  color:#82929f;
  font-size:12px;
  letter-spacing:.02em;
}

.mei-blog-after-posts__item strong{
  font-size:15.5px;
  line-height:1.7;
}

.mei-blog-after-live{
  min-height:0;
  padding:20px 2px;
  border:0;
  border-top:1px solid #dfe8ee;
  border-bottom:1px solid #e8eef3;
  border-radius:0;
  background:transparent;
  grid-template-columns:minmax(220px, 280px) minmax(0,1fr);
  gap:24px;
}

.mei-blog-after-live:hover{
  border-color:#dfe8ee;
  background:transparent;
}

.mei-blog-after-live__thumb{
  aspect-ratio:16/10;
  border:1px solid #dce6ed;
  border-radius:5px;
}

.mei-blog-after-live__body{
  gap:6px;
  align-content:center;
}

.mei-blog-after-live strong{
  font-size:clamp(20px, 2.2vw, 24px);
  line-height:1.55;
}

.mei-blog-after-live__date,
.mei-blog-after-live__time{
  font-size:12.5px;
}

.mei-blog-after-recommend{
  position:relative;
  overflow:hidden;
  display:block;
  min-height:clamp(220px, 32vw, 330px);
  border-radius:7px;
  background:#edf4f8;
  color:#fff;
  text-decoration:none;
  box-shadow:0 18px 36px rgba(29,48,64,.12);
}

.mei-blog-after-recommend:hover{
  color:#fff;
  text-decoration:none;
}

.mei-blog-after-recommend__image{
  position:absolute;
  inset:0;
  display:block;
}

.mei-blog-after-recommend__image::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(15,25,34,.12) 0%, rgba(15,25,34,.38) 52%, rgba(15,25,34,.82) 100%),
    linear-gradient(90deg, rgba(15,25,34,.42), rgba(15,25,34,.08) 60%);
}

.mei-blog-after-recommend__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.01);
  transition:transform .35s ease;
}

.mei-blog-after-recommend:hover .mei-blog-after-recommend__image img{
  transform:scale(1.045);
}

.mei-blog-after-recommend__body{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:inherit;
  padding:clamp(22px, 4vw, 34px);
}

.mei-blog-after-recommend__meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-bottom:10px;
  color:rgba(255,255,255,.78);
  font-size:12px;
  font-weight:800;
  line-height:1.5;
}

.mei-blog-after-recommend__meta span::before{
  content:"/";
  margin-right:7px;
  color:rgba(255,255,255,.48);
}

.mei-blog-after-recommend strong{
  max-width:680px;
  color:#fff;
  font-size:clamp(23px, 3vw, 34px);
  font-weight:900;
  line-height:1.45;
  letter-spacing:.03em;
}

.mei-blog-after-recommend:not(:has(.mei-blog-after-recommend__image)){
  background:linear-gradient(135deg, #294f70, #6f91b2);
}

@media (max-width:900px){
  .mei-blog-after__grid{
    grid-template-columns:1fr;
  }

  .mei-blog-after{
    max-width:760px;
  }
}

@media (max-width:560px){
  .mei-blog-after{
    margin-top:72px;
  }

  .mei-blog-after__terms{
    margin-bottom:48px;
    padding-bottom:38px;
  }

  .mei-blog-after-posts__item a,
  .mei-blog-after-live{
    grid-template-columns:1fr;
  }

  .mei-blog-after-recommend{
    min-height:230px;
  }
}

/* Single live lineup: put performers in the main reading flow. */
.single-live .live-lineup{
  margin:26px 0 24px;
  padding:24px 20px 22px;
  border-top:1px solid #dbe7f0;
  border-bottom:1px solid #dbe7f0;
  background:linear-gradient(180deg,#fbfdff 0%,#fff 72%);
}

.single-live .live-lineup__head{
  margin:0 0 12px;
}

.single-live .live-lineup__title{
  margin:0;
  border:0;
  color:#607281;
  font-size:0.98rem;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1.4;
}

.single-live .live-lineup__list{
  display:flex;
  flex-wrap:wrap;
  gap:10px 0;
  align-items:flex-end;
}

.single-live .live-lineup__performer{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:0;
  padding:0 0 7px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:#174f78;
  font-size:1.42rem;
  font-weight:900;
  line-height:1.05;
  text-decoration:none;
  letter-spacing:0;
}

.single-live .live-lineup__performer--main{
  color:#1f3548;
}

.single-live .live-detail-meta a.live-lineup__performer{
  color:#174f78;
  border-bottom:0;
}

.single-live .live-detail-meta a.live-lineup__performer:hover{
  color:#0c4168;
  text-decoration:none;
  transform:translateY(-1px);
}

.single-live .live-lineup__name{
  position:relative;
  display:inline-block;
  padding-bottom:7px;
}

.single-live .live-lineup__name::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  background:#bfd6e8;
  transform-origin:left center;
}

.single-live .live-detail-meta a.live-lineup__performer .live-lineup__name::before{
  background:#75a8cc;
  transform:scaleX(.72);
  transition:transform .18s ease, background-color .18s ease;
}

.single-live .live-detail-meta a.live-lineup__performer:hover .live-lineup__name::before{
  background:#315f87;
  transform:scaleX(1);
}

.single-live .live-lineup__performer + .live-lineup__performer::after{
  content:"/";
  order:-1;
  margin:0 .78em;
  color:#c2ced8;
  font-size:.82em;
  font-weight:700;
  line-height:1;
  transform:translateY(-.03em);
}

.single-live .live-lineup__performer--main .live-lineup__name::before{
  background:#d3dde5;
}

@media (max-width:560px){
  .single-live .live-lineup{
    margin:18px 0 16px;
    padding:16px 8px;
  }

  .single-live .live-lineup__head{
    margin-bottom:12px;
  }

  .single-live .live-lineup__title{
    font-size:0.9rem;
  }

  .single-live .live-lineup__list{
    gap:12px 0;
  }

  .single-live .live-lineup__performer{
    padding-bottom:6px;
    font-size:1.18rem;
  }

  .single-live .live-lineup__name{
    padding-bottom:6px;
  }
}

/* =========================================================
   Mobile Navigation
   - Phones use the fixed footer nav as the primary route to live info.
   ========================================================= */
@media (max-width:1023px){
  #navi{
    display:none;
  }

  .mobile-footer-menu-buttons.mei-mobile-footer-buttons{
    display:flex;
    position:fixed;
    min-height:62px;
    padding:5px 6px calc(5px + env(safe-area-inset-bottom));
    border-top:var(--mei-border-soft-line);
    background:rgba(255,254,250,.98);
    box-shadow:0 -10px 28px rgba(38,50,56,.09);
    z-index:10000;
  }

  .mobile-footer-menu-buttons.mei-mobile-footer-buttons::before{
    content:"";
    position:absolute;
    top:0;
    left:10px;
    right:10px;
    height:1px;
    border-radius:999px;
    background:linear-gradient(90deg, rgba(184,137,91,0), rgba(184,137,91,.42), rgba(184,137,91,0));
  }

  .mblt-footer-mobile-buttons,
  .mblt-header-and-footer-mobile-buttons{
    margin-bottom:70px;
  }

  .mei-mobile-footer-buttons .menu-button{
    flex:1 1 20%;
    width:auto;
    min-width:0;
    min-height:52px;
  }

  .mei-mobile-footer-buttons .menu-button-in{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:52px;
    gap:3px;
    border-radius:var(--mei-radius-md);
    color:var(--mei-color-text);
    text-decoration:none;
    line-height:1.2;
    transition:background-color var(--mei-transition-fast), box-shadow var(--mei-transition-fast), color var(--mei-transition-fast);
  }

  .mei-mobile-footer-buttons label.menu-button-in{
    cursor:pointer;
  }

  .mei-mobile-footer-buttons .menu-icon{
    display:block;
    width:auto;
    color:var(--mei-color-primary);
    font-size:18px;
    line-height:1;
  }

  .mei-mobile-footer-buttons .menu-caption{
    display:block;
    color:var(--mei-color-text);
    font-size:10.5px;
    font-weight:600;
    letter-spacing:0;
    opacity:1;
    line-height:1.2;
    white-space:nowrap;
  }

  .mei-mobile-footer-buttons .current-menu-button .menu-button-in,
  .mei-mobile-footer-buttons .menu-button-in:focus-visible{
    background:var(--mei-color-primary-soft);
    box-shadow:inset 0 0 0 1px var(--mei-color-border);
    color:var(--mei-color-primary-dark);
  }

  .mei-mobile-footer-buttons .current-menu-button .menu-icon,
  .mei-mobile-footer-buttons .current-menu-button .menu-caption{
    color:var(--mei-color-primary-dark);
  }

  .mei-mobile-footer-buttons .menu-button-in:focus-visible{
    outline:2px solid var(--mei-color-focus);
    outline-offset:-2px;
  }

  .mei-mobile-footer-buttons .menu-button:hover .menu-button-in{
    opacity:1;
  }

  .mei-mobile-footer-buttons .navi-menu-content{
    max-width:min(88vw, 380px);
    border-right:var(--mei-border-soft-line);
    background:var(--mei-color-surface);
    box-shadow:16px 0 40px rgba(38,50,56,.14);
  }

  #mei-footer-navi-menu-close{
    display:none;
    position:fixed;
    z-index:99;
    inset:0;
    background:#263238;
    opacity:.42;
  }

  #mei-footer-navi-menu-input:checked ~ #mei-footer-navi-menu-close{
    display:block;
  }

  #mei-footer-navi-menu-input:checked ~ #mei-footer-navi-menu-content{
    transition:.3s ease-in-out;
    -webkit-transform:translateX(0%);
    transform:translateX(0%);
    opacity:1;
  }

  .mei-mobile-footer-buttons .menu-close-button{
    color:var(--mei-color-primary-dark);
    min-width:44px;
    min-height:44px;
  }

  .mei-mobile-footer-buttons .menu-drawer{
    padding:18px 16px 86px;
  }

  .mei-mobile-footer-buttons .menu-drawer a{
    display:flex;
    align-items:center;
    min-height:44px;
    padding:11px 10px;
    border-bottom:var(--mei-border-soft-line);
    border-radius:var(--mei-radius-md);
    color:var(--mei-color-text);
    font-size:15px;
    font-weight:600;
    line-height:1.45;
    text-decoration:none;
  }

  .mei-mobile-footer-buttons .menu-drawer .current-menu-item > a,
  .mei-mobile-footer-buttons .menu-drawer .current_page_item > a,
  .mei-mobile-footer-buttons .menu-drawer a:hover,
  .mei-mobile-footer-buttons .menu-drawer a:focus-visible{
    background:var(--mei-color-primary-soft);
    color:var(--mei-color-primary-dark);
  }

  .mei-mobile-footer-buttons .menu-drawer a:focus-visible{
    outline:2px solid var(--mei-color-focus);
    outline-offset:-2px;
  }

  .mei-mobile-footer-buttons .menu-drawer .sub-menu{
    padding:4px 0 4px 12px;
  }

  .mei-mobile-footer-buttons .menu-drawer .sub-menu a{
    color:var(--mei-color-text-muted);
    font-size:13px;
    font-weight:600;
  }
}



/* The next-live flyer should stay readable; details live in the status block below. */
.home .mei-next-live__overlay{
  display:none !important;
}

.home .mei-next-live__feature img{
  transform:none !important;
}


/* Final mobile live overrides: keep phone layouts compact and actionable. */
@media (max-width:768px){
  .home .article{
    padding:16px 10px 26px;
    border-radius:14px;
  }

  .mei-home{
    gap:22px;
  }

  .mei-home-live-focus{
    padding:14px 8px;
    border-radius:14px;
  }

  .mei-home-live-focus__grid{
    gap:18px;
  }

  .mei-home-live-focus__main{
    gap:20px;
  }

  .home .mei-next-live__overlay{
    padding:54px 12px 12px;
  }

  .mei-next-live__quick{
    display:grid;
    gap:10px;
    padding-top:10px;
  }

  .mei-next-live__quick-main{
    display:grid;
    gap:3px;
  }

  .mei-next-live__quick-main time{
    color:#24567f;
    font-size:18px;
    font-weight:900;
    line-height:1.25;
  }

  .mei-next-live__quick-main strong{
    color:#1f3447;
    font-size:18px;
    font-weight:900;
    line-height:1.45;
    overflow-wrap:anywhere;
  }

  .mei-next-live__quick-main span{
    color:#315f87;
    font-size:14px;
    font-weight:850;
  }

  .mei-next-live__actions{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:7px;
  }

  .mei-next-live__action,
  .live-card-action{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:8px 9px;
    border:1px solid #b9cedd;
    border-radius:6px;
    background:#f7fbfd;
    color:#294f70;
    font-size:12.5px;
    font-weight:900;
    line-height:1.2;
    text-decoration:none;
  }

  .mei-next-live__action--primary,
  .live-card-action--primary{
    border-color:#294f70;
    background:#294f70;
    color:#fff;
  }

  .mei-next-live__action--primary{
    grid-column:1 / -1;
  }

  .home .mei-home-live-focus .mei-upcoming-list{
    padding:16px 8px 18px;
    border-radius:10px;
  }

  .home .mei-home-live-focus .mei-upcoming-list::before{
    margin-bottom:6px;
    padding:0 0 10px 13px;
    font-size:18px;
  }

  .home .mei-home-live-focus .mei-upcoming-list::after{
    top:calc(16px + .2em);
    left:8px;
    height:calc(1.5em + 10px - .4em);
  }

  .home .mei-home-live-focus .mei-upcoming-list__item{
    padding:9px 0;
    font-size:15px;
    line-height:1.48;
  }

  .home .mei-home-live-focus .mei-upcoming-list__item:first-child{
    margin:0;
    padding:10px 0;
    background:transparent;
  }

  .home .mei-home-live-focus .mei-live-schedule-line{
    grid-template-columns:1fr;
    row-gap:2px;
  }

  .home .mei-live-schedule-line__details{
    column-gap:.46em;
    row-gap:1px;
  }

  .home .mei-live-schedule-line__details > span + span::before{
    margin-right:.46em;
  }

  .home .mei-live-archive-actions{
    margin-top:14px;
    padding-top:12px;
  }

  .home .mei-live-archive-actions__browse{
    min-height:48px;
    padding:10px 0;
  }

  .home .mei-live-archive-actions__browse + .mei-live-archive-actions__browse{
    border-top:1px solid #e1e9ef;
  }

  .home .mei-live-archive-actions__browse strong{
    font-size:15px;
  }

  .home .mei-live-archive-actions__browse small{
    margin-top:2px;
    font-size:11.5px;
  }

  .home .mei-live-archive-actions__search{
    display:none;
  }

  .mei-home-trace{
    padding-top:4px;
  }

  .mei-home-trace__grid{
    gap:10px;
  }

  .mei-home-trace-card{
    padding:14px 12px;
  }

  .mei-home-recent{
    padding:4px 0;
  }

  .home .mei-home-recent__link{
    padding:10px 0;
  }

  .home .mei-home-recent__link strong{
    font-size:15.5px;
  }

  .mei-home-intro{
    padding:16px 12px;
  }

  .mei-home-intro__coverage{
    padding:14px 12px;
  }

  .mei-archive-head{
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
    margin-bottom:14px;
  }

  .mei-archive-head .archive-title{
    margin:0;
    font-size:24px;
    line-height:1.35;
  }

  .live-list-link{
    display:inline-flex;
    min-height:38px;
    align-items:center;
    padding:7px 10px;
    font-size:13px;
  }

  .live-archive{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
  }

  .live-archive-month{
    grid-column:1 / -1;
    margin:6px 0 -1px;
    padding:0 0 7px 9px;
    border-bottom:1px solid #dce6ee;
    color:#263947;
    font-size:19px;
    font-weight:900;
    line-height:1.45;
  }

  .live-item{
    border-radius:10px;
    box-shadow:0 8px 22px rgba(31,48,64,.06);
  }

  .live-item:hover,
  .live-item:focus-within{
    transform:none;
  }

  .live-archive .live-title{
    min-height:0;
    padding:11px 10px 9px;
    gap:3px 7px;
  }

  .live-card-date{
    margin:0 0 1px;
    padding:0;
  }

  .live-card-date__year{
    font-size:12px;
  }

  .live-card-date__main{
    gap:6px;
  }

  .live-card-date__monthday{
    font-size:34px;
  }

  .live-card-date__weekday{
    min-width:25px;
    min-height:25px;
    margin-bottom:1px;
    border-width:1.5px;
    border-radius:7px;
    font-size:13px;
  }

  .live-card-title__venue{
    flex:1 1 100%;
    font-size:17px;
    line-height:1.45;
  }

  .live-card-title__time{
    margin:5px 0 0;
    padding:3px 7px;
    font-size:10.5px;
  }

  .live-thumb img{
    max-height:210px;
    object-fit:cover;
  }

  .live-archive .live-meta{
    padding:9px 10px 10px;
    font-size:12.5px;
    line-height:1.48;
  }

  .live-archive .live-meta-row{
    grid-template-columns:38px minmax(0, 1fr);
    gap:7px;
    padding:3px 0;
  }

  .live-card-meta__label{
    min-height:21px;
    padding:2px 4px;
    border-radius:5px;
    font-size:10px;
  }

  .live-card-meta__value{
    padding-top:1px;
  }

  .live-card-meta__performers{
    -webkit-line-clamp:2;
    line-height:1.55;
  }

  .live-card-actions{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:7px;
    padding:0 10px 11px;
  }

  .live-card-action:only-child{
    grid-column:1 / -1;
  }

  .pagination{
    margin-top:18px;
  }

  .live-archive-past-link{
    margin:24px 0 10px;
  }
}

@media (max-width:390px){
  .home .article{
    padding-inline:8px;
  }

  .mei-home-live-focus{
    padding-inline:7px;
  }

  .home .mei-home-live-focus .mei-upcoming-list{
    padding-inline:7px;
  }

  .live-card-date__monthday{
    font-size:31px;
  }

  .live-card-title__venue{
    font-size:16px;
  }
}
/* === Mei Archive TOP refinement v1 === */
:root{
  --mei-paper-bg:#f8f7f3;
  --mei-paper-surface:#fffefa;
  --mei-paper-soft:#f3f6f6;
  --mei-ink:#263238;
  --mei-heading:#24343b;
  --mei-muted:#6f7e82;
  --mei-subtle:#8a989b;
  --mei-border:#d9e1e3;
  --mei-border-soft:#e8eeee;
  --mei-primary:#365f73;
  --mei-primary-dark:#2f5368;
  --mei-primary-soft:#e6eff2;
  --mei-accent:#b8895b;
  --mei-accent-soft:#e3d2bd;
  --mei-radius-card:14px;
  --mei-shadow-soft:0 8px 24px rgba(38,50,56,.04);
  --mei-shadow-card:0 10px 30px rgba(38,50,56,.05);
}

body.home{
  background:var(--mei-paper-bg);
  color:var(--mei-ink);
}

.home .main,
.home .content-in,
.home .entry-content{
  background:transparent;
}

.home .mei-home{
  color:var(--mei-ink);
  font-size:16px;
  line-height:1.65;
}

.home .mei-home :where(h2,strong){
  color:var(--mei-heading);
}

.home .mei-home-kicker,
.home .mei-home-section-head .mei-home-kicker,
.home .mei-home-live-focus__head .mei-home-kicker,
.home .mei-home-social-prompt__head .mei-home-kicker,
.home .mei-home-trace-card__kicker{
  color:var(--mei-accent) !important;
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
}

.home .mei-home-live-focus,
.home .mei-home-search,
.home .mei-home-trace,
.home .mei-home-recent,
.home .mei-home-social-prompt,
.home .mei-home-intro,
.home .mei-home-notice{
  background:var(--mei-paper-surface);
  border:1px solid var(--mei-border-soft);
  border-radius:var(--mei-radius-card);
  box-shadow:var(--mei-shadow-soft);
}

.home .mei-home-live-focus{
  border-color:rgba(54,95,115,.18);
  background:
    linear-gradient(135deg, rgba(255,254,250,.99), rgba(248,247,243,.95) 60%, rgba(230,239,242,.62));
  box-shadow:var(--mei-shadow-card);
}

.home .mei-home-live-focus::before{
  background:linear-gradient(90deg, var(--mei-accent), rgba(184,137,91,0));
}

.home .mei-home-section-head h2,
.home .mei-home-live-focus__head h2{
  color:var(--mei-heading);
  font-size:clamp(23px, 2.35vw, 31px);
  line-height:1.32;
}

.home .mei-home-section-head::after,
.home .mei-home-live-focus__head::after{
  background:linear-gradient(90deg, rgba(184,137,91,.34), rgba(54,95,115,.13), rgba(54,95,115,0));
}

.home .mei-home-section-head h2::after,
.home .mei-home-live-focus__head h2::after{
  background:var(--mei-accent-soft);
}

.home .mei-next-live__feature{
  padding:.6rem;
  border:1px solid var(--mei-border-soft) !important;
  border-radius:12px !important;
  background:#f6f4ee !important;
  box-shadow:none !important;
}

.home .mei-next-live__feature img{
  border-radius:8px;
}

.home .mei-next-live__quick-main time{
  color:var(--mei-primary-dark);
  font-size:20px;
  font-weight:900;
}

.home .mei-next-live__quick-main strong{
  color:var(--mei-heading);
  font-size:20px;
  font-weight:900;
}

.home .mei-next-live__quick-main span{
  color:var(--mei-primary-dark);
  font-size:15px;
  font-weight:850;
}

.home .mei-next-live__action,
.home .live-card-action{
  min-height:46px;
  border-radius:var(--mei-radius-pill);
  font-weight:600;
}

.home .mei-next-live__action--primary,
.home .live-card-action--primary{
  border-color:var(--mei-color-primary-dark);
  background:var(--mei-color-primary-dark);
  color:#fff;
}

.home .mei-next-live__action:not(.mei-next-live__action--primary),
.home .live-card-action:not(.live-card-action--primary){
  border-color:var(--mei-color-border);
  background:var(--mei-color-surface);
  color:var(--mei-color-primary-dark);
}

.home .mei-home-live-focus .mei-upcoming-list{
  border-color:var(--mei-border-soft);
  border-radius:12px;
  background:linear-gradient(135deg, rgba(255,254,250,.99), rgba(243,246,246,.86));
  box-shadow:none;
}

.home .mei-home-live-focus .mei-upcoming-list::before{
  color:var(--mei-heading);
}

.home .mei-home-live-focus .mei-upcoming-list::after{
  background:linear-gradient(180deg, var(--mei-accent), var(--mei-accent-soft));
}

.home .mei-home-live-focus .mei-upcoming-list__item{
  border-bottom-color:var(--mei-border-soft);
}

.home .mei-home-live-focus .mei-upcoming-list__item:first-child{
  background:linear-gradient(90deg, rgba(184,137,91,.12), rgba(255,254,250,.72) 76%, rgba(255,254,250,0));
  border-bottom-color:rgba(184,137,91,.26);
}

.home .mei-home-live-focus .mei-live-schedule-line__date{
  color:var(--mei-primary-dark);
  font-weight:900;
}

.home .mei-home-live-focus .mei-live-schedule-line__venue{
  color:var(--mei-heading);
  font-weight:900;
}

.home .mei-home-live-focus .mei-live-schedule-line__time{
  color:#4f6978;
  font-weight:850;
}

.home .mei-home-search{
  padding:clamp(18px, 3vw, 28px);
}

.home .mei-home-search__form input{
  min-height:50px;
  border-color:var(--mei-border);
  border-radius:10px;
  background:var(--mei-paper-surface);
  color:var(--mei-ink);
}

.home .mei-home-search__form input::placeholder{
  color:var(--mei-subtle);
}

.home .mei-home-search__form button{
  min-height:50px;
  border-color:var(--mei-primary-dark);
  border-radius:10px;
  background:var(--mei-primary-dark);
  box-shadow:none;
}

.home .mei-home-trace-card,
.home .mei-home-recent__link,
.home .mei-home-stat,
.home .mei-home-social-prompt__links a,
.home .mei-home-notice__links a{
  border-color:var(--mei-border-soft);
  border-radius:10px;
  background:var(--mei-paper-surface);
  box-shadow:none;
}

.home .mei-home-trace-card:hover,
.home .mei-home-recent__link:hover,
.home .mei-home-stat:hover,
.home .mei-home-social-prompt__links a:hover{
  border-color:var(--mei-border);
  background:#fbfaf5;
  box-shadow:0 10px 24px rgba(38,50,56,.055);
  transform:translateY(-2px);
}

.home .mei-home-recent{
  width:min(80%, 900px);
  background:transparent;
  border:0;
  box-shadow:none;
}

.home .mei-home-recent__meta{
  color:var(--mei-muted);
}

.home .mei-home-recent__link strong{
  color:var(--mei-heading);
  font-weight:850;
}

.home .mei-home-social-prompt{
  padding:clamp(20px, 3vw, 30px);
  gap:12px;
}

.home .mei-home-social-prompt__title{
  color:var(--mei-heading);
  font-size:clamp(20px, 2.3vw, 28px);
}

.home .mei-home-social-card{
  min-height:128px;
  border-color:rgba(190,205,216,.96);
  background:#fff;
  color:var(--mei-primary-dark);
  box-shadow:0 10px 24px rgba(38,50,56,.065);
}

.home .mei-home-intro__coverage,
.home .mei-home-stat{
  background:#fbfaf5;
}

.home .mei-home-intro__coverage-list dd strong,
.home .mei-home-stat__value{
  color:var(--mei-primary-dark);
}

.home .mei-home-notice{
  background:#fbfaf5;
  color:var(--mei-muted);
}

@media (max-width:767px){
  .home .mei-home{
    font-size:15.2px;
  }

  .home .mei-home-live-focus{
    padding:16px 10px;
  }

  .home .mei-home-section-head h2,
  .home .mei-home-live-focus__head h2{
    font-size:23px;
  }

  .home .mei-next-live__quick-main time,
  .home .mei-next-live__quick-main strong{
    font-size:18px;
  }

  .home .mei-next-live__actions{
    gap:8px;
  }

  .home .mei-home-search__form{
    gap:9px;
  }

  .home .mei-home-search__form input,
  .home .mei-home-search__form button{
    min-height:48px;
  }

  .home .mei-home-recent{
    width:100%;
  }

  .home .mei-home-social-prompt__links{
    grid-template-columns:1fr;
  }
}

/* === Mei Archive site-wide refinement v1 === */
body:not(.wp-admin){
  background:var(--mei-paper-bg, #f8f7f3);
  color:var(--mei-ink, #263238);
}

body:not(.home) .content-in,
body:not(.home) .main,
body:not(.home) .article,
body:not(.home) .entry-content{
  background:transparent;
}

body:not(.home) .article,
.archive .article,
.search .article,
.single-live .article,
.post-type-archive-live .article,
.page-template-page-live-list .article{
  color:var(--mei-ink, #263238);
}

body:not(.home) :where(.entry-title, .archive-title, .live-headline, .live-section__title, .live-nextlist-title, h1, h2, h3){
  color:var(--mei-heading, #24343b);
  letter-spacing:0;
}

body:not(.home) a{
  color:var(--mei-primary-dark, #2f5368);
}

body:not(.home) a:hover{
  color:#243f50;
}

body:not(.home) :where(.main, .article){
  border-radius:var(--mei-radius-card, 14px);
}

body:not(.home) .article{
  border:1px solid rgba(217,225,227,.78);
  background:rgba(255,254,250,.92);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

body:not(.home) .entry-title,
body:not(.home) .archive-title{
  position:relative;
  margin-bottom:clamp(18px, 3vw, 28px);
  padding-bottom:14px;
  font-weight:900;
  line-height:1.28;
}

body:not(.home) .entry-title::after,
body:not(.home) .archive-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:min(210px, 46%);
  height:2px;
  background:linear-gradient(90deg, var(--mei-accent, #b8895b), rgba(54,95,115,.16), rgba(54,95,115,0));
}

body:not(.home) :where(input[type="text"], input[type="search"], select, textarea){
  min-height:44px;
  border:1px solid var(--mei-border, #d9e1e3);
  border-radius:9px;
  background:var(--mei-paper-surface, #fffefa);
  color:var(--mei-ink, #263238);
  box-shadow:none;
}

body:not(.home) :where(input[type="text"], input[type="search"], select, textarea):focus{
  border-color:rgba(54,95,115,.55);
  outline:2px solid rgba(184,137,91,.16);
  outline-offset:1px;
}

body:not(.home) :where(button, input[type="submit"], .btn, .button),
.live-card-action,
.live-access-links a,
.live-copy-address{
  min-height:44px;
  border-radius:8px;
  font-weight:800;
}

.post-type-archive-live .mei-archive-head,
.archive-live .mei-archive-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:clamp(18px, 3vw, 30px);
  padding:clamp(18px, 3vw, 28px);
  border:1px solid rgba(54,95,115,.16);
  border-radius:var(--mei-radius-card, 14px);
  background:linear-gradient(135deg, rgba(255,254,250,.98), rgba(248,247,243,.94) 68%, rgba(230,239,242,.62));
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.mei-archive-head .archive-title{
  margin:0;
  padding-bottom:12px;
}

.live-list-link,
.live-archive-past-link a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 16px;
  border:1px solid var(--mei-border, #d9e1e3);
  border-radius:8px;
  background:var(--mei-paper-surface, #fffefa);
  color:var(--mei-primary-dark, #2f5368);
  font-weight:850;
  text-decoration:none;
}

.live-list-link:hover,
.live-archive-past-link a:hover{
  border-color:rgba(54,95,115,.28);
  background:#fbfaf5;
  text-decoration:none;
}

.live-archive{
  gap:clamp(14px, 2.4vw, 24px);
}

.live-archive-month{
  color:var(--mei-accent, #b8895b);
  font-size:13px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.live-item{
  overflow:hidden;
  border:1px solid var(--mei-border-soft, #e8eeee);
  border-radius:12px;
  background:var(--mei-paper-surface, #fffefa);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.live-item:hover,
.live-item:focus-within{
  border-color:rgba(54,95,115,.24);
  box-shadow:0 12px 28px rgba(38,50,56,.06);
  transform:translateY(-2px);
}

.live-item .live-link{
  color:inherit;
  text-decoration:none;
}

.live-archive .live-title{
  background:linear-gradient(135deg, rgba(251,250,245,.98), rgba(243,246,246,.8));
  border-bottom:1px solid var(--mei-border-soft, #e8eeee);
}

.live-card-date__year,
.live-detail-date__year,
.live-card-meta__label,
.live-meta-label{
  color:var(--mei-muted, #6f7e82);
}

.live-card-date__monthday,
.live-detail-date__monthday,
.live-card-title__venue,
.live-headline__venue,
.live-headline__event{
  color:var(--mei-heading, #24343b);
}

.live-card-date__weekday,
.live-detail-date__weekday{
  color:var(--mei-accent, #b8895b);
}

.live-archive .live-meta,
.live-detail-meta{
  color:var(--mei-ink, #263238);
}

.live-card-meta__value,
.live-meta-content{
  color:var(--mei-heading, #24343b);
}

.live-card-action{
  border:1px solid var(--mei-border, #d9e1e3);
  background:var(--mei-paper-surface, #fffefa);
  color:var(--mei-primary-dark, #2f5368);
  text-decoration:none;
}

.live-card-action--primary{
  border-color:var(--mei-primary-dark, #2f5368);
  background:var(--mei-primary-dark, #2f5368);
  color:#fff;
}

.live-card-action:hover{
  border-color:rgba(54,95,115,.34);
  background:#fbfaf5;
  color:var(--mei-primary-dark, #2f5368);
  text-decoration:none;
}

.live-card-action--primary:hover{
  background:#243f50;
  color:#fff;
}

.live-archive .live-card-actions .live-card-action,
.live-archive .live-card-actions .live-card-action:visited,
.live-archive .live-card-actions .live-card-action:hover,
.live-archive .live-card-actions .live-card-action:focus-visible{
  color:var(--mei-primary-dark, #2f5368) !important;
}

.live-archive .live-card-actions .live-card-action--primary,
.live-archive .live-card-actions .live-card-action--primary:visited,
.live-archive .live-card-actions .live-card-action--primary:hover,
.live-archive .live-card-actions .live-card-action--primary:focus-visible{
  color:#fff !important;
}

.live-list-wrap,
.single-live .live-detail-meta{
  max-width:1060px;
  margin-inline:auto;
}

.live-search-intro{
  margin-top:-8px;
  color:var(--mei-muted, #6f7e82);
  font-weight:650;
}

.live-history-search,
.live-search-summary,
.live-list,
.live-search-empty,
.live-section,
.live-future-list,
.live-lineup,
.live-note,
.live-photos,
.live-videos{
  border:1px solid var(--mei-border-soft, #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:var(--mei-paper-surface, #fffefa);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.live-history-search{
  display:grid;
  gap:14px;
  padding:clamp(16px, 3vw, 24px);
}

.live-history-search label{
  color:var(--mei-muted, #6f7e82);
  font-size:12px;
  font-weight:850;
  letter-spacing:.06em;
}

.live-history-search__actions button{
  border:1px solid var(--mei-primary-dark, #2f5368);
  background:var(--mei-primary-dark, #2f5368);
  color:#fff;
  box-shadow:none;
}

.live-search-summary{
  margin:18px 0;
  padding:14px 18px;
  color:var(--mei-muted, #6f7e82);
}

.live-search-summary strong{
  color:var(--mei-heading, #24343b);
}

.live-list{
  overflow:hidden;
}

.live-list-head{
  background:linear-gradient(90deg, rgba(184,137,91,.12), rgba(230,239,242,.58));
  color:var(--mei-muted, #6f7e82);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.live-list-row{
  color:var(--mei-ink, #263238);
  border-top:1px solid var(--mei-border-soft, #e8eeee);
  text-decoration:none;
}

.live-list-row:hover{
  background:#fbfaf5;
  color:var(--mei-primary-dark, #2f5368);
  text-decoration:none;
}

.live-list-row .col-date{
  color:var(--mei-primary-dark, #2f5368);
  font-weight:900;
}

.live-list-row .venue-name{
  color:var(--mei-heading, #24343b);
  font-weight:900;
}

.live-list-row .venue-region{
  margin-top:6px;
}

.live-list-row .venue-title,
.live-list-row .col-performers{
  color:var(--mei-muted, #6f7e82);
}

.single-live .live-detail-meta{
  padding:clamp(18px, 4vw, 34px);
  border:1px solid rgba(54,95,115,.16);
  border-radius:var(--mei-radius-card, 14px);
  background:linear-gradient(135deg, rgba(255,254,250,.98), rgba(248,247,243,.94) 70%, rgba(230,239,242,.62));
  box-shadow:var(--mei-shadow-card, 0 10px 30px rgba(38,50,56,.05));
}

.single-live .live-headline{
  position:relative;
  margin-bottom:clamp(18px, 3vw, 30px);
  padding-bottom:16px;
  border-bottom:1px solid rgba(217,225,227,.85);
}

.single-live .live-headline::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:min(220px, 54%);
  height:2px;
  background:linear-gradient(90deg, var(--mei-accent, #b8895b), rgba(54,95,115,.14), rgba(54,95,115,0));
}

.live-today-badge,
.live-countdown{
  border-radius:999px;
  background:rgba(184,137,91,.14);
  color:var(--mei-primary-dark, #2f5368);
}

.live-detail-flyer{
  padding:.6rem;
  border:1px solid var(--mei-border-soft, #e8eeee);
  border-radius:12px;
  background:#f6f4ee;
  box-shadow:none;
}

.live-detail-flyer img{
  border-radius:8px;
}

.live-detail-flyer a{
  display:block;
  cursor:zoom-in;
}

.live-detail-flyer a:hover img,
.live-detail-flyer a:focus-visible img{
  filter:brightness(1.03);
}

.live-lineup,
.live-section,
.live-future-list{
  margin-top:clamp(20px, 3vw, 32px);
  padding:clamp(16px, 3vw, 24px);
}

.live-lineup__title,
.live-section__title,
.live-nextlist-title{
  color:var(--mei-heading, #24343b);
  font-weight:900;
}

.live-lineup__performer{
  border-color:var(--mei-border, #d9e1e3);
  background:#fbfaf5;
  color:var(--mei-primary-dark, #2f5368);
}

.live-lineup__performer--main{
  border-color:rgba(184,137,91,.35);
  background:rgba(184,137,91,.12);
  color:var(--mei-heading, #24343b);
}

.live-meta-row{
  border-color:var(--mei-border-soft, #e8eeee);
}

.live-map-embed{
  overflow:hidden;
  border:1px solid var(--mei-border-soft, #e8eeee);
  border-radius:12px;
  background:#f6f4ee;
}

.live-access-links a,
.live-copy-address{
  border:1px solid var(--mei-border, #d9e1e3);
  background:var(--mei-paper-surface, #fffefa);
  color:var(--mei-primary-dark, #2f5368);
}

.live-note__label{
  color:var(--mei-accent, #b8895b);
  font-weight:900;
  letter-spacing:.12em;
}

.single-post .article{
  background:var(--mei-paper-surface, #fffefa);
  border-color:var(--mei-border-soft, #e8eeee);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.single-post .article-header,
.single-post .entry-content,
.single-post .article-footer{
  color:var(--mei-ink, #263238);
}

.single-post .entry-title{
  color:var(--mei-heading, #24343b);
}

.sidebar .widget,
#sidebar .widget{
  border:1px solid var(--mei-border-soft, #e8eeee);
  border-radius:12px;
  background:var(--mei-paper-surface, #fffefa);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.sidebar .widget-title,
#sidebar .widget-title{
  color:var(--mei-heading, #24343b);
  border-bottom-color:var(--mei-border-soft, #e8eeee);
}

.pagination .page-numbers{
  border-radius:8px;
  border-color:var(--mei-border, #d9e1e3);
  background:var(--mei-paper-surface, #fffefa);
  color:var(--mei-primary-dark, #2f5368);
}

.pagination .page-numbers.current{
  border-color:var(--mei-primary-dark, #2f5368);
  background:var(--mei-primary-dark, #2f5368);
  color:#fff;
}

@media (max-width:767px){
  body:not(.home) .article{
    padding:16px 10px 26px;
    border-radius:12px;
  }

  body:not(.home) .entry-title,
  body:not(.home) .archive-title{
    font-size:23px;
    line-height:1.35;
  }

  .post-type-archive-live .mei-archive-head,
  .archive-live .mei-archive-head{
    align-items:stretch;
    flex-direction:column;
    padding:16px 12px;
  }

  .live-list-link,
  .live-archive-past-link a{
    width:100%;
  }

  .live-item:hover,
  .live-item:focus-within{
    transform:none;
  }

  .live-card-actions{
    grid-template-columns:1fr;
    gap:8px;
  }

  .live-card-action,
  .live-access-links a,
  .live-copy-address,
  .live-history-search__actions button{
    min-height:48px;
  }

  .live-history-search{
    padding:14px 12px;
  }

  .live-history-search__keyword,
  .live-history-search__field,
  .live-history-search__actions{
    min-width:0;
  }

  .live-history-search input,
  .live-history-search select{
    width:100%;
    min-height:48px;
  }

  .live-list-head{
    display:none;
  }

  .live-list-row{
    display:grid;
    grid-template-columns:1fr;
    gap:5px;
    padding:13px 12px;
  }

  .live-list-row .col-date{
    font-size:15px;
  }

  .live-list-row .venue-name{
    font-size:16px;
  }

  .single-live .live-detail-meta{
    padding:16px 10px;
    border-radius:12px;
  }

  .single-live .live-headline{
    font-size:22px;
  }

  .live-detail-flyer{
    padding:.42rem;
  }

  .live-lineup,
  .live-section,
  .live-future-list{
    padding:14px 12px;
  }

  .live-lineup__list{
    gap:8px;
  }

  .live-lineup__performer{
    min-height:42px;
  }

  .live-access-links{
    align-items:stretch;
    flex-direction:column;
  }

  .live-access-links a,
  .live-copy-address{
    justify-content:center;
    width:100%;
  }
}

/* === Mei Archive site-wide refinement v1.1: tap targets === */
.live-lineup__performer{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  height:auto !important;
  min-height:40px !important;
  padding:8px 12px !important;
  border-radius:999px;
  text-decoration:none;
}

.live-access-links a,
.live-copy-address,
.live-card-action,
.live-list-link,
.live-archive-past-link a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

@media (max-width:767px){
  .live-lineup__performer{
    min-height:44px !important;
    padding:9px 13px !important;
  }
}


/* === Mei Archive blog reading refinement v1 === */
.single-post .article{
  background:#fff !important;
  border-color:#ece7dc;
  box-shadow:0 14px 38px rgba(38,50,56,.045);
}

.single-post .article-header,
.single-post .article-footer{
  font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
}

.single-post .entry-content{
  max-width:1060px;
  color:#252b2c;
  font-family:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", "MS PMincho", serif;
  font-size:clamp(17px, 1.42vw, 19px);
  font-weight:500;
  line-height:2.18;
  letter-spacing:.03em;
  font-feature-settings:"palt" 0;
}

.single-post .entry-content > :where(p, ul, ol, blockquote, h2, h3, h4, h5, h6, table, .wp-block-table, .blogcard-wrap){
  max-width:720px;
}

.single-post .entry-content > p{
  margin-bottom:2.05em;
}

.single-post .entry-content strong,
.single-post .entry-content b{
  color:#1f2b2f;
  font-weight:700;
}

.single-post .entry-content :where(h2, h3, h4){
  font-family:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", "MS PMincho", serif;
  color:#24343b;
  font-weight:700;
  letter-spacing:.04em;
}

.single-post .entry-content a{
  text-underline-offset:.22em;
  text-decoration-thickness:1px;
}

.single-post .entry-content > :where(figure, .wp-block-image){
  max-width:min(100%, 980px);
  margin:clamp(42px, 6vw, 72px) auto;
}

.single-post .entry-content :where(.wp-block-image a, figure a:has(img)){
  display:block;
  cursor:zoom-in;
}

.single-post .entry-content :where(.wp-block-image img, figure img){
  border-radius:4px;
  box-shadow:0 12px 30px rgba(38,50,56,.08);
}

.single-post .entry-content figcaption{
  margin-top:12px;
  color:#7b7470;
  font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size:13px;
  line-height:1.7;
  text-align:center;
}

.mei-lightbox{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  padding:clamp(18px, 4vw, 54px);
  background:rgba(21,26,29,.74);
  opacity:0;
  pointer-events:none;
  transition:opacity .24s ease;
}

.mei-lightbox.is-open{
  opacity:1;
  pointer-events:auto;
}

.mei-lightbox__stage{
  position:relative;
  display:grid;
  gap:12px;
  justify-items:center;
  max-width:min(1120px, 100%);
  max-height:100%;
  transform:translateY(10px) scale(.985);
  transition:transform .24s ease;
}

.mei-lightbox.is-open .mei-lightbox__stage{
  transform:translateY(0) scale(1);
}

.mei-lightbox__image{
  display:block;
  max-width:100%;
  max-height:calc(100vh - 128px);
  border-radius:6px;
  background:#fff;
  box-shadow:0 24px 70px rgba(0,0,0,.36);
}

.mei-lightbox__caption{
  max-width:min(720px, 100%);
  color:#f8f2e8;
  font-size:13px;
  line-height:1.7;
  text-align:center;
}

.mei-lightbox__close{
  position:absolute;
  top:-14px;
  right:-14px;
  z-index:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:999px;
  background:rgba(255,254,250,.96);
  color:#263238;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(0,0,0,.24);
}

.mei-lightbox__close:focus-visible{
  outline:2px solid #e3d2bd;
  outline-offset:3px;
}

body.mei-lightbox-open{
  overflow:hidden;
}

@media (max-width:767px){
  .single-post .article{
    padding-inline:14px;
  }

  .single-post .entry-content{
    font-size:16.5px;
    line-height:2.05;
    letter-spacing:.02em;
  }

  .single-post .entry-content > :where(p, ul, ol, blockquote, h2, h3, h4, h5, h6, table, .wp-block-table, .blogcard-wrap){
    max-width:100%;
  }

  .single-post .entry-content > p{
    margin-bottom:1.85em;
  }

  .single-post .entry-content > :where(figure, .wp-block-image){
    margin-block:34px;
  }

  .mei-lightbox{
    padding:14px;
  }

  .mei-lightbox__image{
    max-height:calc(100vh - 106px);
  }

  .mei-lightbox__close{
    top:8px;
    right:8px;
    width:42px;
    height:42px;
  }
}

/* === Mei Archive blog typography refinement v1.1 === */
.single-post .article-header{
  max-width:720px;
}

.single-post .entry-title{
  color:#202b2f !important;
  font-family:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", "MS PMincho", serif;
  font-size:clamp(30px, 3vw, 40px);
  font-weight:700 !important;
  line-height:1.36;
  letter-spacing:.045em;
}

.single-post .entry-title::after{
  width:min(190px, 38%);
  background:linear-gradient(90deg, rgba(184,137,91,.86), rgba(184,137,91,.22), rgba(54,95,115,0));
}

.single-post .date-tags{
  max-width:720px;
  margin-inline:auto;
  font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
}

.single-post .entry-content{
  line-height:2.05;
  letter-spacing:.025em;
}

.single-post .entry-content > :where(p, ul, ol, blockquote, h2, h3, h4, h5, h6, table, .wp-block-table, .blogcard-wrap){
  max-width:700px;
}

.single-post .entry-content > p{
  margin-bottom:1.75em;
}

@media (max-width:767px){
  .single-post .entry-title{
    font-size:clamp(26px, 8vw, 32px);
    line-height:1.42;
    letter-spacing:.035em;
  }

  .single-post .entry-content{
    line-height:1.98;
    letter-spacing:.018em;
  }
}



/* === Mei Archive blog term contrast fix v1 === */
.single-post .mei-blog-after__term--category,
.single-post .entry-categories .cat-link{
  border-color:#2f3f4b !important;
  background:#2f3f4b !important;
  color:#fffefa !important;
}

.single-post .mei-blog-after__term--category:visited,
.single-post .entry-categories .cat-link:visited{
  color:#fffefa !important;
}

.single-post .mei-blog-after__term--category:hover,
.single-post .entry-categories .cat-link:hover{
  border-color:#24343b !important;
  background:#24343b !important;
  color:#fffefa !important;
  text-decoration:none;
}

.single-post .mei-blog-after__term:not(.mei-blog-after__term--category),
.single-post .entry-tags .tag-link{
  border-color:var(--mei-border, #d9e1e3) !important;
  background:#fffefa !important;
  color:var(--mei-primary-dark, #2f5368) !important;
}

/* === Mei Archive directory reading surface v1 === */
.mei-directory--detail{
  padding:clamp(24px, 4vw, 44px);
  border:1px solid rgba(217,225,227,.78);
  border-radius:var(--mei-radius-card, 14px);
  background:#fff !important;
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.mei-directory--detail .mei-directory__head,
.mei-directory--detail .mei-directory-search,
.mei-directory--detail .mei-directory-history,
.mei-directory--detail .mei-directory-related,
.mei-directory--detail .mei-directory__note{
  background:#fff;
}

.mei-directory--detail .mei-directory-stats,
.mei-directory--detail .mei-directory-related__item,
.mei-directory--detail .mei-directory__note{
  border-color:var(--mei-border-soft, #e8eeee);
  background:#fbfdff;
}

.mei-directory--detail .mei-directory-history__item{
  padding:clamp(14px, 2.5vw, 20px) 0;
}

.mei-directory--detail .mei-directory-history__link,
.mei-directory--detail .mei-directory-related__item{
  background:#fff;
}

.mei-directory--detail .mei-directory-related__item:hover{
  background:#fbfaf5;
}

@media (max-width:767px){
  .mei-directory--detail{
    padding:18px 12px 24px;
    border-radius:12px;
  }
}

/* === Mei Archive blog after-list weight fix v1 === */
.single-post .mei-blog-after__panel a{
  color:#26323a !important;
  text-decoration:none;
}

.single-post .mei-blog-after__panel a strong{
  color:#1f2a2f;
  font-weight:700;
  letter-spacing:.035em;
}

.single-post .mei-blog-after-posts__meta{
  color:#748895;
  font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size:.86em;
  font-weight:700;
  letter-spacing:.02em;
}

.single-post .mei-blog-after__panel a:hover strong{
  color:var(--mei-primary-dark, #2f5368);
}

/* === Mei Archive directory list white surface v1 === */
.mei-directory:not(.mei-directory--detail){
  padding:clamp(24px, 4vw, 44px);
  border:1px solid rgba(217,225,227,.78);
  border-radius:var(--mei-radius-card, 14px);
  background:#fff !important;
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.mei-directory:not(.mei-directory--detail) .mei-directory__head,
.mei-directory:not(.mei-directory--detail) .mei-directory__group,
.mei-directory:not(.mei-directory--detail) .mei-directory__grid{
  background:#fff;
}

.mei-directory:not(.mei-directory--detail) .mei-directory-card{
  border-color:var(--mei-border-soft, #e8eeee);
  background:#fff;
  box-shadow:0 8px 20px rgba(38,50,56,.035);
}

.mei-directory:not(.mei-directory--detail) .mei-directory-card:hover{
  background:#fbfaf5;
  box-shadow:0 10px 24px rgba(38,50,56,.055);
}

@media (max-width:767px){
  .mei-directory:not(.mei-directory--detail){
    padding:18px 12px 24px;
    border-radius:12px;
  }
}

/* === Mei Archive blog archive typography v1 === */
.blog .main .entry-card-content,
.category .main .entry-card-content,
.archive.category .main .entry-card-content{
  color:#26323a;
  font-family:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", "MS PMincho", serif;
}

.blog .main .entry-card-title,
.category .main .entry-card-title,
.archive.category .main .entry-card-title{
  color:#1f2a2f;
  font-family:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", "MS PMincho", serif;
  font-size:clamp(20px, 2vw, 24px);
  font-weight:700;
  line-height:1.45;
  letter-spacing:.035em;
}

.blog .main .entry-card-snippet,
.category .main .entry-card-snippet,
.archive.category .main .entry-card-snippet{
  color:#2f4f5d;
  font-family:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", "MS PMincho", serif;
  font-size:15.5px;
  font-weight:500;
  line-height:1.75;
  letter-spacing:.018em;
}

.blog .main .entry-card-meta,
.category .main .entry-card-meta,
.archive.category .main .entry-card-meta,
.blog .main .cat-label,
.category .main .cat-label,
.archive.category .main .cat-label{
  font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
}

.blog .main .entry-card-wrap:hover .entry-card-title,
.category .main .entry-card-wrap:hover .entry-card-title,
.archive.category .main .entry-card-wrap:hover .entry-card-title{
  color:var(--mei-primary-dark, #2f5368);
}

@media (max-width:767px){
  .blog .main .entry-card-title,
  .category .main .entry-card-title,
  .archive.category .main .entry-card-title{
    font-size:19px;
    line-height:1.5;
  }

  .blog .main .entry-card-snippet,
  .category .main .entry-card-snippet,
  .archive.category .main .entry-card-snippet{
    font-size:14.8px;
    line-height:1.72;
  }
}

/* === Mei Archive blog archive title-led layout v1 === */
.blog .main .entry-card-snippet,
.category .main .entry-card-snippet,
.archive.category .main .entry-card-snippet{
  display:none !important;
}

.blog .main .entry-card-wrap,
.category .main .entry-card-wrap,
.archive.category .main .entry-card-wrap{
  padding-block:clamp(18px, 3vw, 30px);
}

.blog .main .entry-card,
.category .main .entry-card,
.archive.category .main .entry-card{
  align-items:center;
}

.blog .main .entry-card-content,
.category .main .entry-card-content,
.archive.category .main .entry-card-content{
  display:grid;
  align-content:center;
  gap:clamp(12px, 1.8vw, 18px);
  min-height:clamp(170px, 20vw, 230px);
}

.blog .main .entry-card-title,
.category .main .entry-card-title,
.archive.category .main .entry-card-title{
  max-width:12em;
  color:#1d282d;
  font-size:clamp(30px, 3.5vw, 46px);
  font-weight:800;
  line-height:1.14;
  letter-spacing:.04em;
  text-wrap:balance;
}

.blog .main .entry-card-meta,
.category .main .entry-card-meta,
.archive.category .main .entry-card-meta{
  color:#5f7481;
  font-size:13px;
  font-weight:700;
  letter-spacing:.05em;
}

.blog .main .entry-card-wrap:hover .entry-card-title,
.category .main .entry-card-wrap:hover .entry-card-title,
.archive.category .main .entry-card-wrap:hover .entry-card-title{
  color:#2f5368;
}

@media (max-width:767px){
  .blog .main .entry-card-content,
  .category .main .entry-card-content,
  .archive.category .main .entry-card-content{
    min-height:auto;
    gap:10px;
  }

  .blog .main .entry-card-title,
  .category .main .entry-card-title,
  .archive.category .main .entry-card-title{
    max-width:none;
    font-size:clamp(25px, 7vw, 34px);
    line-height:1.2;
  }
}

/* === Mei Archive blog next-live invitation v1 === */
.single-post .mei-blog-after__panel--live{
  position:relative;
  overflow:hidden;
  margin:clamp(54px, 7vw, 82px) 0 clamp(38px, 5vw, 58px);
  padding:clamp(24px, 4vw, 42px);
  border:1px solid rgba(185,203,214,.84);
  border-radius:18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(250,249,244,.98) 48%, rgba(238,247,252,.96)),
    #fff;
  box-shadow:0 18px 42px rgba(38,50,56,.08);
}

.single-post .mei-blog-after__panel--live::before{
  content:"LIVE";
  position:absolute;
  right:clamp(18px, 3vw, 34px);
  top:clamp(14px, 2.4vw, 24px);
  color:rgba(47,83,104,.08);
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(62px, 11vw, 118px);
  font-weight:700;
  letter-spacing:.06em;
  line-height:1;
  pointer-events:none;
}

.single-post .mei-blog-after__panel--live .mei-blog-after__title{
  position:relative;
  z-index:1;
  display:block;
  margin:0 0 clamp(22px, 3vw, 34px);
  color:#1f2a2f;
  font-size:clamp(34px, 5.2vw, 58px);
  font-weight:900;
  line-height:1.08;
  letter-spacing:.045em;
}

.single-post .mei-blog-after__panel--live .mei-blog-after__title::after{
  display:block;
  width:86px;
  height:3px;
  margin-top:16px;
  background:linear-gradient(90deg, #c49861, rgba(47,83,104,.26));
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(240px, .92fr) minmax(0, 1.08fr);
  gap:clamp(22px, 4vw, 38px);
  align-items:stretch;
  padding:0;
  border:0;
  background:transparent;
  color:#1f2a2f;
  text-decoration:none;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live:hover{
  border-color:transparent;
  background:transparent;
  color:#1f2a2f;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__thumb{
  aspect-ratio:4/3;
  border:1px solid rgba(255,255,255,.78);
  border-radius:14px;
  background:#edf4f8;
  box-shadow:0 14px 28px rgba(38,50,56,.13);
  transform:translateZ(0);
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease, filter .35s ease;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live:hover .mei-blog-after-live__thumb img{
  filter:saturate(1.05) contrast(1.03);
  transform:scale(1.025);
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:clamp(8px, 1.6vw, 16px) 0;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__date{
  width:max-content;
  margin-bottom:clamp(12px, 2vw, 18px);
  padding:7px 12px;
  border:1px solid rgba(47,83,104,.2);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:#2f5368;
  font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size:clamp(13px, 1.5vw, 15px);
  font-weight:800;
  letter-spacing:.08em;
  line-height:1;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live strong{
  display:block;
  max-width:10.5em;
  color:#1f2a2f;
  font-family:"Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", "MS PMincho", serif;
  font-size:clamp(28px, 4.2vw, 48px);
  font-weight:900;
  line-height:1.18;
  letter-spacing:.035em;
  text-wrap:balance;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__time{
  margin-top:clamp(16px, 2.4vw, 24px);
  color:#596d7a;
  font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size:clamp(14px, 1.7vw, 16px);
  font-weight:800;
  letter-spacing:.08em;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__body::after{
  content:"ライブ詳細へ";
  width:max-content;
  margin-top:clamp(22px, 3vw, 32px);
  padding:12px 18px;
  border:1px solid #2f5368;
  border-radius:999px;
  background:#2f5368;
  color:#fff;
  font-family:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size:14px;
  font-weight:800;
  letter-spacing:.06em;
  line-height:1;
  box-shadow:0 10px 22px rgba(47,83,104,.16);
  transition:background .2s ease, transform .2s ease, box-shadow .2s ease;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live:hover .mei-blog-after-live__body::after{
  background:#244456;
  box-shadow:0 14px 28px rgba(47,83,104,.22);
  transform:translateY(-1px);
}

@media (max-width:767px){
  .single-post .mei-blog-after__panel--live{
    margin:42px -2px 34px;
    padding:22px 16px 24px;
    border-radius:15px;
  }

  .single-post .mei-blog-after__panel--live::before{
    right:10px;
    top:12px;
    font-size:64px;
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after__title{
    margin-bottom:18px;
    font-size:clamp(30px, 10vw, 42px);
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after-live{
    grid-template-columns:1fr;
    gap:18px;
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after-live__thumb{
    border-radius:12px;
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after-live__body{
    padding:0 2px;
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after-live strong{
    max-width:none;
    font-size:clamp(27px, 8.4vw, 38px);
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after-live__body::after{
    width:100%;
    box-sizing:border-box;
    text-align:center;
  }
}

/* === Mei Archive blog body ink weight v1 === */
.single-post .entry-content > p,
.single-post .entry-content > ul,
.single-post .entry-content > ol{
  color:#1f2629;
  font-weight:600;
  letter-spacing:.018em;
  line-height:2.08;
  text-rendering:optimizeLegibility;
}

.single-post .entry-content > p{
  margin-bottom:1.8em;
}

@media (max-width:767px){
  .single-post .entry-content > p,
  .single-post .entry-content > ul,
  .single-post .entry-content > ol{
    font-weight:600;
    letter-spacing:.012em;
    line-height:2.02;
  }
}

/* === Mei Archive live surfaces refinement v1 === */
.single-post .mei-blog-after__panel--live{
  overflow:visible;
  margin:clamp(48px, 6vw, 72px) 0 clamp(34px, 5vw, 52px);
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.single-post .mei-blog-after__panel--live::before{
  content:none;
}

.single-post .mei-blog-after__panel--live .mei-blog-after__title{
  display:grid;
  grid-template-columns:auto minmax(54px, 1fr);
  gap:12px;
  align-items:end;
  margin:0 0 clamp(18px, 2.7vw, 26px);
  color:#24343b;
  font-size:clamp(25px, 2.6vw, 32px);
  font-weight:800;
  line-height:1.35;
  letter-spacing:.035em;
}

.single-post .mei-blog-after__panel--live .mei-blog-after__title::after{
  display:block;
  width:auto;
  height:1px;
  margin:0 0 .68em;
  background:linear-gradient(90deg, rgba(89,128,160,.34), rgba(89,128,160,0));
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live{
  grid-template-columns:minmax(220px, .95fr) minmax(0, 1.05fr);
  gap:clamp(20px, 3.5vw, 34px);
  align-items:center;
  padding:0;
  border:0;
  background:transparent;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__thumb{
  overflow:hidden;
  aspect-ratio:16/10;
  border:0;
  border-radius:12px;
  background:#edf4f8;
  box-shadow:0 14px 28px rgba(38,50,56,.12);
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__body{
  padding:4px 0;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__date{
  margin-bottom:10px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#526a78;
  font-size:13px;
  letter-spacing:.08em;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live strong{
  max-width:14em;
  color:#1f2a2f;
  font-size:clamp(24px, 2.8vw, 33px);
  line-height:1.38;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__time{
  margin-top:12px;
  color:#607481;
  font-size:14px;
}

.single-post .mei-blog-after__panel--live .mei-blog-after-live__body::after{
  margin-top:20px;
  padding:11px 17px;
  font-size:13px;
}

.live-archive--upcoming .live-item{
  border-color:rgba(211,223,229,.95);
  background:#fff !important;
  box-shadow:0 12px 28px rgba(38,50,56,.055);
}

.live-archive--upcoming .live-item:hover,
.live-archive--upcoming .live-item:focus-within{
  border-color:rgba(91,132,157,.34);
  background:#fff !important;
  box-shadow:0 16px 34px rgba(38,50,56,.085);
}

.live-archive--upcoming .live-archive .live-title,
.live-archive--upcoming .live-title{
  background:#fff;
  border-bottom:1px solid rgba(225,233,237,.9);
}

.live-archive--upcoming .live-meta,
.live-archive--upcoming .live-card-actions{
  background:#fff;
}

.live-archive--upcoming .live-thumb{
  overflow:hidden;
  margin-inline:0;
  border-radius:12px;
}

.live-archive--upcoming .live-thumb img{
  border-radius:12px;
}

/* === Mei Archive content link hover unification v1 === */
body:not(.single-post) .main a[href]:not(:where(
  .button,
  .btn,
  [class*="button"],
  [class*="action"],
  [class*="card"],
  [class*="__link"],
  .mei-directory__back-top,
  .mei-directory-search__links a,
  .pagination .page-numbers,
  .live-link,
  .live-list-row,
  .live-detail-flyer a,
  .live-photos__item
)):not(:has(img)){
  border-radius:3px;
  color:var(--mei-primary-dark, #2f5368);
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(47,83,104,.28);
  text-underline-offset:.22em;
  transition:color .16s ease, background-color .16s ease, text-decoration-color .16s ease;
}

body:not(.single-post) .main a[href]:not(:where(
  .button,
  .btn,
  [class*="button"],
  [class*="action"],
  [class*="card"],
  [class*="__link"],
  .live-link,
  .live-list-row,
  .live-detail-flyer a,
  .live-photos__item
)):not(:has(img)):hover,
body:not(.single-post) .main a[href]:not(:where(
  .button,
  .btn,
  [class*="button"],
  [class*="action"],
  [class*="card"],
  [class*="__link"],
  .live-link,
  .live-list-row,
  .live-detail-flyer a,
  .live-photos__item
)):not(:has(img)):focus-visible{
  background-color:rgba(184,137,91,.12);
  color:#173f62;
  text-decoration-color:rgba(184,137,91,.78);
}

body:not(.single-post) .main .live-access-links a,
body:not(.single-post) .main .live-detail-meta .live-access-links a,
body:not(.single-post) .main .live-detail-meta .live-access-links a[href*="google.com/maps"],
body:not(.single-post) .main .live-detail-meta .live-access-links a[href*="goo.gl/maps"],
body:not(.single-post) .main .live-detail-meta .live-access-links a[href*="maps.app.goo.gl"],
body:not(.single-post) .main .live-copy-address{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:11px var(--mei-space-lg);
  border:var(--mei-border-default);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-surface);
  color:var(--mei-color-text);
  box-shadow:var(--mei-shadow-soft);
  font-family:var(--mei-font-ui);
  font-size:var(--mei-text-body-sm);
  font-weight:600;
  line-height:var(--mei-leading-snug);
  text-decoration:none;
  text-decoration-line:none;
}

@media (max-width:767px){
  .single-post .mei-blog-after__panel--live{
    margin:42px 0 34px;
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after__title{
    font-size:24px;
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after-live{
    grid-template-columns:1fr;
    gap:16px;
  }

  .single-post .mei-blog-after__panel--live .mei-blog-after-live strong{
    max-width:none;
    font-size:clamp(23px, 7vw, 30px);
  }
}

/* === Mei Archive mobile action consistency v1 === */
:where(
  .mei-next-live__action,
  .live-card-action,
  .live-access-links a,
  .live-copy-address,
  .live-list-link,
  .live-archive-past-link a,
  .live-load-more__button,
  .live-history-search__actions a,
  .live-history-search__actions button,
  .mei-home-search__form button,
  .mei-home-social-prompt__links a,
  .mei-home-notice__links a,
  .mei-directory-search__links a,
  .mei-directory__back-top
){
  transition:
    background-color var(--mei-transition-fast),
    border-color var(--mei-transition-fast),
    color var(--mei-transition-fast),
    box-shadow var(--mei-transition-fast),
    transform var(--mei-transition-fast);
}

:where(
  .mei-next-live__action,
  .live-card-action,
  .live-access-links a,
  .live-copy-address,
  .live-list-link,
  .live-archive-past-link a,
  .live-load-more__button,
  .live-history-search__actions a,
  .live-history-search__actions button,
  .mei-home-search__form button,
  .mei-home-social-prompt__links a,
  .mei-home-notice__links a,
  .mei-directory-search__links a,
  .mei-directory__back-top
):hover,
:where(
  .mei-next-live__action,
  .live-card-action,
  .live-access-links a,
  .live-copy-address,
  .live-list-link,
  .live-archive-past-link a,
  .live-load-more__button,
  .live-history-search__actions a,
  .live-history-search__actions button,
  .mei-home-search__form button,
  .mei-home-social-prompt__links a,
  .mei-home-notice__links a,
  .mei-directory-search__links a,
  .mei-directory__back-top
):focus-visible{
  border-color:rgba(47,83,104,.48);
  box-shadow:var(--mei-shadow-hover);
  text-decoration:none;
  transform:translateY(-1px);
}

:where(
  .mei-next-live__action,
  .live-card-action,
  .live-access-links a,
  .live-copy-address,
  .live-list-link,
  .live-archive-past-link a,
  .live-load-more__button,
  .live-history-search__actions a,
  .live-history-search__actions button,
  .mei-home-search__form button,
  .mei-home-social-prompt__links a,
  .mei-home-notice__links a,
  .mei-directory-search__links a,
  .mei-directory__back-top
):focus-visible{
  outline:2px solid var(--mei-color-focus);
  outline-offset:3px;
}

:where(
  .live-item,
  .live-list-row,
  .mei-upcoming-list__item a,
  .mei-home-trace-card,
  .mei-home-recent__link,
  .mei-directory-card,
  .mei-directory-related__item
){
  transition:
    background-color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}

:where(
  .live-item,
  .live-list-row,
  .mei-upcoming-list__item a,
  .mei-home-trace-card,
  .mei-home-recent__link,
  .mei-directory-card,
  .mei-directory-related__item
):hover,
:where(
  .live-item,
  .live-list-row,
  .mei-upcoming-list__item a,
  .mei-home-trace-card,
  .mei-home-recent__link,
  .mei-directory-card,
  .mei-directory-related__item
):focus-within{
  border-color:rgba(91,132,157,.34);
  box-shadow:0 12px 26px rgba(38,50,56,.075);
}

@media (max-width:767px){
  :where(
    .mei-next-live__action,
    .live-card-action,
    .live-access-links a,
    .live-copy-address,
    .live-list-link,
    .live-archive-past-link a,
    .live-load-more__button,
    .live-history-search__actions a,
    .live-history-search__actions button,
    .mei-home-search__form button,
    .mei-home-social-prompt__links a,
    .mei-home-notice__links a,
    .mei-directory-search__links a,
    .mei-directory__back-top
  ){
    min-height:46px !important;
    padding:10px 14px !important;
    line-height:1.35;
  }

  :where(.mei-next-live__actions, .live-card-actions, .live-access-links, .live-history-search__actions){
    gap:9px;
  }

  .mei-next-live__actions .mei-next-live__action,
  .live-card-actions .live-card-action{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:46px !important;
    padding:10px 14px !important;
  }

  :where(.live-card-actions, .live-access-links, .live-history-search__actions){
    display:grid;
    grid-template-columns:1fr;
  }

  :where(.live-card-action, .live-access-links a, .live-copy-address, .live-history-search__actions a, .live-history-search__actions button){
    width:100%;
    box-sizing:border-box;
  }

  :where(.mei-upcoming-list__link, .mei-home-recent__link, .live-list-row, .mei-directory-card, .mei-directory-related__item){
    min-height:48px;
  }

  :where(.live-item, .mei-directory:not(.mei-directory--detail), .mei-directory--detail){
    border-radius:12px;
  }

  :where(
    .mei-next-live__action,
    .live-card-action,
    .live-access-links a,
    .live-copy-address,
    .live-list-link,
    .live-archive-past-link a,
    .live-load-more__button,
    .live-history-search__actions a,
    .live-history-search__actions button,
    .mei-home-search__form button,
    .mei-home-social-prompt__links a,
    .mei-home-notice__links a,
    .mei-directory-search__links a,
    .mei-directory__back-top,
    .live-item,
    .live-list-row,
    .mei-upcoming-list__item a,
    .mei-home-trace-card,
    .mei-home-recent__link,
    .mei-directory-card,
    .mei-directory-related__item
  ):hover,
  :where(
    .mei-next-live__action,
    .live-card-action,
    .live-access-links a,
    .live-copy-address,
    .live-list-link,
    .live-archive-past-link a,
    .live-load-more__button,
    .live-history-search__actions a,
    .live-history-search__actions button,
    .mei-home-search__form button,
    .mei-home-social-prompt__links a,
    .mei-home-notice__links a,
    .mei-directory-search__links a,
    .mei-directory__back-top,
    .live-item,
    .live-list-row,
    .mei-upcoming-list__item a,
    .mei-home-trace-card,
    .mei-home-recent__link,
    .mei-directory-card,
    .mei-directory-related__item
  ):focus-within{
    transform:none;
  }
}

/* === Mei Archive related live history link affordance v1 === */
.mei-related-lives__history .mei-related-lives__link{
  cursor:pointer;
  transition:
    background-color .16s ease,
    color .16s ease,
    text-decoration-color .16s ease,
    transform .16s ease;
}

.mei-related-lives__history .mei-related-lives__item:has(.mei-related-lives__link:hover),
.mei-related-lives__history .mei-related-lives__item:has(.mei-related-lives__link:focus-visible){
  background:rgba(184,137,91,.12);
}

/* === Mei Archive continuous live calendar v1 === */
.live-view-switcher{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:7px;
}

.live-view-switcher__item{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:8px 14px;
  border:1px solid var(--mei-border, #d9e1e3);
  border-radius:999px;
  background:rgba(255,254,250,.8);
  color:var(--mei-primary-dark, #2f5368);
  font-size:13px;
  font-weight:800;
  line-height:1.35;
  text-decoration:none;
  transition:background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease;
}

.live-view-switcher__item:hover,
.live-view-switcher__item:focus-visible{
  border-color:rgba(47,83,104,.4);
  background:#fff;
  text-decoration:none;
}

.live-view-switcher__item:focus-visible{
  outline:2px solid rgba(184,137,91,.48);
  outline-offset:2px;
}

.live-view-switcher__item.is-active{
  border-color:var(--mei-primary-dark, #2f5368);
  background:var(--mei-primary-dark, #2f5368);
  color:#fff !important;
  box-shadow:0 6px 16px rgba(47,83,104,.14);
}

.post-type-archive-live .live-view-switcher__item.is-active,
.post-type-archive-live .live-view-switcher__item.is-active:link,
.post-type-archive-live .live-view-switcher__item.is-active:visited,
.post-type-archive-live .live-view-switcher__item.is-active:hover,
.post-type-archive-live .live-view-switcher__item.is-active:focus-visible{
  color:#fff !important;
  text-decoration:none !important;
}

.live-view-panel[hidden],
.live-calendar-picker[hidden]{
  display:none !important;
}

.live-schedule-list{
  width:min(100%, 840px);
  margin:0 auto clamp(32px, 5vw, 56px);
}

.live-schedule-list__month{
  margin:0 0 clamp(26px, 4vw, 42px);
}

.live-schedule-list__month-heading{
  margin:0 0 8px;
  padding:0 0 11px;
  border-bottom:var(--mei-border-soft-line, 1px solid #e8eeee);
  color:var(--mei-color-heading, #24343b);
  font-size:clamp(18px, 2.2vw, 22px);
  font-weight:800;
  line-height:1.35;
}

.live-schedule-list__items{
  display:block;
  margin:0;
  padding:0;
  list-style:none;
}

.live-schedule-list__item{
  margin:0;
  border-bottom:var(--mei-border-soft-line, 1px solid #e8eeee);
}

.live-schedule-list__content{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:clamp(18px, 2.8vw, 24px) 0;
  color:var(--mei-color-text, #263238);
  line-height:1.52;
}

.live-schedule-list__content > time,
.live-schedule-list__content > span{
  display:block;
}

.live-schedule-list__date{
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:15px;
  font-weight:650;
  line-height:1.35;
}

.live-schedule-list__item.is-nearest .live-schedule-list__date,
.live-schedule-list__item.is-nearest .live-schedule-list__venue{
  font-weight:750;
}

.live-schedule-list__item.is-saturday .live-schedule-list__date{
  color:var(--mei-color-saturday, #386d91);
}

.live-schedule-list__item.is-sunday .live-schedule-list__date,
.live-schedule-list__item.is-holiday .live-schedule-list__date{
  color:var(--mei-color-holiday, #a94d50);
}

.live-schedule-list__venue{
  color:var(--mei-color-heading, #24343b);
  font-size:clamp(17px, 2vw, 19px);
  font-weight:650;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.live-schedule-list__title{
  color:var(--mei-color-text, #263238);
  font-size:15px;
  font-weight:500;
  line-height:1.55;
  overflow-wrap:anywhere;
}

.live-schedule-list__region,
.live-schedule-list__time{
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:13px;
  font-weight:600;
  line-height:1.45;
}

.live-schedule-empty,
.live-history-teaser{
  width:min(100%, 840px);
  margin:clamp(24px, 5vw, 48px) auto;
  padding:clamp(18px, 3vw, 24px);
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:var(--mei-color-surface, #fffefa);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.live-history-teaser{
  text-align:center;
}

.live-history-teaser h2{
  margin:0 0 8px;
  color:var(--mei-color-heading, #24343b);
  font-size:20px;
  line-height:1.35;
}

.live-history-teaser p{
  margin:0 0 16px;
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:14px;
  line-height:1.7;
}

.live-history-teaser a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 22px;
  border:var(--mei-border-default, 1px solid #d9e1e3);
  border-radius:var(--mei-radius-pill, 999px);
  background:var(--mei-color-surface-clean, #fff);
  color:var(--mei-color-primary-dark, #2f5368);
  font-weight:700;
  text-decoration:none;
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.live-history-teaser a:hover,
.live-history-teaser a:focus-visible{
  border-color:rgba(47,83,104,.36);
  background:var(--mei-color-surface-clean, #fff);
  color:var(--mei-color-primary-hover, #243f50);
  text-decoration:none;
}

.live-history-teaser a:focus-visible{
  outline:3px solid var(--mei-color-focus, rgba(184,137,91,.42));
  outline-offset:2px;
}

.live-calendar{
  --calendar-bg:#f7f5ef;
  --calendar-cell-bg:#fffefa;
  --calendar-cell-bg-muted:#f4f2ed;
  --calendar-saturday:#386d91;
  --calendar-saturday-bg:#f0f6f8;
  --calendar-holiday:#a94d50;
  --calendar-holiday-bg:#fbf1ef;
  --calendar-text:#263238;
  --calendar-text-muted:#748086;
  --calendar-today:#b8895b;
  --calendar-radius:10px;
  --calendar-gap:7px;
  display:flex;
  flex-direction:column;
  gap:clamp(28px, 5vw, 52px);
  margin:0 auto clamp(34px, 6vw, 68px);
  color:var(--calendar-text);
}

.live-calendar__month{
  overflow:hidden;
  padding:clamp(15px, 2.6vw, 26px);
  border:1px solid rgba(54,95,115,.14);
  border-radius:16px;
  background:linear-gradient(145deg, rgba(255,254,250,.99), rgba(247,245,239,.96));
  box-shadow:0 12px 30px rgba(38,50,56,.05);
}

.live-calendar__month-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
  padding:0 4px 14px;
  border-bottom:1px solid rgba(54,95,115,.12);
}

.live-calendar__month-head h2{
  display:flex;
  align-items:baseline;
  gap:12px;
  margin:0;
  color:var(--mei-heading, #24343b);
  line-height:1.1;
}

.live-calendar__month-head h2 strong{
  font-size:clamp(27px, 3.8vw, 43px);
  font-weight:900;
  letter-spacing:-.035em;
}

.live-calendar__month-head h2 small{
  color:var(--mei-accent, #b8895b);
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
}

.live-calendar__month-head p{
  margin:0;
  color:var(--calendar-text-muted);
  font-size:12px;
  font-weight:650;
}

.live-calendar__month-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:10px;
}

.live-calendar-export-button{
  min-height:40px;
  padding:8px 14px;
  border:1px solid var(--mei-color-border, #d9e1e3);
  border-radius:999px;
  background:var(--mei-color-surface-clean, #fff);
  color:var(--mei-color-primary-dark, #2f5368);
  font:inherit;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
}

.live-calendar-export-button:hover,
.live-calendar-export-button:focus-visible{
  border-color:rgba(47,83,104,.32);
  background:var(--mei-color-surface-soft, #f3f6f6);
}

.live-calendar-export-button:focus-visible{
  outline:3px solid var(--mei-color-focus, rgba(184,137,91,.42));
  outline-offset:2px;
}

.live-calendar-export-button[disabled]{
  opacity:.72;
  cursor:wait;
}

.live-calendar__month-empty{
  display:none;
}

.live-calendar__intro{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
}

.live-calendar__eyebrow{
  margin:0 0 5px;
  color:var(--mei-accent, #b8895b);
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
}

.live-calendar__intro h2{
  margin:0;
  color:var(--mei-heading, #24343b);
  font-size:clamp(24px, 3.4vw, 38px);
  line-height:1.2;
}

.live-calendar__range{
  max-width:25em;
  margin:0;
  color:var(--calendar-text-muted);
  font-size:13px;
  font-weight:650;
  text-align:right;
}

.live-calendar__empty{
  margin:0 0 18px;
  padding:14px 16px;
  border-radius:9px;
  background:rgba(230,239,242,.64);
  color:var(--mei-primary-dark, #2f5368);
  font-weight:700;
}

.live-calendar__weekdays,
.live-calendar__grid{
  display:grid;
  grid-template-columns:repeat(7, minmax(0, 1fr));
  gap:var(--calendar-gap);
}

.live-calendar__weekdays{
  margin-bottom:var(--calendar-gap);
  padding:6px 0;
  background:rgba(250,249,245,.72);
}

.live-calendar__weekdays span{
  padding:5px 2px;
  color:var(--calendar-text-muted);
  font-size:12px;
  font-weight:850;
  text-align:center;
}

.live-calendar__weekdays .is-sunday,
.live-calendar__day.is-sunday .live-calendar__date,
.live-calendar__day.is-holiday .live-calendar__date,
.live-card-date.is-sunday .live-card-date__weekday,
.live-card-date.is-holiday .live-card-date__weekday{
  color:var(--calendar-holiday, #a94d50);
}

.live-calendar__weekdays .is-saturday,
.live-calendar__day.is-saturday .live-calendar__date,
.live-card-date.is-saturday .live-card-date__weekday{
  color:var(--calendar-saturday, #386d91);
}

.live-calendar__weekdays .is-weekday,
.live-calendar__day.is-weekday .live-calendar__date,
.live-card-date.is-weekday .live-card-date__weekday{
  color:#4f5d63;
}

.live-detail-date.is-sunday .live-detail-date__weekday,
.live-detail-date.is-holiday .live-detail-date__weekday,
.live-list-row .col-date.is-sunday,
.live-list-row .col-date.is-holiday,
.live-calendar-picker__head h3.is-sunday,
.live-calendar-picker__head h3.is-holiday{
  color:var(--calendar-holiday, #a94d50);
}

.live-detail-date.is-saturday .live-detail-date__weekday,
.live-list-row .col-date.is-saturday,
.live-calendar-picker__head h3.is-saturday{
  color:var(--calendar-saturday, #386d91);
}

.live-detail-date.is-weekday .live-detail-date__weekday,
.live-list-row .col-date.is-weekday,
.live-calendar-picker__head h3.is-weekday{
  color:#4f5d63;
}

.live-card-date.is-saturday .live-card-date__monthday{
  color:var(--calendar-saturday, #386d91);
}

.live-card-date.is-saturday .live-card-date__weekday{
  border-color:var(--calendar-saturday, #386d91);
  background:var(--calendar-saturday, #386d91);
  color:#fff;
}

.live-card-date.is-sunday .live-card-date__monthday,
.live-card-date.is-holiday .live-card-date__monthday{
  color:var(--calendar-holiday, #a94d50);
}

.live-card-date.is-sunday .live-card-date__weekday,
.live-card-date.is-holiday .live-card-date__weekday{
  border-color:var(--calendar-holiday, #a94d50);
  background:var(--calendar-holiday, #a94d50);
  color:#fff;
}

.live-calendar__day{
  position:relative;
  display:flex;
  min-width:0;
  min-height:112px;
  flex-direction:column;
  gap:7px;
  box-sizing:border-box;
  padding:10px;
  border:1px solid transparent;
  border-radius:var(--calendar-radius);
  background:var(--calendar-cell-bg);
  color:var(--calendar-text);
  font:inherit;
  text-align:left;
  text-decoration:none;
}

.live-calendar__day.is-saturday{
  background:var(--calendar-saturday-bg);
}

.live-calendar__day.is-sunday,
.live-calendar__day.is-holiday{
  background:var(--calendar-holiday-bg);
}

.live-calendar__day--blank{
  background:rgba(244,242,237,.44);
}

.live-calendar__date{
  display:flex;
  align-items:baseline;
  gap:5px;
  min-height:29px;
  color:#4f5d63;
}

.live-calendar__date small{
  color:var(--mei-accent, #9a714b);
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
}

.live-calendar__date strong{
  position:relative;
  z-index:1;
  color:inherit;
  font-size:clamp(20px, 2.1vw, 29px);
  line-height:1;
}

.live-calendar__date > span{
  color:inherit;
  font-size:10px;
  font-weight:850;
}

.live-calendar__day[aria-current="date"]{
  border-color:rgba(184,137,91,.5);
  box-shadow:inset 0 0 0 1px rgba(184,137,91,.36);
}

.live-calendar__day--live[aria-current="date"]{
  box-shadow:0 5px 14px rgba(38,50,56,.035), inset 0 0 0 1px rgba(184,137,91,.36);
}

.live-calendar__today-label{
  display:inline-block;
  margin-left:1px;
  color:var(--calendar-today);
  font-family:var(--mei-font-ui, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-size:11px;
  font-style:italic;
  font-weight:850;
  line-height:1;
  white-space:nowrap;
  transform:rotate(-7deg);
  transform-origin:left center;
}

.live-calendar__holiday{
  display:block;
  overflow:hidden;
  color:var(--calendar-holiday);
  font-size:9px;
  font-weight:750;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.live-calendar__day--live{
  min-height:248px;
  border-color:rgba(54,95,115,.1);
  box-shadow:0 5px 14px rgba(38,50,56,.035);
  cursor:pointer;
  transition:background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.live-calendar__day--live:hover,
.live-calendar__day--live:focus-visible{
  z-index:2;
  border-color:rgba(47,83,104,.36);
  color:var(--calendar-text);
  text-decoration:none;
  box-shadow:0 10px 22px rgba(38,50,56,.1);
  transform:translateY(-2px);
}

.live-calendar__day--live:focus-visible{
  outline:3px solid rgba(184,137,91,.4);
  outline-offset:2px;
}

.live-calendar__visual{
  position:relative;
  display:block;
  overflow:hidden;
  width:100%;
  aspect-ratio:5 / 3;
  border-radius:7px;
  background:#e9ece9;
}

.live-calendar__flyer-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.live-calendar__placeholder{
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:2px;
  background:radial-gradient(circle at 70% 24%, rgba(255,255,255,.9), transparent 36%), linear-gradient(145deg, #ece9df, #dce5e5);
  color:#526a78;
}

.live-calendar__placeholder strong{
  font-size:clamp(17px, 2vw, 26px);
}

.live-calendar__placeholder small{
  font-size:10px;
  letter-spacing:.08em;
}

.live-calendar__count{
  position:absolute;
  top:5px;
  right:5px;
  padding:3px 6px;
  border-radius:999px;
  background:rgba(36,52,59,.88);
  color:#fff;
  font-size:9px;
  letter-spacing:.04em;
}

.live-calendar__count--inline{
  position:static;
  align-self:flex-start;
  margin-top:1px;
}

.live-calendar__info{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}

.live-calendar__info small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.live-calendar__info strong{
  display:-webkit-box;
  overflow:hidden;
  color:var(--mei-heading, #24343b);
  font-size:13.5px;
  font-weight:850;
  line-height:1.32;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.live-calendar__info small{
  color:#52646c;
  font-size:11px;
  line-height:1.35;
}

.live-calendar__info .live-calendar__venue{
  color:#43545c;
  font-size:11.5px;
  font-weight:700;
}

.live-calendar__info .live-calendar__datetime{
  display:flex;
  gap:.55em;
  align-items:baseline;
  color:#52646c;
  font-size:11px;
  font-weight:700;
}

.live-calendar__info .live-calendar__datetime span{
  overflow:hidden;
  min-width:0;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.live-calendar__info .live-calendar__datetime span + span{
  flex:0 0 auto;
}

.live-calendar__info .live-calendar__status{
  color:#9b4a4d;
  font-weight:850;
}

.live-calendar__day.is-exception .live-calendar__flyer-image{
  filter:grayscale(.68) saturate(.55);
  opacity:.78;
}

.live-calendar-picker{
  margin-top:18px;
  padding:clamp(14px, 2.4vw, 22px);
  border:1px solid rgba(54,95,115,.18);
  border-radius:12px;
  background:#fffefa;
  box-shadow:0 10px 26px rgba(38,50,56,.07);
}

.live-calendar-picker__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:13px;
}

.live-calendar-picker__head h3{
  margin:0;
  font-size:18px;
}

.live-calendar-picker__close{
  min-height:40px;
  padding:7px 12px;
  border:1px solid var(--mei-border, #d9e1e3);
  border-radius:8px;
  background:#fff;
  color:var(--mei-primary-dark, #2f5368);
}

.live-calendar-picker__items{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(210px, 1fr));
  gap:10px;
}

.live-calendar-picker__region{
  display:block;
  margin-top:4px;
}

.live-calendar-picker__region .live-region-label{
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:11.5px;
}

.live-calendar-picker__item{
  display:flex;
  min-height:72px;
  flex-direction:column;
  gap:3px;
  padding:12px;
  border:1px solid var(--mei-border-soft, #e8eeee);
  border-radius:9px;
  background:#fbfaf5;
  color:var(--mei-heading, #24343b);
  text-decoration:none;
}

.live-calendar-picker__item:hover,
.live-calendar-picker__item:focus-visible{
  border-color:rgba(47,83,104,.36);
  background:#fff;
  text-decoration:none;
}

.live-calendar-picker__item span{
  color:var(--calendar-text-muted);
  font-size:12px;
}

.live-calendar-export-modal[hidden]{
  display:none;
}

.live-calendar-export-modal{
  position:fixed;
  z-index:10000;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(38,50,56,.46);
}

.live-calendar-export-modal__panel{
  width:min(980px, 100%);
  max-height:calc(100vh - 48px);
  overflow:auto;
  border:1px solid var(--mei-color-border-soft, #e8eeee);
  border-radius:14px;
  background:var(--mei-color-surface, #fffefa);
  box-shadow:0 14px 34px rgba(38,50,56,.10);
}

.live-calendar-export-modal__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px;
  border-bottom:1px solid var(--mei-color-border-soft, #e8eeee);
}

.live-calendar-export-modal__head h2{
  margin:0;
  color:var(--mei-color-heading, #24343b);
  font-size:20px;
  line-height:1.3;
}

.live-calendar-export-modal__close,
.live-calendar-export-modal__save{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:9px 16px;
  border-radius:999px;
  font-weight:800;
  text-decoration:none;
}

.live-calendar-export-modal__close{
  border:1px solid var(--mei-color-border, #d9e1e3);
  background:#fff;
  color:var(--mei-color-primary-dark, #2f5368);
}

.live-calendar-export-modal__body{
  padding:18px 20px 0;
}

.live-calendar-export-modal__body img{
  display:block;
  width:100%;
  height:auto;
  border:1px solid var(--mei-color-border-soft, #e8eeee);
  border-radius:10px;
  background:#fff;
}

.live-calendar-export-modal__status{
  margin:10px 20px 0;
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:13px;
  font-weight:700;
}

.live-calendar-export-modal__actions{
  display:flex;
  justify-content:flex-end;
  padding:16px 20px 20px;
}

.live-calendar-export-modal__save{
  border:1px solid var(--mei-color-primary-dark, #2f5368);
  background:var(--mei-color-primary-dark, #2f5368);
  color:#fff !important;
}

.live-calendar-export-modal__save:visited{
  color:#fff !important;
}

.live-calendar-export-modal__save:hover{
  border-color:#24343b;
  background:#24343b;
  color:#fff !important;
}

.live-calendar-export-modal__close:focus-visible,
.live-calendar-export-modal__save:focus-visible{
  outline:3px solid var(--mei-color-focus, rgba(184,137,91,.42));
  outline-offset:2px;
}

@media (max-width:1023px){
  .live-calendar{
    --calendar-gap:5px;
    padding:18px 12px;
  }

  .live-calendar__day{
    min-height:92px;
    padding:7px;
  }

  .live-calendar__day--live{
    min-height:205px;
  }
}

@media (max-width:767px){
  .post-type-archive-live .mei-archive-head{
    gap:14px;
  }

  .live-view-switcher{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    width:100%;
    gap:5px;
  }

  .live-view-switcher__item{
    min-width:0;
    min-height:46px;
    padding:7px 5px;
    border-radius:9px;
    font-size:11px;
    text-align:center;
  }

  .live-calendar{
    --calendar-gap:3px;
    margin-inline:-5px;
    padding:14px 5px 18px;
    border-radius:12px;
  }

  .live-calendar__intro{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
    margin:0 5px 14px;
  }

  .live-calendar__intro h2{
    font-size:24px;
  }

  .live-calendar__range{
    font-size:11px;
    text-align:left;
  }

  .live-calendar__weekdays{
    padding:3px 0;
  }

  .live-calendar__weekdays span{
    font-size:10px;
  }

  .live-calendar__day{
    min-height:66px;
    gap:4px;
    padding:5px 3px;
    border-radius:7px;
  }

  .live-calendar__day--live{
    min-height:132px;
  }

  .live-calendar__date{
    gap:2px;
    min-height:21px;
  }

  .live-calendar__date small{
    font-size:8px;
  }

  .live-calendar__date strong{
    font-size:17px;
  }

  .live-calendar__date > span{
    font-size:8px;
  }

  .live-calendar__holiday{
    font-size:7px;
  }

  .live-calendar__visual{
    border-radius:4px;
  }

  .live-calendar__count{
    top:3px;
    right:3px;
    padding:2px 4px;
    font-size:7px;
  }

  .live-calendar__info strong{
    font-size:10px;
  }

  .live-calendar__info small{
    font-size:9px;
  }

  .live-calendar-picker{
    margin-top:12px;
    padding:12px 9px;
  }

  .live-calendar-picker__head{
    align-items:flex-start;
  }

  .live-calendar-picker__head h3{
    font-size:16px;
  }

  .live-calendar-picker__items{
    grid-template-columns:1fr;
  }
}

@media (max-width:359px){
  .live-calendar__day--live{
    min-height:82px;
  }

  .live-calendar__visual{
    display:none;
  }

  .live-calendar__info strong{
    display:block;
    font-size:8px;
    white-space:normal;
  }
}

@media (prefers-reduced-motion:reduce){
  .live-calendar__day--live,
  .live-view-switcher__item{
    scroll-behavior:auto;
    transition:none;
  }
}

/* Mobile calendar becomes an event-first schedule list. */
@media (max-width:767px){
  .live-calendar{
    gap:28px;
    padding:0;
  }

  .live-calendar__month{
    padding:18px 12px;
    border-radius:14px;
  }

  .live-calendar__month-head{
    align-items:flex-start;
    flex-direction:column;
    margin-bottom:12px;
    padding:0 3px 12px;
  }

  .live-calendar__month-actions{
    justify-content:flex-start;
  }

  .live-calendar__month-head h2{
    align-items:flex-end;
    gap:8px;
  }

  .live-calendar__month-head h2 strong{
    font-size:28px;
  }

  .live-calendar__month-head h2 small{
    padding-bottom:3px;
    font-size:9px;
  }

  .live-calendar__month-head p,
  .live-calendar__weekdays{
    display:none;
  }

  .live-calendar__grid{
    display:flex;
    flex-direction:column;
    gap:9px;
  }

  .live-calendar__day:not(.live-calendar__day--live):not([aria-current="date"]),
  .live-calendar__day--blank{
    display:none;
  }

  .live-calendar__day--live{
    display:grid;
    grid-template-columns:58px 88px minmax(0, 1fr);
    grid-template-rows:auto auto;
    gap:3px 11px;
    min-height:104px;
    padding:10px;
    border-color:rgba(54,95,115,.14);
    border-radius:10px;
    background:#fffefa;
    box-shadow:0 5px 14px rgba(38,50,56,.045);
  }

  .live-calendar__day--live.is-sunday,
  .live-calendar__day--live.is-holiday{
    background:var(--calendar-holiday-bg);
  }

  .live-calendar__day--live.is-saturday{
    background:var(--calendar-saturday-bg);
  }

  .live-calendar__day--live .live-calendar__date{
    grid-column:1;
    grid-row:1;
    align-items:flex-start;
    align-self:start;
    gap:3px;
    min-height:0;
    padding-top:2px;
  }

  .live-calendar__day--live .live-calendar__date strong{
    font-size:27px;
  }

  .live-calendar__day--live .live-calendar__date > span{
    padding-top:5px;
    font-size:10px;
  }

  .live-calendar__day--live .live-calendar__today-label{
    margin-left:0;
    padding-top:0;
    font-size:9px;
    transform:rotate(-6deg);
  }

  .live-calendar__day--live .live-calendar__holiday{
    grid-column:1;
    grid-row:2;
    align-self:start;
    overflow:visible;
    font-size:9px;
    line-height:1.35;
    white-space:normal;
  }

  .live-calendar__day--live .live-calendar__visual{
    grid-column:2;
    grid-row:1 / span 2;
    align-self:center;
    width:88px;
    aspect-ratio:4 / 3;
    border-radius:6px;
  }

  .live-calendar__day--live:not(:has(.live-calendar__visual)){
    grid-template-columns:58px minmax(0, 1fr);
  }

  .live-calendar__day--live:not(:has(.live-calendar__visual)) .live-calendar__info{
    grid-column:2;
  }

  .live-calendar__day--live:not(:has(.live-calendar__visual)) .live-calendar__count--inline{
    grid-column:2;
    grid-row:1;
  }

  .live-calendar__day--live:has(.live-calendar__count--inline) .live-calendar__info{
    grid-row:2;
    align-self:start;
  }

  .live-calendar__day--live .live-calendar__info{
    grid-column:3;
    grid-row:1 / span 2;
    align-self:center;
    gap:3px;
  }

  .live-calendar__day--live .live-calendar__info strong,
  .live-calendar__day--live .live-calendar__info small{
    display:block;
    white-space:normal;
  }

  .live-calendar__day--live .live-calendar__info strong{
    display:-webkit-box;
    overflow:hidden;
    font-size:14px;
    font-weight:850;
    line-height:1.35;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }

  .live-calendar__day--live .live-calendar__info small{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:11px;
    line-height:1.35;
  }

  .live-calendar__day--live .live-calendar__venue{
    color:#43545c;
    font-weight:700;
  }

  .live-calendar__day--live .live-calendar__datetime{
    display:flex;
    gap:.65em;
    color:#52646c;
    font-size:11px;
    font-weight:700;
  }

  .live-calendar__month-empty{
    display:block;
    margin:0;
    padding:14px 12px;
    border-radius:9px;
    background:rgba(244,242,237,.72);
    color:var(--calendar-text-muted);
    font-size:12px;
    text-align:center;
  }
}

@media (max-width:359px){
  .live-calendar__day--live{
    grid-template-columns:52px 70px minmax(0, 1fr);
    gap:3px 8px;
    min-height:92px;
    padding:8px;
  }

  .live-calendar__day--live .live-calendar__visual{
    display:block;
    width:70px;
  }

  .live-calendar__day--live:not(:has(.live-calendar__visual)){
    grid-template-columns:52px minmax(0, 1fr);
  }

  .live-calendar__day--live .live-calendar__date strong{
    font-size:24px;
  }
}

.mei-related-lives__history .mei-related-lives__item:has(.mei-related-lives__link:hover)::before,
.mei-related-lives__history .mei-related-lives__item:has(.mei-related-lives__link:focus-visible)::before{
  border-color:#b8895b;
  background:#fff7ec;
  box-shadow:0 0 0 3px rgba(184,137,91,.16);
}

.mei-related-lives__history .mei-related-lives__link:hover,
.mei-related-lives__history .mei-related-lives__link:focus-visible{
  background:rgba(184,137,91,.12);
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  text-underline-offset:.22em;
  transform:translateX(3px);
}

/* === Mei Archive unified list link affordance v1 === */
:where(
  .home .mei-home-live-focus .mei-upcoming-list__item,
  .home .mei-upcoming-list__item,
  .home .mei-home-recent__item,
  .mei-directory--detail .mei-directory-history__item,
  .mei-directory--detail .mei-directory-related__item,
  .mei-directory:not(.mei-directory--detail) .mei-directory-card
){
  border-radius:6px;
  transition:background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

:where(
  .home .mei-home-live-focus .mei-upcoming-list__link,
  .home .mei-upcoming-list__link,
  .home .mei-home-recent__link,
  .mei-directory--detail .mei-directory-history__link,
  .mei-directory--detail .mei-directory-related__item,
  .mei-directory:not(.mei-directory--detail) .mei-directory-card
){
  text-underline-offset:.22em;
  transition:
    background-color .16s ease,
    color .16s ease,
    text-decoration-color .16s ease,
    transform .16s ease,
    box-shadow .16s ease;
}

:where(
  .home .mei-home-live-focus .mei-upcoming-list__item:has(.mei-upcoming-list__link:hover),
  .home .mei-home-live-focus .mei-upcoming-list__item:has(.mei-upcoming-list__link:focus-visible),
  .home .mei-upcoming-list__item:has(.mei-upcoming-list__link:hover),
  .home .mei-upcoming-list__item:has(.mei-upcoming-list__link:focus-visible),
  .home .mei-home-recent__item:has(.mei-home-recent__link:hover),
  .home .mei-home-recent__item:has(.mei-home-recent__link:focus-visible),
  .mei-directory--detail .mei-directory-history__item:has(.mei-directory-history__link:hover),
  .mei-directory--detail .mei-directory-history__item:has(.mei-directory-history__link:focus-visible)
){
  background:rgba(184,137,91,.12);
}

:where(
  .home .mei-home-live-focus .mei-upcoming-list__link:hover,
  .home .mei-home-live-focus .mei-upcoming-list__link:focus-visible,
  .home .mei-upcoming-list__link:hover,
  .home .mei-upcoming-list__link:focus-visible,
  .home .mei-home-recent__link:hover,
  .home .mei-home-recent__link:focus-visible,
  .mei-directory--detail .mei-directory-history__link:hover,
  .mei-directory--detail .mei-directory-history__link:focus-visible
){
  background:rgba(184,137,91,.12);
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  transform:translateX(3px);
}

:where(
  .home .mei-home-recent__link:hover strong,
  .home .mei-home-recent__link:focus-visible strong,
  .home .mei-home-live-focus .mei-upcoming-list__link:hover .mei-live-schedule-line__venue,
  .home .mei-home-live-focus .mei-upcoming-list__link:focus-visible .mei-live-schedule-line__venue,
  .home .mei-upcoming-list__link:hover .mei-live-schedule-line__venue,
  .home .mei-upcoming-list__link:focus-visible .mei-live-schedule-line__venue
){
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  text-underline-offset:.22em;
}

:where(
  .mei-directory--detail .mei-directory-related__item:hover,
  .mei-directory--detail .mei-directory-related__item:focus-visible,
  .mei-directory--detail .mei-directory-related__item:focus-within,
  .mei-directory:not(.mei-directory--detail) .mei-directory-card:hover,
  .mei-directory:not(.mei-directory--detail) .mei-directory-card:focus-visible,
  .mei-directory:not(.mei-directory--detail) .mei-directory-card:focus-within
){
  background:rgba(184,137,91,.12);
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  transform:translateX(3px);
  box-shadow:none;
}

.home .mei-home-live-focus .mei-upcoming-list__item:has(.mei-upcoming-list__link:hover),
.home .mei-home-live-focus .mei-upcoming-list__item:has(.mei-upcoming-list__link:focus-visible),
.home .mei-upcoming-list__item:has(.mei-upcoming-list__link:hover),
.home .mei-upcoming-list__item:has(.mei-upcoming-list__link:focus-visible),
.home .mei-home-recent__item:has(.mei-home-recent__link:hover),
.home .mei-home-recent__item:has(.mei-home-recent__link:focus-visible),
.mei-directory--detail .mei-directory-history__item:has(.mei-directory-history__link:hover),
.mei-directory--detail .mei-directory-history__item:has(.mei-directory-history__link:focus-visible){
  background:rgba(184,137,91,.12);
}

.home .mei-home-live-focus .mei-upcoming-list__link:hover,
.home .mei-home-live-focus .mei-upcoming-list__link:focus-visible,
.home .mei-upcoming-list__link:hover,
.home .mei-upcoming-list__link:focus-visible,
.home .mei-home-recent__link:hover,
.home .mei-home-recent__link:focus-visible,
.mei-directory--detail .mei-directory-history__link:hover,
.mei-directory--detail .mei-directory-history__link:focus-visible{
  background:rgba(184,137,91,.12);
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  text-underline-offset:.22em;
  transform:translateX(3px);
  box-shadow:none;
}

.home .mei-home-recent__link:hover strong,
.home .mei-home-recent__link:focus-visible strong,
.home .mei-home-recent__link:hover .mei-home-recent__meta,
.home .mei-home-recent__link:focus-visible .mei-home-recent__meta,
.home .mei-home-live-focus .mei-upcoming-list__link:hover .mei-live-schedule-line__venue,
.home .mei-home-live-focus .mei-upcoming-list__link:focus-visible .mei-live-schedule-line__venue,
.home .mei-home-live-focus .mei-upcoming-list__link:hover .mei-live-schedule-line__date,
.home .mei-home-live-focus .mei-upcoming-list__link:focus-visible .mei-live-schedule-line__date,
.home .mei-home-live-focus .mei-upcoming-list__link:hover .mei-live-schedule-line__time,
.home .mei-home-live-focus .mei-upcoming-list__link:focus-visible .mei-live-schedule-line__time,
.home .mei-upcoming-list__link:hover .mei-live-schedule-line__venue,
.home .mei-upcoming-list__link:focus-visible .mei-live-schedule-line__venue,
.home .mei-upcoming-list__link:hover .mei-live-schedule-line__date,
.home .mei-upcoming-list__link:focus-visible .mei-live-schedule-line__date,
.home .mei-upcoming-list__link:hover .mei-live-schedule-line__time,
.home .mei-upcoming-list__link:focus-visible .mei-live-schedule-line__time{
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  text-underline-offset:.22em;
}

.home .mei-home-recent__link:hover .mei-home-recent__meta *,
.home .mei-home-recent__link:focus-visible .mei-home-recent__meta *{
  color:#173f62;
}

.mei-directory--detail .mei-directory-related__item:hover,
.mei-directory--detail .mei-directory-related__item:focus-visible,
.mei-directory--detail .mei-directory-related__item:focus-within,
.mei-directory:not(.mei-directory--detail) .mei-directory-card:hover,
.mei-directory:not(.mei-directory--detail) .mei-directory-card:focus-visible,
.mei-directory:not(.mei-directory--detail) .mei-directory-card:focus-within{
  background:rgba(184,137,91,.12);
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  text-underline-offset:.22em;
  transform:translateX(3px);
  box-shadow:none;
}

.mei-directory--detail .mei-directory-related__item,
.home .mei-home-recent__link,
.home .mei-home-live-focus .mei-upcoming-list__link,
.home .mei-upcoming-list__link,
.mei-directory:not(.mei-directory--detail) .mei-directory-card{
  transition:
    background-color .16s ease,
    color .16s ease,
    text-decoration-color .16s ease,
    transform .16s ease,
    box-shadow .16s ease;
}

.mei-directory--detail .mei-directory-related__item:hover *,
.mei-directory--detail .mei-directory-related__item:focus-visible *,
.mei-directory--detail .mei-directory-related__item:focus-within *,
.mei-directory:not(.mei-directory--detail) .mei-directory-card:hover *,
.mei-directory:not(.mei-directory--detail) .mei-directory-card:focus-visible *,
.mei-directory:not(.mei-directory--detail) .mei-directory-card:focus-within *{
  color:#173f62;
  text-decoration-color:rgba(184,137,91,.78);
}

.mei-directory-related__item{
  transition:
    background-color .16s ease,
    color .16s ease,
    text-decoration-color .16s ease,
    transform .16s ease,
    box-shadow .16s ease;
}

.mei-directory-related__item:hover,
.mei-directory-related__item:focus-visible,
.mei-directory-related__item:focus-within{
  background:rgba(184,137,91,.12);
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  text-underline-offset:.22em;
  transform:translateX(3px);
  box-shadow:none;
}

.mei-directory-related__item:hover *,
.mei-directory-related__item:focus-visible *,
.mei-directory-related__item:focus-within *{
  color:#173f62;
  text-decoration-color:rgba(184,137,91,.78);
}

body:not(.single-post) .main a.mei-directory-related__item,
body:not(.single-post) .main a.mei-directory-card{
  transition:
    background-color .16s ease,
    color .16s ease,
    text-decoration-color .16s ease,
    transform .16s ease,
    box-shadow .16s ease !important;
}

body:not(.single-post) .main a.mei-directory-related__item:hover,
body:not(.single-post) .main a.mei-directory-related__item:focus-visible,
body:not(.single-post) .main a.mei-directory-card:hover,
body:not(.single-post) .main a.mei-directory-card:focus-visible{
  background:rgba(184,137,91,.12);
  color:#173f62;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.78);
  text-underline-offset:.22em;
  transform:translateX(3px) !important;
  box-shadow:none !important;
}

/* Live archive progressive loading */
.pagination--js-hidden{
  display:none;
}

.live-load-more{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  margin:30px auto 34px;
  text-align:center;
}

.live-load-more__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:190px;
  min-height:46px;
  padding:11px 24px;
  border:1px solid rgba(120,152,184,.45);
  border-radius:999px;
  background:linear-gradient(180deg, #fff 0%, #f6fafc 100%);
  box-shadow:0 10px 24px rgba(31,48,64,.08);
  color:#244766;
  font-size:14px;
  font-weight:800;
  letter-spacing:.06em;
  line-height:1.35;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, opacity .2s ease;
}

.live-load-more__button:hover,
.live-load-more__button:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(120,152,184,.68);
  box-shadow:0 14px 30px rgba(31,48,64,.13);
  color:#173f62;
}

.live-load-more__button.is-loading{
  opacity:.72;
  pointer-events:none;
}

.live-load-more__status{
  min-height:1.4em;
  margin:0;
  color:#6d7d8b;
  font-size:12px;
  font-weight:700;
}

.live-load-more.is-complete .live-load-more__status{
  color:#7a8792;
}

/* Compact header for inner pages */
body:not(.home) #header-container{
  min-height:0;
  max-height:none;
  margin-bottom:24px;
  background:transparent;
}

body:not(.home) #header{
  height:clamp(118px, 16vw, 158px);
  min-height:0;
  background-size:cover;
  background-position:center center;
}

body:not(.home) #header::before{
  background:
    linear-gradient(90deg, rgba(5,8,10,.42) 0%, rgba(5,8,10,.22) 50%, rgba(5,8,10,.42) 100%),
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.22) 100%);
}

body:not(.home) #header-in{
  min-height:100%;
  gap:0;
  padding:18px 22px;
}

body:not(.home) #header .logo-header{
  width:auto;
}

body:not(.home) #header .site-name-text{
  max-width:min(760px, 90vw);
  margin:0;
  font-size:clamp(20px, 2.1vw, 25px);
  line-height:1.32;
  letter-spacing:.025em;
  white-space:normal;
}

body:not(.home) #header .tagline{
  display:none;
}

body:not(.home) #navi-in{
  padding:6px 12px;
}

body:not(.home) #navi .menu-header.menu-pc > li > a{
  min-height:42px;
  padding:7px 16px;
  font-size:13.5px;
}

@media (max-width:1023px){
  body:not(.home) #header-container{
    margin-bottom:18px;
  }

  body:not(.home) #header{
    height:clamp(86px, 24vw, 112px);
  }

  body:not(.home) #header-in{
    padding:14px 18px;
  }

  body:not(.home) #header .site-name-text{
    max-width:92vw;
    font-size:clamp(18px, 5vw, 21px);
    line-height:1.35;
  }
}

/* Home header and archive navigation polish */
body.home #navi{
  width:100vw;
  margin-right:calc(50% - 50vw);
  margin-left:calc(50% - 50vw);
}

body.home #navi-in{
  max-width:1180px;
  margin:0 auto;
}

body.home #header-container{
  margin-top:0 !important;
  margin-bottom:0;
  padding-top:0 !important;
}

body.home #header{
  width:100vw !important;
  max-width:none !important;
  margin-top:0 !important;
  margin-right:calc(50% - 50vw) !important;
  margin-left:calc(50% - 50vw) !important;
  border-radius:0 !important;
}

body.home .content{
  margin-top:0;
}

.home .main{
  padding-top:clamp(5px, .7vw, 7px);
}

.home .article:has(.mei-home--auto){
  padding-top:clamp(3px, .45vw, 4px);
}

.home .mei-home--auto{
  gap:clamp(22px, 3vw, 34px);
}

.home .mei-home-social-prompt{
  gap:6px;
}

.home .mei-home-social-prompt__head .mei-home-kicker{
  margin-bottom:4px;
}

.home .mei-home-social-prompt__title{
  line-height:1.18;
}

.home .mei-home-social-prompt{
  background:#fffdf7;
}

.home .mei-home-social-prompt .mei-home-social-card{
  border-color:rgba(175,194,207,.92);
  background:#fff !important;
  box-shadow:0 12px 26px rgba(38,50,56,.085);
}

.home .mei-home-social-prompt .mei-home-social-card:hover,
.home .mei-home-social-prompt .mei-home-social-card:focus-visible{
  background:#fff !important;
  box-shadow:0 16px 34px rgba(38,50,56,.12);
}

.live-archive-past-link{
  margin:48px auto 26px;
  text-align:center;
}

.live-load-more__button,
.live-archive-past-link a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:190px;
  min-height:46px;
  padding:11px var(--mei-space-lg);
  border:var(--mei-border-default);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-surface);
  box-shadow:var(--mei-shadow-soft);
  color:var(--mei-color-text);
  font-size:var(--mei-text-body-sm);
  font-weight:600;
  letter-spacing:0;
  line-height:var(--mei-leading-snug);
  text-decoration:none;
  opacity:1;
  transition:transform var(--mei-transition-fast), box-shadow var(--mei-transition-fast), border-color var(--mei-transition-fast), color var(--mei-transition-fast), background-color var(--mei-transition-fast);
}

.live-load-more__button:hover,
.live-load-more__button:focus-visible,
.live-archive-past-link a:hover,
.live-archive-past-link a:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(47,83,104,.48);
  background:var(--mei-color-surface-clean);
  box-shadow:var(--mei-shadow-hover);
  color:var(--mei-color-primary-dark);
}

/* === Mei Archive TOP Header Flat Control v1 === */
body.home{
  margin-top:0;
}

body.home #container,
body.home #header-container,
body.home #header{
  margin-top:0 !important;
  padding-top:0 !important;
}

body.home #header-container{
  min-height:0 !important;
  max-height:none !important;
  margin-bottom:0 !important;
  padding:0 !important;
  overflow:visible !important;
  border-radius:0 !important;
  background:transparent !important;
}

body.home #header{
  position:relative;
  width:100vw !important;
  max-width:none !important;
  height:auto;
  aspect-ratio:3 / 1;
  min-height:0 !important;
  max-height:none !important;
  margin:0 calc(50% - 50vw) !important;
  overflow:hidden !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  isolation:isolate;
}

body.home #header.mei-home-hero--enabled{
  background-image:none !important;
  background-color:#111820;
}

body.home #header::before{
  z-index:1;
  background:
    linear-gradient(90deg, rgba(5,8,10,.52) 0%, rgba(5,8,10,.24) 48%, rgba(5,8,10,.46) 100%),
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.30) 100%);
}

body.home #header::after{
  content:"";
  position:absolute;
  z-index:1;
  inset:auto 0 0;
  height:38%;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(5,8,10,0) 0%, rgba(5,8,10,.36) 100%);
}

body.home #header-in{
  position:relative;
  z-index:2;
  min-height:100%;
  padding:clamp(36px, 7vw, 84px) clamp(22px, 6vw, 72px);
}

body.home .mei-home-hero__picture{
  position:absolute;
  z-index:0;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:0 !important;
  background:#111820;
}

body.home .mei-home-hero__picture img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  border-radius:0 !important;
  object-fit:cover;
  object-position:50% 42%;
}

@media (max-width:1023px){
  body.home #header{
    aspect-ratio:16 / 9;
  }

  body.home .mei-home-hero__picture img{
    object-position:42% 42%;
  }
}

@media (max-width:767px){
  body.home #header{
    aspect-ratio:4 / 5;
  }

  body.home .mei-home-hero__picture img{
    object-position:38% 50%;
  }
}

body.home #navi{
  width:100vw !important;
  margin-right:calc(50% - 50vw) !important;
  margin-left:calc(50% - 50vw) !important;
  border-radius:0 !important;
}

body.home #navi-in{
  max-width:1180px;
  margin:0 auto;
}

body.home .content{
  margin-top:0 !important;
}

body.home .main{
  padding-top:clamp(5px, .7vw, 7px) !important;
}

body.home .article:has(.mei-home--auto){
  padding-top:clamp(3px, .45vw, 4px) !important;
}

@media (max-width:767px){
  body.home #header{
    height:auto;
    aspect-ratio:4 / 5;
  }

  body.home #header-in{
    justify-content:flex-end;
    padding:28px 20px 36px;
  }
}

/* === Inner-page header hard boundary v2 ===
 * Keep the top-page hero rules from leaking into directory, archive and post pages.
 */
body:not(.home) #header-container{
  min-height:0 !important;
  max-height:none !important;
  margin-bottom:24px !important;
  background:transparent !important;
}

body:not(.home) #header{
  height:clamp(118px, 16vw, 158px) !important;
  min-height:0 !important;
  max-height:158px !important;
  overflow:hidden !important;
  background-size:cover !important;
  background-position:center center !important;
}

body:not(.home) #content{
  position:relative;
  z-index:1;
  background:var(--mei-paper-bg, #f8f7f3);
}

@media (max-width:1023px){
  body:not(.home) #header{
    height:clamp(86px, 24vw, 112px) !important;
    max-height:112px !important;
  }
}

/* === Mei Archive priority-A design system alignment v1 === */
body:not(.wp-admin){
  background:var(--mei-color-canvas);
  color:var(--mei-color-text);
  font-family:var(--mei-font-base);
  line-height:var(--mei-leading-base);
}

body:not(.wp-admin) :where(h1,h2,h3,h4){
  color:var(--mei-color-heading);
  font-family:var(--mei-font-base);
  line-height:var(--mei-leading-snug);
}

body:not(.wp-admin) :where(.entry-content, .article, .live-note__text){
  color:var(--mei-color-text);
  line-height:var(--mei-leading-reading);
}

body:not(.wp-admin) :where(a){
  color:var(--mei-color-primary-dark);
  text-underline-offset:.18em;
  text-decoration-color:rgba(184,137,91,.55);
}

body:not(.wp-admin) :where(a:hover, a:focus-visible){
  color:#173f62;
  text-decoration-color:rgba(184,137,91,.78);
}

body:not(.wp-admin) :where(a, button, input, select, textarea):focus-visible{
  outline:3px solid var(--mei-color-focus);
  outline-offset:2px;
}

.archive-title,
.entry-title,
.live-headline,
.live-section__title,
.live-nextlist-title,
.mei-home-section-head h2,
.mei-home-live-focus__head h2,
.mei-directory__title,
.mei-directory__head h1,
.mei-directory__group-title{
  color:var(--mei-color-heading);
  line-height:var(--mei-leading-snug);
}

.archive-title,
.entry-title,
.live-headline,
.mei-directory__head h1{
  font-size:clamp(var(--mei-heading-md), 4vw, var(--mei-heading-xl));
}

.live-section__title,
.live-nextlist-title,
.mei-home-section-head h2,
.mei-home-live-focus__head h2,
.mei-directory__group-title{
  font-size:clamp(var(--mei-heading-sm), 2.6vw, var(--mei-heading-lg));
}

.live-card-meta__label,
.live-meta-label,
.live-detail-updated__label,
.mei-home-kicker,
.mei-home-recent__meta,
.entry-card-meta,
.live-search-summary,
.mei-directory__meta,
.mei-directory-card__meta,
.mei-directory-history__meta,
.mei-related-lives__date,
.mei-past-venue-lives__date{
  color:var(--mei-color-muted);
  font-size:var(--mei-text-meta);
  line-height:var(--mei-leading-snug);
}

.mei-next-live__action,
.live-card-action,
.live-access-links a,
.live-copy-address,
.live-list-link,
.live-archive-past-link a,
.live-load-more__button,
.live-history-search__actions a,
.live-history-search__actions button,
.mei-home-search__form button,
.home .mei-home-search__form button,
.mei-home-notice__links a,
.mei-directory-search__links a,
.mei-directory__back-top,
.pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  min-height:46px;
  padding:11px var(--mei-space-lg);
  border:var(--mei-border-default);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-surface);
  color:var(--mei-color-text);
  box-shadow:var(--mei-shadow-soft);
  font-family:var(--mei-font-ui);
  font-size:var(--mei-text-body-sm);
  font-weight:600;
  line-height:var(--mei-leading-snug);
  text-decoration:none;
  text-align:center;
  overflow-wrap:anywhere;
  transition:
    background-color var(--mei-transition-fast),
    border-color var(--mei-transition-fast),
    color var(--mei-transition-fast),
    box-shadow var(--mei-transition-fast),
    transform var(--mei-transition-fast);
}

.mei-next-live__action--primary,
.live-card-action--primary,
.live-history-search__actions button,
.mei-home-search__form button,
.home .mei-home-search__form button{
  border-color:var(--mei-color-primary-dark);
  background:var(--mei-color-primary-dark);
  color:#fff;
  box-shadow:var(--mei-shadow-none);
}

.live-history-search__actions a,
.mei-directory-search__links a,
.mei-home-notice__links a{
  min-height:40px;
  padding:8px var(--mei-space-md);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-surface-clean);
  color:var(--mei-color-primary-dark);
  box-shadow:var(--mei-shadow-none);
  font-size:var(--mei-text-meta);
}

.mei-home-search__link a{
  color:var(--mei-color-primary-dark);
  font-weight:600;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.48);
  text-underline-offset:.22em;
  transition:
    color var(--mei-transition-fast),
    text-decoration-color var(--mei-transition-fast);
}

.mei-next-live__action:hover,
.live-card-action:hover,
.live-access-links a:hover,
.live-copy-address:hover,
.live-list-link:hover,
.live-archive-past-link a:hover,
.live-load-more__button:hover,
.live-history-search__actions a:hover,
.live-history-search__actions button:hover,
.mei-home-search__form button:hover,
.home .mei-home-search__form button:hover,
.mei-home-notice__links a:hover,
.mei-directory-search__links a:hover,
.mei-directory__back-top:hover,
.pagination a.page-numbers:hover,
.mei-next-live__action:focus-visible,
.live-card-action:focus-visible,
.live-access-links a:focus-visible,
.live-copy-address:focus-visible,
.live-list-link:focus-visible,
.live-archive-past-link a:focus-visible,
.live-load-more__button:focus-visible,
.live-history-search__actions a:focus-visible,
.live-history-search__actions button:focus-visible,
.mei-home-search__form button:focus-visible,
.home .mei-home-search__form button:focus-visible,
.mei-home-notice__links a:focus-visible,
.mei-directory-search__links a:focus-visible,
.mei-directory__back-top:focus-visible,
.pagination a.page-numbers:focus-visible{
  border-color:rgba(47,83,104,.48);
  background:var(--mei-color-surface-clean);
  box-shadow:var(--mei-shadow-hover);
  color:var(--mei-color-primary-dark);
  text-decoration:none;
  transform:translateY(-1px);
}

.mei-next-live__action--primary:hover,
.live-card-action--primary:hover,
.live-history-search__actions button:hover,
.mei-home-search__form button:hover,
.home .mei-home-search__form button:hover,
.mei-next-live__action--primary:focus-visible,
.live-card-action--primary:focus-visible,
.live-history-search__actions button:focus-visible,
.mei-home-search__form button:focus-visible,
.home .mei-home-search__form button:focus-visible{
  border-color:var(--mei-color-primary-hover);
  background:var(--mei-color-primary-hover);
  color:#fff;
}

.mei-next-live__action:active,
.live-card-action:active,
.live-access-links a:active,
.live-copy-address:active,
.live-list-link:active,
.live-archive-past-link a:active,
.live-load-more__button:active,
.live-history-search__actions a:active,
.live-history-search__actions button:active,
.mei-home-search__form button:active,
.home .mei-home-search__form button:active,
.mei-home-notice__links a:active,
.mei-directory-search__links a:active,
.mei-directory__back-top:active,
.pagination a.page-numbers:active{
  transform:translateY(0);
  box-shadow:var(--mei-shadow-soft);
}

.mei-home-search__link a:hover,
.mei-home-search__link a:focus-visible{
  color:var(--mei-color-primary-hover);
  text-decoration-color:var(--mei-color-accent);
}

/* === Mei Archive normal cards and sidebar refinement v1 === */
.blog .main .entry-card-wrap,
.category .main .entry-card-wrap,
.archive:not(.post-type-archive-live) .main .entry-card-wrap,
.search .main .entry-card-wrap,
.single-post .main .related-entry-card-wrap,
.mei-directory:not(.mei-directory--detail) .mei-directory-card,
.mei-directory--detail .mei-directory-stat,
.mei-directory--detail .mei-directory-place,
.mei-directory--detail .mei-directory-search,
.mei-directory--detail .mei-directory-related__item{
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-card);
  background:var(--mei-color-surface);
  box-shadow:var(--mei-shadow-soft);
}

.blog .main .entry-card-wrap,
.category .main .entry-card-wrap,
.archive:not(.post-type-archive-live) .main .entry-card-wrap,
.search .main .entry-card-wrap,
.single-post .main .related-entry-card-wrap{
  padding:var(--mei-space-lg);
  transition:
    border-color var(--mei-transition-fast),
    box-shadow var(--mei-transition-fast),
    transform var(--mei-transition-fast);
}

.mei-directory:not(.mei-directory--detail) .mei-directory-card,
.mei-directory--detail .mei-directory-stat,
.mei-directory--detail .mei-directory-place,
.mei-directory--detail .mei-directory-search,
.mei-directory--detail .mei-directory-related__item{
  transition:
    background-color var(--mei-transition-fast),
    border-color var(--mei-transition-fast),
    box-shadow var(--mei-transition-fast),
    transform var(--mei-transition-fast);
}

.blog .main .entry-card-wrap:hover,
.category .main .entry-card-wrap:hover,
.archive:not(.post-type-archive-live) .main .entry-card-wrap:hover,
.search .main .entry-card-wrap:hover,
.single-post .main .related-entry-card-wrap:hover,
.mei-directory:not(.mei-directory--detail) .mei-directory-card:hover,
.mei-directory--detail .mei-directory-related__item:hover{
  border-color:var(--mei-color-border);
  background:var(--mei-color-surface-clean);
  box-shadow:var(--mei-shadow-hover);
  transform:translateY(-1px);
}

.blog .main .entry-card,
.category .main .entry-card,
.archive:not(.post-type-archive-live) .main .entry-card,
.search .main .entry-card{
  display:grid;
  grid-template-columns:minmax(120px, 32%) minmax(0, 1fr);
  gap:var(--mei-space-lg);
  align-items:center;
}

.blog .main .entry-card-thumb,
.category .main .entry-card-thumb,
.archive:not(.post-type-archive-live) .main .entry-card-thumb,
.search .main .entry-card-thumb,
.single-post .main .related-entry-card-thumb{
  overflow:hidden;
  min-height:128px;
  aspect-ratio:4/3;
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-photo);
  background:var(--mei-color-surface-soft);
}

.blog .main .entry-card-thumb img,
.category .main .entry-card-thumb img,
.archive:not(.post-type-archive-live) .main .entry-card-thumb img,
.search .main .entry-card-thumb img,
.single-post .main .related-entry-card-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.blog .main .entry-card-content,
.category .main .entry-card-content,
.archive:not(.post-type-archive-live) .main .entry-card-content,
.search .main .entry-card-content{
  min-width:0;
  color:var(--mei-color-text);
}

.search .main .entry-card-title,
.single-post .main .related-entry-card-title{
  color:var(--mei-color-heading);
  font-size:clamp(18px, 2vw, 22px);
  font-weight:700;
  line-height:var(--mei-leading-snug);
}

.search .main .entry-card-snippet,
.single-post .main .related-entry-card-snippet{
  color:var(--mei-color-text);
  font-size:var(--mei-text-body-sm);
  line-height:var(--mei-leading-base);
}

.search .main .entry-card-meta,
.single-post .main .related-entry-card-meta{
  color:var(--mei-color-muted);
  font-size:var(--mei-text-meta);
  line-height:var(--mei-leading-snug);
}

.mei-directory--detail .mei-directory-stats{
  gap:var(--mei-space-md);
}

.mei-directory--detail .mei-directory-stat{
  padding:var(--mei-space-lg);
}

.mei-directory--detail .mei-directory-stat span,
.mei-directory-card__meta,
.mei-directory-related__item em{
  color:var(--mei-color-muted);
  font-size:var(--mei-text-meta);
  line-height:var(--mei-leading-snug);
}

.mei-directory--detail .mei-directory-stat strong,
.mei-directory-card__name,
.mei-directory-related__item span{
  color:var(--mei-color-primary-dark);
  line-height:var(--mei-leading-snug);
}

#sidebar,
.sidebar{
  color:var(--mei-color-text);
}

#sidebar .widget,
.sidebar .widget{
  margin:0 0 var(--mei-space-lg);
  padding:var(--mei-space-lg);
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-card);
  background:var(--mei-color-surface);
  box-shadow:var(--mei-shadow-soft);
}

#sidebar .widget-title,
.sidebar .widget-title{
  margin:0 0 var(--mei-space-md);
  padding:0 0 var(--mei-space-sm);
  color:var(--mei-color-heading);
  font-size:18px;
  font-weight:700;
  letter-spacing:.01em;
  line-height:var(--mei-leading-snug);
}

#sidebar .widget-title::after,
.sidebar .widget-title::after{
  width:40px;
  height:2px;
  background:#8eb1cf;
}

#sidebar .search-box,
#sidebar .search-form,
#sidebar .wp-block-search__inside-wrapper,
.sidebar .search-box,
.sidebar .search-form,
.sidebar .wp-block-search__inside-wrapper{
  gap:var(--mei-space-sm);
}

#sidebar input[type="search"],
#sidebar .search-edit,
#sidebar .wp-block-search__input,
.sidebar input[type="search"],
.sidebar .search-edit,
.sidebar .wp-block-search__input{
  min-height:44px;
  box-shadow:none;
}

#sidebar .search-submit,
#sidebar .wp-block-search__button,
.sidebar .search-submit,
.sidebar .wp-block-search__button{
  min-height:44px;
  border-color:var(--mei-color-primary-dark);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-primary-dark);
  color:#fff;
  font-weight:600;
  letter-spacing:0;
  box-shadow:var(--mei-shadow-none);
}

#sidebar .search-submit:hover,
#sidebar .wp-block-search__button:hover,
.sidebar .search-submit:hover,
.sidebar .wp-block-search__button:hover{
  border-color:var(--mei-color-primary-hover);
  background:var(--mei-color-primary-hover);
  transform:translateY(-1px);
}

#sidebar .widget_categories li a,
#sidebar .cat-item a,
.sidebar .widget_categories li a,
.sidebar .cat-item a{
  min-height:38px;
  padding:8px 0;
  border-bottom:var(--mei-border-soft-line);
  color:var(--mei-color-text);
  font-weight:600;
}

#sidebar .widget_categories li a:hover,
#sidebar .cat-item a:hover,
.sidebar .widget_categories li a:hover,
.sidebar .cat-item a:hover{
  color:var(--mei-color-primary-dark);
  background:transparent;
}

#sidebar .widget-entry-card-link,
#sidebar .new-entry-card-link,
#sidebar .popular-entry-card-link,
#sidebar .ranking-entry-card-link,
.sidebar .widget-entry-card-link,
.sidebar .new-entry-card-link,
.sidebar .popular-entry-card-link,
.sidebar .ranking-entry-card-link{
  padding:12px 0;
  border-bottom:var(--mei-border-soft-line);
  color:var(--mei-color-text);
  transition:
    color var(--mei-transition-fast),
    border-color var(--mei-transition-fast),
    transform var(--mei-transition-fast);
}

#sidebar .widget-entry-card-link:hover,
#sidebar .new-entry-card-link:hover,
#sidebar .popular-entry-card-link:hover,
#sidebar .ranking-entry-card-link:hover,
.sidebar .widget-entry-card-link:hover,
.sidebar .new-entry-card-link:hover,
.sidebar .popular-entry-card-link:hover,
.sidebar .ranking-entry-card-link:hover{
  color:var(--mei-color-primary-dark);
  transform:translateY(-1px);
}

#sidebar .widget-entry-card,
#sidebar .new-entry-card,
#sidebar .popular-entry-card,
#sidebar .ranking-entry-card,
.sidebar .widget-entry-card,
.sidebar .new-entry-card,
.sidebar .popular-entry-card,
.sidebar .ranking-entry-card{
  grid-template-columns:76px minmax(0, 1fr);
  gap:var(--mei-space-sm);
}

#sidebar .widget-entry-card-thumb,
#sidebar .new-entry-card-thumb,
#sidebar .popular-entry-card-thumb,
#sidebar .ranking-entry-card-thumb,
.sidebar .widget-entry-card-thumb,
.sidebar .new-entry-card-thumb,
.sidebar .popular-entry-card-thumb,
.sidebar .ranking-entry-card-thumb{
  width:76px !important;
  max-width:76px !important;
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-md);
  background:var(--mei-color-surface-soft);
}

#sidebar .widget-entry-card-title,
#sidebar .new-entry-card-title,
#sidebar .popular-entry-card-title,
#sidebar .ranking-entry-card-title,
.sidebar .widget-entry-card-title,
.sidebar .new-entry-card-title,
.sidebar .popular-entry-card-title,
.sidebar .ranking-entry-card-title{
  color:var(--mei-color-heading);
  font-size:14px;
  font-weight:700;
  line-height:var(--mei-leading-snug);
}

#sidebar .widget-entry-card-date,
#sidebar .new-entry-card-date,
#sidebar .popular-entry-card-date,
#sidebar .ranking-entry-card-date,
#sidebar .widget-entry-card-snippet,
#sidebar .new-entry-card-snippet,
#sidebar .popular-entry-card-snippet,
#sidebar .ranking-entry-card-snippet,
.sidebar .widget-entry-card-date,
.sidebar .new-entry-card-date,
.sidebar .popular-entry-card-date,
.sidebar .ranking-entry-card-date,
.sidebar .widget-entry-card-snippet,
.sidebar .new-entry-card-snippet,
.sidebar .popular-entry-card-snippet,
.sidebar .ranking-entry-card-snippet{
  color:var(--mei-color-muted);
  font-size:var(--mei-text-sm);
  font-weight:500;
}

@media (max-width:767px){
  .blog .main .entry-card,
  .category .main .entry-card,
  .archive:not(.post-type-archive-live) .main .entry-card,
  .search .main .entry-card{
    grid-template-columns:1fr;
    gap:var(--mei-space-md);
  }

  .blog .main .entry-card-wrap,
  .category .main .entry-card-wrap,
  .archive:not(.post-type-archive-live) .main .entry-card-wrap,
  .search .main .entry-card-wrap,
  .single-post .main .related-entry-card-wrap,
  #sidebar .widget,
  .sidebar .widget{
    padding:var(--mei-space-md);
    border-radius:var(--mei-radius-lg);
  }

  #sidebar .widget-entry-card,
  #sidebar .new-entry-card,
  #sidebar .popular-entry-card,
  #sidebar .ranking-entry-card,
  .sidebar .widget-entry-card,
  .sidebar .new-entry-card,
  .sidebar .popular-entry-card,
  .sidebar .ranking-entry-card{
    grid-template-columns:72px minmax(0, 1fr);
  }

  #sidebar .widget-entry-card-thumb,
  #sidebar .new-entry-card-thumb,
  #sidebar .popular-entry-card-thumb,
  #sidebar .ranking-entry-card-thumb,
  .sidebar .widget-entry-card-thumb,
  .sidebar .new-entry-card-thumb,
  .sidebar .popular-entry-card-thumb,
  .sidebar .ranking-entry-card-thumb{
    width:72px !important;
    max-width:72px !important;
  }
}

@media (prefers-reduced-motion:reduce){
  .blog .main .entry-card-wrap,
  .category .main .entry-card-wrap,
  .archive:not(.post-type-archive-live) .main .entry-card-wrap,
  .search .main .entry-card-wrap,
  .single-post .main .related-entry-card-wrap,
  .mei-directory:not(.mei-directory--detail) .mei-directory-card,
  .mei-directory--detail .mei-directory-stat,
  .mei-directory--detail .mei-directory-place,
  .mei-directory--detail .mei-directory-search,
  .mei-directory--detail .mei-directory-related__item,
  #sidebar .widget-entry-card-link,
  #sidebar .new-entry-card-link,
  #sidebar .popular-entry-card-link,
  #sidebar .ranking-entry-card-link,
  .sidebar .widget-entry-card-link,
  .sidebar .new-entry-card-link,
  .sidebar .popular-entry-card-link,
  .sidebar .ranking-entry-card-link{
    transition:none;
  }

  .blog .main .entry-card-wrap:hover,
  .category .main .entry-card-wrap:hover,
  .archive:not(.post-type-archive-live) .main .entry-card-wrap:hover,
  .search .main .entry-card-wrap:hover,
  .single-post .main .related-entry-card-wrap:hover,
  .mei-directory:not(.mei-directory--detail) .mei-directory-card:hover,
  .mei-directory--detail .mei-directory-related__item:hover,
  #sidebar .widget-entry-card-link:hover,
  #sidebar .new-entry-card-link:hover,
  #sidebar .popular-entry-card-link:hover,
  #sidebar .ranking-entry-card-link:hover,
  .sidebar .widget-entry-card-link:hover,
  .sidebar .new-entry-card-link:hover,
  .sidebar .popular-entry-card-link:hover,
  .sidebar .ranking-entry-card-link:hover{
    transform:none;
  }
}

.pagination{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:var(--mei-space-sm);
}

.pagination .page-numbers{
  min-width:46px;
  padding-right:var(--mei-space-md);
  padding-left:var(--mei-space-md);
  white-space:nowrap;
}

body:not(.wp-admin) .main .pagination .page-numbers{
  border-radius:var(--mei-radius-pill);
  color:var(--mei-color-primary-dark);
  text-decoration:none;
}

body:not(.wp-admin) .main .pagination .page-numbers.current{
  color:#fff;
}

body:not(.wp-admin) .main .mei-directory__back-top,
body:not(.wp-admin) .main .mei-directory-search__links a{
  border-radius:var(--mei-radius-pill);
  color:var(--mei-color-primary-dark);
  text-decoration:none;
}

body:not(.wp-admin) .main .mei-directory-search__links a{
  min-height:40px;
  padding:8px var(--mei-space-md);
  background:var(--mei-color-surface-clean);
  box-shadow:var(--mei-shadow-none);
}

.pagination .page-numbers.current{
  border-color:var(--mei-color-primary-dark);
  background:var(--mei-color-primary-dark);
  color:#fff;
  box-shadow:var(--mei-shadow-none);
}

@media (prefers-reduced-motion:reduce){
  .mei-next-live__action,
  .live-card-action,
  .live-access-links a,
  .live-copy-address,
  .live-list-link,
  .live-archive-past-link a,
  .live-load-more__button,
  .live-history-search__actions a,
  .live-history-search__actions button,
  .mei-home-search__form button,
  .home .mei-home-search__form button,
  .mei-home-search__link a,
  .mei-home-notice__links a,
  .mei-directory-search__links a,
  .mei-directory__back-top,
  .pagination .page-numbers{
    transition:none;
  }

  .mei-next-live__action:hover,
  .live-card-action:hover,
  .live-access-links a:hover,
  .live-copy-address:hover,
  .live-list-link:hover,
  .live-archive-past-link a:hover,
  .live-load-more__button:hover,
  .live-history-search__actions a:hover,
  .live-history-search__actions button:hover,
  .mei-home-search__form button:hover,
  .home .mei-home-search__form button:hover,
  .mei-home-notice__links a:hover,
  .mei-directory-search__links a:hover,
  .mei-directory__back-top:hover,
  .pagination a.page-numbers:hover{
    transform:none;
  }
}

/* === Mei Archive footer and peripheral UI refinement v1 === */
body:not(.wp-admin) #footer.footer{
  margin-top:clamp(36px, 6vw, 72px);
  border-top:var(--mei-border-soft-line);
  background:var(--mei-color-surface-soft);
  color:var(--mei-color-muted);
  box-shadow:none;
}

body:not(.wp-admin) #footer-in.footer-in{
  max-width:var(--mei-width-wide);
  padding:clamp(24px, 4vw, 44px) var(--mei-space-lg);
}

body:not(.wp-admin) #footer .footer-bottom{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1.5fr);
  align-items:center;
  gap:var(--mei-space-lg);
  margin:0;
  padding:0;
  font-family:var(--mei-font-ui);
  font-size:var(--mei-text-body-sm);
  line-height:var(--mei-leading-snug);
}

body:not(.wp-admin) #footer .footer-bottom-logo,
body:not(.wp-admin) #footer .footer-bottom-content{
  position:static;
  float:none;
}

body:not(.wp-admin) #footer .footer-bottom-logo .site-name-text{
  color:var(--mei-color-heading);
  font-size:clamp(15px, 1.8vw, 18px);
  font-weight:700;
  letter-spacing:0;
}

body:not(.wp-admin) #footer .footer-bottom-content{
  display:grid;
  justify-items:end;
  gap:var(--mei-space-sm);
  text-align:right;
}

body:not(.wp-admin) #footer .navi-footer-in > .menu-footer{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px var(--mei-space-sm);
  margin:0;
  padding:0;
  list-style:none;
}

body:not(.wp-admin) #footer .navi-footer-in > .menu-footer li{
  width:auto;
  margin:0;
}

body:not(.wp-admin) #footer .navi-footer a{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:8px 12px;
  border-radius:var(--mei-radius-pill);
  color:var(--mei-color-primary-dark);
  font-weight:600;
  text-decoration:none;
  transition:
    background-color var(--mei-transition-fast),
    color var(--mei-transition-fast);
}

body:not(.wp-admin) #footer .navi-footer a:hover,
body:not(.wp-admin) #footer .navi-footer a:focus-visible{
  background:rgba(47,83,104,.08);
  color:var(--mei-color-primary-hover);
}

body:not(.wp-admin) #footer .copyright{
  color:var(--mei-color-muted);
  font-size:var(--mei-text-meta);
}

body:not(.wp-admin) .article-footer .footer-meta{
  margin-top:var(--mei-space-xl);
  padding-top:var(--mei-space-md);
  border-top:var(--mei-border-soft-line);
  color:var(--mei-color-muted);
  font-size:var(--mei-text-meta);
}

body:not(.wp-admin) .breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px 8px;
  box-sizing:border-box;
  max-width:var(--mei-width-wide);
  margin:var(--mei-space-lg) auto;
  padding:10px 14px;
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-surface);
  color:var(--mei-color-muted);
  font-family:var(--mei-font-ui);
  font-size:var(--mei-text-meta);
  line-height:var(--mei-leading-snug);
}

body:not(.wp-admin) .breadcrumb :where(.breadcrumb-home, .breadcrumb-item){
  display:inline-flex;
  align-items:center;
  min-width:0;
  max-width:100%;
}

body:not(.wp-admin) .breadcrumb .sp{
  margin:0 3px;
  color:var(--mei-color-subtle);
}

body:not(.wp-admin) .breadcrumb .fa{
  color:var(--mei-color-subtle);
}

body:not(.wp-admin) .breadcrumb a{
  color:var(--mei-color-primary-dark);
  text-decoration:none;
}

body:not(.wp-admin) .breadcrumb a:hover,
body:not(.wp-admin) .breadcrumb a:focus-visible{
  color:var(--mei-color-primary-hover);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.22em;
}

body:not(.wp-admin) .breadcrumb-caption{
  min-width:0;
  margin:0 2px;
  overflow-wrap:anywhere;
}

body:not(.home):not(.single-live):not(.wp-admin) .main > .archive-title,
body:not(.home):not(.single-live):not(.wp-admin) .main > .article > .entry-title{
  position:relative;
  margin:0 0 var(--mei-space-lg);
  padding-bottom:var(--mei-space-sm);
  color:var(--mei-color-heading);
  font-size:clamp(24px, 3.6vw, 34px);
  line-height:var(--mei-leading-snug);
  letter-spacing:0;
  overflow-wrap:anywhere;
}

body:not(.home):not(.single-live):not(.wp-admin) .main > .archive-title::after,
body:not(.home):not(.single-live):not(.wp-admin) .main > .article > .entry-title::after{
  content:"";
  display:block;
  width:56px;
  height:2px;
  margin-top:10px;
  border-radius:var(--mei-radius-pill);
  background:rgba(56,109,145,.42);
}

.search .main > .search-box.input-box{
  display:flex;
  align-items:stretch;
  gap:var(--mei-space-sm);
  margin:0 0 var(--mei-space-lg);
  padding:var(--mei-space-md);
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-card);
  background:var(--mei-color-surface);
  box-shadow:var(--mei-shadow-soft);
}

.search .main > .search-box .search-edit{
  min-height:46px;
  border:var(--mei-border-default);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-surface-clean);
  color:var(--mei-color-text);
  font-family:var(--mei-font-ui);
}

.search .main > .search-box .search-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-width:46px;
  min-height:46px;
  border:1px solid var(--mei-color-primary-dark);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-primary-dark);
  color:#fff;
  box-shadow:var(--mei-shadow-none);
}

.search .main > .search-box .search-submit:hover,
.search .main > .search-box .search-submit:focus-visible{
  border-color:var(--mei-color-primary-hover);
  background:var(--mei-color-primary-hover);
}

body:not(.wp-admin) .pagination{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  width:100%;
  margin:clamp(22px, 4vw, 36px) 0;
  gap:var(--mei-space-sm);
  clear:both;
}

body:not(.wp-admin) .main > .pagination > .navigation.pagination{
  width:auto;
  margin:0;
}

body:not(.wp-admin) .pagination .nav-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:var(--mei-space-sm);
}

body:not(.wp-admin) .main .pagination .page-numbers{
  min-width:46px;
  min-height:46px;
  padding:10px 16px;
  border:var(--mei-border-default);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-surface);
  color:var(--mei-color-primary-dark);
  box-shadow:var(--mei-shadow-soft);
  font-family:var(--mei-font-ui);
  font-size:var(--mei-text-body-sm);
  font-weight:700;
  line-height:var(--mei-leading-tight);
  text-decoration:none;
  white-space:nowrap;
}

body:not(.wp-admin) .main .pagination .prev.page-numbers,
body:not(.wp-admin) .main .pagination .next.page-numbers{
  min-width:56px;
  padding-inline:18px;
}

body:not(.wp-admin) .main .pagination .dots{
  border-color:transparent;
  background:transparent;
  box-shadow:none;
  color:var(--mei-color-muted);
}

body:not(.wp-admin) .main .pagination a.page-numbers:hover,
body:not(.wp-admin) .main .pagination a.page-numbers:focus-visible{
  border-color:rgba(47,83,104,.48);
  background:var(--mei-color-surface-clean);
  color:var(--mei-color-primary-hover);
  box-shadow:var(--mei-shadow-hover);
  transform:translateY(-1px);
}

body:not(.wp-admin) .main .pagination .page-numbers.current{
  border-color:var(--mei-color-primary-dark);
  background:var(--mei-color-primary-dark);
  color:#fff;
  box-shadow:var(--mei-shadow-none);
}

body:not(.wp-admin) .posts-not-found,
body.error404:not(.wp-admin) .main > .article{
  max-width:var(--mei-width-reading);
  margin:var(--mei-space-xl) auto;
  padding:clamp(20px, 4vw, 32px);
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-card);
  background:var(--mei-color-surface);
  box-shadow:var(--mei-shadow-soft);
  color:var(--mei-color-text);
  text-align:left;
}

body:not(.wp-admin) .posts-not-found h2{
  margin:0 0 var(--mei-space-sm);
  color:var(--mei-color-heading);
  font-size:clamp(20px, 3vw, 26px);
  line-height:var(--mei-leading-snug);
}

body:not(.wp-admin) .posts-not-found p,
body.error404:not(.wp-admin) .main > .article p{
  color:var(--mei-color-muted);
  line-height:var(--mei-leading-reading);
}

body.error404:not(.wp-admin) .main > .article .not-found{
  display:block;
  max-width:min(320px, 72vw);
  height:auto;
  margin:var(--mei-space-lg) auto;
  border-radius:var(--mei-radius-card);
  opacity:.86;
}

body:not(.wp-admin) .go-to-top{
  right:clamp(12px, 2vw, 24px);
  bottom:clamp(12px, 2vw, 24px);
}

body:not(.wp-admin) .go-to-top-button{
  width:46px;
  height:46px;
  border:var(--mei-border-soft-line);
  border-radius:var(--mei-radius-pill);
  background:var(--mei-color-surface);
  color:var(--mei-color-primary-dark);
  box-shadow:var(--mei-shadow-soft);
}

body:not(.wp-admin) .go-to-top-button:hover,
body:not(.wp-admin) .go-to-top-button:focus-visible{
  background:var(--mei-color-surface-clean);
  color:var(--mei-color-primary-hover);
  box-shadow:var(--mei-shadow-hover);
}

@media (max-width:834px){
  body:not(.wp-admin) #footer-in.footer-in{
    padding-inline:var(--mei-space-md);
    padding-bottom:calc(76px + env(safe-area-inset-bottom, 0px));
  }

  body:not(.wp-admin) #footer .footer-bottom{
    grid-template-columns:1fr;
    gap:var(--mei-space-md);
    text-align:left;
  }

  body:not(.wp-admin) #footer .footer-bottom-content{
    justify-items:start;
    text-align:left;
  }

  body:not(.wp-admin) #footer .navi-footer-in > .menu-footer{
    justify-content:flex-start;
  }

  body:not(.wp-admin) .breadcrumb{
    margin:var(--mei-space-md) auto;
    border-radius:var(--mei-radius-card);
  }

  .search .main > .search-box.input-box{
    flex-direction:column;
  }

  .search .main > .search-box .search-submit{
    width:100%;
  }

  body:not(.wp-admin) .main .pagination .page-numbers{
    min-width:44px;
    min-height:44px;
    padding:9px 14px;
  }

  body:not(.wp-admin) .go-to-top{
    bottom:calc(76px + env(safe-area-inset-bottom, 0px));
  }
}

.live-view-switcher__item,
.live-exception-badge,
.live-today-badge,
.mei-home-kicker,
.mei-home-trace-card__kicker,
.mei-past-venue-lives__kicker{
  border-radius:var(--mei-radius-pill);
}

.live-item,
.live-history-search,
.live-list,
.single-live .live-detail-meta,
.live-section,
.mei-past-venue-lives,
.mei-related-lives,
.mei-directory:not(.mei-directory--detail),
.mei-directory--detail,
.mei-directory-card,
.mei-directory-related__item,
.mei-home-live-focus,
.mei-home-search,
.mei-home-trace,
.mei-home-social-prompt,
.mei-home-intro,
.mei-home-notice,
.mei-home-stat,
.mei-home-trace-card,
.mei-home-recent__link,
.blog .main .entry-card-wrap,
.category .main .entry-card-wrap,
.archive.category .main .entry-card-wrap{
  border-color:var(--mei-color-border-soft);
  border-radius:var(--mei-radius-card);
  box-shadow:var(--mei-shadow-soft);
}

.live-item,
.single-live .live-detail-meta,
.live-history-search,
.live-list,
.mei-directory:not(.mei-directory--detail),
.mei-directory--detail,
.mei-directory-card,
.mei-directory-related__item,
.mei-home-live-focus,
.mei-home-search,
.mei-home-trace,
.mei-home-social-prompt,
.mei-home-intro,
.mei-home-notice,
.mei-home-stat,
.mei-home-trace-card,
.mei-home-recent__link,
.blog .main .entry-card-wrap,
.category .main .entry-card-wrap,
.archive.category .main .entry-card-wrap{
  background:var(--mei-color-surface);
  border-style:solid;
  border-width:var(--mei-border-width);
}

.live-thumb,
.live-thumb img,
.live-detail-flyer,
.live-detail-flyer img,
.live-photos__item,
.live-photos__item img,
.entry-card-thumb,
.entry-card-thumb img,
.card-thumb,
.card-thumb img,
.mei-past-venue-lives__thumb,
.mei-home-fragment,
.mei-home-fragment img{
  border-radius:var(--mei-radius-photo);
}

.live-meta-row,
.live-detail-meta > .live-meta-row,
.live-list-row,
.mei-directory-history__item,
.mei-related-lives__item,
.mei-past-venue-lives__item{
  border-color:var(--mei-color-border-soft);
}

.mei-home-search__form input,
.home .mei-home-search__form input,
.live-history-search input[type="search"],
.live-history-search select,
#sidebar input[type="search"],
#sidebar .search-edit,
#sidebar .wp-block-search__input,
.sidebar input[type="search"],
.sidebar .search-edit,
.sidebar .wp-block-search__input{
  min-height:44px;
  border:var(--mei-border-default);
  border-radius:var(--mei-radius-md);
  background:var(--mei-color-surface-clean);
  color:var(--mei-color-text);
  font-family:var(--mei-font-ui);
  font-size:var(--mei-text-body-sm);
}

.mei-home-search__form input:focus,
.home .mei-home-search__form input:focus,
.live-history-search input[type="search"]:focus,
.live-history-search select:focus,
#sidebar input[type="search"]:focus,
#sidebar .search-edit:focus,
#sidebar .wp-block-search__input:focus,
.sidebar input[type="search"]:focus,
.sidebar .search-edit:focus,
.sidebar .wp-block-search__input:focus{
  border-color:var(--mei-color-primary-dark);
  box-shadow:0 0 0 3px rgba(184,137,91,.18);
}

.live-card-title__venue,
.live-headline__venue,
.live-headline__event,
.venue-name,
.entry-card-title,
.mei-directory-card__title,
.mei-directory__title,
.mei-home-recent__link strong{
  color:var(--mei-color-heading);
  overflow-wrap:anywhere;
}

.live-card-meta__value,
.live-meta-content,
.venue-title,
.col-performers,
.entry-card-snippet,
.mei-directory-card__description{
  color:var(--mei-color-text);
}

.live-card-date.is-saturday .live-card-date__monthday,
.live-card-date.is-saturday .live-card-date__weekday,
.live-detail-date.is-saturday .live-detail-date__weekday,
.live-list-row .col-date.is-saturday{
  color:var(--mei-color-saturday);
}

.live-card-date.is-sunday .live-card-date__monthday,
.live-card-date.is-holiday .live-card-date__monthday,
.live-card-date.is-sunday .live-card-date__weekday,
.live-card-date.is-holiday .live-card-date__weekday,
.live-detail-date.is-sunday .live-detail-date__weekday,
.live-detail-date.is-holiday .live-detail-date__weekday,
.live-list-row .col-date.is-sunday,
.live-list-row .col-date.is-holiday{
  color:var(--mei-color-holiday);
}

@media (max-width:767px){
  .mei-next-live__action,
  .live-card-action,
  .live-access-links a,
  .live-copy-address,
  .live-list-link,
  .live-archive-past-link a,
  .live-load-more__button,
    .live-history-search__actions a,
    .live-history-search__actions button,
    .mei-home-search__form button,
    .home .mei-home-search__form button,
  .mei-home-notice__links a,
  .mei-directory-search__links a,
  .mei-directory__back-top,
  .pagination .page-numbers{
    min-height:46px;
    border-radius:var(--mei-radius-pill);
  }

  .live-item,
  .live-history-search,
  .live-list,
  .single-live .live-detail-meta,
  .mei-directory:not(.mei-directory--detail),
  .mei-directory--detail,
  .mei-directory-card,
  .mei-home-live-focus,
  .mei-home-search,
  .mei-home-trace,
  .mei-home-social-prompt,
  .mei-home-intro,
  .mei-home-notice,
  .blog .main .entry-card-wrap,
  .category .main .entry-card-wrap,
  .archive.category .main .entry-card-wrap{
    border-radius:var(--mei-radius-lg);
  }

  .archive-title,
  .entry-title,
  .live-headline,
  .mei-directory__head h1{
    font-size:clamp(23px, 7vw, 30px);
  }
}

/* === Mei Archive home integration refinement v1 === */
.home .mei-home--auto{
  max-width:var(--mei-width-archive, 1180px);
  margin-inline:auto;
  gap:clamp(20px, 3.2vw, 36px);
}

.home .mei-home--auto :where(
  .mei-home-intro,
  .mei-home-live-focus,
  .mei-home-search,
  .mei-home-trace,
  .mei-home-recent,
  .mei-home-social-prompt,
  .mei-home-notice
){
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:var(--mei-color-surface, #fffefa);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.home .mei-home--auto :where(.mei-home-intro, .mei-home-live-focus){
  padding:clamp(20px, 4vw, 36px);
}

.home .mei-home-intro{
  grid-template-columns:minmax(0, 1fr) minmax(240px, 320px);
  gap:clamp(18px, 3.6vw, 36px);
  align-items:center;
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,254,250,.96) 58%, rgba(243,246,246,.92));
}

.home .mei-home-intro::after{
  display:none;
}

.home .mei-home-intro__body,
.home .mei-home-intro__coverage-wrap{
  padding-top:0;
}

.home .mei-home-intro h2{
  font-size:clamp(22px, 3vw, 30px);
  line-height:var(--mei-leading-snug, 1.4);
}

.home .mei-home-intro p:not(.mei-home-kicker){
  max-width:680px;
  margin-top:10px;
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:var(--mei-text-body-sm, 14px);
  line-height:var(--mei-leading-reading, 1.8);
}

.home .mei-home-intro__coverage{
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-lg, 12px);
  background:var(--mei-color-surface-clean, #fff);
  box-shadow:none;
}

.home .mei-home-live-focus{
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,254,250,.97) 62%, rgba(232,239,242,.86));
}

.home .mei-home-live-focus::before{
  left:clamp(20px, 4vw, 36px);
  width:72px;
  height:2px;
  background:linear-gradient(90deg, rgba(56,109,145,.72), rgba(184,137,91,.52));
}

.home .mei-home-live-focus__grid{
  grid-template-columns:minmax(0, 1.08fr) minmax(280px, .92fr);
  gap:clamp(18px, 3vw, 28px);
}

.home .mei-home-live-focus__main{
  gap:var(--mei-space-lg, 24px);
}

.home .mei-next-live{
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:var(--mei-color-surface-clean, #fff);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.home .mei-next-live__feature{
  border-radius:var(--mei-radius-photo, 14px);
}

.home .mei-next-live__quick{
  gap:var(--mei-space-md, 16px);
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:rgba(255,254,250,.94);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.home .mei-next-live__quick-main{
  min-width:0;
}

.home .mei-next-live__quick-main strong,
.home .mei-upcoming-list .mei-live-schedule-line__venue{
  color:var(--mei-color-heading, #24343b);
  overflow-wrap:anywhere;
}

.home .mei-next-live__quick-main span,
.home .mei-upcoming-list .mei-live-schedule-line__time{
  color:var(--mei-color-text-muted, #6f7e82);
}

.home .mei-upcoming-list{
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:var(--mei-color-surface-clean, #fff);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.home .mei-upcoming-list__link,
.home .mei-home-recent__link,
.home .mei-home-trace-card,
.home .mei-home-social-card{
  transition:
    background-color var(--mei-transition-fast, .16s ease),
    border-color var(--mei-transition-fast, .16s ease),
    box-shadow var(--mei-transition-fast, .16s ease),
    color var(--mei-transition-fast, .16s ease),
    transform var(--mei-transition-fast, .16s ease);
}

.home .mei-home-search,
.home .mei-home-trace,
.home .mei-home-social-prompt,
.home .mei-home-notice{
  padding:clamp(18px, 3vw, 28px);
}

.home .mei-home-search{
  background:var(--mei-color-surface, #fffefa);
}

.home .mei-home-search__form{
  gap:var(--mei-space-sm, 8px);
}

.home .mei-home-search__form input{
  min-height:46px;
  border:var(--mei-border-default, 1px solid #d9e1e3);
  border-radius:var(--mei-radius-md, 8px);
  background:var(--mei-color-surface-clean, #fff);
  color:var(--mei-color-text, #263238);
  font-family:var(--mei-font-ui, system-ui);
  font-size:var(--mei-text-body-sm, 14px);
  box-shadow:none;
}

.home .mei-home-trace__grid{
  gap:var(--mei-space-md, 16px);
}

.home .mei-home-trace-card{
  min-height:150px;
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:var(--mei-color-surface-clean, #fff);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.home .mei-home-trace-card:hover,
.home .mei-home-trace-card:focus-visible,
.home .mei-home-social-card:hover,
.home .mei-home-social-card:focus-visible{
  transform:translateY(-1px);
  border-color:var(--mei-color-border, #d9e1e3);
  box-shadow:var(--mei-shadow-hover, 0 10px 26px rgba(38,50,56,.08));
}

.home .mei-home-recent{
  width:min(100%, var(--mei-width-content, 980px));
}

.home .mei-home-recent__list{
  border-top-color:var(--mei-color-border-soft, #e8eeee);
}

.home .mei-home-recent__item{
  border-bottom-color:var(--mei-color-border-soft, #e8eeee);
}

.home .mei-home-social-prompt{
  background:var(--mei-color-surface, #fffefa);
}

.home .mei-home-social-prompt__links{
  gap:var(--mei-space-md, 16px);
}

.home .mei-home-social-card{
  min-height:112px;
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:var(--mei-color-surface-clean, #fff);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
}

.home .mei-home-social-card__mark{
  border-radius:var(--mei-radius-md, 8px);
}

.home .mei-home-notice{
  align-items:flex-start;
  background:var(--mei-color-surface-soft, #f3f6f6);
  box-shadow:none;
}

.home .mei-home-notice p{
  color:var(--mei-color-text-muted, #6f7e82);
}

@media (max-width:900px){
  .home .mei-home-intro,
  .home .mei-home-live-focus__grid{
    grid-template-columns:1fr;
  }

  .home .mei-home-social-prompt__links{
    grid-template-columns:1fr;
  }
}

@media (max-width:600px){
  .home .mei-home--auto{
    gap:22px;
  }

  .home .mei-home--auto :where(
    .mei-home-intro,
    .mei-home-live-focus,
    .mei-home-search,
    .mei-home-trace,
    .mei-home-social-prompt,
    .mei-home-notice
  ){
    border-radius:var(--mei-radius-lg, 12px);
  }

  .home .mei-home--auto :where(.mei-home-intro, .mei-home-live-focus),
  .home .mei-home-search,
  .home .mei-home-trace,
  .home .mei-home-social-prompt,
  .home .mei-home-notice{
    padding:16px;
  }

  .home .mei-home-intro__coverage-list,
  .home .mei-home-trace__grid{
    grid-template-columns:1fr;
  }

  .home .mei-home-search__form{
    grid-template-columns:1fr;
  }

  .home .mei-home-search__link{
    text-align:left;
  }

  .home .mei-next-live__quick{
    padding:14px;
  }
}

@media (prefers-reduced-motion:reduce){
  .home .mei-upcoming-list__link,
  .home .mei-home-recent__link,
  .home .mei-home-trace-card,
  .home .mei-home-social-card{
    transition:none;
  }

  .home .mei-home-trace-card:hover,
  .home .mei-home-trace-card:focus-visible,
  .home .mei-home-social-card:hover,
  .home .mei-home-social-card:focus-visible{
    transform:none;
  }
}

/* === Mei Archive home white surface refinement v1 === */
.home .mei-home--auto :where(
  .mei-home-intro,
  .mei-home-live-focus,
  .mei-home-search,
  .mei-home-trace,
  .mei-home-recent,
  .mei-home-social-prompt,
  .mei-home-notice
){
  background:var(--mei-color-surface-clean, #fff);
}

.home .mei-home-intro,
.home .mei-home-live-focus{
  background:
    linear-gradient(180deg, rgba(255,255,255,.99), rgba(255,255,255,.96)),
    var(--mei-color-surface-clean, #fff);
}

.home .mei-home-intro::before,
.home .mei-home-live-focus::before,
.home .mei-home-section-head::after,
.home .mei-home-live-focus__head::after{
  background:linear-gradient(90deg, rgba(184,137,91,.36), rgba(184,137,91,0));
}

.home .mei-home-intro__coverage,
.home .mei-next-live,
.home .mei-next-live__quick,
.home .mei-upcoming-list,
.home .mei-home-trace-card,
.home .mei-home-social-card,
.home .mei-home-social-prompt .mei-home-social-card{
  background:var(--mei-color-surface-clean, #fff);
  border-color:var(--mei-color-border-soft, #e8eeee);
  box-shadow:0 8px 20px rgba(38,50,56,.035);
}

.home .mei-home-trace-card:hover,
.home .mei-home-trace-card:focus-visible,
.home .mei-home-social-card:hover,
.home .mei-home-social-card:focus-visible,
.home .mei-home-social-prompt .mei-home-social-card:hover,
.home .mei-home-social-prompt .mei-home-social-card:focus-visible{
  transform:none;
  border-color:var(--mei-color-border, #d9e1e3);
  background:var(--mei-color-surface-clean, #fff);
  box-shadow:0 8px 20px rgba(38,50,56,.04);
}

.home .mei-home-recent{
  background:var(--mei-color-surface-clean, #fff);
}

.home .mei-home-recent__list{
  border-top:1px solid var(--mei-color-border-soft, #e8eeee);
}

.home .mei-home-recent__item{
  border-bottom:1px solid var(--mei-color-border-soft, #e8eeee);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.home .mei-home-recent__link{
  padding:16px 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  transform:none;
}

.home .mei-home-recent__item:has(.mei-home-recent__link:hover),
.home .mei-home-recent__item:has(.mei-home-recent__link:focus-visible),
.home .mei-home-recent__link:hover,
.home .mei-home-recent__link:focus-visible{
  background:transparent;
  box-shadow:none;
  transform:none;
}

.home .mei-home-recent__link:hover strong,
.home .mei-home-recent__link:focus-visible strong{
  color:var(--mei-color-primary-hover, #243f50);
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,137,91,.58);
  text-underline-offset:.22em;
}

/* === Mei Archive live detail headline refinement v1 === */
.single-live .live-headline{
  display:grid;
  grid-template-columns:minmax(104px, auto) minmax(0, 1fr);
  gap:clamp(16px, 3vw, 28px);
  align-items:center;
  margin:0 0 clamp(18px, 3vw, 28px);
  padding:clamp(18px, 3vw, 28px);
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-card, 14px);
  background:linear-gradient(135deg, var(--mei-color-surface-clean, #fff) 0%, var(--mei-color-surface, #fffefa) 68%, var(--mei-color-surface-soft, #f3f6f6) 100%);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
  color:var(--mei-color-text, #263238);
  font-size:inherit;
  line-height:var(--mei-leading-snug, 1.4);
}

.single-live .live-headline::after{
  right:clamp(18px, 3vw, 28px);
  bottom:0;
  left:clamp(18px, 3vw, 28px);
  width:auto;
  height:2px;
  border-radius:var(--mei-radius-pill, 999px);
  background:linear-gradient(90deg, rgba(56,109,145,.38), rgba(56,109,145,0));
}

.single-live .live-detail-date{
  min-width:0;
  padding:0;
  gap:5px;
}

.single-live .live-detail-date__year{
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:13px;
  font-weight:750;
  letter-spacing:.02em;
  line-height:1.1;
}

.single-live .live-detail-date__main{
  align-items:center;
  gap:8px;
}

.single-live .live-detail-date__monthday{
  color:var(--mei-color-primary-dark, #2f5368);
  font-size:clamp(36px, 5vw, 52px);
  font-weight:820;
  line-height:1;
}

.single-live .live-detail-date__weekday{
  margin-bottom:0;
  font-size:16px;
}

.single-live .live-headline__body{
  gap:8px;
  min-width:0;
}

.single-live .live-headline__venue{
  color:var(--mei-color-heading, #24343b);
  font-size:clamp(23px, 3vw, 30px);
  font-weight:820;
  line-height:1.35;
  overflow-wrap:anywhere;
}

.single-live .live-headline__event{
  margin-top:0;
  padding-left:12px;
  border-left:2px solid rgba(56,109,145,.34);
  color:var(--mei-color-text, #263238);
  font-size:clamp(16px, 2vw, 19px);
  font-weight:650;
  line-height:1.6;
  overflow-wrap:anywhere;
}

.single-live .live-headline__times{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:4px;
}

.single-live .live-headline__time{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  margin-top:0;
  padding:5px 11px;
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-pill, 999px);
  background:var(--mei-color-surface-clean, #fff);
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  line-height:1.25;
  white-space:normal;
}

.single-live .live-countdown,
.single-live .live-today-badge,
.single-live .live-exception-badges--headline{
  margin-top:4px;
}

.single-live .live-countdown{
  max-width:100%;
  padding:7px 11px;
  border:var(--mei-border-soft-line, 1px solid #e8eeee);
  border-radius:var(--mei-radius-pill, 999px);
  background:rgba(184,137,91,.10);
  color:var(--mei-color-primary-dark, #2f5368);
  box-shadow:none;
}

.single-live .live-countdown__label{
  color:var(--mei-color-text-muted, #6f7e82);
}

.single-live .live-countdown__value{
  color:var(--mei-color-primary-dark, #2f5368);
}

@media (max-width:900px){
  .single-live .live-headline{
    grid-template-columns:minmax(88px, auto) minmax(0, 1fr);
    gap:16px;
    padding:20px;
  }

  .single-live .live-detail-date__monthday{
    font-size:40px;
  }
}

@media (max-width:600px){
  .single-live .live-headline{
    grid-template-columns:1fr;
    gap:12px;
    padding:16px;
  }

  .single-live .live-headline::after{
    right:16px;
    left:16px;
  }

  .single-live .live-detail-date{
    flex-direction:column;
  }

  .single-live .live-detail-date__main{
    gap:7px;
  }

  .single-live .live-detail-date__monthday{
    font-size:36px;
  }

  .single-live .live-headline__venue{
    font-size:22px;
  }

  .single-live .live-headline__event{
    font-size:16px;
  }

  .single-live .live-headline__times{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(118px, 1fr));
    width:100%;
  }

  .single-live .live-headline__time{
    width:100%;
    box-sizing:border-box;
  }

  .single-live .live-countdown,
  .single-live .live-today-badge{
    width:100%;
    box-sizing:border-box;
    justify-content:space-between;
  }
}

/* === Mei Archive live card refinement v2 === */
.live-archive{
  gap:var(--mei-space-lg, 24px);
}

.live-item{
  overflow:hidden;
  border-color:var(--mei-color-border-soft, #e6eef2);
  border-radius:var(--mei-radius-card, 14px);
  background:var(--mei-color-surface, #fffefa);
  box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
  transition:
    transform var(--mei-transition-fast, .16s ease),
    border-color var(--mei-transition-fast, .16s ease),
    box-shadow var(--mei-transition-fast, .16s ease),
    background-color var(--mei-transition-fast, .16s ease);
}

.live-item::before{
  display:none;
}

.live-item:hover,
.live-item:focus-within{
  transform:translateY(-1px);
  border-color:var(--mei-color-border, #d5e0e5);
  box-shadow:var(--mei-shadow-hover, 0 10px 26px rgba(38,50,56,.08));
}

.live-link{
  display:grid;
  grid-template-rows:auto auto 1fr;
  min-height:100%;
  color:var(--mei-color-text, #263238);
  text-decoration:none;
}

.live-link:focus-visible{
  outline:3px solid var(--mei-color-focus, rgba(184,137,91,.42));
  outline-offset:-4px;
}

.live-archive .live-title{
  display:grid;
  grid-template-columns:minmax(82px, auto) minmax(0, 1fr);
  gap:8px 15px;
  align-items:start;
  min-height:0;
  margin:0;
  padding:18px 18px 13px;
  border-bottom:var(--mei-border-soft-line, 1px solid #e6eef2);
  background:linear-gradient(180deg, var(--mei-color-surface-clean, #fff) 0%, var(--mei-color-surface, #fffefa) 100%);
  line-height:1.35;
}

.live-archive .live-title:not(:has(.live-card-date)){
  grid-template-columns:minmax(0, 1fr);
}

.live-archive .live-title:not(:has(.live-card-date)) .live-card-title__venue,
.live-archive .live-title:not(:has(.live-card-date)) .live-card-title__region,
.live-archive .live-title:not(:has(.live-card-date)) .live-card-title__time{
  grid-column:1;
}

.live-card-title__date{
  grid-column:1;
  grid-row:1 / span 3;
  flex:none;
  color:inherit;
}

.live-card-title__date:not(.live-card-date){
  padding-left:0;
  border-left:0;
  color:var(--mei-color-primary-dark, #2f5368);
}

.live-card-date{
  width:auto;
  gap:4px;
  margin:0;
  padding:0;
}

.live-card-date__year{
  color:var(--mei-color-text-muted, #6c7b82);
  font-size:13px;
  font-weight:750;
  letter-spacing:.02em;
  line-height:1.1;
}

.live-card-date__main{
  align-items:center;
  gap:7px;
}

.live-card-date__monthday{
  color:var(--mei-color-primary-dark, #2f5368);
  font-size:clamp(34px, 4vw, 42px);
  font-weight:820;
  line-height:1;
}

.live-card-title__venue{
  grid-column:2;
  margin:1px 0 0;
  color:var(--mei-color-heading, #24343b);
  font-size:clamp(18px, 1.8vw, 21px);
  font-weight:800;
  line-height:1.38;
  overflow-wrap:anywhere;
}

.live-region-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  padding:3px 8px;
  border:var(--mei-border-soft-line, 1px solid #e6eef2);
  border-radius:var(--mei-radius-sm, 6px);
  background:var(--mei-color-surface-soft, #f3f6f6);
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.02em;
  line-height:1.2;
  white-space:nowrap;
}

.live-card-title__region{
  grid-column:2;
  justify-self:start;
  margin:0;
}

.live-card-title__time{
  grid-column:2;
  justify-self:start;
  margin:2px 0 0;
  padding:5px 10px;
  border:var(--mei-border-soft-line, 1px solid #e6eef2);
  border-radius:var(--mei-radius-pill, 999px);
  background:var(--mei-color-surface-clean, #fff);
  color:var(--mei-color-text-muted, #6c7b82);
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  line-height:1.25;
  white-space:normal;
}

.live-archive--upcoming .live-title{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
}

.live-archive--upcoming .live-card-title__date,
.live-archive--upcoming .live-card-title__place,
.live-archive--upcoming .live-card-title__venue,
.live-archive--upcoming .live-card-title__region,
.live-archive--upcoming .live-card-title__time{
  grid-column:auto;
  grid-row:auto;
}

.live-archive--upcoming .live-card-date{
  width:100%;
}

.live-archive--upcoming .live-card-date__main{
  gap:4px;
}

.live-card-date__holiday-text{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  min-width:26px;
  height:26px;
  padding:0 6px;
  border-radius:7px;
  background:var(--mei-color-holiday, #a94d50);
  color:#fff;
  font-size:14px;
  font-weight:700;
  line-height:1;
}

.live-archive--upcoming .live-card-date__weekday.weekday-badge--saturday,
.live-archive--upcoming .live-card-date__weekday.weekday-badge--holiday{
  box-sizing:border-box;
  min-width:26px;
  min-height:0;
  height:26px;
  padding:0 6px;
  border-radius:7px;
  font-size:14px;
  font-weight:700;
  line-height:1;
}

.live-card-title__place{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
  width:100%;
  min-height:2.65em;
  min-width:0;
}

.live-archive--upcoming .live-card-title__place .live-region-label{
  flex:0 0 auto;
  width:auto;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--mei-color-text-muted, #6f7e82);
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
  line-height:1.35;
  white-space:normal;
}

.live-archive--upcoming .live-card-title__venue{
  width:100%;
  min-width:0;
  margin:0;
  font-size:clamp(19px, 1.9vw, 22px);
  font-weight:700;
  line-height:1.3;
  overflow-wrap:break-word;
  word-break:normal;
}

.live-archive--upcoming .live-card-title__time{
  margin:0;
}

.live-thumb{
  overflow:hidden;
  aspect-ratio:4 / 3;
  border-radius:0;
  background:var(--mei-color-surface-soft, #f3f6f6);
  line-height:0;
}

.live-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:0;
  transform:scale(1);
  transition:
    transform var(--mei-transition-fast, .16s ease),
    filter var(--mei-transition-fast, .16s ease);
}

.live-item:hover .live-thumb img,
.live-item:focus-within .live-thumb img{
  transform:scale(1.01);
  filter:saturate(1.02) contrast(1.01);
}

.live-archive .live-meta{
  display:grid;
  gap:9px;
  margin:0;
  padding:14px 18px 18px;
  color:var(--mei-color-text, #263238);
  font-size:14px;
  line-height:1.7;
}

.live-archive .live-meta-row{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:8px 12px;
  align-items:start;
  margin:0;
  padding:0;
}

.live-card-meta__label{
  min-height:24px;
  padding:3px 8px;
  border:var(--mei-border-soft-line, 1px solid #e6eef2);
  border-radius:var(--mei-radius-sm, 6px);
  background:var(--mei-color-surface-soft, #f3f6f6);
  color:var(--mei-color-text-muted, #6c7b82);
  font-size:12px;
  letter-spacing:.03em;
}

.live-card-meta__value{
  padding-top:1px;
  color:var(--mei-color-text, #263238);
  font-weight:500;
  overflow-wrap:anywhere;
}

.live-card-meta__performers{
  display:block;
  overflow:visible;
  -webkit-line-clamp:unset;
  -webkit-box-orient:initial;
}

.live-card-actions{
  gap:10px;
  padding:0 18px 18px;
}

.live-card-actions .live-card-action{
  flex:0 1 auto;
  min-height:44px;
  white-space:normal;
}

.live-item .live-link + .live-card-actions{
  margin-top:0;
}

.live-item:hover .live-card-title__venue{
  color:var(--mei-color-primary-dark, #2f5368);
}

@media (hover:hover){
  .live-item:active{
    transform:translateY(0);
    box-shadow:var(--mei-shadow-soft, 0 8px 24px rgba(38,50,56,.04));
  }
}

@media (max-width:900px){
  .live-archive{
    gap:var(--mei-space-md, 18px);
  }

  .live-archive .live-title{
    grid-template-columns:minmax(76px, auto) minmax(0, 1fr);
    gap:8px 13px;
    padding:16px 16px 12px;
  }

  .live-card-date__monthday{
    font-size:34px;
  }

  .live-archive .live-meta,
  .live-card-actions{
    padding-right:16px;
    padding-left:16px;
  }
}

@media (max-width:600px){
  .live-archive{
    grid-template-columns:1fr;
  }

  .live-archive .live-title{
    grid-template-columns:1fr;
    gap:7px;
  }

  .live-card-title__date,
  .live-card-title__venue,
  .live-card-title__region,
  .live-card-title__time{
    grid-column:1;
    grid-row:auto;
  }

  .live-card-date{
    flex-direction:row;
    align-items:center;
    gap:8px;
  }

  .live-archive--upcoming .live-card-date{
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
  }

  .live-card-date__year{
    font-size:12px;
  }

  .live-card-date__monthday{
    font-size:32px;
  }

  .live-card-title__venue{
    font-size:18px;
  }

  .live-card-actions{
    display:grid;
    grid-template-columns:minmax(0, 1fr);
  }

  .live-card-actions .live-card-action{
    width:100%;
  }
}

@media (prefers-reduced-motion:reduce){
  .live-item,
  .live-thumb img{
    transition:none;
  }

  .live-item:hover,
  .live-item:focus-within,
  .live-item:active,
  .live-item:hover .live-thumb img,
  .live-item:focus-within .live-thumb img{
    transform:none;
  }
}

/* === Mei Archive weekday badge final override v1 === */
.weekday-badge,
.live-card-date__weekday.weekday-badge,
.live-detail-date__weekday.weekday-badge,
.live-calendar__date .weekday-badge,
.live-calendar__weekdays .weekday-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  box-sizing:border-box;
  font-weight:850;
  line-height:1;
  letter-spacing:0;
  vertical-align:middle;
}

.weekday-badge--weekday,
.live-card-date.is-weekday .live-card-date__weekday.weekday-badge--weekday,
.live-detail-date.is-weekday .live-detail-date__weekday.weekday-badge--weekday,
.live-calendar__day.is-weekday .live-calendar__date .weekday-badge--weekday,
.live-calendar__weekdays .weekday-badge--weekday{
  min-width:auto;
  min-height:auto;
  padding:0;
  color:var(--mei-color-text, #263238);
  background:transparent;
  border:0;
  border-radius:0;
}

.weekday-badge--saturday,
.live-card-date.is-saturday .live-card-date__weekday.weekday-badge--saturday,
.live-detail-date.is-saturday .live-detail-date__weekday.weekday-badge--saturday,
.live-calendar__day.is-saturday .live-calendar__date .weekday-badge--saturday,
.live-calendar__weekdays .weekday-badge--saturday{
  min-width:1.75em;
  min-height:1.75em;
  padding:.2em;
  color:#fff;
  background:var(--mei-color-saturday, #386d91);
  border:0;
  border-radius:.45em;
}

.weekday-badge--holiday,
.live-card-date.is-sunday .live-card-date__weekday.weekday-badge--holiday,
.live-card-date.is-holiday .live-card-date__weekday.weekday-badge--holiday,
.live-detail-date.is-sunday .live-detail-date__weekday.weekday-badge--holiday,
.live-detail-date.is-holiday .live-detail-date__weekday.weekday-badge--holiday,
.live-calendar__day.is-sunday .live-calendar__date .weekday-badge--holiday,
.live-calendar__day.is-holiday .live-calendar__date .weekday-badge--holiday,
.live-calendar__weekdays .weekday-badge--holiday{
  min-width:1.75em;
  min-height:1.75em;
  padding:.2em;
  color:#fff;
  background:var(--mei-color-holiday, #a94d50);
  border:0;
  border-radius:.45em;
}

.live-calendar__weekdays .weekday-badge{
  justify-self:center;
  width:auto;
}

.live-calendar__weekdays .weekday-badge--saturday,
.live-calendar__weekdays .weekday-badge--holiday{
  width:1.75em;
  color:#fff;
}

.mei-live-schedule-line__date{
  display:inline-flex;
  align-items:center;
  gap:.35em;
}

.home .mei-live-schedule-line__date,
.single-live .live-future-list .mei-live-schedule-line__date,
.mei-upcoming-list .mei-live-schedule-line__date{
  display:inline-flex;
  align-items:center;
  gap:.35em;
}

.home ul .mei-upcoming-list__item:first-child .mei-live-schedule-line__date,
.single-live .live-future-list .mei-upcoming-list__item:first-child .mei-live-schedule-line__date{
  display:inline-flex;
  align-items:center;
  gap:.35em;
}

/* Live detail future list weekday badge alignment */
.single-live .live-future-list .mei-live-schedule-line,
body.single-post .live-future-list .mei-live-schedule-line{
  grid-template-columns:124px minmax(0, 1fr) 72px;
}

.single-live .live-future-list .mei-live-schedule-line__date,
.single-live .live-future-list .mei-upcoming-list__item:first-child .mei-live-schedule-line__date,
body.single-post .live-future-list .mei-live-schedule-line__date,
body.single-post .live-future-list .mei-upcoming-list__item:first-child .mei-live-schedule-line__date{
  display:inline-grid;
  grid-template-columns:5.2ch 1.75em;
  align-items:center;
  column-gap:.4em;
  justify-self:start;
}

.single-live .live-future-list .mei-live-schedule-line__date-main,
body.single-post .live-future-list .mei-live-schedule-line__date-main{
  font-variant-numeric:tabular-nums;
}

.single-live .live-future-list .mei-live-schedule-line__weekday.weekday-badge,
body.single-post .live-future-list .mei-live-schedule-line__weekday.weekday-badge{
  box-sizing:border-box;
  width:1.75em;
  min-width:1.75em;
  height:1.75em;
  min-height:1.75em;
  padding:.2em;
  border-radius:.45em;
}

.single-live .live-future-list .mei-live-schedule-line__weekday.weekday-badge--weekday,
body.single-post .live-future-list .mei-live-schedule-line__weekday.weekday-badge--weekday{
  color:var(--mei-color-text, #263238);
  background:rgba(243, 246, 246, .72);
  border:1px solid rgba(217, 225, 227, .55);
}

@media (max-width:480px){
  .single-live .live-future-list .mei-live-schedule-line,
  body.single-post .live-future-list .mei-live-schedule-line{
    grid-template-columns:84px minmax(0, 1fr) 58px;
  }

  .single-live .live-future-list .mei-live-schedule-line__date,
  .single-live .live-future-list .mei-upcoming-list__item:first-child .mei-live-schedule-line__date,
  body.single-post .live-future-list .mei-live-schedule-line__date,
  body.single-post .live-future-list .mei-upcoming-list__item:first-child .mei-live-schedule-line__date{
    grid-template-columns:4.8ch 1.75em;
    column-gap:.32em;
  }
}
