/* BRB-WEB 밀크커피반점 상세 — DETAIL_B local candidate on DETAIL-DESIGN-MASTER v1 grammar
   (claude/agent/brb-web-pigment-program-detail-20260922 @ 12501a2). Page-local only.
   Shared brand grammar: Deep Green / Gold hairline / Cream·Paper, Noto Serif KR + Pretendard.
   Route-only modules follow the shared block. Every selector is scoped to .brb-calm-spot. */

.brb-calm-spot{--cm-green:#0b3328;--cm-green-soft:#e6ece7;--cm-ink:#303432;--cm-muted:#5b6059;--cm-gold:#a88959;--cm-gold-text:#735e3d;--cm-line:#dcdad0;--cm-cream:#f5f1ea;--cm-cream-deep:#eee7db;--cm-paper:#fbf9f5;--cm-white:#fff;--cm-serif:"Noto Serif KR",var(--brb-font-display,serif);--cm-sans:var(--brb-font-body,"Pretendard Variable",Pretendard,sans-serif);display:block;color:var(--cm-ink);background:var(--cm-paper);font:400 16px/1.8 var(--cm-sans);word-break:keep-all;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;text-align:left}
.brb-calm-spot *,.brb-calm-spot *::before,.brb-calm-spot *::after{box-sizing:border-box}
.brb-calm-spot :where(h1,h2,h3,p,figure,blockquote,dl,dd,ol,ul){margin:0}
.brb-calm-spot :where(ol,ul){padding:0;list-style:none}
.brb-calm-spot img{display:block;max-width:100%;height:auto}
.brb-calm-spot a{color:inherit;text-decoration:none}
.brb-calm-spot a:focus-visible,.brb-calm-spot summary:focus-visible{outline:2px solid var(--cm-green);outline-offset:3px;border-radius:2px}
.brb-calm-spot :where(section,header,nav){scroll-margin-top:24px}
.brb-calm-spot .cm-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.brb-calm-spot .cm-wrap{width:min(1200px,calc(100% - 40px));margin-inline:auto}

/* Type */
.brb-calm-spot h1{font:500 31px/1.4 var(--cm-serif);letter-spacing:-.05em;color:var(--cm-green)}
.brb-calm-spot h2{font:500 27px/1.42 var(--cm-serif);letter-spacing:-.045em;color:var(--cm-green)}
.brb-calm-spot h3{font:600 18px/1.5 var(--cm-sans);letter-spacing:-.02em;color:var(--cm-green)}
.brb-calm-spot strong{font-weight:600;color:var(--cm-ink)}
.brb-calm-spot .cm-eyebrow{display:flex;align-items:baseline;gap:10px;margin-bottom:14px;color:var(--cm-gold-text);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;line-height:1.4}
.brb-calm-spot .cm-no{font:500 15px/1 var(--cm-serif);letter-spacing:0;color:var(--cm-gold-text)}
.brb-calm-spot .cm-lead{font-size:17px;line-height:1.8;color:var(--cm-ink)}
.brb-calm-spot .cm-body > * + *{margin-top:20px}
.brb-calm-spot .cm-body p{color:var(--cm-ink)}
.brb-calm-spot .cm-note{font-size:15px;line-height:1.8;color:var(--cm-muted)!important}
.brb-calm-spot .cm-sub{margin-top:36px!important;font-size:17px}
.brb-calm-spot .cm-inline-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--cm-green);font-size:15px;font-weight:600;text-decoration:underline;text-decoration-color:var(--cm-gold);text-underline-offset:6px;text-decoration-thickness:1px}
.brb-calm-spot .cm-inline-link:hover{text-decoration-color:var(--cm-green)}
.brb-calm-spot .cm-text-link{display:inline-block;min-height:44px;line-height:44px;margin-block:-12px;color:var(--cm-green);font-weight:600;text-decoration:underline;text-decoration-color:var(--cm-gold);text-underline-offset:5px}
.brb-calm-spot .cm-turn{margin-top:40px;padding-top:20px;border-top:1px solid var(--cm-line);color:var(--cm-green);font-size:15px;line-height:1.7}
.brb-calm-spot .cm-turn span{margin-right:8px;color:var(--cm-gold-text)}

/* Chapters */
.brb-calm-spot .cm-chapter{padding-block:56px}
.brb-calm-spot .cm-tone-cream{background:var(--cm-cream)}
.brb-calm-spot .cm-head{margin-bottom:24px}

/* Buttons */
.brb-calm-spot .cm-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.brb-calm-spot .cm-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;min-width:152px;padding:0 24px;border:1px solid var(--cm-green);border-radius:6px;background:var(--cm-white);color:var(--cm-green);font-size:15px;font-weight:600;letter-spacing:-.01em;line-height:1.2;white-space:nowrap}
.brb-calm-spot .cm-button:hover{background:var(--cm-green-soft)}
.brb-calm-spot .cm-button-primary{background:var(--cm-green);color:var(--cm-paper)}
.brb-calm-spot .cm-hero-link{margin-top:14px}
.brb-calm-spot .cm-tel{margin-top:8px}
.brb-calm-spot .cm-button-primary:hover{background:#15493a}

/* Hero */
.brb-calm-spot .cm-hero{padding-block:32px 48px}
.brb-calm-spot .cm-hero-grid{display:grid;gap:28px}
.brb-calm-spot .cm-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;color:var(--cm-muted);font-size:13px;line-height:1.4}
.brb-calm-spot .cm-crumb a{display:inline-flex;align-items:center;min-height:44px;color:var(--cm-gold-text);font-weight:600;text-decoration:underline;text-decoration-color:rgba(168,137,89,.5);text-underline-offset:4px}
.brb-calm-spot .cm-crumb span{color:var(--cm-muted)}
.brb-calm-spot .cm-hero-lead{margin-top:20px;color:var(--cm-ink);font-size:16px;line-height:1.85}
.brb-calm-spot .cm-hero-lead strong{color:var(--cm-green)}
.brb-calm-spot .cm-gist-label{padding-bottom:12px;border-bottom:1px solid var(--cm-green);color:var(--cm-green);font-size:14px;font-weight:600}
.brb-calm-spot .cm-gist li{display:grid;grid-template-columns:28px 1fr;gap:8px;padding-block:14px;border-bottom:1px solid var(--cm-line)}
.brb-calm-spot .cm-gist-n{font:500 18px/1.6 var(--cm-serif);color:var(--cm-gold-text)}
.brb-calm-spot .cm-gist p{font-size:15px;line-height:1.75}
.brb-calm-spot .cm-gist strong{display:block;color:var(--cm-green);font-size:16px}
.brb-calm-spot .cm-byline{margin-top:18px;color:var(--cm-muted);font-size:13px;line-height:1.5}

/* Contents */
.brb-calm-spot .cm-contents{border-block:1px solid var(--cm-line);background:var(--cm-paper)}
.brb-calm-spot .cm-contents ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;padding-block:6px;counter-reset:cm-toc}
.brb-calm-spot .cm-contents li{counter-increment:cm-toc}
.brb-calm-spot .cm-contents a{display:flex;align-items:center;gap:8px;min-height:44px;color:var(--cm-ink);font-size:14px;line-height:1.35}
.brb-calm-spot .cm-contents a::before{content:counter(cm-toc,decimal-leading-zero);font:500 12px/1 var(--cm-serif);color:var(--cm-gold-text)}
.brb-calm-spot .cm-contents a:hover{color:var(--cm-green);text-decoration:underline;text-underline-offset:4px}

/* Hairline facts */
.brb-calm-spot .cm-facts{border-top:1px solid var(--cm-green)}
.brb-calm-spot .cm-facts > div{display:grid;grid-template-columns:84px 1fr;gap:12px;padding-block:14px;border-bottom:1px solid var(--cm-line)}
.brb-calm-spot .cm-facts dt{color:var(--cm-gold-text);font-size:14px;font-weight:600;line-height:1.7}
.brb-calm-spot .cm-facts dd{font-size:15px;line-height:1.75}

/* Deep green panel (one per page) */
.brb-calm-spot .cm-panel{margin-top:44px;padding:36px 24px;background:var(--cm-green);color:var(--cm-cream);border-radius:2px}
.brb-calm-spot .cm-panel-label{color:#cbb08a!important;font-size:13px;font-weight:600;letter-spacing:.04em}
.brb-calm-spot .cm-panel-lead{margin-top:16px;font:500 22px/1.55 var(--cm-serif);letter-spacing:-.045em;color:#fbf9f5!important}
.brb-calm-spot .cm-panel-body{margin-top:24px;padding-top:24px;border-top:1px solid rgba(203,176,138,.4)}
.brb-calm-spot .cm-panel-body p{color:#e9e4da!important;font-size:15px;line-height:1.85}
.brb-calm-spot .cm-panel-body p + p{margin-top:16px}
.brb-calm-spot .cm-panel-sign{color:#d9d2c4!important;font-size:13px!important}

/* Care list */
.brb-calm-spot .cm-habits{display:grid}
.brb-calm-spot .cm-habits li{padding-block:12px;border-top:1px solid var(--cm-line);font-size:15px;line-height:1.7}
.brb-calm-spot .cm-habits li:last-child{border-bottom:1px solid var(--cm-line)}
.brb-calm-spot .cm-habits strong{display:block;color:var(--cm-green);font-size:15px}

/* Price */
.brb-calm-spot .cm-price-card{padding:24px 0;border-top:1px solid var(--cm-green);border-bottom:1px solid var(--cm-line)}
.brb-calm-spot .cm-price-name{color:var(--cm-green)!important;font-size:17px;font-weight:600;line-height:1.5}
.brb-calm-spot .cm-price-value{margin-top:10px;font:500 22px/1.45 var(--cm-serif);letter-spacing:-.03em;color:var(--cm-green)!important}
.brb-calm-spot .cm-price-table{width:100%;margin-top:14px;border-collapse:collapse;font-variant-numeric:tabular-nums}
.brb-calm-spot .cm-price-table th,.brb-calm-spot .cm-price-table td{padding:10px 0;border-bottom:1px solid var(--cm-line);text-align:right;font-size:15px;line-height:1.4;white-space:nowrap}
.brb-calm-spot .cm-price-table thead th{padding-block:6px;color:var(--cm-muted);font-size:12px;font-weight:600}
.brb-calm-spot .cm-price-table th:first-child{text-align:left;padding-right:10px}
.brb-calm-spot .cm-price-table tbody th{font-weight:600;color:var(--cm-ink)}
.brb-calm-spot .cm-price-table tbody tr:last-child > *{border-bottom:0}
.brb-calm-spot .cm-list{color:var(--cm-green);font-weight:700}
.brb-calm-spot .cm-price-desc{margin-top:12px;color:var(--cm-muted)!important;font-size:14px;line-height:1.75}
.brb-calm-spot .cm-price-notes{display:grid;gap:8px}
.brb-calm-spot .cm-price-notes p{color:var(--cm-muted)!important;font-size:13px;line-height:1.75}
.brb-calm-spot .cm-badge{display:inline-block;margin-right:6px;padding:2px 8px;border:1px solid var(--cm-gold);border-radius:999px;color:var(--cm-gold-text);font-size:12px;font-weight:600;line-height:1.5}

/* FAQ */
.brb-calm-spot .cm-faq-list{border-top:1px solid var(--cm-green)}
.brb-calm-spot .cm-faq-list details{border-bottom:1px solid var(--cm-line)}
.brb-calm-spot .cm-faq-list summary{position:relative;display:flex;align-items:center;min-height:60px;padding:14px 40px 14px 0;cursor:pointer;list-style:none;color:var(--cm-ink);font-size:16px;font-weight:600;line-height:1.55}
.brb-calm-spot .cm-faq-list summary::-webkit-details-marker{display:none}
.brb-calm-spot .cm-faq-list summary::before,.brb-calm-spot .cm-faq-list summary::after{content:"";position:absolute;right:8px;top:50%;width:14px;height:1px;background:var(--cm-green)}
.brb-calm-spot .cm-faq-list summary::after{transform:rotate(90deg);transition:transform .2s}
.brb-calm-spot .cm-faq-list details[open] summary::after{transform:rotate(0)}
.brb-calm-spot .cm-faq-list details[open] summary{color:var(--cm-green)}
.brb-calm-spot .cm-faq-a{padding:0 8px 20px 0}
.brb-calm-spot .cm-faq-a p{font-size:15px;line-height:1.85}
.brb-calm-spot .cm-faq-a a{display:inline-block;min-height:44px;line-height:44px;margin-block:-12px;color:var(--cm-green);font-weight:600;text-decoration:underline;text-underline-offset:4px}

/* Related routes */
.brb-calm-spot .cm-related{border-top:1px solid var(--cm-green)}
.brb-calm-spot .cm-related a{display:flex;flex-direction:column;justify-content:center;min-height:64px;padding-block:14px;border-bottom:1px solid var(--cm-line);color:var(--cm-green);font:500 19px/1.45 var(--cm-serif);letter-spacing:-.03em}
.brb-calm-spot .cm-related a:hover{text-decoration:underline;text-decoration-color:var(--cm-gold);text-underline-offset:5px}
.brb-calm-spot .cm-related span{margin-bottom:4px;color:var(--cm-muted);font:400 14px/1.6 var(--cm-sans);letter-spacing:0}

/* Consult */
.brb-calm-spot .cm-consult{padding-block:64px 72px;background:var(--cm-cream-deep);border-top:1px solid var(--cm-line)}
.brb-calm-spot .cm-reading{margin-top:12px!important;border-top:1px solid var(--cm-line)}
.brb-calm-spot .cm-reading a{display:flex;flex-direction:column;justify-content:center;min-height:56px;padding-block:12px;border-bottom:1px solid var(--cm-line);font-size:15px;line-height:1.55;color:var(--cm-ink)}
.brb-calm-spot .cm-reading a:hover{color:var(--cm-green);text-decoration:underline;text-underline-offset:4px}
.brb-calm-spot .cm-reading span{color:var(--cm-gold-text);font-size:12px;font-weight:600;letter-spacing:.04em}
.brb-calm-spot .cm-signature{margin-top:28px!important;color:var(--cm-muted)!important;font-size:13px;line-height:1.75}

/* Route: hero cue */
.brb-calm-spot .cm-cue{display:grid;grid-template-columns:88px 1fr;gap:14px;align-items:center;padding-block:18px;border-top:1px solid var(--cm-line);margin-bottom:22px}
.brb-calm-spot .cm-cue img{width:88px;height:88px;border-radius:2px;background:#e9e3da}
.brb-calm-spot .cm-cue figcaption{color:var(--cm-muted);font-size:13px;line-height:1.6}

/* Route: NF1 criteria */
.brb-calm-spot .cm-criteria{padding:22px 20px;border:1px solid var(--cm-line);border-top:2px solid var(--cm-gold);background:var(--cm-white)}
.brb-calm-spot .cm-criteria-label{color:var(--cm-gold-text)!important;font-size:13px;font-weight:600;letter-spacing:.04em}
.brb-calm-spot .cm-criteria-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-block:14px!important}
.brb-calm-spot .cm-criteria-grid > div{padding-top:10px;border-top:1px solid var(--cm-line)}
.brb-calm-spot .cm-criteria-grid dt{color:var(--cm-muted);font-size:13px;line-height:1.5}
.brb-calm-spot .cm-criteria-grid dd{margin-top:4px;color:var(--cm-green);font:500 17px/1.45 var(--cm-serif);letter-spacing:-.03em}
.brb-calm-spot .cm-criteria > p:last-child{font-size:15px;line-height:1.75}
.brb-calm-spot .cm-facts dt{font-size:14px}
.brb-calm-spot .cm-kit-line{color:var(--cm-muted)!important;font-size:14px;line-height:1.7}

/* Route: hero eyebrow replaces the breadcrumb */
.brb-calm-spot .cm-hero .cm-eyebrow{margin-bottom:12px}

/* Route: editorial closing (conversion is handled by the site-wide sticky bar) */
.brb-calm-spot .cm-closing{padding-block:56px 64px;background:var(--cm-cream-deep);border-top:1px solid var(--cm-line)}
.brb-calm-spot .cm-closing .cm-sub{margin-top:32px!important}
.brb-calm-spot .cm-closing .cm-signature{margin-top:32px!important;padding-top:20px;border-top:1px solid var(--cm-line);color:var(--cm-muted)!important;font-size:13px;line-height:1.8}
.brb-calm-spot #count .cm-note{margin-top:16px}

/* Route: diagnosis-first flow */
.brb-calm-spot .cm-flow-label{padding-bottom:12px;border-bottom:1px solid var(--cm-green);color:var(--cm-green);font-size:14px;font-weight:600}
.brb-calm-spot .cm-flow{counter-reset:cm-f}
.brb-calm-spot .cm-flow a{display:grid;grid-template-columns:76px 1fr;column-gap:12px;min-height:44px;padding-block:14px;border-bottom:1px solid var(--cm-line);font-size:14px;line-height:1.7;color:var(--cm-ink)}
.brb-calm-spot .cm-flow a:hover strong{text-decoration:underline;text-decoration-color:var(--cm-gold);text-underline-offset:5px}
.brb-calm-spot .cm-flow-n{grid-row:1/3;color:var(--cm-gold-text);font:500 14px/1.9 var(--cm-serif)}
.brb-calm-spot .cm-flow strong{color:var(--cm-green);font-size:16px}

@media (max-width:639px){
  .brb-calm-spot .cm-actions .cm-button{flex:1 1 140px;min-width:140px}
}
@media (min-width:640px){
  .brb-calm-spot .cm-wrap{width:min(1200px,calc(100% - 64px))}
  .brb-calm-spot h1{font-size:38px}
  .brb-calm-spot h2{font-size:32px}
  .brb-calm-spot .cm-chapter{padding-block:80px}
  .brb-calm-spot .cm-contents ol{grid-template-columns:repeat(4,minmax(0,1fr))}
  .brb-calm-spot .cm-panel{padding:52px 48px}
  .brb-calm-spot .cm-panel-lead{font-size:27px}
  .brb-calm-spot .cm-habits{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
  .brb-calm-spot .cm-habits li:last-child{border-bottom:0}
}
@media (min-width:1024px){
  .brb-calm-spot h1{font-size:44px}
  .brb-calm-spot h2{font-size:34px}
  .brb-calm-spot .cm-chapter{padding-block:104px}
  .brb-calm-spot .cm-split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px}
  .brb-calm-spot .cm-head{grid-column:1/6;margin-bottom:0}
  .brb-calm-spot .cm-body{grid-column:6/13}
  .brb-calm-spot .cm-lead{font-size:18px}
  .brb-calm-spot .cm-hero{padding-block:48px 88px}
  .brb-calm-spot .cm-contents ol{display:flex;flex-wrap:wrap;justify-content:space-between}
  .brb-calm-spot .cm-panel{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;padding:64px}
  .brb-calm-spot .cm-panel-label{grid-column:1/6}
  .brb-calm-spot .cm-panel-lead{grid-column:1/6;font-size:28px}
  .brb-calm-spot .cm-panel-body{grid-column:7/13;grid-row:1/3;margin-top:0;padding-top:0;border-top:0;padding-left:32px;border-left:1px solid rgba(203,176,138,.4)}
}

@media (min-width:640px){
  .brb-calm-spot .cm-cue{grid-template-columns:112px 1fr}
  .brb-calm-spot .cm-cue img{width:112px;height:112px}
  .brb-calm-spot .cm-criteria{padding:28px}
}
@media (min-width:1024px){
  .brb-calm-spot .cm-hero-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;align-items:end}
  .brb-calm-spot .cm-hero-copy{grid-column:1/7}
  .brb-calm-spot .cm-hero-side{grid-column:8/13}
  .brb-calm-spot .cm-closing{padding-block:88px 96px}
}