/* ==============================
 * Headings (accents)
 *
 * NOTE:
 * - No global ::before/::after is applied.
 * - Choose one of the modifier classes below per heading.
 *   (Example) <h2 class="wp-block-heading npc-heading npc-heading--underline">Title</h2>
 *
 * Modifiers:
 * - --leftline, --underline, --dot, --dotline, --fullrule, --bg, --tag, --split, --marker, --neon
 * ============================== */

.npc-heading{
  position:relative;
  margin:0 0 14px;
  letter-spacing:.02em;
}

/* Left vertical line */
.npc-heading--leftline{
  padding-left:14px;
}
.npc-heading--leftline::before{
  content:"";
  position:absolute;
  left:0;
  top:.18em;
  bottom:.18em;
  width:4px;
  border-radius:999px;
  background: var(--npc-support, var(--npc-accent));
}

/* Center underline */
.npc-heading--underline{
  padding-bottom:10px;
}
.npc-heading--underline::after{
  content:"";
  display:block;
  width:56px;
  height:3px;
  margin-top:10px;
 background: var(--npc-support, var(--npc-accent));
  border-radius:999px;
  opacity:.92;
}

/* Center dot */
.npc-heading--dot{
 padding-bottom: 10px;
 display: flex;
 align-items: center;
}
.npc-heading--dot::after{
  content:"";
  position: absolute;
left: -20px;
  display:block;
  width:10px;
  height:10px;
  background: var(--npc-support, var(--npc-accent));
  border-radius:999px;
  box-shadow:0 0 0 3px color-mix(in srgb, var(--npc-support, var(--npc-accent)) 18%, transparent);
}

/* Dot line (dotted underline) */
.npc-heading--dotline{
  padding-bottom:12px;
}
.npc-heading--dotline::after{
  content:"";
  display:block;
  height:4px;
  margin-top:10px;
  background-image:radial-gradient(circle,var(--npc-support, var(--npc-accent)) 40%,transparent 42%);
  background-size:12px 4px;
  background-repeat:repeat-x;
  opacity:.95;
}

/* Full-width rule */
.npc-heading--fullrule{
  padding-bottom:12px;
}
.npc-heading--fullrule::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:var(--npc-border);
}

/* Background label */
.npc-heading--bg{
  display:inline-block;
  padding:10px 14px;
  border-radius:calc(var(--npc-radius) - 6px);
background: var(--npc-support, var(--npc-accent));
  border:1px solid var(--npc-border);
  color: var(--npc-base, #fff);
}

/* Tag bullet */
.npc-heading--tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.npc-heading--tag::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
 background: var(--npc-support, var(--npc-accent));
}

/* Split lines */
.npc-heading--split{
  display:flex;
  align-items:center;
  gap:14px;
}
/* Split lines は「擬似要素の幅」を固定して確実に表示 */
.npc-heading--split::before,
.npc-heading--split::after{
  content:"";
  height:1px;
  background:var(--npc-support, var(--npc-accent));
  width:clamp(44px, 8vw, 88px);
  flex:0 0 auto;
  opacity:.9;
}

/* Marker highlight */
.npc-heading--marker{
  display:inline;
  padding:0 .08em;
  background:linear-gradient(transparent 62%, color-mix(in srgb, var(--npc-support, var(--npc-accent)) 40%, transparent) 62%);
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}

/* Neon (for dark backgrounds) */
.npc-heading--neon{
  text-shadow:0 0 14px color-mix(in srgb, var(--npc-support, var(--npc-accent)) 35%, transparent);
}

/* Badges */
.npc-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  line-height:1;
  padding:6px 10px;
  border-radius:999px;
  white-space:nowrap;
  border:1px solid var(--npc-border);
  background:var(--npc-cat-neutral-bg);
  color:var(--npc-main, var(--npc-accent));
}
/* Tone variants */
.npc-badge--tone-a{ }
.npc-badge--tone-b{
 background:color-mix(in srgb, var(--npc-support, var(--npc-accent)) 12%, var(--npc-cat-neutral-bg));
 border-color:color-mix(in srgb, var(--npc-support, var(--npc-accent)) 22%, var(--npc-border));
}
.npc-badge--tone-c{
    background:var(--npc-support, var(--npc-accent));
  border-color:color-mix(in srgb, var(--npc-support, var(--npc-accent)) 80%, var(--npc-border));
  color:#fff;
}
/* Shape / style variants */
.npc-badge--pill{
  background:color-mix(in srgb, var(--npc-support, var(--npc-accent)) 10%, var(--npc-cat-neutral-bg));
  border-radius:999px;
  padding-left:12px;
  padding-right:12px;
  color: currentColor;
}
.npc-badge--outline{
  background:transparent;
  color:var(--npc-muted);
}
.npc-badge--bullet::before{
  content:"•";
  font-weight:900;
  line-height:1;
  opacity:.85;
}
.npc-badge--square{
  border-radius:0 !important;
}
.npc-badge--tag{
  position:relative;
  border-radius:0;
  border-radius:10px;
  /* margin-right: 11px; */
}
/* 三角：枠線（外側・1px大きめ） */
.npc-badge--tag::before{
  content:"";
  position:absolute;
  top:50%;
  right:-11px;              /* afterより1px外へ */
  transform:translateY(-50%);
  width:0;height:0;
  border-top:11px solid transparent;
  border-bottom:11px solid transparent;
  border-left:11px solid var(--npc-border);  /* toneで上書き */
}
/* 三角：背景（内側） */
.npc-badge--tag::after{
  content:"";
  position:absolute;
  top:50%;
  right:-10px;
  transform:translateY(-50%);
  width:0;height:0;
  border-top:10px solid transparent;
  border-bottom:10px solid transparent;
  border-left:10px solid var(--npc-cat-neutral-bg); /* toneで上書き */
}
/* 枠線 tone */
.npc-badge--tag.npc-badge--tone-a::before{
  border-left-color: var(--npc-border);
}
.npc-badge--tag.npc-badge--tone-b::before{
  border-left-color: color-mix(in srgb, var(--npc-support, var(--npc-accent)) 22%, var(--npc-border));
}
.npc-badge--tag.npc-badge--tone-c::before{
  border-left-color: color-mix(in srgb, var(--npc-support, var(--npc-accent)) 80%, var(--npc-border));
}
/* 背景 tone */
.npc-badge--tag.npc-badge--tone-a::after{
  border-left-color: var(--npc-cat-neutral-bg);
}
.npc-badge--tag.npc-badge--tone-b::after{
  border-left-color: color-mix(in srgb, var(--npc-support, var(--npc-accent)) 12%, var(--npc-cat-neutral-bg));
}
.npc-badge--tag.npc-badge--tone-c::after{
  border-left-color: var(--npc-support, var(--npc-accent));
}
.npc-badge.npc-badge--tag {
    border-radius: 0;
}

/* Divider */
.npc-divider{margin:32px 0;border-color:var(--npc-border);}

/* Accordion */
.npc-accordion__item{width:100%;display:block;border:1px solid var(--npc-border);border-radius:var(--npc-radius, 16px);padding:14px 16px;background:var(--npc-card);box-shadow:var(--npc-shadow-card, 0 10px 30px rgba(17,24,39,.06));}
.npc-accordion__item--tone-a{ }
.npc-accordion__item--tone-b{
  border-color:color-mix(in srgb, var(--npc-support, var(--npc-accent)) 28%, var(--npc-border));
  background:color-mix(in srgb, var(--npc-support, var(--npc-accent)) 6%, var(--npc-card));
}
.npc-accordion__item--tone-c{
  border-color:color-mix(in srgb, var(--npc-support, var(--npc-accent)) 60%, var(--npc-border));
  background:color-mix(in srgb, var(--npc-support, var(--npc-accent)) 12%, var(--npc-card));
}

.npc-accordion__item + .npc-accordion__item{margin-top:12px;}
.npc-accordion__item summary{cursor:pointer;font-weight:700;}
.npc-accordion__item summary::marker{color:var(--npc-muted);}

/* Media wrappers (responsive iframe)
   NOTE: Some environments may end up with nested wrappers like:
   <div class="wp-block-group npc-video-embed"><div class="npc-video-embed"><iframe>...
   This CSS handles both single and double wrappers without adding extra top space.
*/
.npc-map-embed, .npc-video-embed{
  position: relative;
  width: 100%;
  max-width: 100%;
  padding-top: 56.25%;
}
.npc-map-embed iframe, .npc-video-embed iframe{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  border: 0;
  display: block;
}

/* If nested same-class wrapper exists, use inner for the aspect-ratio box */
.npc-map-embed > .npc-map-embed,
.npc-video-embed > .npc-video-embed{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding-top: 0;
}

.npc-btn .wp-block-button__link{border-radius:var(--npc-radius-btn, 999px);padding:12px 18px;font-weight:700;text-decoration:none;}
.npc-btn--primary .wp-block-button__link{background:var(--npc-accent);color:#fff;}
.npc-btn--ghost .wp-block-button__link{background:transparent;color:var(--npc-accent);border:1px solid var(--npc-border);}

/* ==============================
 * Buttons (more variants)
 * ============================== */
.npc-btn--outline .wp-block-button__link{background:transparent;color:var(--npc-main, var(--npc-accent));border:2px solid currentColor;}
.npc-btn--soft .wp-block-button__link{background:var(--npc-cat-neutral-bg);color:var(--npc-main, var(--npc-accent));border:1px solid var(--npc-border);}
.npc-btn--pill .wp-block-button__link{border-radius:999px;padding-left:22px;padding-right:22px;}
.npc-btn--wide .wp-block-button__link{width:min(420px,100%);text-align:center;}
.npc-btn--underline .wp-block-button__link{background:transparent;border:none;color:var(--npc-main, var(--npc-accent));padding-left:0;padding-right:0;border-radius:0;position:relative;}
.npc-btn--underline .wp-block-button__link:after{content:"";display:block;height:2px;width:100%;margin-top:6px;background:var(--npc-support, var(--npc-accent));opacity:.9;}
.npc-btn--gradient .wp-block-button__link{border:none;color:#fff;background:linear-gradient(90deg,var(--npc-accent),var(--npc-support, var(--npc-accent)));}
.npc-btn--neon .wp-block-button__link{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 10px 30px rgba(0,0,0,.25);}
.npc-btn--icon .wp-block-button__link{display:inline-flex;align-items:center;gap:10px;}
.npc-btn--icon .wp-block-button__link:after{content:"→";font-weight:800;}
.npc-btn--icon-left .wp-block-button__link{display:inline-flex;align-items:center;gap:10px;}
.npc-btn--icon-left .wp-block-button__link:before{content:"←";font-weight:800;}

/* =====================================================
   NPC Header tools (search / loginout)
   Scope: only inside NPC header patterns
   ===================================================== */

/* Search button (overrides WP global .wp-element-button) */
.npc-header .npc-search button.wp-block-search__button.wp-element-button {
  background-color: var(--npc-accent) !important;
  color: var(--npc-base, #fff) !important;
  border: 1px solid var(--npc-accent) !important;
  border-radius: var(--npc-radius-btn, 999px) !important;
  box-shadow: var(--npc-shadow-btn, var(--npc-shadow, none)) !important;
  padding: 12px 18px !important;
  font-weight: 700 !important;
}

/* icon button padding */
.npc-header .npc-search button.wp-block-search__button.wp-element-button.has-icon {
  padding: 10px 12px !important;
}

/* Search input */
.npc-header .npc-search input.wp-block-search__input {
  border-radius: var(--npc-radius-btn, 999px) !important;
  border-color: var(--npc-border, rgba(17, 24, 39, .12)) !important;
}

/* Loginout as ghost button */
.npc-header .npc-loginout.wp-block-loginout>a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 18px !important;
  border-radius: var(--npc-radius-btn, 999px) !important;
  border: 1px solid var(--npc-border, rgba(17, 24, 39, .12)) !important;
  color: var(--npc-accent) !important;
  background: transparent !important;
  text-decoration: none !important;
  box-shadow: none !important;
  font-weight: 700 !important;
}

.npc-header .npc-loginout.wp-block-loginout>a:hover {
  opacity: .86;
}

.npc-list{margin:0;padding-left:1.1em;}
.npc-list li{margin:8px 0;}
.npc-list--grid{display:grid;gap:8px 18px;grid-template-columns:repeat(2,minmax(0,1fr));}
@media (max-width:720px){.npc-list--grid{grid-template-columns:1fr;}}
.npc-strong{margin-top:14px;}



/* header side base */
.npc-header--03 .npc-header__side,
.npc-header--04 .npc-header__side {
  min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 16px;
}

.npc-header__side-top {
  display: flex;
  justify-content: center;
  padding: 10px;
}

.npc-header__side-mid {
  flex: 1;
    display: flex;
    align-items: center;
    /* 縦中央 */
    justify-content: center;
    /* 横中央 */
}

.npc-header__side-mid .wp-block-navigation {
  width: auto;
}

/* tools are controlled by your JS (is-nav-open) */
.npc-header__overlay-tools {
  display: none;
}

.npc-header--03.is-nav-open .npc-header__overlay-tools,
.npc-header--04.is-nav-open .npc-header__overlay-tools {
  display: block;
}

/* Make overlay full-screen so tools feel "inside" the menu */
.npc-header--03 .wp-block-navigation__responsive-container.is-menu-open,
.npc-header--04 .wp-block-navigation__responsive-container.is-menu-open {
  position: fixed;
  inset: 0;
  z-index: 9999;
}

/* =====================================================
   Header 03/04: show overlay tools when nav modal is open
   ===================================================== */

/* tools are hidden normally */
.npc-header--03 .npc-header__overlay-tools,
.npc-header--04 .npc-header__overlay-tools {
  display: none;
}

/* when modal is open, show tools as fixed layer */
.npc-header--03 .wp-block-navigation__responsive-container.has-modal-open.is-menu-open~.npc-header__overlay-tools,
.npc-header--04 .wp-block-navigation__responsive-container.has-modal-open.is-menu-open~.npc-header__overlay-tools {
  display: block;
}

/* ① overlay open時：ヘッダー全体に "open" 状態の痕跡が付かないので
   navの状態ではなく、overlayそのものを固定で全画面にし、toolsも固定で表示する */

/* overlay自体は full-screen */
.npc-header--03 .wp-block-navigation__responsive-container.has-modal-open.is-menu-open,
.npc-header--04 .wp-block-navigation__responsive-container.has-modal-open.is-menu-open {
  position: fixed;
  inset: 0;
  z-index: 9999;
}

/* toolsを overlayの上に固定表示 */
.npc-header--03 .npc-header__overlay-tools,
.npc-header--04 .npc-header__overlay-tools {
  position: fixed;
  left: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 10000;
  /* overlayより上 */
  display: none;
  max-width: 560px;
  margin: 0 auto;
}

/* overlayが開いてる間だけ表示（modalが存在＝画面上に出ている） */
.npc-header--03 .wp-block-navigation__responsive-container.has-modal-open.is-menu-open+*,
.npc-header--04 .wp-block-navigation__responsive-container.has-modal-open.is-menu-open+* {
  /* ダミー：この手はDOM依存なので使わない */
}


/* tools default hidden */
.npc-header--03 .npc-header__overlay-tools,
.npc-header--04 .npc-header__overlay-tools {
  display: none;
}

/* show when nav open */
.npc-header--03.is-nav-open .npc-header__overlay-tools,
.npc-header--04.is-nav-open .npc-header__overlay-tools {
  display: block;
  position: fixed;
  left: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 10000;
  max-width: 560px;
  margin: 0 auto;
}


body.has-npc-side-header-left main,
body.has-npc-side-header-left footer {
  padding-left: 150px;
}

body.has-npc-side-header-right main,
body.has-npc-side-header-right footer {
  padding-right: 150px;
}




/* Responsive embeds (Map/Video)
   - Use a SINGLE wrapper (.npc-map-embed / .npc-video-embed) to avoid extra whitespace.
   - Still tolerant if Gutenberg/theme nests same-class wrappers.
*/
.npc-map-embed, .npc-video-embed{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow: hidden;
  border-radius: var(--npc-radius-card, 16px);
  box-shadow: var(--npc-shadow, none);
  background: rgba(0,0,0,.04);
}
.npc-map-embed iframe, .npc-video-embed iframe{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
/* If nested same-class wrapper exists, use inner as the aspect box */
.npc-map-embed > .npc-map-embed,
.npc-video-embed > .npc-video-embed{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding-top: 0;
}
/* Fixed-height map variant (e.g., in Columns) */
.npc-map-embed--fixed{
  padding-top: 0;
  height: 360px;
}

/* Fallback: responsive when user pastes iframe directly (no wrapper) */
.npc-media iframe[src*="youtube.com"],
.npc-media iframe[src*="youtu.be"],
.npc-media iframe[src*="vimeo.com"]{
  width: 100% !important;
  max-width: 100%;
  height: auto !important;
  aspect-ratio: 16 / 9;
  border: 0;
  display: block;
}


/* Button variant: outline */
.npc-btn--outline .wp-block-button__link{background:transparent;color:var(--npc-accent);border:1px solid var(--npc-border);}

/* ==============================
 * Dividers (more variants)
 * ============================== */
.npc-divider--long{width:100%;}

/* Full-width separator (100% line) */
.npc-divider--full{width:100%;}
hr.npc-divider--full{border:0;border-top:1px solid var(--npc-border);}
.npc-divider--short{width:96px;}
.npc-divider--dashed{border-top-style:dashed;}
.npc-divider--dotted{border-top-style:dotted;}
.npc-divider--double{border-top:3px double var(--npc-border);}
.npc-divider--glow{border:none;height:2px;background:linear-gradient(90deg,transparent,var(--npc-support, var(--npc-accent)),transparent);opacity:.9;}
.npc-divider--center-dot{position:relative;border-top:1px solid var(--npc-border);}
.npc-divider--center-dot:after{content:"";position:absolute;left:50%;top:-3px;transform:translateX(-50%);width:10px;height:10px;border-radius:999px;background:var(--npc-support, var(--npc-accent));}

/* ==============================
 * Lists (more variants)
 * ============================== */
.npc-list--dots li::marker{color:var(--npc-support, var(--npc-accent));}
.npc-list--dots-muted li::marker{color:var(--npc-muted);}

/* Alias & extra variants (for pattern naming / consistency) */
.npc-list--dot-a{list-style:disc;padding-left:1.2em;}
.npc-list--dot-a li::marker{color:var(--npc-support, var(--npc-accent));}
.npc-list--dot-b{list-style:disc;padding-left:1.2em;}
.npc-list--dot-b li::marker{color:var(--npc-accent);}
.npc-list--dot-c{list-style:disc;padding-left:1.2em;}
.npc-list--dot-c li::marker{color:var(--npc-muted);}
.npc-list--number{padding-left:1.2em;}
.npc-list--number li::marker{color:var(--npc-muted);font-weight:700;}
.npc-list--numbers{padding-left:1.2em;}
.npc-list--numbers li::marker{color:var(--npc-support, var(--npc-accent));font-weight:800;}
.npc-list--check{list-style:none;padding-left:0;}
.npc-list--check li{position:relative;padding-left:1.6em;}
.npc-list--check li:before{content:"✓";position:absolute;left:0;top:.05em;color:var(--npc-support, var(--npc-accent));font-weight:800;}
.npc-list--arrow{list-style:none;padding-left:0;}
.npc-list--arrow li{position:relative;padding-left:1.6em;}
.npc-list--arrow li:before{content:"→";position:absolute;left:0;top:.05em;color:var(--npc-support, var(--npc-accent));font-weight:800;}
.npc-list--striped{list-style:none;padding-left:0;}
.npc-list--striped li{padding:10px 12px;border:1px solid var(--npc-border);border-radius:calc(var(--npc-radius) - 8px);background:var(--npc-card);}
.npc-list--striped li+li{margin-top:10px;}


/* Striped list (no background) */
.npc-list--striped-nobg{list-style:none;padding-left:0;}
.npc-list--striped-nobg li{padding:10px 12px;border:1px solid var(--npc-border);border-radius:calc(var(--npc-radius) - 8px);background:transparent;}
.npc-list--striped-nobg li+li{margin-top:10px;}
.npc-list--litmus{list-style:none;padding-left:0;}
.npc-list--litmus li{position:relative;padding:10px 12px 10px 16px;border:1px solid var(--npc-border);border-radius:calc(var(--npc-radius) - 8px);background:var(--npc-card);}
.npc-list--litmus li:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;border-radius:999px;background:var(--npc-support, var(--npc-accent));}


/* Litmus list (no background) */
.npc-list--litmus-nobg{list-style:none;padding-left:0;}
.npc-list--litmus-nobg li{position:relative;padding:10px 12px 10px 16px;border:1px solid var(--npc-border);border-radius:calc(var(--npc-radius) - 8px);background:transparent;}
.npc-list--litmus-nobg li:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;border-radius:999px;background:var(--npc-support, var(--npc-accent));}

/* --------------------------------------------------------------------------
 * Dividers: full-width variants (10)
 * -------------------------------------------------------------------------- */
.npc-divider--full-01{border-top:1px solid var(--npc-border);opacity:1;}
.npc-divider--full-02{border-top:3px solid var(--npc-border);opacity:.95;}
.npc-divider--full-03{border-top:2px dashed var(--npc-border);}
.npc-divider--full-04{border-top:2px dotted var(--npc-border);}
.npc-divider--full-05{border-top:3px double var(--npc-border);}

/* Gradient line */
.npc-divider--full-06{border-top:0;height:2px;background:linear-gradient(90deg, transparent, var(--npc-support, var(--npc-accent)), transparent);opacity:.9;}

/* Soft / faint */
.npc-divider--full-07{border-top:1px solid color-mix(in srgb, var(--npc-border) 55%, transparent);}

/* Accent line */
.npc-divider--full-08{border-top:2px solid var(--npc-support, var(--npc-accent));opacity:.9;}

/* Neon glow (best on dark presets) */
.npc-divider--full-09{border-top:2px solid var(--npc-support, var(--npc-accent));box-shadow:0 0 14px color-mix(in srgb, var(--npc-support, var(--npc-accent)) 55%, transparent);}

/* Split line (center gap) */
.npc-divider--full-10{border-top:0;height:2px;background:linear-gradient(90deg, var(--npc-border) 0, var(--npc-border) 45%, transparent 45%, transparent 55%, var(--npc-border) 55%, var(--npc-border) 100%);opacity:.95;}

/* --------------------------------------------------------------------------
 * Lists: aliases + no-bg variants
 * -------------------------------------------------------------------------- */
.npc-list--nobg{background:transparent !important;border:0 !important;padding-left:1.1em;}
.npc-list--plain{list-style:disc;}

/* Aliases (pack uses short names) */
.npc-list--dot{ }
.npc-list--dot li::marker{color:var(--npc-support, var(--npc-accent));}
.npc-list--number{padding-left:1.2em;}
.npc-list--number li::marker{color:var(--npc-support, var(--npc-accent));font-weight:800;}

/* tone helpers for lists */
.npc-list--tone-a{--npc-support:var(--npc-accent);} /* accent */
.npc-list--tone-b{--npc-support:var(--npc-support, var(--npc-accent));}
.npc-list--tone-c{--npc-support:var(--npc-muted);} /* muted */

/* stripe (no background) */
.npc-list--stripe{list-style:none;padding-left:0;}
.npc-list--stripe li{padding:10px 12px;border:1px solid var(--npc-border);border-radius:calc(var(--npc-radius) - 8px);background:transparent;}
.npc-list--stripe li+li{margin-top:10px;}

/* split lines */
.npc-list--split{list-style:none;padding-left:0;}
.npc-list--split li{padding:10px 0;border-bottom:1px solid var(--npc-border);}
.npc-list--split li:last-child{border-bottom:0;}

/* Utilities */
.npc-text-left{ text-align:left; }
