/* 뉴포트 브릿지 미니스트리 — 교회 홈페이지(style.css)를 그대로 쓰고, 로고·그림만 더합니다 */
body{background:var(--bg)}
.nbm-logo{gap:.7rem!important;color:var(--pine)!important}
.nbm-mark{width:56px;height:56px;flex-shrink:0;color:var(--pine);transition:width .25s,height .25s}
.nbm-word{display:flex;flex-direction:column;line-height:1.15}
.nbm-word b{font-family:var(--f-serif);font-size:1.2rem!important;font-weight:700;color:var(--ink);letter-spacing:.01em}
.nbm-word small{font-size:.74rem;font-weight:600;color:var(--muted);letter-spacing:.06em;margin-top:.2rem}
.side.shrink .nbm-mark{width:42px;height:42px}
@media (max-width:640px){.nbm-mark{width:40px;height:40px}.nbm-word b{font-size:1.02rem!important}.nbm-word small{font-size:.66rem}}
@media (prefers-reduced-motion:reduce){.nbm-mark{transition:none}}
.foot-mark{display:block;color:var(--pine);margin-bottom:.6rem}
.foot-mark svg{width:64px;height:64px}
.nbm-art{display:flex!important;align-items:center;justify-content:center;background:#dde9e4!important}
.nbm-art img{width:auto!important;height:78%!important;object-fit:contain!important;opacity:.9;transform:none!important}
.nbm-emblem-art{width:62%;height:auto;color:#5f6c57}
.nbm-slide-art{position:absolute;inset:0;background:#e6ece6;display:flex;align-items:center;justify-content:flex-end;padding-right:6%}
.nbm-slide-emblem{width:min(380px,42%);height:auto;color:#5f6c57;opacity:.85}
@media (max-width:760px){.nbm-slide-art{justify-content:center;padding:0;align-items:flex-start;padding-top:24px}.nbm-slide-emblem{width:150px}}
.nbm-roles{max-width:52rem}
.nbm-roles dt{font-size:1.05rem}

/* 홈 3번째 배너 */
.nbm-dark{background:#22303a!important}
.nbm-dark .nbm-slide-emblem{color:#9fb7c4;opacity:.55}
.nbm-s-dark .slide-text{background:rgba(25,34,41,.78)!important}
.nbm-s-dark .slide-eyebrow{color:#d6c08f!important}
.nbm-s-dark .slide-title,.nbm-s-dark .slide-body,.nbm-s-dark .slide-ref{color:#f1f3f2!important}

/* 가치 설명 */
.nbm-vdl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 28px;margin:clamp(28px,4vw,44px) 0 0}
.nbm-vdl>div{border-top:1px solid var(--line);padding-top:.8rem}
.nbm-vdl dt{font-weight:700;margin-bottom:.2rem}
.nbm-vdl dd{margin:0;color:var(--muted);font-size:.95rem}
.nbm-vmo{margin-top:20px}

/* 걸어온 길 */
.nbm-timeline{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,24px);position:relative}
.nbm-timeline::before{content:"";position:absolute;left:0;right:0;top:19px;height:2px;background:linear-gradient(90deg,#d79a5e,#5f8a8f)}
.nbm-timeline>li{position:relative;padding-top:52px}
.nbm-tl-no{position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%;background:var(--surface);border:2px solid var(--pine);display:flex;align-items:center;justify-content:center;font-family:var(--f-serif);font-weight:700;color:var(--pine)}
.msn .nbm-tl-en{font-family:var(--f-serif);font-size:.9rem!important;color:#8a7140!important;margin:0 0 .1rem!important}
.nbm-timeline h3{font-size:1.15rem;margin:0 0 .7rem}
.nbm-timeline ul{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}
.msn .nbm-timeline ul li{font-size:.95rem!important;color:var(--ink)}
.nbm-timeline time{display:block;font-size:.8rem;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}

/* 우리가 바라보는 것 */
.msn .nbm-hope-sec{background:#22303a!important;color:#eef1f0}
.nbm-hope-sec .eyebrow{color:#d6c08f!important}
.nbm-hope-sec h2{color:#f4f5f3!important}
.nbm-hope{list-style:none;padding:0;margin:0;display:grid;gap:12px;max-width:860px}
.nbm-hope>li{display:flex;gap:20px;align-items:flex-start;padding:20px 22px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.04)}
.nbm-hope svg{width:34px;height:34px;flex-shrink:0;fill:none;stroke:#cfd9dd;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;margin-top:4px}
.nbm-hope h3{font-size:1.2rem;color:#f4f5f3;margin:0}
.msn .nbm-hope-ref{font-size:.82rem!important;color:#d6c08f!important;margin:.15rem 0 .35rem!important}
.msn .nbm-hope p{color:#c9d2d5}

/* 나눔 이야기 */
.nbm-gallery{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,18px)}
.nbm-gallery figure{margin:0;background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);height:100%}
.nbm-gallery img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.nbm-gallery figcaption{padding:.8rem .9rem 1rem;font-size:.88rem;color:var(--muted);line-height:1.55}
.nbm-gallery figcaption b{display:block;color:var(--ink);font-size:.98rem;margin-bottom:.15rem}

/* 북향민 이해하기 */
.nbm-ice{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}
.nbm-ice-top{background:#f1f5f4;padding:clamp(20px,3vw,32px)}
.nbm-ice-low{background:linear-gradient(160deg,#3f6f78,#2f5560);color:#eef4f4;padding:clamp(20px,3vw,32px)}
.msn .nbm-ice-label{font-family:var(--f-serif);font-weight:700;font-size:1.1rem!important;margin:0 0 .8rem!important}
.nbm-ice-low .nbm-ice-label{color:#f4f7f6}
.nbm-ice ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 2rem}
.msn .nbm-ice li{font-weight:600;font-size:1rem!important}
.nbm-ice li small{display:block;font-weight:400;font-size:.8rem;opacity:.75}
.nbm-waterline{margin:0;height:0;border-top:2px dashed #5f8a8f;position:relative}
.nbm-waterline span{position:absolute;right:16px;top:-12px;background:#f1f5f4;padding:0 .5rem;font-size:.75rem;font-weight:700;color:#5f8a8f;letter-spacing:.06em}
.nbm-habits{margin-top:clamp(24px,3vw,36px);display:grid;gap:.5rem}
.nbm-habits h3{font-size:1.25rem}
.nbm-habits h3 small{font-family:var(--f-serif);font-weight:400;font-size:.95rem;color:#8a7140;margin-left:.4rem}
.msn .nbm-habits>p{color:var(--muted)}
.nbm-habits ol{margin:.4rem 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;counter-reset:h}
.nbm-habits ol li{counter-increment:h;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;font-weight:600}
.nbm-habits ol li::before{content:counter(h);display:block;font-family:var(--f-serif);color:var(--pine);font-size:1.3rem;margin-bottom:.3rem}
.msn-steps b small{display:block;font-family:var(--f-body,inherit);font-size:.75rem;color:var(--muted);font-weight:500}
.nbm-meet{margin-top:0!important}

@media (max-width:900px){.nbm-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.nbm-timeline{grid-template-columns:1fr 1fr;row-gap:28px}.nbm-timeline::before{display:none}}
@media (max-width:760px){
  .nbm-timeline{grid-template-columns:1fr;gap:20px}
  .nbm-timeline>li{padding:0 0 0 54px;min-height:40px}
  .nbm-ice ul,.nbm-habits ol{grid-template-columns:1fr}
  .nbm-hope>li{padding:16px;gap:14px}
  .nbm-gallery figcaption{padding:.6rem .7rem .8rem;font-size:.8rem}
}

/* 걸어온 길: 연도별 */
.nbm-hl-legend{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;margin:0 0 1.4rem;font-size:.85rem;color:var(--muted)}
.nbm-hl-legend span{display:inline-flex;align-items:center;gap:.4rem}
.nbm-hl-legend span::before,.nbm-history li li::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c,#8a96a0);flex-shrink:0}
.k-field{--c:#5f6c57}.k-host{--c:#3f7a86}.k-gather{--c:#b07a3e}.k-base{--c:#8a96a0}
.nbm-history{list-style:none;padding:0;margin:0;display:grid;border-top:1px solid var(--line)}
.nbm-history>li{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:clamp(12px,3vw,40px);padding:1.1rem 0;border-bottom:1px solid var(--line)}
.nbm-year{font-family:var(--f-serif);font-size:1.6rem;color:var(--pine);margin:0;line-height:1.2}
.nbm-history ul{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}
.nbm-history li li{display:grid;grid-template-columns:9px 5.2rem minmax(0,1fr);gap:.7rem;align-items:baseline}
.nbm-history li li::before{transform:translateY(-1px)}
.nbm-history time{font-size:.9rem;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.msn .nbm-history li li span{font-size:1rem!important}
.nbm-points{margin:.5rem 0 0;padding-left:1.1rem;display:grid;gap:.25rem}
.msn .nbm-points li{font-size:.95rem!important;color:var(--muted)}
@media (max-width:760px){
  .nbm-history>li{grid-template-columns:1fr;gap:.5rem}
  .nbm-year{font-size:1.35rem}
  .nbm-history li li{grid-template-columns:9px 4.4rem minmax(0,1fr);gap:.5rem}
}

.foot-partner{display:inline-flex;margin-right:.6rem;vertical-align:top}
.foot-partner img{width:64px;height:64px}
footer .wrap>.foot-partner,footer .wrap>.foot-mark{display:inline-block}

/* 다가오는 사역 일정 (교회 일정 달력에서 불러옴) */
.nbm-up{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.nbm-up li{display:flex;gap:.9rem;align-items:baseline;padding:.7rem .9rem;border-radius:10px;background:var(--surface,#fff);border:1px solid var(--line)}
.nbm-up time{flex-shrink:0;min-width:5.6em;font-weight:700;font-variant-numeric:tabular-nums;color:var(--pine)}
.nbm-up span small{display:block;color:var(--muted);font-size:.85rem}
.foot-logos{display:flex;align-items:center;gap:14px;margin-bottom:.6rem}.foot-logos .foot-mark{margin:0}.foot-partner{margin:0}.foot-partner img{width:56px;height:56px}.foot-logos .foot-mark svg{width:56px;height:56px}
@media (min-width:761px){#explore .explore-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
/* 메뉴바: 높은뜻 하나되는 교회 바로가기 */
.side-nav a.nav-church{border:1px solid var(--line);border-radius:999px;padding-inline:.85rem!important;margin-left:.4rem;color:var(--pine)!important;white-space:nowrap}
.side-nav a.nav-church:hover{background:#dde9e4;border-color:#dde9e4}
.side-nav a.nav-church::after{display:none!important}
@media (max-width:1180px){.side-nav a.nav-church{border:0;margin-left:0;padding-inline:16px!important;border-radius:0;color:var(--pine)!important;font-weight:600}}
